@cloudflare/vite-plugin 1.30.0 → 1.30.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.
- package/dist/index.mjs +159 -18
- package/dist/index.mjs.map +1 -1
- package/dist/{package--uDsBjBd.mjs → package-DrJ1WABg.mjs} +5 -5
- package/dist/{package--uDsBjBd.mjs.map → package-DrJ1WABg.mjs.map} +1 -1
- package/dist/workers/runner-worker/index.js +62 -86
- package/dist/workers/runner-worker/module-runner-legacy.js +1 -1
- package/dist/workers/runner-worker/module-runner.js +2 -2
- package/package.json +8 -8
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
//#region package.json
|
|
2
2
|
var package_default = {
|
|
3
3
|
name: "@cloudflare/vite-plugin",
|
|
4
|
-
version: "1.30.
|
|
4
|
+
version: "1.30.2",
|
|
5
5
|
description: "Cloudflare plugin for Vite",
|
|
6
6
|
keywords: [
|
|
7
7
|
"cloudflare",
|
|
@@ -52,7 +52,7 @@ var package_default = {
|
|
|
52
52
|
"@cloudflare/workers-types": "catalog:default",
|
|
53
53
|
"@cloudflare/workers-utils": "workspace:*",
|
|
54
54
|
"@remix-run/node-fetch-server": "^0.8.0",
|
|
55
|
-
"@types/node": "catalog:
|
|
55
|
+
"@types/node": "catalog:default",
|
|
56
56
|
"@types/semver": "^7.5.1",
|
|
57
57
|
"@types/ws": "^8.5.13",
|
|
58
58
|
"defu": "^6.1.4",
|
|
@@ -65,9 +65,9 @@ var package_default = {
|
|
|
65
65
|
"tree-kill": "catalog:default",
|
|
66
66
|
"tsdown": "0.16.3",
|
|
67
67
|
"typescript": "catalog:default",
|
|
68
|
-
"vite": "catalog:
|
|
68
|
+
"vite": "catalog:default",
|
|
69
69
|
"vite-legacy": "npm:vite@7.1.12",
|
|
70
|
-
"vitest": "catalog:
|
|
70
|
+
"vitest": "catalog:default"
|
|
71
71
|
},
|
|
72
72
|
peerDependencies: {
|
|
73
73
|
"vite": "^6.1.0 || ^7.0.0 || ^8.0.0",
|
|
@@ -78,4 +78,4 @@ var package_default = {
|
|
|
78
78
|
|
|
79
79
|
//#endregion
|
|
80
80
|
export { package_default as default };
|
|
81
|
-
//# sourceMappingURL=package
|
|
81
|
+
//# sourceMappingURL=package-DrJ1WABg.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package
|
|
1
|
+
{"version":3,"file":"package-DrJ1WABg.mjs","names":[],"sources":["../package.json"],"sourcesContent":["{\n\t\"name\": \"@cloudflare/vite-plugin\",\n\t\"version\": \"1.30.2\",\n\t\"description\": \"Cloudflare plugin for Vite\",\n\t\"keywords\": [\n\t\t\"cloudflare\",\n\t\t\"cloudflare-workers\",\n\t\t\"vite\",\n\t\t\"vite-plugin\",\n\t\t\"workers\"\n\t],\n\t\"homepage\": \"https://github.com/cloudflare/workers-sdk/tree/main/packages/vite-plugin-cloudflare#readme\",\n\t\"bugs\": {\n\t\t\"url\": \"https://github.com/cloudflare/workers-sdk/issues\"\n\t},\n\t\"license\": \"MIT\",\n\t\"repository\": {\n\t\t\"type\": \"git\",\n\t\t\"url\": \"https://github.com/cloudflare/workers-sdk.git\",\n\t\t\"directory\": \"packages/vite-plugin-cloudflare\"\n\t},\n\t\"files\": [\n\t\t\"dist\"\n\t],\n\t\"type\": \"module\",\n\t\"sideEffects\": false,\n\t\"main\": \"./dist/index.mjs\",\n\t\"types\": \"./dist/index.d.mts\",\n\t\"exports\": {\n\t\t\".\": {\n\t\t\t\"types\": \"./dist/index.d.mts\",\n\t\t\t\"import\": \"./dist/index.mjs\"\n\t\t}\n\t},\n\t\"publishConfig\": {\n\t\t\"access\": \"public\"\n\t},\n\t\"scripts\": {\n\t\t\"build\": \"tsdown\",\n\t\t\"check:type\": \"tsc --build\",\n\t\t\"dev\": \"tsdown --watch\",\n\t\t\"test\": \"vitest run\",\n\t\t\"test:ci\": \"pnpm test\",\n\t\t\"test:e2e\": \"vitest run -c e2e/vitest.config.ts\",\n\t\t\"test:watch\": \"vitest\"\n\t},\n\t\"dependencies\": {\n\t\t\"@cloudflare/unenv-preset\": \"workspace:*\",\n\t\t\"miniflare\": \"workspace:*\",\n\t\t\"unenv\": \"2.0.0-rc.24\",\n\t\t\"wrangler\": \"workspace:*\",\n\t\t\"ws\": \"catalog:default\"\n\t},\n\t\"devDependencies\": {\n\t\t\"@cloudflare/containers-shared\": \"workspace:*\",\n\t\t\"@cloudflare/mock-npm-registry\": \"workspace:*\",\n\t\t\"@cloudflare/workers-shared\": \"workspace:*\",\n\t\t\"@cloudflare/workers-tsconfig\": \"workspace:*\",\n\t\t\"@cloudflare/workers-types\": \"catalog:default\",\n\t\t\"@cloudflare/workers-utils\": \"workspace:*\",\n\t\t\"@remix-run/node-fetch-server\": \"^0.8.0\",\n\t\t\"@types/node\": \"catalog:default\",\n\t\t\"@types/semver\": \"^7.5.1\",\n\t\t\"@types/ws\": \"^8.5.13\",\n\t\t\"defu\": \"^6.1.4\",\n\t\t\"get-port\": \"^7.1.0\",\n\t\t\"magic-string\": \"^0.30.12\",\n\t\t\"mlly\": \"^1.7.4\",\n\t\t\"picocolors\": \"^1.1.1\",\n\t\t\"semver\": \"^7.7.1\",\n\t\t\"tinyglobby\": \"^0.2.12\",\n\t\t\"tree-kill\": \"catalog:default\",\n\t\t\"tsdown\": \"0.16.3\",\n\t\t\"typescript\": \"catalog:default\",\n\t\t\"vite\": \"catalog:default\",\n\t\t\"vite-legacy\": \"npm:vite@7.1.12\",\n\t\t\"vitest\": \"catalog:default\"\n\t},\n\t\"peerDependencies\": {\n\t\t\"vite\": \"^6.1.0 || ^7.0.0 || ^8.0.0\",\n\t\t\"wrangler\": \"workspace:^\"\n\t},\n\t\"workers-sdk\": {\n\t\t\"prerelease\": true\n\t}\n}\n"],"mappings":";sBAAA;OACS;UACG;cACI;WACH;EACX;EACA;EACA;EACA;EACA;EACA;WACW;OACJ,EACP,OAAO,oDACP;UACU;aACG;EACb,QAAQ;EACR,OAAO;EACP,aAAa;EACb;QACQ,CACR,OACA;OACO;cACO;OACP;QACC;UACE,EACV,KAAK;EACJ,SAAS;EACT,UAAU;EACV,EACD;gBACgB,EAChB,UAAU,UACV;UACU;EACV,SAAS;EACT,cAAc;EACd,OAAO;EACP,QAAQ;EACR,WAAW;EACX,YAAY;EACZ,cAAc;EACd;eACe;EACf,4BAA4B;EAC5B,aAAa;EACb,SAAS;EACT,YAAY;EACZ,MAAM;EACN;kBACkB;EAClB,iCAAiC;EACjC,iCAAiC;EACjC,8BAA8B;EAC9B,gCAAgC;EAChC,6BAA6B;EAC7B,6BAA6B;EAC7B,gCAAgC;EAChC,eAAe;EACf,iBAAiB;EACjB,aAAa;EACb,QAAQ;EACR,YAAY;EACZ,gBAAgB;EAChB,QAAQ;EACR,cAAc;EACd,UAAU;EACV,cAAc;EACd,aAAa;EACb,UAAU;EACV,cAAc;EACd,QAAQ;EACR,eAAe;EACf,UAAU;EACV;mBACmB;EACnB,QAAQ;EACR,YAAY;EACZ;CACD,eAAe,EACd,cAAc,MACd;CACD"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DurableObject, WorkerEntrypoint, WorkflowEntrypoint } from "cloudflare:workers";
|
|
2
|
-
import { ModuleRunner, ssrModuleExportsKey } from "vite/module-runner";
|
|
2
|
+
import { ModuleRunner, ssrDynamicImportKey, ssrModuleExportsKey } from "vite/module-runner";
|
|
3
3
|
|
|
4
4
|
//#region src/shared.ts
|
|
5
5
|
const UNKNOWN_HOST = "http://localhost";
|
|
@@ -84,41 +84,43 @@ const WORKFLOW_ENTRYPOINT_KEYS = ["run"];
|
|
|
84
84
|
|
|
85
85
|
//#endregion
|
|
86
86
|
//#region src/workers/runner-worker/module-runner.ts
|
|
87
|
-
/**
|
|
88
|
-
* Custom `ModuleRunner`.
|
|
89
|
-
* The `cachedModule` method is overridden to ensure compatibility with the Workers runtime.
|
|
90
|
-
*/
|
|
91
|
-
var CustomModuleRunner = class extends ModuleRunner {
|
|
92
|
-
#env;
|
|
93
|
-
#environmentName;
|
|
94
|
-
constructor(options, evaluator, env, environmentName) {
|
|
95
|
-
super(options, evaluator);
|
|
96
|
-
this.#env = env;
|
|
97
|
-
this.#environmentName = environmentName;
|
|
98
|
-
}
|
|
99
|
-
async cachedModule(url, importer) {
|
|
100
|
-
const moduleId = await this.#env.__VITE_RUNNER_OBJECT__.get("singleton").getFetchedModuleId(this.#environmentName, url, importer);
|
|
101
|
-
const module = this.evaluatedModules.getModuleById(moduleId);
|
|
102
|
-
if (!module) throw new Error(`Module "${moduleId}" is undefined`);
|
|
103
|
-
return module;
|
|
104
|
-
}
|
|
105
|
-
};
|
|
106
87
|
/** Module runner instances keyed by environment name */
|
|
107
88
|
const moduleRunners = /* @__PURE__ */ new Map();
|
|
108
89
|
/** The parent environment name (set explicitly via IS_PARENT_ENVIRONMENT_HEADER) */
|
|
109
90
|
let parentEnvironmentName;
|
|
91
|
+
let nextCallbackId = 0;
|
|
92
|
+
const pendingCallbacks = /* @__PURE__ */ new Map();
|
|
93
|
+
const callbackResults = /* @__PURE__ */ new Map();
|
|
94
|
+
/**
|
|
95
|
+
* Executes a callback in the runner Durable Object's IoContext via RPC + shared memory.
|
|
96
|
+
* The callback function is stored in a module-scope map (shared with the DO
|
|
97
|
+
* since both run in the same V8 isolate). Only a numeric ID crosses the RPC
|
|
98
|
+
* boundary.
|
|
99
|
+
*/
|
|
100
|
+
async function runInRunnerObject(env, callback) {
|
|
101
|
+
const id = nextCallbackId++;
|
|
102
|
+
pendingCallbacks.set(id, callback);
|
|
103
|
+
try {
|
|
104
|
+
await env.__VITE_RUNNER_OBJECT__.get("singleton").executeCallback(id);
|
|
105
|
+
return callbackResults.get(id);
|
|
106
|
+
} finally {
|
|
107
|
+
pendingCallbacks.delete(id);
|
|
108
|
+
callbackResults.delete(id);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
110
111
|
/**
|
|
111
|
-
* Durable Object that
|
|
112
|
+
* Durable Object that provides an IoContext for module evaluation and handles
|
|
113
|
+
* WebSocket communication with the Vite dev server.
|
|
114
|
+
*
|
|
115
|
+
* In workerd, a Durable Object has a single shared IoContext across all
|
|
116
|
+
* incoming events, so promises are freely shareable within the DO without
|
|
117
|
+
* cross-context issues.
|
|
112
118
|
*/
|
|
113
119
|
var __VITE_RUNNER_OBJECT__ = class extends DurableObject {
|
|
114
|
-
/** Per-environment
|
|
115
|
-
#
|
|
120
|
+
/** Per-environment WebSockets */
|
|
121
|
+
#webSockets = /* @__PURE__ */ new Map();
|
|
116
122
|
/**
|
|
117
|
-
* Handles fetch requests to initialize a module runner for an environment.
|
|
118
123
|
* Creates a WebSocket pair for communication with the Vite dev server and initializes the ModuleRunner.
|
|
119
|
-
* @param request - The incoming fetch request
|
|
120
|
-
* @returns Response with WebSocket
|
|
121
|
-
* @throws Error if the path is invalid or the module runner is already initialized
|
|
122
124
|
*/
|
|
123
125
|
async fetch(request) {
|
|
124
126
|
const { pathname } = new URL(request.url);
|
|
@@ -126,16 +128,19 @@ var __VITE_RUNNER_OBJECT__ = class extends DurableObject {
|
|
|
126
128
|
const environmentName = request.headers.get(ENVIRONMENT_NAME_HEADER);
|
|
127
129
|
if (!environmentName) throw new Error(`__VITE_RUNNER_OBJECT__ received request without "${ENVIRONMENT_NAME_HEADER}" header`);
|
|
128
130
|
if (moduleRunners.has(environmentName)) throw new Error(`Module runner already initialized for environment: "${environmentName}"`);
|
|
129
|
-
if (request.headers.get(IS_PARENT_ENVIRONMENT_HEADER) === "true")
|
|
131
|
+
if (request.headers.get(IS_PARENT_ENVIRONMENT_HEADER) === "true") {
|
|
132
|
+
parentEnvironmentName = environmentName;
|
|
133
|
+
globalThis.__VITE_ENVIRONMENT_RUNNER_IMPORT__ = async (envName, id) => {
|
|
134
|
+
const runner = moduleRunners.get(envName);
|
|
135
|
+
if (!runner) throw new Error(`Module runner not initialized for environment: "${envName}". Do you need to set \`childEnvironments: ["${envName}"]\` in the plugin config?`);
|
|
136
|
+
return runInRunnerObject(this.env, () => runner.import(id));
|
|
137
|
+
};
|
|
138
|
+
}
|
|
130
139
|
const { 0: client, 1: server } = new WebSocketPair();
|
|
131
140
|
server.accept();
|
|
132
|
-
const
|
|
133
|
-
webSocket: server,
|
|
134
|
-
concurrentModuleNodePromises: /* @__PURE__ */ new Map()
|
|
135
|
-
};
|
|
136
|
-
this.#environments.set(environmentName, environmentState);
|
|
137
|
-
const moduleRunner = await createModuleRunner(this.env, environmentState.webSocket, environmentName);
|
|
141
|
+
const moduleRunner = await createModuleRunner(this.env, server, environmentName);
|
|
138
142
|
moduleRunners.set(environmentName, moduleRunner);
|
|
143
|
+
this.#webSockets.set(environmentName, server);
|
|
139
144
|
return new Response(null, {
|
|
140
145
|
status: 101,
|
|
141
146
|
webSocket: client
|
|
@@ -143,37 +148,22 @@ var __VITE_RUNNER_OBJECT__ = class extends DurableObject {
|
|
|
143
148
|
}
|
|
144
149
|
/**
|
|
145
150
|
* Sends data to the Vite dev server via the WebSocket for a specific environment.
|
|
146
|
-
* @param environmentName - The environment name
|
|
147
|
-
* @param data - The data to send as a string
|
|
148
|
-
* @throws Error if the WebSocket is not initialized
|
|
149
151
|
*/
|
|
150
152
|
send(environmentName, data) {
|
|
151
|
-
const
|
|
152
|
-
if (!
|
|
153
|
-
|
|
153
|
+
const webSocket = this.#webSockets.get(environmentName);
|
|
154
|
+
if (!webSocket) throw new Error(`Module runner not initialized for environment: "${environmentName}"`);
|
|
155
|
+
webSocket.send(data);
|
|
154
156
|
}
|
|
155
157
|
/**
|
|
156
|
-
*
|
|
157
|
-
*
|
|
158
|
-
*
|
|
159
|
-
* @param url - The module URL
|
|
160
|
-
* @param importer - The module's importer
|
|
161
|
-
* @returns The ID of the fetched module
|
|
158
|
+
* Executes a callback stored in the module-scope `pendingCallbacks` map.
|
|
159
|
+
* The callback runs in the DO's IoContext, ensuring all promises created
|
|
160
|
+
* during execution belong to the DO's shared context.
|
|
162
161
|
*/
|
|
163
|
-
async
|
|
164
|
-
const
|
|
165
|
-
if (!
|
|
166
|
-
const
|
|
167
|
-
|
|
168
|
-
let cached = environmentState.concurrentModuleNodePromises.get(url);
|
|
169
|
-
if (!cached) {
|
|
170
|
-
const cachedModule = moduleRunner.evaluatedModules.getModuleByUrl(url);
|
|
171
|
-
cached = moduleRunner.getModuleInformation(url, importer, cachedModule).finally(() => {
|
|
172
|
-
environmentState.concurrentModuleNodePromises.delete(url);
|
|
173
|
-
});
|
|
174
|
-
environmentState.concurrentModuleNodePromises.set(url, cached);
|
|
175
|
-
} else moduleRunner.debug?.("[module runner] using cached module info for", url);
|
|
176
|
-
return (await cached).id;
|
|
162
|
+
async executeCallback(id) {
|
|
163
|
+
const callback = pendingCallbacks.get(id);
|
|
164
|
+
if (!callback) throw new Error(`No pending callback with id ${id}`);
|
|
165
|
+
const result = await callback();
|
|
166
|
+
callbackResults.set(id, result);
|
|
177
167
|
}
|
|
178
168
|
};
|
|
179
169
|
/**
|
|
@@ -184,7 +174,7 @@ var __VITE_RUNNER_OBJECT__ = class extends DurableObject {
|
|
|
184
174
|
* @returns Configured module runner instance
|
|
185
175
|
*/
|
|
186
176
|
async function createModuleRunner(env, webSocket, environmentName) {
|
|
187
|
-
return new
|
|
177
|
+
return new ModuleRunner({
|
|
188
178
|
sourcemapInterceptor: "prepareStackTrace",
|
|
189
179
|
transport: {
|
|
190
180
|
connect({ onMessage }) {
|
|
@@ -214,6 +204,10 @@ async function createModuleRunner(env, webSocket, environmentName) {
|
|
|
214
204
|
hmr: true
|
|
215
205
|
}, {
|
|
216
206
|
async runInlinedModule(context, transformed, module) {
|
|
207
|
+
const originalDynamicImport = context[ssrDynamicImportKey];
|
|
208
|
+
context[ssrDynamicImportKey] = (dep) => {
|
|
209
|
+
return runInRunnerObject(env, () => originalDynamicImport(dep));
|
|
210
|
+
};
|
|
217
211
|
const code = `"use strict";async (${Object.keys(context).join(",")})=>{${transformed}}`;
|
|
218
212
|
await env.__VITE_UNSAFE_EVAL__.eval(code, module.id)(...Object.values(context));
|
|
219
213
|
Object.seal(context[ssrModuleExportsKey]);
|
|
@@ -228,44 +222,26 @@ async function createModuleRunner(env, webSocket, environmentName) {
|
|
|
228
222
|
}
|
|
229
223
|
return import(filepath);
|
|
230
224
|
}
|
|
231
|
-
}
|
|
225
|
+
});
|
|
232
226
|
}
|
|
233
227
|
/**
|
|
234
228
|
* Retrieves a specific export from a Worker entry module using the module runner.
|
|
235
|
-
* @param workerEntryPath - Path to the Worker entry module
|
|
236
|
-
* @param exportName - Name of the export to retrieve
|
|
237
|
-
* @returns The requested export value
|
|
238
|
-
* @throws Error if the module runner has not been initialized or the module does not define the requested export
|
|
239
229
|
*/
|
|
240
230
|
async function getWorkerEntryExport(workerEntryPath$1, exportName) {
|
|
241
231
|
if (!parentEnvironmentName) throw new Error(`Parent environment not initialized`);
|
|
242
|
-
const
|
|
243
|
-
if (!moduleRunner) throw new Error(`Module runner not initialized`);
|
|
244
|
-
const module = await moduleRunner.import(VIRTUAL_WORKER_ENTRY);
|
|
232
|
+
const module = await globalThis.__VITE_ENVIRONMENT_RUNNER_IMPORT__(parentEnvironmentName, VIRTUAL_WORKER_ENTRY);
|
|
245
233
|
const exportValue = typeof module === "object" && module !== null && exportName in module && module[exportName];
|
|
246
234
|
if (!exportValue) throw new Error(`"${workerEntryPath$1}" does not define a "${exportName}" export.`);
|
|
247
235
|
return exportValue;
|
|
248
236
|
}
|
|
249
|
-
async function getWorkerEntryExportTypes() {
|
|
250
|
-
if (!parentEnvironmentName) throw new Error(`Parent environment not initialized`);
|
|
251
|
-
const moduleRunner = moduleRunners.get(parentEnvironmentName);
|
|
252
|
-
if (!moduleRunner) throw new Error(`Module runner not initialized`);
|
|
253
|
-
const { getExportTypes } = await moduleRunner.import(VIRTUAL_EXPORT_TYPES);
|
|
254
|
-
return getExportTypes(await moduleRunner.import(VIRTUAL_WORKER_ENTRY));
|
|
255
|
-
}
|
|
256
237
|
/**
|
|
257
|
-
*
|
|
258
|
-
* @param environmentName - The name of the environment to import from
|
|
259
|
-
* @param id - The module ID to import
|
|
260
|
-
* @returns The imported module
|
|
261
|
-
* @throws Error if the environment's module runner has not been initialized
|
|
238
|
+
* Retrieves the export types of the Worker entry module.
|
|
262
239
|
*/
|
|
263
|
-
async function
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
return
|
|
240
|
+
async function getWorkerEntryExportTypes() {
|
|
241
|
+
if (!parentEnvironmentName) throw new Error(`Parent environment not initialized`);
|
|
242
|
+
const { getExportTypes } = await globalThis.__VITE_ENVIRONMENT_RUNNER_IMPORT__(parentEnvironmentName, VIRTUAL_EXPORT_TYPES);
|
|
243
|
+
return getExportTypes(await globalThis.__VITE_ENVIRONMENT_RUNNER_IMPORT__(parentEnvironmentName, VIRTUAL_WORKER_ENTRY));
|
|
267
244
|
}
|
|
268
|
-
globalThis.__VITE_ENVIRONMENT_RUNNER_IMPORT__ = importFromEnvironment;
|
|
269
245
|
|
|
270
246
|
//#endregion
|
|
271
247
|
//#region src/workers/runner-worker/index.ts
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
//#region ../../node_modules/.pnpm/vite@7.1.12_@types+node@
|
|
1
|
+
//#region ../../node_modules/.pnpm/vite@7.1.12_@types+node@22.15.17_jiti@2.6.1_lightningcss@1.32.0_tsx@4.21.0_yaml@2.8.1/node_modules/vite/dist/node/module-runner.js
|
|
2
2
|
let SOURCEMAPPING_URL = "sourceMa";
|
|
3
3
|
SOURCEMAPPING_URL += "ppingURL";
|
|
4
4
|
const isWindows = typeof process < "u" && process.platform === "win32";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
//#region ../../node_modules/.pnpm/vite@8.0.
|
|
1
|
+
//#region ../../node_modules/.pnpm/vite@8.0.1_@types+node@22.15.17_esbuild@0.27.3_jiti@2.6.1_tsx@4.21.0_yaml@2.8.1/node_modules/vite/dist/node/module-runner.js
|
|
2
2
|
let SOURCEMAPPING_URL = "sourceMa";
|
|
3
3
|
SOURCEMAPPING_URL += "ppingURL";
|
|
4
4
|
const isWindows = typeof process < "u" && process.platform === "win32";
|
|
@@ -500,7 +500,7 @@ function analyzeImportedModDifference(mod, rawId, moduleType, metadata) {
|
|
|
500
500
|
let missingBindings = metadata.importedNames.filter((s) => !(s in mod));
|
|
501
501
|
if (missingBindings.length) {
|
|
502
502
|
let lastBinding = missingBindings[missingBindings.length - 1];
|
|
503
|
-
throw moduleType === "module" ?
|
|
503
|
+
throw SyntaxError(moduleType === "module" ? `[vite] The requested module '${rawId}' does not provide an export named '${lastBinding}'` : `\
|
|
504
504
|
[vite] Named export '${lastBinding}' not found. The requested module '${rawId}' is a CommonJS module, which may not support all module.exports as named exports.
|
|
505
505
|
CommonJS modules can always be imported via the default export, for example using:
|
|
506
506
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudflare/vite-plugin",
|
|
3
|
-
"version": "1.30.
|
|
3
|
+
"version": "1.30.2",
|
|
4
4
|
"description": "Cloudflare plugin for Vite",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cloudflare",
|
|
@@ -39,8 +39,8 @@
|
|
|
39
39
|
"unenv": "2.0.0-rc.24",
|
|
40
40
|
"ws": "8.18.0",
|
|
41
41
|
"@cloudflare/unenv-preset": "2.16.0",
|
|
42
|
-
"miniflare": "4.20260317.
|
|
43
|
-
"wrangler": "4.
|
|
42
|
+
"miniflare": "4.20260317.3",
|
|
43
|
+
"wrangler": "4.78.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@cloudflare/workers-types": "^4.20260317.1",
|
|
@@ -60,16 +60,16 @@
|
|
|
60
60
|
"typescript": "~5.8.3",
|
|
61
61
|
"vite": "^8.0.0",
|
|
62
62
|
"vite-legacy": "npm:vite@7.1.12",
|
|
63
|
-
"vitest": "
|
|
64
|
-
"@cloudflare/containers-shared": "0.13.
|
|
63
|
+
"vitest": "4.1.0",
|
|
64
|
+
"@cloudflare/containers-shared": "0.13.1",
|
|
65
65
|
"@cloudflare/workers-shared": "0.19.1",
|
|
66
|
+
"@cloudflare/mock-npm-registry": "0.0.0",
|
|
66
67
|
"@cloudflare/workers-tsconfig": "0.0.0",
|
|
67
|
-
"@cloudflare/workers-utils": "0.
|
|
68
|
-
"@cloudflare/mock-npm-registry": "0.0.0"
|
|
68
|
+
"@cloudflare/workers-utils": "0.14.0"
|
|
69
69
|
},
|
|
70
70
|
"peerDependencies": {
|
|
71
71
|
"vite": "^6.1.0 || ^7.0.0 || ^8.0.0",
|
|
72
|
-
"wrangler": "^4.
|
|
72
|
+
"wrangler": "^4.78.0"
|
|
73
73
|
},
|
|
74
74
|
"workers-sdk": {
|
|
75
75
|
"prerelease": true
|