Skip to content

Commit

Permalink
refactor: use same builtinModules from runtime
Browse files Browse the repository at this point in the history
concat in old impl was causing duplicate entries!
  • Loading branch information
pi0 committed Feb 6, 2025
1 parent de43cd2 commit 041d4f6
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 24 deletions.
4 changes: 2 additions & 2 deletions src/presets/node.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { NodeBuiltinModules } from "./utils";
import { builtinModules } from "../runtime/node/module";
import type { Preset } from "../../lib/index.d.mts";
import { version } from "../../package.json";

Expand All @@ -17,5 +17,5 @@ export default {

polyfill: [],

external: [...NodeBuiltinModules],
external: [...builtinModules],
} as Preset;
7 changes: 4 additions & 3 deletions src/presets/nodeless.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { NodeBuiltinModules, mapArrToVal } from "./utils";
import { mapArrToVal } from "./utils";
import { builtinModules } from "../runtime/node/module";
import type { Preset } from "../../lib/index.d.mts";
import { version } from "../../package.json";

Expand All @@ -10,7 +11,7 @@ const nodeless: Preset & { alias: Map<string, string> } = {

alias: {
// Generic mock for built-ins
...mapArrToVal("unenv/mock/proxy-cjs", NodeBuiltinModules),
...mapArrToVal("unenv/mock/proxy-cjs", builtinModules),

// Built-ins implemented by unenv
"buffer/index.js": "buffer",
Expand Down Expand Up @@ -102,7 +103,7 @@ const nodeless: Preset & { alias: Map<string, string> } = {
};

// Add node: aliases
for (const m of NodeBuiltinModules) {
for (const m of builtinModules) {
nodeless.alias[`node:${m}`] = nodeless.alias[m];
}

Expand Down
20 changes: 1 addition & 19 deletions src/presets/utils.ts
Original file line number Diff line number Diff line change
@@ -1,21 +1,3 @@
import { Module } from "node:module";

// eslint-disable-next-line unicorn/prefer-spread
export const NodeBuiltinModules = ([] as string[]).concat(
Module.builtinModules,
[
"assert/strict",
"fs/promises",
"path/posix",
"path/win32",
"stream/consumers",
"stream/promises",
"stream/web",
"timers/promises",
"util/types",
],
);

export function mapArrToVal(val: any, arr: any[]) {
export function mapArrToVal(val: any, arr: readonly any[]) {
return Object.fromEntries(arr.map((c) => [c, val]));
}

0 comments on commit 041d4f6

Please sign in to comment.