From cff91ff4bbbfcc2b59eb9b0d26b5ae8188823197 Mon Sep 17 00:00:00 2001 From: James Opstad <13586373+jamesopstad@users.noreply.github.com> Date: Tue, 17 Mar 2026 14:54:50 +0000 Subject: [PATCH 1/4] Use Vite 8 for building the plugin and as the default for running tests (#12936) --- .changeset/kind-beers-occur.md | 7 + .github/workflows/vite-plugin-playgrounds.yml | 12 +- .../misc/test/defines.test.ts | 2 +- .../vitest-pool-workers-examples/package.json | 2 +- package.json | 4 +- .../e2e/fixtures/basic/package.json | 4 +- .../e2e/fixtures/dynamic/package.json | 2 +- .../package.json | 2 +- .../invalid-wrangler-version/package.json | 2 +- .../package.json | 2 +- .../dependency-import/package.json | 2 +- .../direct-import/package.json | 2 +- .../package.json | 2 +- .../remote-bindings-disabled/package.json | 2 +- .../package.json | 2 +- .../e2e/fixtures/remote-bindings/package.json | 2 +- .../e2e/fixtures/unresolved-main/package.json | 2 +- packages/vite-plugin-cloudflare/package.json | 1 + .../playground/partyserver/package.json | 6 +- .../playground/react-spa/package.json | 2 +- .../playground/spa-with-api/package.json | 2 +- .../src/cloudflare-environment.ts | 2 - .../src/miniflare-options.ts | 34 +- .../src/plugins/nodejs-compat.ts | 1 - .../vite-plugin-cloudflare/tsdown.config.ts | 13 +- pnpm-lock.yaml | 1199 +++++++++++------ pnpm-workspace.yaml | 6 +- 27 files changed, 893 insertions(+), 426 deletions(-) create mode 100644 .changeset/kind-beers-occur.md diff --git a/.changeset/kind-beers-occur.md b/.changeset/kind-beers-occur.md new file mode 100644 index 000000000000..175251c6459a --- /dev/null +++ b/.changeset/kind-beers-occur.md @@ -0,0 +1,7 @@ +--- +"@cloudflare/vite-plugin": patch +--- + +Select the appropriate `vite/module-runner` implementation during dev based on the user's Vite version + +The plugin now builds against Vite 8 and ships two bundled copies of `vite/module-runner`: one from Vite 8 and one from Vite 7.1.12 (the last version before a breaking change to the module runner in Vite 7.2.0). At dev server startup, the correct implementation is selected based on the user's installed Vite version. This is Vite 8's module runner for users on Vite >= 7.2.0, and the legacy module runner for users on older versions. diff --git a/.github/workflows/vite-plugin-playgrounds.yml b/.github/workflows/vite-plugin-playgrounds.yml index 756448ca4881..67094905b1aa 100644 --- a/.github/workflows/vite-plugin-playgrounds.yml +++ b/.github/workflows/vite-plugin-playgrounds.yml @@ -23,12 +23,12 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, macos-latest, windows-latest] - vite: ["vite-7"] + vite: ["vite-8"] include: - os: ubuntu-latest vite: "vite-6" - os: ubuntu-latest - vite: vite-8 + vite: "vite-7" runs-on: ${{ matrix.os }} steps: - name: Checkout Repo @@ -59,11 +59,11 @@ jobs: - name: Downgrade to Vite 6 if: steps.changes.outputs.everything_but_markdown == 'true' && matrix.vite == 'vite-6' run: | - pnpm update -r --no-save vite@6.4.1 - - name: Upgrade to Vite 8 - if: steps.changes.outputs.everything_but_markdown == 'true' && matrix.vite == 'vite-8' + pnpm update -r --no-save vite@^6.1.0 + - name: Downgrade to Vite 7 + if: steps.changes.outputs.everything_but_markdown == 'true' && matrix.vite == 'vite-7' run: | - pnpm update -r --no-save vite@^8.0.0 + pnpm update -r --no-save vite@^7.0.0 - name: Run dev playground tests if: steps.changes.outputs.everything_but_markdown == 'true' # We use `--only` to prevent TurboRepo from rebuilding dependencies diff --git a/fixtures/vitest-pool-workers-examples/misc/test/defines.test.ts b/fixtures/vitest-pool-workers-examples/misc/test/defines.test.ts index 9047a892f949..9eb8e640a2f3 100644 --- a/fixtures/vitest-pool-workers-examples/misc/test/defines.test.ts +++ b/fixtures/vitest-pool-workers-examples/misc/test/defines.test.ts @@ -9,5 +9,5 @@ it("replaces defines from wrangler.toml", async ({ expect }) => { it("replaces defines from vitest.config.mts", async ({ expect }) => { expect(CONFIG_DEFINED_THING).toBe("thing"); expect(CONFIG_NESTED.DEFINED.THING).toStrictEqual([1, 2, 3]); - expect(CONFIG_NESTED.DEFINED.THING).toBe(CONFIG_NESTED.DEFINED.THING); + // Note that, unlike ESBuild, Oxc does not share object references when using `define` (https://oxc.rs/docs/guide/usage/transformer/global-variable-replacement#define) }); diff --git a/fixtures/vitest-pool-workers-examples/package.json b/fixtures/vitest-pool-workers-examples/package.json index 3e540d8bc60e..a714eedd3eca 100644 --- a/fixtures/vitest-pool-workers-examples/package.json +++ b/fixtures/vitest-pool-workers-examples/package.json @@ -29,7 +29,7 @@ "stripe": "^20.0.0", "toucan-js": "4.0.0", "typescript": "catalog:default", - "vite": "catalog:default", + "vite": "catalog:vitest-4", "vitest": "catalog:default", "wrangler": "workspace:*" }, diff --git a/package.json b/package.json index c57cbd99f5c9..2624c7134068 100644 --- a/package.json +++ b/package.json @@ -78,8 +78,8 @@ "@cloudflare/elements>@types/react": "^18", "@types/node": "$@types/node", "@types/node>undici-types": "catalog:default", - "vitest@4>vite": "catalog:vite-plugin", - "vitest@3>vite": "^5.0.0" + "vitest@4>vite": "catalog:vitest-4", + "vitest@3>vite": "catalog:vitest-3" }, "patchedDependencies": { "@cloudflare/component-listbox@1.10.6": "patches/@cloudflare__component-listbox@1.10.6.patch", diff --git a/packages/vite-plugin-cloudflare/e2e/fixtures/basic/package.json b/packages/vite-plugin-cloudflare/e2e/fixtures/basic/package.json index f8dbac8ee1c2..66b48bef2614 100644 --- a/packages/vite-plugin-cloudflare/e2e/fixtures/basic/package.json +++ b/packages/vite-plugin-cloudflare/e2e/fixtures/basic/package.json @@ -20,14 +20,14 @@ "@eslint/js": "^9.19.0", "@types/react": "19.1.0", "@types/react-dom": "19.1.0", - "@vitejs/plugin-react": "^4.7.0", + "@vitejs/plugin-react": "^5.2.0", "eslint": "^9.19.0", "eslint-plugin-react-hooks": "^5.0.0", "eslint-plugin-react-refresh": "^0.4.18", "globals": "^15.14.0", "typescript": "~5.7.2", "typescript-eslint": "^8.22.0", - "vite": "^7.0.0", + "vite": "^8.0.0", "wrangler": "*" } } diff --git a/packages/vite-plugin-cloudflare/e2e/fixtures/dynamic/package.json b/packages/vite-plugin-cloudflare/e2e/fixtures/dynamic/package.json index 7429e1e93146..fc481c9dfe7b 100644 --- a/packages/vite-plugin-cloudflare/e2e/fixtures/dynamic/package.json +++ b/packages/vite-plugin-cloudflare/e2e/fixtures/dynamic/package.json @@ -20,7 +20,7 @@ "globals": "^15.14.0", "typescript": "~5.7.2", "typescript-eslint": "^8.22.0", - "vite": "^7.0.0", + "vite": "^8.0.0", "wrangler": "*" } } diff --git a/packages/vite-plugin-cloudflare/e2e/fixtures/invalid-worker-environment-options/package.json b/packages/vite-plugin-cloudflare/e2e/fixtures/invalid-worker-environment-options/package.json index a81da2a7a630..0b827037b518 100644 --- a/packages/vite-plugin-cloudflare/e2e/fixtures/invalid-worker-environment-options/package.json +++ b/packages/vite-plugin-cloudflare/e2e/fixtures/invalid-worker-environment-options/package.json @@ -7,7 +7,7 @@ }, "devDependencies": { "@cloudflare/vite-plugin": "*", - "vite": "^7.0.0", + "vite": "^8.0.0", "wrangler": "*" } } diff --git a/packages/vite-plugin-cloudflare/e2e/fixtures/invalid-wrangler-version/package.json b/packages/vite-plugin-cloudflare/e2e/fixtures/invalid-wrangler-version/package.json index 522302c00438..a9a6e8563899 100644 --- a/packages/vite-plugin-cloudflare/e2e/fixtures/invalid-wrangler-version/package.json +++ b/packages/vite-plugin-cloudflare/e2e/fixtures/invalid-wrangler-version/package.json @@ -20,7 +20,7 @@ "globals": "^15.14.0", "typescript": "~5.7.2", "typescript-eslint": "^8.22.0", - "vite": "^6.1.0", + "vite": "^8.0.0", "wrangler": "4.20.0" } } diff --git a/packages/vite-plugin-cloudflare/e2e/fixtures/no-wrangler-config-for-auxiliary-worker/package.json b/packages/vite-plugin-cloudflare/e2e/fixtures/no-wrangler-config-for-auxiliary-worker/package.json index 9743e359b974..22380a04c814 100644 --- a/packages/vite-plugin-cloudflare/e2e/fixtures/no-wrangler-config-for-auxiliary-worker/package.json +++ b/packages/vite-plugin-cloudflare/e2e/fixtures/no-wrangler-config-for-auxiliary-worker/package.json @@ -8,7 +8,7 @@ }, "devDependencies": { "@cloudflare/vite-plugin": "*", - "vite": "^7.0.0", + "vite": "^8.0.0", "wrangler": "*" } } diff --git a/packages/vite-plugin-cloudflare/e2e/fixtures/nodejs-compat-warnings/dependency-import/package.json b/packages/vite-plugin-cloudflare/e2e/fixtures/nodejs-compat-warnings/dependency-import/package.json index c146bc0d0727..5d78d08b8069 100644 --- a/packages/vite-plugin-cloudflare/e2e/fixtures/nodejs-compat-warnings/dependency-import/package.json +++ b/packages/vite-plugin-cloudflare/e2e/fixtures/nodejs-compat-warnings/dependency-import/package.json @@ -10,7 +10,7 @@ }, "devDependencies": { "@cloudflare/vite-plugin": "*", - "vite": "^7.0.0", + "vite": "^8.0.0", "wrangler": "*" } } diff --git a/packages/vite-plugin-cloudflare/e2e/fixtures/nodejs-compat-warnings/direct-import/package.json b/packages/vite-plugin-cloudflare/e2e/fixtures/nodejs-compat-warnings/direct-import/package.json index c80d9306d3a3..64009ca8700d 100644 --- a/packages/vite-plugin-cloudflare/e2e/fixtures/nodejs-compat-warnings/direct-import/package.json +++ b/packages/vite-plugin-cloudflare/e2e/fixtures/nodejs-compat-warnings/direct-import/package.json @@ -7,7 +7,7 @@ }, "devDependencies": { "@cloudflare/vite-plugin": "*", - "vite": "^7.0.0", + "vite": "^8.0.0", "wrangler": "*" } } diff --git a/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings-config-account-id/package.json b/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings-config-account-id/package.json index b06a0a400ad4..6b24dc62f728 100644 --- a/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings-config-account-id/package.json +++ b/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings-config-account-id/package.json @@ -21,7 +21,7 @@ "miniflare": "*", "typescript": "~5.7.2", "typescript-eslint": "^8.22.0", - "vite": "^7.0.0", + "vite": "^8.0.0", "wrangler": "*" } } diff --git a/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings-disabled/package.json b/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings-disabled/package.json index ca71628296e2..051cd534b3b3 100644 --- a/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings-disabled/package.json +++ b/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings-disabled/package.json @@ -20,7 +20,7 @@ "globals": "^15.14.0", "typescript": "~5.7.2", "typescript-eslint": "^8.22.0", - "vite": "^7.0.0", + "vite": "^8.0.0", "wrangler": "*" } } diff --git a/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings-incorrect-r2-config/package.json b/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings-incorrect-r2-config/package.json index 2b3300a630ab..4d4d7d5378e4 100644 --- a/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings-incorrect-r2-config/package.json +++ b/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings-incorrect-r2-config/package.json @@ -20,7 +20,7 @@ "globals": "^15.14.0", "typescript": "~5.7.2", "typescript-eslint": "^8.22.0", - "vite": "^7.0.0", + "vite": "^8.0.0", "wrangler": "*" } } diff --git a/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings/package.json b/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings/package.json index 689543d48bab..8103274e3669 100644 --- a/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings/package.json +++ b/packages/vite-plugin-cloudflare/e2e/fixtures/remote-bindings/package.json @@ -20,7 +20,7 @@ "globals": "^15.14.0", "typescript": "~5.7.2", "typescript-eslint": "^8.22.0", - "vite": "^7.0.0", + "vite": "^8.0.0", "wrangler": "*" } } diff --git a/packages/vite-plugin-cloudflare/e2e/fixtures/unresolved-main/package.json b/packages/vite-plugin-cloudflare/e2e/fixtures/unresolved-main/package.json index d6fb30d581e4..605f2ad1dde9 100644 --- a/packages/vite-plugin-cloudflare/e2e/fixtures/unresolved-main/package.json +++ b/packages/vite-plugin-cloudflare/e2e/fixtures/unresolved-main/package.json @@ -7,7 +7,7 @@ }, "devDependencies": { "@cloudflare/vite-plugin": "*", - "vite": "^7.0.0", + "vite": "^8.0.0", "wrangler": "*" } } diff --git a/packages/vite-plugin-cloudflare/package.json b/packages/vite-plugin-cloudflare/package.json index 8f7e3a134901..5e6c29600683 100644 --- a/packages/vite-plugin-cloudflare/package.json +++ b/packages/vite-plugin-cloudflare/package.json @@ -71,6 +71,7 @@ "tsdown": "0.16.3", "typescript": "catalog:default", "vite": "catalog:vite-plugin", + "vite-legacy": "npm:vite@7.1.12", "vitest": "catalog:vitest-3" }, "peerDependencies": { diff --git a/packages/vite-plugin-cloudflare/playground/partyserver/package.json b/packages/vite-plugin-cloudflare/playground/partyserver/package.json index 440dd81d57ed..8de10a77b16a 100644 --- a/packages/vite-plugin-cloudflare/playground/partyserver/package.json +++ b/packages/vite-plugin-cloudflare/playground/partyserver/package.json @@ -9,8 +9,8 @@ "preview": "vite preview" }, "dependencies": { - "partyserver": "^0.0.64", - "partysocket": "^1.0.3", + "partyserver": "^0.3.3", + "partysocket": "^1.1.16", "react": "^19.2.1", "react-dom": "^19.2.1" }, @@ -21,7 +21,7 @@ "@tailwindcss/vite": "^4.0.15", "@types/react": "19.1.0", "@types/react-dom": "19.1.0", - "@vitejs/plugin-react": "^4.7.0", + "@vitejs/plugin-react": "^5.2.0", "tailwindcss": "^4.0.15", "typescript": "catalog:default", "vite": "catalog:vite-plugin", diff --git a/packages/vite-plugin-cloudflare/playground/react-spa/package.json b/packages/vite-plugin-cloudflare/playground/react-spa/package.json index fc60e8e2ecfc..cfed635a2cf5 100644 --- a/packages/vite-plugin-cloudflare/playground/react-spa/package.json +++ b/packages/vite-plugin-cloudflare/playground/react-spa/package.json @@ -19,7 +19,7 @@ "@cloudflare/workers-types": "catalog:default", "@types/react": "19.1.0", "@types/react-dom": "19.1.0", - "@vitejs/plugin-react": "^4.7.0", + "@vitejs/plugin-react": "^5.2.0", "typescript": "catalog:default", "vite": "catalog:vite-plugin", "wrangler": "workspace:*" diff --git a/packages/vite-plugin-cloudflare/playground/spa-with-api/package.json b/packages/vite-plugin-cloudflare/playground/spa-with-api/package.json index a225edafe30c..0e21ffecf6a4 100644 --- a/packages/vite-plugin-cloudflare/playground/spa-with-api/package.json +++ b/packages/vite-plugin-cloudflare/playground/spa-with-api/package.json @@ -26,7 +26,7 @@ "@types/react": "19.1.0", "@types/react-dom": "19.1.0", "@vitejs/plugin-basic-ssl": "^2.0.0", - "@vitejs/plugin-react": "^4.7.0", + "@vitejs/plugin-react": "^5.2.0", "typescript": "catalog:default", "vite": "catalog:vite-plugin", "wrangler": "workspace:*" diff --git a/packages/vite-plugin-cloudflare/src/cloudflare-environment.ts b/packages/vite-plugin-cloudflare/src/cloudflare-environment.ts index fc22adf10808..672bb89131ac 100644 --- a/packages/vite-plugin-cloudflare/src/cloudflare-environment.ts +++ b/packages/vite-plugin-cloudflare/src/cloudflare-environment.ts @@ -291,7 +291,6 @@ export function createCloudflareEnvironmentOptions({ noDiscovery: false, // Workaround for https://github.com/vitejs/vite/issues/20867 // Longer term solution is to use full-bundle mode rather than `optimizeDeps` - // @ts-expect-error - option added in Vite 7.3.1 ignoreOutdatedRequests: true, // We need to normalize the path as it is treated as a glob and backslashes are therefore treated as escape characters. entries: vite.normalizePath(workerConfig.main), @@ -316,7 +315,6 @@ export function createCloudflareEnvironmentOptions({ }, plugins: [ // In Vite 8, `require` calls are not automatically replaced when the format is ESM and `platform` is `neutral` - // @ts-expect-error: added in Vite 8 vite.esmExternalRequirePlugin({ external: [nodeBuiltinsRE], skipDuplicateCheck: true, diff --git a/packages/vite-plugin-cloudflare/src/miniflare-options.ts b/packages/vite-plugin-cloudflare/src/miniflare-options.ts index d6e846d6e000..c6974aba80be 100644 --- a/packages/vite-plugin-cloudflare/src/miniflare-options.ts +++ b/packages/vite-plugin-cloudflare/src/miniflare-options.ts @@ -29,7 +29,7 @@ import { getContainerOptions, getDockerPath } from "./containers"; import { getInputInspectorPort } from "./debug"; import { additionalModuleRE } from "./plugins/additional-modules"; import { ENVIRONMENT_NAME_HEADER } from "./shared"; -import { withTrailingSlash } from "./utils"; +import { satisfiesViteVersion, withTrailingSlash } from "./utils"; import type { CloudflareDevEnvironment } from "./cloudflare-environment"; import type { ContainerTagToOptionsMap } from "./containers"; import type { @@ -80,10 +80,13 @@ function getPersistenceRoot( // to paths ensures correct names. This requires us to specify `contents` in // the miniflare module definitions though, as the new paths don't exist. const miniflareModulesRoot = process.platform === "win32" ? "Z:\\" : "/"; -const ROUTER_WORKER_PATH = "./workers/router-worker.js"; -const ASSET_WORKER_PATH = "./workers/asset-worker.js"; -const VITE_PROXY_WORKER_PATH = "./workers/vite-proxy-worker.js"; -const RUNNER_PATH = "./workers/runner-worker.js"; +const ROUTER_WORKER_PATH = "./workers/router-worker/index.js"; +const ASSET_WORKER_PATH = "./workers/asset-worker/index.js"; +const VITE_PROXY_WORKER_PATH = "./workers/vite-proxy-worker/index.js"; +const RUNNER_PATH = "./workers/runner-worker/index.js"; +const MODULE_RUNNER_PATH = "./workers/runner-worker/module-runner.js"; +const MODULE_RUNNER_LEGACY_PATH = + "./workers/runner-worker/module-runner-legacy.js"; const WRAPPER_PATH = "__VITE_WORKER_ENTRY__"; /** Map that maps worker configPaths to their existing remote proxy session data (if any) */ @@ -347,6 +350,27 @@ export async function getDevMiniflareOptions( fileURLToPath(new URL(RUNNER_PATH, import.meta.url)) ), }, + // A breaking change to the module runner was introduced in + // https://github.com/vitejs/vite/pull/20924 and released in Vite 7.2.0. + // We ship two bundled copies of vite/module-runner and select the + // appropriate one based on the user's installed Vite version. + { + type: "ESModule", + path: path.join( + miniflareModulesRoot, + "workers/runner-worker/vite/module-runner" + ), + contents: fs.readFileSync( + fileURLToPath( + new URL( + satisfiesViteVersion("7.2.0") + ? MODULE_RUNNER_PATH + : MODULE_RUNNER_LEGACY_PATH, + import.meta.url + ) + ) + ), + }, ], unsafeUseModuleFallbackService: true, unsafeInspectorProxy: inputInspectorPort !== false, diff --git a/packages/vite-plugin-cloudflare/src/plugins/nodejs-compat.ts b/packages/vite-plugin-cloudflare/src/plugins/nodejs-compat.ts index 36bf907bf186..986457399f95 100644 --- a/packages/vite-plugin-cloudflare/src/plugins/nodejs-compat.ts +++ b/packages/vite-plugin-cloudflare/src/plugins/nodejs-compat.ts @@ -50,7 +50,6 @@ export const nodeJsCompatPlugin = createPlugin("nodejs-compat", (ctx) => { rolldownOptions: { plugins: [ // In Vite 8, `require` calls are not automatically replaced when the format is ESM and `platform` is `neutral` - // @ts-expect-error: added in Vite 8 vite.esmExternalRequirePlugin({ external: [...nodeJsCompat.externals], skipDuplicateCheck: true, diff --git a/packages/vite-plugin-cloudflare/tsdown.config.ts b/packages/vite-plugin-cloudflare/tsdown.config.ts index cfad46d45968..e55421e04a1a 100644 --- a/packages/vite-plugin-cloudflare/tsdown.config.ts +++ b/packages/vite-plugin-cloudflare/tsdown.config.ts @@ -23,7 +23,14 @@ export default defineConfig([ }, worker("asset-worker"), worker("router-worker"), - worker("runner-worker", { noExternal: ["vite/module-runner"] }), + worker("runner-worker", { + entry: { + index: "src/workers/runner-worker/index.ts", + "module-runner": "vite/module-runner", + "module-runner-legacy": "vite-legacy/module-runner", + }, + external: ["cloudflare:workers", "vite/module-runner"], + }), worker("vite-proxy-worker"), ]); @@ -32,8 +39,8 @@ export default defineConfig([ */ function worker(name: string, options: UserConfig = {}): UserConfig { return { - entry: { [name]: `src/workers/${name}/index.ts` }, - outDir: "dist/workers", + entry: { index: `src/workers/${name}/index.ts` }, + outDir: `dist/workers/${name}`, platform: "neutral", inputOptions: { resolve: { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 25791c144f16..581170d73c9d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -74,8 +74,8 @@ catalogs: version: 8.18.0 vite-plugin: vite: - specifier: 7.1.12 - version: 7.1.12 + specifier: ^8.0.0 + version: 8.0.0 vitest-3: '@cloudflare/vitest-pool-workers': specifier: ^0.10.0 @@ -89,6 +89,10 @@ catalogs: vitest: specifier: 3.2.4 version: 3.2.4 + vitest-4: + vite: + specifier: ^8.0.0 + version: 8.0.0 overrides: '@types/react-dom@18>@types/react': ^18 @@ -97,8 +101,8 @@ overrides: '@cloudflare/elements>@types/react': ^18 '@types/node': ^20.19.9 '@types/node>undici-types': 7.24.4 - vitest@4>vite: 7.1.12 - vitest@3>vite: ^5.0.0 + vitest@4>vite: ^8.0.0 + vitest@3>vite: ^5.4.14 patchedDependencies: '@cloudflare/component-listbox@1.10.6': @@ -180,10 +184,10 @@ importers: version: 5.8.3 vite: specifier: catalog:default - version: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1) vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1)) fixtures/additional-modules: devDependencies: @@ -207,7 +211,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -234,7 +238,7 @@ importers: version: 5.8.3 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -276,7 +280,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -300,7 +304,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -324,10 +328,10 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -345,7 +349,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -366,7 +370,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -405,7 +409,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -435,7 +439,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -459,7 +463,7 @@ importers: version: 5.8.3 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -486,7 +490,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -510,7 +514,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) fixtures/isomorphic-random-example: {} @@ -538,7 +542,7 @@ importers: version: 5.8.3 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -574,7 +578,7 @@ importers: version: 7.0.0 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -602,7 +606,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -642,7 +646,7 @@ importers: version: 5.8.3 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -663,7 +667,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -699,7 +703,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -723,7 +727,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -747,7 +751,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -778,7 +782,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -802,7 +806,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -823,7 +827,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -847,7 +851,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -871,7 +875,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -895,7 +899,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -938,7 +942,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -962,7 +966,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -980,7 +984,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1004,7 +1008,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1028,7 +1032,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1049,7 +1053,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1070,7 +1074,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1091,7 +1095,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1112,7 +1116,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1133,7 +1137,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1154,7 +1158,7 @@ importers: version: 5.8.3 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1178,7 +1182,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1196,7 +1200,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1214,7 +1218,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1292,7 +1296,7 @@ importers: version: 4.20260317.1 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1381,11 +1385,11 @@ importers: specifier: catalog:default version: 5.8.3 vite: - specifier: catalog:default - version: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + specifier: catalog:vitest-4 + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1403,7 +1407,7 @@ importers: version: 5.8.2 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.2))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.2))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1454,7 +1458,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1472,7 +1476,7 @@ importers: version: 5.8.3 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1505,7 +1509,7 @@ importers: version: 5.8.3 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1529,7 +1533,7 @@ importers: version: 2.2.3 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1562,7 +1566,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1586,7 +1590,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1610,7 +1614,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1634,7 +1638,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1658,7 +1662,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1694,7 +1698,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1724,7 +1728,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1748,7 +1752,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1769,7 +1773,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../../packages/wrangler @@ -1830,7 +1834,7 @@ importers: version: 5.8.3 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) packages/create-cloudflare: devDependencies: @@ -1968,13 +1972,13 @@ importers: version: 7.24.4 vite: specifier: catalog:vitest-3 - version: 5.4.21(@types/node@20.19.9)(lightningcss@1.30.2) + version: 5.4.21(@types/node@20.19.9)(lightningcss@1.32.0) vite-tsconfig-paths: specifier: ^4.0.8 - version: 4.2.0(typescript@5.8.3)(vite@5.4.21(@types/node@20.19.9)(lightningcss@1.30.2)) + version: 4.2.0(typescript@5.8.3)(vite@5.4.21(@types/node@20.19.9)(lightningcss@1.32.0)) vitest: specifier: catalog:vitest-3 - version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.30.2)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) + version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.32.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) which-pm-runs: specifier: ^1.1.0 version: 1.1.0 @@ -2043,7 +2047,7 @@ importers: version: 4.0.0(patch_hash=qxsfpdzvzbhq2ecirbu5xq4vlq) vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../wrangler @@ -2112,7 +2116,7 @@ importers: version: 7.0.0 vitest: specifier: catalog:default - version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) wrangler: specifier: workspace:* version: link:../wrangler @@ -2145,10 +2149,10 @@ importers: version: 3.0.0 tsup: specifier: 8.3.0 - version: 8.3.0(@microsoft/api-extractor@7.52.8(@types/node@20.19.9))(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.1) + version: 8.3.0(@microsoft/api-extractor@7.52.8(@types/node@20.19.9))(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.1) vitest: specifier: catalog:vitest-3 - version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.30.2)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.1) + version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.32.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.1) packages/local-explorer-ui: dependencies: @@ -2202,7 +2206,7 @@ importers: version: 2.1.10(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@tailwindcss/vite': specifier: ^4.0.15 - version: 4.1.18(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.18(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1)) '@tanstack/react-router': specifier: ^1.158.0 version: 1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -2233,7 +2237,7 @@ importers: version: 1.159.5(@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(@tanstack/router-core@1.159.4)(csstype@3.2.3)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@tanstack/router-plugin': specifier: ^1.158.0 - version: 1.159.5(@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 1.159.5(@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1)) '@types/react': specifier: ^19.2.0 version: 19.2.13 @@ -2242,7 +2246,7 @@ importers: version: 19.2.3(@types/react@19.2.13) '@vitejs/plugin-react': specifier: ^4.4.1 - version: 4.7.0(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.7.0(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1)) concurrently: specifier: ^9.0.0 version: 9.2.1 @@ -2254,13 +2258,13 @@ importers: version: 5.8.3 vite: specifier: catalog:default - version: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1) vite-plugin-svgr: specifier: ^4.3.0 - version: 4.5.0(rollup@4.57.1)(typescript@5.8.3)(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.5.0(rollup@4.57.1)(typescript@5.8.3)(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1)) vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1)) packages/miniflare: dependencies: @@ -2429,7 +2433,7 @@ importers: version: 5.8.3 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) which: specifier: ^2.0.2 version: 2.0.2 @@ -2514,7 +2518,7 @@ importers: version: 5.8.3 vitest: specifier: catalog:vitest-3 - version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.30.2)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) + version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.32.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) packages/playground-preview-worker: dependencies: @@ -2737,10 +2741,13 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) + vite-legacy: + specifier: npm:vite@7.1.12 + version: vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1) vitest: specifier: catalog:vitest-3 - version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.30.2)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) + version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.32.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) packages/vite-plugin-cloudflare/playground: devDependencies: @@ -2764,7 +2771,7 @@ importers: version: 5.8.3 vitest: specifier: catalog:vitest-3 - version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.30.2)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) + version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.32.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) packages/vite-plugin-cloudflare/playground/additional-modules: devDependencies: @@ -2782,7 +2789,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -2803,7 +2810,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -2824,7 +2831,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -2845,7 +2852,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -2866,7 +2873,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -2887,7 +2894,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -2908,7 +2915,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -2929,7 +2936,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -2950,7 +2957,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -2971,7 +2978,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -2992,7 +2999,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3013,7 +3020,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3034,7 +3041,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3055,7 +3062,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3076,7 +3083,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3097,7 +3104,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3130,7 +3137,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3151,7 +3158,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3172,7 +3179,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3193,7 +3200,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3214,7 +3221,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3235,7 +3242,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3256,7 +3263,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3280,7 +3287,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3307,7 +3314,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3352,7 +3359,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3373,7 +3380,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3418,7 +3425,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3452,7 +3459,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3460,11 +3467,11 @@ importers: packages/vite-plugin-cloudflare/playground/partyserver: dependencies: partyserver: - specifier: ^0.0.64 - version: 0.0.64(@cloudflare/workers-types@4.20260317.1) + specifier: ^0.3.3 + version: 0.3.3(@cloudflare/workers-types@4.20260317.1) partysocket: - specifier: ^1.0.3 - version: 1.0.3 + specifier: ^1.1.16 + version: 1.1.16(react@19.2.1) react: specifier: ^19.2.1 version: 19.2.1 @@ -3483,7 +3490,7 @@ importers: version: 4.20260317.1 '@tailwindcss/vite': specifier: ^4.0.15 - version: 4.0.15(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.0.15(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) '@types/react': specifier: 19.1.0 version: 19.1.0 @@ -3491,8 +3498,8 @@ importers: specifier: 19.1.0 version: 19.1.0(@types/react@19.1.0) '@vitejs/plugin-react': - specifier: ^4.7.0 - version: 4.7.0(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + specifier: ^5.2.0 + version: 5.2.0(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) tailwindcss: specifier: ^4.0.15 version: 4.0.15 @@ -3501,7 +3508,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3522,7 +3529,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3555,7 +3562,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3585,14 +3592,14 @@ importers: specifier: 19.1.0 version: 19.1.0(@types/react@19.1.0) '@vitejs/plugin-react': - specifier: ^4.7.0 - version: 4.7.0(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + specifier: ^5.2.0 + version: 5.2.0(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) typescript: specifier: catalog:default version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3613,7 +3620,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3634,7 +3641,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3665,16 +3672,16 @@ importers: version: 19.1.0(@types/react@19.1.0) '@vitejs/plugin-basic-ssl': specifier: ^2.0.0 - version: 2.0.0(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 2.0.0(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) '@vitejs/plugin-react': - specifier: ^4.7.0 - version: 4.7.0(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + specifier: ^5.2.0 + version: 5.2.0(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) typescript: specifier: catalog:default version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3695,7 +3702,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3716,7 +3723,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3734,13 +3741,13 @@ importers: version: 4.20260317.1 '@vitejs/plugin-basic-ssl': specifier: ^2.0.0 - version: 2.0.0(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 2.0.0(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) typescript: specifier: catalog:default version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3761,7 +3768,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3782,7 +3789,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3803,7 +3810,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3824,7 +3831,7 @@ importers: version: 5.8.3 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:* version: link:../../../wrangler @@ -3918,7 +3925,7 @@ importers: version: 7.24.4 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) packages/workers-editor-shared: dependencies: @@ -3943,7 +3950,7 @@ importers: version: 18.3.3 '@vitejs/plugin-react': specifier: ^4.3.3 - version: 4.3.3(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.3.3(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1)) eslint: specifier: catalog:default version: 9.39.1(jiti@2.6.1) @@ -3958,10 +3965,10 @@ importers: version: 5.8.3 vite: specifier: catalog:default - version: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1) vite-plugin-dts: specifier: ^4.0.1 - version: 4.0.1(@types/node@20.19.9)(rollup@4.57.1)(typescript@5.8.3)(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.0.1(@types/node@20.19.9)(rollup@4.57.1)(typescript@5.8.3)(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1)) packages/workers-playground: dependencies: @@ -4067,7 +4074,7 @@ importers: version: 9.0.4 '@vitejs/plugin-react': specifier: ^4.3.3 - version: 4.3.3(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.3.3(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) eslint: specifier: catalog:default version: 9.39.1(jiti@2.6.1) @@ -4079,7 +4086,7 @@ importers: version: 7.24.4 vite: specifier: catalog:vite-plugin - version: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + version: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) wrangler: specifier: workspace:^ version: link:../wrangler @@ -4124,7 +4131,7 @@ importers: version: 5.8.3 vitest: specifier: catalog:vitest-3 - version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.30.2)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) + version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.32.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) zod: specifier: ^3.25.76 version: 3.25.76 @@ -4177,13 +4184,13 @@ importers: version: 0.15.9(typescript@5.8.3) tsup: specifier: 8.3.0 - version: 8.3.0(@microsoft/api-extractor@7.52.8(@types/node@20.19.9))(jiti@2.6.1)(postcss@8.5.6)(supports-color@9.2.2)(tsx@4.21.0)(typescript@5.8.3)(yaml@2.8.1) + version: 8.3.0(@microsoft/api-extractor@7.52.8(@types/node@20.19.9))(jiti@2.6.1)(postcss@8.5.8)(supports-color@9.2.2)(tsx@4.21.0)(typescript@5.8.3)(yaml@2.8.1) typescript: specifier: catalog:default version: 5.8.3 vitest: specifier: catalog:default - version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + version: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) xdg-app-paths: specifier: ^8.3.0 version: 8.3.0 @@ -4229,7 +4236,7 @@ importers: version: 5.8.3 vitest: specifier: catalog:vitest-3 - version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.30.2)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) + version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.32.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) packages/wrangler: dependencies: @@ -4519,7 +4526,7 @@ importers: version: 1.5.0 tsup: specifier: 8.3.0 - version: 8.3.0(@microsoft/api-extractor@7.52.8(@types/node@20.19.9))(jiti@2.6.1)(postcss@8.5.6)(supports-color@9.2.2)(tsx@4.21.0)(typescript@5.8.3)(yaml@2.8.1) + version: 8.3.0(@microsoft/api-extractor@7.52.8(@types/node@20.19.9))(jiti@2.6.1)(postcss@8.5.8)(supports-color@9.2.2)(tsx@4.21.0)(typescript@5.8.3)(yaml@2.8.1) typescript: specifier: catalog:default version: 5.8.3 @@ -4531,7 +4538,7 @@ importers: version: 1.5.4 vitest: specifier: catalog:vitest-3 - version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.30.2)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) + version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.32.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) vitest-websocket-mock: specifier: ^0.4.0 version: 0.4.0(vitest@3.2.4) @@ -5410,7 +5417,7 @@ packages: react: ^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0 '@cloudflare/intl-types@1.5.7': - resolution: {integrity: sha512-5p+NqAoM3rOMsZsAS6RMWvClhuxWA3YqRkfIxkTcc6uYNsays90GuyzdXmN/v+T7UiSkmzRa7Atu75tD/245MQ==} + resolution: {integrity: sha512-5p+NqAoM3rOMsZsAS6RMWvClhuxWA3YqRkfIxkTcc6uYNsays90GuyzdXmN/v+T7UiSkmzRa7Atu75tD/245MQ==, tarball: https://registry.npmjs.org/@cloudflare/intl-types/-/intl-types-1.5.7.tgz} peerDependencies: react: ^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0 @@ -5430,7 +5437,7 @@ packages: resolution: {integrity: sha512-FNcunDuTmEfQTLRLtA6zz+buIXUHj1soPvSWzzQFBC+n2lsy+CGf/NIrR3SEPCmsVNQj70/Jx2lViCpq+09YpQ==} '@cloudflare/kv-asset-handler@0.4.1': - resolution: {integrity: sha512-Nu8ahitGFFJztxUml9oD/DLb7Z28C8cd8F46IVQ7y5Btz575pvMY8AqZsXkX7Gds29eCKdMgIHjIvzskHgPSFg==} + resolution: {integrity: sha512-Nu8ahitGFFJztxUml9oD/DLb7Z28C8cd8F46IVQ7y5Btz575pvMY8AqZsXkX7Gds29eCKdMgIHjIvzskHgPSFg==, tarball: https://registry.npmjs.org/@cloudflare/kv-asset-handler/-/kv-asset-handler-0.4.1.tgz} engines: {node: '>=18.0.0'} '@cloudflare/playwright@0.0.10': @@ -5446,7 +5453,7 @@ packages: react: ^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0 '@cloudflare/style-const@6.1.3': - resolution: {integrity: sha512-kwKNttljHfLMY9iVY4r4P00L9TrIc3xWvFoFte/ImLIOq13MH1sDXkQbA8nLC1qcFq7Liv/gbGrtgouPW2lO5Q==} + resolution: {integrity: sha512-kwKNttljHfLMY9iVY4r4P00L9TrIc3xWvFoFte/ImLIOq13MH1sDXkQbA8nLC1qcFq7Liv/gbGrtgouPW2lO5Q==, tarball: https://registry.npmjs.org/@cloudflare/style-const/-/style-const-6.1.3.tgz} peerDependencies: react: ^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0 @@ -5474,12 +5481,12 @@ packages: react: ^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0 '@cloudflare/types@6.29.1': - resolution: {integrity: sha512-3AfpWx3G47NWgrkTMMIxcDxl/JpS8K4a5w28+4afK8Eyzd2Mnh7+JRB3C59A6mUjo6e+KTJ/cEvyVIHYO6FQDA==} + resolution: {integrity: sha512-3AfpWx3G47NWgrkTMMIxcDxl/JpS8K4a5w28+4afK8Eyzd2Mnh7+JRB3C59A6mUjo6e+KTJ/cEvyVIHYO6FQDA==, tarball: https://registry.npmjs.org/@cloudflare/types/-/types-6.29.1.tgz} peerDependencies: react: ^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0 '@cloudflare/unenv-preset@2.7.13': - resolution: {integrity: sha512-NulO1H8R/DzsJguLC0ndMuk4Ufv0KSlN+E54ay9rn9ZCQo0kpAPwwh3LhgpZ96a3Dr6L9LqW57M4CqC34iLOvw==} + resolution: {integrity: sha512-NulO1H8R/DzsJguLC0ndMuk4Ufv0KSlN+E54ay9rn9ZCQo0kpAPwwh3LhgpZ96a3Dr6L9LqW57M4CqC34iLOvw==, tarball: https://registry.npmjs.org/@cloudflare/unenv-preset/-/unenv-preset-2.7.13.tgz} peerDependencies: unenv: 2.0.0-rc.24 workerd: ^1.20251202.0 @@ -5491,7 +5498,7 @@ packages: resolution: {integrity: sha512-qdCFf90hoZzT4o4xEmxOKUf9+bEJNGh4ANnRYApo6BMyVnHoHEHAQ3nWmGSHBmo+W9hOk2Ik7r1oHLbI0O/RRg==} '@cloudflare/util-en-garde@8.0.13': - resolution: {integrity: sha512-TJc3D+aA7bU/exJJbKgc07SLpYn1cpDMiYaz8NIxI4MJ8ZbAbZIWt6WYJKrh0m7sUu6+F2eIJPIV5/CFXOWmMw==} + resolution: {integrity: sha512-TJc3D+aA7bU/exJJbKgc07SLpYn1cpDMiYaz8NIxI4MJ8ZbAbZIWt6WYJKrh0m7sUu6+F2eIJPIV5/CFXOWmMw==, tarball: https://registry.npmjs.org/@cloudflare/util-en-garde/-/util-en-garde-8.0.13.tgz} '@cloudflare/util-hooks@1.3.1': resolution: {integrity: sha512-gIsPlzgUbMswIE1h8vGK6LZr/Io5yocUl01WCLy5fxEajhCQ0mNLixkD2Uqne+WPTfqzu4jgC5NxYXgl+Hf6yQ==} @@ -5502,98 +5509,98 @@ packages: resolution: {integrity: sha512-H8q/Msk+9Fga6iqqmff7i4mi+kraBCQWFbMEaKIRq3+HBNN5gkpizk05DSG6iIHVxCG1M3WR1FkN9CQ0ZtK4Cw==} '@cloudflare/vitest-pool-workers@0.10.15': - resolution: {integrity: sha512-eISef+JvqC5xr6WBv2+kc6WEjxuKSrZ1MdMuIwdb4vsh8olqw7WHW5pLBL/UzAhbLVlXaAL1uH9UyxIlFkJe7w==} + resolution: {integrity: sha512-eISef+JvqC5xr6WBv2+kc6WEjxuKSrZ1MdMuIwdb4vsh8olqw7WHW5pLBL/UzAhbLVlXaAL1uH9UyxIlFkJe7w==, tarball: https://registry.npmjs.org/@cloudflare/vitest-pool-workers/-/vitest-pool-workers-0.10.15.tgz} peerDependencies: '@vitest/runner': 2.0.x - 3.2.x '@vitest/snapshot': 2.0.x - 3.2.x vitest: 2.0.x - 3.2.x '@cloudflare/workerd-darwin-64@1.20251210.0': - resolution: {integrity: sha512-Nn9X1moUDERA9xtFdCQ2XpQXgAS9pOjiCxvOT8sVx9UJLAiBLkfSCGbpsYdarODGybXCpjRlc77Yppuolvt7oQ==} + resolution: {integrity: sha512-Nn9X1moUDERA9xtFdCQ2XpQXgAS9pOjiCxvOT8sVx9UJLAiBLkfSCGbpsYdarODGybXCpjRlc77Yppuolvt7oQ==, tarball: https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20251210.0.tgz} engines: {node: '>=16'} cpu: [x64] os: [darwin] '@cloudflare/workerd-darwin-64@1.20260301.1': - resolution: {integrity: sha512-+kJvwociLrvy1JV9BAvoSVsMEIYD982CpFmo/yMEvBwxDIjltYsLTE8DLi0mCkGsQ8Ygidv2fD9wavzXeiY7OQ==} + resolution: {integrity: sha512-+kJvwociLrvy1JV9BAvoSVsMEIYD982CpFmo/yMEvBwxDIjltYsLTE8DLi0mCkGsQ8Ygidv2fD9wavzXeiY7OQ==, tarball: https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20260301.1.tgz} engines: {node: '>=16'} cpu: [x64] os: [darwin] '@cloudflare/workerd-darwin-64@1.20260317.1': - resolution: {integrity: sha512-8hjh3sPMwY8M/zedq3/sXoA2Q4BedlGufn3KOOleIG+5a4ReQKLlUah140D7J6zlKmYZAFMJ4tWC7hCuI/s79g==} + resolution: {integrity: sha512-8hjh3sPMwY8M/zedq3/sXoA2Q4BedlGufn3KOOleIG+5a4ReQKLlUah140D7J6zlKmYZAFMJ4tWC7hCuI/s79g==, tarball: https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20260317.1.tgz} engines: {node: '>=16'} cpu: [x64] os: [darwin] '@cloudflare/workerd-darwin-arm64@1.20251210.0': - resolution: {integrity: sha512-Mg8iYIZQFnbevq/ls9eW/eneWTk/EE13Pej1MwfkY5et0jVpdHnvOLywy/o+QtMJFef1AjsqXGULwAneYyBfHw==} + resolution: {integrity: sha512-Mg8iYIZQFnbevq/ls9eW/eneWTk/EE13Pej1MwfkY5et0jVpdHnvOLywy/o+QtMJFef1AjsqXGULwAneYyBfHw==, tarball: https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20251210.0.tgz} engines: {node: '>=16'} cpu: [arm64] os: [darwin] '@cloudflare/workerd-darwin-arm64@1.20260301.1': - resolution: {integrity: sha512-PPIetY3e67YBr9O4UhILK8nbm5TqUDl14qx4rwFNrRSBOvlzuczzbd4BqgpAtbGVFxKp1PWpjAnBvGU/OI/tLQ==} + resolution: {integrity: sha512-PPIetY3e67YBr9O4UhILK8nbm5TqUDl14qx4rwFNrRSBOvlzuczzbd4BqgpAtbGVFxKp1PWpjAnBvGU/OI/tLQ==, tarball: https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20260301.1.tgz} engines: {node: '>=16'} cpu: [arm64] os: [darwin] '@cloudflare/workerd-darwin-arm64@1.20260317.1': - resolution: {integrity: sha512-M/MnNyvO5HMgoIdr3QHjdCj2T1ki9gt0vIUnxYxBu9ISXS/jgtMl6chUVPJ7zHYBn9MyYr8ByeN6frjYxj0MGg==} + resolution: {integrity: sha512-M/MnNyvO5HMgoIdr3QHjdCj2T1ki9gt0vIUnxYxBu9ISXS/jgtMl6chUVPJ7zHYBn9MyYr8ByeN6frjYxj0MGg==, tarball: https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20260317.1.tgz} engines: {node: '>=16'} cpu: [arm64] os: [darwin] '@cloudflare/workerd-linux-64@1.20251210.0': - resolution: {integrity: sha512-kjC2fCZhZ2Gkm1biwk2qByAYpGguK5Gf5ic8owzSCUw0FOUfQxTZUT9Lp3gApxsfTLbbnLBrX/xzWjywH9QR4g==} + resolution: {integrity: sha512-kjC2fCZhZ2Gkm1biwk2qByAYpGguK5Gf5ic8owzSCUw0FOUfQxTZUT9Lp3gApxsfTLbbnLBrX/xzWjywH9QR4g==, tarball: https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20251210.0.tgz} engines: {node: '>=16'} cpu: [x64] os: [linux] '@cloudflare/workerd-linux-64@1.20260301.1': - resolution: {integrity: sha512-Gu5vaVTZuYl3cHa+u5CDzSVDBvSkfNyuAHi6Mdfut7TTUdcb3V5CIcR/mXRSyMXzEy9YxEWIfdKMxOMBjupvYQ==} + resolution: {integrity: sha512-Gu5vaVTZuYl3cHa+u5CDzSVDBvSkfNyuAHi6Mdfut7TTUdcb3V5CIcR/mXRSyMXzEy9YxEWIfdKMxOMBjupvYQ==, tarball: https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20260301.1.tgz} engines: {node: '>=16'} cpu: [x64] os: [linux] '@cloudflare/workerd-linux-64@1.20260317.1': - resolution: {integrity: sha512-1ltuEjkRcS3fsVF7CxsKlWiRmzq2ZqMfqDN0qUOgbUwkpXsLVJsXmoblaLf5OP00ELlcgF0QsN0p2xPEua4Uug==} + resolution: {integrity: sha512-1ltuEjkRcS3fsVF7CxsKlWiRmzq2ZqMfqDN0qUOgbUwkpXsLVJsXmoblaLf5OP00ELlcgF0QsN0p2xPEua4Uug==, tarball: https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20260317.1.tgz} engines: {node: '>=16'} cpu: [x64] os: [linux] '@cloudflare/workerd-linux-arm64@1.20251210.0': - resolution: {integrity: sha512-2IB37nXi7PZVQLa1OCuO7/6pNxqisRSO8DmCQ5x/3sezI5op1vwOxAcb1osAnuVsVN9bbvpw70HJvhKruFJTuA==} + resolution: {integrity: sha512-2IB37nXi7PZVQLa1OCuO7/6pNxqisRSO8DmCQ5x/3sezI5op1vwOxAcb1osAnuVsVN9bbvpw70HJvhKruFJTuA==, tarball: https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20251210.0.tgz} engines: {node: '>=16'} cpu: [arm64] os: [linux] '@cloudflare/workerd-linux-arm64@1.20260301.1': - resolution: {integrity: sha512-igL1pkyCXW6GiGpjdOAvqMi87UW0LMc/+yIQe/CSzuZJm5GzXoAMrwVTkCFnikk6JVGELrM5x0tGYlxa0sk5Iw==} + resolution: {integrity: sha512-igL1pkyCXW6GiGpjdOAvqMi87UW0LMc/+yIQe/CSzuZJm5GzXoAMrwVTkCFnikk6JVGELrM5x0tGYlxa0sk5Iw==, tarball: https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20260301.1.tgz} engines: {node: '>=16'} cpu: [arm64] os: [linux] '@cloudflare/workerd-linux-arm64@1.20260317.1': - resolution: {integrity: sha512-3QrNnPF1xlaNwkHpasvRvAMidOvQs2NhXQmALJrEfpIJ/IDL2la8g499yXp3eqhG3hVMCB07XVY149GTs42Xtw==} + resolution: {integrity: sha512-3QrNnPF1xlaNwkHpasvRvAMidOvQs2NhXQmALJrEfpIJ/IDL2la8g499yXp3eqhG3hVMCB07XVY149GTs42Xtw==, tarball: https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20260317.1.tgz} engines: {node: '>=16'} cpu: [arm64] os: [linux] '@cloudflare/workerd-windows-64@1.20251210.0': - resolution: {integrity: sha512-Uaz6/9XE+D6E7pCY4OvkCuJHu7HcSDzeGcCGY1HLhojXhHd7yL52c3yfiyJdS8hPatiAa0nn5qSI/42+aTdDSw==} + resolution: {integrity: sha512-Uaz6/9XE+D6E7pCY4OvkCuJHu7HcSDzeGcCGY1HLhojXhHd7yL52c3yfiyJdS8hPatiAa0nn5qSI/42+aTdDSw==, tarball: https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20251210.0.tgz} engines: {node: '>=16'} cpu: [x64] os: [win32] '@cloudflare/workerd-windows-64@1.20260301.1': - resolution: {integrity: sha512-Q0wMJ4kcujXILwQKQFc1jaYamVsNvjuECzvRrTI8OxGFMx2yq9aOsswViE4X1gaS2YQQ5u0JGwuGi5WdT1Lt7A==} + resolution: {integrity: sha512-Q0wMJ4kcujXILwQKQFc1jaYamVsNvjuECzvRrTI8OxGFMx2yq9aOsswViE4X1gaS2YQQ5u0JGwuGi5WdT1Lt7A==, tarball: https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20260301.1.tgz} engines: {node: '>=16'} cpu: [x64] os: [win32] '@cloudflare/workerd-windows-64@1.20260317.1': - resolution: {integrity: sha512-MfZTz+7LfuIpMGTa3RLXHX8Z/pnycZLItn94WRdHr8LPVet+C5/1Nzei399w/jr3+kzT4pDKk26JF/tlI5elpQ==} + resolution: {integrity: sha512-MfZTz+7LfuIpMGTa3RLXHX8Z/pnycZLItn94WRdHr8LPVet+C5/1Nzei399w/jr3+kzT4pDKk26JF/tlI5elpQ==, tarball: https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20260317.1.tgz} engines: {node: '>=16'} cpu: [x64] os: [win32] @@ -5607,7 +5614,7 @@ packages: react-dom: ^17.0.2 || ^18.2.21 '@cloudflare/workers-types@4.20260317.1': - resolution: {integrity: sha512-+G4eVwyCpm8Au1ex8vQBCuA9wnwqetz4tPNRoB/53qvktERWBRMQnrtvC1k584yRE3emMThtuY0gWshvSJ++PQ==} + resolution: {integrity: sha512-+G4eVwyCpm8Au1ex8vQBCuA9wnwqetz4tPNRoB/53qvktERWBRMQnrtvC1k584yRE3emMThtuY0gWshvSJ++PQ==, tarball: https://registry.npmjs.org/@cloudflare/workers-types/-/workers-types-4.20260317.1.tgz} '@codemirror/autocomplete@6.20.0': resolution: {integrity: sha512-bOwvTOIJcG5FVo5gUUupiwYh8MioPLQ4UcqbcRf7UQ98X90tCa9E1kZ3Z7tqwpZxYyOvh1YTYbmZE9RTfTp5hg==} @@ -5678,12 +5685,21 @@ packages: '@emnapi/core@1.7.0': resolution: {integrity: sha512-pJdKGq/1iquWYtv1RRSljZklxHCOCAJFJrImO5ZLKPJVJlVUcs8yFwNQlqS0Lo8xT1VAXXTCZocF9n26FWEKsw==} + '@emnapi/core@1.9.0': + resolution: {integrity: sha512-0DQ98G9ZQZOxfUcQn1waV2yS8aWdZ6kJMbYCJB3oUBecjWYO1fqJ+a1DRfPF3O5JEkwqwP1A9QEN/9mYm2Yd0w==} + '@emnapi/runtime@1.7.0': resolution: {integrity: sha512-oAYoQnCYaQZKVS53Fq23ceWMRxq5EhQsE0x0RdQ55jT7wagMu5k+fS39v1fiSLrtrLQlXwVINenqhLMtTrV/1Q==} + '@emnapi/runtime@1.9.0': + resolution: {integrity: sha512-QN75eB0IH2ywSpRpNddCRfQIhmJYBCJ1x5Lb3IscKAL8bMnVAKnRg8dCoXbHzVLLH7P38N2Z3mtulB7W0J0FKw==} + '@emnapi/wasi-threads@1.1.0': resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} + '@emnapi/wasi-threads@1.2.0': + resolution: {integrity: sha512-N10dEJNSsUx41Z6pZsXU8FjPjpBEplgH24sfkmITrBED1/U2Esum9F3lfLrMjKHHjmi557zQn7kR9R+XWXu5Rg==} + '@esbuild-kit/cjs-loader@2.4.4': resolution: {integrity: sha512-NfsJX4PdzhwSkfJukczyUiZGc7zNNWZcEAyqeISpDnn0PTfzMJR1aR8xAIPskBejIxBJbIgCCMzbaYa9SXepIg==} deprecated: 'Merged into tsx: https://tsx.is' @@ -7277,6 +7293,9 @@ packages: '@napi-rs/wasm-runtime@1.0.7': resolution: {integrity: sha512-SeDnOO0Tk7Okiq6DbXmmBODgOAb9dp9gjlphokTUxmt8U3liIP1ZsozBahH69j/RJv+Rfs6IwUKHTgQYJ/HBAw==} + '@napi-rs/wasm-runtime@1.1.1': + resolution: {integrity: sha512-p64ah1M1ld8xjWv3qbvFwHiFVWrq1yFvV4f7w+mzaqiR4IlSgkqhcRdHwsGgomwzBH51sRY4NEowLxnaBjcW/A==} + '@netlify/build-info@10.2.0': resolution: {integrity: sha512-VGcjweaxEk+m+DqzpkADATIOLAnSzW9CumR/Q+ARGyVwsnXSAXGqSg4SYpNaY9IvxtEP4tPYVabZiAPiOL/Nyg==} engines: {node: '>=18.14.0'} @@ -7444,10 +7463,17 @@ packages: resolution: {integrity: sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==} engines: {node: '>=14'} + '@oxc-project/runtime@0.115.0': + resolution: {integrity: sha512-Rg8Wlt5dCbXhQnsXPrkOjL1DTSvXLgb2R/KYfnf1/K+R0k6UMLEmbQXPM+kwrWqSmWA2t0B1EtHy2/3zikQpvQ==} + engines: {node: ^20.19.0 || >=22.12.0} + '@oxc-project/runtime@0.96.0': resolution: {integrity: sha512-34lh4o9CcSw09Hx6fKihPu85+m+4pmDlkXwJrLvN5nMq5JrcGhhihVM415zDqT8j8IixO1PYYdQZRN4SwQCncg==} engines: {node: ^20.19.0 || >=22.12.0} + '@oxc-project/types@0.115.0': + resolution: {integrity: sha512-4n91DKnebUS4yjUHl2g3/b2T+IUdCfmoZGhmwsovZCDaJSs+QkVAM+0AqqTxHSsHfeiMuueT75cZaZcT/m0pSw==} + '@oxc-project/types@0.95.0': resolution: {integrity: sha512-vACy7vhpMPhjEJhULNxrdR0D943TkA/MigMpJCHmBHvMXxRStRi/dPtTlfQ3uDwWSzRpT8z+7ImjZVf8JWBocQ==} @@ -7743,6 +7769,12 @@ packages: cpu: [arm64] os: [android] + '@rolldown/binding-android-arm64@1.0.0-rc.9': + resolution: {integrity: sha512-lcJL0bN5hpgJfSIz/8PIf02irmyL43P+j1pTCfbD1DbLkmGRuFIA4DD3B3ZOvGqG0XiVvRznbKtN0COQVaKUTg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [android] + '@rolldown/binding-darwin-arm64@1.0.0-beta.44': resolution: {integrity: sha512-PxAW1PXLPmCzfhfKIS53kwpjLGTUdIfX4Ht+l9mj05C3lYCGaGowcNsYi2rdxWH24vSTmeK+ajDNRmmmrK0M7g==} engines: {node: ^20.19.0 || >=22.12.0} @@ -7755,6 +7787,12 @@ packages: cpu: [arm64] os: [darwin] + '@rolldown/binding-darwin-arm64@1.0.0-rc.9': + resolution: {integrity: sha512-J7Zk3kLYFsLtuH6U+F4pS2sYVzac0qkjcO5QxHS7OS7yZu2LRs+IXo+uvJ/mvpyUljDJ3LROZPoQfgBIpCMhdQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [darwin] + '@rolldown/binding-darwin-x64@1.0.0-beta.44': resolution: {integrity: sha512-/CtQqs1oO9uSb5Ju60rZvsdjE7Pzn8EK2ISAdl2jedjMzeD/4neNyCbwyJOAPzU+GIQTZVyrFZJX+t7HXR1R/g==} engines: {node: ^20.19.0 || >=22.12.0} @@ -7767,6 +7805,12 @@ packages: cpu: [x64] os: [darwin] + '@rolldown/binding-darwin-x64@1.0.0-rc.9': + resolution: {integrity: sha512-iwtmmghy8nhfRGeNAIltcNXzD0QMNaaA5U/NyZc1Ia4bxrzFByNMDoppoC+hl7cDiUq5/1CnFthpT9n+UtfFyg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [darwin] + '@rolldown/binding-freebsd-x64@1.0.0-beta.44': resolution: {integrity: sha512-V5Q5W9c4+2GJ4QabmjmVV6alY97zhC/MZBaLkDtHwGy3qwzbM4DYgXUbun/0a8AH5hGhuU27tUIlYz6ZBlvgOA==} engines: {node: ^20.19.0 || >=22.12.0} @@ -7779,6 +7823,12 @@ packages: cpu: [x64] os: [freebsd] + '@rolldown/binding-freebsd-x64@1.0.0-rc.9': + resolution: {integrity: sha512-DLFYI78SCiZr5VvdEplsVC2Vx53lnA4/Ga5C65iyldMVaErr86aiqCoNBLl92PXPfDtUYjUh+xFFor40ueNs4Q==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [freebsd] + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.44': resolution: {integrity: sha512-X6adjkHeFqKsTU0FXdNN9HY4LDozPqIfHcnXovE5RkYLWIjMWuc489mIZ6iyhrMbCqMUla9IOsh5dvXSGT9o9A==} engines: {node: ^20.19.0 || >=22.12.0} @@ -7791,6 +7841,12 @@ packages: cpu: [arm] os: [linux] + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.9': + resolution: {integrity: sha512-CsjTmTwd0Hri6iTw/DRMK7kOZ7FwAkrO4h8YWKoX/kcj833e4coqo2wzIFywtch/8Eb5enQ/lwLM7w6JX1W5RQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [linux] + '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.44': resolution: {integrity: sha512-kRRKGZI4DXWa6ANFr3dLA85aSVkwPdgXaRjfanwY84tfc3LncDiIjyWCb042e3ckPzYhHSZ3LmisO+cdOIYL6Q==} engines: {node: ^20.19.0 || >=22.12.0} @@ -7803,6 +7859,12 @@ packages: cpu: [arm64] os: [linux] + '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.9': + resolution: {integrity: sha512-2x9O2JbSPxpxMDhP9Z74mahAStibTlrBMW0520+epJH5sac7/LwZW5Bmg/E6CXuEF53JJFW509uP+lSedaUNxg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + '@rolldown/binding-linux-arm64-musl@1.0.0-beta.44': resolution: {integrity: sha512-hMtiN9xX1NhxXBa2U3Up4XkVcsVp2h73yYtMDY59z9CDLEZLrik9RVLhBL5QtoX4zZKJ8HZKJtWuGYvtmkCbIQ==} engines: {node: ^20.19.0 || >=22.12.0} @@ -7815,6 +7877,24 @@ packages: cpu: [arm64] os: [linux] + '@rolldown/binding-linux-arm64-musl@1.0.0-rc.9': + resolution: {integrity: sha512-JA1QRW31ogheAIRhIg9tjMfsYbglXXYGNPLdPEYrwFxdbkQCAzvpSCSHCDWNl4hTtrol8WeboCSEpjdZK8qrCg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + + '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.9': + resolution: {integrity: sha512-aOKU9dJheda8Kj8Y3w9gnt9QFOO+qKPAl8SWd7JPHP+Cu0EuDAE5wokQubLzIDQWg2myXq2XhTpOVS07qqvT+w==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [ppc64] + os: [linux] + + '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.9': + resolution: {integrity: sha512-OalO94fqj7IWRn3VdXWty75jC5dk4C197AWEuMhIpvVv2lw9fiPhud0+bW2ctCxb3YoBZor71QHbY+9/WToadA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [s390x] + os: [linux] + '@rolldown/binding-linux-x64-gnu@1.0.0-beta.44': resolution: {integrity: sha512-rd1LzbpXQuR8MTG43JB9VyXDjG7ogSJbIkBpZEHJ8oMKzL6j47kQT5BpIXrg3b5UVygW9QCI2fpFdMocT5Kudg==} engines: {node: ^20.19.0 || >=22.12.0} @@ -7827,6 +7907,12 @@ packages: cpu: [x64] os: [linux] + '@rolldown/binding-linux-x64-gnu@1.0.0-rc.9': + resolution: {integrity: sha512-cVEl1vZtBsBZna3YMjGXNvnYYrOJ7RzuWvZU0ffvJUexWkukMaDuGhUXn0rjnV0ptzGVkvc+vW9Yqy6h8YX4pg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + '@rolldown/binding-linux-x64-musl@1.0.0-beta.44': resolution: {integrity: sha512-qI2IiPqmPRW25exXkuQr3TlweCDc05YvvbSDRPCuPsWkwb70dTiSoXn8iFxT4PWqTi71wWHg1Wyta9PlVhX5VA==} engines: {node: ^20.19.0 || >=22.12.0} @@ -7839,6 +7925,12 @@ packages: cpu: [x64] os: [linux] + '@rolldown/binding-linux-x64-musl@1.0.0-rc.9': + resolution: {integrity: sha512-UzYnKCIIc4heAKgI4PZ3dfBGUZefGCJ1TPDuLHoCzgrMYPb5Rv6TLFuYtyM4rWyHM7hymNdsg5ik2C+UD9VDbA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + '@rolldown/binding-openharmony-arm64@1.0.0-beta.44': resolution: {integrity: sha512-+vHvEc1pL5iJRFlldLC8mjm6P4Qciyfh2bh5ZI6yxDQKbYhCHRKNURaKz1mFcwxhVL5YMYsLyaqM3qizVif9MQ==} engines: {node: ^20.19.0 || >=22.12.0} @@ -7851,6 +7943,12 @@ packages: cpu: [arm64] os: [openharmony] + '@rolldown/binding-openharmony-arm64@1.0.0-rc.9': + resolution: {integrity: sha512-+6zoiF+RRyf5cdlFQP7nm58mq7+/2PFaY2DNQeD4B87N36JzfF/l9mdBkkmTvSYcYPE8tMh/o3cRlsx1ldLfog==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [openharmony] + '@rolldown/binding-wasm32-wasi@1.0.0-beta.44': resolution: {integrity: sha512-XSgLxRrtFj6RpTeMYmmQDAwHjKseYGKUn5LPiIdW4Cq+f5SBSStL2ToBDxkbdxKPEbCZptnLPQ/nfKcAxrC8Xg==} engines: {node: '>=14.0.0'} @@ -7861,6 +7959,11 @@ packages: engines: {node: '>=14.0.0'} cpu: [wasm32] + '@rolldown/binding-wasm32-wasi@1.0.0-rc.9': + resolution: {integrity: sha512-rgFN6sA/dyebil3YTlL2evvi/M+ivhfnyxec7AccTpRPccno/rPoNlqybEZQBkcbZu8Hy+eqNJCqfBR8P7Pg8g==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.44': resolution: {integrity: sha512-cF1LJdDIX02cJrFrX3wwQ6IzFM7I74BYeKFkzdcIA4QZ0+2WA7/NsKIgjvrunupepWb1Y6PFWdRlHSaz5AW1Wg==} engines: {node: ^20.19.0 || >=22.12.0} @@ -7873,6 +7976,12 @@ packages: cpu: [arm64] os: [win32] + '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.9': + resolution: {integrity: sha512-lHVNUG/8nlF1IQk1C0Ci574qKYyty2goMiPlRqkC5R+3LkXDkL5Dhx8ytbxq35m+pkHVIvIxviD+TWLdfeuadA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [win32] + '@rolldown/binding-win32-ia32-msvc@1.0.0-beta.44': resolution: {integrity: sha512-5uaJonDafhHiMn+iEh7qUp3QQ4Gihv3lEOxKfN8Vwadpy0e+5o28DWI42DpJ9YBYMrVy4JOWJ/3etB/sptpUwA==} engines: {node: ^20.19.0 || >=22.12.0} @@ -7897,6 +8006,12 @@ packages: cpu: [x64] os: [win32] + '@rolldown/binding-win32-x64-msvc@1.0.0-rc.9': + resolution: {integrity: sha512-G0oA4+w1iY5AGi5HcDTxWsoxF509hrFIPB2rduV5aDqS9FtDg1CAfa7V34qImbjfhIcA8C+RekocJZA96EarwQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [win32] + '@rolldown/pluginutils@1.0.0-beta.27': resolution: {integrity: sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==} @@ -7906,6 +8021,12 @@ packages: '@rolldown/pluginutils@1.0.0-beta.49': resolution: {integrity: sha512-HLlu3Qn3ePmNCbfehwKWXQMzX/2rzcL6Jmpo+Dl3xnq46TGMyJAgO+IsS8ka7IDLeD3wcoOhjJwxTdIdbrFhGw==} + '@rolldown/pluginutils@1.0.0-rc.3': + resolution: {integrity: sha512-eybk3TjzzzV97Dlj5c+XrBFW57eTNhzod66y9HrBlzJ6NsCrWCp/2kaPS3K9wJmurBC0Tdw4yPjXKZqlznim3Q==} + + '@rolldown/pluginutils@1.0.0-rc.9': + resolution: {integrity: sha512-w6oiRWgEBl04QkFZgmW+jnU1EC9b57Oihi2ot3HNWIQRqgHp5PnYDia5iZ5FF7rpa4EQdiqMDXjlqKGXBhsoXw==} + '@rollup/plugin-alias@5.1.1': resolution: {integrity: sha512-PR9zDb+rOzkRb2VD+EuKB7UC41vU5DIwZ5qqCpk0KJudcWAyi8rvYOhS7+L5aZCspw1stTViLgN5v6FF1p5cgQ==} engines: {node: '>=14.0.0'} @@ -9452,6 +9573,12 @@ packages: peerDependencies: vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 + '@vitejs/plugin-react@5.2.0': + resolution: {integrity: sha512-YmKkfhOAi3wsB1PhJq5Scj3GXMn3WvtQ/JC0xoopuHoXSdmtdStOpFrYaT1kie2YgFBcIe64ROzMYRjCrYOdYw==} + engines: {node: ^20.19.0 || >=22.12.0} + peerDependencies: + vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 + '@vitest/expect@3.2.4': resolution: {integrity: sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==} @@ -11278,14 +11405,13 @@ packages: resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} engines: {node: '>= 0.6'} + event-target-polyfill@0.0.4: + resolution: {integrity: sha512-Gs6RLjzlLRdT8X9ZipJdIZI/Y6/HhRLyq9RdDlCsnpxr/+Nn6bU2EFGuC94GjxqhM+Nmij2Vcq98yoHrU8uNFQ==} + event-target-shim@5.0.1: resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} engines: {node: '>=6'} - event-target-shim@6.0.2: - resolution: {integrity: sha512-8q3LsZjRezbFZ2PN+uP+Q7pnHUMmAOziU2vA2OwoFaKIXxlxl38IylhSSgUorWu/rf4er67w0ikBqjBFk/pomA==} - engines: {node: '>=10.13.0'} - eventemitter3@5.0.1: resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} @@ -12506,6 +12632,12 @@ packages: cpu: [arm64] os: [android] + lightningcss-android-arm64@1.32.0: + resolution: {integrity: sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [android] + lightningcss-darwin-arm64@1.29.2: resolution: {integrity: sha512-cK/eMabSViKn/PG8U/a7aCorpeKLMlK0bQeNHmdb7qUnBkNPnL+oV5DjJUo0kqWsJUapZsM4jCfYItbqBDvlcA==} engines: {node: '>= 12.0.0'} @@ -12518,6 +12650,12 @@ packages: cpu: [arm64] os: [darwin] + lightningcss-darwin-arm64@1.32.0: + resolution: {integrity: sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [darwin] + lightningcss-darwin-x64@1.29.2: resolution: {integrity: sha512-j5qYxamyQw4kDXX5hnnCKMf3mLlHvG44f24Qyi2965/Ycz829MYqjrVg2H8BidybHBp9kom4D7DR5VqCKDXS0w==} engines: {node: '>= 12.0.0'} @@ -12530,6 +12668,12 @@ packages: cpu: [x64] os: [darwin] + lightningcss-darwin-x64@1.32.0: + resolution: {integrity: sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [darwin] + lightningcss-freebsd-x64@1.29.2: resolution: {integrity: sha512-wDk7M2tM78Ii8ek9YjnY8MjV5f5JN2qNVO+/0BAGZRvXKtQrBC4/cn4ssQIpKIPP44YXw6gFdpUF+Ps+RGsCwg==} engines: {node: '>= 12.0.0'} @@ -12542,6 +12686,12 @@ packages: cpu: [x64] os: [freebsd] + lightningcss-freebsd-x64@1.32.0: + resolution: {integrity: sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [freebsd] + lightningcss-linux-arm-gnueabihf@1.29.2: resolution: {integrity: sha512-IRUrOrAF2Z+KExdExe3Rz7NSTuuJ2HvCGlMKoquK5pjvo2JY4Rybr+NrKnq0U0hZnx5AnGsuFHjGnNT14w26sg==} engines: {node: '>= 12.0.0'} @@ -12554,6 +12704,12 @@ packages: cpu: [arm] os: [linux] + lightningcss-linux-arm-gnueabihf@1.32.0: + resolution: {integrity: sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==} + engines: {node: '>= 12.0.0'} + cpu: [arm] + os: [linux] + lightningcss-linux-arm64-gnu@1.29.2: resolution: {integrity: sha512-KKCpOlmhdjvUTX/mBuaKemp0oeDIBBLFiU5Fnqxh1/DZ4JPZi4evEH7TKoSBFOSOV3J7iEmmBaw/8dpiUvRKlQ==} engines: {node: '>= 12.0.0'} @@ -12566,6 +12722,12 @@ packages: cpu: [arm64] os: [linux] + lightningcss-linux-arm64-gnu@1.32.0: + resolution: {integrity: sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + lightningcss-linux-arm64-musl@1.29.2: resolution: {integrity: sha512-Q64eM1bPlOOUgxFmoPUefqzY1yV3ctFPE6d/Vt7WzLW4rKTv7MyYNky+FWxRpLkNASTnKQUaiMJ87zNODIrrKQ==} engines: {node: '>= 12.0.0'} @@ -12578,6 +12740,12 @@ packages: cpu: [arm64] os: [linux] + lightningcss-linux-arm64-musl@1.32.0: + resolution: {integrity: sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + lightningcss-linux-x64-gnu@1.29.2: resolution: {integrity: sha512-0v6idDCPG6epLXtBH/RPkHvYx74CVziHo6TMYga8O2EiQApnUPZsbR9nFNrg2cgBzk1AYqEd95TlrsL7nYABQg==} engines: {node: '>= 12.0.0'} @@ -12590,6 +12758,12 @@ packages: cpu: [x64] os: [linux] + lightningcss-linux-x64-gnu@1.32.0: + resolution: {integrity: sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + lightningcss-linux-x64-musl@1.29.2: resolution: {integrity: sha512-rMpz2yawkgGT8RULc5S4WiZopVMOFWjiItBT7aSfDX4NQav6M44rhn5hjtkKzB+wMTRlLLqxkeYEtQ3dd9696w==} engines: {node: '>= 12.0.0'} @@ -12602,6 +12776,12 @@ packages: cpu: [x64] os: [linux] + lightningcss-linux-x64-musl@1.32.0: + resolution: {integrity: sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + lightningcss-win32-arm64-msvc@1.29.2: resolution: {integrity: sha512-nL7zRW6evGQqYVu/bKGK+zShyz8OVzsCotFgc7judbt6wnB2KbiKKJwBE4SGoDBQ1O94RjW4asrCjQL4i8Fhbw==} engines: {node: '>= 12.0.0'} @@ -12614,6 +12794,12 @@ packages: cpu: [arm64] os: [win32] + lightningcss-win32-arm64-msvc@1.32.0: + resolution: {integrity: sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [win32] + lightningcss-win32-x64-msvc@1.29.2: resolution: {integrity: sha512-EdIUW3B2vLuHmv7urfzMI/h2fmlnOQBk1xlsDxkN1tCWKjNFjfLhGxYk8C8mzpSfr+A6jFFIi8fU6LbQGsRWjA==} engines: {node: '>= 12.0.0'} @@ -12626,6 +12812,12 @@ packages: cpu: [x64] os: [win32] + lightningcss-win32-x64-msvc@1.32.0: + resolution: {integrity: sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [win32] + lightningcss@1.29.2: resolution: {integrity: sha512-6b6gd/RUXKaw5keVdSEtqFVdzWnU5jMxTUjA2bVcMNPLwSQ08Sv/UodBVtETLCn7k4S1Ibxwh7k68IwLZPgKaA==} engines: {node: '>= 12.0.0'} @@ -12634,6 +12826,10 @@ packages: resolution: {integrity: sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ==} engines: {node: '>= 12.0.0'} + lightningcss@1.32.0: + resolution: {integrity: sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==} + engines: {node: '>= 12.0.0'} + lilconfig@2.1.0: resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} engines: {node: '>=10'} @@ -13060,8 +13256,8 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - nanoid@5.1.0: - resolution: {integrity: sha512-zDAl/llz8Ue/EblwSYwdxGBYfj46IM1dhjVi8dyp9LQffoIGxJEAHj2oeZ4uNcgycSRcQ83CnfcZqEJzVDLcDw==} + nanoid@5.1.7: + resolution: {integrity: sha512-ua3NDgISf6jdwezAheMOk4mbE1LXjm1DfMUDMuJf4AqxLFK3ccGpgWizwa5YV7Yz9EpXwEaWoRXSb/BnV0t5dQ==} engines: {node: ^18 || >=20} hasBin: true @@ -13381,13 +13577,18 @@ packages: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} engines: {node: '>= 0.8'} - partyserver@0.0.64: - resolution: {integrity: sha512-DuEdsGt2kvss6+P517PRY0PgW/C6v3hQaF2XaVCx0ZmLVSAcsYhDjurHvIFwh5Q1Hp5pJ8vvFAEXvfKEZw8Q8Q==} + partyserver@0.3.3: + resolution: {integrity: sha512-jSGWNZ5lJj9czq+97y9N02HyZZtQH8wmgJRkTQahfGnzgL5+R12dMX3E+p7BscB2cVj6LZLv1uHpKL057rjJmw==} peerDependencies: '@cloudflare/workers-types': ^4.20240729.0 - partysocket@1.0.3: - resolution: {integrity: sha512-7sSojS4oCRK1Fe1h+Sa0Za5dwOf+M9VksQlynD8yqwGpLvnO4oxx9ppmOSeh6CJTMbF5gbnvUQKMK525QSBdBw==} + partysocket@1.1.16: + resolution: {integrity: sha512-d7xFv+ZC7x0p/DAHWJ5FhxQhimIx+ucyZY+kxL0cKddLBmK9c4p2tEA/L+dOOrWm6EYrRwrBjKQV0uSzOY9x1w==} + peerDependencies: + react: '>=17' + peerDependenciesMeta: + react: + optional: true patch-console@1.0.0: resolution: {integrity: sha512-nxl9nrnLQmh64iTzMfyylSlRozL7kAXIaxw1fVcLYdyhNkJCRUzirRZTikXGJsg+hc4fqpneTK6iU2H1Q8THSA==} @@ -13820,6 +14021,10 @@ packages: resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} engines: {node: ^10 || ^12 || >=14} + postcss@8.5.8: + resolution: {integrity: sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==} + engines: {node: ^10 || ^12 || >=14} + postgres-array@2.0.0: resolution: {integrity: sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==} engines: {node: '>=4'} @@ -14156,6 +14361,10 @@ packages: resolution: {integrity: sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==} engines: {node: '>=0.10.0'} + react-refresh@0.18.0: + resolution: {integrity: sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw==} + engines: {node: '>=0.10.0'} + react-required-if@1.0.3: resolution: {integrity: sha512-MdbG9mGJVA12lV+jvsU/U6D50NrGfkL6Yvy132dLCUioOvDqemtbYAMTn2gIxS6cTVqqC50mL/37t0UosJkgiQ==} @@ -14390,6 +14599,11 @@ packages: engines: {node: ^20.19.0 || >=22.12.0} hasBin: true + rolldown@1.0.0-rc.9: + resolution: {integrity: sha512-9EbgWge7ZH+yqb4d2EnELAntgPTWbfL8ajiTW+SyhJEC4qhBbkCKbqFV4Ge4zmu5ziQuVbWxb/XwLZ+RIO7E8Q==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + rollup-plugin-dts@6.1.1: resolution: {integrity: sha512-aSHRcJ6KG2IHIioYlvAOcEq6U99sVtqDDKVhnwt70rW6tsz3tv5OSjEiWcgzfsHdLyGXZ/3b/7b/+Za3Y6r1XA==} engines: {node: '>=16'} @@ -15747,6 +15961,49 @@ packages: yaml: optional: true + vite@8.0.0: + resolution: {integrity: sha512-fPGaRNj9Zytaf8LEiBhY7Z6ijnFKdzU/+mL8EFBaKr7Vw1/FWcTBAMW0wLPJAGMPX38ZPVCVgLceWiEqeoqL2Q==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + peerDependencies: + '@types/node': ^20.19.9 + '@vitejs/devtools': ^0.0.0-alpha.31 + esbuild: ^0.27.0 + jiti: '>=1.21.0' + less: ^4.0.0 + sass: ^1.70.0 + sass-embedded: ^1.70.0 + stylus: '>=0.54.8' + sugarss: ^5.0.0 + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 + peerDependenciesMeta: + '@types/node': + optional: true + '@vitejs/devtools': + optional: true + esbuild: + optional: true + jiti: + optional: true + less: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: + optional: true + vitest-websocket-mock@0.4.0: resolution: {integrity: sha512-tGnOwE2nC8jfioQXDrX+lZ8EVrF+IO2NVqe1vV9h945W/hlR0S6ZYbMqCJGG3Nyd//c5XSe1IGLD2ZgE2D1I7Q==} peerDependencies: @@ -15794,7 +16051,7 @@ packages: '@vitest/ui': 4.1.0 happy-dom: '*' jsdom: '*' - vite: 7.1.12 + vite: ^8.0.0 peerDependenciesMeta: '@edge-runtime/vm': optional: true @@ -17633,7 +17890,7 @@ snapshots: devalue: 5.6.3 miniflare: 4.20251210.0 semver: 7.7.3 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.30.2)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.1) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.32.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.1) wrangler: 4.54.0(@cloudflare/workers-types@4.20260317.1) zod: 3.25.76 transitivePeerDependencies: @@ -17808,16 +18065,32 @@ snapshots: tslib: 2.8.1 optional: true + '@emnapi/core@1.9.0': + dependencies: + '@emnapi/wasi-threads': 1.2.0 + tslib: 2.8.1 + optional: true + '@emnapi/runtime@1.7.0': dependencies: tslib: 2.8.1 optional: true + '@emnapi/runtime@1.9.0': + dependencies: + tslib: 2.8.1 + optional: true + '@emnapi/wasi-threads@1.1.0': dependencies: tslib: 2.8.1 optional: true + '@emnapi/wasi-threads@1.2.0': + dependencies: + tslib: 2.8.1 + optional: true + '@esbuild-kit/cjs-loader@2.4.4': dependencies: '@esbuild-kit/core-utils': 3.3.2 @@ -18658,7 +18931,7 @@ snapshots: '@img/sharp-wasm32@0.33.5': dependencies: - '@emnapi/runtime': 1.7.0 + '@emnapi/runtime': 1.9.0 optional: true '@img/sharp-wasm32@0.34.5': @@ -18946,6 +19219,13 @@ snapshots: '@tybys/wasm-util': 0.10.1 optional: true + '@napi-rs/wasm-runtime@1.1.1': + dependencies: + '@emnapi/core': 1.9.0 + '@emnapi/runtime': 1.9.0 + '@tybys/wasm-util': 0.10.1 + optional: true + '@netlify/build-info@10.2.0(patch_hash=m4wvy4p7g3z4a5zv6jw4gevqr4)': dependencies: '@bugsnag/js': 8.6.0 @@ -19129,8 +19409,12 @@ snapshots: '@opentelemetry/semantic-conventions@1.28.0': {} + '@oxc-project/runtime@0.115.0': {} + '@oxc-project/runtime@0.96.0': {} + '@oxc-project/types@0.115.0': {} + '@oxc-project/types@0.95.0': {} '@oxc-project/types@0.96.0': {} @@ -19438,60 +19722,96 @@ snapshots: '@rolldown/binding-android-arm64@1.0.0-beta.49': optional: true + '@rolldown/binding-android-arm64@1.0.0-rc.9': + optional: true + '@rolldown/binding-darwin-arm64@1.0.0-beta.44': optional: true '@rolldown/binding-darwin-arm64@1.0.0-beta.49': optional: true + '@rolldown/binding-darwin-arm64@1.0.0-rc.9': + optional: true + '@rolldown/binding-darwin-x64@1.0.0-beta.44': optional: true '@rolldown/binding-darwin-x64@1.0.0-beta.49': optional: true + '@rolldown/binding-darwin-x64@1.0.0-rc.9': + optional: true + '@rolldown/binding-freebsd-x64@1.0.0-beta.44': optional: true '@rolldown/binding-freebsd-x64@1.0.0-beta.49': optional: true + '@rolldown/binding-freebsd-x64@1.0.0-rc.9': + optional: true + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.44': optional: true '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.49': optional: true + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.9': + optional: true + '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.44': optional: true '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.49': optional: true + '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.9': + optional: true + '@rolldown/binding-linux-arm64-musl@1.0.0-beta.44': optional: true '@rolldown/binding-linux-arm64-musl@1.0.0-beta.49': optional: true + '@rolldown/binding-linux-arm64-musl@1.0.0-rc.9': + optional: true + + '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.9': + optional: true + + '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.9': + optional: true + '@rolldown/binding-linux-x64-gnu@1.0.0-beta.44': optional: true '@rolldown/binding-linux-x64-gnu@1.0.0-beta.49': optional: true + '@rolldown/binding-linux-x64-gnu@1.0.0-rc.9': + optional: true + '@rolldown/binding-linux-x64-musl@1.0.0-beta.44': optional: true '@rolldown/binding-linux-x64-musl@1.0.0-beta.49': optional: true + '@rolldown/binding-linux-x64-musl@1.0.0-rc.9': + optional: true + '@rolldown/binding-openharmony-arm64@1.0.0-beta.44': optional: true '@rolldown/binding-openharmony-arm64@1.0.0-beta.49': optional: true + '@rolldown/binding-openharmony-arm64@1.0.0-rc.9': + optional: true + '@rolldown/binding-wasm32-wasi@1.0.0-beta.44': dependencies: '@napi-rs/wasm-runtime': 1.0.7 @@ -19502,12 +19822,20 @@ snapshots: '@napi-rs/wasm-runtime': 1.0.7 optional: true + '@rolldown/binding-wasm32-wasi@1.0.0-rc.9': + dependencies: + '@napi-rs/wasm-runtime': 1.1.1 + optional: true + '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.44': optional: true '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.49': optional: true + '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.9': + optional: true + '@rolldown/binding-win32-ia32-msvc@1.0.0-beta.44': optional: true @@ -19520,12 +19848,19 @@ snapshots: '@rolldown/binding-win32-x64-msvc@1.0.0-beta.49': optional: true + '@rolldown/binding-win32-x64-msvc@1.0.0-rc.9': + optional: true + '@rolldown/pluginutils@1.0.0-beta.27': {} '@rolldown/pluginutils@1.0.0-beta.44': {} '@rolldown/pluginutils@1.0.0-beta.49': {} + '@rolldown/pluginutils@1.0.0-rc.3': {} + + '@rolldown/pluginutils@1.0.0-rc.9': {} + '@rollup/plugin-alias@5.1.1(rollup@4.30.1)': optionalDependencies: rollup: 4.30.1 @@ -20500,20 +20835,20 @@ snapshots: '@tailwindcss/oxide-win32-arm64-msvc': 4.1.18 '@tailwindcss/oxide-win32-x64-msvc': 4.1.18 - '@tailwindcss/vite@4.0.15(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1))': + '@tailwindcss/vite@4.0.15(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1))': dependencies: '@tailwindcss/node': 4.0.15 '@tailwindcss/oxide': 4.0.15 lightningcss: 1.29.2 tailwindcss: 4.0.15 - vite: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) - '@tailwindcss/vite@4.1.18(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1))': + '@tailwindcss/vite@4.1.18(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1))': dependencies: '@tailwindcss/node': 4.1.18 '@tailwindcss/oxide': 4.1.18 tailwindcss: 4.1.18 - vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1) '@tanstack/history@1.154.14': {} @@ -20578,7 +20913,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@tanstack/router-plugin@1.159.5(@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1))': + '@tanstack/router-plugin@1.159.5(@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1))': dependencies: '@babel/core': 7.29.0 '@babel/plugin-syntax-jsx': 7.28.6(@babel/core@7.29.0) @@ -20595,7 +20930,7 @@ snapshots: zod: 3.25.76 optionalDependencies: '@tanstack/react-router': 1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1) transitivePeerDependencies: - supports-color @@ -21186,33 +21521,33 @@ snapshots: minimatch: 7.4.6 semver: 7.6.3 - '@vitejs/plugin-basic-ssl@2.0.0(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1))': + '@vitejs/plugin-basic-ssl@2.0.0(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1))': dependencies: - vite: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) - '@vitejs/plugin-react@4.3.3(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1))': + '@vitejs/plugin-react@4.3.3(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1))': dependencies: '@babel/core': 7.26.0 '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.0) '@types/babel__core': 7.20.5 react-refresh: 0.14.2 - vite: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1) transitivePeerDependencies: - supports-color - '@vitejs/plugin-react@4.3.3(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1))': + '@vitejs/plugin-react@4.3.3(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1))': dependencies: '@babel/core': 7.26.0 '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.0) '@types/babel__core': 7.20.5 react-refresh: 0.14.2 - vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) transitivePeerDependencies: - supports-color - '@vitejs/plugin-react@4.7.0(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1))': + '@vitejs/plugin-react@4.7.0(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1))': dependencies: '@babel/core': 7.29.0 '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.29.0) @@ -21220,19 +21555,19 @@ snapshots: '@rolldown/pluginutils': 1.0.0-beta.27 '@types/babel__core': 7.20.5 react-refresh: 0.17.0 - vite: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1) transitivePeerDependencies: - supports-color - '@vitejs/plugin-react@4.7.0(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1))': + '@vitejs/plugin-react@5.2.0(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1))': dependencies: '@babel/core': 7.29.0 '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.29.0) '@babel/plugin-transform-react-jsx-source': 7.27.1(@babel/core@7.29.0) - '@rolldown/pluginutils': 1.0.0-beta.27 + '@rolldown/pluginutils': 1.0.0-rc.3 '@types/babel__core': 7.20.5 - react-refresh: 0.17.0 - vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + react-refresh: 0.18.0 + vite: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) transitivePeerDependencies: - supports-color @@ -21253,59 +21588,59 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.0.3 - '@vitest/mocker@3.2.4(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@5.4.21(@types/node@20.19.9)(lightningcss@1.30.2))': + '@vitest/mocker@3.2.4(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@5.4.21(@types/node@20.19.9)(lightningcss@1.32.0))': dependencies: '@vitest/spy': 3.2.4 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.12.4(@types/node@20.19.9)(typescript@5.8.3) - vite: 5.4.21(@types/node@20.19.9)(lightningcss@1.30.2) + vite: 5.4.21(@types/node@20.19.9)(lightningcss@1.32.0) - '@vitest/mocker@3.2.4(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@5.4.21(@types/node@20.19.9)(lightningcss@1.30.2))': + '@vitest/mocker@3.2.4(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@5.4.21(@types/node@20.19.9)(lightningcss@1.32.0))': dependencies: '@vitest/spy': 3.2.4 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.12.4(@types/node@20.19.9)(typescript@5.9.3) - vite: 5.4.21(@types/node@20.19.9)(lightningcss@1.30.2) + vite: 5.4.21(@types/node@20.19.9)(lightningcss@1.32.0) - '@vitest/mocker@4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.2))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1))': + '@vitest/mocker@4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.2))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1))': dependencies: '@vitest/spy': 4.1.0 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.12.4(@types/node@20.19.9)(typescript@5.8.2) - vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) - '@vitest/mocker@4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1))': + '@vitest/mocker@4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1))': dependencies: '@vitest/spy': 4.1.0 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.12.4(@types/node@20.19.9)(typescript@5.8.3) - vite: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1) - '@vitest/mocker@4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1))': + '@vitest/mocker@4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1))': dependencies: '@vitest/spy': 4.1.0 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.12.4(@types/node@20.19.9)(typescript@5.8.3) - vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) - '@vitest/mocker@4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1))': + '@vitest/mocker@4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1))': dependencies: '@vitest/spy': 4.1.0 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.12.4(@types/node@20.19.9)(typescript@5.9.3) - vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) '@vitest/pretty-format@2.1.8': dependencies: @@ -21358,7 +21693,7 @@ snapshots: sirv: 3.0.2 tinyglobby: 0.2.15 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.30.2)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.32.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) '@vitest/ui@4.1.0(vitest@4.1.0)': dependencies: @@ -21369,7 +21704,7 @@ snapshots: sirv: 3.0.2 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vitest: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + vitest: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) '@vitest/utils@2.1.8': dependencies: @@ -21754,14 +22089,14 @@ snapshots: atomic-sleep@1.0.0: {} - autoprefixer@10.4.20(postcss@8.5.6): + autoprefixer@10.4.20(postcss@8.5.8): dependencies: browserslist: 4.24.2 caniuse-lite: 1.0.30001669 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 available-typed-arrays@1.0.7: @@ -21871,7 +22206,7 @@ snapshots: prisma: 7.0.1(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.8.3) react: 19.2.4 react-dom: 19.2.4(react@19.2.4) - vitest: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + vitest: 4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) transitivePeerDependencies: - '@cloudflare/workers-types' @@ -22377,9 +22712,9 @@ snapshots: shebang-command: 2.0.0 which: 2.0.2 - css-declaration-sorter@7.2.0(postcss@8.5.6): + css-declaration-sorter@7.2.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 css-in-js-utils@2.0.1: dependencies: @@ -22419,49 +22754,49 @@ snapshots: clone: 2.1.2 parserlib: 1.1.1 - cssnano-preset-default@7.0.6(postcss@8.5.6): + cssnano-preset-default@7.0.6(postcss@8.5.8): dependencies: browserslist: 4.24.2 - css-declaration-sorter: 7.2.0(postcss@8.5.6) - cssnano-utils: 5.0.0(postcss@8.5.6) - postcss: 8.5.6 - postcss-calc: 10.1.0(postcss@8.5.6) - postcss-colormin: 7.0.2(postcss@8.5.6) - postcss-convert-values: 7.0.4(postcss@8.5.6) - postcss-discard-comments: 7.0.3(postcss@8.5.6) - postcss-discard-duplicates: 7.0.1(postcss@8.5.6) - postcss-discard-empty: 7.0.0(postcss@8.5.6) - postcss-discard-overridden: 7.0.0(postcss@8.5.6) - postcss-merge-longhand: 7.0.4(postcss@8.5.6) - postcss-merge-rules: 7.0.4(postcss@8.5.6) - postcss-minify-font-values: 7.0.0(postcss@8.5.6) - postcss-minify-gradients: 7.0.0(postcss@8.5.6) - postcss-minify-params: 7.0.2(postcss@8.5.6) - postcss-minify-selectors: 7.0.4(postcss@8.5.6) - postcss-normalize-charset: 7.0.0(postcss@8.5.6) - postcss-normalize-display-values: 7.0.0(postcss@8.5.6) - postcss-normalize-positions: 7.0.0(postcss@8.5.6) - postcss-normalize-repeat-style: 7.0.0(postcss@8.5.6) - postcss-normalize-string: 7.0.0(postcss@8.5.6) - postcss-normalize-timing-functions: 7.0.0(postcss@8.5.6) - postcss-normalize-unicode: 7.0.2(postcss@8.5.6) - postcss-normalize-url: 7.0.0(postcss@8.5.6) - postcss-normalize-whitespace: 7.0.0(postcss@8.5.6) - postcss-ordered-values: 7.0.1(postcss@8.5.6) - postcss-reduce-initial: 7.0.2(postcss@8.5.6) - postcss-reduce-transforms: 7.0.0(postcss@8.5.6) - postcss-svgo: 7.0.1(postcss@8.5.6) - postcss-unique-selectors: 7.0.3(postcss@8.5.6) - - cssnano-utils@5.0.0(postcss@8.5.6): - dependencies: - postcss: 8.5.6 - - cssnano@7.0.6(postcss@8.5.6): - dependencies: - cssnano-preset-default: 7.0.6(postcss@8.5.6) + css-declaration-sorter: 7.2.0(postcss@8.5.8) + cssnano-utils: 5.0.0(postcss@8.5.8) + postcss: 8.5.8 + postcss-calc: 10.1.0(postcss@8.5.8) + postcss-colormin: 7.0.2(postcss@8.5.8) + postcss-convert-values: 7.0.4(postcss@8.5.8) + postcss-discard-comments: 7.0.3(postcss@8.5.8) + postcss-discard-duplicates: 7.0.1(postcss@8.5.8) + postcss-discard-empty: 7.0.0(postcss@8.5.8) + postcss-discard-overridden: 7.0.0(postcss@8.5.8) + postcss-merge-longhand: 7.0.4(postcss@8.5.8) + postcss-merge-rules: 7.0.4(postcss@8.5.8) + postcss-minify-font-values: 7.0.0(postcss@8.5.8) + postcss-minify-gradients: 7.0.0(postcss@8.5.8) + postcss-minify-params: 7.0.2(postcss@8.5.8) + postcss-minify-selectors: 7.0.4(postcss@8.5.8) + postcss-normalize-charset: 7.0.0(postcss@8.5.8) + postcss-normalize-display-values: 7.0.0(postcss@8.5.8) + postcss-normalize-positions: 7.0.0(postcss@8.5.8) + postcss-normalize-repeat-style: 7.0.0(postcss@8.5.8) + postcss-normalize-string: 7.0.0(postcss@8.5.8) + postcss-normalize-timing-functions: 7.0.0(postcss@8.5.8) + postcss-normalize-unicode: 7.0.2(postcss@8.5.8) + postcss-normalize-url: 7.0.0(postcss@8.5.8) + postcss-normalize-whitespace: 7.0.0(postcss@8.5.8) + postcss-ordered-values: 7.0.1(postcss@8.5.8) + postcss-reduce-initial: 7.0.2(postcss@8.5.8) + postcss-reduce-transforms: 7.0.0(postcss@8.5.8) + postcss-svgo: 7.0.1(postcss@8.5.8) + postcss-unique-selectors: 7.0.3(postcss@8.5.8) + + cssnano-utils@5.0.0(postcss@8.5.8): + dependencies: + postcss: 8.5.8 + + cssnano@7.0.6(postcss@8.5.8): + dependencies: + cssnano-preset-default: 7.0.6(postcss@8.5.8) lilconfig: 3.1.3 - postcss: 8.5.6 + postcss: 8.5.8 csso@5.0.5: dependencies: @@ -23431,9 +23766,9 @@ snapshots: etag@1.8.1: {} - event-target-shim@5.0.1: {} + event-target-polyfill@0.0.4: {} - event-target-shim@6.0.2: {} + event-target-shim@5.0.1: {} eventemitter3@5.0.1: {} @@ -24764,66 +25099,99 @@ snapshots: lightningcss-android-arm64@1.30.2: optional: true + lightningcss-android-arm64@1.32.0: + optional: true + lightningcss-darwin-arm64@1.29.2: optional: true lightningcss-darwin-arm64@1.30.2: optional: true + lightningcss-darwin-arm64@1.32.0: + optional: true + lightningcss-darwin-x64@1.29.2: optional: true lightningcss-darwin-x64@1.30.2: optional: true + lightningcss-darwin-x64@1.32.0: + optional: true + lightningcss-freebsd-x64@1.29.2: optional: true lightningcss-freebsd-x64@1.30.2: optional: true + lightningcss-freebsd-x64@1.32.0: + optional: true + lightningcss-linux-arm-gnueabihf@1.29.2: optional: true lightningcss-linux-arm-gnueabihf@1.30.2: optional: true + lightningcss-linux-arm-gnueabihf@1.32.0: + optional: true + lightningcss-linux-arm64-gnu@1.29.2: optional: true lightningcss-linux-arm64-gnu@1.30.2: optional: true + lightningcss-linux-arm64-gnu@1.32.0: + optional: true + lightningcss-linux-arm64-musl@1.29.2: optional: true lightningcss-linux-arm64-musl@1.30.2: optional: true + lightningcss-linux-arm64-musl@1.32.0: + optional: true + lightningcss-linux-x64-gnu@1.29.2: optional: true lightningcss-linux-x64-gnu@1.30.2: optional: true + lightningcss-linux-x64-gnu@1.32.0: + optional: true + lightningcss-linux-x64-musl@1.29.2: optional: true lightningcss-linux-x64-musl@1.30.2: optional: true + lightningcss-linux-x64-musl@1.32.0: + optional: true + lightningcss-win32-arm64-msvc@1.29.2: optional: true lightningcss-win32-arm64-msvc@1.30.2: optional: true + lightningcss-win32-arm64-msvc@1.32.0: + optional: true + lightningcss-win32-x64-msvc@1.29.2: optional: true lightningcss-win32-x64-msvc@1.30.2: optional: true + lightningcss-win32-x64-msvc@1.32.0: + optional: true + lightningcss@1.29.2: dependencies: detect-libc: 2.1.2 @@ -24855,6 +25223,22 @@ snapshots: lightningcss-win32-arm64-msvc: 1.30.2 lightningcss-win32-x64-msvc: 1.30.2 + lightningcss@1.32.0: + dependencies: + detect-libc: 2.1.2 + optionalDependencies: + lightningcss-android-arm64: 1.32.0 + lightningcss-darwin-arm64: 1.32.0 + lightningcss-darwin-x64: 1.32.0 + lightningcss-freebsd-x64: 1.32.0 + lightningcss-linux-arm-gnueabihf: 1.32.0 + lightningcss-linux-arm64-gnu: 1.32.0 + lightningcss-linux-arm64-musl: 1.32.0 + lightningcss-linux-x64-gnu: 1.32.0 + lightningcss-linux-x64-musl: 1.32.0 + lightningcss-win32-arm64-msvc: 1.32.0 + lightningcss-win32-x64-msvc: 1.32.0 + lilconfig@2.1.0: {} lilconfig@3.1.3: {} @@ -25125,17 +25509,17 @@ snapshots: mkdist@2.2.0(typescript@5.8.3)(vue-tsc@2.0.29(typescript@5.8.3)): dependencies: - autoprefixer: 10.4.20(postcss@8.5.6) + autoprefixer: 10.4.20(postcss@8.5.8) citty: 0.1.6 - cssnano: 7.0.6(postcss@8.5.6) + cssnano: 7.0.6(postcss@8.5.8) defu: 6.1.4 esbuild: 0.24.2 jiti: 1.21.7 mlly: 1.7.4 pathe: 1.1.2 pkg-types: 1.3.1 - postcss: 8.5.6 - postcss-nested: 7.0.2(postcss@8.5.6) + postcss: 8.5.8 + postcss-nested: 7.0.2(postcss@8.5.8) semver: 7.7.3 tinyglobby: 0.2.15 optionalDependencies: @@ -25282,7 +25666,7 @@ snapshots: nanoid@3.3.11: {} - nanoid@5.1.0: {} + nanoid@5.1.7: {} nanostores@1.1.1: {} @@ -25597,14 +25981,16 @@ snapshots: parseurl@1.3.3: {} - partyserver@0.0.64(@cloudflare/workers-types@4.20260317.1): + partyserver@0.3.3(@cloudflare/workers-types@4.20260317.1): dependencies: '@cloudflare/workers-types': 4.20260317.1 - nanoid: 5.1.0 + nanoid: 5.1.7 - partysocket@1.0.3: + partysocket@1.1.16(react@19.2.1): dependencies: - event-target-shim: 6.0.2 + event-target-polyfill: 0.0.4 + optionalDependencies: + react: 19.2.1 patch-console@1.0.0: {} @@ -25799,156 +26185,156 @@ snapshots: postal-mime@2.4.4(patch_hash=ngwql2fj2dlex3jjynq4iizhk4): {} - postcss-calc@10.1.0(postcss@8.5.6): + postcss-calc@10.1.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-selector-parser: 7.0.0 postcss-value-parser: 4.2.0 - postcss-colormin@7.0.2(postcss@8.5.6): + postcss-colormin@7.0.2(postcss@8.5.8): dependencies: browserslist: 4.24.2 caniuse-api: 3.0.0 colord: 2.9.3 - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-convert-values@7.0.4(postcss@8.5.6): + postcss-convert-values@7.0.4(postcss@8.5.8): dependencies: browserslist: 4.24.2 - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-discard-comments@7.0.3(postcss@8.5.6): + postcss-discard-comments@7.0.3(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-selector-parser: 6.1.2 - postcss-discard-duplicates@7.0.1(postcss@8.5.6): + postcss-discard-duplicates@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 - postcss-discard-empty@7.0.0(postcss@8.5.6): + postcss-discard-empty@7.0.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 - postcss-discard-overridden@7.0.0(postcss@8.5.6): + postcss-discard-overridden@7.0.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 - postcss-load-config@6.0.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(yaml@2.8.1): + postcss-load-config@6.0.1(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(yaml@2.8.1): dependencies: lilconfig: 3.1.3 optionalDependencies: jiti: 2.6.1 - postcss: 8.5.6 + postcss: 8.5.8 tsx: 4.21.0 yaml: 2.8.1 - postcss-merge-longhand@7.0.4(postcss@8.5.6): + postcss-merge-longhand@7.0.4(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - stylehacks: 7.0.4(postcss@8.5.6) + stylehacks: 7.0.4(postcss@8.5.8) - postcss-merge-rules@7.0.4(postcss@8.5.6): + postcss-merge-rules@7.0.4(postcss@8.5.8): dependencies: browserslist: 4.24.2 caniuse-api: 3.0.0 - cssnano-utils: 5.0.0(postcss@8.5.6) - postcss: 8.5.6 + cssnano-utils: 5.0.0(postcss@8.5.8) + postcss: 8.5.8 postcss-selector-parser: 6.1.2 - postcss-minify-font-values@7.0.0(postcss@8.5.6): + postcss-minify-font-values@7.0.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-minify-gradients@7.0.0(postcss@8.5.6): + postcss-minify-gradients@7.0.0(postcss@8.5.8): dependencies: colord: 2.9.3 - cssnano-utils: 5.0.0(postcss@8.5.6) - postcss: 8.5.6 + cssnano-utils: 5.0.0(postcss@8.5.8) + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-minify-params@7.0.2(postcss@8.5.6): + postcss-minify-params@7.0.2(postcss@8.5.8): dependencies: browserslist: 4.24.2 - cssnano-utils: 5.0.0(postcss@8.5.6) - postcss: 8.5.6 + cssnano-utils: 5.0.0(postcss@8.5.8) + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-minify-selectors@7.0.4(postcss@8.5.6): + postcss-minify-selectors@7.0.4(postcss@8.5.8): dependencies: cssesc: 3.0.0 - postcss: 8.5.6 + postcss: 8.5.8 postcss-selector-parser: 6.1.2 - postcss-nested@7.0.2(postcss@8.5.6): + postcss-nested@7.0.2(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-selector-parser: 7.0.0 - postcss-normalize-charset@7.0.0(postcss@8.5.6): + postcss-normalize-charset@7.0.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 - postcss-normalize-display-values@7.0.0(postcss@8.5.6): + postcss-normalize-display-values@7.0.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-positions@7.0.0(postcss@8.5.6): + postcss-normalize-positions@7.0.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-repeat-style@7.0.0(postcss@8.5.6): + postcss-normalize-repeat-style@7.0.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-string@7.0.0(postcss@8.5.6): + postcss-normalize-string@7.0.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-timing-functions@7.0.0(postcss@8.5.6): + postcss-normalize-timing-functions@7.0.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-unicode@7.0.2(postcss@8.5.6): + postcss-normalize-unicode@7.0.2(postcss@8.5.8): dependencies: browserslist: 4.24.2 - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-url@7.0.0(postcss@8.5.6): + postcss-normalize-url@7.0.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-whitespace@7.0.0(postcss@8.5.6): + postcss-normalize-whitespace@7.0.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-ordered-values@7.0.1(postcss@8.5.6): + postcss-ordered-values@7.0.1(postcss@8.5.8): dependencies: - cssnano-utils: 5.0.0(postcss@8.5.6) - postcss: 8.5.6 + cssnano-utils: 5.0.0(postcss@8.5.8) + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-reduce-initial@7.0.2(postcss@8.5.6): + postcss-reduce-initial@7.0.2(postcss@8.5.8): dependencies: browserslist: 4.24.2 caniuse-api: 3.0.0 - postcss: 8.5.6 + postcss: 8.5.8 - postcss-reduce-transforms@7.0.0(postcss@8.5.6): + postcss-reduce-transforms@7.0.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 postcss-selector-parser@6.1.2: @@ -25961,15 +26347,15 @@ snapshots: cssesc: 3.0.0 util-deprecate: 1.0.2 - postcss-svgo@7.0.1(postcss@8.5.6): + postcss-svgo@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 svgo: 3.3.2 - postcss-unique-selectors@7.0.3(postcss@8.5.6): + postcss-unique-selectors@7.0.3(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-selector-parser: 6.1.2 postcss-value-parser@4.2.0: {} @@ -25986,6 +26372,12 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 + postcss@8.5.8: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + postgres-array@2.0.0: {} postgres-array@3.0.2: {} @@ -26290,6 +26682,8 @@ snapshots: react-refresh@0.17.0: {} + react-refresh@0.18.0: {} + react-required-if@1.0.3: {} react-shallow-renderer@16.15.0(react@18.3.1): @@ -26594,6 +26988,27 @@ snapshots: '@rolldown/binding-win32-ia32-msvc': 1.0.0-beta.49 '@rolldown/binding-win32-x64-msvc': 1.0.0-beta.49 + rolldown@1.0.0-rc.9: + dependencies: + '@oxc-project/types': 0.115.0 + '@rolldown/pluginutils': 1.0.0-rc.9 + optionalDependencies: + '@rolldown/binding-android-arm64': 1.0.0-rc.9 + '@rolldown/binding-darwin-arm64': 1.0.0-rc.9 + '@rolldown/binding-darwin-x64': 1.0.0-rc.9 + '@rolldown/binding-freebsd-x64': 1.0.0-rc.9 + '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-rc.9 + '@rolldown/binding-linux-arm64-gnu': 1.0.0-rc.9 + '@rolldown/binding-linux-arm64-musl': 1.0.0-rc.9 + '@rolldown/binding-linux-ppc64-gnu': 1.0.0-rc.9 + '@rolldown/binding-linux-s390x-gnu': 1.0.0-rc.9 + '@rolldown/binding-linux-x64-gnu': 1.0.0-rc.9 + '@rolldown/binding-linux-x64-musl': 1.0.0-rc.9 + '@rolldown/binding-openharmony-arm64': 1.0.0-rc.9 + '@rolldown/binding-wasm32-wasi': 1.0.0-rc.9 + '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.9 + '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.9 + rollup-plugin-dts@6.1.1(rollup@4.30.1)(typescript@5.8.3): dependencies: magic-string: 0.30.21 @@ -27310,10 +27725,10 @@ snapshots: '@styled-system/variant': 5.1.5 object-assign: 4.1.1 - stylehacks@7.0.4(postcss@8.5.6): + stylehacks@7.0.4(postcss@8.5.8): dependencies: browserslist: 4.24.2 - postcss: 8.5.6 + postcss: 8.5.8 postcss-selector-parser: 6.1.2 stylis@4.3.0: {} @@ -27625,7 +28040,7 @@ snapshots: tslib@2.8.1: {} - tsup@8.3.0(@microsoft/api-extractor@7.52.8(@types/node@20.19.9))(jiti@2.6.1)(postcss@8.5.6)(supports-color@9.2.2)(tsx@4.21.0)(typescript@5.8.3)(yaml@2.8.1): + tsup@8.3.0(@microsoft/api-extractor@7.52.8(@types/node@20.19.9))(jiti@2.6.1)(postcss@8.5.8)(supports-color@9.2.2)(tsx@4.21.0)(typescript@5.8.3)(yaml@2.8.1): dependencies: bundle-require: 5.1.0(esbuild@0.23.1) cac: 6.7.14 @@ -27636,7 +28051,7 @@ snapshots: execa: 5.1.1 joycon: 3.1.1 picocolors: 1.1.1 - postcss-load-config: 6.0.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(yaml@2.8.1) + postcss-load-config: 6.0.1(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(yaml@2.8.1) resolve-from: 5.0.0 rollup: 4.44.1 source-map: 0.8.0-beta.0 @@ -27645,7 +28060,7 @@ snapshots: tree-kill: 1.2.2 optionalDependencies: '@microsoft/api-extractor': 7.52.8(@types/node@20.19.9) - postcss: 8.5.6 + postcss: 8.5.8 typescript: 5.8.3 transitivePeerDependencies: - jiti @@ -27653,7 +28068,7 @@ snapshots: - tsx - yaml - tsup@8.3.0(@microsoft/api-extractor@7.52.8(@types/node@20.19.9))(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.1): + tsup@8.3.0(@microsoft/api-extractor@7.52.8(@types/node@20.19.9))(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.1): dependencies: bundle-require: 5.1.0(esbuild@0.23.1) cac: 6.7.14 @@ -27664,7 +28079,7 @@ snapshots: execa: 5.1.1 joycon: 3.1.1 picocolors: 1.1.1 - postcss-load-config: 6.0.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(yaml@2.8.1) + postcss-load-config: 6.0.1(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(yaml@2.8.1) resolve-from: 5.0.0 rollup: 4.44.1 source-map: 0.8.0-beta.0 @@ -27673,7 +28088,7 @@ snapshots: tree-kill: 1.2.2 optionalDependencies: '@microsoft/api-extractor': 7.52.8(@types/node@20.19.9) - postcss: 8.5.6 + postcss: 8.5.8 typescript: 5.9.3 transitivePeerDependencies: - jiti @@ -28125,13 +28540,13 @@ snapshots: core-util-is: 1.0.2 extsprintf: 1.3.0 - vite-node@3.2.4(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1): + vite-node@3.2.4(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1): dependencies: cac: 6.7.14 debug: 4.4.1(supports-color@9.2.2) es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1) transitivePeerDependencies: - '@types/node' - jiti @@ -28146,7 +28561,7 @@ snapshots: - tsx - yaml - vite-plugin-dts@4.0.1(@types/node@20.19.9)(rollup@4.57.1)(typescript@5.8.3)(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)): + vite-plugin-dts@4.0.1(@types/node@20.19.9)(rollup@4.57.1)(typescript@5.8.3)(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1)): dependencies: '@microsoft/api-extractor': 7.47.4(@types/node@20.19.9) '@rollup/pluginutils': 5.1.0(rollup@4.57.1) @@ -28160,45 +28575,45 @@ snapshots: typescript: 5.8.3 vue-tsc: 2.0.29(typescript@5.8.3) optionalDependencies: - vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1) transitivePeerDependencies: - '@types/node' - rollup - supports-color - vite-plugin-svgr@4.5.0(rollup@4.57.1)(typescript@5.8.3)(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)): + vite-plugin-svgr@4.5.0(rollup@4.57.1)(typescript@5.8.3)(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1)): dependencies: '@rollup/pluginutils': 5.3.0(rollup@4.57.1) '@svgr/core': 8.1.0(typescript@5.8.3) '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.8.3)) - vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1) transitivePeerDependencies: - rollup - supports-color - typescript - vite-tsconfig-paths@4.2.0(typescript@5.8.3)(vite@5.4.21(@types/node@20.19.9)(lightningcss@1.30.2)): + vite-tsconfig-paths@4.2.0(typescript@5.8.3)(vite@5.4.21(@types/node@20.19.9)(lightningcss@1.32.0)): dependencies: debug: 4.4.1(supports-color@9.2.2) globrex: 0.1.2 tsconfck: 2.1.1(typescript@5.8.3) optionalDependencies: - vite: 5.4.21(@types/node@20.19.9)(lightningcss@1.30.2) + vite: 5.4.21(@types/node@20.19.9)(lightningcss@1.32.0) transitivePeerDependencies: - supports-color - typescript - vite@5.4.21(@types/node@20.19.9)(lightningcss@1.30.2): + vite@5.4.21(@types/node@20.19.9)(lightningcss@1.32.0): dependencies: esbuild: 0.21.5 - postcss: 8.5.6 + postcss: 8.5.8 rollup: 4.57.1 optionalDependencies: '@types/node': 20.19.9 fsevents: 2.3.3 - lightningcss: 1.30.2 + lightningcss: 1.32.0 - vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1): + vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1): dependencies: esbuild: 0.25.4 fdir: 6.5.0(picomatch@4.0.3) @@ -28210,23 +28625,39 @@ snapshots: '@types/node': 20.19.9 fsevents: 2.3.3 jiti: 2.6.1 - lightningcss: 1.30.2 + lightningcss: 1.32.0 tsx: 4.21.0 yaml: 2.8.1 - vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1): + vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1): dependencies: esbuild: 0.27.3 fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 - postcss: 8.5.6 + postcss: 8.5.8 rollup: 4.57.1 tinyglobby: 0.2.15 optionalDependencies: '@types/node': 20.19.9 fsevents: 2.3.3 jiti: 2.6.1 - lightningcss: 1.30.2 + lightningcss: 1.32.0 + tsx: 4.21.0 + yaml: 2.8.1 + + vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1): + dependencies: + '@oxc-project/runtime': 0.115.0 + lightningcss: 1.32.0 + picomatch: 4.0.3 + postcss: 8.5.8 + rolldown: 1.0.0-rc.9 + tinyglobby: 0.2.15 + optionalDependencies: + '@types/node': 20.19.9 + esbuild: 0.27.3 + fsevents: 2.3.3 + jiti: 2.6.1 tsx: 4.21.0 yaml: 2.8.1 @@ -28234,13 +28665,13 @@ snapshots: dependencies: '@vitest/utils': 2.1.8 mock-socket: 9.3.1 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.30.2)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.32.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) - vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.30.2)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1): + vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.32.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@5.4.21(@types/node@20.19.9)(lightningcss@1.30.2)) + '@vitest/mocker': 3.2.4(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@5.4.21(@types/node@20.19.9)(lightningcss@1.32.0)) '@vitest/pretty-format': 3.2.4 '@vitest/runner': 3.2.4 '@vitest/snapshot': 3.2.4 @@ -28258,8 +28689,8 @@ snapshots: tinyglobby: 0.2.15 tinypool: 1.1.1 tinyrainbow: 2.0.0 - vite: 5.4.21(@types/node@20.19.9)(lightningcss@1.30.2) - vite-node: 3.2.4(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 5.4.21(@types/node@20.19.9)(lightningcss@1.32.0) + vite-node: 3.2.4(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) why-is-node-running: 2.3.0 optionalDependencies: '@types/debug': 4.1.12 @@ -28279,11 +28710,11 @@ snapshots: - tsx - yaml - vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.30.2)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.1): + vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.9)(@vitest/ui@3.2.4)(jiti@2.6.1)(lightningcss@1.32.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.1): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@5.4.21(@types/node@20.19.9)(lightningcss@1.30.2)) + '@vitest/mocker': 3.2.4(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@5.4.21(@types/node@20.19.9)(lightningcss@1.32.0)) '@vitest/pretty-format': 3.2.4 '@vitest/runner': 3.2.4 '@vitest/snapshot': 3.2.4 @@ -28301,8 +28732,8 @@ snapshots: tinyglobby: 0.2.15 tinypool: 1.1.1 tinyrainbow: 2.0.0 - vite: 5.4.21(@types/node@20.19.9)(lightningcss@1.30.2) - vite-node: 3.2.4(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 5.4.21(@types/node@20.19.9)(lightningcss@1.32.0) + vite-node: 3.2.4(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(supports-color@9.2.2)(tsx@4.21.0)(yaml@2.8.1) why-is-node-running: 2.3.0 optionalDependencies: '@types/debug': 4.1.12 @@ -28322,10 +28753,10 @@ snapshots: - tsx - yaml - vitest@4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)): + vitest@4.1.0(@opentelemetry/api@1.7.0)(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)): dependencies: '@vitest/expect': 4.1.0 - '@vitest/mocker': 4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + '@vitest/mocker': 4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) '@vitest/pretty-format': 4.1.0 '@vitest/runner': 4.1.0 '@vitest/snapshot': 4.1.0 @@ -28342,7 +28773,7 @@ snapshots: tinyexec: 1.0.2 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) why-is-node-running: 2.3.0 optionalDependencies: '@opentelemetry/api': 1.7.0 @@ -28351,10 +28782,10 @@ snapshots: transitivePeerDependencies: - msw - vitest@4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.2))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)): + vitest@4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.2))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)): dependencies: '@vitest/expect': 4.1.0 - '@vitest/mocker': 4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.2))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + '@vitest/mocker': 4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.2))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) '@vitest/pretty-format': 4.1.0 '@vitest/runner': 4.1.0 '@vitest/snapshot': 4.1.0 @@ -28371,7 +28802,7 @@ snapshots: tinyexec: 1.0.2 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 20.19.9 @@ -28379,10 +28810,10 @@ snapshots: transitivePeerDependencies: - msw - vitest@4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)): + vitest@4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1)): dependencies: '@vitest/expect': 4.1.0 - '@vitest/mocker': 4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + '@vitest/mocker': 4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.8.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1)) '@vitest/pretty-format': 4.1.0 '@vitest/runner': 4.1.0 '@vitest/snapshot': 4.1.0 @@ -28399,7 +28830,7 @@ snapshots: tinyexec: 1.0.2 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vite: 7.1.12(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)(yaml@2.8.1) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 20.19.9 @@ -28407,10 +28838,10 @@ snapshots: transitivePeerDependencies: - msw - vitest@4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)): + vitest@4.1.0(@types/node@20.19.9)(@vitest/ui@4.1.0)(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)): dependencies: '@vitest/expect': 4.1.0 - '@vitest/mocker': 4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1)) + '@vitest/mocker': 4.1.0(msw@2.12.4(@types/node@20.19.9)(typescript@5.9.3))(vite@8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1)) '@vitest/pretty-format': 4.1.0 '@vitest/runner': 4.1.0 '@vitest/snapshot': 4.1.0 @@ -28427,7 +28858,7 @@ snapshots: tinyexec: 1.0.2 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vite: 7.3.1(@types/node@20.19.9)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.1) + vite: 8.0.0(@types/node@20.19.9)(esbuild@0.27.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.1) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 20.19.9 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 3279839cbfae..07dc7343cb27 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -46,10 +46,10 @@ catalog: catalogs: vite-plugin: - # This the latest version of Vite that can be used when building the plugin in order to remain compatible with earlier versions of Vite - # This is because a breaking change to the module runner was introduced in https://github.com/vitejs/vite/pull/20924 and released in v7.2.0 - "vite": "7.1.12" + "vite": "^8.0.0" "@types/node": "^22.10.1" + vitest-4: + "vite": "^8.0.0" vitest-3: "vitest": 3.2.4 "@vitest/ui": 3.2.4 From e25bd0ef64753e12c7ac5849a2b3d35b45e5fe2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Somhairle=20MacLe=C3=B2id?= Date: Tue, 17 Mar 2026 11:41:29 -0400 Subject: [PATCH 2/4] Update prettier to 3.8.1 (#12939) --- CONTRIBUTING.md | 2 - .../vitest-pool-workers-examples/README.md | 32 +++++++-------- package.json | 2 +- packages/containers-shared/src/utils.ts | 2 +- .../src/components/studio/SQLWhereEditor.tsx | 6 ++- .../src/components/studio/Table/BaseTable.tsx | 15 ++++--- .../src/components/studio/index.tsx | 2 +- .../local-explorer-ui/src/styles/tailwind.css | 5 ++- packages/miniflare/README.md | 6 --- .../workers/local-explorer/resources/kv.ts | 2 +- .../src/workers/shared/keyvalue.worker.ts | 5 ++- .../test/plugins/email/index.spec.ts | 6 +-- .../environment-polyfills/html-rewriter.ts | 5 +-- .../playground-preview-worker/src/realish.ts | 4 +- .../module-resolution/__tests__/base-tests.ts | 3 +- .../vite-plugin-cloudflare/src/context.ts | 5 ++- .../src/workers-configs.ts | 6 +-- .../workers/runner-worker/module-runner.ts | 5 +-- .../vitest-pool-workers/src/worker/index.ts | 5 +-- .../src/worker/node/console.ts | 2 +- .../src/worker/workflows.ts | 4 +- packages/vitest-pool-workers/test/helpers.ts | 2 +- .../test/isolation.test.ts | 16 ++++---- .../test/validation.test.ts | 4 +- .../vitest-pool-workers/test/watch.test.ts | 20 +++++----- packages/workers-playground/src/index.css | 6 +-- .../asset-worker/src/handler.ts | 2 +- .../workers-utils/src/config/environment.ts | 3 +- .../workers-utils/src/config/validation.ts | 2 +- .../wrangler/e2e/assets-multiworker.test.ts | 16 ++++---- packages/wrangler/e2e/dev-env.test.ts | 4 +- packages/wrangler/e2e/dev-registry.test.ts | 12 +++--- packages/wrangler/e2e/dev.test.ts | 4 +- .../wrangler/e2e/get-platform-proxy.test.ts | 16 ++++---- packages/wrangler/e2e/multiworker-dev.test.ts | 22 +++++----- .../miniflare-remote-resources.test.ts | 6 +-- .../wrangler/e2e/unenv-preset/worker/index.ts | 2 +- .../startDevWorker/BundleController.test.ts | 36 ++++++++--------- .../startDevWorker/ConfigController.test.ts | 22 +++++----- .../LocalRuntimeController.test.ts | 36 ++++++++--------- .../src/__tests__/deploy/core.test.ts | 2 +- .../__tests__/find-additional-modules.test.ts | 32 +++++++-------- .../wrangler/src/__tests__/get-entry.test.ts | 10 ++--- packages/wrangler/src/__tests__/init.test.ts | 6 +-- .../wrangler/src/__tests__/middleware.test.ts | 4 +- .../__tests__/navigator-user-agent.test.ts | 6 +-- .../src/api/integrations/platform/index.ts | 2 +- .../api/startDevWorker/ConfigController.ts | 4 +- .../MultiworkerRuntimeController.ts | 5 +-- .../wrangler/src/api/startDevWorker/utils.ts | 6 +-- .../src/autoconfig/frameworks/react-router.ts | 4 +- packages/wrangler/src/cfetch/index.ts | 4 +- packages/wrangler/src/cloudchamber/apply.ts | 2 +- packages/wrangler/src/config/index.ts | 4 +- packages/wrangler/src/containers/config.ts | 3 +- packages/wrangler/src/containers/deploy.ts | 2 +- packages/wrangler/src/core/CommandRegistry.ts | 2 +- .../src/core/register-yargs-command.ts | 2 +- packages/wrangler/src/d1/execute.ts | 2 +- .../src/deployment-bundle/apply-middleware.ts | 4 +- .../create-worker-upload-form.ts | 4 +- .../esbuild-plugins/hybrid-nodejs-compat.ts | 5 +-- .../wrangler/src/dev/create-worker-preview.ts | 4 +- packages/wrangler/src/dev/inspect.ts | 2 +- packages/wrangler/src/miniflare-cli/assets.ts | 5 +-- packages/wrangler/src/output.ts | 6 +-- packages/wrangler/src/pipelines/types.ts | 5 ++- .../wrangler/src/utils/getLegacyScriptName.ts | 2 +- packages/wrangler/src/utils/print-bindings.ts | 8 ++-- packages/wrangler/src/vectorize/types.ts | 3 +- packages/wrangler/templates/checked-fetch.js | 6 +-- packages/wrangler/vitest.config.mts | 2 +- pnpm-lock.yaml | 40 ++++++------------- 73 files changed, 262 insertions(+), 291 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b8f696338ed1..9fecde033161 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -176,7 +176,6 @@ For TypeScript to work properly in the Monorepo the version used in VSCode must 3. In the command palette, type "Select TypeScript Version" and select the command with the same name that appears in the list. 4. A submenu will appear with a list of available TypeScript versions. Choose the desired version you want to use for this project. If you have multiple versions installed, they will be listed here. - - Selecting "Use Workspace Version" will use the version of TypeScript installed in the project's `node_modules` directory. 5. After selecting the TypeScript version, VSCode will reload the workspace using the chosen version. @@ -272,7 +271,6 @@ Changes should be committed to a new local branch, which then gets pushed to you ``` - Stage files to include in a commit - - Use [VS Code](https://code.visualstudio.com/docs/editor/versioncontrol#_git-support) - Or add and commit files via the command line diff --git a/fixtures/vitest-pool-workers-examples/README.md b/fixtures/vitest-pool-workers-examples/README.md index 020f74460ab1..670408302af3 100644 --- a/fixtures/vitest-pool-workers-examples/README.md +++ b/fixtures/vitest-pool-workers-examples/README.md @@ -2,22 +2,22 @@ This directory contains example projects tested with `@cloudflare/vitest-pool-workers`. It aims to provide the building blocks for you to write tests for your own Workers. Note the examples in this directory define `singleWorker: true` options. We recommend you enable this option if you have lots of small test files. Isolated storage is enabled by default meaning writes performed in each test are automatically undone when the test finishes. -| Directory | Overview | -| ---------------------------------------------------------------------------------- | --------------------------------------------------------- | -| [✅ basics-unit-integration-self](basics-unit-integration-self) | Basic unit tests and integration tests using `SELF` | -| [⚠️ basics-integration-auxiliary](basics-integration-auxiliary) | Basic integration tests using an auxiliary worker[^1] | +| Directory | Overview | +| --------------------------------------------------------------------------------- | --------------------------------------------------------- | +| [✅ basics-unit-integration-self](basics-unit-integration-self) | Basic unit tests and integration tests using `SELF` | +| [⚠️ basics-integration-auxiliary](basics-integration-auxiliary) | Basic integration tests using an auxiliary worker[^1] | | [⚡️ pages-functions-unit-integration-self](pages-functions-unit-integration-self) | Functions unit tests and integration tests using `SELF` | -| [📦 kv-r2-caches](kv-r2-caches) | Isolated tests using KV, R2 and the Cache API | -| [📚 d1](d1) | Isolated tests using D1 with migrations | -| [📌 durable-objects](durable-objects) | Isolated tests using Durable Objects with direct access | -| [🔁 workflows](workflows) | Tests using Workflows | -| [🚥 queues](queues) | Tests using Queue producers and consumers | -| [🚰 pipelines](pipelines) | Tests using Pipelines | -| [🚀 hyperdrive](hyperdrive) | Tests using Hyperdrive with a Vitest managed TCP server | -| [🤹 request-mocking](request-mocking) | Tests using declarative/imperative outbound request mocks | -| [🔌 multiple-workers](multiple-workers) | Tests using multiple auxiliary workers and request mocks | -| [⚙️ web-assembly](web-assembly) | Tests importing WebAssembly modules | -| [🤯 rpc](rpc) | Tests using named entrypoints, Durable Objects and RPC | -| [🤷 misc](misc) | Tests for other assorted Vitest features | +| [📦 kv-r2-caches](kv-r2-caches) | Isolated tests using KV, R2 and the Cache API | +| [📚 d1](d1) | Isolated tests using D1 with migrations | +| [📌 durable-objects](durable-objects) | Isolated tests using Durable Objects with direct access | +| [🔁 workflows](workflows) | Tests using Workflows | +| [🚥 queues](queues) | Tests using Queue producers and consumers | +| [🚰 pipelines](pipelines) | Tests using Pipelines | +| [🚀 hyperdrive](hyperdrive) | Tests using Hyperdrive with a Vitest managed TCP server | +| [🤹 request-mocking](request-mocking) | Tests using declarative/imperative outbound request mocks | +| [🔌 multiple-workers](multiple-workers) | Tests using multiple auxiliary workers and request mocks | +| [⚙️ web-assembly](web-assembly) | Tests importing WebAssembly modules | +| [🤯 rpc](rpc) | Tests using named entrypoints, Durable Objects and RPC | +| [🤷 misc](misc) | Tests for other assorted Vitest features | [^1]: When using `SELF` for integration tests, your worker code runs in the same context as the test runner. This means you can use global mocks to control your worker, but also means your worker uses the same subtly different module resolution behaviour provided by Vite. Usually this isn't a problem, but if you'd like to run your worker in a fresh environment that's as close to production as possible, using an auxiliary worker may be a good idea. Note this prevents global mocks from controlling your worker, and requires you to build your worker ahead-of-time. This means your tests won't re-run automatically if you change your worker's source code, but could be useful if you have a complicated build process (e.g. full-stack framework). diff --git a/package.json b/package.json index 2624c7134068..1653faf3e3e6 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "esbuild": "catalog:default", "esbuild-register": "^3.5.0", "jsonc-parser": "catalog:default", - "prettier": "^3.2.5", + "prettier": "^3.8.1", "prettier-plugin-packagejson": "^2.2.18", "prettier-plugin-tailwindcss": "^0.7.2", "tree-kill": "^1.2.2", diff --git a/packages/containers-shared/src/utils.ts b/packages/containers-shared/src/utils.ts index 393e3dc47932..b4d1ebe3fe74 100644 --- a/packages/containers-shared/src/utils.ts +++ b/packages/containers-shared/src/utils.ts @@ -267,7 +267,7 @@ export function resolveDockerHost(dockerPath: string): string { export const getDockerHostFromEnv = (): string => { const fromEnv = process.env.WRANGLER_DOCKER_HOST ?? process.env.DOCKER_HOST; - return fromEnv ?? process.platform === "win32" + return (fromEnv ?? process.platform === "win32") ? "//./pipe/docker_engine" : "unix:///var/run/docker.sock"; }; diff --git a/packages/local-explorer-ui/src/components/studio/SQLWhereEditor.tsx b/packages/local-explorer-ui/src/components/studio/SQLWhereEditor.tsx index 5dfba36e5ffb..a0f143cfa17f 100644 --- a/packages/local-explorer-ui/src/components/studio/SQLWhereEditor.tsx +++ b/packages/local-explorer-ui/src/components/studio/SQLWhereEditor.tsx @@ -12,8 +12,10 @@ import type { } from "./Code/Mirror"; import type { Extension } from "@codemirror/state"; -interface SutdioSQLWhereEditor - extends Omit { +interface SutdioSQLWhereEditor extends Omit< + StudioCodeMirrorProps, + "extensions" +> { columnNames?: string[]; functionNames?: string[]; onEnterPressed?: () => void; diff --git a/packages/local-explorer-ui/src/components/studio/Table/BaseTable.tsx b/packages/local-explorer-ui/src/components/studio/Table/BaseTable.tsx index f67ca5b0536a..ddf3a2a0cbeb 100644 --- a/packages/local-explorer-ui/src/components/studio/Table/BaseTable.tsx +++ b/packages/local-explorer-ui/src/components/studio/Table/BaseTable.tsx @@ -147,8 +147,9 @@ export function StudioBaseTable({ ); } -export interface StudioTableHeaderProps - extends StudioTableHeaderInput { +export interface StudioTableHeaderProps< + MetadataType = unknown, +> extends StudioTableHeaderInput { index: number; sticky: boolean; } @@ -185,15 +186,17 @@ interface TableCellListCommonProps { state: StudioTableState; } -export interface StudioTableProps - extends TableCellListCommonProps { +export interface StudioTableProps< + HeaderMetadata = unknown, +> extends TableCellListCommonProps { arrangeHeaderIndex: number[]; renderAhead: number; stickyHeaderIndex?: number; } -interface RenderCellListProps - extends TableCellListCommonProps { +interface RenderCellListProps< + HeaderMetadata = unknown, +> extends TableCellListCommonProps { colEnd: number; colStart: number; customStyles?: React.CSSProperties; diff --git a/packages/local-explorer-ui/src/components/studio/index.tsx b/packages/local-explorer-ui/src/components/studio/index.tsx index dc604fef78f3..22dee83f9f4d 100644 --- a/packages/local-explorer-ui/src/components/studio/index.tsx +++ b/packages/local-explorer-ui/src/components/studio/index.tsx @@ -414,7 +414,7 @@ export const Studio = forwardRef(function Studio( const tableMatch = selectedTab.identifier.match( /^(?:table|edit-table)\/[^.]+\.(.+)$/ ); - lastOpenedTable.current = tableMatch ? tableMatch[1] ?? null : null; + lastOpenedTable.current = tableMatch ? (tableMatch[1] ?? null) : null; onTableChange(tableMatch?.[1]); }, [initialTable, loadingSchema, onTableChange, selectedTabKey, tabs]); diff --git a/packages/local-explorer-ui/src/styles/tailwind.css b/packages/local-explorer-ui/src/styles/tailwind.css index 1faa1f0b6bf9..49db18131f9f 100644 --- a/packages/local-explorer-ui/src/styles/tailwind.css +++ b/packages/local-explorer-ui/src/styles/tailwind.css @@ -139,8 +139,9 @@ @layer base { body { - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, - Ubuntu, sans-serif; + font-family: + -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, + sans-serif; @apply text-text bg-bg-secondary text-sm leading-normal; } } diff --git a/packages/miniflare/README.md b/packages/miniflare/README.md index 7da2d6c0b530..f6f2408a5e4b 100644 --- a/packages/miniflare/README.md +++ b/packages/miniflare/README.md @@ -260,7 +260,6 @@ parameter in module format Workers. have any _npm_ imports, and `modules: true` must be set. - `modules?: boolean | ModuleDefinition[]` - - If `true`, Miniflare will treat `script`/`scriptPath` as an ES Module and automatically locate transitive module dependencies according to `modulesRules`. Note that automatic location is not perfect: if the @@ -335,7 +334,6 @@ parameter in module format Workers. `{ fetch: typeof fetch }` [service bindings](https://developers.cloudflare.com/workers/platform/bindings/about-service-bindings/) into this Worker. - - If the designator is a `string`, requests will be dispatched to the Worker with that `name`. - If the designator is `(await import("miniflare")).kCurrentWorker`, requests @@ -535,7 +533,6 @@ parameter in module format Workers. Record mapping binding name to Durable Object class designators to inject as `DurableObjectNamespace` bindings into this Worker. - - If the designator is a `string`, it should be the name of a `class` exported by this Worker. - If the designator is an object, and `scriptName` is `undefined`, `className` @@ -569,11 +566,9 @@ parameter in module format Workers. If set, only files with paths _not_ matching these glob patterns will be served. - - `assetsPath?: string` Path to serve Workers assets from. - - `assetsKVBindingName?: string` Name of the binding to the KV namespace that the assets are in. If `assetsPath` is set, this binding will be injected into this Worker. @@ -763,7 +758,6 @@ Options shared between all Workers/"nanoservices". - `cf?: boolean | string | Record` Controls the object returned from incoming `Request`'s `cf` property. - - If set to a falsy value, an object with default placeholder values will be used - If set to an object, that object will be used diff --git a/packages/miniflare/src/workers/local-explorer/resources/kv.ts b/packages/miniflare/src/workers/local-explorer/resources/kv.ts index bc9c62fae1a2..2626b5591846 100644 --- a/packages/miniflare/src/workers/local-explorer/resources/kv.ts +++ b/packages/miniflare/src/workers/local-explorer/resources/kv.ts @@ -183,7 +183,7 @@ async function executeListKeys( options: { cursor?: string; limit?: number; prefix?: string } ) { const listResult = await kv.list(options); - const resultCursor = "cursor" in listResult ? listResult.cursor ?? "" : ""; + const resultCursor = "cursor" in listResult ? (listResult.cursor ?? "") : ""; return c.json({ ...wrapResponse( diff --git a/packages/miniflare/src/workers/shared/keyvalue.worker.ts b/packages/miniflare/src/workers/shared/keyvalue.worker.ts index a25231ff4129..261a7b89040f 100644 --- a/packages/miniflare/src/workers/shared/keyvalue.worker.ts +++ b/packages/miniflare/src/workers/shared/keyvalue.worker.ts @@ -20,8 +20,9 @@ export interface KeyEntry { export interface KeyValueEntry extends KeyEntry { value: ReadableStream; } -export interface KeyMultipartValueEntry - extends KeyEntry { +export interface KeyMultipartValueEntry< + Metadata = unknown, +> extends KeyEntry { value: MultipartReadableStream; } diff --git a/packages/miniflare/test/plugins/email/index.spec.ts b/packages/miniflare/test/plugins/email/index.spec.ts index a406703affde..811e6b5fc24a 100644 --- a/packages/miniflare/test/plugins/email/index.spec.ts +++ b/packages/miniflare/test/plugins/email/index.spec.ts @@ -4,7 +4,7 @@ import dedent from "ts-dedent"; import { test, vi } from "vitest"; import { TestLog, useDispose } from "../../test-shared"; -const SEND_EMAIL_WORKER = dedent/* javascript */ ` +const SEND_EMAIL_WORKER = dedent /* javascript */ ` import { EmailMessage } from "cloudflare:email"; export default { @@ -23,7 +23,7 @@ const SEND_EMAIL_WORKER = dedent/* javascript */ ` }; `; -const REPLY_EMAIL_WORKER = (email = "message.raw") => dedent/* javascript */ ` +const REPLY_EMAIL_WORKER = (email = "message.raw") => dedent /* javascript */ ` import { EmailMessage } from "cloudflare:email"; export default { @@ -984,7 +984,7 @@ test("reply: references generated correctly", async ({ expect }) => { ).toBe(true); }); -const MESSAGE_BUILDER_WORKER = dedent/* javascript */ ` +const MESSAGE_BUILDER_WORKER = dedent /* javascript */ ` export default { async fetch(request, env) { const builder = await request.json(); diff --git a/packages/pages-shared/environment-polyfills/html-rewriter.ts b/packages/pages-shared/environment-polyfills/html-rewriter.ts index 24d56fed963e..9dbed3092c3b 100644 --- a/packages/pages-shared/environment-polyfills/html-rewriter.ts +++ b/packages/pages-shared/environment-polyfills/html-rewriter.ts @@ -49,9 +49,8 @@ export class HTMLRewriter { const { HTMLRewriter: BaseHTMLRewriter, // eslint-disable-next-line @typescript-eslint/consistent-type-imports - }: typeof import("html-rewriter-wasm") = await import( - "html-rewriter-wasm" - ); + }: typeof import("html-rewriter-wasm") = + await import("html-rewriter-wasm"); rewriter = new BaseHTMLRewriter((output) => { // enqueue will throw on empty chunks if (output.length !== 0) { diff --git a/packages/playground-preview-worker/src/realish.ts b/packages/playground-preview-worker/src/realish.ts index 5c893d4278d8..e7b9d46e3b89 100644 --- a/packages/playground-preview-worker/src/realish.ts +++ b/packages/playground-preview-worker/src/realish.ts @@ -96,8 +96,8 @@ export async function setupTokens( ): Promise { const previewSession = await initialiseSubdomainPreview(accountId, apiToken); const uploadConfigToken = previewSession.exchange_url - ? (await tryExpandToken(previewSession.exchange_url)) ?? - previewSession.token + ? ((await tryExpandToken(previewSession.exchange_url)) ?? + previewSession.token) : previewSession.token; return { diff --git a/packages/vite-plugin-cloudflare/playground/module-resolution/__tests__/base-tests.ts b/packages/vite-plugin-cloudflare/playground/module-resolution/__tests__/base-tests.ts index c161e90e9de6..eeae8f6d53e0 100644 --- a/packages/vite-plugin-cloudflare/playground/module-resolution/__tests__/base-tests.ts +++ b/packages/vite-plugin-cloudflare/playground/module-resolution/__tests__/base-tests.ts @@ -105,8 +105,7 @@ describe("module resolution", async () => { expect(result).toEqual({ "(slash-create/web) VERSION": "6.2.1", "(slash-create/web) myCollection.random()": 54321, - "(slash-create/web) slashCreatorInstance is instance of SlashCreator": - true, + "(slash-create/web) slashCreatorInstance is instance of SlashCreator": true, }); }); }); diff --git a/packages/vite-plugin-cloudflare/src/context.ts b/packages/vite-plugin-cloudflare/src/context.ts index 71f700194bfd..fd58f91ba571 100644 --- a/packages/vite-plugin-cloudflare/src/context.ts +++ b/packages/vite-plugin-cloudflare/src/context.ts @@ -214,8 +214,9 @@ export class PluginContext { } } -interface NarrowedPluginContext - extends PluginContext { +interface NarrowedPluginContext< + T extends ResolvedPluginConfig, +> extends PluginContext { readonly resolvedPluginConfig: T; } diff --git a/packages/vite-plugin-cloudflare/src/workers-configs.ts b/packages/vite-plugin-cloudflare/src/workers-configs.ts index c0cda76adeb7..bfca1a48174c 100644 --- a/packages/vite-plugin-cloudflare/src/workers-configs.ts +++ b/packages/vite-plugin-cloudflare/src/workers-configs.ts @@ -12,14 +12,12 @@ export type WorkerResolvedConfig = | AssetsOnlyWorkerResolvedConfig | WorkerWithServerLogicResolvedConfig; -export interface AssetsOnlyWorkerResolvedConfig - extends WorkerBaseResolvedConfig { +export interface AssetsOnlyWorkerResolvedConfig extends WorkerBaseResolvedConfig { type: "assets-only"; config: ResolvedAssetsOnlyConfig; } -export interface WorkerWithServerLogicResolvedConfig - extends WorkerBaseResolvedConfig { +export interface WorkerWithServerLogicResolvedConfig extends WorkerBaseResolvedConfig { type: "worker"; config: ResolvedWorkerConfig; } diff --git a/packages/vite-plugin-cloudflare/src/workers/runner-worker/module-runner.ts b/packages/vite-plugin-cloudflare/src/workers/runner-worker/module-runner.ts index 41f1f7f6fb12..7f934a49801c 100644 --- a/packages/vite-plugin-cloudflare/src/workers/runner-worker/module-runner.ts +++ b/packages/vite-plugin-cloudflare/src/workers/runner-worker/module-runner.ts @@ -267,9 +267,8 @@ async function createModuleRunner( }, async runExternalModule(filepath) { if (filepath === "cloudflare:workers") { - const originalCloudflareWorkersModule = await import( - "cloudflare:workers" - ); + const originalCloudflareWorkersModule = + await import("cloudflare:workers"); return Object.seal({ ...originalCloudflareWorkersModule, diff --git a/packages/vitest-pool-workers/src/worker/index.ts b/packages/vitest-pool-workers/src/worker/index.ts index 534cb66c4b24..c9163bc1b140 100644 --- a/packages/vitest-pool-workers/src/worker/index.ts +++ b/packages/vitest-pool-workers/src/worker/index.ts @@ -189,9 +189,8 @@ export class __VITEST_POOL_WORKERS_RUNNER_DURABLE_OBJECT__ extends DurableObject cwd = wd.cwd; - const { init, runBaseTests, setupEnvironment } = await import( - "vitest/worker" - ); + const { init, runBaseTests, setupEnvironment } = + await import("vitest/worker"); poolSocket.accept(); diff --git a/packages/vitest-pool-workers/src/worker/node/console.ts b/packages/vitest-pool-workers/src/worker/node/console.ts index 1ec811d02f3c..c6892e313f07 100644 --- a/packages/vitest-pool-workers/src/worker/node/console.ts +++ b/packages/vitest-pool-workers/src/worker/node/console.ts @@ -31,7 +31,7 @@ export class Console { this.#stdout = opts.stdout; this.#stderr = opts.stderr ?? this.#stdout; const colors = - typeof opts.colorMode === "string" ? false : opts.colorMode ?? false; + typeof opts.colorMode === "string" ? false : (opts.colorMode ?? false); this.#inspectOptions = opts.inspectOptions ?? { colors }; // Ensure methods are bound to the instance diff --git a/packages/vitest-pool-workers/src/worker/workflows.ts b/packages/vitest-pool-workers/src/worker/workflows.ts index 220f7e25de64..8e7d72f0f675 100644 --- a/packages/vitest-pool-workers/src/worker/workflows.ts +++ b/packages/vitest-pool-workers/src/worker/workflows.ts @@ -40,9 +40,7 @@ export async function introspectWorkflowInstance( return new WorkflowInstanceIntrospectorHandle(workflow, instanceId); } -class WorkflowInstanceIntrospectorHandle - implements WorkflowInstanceIntrospector -{ +class WorkflowInstanceIntrospectorHandle implements WorkflowInstanceIntrospector { #workflow: WorkflowBinding; #instanceId: string; #instanceModifier: WorkflowInstanceModifier | undefined; diff --git a/packages/vitest-pool-workers/test/helpers.ts b/packages/vitest-pool-workers/test/helpers.ts index 77bb3575f0cd..3461fcfaf0c8 100644 --- a/packages/vitest-pool-workers/test/helpers.ts +++ b/packages/vitest-pool-workers/test/helpers.ts @@ -15,7 +15,7 @@ const debuglog = util.debuglog("vitest-pool-workers:test"); export const vitestConfig = ( cfOptions: Record = {}, testOptions: Record = {} -) => dedent/* javascript */ ` +) => dedent /* javascript */ ` import { cloudflareTest } from "@cloudflare/vitest-pool-workers" import { BaseSequencer } from "vitest/node"; diff --git a/packages/vitest-pool-workers/test/isolation.test.ts b/packages/vitest-pool-workers/test/isolation.test.ts index d6085a816281..67d8e239a04f 100644 --- a/packages/vitest-pool-workers/test/isolation.test.ts +++ b/packages/vitest-pool-workers/test/isolation.test.ts @@ -8,7 +8,7 @@ test( // Check unique global scopes, storage isolated, and unique auxiliaries: // https://developers.cloudflare.com/workers/testing/vitest-integration/isolation-and-concurrency/#isolatedstorage-true-singleworker-false-default await seed({ - "auxiliary.mjs": dedent/* javascript */ ` + "auxiliary.mjs": dedent /* javascript */ ` let count = 0; export default { fetch() { @@ -31,7 +31,7 @@ test( ], }, }), - "a.test.ts": dedent/* javascript */ ` + "a.test.ts": dedent /* javascript */ ` import { env } from "cloudflare:test"; import { it, expect } from "vitest"; it("does something", async () => { @@ -45,7 +45,7 @@ test( expect(await response.text()).toBe("1"); }); `, - "b.test.ts": dedent/* javascript */ ` + "b.test.ts": dedent /* javascript */ ` import { env } from "cloudflare:test"; import { it, expect } from "vitest"; it("does something else", async () => { @@ -95,7 +95,7 @@ test( ], }, }), - "a.test.ts": dedent/* javascript */ ` + "a.test.ts": dedent /* javascript */ ` import { env } from "cloudflare:test"; import { it, expect } from "vitest"; it("does something", async () => { @@ -106,7 +106,7 @@ test( expect(await response.text()).toBe("1"); }); `, - "b.test.ts": dedent/* javascript */ ` + "b.test.ts": dedent /* javascript */ ` import { env } from "cloudflare:test"; import { it, expect } from "vitest"; it("does something else", async () => { @@ -130,7 +130,7 @@ test( async ({ expect, seed, vitestRun }) => { // With --no-isolate --max-workers=1, test files share globals, storage, and auxiliaries await seed({ - "auxiliary.mjs": dedent/* javascript */ ` + "auxiliary.mjs": dedent /* javascript */ ` let count = 0; export default { fetch() { @@ -153,7 +153,7 @@ test( ], }, }), - "a.test.ts": dedent/* javascript */ ` + "a.test.ts": dedent /* javascript */ ` import { env } from "cloudflare:test"; import { it, expect } from "vitest"; it("does something", async () => { @@ -167,7 +167,7 @@ test( expect(await response.text()).toBe("1"); }); `, - "b.test.ts": dedent/* javascript */ ` + "b.test.ts": dedent /* javascript */ ` import { env } from "cloudflare:test"; import { it, expect } from "vitest"; it("does something else", async () => { diff --git a/packages/vitest-pool-workers/test/validation.test.ts b/packages/vitest-pool-workers/test/validation.test.ts index 51122c1a15e3..322e6ec5ac11 100644 --- a/packages/vitest-pool-workers/test/validation.test.ts +++ b/packages/vitest-pool-workers/test/validation.test.ts @@ -67,7 +67,7 @@ test( compatibilityFlags: ["nodejs_compat"], }, }), - "index.test.ts": dedent/* javascript */ ` + "index.test.ts": dedent /* javascript */ ` import { SELF } from "cloudflare:test"; import { it, expect } from "vitest"; it("sends request", async () => { @@ -92,7 +92,7 @@ test( compatibilityFlags: ["nodejs_compat"], }, }), - "index.ts": dedent/* javascript */ ` + "index.ts": dedent /* javascript */ ` addEventListener("fetch", (event) => { event.respondWith(new Response("body")); }); diff --git a/packages/vitest-pool-workers/test/watch.test.ts b/packages/vitest-pool-workers/test/watch.test.ts index c2d0bf5fc58f..81eaa9a730f2 100644 --- a/packages/vitest-pool-workers/test/watch.test.ts +++ b/packages/vitest-pool-workers/test/watch.test.ts @@ -11,14 +11,14 @@ test("automatically re-runs unit tests", async ({ }) => { await seed({ "vitest.config.mts": vitestConfig(), - "index.ts": dedent/* javascript */ ` + "index.ts": dedent /* javascript */ ` export default { async fetch(request, env, ctx) { return new Response("wrong"); } } `, - "index.test.ts": dedent/* javascript */ ` + "index.test.ts": dedent /* javascript */ ` import { env, createExecutionContext, waitOnExecutionContext } from "cloudflare:test"; import { it, expect } from "vitest"; import worker from "./index"; @@ -38,7 +38,7 @@ test("automatically re-runs unit tests", async ({ }); await seed({ - "index.ts": dedent/* javascript */ ` + "index.ts": dedent /* javascript */ ` export default { async fetch(request, env, ctx) { return new Response("correct"); @@ -64,14 +64,14 @@ test("automatically re-runs integration tests", async ({ compatibilityFlags: ["nodejs_compat"], }, }), - "index.ts": dedent/* javascript */ ` + "index.ts": dedent /* javascript */ ` export default { async fetch(request, env, ctx) { return new Response("wrong"); } } `, - "index.test.ts": dedent/* javascript */ ` + "index.test.ts": dedent /* javascript */ ` import { SELF } from "cloudflare:test"; import { it, expect } from "vitest"; it("sends request", async () => { @@ -87,7 +87,7 @@ test("automatically re-runs integration tests", async ({ }); await seed({ - "index.ts": dedent/* javascript */ ` + "index.ts": dedent /* javascript */ ` export default { async fetch(request, env, ctx) { return new Response("correct"); @@ -113,12 +113,12 @@ test("automatically reset module graph", async ({ compatibilityFlags: ["nodejs_compat"], }, }), - "answer.ts": dedent/* javascript */ ` + "answer.ts": dedent /* javascript */ ` export function getAnswer() { return "wrong"; } `, - "index.ts": dedent/* javascript */ ` + "index.ts": dedent /* javascript */ ` import { getAnswer } from "./answer"; export default { @@ -128,7 +128,7 @@ test("automatically reset module graph", async ({ } } `, - "index.test.ts": dedent/* javascript */ ` + "index.test.ts": dedent /* javascript */ ` import { env, createExecutionContext, waitOnExecutionContext } from "cloudflare:test"; import { it, expect, vi } from "vitest"; import worker from "./index"; @@ -155,7 +155,7 @@ test("automatically reset module graph", async ({ // Trigger a re-run by updating the test file with an extra test. await seed({ - "index.test.ts": dedent/* javascript */ ` + "index.test.ts": dedent /* javascript */ ` import { env, createExecutionContext, waitOnExecutionContext } from "cloudflare:test"; import { it, expect, vi } from "vitest"; import worker from "./index"; diff --git a/packages/workers-playground/src/index.css b/packages/workers-playground/src/index.css index 24ff9f97641d..23b329091fd9 100644 --- a/packages/workers-playground/src/index.css +++ b/packages/workers-playground/src/index.css @@ -1,8 +1,8 @@ :root { /* Font stack taken from workers.cloudflare.com */ - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", - "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", - sans-serif; + font-family: + -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", + "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; line-height: 1.5; font-weight: 400; diff --git a/packages/workers-shared/asset-worker/src/handler.ts b/packages/workers-shared/asset-worker/src/handler.ts index 85c133a1e240..c6ac33feccfe 100644 --- a/packages/workers-shared/asset-worker/src/handler.ts +++ b/packages/workers-shared/asset-worker/src/handler.ts @@ -109,7 +109,7 @@ const getResponseOrAssetIntent = async ( location: encodedDestination !== pathname ? encodedDestination - : intent.redirect ?? "", + : (intent.redirect ?? ""), status: TemporaryRedirectResponse.status, }); diff --git a/packages/workers-utils/src/config/environment.ts b/packages/workers-utils/src/config/environment.ts index 26bd4e48aba1..e44df3fc0132 100644 --- a/packages/workers-utils/src/config/environment.ts +++ b/packages/workers-utils/src/config/environment.ts @@ -7,8 +7,7 @@ import type { Json } from "../types"; * This could be the top-level default environment, or a specific named environment. */ export interface Environment - extends EnvironmentInheritable, - EnvironmentNonInheritable {} + extends EnvironmentInheritable, EnvironmentNonInheritable {} type SimpleRoute = string; export type ZoneIdRoute = { diff --git a/packages/workers-utils/src/config/validation.ts b/packages/workers-utils/src/config/validation.ts index 0dff9e292b86..9f8d6885f5de 100644 --- a/packages/workers-utils/src/config/validation.ts +++ b/packages/workers-utils/src/config/validation.ts @@ -699,7 +699,7 @@ function normalizeAndValidateDev( inspector_ip, local_protocol = localProtocolArg ?? "http", // In remote mode upstream_protocol must be https, otherwise it defaults to local_protocol. - upstream_protocol = upstreamProtocolArg ?? remoteArg + upstream_protocol = (upstreamProtocolArg ?? remoteArg) ? "https" : local_protocol, host, diff --git a/packages/wrangler/e2e/assets-multiworker.test.ts b/packages/wrangler/e2e/assets-multiworker.test.ts index 9f193642fcba..9663a2d46cab 100644 --- a/packages/wrangler/e2e/assets-multiworker.test.ts +++ b/packages/wrangler/e2e/assets-multiworker.test.ts @@ -129,7 +129,7 @@ describe.each( `, "public/asset-binding.html": "

have an asset via a binding

", "public/asset.html": "

have an asset directly

", - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { async fetch(req, env) { const url = new URL(req.url) @@ -176,7 +176,7 @@ describe.each( main = "src/index.ts" compatibility_date = "2024-11-01" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` import { DurableObject, WorkerEntrypoint, RpcTarget } from "cloudflare:workers"; export default{ async fetch(req, env) { @@ -308,7 +308,7 @@ describe.each( binding = "AW" service = '${assetWorkerName}' `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { async fetch(req, env) { const url = new URL(req.url) @@ -392,7 +392,7 @@ describe.each( binding = "AW" service = '${assetWorkerName}' `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { async fetch(req, env) { const url = new URL(req.url) @@ -413,7 +413,7 @@ describe.each( directory = "public" binding = "ASSETS" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` import { WorkerEntrypoint } from "cloudflare:workers" export default { @@ -444,7 +444,7 @@ describe.each( describe("default export object", () => { beforeEach(async () => { await baseSeed(assetWorker, { - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` import { WorkerEntrypoint } from "cloudflare:workers" export default { @@ -526,7 +526,7 @@ describe.each( describe("default export WorkerEntrypoint class", () => { beforeEach(async () => { await baseSeed(assetWorker, { - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` import { WorkerEntrypoint } from "cloudflare:workers" export default class Worker extends WorkerEntrypoint { @@ -608,7 +608,7 @@ describe.each( describe("named export WorkerEntrypoint class", () => { beforeEach(async () => { await baseSeed(assetWorker, { - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` import { WorkerEntrypoint } from "cloudflare:workers" export default {fetch() {}} diff --git a/packages/wrangler/e2e/dev-env.test.ts b/packages/wrangler/e2e/dev-env.test.ts index 3fcb9cdcb3a0..936ec98867af 100644 --- a/packages/wrangler/e2e/dev-env.test.ts +++ b/packages/wrangler/e2e/dev-env.test.ts @@ -16,7 +16,7 @@ describe.skipIf(!CLOUDFLARE_ACCOUNT_ID)("switching runtimes", () => { account_id = "${CLOUDFLARE_ACCOUNT_ID}" compatibility_date = "2023-01-01" `, - "index.ts": dedent/*javascript*/ ` + "index.ts": dedent /*javascript*/ ` export default { async fetch(request, env) { return new Response( @@ -25,7 +25,7 @@ describe.skipIf(!CLOUDFLARE_ACCOUNT_ID)("switching runtimes", () => { }, }; `, - "index.mjs": dedent/*javascript*/ ` + "index.mjs": dedent /*javascript*/ ` import { setTimeout } from "timers/promises"; import { unstable_startWorker as startWorker } from "${WRANGLER_IMPORT}"; diff --git a/packages/wrangler/e2e/dev-registry.test.ts b/packages/wrangler/e2e/dev-registry.test.ts index 0eaad3a8fb3f..4838acaa66ec 100644 --- a/packages/wrangler/e2e/dev-registry.test.ts +++ b/packages/wrangler/e2e/dev-registry.test.ts @@ -53,7 +53,7 @@ describe.each([{ cmd: "wrangler dev" }])("dev registry $cmd", ({ cmd }) => { main = "src/index.ts" compatibility_date = "2023-01-01" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { fetch(req, env) { const url = new URL(req.url) @@ -104,7 +104,7 @@ describe.each([{ cmd: "wrangler dev" }])("dev registry $cmd", ({ cmd }) => { { name = "REFERENCED_DO", class_name = "MyDurableObject", script_name = "${workerName}" } ] `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default{ fetch(req, env) { const url = new URL(req.url) @@ -132,7 +132,7 @@ describe.each([{ cmd: "wrangler dev" }])("dev registry $cmd", ({ cmd }) => { name = "${workerName3}" main = "src/index.ts" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` addEventListener("fetch", (event) => { event.respondWith(new Response("Hello from service worker")); }); @@ -269,7 +269,7 @@ describe.each([{ cmd: "wrangler dev" }])("dev registry $cmd", ({ cmd }) => { [[tail_consumers]] service = "${workerName2}" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { async fetch(req, env) { console.log("log something") @@ -286,7 +286,7 @@ describe.each([{ cmd: "wrangler dev" }])("dev registry $cmd", ({ cmd }) => { main = "src/index.ts" compatibility_date = "2025-04-28" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { async tail(event) { console.log("received tail event", event) @@ -418,7 +418,7 @@ describe.each([{ cmd: "wrangler dev" }])("dev registry $cmd", ({ cmd }) => { binding = "BEE" service = '${workerName2}' `, - "dist/_worker.js": dedent/* javascript */ `export default { + "dist/_worker.js": dedent /* javascript */ `export default { fetch(req, env) { const url = new URL(req.url) if (url.pathname === "/service") { diff --git a/packages/wrangler/e2e/dev.test.ts b/packages/wrangler/e2e/dev.test.ts index 950ce9d5029c..3e7d4263aab5 100644 --- a/packages/wrangler/e2e/dev.test.ts +++ b/packages/wrangler/e2e/dev.test.ts @@ -1034,7 +1034,7 @@ describe("writes debug logs to hidden file", () => { main = "src/index.ts" compatibility_date = "2023-01-01" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { fetch(req, env) { return new Response('A' + req.url); @@ -1071,7 +1071,7 @@ describe("writes debug logs to hidden file", () => { main = "src/index.ts" compatibility_date = "2023-01-01" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { fetch(req, env) { return new Response('A' + req.url); diff --git a/packages/wrangler/e2e/get-platform-proxy.test.ts b/packages/wrangler/e2e/get-platform-proxy.test.ts index e78d77ab8265..80e79c91cfc8 100644 --- a/packages/wrangler/e2e/get-platform-proxy.test.ts +++ b/packages/wrangler/e2e/get-platform-proxy.test.ts @@ -37,7 +37,7 @@ describe("getPlatformProxy()", () => { [ai] binding = "AI" `, - "index.mjs": dedent/*javascript*/ ` + "index.mjs": dedent /*javascript*/ ` import { getPlatformProxy } from "${WRANGLER_IMPORT}" const { env } = await getPlatformProxy(); @@ -114,7 +114,7 @@ describe("getPlatformProxy()", () => { main = "src/index.ts" compatibility_date = "2023-01-01" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { fetch(req, env) { return new Response("Hello from Worker!") @@ -139,7 +139,7 @@ describe("getPlatformProxy()", () => { await w.waitForReady(); await seed(app, { - "index.mjs": dedent/*javascript*/ ` + "index.mjs": dedent /*javascript*/ ` import { getPlatformProxy } from "${WRANGLER_IMPORT}" const { env } = await getPlatformProxy(); @@ -181,7 +181,7 @@ describe("getPlatformProxy()", () => { `, }); await seed(worker, { - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` import { DurableObject } from "cloudflare:workers"; export default { async fetch(): Promise { @@ -220,7 +220,7 @@ describe("getPlatformProxy()", () => { describe("provides rpc service bindings to external local workers", () => { beforeEach(async () => { await seed(worker, { - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` import { RpcTarget, WorkerEntrypoint } from "cloudflare:workers"; export default { @@ -481,7 +481,7 @@ describe("getPlatformProxy()", () => { id = "hyperdrive_id" localConnectionString = "${scheme}://user:%21pass@127.0.0.1:${port}/some_db" `, - "index.mjs": dedent/*javascript*/ ` + "index.mjs": dedent /*javascript*/ ` // Windows socket cleanup error handler if (process.platform === 'win32') { process.on('uncaughtException', (err) => { @@ -538,7 +538,7 @@ describe("getPlatformProxy()", () => { id = "hyperdrive_id" localConnectionString = "postgresql://user:%21pass@127.0.0.1:${port}/some_db?sslmode=prefer" `, - "index.mjs": dedent/*javascript*/ ` + "index.mjs": dedent /*javascript*/ ` // Windows socket cleanup error handler if (process.platform === 'win32') { process.on('uncaughtException', (err) => { @@ -594,7 +594,7 @@ describe("getPlatformProxy()", () => { id = "hyperdrive_id" localConnectionString = "postgresql://user:%21pass@127.0.0.1:${port}/some_db?sslmode=require" `, - "index.mjs": dedent/*javascript*/ ` + "index.mjs": dedent /*javascript*/ ` // Windows socket cleanup error handler if (process.platform === 'win32') { process.on('uncaughtException', (err) => { diff --git a/packages/wrangler/e2e/multiworker-dev.test.ts b/packages/wrangler/e2e/multiworker-dev.test.ts index 97cad9ce6db4..1509f2e311bc 100644 --- a/packages/wrangler/e2e/multiworker-dev.test.ts +++ b/packages/wrangler/e2e/multiworker-dev.test.ts @@ -47,7 +47,7 @@ describe("multiworker", () => { main = "src/index.ts" compatibility_date = "2024-11-01" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` import { DurableObject } from "cloudflare:workers"; export default { @@ -113,7 +113,7 @@ describe("multiworker", () => { { name = "REFERENCED_DO", class_name = "MyDurableObject", script_name = "${workerName}" } ] `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` import { WorkerEntrypoint, RpcTarget } from "cloudflare:workers"; class Counter extends RpcTarget { @@ -169,7 +169,7 @@ describe("multiworker", () => { name = "${workerName3}" main = "src/index.ts" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` addEventListener("fetch", (event) => { event.respondWith(new Response("Hello from service worker")); }); @@ -408,7 +408,7 @@ describe("multiworker", () => { [[tail_consumers]] service = "${workerName2}" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { async fetch(req, env) { console.log("log something") @@ -425,7 +425,7 @@ describe("multiworker", () => { main = "src/index.ts" compatibility_date = "2025-04-28" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { async tail(event) { console.log("received tail event", event) @@ -475,7 +475,7 @@ describe("multiworker", () => { [[streaming_tail_consumers]] service = "${workerName2}" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { async fetch(req, env) { console.log("log something") @@ -492,7 +492,7 @@ describe("multiworker", () => { main = "src/index.ts" compatibility_date = "2025-04-28" `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { async tail(event) { console.log("received tail event", event) @@ -538,11 +538,11 @@ describe("multiworker", () => { binding = "BEE" service = '${workerName2}' `, - "functions/cee.ts": dedent/* javascript */ ` + "functions/cee.ts": dedent /* javascript */ ` export async function onRequest(context) { return context.env.CEE.fetch("https://example.com"); }`, - "functions/bee.ts": dedent/* javascript */ ` + "functions/bee.ts": dedent /* javascript */ ` export async function onRequest(context) { return context.env.BEE.fetch("https://example.com"); }`, @@ -622,7 +622,7 @@ describe("multiworker", () => { binding = "BEE" service = '${workerName2}' `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { async fetch(req, env) { return env.BEE.fetch(req); @@ -643,7 +643,7 @@ describe("multiworker", () => { [triggers] crons = ["0 * * * *"] `, - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { async fetch(req, env) { return new Response("hello world"); diff --git a/packages/wrangler/e2e/remote-binding/miniflare-remote-resources.test.ts b/packages/wrangler/e2e/remote-binding/miniflare-remote-resources.test.ts index bb4f47361d15..682b3bb13158 100644 --- a/packages/wrangler/e2e/remote-binding/miniflare-remote-resources.test.ts +++ b/packages/wrangler/e2e/remote-binding/miniflare-remote-resources.test.ts @@ -127,7 +127,7 @@ const testCases: TestCase[] = [ setup: async (helper) => { const targetWorkerName = generateResourceName(); await helper.seed({ - "target-worker.js": dedent/* javascript */ ` + "target-worker.js": dedent /* javascript */ ` import { WorkerEntrypoint } from "cloudflare:workers" export default { fetch(request) { @@ -374,7 +374,7 @@ const testCases: TestCase[] = [ const customerWorkerName = "remote-bindings-test-customer-worker"; await helper.seed({ - "customer-worker.js": dedent/* javascript */ ` + "customer-worker.js": dedent /* javascript */ ` import {WorkerEntrypoint} from "cloudflare:workers" export default class W extends WorkerEntrypoint { fetch(request) { @@ -616,7 +616,7 @@ if (!CLOUDFLARE_ACCOUNT_ID) { ], }; await helper.seed({ - "worker.js": dedent/* javascript */ ` + "worker.js": dedent /* javascript */ ` export default { fetch(request) { return new Response("Hello"); } } diff --git a/packages/wrangler/e2e/unenv-preset/worker/index.ts b/packages/wrangler/e2e/unenv-preset/worker/index.ts index 6287b72bf953..ead49e2dc46d 100644 --- a/packages/wrangler/e2e/unenv-preset/worker/index.ts +++ b/packages/wrangler/e2e/unenv-preset/worker/index.ts @@ -15,7 +15,7 @@ export default { return Response.json( flagName - ? getRuntimeFlagValue(flagName) ?? "undefined" + ? (getRuntimeFlagValue(flagName) ?? "undefined") : "The request is missing the `name` query parameter" ); } diff --git a/packages/wrangler/src/__tests__/api/startDevWorker/BundleController.test.ts b/packages/wrangler/src/__tests__/api/startDevWorker/BundleController.test.ts index ba648c599936..7918cd6ac638 100644 --- a/packages/wrangler/src/__tests__/api/startDevWorker/BundleController.test.ts +++ b/packages/wrangler/src/__tests__/api/startDevWorker/BundleController.test.ts @@ -72,7 +72,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { describe("happy path bundle + watch", () => { test("single ts source file", async () => { await seed({ - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { fetch(request, env, ctx) { //comment @@ -105,7 +105,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { // Now update the source file and see that we re-bundle const ev2 = bus.waitFor("bundleComplete"); await seed({ - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { fetch(request, env, ctx) { //comment @@ -132,7 +132,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { test("multiple ts source files", async () => { await seed({ - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` import name from "./other" export default { fetch(request, env, ctx) { @@ -141,7 +141,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { } } satisfies ExportedHandler `, - "src/other.ts": dedent/* javascript */ ` + "src/other.ts": dedent /* javascript */ ` export default "someone" `, }); @@ -171,7 +171,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { // Now update the secondary source file and see that we re-bundle ev = bus.waitFor("bundleComplete"); await seed({ - "src/other.ts": dedent/* javascript */ ` + "src/other.ts": dedent /* javascript */ ` export default "someone else" `, }); @@ -185,7 +185,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { test("custom build", async () => { await seed({ - "custom_build_dir/index.ts": dedent/* javascript */ ` + "custom_build_dir/index.ts": dedent /* javascript */ ` export default { fetch(request, env, ctx) { //comment @@ -227,7 +227,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { async () => { ev = bus.waitFor("bundleComplete"); await seed({ - "custom_build_dir/index.ts": dedent/* javascript */ ` + "custom_build_dir/index.ts": dedent /* javascript */ ` export default { fetch(request, env, ctx) { //comment @@ -259,7 +259,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { test("module aliasing", async () => { await seed({ - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` import name from "foo" export default { fetch(request, env, ctx) { @@ -268,10 +268,10 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { } } satisfies ExportedHandler `, - "node_modules/foo": dedent/* javascript */ ` + "node_modules/foo": dedent /* javascript */ ` export default "foo" `, - "node_modules/bar": dedent/* javascript */ ` + "node_modules/bar": dedent /* javascript */ ` export default "bar" `, }); @@ -283,7 +283,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { controller.onConfigUpdate({ type: "configUpdate", config }); expect((await ev).bundle.entrypointSource) - .toContain(dedent/* javascript */ ` + .toContain(dedent /* javascript */ ` // ../node_modules/foo var foo_default = "foo" `); @@ -302,7 +302,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { }, }); expect((await ev).bundle.entrypointSource) - .toContain(dedent/* javascript */ ` + .toContain(dedent /* javascript */ ` // ../node_modules/bar var bar_default = "bar" `); @@ -311,7 +311,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { describe("switching", () => { test("esbuild -> custom builds", { timeout: 500000 }, async () => { await seed({ - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { fetch(request, env, ctx) { //comment @@ -347,7 +347,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { // Now switch to custom builds and see that it rebundles await seed({ - "custom_build_dir/index.ts": dedent/* javascript */ ` + "custom_build_dir/index.ts": dedent /* javascript */ ` export default { fetch(request, env, ctx) { //comment @@ -397,7 +397,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { 500000 ); await seed({ - "custom_build_dir/index.ts": dedent/* javascript */ ` + "custom_build_dir/index.ts": dedent /* javascript */ ` export default { fetch(request, env, ctx) { //comment @@ -431,7 +431,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { test("custom builds -> esbuild", async () => { await seed({ - "custom_build_dir/index.ts": dedent/* javascript */ ` + "custom_build_dir/index.ts": dedent /* javascript */ ` export default { fetch(request, env, ctx) { //comment @@ -473,7 +473,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { " `); await seed({ - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { fetch(request, env, ctx) { //comment @@ -512,7 +512,7 @@ describe("BundleController", { retry: 5, timeout: 10_000 }, () => { // Now change the source file and see that we still rebundle ev = bus.waitFor("bundleComplete"); await seed({ - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { fetch(request, env, ctx) { //comment diff --git a/packages/wrangler/src/__tests__/api/startDevWorker/ConfigController.test.ts b/packages/wrangler/src/__tests__/api/startDevWorker/ConfigController.test.ts index ffe72c44c9cd..8b6ef68eb758 100644 --- a/packages/wrangler/src/__tests__/api/startDevWorker/ConfigController.test.ts +++ b/packages/wrangler/src/__tests__/api/startDevWorker/ConfigController.test.ts @@ -43,10 +43,10 @@ describe("ConfigController", () => { it("should prompt user to update types if they're out of date", async () => { await seed({ - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default {} `, - "wrangler.toml": dedent/* toml */ ` + "wrangler.toml": dedent /* toml */ ` name = "my-worker" main = "src/index.ts" compatibility_date = \"2024-06-01\" @@ -56,7 +56,7 @@ describe("ConfigController", () => { await controller.set({ config: "./wrangler.toml" }); await seed({ - "wrangler.toml": dedent/* toml */ ` + "wrangler.toml": dedent /* toml */ ` name = "my-worker" main = "src/index.ts" compatibility_date = \"2025-06-01\" @@ -71,10 +71,10 @@ describe("ConfigController", () => { it("should use account_id from config file before env var", async () => { await seed({ - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default {} `, - "wrangler.toml": dedent/* toml */ ` + "wrangler.toml": dedent /* toml */ ` name = "my-worker" main = "src/index.ts" compatibility_date = \"2024-06-01\" @@ -90,7 +90,7 @@ describe("ConfigController", () => { }); await seed({ - "wrangler.toml": dedent/* toml */ ` + "wrangler.toml": dedent /* toml */ ` name = "my-worker" main = "src/index.ts" compatibility_date = \"2024-06-01\" @@ -109,7 +109,7 @@ describe("ConfigController", () => { it("should emit configUpdate events with defaults applied", async () => { const event = bus.waitFor("configUpdate"); await seed({ - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { fetch(request, env, ctx) { return new Response("hello world") @@ -141,7 +141,7 @@ describe("ConfigController", () => { it("should apply module root to parent if main is nested from base_dir", async () => { const event = bus.waitFor("configUpdate"); await seed({ - "some/base_dir/nested/index.js": dedent/* javascript */ ` + "some/base_dir/nested/index.js": dedent /* javascript */ ` export default { fetch(request, env, ctx) { return new Response("hello world") @@ -175,7 +175,7 @@ describe("ConfigController", () => { it("should shallow merge patched config", async () => { const event1 = bus.waitFor("configUpdate"); await seed({ - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { fetch(request, env, ctx) { return new Response("hello world") @@ -266,12 +266,12 @@ describe("ConfigController", () => { it("should only log warnings once even with multiple config updates", async () => { await seed({ - "src/index.js": dedent/* javascript */ ` + "src/index.js": dedent /* javascript */ ` addEventListener('fetch', event => { event.respondWith(new Response('hello world')) }) `, - "wrangler.toml": dedent/* toml */ ` + "wrangler.toml": dedent /* toml */ ` name = "my-worker" main = "src/index.js" compatibility_date = "2024-06-01" diff --git a/packages/wrangler/src/__tests__/api/startDevWorker/LocalRuntimeController.test.ts b/packages/wrangler/src/__tests__/api/startDevWorker/LocalRuntimeController.test.ts index 0c7e9c8445e8..20f86da253b9 100644 --- a/packages/wrangler/src/__tests__/api/startDevWorker/LocalRuntimeController.test.ts +++ b/packages/wrangler/src/__tests__/api/startDevWorker/LocalRuntimeController.test.ts @@ -205,7 +205,7 @@ describe("LocalRuntimeController", () => { ], id: 0, path: "/virtual/esm/index.mjs", - entrypointSource: dedent/*javascript*/ ` + entrypointSource: dedent /*javascript*/ ` import add from "./add.cjs"; import base64 from "./base64.cjs"; import wave1 from "./data/wave.txt"; @@ -305,7 +305,7 @@ describe("LocalRuntimeController", () => { }; const bundle: Bundle = { type: "commonjs", - entrypointSource: dedent/*javascript*/ ` + entrypointSource: dedent /*javascript*/ ` addEventListener("fetch", (event) => { const { pathname } = new URL(event.request.url); if (pathname === "/") { @@ -403,7 +403,7 @@ describe("LocalRuntimeController", () => { VERSION: { type: "json", value: version }, }, } satisfies Partial; - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { fetch(request, env, ctx) { return Response.json({ binding: env.VERSION, bundle: ${version} }); @@ -457,7 +457,7 @@ describe("LocalRuntimeController", () => { entrypoint: "NOT_REAL", compatibilityDate: disabledDate, }; - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { fetch(request, env, ctx) { return new Response(typeof navigator); } } @@ -516,7 +516,7 @@ describe("LocalRuntimeController", () => { name: "worker", entrypoint: "NOT_REAL", }; - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { fetch(request, env, ctx) { debugger; @@ -594,7 +594,7 @@ describe("LocalRuntimeController", () => { }, }, }; - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { fetch(request, env, ctx) { const body = JSON.stringify(env, (key, value) => { @@ -672,7 +672,7 @@ describe("LocalRuntimeController", () => { dev: { persist: "./persist" }, }; - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { async fetch(request, env, ctx) { const key = "http://localhost/"; @@ -746,7 +746,7 @@ describe("LocalRuntimeController", () => { name: "worker", } satisfies Partial; - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { async fetch(request, env, ctx) { const key = "http://localhost/"; @@ -812,7 +812,7 @@ describe("LocalRuntimeController", () => { bindings: { NAMESPACE: { type: "kv_namespace", id: "ns" } }, dev: { persist: "./persist" }, }; - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { async fetch(request, env, ctx) { if (request.method === "POST") await env.NAMESPACE.put("key", "value"); @@ -881,7 +881,7 @@ describe("LocalRuntimeController", () => { (api) => api.create(secretValue) ); - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { async fetch(request, env, ctx) { return new Response(await env.SECRET.get()); @@ -916,7 +916,7 @@ describe("LocalRuntimeController", () => { const controller = new LocalRuntimeController(bus); teardown(() => controller.teardown()); - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { async fetch(request, env, ctx) { if (request.method === "POST") { @@ -988,7 +988,7 @@ describe("LocalRuntimeController", () => { entrypoint: "NOT_REAL", legacy: { site: { bucket: ".", include: ["*.txt"] } }, }; - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` import manifestJSON from "__STATIC_CONTENT_MANIFEST"; const manifest = JSON.parse(manifestJSON); export default { @@ -1057,7 +1057,7 @@ describe("LocalRuntimeController", () => { bindings: { BUCKET: { type: "r2_bucket", bucket_name: "bucket" } }, dev: { persist: "./persist" }, }; - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { async fetch(request, env, ctx) { if (request.method === "POST") await env.BUCKET.put("key", "value"); @@ -1124,7 +1124,7 @@ describe("LocalRuntimeController", () => { }, dev: { persist: "./persist" }, }; - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { async fetch(request, env, ctx) { await env.DB.exec("CREATE TABLE IF NOT EXISTS entries (key text PRIMARY KEY, value text)"); @@ -1205,7 +1205,7 @@ describe("LocalRuntimeController", () => { ], dev: { persist: "./persist" }, }; - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { async fetch(request, env, ctx) { await env.QUEUE.send("message"); @@ -1261,7 +1261,7 @@ describe("LocalRuntimeController", () => { DB: { type: "hyperdrive", id: "db", localConnectionString }, }, }; - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { async fetch(request, env, ctx) { const socket = env.DB.connect(); @@ -1413,7 +1413,7 @@ describe("LocalRuntimeController", () => { const controller = new LocalRuntimeController(bus); teardown(() => controller.teardown()); - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { async fetch(request, env, ctx) { let log = { @@ -1454,7 +1454,7 @@ describe("LocalRuntimeController", () => { const controller = new LocalRuntimeController(bus); teardown(() => controller.teardown()); - const bundle = makeEsbuildBundle(dedent/*javascript*/ ` + const bundle = makeEsbuildBundle(dedent /*javascript*/ ` export default { async fetch(request, env, ctx) { return new Response("env.IMAGES is " + (env.IMAGES === undefined ? "not available" : "available")); diff --git a/packages/wrangler/src/__tests__/deploy/core.test.ts b/packages/wrangler/src/__tests__/deploy/core.test.ts index 5b3b33d0dfb1..2abfa765d987 100644 --- a/packages/wrangler/src/__tests__/deploy/core.test.ts +++ b/packages/wrangler/src/__tests__/deploy/core.test.ts @@ -1020,7 +1020,7 @@ describe("deploy", () => { writeWranglerConfig(); fs.writeFileSync( "index.js", - dedent/* javascript */ ` + dedent /* javascript */ ` export default { fetch() { return diff --git a/packages/wrangler/src/__tests__/find-additional-modules.test.ts b/packages/wrangler/src/__tests__/find-additional-modules.test.ts index 47537013e7c8..32a225207c9c 100644 --- a/packages/wrangler/src/__tests__/find-additional-modules.test.ts +++ b/packages/wrangler/src/__tests__/find-additional-modules.test.ts @@ -21,7 +21,7 @@ describe("traverse module graph", () => { it("should not detect JS without module rules", async ({ expect }) => { await writeFile( "./index.js", - dedent/* javascript */ ` + dedent /* javascript */ ` import { HELLO } from "./other.js" export default { async fetch(request) { @@ -32,7 +32,7 @@ describe("traverse module graph", () => { ); await writeFile( "./other.js", - dedent/* javascript */ ` + dedent /* javascript */ ` export const HELLO = "WORLD" ` ); @@ -58,7 +58,7 @@ describe("traverse module graph", () => { ])("should detect JS as %s", async ([type, format], { expect }) => { await writeFile( "./index.js", - dedent/* javascript */ ` + dedent /* javascript */ ` import { HELLO } from "./other.js" export default { async fetch(request) { @@ -69,7 +69,7 @@ describe("traverse module graph", () => { ); await writeFile( "./other.js", - dedent/* javascript */ ` + dedent /* javascript */ ` export const HELLO = "WORLD" ` ); @@ -93,7 +93,7 @@ describe("traverse module graph", () => { await mkdir("./src/nested", { recursive: true }); await writeFile( "./src/nested/index.js", - dedent/* javascript */ ` + dedent /* javascript */ ` import { HELLO } from "../other.js" export default { async fetch(request) { @@ -104,7 +104,7 @@ describe("traverse module graph", () => { ); await writeFile( "./src/other.js", - dedent/* javascript */ ` + dedent /* javascript */ ` export const HELLO = "WORLD" ` ); @@ -129,7 +129,7 @@ describe("traverse module graph", () => { await mkdir("./src/nested", { recursive: true }); await writeFile( "./src/nested/index.js", - dedent/* javascript */ ` + dedent /* javascript */ ` import { HELLO } from "../other.js" export default { async fetch(request) { @@ -140,7 +140,7 @@ describe("traverse module graph", () => { ); await writeFile( "./src/other.js", - dedent/* javascript */ ` + dedent /* javascript */ ` export const HELLO = "WORLD" ` ); @@ -165,7 +165,7 @@ describe("traverse module graph", () => { await mkdir("./src/nested", { recursive: true }); await writeFile( "./src/nested/index.js", - dedent/* javascript */ ` + dedent /* javascript */ ` import { HELLO } from "../other.js" export default { async fetch(request) { @@ -176,7 +176,7 @@ describe("traverse module graph", () => { ); await writeFile( "./src/other.js", - dedent/* javascript */ ` + dedent /* javascript */ ` export const HELLO = "WORLD" ` ); @@ -201,7 +201,7 @@ describe("traverse module graph", () => { await mkdir("./src", { recursive: true }); await writeFile( "./src/index.js", - dedent/* javascript */ ` + dedent /* javascript */ ` import { HELLO } from "./other.js" export default { async fetch(request) { @@ -212,7 +212,7 @@ describe("traverse module graph", () => { ); await writeFile( "./src/wrangler.jsonc", - dedent/* jsonc */ ` + dedent /* jsonc */ ` { "compatibility_date": "2025/01/01" } @@ -252,7 +252,7 @@ describe("traverse module graph", () => { await mkdir("./src", { recursive: true }); await writeFile( "./src/index.js", - dedent/* javascript */ ` + dedent /* javascript */ ` import HELLO from "../other.txt" export default { async fetch(request) { @@ -263,7 +263,7 @@ describe("traverse module graph", () => { ); await writeFile( "./src/other.txt", - dedent/* javascript */ ` + dedent /* javascript */ ` export const HELLO = "WORLD" ` ); @@ -290,7 +290,7 @@ describe("traverse module graph", () => { await mkdir("./src", { recursive: true }); await writeFile( "./src/index.js", - dedent/* javascript */ ` + dedent /* javascript */ ` export default { async fetch(request) { return new Response(HELLO) @@ -300,7 +300,7 @@ describe("traverse module graph", () => { ); await writeFile( "./src/other.txt", - dedent/* javascript */ ` + dedent /* javascript */ ` export const HELLO = "WORLD" ` ); diff --git a/packages/wrangler/src/__tests__/get-entry.test.ts b/packages/wrangler/src/__tests__/get-entry.test.ts index c1ddcc161774..46275fcd7fda 100644 --- a/packages/wrangler/src/__tests__/get-entry.test.ts +++ b/packages/wrangler/src/__tests__/get-entry.test.ts @@ -32,7 +32,7 @@ describe("getEntry()", () => { it("--script index.ts", async () => { await seed({ - "index.ts": dedent/* javascript */ ` + "index.ts": dedent /* javascript */ ` export default { fetch() { @@ -54,7 +54,7 @@ describe("getEntry()", () => { it("--script src/index.ts", async () => { await seed({ - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { fetch() { @@ -76,7 +76,7 @@ describe("getEntry()", () => { it("main = index.ts", async () => { await seed({ - "index.ts": dedent/* javascript */ ` + "index.ts": dedent /* javascript */ ` export default { fetch() { @@ -98,7 +98,7 @@ describe("getEntry()", () => { it("main = src/index.ts", async () => { await seed({ - "src/index.ts": dedent/* javascript */ ` + "src/index.ts": dedent /* javascript */ ` export default { fetch() { @@ -120,7 +120,7 @@ describe("getEntry()", () => { it("main = src/index.ts w/ configPath", async () => { await seed({ - "other-worker/src/index.ts": dedent/* javascript */ ` + "other-worker/src/index.ts": dedent /* javascript */ ` export default { fetch() { diff --git a/packages/wrangler/src/__tests__/init.test.ts b/packages/wrangler/src/__tests__/init.test.ts index c2c6416f12de..6fc8ecb232f4 100644 --- a/packages/wrangler/src/__tests__/init.test.ts +++ b/packages/wrangler/src/__tests__/init.test.ts @@ -216,7 +216,7 @@ describe("init", () => { usage_model = "bundled", tags = [], compatibility_date = "1987-09-27", - content = dedent/*javascript*/ ` + content = dedent /*javascript*/ ` export default { async fetch(request, env, ctx) { return new Response("Hello World!"); @@ -1327,7 +1327,7 @@ describe("init", () => { "index.js", new File( [ - dedent/*javascript*/ ` + dedent /*javascript*/ ` import handleRequest from './other.js'; export default { @@ -1345,7 +1345,7 @@ describe("init", () => { "other.js", new File( [ - dedent/*javascript*/ ` + dedent /*javascript*/ ` export default function (request, env, ctx) { return new Response("Hello World!"); } diff --git a/packages/wrangler/src/__tests__/middleware.test.ts b/packages/wrangler/src/__tests__/middleware.test.ts index c230da721518..846e2ab78feb 100644 --- a/packages/wrangler/src/__tests__/middleware.test.ts +++ b/packages/wrangler/src/__tests__/middleware.test.ts @@ -827,7 +827,7 @@ describe("middleware", () => { it("should build multiple middleware as expected", async () => { await seedFs({ - "src/index.js": dedent/* javascript */ ` + "src/index.js": dedent /* javascript */ ` export default { async fetch(request, env) { return Response.json(env); @@ -841,7 +841,7 @@ describe("middleware", () => { } } `, - "wrangler.toml": dedent/*toml*/ ` + "wrangler.toml": dedent /*toml*/ ` name = "worker-app" main = "src/index.js" compatibility_date = "2022-03-31" diff --git a/packages/wrangler/src/__tests__/navigator-user-agent.test.ts b/packages/wrangler/src/__tests__/navigator-user-agent.test.ts index ee72e6b7f455..18fcba5ffc00 100644 --- a/packages/wrangler/src/__tests__/navigator-user-agent.test.ts +++ b/packages/wrangler/src/__tests__/navigator-user-agent.test.ts @@ -105,7 +105,7 @@ describe("defineNavigatorUserAgent is respected", () => { expect, }) => { await seedFs({ - "src/index.js": dedent/* javascript */ ` + "src/index.js": dedent /* javascript */ ` function randomBytes(length) { if (navigator.userAgent !== "Cloudflare-Workers") { return new Uint8Array(require("node:crypto").randomBytes(length)); @@ -159,7 +159,7 @@ describe("defineNavigatorUserAgent is respected", () => { expect, }) => { await seedFs({ - "src/index.js": dedent/* javascript */ ` + "src/index.js": dedent /* javascript */ ` function randomBytes(length) { if (navigator.userAgent !== "Cloudflare-Workers") { return new Uint8Array(require("node:crypto").randomBytes(length)); @@ -205,7 +205,7 @@ describe("defineNavigatorUserAgent is respected", () => { expect, }) => { await seedFs({ - "src/index.js": dedent/* javascript */ ` + "src/index.js": dedent /* javascript */ ` function randomBytes(length) { if (navigator.userAgent !== "Cloudflare-Workers") { return new Uint8Array(require("node:crypto").randomBytes(length)); diff --git a/packages/wrangler/src/api/integrations/platform/index.ts b/packages/wrangler/src/api/integrations/platform/index.ts index d61fc9eb29bf..3f3f0cc617d5 100644 --- a/packages/wrangler/src/api/integrations/platform/index.ts +++ b/packages/wrangler/src/api/integrations/platform/index.ts @@ -515,7 +515,7 @@ export function unstable_getMiniflareWorkerOptions( compatibilityFlags: config.compatibility_flags, modulesRules, containerEngine: useContainers - ? config.dev.container_engine ?? resolveDockerHost(getDockerPath()) + ? (config.dev.container_engine ?? resolveDockerHost(getDockerPath())) : undefined, ...bindingOptions, diff --git a/packages/wrangler/src/api/startDevWorker/ConfigController.ts b/packages/wrangler/src/api/startDevWorker/ConfigController.ts index 01407556608e..e200ef358370 100644 --- a/packages/wrangler/src/api/startDevWorker/ConfigController.ts +++ b/packages/wrangler/src/api/startDevWorker/ConfigController.ts @@ -159,9 +159,9 @@ async function resolveDevConfig( input.dev?.enableContainers ?? config.dev.enable_containers, dockerPath: input.dev?.dockerPath ?? getDockerPath(), containerEngine: useContainers - ? input.dev?.containerEngine ?? + ? (input.dev?.containerEngine ?? config.dev.container_engine ?? - resolveDockerHost(input.dev?.dockerPath ?? getDockerPath()) + resolveDockerHost(input.dev?.dockerPath ?? getDockerPath())) : undefined, containerBuildId: input.dev?.containerBuildId, generateTypes: input.dev?.generateTypes ?? config.dev.generate_types, diff --git a/packages/wrangler/src/api/startDevWorker/MultiworkerRuntimeController.ts b/packages/wrangler/src/api/startDevWorker/MultiworkerRuntimeController.ts index a3fa386f2eb0..56c6f4883177 100644 --- a/packages/wrangler/src/api/startDevWorker/MultiworkerRuntimeController.ts +++ b/packages/wrangler/src/api/startDevWorker/MultiworkerRuntimeController.ts @@ -118,9 +118,8 @@ export class MultiworkerRuntimeController extends LocalRuntimeController { if (data.config.dev?.remote !== false) { // note: remote bindings use (transitively) LocalRuntimeController, so we need to import // from the module lazily in order to avoid circular dependency issues - const { maybeStartOrUpdateRemoteProxySession } = await import( - "../remoteBindings" - ); + const { maybeStartOrUpdateRemoteProxySession } = + await import("../remoteBindings"); const remoteProxySession = await maybeStartOrUpdateRemoteProxySession( { name: configBundle.name, diff --git a/packages/wrangler/src/api/startDevWorker/utils.ts b/packages/wrangler/src/api/startDevWorker/utils.ts index d2f6acdb42d8..79027a74f712 100644 --- a/packages/wrangler/src/api/startDevWorker/utils.ts +++ b/packages/wrangler/src/api/startDevWorker/utils.ts @@ -133,7 +133,7 @@ export function convertConfigToBindings( output[binding] = { type: "kv_namespace", ...x, - id: usePreviewIds ? x.preview_id ?? x.id : x.id, + id: usePreviewIds ? (x.preview_id ?? x.id) : x.id, }; } break; @@ -215,7 +215,7 @@ export function convertConfigToBindings( type: "r2_bucket", ...x, bucket_name: usePreviewIds - ? x.preview_bucket_name ?? x.bucket_name + ? (x.preview_bucket_name ?? x.bucket_name) : x.bucket_name, }; } @@ -227,7 +227,7 @@ export function convertConfigToBindings( type: "d1", ...x, database_id: usePreviewIds - ? x.preview_database_id ?? x.database_id + ? (x.preview_database_id ?? x.database_id) : x.database_id, }; } diff --git a/packages/wrangler/src/autoconfig/frameworks/react-router.ts b/packages/wrangler/src/autoconfig/frameworks/react-router.ts index 5add1341d615..0615162670d0 100644 --- a/packages/wrangler/src/autoconfig/frameworks/react-router.ts +++ b/packages/wrangler/src/autoconfig/frameworks/react-router.ts @@ -162,7 +162,7 @@ export class ReactRouter extends Framework { writeFileSync( "workers/app.ts", - dedent/* javascript */ ` + dedent /* javascript */ ` import { createRequestHandler } from "react-router"; declare module "react-router" { @@ -199,7 +199,7 @@ export class ReactRouter extends Framework { if (!existsSync("app/entry.server.tsx")) { writeFileSync( `app/entry.server.tsx`, - dedent/* javascript */ ` + dedent /* javascript */ ` import type { AppLoadContext, EntryContext } from "react-router"; import { ServerRouter } from "react-router"; import { isbot } from "isbot"; diff --git a/packages/wrangler/src/cfetch/index.ts b/packages/wrangler/src/cfetch/index.ts index 53a70a7bf7c4..b4b55db1903e 100644 --- a/packages/wrangler/src/cfetch/index.ts +++ b/packages/wrangler/src/cfetch/index.ts @@ -254,12 +254,12 @@ export function renderError(err: FetchError | ErrorData, level = 0): string { const indent = " ".repeat(level); const chainedMessages = "error_chain" in err - ? err.error_chain + ? (err.error_chain ?.map( (chainedError) => `\n\n${indent}- ${renderError(chainedError, level + 1)}` ) - .join("\n") ?? "" + .join("\n") ?? "") : ""; return ( (err.code ? `${err.message} [code: ${err.code}]` : err.message) + diff --git a/packages/wrangler/src/cloudchamber/apply.ts b/packages/wrangler/src/cloudchamber/apply.ts index f0b06f1b693f..989e18ae9eae 100644 --- a/packages/wrangler/src/cloudchamber/apply.ts +++ b/packages/wrangler/src/cloudchamber/apply.ts @@ -453,7 +453,7 @@ export async function apply( name: application.name, rollout_step_percentage: application.durable_objects !== undefined - ? appConfigNoDefaults.rollout_step_percentage ?? 25 + ? (appConfigNoDefaults.rollout_step_percentage ?? 25) : appConfigNoDefaults.rollout_step_percentage, rollout_kind: appConfigNoDefaults.rollout_kind == "full_manual" diff --git a/packages/wrangler/src/config/index.ts b/packages/wrangler/src/config/index.ts index bda6a25be3d6..021b4bc83433 100644 --- a/packages/wrangler/src/config/index.ts +++ b/packages/wrangler/src/config/index.ts @@ -131,9 +131,7 @@ export function readPagesConfig( throw new UserError(diagnostics.renderErrors()); } - logger.debug( - `Configuration file belonging to ⚡️ Pages ⚡️ project detected.` - ); + logger.debug(`Configuration file belonging to ⚡️ Pages ⚡️ project detected.`); const envNames = rawConfig.env ? Object.keys(rawConfig.env) : []; const projectName = rawConfig?.name; diff --git a/packages/wrangler/src/containers/config.ts b/packages/wrangler/src/containers/config.ts index c59237c18ee8..5fb84092a9f7 100644 --- a/packages/wrangler/src/containers/config.ts +++ b/packages/wrangler/src/containers/config.ts @@ -123,7 +123,8 @@ export const getNormalizedContainerOptions = async ( rollout_step_percentage: args?.containersRollout === "immediate" ? 100 - : container.rollout_step_percentage ?? rolloutStepPercentageFallback, + : (container.rollout_step_percentage ?? + rolloutStepPercentageFallback), rollout_kind: container.rollout_kind ?? "full_auto", rollout_active_grace_period: container.rollout_active_grace_period ?? 0, observability: { diff --git a/packages/wrangler/src/containers/deploy.ts b/packages/wrangler/src/containers/deploy.ts index 539977a7a8ff..a8f0950f7d27 100644 --- a/packages/wrangler/src/containers/deploy.ts +++ b/packages/wrangler/src/containers/deploy.ts @@ -347,7 +347,7 @@ export async function apply( // however deployments that fail after push may result in no previous app but the image still existing const imageRef = "remoteDigest" in args.imageRef - ? prevApp?.configuration.image ?? args.imageRef.remoteDigest + ? (prevApp?.configuration.image ?? args.imageRef.remoteDigest) : args.imageRef.newTag; log(dim("Container application changes\n")); diff --git a/packages/wrangler/src/core/CommandRegistry.ts b/packages/wrangler/src/core/CommandRegistry.ts index ed1732d87982..046389a037c2 100644 --- a/packages/wrangler/src/core/CommandRegistry.ts +++ b/packages/wrangler/src/core/CommandRegistry.ts @@ -463,7 +463,7 @@ export class CommandRegistry { const { subtree } = node.definition.type !== "alias" ? node - : this.#findNodeFor(resolvedDef.command) ?? node; + : (this.#findNodeFor(resolvedDef.command) ?? node); const definition: InternalDefinition = { // take all properties from the resolved alias diff --git a/packages/wrangler/src/core/register-yargs-command.ts b/packages/wrangler/src/core/register-yargs-command.ts index 82a044b6fa4d..f80fec2ce2d7 100644 --- a/packages/wrangler/src/core/register-yargs-command.ts +++ b/packages/wrangler/src/core/register-yargs-command.ts @@ -183,7 +183,7 @@ function createHandler(def: InternalCommandDefinition, argv: string[]) { await run(experimentalFlags, async () => { const config = - def.behaviour?.provideConfig ?? true + (def.behaviour?.provideConfig ?? true) ? readConfig(args, { hideWarnings: !(def.behaviour?.printConfigWarnings ?? true), useRedirectIfAvailable: diff --git a/packages/wrangler/src/d1/execute.ts b/packages/wrangler/src/d1/execute.ts index 8e0699f840a4..6a33074d3e00 100644 --- a/packages/wrangler/src/d1/execute.ts +++ b/packages/wrangler/src/d1/execute.ts @@ -610,7 +610,7 @@ function logResult(r: QueryResult | QueryResult[]) { ? r .map((d: QueryResult) => d.meta?.duration || 0) .reduce((a, b) => a + b, 0) - : r.meta?.duration ?? 0; + : (r.meta?.duration ?? 0); logger.log(`🚣 Executed ${commandsCount} in ${durationMs.toFixed(2)}ms`); } diff --git a/packages/wrangler/src/deployment-bundle/apply-middleware.ts b/packages/wrangler/src/deployment-bundle/apply-middleware.ts index 65c0d667b8c0..5dba0fe181e4 100644 --- a/packages/wrangler/src/deployment-bundle/apply-middleware.ts +++ b/packages/wrangler/src/deployment-bundle/apply-middleware.ts @@ -61,7 +61,7 @@ export async function applyMiddlewareLoaderFacade( if (entry.format === "modules") { await fs.promises.writeFile( dynamicFacadePath, - dedent/*javascript*/ ` + dedent /*javascript*/ ` import worker, * as OTHER_EXPORTS from "${prepareFilePath(entry.file)}"; ${imports} @@ -110,7 +110,7 @@ export async function applyMiddlewareLoaderFacade( await fs.promises.writeFile( dynamicFacadePath, - dedent/*javascript*/ ` + dedent /*javascript*/ ` import { __facade_registerInternal__ } from "${prepareFilePath(loaderSwPath)}"; ${imports} __facade_registerInternal__([${middlewareFns}]) diff --git a/packages/wrangler/src/deployment-bundle/create-worker-upload-form.ts b/packages/wrangler/src/deployment-bundle/create-worker-upload-form.ts index d13cbe949df4..d805659f878d 100644 --- a/packages/wrangler/src/deployment-bundle/create-worker-upload-form.ts +++ b/packages/wrangler/src/deployment-bundle/create-worker-upload-form.ts @@ -456,7 +456,7 @@ export function createWorkerUploadForm( ? source.contents : readFileSync(source.path as string), ], - "path" in source ? source.path ?? name : name, + "path" in source ? (source.path ?? name) : name, { type: "application/wasm" } ) ); @@ -549,7 +549,7 @@ export function createWorkerUploadForm( ? source.contents : readFileSync(source.path as string), ], - "path" in source ? source.path ?? name : name, + "path" in source ? (source.path ?? name) : name, { type: "application/octet-stream" } ) ); diff --git a/packages/wrangler/src/deployment-bundle/esbuild-plugins/hybrid-nodejs-compat.ts b/packages/wrangler/src/deployment-bundle/esbuild-plugins/hybrid-nodejs-compat.ts index 9c91b5c0324d..dc87853f8070 100644 --- a/packages/wrangler/src/deployment-bundle/esbuild-plugins/hybrid-nodejs-compat.ts +++ b/packages/wrangler/src/deployment-bundle/esbuild-plugins/hybrid-nodejs-compat.ts @@ -24,9 +24,8 @@ export function nodejsHybridPlugin({ async setup(build) { // `unenv` and `@cloudflare/unenv-preset` only publish esm const { defineEnv } = await import("unenv"); - const { getCloudflarePreset, nonPrefixedNodeModules } = await import( - "@cloudflare/unenv-preset" - ); + const { getCloudflarePreset, nonPrefixedNodeModules } = + await import("@cloudflare/unenv-preset"); const { alias, inject, external, polyfill } = defineEnv({ presets: [ getCloudflarePreset({ diff --git a/packages/wrangler/src/dev/create-worker-preview.ts b/packages/wrangler/src/dev/create-worker-preview.ts index 383efed694ba..0698a5c1df70 100644 --- a/packages/wrangler/src/dev/create-worker-preview.ts +++ b/packages/wrangler/src/dev/create-worker-preview.ts @@ -106,7 +106,7 @@ function switchHost( zonePreview: boolean ): URL { const url = new URL(originalUrl); - url.hostname = zonePreview ? host ?? url.hostname : url.hostname; + url.hostname = zonePreview ? (host ?? url.hostname) : url.hostname; return url; } @@ -190,7 +190,7 @@ export async function createPreviewSession( }>(complianceConfig, initUrl, undefined, undefined, abortSignal, apiToken); const previewSessionToken = exchange_url - ? (await tryExpandToken(exchange_url, ctx, abortSignal)) ?? token + ? ((await tryExpandToken(exchange_url, ctx, abortSignal)) ?? token) : token; try { diff --git a/packages/wrangler/src/dev/inspect.ts b/packages/wrangler/src/dev/inspect.ts index e92a85dab4d3..542d54264e2a 100644 --- a/packages/wrangler/src/dev/inspect.ts +++ b/packages/wrangler/src/dev/inspect.ts @@ -70,7 +70,7 @@ export function logConsoleMessage( args.push( ro.subtype === "null" ? "null" - : ro.description ?? "" + : (ro.description ?? "") ); } else { args.push(ro.preview.description ?? ""); diff --git a/packages/wrangler/src/miniflare-cli/assets.ts b/packages/wrangler/src/miniflare-cli/assets.ts index 34cf689cb30f..77374bff7419 100644 --- a/packages/wrangler/src/miniflare-cli/assets.ts +++ b/packages/wrangler/src/miniflare-cli/assets.ts @@ -148,9 +148,8 @@ async function generateAssetsFetch( ).default; await polyfill(); - const { generateHandler, parseQualityWeightedList } = await import( - "@cloudflare/pages-shared/asset-server/handler" - ); + const { generateHandler, parseQualityWeightedList } = + await import("@cloudflare/pages-shared/asset-server/handler"); const headersFile = join(directory, "_headers"); const redirectsFile = join(directory, "_redirects"); diff --git a/packages/wrangler/src/output.ts b/packages/wrangler/src/output.ts index c992e05f60e0..23de6e390058 100644 --- a/packages/wrangler/src/output.ts +++ b/packages/wrangler/src/output.ts @@ -120,8 +120,7 @@ interface OutputEntryPagesDeployment extends OutputEntryBase<"pages-deploy"> { url: string | undefined; } -interface OutputEntryPagesDeploymentDetailed - extends OutputEntryBase<"pages-deploy-detailed"> { +interface OutputEntryPagesDeploymentDetailed extends OutputEntryBase<"pages-deploy-detailed"> { version: 1; /** The name of the Pages project. */ pages_project: string | null; @@ -161,8 +160,7 @@ interface OutputEntryVersionUpload extends OutputEntryBase<"version-upload"> { wrangler_environment: string | undefined; } -interface OutputEntryVersionDeployment - extends OutputEntryBase<"version-deploy"> { +interface OutputEntryVersionDeployment extends OutputEntryBase<"version-deploy"> { version: 1; /** The name of the Worker. */ worker_name: string | null; diff --git a/packages/wrangler/src/pipelines/types.ts b/packages/wrangler/src/pipelines/types.ts index 54057175f6c6..532675f4049f 100644 --- a/packages/wrangler/src/pipelines/types.ts +++ b/packages/wrangler/src/pipelines/types.ts @@ -31,8 +31,9 @@ export interface CloudflareAPIResponse { result: T; } -export interface PipelineListResponse - extends CloudflareAPIResponse { +export interface PipelineListResponse extends CloudflareAPIResponse< + Pipeline[] +> { result_info: PaginationInfo; } diff --git a/packages/wrangler/src/utils/getLegacyScriptName.ts b/packages/wrangler/src/utils/getLegacyScriptName.ts index 3bfb92f6d903..c01cf637367f 100644 --- a/packages/wrangler/src/utils/getLegacyScriptName.ts +++ b/packages/wrangler/src/utils/getLegacyScriptName.ts @@ -11,5 +11,5 @@ export function getLegacyScriptName( ) { return args.name && args.env && !useServiceEnvironments(config) ? `${args.name}-${args.env}` - : args.name ?? config.name; + : (args.name ?? config.name); } diff --git a/packages/wrangler/src/utils/print-bindings.ts b/packages/wrangler/src/utils/print-bindings.ts index 8d529bdb0fbf..4665501208b2 100644 --- a/packages/wrangler/src/utils/print-bindings.ts +++ b/packages/wrangler/src/utils/print-bindings.ts @@ -292,7 +292,7 @@ export function printBindings( const value = typeof database_id == "symbol" ? database_id - : preview_database_id ?? database_name ?? database_id; + : (preview_database_id ?? database_name ?? database_id); return { name: binding, @@ -718,7 +718,9 @@ export function printBindings( const maxValueLength = Math.max( ...output.map((b) => - typeof b.value === "symbol" ? "inherited".length : b.value?.length ?? 0 + typeof b.value === "symbol" + ? "inherited".length + : (b.value?.length ?? 0) ) ); const maxNameLength = Math.max(...output.map((b) => b.name.length)); @@ -765,7 +767,7 @@ export function printBindings( const bindingValue = dim( typeof binding.value === "symbol" ? chalk.italic("inherited") - : binding.value ?? "" + : (binding.value ?? "") ); const bindingString = padEndAnsi( `${white(`env.${binding.name}`)}${binding.value && !shouldWrap ? ` (${bindingValue})` : ""}`, diff --git a/packages/wrangler/src/vectorize/types.ts b/packages/wrangler/src/vectorize/types.ts index d21187f724d1..46a2215cf4ae 100644 --- a/packages/wrangler/src/vectorize/types.ts +++ b/packages/wrangler/src/vectorize/types.ts @@ -174,8 +174,7 @@ export type VectorizeIndexDetails = { processedUpToMutation: string; }; -export interface VectorizeMetadataIndexProperty - extends VectorizeMetadataIndexPropertyName { +export interface VectorizeMetadataIndexProperty extends VectorizeMetadataIndexPropertyName { /** Specifies the type of metadata property to index. */ indexType: VectorizeVectorMetadataValueString; } diff --git a/packages/wrangler/templates/checked-fetch.js b/packages/wrangler/templates/checked-fetch.js index 8c007fdc5513..e5e026d3a251 100644 --- a/packages/wrangler/templates/checked-fetch.js +++ b/packages/wrangler/templates/checked-fetch.js @@ -5,10 +5,8 @@ function checkURL(request, init) { request instanceof URL ? request : new URL( - (typeof request === "string" - ? new Request(request, init) - : request - ).url + (typeof request === "string" ? new Request(request, init) : request) + .url ); if (url.port && url.port !== "443" && url.protocol === "https:") { if (!urls.has(url.toString())) { diff --git a/packages/wrangler/vitest.config.mts b/packages/wrangler/vitest.config.mts index 79cc017d109a..58f0776d1c71 100644 --- a/packages/wrangler/vitest.config.mts +++ b/packages/wrangler/vitest.config.mts @@ -49,7 +49,7 @@ function embedWorkersPlugin() { this.addWatchFile(file); } - return dedent/*javascript*/ ` + return dedent /*javascript*/ ` export default ${absoluteScriptPath}; `; }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 581170d73c9d..a5ff34514c79 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -139,7 +139,7 @@ importers: version: 0.4.1 '@ianvs/prettier-plugin-sort-imports': specifier: 4.2.1 - version: 4.2.1(@vue/compiler-sfc@3.3.4)(prettier@3.2.5) + version: 4.2.1(@vue/compiler-sfc@3.3.4)(prettier@3.8.1) '@manypkg/cli': specifier: ^0.23.0 version: 0.23.0 @@ -165,14 +165,14 @@ importers: specifier: catalog:default version: 3.2.0 prettier: - specifier: ^3.2.5 - version: 3.2.5 + specifier: ^3.8.1 + version: 3.8.1 prettier-plugin-packagejson: specifier: ^2.2.18 - version: 2.2.18(prettier@3.2.5) + version: 2.2.18(prettier@3.8.1) prettier-plugin-tailwindcss: specifier: ^0.7.2 - version: 0.7.2(@ianvs/prettier-plugin-sort-imports@4.2.1(@vue/compiler-sfc@3.3.4)(prettier@3.2.5))(prettier@3.2.5) + version: 0.7.2(@ianvs/prettier-plugin-sort-imports@4.2.1(@vue/compiler-sfc@3.3.4)(prettier@3.8.1))(prettier@3.8.1) tree-kill: specifier: ^1.2.2 version: 1.2.2 @@ -14138,21 +14138,11 @@ packages: prettier-plugin-svelte: optional: true - prettier@2.7.1: - resolution: {integrity: sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==} - engines: {node: '>=10.13.0'} - hasBin: true - prettier@2.8.8: resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} engines: {node: '>=10.13.0'} hasBin: true - prettier@3.2.5: - resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} - engines: {node: '>=14'} - hasBin: true - prettier@3.8.1: resolution: {integrity: sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==} engines: {node: '>=14'} @@ -17530,7 +17520,7 @@ snapshots: '@changesets/types': 6.1.0 fs-extra: 7.0.1 human-id: 4.1.1 - prettier: 2.7.1 + prettier: 2.8.8 '@chevrotain/cst-dts-gen@10.5.0': dependencies: @@ -18767,14 +18757,14 @@ snapshots: '@humanwhocodes/retry@0.4.3': {} - '@ianvs/prettier-plugin-sort-imports@4.2.1(@vue/compiler-sfc@3.3.4)(prettier@3.2.5)': + '@ianvs/prettier-plugin-sort-imports@4.2.1(@vue/compiler-sfc@3.3.4)(prettier@3.8.1)': dependencies: '@babel/core': 7.26.0 '@babel/generator': 7.26.3 '@babel/parser': 7.26.3 '@babel/traverse': 7.25.9 '@babel/types': 7.26.3 - prettier: 3.2.5 + prettier: 3.8.1 semver: 7.7.3 optionalDependencies: '@vue/compiler-sfc': 3.3.4 @@ -26422,23 +26412,19 @@ snapshots: prelude-ls@1.2.1: {} - prettier-plugin-packagejson@2.2.18(prettier@3.2.5): + prettier-plugin-packagejson@2.2.18(prettier@3.8.1): dependencies: - prettier: 3.2.5 + prettier: 3.8.1 sort-package-json: 1.57.0 - prettier-plugin-tailwindcss@0.7.2(@ianvs/prettier-plugin-sort-imports@4.2.1(@vue/compiler-sfc@3.3.4)(prettier@3.2.5))(prettier@3.2.5): + prettier-plugin-tailwindcss@0.7.2(@ianvs/prettier-plugin-sort-imports@4.2.1(@vue/compiler-sfc@3.3.4)(prettier@3.8.1))(prettier@3.8.1): dependencies: - prettier: 3.2.5 + prettier: 3.8.1 optionalDependencies: - '@ianvs/prettier-plugin-sort-imports': 4.2.1(@vue/compiler-sfc@3.3.4)(prettier@3.2.5) - - prettier@2.7.1: {} + '@ianvs/prettier-plugin-sort-imports': 4.2.1(@vue/compiler-sfc@3.3.4)(prettier@3.8.1) prettier@2.8.8: {} - prettier@3.2.5: {} - prettier@3.8.1: {} pretty-bytes@6.1.1: {} From a671740787a95779f89e3b1bb2154990c6e14212 Mon Sep 17 00:00:00 2001 From: ANT Bot <116369605+workers-devprod@users.noreply.github.com> Date: Tue, 17 Mar 2026 17:20:30 +0000 Subject: [PATCH 3/4] Version Packages (#12923) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/bump-undici.md | 6 - .changeset/c3-frameworks-update-11639.md | 11 - .changeset/c3-frameworks-update-12905.md | 11 - .changeset/c3-frameworks-update-12907.md | 11 - .changeset/c3-frameworks-update-12908.md | 11 - .changeset/c3-frameworks-update-12909.md | 11 - .changeset/dependabot-update-12875.md | 12 -- .changeset/dependabot-update-12935.md | 12 -- .changeset/kind-beers-occur.md | 7 - .../migrate-devtools-to-workers-assets.md | 11 - .changeset/open-apples-heal.md | 7 - .changeset/quick-items-shine.md | 7 - .changeset/tunnel-commands.md | 18 -- .changeset/warm-mirrors-allow.md | 7 - packages/chrome-devtools-patches/CHANGELOG.md | 11 +- packages/chrome-devtools-patches/package.json | 2 +- packages/create-cloudflare/CHANGELOG.md | 55 ++++- packages/create-cloudflare/package.json | 2 +- packages/miniflare/CHANGELOG.md | 39 +++- packages/miniflare/package.json | 2 +- packages/pages-shared/CHANGELOG.md | 9 +- packages/pages-shared/package.json | 2 +- packages/vite-plugin-cloudflare/CHANGELOG.md | 15 +- packages/vite-plugin-cloudflare/package.json | 2 +- packages/vitest-pool-workers/CHANGELOG.md | 20 +- packages/vitest-pool-workers/package.json | 2 +- packages/wrangler/CHANGELOG.md | 190 ++++++------------ packages/wrangler/package.json | 2 +- 28 files changed, 175 insertions(+), 320 deletions(-) delete mode 100644 .changeset/bump-undici.md delete mode 100644 .changeset/c3-frameworks-update-11639.md delete mode 100644 .changeset/c3-frameworks-update-12905.md delete mode 100644 .changeset/c3-frameworks-update-12907.md delete mode 100644 .changeset/c3-frameworks-update-12908.md delete mode 100644 .changeset/c3-frameworks-update-12909.md delete mode 100644 .changeset/dependabot-update-12875.md delete mode 100644 .changeset/dependabot-update-12935.md delete mode 100644 .changeset/kind-beers-occur.md delete mode 100644 .changeset/migrate-devtools-to-workers-assets.md delete mode 100644 .changeset/open-apples-heal.md delete mode 100644 .changeset/quick-items-shine.md delete mode 100644 .changeset/tunnel-commands.md delete mode 100644 .changeset/warm-mirrors-allow.md diff --git a/.changeset/bump-undici.md b/.changeset/bump-undici.md deleted file mode 100644 index 3c96965c3fda..000000000000 --- a/.changeset/bump-undici.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"wrangler": patch -"miniflare": patch ---- - -Bump undici from 7.18.2 to 7.24.4 diff --git a/.changeset/c3-frameworks-update-11639.md b/.changeset/c3-frameworks-update-11639.md deleted file mode 100644 index 0349a9d33a36..000000000000 --- a/.changeset/c3-frameworks-update-11639.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -"create-cloudflare": patch ---- - -Update dependencies of "create-cloudflare" - -The following dependency versions have been updated: - -| Dependency | From | To | -| --------------- | ------ | ------ | -| create-next-app | 15.5.6 | 16.1.6 | diff --git a/.changeset/c3-frameworks-update-12905.md b/.changeset/c3-frameworks-update-12905.md deleted file mode 100644 index 34aff98588e8..000000000000 --- a/.changeset/c3-frameworks-update-12905.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -"create-cloudflare": patch ---- - -Update dependencies of "create-cloudflare" - -The following dependency versions have been updated: - -| Dependency | From | To | -| ---------- | ------ | ------ | -| nuxi | 3.33.1 | 3.34.0 | diff --git a/.changeset/c3-frameworks-update-12907.md b/.changeset/c3-frameworks-update-12907.md deleted file mode 100644 index 9d7bf39e27f8..000000000000 --- a/.changeset/c3-frameworks-update-12907.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -"create-cloudflare": patch ---- - -Update dependencies of "create-cloudflare" - -The following dependency versions have been updated: - -| Dependency | From | To | -| ------------ | ------ | ----- | -| create-astro | 4.13.2 | 5.0.0 | diff --git a/.changeset/c3-frameworks-update-12908.md b/.changeset/c3-frameworks-update-12908.md deleted file mode 100644 index c7e06ab287d4..000000000000 --- a/.changeset/c3-frameworks-update-12908.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -"create-cloudflare": patch ---- - -Update dependencies of "create-cloudflare" - -The following dependency versions have been updated: - -| Dependency | From | To | -| --------------- | ------ | ------ | -| @angular/create | 21.2.1 | 21.2.2 | diff --git a/.changeset/c3-frameworks-update-12909.md b/.changeset/c3-frameworks-update-12909.md deleted file mode 100644 index 756dd07bd60a..000000000000 --- a/.changeset/c3-frameworks-update-12909.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -"create-cloudflare": patch ---- - -Update dependencies of "create-cloudflare" - -The following dependency versions have been updated: - -| Dependency | From | To | -| ----------- | ------ | ------ | -| create-qwik | 1.19.1 | 1.19.2 | diff --git a/.changeset/dependabot-update-12875.md b/.changeset/dependabot-update-12875.md deleted file mode 100644 index 82ce2f928af5..000000000000 --- a/.changeset/dependabot-update-12875.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -"miniflare": patch -"wrangler": patch ---- - -Update dependencies of "miniflare", "wrangler" - -The following dependency versions have been updated: - -| Dependency | From | To | -| ---------- | ------------ | ------------ | -| workerd | 1.20260312.1 | 1.20260316.1 | diff --git a/.changeset/dependabot-update-12935.md b/.changeset/dependabot-update-12935.md deleted file mode 100644 index 201562443b9f..000000000000 --- a/.changeset/dependabot-update-12935.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -"miniflare": patch -"wrangler": patch ---- - -Update dependencies of "miniflare", "wrangler" - -The following dependency versions have been updated: - -| Dependency | From | To | -| ---------- | ------------ | ------------ | -| workerd | 1.20260316.1 | 1.20260317.1 | diff --git a/.changeset/kind-beers-occur.md b/.changeset/kind-beers-occur.md deleted file mode 100644 index 175251c6459a..000000000000 --- a/.changeset/kind-beers-occur.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@cloudflare/vite-plugin": patch ---- - -Select the appropriate `vite/module-runner` implementation during dev based on the user's Vite version - -The plugin now builds against Vite 8 and ships two bundled copies of `vite/module-runner`: one from Vite 8 and one from Vite 7.1.12 (the last version before a breaking change to the module runner in Vite 7.2.0). At dev server startup, the correct implementation is selected based on the user's installed Vite version. This is Vite 8's module runner for users on Vite >= 7.2.0, and the legacy module runner for users on older versions. diff --git a/.changeset/migrate-devtools-to-workers-assets.md b/.changeset/migrate-devtools-to-workers-assets.md deleted file mode 100644 index c91d4c68d74c..000000000000 --- a/.changeset/migrate-devtools-to-workers-assets.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -"@cloudflare/chrome-devtools-patches": patch -"wrangler": patch -"miniflare": patch ---- - -Migrate chrome-devtools-patches deployment from Cloudflare Pages to Workers + Assets - -The DevTools frontend is now deployed as a Cloudflare Workers + Assets project instead of a Cloudflare Pages project. This uses `wrangler deploy` for production deployments and `wrangler versions upload` for PR preview deployments. - -The inspector proxy origin allowlists in both wrangler and miniflare have been updated to accept connections from the new `workers.dev` domain patterns, while retaining the legacy `pages.dev` patterns for backward compatibility. diff --git a/.changeset/open-apples-heal.md b/.changeset/open-apples-heal.md deleted file mode 100644 index e808b18e444b..000000000000 --- a/.changeset/open-apples-heal.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"wrangler": patch ---- - -Fix execution freezing on `debugger` statements when DevTools is not attached - -Previously, `wrangler` always sent `Debugger.enable` to the runtime on connection, even when DevTools wasn't open. This caused scripts to freeze on `debugger` statements. Now `Debugger.enable` is only sent when DevTools is actually attached, and `Debugger.disable` is sent when DevTools disconnects to stop the runtime from performing debugging work. diff --git a/.changeset/quick-items-shine.md b/.changeset/quick-items-shine.md deleted file mode 100644 index e20138c25a4c..000000000000 --- a/.changeset/quick-items-shine.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"wrangler": patch ---- - -Simplify description of --json option - -Remove extraneous adjectives in the description of the `--json` option. diff --git a/.changeset/tunnel-commands.md b/.changeset/tunnel-commands.md deleted file mode 100644 index f4e7f9baf210..000000000000 --- a/.changeset/tunnel-commands.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -"wrangler": minor ---- - -feat: add `wrangler tunnel` commands for managing Cloudflare Tunnels - -Adds a new set of commands for managing remotely-managed Cloudflare Tunnels directly from Wrangler: - -- `wrangler tunnel create ` - Create a new Cloudflare Tunnel -- `wrangler tunnel list` - List all tunnels in your account -- `wrangler tunnel info ` - Display details about a specific tunnel -- `wrangler tunnel delete ` - Delete a tunnel (with confirmation) -- `wrangler tunnel run ` - Run a tunnel using cloudflared -- `wrangler tunnel quick-start ` - Start a temporary tunnel (Try Cloudflare) - -The `run` and `quick-start` commands automatically download and manage the cloudflared binary, caching it in `~/.wrangler/cloudflared/`. Users are prompted before downloading and warned if their PATH-installed cloudflared is outdated. You can override the binary location with the `CLOUDFLARED_PATH` environment variable. - -All commands are marked as experimental. diff --git a/.changeset/warm-mirrors-allow.md b/.changeset/warm-mirrors-allow.md deleted file mode 100644 index f77c28c4a2a0..000000000000 --- a/.changeset/warm-mirrors-allow.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"wrangler": patch ---- - -Reject cross-drive module paths in Pages Functions routing - -On Windows, module paths using a different drive letter could be parsed in a way that bypassed the project-root check. These paths are now parsed correctly and rejected when they resolve outside the project. diff --git a/packages/chrome-devtools-patches/CHANGELOG.md b/packages/chrome-devtools-patches/CHANGELOG.md index 7b4ae27ce678..2dfddb485239 100644 --- a/packages/chrome-devtools-patches/CHANGELOG.md +++ b/packages/chrome-devtools-patches/CHANGELOG.md @@ -1,5 +1,15 @@ # @cloudflare/chrome-devtools-patches +## 0.1.5 + +### Patch Changes + +- [#12928](https://github.com/cloudflare/workers-sdk/pull/12928) [`81ee98e`](https://github.com/cloudflare/workers-sdk/commit/81ee98e6a0c6be879757289ef6e34e1559d6ee2a) Thanks [@petebacondarwin](https://github.com/petebacondarwin)! - Migrate chrome-devtools-patches deployment from Cloudflare Pages to Workers + Assets + + The DevTools frontend is now deployed as a Cloudflare Workers + Assets project instead of a Cloudflare Pages project. This uses `wrangler deploy` for production deployments and `wrangler versions upload` for PR preview deployments. + + The inspector proxy origin allowlists in both wrangler and miniflare have been updated to accept connections from the new `workers.dev` domain patterns, while retaining the legacy `pages.dev` patterns for backward compatibility. + ## 0.1.4 ### Patch Changes @@ -29,7 +39,6 @@ ### Minor Changes - [#7137](https://github.com/cloudflare/workers-sdk/pull/7137) [`1b195bd`](https://github.com/cloudflare/workers-sdk/commit/1b195bd09aef282a8a205d341579cdb7e3755d89) Thanks [@andyjessop](https://github.com/andyjessop)! - feat: update devtools patches for release - - rebases patches on top of latest devtools head - removes CPU profiling tab - adds performance tab diff --git a/packages/chrome-devtools-patches/package.json b/packages/chrome-devtools-patches/package.json index 192bf18cd891..ee54c86795b3 100644 --- a/packages/chrome-devtools-patches/package.json +++ b/packages/chrome-devtools-patches/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/chrome-devtools-patches", - "version": "0.1.4", + "version": "0.1.5", "private": true, "description": "Chrome Devtools hosted for easy use with Workers tooling and applications (Wrangler, Playground, Quick Editor).", "homepage": "https://github.com/cloudflare/workers-sdk#readme", diff --git a/packages/create-cloudflare/CHANGELOG.md b/packages/create-cloudflare/CHANGELOG.md index eb523a3c6d85..5f50db78ceae 100644 --- a/packages/create-cloudflare/CHANGELOG.md +++ b/packages/create-cloudflare/CHANGELOG.md @@ -1,5 +1,49 @@ # create-cloudflare +## 2.64.9 + +### Patch Changes + +- [#11639](https://github.com/cloudflare/workers-sdk/pull/11639) [`e9f5f30`](https://github.com/cloudflare/workers-sdk/commit/e9f5f30d536e89d0f182e336a0abc0e246bdc615) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "create-cloudflare" + + The following dependency versions have been updated: + + | Dependency | From | To | + | --------------- | ------ | ------ | + | create-next-app | 15.5.6 | 16.1.6 | + +- [#12905](https://github.com/cloudflare/workers-sdk/pull/12905) [`e7ef325`](https://github.com/cloudflare/workers-sdk/commit/e7ef325cd069e55116d35f1fea572a87cb919dab) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "create-cloudflare" + + The following dependency versions have been updated: + + | Dependency | From | To | + | ---------- | ------ | ------ | + | nuxi | 3.33.1 | 3.34.0 | + +- [#12907](https://github.com/cloudflare/workers-sdk/pull/12907) [`92402f6`](https://github.com/cloudflare/workers-sdk/commit/92402f677a9640a08cd7bff4b0d1bb301c52b030) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "create-cloudflare" + + The following dependency versions have been updated: + + | Dependency | From | To | + | ------------ | ------ | ----- | + | create-astro | 4.13.2 | 5.0.0 | + +- [#12908](https://github.com/cloudflare/workers-sdk/pull/12908) [`eadb0fd`](https://github.com/cloudflare/workers-sdk/commit/eadb0fdc56db7984253dd725c4178c83dd70d948) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "create-cloudflare" + + The following dependency versions have been updated: + + | Dependency | From | To | + | --------------- | ------ | ------ | + | @angular/create | 21.2.1 | 21.2.2 | + +- [#12909](https://github.com/cloudflare/workers-sdk/pull/12909) [`75fa04b`](https://github.com/cloudflare/workers-sdk/commit/75fa04bf029a730513a58c1c1b26f33e93227137) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "create-cloudflare" + + The following dependency versions have been updated: + + | Dependency | From | To | + | ----------- | ------ | ------ | + | create-qwik | 1.19.1 | 1.19.2 | + ## 2.64.8 ### Patch Changes @@ -261,7 +305,6 @@ New Workers projects created via `create-cloudflare` now include an `AGENTS.md` file that provides AI coding agents with retrieval-led guidance for Cloudflare APIs. This helps agents avoid using outdated knowledge from their training data and instead consult current documentation. The file includes: - - Links to Cloudflare documentation and MCP servers - Essential wrangler commands (`dev`, `deploy`, `types`) - Pointers to product-specific documentation for limits and APIs @@ -640,7 +683,6 @@ - [#11520](https://github.com/cloudflare/workers-sdk/pull/11520) [`85ec269`](https://github.com/cloudflare/workers-sdk/commit/85ec26985a05b2cc5e0dd3c4904f5b96b9e2de80) Thanks [@vicb](https://github.com/vicb)! - Add placeholder substitution in wrangler config files. When c3 updates the config file: - - The value `""` is replaced with the worker name. - The value `""` is replaced with the latest worked compatibility date. @@ -1115,7 +1157,6 @@ - [#10766](https://github.com/cloudflare/workers-sdk/pull/10766) [`bd5b720`](https://github.com/cloudflare/workers-sdk/commit/bd5b720c44f8bc04ac153154c1f8b8a291af7139) Thanks [@petebacondarwin](https://github.com/petebacondarwin)! - Do not override any `.env` settings in `.gitignore` files Previously we only looked for `.env*` in the `gitignore` but now we cover more cases such as: - - `.env` - `.env\*` - `.env.` @@ -2431,7 +2472,6 @@ | @angular/create | 19.1.5 | 19.1.6 | - [#7854](https://github.com/cloudflare/workers-sdk/pull/7854) [`bff209d`](https://github.com/cloudflare/workers-sdk/commit/bff209d853ae081ec692c41a080071956bf4ae2d) Thanks [@beratbayram](https://github.com/beratbayram)! - Update the Next.js template - - Removed top-level `await` in `next.config.ts` as it is not allowed there and not required. - Improved `setupDevPlatform()` comment @@ -2564,7 +2604,6 @@ | nuxi | 3.17.2 | 3.20.0 | - [#7743](https://github.com/cloudflare/workers-sdk/pull/7743) [`5955dac`](https://github.com/cloudflare/workers-sdk/commit/5955dac5ef2c6a0b6eea6dc28d11491966c07c2b) Thanks [@vicb](https://github.com/vicb)! - Update the Next.js experimental template - - Use create-next-app@^14.2.23 - Rename wrangler types output to cloudflare-env.d.ts @@ -3786,7 +3825,6 @@ - [#5675](https://github.com/cloudflare/workers-sdk/pull/5675) [`235c439`](https://github.com/cloudflare/workers-sdk/commit/235c4398268322b6c0c13060bc3da91f52b4b066) Thanks [@jculvey](https://github.com/jculvey)! - feat: Improvements to `hono` template. The `hono` template has been updated as follows: - - Bumps `create-hono` to `0.7.0` - Automatically installs dependencies and specifies the detected package manager to avoid interactive prompts - Adds a `wrangler.toml` file with commented out examples of all available bindings to match other templates. @@ -3937,7 +3975,6 @@ ### Patch Changes - [#5218](https://github.com/cloudflare/workers-sdk/pull/5218) [`0c535e7`](https://github.com/cloudflare/workers-sdk/commit/0c535e7236cbfc4bf856889454298bb434e48650) Thanks [@jculvey](https://github.com/jculvey)! - refactor: Refactor C3 internal helpers. Includes a few small changes: - - Drops `--save` from internal `pnpm` and `npm` install invocations - Switches to `git branch --show-current` for detecting current branch @@ -4151,7 +4188,6 @@ - [#4754](https://github.com/cloudflare/workers-sdk/pull/4754) [`06f85613`](https://github.com/cloudflare/workers-sdk/commit/06f85613228066ccb323c2818b443e9460b02c94) Thanks [@jculvey](https://github.com/jculvey)! - Adds C3 support for external templates hosted in git repositories via the `--template ` option. The source may be specified as any of the following: - - `user/repo` - `git@github.com:user/repo` - `https://github.com/user/repo` @@ -4164,7 +4200,6 @@ See the `degit` [docs](https://github.com/Rich-Harris/degit) for more details. At a minimum, templates must contain the following: - - `package.json` - `wrangler.toml` - `src/` containing a worker script referenced from `wrangler.toml` @@ -4365,7 +4400,6 @@ * [#4530](https://github.com/cloudflare/workers-sdk/pull/4530) [`774b16c9`](https://github.com/cloudflare/workers-sdk/commit/774b16c9138bbe7e7d42a8a27048755191010167) Thanks [@dependabot](https://github.com/apps/dependabot)! - C3: Bumped `@angular/create` from `17.0.3` to `17.0.5` - [#4481](https://github.com/cloudflare/workers-sdk/pull/4481) [`18a4dd92`](https://github.com/cloudflare/workers-sdk/commit/18a4dd92456f955ccbb35567a88475beafda01c0) Thanks [@jculvey](https://github.com/jculvey)! - Minor improvements when using the `--existing-script scriptName` flag: - - Format the type as "Pre-existing Worker (from Dashboard)" - Defaults the project name to `scriptName` @@ -4634,7 +4668,6 @@ (such arguments will be completely ignored by C3) * [#3822](https://github.com/cloudflare/workers-sdk/pull/3822) [`3db34519`](https://github.com/cloudflare/workers-sdk/commit/3db3451988988c0af82023cc53975bbaef14ac8a) Thanks [@dario-piotrowicz](https://github.com/dario-piotrowicz)! - update the frameworks' cli versions used in C3 - - `@angular/cli` from 16.1.x to 16.2.0 - `create-next-app` from 13.4.2 to 13.4.19 - `create-remix` from 1.16.0 to 1.19.3 diff --git a/packages/create-cloudflare/package.json b/packages/create-cloudflare/package.json index f9ade2a1e0a1..a1f8b2d18cf0 100644 --- a/packages/create-cloudflare/package.json +++ b/packages/create-cloudflare/package.json @@ -1,6 +1,6 @@ { "name": "create-cloudflare", - "version": "2.64.8", + "version": "2.64.9", "description": "A CLI for creating and deploying new applications to Cloudflare.", "keywords": [ "cloudflare", diff --git a/packages/miniflare/CHANGELOG.md b/packages/miniflare/CHANGELOG.md index 4b375a17a98e..14f7938d688e 100644 --- a/packages/miniflare/CHANGELOG.md +++ b/packages/miniflare/CHANGELOG.md @@ -1,5 +1,33 @@ # miniflare +## 4.20260317.0 + +### Patch Changes + +- [#12927](https://github.com/cloudflare/workers-sdk/pull/12927) [`c9b3184`](https://github.com/cloudflare/workers-sdk/commit/c9b31840631585418b8926e8228db486b619b4c7) Thanks [@penalosa](https://github.com/penalosa)! - Bump undici from 7.18.2 to 7.24.4 + +- [#12875](https://github.com/cloudflare/workers-sdk/pull/12875) [`13df6c7`](https://github.com/cloudflare/workers-sdk/commit/13df6c75be49ac32fc1c57e2e24523e86ced2115) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "miniflare", "wrangler" + + The following dependency versions have been updated: + + | Dependency | From | To | + | ---------- | ------------ | ------------ | + | workerd | 1.20260312.1 | 1.20260316.1 | + +- [#12935](https://github.com/cloudflare/workers-sdk/pull/12935) [`df0d112`](https://github.com/cloudflare/workers-sdk/commit/df0d1120a856bd65553bf92b4bc6380c15e81cc7) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "miniflare", "wrangler" + + The following dependency versions have been updated: + + | Dependency | From | To | + | ---------- | ------------ | ------------ | + | workerd | 1.20260316.1 | 1.20260317.1 | + +- [#12928](https://github.com/cloudflare/workers-sdk/pull/12928) [`81ee98e`](https://github.com/cloudflare/workers-sdk/commit/81ee98e6a0c6be879757289ef6e34e1559d6ee2a) Thanks [@petebacondarwin](https://github.com/petebacondarwin)! - Migrate chrome-devtools-patches deployment from Cloudflare Pages to Workers + Assets + + The DevTools frontend is now deployed as a Cloudflare Workers + Assets project instead of a Cloudflare Pages project. This uses `wrangler deploy` for production deployments and `wrangler versions upload` for PR preview deployments. + + The inspector proxy origin allowlists in both wrangler and miniflare have been updated to accept connections from the new `workers.dev` domain patterns, while retaining the legacy `pages.dev` patterns for backward compatibility. + ## 4.20260312.1 ### Patch Changes @@ -25,7 +53,6 @@ - [#12864](https://github.com/cloudflare/workers-sdk/pull/12864) [`ecc7f79`](https://github.com/cloudflare/workers-sdk/commit/ecc7f792f950fc786ff40fa140bd8907bd26ff31) Thanks [@NuroDev](https://github.com/NuroDev)! - Fix local explorer route matching to be more precise Previously, the route matching used `startsWith("/cdn-cgi/explorer")` which would incorrectly match paths like `/cdn-cgi/explorerfoo` or `/cdn-cgi/explorereeeeee`, causing unexpected behavior. The route matching has been improved to only match: - - `/cdn-cgi/explorer` (exact match) - `/cdn-cgi/explorer/` and any sub-paths (e.g., `/cdn-cgi/explorer/api/*`) @@ -263,7 +290,6 @@ - [#12466](https://github.com/cloudflare/workers-sdk/pull/12466) [`caf9b11`](https://github.com/cloudflare/workers-sdk/commit/caf9b114391d7708b38e8d37bca6dae6f2b4927e) Thanks [@petebacondarwin](https://github.com/petebacondarwin)! - Add `MINIFLARE_CACHE_DIR` environment variable and smart cache directory detection Miniflare now intelligently detects where to store its cf.json cache file: - 1. Use `MINIFLARE_CACHE_DIR` env var if set 2. Use existing cache directory if found (`node_modules/.mf` or `.wrangler/cache`) 3. Create cache in `node_modules/.mf` if `node_modules` exists @@ -304,7 +330,6 @@ - [#12469](https://github.com/cloudflare/workers-sdk/pull/12469) [`2d90127`](https://github.com/cloudflare/workers-sdk/commit/2d90127f47dbcacf377842b3452d00a68a7abdc9) Thanks [@petebacondarwin](https://github.com/petebacondarwin)! - Add environment variables to control cf.json fetching behavior You can now use environment variables to control how Miniflare handles the `Request.cf` object caching: - - `CLOUDFLARE_CF_FETCH_ENABLED` - Set to "false" to disable fetching entirely and use fallback data. No `node_modules/.mf/cf.json` file will be created. Defaults to "true". - `CLOUDFLARE_CF_FETCH_PATH` - Set to a custom path to use a different location for caching the cf.json file instead of the default `node_modules/.mf/cf.json`. @@ -361,7 +386,6 @@ - [#12267](https://github.com/cloudflare/workers-sdk/pull/12267) [`83adb2c`](https://github.com/cloudflare/workers-sdk/commit/83adb2cb7f909857d79208474b78cdb7ac4e0638) Thanks [@NuroDev](https://github.com/NuroDev)! - Implement local D1 API for experimental/WIP local resource explorer The following APIs have been implemented: - - `GET /d1/database` - Returns a list of D1 databases. - `POST /d1/database/{database_id}/raw` - Returns the query result rows as arrays rather than objects. @@ -513,7 +537,6 @@ into miniflare and @cloudflare/vitest-pool-workers. Other dependencies remain external for technical reasons: - - `sharp`: Native binary with platform-specific builds - `undici`: Dynamically required at runtime in worker threads - `ws`: Has optional native bindings for performance @@ -627,7 +650,6 @@ reducing the number of external dependencies users need to trust. Bundled dependencies: - - **miniflare**: `acorn`, `acorn-walk`, `exit-hook`, `glob-to-regexp`, `stoppable` - **kv-asset-handler**: `mime` - **vite-plugin-cloudflare**: `@remix-run/node-fetch-server`, `defu`, `get-port`, `picocolors`, `tinyglobby` @@ -686,7 +708,6 @@ ### Minor Changes - [#11648](https://github.com/cloudflare/workers-sdk/pull/11648) [`eac5cf7`](https://github.com/cloudflare/workers-sdk/commit/eac5cf74db6d1b0865f5dc3a744ff28e695d53ca) Thanks [@pombosilva](https://github.com/pombosilva)! - Add Workflows test handlers in vitest-pool-workers to get the Workflow instance output and error: - - `getOutput()`: Returns the output of the successfully completed Workflow instance. - `getError()`: Returns the error information of the errored Workflow instance. @@ -1614,7 +1635,6 @@ - [#9313](https://github.com/cloudflare/workers-sdk/pull/9313) [`92719a5`](https://github.com/cloudflare/workers-sdk/commit/92719a535bf6bae9d660a05d5c8f8823004929c5) Thanks [@edmundhung](https://github.com/edmundhung)! - feat: add Dev Registry support This change introduces two new options to support cross-process service bindings, durable objects and tail consumers via a file-system based registry, with backward compatibility to Wrangler’s implementation: - - **`unsafeDevRegistryPath`** (`string`): Filesystem path to the Dev Registry directory. - **`unsafeDevRegistryDurableObjectProxy`** (`boolean`): When enabled, exposes internal Durable Objects to other local dev sessions and allows Workers to connect to external Durable Objects. @@ -1636,7 +1656,6 @@ - [#9440](https://github.com/cloudflare/workers-sdk/pull/9440) [`8c7ce77`](https://github.com/cloudflare/workers-sdk/commit/8c7ce7728ccc467aa19b60c8f32c90e6f06442d1) Thanks [@penalosa](https://github.com/penalosa)! - Preserve original error messages - [#9390](https://github.com/cloudflare/workers-sdk/pull/9390) [`80e75f4`](https://github.com/cloudflare/workers-sdk/commit/80e75f4a67b4e4b7a1bc92e0a93659e5d6f141dc) Thanks [@penalosa](https://github.com/penalosa)! - Support additional Mixed Mode resources in Wrangler: - - AI - Browser - Images @@ -2653,7 +2672,6 @@ - [#6058](https://github.com/cloudflare/workers-sdk/pull/6058) [`31cd51f`](https://github.com/cloudflare/workers-sdk/commit/31cd51f251050b0d6db97857a8d1d5427c855d99) Thanks [@threepointone](https://github.com/threepointone)! - chore: Quieter builds This patch cleans up warnings we were seeing when doing a full build. Specifically: - - fixtures/remix-pages-app had a bunch of warnings about impending features that it should be upgraded to, so I did that. (tbh this one needs a full upgrade of packages, but we'll get to that later when we're upgrading across the codebase) - updated `@microsoft/api-extractor` so it didn't complain that it didn't match the `typescript` version (that we'd recently upgraded) - it also silenced a bunch of warnings when exporting types from `wrangler`. We'll need to fix those, but we'll do that when we work on unstable_dev etc. @@ -3023,7 +3041,6 @@ - [#5191](https://github.com/cloudflare/workers-sdk/pull/5191) [`27fb22b`](https://github.com/cloudflare/workers-sdk/commit/27fb22b7c6b224aecc852915d9fee600d9d86efc) Thanks [@mrbbot](https://github.com/mrbbot)! - fix: ensure redirect responses handled correctly with `dispatchFetch()` Previously, if your Worker returned a redirect response, calling `dispatchFetch(url)` would send another request to the original `url` rather than the redirect. This change ensures redirects are followed correctly. - - If your Worker returns a relative redirect or an absolute redirect with the same origin as the original `url`, the request will be sent to the Worker. - If your Worker instead returns an absolute redirect with a different origin, the request will be sent to the Internet. - If a redirected request to a different origin returns an absolute redirect with the same origin as the original `url`, the request will also be sent to the Worker. diff --git a/packages/miniflare/package.json b/packages/miniflare/package.json index 7a90ecfa740c..0831ff4bc8f2 100644 --- a/packages/miniflare/package.json +++ b/packages/miniflare/package.json @@ -1,6 +1,6 @@ { "name": "miniflare", - "version": "4.20260312.1", + "version": "4.20260317.0", "description": "Fun, full-featured, fully-local simulator for Cloudflare Workers", "keywords": [ "cloudflare", diff --git a/packages/pages-shared/CHANGELOG.md b/packages/pages-shared/CHANGELOG.md index d04e9b30ecd2..931f3ba694c2 100644 --- a/packages/pages-shared/CHANGELOG.md +++ b/packages/pages-shared/CHANGELOG.md @@ -1,5 +1,12 @@ # @cloudflare/pages-shared +## 0.13.116 + +### Patch Changes + +- Updated dependencies [[`c9b3184`](https://github.com/cloudflare/workers-sdk/commit/c9b31840631585418b8926e8228db486b619b4c7), [`13df6c7`](https://github.com/cloudflare/workers-sdk/commit/13df6c75be49ac32fc1c57e2e24523e86ced2115), [`df0d112`](https://github.com/cloudflare/workers-sdk/commit/df0d1120a856bd65553bf92b4bc6380c15e81cc7), [`81ee98e`](https://github.com/cloudflare/workers-sdk/commit/81ee98e6a0c6be879757289ef6e34e1559d6ee2a)]: + - miniflare@4.20260317.0 + ## 0.13.115 ### Patch Changes @@ -438,7 +445,6 @@ ### Patch Changes - [#9817](https://github.com/cloudflare/workers-sdk/pull/9817) [`6a0d990`](https://github.com/cloudflare/workers-sdk/commit/6a0d99066ef0633fb28d8ab3989ce943a02ec514) Thanks [@GregBrimble](https://github.com/GregBrimble)! - Add `x-cf-pages-analytics` header when Web Analytics token is injected - - Emit `x-cf-pages-analytics: 1` header when analytics script is added to HTML responses - Add comprehensive tests covering HTML with/without body, non-HTML responses, and missing analytics config - Header indicates when analytics injection is attempted regardless of HTMLRewriter success @@ -1153,7 +1159,6 @@ ### Patch Changes - [#4797](https://github.com/cloudflare/workers-sdk/pull/4797) [`007ba93`](https://github.com/cloudflare/workers-sdk/commit/007ba9397be9a2914254d0b59e0695df1a518b52) Thanks [@jahands](https://github.com/jahands)! - refactor: Store asset key instead of body in preservation cache - - Add HTTP method to cache key to prevent returning null bodies in cached GET requests that follow a HEAD request - Only write unchanged assets to preservation cache every 24-36 hours instead of on every request diff --git a/packages/pages-shared/package.json b/packages/pages-shared/package.json index 42a3b19a4e4c..aa7f953f282f 100644 --- a/packages/pages-shared/package.json +++ b/packages/pages-shared/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/pages-shared", - "version": "0.13.115", + "version": "0.13.116", "repository": { "type": "git", "url": "https://github.com/cloudflare/workers-sdk.git", diff --git a/packages/vite-plugin-cloudflare/CHANGELOG.md b/packages/vite-plugin-cloudflare/CHANGELOG.md index 446a742d2413..20ce9606977c 100644 --- a/packages/vite-plugin-cloudflare/CHANGELOG.md +++ b/packages/vite-plugin-cloudflare/CHANGELOG.md @@ -1,5 +1,17 @@ # @cloudflare/vite-plugin +## 1.29.1 + +### Patch Changes + +- [#12936](https://github.com/cloudflare/workers-sdk/pull/12936) [`cff91ff`](https://github.com/cloudflare/workers-sdk/commit/cff91ff4bbbfcc2b59eb9b0d26b5ae8188823197) Thanks [@jamesopstad](https://github.com/jamesopstad)! - Select the appropriate `vite/module-runner` implementation during dev based on the user's Vite version + + The plugin now builds against Vite 8 and ships two bundled copies of `vite/module-runner`: one from Vite 8 and one from Vite 7.1.12 (the last version before a breaking change to the module runner in Vite 7.2.0). At dev server startup, the correct implementation is selected based on the user's installed Vite version. This is Vite 8's module runner for users on Vite >= 7.2.0, and the legacy module runner for users on older versions. + +- Updated dependencies [[`c9b3184`](https://github.com/cloudflare/workers-sdk/commit/c9b31840631585418b8926e8228db486b619b4c7), [`13df6c7`](https://github.com/cloudflare/workers-sdk/commit/13df6c75be49ac32fc1c57e2e24523e86ced2115), [`df0d112`](https://github.com/cloudflare/workers-sdk/commit/df0d1120a856bd65553bf92b4bc6380c15e81cc7), [`81ee98e`](https://github.com/cloudflare/workers-sdk/commit/81ee98e6a0c6be879757289ef6e34e1559d6ee2a), [`c600ce0`](https://github.com/cloudflare/workers-sdk/commit/c600ce0a45ad334a5a961cf7774758860581d9d2), [`f509d13`](https://github.com/cloudflare/workers-sdk/commit/f509d13b97a832a28ed6bc568c7bcf6fc7d4a4ff), [`3b81fc6`](https://github.com/cloudflare/workers-sdk/commit/3b81fc6a75857d5c158824f17d9316adc55878fc), [`0a7fef9`](https://github.com/cloudflare/workers-sdk/commit/0a7fef9ee924b6d0817a69be9d893dc8a40c9a19)]: + - wrangler@4.75.0 + - miniflare@4.20260317.0 + ## 1.29.0 ### Minor Changes @@ -320,7 +332,6 @@ reducing the number of external dependencies users need to trust. Bundled dependencies: - - **miniflare**: `acorn`, `acorn-walk`, `exit-hook`, `glob-to-regexp`, `stoppable` - **kv-asset-handler**: `mime` - **vite-plugin-cloudflare**: `@remix-run/node-fetch-server`, `defu`, `get-port`, `picocolors`, `tinyglobby` @@ -1024,7 +1035,6 @@ Wrangler and Vite will continue to load `.env` files in order to configure themselves as a tool. Further details: - - In `vite build` the local vars will be computed and stored in a `.dev.vars` file next to the compiled Worker code, so that `vite preview` can use them. - The `wrangler types` command will similarly read the `.env` files (if no `.dev.vars` files) in order to generate the `Env` interface. - If the `CLOUDFLARE_LOAD_DEV_VARS_FROM_DOT_ENV` environment variable is `"false"` then local dev variables will not be loaded from `.env` files. @@ -1277,7 +1287,6 @@ Assets that are imported in the entry Worker are now automatically moved to the client build output. This enables importing assets in your Worker and accessing them via the [assets binding](https://developers.cloudflare.com/workers/static-assets/binding/#binding). See [Static Asset Handling](https://vite.dev/guide/assets) to find out about all the ways you can import assets in Vite. Additionally, a broader range of build scenarios are now supported. These are: - - Assets only build with client entry/entries - Assets only build with no client entry/entries that includes `public` directory assets - Worker(s) + assets build with client entry/entries diff --git a/packages/vite-plugin-cloudflare/package.json b/packages/vite-plugin-cloudflare/package.json index 5e6c29600683..86164beacc91 100644 --- a/packages/vite-plugin-cloudflare/package.json +++ b/packages/vite-plugin-cloudflare/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/vite-plugin", - "version": "1.29.0", + "version": "1.29.1", "description": "Cloudflare plugin for Vite", "keywords": [ "cloudflare", diff --git a/packages/vitest-pool-workers/CHANGELOG.md b/packages/vitest-pool-workers/CHANGELOG.md index d077b3d31cc5..69643d043fb0 100644 --- a/packages/vitest-pool-workers/CHANGELOG.md +++ b/packages/vitest-pool-workers/CHANGELOG.md @@ -1,5 +1,13 @@ # @cloudflare/vitest-pool-workers +## 0.13.2 + +### Patch Changes + +- Updated dependencies [[`c9b3184`](https://github.com/cloudflare/workers-sdk/commit/c9b31840631585418b8926e8228db486b619b4c7), [`13df6c7`](https://github.com/cloudflare/workers-sdk/commit/13df6c75be49ac32fc1c57e2e24523e86ced2115), [`df0d112`](https://github.com/cloudflare/workers-sdk/commit/df0d1120a856bd65553bf92b4bc6380c15e81cc7), [`81ee98e`](https://github.com/cloudflare/workers-sdk/commit/81ee98e6a0c6be879757289ef6e34e1559d6ee2a), [`c600ce0`](https://github.com/cloudflare/workers-sdk/commit/c600ce0a45ad334a5a961cf7774758860581d9d2), [`f509d13`](https://github.com/cloudflare/workers-sdk/commit/f509d13b97a832a28ed6bc568c7bcf6fc7d4a4ff), [`3b81fc6`](https://github.com/cloudflare/workers-sdk/commit/3b81fc6a75857d5c158824f17d9316adc55878fc), [`0a7fef9`](https://github.com/cloudflare/workers-sdk/commit/0a7fef9ee924b6d0817a69be9d893dc8a40c9a19)]: + - wrangler@4.75.0 + - miniflare@4.20260317.0 + ## 0.13.1 ### Patch Changes @@ -208,7 +216,6 @@ - [#12056](https://github.com/cloudflare/workers-sdk/pull/12056) [`6d5f69f`](https://github.com/cloudflare/workers-sdk/commit/6d5f69fa0c86eed05875603ac31a9f32a4a2bfbd) Thanks [@edmundhung](https://github.com/edmundhung)! - fix: allow Vite query parameters like `?raw` on `.sql` file imports Importing `.sql` files with Vite query parameters (e.g., `import sql from "./query.sql?raw"`) would fail with "No such module" errors in vitest-pool-workers 0.12.x. Both import styles now work: - - `import sql from "./query.sql?raw"` (Vite handles the `?raw` transform) - `import sql from "./query.sql"` (loaded as Text module) @@ -224,7 +231,6 @@ into miniflare and @cloudflare/vitest-pool-workers. Other dependencies remain external for technical reasons: - - `sharp`: Native binary with platform-specific builds - `undici`: Dynamically required at runtime in worker threads - `ws`: Has optional native bindings for performance @@ -273,7 +279,6 @@ reducing the number of external dependencies users need to trust. Bundled dependencies: - - **miniflare**: `acorn`, `acorn-walk`, `exit-hook`, `glob-to-regexp`, `stoppable` - **kv-asset-handler**: `mime` - **vite-plugin-cloudflare**: `@remix-run/node-fetch-server`, `defu`, `get-port`, `picocolors`, `tinyglobby` @@ -311,7 +316,6 @@ ### Minor Changes - [#11648](https://github.com/cloudflare/workers-sdk/pull/11648) [`eac5cf7`](https://github.com/cloudflare/workers-sdk/commit/eac5cf74db6d1b0865f5dc3a744ff28e695d53ca) Thanks [@pombosilva](https://github.com/pombosilva)! - Add Workflows test handlers in vitest-pool-workers to get the Workflow instance output and error: - - `getOutput()`: Returns the output of the successfully completed Workflow instance. - `getError()`: Returns the error information of the errored Workflow instance. @@ -356,7 +360,6 @@ - [#11533](https://github.com/cloudflare/workers-sdk/pull/11533) [`8d9003e`](https://github.com/cloudflare/workers-sdk/commit/8d9003e144156f32aef03aba71b18c7e5c5b202d) Thanks [@petebacondarwin](https://github.com/petebacondarwin)! - Add support for ctx.exports It is now possible to access `ctx.exports` properties for the `main` (`SELF`) worker. - - Integration tests: in the `SELF` worker the `ctx.exports` object now contains the expected stubs to the exported entry-points. - Unit tests: the object returned from `createExecutionContext()` has `exports` property that exposes the exports of the `SELF` worker. @@ -624,7 +627,6 @@ - [#10494](https://github.com/cloudflare/workers-sdk/pull/10494) [`e2b838f`](https://github.com/cloudflare/workers-sdk/commit/e2b838ff56572d581661143d56f2485d7bcf1e0e) Thanks [@pombosilva](https://github.com/pombosilva)! - Add Workflows test support to the `cloudflare:test` module. The `cloudflare:test` module has two new APIs: - - `introspectWorkflowInstance` - `introspectWorkflow` which allow changing the behavior of one or multiple Workflow instances created during tests. @@ -1257,7 +1259,6 @@ - [#7334](https://github.com/cloudflare/workers-sdk/pull/7334) [`869ec7b`](https://github.com/cloudflare/workers-sdk/commit/869ec7b916487ec43b958a27bdfea13588c5685f) Thanks [@threepointone](https://github.com/threepointone)! - chore: update esbuild This patch updates esbuild from 0.17.19 to 0.24.2. That's a big bump! Lots has gone into esbuild since May '23. All the details are available at https://github.com/evanw/esbuild/blob/main/CHANGELOG.md / https://github.com/evanw/esbuild/blob/main/CHANGELOG-2023.md. - - We now support all modern JavasScript/TypeScript features suported by esbuild (as of December 2024). New additions include standard decorators, auto-accessors, and the `using` syntax. - 0.18 introduced wider support for configuration specified via `tsconfig.json` https://github.com/evanw/esbuild/issues/3019. After observing the (lack of) any actual broken code over the last year for this release, we feel comfortable releasing this without considering it a breaking change. - 0.19.3 introduced support for import attributes @@ -1269,7 +1270,6 @@ While we don't currently expose the esbuild configuration for developers to add their own plugins to customise how modules with import attributes are bundled, we may introduce new "types" ourselves in the future. - 0.19.0 introduced support for wildcard imports. Specifics here (https://github.com/evanw/esbuild/blob/main/CHANGELOG-2023.md#0190). tl;dr - - - These 2 patterns will bundle all files that match the glob pattern into a single file. ```js @@ -1326,7 +1326,6 @@ ``` Before this update: - 1. A request to anything but `http://localhost:8787/` would error. For example, a request to `http://localhost:8787/one.js` would error with _No such module "one.js"._ 2. Let's configure `wrangler.toml` to include all `.js` files in the `src` folder: @@ -1351,7 +1350,6 @@ Then, a request to `http://localhost:8787/hidden/secret.js` will return the contents of `src/hidden/secret.js`. After this update: - - Let's put the wrangler.toml back to its original configuration: ```toml @@ -1360,7 +1358,6 @@ ``` - Now, a request to `http://localhost:8787/one.js` will return the contents of `src/one.js`, but a request to `http://localhost:8787/hidden/secret.js` will ALSO return the contents of `src/hidden/secret.js`. THIS MAY NOT BE WHAT YOU WANT. You can "fix" this in 2 ways: - 1. Remove the inline wildcard import: ```js @@ -1376,7 +1373,6 @@ ``` Now, no extra modules are included in the bundle, and a request to `http://localhost:8787/hidden/secret.js` will throw an error. You can use the `find_additional_modules` feature to include it again. - 2. Don't use the wildcard import pattern: ```js diff --git a/packages/vitest-pool-workers/package.json b/packages/vitest-pool-workers/package.json index 43535aa4904d..e0e00f285b82 100644 --- a/packages/vitest-pool-workers/package.json +++ b/packages/vitest-pool-workers/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/vitest-pool-workers", - "version": "0.13.1", + "version": "0.13.2", "description": "Workers Vitest integration for writing Vitest unit and integration tests that run inside the Workers runtime", "keywords": [ "cloudflare", diff --git a/packages/wrangler/CHANGELOG.md b/packages/wrangler/CHANGELOG.md index a5394cc5cbe5..f515b2f14621 100644 --- a/packages/wrangler/CHANGELOG.md +++ b/packages/wrangler/CHANGELOG.md @@ -1,5 +1,64 @@ # wrangler +## 4.75.0 + +### Minor Changes + +- [#12492](https://github.com/cloudflare/workers-sdk/pull/12492) [`3b81fc6`](https://github.com/cloudflare/workers-sdk/commit/3b81fc6a75857d5c158824f17d9316adc55878fc) Thanks [@thomasgauvin](https://github.com/thomasgauvin)! - feat: add `wrangler tunnel` commands for managing Cloudflare Tunnels + + Adds a new set of commands for managing remotely-managed Cloudflare Tunnels directly from Wrangler: + - `wrangler tunnel create ` - Create a new Cloudflare Tunnel + - `wrangler tunnel list` - List all tunnels in your account + - `wrangler tunnel info ` - Display details about a specific tunnel + - `wrangler tunnel delete ` - Delete a tunnel (with confirmation) + - `wrangler tunnel run ` - Run a tunnel using cloudflared + - `wrangler tunnel quick-start ` - Start a temporary tunnel (Try Cloudflare) + + The `run` and `quick-start` commands automatically download and manage the cloudflared binary, caching it in `~/.wrangler/cloudflared/`. Users are prompted before downloading and warned if their PATH-installed cloudflared is outdated. You can override the binary location with the `CLOUDFLARED_PATH` environment variable. + + All commands are marked as experimental. + +### Patch Changes + +- [#12927](https://github.com/cloudflare/workers-sdk/pull/12927) [`c9b3184`](https://github.com/cloudflare/workers-sdk/commit/c9b31840631585418b8926e8228db486b619b4c7) Thanks [@penalosa](https://github.com/penalosa)! - Bump undici from 7.18.2 to 7.24.4 + +- [#12875](https://github.com/cloudflare/workers-sdk/pull/12875) [`13df6c7`](https://github.com/cloudflare/workers-sdk/commit/13df6c75be49ac32fc1c57e2e24523e86ced2115) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "miniflare", "wrangler" + + The following dependency versions have been updated: + + | Dependency | From | To | + | ---------- | ------------ | ------------ | + | workerd | 1.20260312.1 | 1.20260316.1 | + +- [#12935](https://github.com/cloudflare/workers-sdk/pull/12935) [`df0d112`](https://github.com/cloudflare/workers-sdk/commit/df0d1120a856bd65553bf92b4bc6380c15e81cc7) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update dependencies of "miniflare", "wrangler" + + The following dependency versions have been updated: + + | Dependency | From | To | + | ---------- | ------------ | ------------ | + | workerd | 1.20260316.1 | 1.20260317.1 | + +- [#12928](https://github.com/cloudflare/workers-sdk/pull/12928) [`81ee98e`](https://github.com/cloudflare/workers-sdk/commit/81ee98e6a0c6be879757289ef6e34e1559d6ee2a) Thanks [@petebacondarwin](https://github.com/petebacondarwin)! - Migrate chrome-devtools-patches deployment from Cloudflare Pages to Workers + Assets + + The DevTools frontend is now deployed as a Cloudflare Workers + Assets project instead of a Cloudflare Pages project. This uses `wrangler deploy` for production deployments and `wrangler versions upload` for PR preview deployments. + + The inspector proxy origin allowlists in both wrangler and miniflare have been updated to accept connections from the new `workers.dev` domain patterns, while retaining the legacy `pages.dev` patterns for backward compatibility. + +- [#12835](https://github.com/cloudflare/workers-sdk/pull/12835) [`c600ce0`](https://github.com/cloudflare/workers-sdk/commit/c600ce0a45ad334a5a961cf7774758860581d9d2) Thanks [@dario-piotrowicz](https://github.com/dario-piotrowicz)! - Fix execution freezing on `debugger` statements when DevTools is not attached + + Previously, `wrangler` always sent `Debugger.enable` to the runtime on connection, even when DevTools wasn't open. This caused scripts to freeze on `debugger` statements. Now `Debugger.enable` is only sent when DevTools is actually attached, and `Debugger.disable` is sent when DevTools disconnects to stop the runtime from performing debugging work. + +- [#12894](https://github.com/cloudflare/workers-sdk/pull/12894) [`f509d13`](https://github.com/cloudflare/workers-sdk/commit/f509d13b97a832a28ed6bc568c7bcf6fc7d4a4ff) Thanks [@gpanders](https://github.com/gpanders)! - Simplify description of --json option + + Remove extraneous adjectives in the description of the `--json` option. + +- [#11888](https://github.com/cloudflare/workers-sdk/pull/11888) [`0a7fef9`](https://github.com/cloudflare/workers-sdk/commit/0a7fef9ee924b6d0817a69be9d893dc8a40c9a19) Thanks [@staticpayload](https://github.com/staticpayload)! - Reject cross-drive module paths in Pages Functions routing + + On Windows, module paths using a different drive letter could be parsed in a way that bypassed the project-root check. These paths are now parsed correctly and rejected when they resolve outside the project. + +- Updated dependencies [[`c9b3184`](https://github.com/cloudflare/workers-sdk/commit/c9b31840631585418b8926e8228db486b619b4c7), [`13df6c7`](https://github.com/cloudflare/workers-sdk/commit/13df6c75be49ac32fc1c57e2e24523e86ced2115), [`df0d112`](https://github.com/cloudflare/workers-sdk/commit/df0d1120a856bd65553bf92b4bc6380c15e81cc7), [`81ee98e`](https://github.com/cloudflare/workers-sdk/commit/81ee98e6a0c6be879757289ef6e34e1559d6ee2a)]: + - miniflare@4.20260317.0 + ## 4.74.0 ### Minor Changes @@ -99,7 +158,6 @@ - [#12807](https://github.com/cloudflare/workers-sdk/pull/12807) [`8d1e130`](https://github.com/cloudflare/workers-sdk/commit/8d1e130bba5fa4019edab855e817a17110b360d0) Thanks [@MaxwellCalkin](https://github.com/MaxwellCalkin)! - fix: `vectorize` commands now output valid json This fixes: - - `wrangler vectorize create` - `wrangler vectorize info` - `wrangler vectorize insert` @@ -459,7 +517,6 @@ - [#12401](https://github.com/cloudflare/workers-sdk/pull/12401) [`8723684`](https://github.com/cloudflare/workers-sdk/commit/872368456bfd72cdb45dc8c82f1ab16392d6a1f8) Thanks [@jonesphillip](https://github.com/jonesphillip)! - Add validation retry loops to pipelines setup command The `wrangler pipelines setup` command now prompts users to retry when validation errors occur, instead of failing the entire setup process. This includes: - - Validation retry prompts for pipeline names, bucket names, and field names - A "simple" mode for sink configuration that uses sensible defaults - Automatic bucket creation when buckets don't exist @@ -532,7 +589,6 @@ - [#12466](https://github.com/cloudflare/workers-sdk/pull/12466) [`caf9b11`](https://github.com/cloudflare/workers-sdk/commit/caf9b114391d7708b38e8d37bca6dae6f2b4927e) Thanks [@petebacondarwin](https://github.com/petebacondarwin)! - Add `WRANGLER_CACHE_DIR` environment variable and smart cache directory detection Wrangler now intelligently detects where to store cache files: - 1. Use `WRANGLER_CACHE_DIR` env var if set 2. Use existing cache directory if found (`node_modules/.cache/wrangler` or `.wrangler/cache`) 3. Create cache in `node_modules/.cache/wrangler` if `node_modules` exists @@ -603,7 +659,6 @@ ``` This pattern is used by several official framework templates, including React Router's `node-postgres` and `node-custom-server` templates. The following `defineConfig()` patterns are now supported: - - `defineConfig({ ... })` (object literal, already worked) - `defineConfig(() => ({ ... }))` (arrow function with expression body) - `defineConfig(({ isSsrBuild }) => ({ ... }))` (arrow function with destructured params) @@ -643,7 +698,6 @@ - [#12473](https://github.com/cloudflare/workers-sdk/pull/12473) [`b900c5a`](https://github.com/cloudflare/workers-sdk/commit/b900c5adc18c12d500e0fb8c58c2295843518695) Thanks [@petebacondarwin](https://github.com/petebacondarwin)! - Add CF_PAGES environment variables to `wrangler pages dev` `wrangler pages dev` now automatically injects Pages-specific environment variables (`CF_PAGES`, `CF_PAGES_BRANCH`, `CF_PAGES_COMMIT_SHA`, `CF_PAGES_URL`) for improved dev/prod parity. This enables frameworks like SvelteKit to auto-detect the Pages environment during local development. - - `CF_PAGES` is set to `"1"` to indicate the Pages environment - `CF_PAGES_BRANCH` defaults to the current git branch (or `"local"` if not in a git repo) - `CF_PAGES_COMMIT_SHA` defaults to the current git commit SHA (or a placeholder if not in a git repo) @@ -667,7 +721,6 @@ - [#12382](https://github.com/cloudflare/workers-sdk/pull/12382) [`d7b492c`](https://github.com/cloudflare/workers-sdk/commit/d7b492c37838929d37901c628ecbdd718f5a1258) Thanks [@dario-piotrowicz](https://github.com/dario-piotrowicz)! - Add Pages detection to autoconfig flows When running the autoconfig logic (via `wrangler setup`, `wrangler deploy --x-autoconfig`, or the programmatic autoconfig API), Wrangler now detects when a project appears to be a Pages project and handles it appropriately: - - For `wrangler deploy`, it warns the user but still allows them to proceed - For `wrangler setup` and the programmatic autoconfig API, it throws a fatal error @@ -737,13 +790,11 @@ Fixes the issue of the default maximum message retention (365400 seconds) being longer than the maximum allowed retention period for free tier users (86400 seconds). Previous: - - Wrangler set a default value of 365400 seconds max message retention if the setting was not explicitly provided in the Wrangler configuration. - The maximum retention period was documented as 1209600 seconds for all queues users because it was required to be on paid tier. - Wrangler also set a default value of 0 seconds for delivery delay if the setting was not explicitly provided in the Wrangler configuration. Updated: - - Wrangler no longer sets a default value for max message retention so that the default can be applied at the API. - The maximum retention period is now documented as 86400 seconds for free tier queues and 1209600 seconds for paid tier queues - Wrangler also no longer sets a default value for delivery delay so that the default can be applied at the API. @@ -782,7 +833,6 @@ Previously, only command-based telemetry events (e.g., "wrangler command started/completed") included the full set of common properties. Ad-hoc events sent via `sendAdhocEvent` were missing important context like OS information, CI detection, and session tracking. Now, all telemetry events include the complete set of common properties: - - `amplitude_session_id` and `amplitude_event_id` for session tracking - `wranglerVersion` (and major/minor/patch variants) - `osPlatform`, `osVersion`, `nodeVersion` @@ -839,7 +889,6 @@ When running `wrangler pages deploy`, the command automatically detects git information (branch, commit hash, commit message, dirty state) from the local repository. Previously, when this detection failed, there was no way to troubleshoot the issue. Now, running with `WRANGLER_LOG=debug` will output detailed information about: - - Whether a git repository is detected - Each git command being executed and its result - The detected values (branch, commit hash, commit message, dirty status) @@ -894,7 +943,6 @@ When attempting to create a D1 database after reaching your account's limit, the CLI now shows a more helpful error message with actionable guidance instead of the raw API error. The new message includes: - - A clear explanation that the account limit has been reached - A link to D1 documentation - Commands to list and delete databases @@ -1038,11 +1086,9 @@ Add the version upload command to the output being printed by `wrangler deploy` to `WRANGLER_OUTPUT_FILE_DIRECTORY`/`WRANGLER_OUTPUT_FILE_PATH`. This complements the existing `buildCommand` and `deployCommand` fields and allows CI systems to know how to upload new versions of Workers. For example, for a standard npm project this would be: - - Version command: `npx wrangler versions upload` While for a Next.js project it would be: - - Version command: `npx @opennextjs/cloudflare upload` - [#12050](https://github.com/cloudflare/workers-sdk/pull/12050) [`b05b919`](https://github.com/cloudflare/workers-sdk/commit/b05b919b22a421a85a07fb8daccf9e22219dac53) Thanks [@NuroDev](https://github.com/NuroDev)! - Fixed Wrangler's error handling for both invalid commands with and without the `--help` flag, ensuring consistent and clear error messages. @@ -1078,13 +1124,11 @@ Add the framework id alongside the commands to build and deploy the project to the output being printed by `wrangler deploy` to `WRANGLER_OUTPUT_FILE_DIRECTORY` or `WRANGLER_OUTPUT_FILE_PATH`. For example for an npm Astro project these would be: - - Framework id: `astro` - Build command: `npm run build` - Deploy command: `npx wrangler deploy` While for a Next.js project they would instead be: - - Framework id: `next` - Build command: `npx @opennextjs/cloudflare build` - Deploy command: `npx @opennextjs/cloudflare deploy` @@ -1130,7 +1174,6 @@ - [#12153](https://github.com/cloudflare/workers-sdk/pull/12153) [`cb72c11`](https://github.com/cloudflare/workers-sdk/commit/cb72c1146fdab8af7d071ea0af0ea04c7523ee5b) Thanks [@petebacondarwin](https://github.com/petebacondarwin)! - Sanitize commands and arguments in telemetry to prevent accidentally capturing sensitive information. **Changes:** - - Renamed telemetry fields from `command`/`args` to `sanitizedCommand`/`sanitizedArgs` to distinguish from historical fields that may have contained sensitive data in older versions - Command names now come from command definitions rather than user input, preventing accidental capture of sensitive data pasted as positional arguments - Sentry breadcrumbs now use the safe command name from definitions @@ -1244,7 +1287,6 @@ - [#11893](https://github.com/cloudflare/workers-sdk/pull/11893) [`f9e8a45`](https://github.com/cloudflare/workers-sdk/commit/f9e8a452fb299e6cb1a0ff2985347bfc277deac8) Thanks [@NuroDev](https://github.com/NuroDev)! - `wrangler types` now generates per-environment TypeScript interfaces when named environments exist in your configuration. When your configuration has named environments (an `env` object), `wrangler types` now generates both: - - **Per-environment interfaces** (e.g., `StagingEnv`, `ProductionEnv`) containing only the bindings explicitly declared in each environment, plus inherited secrets - **An aggregated `Env` interface** with all bindings from all environments (top-level + named environments), where: - Bindings present in **all** environments are required @@ -1417,7 +1459,6 @@ - [#11880](https://github.com/cloudflare/workers-sdk/pull/11880) [`fe4faa3`](https://github.com/cloudflare/workers-sdk/commit/fe4faa306609514863fa770bac1dba5ff618f4be) Thanks [@penalosa](https://github.com/penalosa)! - Show helpful messages for errors outside of Wrangler's control. This prevents unnecessary Sentry reports. Errors now handled with user-friendly messages: - - Connection timeouts to Cloudflare's API (`UND_ERR_CONNECT_TIMEOUT`) - typically due to slow networks or connectivity issues - File system permission errors (`EPERM`, `EACCES`) - caused by insufficient permissions, locked files, or antivirus software - DNS resolution failures (`ENOTFOUND`) - caused by network connectivity issues or DNS configuration problems @@ -1580,7 +1621,6 @@ ``` The command returns whichever authentication method is currently configured: - - OAuth token from `wrangler login` (automatically refreshed if expired) - API token from `CLOUDFLARE_API_TOKEN` environment variable @@ -1610,7 +1650,6 @@ You can now have your worker configuration types be automatically generated when the local Wrangler development server starts. To use it you can either: - 1. Add the `--types` flag when running `wrangler dev`. 2. Update your Wrangler configuration file to add the new `dev.generate_types` boolean property. @@ -1629,14 +1668,12 @@ - [#11524](https://github.com/cloudflare/workers-sdk/pull/11524) [`b0dbf1a`](https://github.com/cloudflare/workers-sdk/commit/b0dbf1ac5c998365bb14e9a25f9a28773ba299d5) Thanks [@penalosa](https://github.com/penalosa)! - Add hidden CLI flags to `wrangler setup` for suppressing output Two new hidden flags have been added to `wrangler setup`: - - `--no-completion-message`: Suppresses the deployment details message after setup completes - `--no-install-wrangler`: Skips Wrangler installation during project setup - [#11777](https://github.com/cloudflare/workers-sdk/pull/11777) [`69979a3`](https://github.com/cloudflare/workers-sdk/commit/69979a3e0c20c8c8ec6c41253876e594ffb899f3) Thanks [@MattieTK](https://github.com/MattieTK)! - Add analytics properties to secret commands for better usage insights Secret commands (`wrangler secret put`, `wrangler secret bulk`, and their Pages/versions equivalents) now include additional analytics properties to help understand how secrets are being managed: - - `secretOperation`: Whether this is a "single" or "bulk" secret operation - `secretSource`: How the secret was provided ("interactive", "stdin", or "file") - `secretFormat`: For bulk operations, the format used ("json" or "dotenv") @@ -1669,7 +1706,6 @@ The `wrangler r2 bucket catalog snapshot-expiration enable` command was sending incorrect field names to the Cloudflare API, resulting in a 422 Unprocessable Entity error. This fix updates the API request body to use the correct field names: - - `olderThanDays` -> `max_snapshot_age` (as duration string, e.g., "30d") - `retainLast` -> `min_snapshots_to_keep` @@ -1709,7 +1745,6 @@ - [#11646](https://github.com/cloudflare/workers-sdk/pull/11646) [`472cf72`](https://github.com/cloudflare/workers-sdk/commit/472cf72a6f340e30499daa1d04bf5f17621044bf) Thanks [@vovacf201](https://github.com/vovacf201)! - feat: add R2 Data Catalog snapshot expiration commands Adds new commands to manage automatic snapshot expiration for R2 Data Catalog tables: - - `wrangler r2 bucket catalog snapshot-expiration enable` - Enable automatic snapshot expiration - `wrangler r2 bucket catalog snapshot-expiration disable` - Disable automatic snapshot expiration @@ -1841,7 +1876,6 @@ - [#10937](https://github.com/cloudflare/workers-sdk/pull/10937) [`9514c9a`](https://github.com/cloudflare/workers-sdk/commit/9514c9a0ed28fed349126384d1f646c9165be914) Thanks [@ReppCodes](https://github.com/ReppCodes)! - Add support for "targeted" placement mode with region, host, and hostname fields This change adds a new mode to `placement` configuration. You can specify one of the following fields to target specific external resources for Worker placement: - - `region`: Specify a region identifier (e.g., "aws:us-east-1") to target a region from another cloud service provider - `host`: Specify a host with (required) port (e.g., "example.com:8123") to target a TCP service - `hostname`: Specify a hostname (e.g., "example.com") to target an HTTP resource @@ -2400,7 +2434,6 @@ - [#10923](https://github.com/cloudflare/workers-sdk/pull/10923) [`2429533`](https://github.com/cloudflare/workers-sdk/commit/2429533d7c6810165761aad828462614c50a585f) Thanks [@emily-shen](https://github.com/emily-shen)! - fix: update `docker manifest inspect` to use full image registry uri when checking if the image exists remotely - [#10521](https://github.com/cloudflare/workers-sdk/pull/10521) [`88b5b7f`](https://github.com/cloudflare/workers-sdk/commit/88b5b7ff1ace3bf982d2562ad1e01e39ffce9517) Thanks [@penalosa](https://github.com/penalosa)! - Improves the Wrangler auto-provisioning feature (gated behind the experimental flag `--x-provision`) by: - - Writing back changes to the user's config file (not necessary, but can make it resilient to binding name changes) - Fixing `--dry-run`, which previously threw an error when your config file had auto provisioned resources - Improve R2 bindings display to include the `bucket_name` from the config file on upload @@ -2411,7 +2444,6 @@ ### Patch Changes - [#10881](https://github.com/cloudflare/workers-sdk/pull/10881) [`ce832d5`](https://github.com/cloudflare/workers-sdk/commit/ce832d5222f1034bd02c3bac4952c72ec99020bc) Thanks [@garvit-gupta](https://github.com/garvit-gupta)! - Add table-level compaction commands for R2 Data Catalog: - - `wrangler r2 bucket catalog compaction enable [namespace] [table]` - `wrangler r2 bucket catalog compaction disable [namespace] [table]` @@ -2791,7 +2823,6 @@ When re-deploying a Worker using `wrangler deploy`, if the configuration has been modified in the Cloudflare dashboard, the local configuration will overwrite the remote one. This can lead to unexpected results for users. To address this, currently `wrangler deploy` warns users about potential configuration overrides (without presenting them) and prompts them to confirm whether they want to proceed. The changes here improve the above flow in the following way: - - If the local changes only add new configurations (without modifying or removing existing ones), the deployment proceeds automatically without warnings or prompts, as these changes are non-destructive and safe. - If the local changes modify or remove existing configurations, `wrangler deploy` now displays a git-like diff showing the differences between the dashboard and local configurations. This allows users to review and understand the impact of their changes before confirming the deployment. @@ -3044,7 +3075,6 @@ Wrangler and Vite will continue to load `.env` files in order to configure themselves as a tool. Further details: - - In `vite build` the local vars will be computed and stored in a `.dev.vars` file next to the compiled Worker code, so that `vite preview` can use them. - The `wrangler types` command will similarly read the `.env` files (if no `.dev.vars` files) in order to generate the `Env` interface. - If the `CLOUDFLARE_LOAD_DEV_VARS_FROM_DOT_ENV` environment variable is `"false"` then local dev variables will not be loaded from `.env` files. @@ -3222,7 +3252,6 @@ - [#9825](https://github.com/cloudflare/workers-sdk/pull/9825) [`49c85c5`](https://github.com/cloudflare/workers-sdk/commit/49c85c5306b3dbfa9342baeab3b7d14d954d4ade) Thanks [@ReppCodes](https://github.com/ReppCodes)! - Add support for origin_connection_limit to Wrangler Configure connection limits to Hyperdrive via command line options: - - `--origin-connection-limit`: The (soft) maximum number of connections that Hyperdrive may establish to the origin database. - [#9064](https://github.com/cloudflare/workers-sdk/pull/9064) [`a1181bf`](https://github.com/cloudflare/workers-sdk/commit/a1181bf804e3ee4b6c2034fa3e429fd6b71f4c13) Thanks [@sdnts](https://github.com/sdnts)! - Added an `event-subscriptions` subcommand @@ -3244,7 +3273,6 @@ - [#9840](https://github.com/cloudflare/workers-sdk/pull/9840) [`7c55f9e`](https://github.com/cloudflare/workers-sdk/commit/7c55f9e1eac4fb0d53f9180a011172328296be16) Thanks [@dario-piotrowicz](https://github.com/dario-piotrowicz)! - fix: make sure that the experimental `remoteBindings` flag is properly handled in `getPlatformProxy` There are two issues related to how the experimental `remoteBindings` flag is handled in `getPlatformProxy` that are being fixed by this change: - - the `experimental_remote` configuration flag set on service bindings is incorrectly always taken into account, even if `remoteBindings` is set to `false` - the `experimental_remote` configuration flag of all the other bindings is never taken into account (effectively preventing the bindings to be used in remote mode) since the `remoteBindings` flag is not being properly propagated @@ -3488,7 +3516,6 @@ add a warning suggesting users to specify their target environment (via `-e` or `--env`) when their wrangler config file contains some environments and they are calling one of the following commands: - - wrangler deploy - wrangler versions upload - wrangler versions deploy @@ -3529,7 +3556,6 @@ - [#9507](https://github.com/cloudflare/workers-sdk/pull/9507) [`1914b87`](https://github.com/cloudflare/workers-sdk/commit/1914b87e254bb733298cb0c0e96bb0bd234acde4) Thanks [@dario-piotrowicz](https://github.com/dario-piotrowicz)! - slightly improve wrangler dev bindings loggings improve the bindings loggings by: - - removing the unnecessary (and potentially incorrect) `[connected]` suffix for remote bindings - making sure that the modes presented in the bindings logs are correctly aligned @@ -3608,7 +3634,6 @@ ### Patch Changes - [#9390](https://github.com/cloudflare/workers-sdk/pull/9390) [`80e75f4`](https://github.com/cloudflare/workers-sdk/commit/80e75f4a67b4e4b7a1bc92e0a93659e5d6f141dc) Thanks [@penalosa](https://github.com/penalosa)! - Support additional Mixed Mode resources in Wrangler: - - AI - Browser - Images @@ -3633,7 +3658,6 @@ - [#9308](https://github.com/cloudflare/workers-sdk/pull/9308) [`d3a6eb3`](https://github.com/cloudflare/workers-sdk/commit/d3a6eb30e58de2b8f12fc899a70a31518968b910) Thanks [@dario-piotrowicz](https://github.com/dario-piotrowicz)! - expose new utilities and types to aid consumers of the programmatic mixed-mode API Specifically the exports have been added: - - `Experimental_MixedModeSession`: type representing a mixed-mode session - `Experimental_ConfigBindingsOptions`: type representing config-bindings - `experimental_pickRemoteBindings`: utility for picking only the remote bindings from a record of start-worker bindings. @@ -3652,7 +3676,6 @@ Now it is possible to target Wrangler at the FedRAMP High compliance region. There are two ways to signal to Wrangler to run in this mode: - - set `"compliance_region": "fedramp_high"` in a Wrangler configuration - set `CLOUDFLARE_COMPLIANCE_REGION=fedramp_high` environment variable when running Wrangler @@ -3662,7 +3685,6 @@ It is necessary to authenticate using a Cloudflare API Token acquired from the Cloudflare FedRAMP High dashboard. Most bindings and commands are supported in this mode. - - Unsupported commands may result in API requests that are not supported - possibly 422 Unprocessable Entity responses. - Unsupported bindings may work in local dev, as there is no local validation, but will fail at Worker deployment time. @@ -3833,7 +3855,6 @@ - [#9124](https://github.com/cloudflare/workers-sdk/pull/9124) [`d0d62e6`](https://github.com/cloudflare/workers-sdk/commit/d0d62e6e4bb3ac6e0b6d9a0140a2825249f32e89) Thanks [@dario-piotrowicz](https://github.com/dario-piotrowicz)! - make that `unstable_startWorker` can correctly throw configuration errors make sure that `unstable_startWorker` can throw configuration related errors when: - - the utility is called - the worker's `setConfig` is called with the `throwErrors` argument set to `true` @@ -4024,7 +4045,6 @@ - [#8711](https://github.com/cloudflare/workers-sdk/pull/8711) [`4cc036d`](https://github.com/cloudflare/workers-sdk/commit/4cc036d46b2f5c3ceacb344882e713e7840becde) Thanks [@CarmenPopoviciu](https://github.com/CarmenPopoviciu)! - Add the Pages deployment id to the JSON output for `wrangler pages deployment list` - [#8244](https://github.com/cloudflare/workers-sdk/pull/8244) [`84ecfe9`](https://github.com/cloudflare/workers-sdk/commit/84ecfe9b4962d1edbe7967cfe4151f26de252a9d) Thanks [@CarmenPopoviciu](https://github.com/CarmenPopoviciu)! - feat: Add debug logs to capture assets upload status, specifically: - - which asset files were read from the file system - which files were successfully uploaded @@ -4076,7 +4096,6 @@ this change improves that validation error message that users see when a redirected config file contains environments, by: - - cleaning the message formatting and displaying the offending environments in a list - prompting the user to report the issue to the author @@ -4096,7 +4115,6 @@ ### Patch Changes - [#8780](https://github.com/cloudflare/workers-sdk/pull/8780) [`4e69fb6`](https://github.com/cloudflare/workers-sdk/commit/4e69fb6f05138b32500695846482dd22bb2590d9) Thanks [@cmackenzie1](https://github.com/cmackenzie1)! - - Rename `wrangler pipelines show` to `wrangler pipelines get` - - Replace `--enable-worker-binding` and `--enable-http` with `--source worker` and `--source http` (or `--source http worker` for both) - Remove `--file-template` and `--partition-template` flags from `wrangler pipelines create|update` @@ -4107,7 +4125,6 @@ add the following validation behaviors to wrangler deploy commands, that relate to redirected configs (i.e. config files specified by `.wrangler/deploy/config.json` files): - - redirected configs are supposed to be already flattened configurations without any environment (i.e. a build tool should generate redirected configs already targeting specific environments), so if wrangler encounters a redirected config with some environments defined @@ -4326,7 +4343,6 @@ - [#7334](https://github.com/cloudflare/workers-sdk/pull/7334) [`869ec7b`](https://github.com/cloudflare/workers-sdk/commit/869ec7b916487ec43b958a27bdfea13588c5685f) Thanks [@penalosa](https://github.com/penalosa)! - Remove the deprecated `--format` argument on `wrangler deploy` and `wrangler dev`. Remove deprecated config fields: - - `type` - `webpack_config` - `miniflare` @@ -4369,14 +4385,12 @@ - [#7334](https://github.com/cloudflare/workers-sdk/pull/7334) [`869ec7b`](https://github.com/cloudflare/workers-sdk/commit/869ec7b916487ec43b958a27bdfea13588c5685f) Thanks [@penalosa](https://github.com/penalosa)! - Remove the deprecated `wrangler publish` command. Instead, use `wrangler deploy`, which takes exactly the same arguments. Additionally, remove the following deprecated commands, which are no longer supported. - - `wrangler config` - `wrangler preview` - `wrangler route` - `wrangler subdomain` Remove the following deprecated command aliases: - - `wrangler secret:*`, replaced by `wrangler secret *` - `wrangler kv:*`, replaced by `wrangler kv *` @@ -4389,7 +4403,6 @@ - [#7334](https://github.com/cloudflare/workers-sdk/pull/7334) [`869ec7b`](https://github.com/cloudflare/workers-sdk/commit/869ec7b916487ec43b958a27bdfea13588c5685f) Thanks [@threepointone](https://github.com/threepointone)! - chore: update esbuild This patch updates esbuild from 0.17.19 to 0.24.2. That's a big bump! Lots has gone into esbuild since May '23. All the details are available at https://github.com/evanw/esbuild/blob/main/CHANGELOG.md / https://github.com/evanw/esbuild/blob/main/CHANGELOG-2023.md. - - We now support all modern JavasScript/TypeScript features suported by esbuild (as of December 2024). New additions include standard decorators, auto-accessors, and the `using` syntax. - 0.18 introduced wider support for configuration specified via `tsconfig.json` https://github.com/evanw/esbuild/issues/3019. After observing the (lack of) any actual broken code over the last year for this release, we feel comfortable releasing this without considering it a breaking change. - 0.19.3 introduced support for import attributes @@ -4401,7 +4414,6 @@ While we don't currently expose the esbuild configuration for developers to add their own plugins to customise how modules with import attributes are bundled, we may introduce new "types" ourselves in the future. - 0.19.0 introduced support for wildcard imports. Specifics here (https://github.com/evanw/esbuild/blob/main/CHANGELOG-2023.md#0190). tl;dr - - - These 2 patterns will bundle all files that match the glob pattern into a single file. ```js @@ -4458,7 +4470,6 @@ ``` Before this update: - 1. A request to anything but `http://localhost:8787/` would error. For example, a request to `http://localhost:8787/one.js` would error with _No such module "one.js"._ 2. Let's configure `wrangler.toml` to include all `.js` files in the `src` folder: @@ -4483,7 +4494,6 @@ Then, a request to `http://localhost:8787/hidden/secret.js` will return the contents of `src/hidden/secret.js`. After this update: - - Let's put the wrangler.toml back to its original configuration: ```toml @@ -4492,7 +4502,6 @@ ``` - Now, a request to `http://localhost:8787/one.js` will return the contents of `src/one.js`, but a request to `http://localhost:8787/hidden/secret.js` will ALSO return the contents of `src/hidden/secret.js`. THIS MAY NOT BE WHAT YOU WANT. You can "fix" this in 2 ways: - 1. Remove the inline wildcard import: ```js @@ -4508,7 +4517,6 @@ ``` Now, no extra modules are included in the bundle, and a request to `http://localhost:8787/hidden/secret.js` will throw an error. You can use the `find_additional_modules` feature to include it again. - 2. Don't use the wildcard import pattern: ```js @@ -4738,7 +4746,6 @@ This can be imported into Chrome DevTools or opened directly in VSCode to view a flamegraph of your Worker's startup phase. Additionally, when a Worker deployment fails with a startup time error Wrangler will automatically generate a CPU profile for easy investigation. Advanced usage: - - `--args`: to customise the way `wrangler check startup` builds your Worker for analysis, provide the exact arguments you use when deploying your Worker with `wrangler deploy`. For instance, if you deploy your Worker with `wrangler deploy --no-bundle`, you should use `wrangler check startup --args="--no-bundle"` to profile the startup phase. - `--worker-bundle`: if you don't use Wrangler to deploy your Worker, you can use this argument to provide a Worker bundle to analyse. This should be a file path to a serialised multipart upload, with the exact same format as the API expects: https://developers.cloudflare.com/api/resources/workers/subresources/scripts/methods/update/ @@ -4912,7 +4919,6 @@ - [#7860](https://github.com/cloudflare/workers-sdk/pull/7860) [`13ab591`](https://github.com/cloudflare/workers-sdk/commit/13ab5916058e8e834f3e13fb9b5b9d9addc0f930) Thanks [@vicb](https://github.com/vicb)! - refactor(wrangler): make JSON parsing independent of Node Switch `jsonc-parser` to parse json: - - `JSON.parse()` exception messages are not stable across Node versions - While `jsonc-parser` is used, JSONC specific syntax is disabled @@ -4939,11 +4945,9 @@ This command allows users to upload a mTLS certificate/private key or certificate-authority certificate chain. For uploading mTLS certificate, run: - - `wrangler cert upload mtls-certificate --cert cert.pem --key key.pem --name MY_CERT` For uploading CA certificate chain, run: - - `wrangler cert upload certificate-authority --ca-cert server-ca.pem --name SERVER_CA` ### Patch Changes @@ -5011,7 +5015,6 @@ - [#7806](https://github.com/cloudflare/workers-sdk/pull/7806) [`d7adb50`](https://github.com/cloudflare/workers-sdk/commit/d7adb50fcc9e3c509365fed8a86df485ea9f739b) Thanks [@vicb](https://github.com/vicb)! - chore: update unenv to 2.0.0-rc.0 Pull a couple changes in node:timers - - unjs/unenv#384 fix function bindings in node:timer - unjs/unenv#385 implement active and \_unrefActive in node:timer @@ -5174,7 +5177,6 @@ ### Affected commands The commands that use this feature are: - - `wrangler deploy` - `wrangler dev` - `wrangler versions upload` @@ -5198,7 +5200,6 @@ ### Custom build tool example A common approach that a build tool might choose to implement. - - The user writes code that uses Cloudflare Workers resources, configured via a user `wrangler.toml` file. ```toml @@ -5315,7 +5316,6 @@ - [#7425](https://github.com/cloudflare/workers-sdk/pull/7425) [`8757579`](https://github.com/cloudflare/workers-sdk/commit/8757579a47d675909230a51f8e09d1611d5cadb1) Thanks [@CarmenPopoviciu](https://github.com/CarmenPopoviciu)! - feat: Make DX improvements in `wrangler dev --remote` Workers + Assets projects have, in certain situations, a relatively degraded `wrangler dev --remote` developer experience, as opposed to Workers proper projects. This is due to the fact that, for Workers + Assets, we need to make extra API calls to: - 1. check for asset files changes 2. upload the changed assets, if any @@ -5351,7 +5351,6 @@ Adds a Wrangler API to find and read a config file - [#7549](https://github.com/cloudflare/workers-sdk/pull/7549) [`42b9429`](https://github.com/cloudflare/workers-sdk/commit/42b942916efbd4eb8060e4d61c2e805ec78a1a89) Thanks [@penalosa](https://github.com/penalosa)! - Expand metrics collection to: - - Detect Pages & Workers CI - Filter out default args (e.g. `--x-versions`, `--x-dev-env`, and `--latest`) by only including args that were in `argv` @@ -5455,7 +5454,6 @@ - [#7431](https://github.com/cloudflare/workers-sdk/pull/7431) [`8f25ebe`](https://github.com/cloudflare/workers-sdk/commit/8f25ebe74d19237e85b6dada1eb34236add11d48) Thanks [@vicb](https://github.com/vicb)! - chore(wrangler): update unenv dependency version Pull in: - - refactor(cloudflare): reimplement module:createRequire for latest workerd (unjs/unenv#351) - refactor: use node:events instead of relative path (unjs/unenv#354) - refactor(http, cloudflare): use unenv/ imports inside node:http (unjs/unenv#363) @@ -5610,7 +5608,6 @@ - [#7173](https://github.com/cloudflare/workers-sdk/pull/7173) [`b6cbfbd`](https://github.com/cloudflare/workers-sdk/commit/b6cbfbdd10dfbb732ec12a5c69bd4a74b07de8a0) Thanks [@Ankcorn](https://github.com/Ankcorn)! - Adds [observability.logs] settings to wrangler. This setting lets developers control the settings for logs as an independent dataset enabling more dataset types in the future. The most specific setting will win if any of the datasets are not enabled. It also adds the following setting to the logs config - - `invocation_logs` - set to false to disable invocation logs. Defaults to true. ```toml @@ -6196,7 +6193,6 @@ We want wrangler to error if users are trying to deploy a Worker with assets, and routes with a path component. All Workers with assets must have either: - - custom domain routes - pattern routes which have no path component (except for the wildcard splat) "some.domain.com/\*" @@ -6489,7 +6485,6 @@ - [#6370](https://github.com/cloudflare/workers-sdk/pull/6370) [`8a3c6c0`](https://github.com/cloudflare/workers-sdk/commit/8a3c6c00105a3420e46da660bd3f317b26f1c6d4) Thanks [@CarmenPopoviciu](https://github.com/CarmenPopoviciu)! - feat: Create very basic Asset Server Worker and plumb it into `wrangler dev` These changes do the ground work needed in order to add Assets support for Workers in `wrangler dev`. They implement the following: - - it creates a new package called `workers-shared` that hosts the `Asset Server Worker`, and the `Router Worker`in the future - it scaffolds the `Asset Server Worker` in some very basic form, with basic configuration. Further behaviour implementation will follow in a subsequent PR - it does the ground work of plumbing ASW into Miniflare @@ -6573,7 +6568,6 @@ - [#6295](https://github.com/cloudflare/workers-sdk/pull/6295) [`ebc85c3`](https://github.com/cloudflare/workers-sdk/commit/ebc85c362a424778b7f0565217488504bd42964e) Thanks [@andyjessop](https://github.com/andyjessop)! - feat: introduce an experimental flag for `wrangler types` to dynamically generate runtime types according to the user's project configuration. - [#6272](https://github.com/cloudflare/workers-sdk/pull/6272) [`084d39e`](https://github.com/cloudflare/workers-sdk/commit/084d39e15e35471fabfb789dd280afe16a919fcf) Thanks [@emily-shen](https://github.com/emily-shen)! - fix: add `legacy-assets` config and flag as alias of current `assets` behavior - - The existing behavior of the `assets` config key/flag will change on August 15th. - `legacy-assets` will preserve current functionality. @@ -6671,7 +6665,6 @@ make sure that the same behavior is applied to the `ctx` object returned by `getPlatformProxy` - [#5569](https://github.com/cloudflare/workers-sdk/pull/5569) [`75ba960`](https://github.com/cloudflare/workers-sdk/commit/75ba9608faa9e5710fe1dc75b5852ae446696245) Thanks [@penalosa](https://github.com/penalosa)! - fix: Simplify `wrangler pages download config`: - - Don't include inheritable keys in the production override if they're equal to production - Only create a preview environment if needed, otherwise put the preview config at the top level @@ -6866,7 +6859,6 @@ - [#6058](https://github.com/cloudflare/workers-sdk/pull/6058) [`31cd51f`](https://github.com/cloudflare/workers-sdk/commit/31cd51f251050b0d6db97857a8d1d5427c855d99) Thanks [@threepointone](https://github.com/threepointone)! - chore: Quieter builds This patch cleans up warnings we were seeing when doing a full build. Specifically: - - fixtures/remix-pages-app had a bunch of warnings about impending features that it should be upgraded to, so I did that. (tbh this one needs a full upgrade of packages, but we'll get to that later when we're upgrading across the codebase) - updated `@microsoft/api-extractor` so it didn't complain that it didn't match the `typescript` version (that we'd recently upgraded) - it also silenced a bunch of warnings when exporting types from `wrangler`. We'll need to fix those, but we'll do that when we work on unstable_dev etc. @@ -7054,7 +7046,6 @@ ``` This commit ensures that we provide users with: - - the correct feedback with respect to their Pages deployment - the appropriate messaging depending on the status of their project's deployment status - the appropriate logs in case of a deployment failure @@ -7108,7 +7099,6 @@ ### Patch Changes - [#5813](https://github.com/cloudflare/workers-sdk/pull/5813) [`9627cef`](https://github.com/cloudflare/workers-sdk/commit/9627cef2f1aadb44aa677e429b6cb6af9c8ee495) Thanks [@GregBrimble](https://github.com/GregBrimble)! - fix: Upload Pages project assets with more grace - - Reduces the maximum bucket size from 50 MiB to 40 MiB. - Reduces the maximum asset count from 5000 to 2000. - Allows for more retries (with increased sleep between attempts) when encountering an API gateway failure. @@ -7500,7 +7490,6 @@ - [#5258](https://github.com/cloudflare/workers-sdk/pull/5258) [`fbdca7d`](https://github.com/cloudflare/workers-sdk/commit/fbdca7d93156f9db2a1513573e45f10fac7e57d1) Thanks [@OilyLime](https://github.com/OilyLime)! - feature: URL decode components of the Hyperdrive config connection string - [#5416](https://github.com/cloudflare/workers-sdk/pull/5416) [`47b325a`](https://github.com/cloudflare/workers-sdk/commit/47b325af0df87bcf20d922ff385ae9cd21726863) Thanks [@mattdeboard](https://github.com/mattdeboard)! - fix: minor improvements to R2 notification subcommand - 1. `r2 bucket event-notification ` becomes `r2 bucket notification ` 2. Parameters to `--event-type` use `-` instead of `_` (e.g. `object_create` -> `object-create`) @@ -7936,7 +7925,6 @@ whilst also making the type compatible with workers-types - Updated dependencies [[`7723ac17`](https://github.com/cloudflare/workers-sdk/commit/7723ac17906f894afe9af2152437726ac09a6290), [`027f9719`](https://github.com/cloudflare/workers-sdk/commit/027f971975a48a564603275f3583d21e9d053229), [`027f9719`](https://github.com/cloudflare/workers-sdk/commit/027f971975a48a564603275f3583d21e9d053229), [`027f9719`](https://github.com/cloudflare/workers-sdk/commit/027f971975a48a564603275f3583d21e9d053229), [`027f9719`](https://github.com/cloudflare/workers-sdk/commit/027f971975a48a564603275f3583d21e9d053229), [`027f9719`](https://github.com/cloudflare/workers-sdk/commit/027f971975a48a564603275f3583d21e9d053229), [`027f9719`](https://github.com/cloudflare/workers-sdk/commit/027f971975a48a564603275f3583d21e9d053229)]: - - miniflare@3.20240129.3 - [#4475](https://github.com/cloudflare/workers-sdk/pull/4475) [86d94ff](https://github.com/cloudflare/workers-sdk/commit/86d94ff5acd31eee7f02bc68e0b70f792eb3e74c) Thanks [@paulrostorp](https://github.com/paulrostorp)! - feat: support custom HTTPS certificate paths in Wrangler dev commands. @@ -8520,7 +8508,6 @@ These changes were released in 3.13.0 and reverted in 3.13.1 -- we believe the changes are now more stable and ready for release again. There are no changes required for developers to opt-in. Improvements include: - - fewer 'address in use' errors upon reloads - upon config/source file changes, requests are buffered to guarantee the response is from the new version of the Worker @@ -8771,7 +8758,6 @@ * [#3960](https://github.com/cloudflare/workers-sdk/pull/3960) [`c36b78b4`](https://github.com/cloudflare/workers-sdk/commit/c36b78b4109c05f47556972e66673f64ec0baa3b) Thanks [@RamIdeas](https://github.com/RamIdeas)! - Refactoring the internals of wrangler dev servers (including `wrangler dev`, `wrangler dev --remote` and `unstable_dev()`). There are no changes required for developers to opt-in. Improvements include: - - fewer 'address in use' errors upon reloads - upon config/source file changes, requests are buffered to guarantee the response is from the new version of the Worker @@ -9146,7 +9132,6 @@ `wrangler deploy` immediately deletes assets that are no longer current, which has a side-effect for existing progressive web app users of seeing 404 errors as the app tries to access assets that no longer exist. This new feature: - - does not change the default behavior of immediately deleting no-longer needed assets. - allows users to opt-in to expiring newly obsoleted assets after the provided number of seconds hence, so that current users will have a time buffer before seeing 404 errors. - is similar in concept to what was introduced in Wrangler 1.x with https://github.com/cloudflare/wrangler-legacy/pull/2221. @@ -9435,7 +9420,6 @@ ### Minor Changes - [#3098](https://github.com/cloudflare/workers-sdk/pull/3098) [`8818f551`](https://github.com/cloudflare/workers-sdk/commit/8818f5516ca909cc941deb953b6359030a8c0301) Thanks [@mrbbot](https://github.com/mrbbot)! - fix: improve Workers Sites asset upload reliability - - Wrangler no longer buffers all assets into memory before uploading. This should prevent out-of-memory errors when publishing sites with many large files. - Wrangler now limits the number of in-flight asset upload requests to 5, fixing the `Too many bulk operations already in progress` error. - Wrangler now correctly logs upload progress. Previously, the reported percentage was per upload request group, not across all assets. @@ -9613,7 +9597,6 @@ Support send email bindings in order to send emails from a worker. There are three types of bindings: - - Unrestricted: can send email to any verified destination address. - Restricted: can only send email to the supplied destination address (which does not need to be specified when sending the email but also needs to be a @@ -9763,7 +9746,6 @@ binding = "yeee" - [#2810](https://github.com/cloudflare/workers-sdk/pull/2810) [`62784131`](https://github.com/cloudflare/workers-sdk/commit/62784131385d641c3512b09565d801a5ecd39725) Thanks [@mrbbot](https://github.com/mrbbot)! - chore: upgrade `@miniflare/tre` to [`3.0.0-next.12`](https://github.com/cloudflare/miniflare/releases/tag/v3.0.0-next.12), incorporating changes from [`3.0.0-next.11`](https://github.com/cloudflare/miniflare/releases/tag/v3.0.0-next.11) Notably, this brings the following improvements to `wrangler dev --experimental-local`: - - Adds support for Durable Objects and D1 - Fixes an issue blocking clean exits and script reloads - Bumps to `better-sqlite3@8`, allowing installation on Node 19 @@ -10203,7 +10185,6 @@ rozenmd@cflaptop test1 % npx wrangler d1 execute test --command="select * from c * [#2479](https://github.com/cloudflare/workers-sdk/pull/2479) [`7b479b91`](https://github.com/cloudflare/workers-sdk/commit/7b479b9104266c83dda3b4e4a89ab9b919b743f0) Thanks [@rozenmd](https://github.com/rozenmd)! - fix: bump d1js This PR bumps d1js, adding the following functionality to the d1 alpha shim: - - validates supported types - converts ArrayBuffer to array - converts typedArray to array @@ -10463,7 +10444,6 @@ rozenmd@cflaptop test1 % npx wrangler d1 execute test --command="select * from c ### Minor Changes - [#2107](https://github.com/cloudflare/workers-sdk/pull/2107) [`511943e9`](https://github.com/cloudflare/workers-sdk/commit/511943e9226f787aa997a325d39dc2caac05a73c) Thanks [@celso](https://github.com/celso)! - fix: D1 execute and backup commands improvements - - Better and faster handling when importing big SQL files using execute --file - Increased visibility during imports, sends output with each batch API call - Backups are now downloaded to the directory where wrangler was initiated from @@ -10596,7 +10576,6 @@ rozenmd@cflaptop test1 % npx wrangler d1 execute test --command="select * from c Added support for the deployments command, which allows you to list the last ten deployments for a given script. The information will include: - - Version ID - Version number - Author email @@ -10793,7 +10772,6 @@ rozenmd@cflaptop test1 % npx wrangler d1 execute test --command="select * from c We change how websockets are handled in the proxy server, fixing multiple issues of websocket behaviour, particularly to do with headers. In particular this fixes: - - the protocol passed between the client and the worker was being stripped out by wrangler - wrangler was discarding additional headesr from websocket upgrade response - websocket close code and reason was not being propagated by wrangler @@ -11041,7 +11019,6 @@ rozenmd@cflaptop test1 % npx wrangler d1 execute test --command="select * from c - [#1781](https://github.com/cloudflare/workers-sdk/pull/1781) [`603d0b35`](https://github.com/cloudflare/workers-sdk/commit/603d0b35074e2c59484e39305e0b01121de20f15) Thanks [@JacobMGEvans](https://github.com/JacobMGEvans)! - feat: Publish Origin Messaging feat: warn about potential conflicts during `publish` and `init --from-dash`. - - If publishing to a worker that has been modified in the dashboard, warn that the dashboard changes will be overwritten. - When initializing from the dashboard, warn that future changes via the dashboard will not automatically appear in the local Worker config. @@ -11050,7 +11027,6 @@ rozenmd@cflaptop test1 % npx wrangler d1 execute test --command="select * from c * [#1735](https://github.com/cloudflare/workers-sdk/pull/1735) [`de29a445`](https://github.com/cloudflare/workers-sdk/commit/de29a4459750cf229fb563bcc8191ab3ad77bf4d) Thanks [@cameron-robey](https://github.com/cameron-robey)! - feat: new internal middleware A new way of registering middleware that gets bundled and executed on the edge. - - the same middleware functions can be used for both modules workers and service workers - only requires running esbuild a fixed number of times, rather than for each middleware added @@ -11078,7 +11054,6 @@ rozenmd@cflaptop test1 % npx wrangler d1 execute test --command="select * from c Prior to this change, `wrangler.unstable_dev()` would only support running one instance of wrangler at a time, as Ink only lets you render one instance of React. This resulted in test failures in CI. This change creates pure JS/TS versions of these React hooks: - - useEsbuild - useLocalWorker - useCustomBuild @@ -11142,7 +11117,6 @@ rozenmd@cflaptop test1 % npx wrangler d1 execute test --command="select * from c * [#1720](https://github.com/cloudflare/workers-sdk/pull/1720) [`f638de64`](https://github.com/cloudflare/workers-sdk/commit/f638de6426619a899367ba41674179b8ca67c6ab) Thanks [@mrbbot](https://github.com/mrbbot)! - Upgrade `miniflare` to [`2.7.1`](https://github.com/cloudflare/miniflare/releases/tag/v2.7.1) incorporating changes from [`2.7.0`](https://github.com/cloudflare/miniflare/releases/tag/v2.7.0) - [#1691](https://github.com/cloudflare/workers-sdk/pull/1691) [`5b2c3ee2`](https://github.com/cloudflare/workers-sdk/commit/5b2c3ee2c5d65b25c966ca07751f544f282525b9) Thanks [@cameron-robey](https://github.com/cameron-robey)! - chore: bump undici and increase minimum node version to 16.13 - - We bump undici to version to 5.9.1 to patch some security vulnerabilities in previous versions - This requires bumping the minimum node version to >= 16.8 so we update the minimum to the LTS 16.13 @@ -11332,7 +11306,6 @@ rozenmd@cflaptop test1 % npx wrangler d1 execute test --command="select * from c * [#1558](https://github.com/cloudflare/workers-sdk/pull/1558) [`b43a7f98`](https://github.com/cloudflare/workers-sdk/commit/b43a7f9836e8f2d969624c2c5a88adf374a1ebe3) Thanks [@rozenmd](https://github.com/rozenmd)! - chore: extract devProps parsing into own function - [#1438](https://github.com/cloudflare/workers-sdk/pull/1438) [`0a9fe918`](https://github.com/cloudflare/workers-sdk/commit/0a9fe918216264a2f6fa3f69dd596f89de7d9f56) Thanks [@caass](https://github.com/caass)! - Initial implementation of `wrangler generate` - - `wrangler generate` and `wrangler generate ` delegate to `wrangler init`. - `wrangler generate