| 6dd74de | | | 1 | import { readFile } from 'node:fs/promises'; |
| 6dd74de | | | 2 | import { transformJison } from '../.build/jisonTransformer.js'; |
| 6dd74de | | | 3 | import type { Plugin } from 'esbuild'; |
| 6dd74de | | | 4 | |
| 6dd74de | | | 5 | export const jisonPlugin: Plugin = { |
| 6dd74de | | | 6 | name: 'jison', |
| 6dd74de | | | 7 | setup(build) { |
| 6dd74de | | | 8 | build.onLoad({ filter: /\.jison$/ }, async (args) => { |
| 6dd74de | | | 9 | // Load the file from the file system |
| 6dd74de | | | 10 | const source = await readFile(args.path, 'utf8'); |
| 6dd74de | | | 11 | const contents = transformJison(source); |
| 6dd74de | | | 12 | return { contents, warnings: [] }; |
| 6dd74de | | | 13 | }); |
| 6dd74de | | | 14 | }, |
| 6dd74de | | | 15 | }; |