@cloudflare/vite-plugin 0.1.9 → 0.1.11
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/README.md +9 -0
- package/dist/asset-workers/asset-worker.js +1151 -1018
- package/dist/asset-workers/router-worker.js +593 -594
- package/dist/index.js +56 -52
- package/package.json +7 -7
package/dist/index.js
CHANGED
|
@@ -1552,7 +1552,7 @@ function getDevMiniflareOptions(resolvedPluginConfig, viteDevServer) {
|
|
|
1552
1552
|
}
|
|
1553
1553
|
}
|
|
1554
1554
|
];
|
|
1555
|
-
const
|
|
1555
|
+
const workersFromConfig = resolvedPluginConfig.type === "workers" ? Object.entries(resolvedPluginConfig.workers).map(
|
|
1556
1556
|
([environmentName, workerConfig]) => {
|
|
1557
1557
|
const miniflareWorkerOptions = unstable_getMiniflareWorkerOptions(
|
|
1558
1558
|
{
|
|
@@ -1561,51 +1561,58 @@ function getDevMiniflareOptions(resolvedPluginConfig, viteDevServer) {
|
|
|
1561
1561
|
},
|
|
1562
1562
|
resolvedPluginConfig.cloudflareEnv
|
|
1563
1563
|
);
|
|
1564
|
+
const { externalWorkers: externalWorkers2 } = miniflareWorkerOptions;
|
|
1564
1565
|
const { ratelimits, ...workerOptions } = miniflareWorkerOptions.workerOptions;
|
|
1565
1566
|
return {
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
|
|
1581
|
-
|
|
1582
|
-
|
|
1583
|
-
|
|
1584
|
-
|
|
1585
|
-
|
|
1586
|
-
|
|
1587
|
-
|
|
1588
|
-
|
|
1589
|
-
|
|
1590
|
-
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
|
|
1599
|
-
|
|
1567
|
+
externalWorkers: externalWorkers2,
|
|
1568
|
+
worker: {
|
|
1569
|
+
...workerOptions,
|
|
1570
|
+
name: workerOptions.name ?? workerConfig.name,
|
|
1571
|
+
modulesRoot: miniflareModulesRoot,
|
|
1572
|
+
unsafeEvalBinding: "__VITE_UNSAFE_EVAL__",
|
|
1573
|
+
bindings: {
|
|
1574
|
+
...workerOptions.bindings,
|
|
1575
|
+
__VITE_ROOT__: resolvedViteConfig.root,
|
|
1576
|
+
__VITE_ENTRY_PATH__: workerConfig.main
|
|
1577
|
+
},
|
|
1578
|
+
serviceBindings: {
|
|
1579
|
+
...workerOptions.serviceBindings,
|
|
1580
|
+
...environmentName === resolvedPluginConfig.entryWorkerEnvironmentName && workerConfig.assets?.binding ? {
|
|
1581
|
+
[workerConfig.assets.binding]: ASSET_WORKER_NAME
|
|
1582
|
+
} : {},
|
|
1583
|
+
__VITE_INVOKE_MODULE__: async (request) => {
|
|
1584
|
+
const payload = await request.json();
|
|
1585
|
+
const invokePayloadData = payload.data;
|
|
1586
|
+
assert4(
|
|
1587
|
+
invokePayloadData.name === "fetchModule",
|
|
1588
|
+
`Invalid invoke event: ${invokePayloadData.name}`
|
|
1589
|
+
);
|
|
1590
|
+
const [moduleId] = invokePayloadData.data;
|
|
1591
|
+
const moduleRE = new RegExp(MODULE_PATTERN);
|
|
1592
|
+
const shouldExternalize = (
|
|
1593
|
+
// Worker modules (CompiledWasm, Text, Data)
|
|
1594
|
+
moduleRE.test(moduleId)
|
|
1595
|
+
);
|
|
1596
|
+
if (shouldExternalize) {
|
|
1597
|
+
const result2 = {
|
|
1598
|
+
externalize: moduleId,
|
|
1599
|
+
type: "module"
|
|
1600
|
+
};
|
|
1601
|
+
return MiniflareResponse.json({ result: result2 });
|
|
1602
|
+
}
|
|
1603
|
+
const devEnvironment = viteDevServer.environments[environmentName];
|
|
1604
|
+
const result = await devEnvironment.hot.handleInvoke(payload);
|
|
1605
|
+
return MiniflareResponse.json(result);
|
|
1600
1606
|
}
|
|
1601
|
-
const devEnvironment = viteDevServer.environments[environmentName];
|
|
1602
|
-
const result = await devEnvironment.hot.handleInvoke(payload);
|
|
1603
|
-
return MiniflareResponse.json(result);
|
|
1604
1607
|
}
|
|
1605
1608
|
}
|
|
1606
1609
|
};
|
|
1607
1610
|
}
|
|
1608
1611
|
) : [];
|
|
1612
|
+
const userWorkers = workersFromConfig.map((options) => options.worker);
|
|
1613
|
+
const externalWorkers = workersFromConfig.flatMap(
|
|
1614
|
+
(options) => options.externalWorkers
|
|
1615
|
+
);
|
|
1609
1616
|
const workerToWorkerEntrypointNamesMap = getWorkerToWorkerEntrypointNamesMap(userWorkers);
|
|
1610
1617
|
const workerToDurableObjectClassNamesMap = getWorkerToDurableObjectClassNamesMap(userWorkers);
|
|
1611
1618
|
const workerToWorkflowEntrypointClassNamesMap = getWorkerToWorkflowEntrypointClassNamesMap(userWorkers);
|
|
@@ -1625,6 +1632,7 @@ function getDevMiniflareOptions(resolvedPluginConfig, viteDevServer) {
|
|
|
1625
1632
|
),
|
|
1626
1633
|
workers: [
|
|
1627
1634
|
...assetWorkers,
|
|
1635
|
+
...externalWorkers,
|
|
1628
1636
|
...userWorkers.map((workerOptions) => {
|
|
1629
1637
|
const wrappers = [
|
|
1630
1638
|
`import { createWorkerEntrypointWrapper, createDurableObjectWrapper, createWorkflowEntrypointWrapper } from '${RUNNER_PATH}';`,
|
|
@@ -1740,15 +1748,18 @@ function getPreviewMiniflareOptions(vitePreviewServer, persistState) {
|
|
|
1740
1748
|
const workerConfigs = configPaths.map(
|
|
1741
1749
|
(configPath) => unstable_readConfig({ config: configPath })
|
|
1742
1750
|
);
|
|
1743
|
-
const workers = workerConfigs.
|
|
1751
|
+
const workers = workerConfigs.flatMap((config) => {
|
|
1744
1752
|
const miniflareWorkerOptions = unstable_getMiniflareWorkerOptions(config);
|
|
1753
|
+
const { externalWorkers } = miniflareWorkerOptions;
|
|
1745
1754
|
const { ratelimits, modulesRules, ...workerOptions } = miniflareWorkerOptions.workerOptions;
|
|
1746
|
-
return
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
|
|
1750
|
-
|
|
1751
|
-
|
|
1755
|
+
return [
|
|
1756
|
+
{
|
|
1757
|
+
...workerOptions,
|
|
1758
|
+
name: workerOptions.name ?? config.name,
|
|
1759
|
+
...miniflareWorkerOptions.main ? getPreviewModules(miniflareWorkerOptions.main, modulesRules) : { modules: true, script: "" }
|
|
1760
|
+
},
|
|
1761
|
+
...externalWorkers
|
|
1762
|
+
];
|
|
1752
1763
|
});
|
|
1753
1764
|
const logger = new ViteMiniflareLogger(resolvedViteConfig);
|
|
1754
1765
|
return {
|
|
@@ -8752,11 +8763,6 @@ function isNodeCompat(workerConfig) {
|
|
|
8752
8763
|
if (nodeCompatMode === "v2") {
|
|
8753
8764
|
return true;
|
|
8754
8765
|
}
|
|
8755
|
-
if (nodeCompatMode === "legacy") {
|
|
8756
|
-
throw new Error(
|
|
8757
|
-
"Unsupported Node.js compat mode (legacy). Remove the `node_compat` setting and add the `nodejs_compat` flag instead."
|
|
8758
|
-
);
|
|
8759
|
-
}
|
|
8760
8766
|
if (nodeCompatMode === "v1") {
|
|
8761
8767
|
throw new Error(
|
|
8762
8768
|
`Unsupported Node.js compat mode (v1). Only the v2 mode is supported, either change your compat date to "2024-09-23" or later, or set the "nodejs_compat_v2" compatibility flag`
|
|
@@ -8863,7 +8869,6 @@ var nonApplicableWorkerConfigs = {
|
|
|
8863
8869
|
"build",
|
|
8864
8870
|
"find_additional_modules",
|
|
8865
8871
|
"no_bundle",
|
|
8866
|
-
"node_compat",
|
|
8867
8872
|
"preserve_file_names",
|
|
8868
8873
|
"site",
|
|
8869
8874
|
"tsconfig",
|
|
@@ -8880,7 +8885,6 @@ var nullableNonApplicable = [
|
|
|
8880
8885
|
"find_additional_modules",
|
|
8881
8886
|
"minify",
|
|
8882
8887
|
"no_bundle",
|
|
8883
|
-
"node_compat",
|
|
8884
8888
|
"preserve_file_names",
|
|
8885
8889
|
"site",
|
|
8886
8890
|
"tsconfig",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudflare/vite-plugin",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.11",
|
|
4
4
|
"description": "Cloudflare plugin for Vite",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cloudflare",
|
|
@@ -38,10 +38,11 @@
|
|
|
38
38
|
"tinyglobby": "^0.2.12",
|
|
39
39
|
"unenv": "2.0.0-rc.1",
|
|
40
40
|
"ws": "8.18.0",
|
|
41
|
-
"miniflare": "
|
|
41
|
+
"miniflare": "4.20250310.0",
|
|
42
|
+
"wrangler": "4.0.0"
|
|
42
43
|
},
|
|
43
44
|
"devDependencies": {
|
|
44
|
-
"@cloudflare/workers-types": "^4.
|
|
45
|
+
"@cloudflare/workers-types": "^4.20250310.0",
|
|
45
46
|
"@types/node": "^22.10.1",
|
|
46
47
|
"@types/ws": "^8.5.13",
|
|
47
48
|
"magic-string": "^0.30.12",
|
|
@@ -52,9 +53,8 @@
|
|
|
52
53
|
"vite": "^6.1.0",
|
|
53
54
|
"vitest": "~3.0.5",
|
|
54
55
|
"@cloudflare/mock-npm-registry": "0.0.0",
|
|
55
|
-
"@cloudflare/workers-shared": "0.
|
|
56
|
-
"@cloudflare/workers-tsconfig": "0.0.0"
|
|
57
|
-
"wrangler": "3.113.0"
|
|
56
|
+
"@cloudflare/workers-shared": "0.16.0",
|
|
57
|
+
"@cloudflare/workers-tsconfig": "0.0.0"
|
|
58
58
|
},
|
|
59
59
|
"peerDependencies": {
|
|
60
60
|
"vite": "^6.1.0",
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
"check:type": "tsc --build",
|
|
72
72
|
"dev": "tsup --watch",
|
|
73
73
|
"test": "vitest run",
|
|
74
|
-
"test:ci": "pnpm test
|
|
74
|
+
"test:ci": "pnpm test",
|
|
75
75
|
"test:e2e": "vitest run -c e2e/vitest.config.ts",
|
|
76
76
|
"test:watch": "vitest"
|
|
77
77
|
}
|