Files
test-repo/scripts/build/rollup-plugins/evaluate.mjs
T
Sosuke Suzukiandfisker Cheung 2664fcb2ba Enable import/no-anonymous-default-export (#11478)
* Enable import/no-anonymous-default-export

* Add names to default exported

* More

* Ignore shims

* Update scripts/build/config.mjs

Co-authored-by: fisker Cheung <lionkay@gmail.com>

* lint  for shims

Co-authored-by: fisker Cheung <lionkay@gmail.com>
2021-09-10 11:17:09 +09:00

31 lines
639 B
JavaScript

import createEsmUtils from "esm-utils";
const { require } = createEsmUtils(import.meta);
export default function rollupPluginEvaluate() {
return {
name: "evaluate",
transform(_text, id) {
if (!/\.evaluate\.js$/.test(id)) {
return;
}
const json = JSON.stringify(
require(id.replace(/^\0commonjs-proxy:/, "")),
(_, v) => {
if (typeof v === "function") {
throw new Error("Cannot evaluate functions.");
}
return v;
}
);
return {
code: `export default ${json};`,
map: { mappings: "" },
};
},
};
}