Remove parser getters from universal bundles (#11137)
This commit is contained in:
1 parent
10053999d7
commit
e1afe1adc2
17 files changed
+173
-145
No files matched your search
@@ -22,7 +22,7 @@ process.on("unhandledRejection", (err) => {
|
|||||||
process.exit(1);
|
process.exit(1);
|
||||||
});
|
});
|
||||||
|
|
||||||
const CACHE_VERSION = "v35"; // This need update when updating build scripts
|
const CACHE_VERSION = "v36"; // This need update when updating build scripts
|
||||||
const statusConfig = [
|
const statusConfig = [
|
||||||
{ color: "bgYellow", text: "CACHED" },
|
{ color: "bgYellow", text: "CACHED" },
|
||||||
{ color: "bgGreen", text: "DONE" },
|
{ color: "bgGreen", text: "DONE" },
|
||||||
|
|||||||
+27
-10
@@ -175,22 +175,39 @@ function getRollupConfig(bundle) {
|
|||||||
const replaceModule = {};
|
const replaceModule = {};
|
||||||
// Replace other bundled files
|
// Replace other bundled files
|
||||||
if (bundle.target === "node") {
|
if (bundle.target === "node") {
|
||||||
|
// Replace package.json with dynamic `require("./package.json")`
|
||||||
|
replaceModule[path.join(PROJECT_ROOT, "package.json")] = "./package.json";
|
||||||
|
|
||||||
|
// Dynamic require bundled files
|
||||||
for (const item of bundles) {
|
for (const item of bundles) {
|
||||||
if (item.input !== bundle.input) {
|
if (item.input !== bundle.input) {
|
||||||
replaceModule[path.join(PROJECT_ROOT, item.input)] = `./${item.output}`;
|
replaceModule[path.join(PROJECT_ROOT, item.input)] = `./${item.output}`;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
|
// Universal bundle only use version info from package.json
|
||||||
|
// Replace package.json with `{version: "{VERSION}"}`
|
||||||
|
replaceModule[path.join(PROJECT_ROOT, "package.json")] = {
|
||||||
|
code: `export default ${JSON.stringify({
|
||||||
|
version: require("../../package.json").version,
|
||||||
|
})};`,
|
||||||
|
};
|
||||||
|
|
||||||
replaceModule[path.join(PROJECT_ROOT, "./package.json")] =
|
// Replace `src/language-*/parsers.js` with `undefined`
|
||||||
bundle.target === "node"
|
for (const file of [
|
||||||
? "./package.json"
|
"src/language-css/parsers.js",
|
||||||
: // Universal bundle only use version info from package.json
|
"src/language-graphql/parsers.js",
|
||||||
{
|
"src/language-handlebars/parsers.js",
|
||||||
code: `export default ${JSON.stringify({
|
"src/language-html/parsers.js",
|
||||||
version: require("../../package.json").version,
|
"src/language-js/parsers.js",
|
||||||
})}`,
|
"src/language-markdown/parsers.js",
|
||||||
};
|
"src/language-yaml/parsers.js",
|
||||||
|
]) {
|
||||||
|
replaceModule[path.join(PROJECT_ROOT, file)] = {
|
||||||
|
code: "export default undefined;",
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Object.assign(replaceModule, bundle.replaceModule);
|
Object.assign(replaceModule, bundle.replaceModule);
|
||||||
|
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
const createLanguage = require("../utils/create-language");
|
const createLanguage = require("../utils/create-language");
|
||||||
const printer = require("./printer-postcss");
|
const printer = require("./printer-postcss");
|
||||||
const options = require("./options");
|
const options = require("./options");
|
||||||
|
const parsers = require("./parsers");
|
||||||
|
|
||||||
const languages = [
|
const languages = [
|
||||||
createLanguage(require("linguist-languages/data/CSS.json"), (data) => ({
|
createLanguage(require("linguist-languages/data/CSS.json"), (data) => ({
|
||||||
@@ -37,19 +38,6 @@ const printers = {
|
|||||||
postcss: printer,
|
postcss: printer,
|
||||||
};
|
};
|
||||||
|
|
||||||
const parsers = {
|
|
||||||
// TODO: switch these to just `postcss` and use `language` instead.
|
|
||||||
get css() {
|
|
||||||
return require("./parser-postcss").parsers.css;
|
|
||||||
},
|
|
||||||
get less() {
|
|
||||||
return require("./parser-postcss").parsers.less;
|
|
||||||
},
|
|
||||||
get scss() {
|
|
||||||
return require("./parser-postcss").parsers.scss;
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
languages,
|
languages,
|
||||||
options,
|
options,
|
||||||
|
|||||||
@@ -0,0 +1,14 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
// TODO: switch these to just `postcss` and use `language` instead.
|
||||||
|
get css() {
|
||||||
|
return require("./parser-postcss").parsers.css;
|
||||||
|
},
|
||||||
|
get less() {
|
||||||
|
return require("./parser-postcss").parsers.less;
|
||||||
|
},
|
||||||
|
get scss() {
|
||||||
|
return require("./parser-postcss").parsers.scss;
|
||||||
|
},
|
||||||
|
};
|
||||||
@@ -3,6 +3,7 @@
|
|||||||
const createLanguage = require("../utils/create-language");
|
const createLanguage = require("../utils/create-language");
|
||||||
const printer = require("./printer-graphql");
|
const printer = require("./printer-graphql");
|
||||||
const options = require("./options");
|
const options = require("./options");
|
||||||
|
const parsers = require("./parsers");
|
||||||
|
|
||||||
const languages = [
|
const languages = [
|
||||||
createLanguage(require("linguist-languages/data/GraphQL.json"), () => ({
|
createLanguage(require("linguist-languages/data/GraphQL.json"), () => ({
|
||||||
@@ -16,12 +17,6 @@ const printers = {
|
|||||||
graphql: printer,
|
graphql: printer,
|
||||||
};
|
};
|
||||||
|
|
||||||
const parsers = {
|
|
||||||
get graphql() {
|
|
||||||
return require("./parser-graphql").parsers.graphql;
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
languages,
|
languages,
|
||||||
options,
|
options,
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
get graphql() {
|
||||||
|
return require("./parser-graphql").parsers.graphql;
|
||||||
|
},
|
||||||
|
};
|
||||||
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
const createLanguage = require("../utils/create-language");
|
const createLanguage = require("../utils/create-language");
|
||||||
const printer = require("./printer-glimmer");
|
const printer = require("./printer-glimmer");
|
||||||
|
const parsers = require("./parsers");
|
||||||
|
|
||||||
const languages = [
|
const languages = [
|
||||||
createLanguage(require("linguist-languages/data/Handlebars.json"), () => ({
|
createLanguage(require("linguist-languages/data/Handlebars.json"), () => ({
|
||||||
@@ -15,12 +16,6 @@ const printers = {
|
|||||||
glimmer: printer,
|
glimmer: printer,
|
||||||
};
|
};
|
||||||
|
|
||||||
const parsers = {
|
|
||||||
get glimmer() {
|
|
||||||
return require("./parser-glimmer").parsers.glimmer;
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
languages,
|
languages,
|
||||||
printers,
|
printers,
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
get glimmer() {
|
||||||
|
return require("./parser-glimmer").parsers.glimmer;
|
||||||
|
},
|
||||||
|
};
|
||||||
@@ -3,6 +3,7 @@
|
|||||||
const createLanguage = require("../utils/create-language");
|
const createLanguage = require("../utils/create-language");
|
||||||
const printer = require("./printer-html");
|
const printer = require("./printer-html");
|
||||||
const options = require("./options");
|
const options = require("./options");
|
||||||
|
const parsers = require("./parsers");
|
||||||
|
|
||||||
const languages = [
|
const languages = [
|
||||||
createLanguage(require("linguist-languages/data/HTML.json"), () => ({
|
createLanguage(require("linguist-languages/data/HTML.json"), () => ({
|
||||||
@@ -41,25 +42,6 @@ const printers = {
|
|||||||
html: printer,
|
html: printer,
|
||||||
};
|
};
|
||||||
|
|
||||||
const parsers = {
|
|
||||||
// HTML
|
|
||||||
get html() {
|
|
||||||
return require("./parser-html").parsers.html;
|
|
||||||
},
|
|
||||||
// Vue
|
|
||||||
get vue() {
|
|
||||||
return require("./parser-html").parsers.vue;
|
|
||||||
},
|
|
||||||
// Angular
|
|
||||||
get angular() {
|
|
||||||
return require("./parser-html").parsers.angular;
|
|
||||||
},
|
|
||||||
// Lightning Web Components
|
|
||||||
get lwc() {
|
|
||||||
return require("./parser-html").parsers.lwc;
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
languages,
|
languages,
|
||||||
printers,
|
printers,
|
||||||
|
|||||||
@@ -0,0 +1,20 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
// HTML
|
||||||
|
get html() {
|
||||||
|
return require("./parser-html").parsers.html;
|
||||||
|
},
|
||||||
|
// Vue
|
||||||
|
get vue() {
|
||||||
|
return require("./parser-html").parsers.vue;
|
||||||
|
},
|
||||||
|
// Angular
|
||||||
|
get angular() {
|
||||||
|
return require("./parser-html").parsers.angular;
|
||||||
|
},
|
||||||
|
// Lightning Web Components
|
||||||
|
get lwc() {
|
||||||
|
return require("./parser-html").parsers.lwc;
|
||||||
|
},
|
||||||
|
};
|
||||||
@@ -4,6 +4,7 @@ const createLanguage = require("../utils/create-language");
|
|||||||
const estreePrinter = require("./printer-estree");
|
const estreePrinter = require("./printer-estree");
|
||||||
const estreeJsonPrinter = require("./printer-estree-json");
|
const estreeJsonPrinter = require("./printer-estree-json");
|
||||||
const options = require("./options");
|
const options = require("./options");
|
||||||
|
const parsers = require("./parsers");
|
||||||
|
|
||||||
const languages = [
|
const languages = [
|
||||||
createLanguage(
|
createLanguage(
|
||||||
@@ -106,73 +107,6 @@ const printers = {
|
|||||||
"estree-json": estreeJsonPrinter,
|
"estree-json": estreeJsonPrinter,
|
||||||
};
|
};
|
||||||
|
|
||||||
const parsers = {
|
|
||||||
// JS - Babel
|
|
||||||
get babel() {
|
|
||||||
return require("./parser-babel").parsers.babel;
|
|
||||||
},
|
|
||||||
get "babel-flow"() {
|
|
||||||
return require("./parser-babel").parsers["babel-flow"];
|
|
||||||
},
|
|
||||||
get "babel-ts"() {
|
|
||||||
return require("./parser-babel").parsers["babel-ts"];
|
|
||||||
},
|
|
||||||
get json() {
|
|
||||||
return require("./parser-babel").parsers.json;
|
|
||||||
},
|
|
||||||
get json5() {
|
|
||||||
return require("./parser-babel").parsers.json5;
|
|
||||||
},
|
|
||||||
get "json-stringify"() {
|
|
||||||
return require("./parser-babel").parsers["json-stringify"];
|
|
||||||
},
|
|
||||||
get __js_expression() {
|
|
||||||
return require("./parser-babel").parsers.__js_expression;
|
|
||||||
},
|
|
||||||
get __vue_expression() {
|
|
||||||
return require("./parser-babel").parsers.__vue_expression;
|
|
||||||
},
|
|
||||||
get __vue_event_binding() {
|
|
||||||
return require("./parser-babel").parsers.__vue_event_binding;
|
|
||||||
},
|
|
||||||
// JS - Flow
|
|
||||||
get flow() {
|
|
||||||
return require("./parser-flow").parsers.flow;
|
|
||||||
},
|
|
||||||
// JS - TypeScript
|
|
||||||
get typescript() {
|
|
||||||
return require("./parser-typescript").parsers.typescript;
|
|
||||||
},
|
|
||||||
// JS - Angular Action
|
|
||||||
get __ng_action() {
|
|
||||||
return require("./parser-angular").parsers.__ng_action;
|
|
||||||
},
|
|
||||||
// JS - Angular Binding
|
|
||||||
get __ng_binding() {
|
|
||||||
return require("./parser-angular").parsers.__ng_binding;
|
|
||||||
},
|
|
||||||
// JS - Angular Interpolation
|
|
||||||
get __ng_interpolation() {
|
|
||||||
return require("./parser-angular").parsers.__ng_interpolation;
|
|
||||||
},
|
|
||||||
// JS - Angular Directive
|
|
||||||
get __ng_directive() {
|
|
||||||
return require("./parser-angular").parsers.__ng_directive;
|
|
||||||
},
|
|
||||||
// JS - espree
|
|
||||||
get espree() {
|
|
||||||
return require("./parser-espree").parsers.espree;
|
|
||||||
},
|
|
||||||
// JS - meriyah
|
|
||||||
get meriyah() {
|
|
||||||
return require("./parser-meriyah").parsers.meriyah;
|
|
||||||
},
|
|
||||||
// JS - Babel Estree
|
|
||||||
get __babel_estree() {
|
|
||||||
return require("./parser-babel").parsers.__babel_estree;
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
languages,
|
languages,
|
||||||
options,
|
options,
|
||||||
|
|||||||
@@ -0,0 +1,68 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
// JS - Babel
|
||||||
|
get babel() {
|
||||||
|
return require("./parser-babel").parsers.babel;
|
||||||
|
},
|
||||||
|
get "babel-flow"() {
|
||||||
|
return require("./parser-babel").parsers["babel-flow"];
|
||||||
|
},
|
||||||
|
get "babel-ts"() {
|
||||||
|
return require("./parser-babel").parsers["babel-ts"];
|
||||||
|
},
|
||||||
|
get json() {
|
||||||
|
return require("./parser-babel").parsers.json;
|
||||||
|
},
|
||||||
|
get json5() {
|
||||||
|
return require("./parser-babel").parsers.json5;
|
||||||
|
},
|
||||||
|
get "json-stringify"() {
|
||||||
|
return require("./parser-babel").parsers["json-stringify"];
|
||||||
|
},
|
||||||
|
get __js_expression() {
|
||||||
|
return require("./parser-babel").parsers.__js_expression;
|
||||||
|
},
|
||||||
|
get __vue_expression() {
|
||||||
|
return require("./parser-babel").parsers.__vue_expression;
|
||||||
|
},
|
||||||
|
get __vue_event_binding() {
|
||||||
|
return require("./parser-babel").parsers.__vue_event_binding;
|
||||||
|
},
|
||||||
|
// JS - Flow
|
||||||
|
get flow() {
|
||||||
|
return require("./parser-flow").parsers.flow;
|
||||||
|
},
|
||||||
|
// JS - TypeScript
|
||||||
|
get typescript() {
|
||||||
|
return require("./parser-typescript").parsers.typescript;
|
||||||
|
},
|
||||||
|
// JS - Angular Action
|
||||||
|
get __ng_action() {
|
||||||
|
return require("./parser-angular").parsers.__ng_action;
|
||||||
|
},
|
||||||
|
// JS - Angular Binding
|
||||||
|
get __ng_binding() {
|
||||||
|
return require("./parser-angular").parsers.__ng_binding;
|
||||||
|
},
|
||||||
|
// JS - Angular Interpolation
|
||||||
|
get __ng_interpolation() {
|
||||||
|
return require("./parser-angular").parsers.__ng_interpolation;
|
||||||
|
},
|
||||||
|
// JS - Angular Directive
|
||||||
|
get __ng_directive() {
|
||||||
|
return require("./parser-angular").parsers.__ng_directive;
|
||||||
|
},
|
||||||
|
// JS - espree
|
||||||
|
get espree() {
|
||||||
|
return require("./parser-espree").parsers.espree;
|
||||||
|
},
|
||||||
|
// JS - meriyah
|
||||||
|
get meriyah() {
|
||||||
|
return require("./parser-meriyah").parsers.meriyah;
|
||||||
|
},
|
||||||
|
// JS - Babel Estree
|
||||||
|
get __babel_estree() {
|
||||||
|
return require("./parser-babel").parsers.__babel_estree;
|
||||||
|
},
|
||||||
|
};
|
||||||
@@ -3,6 +3,7 @@
|
|||||||
const createLanguage = require("../utils/create-language");
|
const createLanguage = require("../utils/create-language");
|
||||||
const printer = require("./printer-markdown");
|
const printer = require("./printer-markdown");
|
||||||
const options = require("./options");
|
const options = require("./options");
|
||||||
|
const parsers = require("./parsers");
|
||||||
|
|
||||||
const languages = [
|
const languages = [
|
||||||
createLanguage(require("linguist-languages/data/Markdown.json"), (data) => ({
|
createLanguage(require("linguist-languages/data/Markdown.json"), (data) => ({
|
||||||
@@ -26,19 +27,6 @@ const printers = {
|
|||||||
mdast: printer,
|
mdast: printer,
|
||||||
};
|
};
|
||||||
|
|
||||||
const parsers = {
|
|
||||||
/* istanbul ignore next */
|
|
||||||
get remark() {
|
|
||||||
return require("./parser-markdown").parsers.remark;
|
|
||||||
},
|
|
||||||
get markdown() {
|
|
||||||
return require("./parser-markdown").parsers.remark;
|
|
||||||
},
|
|
||||||
get mdx() {
|
|
||||||
return require("./parser-markdown").parsers.mdx;
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
languages,
|
languages,
|
||||||
options,
|
options,
|
||||||
|
|||||||
@@ -0,0 +1,14 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
/* istanbul ignore next */
|
||||||
|
get remark() {
|
||||||
|
return require("./parser-markdown").parsers.remark;
|
||||||
|
},
|
||||||
|
get markdown() {
|
||||||
|
return require("./parser-markdown").parsers.remark;
|
||||||
|
},
|
||||||
|
get mdx() {
|
||||||
|
return require("./parser-markdown").parsers.mdx;
|
||||||
|
},
|
||||||
|
};
|
||||||
@@ -3,6 +3,7 @@
|
|||||||
const createLanguage = require("../utils/create-language");
|
const createLanguage = require("../utils/create-language");
|
||||||
const printer = require("./printer-yaml");
|
const printer = require("./printer-yaml");
|
||||||
const options = require("./options");
|
const options = require("./options");
|
||||||
|
const parsers = require("./parsers");
|
||||||
|
|
||||||
const languages = [
|
const languages = [
|
||||||
createLanguage(require("linguist-languages/data/YAML.json"), (data) => ({
|
createLanguage(require("linguist-languages/data/YAML.json"), (data) => ({
|
||||||
@@ -17,12 +18,6 @@ const languages = [
|
|||||||
})),
|
})),
|
||||||
];
|
];
|
||||||
|
|
||||||
const parsers = {
|
|
||||||
get yaml() {
|
|
||||||
return require("./parser-yaml").parsers.yaml;
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
languages,
|
languages,
|
||||||
printers: { yaml: printer },
|
printers: { yaml: printer },
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
get yaml() {
|
||||||
|
return require("./parser-yaml").parsers.yaml;
|
||||||
|
},
|
||||||
|
};
|
||||||
+1
-4
@@ -8,9 +8,6 @@ const sharedUtil = require("./common/util-shared");
|
|||||||
const languages = require("./languages");
|
const languages = require("./languages");
|
||||||
const doc = require("./document");
|
const doc = require("./document");
|
||||||
|
|
||||||
// Parsers are bundled as separate plugins
|
|
||||||
const internalPlugins = languages.map(({ parsers, ...plugin }) => plugin);
|
|
||||||
|
|
||||||
function withPlugins(
|
function withPlugins(
|
||||||
fn,
|
fn,
|
||||||
optsArgIdx = 1 // Usually `opts` is the 2nd argument
|
optsArgIdx = 1 // Usually `opts` is the 2nd argument
|
||||||
@@ -22,7 +19,7 @@ function withPlugins(
|
|||||||
args[optsArgIdx] = {
|
args[optsArgIdx] = {
|
||||||
...opts,
|
...opts,
|
||||||
plugins: [
|
plugins: [
|
||||||
...internalPlugins,
|
...languages,
|
||||||
...(Array.isArray(plugins) ? plugins : Object.values(plugins)),
|
...(Array.isArray(plugins) ? plugins : Object.values(plugins)),
|
||||||
],
|
],
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in new issue
Block a user