@distilled.cloud/cloudflare-rolldown-plugin 0.4.0 → 0.4.1-beta.2

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.
Files changed (49) hide show
  1. package/dist/options.d.ts +6 -0
  2. package/dist/options.d.ts.map +1 -1
  3. package/dist/plugins/additional-modules.d.ts +10 -0
  4. package/dist/plugins/additional-modules.d.ts.map +1 -1
  5. package/dist/plugins/additional-modules.js +1 -1
  6. package/dist/plugins/additional-modules.js.map +1 -1
  7. package/dist/plugins/cloudflare-externals.d.ts.map +1 -1
  8. package/dist/plugins/cloudflare-externals.js +1 -0
  9. package/dist/plugins/cloudflare-externals.js.map +1 -1
  10. package/dist/plugins/dev.d.ts +2 -0
  11. package/dist/plugins/dev.d.ts.map +1 -0
  12. package/dist/plugins/dev.js +1 -0
  13. package/dist/plugins/dev.js.map +1 -0
  14. package/dist/plugins/nodejs-als.d.ts +2 -0
  15. package/dist/plugins/nodejs-als.d.ts.map +1 -0
  16. package/dist/plugins/nodejs-als.js +32 -0
  17. package/dist/plugins/nodejs-als.js.map +1 -0
  18. package/dist/plugins/nodejs-compat.d.ts.map +1 -1
  19. package/dist/plugins/nodejs-compat.js +9 -0
  20. package/dist/plugins/nodejs-compat.js.map +1 -1
  21. package/dist/plugins/nodejs-import-warning.d.ts +2 -0
  22. package/dist/plugins/nodejs-import-warning.d.ts.map +1 -0
  23. package/dist/plugins/nodejs-import-warning.js +62 -0
  24. package/dist/plugins/nodejs-import-warning.js.map +1 -0
  25. package/dist/plugins/nodejs-unenv.d.ts +8 -0
  26. package/dist/plugins/nodejs-unenv.d.ts.map +1 -0
  27. package/dist/plugins/nodejs-unenv.js +133 -0
  28. package/dist/plugins/nodejs-unenv.js.map +1 -0
  29. package/dist/plugins/options.d.ts.map +1 -1
  30. package/dist/plugins/options.js +44 -17
  31. package/dist/plugins/options.js.map +1 -1
  32. package/dist/plugins/virtual-modules.d.ts.map +1 -1
  33. package/dist/plugins/virtual-modules.js +4 -3
  34. package/dist/plugins/virtual-modules.js.map +1 -1
  35. package/dist/plugins/wasm-init.d.ts.map +1 -1
  36. package/dist/plugins/wasm-init.js +3 -0
  37. package/dist/plugins/wasm-init.js.map +1 -1
  38. package/dist/plugins/wasm-init.plugin.d.ts +2 -0
  39. package/dist/plugins/wasm-init.plugin.d.ts.map +1 -0
  40. package/dist/plugins/wasm-init.plugin.js +20 -0
  41. package/dist/plugins/wasm-init.plugin.js.map +1 -0
  42. package/package.json +1 -1
  43. package/src/options.ts +6 -0
  44. package/src/plugins/additional-modules.ts +1 -1
  45. package/src/plugins/cloudflare-externals.ts +1 -0
  46. package/src/plugins/nodejs-compat.ts +9 -0
  47. package/src/plugins/options.ts +45 -18
  48. package/src/plugins/virtual-modules.ts +5 -3
  49. package/src/plugins/wasm-init.ts +3 -0
package/dist/options.d.ts CHANGED
@@ -1,4 +1,10 @@
1
1
  export interface CloudflarePluginOptions {
2
+ /**
3
+ * The main entry point to use.
4
+ * Defaults to the one from your Rolldown configuration.
5
+ * @default undefined
6
+ */
7
+ main?: string;
2
8
  /**
3
9
  * The compatibility date to use. This is optional, but should be defined to avoid unexpected behavior.
4
10
  * @default undefined
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACnC;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACzB"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACnC;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACzB"}
@@ -1,2 +1,12 @@
1
+ export declare const MODULE_RULES: readonly [{
2
+ readonly type: "CompiledWasm";
3
+ readonly pattern: RegExp;
4
+ }, {
5
+ readonly type: "Data";
6
+ readonly pattern: RegExp;
7
+ }, {
8
+ readonly type: "Text";
9
+ readonly pattern: RegExp;
10
+ }];
1
11
  export declare const additionalModulesPlugin: import("../factory.js").PluginOutput<any>;
2
12
  //# sourceMappingURL=additional-modules.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"additional-modules.d.ts","sourceRoot":"","sources":["../../src/plugins/additional-modules.ts"],"names":[],"mappings":"AAsBA,eAAO,MAAM,uBAAuB,2CAwDlC,CAAC"}
1
+ {"version":3,"file":"additional-modules.d.ts","sourceRoot":"","sources":["../../src/plugins/additional-modules.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,YAAY;;;;;;;;;EAIf,CAAC;AAMX,eAAO,MAAM,uBAAuB,2CAwDlC,CAAC"}
@@ -2,7 +2,7 @@ import MagicString from "magic-string";
2
2
  import path from "node:path";
3
3
  import { createPlugin } from "../factory.js";
4
4
  import { sanitizePath } from "../utils.js";
5
- const MODULE_RULES = [
5
+ export const MODULE_RULES = [
6
6
  { type: "CompiledWasm", pattern: /\.wasm(\?module)?$/ },
7
7
  { type: "Data", pattern: /\.bin$/ },
8
8
  { type: "Text", pattern: /\.(txt|html|sql)$/ },
@@ -1 +1 @@
1
- {"version":3,"file":"additional-modules.js","sourceRoot":"","sources":["../../src/plugins/additional-modules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"additional-modules.js","sourceRoot":"","sources":["../../src/plugins/additional-modules.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cloudflare-externals.d.ts","sourceRoot":"","sources":["../../src/plugins/cloudflare-externals.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,yBAAyB,2CAmCpC,CAAC"}
1
+ {"version":3,"file":"cloudflare-externals.d.ts","sourceRoot":"","sources":["../../src/plugins/cloudflare-externals.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,yBAAyB,2CAoCpC,CAAC"}
@@ -23,6 +23,7 @@ export const cloudflareExternalsPlugin = createPlugin("cloudflare-externals", ()
23
23
  },
24
24
  },
25
25
  vite: {
26
+ enforce: "pre",
26
27
  configEnvironment(name) {
27
28
  if (name === "client") {
28
29
  // Some frameworks allow users to mix client and server code in the same file and then extract the server code.
@@ -1 +1 @@
1
- {"version":3,"file":"cloudflare-externals.js","sourceRoot":"","sources":["../../src/plugins/cloudflare-externals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,2BAA2B,GAAG;IAClC,kBAAkB;IAClB,iBAAiB;IACjB,oBAAoB;IACpB,oBAAoB;IACpB,sBAAsB;CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,YAAY,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACjF,OAAO;QACL,QAAQ,EAAE;YACR,SAAS,EAAE;gBACT,MAAM,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE;gBAC9B,OAAO,CAAC,EAAE;oBACR,IAAI,CAAC,2BAA2B,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;wBAC9C,OAAO;oBACT,CAAC;oBAED,OAAO;wBACL,EAAE;wBACF,QAAQ,EAAE,IAAI;qBACf,CAAC;gBACJ,CAAC;aACF;SACF;QACD,IAAI,EAAE;YACJ,iBAAiB,CAAC,IAAI;gBACpB,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,+GAA+G;oBAC/G,kJAAkJ;oBAClJ,OAAO,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,2BAA2B,EAAE,EAAE,CAAC;gBACpE,CAAC;gBACD,OAAO;oBACL,OAAO,EAAE;wBACP,QAAQ,EAAE,2BAA2B;qBACtC;oBACD,YAAY,EAAE;wBACZ,OAAO,EAAE,2BAA2B;qBACrC;iBACF,CAAC;YACJ,CAAC;SACF;KACF,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"cloudflare-externals.js","sourceRoot":"","sources":["../../src/plugins/cloudflare-externals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,2BAA2B,GAAG;IAClC,kBAAkB;IAClB,iBAAiB;IACjB,oBAAoB;IACpB,oBAAoB;IACpB,sBAAsB;CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,YAAY,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACjF,OAAO;QACL,QAAQ,EAAE;YACR,SAAS,EAAE;gBACT,MAAM,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE;gBAC9B,OAAO,CAAC,EAAE;oBACR,IAAI,CAAC,2BAA2B,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;wBAC9C,OAAO;oBACT,CAAC;oBAED,OAAO;wBACL,EAAE;wBACF,QAAQ,EAAE,IAAI;qBACf,CAAC;gBACJ,CAAC;aACF;SACF;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,KAAK;YACd,iBAAiB,CAAC,IAAI;gBACpB,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,+GAA+G;oBAC/G,kJAAkJ;oBAClJ,OAAO,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,2BAA2B,EAAE,EAAE,CAAC;gBACpE,CAAC;gBACD,OAAO;oBACL,OAAO,EAAE;wBACP,QAAQ,EAAE,2BAA2B;qBACtC;oBACD,YAAY,EAAE;wBACZ,OAAO,EAAE,2BAA2B;qBACrC;iBACF,CAAC;YACJ,CAAC;SACF;KACF,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=dev.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/plugins/dev.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=dev.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/plugins/dev.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export declare const nodejsAlsPlugin: import("../factory.js").NullablePluginOutput<any>;
2
+ //# sourceMappingURL=nodejs-als.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodejs-als.d.ts","sourceRoot":"","sources":["../../src/plugins/nodejs-als.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,eAAe,mDAyB1B,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { createPlugin } from "../factory.js";
2
+ import { hasNodejsAls } from "../utils.js";
3
+ const ASYNC_HOOKS_REGEXP = /^(node:)?async_hooks$/;
4
+ export const nodejsAlsPlugin = createPlugin("nodejs-als", (options) => {
5
+ if (!hasNodejsAls(options.compatibilityFlags))
6
+ return;
7
+ return {
8
+ rolldown: {
9
+ resolveId: {
10
+ filter: { id: ASYNC_HOOKS_REGEXP },
11
+ handler(id) {
12
+ return { id, external: true };
13
+ },
14
+ },
15
+ },
16
+ vite: {
17
+ configEnvironment(name) {
18
+ if (name === "client")
19
+ return;
20
+ return {
21
+ resolve: {
22
+ builtins: ["async_hooks", "node:async_hooks"],
23
+ },
24
+ optimizeDeps: {
25
+ exclude: ["async_hooks", "node:async_hooks"],
26
+ },
27
+ };
28
+ },
29
+ },
30
+ };
31
+ });
32
+ //# sourceMappingURL=nodejs-als.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodejs-als.js","sourceRoot":"","sources":["../../src/plugins/nodejs-als.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AAEnD,MAAM,CAAC,MAAM,eAAe,GAAG,YAAY,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,EAAE;IACpE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAAE,OAAO;IACtD,OAAO;QACL,QAAQ,EAAE;YACR,SAAS,EAAE;gBACT,MAAM,EAAE,EAAE,EAAE,EAAE,kBAAkB,EAAE;gBAClC,OAAO,CAAC,EAAE;oBACR,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;gBAChC,CAAC;aACF;SACF;QACD,IAAI,EAAE;YACJ,iBAAiB,CAAC,IAAI;gBACpB,IAAI,IAAI,KAAK,QAAQ;oBAAE,OAAO;gBAC9B,OAAO;oBACL,OAAO,EAAE;wBACP,QAAQ,EAAE,CAAC,aAAa,EAAE,kBAAkB,CAAC;qBAC9C;oBACD,YAAY,EAAE;wBACZ,OAAO,EAAE,CAAC,aAAa,EAAE,kBAAkB,CAAC;qBAC7C;iBACF,CAAC;YACJ,CAAC;SACF;KACF,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"nodejs-compat.d.ts","sourceRoot":"","sources":["../../src/plugins/nodejs-compat.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,eAAe,mDAyB1B,CAAC;AAEH,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,EAAE;QAAE,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CAC5C;AAED,eAAO,MAAM,iBAAiB,wDA+H7B,CAAC;AAEF,eAAO,MAAM,yBAAyB,mDA0DpC,CAAC"}
1
+ {"version":3,"file":"nodejs-compat.d.ts","sourceRoot":"","sources":["../../src/plugins/nodejs-compat.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,eAAe,mDA0B1B,CAAC;AAEH,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,EAAE;QAAE,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CAC5C;AAED,eAAO,MAAM,iBAAiB,wDAuI7B,CAAC;AAEF,eAAO,MAAM,yBAAyB,mDA0DpC,CAAC"}
@@ -21,6 +21,7 @@ export const nodejsAlsPlugin = createPlugin("nodejs-als", (options) => {
21
21
  },
22
22
  },
23
23
  vite: {
24
+ enforce: "pre",
24
25
  configEnvironment(name) {
25
26
  if (name === "client")
26
27
  return;
@@ -124,6 +125,14 @@ export const nodejsUnenvPlugin = createPlugin("nodejs-unenv", (options) => {
124
125
  },
125
126
  }
126
127
  : {}),
128
+ optimizeDeps: {
129
+ exclude: [
130
+ ...nonPrefixedNodeModules,
131
+ ...nonPrefixedNodeModules.map((module) => `node:${module}`),
132
+ // New Node.js built-in modules are only published with the `node:` prefix.
133
+ ...["node:sea", "node:sqlite", "node:test", "node:test/reporters"],
134
+ ],
135
+ },
127
136
  };
128
137
  },
129
138
  async configureServer(server) {
@@ -1 +1 @@
1
- {"version":3,"file":"nodejs-compat.js","sourceRoot":"","sources":["../../src/plugins/nodejs-compat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nodejs-compat.js","sourceRoot":"","sources":["../../src/plugins/nodejs-compat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE5D,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AACnD,MAAM,2BAA2B,GAAG,IAAI,MAAM,CAAC,KAAK,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AAElG,MAAM,CAAC,MAAM,eAAe,GAAG,YAAY,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,EAAE;IACpE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAAE,OAAO;IACtD,OAAO;QACL,QAAQ,EAAE;YACR,SAAS,EAAE;gBACT,MAAM,EAAE,EAAE,EAAE,EAAE,kBAAkB,EAAE;gBAClC,OAAO,CAAC,EAAE;oBACR,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;gBAChC,CAAC;aACF;SACF;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,KAAK;YACd,iBAAiB,CAAC,IAAI;gBACpB,IAAI,IAAI,KAAK,QAAQ;oBAAE,OAAO;gBAC9B,OAAO;oBACL,OAAO,EAAE;wBACP,QAAQ,EAAE,CAAC,aAAa,EAAE,kBAAkB,CAAC;qBAC9C;oBACD,YAAY,EAAE;wBACZ,OAAO,EAAE,CAAC,aAAa,EAAE,kBAAkB,CAAC;qBAC7C;iBACF,CAAC;YACJ,CAAC;SACF;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAOH,MAAM,CAAC,MAAM,iBAAiB,GAAG,YAAY,CAC3C,cAAc,EACd,CAAC,OAAO,EAAE,EAAE;IACV,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAAE,OAAO;IACzD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;QACtD,OAAO,EAAE;YACP,mBAAmB,CAAC;gBAClB,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;gBAC5C,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;aAC/C,CAAC;SACH;KACF,CAAC,CAAC,GAAG,CAAC;IACP,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9C,KAAK,MAAM,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACjD,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAClD,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,CAAC,EAAU,EAAE,EAAE;QAC7B,IAAI,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAC/C,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QACpC,CAAC;QACD,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACpB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC;IACF,MAAM,iBAAiB,GAAG;QACxB,EAAE,EAAE,CAAC,2BAA2B,EAAE,UAAU,EAAE,8BAA8B,CAAC;KAC9E,CAAC;IACF,OAAO;QACL,MAAM,EAAE;YACN,GAAG,EAAE;gBACH,QAAQ;gBACR,MAAM,EAAE,MAAM,CAAC,WAAW,CACxB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,EAAE,eAAe,CAAC,EAAE,EAAE;oBAC7D,MAAM,CACJ,OAAO,eAAe,KAAK,QAAQ,EACnC,yCAAyC,CAC1C,CAAC;oBACF,OAAO,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;gBACzC,CAAC,CAAC,CACH;aACF;SACF;QACD,QAAQ,EAAE;YACR,KAAK,CAAC,OAAO,CAAC,OAAO;gBACnB,OAAO,CAAC,OAAO,GAAG;oBAChB,wBAAwB,CAAC;wBACvB,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC;wBACvB,kBAAkB,EAAE,IAAI;qBACzB,CAAC;oBACF,OAAO,CAAC,OAAO;iBAChB,CAAC;gBACF,OAAO,OAAO,CAAC;YACjB,CAAC;YACD,SAAS,EAAE;gBACT,MAAM,EAAE,iBAAiB;gBACzB,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO;oBAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;oBACjC,IAAI,CAAC,QAAQ;wBAAE,OAAO;oBACtB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACnD,CAAC;aACF;SACF;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,KAAK;YACd,KAAK,CAAC,iBAAiB,CAAC,IAAI;gBAC1B,IAAI,IAAI,KAAK,QAAQ;oBAAE,OAAO;gBAC9B,OAAO;oBACL,OAAO,EAAE;wBACP,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC;qBACxB;oBACD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe;wBAC3B,CAAC,CAAC;4BACE,KAAK,EAAE;gCACL,eAAe,EAAE;oCACf,OAAO,EAAE;wCACP,wBAAwB,CAAC;4CACvB,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC;4CACvB,kBAAkB,EAAE,IAAI;yCACzB,CAAC;qCACH;iCACF;6BACF;yBACF;wBACH,CAAC,CAAC,EAAE,CAAC;oBACP,YAAY,EAAE;wBACZ,OAAO,EAAE;4BACP,GAAG,sBAAsB;4BACzB,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,MAAM,EAAE,CAAC;4BAC3D,2EAA2E;4BAC3E,GAAG,CAAC,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,qBAAqB,CAAC;yBACnE;qBACF;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,CAAC,eAAe,CAAC,MAAM;gBAC1B,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;oBAC/D,MAAM,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC;oBAChD,IAAI,CAAC,aAAa;wBAAE,OAAO;oBAC3B,MAAM,aAAa,CAAC,IAAI,EAAE,CAAC;oBAC3B,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;wBACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;wBAChC,IAAI,CAAC,QAAQ;4BAAE,OAAO;wBACtB,MAAM,YAAY,GAAG,aAAa,CAAC,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;wBAC1E,OAAO,YAAY,EAAE,UAAU,CAAC;oBAClC,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CACH,CAAC;YACJ,CAAC;YACD,SAAS,EAAE;gBACT,MAAM,EAAE,iBAAiB;gBACzB,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO;oBAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;oBACjC,IAAI,CAAC,QAAQ;wBAAE,OAAO;oBACtB,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;wBACtE,0CAA0C;wBAC1C,gFAAgF;wBAChF,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;wBACtF,gFAAgF;wBAChF,0DAA0D;wBAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAC7C,CAAC;oBACD,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACnD,CAAC;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,YAAY,CAAC,uBAAuB,EAAE,CAAC,OAAO,EAAE,EAAE;IACzF,IAAI,eAAe,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAAE,OAAO;IACxD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC/C,IAAI,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACzB,OAAO;QACL,QAAQ,EAAE;YACR,OAAO,CAAC,OAAO;gBACb,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;oBAChB,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC;gBACrB,CAAC;YACH,CAAC;SACF;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,KAAK;YACd,cAAc,CAAC,MAAM;gBACnB,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC;SACF;QACD,MAAM,EAAE;YACN,UAAU;gBACR,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,CAAC;YACD,SAAS,EAAE;gBACT,MAAM,EAAE,EAAE,EAAE,EAAE,2BAA2B,EAAE;gBAC3C,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ;oBACxB,IAAI,YAAY,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;wBAAE,OAAO;oBACpF,IAAI,QAAQ,EAAE,CAAC;wBACb,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;4BACrB,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;wBAC7B,CAAC;wBACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;oBACjC,CAAC;oBACD,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;gBAChC,CAAC;aACF;YACD,QAAQ;gBACN,MAAM,eAAe,GAA4C,EAAE,CAAC;gBACpE,KAAK,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;oBAChD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;wBACjC,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;4BACjC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;wBACzC,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,MAAM,OAAO,GAAG;wBACd,8BAA8B;wBAC9B,gEAAgE;wBAChE,6FAA6F;wBAC7F,GAAG,eAAe,CAAC,GAAG,CACpB,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,oBAAoB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,CACtF;qBACF,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACX,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC;SACF;KACF,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const nodejsImportWarningPlugin: import("../factory").NullablePluginOutput<any>;
2
+ //# sourceMappingURL=nodejs-import-warning.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodejs-import-warning.d.ts","sourceRoot":"","sources":["../../src/plugins/nodejs-import-warning.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,yBAAyB,gDAwDpC,CAAC"}
@@ -0,0 +1,62 @@
1
+ import { nonPrefixedNodeModules } from "@cloudflare/unenv-preset";
2
+ import path from "node:path";
3
+ import { createPlugin } from "../factory";
4
+ import { hasNodejsCompat } from "../utils";
5
+ const NODE_BUILTIN_MODULES_REGEXP = new RegExp(`^(${nonPrefixedNodeModules.join("|")}|node:.+)$`);
6
+ export const nodejsImportWarningPlugin = createPlugin("nodejs-import-warning", (options) => {
7
+ if (hasNodejsCompat(options.compatibilityFlags))
8
+ return;
9
+ const imports = new Map();
10
+ let root = process.cwd();
11
+ return {
12
+ rolldown: {
13
+ options(options) {
14
+ if (options.cwd) {
15
+ root = options.cwd;
16
+ }
17
+ },
18
+ },
19
+ vite: {
20
+ configResolved(config) {
21
+ root = config.root;
22
+ },
23
+ },
24
+ shared: {
25
+ buildStart() {
26
+ imports.clear();
27
+ },
28
+ resolveId: {
29
+ filter: { id: NODE_BUILTIN_MODULES_REGEXP },
30
+ async handler(id, importer) {
31
+ if (importer) {
32
+ if (!imports.has(id)) {
33
+ imports.set(id, new Set());
34
+ }
35
+ imports.get(id)?.add(importer);
36
+ }
37
+ return { id, external: true };
38
+ },
39
+ },
40
+ buildEnd() {
41
+ const filteredImports = [];
42
+ for (const [id, importers] of imports.entries()) {
43
+ for (const importer of importers) {
44
+ if (this.getModuleInfo(importer)) {
45
+ filteredImports.push({ id, importer });
46
+ }
47
+ }
48
+ }
49
+ if (filteredImports.length > 0) {
50
+ const message = [
51
+ "Unexpected Node.js imports. ",
52
+ 'Do you need to enable the "nodejs_compat" compatibility flag? ',
53
+ "Refer to https://developers.cloudflare.com/workers/runtime-apis/nodejs/ for more details.\n",
54
+ ...filteredImports.map(({ id, importer }) => ` - "${id}" imported from "${path.relative(root, importer)}"\n`),
55
+ ].join("");
56
+ this.warn(message);
57
+ }
58
+ },
59
+ },
60
+ };
61
+ });
62
+ //# sourceMappingURL=nodejs-import-warning.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodejs-import-warning.js","sourceRoot":"","sources":["../../src/plugins/nodejs-import-warning.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,MAAM,2BAA2B,GAAG,IAAI,MAAM,CAAC,KAAK,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AAElG,MAAM,CAAC,MAAM,yBAAyB,GAAG,YAAY,CAAC,uBAAuB,EAAE,CAAC,OAAO,EAAE,EAAE;IACzF,IAAI,eAAe,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAAE,OAAO;IACxD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC/C,IAAI,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACzB,OAAO;QACL,QAAQ,EAAE;YACR,OAAO,CAAC,OAAO;gBACb,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;oBAChB,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC;gBACrB,CAAC;YACH,CAAC;SACF;QACD,IAAI,EAAE;YACJ,cAAc,CAAC,MAAM;gBACnB,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC;SACF;QACD,MAAM,EAAE;YACN,UAAU;gBACR,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,CAAC;YACD,SAAS,EAAE;gBACT,MAAM,EAAE,EAAE,EAAE,EAAE,2BAA2B,EAAE;gBAC3C,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ;oBACxB,IAAI,QAAQ,EAAE,CAAC;wBACb,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;4BACrB,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;wBAC7B,CAAC;wBACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;oBACjC,CAAC;oBACD,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;gBAChC,CAAC;aACF;YACD,QAAQ;gBACN,MAAM,eAAe,GAA4C,EAAE,CAAC;gBACpE,KAAK,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;oBAChD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;wBACjC,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;4BACjC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;wBACzC,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,MAAM,OAAO,GAAG;wBACd,8BAA8B;wBAC9B,gEAAgE;wBAChE,6FAA6F;wBAC7F,GAAG,eAAe,CAAC,GAAG,CACpB,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,oBAAoB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,CACtF;qBACF,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACX,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC;SACF;KACF,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ export interface UnenvApi {
2
+ polyfill: ReadonlyArray<string>;
3
+ inject: {
4
+ [injectedName: string]: string;
5
+ };
6
+ }
7
+ export declare const nodejsUnenvPlugin: import("../factory.js").NullablePluginOutput<UnenvApi>;
8
+ //# sourceMappingURL=nodejs-unenv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodejs-unenv.d.ts","sourceRoot":"","sources":["../../src/plugins/nodejs-unenv.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,EAAE;QAAE,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CAC5C;AAED,eAAO,MAAM,iBAAiB,wDA8H7B,CAAC"}
@@ -0,0 +1,133 @@
1
+ import { getCloudflarePreset, nonPrefixedNodeModules } from "@cloudflare/unenv-preset";
2
+ import assert from "node:assert";
3
+ import { createRequire } from "node:module";
4
+ import { esmExternalRequirePlugin } from "rolldown/plugins";
5
+ import { defineEnv } from "unenv";
6
+ import { createPlugin } from "../factory.js";
7
+ import { hasNodejsCompat } from "../utils.js";
8
+ const NODE_BUILTIN_MODULES_REGEXP = new RegExp(`^(${nonPrefixedNodeModules.join("|")}|node:.+)$`);
9
+ export const nodejsUnenvPlugin = createPlugin("nodejs-unenv", (options) => {
10
+ if (!hasNodejsCompat(options.compatibilityFlags))
11
+ return;
12
+ const { alias, inject, external, polyfill } = defineEnv({
13
+ presets: [
14
+ getCloudflarePreset({
15
+ compatibilityDate: options.compatibilityDate,
16
+ compatibilityFlags: options.compatibilityFlags,
17
+ }),
18
+ ],
19
+ }).env;
20
+ const entries = new Set(Object.values(alias));
21
+ for (const globalInject of Object.values(inject)) {
22
+ if (typeof globalInject === "string") {
23
+ entries.add(globalInject);
24
+ }
25
+ else {
26
+ entries.add(globalInject[0]);
27
+ }
28
+ }
29
+ polyfill.forEach((module) => entries.add(module));
30
+ external.forEach((module) => entries.delete(module));
31
+ const require = createRequire(import.meta.url);
32
+ const resolve = (id) => {
33
+ if (alias[id] && !external.includes(alias[id])) {
34
+ return require.resolve(alias[id]);
35
+ }
36
+ if (entries.has(id)) {
37
+ return require.resolve(id);
38
+ }
39
+ };
40
+ const RESOLVE_ID_FILTER = {
41
+ id: [NODE_BUILTIN_MODULES_REGEXP, /^unenv\//, /^@cloudflare\/unenv-preset\//],
42
+ };
43
+ return {
44
+ shared: {
45
+ api: {
46
+ polyfill,
47
+ inject: Object.fromEntries(Object.entries(inject).map(([injectedName, moduleSpecifier]) => {
48
+ assert(typeof moduleSpecifier === "string", `expected moduleSpecifier to be a string`);
49
+ return [injectedName, moduleSpecifier];
50
+ })),
51
+ },
52
+ },
53
+ rolldown: {
54
+ async options(options) {
55
+ options.plugins = [
56
+ esmExternalRequirePlugin({
57
+ external: [...external],
58
+ skipDuplicateCheck: true,
59
+ }),
60
+ options.plugins,
61
+ ];
62
+ return options;
63
+ },
64
+ resolveId: {
65
+ filter: RESOLVE_ID_FILTER,
66
+ handler(source, importer, options) {
67
+ const resolved = resolve(source);
68
+ if (!resolved)
69
+ return;
70
+ return this.resolve(resolved, importer, options);
71
+ },
72
+ },
73
+ },
74
+ vite: {
75
+ async configEnvironment(name) {
76
+ if (name === "client")
77
+ return;
78
+ return {
79
+ resolve: {
80
+ builtins: [...external],
81
+ },
82
+ ...(this.meta.rolldownVersion
83
+ ? {
84
+ build: {
85
+ rolldownOptions: {
86
+ plugins: [
87
+ esmExternalRequirePlugin({
88
+ external: [...external],
89
+ skipDuplicateCheck: true,
90
+ }),
91
+ ],
92
+ },
93
+ },
94
+ }
95
+ : {}),
96
+ };
97
+ },
98
+ async configureServer(server) {
99
+ await Promise.all(Object.values(server.environments).flatMap(async (environment) => {
100
+ const depsOptimizer = environment.depsOptimizer;
101
+ if (!depsOptimizer)
102
+ return;
103
+ await depsOptimizer.init();
104
+ return Array.from(entries).map((entry) => {
105
+ const resolved = resolve(entry);
106
+ if (!resolved)
107
+ return;
108
+ const registration = depsOptimizer.registerMissingImport(entry, resolved);
109
+ return registration?.processing;
110
+ });
111
+ }));
112
+ },
113
+ resolveId: {
114
+ filter: RESOLVE_ID_FILTER,
115
+ handler(source, importer, options) {
116
+ const resolved = resolve(source);
117
+ if (!resolved)
118
+ return;
119
+ if (this.environment.mode === "dev" && this.environment.depsOptimizer) {
120
+ // We are in dev mode (rather than build).
121
+ // So let's pre-bundle this polyfill entry-point using the dependency optimizer.
122
+ const { id } = this.environment.depsOptimizer.registerMissingImport(source, resolved);
123
+ // We use the unresolved path to the polyfill and let the dependency optimizer's
124
+ // resolver find the resolved path to the bundled version.
125
+ return this.resolve(id, importer, options);
126
+ }
127
+ return this.resolve(resolved, importer, options);
128
+ },
129
+ },
130
+ },
131
+ };
132
+ });
133
+ //# sourceMappingURL=nodejs-unenv.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodejs-unenv.js","sourceRoot":"","sources":["../../src/plugins/nodejs-unenv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,2BAA2B,GAAG,IAAI,MAAM,CAAC,KAAK,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AAOlG,MAAM,CAAC,MAAM,iBAAiB,GAAG,YAAY,CAC3C,cAAc,EACd,CAAC,OAAO,EAAE,EAAE;IACV,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAAE,OAAO;IACzD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;QACtD,OAAO,EAAE;YACP,mBAAmB,CAAC;gBAClB,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;gBAC5C,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;aAC/C,CAAC;SACH;KACF,CAAC,CAAC,GAAG,CAAC;IACP,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9C,KAAK,MAAM,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACjD,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAClD,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,CAAC,EAAU,EAAE,EAAE;QAC7B,IAAI,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAC/C,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QACpC,CAAC;QACD,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACpB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC;IACF,MAAM,iBAAiB,GAAG;QACxB,EAAE,EAAE,CAAC,2BAA2B,EAAE,UAAU,EAAE,8BAA8B,CAAC;KAC9E,CAAC;IACF,OAAO;QACL,MAAM,EAAE;YACN,GAAG,EAAE;gBACH,QAAQ;gBACR,MAAM,EAAE,MAAM,CAAC,WAAW,CACxB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,EAAE,eAAe,CAAC,EAAE,EAAE;oBAC7D,MAAM,CACJ,OAAO,eAAe,KAAK,QAAQ,EACnC,yCAAyC,CAC1C,CAAC;oBACF,OAAO,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;gBACzC,CAAC,CAAC,CACH;aACF;SACF;QACD,QAAQ,EAAE;YACR,KAAK,CAAC,OAAO,CAAC,OAAO;gBACnB,OAAO,CAAC,OAAO,GAAG;oBAChB,wBAAwB,CAAC;wBACvB,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC;wBACvB,kBAAkB,EAAE,IAAI;qBACzB,CAAC;oBACF,OAAO,CAAC,OAAO;iBAChB,CAAC;gBACF,OAAO,OAAO,CAAC;YACjB,CAAC;YACD,SAAS,EAAE;gBACT,MAAM,EAAE,iBAAiB;gBACzB,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO;oBAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;oBACjC,IAAI,CAAC,QAAQ;wBAAE,OAAO;oBACtB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACnD,CAAC;aACF;SACF;QACD,IAAI,EAAE;YACJ,KAAK,CAAC,iBAAiB,CAAC,IAAI;gBAC1B,IAAI,IAAI,KAAK,QAAQ;oBAAE,OAAO;gBAC9B,OAAO;oBACL,OAAO,EAAE;wBACP,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC;qBACxB;oBACD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe;wBAC3B,CAAC,CAAC;4BACE,KAAK,EAAE;gCACL,eAAe,EAAE;oCACf,OAAO,EAAE;wCACP,wBAAwB,CAAC;4CACvB,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC;4CACvB,kBAAkB,EAAE,IAAI;yCACzB,CAAC;qCACH;iCACF;6BACF;yBACF;wBACH,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC;YACJ,CAAC;YACD,KAAK,CAAC,eAAe,CAAC,MAAM;gBAC1B,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;oBAC/D,MAAM,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC;oBAChD,IAAI,CAAC,aAAa;wBAAE,OAAO;oBAC3B,MAAM,aAAa,CAAC,IAAI,EAAE,CAAC;oBAC3B,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;wBACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;wBAChC,IAAI,CAAC,QAAQ;4BAAE,OAAO;wBACtB,MAAM,YAAY,GAAG,aAAa,CAAC,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;wBAC1E,OAAO,YAAY,EAAE,UAAU,CAAC;oBAClC,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CACH,CAAC;YACJ,CAAC;YACD,SAAS,EAAE;gBACT,MAAM,EAAE,iBAAiB;gBACzB,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO;oBAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;oBACjC,IAAI,CAAC,QAAQ;wBAAE,OAAO;oBACtB,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;wBACtE,0CAA0C;wBAC1C,gFAAgF;wBAChF,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;wBACtF,gFAAgF;wBAChF,0DAA0D;wBAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAC7C,CAAC;oBACD,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACnD,CAAC;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/plugins/options.ts"],"names":[],"mappings":"AA0BA,eAAO,MAAM,aAAa,2CAoGvB,CAAC"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/plugins/options.ts"],"names":[],"mappings":"AAkCA,eAAO,MAAM,aAAa,2CAmHvB,CAAC"}
@@ -2,8 +2,16 @@ import path from "node:path";
2
2
  import { createPlugin } from "../factory.js";
3
3
  import { hasNodejsCompat } from "../utils.js";
4
4
  import { WORKER_ENTRY_PREFIX } from "./virtual-modules.js";
5
- const DEFAULT_CONDITIONS = ["workerd", "worker", "module", "browser"];
6
- const DEFAULT_RESOLVE_MAIN_FIELDS = ["browser", "module", "jsnext:main", "jsnext"];
5
+ function getConditions(options) {
6
+ return hasNodejsCompat(options.compatibilityFlags)
7
+ ? ["workerd", "worker", "node", "module"]
8
+ : ["workerd", "worker", "module", "browser"];
9
+ }
10
+ function getMainFields(options) {
11
+ return hasNodejsCompat(options.compatibilityFlags)
12
+ ? ["module", "main", "jsnext:main", "jsnext"]
13
+ : ["browser", "module", "jsnext:main", "jsnext"];
14
+ }
7
15
  const DEFAULT_RESOLVE_EXTENSIONS = [
8
16
  ".mjs",
9
17
  ".js",
@@ -20,12 +28,12 @@ const TARGET = "es2024";
20
28
  export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
21
29
  rolldown: {
22
30
  options(options) {
23
- options.input = wrapEntryInput(options.input ?? {});
31
+ options.input = wrapEntryInput(pluginOptions.main ?? options.input ?? {});
24
32
  options.preserveEntrySignatures ??= "strict";
25
33
  options.platform ??= "neutral";
26
34
  options.resolve ??= {};
27
- options.resolve.conditionNames ??= [...DEFAULT_CONDITIONS, "production"];
28
- options.resolve.mainFields ??= DEFAULT_RESOLVE_MAIN_FIELDS;
35
+ options.resolve.conditionNames ??= [...getConditions(pluginOptions), "production"];
36
+ options.resolve.mainFields ??= getMainFields(pluginOptions);
29
37
  options.resolve.extensions ??= DEFAULT_RESOLVE_EXTENSIONS;
30
38
  options.transform ??= {};
31
39
  options.transform.target ??= TARGET;
@@ -35,18 +43,31 @@ export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
35
43
  },
36
44
  },
37
45
  vite: {
38
- config(userConfig) {
46
+ async config(userConfig) {
47
+ const vite = await import("vite");
39
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;
40
52
  const rollupOptions = {
41
- input: wrapEntryInput(userConfig.environments?.ssr?.build?.rollupOptions?.input ?? {}),
53
+ input: wrapEntryInput(input ?? {}),
42
54
  preserveEntrySignatures: "strict",
43
55
  };
44
56
  const define = getDefine(pluginOptions, process.env.NODE_ENV || userConfig.mode || "production");
57
+ const conditions = getConditions(pluginOptions);
58
+ const mainFields = getMainFields(pluginOptions);
45
59
  return {
60
+ appType: "custom",
46
61
  ssr: {
47
62
  noExternal: true,
48
63
  resolve: {
49
- conditions: [...DEFAULT_CONDITIONS, "development|production"],
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);
50
71
  },
51
72
  },
52
73
  environments: {
@@ -58,7 +79,7 @@ export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
58
79
  ssr: {
59
80
  resolve: {
60
81
  noExternal: true,
61
- conditions: [...DEFAULT_CONDITIONS, "development|production"],
82
+ conditions: [...conditions, "development|production"],
62
83
  },
63
84
  build: {
64
85
  ssr: true,
@@ -72,7 +93,7 @@ export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
72
93
  ...rollupOptions,
73
94
  platform: "neutral",
74
95
  resolve: {
75
- mainFields: DEFAULT_RESOLVE_MAIN_FIELDS,
96
+ mainFields,
76
97
  extensions: DEFAULT_RESOLVE_EXTENSIONS,
77
98
  },
78
99
  },
@@ -82,13 +103,14 @@ export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
82
103
  optimizeDeps: {
83
104
  noDiscovery: false,
84
105
  ignoreOutdatedRequests: true,
106
+ entries: pluginOptions.main ? vite.normalizePath(pluginOptions.main) : undefined,
85
107
  ...(isRolldown
86
108
  ? {
87
109
  rolldownOptions: {
88
110
  platform: "neutral",
89
111
  resolve: {
90
- conditionNames: [...DEFAULT_CONDITIONS, "development|production"],
91
- mainFields: DEFAULT_RESOLVE_MAIN_FIELDS,
112
+ conditionNames: [...conditions, "development|production"],
113
+ mainFields,
92
114
  extensions: DEFAULT_RESOLVE_EXTENSIONS,
93
115
  },
94
116
  transform: {
@@ -100,9 +122,9 @@ export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
100
122
  : {
101
123
  esbuildOptions: {
102
124
  platform: "neutral",
103
- conditions: [...DEFAULT_CONDITIONS, "development|production"],
125
+ conditions: [...conditions, "development|production"],
104
126
  resolveExtensions: DEFAULT_RESOLVE_EXTENSIONS,
105
- mainFields: DEFAULT_RESOLVE_MAIN_FIELDS,
127
+ mainFields,
106
128
  target: TARGET,
107
129
  define,
108
130
  },
@@ -118,12 +140,12 @@ export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
118
140
  function wrapEntryInput(input) {
119
141
  const virtualEntryId = (id) => `${WORKER_ENTRY_PREFIX}${id}`;
120
142
  if (typeof input === "string") {
121
- return virtualEntryId(input);
143
+ return { [path.parse(input).name || "index"]: virtualEntryId(input) };
122
144
  }
123
145
  if (Array.isArray(input)) {
124
- return input.map(virtualEntryId);
146
+ return Object.fromEntries(input.map((p) => [path.parse(p).name, virtualEntryId(p)]));
125
147
  }
126
- return Object.fromEntries(Object.entries(input).map(([key, value]) => [virtualEntryId(key), value]));
148
+ return Object.fromEntries(Object.entries(input).map(([key, value]) => [key, virtualEntryId(value)]));
127
149
  }
128
150
  function getDefine(options, nodeEnv) {
129
151
  return {
@@ -142,6 +164,11 @@ function getDefine(options, nodeEnv) {
142
164
  "navigator.userAgent": '"Cloudflare-Workers"',
143
165
  }
144
166
  : {}),
167
+ ...(nodeEnv === "production"
168
+ ? {
169
+ "import.meta.hot": "false",
170
+ }
171
+ : {}),
145
172
  };
146
173
  }
147
174
  function getOutputDirectory(userConfig, environmentName) {
@@ -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":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,SAAS,aAAa,CAAC,OAAgC;IACrD,OAAO,eAAe,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAChD,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;QACzC,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,aAAa,CAAC,OAAgC;IACrD,OAAO,eAAe,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAChD,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC;QAC7C,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,0BAA0B,GAAG;IACjC,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;CACP,CAAC;AAEF,MAAM,MAAM,GAAG,QAAQ,CAAC;AAExB,MAAM,CAAC,MAAM,aAAa,GAAG,YAAY,CAAC,SAAS,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IACvE,QAAQ,EAAE;QACR,OAAO,CAAC,OAAO;YACb,OAAO,CAAC,KAAK,GAAG,cAAc,CAAC,aAAa,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YAC1E,OAAO,CAAC,uBAAuB,KAAK,QAAQ,CAAC;YAC7C,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC;YAC/B,OAAO,CAAC,OAAO,KAAK,EAAE,CAAC;YACvB,OAAO,CAAC,OAAO,CAAC,cAAc,KAAK,CAAC,GAAG,aAAa,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,CAAC;YACnF,OAAO,CAAC,OAAO,CAAC,UAAU,KAAK,aAAa,CAAC,aAAa,CAAC,CAAC;YAC5D,OAAO,CAAC,OAAO,CAAC,UAAU,KAAK,0BAA0B,CAAC;YAC1D,OAAO,CAAC,SAAS,KAAK,EAAE,CAAC;YACzB,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,MAAM,CAAC;YACpC,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,EAAE,CAAC;YAChC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC;YAChF,OAAO,OAAO,CAAC;QACjB,CAAC;KACF;IACD,IAAI,EAAE;QACJ,KAAK,CAAC,MAAM,CAAC,UAAU;YACrB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;YAClC,MAAM,UAAU,GAAG,iBAAiB,IAAI,IAAI,CAAC,IAAI,CAAC;YAClD,MAAM,KAAK,GACT,aAAa,CAAC,IAAI;gBAClB,UAAU,CAAC,YAAY,EAAE,GAAG,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK;gBAC3D,UAAU,CAAC,YAAY,EAAE,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC;YAC5D,MAAM,aAAa,GAA8B;gBAC/C,KAAK,EAAE,cAAc,CAAC,KAAK,IAAI,EAAE,CAAC;gBAClC,uBAAuB,EAAE,QAAQ;aAClC,CAAC;YACF,MAAM,MAAM,GAAG,SAAS,CACtB,aAAa,EACb,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,UAAU,CAAC,IAAI,IAAI,YAAY,CACxD,CAAC;YACF,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;YAChD,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;YAChD,OAAO;gBACL,OAAO,EAAE,QAAQ;gBACjB,GAAG,EAAE;oBACH,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE;wBACP,UAAU,EAAE,CAAC,GAAG,UAAU,EAAE,wBAAwB,CAAC;qBACtD;iBACF;gBACD,OAAO,EAAE;oBACP,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;wBACtB,MAAM,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;wBACtC,MAAM,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;oBAC3C,CAAC;iBACF;gBACD,YAAY,EAAE;oBACZ,MAAM,EAAE;wBACN,KAAK,EAAE;4BACL,MAAM,EAAE,kBAAkB,CAAC,UAAU,EAAE,QAAQ,CAAC;yBACjD;qBACF;oBACD,GAAG,EAAE;wBACH,OAAO,EAAE;4BACP,UAAU,EAAE,IAAI;4BAChB,UAAU,EAAE,CAAC,GAAG,UAAU,EAAE,wBAAwB,CAAC;yBACtD;wBACD,KAAK,EAAE;4BACL,GAAG,EAAE,IAAI;4BACT,MAAM,EAAE,MAAM;4BACd,UAAU,EAAE,IAAI;4BAChB,aAAa,EAAE,KAAK;4BACpB,MAAM,EAAE,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC;4BAC7C,GAAG,CAAC,UAAU;gCACZ,CAAC,CAAC;oCACE,eAAe,EAAE;wCACf,GAAG,aAAa;wCAChB,QAAQ,EAAE,SAAS;wCACnB,OAAO,EAAE;4CACP,UAAU;4CACV,UAAU,EAAE,0BAA0B;yCACvC;qCACF;iCACF;gCACH,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC;yBACvB;wBACD,YAAY,EAAE;4BACZ,WAAW,EAAE,KAAK;4BAClB,sBAAsB,EAAE,IAAI;4BAC5B,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;4BAChF,GAAG,CAAC,UAAU;gCACZ,CAAC,CAAC;oCACE,eAAe,EAAE;wCACf,QAAQ,EAAE,SAAS;wCACnB,OAAO,EAAE;4CACP,cAAc,EAAE,CAAC,GAAG,UAAU,EAAE,wBAAwB,CAAC;4CACzD,UAAU;4CACV,UAAU,EAAE,0BAA0B;yCACvC;wCACD,SAAS,EAAE;4CACT,MAAM,EAAE,MAAM;4CACd,MAAM;yCACP;qCACF;iCACF;gCACH,CAAC,CAAC;oCACE,cAAc,EAAE;wCACd,QAAQ,EAAE,SAAS;wCACnB,UAAU,EAAE,CAAC,GAAG,UAAU,EAAE,wBAAwB,CAAC;wCACrD,iBAAiB,EAAE,0BAA0B;wCAC7C,UAAU;wCACV,MAAM,EAAE,MAAM;wCACd,MAAM;qCACP;iCACF,CAAC;yBACP;wBACD,cAAc,EAAE,IAAI;qBACrB;iBACF;aACF,CAAC;QACJ,CAAC;KACF;CACF,CAAC,CAAC,CAAC;AAEJ,SAAS,cAAc,CAAC,KAAsD;IAC5E,MAAM,cAAc,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,GAAG,mBAAmB,GAAG,EAAE,EAAW,CAAC;IAC9E,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;IACxE,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvF,CAAC;IACD,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAC1E,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,OAAgC,EAAE,OAAe;IAClE,OAAO;QACL,sBAAsB,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;QAC/C,6BAA6B,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;QACtD,iCAAiC,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;QAC1D,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,kBAAkB,CAAC;YAC7C,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE,aAAa,EAAE,IAAI;gBACnB,oBAAoB,EAAE,IAAI;gBAC1B,wBAAwB,EAAE,IAAI;aAC/B,CAAC;QACN,GAAG,CAAC,OAAO,CAAC,iBAAiB,IAAI,OAAO,CAAC,iBAAiB,IAAI,YAAY;YACxE,CAAC,CAAC;gBACE,qBAAqB,EAAE,sBAAsB;aAC9C;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,KAAK,YAAY;YAC1B,CAAC,CAAC;gBACE,iBAAiB,EAAE,OAAO;aAC3B;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,UAA2B,EAAE,eAAuB;IAC9E,MAAM,mBAAmB,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,IAAI,MAAM,CAAC;IAE/D,OAAO,CACL,UAAU,CAAC,YAAY,EAAE,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM;QACzD,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAChD,CAAC;AACJ,CAAC"}
@@ -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;AAMxE,eAAO,MAAM,oBAAoB,2CAyH/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,2CA4H/B,CAAC"}
@@ -3,7 +3,6 @@ import { createPlugin } from "../factory.js";
3
3
  const VIRTUAL_MODULE_REGEXP = /^\0distilled:.*$/;
4
4
  export const WORKER_ENTRY_PREFIX = "\0distilled:worker-entry:";
5
5
  const USER_ENTRY_PREFIX = "\0distilled:user-entry:";
6
- const PEAR_ENTRY_PREFIX = "\0distilled:pear-entry:";
7
6
  const INJECT_PREFIX = "\0distilled:inject:";
8
7
  const EXPORT_TYPES_ID = "\0distilled:export-types";
9
8
  export const virtualModulesPlugin = createPlugin("virtual-modules", (options) => {
@@ -17,6 +16,9 @@ export const virtualModulesPlugin = createPlugin("virtual-modules", (options) =>
17
16
  ];
18
17
  };
19
18
  return {
19
+ vite: {
20
+ enforce: "pre",
21
+ },
20
22
  shared: {
21
23
  buildStart({ plugins }) {
22
24
  unenvApi = plugins.find((plugin) => "name" in plugin && plugin.name === "distilled-cloudflare:nodejs-unenv")?.api;
@@ -25,7 +27,6 @@ export const virtualModulesPlugin = createPlugin("virtual-modules", (options) =>
25
27
  filter: { id: VIRTUAL_MODULE_REGEXP },
26
28
  handler(id) {
27
29
  if (id.startsWith(WORKER_ENTRY_PREFIX) ||
28
- id.startsWith(PEAR_ENTRY_PREFIX) ||
29
30
  id.startsWith(INJECT_PREFIX) ||
30
31
  id === EXPORT_TYPES_ID) {
31
32
  return { id };
@@ -45,7 +46,6 @@ export const virtualModulesPlugin = createPlugin("virtual-modules", (options) =>
45
46
  const userEntryId = id.replace(WORKER_ENTRY_PREFIX, USER_ENTRY_PREFIX);
46
47
  return [
47
48
  ...inject(),
48
- `import { getExportTypes } from "${EXPORT_TYPES_ID}";`,
49
49
  ...(options.exports
50
50
  ? [`export { ${options.exports.join(", ")} } from "${userEntryId}";`]
51
51
  : [
@@ -54,6 +54,7 @@ export const virtualModulesPlugin = createPlugin("virtual-modules", (options) =>
54
54
  `export default userEntry.default ?? {};`,
55
55
  ]),
56
56
  "if (import.meta.hot) {",
57
+ ` const { getExportTypes } = await import("${EXPORT_TYPES_ID}");`,
57
58
  " import.meta.hot.accept((module) => {",
58
59
  " const exportTypes = getExportTypes(module);",
59
60
  ' import.meta.hot.send("distilled-cloudflare:worker-export-types", exportTypes);',
@@ -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":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG7C,4CAA4C;AAC5C,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAEjD,MAAM,CAAC,MAAM,mBAAmB,GAAG,2BAAoC,CAAC;AACxE,MAAM,iBAAiB,GAAG,yBAAkC,CAAC;AAC7D,MAAM,aAAa,GAAG,qBAA8B,CAAC;AACrD,MAAM,eAAe,GAAG,0BAAmC,CAAC;AAE5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC,iBAAiB,EAAE,CAAC,OAAO,EAAE,EAAE;IAC9E,IAAI,QAA8B,CAAC;IACnC,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,CAAC;QACzB,OAAO;YACL,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,WAAW,MAAM,IAAI,CAAC;YAC3D,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CACjC,CAAC,YAAY,EAAE,EAAE,CAAC,WAAW,aAAa,GAAG,YAAY,IAAI,CAC9D;SACF,CAAC;IACJ,CAAC,CAAC;IACF,OAAO;QACL,IAAI,EAAE;YACJ,OAAO,EAAE,KAAK;SACf;QACD,MAAM,EAAE;YACN,UAAU,CAAC,EAAE,OAAO,EAAE;gBACpB,QAAQ,GAAG,OAAO,CAAC,IAAI,CACrB,CAAC,MAAM,EAA8B,EAAE,CACrC,MAAM,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,mCAAmC,CAC1E,EAAE,GAAG,CAAC;YACT,CAAC;YACD,SAAS,EAAE;gBACT,MAAM,EAAE,EAAE,EAAE,EAAE,qBAAqB,EAAE;gBACrC,OAAO,CAAC,EAAE;oBACR,IACE,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC;wBAClC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;wBAC5B,EAAE,KAAK,eAAe,EACtB,CAAC;wBACD,OAAO,EAAE,EAAE,EAAE,CAAC;oBAChB,CAAC;oBACD,IAAI,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;wBACrC,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE;4BACjE,OAAO,EAAE,IAAI;4BACb,IAAI,EAAE,kBAAkB;yBACzB,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;aACF;YACD,IAAI,EAAE;gBACJ,MAAM,EAAE,EAAE,EAAE,EAAE,qBAAqB,EAAE;gBACrC,OAAO,CAAC,EAAE;oBACR,IAAI,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;wBACvC,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAAC,mBAAmB,EAAE,iBAAiB,CAAC,CAAC;wBAEvE,OAAO;4BACL,GAAG,MAAM,EAAE;4BACX,GAAG,CAAC,OAAO,CAAC,OAAO;gCACjB,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,WAAW,IAAI,CAAC;gCACrE,CAAC,CAAC;oCACE,+BAA+B,WAAW,IAAI;oCAC9C,kBAAkB,WAAW,IAAI;oCACjC,yCAAyC;iCAC1C,CAAC;4BACN,wBAAwB;4BACxB,8CAA8C,eAAe,KAAK;4BAClE,wCAAwC;4BACxC,iDAAiD;4BACjD,oFAAoF;4BACpF,OAAO;4BACP,GAAG;yBACJ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACf,CAAC;oBACD,IAAI,EAAE,KAAK,eAAe,EAAE,CAAC;wBAC3B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0CjB,CAAC;oBACO,CAAC;oBACD,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;wBACjC,MAAM,YAAY,GAAG,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;wBACpD,MAAM,eAAe,GAAG,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;wBACvD,IAAI,CAAC,eAAe,EAAE,CAAC;4BACrB,MAAM,IAAI,KAAK,CAAC,kCAAkC,YAAY,iBAAiB,CAAC,CAAC;wBACnF,CAAC;wBACD,OAAO;4BACL,UAAU,YAAY,UAAU,eAAe,IAAI;4BACnD,cAAc,YAAY,MAAM,YAAY,GAAG;yBAChD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACf,CAAC;gBACH,CAAC;aACF;SACF;KACF,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"wasm-init.d.ts","sourceRoot":"","sources":["../../src/plugins/wasm-init.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,cAAc,2CAexB,CAAC"}
1
+ {"version":3,"file":"wasm-init.d.ts","sourceRoot":"","sources":["../../src/plugins/wasm-init.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,cAAc,2CAkBxB,CAAC"}
@@ -2,6 +2,9 @@ import { createPlugin } from "../factory.js";
2
2
  import { sanitizePath } from "../utils.js";
3
3
  const WASM_INIT_QUERY = /\.wasm\?init$/;
4
4
  export const wasmInitPlugin = createPlugin("wasm-init", () => ({
5
+ vite: {
6
+ enforce: "pre",
7
+ },
5
8
  shared: {
6
9
  load: {
7
10
  filter: { id: WASM_INIT_QUERY },
@@ -1 +1 @@
1
- {"version":3,"file":"wasm-init.js","sourceRoot":"","sources":["../../src/plugins/wasm-init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,eAAe,GAAG,eAAe,CAAC;AAExC,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7D,MAAM,EAAE;QACN,IAAI,EAAE;YACJ,MAAM,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE;YAC/B,OAAO,CAAC,EAAE;gBACR,OAAO;oBACL,2BAA2B,YAAY,CAAC,EAAE,CAAC,IAAI;oBAC/C,qCAAqC;oBACrC,sEAAsE;oBACtE,2DAA2D;oBAC3D,IAAI;iBACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACf,CAAC;SACF;KACF;CACF,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"wasm-init.js","sourceRoot":"","sources":["../../src/plugins/wasm-init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,eAAe,GAAG,eAAe,CAAC;AAExC,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7D,IAAI,EAAE;QACJ,OAAO,EAAE,KAAK;KACf;IACD,MAAM,EAAE;QACN,IAAI,EAAE;YACJ,MAAM,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE;YAC/B,OAAO,CAAC,EAAE;gBACR,OAAO;oBACL,2BAA2B,YAAY,CAAC,EAAE,CAAC,IAAI;oBAC/C,qCAAqC;oBACrC,sEAAsE;oBACtE,2DAA2D;oBAC3D,IAAI;iBACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACf,CAAC;SACF;KACF;CACF,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const wasmInitPlugin: import("../factory.js").PluginOutput<any>;
2
+ //# sourceMappingURL=wasm-init.plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasm-init.plugin.d.ts","sourceRoot":"","sources":["../../src/plugins/wasm-init.plugin.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,cAAc,2CAexB,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { createPlugin } from "../factory.js";
2
+ import { sanitizePath } from "../utils.js";
3
+ const WASM_INIT_QUERY = /\.wasm\?init$/;
4
+ export const wasmInitPlugin = createPlugin("wasm-init", () => ({
5
+ shared: {
6
+ load: {
7
+ filter: { id: WASM_INIT_QUERY },
8
+ handler(id) {
9
+ return [
10
+ `import wasmModule from "${sanitizePath(id)}";`,
11
+ `export default async (imports) => {`,
12
+ ` const result = await WebAssembly.instantiate(wasmModule, imports);`,
13
+ ` return "instance" in result ? result.instance : result;`,
14
+ `};`,
15
+ ].join("\n");
16
+ },
17
+ },
18
+ },
19
+ }));
20
+ //# sourceMappingURL=wasm-init.plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasm-init.plugin.js","sourceRoot":"","sources":["../../src/plugins/wasm-init.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,eAAe,GAAG,eAAe,CAAC;AAExC,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7D,MAAM,EAAE;QACN,IAAI,EAAE;YACJ,MAAM,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE;YAC/B,OAAO,CAAC,EAAE;gBACR,OAAO;oBACL,2BAA2B,YAAY,CAAC,EAAE,CAAC,IAAI;oBAC/C,qCAAqC;oBACrC,sEAAsE;oBACtE,2DAA2D;oBAC3D,IAAI;iBACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACf,CAAC;SACF;KACF;CACF,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@distilled.cloud/cloudflare-rolldown-plugin",
3
- "version": "0.4.0",
3
+ "version": "0.4.1-beta.2",
4
4
  "description": "Rolldown plugin for Cloudflare Workers.",
5
5
  "keywords": [
6
6
  "cloudflare",
package/src/options.ts CHANGED
@@ -1,4 +1,10 @@
1
1
  export interface CloudflarePluginOptions {
2
+ /**
3
+ * The main entry point to use.
4
+ * Defaults to the one from your Rolldown configuration.
5
+ * @default undefined
6
+ */
7
+ main?: string;
2
8
  /**
3
9
  * The compatibility date to use. This is optional, but should be defined to avoid unexpected behavior.
4
10
  * @default undefined
@@ -10,7 +10,7 @@ import type {
10
10
  import { createPlugin } from "../factory.js";
11
11
  import { sanitizePath } from "../utils.js";
12
12
 
13
- const MODULE_RULES = [
13
+ export const MODULE_RULES = [
14
14
  { type: "CompiledWasm", pattern: /\.wasm(\?module)?$/ },
15
15
  { type: "Data", pattern: /\.bin$/ },
16
16
  { type: "Text", pattern: /\.(txt|html|sql)$/ },
@@ -26,6 +26,7 @@ export const cloudflareExternalsPlugin = createPlugin("cloudflare-externals", ()
26
26
  },
27
27
  },
28
28
  vite: {
29
+ enforce: "pre",
29
30
  configEnvironment(name) {
30
31
  if (name === "client") {
31
32
  // Some frameworks allow users to mix client and server code in the same file and then extract the server code.
@@ -22,6 +22,7 @@ export const nodejsAlsPlugin = createPlugin("nodejs-als", (options) => {
22
22
  },
23
23
  },
24
24
  vite: {
25
+ enforce: "pre",
25
26
  configEnvironment(name) {
26
27
  if (name === "client") return;
27
28
  return {
@@ -133,6 +134,14 @@ export const nodejsUnenvPlugin = createPlugin<"nodejs-unenv", UnenvApi>(
133
134
  },
134
135
  }
135
136
  : {}),
137
+ optimizeDeps: {
138
+ exclude: [
139
+ ...nonPrefixedNodeModules,
140
+ ...nonPrefixedNodeModules.map((module) => `node:${module}`),
141
+ // New Node.js built-in modules are only published with the `node:` prefix.
142
+ ...["node:sea", "node:sqlite", "node:test", "node:test/reporters"],
143
+ ],
144
+ },
136
145
  };
137
146
  },
138
147
  async configureServer(server) {
@@ -5,9 +5,17 @@ import type { CloudflarePluginOptions } from "../options.js";
5
5
  import { hasNodejsCompat } from "../utils.js";
6
6
  import { WORKER_ENTRY_PREFIX } from "./virtual-modules.js";
7
7
 
8
- const DEFAULT_CONDITIONS = ["workerd", "worker", "module", "browser"];
8
+ function getConditions(options: CloudflarePluginOptions): Array<string> {
9
+ return hasNodejsCompat(options.compatibilityFlags)
10
+ ? ["workerd", "worker", "node", "module"]
11
+ : ["workerd", "worker", "module", "browser"];
12
+ }
9
13
 
10
- const DEFAULT_RESOLVE_MAIN_FIELDS = ["browser", "module", "jsnext:main", "jsnext"];
14
+ function getMainFields(options: CloudflarePluginOptions): Array<string> {
15
+ return hasNodejsCompat(options.compatibilityFlags)
16
+ ? ["module", "main", "jsnext:main", "jsnext"]
17
+ : ["browser", "module", "jsnext:main", "jsnext"];
18
+ }
11
19
 
12
20
  const DEFAULT_RESOLVE_EXTENSIONS = [
13
21
  ".mjs",
@@ -27,12 +35,12 @@ const TARGET = "es2024";
27
35
  export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
28
36
  rolldown: {
29
37
  options(options) {
30
- options.input = wrapEntryInput(options.input ?? {});
38
+ options.input = wrapEntryInput(pluginOptions.main ?? options.input ?? {});
31
39
  options.preserveEntrySignatures ??= "strict";
32
40
  options.platform ??= "neutral";
33
41
  options.resolve ??= {};
34
- options.resolve.conditionNames ??= [...DEFAULT_CONDITIONS, "production"];
35
- options.resolve.mainFields ??= DEFAULT_RESOLVE_MAIN_FIELDS;
42
+ options.resolve.conditionNames ??= [...getConditions(pluginOptions), "production"];
43
+ options.resolve.mainFields ??= getMainFields(pluginOptions);
36
44
  options.resolve.extensions ??= DEFAULT_RESOLVE_EXTENSIONS;
37
45
  options.transform ??= {};
38
46
  options.transform.target ??= TARGET;
@@ -42,21 +50,35 @@ export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
42
50
  },
43
51
  },
44
52
  vite: {
45
- config(userConfig) {
53
+ async config(userConfig) {
54
+ const vite = await import("vite");
46
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;
47
60
  const rollupOptions: vite.Rollup.RollupOptions = {
48
- input: wrapEntryInput(userConfig.environments?.ssr?.build?.rollupOptions?.input ?? {}),
61
+ input: wrapEntryInput(input ?? {}),
49
62
  preserveEntrySignatures: "strict",
50
63
  };
51
64
  const define = getDefine(
52
65
  pluginOptions,
53
66
  process.env.NODE_ENV || userConfig.mode || "production",
54
67
  );
68
+ const conditions = getConditions(pluginOptions);
69
+ const mainFields = getMainFields(pluginOptions);
55
70
  return {
71
+ appType: "custom",
56
72
  ssr: {
57
73
  noExternal: true,
58
74
  resolve: {
59
- conditions: [...DEFAULT_CONDITIONS, "development|production"],
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);
60
82
  },
61
83
  },
62
84
  environments: {
@@ -68,7 +90,7 @@ export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
68
90
  ssr: {
69
91
  resolve: {
70
92
  noExternal: true,
71
- conditions: [...DEFAULT_CONDITIONS, "development|production"],
93
+ conditions: [...conditions, "development|production"],
72
94
  },
73
95
  build: {
74
96
  ssr: true,
@@ -82,7 +104,7 @@ export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
82
104
  ...rollupOptions,
83
105
  platform: "neutral",
84
106
  resolve: {
85
- mainFields: DEFAULT_RESOLVE_MAIN_FIELDS,
107
+ mainFields,
86
108
  extensions: DEFAULT_RESOLVE_EXTENSIONS,
87
109
  },
88
110
  },
@@ -92,13 +114,14 @@ export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
92
114
  optimizeDeps: {
93
115
  noDiscovery: false,
94
116
  ignoreOutdatedRequests: true,
117
+ entries: pluginOptions.main ? vite.normalizePath(pluginOptions.main) : undefined,
95
118
  ...(isRolldown
96
119
  ? {
97
120
  rolldownOptions: {
98
121
  platform: "neutral",
99
122
  resolve: {
100
- conditionNames: [...DEFAULT_CONDITIONS, "development|production"],
101
- mainFields: DEFAULT_RESOLVE_MAIN_FIELDS,
123
+ conditionNames: [...conditions, "development|production"],
124
+ mainFields,
102
125
  extensions: DEFAULT_RESOLVE_EXTENSIONS,
103
126
  },
104
127
  transform: {
@@ -110,9 +133,9 @@ export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
110
133
  : {
111
134
  esbuildOptions: {
112
135
  platform: "neutral",
113
- conditions: [...DEFAULT_CONDITIONS, "development|production"],
136
+ conditions: [...conditions, "development|production"],
114
137
  resolveExtensions: DEFAULT_RESOLVE_EXTENSIONS,
115
- mainFields: DEFAULT_RESOLVE_MAIN_FIELDS,
138
+ mainFields,
116
139
  target: TARGET,
117
140
  define,
118
141
  },
@@ -128,15 +151,14 @@ export const optionsPlugin = createPlugin("options", (pluginOptions) => ({
128
151
 
129
152
  function wrapEntryInput(input: string | Array<string> | Record<string, string>) {
130
153
  const virtualEntryId = (id: string) => `${WORKER_ENTRY_PREFIX}${id}` as const;
131
-
132
154
  if (typeof input === "string") {
133
- return virtualEntryId(input);
155
+ return { [path.parse(input).name || "index"]: virtualEntryId(input) };
134
156
  }
135
157
  if (Array.isArray(input)) {
136
- return input.map(virtualEntryId);
158
+ return Object.fromEntries(input.map((p) => [path.parse(p).name, virtualEntryId(p)]));
137
159
  }
138
160
  return Object.fromEntries(
139
- Object.entries(input).map(([key, value]) => [virtualEntryId(key), value]),
161
+ Object.entries(input).map(([key, value]) => [key, virtualEntryId(value)]),
140
162
  );
141
163
  }
142
164
 
@@ -157,6 +179,11 @@ function getDefine(options: CloudflarePluginOptions, nodeEnv: string): Record<st
157
179
  "navigator.userAgent": '"Cloudflare-Workers"',
158
180
  }
159
181
  : {}),
182
+ ...(nodeEnv === "production"
183
+ ? {
184
+ "import.meta.hot": "false",
185
+ }
186
+ : {}),
160
187
  };
161
188
  }
162
189
 
@@ -7,7 +7,6 @@ const VIRTUAL_MODULE_REGEXP = /^\0distilled:.*$/;
7
7
 
8
8
  export const WORKER_ENTRY_PREFIX = "\0distilled:worker-entry:" as const;
9
9
  const USER_ENTRY_PREFIX = "\0distilled:user-entry:" as const;
10
- const PEAR_ENTRY_PREFIX = "\0distilled:pear-entry:" as const;
11
10
  const INJECT_PREFIX = "\0distilled:inject:" as const;
12
11
  const EXPORT_TYPES_ID = "\0distilled:export-types" as const;
13
12
 
@@ -23,6 +22,9 @@ export const virtualModulesPlugin = createPlugin("virtual-modules", (options) =>
23
22
  ];
24
23
  };
25
24
  return {
25
+ vite: {
26
+ enforce: "pre",
27
+ },
26
28
  shared: {
27
29
  buildStart({ plugins }) {
28
30
  unenvApi = plugins.find(
@@ -35,7 +37,6 @@ export const virtualModulesPlugin = createPlugin("virtual-modules", (options) =>
35
37
  handler(id) {
36
38
  if (
37
39
  id.startsWith(WORKER_ENTRY_PREFIX) ||
38
- id.startsWith(PEAR_ENTRY_PREFIX) ||
39
40
  id.startsWith(INJECT_PREFIX) ||
40
41
  id === EXPORT_TYPES_ID
41
42
  ) {
@@ -54,9 +55,9 @@ export const virtualModulesPlugin = createPlugin("virtual-modules", (options) =>
54
55
  handler(id) {
55
56
  if (id.startsWith(WORKER_ENTRY_PREFIX)) {
56
57
  const userEntryId = id.replace(WORKER_ENTRY_PREFIX, USER_ENTRY_PREFIX);
58
+
57
59
  return [
58
60
  ...inject(),
59
- `import { getExportTypes } from "${EXPORT_TYPES_ID}";`,
60
61
  ...(options.exports
61
62
  ? [`export { ${options.exports.join(", ")} } from "${userEntryId}";`]
62
63
  : [
@@ -65,6 +66,7 @@ export const virtualModulesPlugin = createPlugin("virtual-modules", (options) =>
65
66
  `export default userEntry.default ?? {};`,
66
67
  ]),
67
68
  "if (import.meta.hot) {",
69
+ ` const { getExportTypes } = await import("${EXPORT_TYPES_ID}");`,
68
70
  " import.meta.hot.accept((module) => {",
69
71
  " const exportTypes = getExportTypes(module);",
70
72
  ' import.meta.hot.send("distilled-cloudflare:worker-export-types", exportTypes);',
@@ -4,6 +4,9 @@ import { sanitizePath } from "../utils.js";
4
4
  const WASM_INIT_QUERY = /\.wasm\?init$/;
5
5
 
6
6
  export const wasmInitPlugin = createPlugin("wasm-init", () => ({
7
+ vite: {
8
+ enforce: "pre",
9
+ },
7
10
  shared: {
8
11
  load: {
9
12
  filter: { id: WASM_INIT_QUERY },