one 1.25.12 → 1.25.13

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 (210) hide show
  1. package/dist/cjs/cli/build.cjs +8 -161
  2. package/dist/cjs/cli/build.native.js +8 -204
  3. package/dist/cjs/cli/build.native.js.map +1 -1
  4. package/dist/cjs/createDevHandleRequest.cjs +151 -0
  5. package/dist/cjs/createDevHandleRequest.native.js +194 -0
  6. package/dist/cjs/createDevHandleRequest.native.js.map +1 -0
  7. package/dist/cjs/createHandleRequest.cjs +1 -123
  8. package/dist/cjs/createHandleRequest.native.js +1 -163
  9. package/dist/cjs/createHandleRequest.native.js.map +1 -1
  10. package/dist/cjs/createHandleRequest.test.cjs +25 -25
  11. package/dist/cjs/createHandleRequest.test.native.js +25 -25
  12. package/dist/cjs/createHandleRequest.test.native.js.map +1 -1
  13. package/dist/cjs/layouts/Drawer.cjs +0 -2
  14. package/dist/cjs/layouts/Drawer.native.js.map +1 -1
  15. package/dist/cjs/layouts/Tabs.cjs +0 -2
  16. package/dist/cjs/layouts/Tabs.native.js.map +1 -1
  17. package/dist/cjs/router/web/WebStackView.cjs +0 -2
  18. package/dist/cjs/router/web/WebStackView.native.js +0 -2
  19. package/dist/cjs/router/web/WebStackView.native.js.map +1 -1
  20. package/dist/cjs/serve-worker.cjs +3 -2
  21. package/dist/cjs/serve-worker.native.js +3 -2
  22. package/dist/cjs/serve-worker.native.js.map +1 -1
  23. package/dist/cjs/server/workerHandler.cjs +12 -7
  24. package/dist/cjs/server/workerHandler.native.js +13 -8
  25. package/dist/cjs/server/workerHandler.native.js.map +1 -1
  26. package/dist/cjs/server/workerHandler.test.cjs +25 -0
  27. package/dist/cjs/server/workerHandler.test.native.js +25 -0
  28. package/dist/cjs/server/workerHandler.test.native.js.map +1 -1
  29. package/dist/cjs/vite/cloudflareWranglerConfig.cjs +247 -0
  30. package/dist/cjs/vite/cloudflareWranglerConfig.native.js +392 -0
  31. package/dist/cjs/vite/cloudflareWranglerConfig.native.js.map +1 -0
  32. package/dist/cjs/vite/cloudflareWranglerConfig.test.cjs +116 -0
  33. package/dist/cjs/vite/cloudflareWranglerConfig.test.native.js +120 -0
  34. package/dist/cjs/vite/cloudflareWranglerConfig.test.native.js.map +1 -0
  35. package/dist/cjs/vite/one.cjs +4 -2
  36. package/dist/cjs/vite/one.native.js +8 -6
  37. package/dist/cjs/vite/one.native.js.map +1 -1
  38. package/dist/cjs/vite/plugins/SSRCSSPlugin.cjs +10 -1
  39. package/dist/cjs/vite/plugins/SSRCSSPlugin.native.js +52 -3
  40. package/dist/cjs/vite/plugins/SSRCSSPlugin.native.js.map +1 -1
  41. package/dist/cjs/vite/plugins/environmentGuardPlugin.cjs +1 -1
  42. package/dist/cjs/vite/plugins/environmentGuardPlugin.native.js +1 -1
  43. package/dist/cjs/vite/plugins/environmentGuardPlugin.native.js.map +1 -1
  44. package/dist/cjs/vite/plugins/environmentGuardPlugin.test.cjs +4 -0
  45. package/dist/cjs/vite/plugins/environmentGuardPlugin.test.native.js +4 -0
  46. package/dist/cjs/vite/plugins/environmentGuardPlugin.test.native.js.map +1 -1
  47. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.cjs +14 -5
  48. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js +15 -5
  49. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
  50. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.test.cjs +47 -0
  51. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.test.native.js +47 -0
  52. package/dist/cjs/vite/plugins/fileSystemRouterPlugin.test.native.js.map +1 -1
  53. package/dist/cjs/vite/plugins/virtualEntryPlugin.cjs +2 -1
  54. package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js +2 -1
  55. package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
  56. package/dist/cjs/vite/plugins/virtualEntryPlugin.test.cjs +12 -0
  57. package/dist/cjs/vite/plugins/virtualEntryPlugin.test.native.js +12 -0
  58. package/dist/cjs/vite/plugins/virtualEntryPlugin.test.native.js.map +1 -1
  59. package/dist/cjs/vite/plugins/workerdDevPlugin.cjs +377 -0
  60. package/dist/cjs/vite/plugins/workerdDevPlugin.native.js +493 -0
  61. package/dist/cjs/vite/plugins/workerdDevPlugin.native.js.map +1 -0
  62. package/dist/cjs/vite/plugins/workerdDevPlugin.test.cjs +42 -0
  63. package/dist/cjs/vite/plugins/workerdDevPlugin.test.native.js +45 -0
  64. package/dist/cjs/vite/plugins/workerdDevPlugin.test.native.js.map +1 -0
  65. package/dist/esm/cli/build.mjs +1 -154
  66. package/dist/esm/cli/build.mjs.map +1 -1
  67. package/dist/esm/cli/build.native.js +1 -197
  68. package/dist/esm/cli/build.native.js.map +1 -1
  69. package/dist/esm/createDevHandleRequest.mjs +126 -0
  70. package/dist/esm/createDevHandleRequest.mjs.map +1 -0
  71. package/dist/esm/createDevHandleRequest.native.js +166 -0
  72. package/dist/esm/createDevHandleRequest.native.js.map +1 -0
  73. package/dist/esm/createHandleRequest.mjs +1 -123
  74. package/dist/esm/createHandleRequest.mjs.map +1 -1
  75. package/dist/esm/createHandleRequest.native.js +1 -163
  76. package/dist/esm/createHandleRequest.native.js.map +1 -1
  77. package/dist/esm/createHandleRequest.test.mjs +1 -1
  78. package/dist/esm/createHandleRequest.test.native.js +1 -1
  79. package/dist/esm/fork/useLinking.native.test.mjs +1 -1
  80. package/dist/esm/getURL.native.test.mjs +1 -1
  81. package/dist/esm/layouts/Drawer.mjs +0 -2
  82. package/dist/esm/layouts/Drawer.mjs.map +1 -1
  83. package/dist/esm/layouts/Drawer.native.js.map +1 -1
  84. package/dist/esm/layouts/Tabs.mjs +0 -2
  85. package/dist/esm/layouts/Tabs.mjs.map +1 -1
  86. package/dist/esm/layouts/Tabs.native.js.map +1 -1
  87. package/dist/esm/router/hmrImport.native.test.mjs +1 -1
  88. package/dist/esm/router/routeHmr.native.test.mjs +1 -1
  89. package/dist/esm/router/routeHmr.native.test.mjs.map +1 -1
  90. package/dist/esm/router/web/WebStackView.mjs +0 -2
  91. package/dist/esm/router/web/WebStackView.mjs.map +1 -1
  92. package/dist/esm/router/web/WebStackView.native.js +0 -2
  93. package/dist/esm/router/web/WebStackView.native.js.map +1 -1
  94. package/dist/esm/serve-worker.mjs +3 -2
  95. package/dist/esm/serve-worker.mjs.map +1 -1
  96. package/dist/esm/serve-worker.native.js +3 -2
  97. package/dist/esm/serve-worker.native.js.map +1 -1
  98. package/dist/esm/server/workerHandler.mjs +12 -7
  99. package/dist/esm/server/workerHandler.mjs.map +1 -1
  100. package/dist/esm/server/workerHandler.native.js +13 -8
  101. package/dist/esm/server/workerHandler.native.js.map +1 -1
  102. package/dist/esm/server/workerHandler.test.mjs +25 -0
  103. package/dist/esm/server/workerHandler.test.mjs.map +1 -1
  104. package/dist/esm/server/workerHandler.test.native.js +25 -0
  105. package/dist/esm/server/workerHandler.test.native.js.map +1 -1
  106. package/dist/esm/vite/cloudflareWranglerConfig.mjs +202 -0
  107. package/dist/esm/vite/cloudflareWranglerConfig.mjs.map +1 -0
  108. package/dist/esm/vite/cloudflareWranglerConfig.native.js +344 -0
  109. package/dist/esm/vite/cloudflareWranglerConfig.native.js.map +1 -0
  110. package/dist/esm/vite/cloudflareWranglerConfig.test.mjs +117 -0
  111. package/dist/esm/vite/cloudflareWranglerConfig.test.mjs.map +1 -0
  112. package/dist/esm/vite/cloudflareWranglerConfig.test.native.js +118 -0
  113. package/dist/esm/vite/cloudflareWranglerConfig.test.native.js.map +1 -0
  114. package/dist/esm/vite/one.mjs +4 -2
  115. package/dist/esm/vite/one.mjs.map +1 -1
  116. package/dist/esm/vite/one.native.js +8 -6
  117. package/dist/esm/vite/one.native.js.map +1 -1
  118. package/dist/esm/vite/plugins/SSRCSSPlugin.mjs +10 -1
  119. package/dist/esm/vite/plugins/SSRCSSPlugin.mjs.map +1 -1
  120. package/dist/esm/vite/plugins/SSRCSSPlugin.native.js +52 -3
  121. package/dist/esm/vite/plugins/SSRCSSPlugin.native.js.map +1 -1
  122. package/dist/esm/vite/plugins/environmentGuardPlugin.mjs +1 -1
  123. package/dist/esm/vite/plugins/environmentGuardPlugin.mjs.map +1 -1
  124. package/dist/esm/vite/plugins/environmentGuardPlugin.native.js +1 -1
  125. package/dist/esm/vite/plugins/environmentGuardPlugin.native.js.map +1 -1
  126. package/dist/esm/vite/plugins/environmentGuardPlugin.test.mjs +4 -0
  127. package/dist/esm/vite/plugins/environmentGuardPlugin.test.mjs.map +1 -1
  128. package/dist/esm/vite/plugins/environmentGuardPlugin.test.native.js +4 -0
  129. package/dist/esm/vite/plugins/environmentGuardPlugin.test.native.js.map +1 -1
  130. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs +13 -4
  131. package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs.map +1 -1
  132. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js +14 -4
  133. package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
  134. package/dist/esm/vite/plugins/fileSystemRouterPlugin.test.mjs +47 -0
  135. package/dist/esm/vite/plugins/fileSystemRouterPlugin.test.mjs.map +1 -1
  136. package/dist/esm/vite/plugins/fileSystemRouterPlugin.test.native.js +47 -0
  137. package/dist/esm/vite/plugins/fileSystemRouterPlugin.test.native.js.map +1 -1
  138. package/dist/esm/vite/plugins/virtualEntryPlugin.mjs +2 -1
  139. package/dist/esm/vite/plugins/virtualEntryPlugin.mjs.map +1 -1
  140. package/dist/esm/vite/plugins/virtualEntryPlugin.native.js +2 -1
  141. package/dist/esm/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
  142. package/dist/esm/vite/plugins/virtualEntryPlugin.test.mjs +12 -0
  143. package/dist/esm/vite/plugins/virtualEntryPlugin.test.mjs.map +1 -1
  144. package/dist/esm/vite/plugins/virtualEntryPlugin.test.native.js +12 -0
  145. package/dist/esm/vite/plugins/virtualEntryPlugin.test.native.js.map +1 -1
  146. package/dist/esm/vite/plugins/workerdDevPlugin.mjs +349 -0
  147. package/dist/esm/vite/plugins/workerdDevPlugin.mjs.map +1 -0
  148. package/dist/esm/vite/plugins/workerdDevPlugin.native.js +462 -0
  149. package/dist/esm/vite/plugins/workerdDevPlugin.native.js.map +1 -0
  150. package/dist/esm/vite/plugins/workerdDevPlugin.test.mjs +43 -0
  151. package/dist/esm/vite/plugins/workerdDevPlugin.test.mjs.map +1 -0
  152. package/dist/esm/vite/plugins/workerdDevPlugin.test.native.js +43 -0
  153. package/dist/esm/vite/plugins/workerdDevPlugin.test.native.js.map +1 -0
  154. package/package.json +9 -9
  155. package/src/cli/build.ts +7 -192
  156. package/src/createDevHandleRequest.ts +186 -0
  157. package/src/createHandleRequest.test.ts +1 -1
  158. package/src/createHandleRequest.ts +2 -172
  159. package/src/layouts/Drawer.web.tsx +0 -3
  160. package/src/layouts/Tabs.web.tsx +0 -2
  161. package/src/router/web/WebStackView.tsx +0 -3
  162. package/src/serve-worker.ts +6 -1
  163. package/src/server/workerHandler.test.ts +23 -0
  164. package/src/server/workerHandler.ts +15 -7
  165. package/src/vite/cloudflareWranglerConfig.test.ts +101 -0
  166. package/src/vite/cloudflareWranglerConfig.ts +248 -0
  167. package/src/vite/one.ts +11 -1
  168. package/src/vite/plugins/SSRCSSPlugin.ts +17 -2
  169. package/src/vite/plugins/environmentGuardPlugin.test.ts +5 -0
  170. package/src/vite/plugins/environmentGuardPlugin.ts +2 -2
  171. package/src/vite/plugins/fileSystemRouterPlugin.test.ts +44 -0
  172. package/src/vite/plugins/fileSystemRouterPlugin.tsx +20 -8
  173. package/src/vite/plugins/virtualEntryPlugin.test.ts +13 -0
  174. package/src/vite/plugins/virtualEntryPlugin.ts +3 -1
  175. package/src/vite/plugins/workerdDevPlugin.test.ts +44 -0
  176. package/src/vite/plugins/workerdDevPlugin.ts +408 -0
  177. package/types/cli/build.d.ts.map +1 -1
  178. package/types/createDevHandleRequest.d.ts +10 -0
  179. package/types/createDevHandleRequest.d.ts.map +1 -0
  180. package/types/createHandleRequest.d.ts +2 -9
  181. package/types/createHandleRequest.d.ts.map +1 -1
  182. package/types/layouts/Drawer.web.d.ts.map +1 -1
  183. package/types/layouts/Tabs.web.d.ts.map +1 -1
  184. package/types/router/web/WebStackView.d.ts.map +1 -1
  185. package/types/serve-worker.d.ts +3 -1
  186. package/types/serve-worker.d.ts.map +1 -1
  187. package/types/server/workerHandler.d.ts +1 -0
  188. package/types/server/workerHandler.d.ts.map +1 -1
  189. package/types/vite/cloudflareWranglerConfig.d.ts +21 -0
  190. package/types/vite/cloudflareWranglerConfig.d.ts.map +1 -0
  191. package/types/vite/cloudflareWranglerConfig.test.d.ts +2 -0
  192. package/types/vite/cloudflareWranglerConfig.test.d.ts.map +1 -0
  193. package/types/vite/one.d.ts.map +1 -1
  194. package/types/vite/plugins/SSRCSSPlugin.d.ts.map +1 -1
  195. package/types/vite/plugins/fileSystemRouterPlugin.d.ts.map +1 -1
  196. package/types/vite/plugins/virtualEntryPlugin.d.ts.map +1 -1
  197. package/types/vite/plugins/workerdDevPlugin.d.ts +15 -0
  198. package/types/vite/plugins/workerdDevPlugin.d.ts.map +1 -0
  199. package/types/vite/plugins/workerdDevPlugin.test.d.ts +2 -0
  200. package/types/vite/plugins/workerdDevPlugin.test.d.ts.map +1 -0
  201. package/dist/cjs/headless/devHeadlessNote.cjs +0 -34
  202. package/dist/cjs/headless/devHeadlessNote.native.js +0 -37
  203. package/dist/cjs/headless/devHeadlessNote.native.js.map +0 -1
  204. package/dist/esm/headless/devHeadlessNote.mjs +0 -9
  205. package/dist/esm/headless/devHeadlessNote.mjs.map +0 -1
  206. package/dist/esm/headless/devHeadlessNote.native.js +0 -9
  207. package/dist/esm/headless/devHeadlessNote.native.js.map +0 -1
  208. package/src/headless/devHeadlessNote.ts +0 -13
  209. package/types/headless/devHeadlessNote.d.ts +0 -2
  210. package/types/headless/devHeadlessNote.d.ts.map +0 -1
@@ -0,0 +1,392 @@
1
+ "use strict";
2
+
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: true
13
+ });
14
+ };
15
+ var __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from === "object" || typeof from === "function") {
17
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
18
+ get: () => from[key],
19
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
20
+ });
21
+ }
22
+ return to;
23
+ };
24
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
25
+ // If the importer is in node compatibility mode or this is not an ESM
26
+ // file that has been converted to a CommonJS file using a Babel-
27
+ // compatible transform (i.e. "__esModule" has not been set), then set
28
+ // "default" to the CommonJS "module.exports" for node compatibility.
29
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
30
+ value: mod,
31
+ enumerable: true
32
+ }) : target, mod));
33
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
34
+ value: true
35
+ }), mod);
36
+ var cloudflareWranglerConfig_exports = {};
37
+ __export(cloudflareWranglerConfig_exports, {
38
+ GENERATED_CLOUDFLARE_WRANGLER_RULES: () => GENERATED_CLOUDFLARE_WRANGLER_RULES,
39
+ createCloudflareWranglerConfig: () => createCloudflareWranglerConfig,
40
+ getCloudflareProjectName: () => getCloudflareProjectName,
41
+ getCloudflareProjectNameSync: () => getCloudflareProjectNameSync,
42
+ hasUserWranglerConfig: () => hasUserWranglerConfig,
43
+ isExperimentalWorkerDevEnabled: () => isExperimentalWorkerDevEnabled,
44
+ isPlainObject: () => isPlainObject,
45
+ loadUserWranglerConfig: () => loadUserWranglerConfig,
46
+ loadUserWranglerConfigSync: () => loadUserWranglerConfigSync,
47
+ shouldEnableWorkerdDev: () => shouldEnableWorkerdDev
48
+ });
49
+ module.exports = __toCommonJS(cloudflareWranglerConfig_exports);
50
+ var import_fs = require("fs");
51
+ var import_path = require("path");
52
+ var import_fs_extra = __toESM(require("fs-extra"), 1);
53
+ function _type_of(obj) {
54
+ "@swc/helpers - typeof";
55
+
56
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
57
+ }
58
+ var GENERATED_CLOUDFLARE_WRANGLER_RULES = [{
59
+ type: "ESModule",
60
+ globs: ["./server/**/*.js"],
61
+ fallthrough: true
62
+ }, {
63
+ type: "ESModule",
64
+ globs: ["./api/**/*.js"],
65
+ fallthrough: true
66
+ }, {
67
+ type: "ESModule",
68
+ globs: ["./middlewares/**/*.js"],
69
+ fallthrough: true
70
+ }, {
71
+ type: "ESModule",
72
+ globs: ["./assets/**/*.js"],
73
+ fallthrough: true
74
+ }];
75
+ function isPlainObject(value) {
76
+ return !!value && (typeof value === "undefined" ? "undefined" : _type_of(value)) === "object" && !Array.isArray(value);
77
+ }
78
+ function mergeJsonObjects(base, overrides) {
79
+ var merged = {
80
+ ...base
81
+ };
82
+ var _iteratorNormalCompletion = true,
83
+ _didIteratorError = false,
84
+ _iteratorError = void 0;
85
+ try {
86
+ for (var _iterator = Object.entries(overrides)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
87
+ var [key, value] = _step.value;
88
+ var baseValue = merged[key];
89
+ if (isPlainObject(baseValue) && isPlainObject(value)) {
90
+ merged[key] = mergeJsonObjects(baseValue, value);
91
+ } else {
92
+ merged[key] = value;
93
+ }
94
+ }
95
+ } catch (err) {
96
+ _didIteratorError = true;
97
+ _iteratorError = err;
98
+ } finally {
99
+ try {
100
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
101
+ _iterator.return();
102
+ }
103
+ } finally {
104
+ if (_didIteratorError) {
105
+ throw _iteratorError;
106
+ }
107
+ }
108
+ }
109
+ return merged;
110
+ }
111
+ function dedupeJsonValues(values) {
112
+ var seen = /* @__PURE__ */new Set();
113
+ return values.filter(function (value) {
114
+ var key = JSON.stringify(value);
115
+ if (seen.has(key)) return false;
116
+ seen.add(key);
117
+ return true;
118
+ });
119
+ }
120
+ function mergeCloudflareCompatibilityFlags(flags) {
121
+ var userFlags = Array.isArray(flags) ? flags.filter(function (flag) {
122
+ return typeof flag === "string";
123
+ }) : [];
124
+ return dedupeJsonValues(["nodejs_compat", ...userFlags]);
125
+ }
126
+ function mergeCloudflareRules(rules) {
127
+ var userRules = Array.isArray(rules) ? rules.filter(function (rule) {
128
+ return isPlainObject(rule);
129
+ }) : [];
130
+ return dedupeJsonValues([...GENERATED_CLOUDFLARE_WRANGLER_RULES, ...userRules]);
131
+ }
132
+ function parseJsonc(text) {
133
+ var out = "";
134
+ var i = 0;
135
+ var inString = false;
136
+ var quote = "";
137
+ while (i < text.length) {
138
+ var ch = text[i];
139
+ var next = text[i + 1];
140
+ if (inString) {
141
+ if (ch === "\\") {
142
+ out += ch + (next !== null && next !== void 0 ? next : "");
143
+ i += 2;
144
+ continue;
145
+ }
146
+ if (ch === quote) inString = false;
147
+ out += ch;
148
+ i++;
149
+ continue;
150
+ }
151
+ if (ch === '"' || ch === "'") {
152
+ inString = true;
153
+ quote = ch;
154
+ out += ch;
155
+ i++;
156
+ continue;
157
+ }
158
+ if (ch === "/" && next === "/") {
159
+ while (i < text.length && text[i] !== "\n") i++;
160
+ continue;
161
+ }
162
+ if (ch === "/" && next === "*") {
163
+ i += 2;
164
+ while (i < text.length - 1 && !(text[i] === "*" && text[i + 1] === "/")) i++;
165
+ i += 2;
166
+ continue;
167
+ }
168
+ out += ch;
169
+ i++;
170
+ }
171
+ return JSON.parse(out.replace(/,(\s*[}\]])/g, "$1"));
172
+ }
173
+ var WRANGLER_FILE_NAMES = ["wrangler.jsonc", "wrangler.json"];
174
+ function wranglerCandidateRoots(root) {
175
+ return [... /* @__PURE__ */new Set([root, process.cwd()])];
176
+ }
177
+ function hasUserWranglerConfig(root) {
178
+ var _iteratorNormalCompletion = true,
179
+ _didIteratorError = false,
180
+ _iteratorError = void 0;
181
+ try {
182
+ for (var _iterator = wranglerCandidateRoots(root)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
183
+ var candidateRoot = _step.value;
184
+ var _iteratorNormalCompletion1 = true,
185
+ _didIteratorError1 = false,
186
+ _iteratorError1 = void 0;
187
+ try {
188
+ for (var _iterator1 = WRANGLER_FILE_NAMES[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
189
+ var fileName = _step1.value;
190
+ if ((0, import_fs.existsSync)((0, import_path.join)(candidateRoot, fileName))) return true;
191
+ }
192
+ } catch (err) {
193
+ _didIteratorError1 = true;
194
+ _iteratorError1 = err;
195
+ } finally {
196
+ try {
197
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
198
+ _iterator1.return();
199
+ }
200
+ } finally {
201
+ if (_didIteratorError1) {
202
+ throw _iteratorError1;
203
+ }
204
+ }
205
+ }
206
+ }
207
+ } catch (err) {
208
+ _didIteratorError = true;
209
+ _iteratorError = err;
210
+ } finally {
211
+ try {
212
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
213
+ _iterator.return();
214
+ }
215
+ } finally {
216
+ if (_didIteratorError) {
217
+ throw _iteratorError;
218
+ }
219
+ }
220
+ }
221
+ return false;
222
+ }
223
+ function parseUserWranglerFile(configPath) {
224
+ var contents = (0, import_fs.readFileSync)(configPath, "utf-8");
225
+ var parsed;
226
+ try {
227
+ parsed = parseJsonc(contents);
228
+ } catch (err) {
229
+ throw new Error(`Failed to parse ${(0, import_path.relative)(process.cwd(), configPath)}: ${err.message}`);
230
+ }
231
+ if (!isPlainObject(parsed)) {
232
+ throw new Error(`Expected ${(0, import_path.relative)(process.cwd(), configPath)} to contain a top-level JSON object`);
233
+ }
234
+ return {
235
+ path: configPath,
236
+ config: parsed
237
+ };
238
+ }
239
+ function loadUserWranglerConfigSync(root) {
240
+ var _iteratorNormalCompletion = true,
241
+ _didIteratorError = false,
242
+ _iteratorError = void 0;
243
+ try {
244
+ for (var _iterator = wranglerCandidateRoots(root)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
245
+ var candidateRoot = _step.value;
246
+ var _iteratorNormalCompletion1 = true,
247
+ _didIteratorError1 = false,
248
+ _iteratorError1 = void 0;
249
+ try {
250
+ for (var _iterator1 = WRANGLER_FILE_NAMES[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
251
+ var fileName = _step1.value;
252
+ var configPath = (0, import_path.join)(candidateRoot, fileName);
253
+ if (!(0, import_fs.existsSync)(configPath)) continue;
254
+ return parseUserWranglerFile(configPath);
255
+ }
256
+ } catch (err) {
257
+ _didIteratorError1 = true;
258
+ _iteratorError1 = err;
259
+ } finally {
260
+ try {
261
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
262
+ _iterator1.return();
263
+ }
264
+ } finally {
265
+ if (_didIteratorError1) {
266
+ throw _iteratorError1;
267
+ }
268
+ }
269
+ }
270
+ }
271
+ } catch (err) {
272
+ _didIteratorError = true;
273
+ _iteratorError = err;
274
+ } finally {
275
+ try {
276
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
277
+ _iterator.return();
278
+ }
279
+ } finally {
280
+ if (_didIteratorError) {
281
+ throw _iteratorError;
282
+ }
283
+ }
284
+ }
285
+ return null;
286
+ }
287
+ async function loadUserWranglerConfig(root) {
288
+ var candidateRoots = wranglerCandidateRoots(root);
289
+ var _iteratorNormalCompletion = true,
290
+ _didIteratorError = false,
291
+ _iteratorError = void 0;
292
+ try {
293
+ for (var _iterator = candidateRoots[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
294
+ var candidateRoot = _step.value;
295
+ var _iteratorNormalCompletion1 = true,
296
+ _didIteratorError1 = false,
297
+ _iteratorError1 = void 0;
298
+ try {
299
+ for (var _iterator1 = WRANGLER_FILE_NAMES[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
300
+ var fileName = _step1.value;
301
+ var configPath = (0, import_path.join)(candidateRoot, fileName);
302
+ if (!(await import_fs_extra.default.pathExists(configPath))) {
303
+ continue;
304
+ }
305
+ return parseUserWranglerFile(configPath);
306
+ }
307
+ } catch (err) {
308
+ _didIteratorError1 = true;
309
+ _iteratorError1 = err;
310
+ } finally {
311
+ try {
312
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
313
+ _iterator1.return();
314
+ }
315
+ } finally {
316
+ if (_didIteratorError1) {
317
+ throw _iteratorError1;
318
+ }
319
+ }
320
+ }
321
+ }
322
+ } catch (err) {
323
+ _didIteratorError = true;
324
+ _iteratorError = err;
325
+ } finally {
326
+ try {
327
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
328
+ _iterator.return();
329
+ }
330
+ } finally {
331
+ if (_didIteratorError) {
332
+ throw _iteratorError;
333
+ }
334
+ }
335
+ }
336
+ return null;
337
+ }
338
+ function createCloudflareWranglerConfig(projectName, userConfig) {
339
+ var generatedConfig = {
340
+ name: projectName,
341
+ main: "worker.js",
342
+ compatibility_date: "2024-12-05",
343
+ compatibility_flags: ["nodejs_compat"],
344
+ find_additional_modules: true,
345
+ rules: GENERATED_CLOUDFLARE_WRANGLER_RULES,
346
+ assets: {
347
+ directory: "client",
348
+ binding: "ASSETS",
349
+ run_worker_first: true
350
+ }
351
+ };
352
+ var mergedConfig = userConfig ? mergeJsonObjects(generatedConfig, userConfig) : generatedConfig;
353
+ mergedConfig.main = "worker.js";
354
+ mergedConfig.find_additional_modules = true;
355
+ mergedConfig.compatibility_flags = mergeCloudflareCompatibilityFlags(mergedConfig.compatibility_flags);
356
+ mergedConfig.rules = mergeCloudflareRules(mergedConfig.rules);
357
+ mergedConfig.assets = {
358
+ ...(isPlainObject(mergedConfig.assets) ? mergedConfig.assets : {}),
359
+ directory: "client",
360
+ binding: "ASSETS",
361
+ run_worker_first: true
362
+ };
363
+ return mergedConfig;
364
+ }
365
+ function getCloudflareProjectNameSync(root) {
366
+ try {
367
+ var pkg = JSON.parse((0, import_fs.readFileSync)((0, import_path.join)(root, "package.json"), "utf-8"));
368
+ if (pkg.name) {
369
+ return String(pkg.name).replace(/^@[^/]+\//, "");
370
+ }
371
+ } catch (unused) {}
372
+ return "one-app";
373
+ }
374
+ async function getCloudflareProjectName(root) {
375
+ try {
376
+ var pkg = JSON.parse(await import_fs_extra.default.readFile((0, import_path.join)(root, "package.json"), "utf-8"));
377
+ if (pkg.name) {
378
+ return pkg.name.replace(/^@[^/]+\//, "");
379
+ }
380
+ } catch (unused) {}
381
+ return "one-app";
382
+ }
383
+ function isExperimentalWorkerDevEnabled() {
384
+ return process.env.ONE_EXPERIMENTAL_WORKER_DEV === "1";
385
+ }
386
+ function shouldEnableWorkerdDev(deploy, root) {
387
+ if (!isExperimentalWorkerDevEnabled()) return false;
388
+ var target = typeof deploy === "string" ? deploy : deploy === null || deploy === void 0 ? void 0 : deploy.target;
389
+ if (target === "cloudflare") return true;
390
+ return hasUserWranglerConfig(root);
391
+ }
392
+ //# sourceMappingURL=cloudflareWranglerConfig.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","cloudflareWranglerConfig_exports","__export","GENERATED_CLOUDFLARE_WRANGLER_RULES","createCloudflareWranglerConfig","getCloudflareProjectName","getCloudflareProjectNameSync","hasUserWranglerConfig","isExperimentalWorkerDevEnabled","isPlainObject","loadUserWranglerConfig","loadUserWranglerConfigSync","shouldEnableWorkerdDev","module","exports","import_fs","require","import_path","import_fs_extra","__toESM","_type_of","obj","Symbol","constructor","type","globs","fallthrough","Array","isArray","mergeJsonObjects","base","overrides","merged","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","entries","iterator","_step","next","done","key","baseValue","err","return","dedupeJsonValues","values","seen","Set","filter","JSON","stringify","has","add","mergeCloudflareCompatibilityFlags","flags","userFlags","flag","mergeCloudflareRules","rules","userRules","rule","parseJsonc","text","out","i","inString","quote","length","ch","parse","replace","WRANGLER_FILE_NAMES","wranglerCandidateRoots","root","process","cwd","candidateRoot","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","fileName","existsSync","join","parseUserWranglerFile","configPath","contents","readFileSync","parsed"],"sources":["../../../src/vite/cloudflareWranglerConfig.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,116 @@
1
+ var import_node_fs = require("node:fs");
2
+ var import_node_os = require("node:os");
3
+ var import_node_path = require("node:path");
4
+ var import_vitest = require("vitest");
5
+ var import_cloudflareWranglerConfig = require("./cloudflareWranglerConfig.cjs");
6
+ (0, import_vitest.describe)("createCloudflareWranglerConfig", () => {
7
+ (0, import_vitest.it)("synthesizes a worker config when no user wrangler file exists", () => {
8
+ const config = (0, import_cloudflareWranglerConfig.createCloudflareWranglerConfig)("my-app");
9
+ (0, import_vitest.expect)(config.name).toBe("my-app");
10
+ (0, import_vitest.expect)(config.main).toBe("worker.js");
11
+ (0, import_vitest.expect)(config.compatibility_flags).toEqual(["nodejs_compat"]);
12
+ (0, import_vitest.expect)(config.find_additional_modules).toBe(true);
13
+ (0, import_vitest.expect)(config.assets).toEqual({
14
+ directory: "client",
15
+ binding: "ASSETS",
16
+ run_worker_first: true
17
+ });
18
+ });
19
+ (0, import_vitest.it)("merges user wrangler.jsonc the same way the cloudflare build does", () => {
20
+ const config = (0, import_cloudflareWranglerConfig.createCloudflareWranglerConfig)("generated-name", {
21
+ name: "test-cloudflare-user-config",
22
+ compatibility_date: "2025-01-01",
23
+ compatibility_flags: ["nodejs_als"],
24
+ vars: {
25
+ CUSTOM_VALUE: "from-root-config"
26
+ },
27
+ assets: {
28
+ html_handling: "auto-trailing-slash"
29
+ },
30
+ rules: [{
31
+ type: "ESModule",
32
+ globs: ["./extra/**/*.js"],
33
+ fallthrough: true
34
+ }]
35
+ });
36
+ (0, import_vitest.expect)(config.name).toBe("test-cloudflare-user-config");
37
+ (0, import_vitest.expect)(config.main).toBe("worker.js");
38
+ (0, import_vitest.expect)(config.compatibility_date).toBe("2025-01-01");
39
+ (0, import_vitest.expect)(config.compatibility_flags).toEqual(["nodejs_compat", "nodejs_als"]);
40
+ (0, import_vitest.expect)(config.vars).toEqual({
41
+ CUSTOM_VALUE: "from-root-config"
42
+ });
43
+ (0, import_vitest.expect)(config.assets).toEqual({
44
+ html_handling: "auto-trailing-slash",
45
+ directory: "client",
46
+ binding: "ASSETS",
47
+ run_worker_first: true
48
+ });
49
+ (0, import_vitest.expect)(config.rules).toEqual([{
50
+ type: "ESModule",
51
+ globs: ["./server/**/*.js"],
52
+ fallthrough: true
53
+ }, {
54
+ type: "ESModule",
55
+ globs: ["./api/**/*.js"],
56
+ fallthrough: true
57
+ }, {
58
+ type: "ESModule",
59
+ globs: ["./middlewares/**/*.js"],
60
+ fallthrough: true
61
+ }, {
62
+ type: "ESModule",
63
+ globs: ["./assets/**/*.js"],
64
+ fallthrough: true
65
+ }, {
66
+ type: "ESModule",
67
+ globs: ["./extra/**/*.js"],
68
+ fallthrough: true
69
+ }]);
70
+ });
71
+ });
72
+ (0, import_vitest.describe)("shouldEnableWorkerdDev", () => {
73
+ const previous = process.env.ONE_EXPERIMENTAL_WORKER_DEV;
74
+ (0, import_vitest.afterEach)(() => {
75
+ if (previous === void 0) delete process.env.ONE_EXPERIMENTAL_WORKER_DEV;else process.env.ONE_EXPERIMENTAL_WORKER_DEV = previous;
76
+ });
77
+ (0, import_vitest.it)("is off when the flag is unset", () => {
78
+ delete process.env.ONE_EXPERIMENTAL_WORKER_DEV;
79
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.isExperimentalWorkerDevEnabled)()).toBe(false);
80
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.shouldEnableWorkerdDev)("cloudflare", "/tmp")).toBe(false);
81
+ });
82
+ (0, import_vitest.it)("is off when the flag is on but the app has no cloudflare target or wrangler file", () => {
83
+ process.env.ONE_EXPERIMENTAL_WORKER_DEV = "1";
84
+ const root = (0, import_node_fs.mkdtempSync)((0, import_node_path.join)((0, import_node_os.tmpdir)(), "one-workerd-flag-"));
85
+ try {
86
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.shouldEnableWorkerdDev)(void 0, root)).toBe(false);
87
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.shouldEnableWorkerdDev)("node", root)).toBe(false);
88
+ } finally {
89
+ (0, import_node_fs.rmSync)(root, {
90
+ recursive: true,
91
+ force: true
92
+ });
93
+ }
94
+ });
95
+ (0, import_vitest.it)("is on when the flag is set and deploy is cloudflare", () => {
96
+ process.env.ONE_EXPERIMENTAL_WORKER_DEV = "1";
97
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.shouldEnableWorkerdDev)("cloudflare", "/tmp-does-not-exist")).toBe(true);
98
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.shouldEnableWorkerdDev)({
99
+ target: "cloudflare"
100
+ }, "/tmp-does-not-exist")).toBe(true);
101
+ });
102
+ (0, import_vitest.it)("is on when the flag is set and wrangler.jsonc exists", () => {
103
+ process.env.ONE_EXPERIMENTAL_WORKER_DEV = "1";
104
+ const root = (0, import_node_fs.mkdtempSync)((0, import_node_path.join)((0, import_node_os.tmpdir)(), "one-workerd-wrangler-"));
105
+ try {
106
+ (0, import_node_fs.writeFileSync)((0, import_node_path.join)(root, "wrangler.jsonc"), '{ "name": "from-file" }\n');
107
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.shouldEnableWorkerdDev)(void 0, root)).toBe(true);
108
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.loadUserWranglerConfigSync)(root)?.config.name).toBe("from-file");
109
+ } finally {
110
+ (0, import_node_fs.rmSync)(root, {
111
+ recursive: true,
112
+ force: true
113
+ });
114
+ }
115
+ });
116
+ });
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+
3
+ var import_fs = require("fs");
4
+ var import_os = require("os");
5
+ var import_path = require("path");
6
+ var import_vitest = require("vitest");
7
+ var import_cloudflareWranglerConfig = require("./cloudflareWranglerConfig.native.js");
8
+ (0, import_vitest.describe)("createCloudflareWranglerConfig", function () {
9
+ (0, import_vitest.it)("synthesizes a worker config when no user wrangler file exists", function () {
10
+ var config = (0, import_cloudflareWranglerConfig.createCloudflareWranglerConfig)("my-app");
11
+ (0, import_vitest.expect)(config.name).toBe("my-app");
12
+ (0, import_vitest.expect)(config.main).toBe("worker.js");
13
+ (0, import_vitest.expect)(config.compatibility_flags).toEqual(["nodejs_compat"]);
14
+ (0, import_vitest.expect)(config.find_additional_modules).toBe(true);
15
+ (0, import_vitest.expect)(config.assets).toEqual({
16
+ directory: "client",
17
+ binding: "ASSETS",
18
+ run_worker_first: true
19
+ });
20
+ });
21
+ (0, import_vitest.it)("merges user wrangler.jsonc the same way the cloudflare build does", function () {
22
+ var config = (0, import_cloudflareWranglerConfig.createCloudflareWranglerConfig)("generated-name", {
23
+ name: "test-cloudflare-user-config",
24
+ compatibility_date: "2025-01-01",
25
+ compatibility_flags: ["nodejs_als"],
26
+ vars: {
27
+ CUSTOM_VALUE: "from-root-config"
28
+ },
29
+ assets: {
30
+ html_handling: "auto-trailing-slash"
31
+ },
32
+ rules: [{
33
+ type: "ESModule",
34
+ globs: ["./extra/**/*.js"],
35
+ fallthrough: true
36
+ }]
37
+ });
38
+ (0, import_vitest.expect)(config.name).toBe("test-cloudflare-user-config");
39
+ (0, import_vitest.expect)(config.main).toBe("worker.js");
40
+ (0, import_vitest.expect)(config.compatibility_date).toBe("2025-01-01");
41
+ (0, import_vitest.expect)(config.compatibility_flags).toEqual(["nodejs_compat", "nodejs_als"]);
42
+ (0, import_vitest.expect)(config.vars).toEqual({
43
+ CUSTOM_VALUE: "from-root-config"
44
+ });
45
+ (0, import_vitest.expect)(config.assets).toEqual({
46
+ html_handling: "auto-trailing-slash",
47
+ directory: "client",
48
+ binding: "ASSETS",
49
+ run_worker_first: true
50
+ });
51
+ (0, import_vitest.expect)(config.rules).toEqual([{
52
+ type: "ESModule",
53
+ globs: ["./server/**/*.js"],
54
+ fallthrough: true
55
+ }, {
56
+ type: "ESModule",
57
+ globs: ["./api/**/*.js"],
58
+ fallthrough: true
59
+ }, {
60
+ type: "ESModule",
61
+ globs: ["./middlewares/**/*.js"],
62
+ fallthrough: true
63
+ }, {
64
+ type: "ESModule",
65
+ globs: ["./assets/**/*.js"],
66
+ fallthrough: true
67
+ }, {
68
+ type: "ESModule",
69
+ globs: ["./extra/**/*.js"],
70
+ fallthrough: true
71
+ }]);
72
+ });
73
+ });
74
+ (0, import_vitest.describe)("shouldEnableWorkerdDev", function () {
75
+ var previous = process.env.ONE_EXPERIMENTAL_WORKER_DEV;
76
+ (0, import_vitest.afterEach)(function () {
77
+ if (previous === void 0) delete process.env.ONE_EXPERIMENTAL_WORKER_DEV;else process.env.ONE_EXPERIMENTAL_WORKER_DEV = previous;
78
+ });
79
+ (0, import_vitest.it)("is off when the flag is unset", function () {
80
+ delete process.env.ONE_EXPERIMENTAL_WORKER_DEV;
81
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.isExperimentalWorkerDevEnabled)()).toBe(false);
82
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.shouldEnableWorkerdDev)("cloudflare", "/tmp")).toBe(false);
83
+ });
84
+ (0, import_vitest.it)("is off when the flag is on but the app has no cloudflare target or wrangler file", function () {
85
+ process.env.ONE_EXPERIMENTAL_WORKER_DEV = "1";
86
+ var root = (0, import_fs.mkdtempSync)((0, import_path.join)((0, import_os.tmpdir)(), "one-workerd-flag-"));
87
+ try {
88
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.shouldEnableWorkerdDev)(void 0, root)).toBe(false);
89
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.shouldEnableWorkerdDev)("node", root)).toBe(false);
90
+ } finally {
91
+ (0, import_fs.rmSync)(root, {
92
+ recursive: true,
93
+ force: true
94
+ });
95
+ }
96
+ });
97
+ (0, import_vitest.it)("is on when the flag is set and deploy is cloudflare", function () {
98
+ process.env.ONE_EXPERIMENTAL_WORKER_DEV = "1";
99
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.shouldEnableWorkerdDev)("cloudflare", "/tmp-does-not-exist")).toBe(true);
100
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.shouldEnableWorkerdDev)({
101
+ target: "cloudflare"
102
+ }, "/tmp-does-not-exist")).toBe(true);
103
+ });
104
+ (0, import_vitest.it)("is on when the flag is set and wrangler.jsonc exists", function () {
105
+ process.env.ONE_EXPERIMENTAL_WORKER_DEV = "1";
106
+ var root = (0, import_fs.mkdtempSync)((0, import_path.join)((0, import_os.tmpdir)(), "one-workerd-wrangler-"));
107
+ try {
108
+ var _loadUserWranglerConfigSync;
109
+ (0, import_fs.writeFileSync)((0, import_path.join)(root, "wrangler.jsonc"), '{ "name": "from-file" }\n');
110
+ (0, import_vitest.expect)((0, import_cloudflareWranglerConfig.shouldEnableWorkerdDev)(void 0, root)).toBe(true);
111
+ (0, import_vitest.expect)((_loadUserWranglerConfigSync = (0, import_cloudflareWranglerConfig.loadUserWranglerConfigSync)(root)) === null || _loadUserWranglerConfigSync === void 0 ? void 0 : _loadUserWranglerConfigSync.config.name).toBe("from-file");
112
+ } finally {
113
+ (0, import_fs.rmSync)(root, {
114
+ recursive: true,
115
+ force: true
116
+ });
117
+ }
118
+ });
119
+ });
120
+ //# sourceMappingURL=cloudflareWranglerConfig.test.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["import_fs","require","import_os","import_path","import_vitest","import_cloudflareWranglerConfig","describe","it","config","createCloudflareWranglerConfig","expect","name","toBe","main","compatibility_flags","toEqual","find_additional_modules","assets","directory","binding","run_worker_first","compatibility_date","vars","CUSTOM_VALUE","html_handling","rules","type","globs","fallthrough"],"sources":["../../../src/vite/cloudflareWranglerConfig.test.ts"],"sourcesContent":[null],"mappings":"AAAA;;AACA,IAAAA,SAAA,GAAAC,OAAuB;AACvB,IAAAC,SAAA,GAAAD,OAAqB;AACrB,IAAAE,WAAA,GAAAF,OAAgD;AAChD,IAAAG,aAAA,GAAAH,OAAA;AAKO,IAEPI,+BAAS,GAAAJ,OAAA,uCAAwC;AAC/C,IAAAG,aAAA,CAAAE,QAAG;EACD,IAAAF,aAAM,CAAAG,EAAA,EAAS,+DAA+B,cAAQ;IACtD,IAAAC,MAAA,OAAAH,+BAAyB,CAAAI,8BAAQ;IACjC,IAAAL,aAAA,CAAAM,MAAA,EAAOF,MAAA,CAAOG,IAAI,EAAEC,IAAA,CAAK;IACzB,IAAAR,aAAA,CAAAM,MAAA,EAAOF,MAAA,CAAOK,IAAA,EAAAD,IAAA,YAAqB;IACnC,IAAAR,aAAA,CAAAM,MAAA,EAAOF,MAAA,CAAOM,mBAAA,EAAAC,OAAyB,EACvC,gBAA8B,CAC5B;IAAW,EACX,EAAAX,aAAS,CAAAM,MAAA,EAAAF,MAAA,CAAAQ,uBAAA,EAAAJ,IAAA;IAAA,EACT,EAAAR,aAAA,CAAAM,MAAkB,EAAAF,MAAA,CAAAS,MAAA,EAAAF,OAAA;MACnBG,SAAA;MACFC,OAAA;MAEDC,gBAAA,EAAG;IACD;EAAgE;EACxD,IACNhB,aAAA,CAAAG,EAAA,qEAAoB;IAAA,IACpBC,MAAA,OAAAH,+BAAkC,CAAAI,8BAAA;MAClCE,IAAA,EAAM,6BAAgB;MACtBU,kBAAU,cAAe;MACzBP,mBAAgB,GACjB,aAED;MACAQ,IAAA;QACAC,YAAA;MACA;MACAN,MAAA;QACAO,aAAA;MACE;MACAC,KAAA,GACA;QACAC,IAAA,YAAkB;QACnBC,KAAA,GACD,kBACI;QACAC,WAAM;MACN;IACiE,EACnE;IACF,CAAC,GAAAxB,aAAA,CAAAM,MAAA,EAAAF,MAAA,CAAAG,IAAA,EAAAC,IAAA;IACF,IAAAR,aAAA,CAAAM,MAAA,EAAAF,MAAA,CAAAK,IAAA,EAAAD,IAAA;IACF,IAAAR,aAAA,CAAAM,MAAA,EAAAF,MAAA,CAAAa,kBAAA,EAAAT,IAAA;IAED,IAAAR,aAAA,CAAAM,MAAS,EAAAF,MAAA,CAAAM,mBAA0B,EAAAC,OAAM,EACvC,eAAiB,EAEjB,aACE;IAA+C,IAC1CX,aAAY,CAAAM,MAAA,EAAAF,MAAA,CAAAc,IAAA,EAAAP,OAAA,CAA8B;MAChDQ,YAAA;IAED;IACE,IAAAnB,aAAe,CAAAM,MAAI,EAAAF,MAAA,CAAAS,MAAA,EAAAF,OAAA;MACnBS,aAAA,uBAAO;MACPN,SAAA;MACDC,OAAA;MAEDC,gBAAA,EAAG;IACD;IACA,IAAAhB,aAAa,CAAAM,MAAA,EAAAF,MAAA,CAAAiB,KAAA,EAAAV,OAAA,EACb;MACEW,IAAA;MACAC,KAAA,GACF,kBAAE,CACA;MACFC,WAAA;IACD,GAED;MACEF,IAAQ,YAAI;MACZC,KAAA,GACA,gBACE;MACFC,WAAA;IACD,GAED;MACEF,IAAQ,YAAI;MACZC,KAAM,GACF,wBACF;MACAC,WAAA;IACA,GACF;MACEF,IAAA;MACFC,KAAA,GACD,mBACF","ignoreList":[]}
@@ -68,6 +68,7 @@ var import_SSRCSSPlugin = require("./plugins/SSRCSSPlugin.cjs");
68
68
  var import_virtualEntryConstants = require("./plugins/virtualEntryConstants.cjs");
69
69
  var import_virtualEntryPlugin = require("./plugins/virtualEntryPlugin.cjs");
70
70
  var import_environmentGuardPlugin = require("./plugins/environmentGuardPlugin.cjs");
71
+ var import_workerdDevPlugin = require("./plugins/workerdDevPlugin.cjs");
71
72
  const RN_DEEP_IMPORT_RE = /^react-native\/Libraries\/|react-native-web(-lite)?\/.*\/Libraries\//;
72
73
  import_node_events.default.setMaxListeners(1e3);
73
74
  globalThis.__vxrnEnableNativeEnv = true;
@@ -414,7 +415,7 @@ function one(options = {}) {
414
415
  id: RN_DEEP_IMPORT_RE
415
416
  },
416
417
  handler(source) {
417
- if (this.environment?.name === "client" || this.environment?.name === "ssr") {
418
+ if (this.environment?.name === "client" || this.environment?.name === "ssr" || this.environment?.name === "worker") {
418
419
  return "\0rn-empty-module";
419
420
  }
420
421
  }
@@ -659,7 +660,8 @@ function one(options = {}) {
659
660
  editor
660
661
  }) : [];
661
662
  })();
662
- return [...vxrnPlugins, ...devAndProdPlugins, ...inspectorPlugins, ...nativeWebDevAndProdPlugsin,
663
+ const workerdDevPlugins = (0, import_workerdDevPlugin.shouldEnableWorkerdDev)(options.web?.deploy, root) ? (0, import_workerdDevPlugin.createWorkerdDevPlugins)(options, root, routeIndex) : [];
664
+ return [...workerdDevPlugins, ...vxrnPlugins, ...devAndProdPlugins, ...inspectorPlugins, ...nativeWebDevAndProdPlugsin,
663
665
  /**
664
666
  * This is really the meat of one, where it handles requests:
665
667
  */