diff --git a/demos/index.html b/demos/index.html
index 904fde7df..46549c95a 100644
--- a/demos/index.html
+++ b/demos/index.html
@@ -15,9 +15,9 @@
-
+
diff --git a/jison.js b/jison.js
index b23c4c2d3..b907fae6f 100644
--- a/jison.js
+++ b/jison.js
@@ -1,31 +1,61 @@
-import { Jison } from 'jison';
-import { createFilter } from 'rollup-pluginutils';
+const Jison = require('jison');
+const fileRegex = /\.(jison)$/;
-export default (options = {}) => ({
- name: 'jison',
- transform(grammar, id) {
- const { include = ['*.jison', '**/*.jison'], exclude, type = 'lalr' } = options;
- const filter = createFilter(include, exclude);
- if (!filter(id)) return null;
+export default function jison() {
+ return {
+ name: 'jison',
- const parser = new Jison.Generator(grammar, {
- moduleType: 'js',
- type,
- });
+ transform(src, id) {
+ if (fileRegex.test(id)) {
+ const parser = new Jison.Generator(src, {
+ moduleType: 'js',
+ // type,
+ });
+ const source = parser.generate();
+ const exporter = `
+ const parse = parser.parse.bind(parser);
+ parser.parser = parse;
- const source = parser.generate();
- const exporter = `
- const parse = parser.parse.bind(parser);
- parser.parser = parse;
-
- export { parser };
- export default parser;
- `;
+ export { parser };
+ export default parser;
+ `;
- console.log('helll');
- return {
- code: `${source} ${exporter}`,
- map: { mappings: '' },
- };
- },
-});
+ // console.log('helll');
+
+ return {
+ code: `${source} ${exporter}`,
+ map: null, // provide source map if available
+ };
+ }
+ },
+ };
+}
+
+// export default (options = {}) => ({
+// name: 'jison',
+// transform(grammar, id) {
+// const { include = ['*.jison', '**/*.jison'], exclude, type = 'lalr' } = options;
+// const filter = createFilter(include, exclude);
+// if (!filter(id)) return null;
+
+// const parser = new Jison.Generator(grammar, {
+// moduleType: 'js',
+// type,
+// });
+
+// const source = parser.generate();
+// const exporter = `
+// const parse = parser.parse.bind(parser);
+// parser.parser = parse;
+
+// export { parser };
+// export default parser;
+// `;
+
+// console.log('helll');
+// return {
+// code: `${source} ${exporter}`,
+// map: { mappings: '' },
+// };
+// },
+// });
diff --git a/vite.config.js b/vite.config.js
index 97e88f887..89bc7e506 100644
--- a/vite.config.js
+++ b/vite.config.js
@@ -2,6 +2,7 @@ import { resolve } from 'path';
import { defineConfig } from 'vite';
import jison from './jison';
export default defineConfig({
+ plugins: [jison()],
resolve: {
extensions: ['.ts', '.js', '.json', '.jison'],
},
@@ -13,7 +14,6 @@ export default defineConfig({
fileName: 'mermaid',
},
rollupOptions: {
- plugins: [jison()],
// make sure to externalize deps that shouldn't be bundled
// into your library
output: {