Migrated version.evaluate.cjs to ES Module (#17347)

This commit is contained in:
fisker Cheung authored and GitHub committed 2025-04-16 13:39:48 +08:00
1 parent c992b0bc1b
commit 4b2db262b7
7 files changed
+17 -17

No files matched your search

+3 -10
View File
@@ -6,14 +6,11 @@ export default function esbuildPluginEvaluate() {
return {
name: "evaluate",
setup(build) {
const { format } = build.initialOptions;
build.onLoad(
{ filter: /\.evaluate\.c?js$/, namespace: "file" },
{ filter: /\.evaluate\.[cm]?js$/, namespace: "file" },
async ({ path }) => {
const module = await import(url.pathToFileURL(path));
const text = Object.entries(module)
.filter(([specifier]) => specifier !== "module.exports")
.map(([specifier, value]) => {
const code =
value instanceof RegExp
@@ -21,18 +18,14 @@ export default function esbuildPluginEvaluate() {
: serialize(value, { space: 2 });
if (specifier === "default") {
return format === "cjs"
? `module.exports = ${code};`
: `export default ${code};`;
return `export default ${code};`;
}
if (!isValidIdentifier(specifier)) {
throw new Error(`${specifier} is not a valid specifier`);
}
return format === "cjs"
? `exports.${specifier} = ${code};`
: `export const ${specifier} = ${code};`;
return `export const ${specifier} = ${code};`;
})
.join("\n");
return { contents: text };