@distilled.cloud/cloudflare-rolldown-plugin 0.4.1-beta.5 → 0.4.1-beta.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,5 @@
1
- export declare const optionsPlugin: import("../factory.js").PluginOutput<any>;
1
+ export interface OptionsApi {
2
+ input: () => Record<string, string>;
3
+ }
4
+ export declare const optionsPlugin: import("../factory.js").PluginOutput<OptionsApi>;
2
5
  //# sourceMappingURL=options.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/plugins/options.ts"],"names":[],"mappings":"AAkCA,eAAO,MAAM,aAAa,2CAmHvB,CAAC"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/plugins/options.ts"],"names":[],"mappings":"AAkCA,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAED,eAAO,MAAM,aAAa,kDA8HxB,CAAC"}
@@ -25,128 +25,140 @@ const DEFAULT_RESOLVE_EXTENSIONS = [
25
25
  ".ctx",
26
26
  ];
27
27
  const TARGET = "es2024";
28
- export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
29
- rolldown: {
30
- options(options) {
31
- options.input = wrapEntryInput(pluginOptions.main ?? options.input ?? {});
32
- options.preserveEntrySignatures ??= "strict";
33
- options.platform ??= "neutral";
34
- options.resolve ??= {};
35
- options.resolve.conditionNames ??= [...getConditions(pluginOptions), "production"];
36
- options.resolve.mainFields ??= getMainFields(pluginOptions);
37
- options.resolve.extensions ??= DEFAULT_RESOLVE_EXTENSIONS;
38
- options.transform ??= {};
39
- options.transform.target ??= TARGET;
40
- options.transform.define ??= {};
41
- Object.assign(options.transform.define, getDefine(pluginOptions, "production"));
42
- return options;
28
+ export const optionsPlugin = createPlugin("options", (pluginOptions) => {
29
+ let input = {};
30
+ return {
31
+ shared: {
32
+ api: {
33
+ input: () => input,
34
+ },
43
35
  },
44
- },
45
- vite: {
46
- async config(userConfig) {
47
- const vite = await import("vite");
48
- const isRolldown = "rolldownVersion" in this.meta;
49
- const input = pluginOptions.main ??
50
- userConfig.environments?.ssr?.build?.rolldownOptions?.input ??
51
- userConfig.environments?.ssr?.build?.rollupOptions?.input;
52
- const rollupOptions = {
53
- input: wrapEntryInput(input ?? {}),
54
- preserveEntrySignatures: "strict",
55
- };
56
- const define = getDefine(pluginOptions, process.env.NODE_ENV || userConfig.mode || "production");
57
- const conditions = getConditions(pluginOptions);
58
- const mainFields = getMainFields(pluginOptions);
59
- return {
60
- appType: "custom",
61
- ssr: {
62
- noExternal: true,
63
- resolve: {
64
- conditions: [...conditions, "development|production"],
65
- },
66
- },
67
- builder: {
68
- buildApp: async (app) => {
69
- await app.build(app.environments.ssr);
70
- await app.build(app.environments.client);
71
- },
72
- },
73
- environments: {
74
- client: {
75
- build: {
76
- outDir: getOutputDirectory(userConfig, "client"),
77
- },
78
- },
36
+ rolldown: {
37
+ options(options) {
38
+ input = normalizeInput(pluginOptions.main ?? options.input ?? {});
39
+ options.input = wrapInput(input);
40
+ options.preserveEntrySignatures ??= "strict";
41
+ options.platform ??= "neutral";
42
+ options.resolve ??= {};
43
+ options.resolve.conditionNames ??= [...getConditions(pluginOptions), "production"];
44
+ options.resolve.mainFields ??= getMainFields(pluginOptions);
45
+ options.resolve.extensions ??= DEFAULT_RESOLVE_EXTENSIONS;
46
+ options.transform ??= {};
47
+ options.transform.target ??= TARGET;
48
+ options.transform.define ??= {};
49
+ Object.assign(options.transform.define, getDefine(pluginOptions, "production"));
50
+ return options;
51
+ },
52
+ },
53
+ vite: {
54
+ async config(userConfig) {
55
+ const vite = await import("vite");
56
+ const isRolldown = "rolldownVersion" in this.meta;
57
+ input = normalizeInput(pluginOptions.main ??
58
+ userConfig.environments?.ssr?.build?.rolldownOptions?.input ??
59
+ userConfig.environments?.ssr?.build?.rollupOptions?.input ??
60
+ {});
61
+ const rollupOptions = {
62
+ input: wrapInput(input),
63
+ preserveEntrySignatures: "strict",
64
+ };
65
+ const define = getDefine(pluginOptions, process.env.NODE_ENV || userConfig.mode || "production");
66
+ const conditions = getConditions(pluginOptions);
67
+ const mainFields = getMainFields(pluginOptions);
68
+ return {
69
+ appType: "custom",
79
70
  ssr: {
71
+ noExternal: true,
80
72
  resolve: {
81
- noExternal: true,
82
73
  conditions: [...conditions, "development|production"],
83
74
  },
84
- build: {
85
- ssr: true,
86
- target: TARGET,
87
- emitAssets: true,
88
- copyPublicDir: false,
89
- outDir: getOutputDirectory(userConfig, "ssr"),
90
- ...(isRolldown
91
- ? {
92
- rolldownOptions: {
93
- ...rollupOptions,
94
- platform: "neutral",
95
- resolve: {
96
- mainFields,
97
- extensions: DEFAULT_RESOLVE_EXTENSIONS,
98
- },
99
- },
100
- }
101
- : { rollupOptions }),
75
+ },
76
+ builder: {
77
+ buildApp: async (app) => {
78
+ await app.build(app.environments.ssr);
79
+ await app.build(app.environments.client);
102
80
  },
103
- optimizeDeps: {
104
- noDiscovery: false,
105
- ignoreOutdatedRequests: true,
106
- entries: pluginOptions.main ? vite.normalizePath(pluginOptions.main) : undefined,
107
- ...(isRolldown
108
- ? {
109
- rolldownOptions: {
110
- platform: "neutral",
111
- resolve: {
112
- conditionNames: [...conditions, "development|production"],
113
- mainFields,
114
- extensions: DEFAULT_RESOLVE_EXTENSIONS,
81
+ },
82
+ environments: {
83
+ client: {
84
+ build: {
85
+ outDir: getOutputDirectory(userConfig, "client"),
86
+ },
87
+ },
88
+ ssr: {
89
+ resolve: {
90
+ noExternal: true,
91
+ conditions: [...conditions, "development|production"],
92
+ },
93
+ build: {
94
+ ssr: true,
95
+ target: TARGET,
96
+ emitAssets: true,
97
+ copyPublicDir: false,
98
+ outDir: getOutputDirectory(userConfig, "ssr"),
99
+ ...(isRolldown
100
+ ? {
101
+ rolldownOptions: {
102
+ ...rollupOptions,
103
+ platform: "neutral",
104
+ resolve: {
105
+ mainFields,
106
+ extensions: DEFAULT_RESOLVE_EXTENSIONS,
107
+ },
108
+ },
109
+ }
110
+ : { rollupOptions }),
111
+ },
112
+ optimizeDeps: {
113
+ noDiscovery: false,
114
+ ignoreOutdatedRequests: true,
115
+ entries: pluginOptions.main ? vite.normalizePath(pluginOptions.main) : undefined,
116
+ ...(isRolldown
117
+ ? {
118
+ rolldownOptions: {
119
+ platform: "neutral",
120
+ resolve: {
121
+ conditionNames: [...conditions, "development|production"],
122
+ mainFields,
123
+ extensions: DEFAULT_RESOLVE_EXTENSIONS,
124
+ },
125
+ transform: {
126
+ target: TARGET,
127
+ define,
128
+ },
115
129
  },
116
- transform: {
130
+ }
131
+ : {
132
+ esbuildOptions: {
133
+ platform: "neutral",
134
+ conditions: [...conditions, "development|production"],
135
+ resolveExtensions: DEFAULT_RESOLVE_EXTENSIONS,
136
+ mainFields,
117
137
  target: TARGET,
118
138
  define,
119
139
  },
120
- },
121
- }
122
- : {
123
- esbuildOptions: {
124
- platform: "neutral",
125
- conditions: [...conditions, "development|production"],
126
- resolveExtensions: DEFAULT_RESOLVE_EXTENSIONS,
127
- mainFields,
128
- target: TARGET,
129
- define,
130
- },
131
- }),
140
+ }),
141
+ },
142
+ keepProcessEnv: true,
132
143
  },
133
- keepProcessEnv: true,
134
144
  },
135
- },
136
- };
145
+ };
146
+ },
137
147
  },
138
- },
139
- }));
140
- function wrapEntryInput(input) {
141
- const virtualEntryId = (id) => `${WORKER_ENTRY_PREFIX}${id}`;
148
+ };
149
+ });
150
+ const normalizeInput = (input) => {
142
151
  if (typeof input === "string") {
143
- return { [path.parse(input).name || "index"]: virtualEntryId(input) };
152
+ return { [path.parse(input).name || "index"]: input };
144
153
  }
145
- if (Array.isArray(input)) {
146
- return Object.fromEntries(input.map((p) => [path.parse(p).name, virtualEntryId(p)]));
154
+ else if (Array.isArray(input)) {
155
+ return Object.fromEntries(input.map((p) => [path.parse(p).name, p]));
147
156
  }
148
- return Object.fromEntries(Object.entries(input).map(([key, value]) => [key, virtualEntryId(value)]));
149
- }
157
+ else {
158
+ return input;
159
+ }
160
+ };
161
+ const wrapInput = (input) => Object.fromEntries(Object.entries(input).map(([key, id]) => [key, `${WORKER_ENTRY_PREFIX}${id}`]));
150
162
  function getDefine(options, nodeEnv) {
151
163
  return {
152
164
  "process.env.NODE_ENV": JSON.stringify(nodeEnv),
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/plugins/options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/plugins/options.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"virtual-modules.d.ts","sourceRoot":"","sources":["../../src/plugins/virtual-modules.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,mBAAmB,EAAG,2BAAoC,CAAC;AAKxE,eAAO,MAAM,oBAAoB,2CA4H/B,CAAC"}
1
+ {"version":3,"file":"virtual-modules.d.ts","sourceRoot":"","sources":["../../src/plugins/virtual-modules.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,mBAAmB,EAAG,2BAAoC,CAAC;AAKxE,eAAO,MAAM,oBAAoB,2CAyH/B,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { createPlugin } from "../factory.js";
2
+ import { resolvePluginApi } from "../utils.js";
2
3
  // oxlint-disable-next-line no-control-regex
3
4
  const VIRTUAL_MODULE_REGEXP = /^\0distilled:.*$/;
4
5
  export const WORKER_ENTRY_PREFIX = "\0distilled:worker-entry:";
@@ -21,7 +22,7 @@ export const virtualModulesPlugin = createPlugin("virtual-modules", (options) =>
21
22
  },
22
23
  shared: {
23
24
  buildStart({ plugins }) {
24
- unenvApi = plugins.find((plugin) => "name" in plugin && plugin.name === "distilled-cloudflare:nodejs-unenv")?.api;
25
+ unenvApi = resolvePluginApi(plugins, "distilled-cloudflare:nodejs-unenv");
25
26
  },
26
27
  resolveId: {
27
28
  filter: { id: VIRTUAL_MODULE_REGEXP },
@@ -1 +1 @@
1
- {"version":3,"file":"virtual-modules.js","sourceRoot":"","sources":["../../src/plugins/virtual-modules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"virtual-modules.js","sourceRoot":"","sources":["../../src/plugins/virtual-modules.ts"],"names":[],"mappings":"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"}
package/dist/utils.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export declare function sanitizePath(path: string): string;
2
2
  export declare function hasNodejsCompat(flags?: ReadonlyArray<string>): boolean;
3
3
  export declare function hasNodejsAls(flags?: ReadonlyArray<string>): boolean;
4
+ export declare function resolvePluginApi<Api>(plugins: ReadonlyArray<unknown>, name: string): Api | undefined;
4
5
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED,wBAAgB,eAAe,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,OAAO,CAEtE;AAED,wBAAgB,YAAY,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,OAAO,CAEnE"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED,wBAAgB,eAAe,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,OAAO,CAEtE;AAED,wBAAgB,YAAY,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,OAAO,CAEnE;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,mBAKlF"}
package/dist/utils.js CHANGED
@@ -8,4 +8,7 @@ export function hasNodejsCompat(flags) {
8
8
  export function hasNodejsAls(flags) {
9
9
  return flags?.some((flag) => flag === "nodejs_als") ?? false;
10
10
  }
11
+ export function resolvePluginApi(plugins, name) {
12
+ return plugins.find((plugin) => typeof plugin === "object" && plugin !== null && "name" in plugin && plugin.name === name)?.api;
13
+ }
11
14
  //# sourceMappingURL=utils.js.map
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG,SAAS,CAAC;AAEhC,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAA6B;IAC3D,OAAO,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,kBAAkB,CAAC,IAAI,KAAK,CAAC;AACjG,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAA6B;IACxD,OAAO,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,KAAK,CAAC;AAC/D,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG,SAAS,CAAC;AAEhC,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAA6B;IAC3D,OAAO,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,kBAAkB,CAAC,IAAI,KAAK,CAAC;AACjG,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAA6B;IACxD,OAAO,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,KAAK,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAM,OAA+B,EAAE,IAAY;IACjF,OAAO,OAAO,CAAC,IAAI,CACjB,CAAC,MAAM,EAAwC,EAAE,CAC/C,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,CAC5F,EAAE,GAAG,CAAC;AACT,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@distilled.cloud/cloudflare-rolldown-plugin",
3
- "version": "0.4.1-beta.5",
3
+ "version": "0.4.1-beta.7",
4
4
  "description": "Rolldown plugin for Cloudflare Workers.",
5
5
  "keywords": [
6
6
  "cloudflare",
@@ -43,6 +43,10 @@
43
43
  "./options": {
44
44
  "types": "./dist/options.d.ts",
45
45
  "import": "./dist/options.js"
46
+ },
47
+ "./utils": {
48
+ "types": "./dist/utils.d.ts",
49
+ "import": "./dist/utils.js"
46
50
  }
47
51
  },
48
52
  "publishConfig": {
@@ -32,135 +32,154 @@ const DEFAULT_RESOLVE_EXTENSIONS = [
32
32
 
33
33
  const TARGET = "es2024";
34
34
 
35
- export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
36
- rolldown: {
37
- options(options) {
38
- options.input = wrapEntryInput(pluginOptions.main ?? options.input ?? {});
39
- options.preserveEntrySignatures ??= "strict";
40
- options.platform ??= "neutral";
41
- options.resolve ??= {};
42
- options.resolve.conditionNames ??= [...getConditions(pluginOptions), "production"];
43
- options.resolve.mainFields ??= getMainFields(pluginOptions);
44
- options.resolve.extensions ??= DEFAULT_RESOLVE_EXTENSIONS;
45
- options.transform ??= {};
46
- options.transform.target ??= TARGET;
47
- options.transform.define ??= {};
48
- Object.assign(options.transform.define, getDefine(pluginOptions, "production"));
49
- return options;
35
+ export interface OptionsApi {
36
+ input: () => Record<string, string>;
37
+ }
38
+
39
+ export const optionsPlugin = createPlugin<"options", OptionsApi>("options", (pluginOptions) => {
40
+ let input: Record<string, string> = {};
41
+ return {
42
+ shared: {
43
+ api: {
44
+ input: () => input,
45
+ },
50
46
  },
51
- },
52
- vite: {
53
- async config(userConfig) {
54
- const vite = await import("vite");
55
- const isRolldown = "rolldownVersion" in this.meta;
56
- const input =
57
- pluginOptions.main ??
58
- userConfig.environments?.ssr?.build?.rolldownOptions?.input ??
59
- userConfig.environments?.ssr?.build?.rollupOptions?.input;
60
- const rollupOptions: vite.Rollup.RollupOptions = {
61
- input: wrapEntryInput(input ?? {}),
62
- preserveEntrySignatures: "strict",
63
- };
64
- const define = getDefine(
65
- pluginOptions,
66
- process.env.NODE_ENV || userConfig.mode || "production",
67
- );
68
- const conditions = getConditions(pluginOptions);
69
- const mainFields = getMainFields(pluginOptions);
70
- return {
71
- appType: "custom",
72
- ssr: {
73
- noExternal: true,
74
- resolve: {
75
- conditions: [...conditions, "development|production"],
76
- },
77
- },
78
- builder: {
79
- buildApp: async (app) => {
80
- await app.build(app.environments.ssr);
81
- await app.build(app.environments.client);
82
- },
83
- },
84
- environments: {
85
- client: {
86
- build: {
87
- outDir: getOutputDirectory(userConfig, "client"),
88
- },
89
- },
47
+ rolldown: {
48
+ options(options) {
49
+ input = normalizeInput(pluginOptions.main ?? options.input ?? {});
50
+ options.input = wrapInput(input);
51
+ options.preserveEntrySignatures ??= "strict";
52
+ options.platform ??= "neutral";
53
+ options.resolve ??= {};
54
+ options.resolve.conditionNames ??= [...getConditions(pluginOptions), "production"];
55
+ options.resolve.mainFields ??= getMainFields(pluginOptions);
56
+ options.resolve.extensions ??= DEFAULT_RESOLVE_EXTENSIONS;
57
+ options.transform ??= {};
58
+ options.transform.target ??= TARGET;
59
+ options.transform.define ??= {};
60
+ Object.assign(options.transform.define, getDefine(pluginOptions, "production"));
61
+ return options;
62
+ },
63
+ },
64
+ vite: {
65
+ async config(userConfig) {
66
+ const vite = await import("vite");
67
+ const isRolldown = "rolldownVersion" in this.meta;
68
+ input = normalizeInput(
69
+ pluginOptions.main ??
70
+ userConfig.environments?.ssr?.build?.rolldownOptions?.input ??
71
+ userConfig.environments?.ssr?.build?.rollupOptions?.input ??
72
+ {},
73
+ );
74
+ const rollupOptions: vite.Rollup.RollupOptions = {
75
+ input: wrapInput(input),
76
+ preserveEntrySignatures: "strict",
77
+ };
78
+ const define = getDefine(
79
+ pluginOptions,
80
+ process.env.NODE_ENV || userConfig.mode || "production",
81
+ );
82
+ const conditions = getConditions(pluginOptions);
83
+ const mainFields = getMainFields(pluginOptions);
84
+ return {
85
+ appType: "custom",
90
86
  ssr: {
87
+ noExternal: true,
91
88
  resolve: {
92
- noExternal: true,
93
89
  conditions: [...conditions, "development|production"],
94
90
  },
95
- build: {
96
- ssr: true,
97
- target: TARGET,
98
- emitAssets: true,
99
- copyPublicDir: false,
100
- outDir: getOutputDirectory(userConfig, "ssr"),
101
- ...(isRolldown
102
- ? {
103
- rolldownOptions: {
104
- ...rollupOptions,
105
- platform: "neutral",
106
- resolve: {
107
- mainFields,
108
- extensions: DEFAULT_RESOLVE_EXTENSIONS,
109
- },
110
- },
111
- }
112
- : { rollupOptions }),
91
+ },
92
+ builder: {
93
+ buildApp: async (app) => {
94
+ await app.build(app.environments.ssr);
95
+ await app.build(app.environments.client);
113
96
  },
114
- optimizeDeps: {
115
- noDiscovery: false,
116
- ignoreOutdatedRequests: true,
117
- entries: pluginOptions.main ? vite.normalizePath(pluginOptions.main) : undefined,
118
- ...(isRolldown
119
- ? {
120
- rolldownOptions: {
121
- platform: "neutral",
122
- resolve: {
123
- conditionNames: [...conditions, "development|production"],
124
- mainFields,
125
- extensions: DEFAULT_RESOLVE_EXTENSIONS,
97
+ },
98
+ environments: {
99
+ client: {
100
+ build: {
101
+ outDir: getOutputDirectory(userConfig, "client"),
102
+ },
103
+ },
104
+ ssr: {
105
+ resolve: {
106
+ noExternal: true,
107
+ conditions: [...conditions, "development|production"],
108
+ },
109
+ build: {
110
+ ssr: true,
111
+ target: TARGET,
112
+ emitAssets: true,
113
+ copyPublicDir: false,
114
+ outDir: getOutputDirectory(userConfig, "ssr"),
115
+ ...(isRolldown
116
+ ? {
117
+ rolldownOptions: {
118
+ ...rollupOptions,
119
+ platform: "neutral",
120
+ resolve: {
121
+ mainFields,
122
+ extensions: DEFAULT_RESOLVE_EXTENSIONS,
123
+ },
124
+ },
125
+ }
126
+ : { rollupOptions }),
127
+ },
128
+ optimizeDeps: {
129
+ noDiscovery: false,
130
+ ignoreOutdatedRequests: true,
131
+ entries: pluginOptions.main ? vite.normalizePath(pluginOptions.main) : undefined,
132
+ ...(isRolldown
133
+ ? {
134
+ rolldownOptions: {
135
+ platform: "neutral",
136
+ resolve: {
137
+ conditionNames: [...conditions, "development|production"],
138
+ mainFields,
139
+ extensions: DEFAULT_RESOLVE_EXTENSIONS,
140
+ },
141
+ transform: {
142
+ target: TARGET,
143
+ define,
144
+ },
126
145
  },
127
- transform: {
146
+ }
147
+ : {
148
+ esbuildOptions: {
149
+ platform: "neutral",
150
+ conditions: [...conditions, "development|production"],
151
+ resolveExtensions: DEFAULT_RESOLVE_EXTENSIONS,
152
+ mainFields,
128
153
  target: TARGET,
129
154
  define,
130
155
  },
131
- },
132
- }
133
- : {
134
- esbuildOptions: {
135
- platform: "neutral",
136
- conditions: [...conditions, "development|production"],
137
- resolveExtensions: DEFAULT_RESOLVE_EXTENSIONS,
138
- mainFields,
139
- target: TARGET,
140
- define,
141
- },
142
- }),
156
+ }),
157
+ },
158
+ keepProcessEnv: true,
143
159
  },
144
- keepProcessEnv: true,
145
160
  },
146
- },
147
- };
161
+ };
162
+ },
148
163
  },
149
- },
150
- }));
164
+ };
165
+ });
151
166
 
152
- function wrapEntryInput(input: string | Array<string> | Record<string, string>) {
153
- const virtualEntryId = (id: string) => `${WORKER_ENTRY_PREFIX}${id}` as const;
167
+ const normalizeInput = (
168
+ input: string | Array<string> | Record<string, string>,
169
+ ): Record<string, string> => {
154
170
  if (typeof input === "string") {
155
- return { [path.parse(input).name || "index"]: virtualEntryId(input) };
156
- }
157
- if (Array.isArray(input)) {
158
- return Object.fromEntries(input.map((p) => [path.parse(p).name, virtualEntryId(p)]));
171
+ return { [path.parse(input).name || "index"]: input };
172
+ } else if (Array.isArray(input)) {
173
+ return Object.fromEntries(input.map((p) => [path.parse(p).name, p]));
174
+ } else {
175
+ return input;
159
176
  }
160
- return Object.fromEntries(
161
- Object.entries(input).map(([key, value]) => [key, virtualEntryId(value)]),
177
+ };
178
+
179
+ const wrapInput = (input: Record<string, string>) =>
180
+ Object.fromEntries(
181
+ Object.entries(input).map(([key, id]) => [key, `${WORKER_ENTRY_PREFIX}${id}` as const]),
162
182
  );
163
- }
164
183
 
165
184
  function getDefine(options: CloudflarePluginOptions, nodeEnv: string): Record<string, string> {
166
185
  return {
@@ -1,5 +1,5 @@
1
- import type { Plugin } from "rolldown";
2
1
  import { createPlugin } from "../factory.js";
2
+ import { resolvePluginApi } from "../utils.js";
3
3
  import type { UnenvApi } from "./nodejs-compat.js";
4
4
 
5
5
  // oxlint-disable-next-line no-control-regex
@@ -27,10 +27,7 @@ export const virtualModulesPlugin = createPlugin("virtual-modules", (options) =>
27
27
  },
28
28
  shared: {
29
29
  buildStart({ plugins }) {
30
- unenvApi = plugins.find(
31
- (plugin): plugin is Plugin<UnenvApi> =>
32
- "name" in plugin && plugin.name === "distilled-cloudflare:nodejs-unenv",
33
- )?.api;
30
+ unenvApi = resolvePluginApi<UnenvApi>(plugins, "distilled-cloudflare:nodejs-unenv");
34
31
  },
35
32
  resolveId: {
36
33
  filter: { id: VIRTUAL_MODULE_REGEXP },
package/src/utils.ts CHANGED
@@ -11,3 +11,10 @@ export function hasNodejsCompat(flags?: ReadonlyArray<string>): boolean {
11
11
  export function hasNodejsAls(flags?: ReadonlyArray<string>): boolean {
12
12
  return flags?.some((flag) => flag === "nodejs_als") ?? false;
13
13
  }
14
+
15
+ export function resolvePluginApi<Api>(plugins: ReadonlyArray<unknown>, name: string) {
16
+ return plugins.find(
17
+ (plugin): plugin is { name: string; api: Api } =>
18
+ typeof plugin === "object" && plugin !== null && "name" in plugin && plugin.name === name,
19
+ )?.api;
20
+ }