From 12a8b15f9d7347d622342e8dd0466ed1f56b0e4d Mon Sep 17 00:00:00 2001 From: Yusuke Wada Date: Thu, 16 Nov 2023 23:07:22 +0900 Subject: [PATCH] feat(dev-server): introduce `env` (#30) * feat(dev-server): introduce `env` * add `deprecated` comment * changeset --- .changeset/gorgeous-waves-act.md | 5 + packages/dev-server/README.md | 49 +- packages/dev-server/{test => e2e}/e2e.test.ts | 0 .../dev-server/{test => e2e}/mock/worker.ts | 0 .../{test => e2e}/playwright.config.ts | 0 .../{test => e2e}/public/static/hello.json | 0 .../dev-server/{test => e2e}/vite.config.ts | 6 +- packages/dev-server/package.json | 28 +- .../cloudflare-pages/cloudflare-pages.test.ts | 17 + .../src/cloudflare-pages/cloudflare-pages.ts | 45 ++ .../dev-server/src/cloudflare-pages/index.ts | 1 + packages/dev-server/src/dev-server.ts | 76 +- packages/dev-server/src/types.ts | 12 + packages/dev-server/tsconfig.json | 1 + packages/dev-server/vitest.config.ts | 8 + yarn.lock | 685 ++++++++++++++---- 16 files changed, 676 insertions(+), 257 deletions(-) create mode 100644 .changeset/gorgeous-waves-act.md rename packages/dev-server/{test => e2e}/e2e.test.ts (100%) rename packages/dev-server/{test => e2e}/mock/worker.ts (100%) rename packages/dev-server/{test => e2e}/playwright.config.ts (100%) rename packages/dev-server/{test => e2e}/public/static/hello.json (100%) rename packages/dev-server/{test => e2e}/vite.config.ts (79%) create mode 100644 packages/dev-server/src/cloudflare-pages/cloudflare-pages.test.ts create mode 100644 packages/dev-server/src/cloudflare-pages/cloudflare-pages.ts create mode 100644 packages/dev-server/src/cloudflare-pages/index.ts create mode 100644 packages/dev-server/src/types.ts create mode 100644 packages/dev-server/vitest.config.ts diff --git a/.changeset/gorgeous-waves-act.md b/.changeset/gorgeous-waves-act.md new file mode 100644 index 0000000..9c9826e --- /dev/null +++ b/.changeset/gorgeous-waves-act.md @@ -0,0 +1,5 @@ +--- +'@hono/vite-dev-server': minor +--- + +feat: introduce `env` diff --git a/packages/dev-server/README.md b/packages/dev-server/README.md index c647dfb..f2417d9 100644 --- a/packages/dev-server/README.md +++ b/packages/dev-server/README.md @@ -97,26 +97,11 @@ bunx --bun vite The options are below. `WorkerOptions` imported from `miniflare` are used for Cloudflare Bindings. ```ts -import type { MiniflareOptions, WorkerOptions } from 'miniflare' - export type DevServerOptions = { entry?: string injectClientScript?: boolean exclude?: (string | RegExp)[] - cf?: Partial< - Omit< - WorkerOptions, - // We can ignore these properties: - 'name' | 'script' | 'scriptPath' | 'modules' | 'modulesRoot' | 'modulesRules' - > & - Pick< - MiniflareOptions, - 'cachePersist' | 'd1Persist' | 'durableObjectsPersist' | 'kvPersist' | 'r2Persist' - > & { - // Enable `env.ASSETS.fetch()` function for Cloudflare Pages. - assets?: boolean - } - > + env?: Env | EnvFunc } ``` @@ -160,21 +145,31 @@ export default defineConfig({ }) ``` -## Cloudflare Bindings +### `env` + +You can pass `ENV` variables to your application by setting the `env` option. +`ENV` values can be accessed using `c.env` in your Hono application. + +Presets are available to define the `ENV`. + +## `ENV` presets -You can use Cloudflare Bindings like variables, KV, D1, and others. +### Cloudflare Pages + +You can use Cloudflare Pages `ENV` presets, which allow you to access bindings such as variables, KV, D1, and others. ```ts +import { getEnv } from '@hono/vite-dev-server/cloudflare-pages' + export default defineConfig({ plugins: [ devServer({ - entry: 'src/index.ts', - cf: { + env: getEnv({ bindings: { NAME: 'Hono', }, kvNamespaces: ['MY_KV'], - }, + }), }), ], }) @@ -182,7 +177,7 @@ export default defineConfig({ These Bindings are emulated by Miniflare in the local. -### D1 +#### D1 When using D1, your app will read `.mf/d1/DB/db.sqlite` which is generated automatically with the following configuration: @@ -273,16 +268,6 @@ You can run the following command to build the client script. vite build --mode client ``` -## Notes - -### Depending on Miniflare - -`@hono/vite-dev-server` depends on `miniflare` for certain platforms you may want to run on. For example, if you want to run your applications on Node.js, the `miniflare` is not needed. However, it's necessary for Cloudflare Workers/Pages, which are important platforms for Hono. And `miniflare` is needed just for development; it will not be bundled for production. - -### `cf` option with Bun - -If properties are set in the `cf` option and it's running on Bun, an error will be thrown. - ## Authors - Yusuke Wada diff --git a/packages/dev-server/test/e2e.test.ts b/packages/dev-server/e2e/e2e.test.ts similarity index 100% rename from packages/dev-server/test/e2e.test.ts rename to packages/dev-server/e2e/e2e.test.ts diff --git a/packages/dev-server/test/mock/worker.ts b/packages/dev-server/e2e/mock/worker.ts similarity index 100% rename from packages/dev-server/test/mock/worker.ts rename to packages/dev-server/e2e/mock/worker.ts diff --git a/packages/dev-server/test/playwright.config.ts b/packages/dev-server/e2e/playwright.config.ts similarity index 100% rename from packages/dev-server/test/playwright.config.ts rename to packages/dev-server/e2e/playwright.config.ts diff --git a/packages/dev-server/test/public/static/hello.json b/packages/dev-server/e2e/public/static/hello.json similarity index 100% rename from packages/dev-server/test/public/static/hello.json rename to packages/dev-server/e2e/public/static/hello.json diff --git a/packages/dev-server/test/vite.config.ts b/packages/dev-server/e2e/vite.config.ts similarity index 79% rename from packages/dev-server/test/vite.config.ts rename to packages/dev-server/e2e/vite.config.ts index 9f48f08..9df2f5b 100644 --- a/packages/dev-server/test/vite.config.ts +++ b/packages/dev-server/e2e/vite.config.ts @@ -1,17 +1,17 @@ import { defineConfig } from 'vite' import devServer, { defaultOptions } from '../src' +import { getEnv } from '../src/cloudflare-pages' export default defineConfig({ plugins: [ devServer({ entry: './mock/worker.ts', exclude: [...defaultOptions.exclude, '/app/.*'], - cf: { + env: getEnv({ bindings: { NAME: 'Hono', }, - assets: true, - }, + }), }), ], }) diff --git a/packages/dev-server/package.json b/packages/dev-server/package.json index 730d412..12c3ba6 100644 --- a/packages/dev-server/package.json +++ b/packages/dev-server/package.json @@ -6,8 +6,10 @@ "module": "dist/index.js", "type": "module", "scripts": { - "test": "playwright test -c test/playwright.config.ts test/e2e.test.ts", - "build": "rimraf dist && tsup && publint", + "test:unit": "vitest --run", + "test:e2e": "playwright test -c e2e/playwright.config.ts e2e/e2e.test.ts", + "test": "yarn test:unit && yarn test:e2e", + "build": "rimraf dist && tsup --format esm,cjs --dts && publint", "watch": "tsup --watch", "prerelease": "yarn build && yarn test", "release": "yarn publish" @@ -17,14 +19,28 @@ ], "exports": { ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js" + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + }, + "import": { + "types": "./dist/index.d.ts", + "default": "./dist/index.js" + } + }, + "./cloudflare-pages": { + "types": "./dist/cloudflare-pages/index.d.ts", + "require": "./dist/cloudflare-pages/index.cjs", + "import": "./dist/cloudflare-pages/index.js" } }, "typesVersions": { "*": { "types": [ "./dist/types" + ], + "cloudflare-pages": [ + "./dist/cloudflare-pages/index.d.ts" ] } }, @@ -44,11 +60,11 @@ "glob": "^10.3.4", "hono": "^3.5.8", "playwright": "^1.39.0", - "publint": "^0.1.12", + "publint": "^0.2.5", "rimraf": "^5.0.1", "tsup": "^7.2.0", "vite": "^4.4.9", - "vitest": "^0.31.4" + "vitest": "^0.34.6" }, "engines": { "node": ">=18.14.1" diff --git a/packages/dev-server/src/cloudflare-pages/cloudflare-pages.test.ts b/packages/dev-server/src/cloudflare-pages/cloudflare-pages.test.ts new file mode 100644 index 0000000..3007d71 --- /dev/null +++ b/packages/dev-server/src/cloudflare-pages/cloudflare-pages.test.ts @@ -0,0 +1,17 @@ +import { getEnv } from './cloudflare-pages.js' + +describe('getEnv()', () => { + const envFunc = getEnv({ + bindings: { + TOKEN: 'MY TOKEN', + }, + }) + it('Should return the value for bindings', async () => { + const env = await envFunc() + expect(env['TOKEN']).toBe('MY TOKEN') + }) + it('Should contains ASSETS', async () => { + const env = await envFunc() + expect((env['ASSETS'] as { fetch: typeof fetch }).fetch).toBeDefined() + }) +}) diff --git a/packages/dev-server/src/cloudflare-pages/cloudflare-pages.ts b/packages/dev-server/src/cloudflare-pages/cloudflare-pages.ts new file mode 100644 index 0000000..711f908 --- /dev/null +++ b/packages/dev-server/src/cloudflare-pages/cloudflare-pages.ts @@ -0,0 +1,45 @@ +import type { MiniflareOptions, WorkerOptions } from 'miniflare' +import type { GetEnv } from '../types.js' + +type Options = Partial< + Omit< + WorkerOptions, + // We can ignore these properties: + 'name' | 'script' | 'scriptPath' | 'modules' | 'modulesRoot' | 'modulesRules' + > & + Pick< + MiniflareOptions, + 'cachePersist' | 'd1Persist' | 'durableObjectsPersist' | 'kvPersist' | 'r2Persist' + > & { + // Enable `env.ASSETS.fetch()` function for Cloudflare Pages. + assets?: boolean + } +> + +const nullScript = 'export default { fetch: () => new Response(null, { status: 404 }) };' + +export const getEnv: GetEnv = (options) => async () => { + // Dynamic import Miniflare for environments like Bun. + const { Miniflare } = await import('miniflare') + const mf = new Miniflare({ + modules: true, + script: nullScript, + ...options, + }) + + const env = { + ...(await mf.getBindings()), + // `env.ASSETS.fetch()` function for Cloudflare Pages. + ASSETS: { + async fetch(input: RequestInfo | URL, init?: RequestInit | undefined) { + try { + return await fetch(new Request(input, init)) + } catch (e) { + console.error('Failed to execute ASSETS.fetch: ', e) + return new Response(null, { status: 500 }) + } + }, + }, + } + return env +} diff --git a/packages/dev-server/src/cloudflare-pages/index.ts b/packages/dev-server/src/cloudflare-pages/index.ts new file mode 100644 index 0000000..ab3bea2 --- /dev/null +++ b/packages/dev-server/src/cloudflare-pages/index.ts @@ -0,0 +1 @@ +export { getEnv } from './cloudflare-pages.js' diff --git a/packages/dev-server/src/dev-server.ts b/packages/dev-server/src/dev-server.ts index 09065c1..652c3bc 100644 --- a/packages/dev-server/src/dev-server.ts +++ b/packages/dev-server/src/dev-server.ts @@ -1,29 +1,24 @@ import type http from 'http' import { getRequestListener } from '@hono/node-server' -import type { Miniflare, MiniflareOptions, WorkerOptions } from 'miniflare' import type { Plugin, ViteDevServer, Connect } from 'vite' +import { getEnv as cloudflarePagesGetEnv } from './cloudflare-pages/index.js' +import type { Env, Fetch, EnvFunc } from './types.js' export type DevServerOptions = { entry?: string injectClientScript?: boolean exclude?: (string | RegExp)[] - cf?: Partial< - Omit< - WorkerOptions, - // We can ignore these properties: - 'name' | 'script' | 'scriptPath' | 'modules' | 'modulesRoot' | 'modulesRules' - > & - Pick< - MiniflareOptions, - 'cachePersist' | 'd1Persist' | 'durableObjectsPersist' | 'kvPersist' | 'r2Persist' - > & { - // Enable `env.ASSETS.fetch()` function for Cloudflare Pages. - assets?: boolean - } - > + env?: Env | EnvFunc +} & { + /** + * @deprecated + * The `cf` option is maintained for backward compatibility, but it will be obsolete in the future. + * Instead, use the `env` option. + */ + cf?: Parameters[0] } -export const defaultOptions: Required> = { +export const defaultOptions: Required> = { entry: './src/index.ts', injectClientScript: true, exclude: [ @@ -36,32 +31,11 @@ export const defaultOptions: Required> = { ], } -interface ExecutionContext { - waitUntil(promise: Promise): void - passThroughOnException(): void -} - -type Fetch = (request: Request, env: {}, executionContext: ExecutionContext) => Promise - -const nullScript = 'export default { fetch: () => new Response(null, { status: 404 }) };' - export function devServer(options?: DevServerOptions): Plugin { const entry = options?.entry ?? defaultOptions.entry const plugin: Plugin = { name: '@hono/vite-dev-server', configureServer: async (server) => { - let mf: undefined | Miniflare = undefined - - // Dynamic import Miniflare for environments like Bun. - if (options?.cf) { - const { Miniflare } = await import('miniflare') - mf = new Miniflare({ - modules: true, - script: nullScript, - ...options.cf, - }) - } - async function createMiddleware(server: ViteDevServer): Promise { return async function ( req: http.IncomingMessage, @@ -86,26 +60,18 @@ export function devServer(options?: DevServerOptions): Plugin { } getRequestListener(async (request) => { - let env = {} - if (mf) { - env = await mf.getBindings() - if (options?.cf?.assets) { - env = { - // `env.ASSETS.fetch()` function for Cloudflare Pages. - ASSETS: { - async fetch(input: RequestInfo | URL, init?: RequestInit | undefined) { - try { - return await fetch(new Request(input, init)) - } catch (e) { - console.error('Failed to execute ASSETS.fetch: ', e) - return new Response(null, { status: 500 }) - } - }, - }, - ...env, - } + let env: Env = {} + + if (options?.env) { + if (typeof options.env === 'function') { + env = await options.env() + } else { + env = options.env } + } else if (options?.cf) { + env = await cloudflarePagesGetEnv(options.cf)() } + const response = await app.fetch(request, env, { waitUntil: async (fn) => fn, passThroughOnException: () => { diff --git a/packages/dev-server/src/types.ts b/packages/dev-server/src/types.ts new file mode 100644 index 0000000..834e527 --- /dev/null +++ b/packages/dev-server/src/types.ts @@ -0,0 +1,12 @@ +export type Env = Record | Promise> +export type EnvFunc = () => Env | Promise +export type GetEnv = (options: Options) => EnvFunc +export interface ExecutionContext { + waitUntil(promise: Promise): void + passThroughOnException(): void +} +export type Fetch = ( + request: Request, + env: {}, + executionContext: ExecutionContext +) => Promise diff --git a/packages/dev-server/tsconfig.json b/packages/dev-server/tsconfig.json index 14d4f5b..c50cfde 100644 --- a/packages/dev-server/tsconfig.json +++ b/packages/dev-server/tsconfig.json @@ -8,6 +8,7 @@ "module": "ES2022", "target": "ES2022", "types": [ + "vitest/globals", "vite/client" ] }, diff --git a/packages/dev-server/vitest.config.ts b/packages/dev-server/vitest.config.ts new file mode 100644 index 0000000..5aadda0 --- /dev/null +++ b/packages/dev-server/vitest.config.ts @@ -0,0 +1,8 @@ +import { defineConfig, configDefaults } from 'vitest/config' + +export default defineConfig({ + test: { + globals: true, + exclude: [...configDefaults.exclude, 'e2e'], + }, +}) diff --git a/yarn.lock b/yarn.lock index 2f9f911..4a03a8e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -348,6 +348,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/android-arm64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/android-arm64@npm:0.19.5" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/android-arm@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/android-arm@npm:0.18.20" @@ -355,6 +362,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/android-arm@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/android-arm@npm:0.19.5" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + "@esbuild/android-x64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/android-x64@npm:0.18.20" @@ -362,6 +376,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/android-x64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/android-x64@npm:0.19.5" + conditions: os=android & cpu=x64 + languageName: node + linkType: hard + "@esbuild/darwin-arm64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/darwin-arm64@npm:0.18.20" @@ -369,6 +390,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/darwin-arm64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/darwin-arm64@npm:0.19.5" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/darwin-x64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/darwin-x64@npm:0.18.20" @@ -376,6 +404,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/darwin-x64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/darwin-x64@npm:0.19.5" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@esbuild/freebsd-arm64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/freebsd-arm64@npm:0.18.20" @@ -383,6 +418,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/freebsd-arm64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/freebsd-arm64@npm:0.19.5" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/freebsd-x64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/freebsd-x64@npm:0.18.20" @@ -390,6 +432,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/freebsd-x64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/freebsd-x64@npm:0.19.5" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + "@esbuild/linux-arm64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/linux-arm64@npm:0.18.20" @@ -397,6 +446,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-arm64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/linux-arm64@npm:0.19.5" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/linux-arm@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/linux-arm@npm:0.18.20" @@ -404,6 +460,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-arm@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/linux-arm@npm:0.19.5" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + "@esbuild/linux-ia32@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/linux-ia32@npm:0.18.20" @@ -411,6 +474,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-ia32@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/linux-ia32@npm:0.19.5" + conditions: os=linux & cpu=ia32 + languageName: node + linkType: hard + "@esbuild/linux-loong64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/linux-loong64@npm:0.18.20" @@ -418,6 +488,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-loong64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/linux-loong64@npm:0.19.5" + conditions: os=linux & cpu=loong64 + languageName: node + linkType: hard + "@esbuild/linux-mips64el@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/linux-mips64el@npm:0.18.20" @@ -425,6 +502,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-mips64el@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/linux-mips64el@npm:0.19.5" + conditions: os=linux & cpu=mips64el + languageName: node + linkType: hard + "@esbuild/linux-ppc64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/linux-ppc64@npm:0.18.20" @@ -432,6 +516,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-ppc64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/linux-ppc64@npm:0.19.5" + conditions: os=linux & cpu=ppc64 + languageName: node + linkType: hard + "@esbuild/linux-riscv64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/linux-riscv64@npm:0.18.20" @@ -439,6 +530,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-riscv64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/linux-riscv64@npm:0.19.5" + conditions: os=linux & cpu=riscv64 + languageName: node + linkType: hard + "@esbuild/linux-s390x@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/linux-s390x@npm:0.18.20" @@ -446,6 +544,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-s390x@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/linux-s390x@npm:0.19.5" + conditions: os=linux & cpu=s390x + languageName: node + linkType: hard + "@esbuild/linux-x64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/linux-x64@npm:0.18.20" @@ -453,6 +558,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-x64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/linux-x64@npm:0.19.5" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + "@esbuild/netbsd-x64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/netbsd-x64@npm:0.18.20" @@ -460,6 +572,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/netbsd-x64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/netbsd-x64@npm:0.19.5" + conditions: os=netbsd & cpu=x64 + languageName: node + linkType: hard + "@esbuild/openbsd-x64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/openbsd-x64@npm:0.18.20" @@ -467,6 +586,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/openbsd-x64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/openbsd-x64@npm:0.19.5" + conditions: os=openbsd & cpu=x64 + languageName: node + linkType: hard + "@esbuild/sunos-x64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/sunos-x64@npm:0.18.20" @@ -474,6 +600,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/sunos-x64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/sunos-x64@npm:0.19.5" + conditions: os=sunos & cpu=x64 + languageName: node + linkType: hard + "@esbuild/win32-arm64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/win32-arm64@npm:0.18.20" @@ -481,6 +614,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/win32-arm64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/win32-arm64@npm:0.19.5" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/win32-ia32@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/win32-ia32@npm:0.18.20" @@ -488,6 +628,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/win32-ia32@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/win32-ia32@npm:0.19.5" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + "@esbuild/win32-x64@npm:0.18.20": version: 0.18.20 resolution: "@esbuild/win32-x64@npm:0.18.20" @@ -495,6 +642,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/win32-x64@npm:0.19.5": + version: 0.19.5 + resolution: "@esbuild/win32-x64@npm:0.19.5" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": version: 4.4.0 resolution: "@eslint-community/eslint-utils@npm:4.4.0" @@ -576,11 +730,11 @@ __metadata: hono: ^3.5.8 miniflare: ^3.20231016.0 playwright: ^1.39.0 - publint: ^0.1.12 + publint: ^0.2.5 rimraf: ^5.0.1 tsup: ^7.2.0 vite: ^4.4.9 - vitest: ^0.31.4 + vitest: ^0.34.6 languageName: unknown linkType: soft @@ -623,6 +777,15 @@ __metadata: languageName: node linkType: hard +"@jest/schemas@npm:^29.6.3": + version: 29.6.3 + resolution: "@jest/schemas@npm:29.6.3" + dependencies: + "@sinclair/typebox": ^0.27.8 + checksum: 910040425f0fc93cd13e68c750b7885590b8839066dfa0cd78e7def07bbb708ad869381f725945d66f2284de5663bbecf63e8fdd856e2ae6e261ba30b1687e93 + languageName: node + linkType: hard + "@jridgewell/gen-mapping@npm:^0.3.2": version: 0.3.3 resolution: "@jridgewell/gen-mapping@npm:0.3.3" @@ -745,6 +908,97 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-android-arm-eabi@npm:4.4.0": + version: 4.4.0 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.4.0" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@rollup/rollup-android-arm64@npm:4.4.0": + version: 4.4.0 + resolution: "@rollup/rollup-android-arm64@npm:4.4.0" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-arm64@npm:4.4.0": + version: 4.4.0 + resolution: "@rollup/rollup-darwin-arm64@npm:4.4.0" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-x64@npm:4.4.0": + version: 4.4.0 + resolution: "@rollup/rollup-darwin-x64@npm:4.4.0" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-gnueabihf@npm:4.4.0": + version: 4.4.0 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.4.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-gnu@npm:4.4.0": + version: 4.4.0 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.4.0" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-musl@npm:4.4.0": + version: 4.4.0 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.4.0" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-gnu@npm:4.4.0": + version: 4.4.0 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.4.0" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-musl@npm:4.4.0": + version: 4.4.0 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.4.0" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-win32-arm64-msvc@npm:4.4.0": + version: 4.4.0 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.4.0" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-win32-ia32-msvc@npm:4.4.0": + version: 4.4.0 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.4.0" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@rollup/rollup-win32-x64-msvc@npm:4.4.0": + version: 4.4.0 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.4.0" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@sinclair/typebox@npm:^0.27.8": + version: 0.27.8 + resolution: "@sinclair/typebox@npm:0.27.8" + checksum: 00bd7362a3439021aa1ea51b0e0d0a0e8ca1351a3d54c606b115fdcc49b51b16db6e5f43b4fe7a28c38688523e22a94d49dd31168868b655f0d4d50f032d07a1 + languageName: node + linkType: hard + "@tootallnate/once@npm:2": version: 2.0.0 resolution: "@tootallnate/once@npm:2.0.0" @@ -957,57 +1211,56 @@ __metadata: languageName: node linkType: hard -"@vitest/expect@npm:0.31.4": - version: 0.31.4 - resolution: "@vitest/expect@npm:0.31.4" +"@vitest/expect@npm:0.34.6": + version: 0.34.6 + resolution: "@vitest/expect@npm:0.34.6" dependencies: - "@vitest/spy": 0.31.4 - "@vitest/utils": 0.31.4 - chai: ^4.3.7 - checksum: 589d438b0a6daade1e26c219f9eff5113efc8e0ab465eb2fb8483449c83e5e59e60956286db631afac41060c96dd1c880d4a29781bcd57466e452c4a7cc154b0 + "@vitest/spy": 0.34.6 + "@vitest/utils": 0.34.6 + chai: ^4.3.10 + checksum: 37a526f4af7e73fc56b71ba1139d6d93ff1972315d0e0691de967179298d2ad086e8803d2b28defe0e97a1326d808cd886e4b802d1691d8894cb234e35ed5185 languageName: node linkType: hard -"@vitest/runner@npm:0.31.4": - version: 0.31.4 - resolution: "@vitest/runner@npm:0.31.4" +"@vitest/runner@npm:0.34.6": + version: 0.34.6 + resolution: "@vitest/runner@npm:0.34.6" dependencies: - "@vitest/utils": 0.31.4 - concordance: ^5.0.4 + "@vitest/utils": 0.34.6 p-limit: ^4.0.0 - pathe: ^1.1.0 - checksum: c85dee7570cba7caf7cbfcc9292848291a802e14b76b7dc2ff962e9b34c280197f8d83facf9b6278a2ca7d8a71d98598236fa400ca70371865e2c1a4f15c326f + pathe: ^1.1.1 + checksum: 0357f0a11f4e1e170099f9125e379bbe8049a59faa7b34b919b3e5ee8927f30824c2b3ebb814b6a77c75ec35a30bf9adb8ec2b5e051525b4edd0d17be15725cc languageName: node linkType: hard -"@vitest/snapshot@npm:0.31.4": - version: 0.31.4 - resolution: "@vitest/snapshot@npm:0.31.4" +"@vitest/snapshot@npm:0.34.6": + version: 0.34.6 + resolution: "@vitest/snapshot@npm:0.34.6" dependencies: - magic-string: ^0.30.0 - pathe: ^1.1.0 - pretty-format: ^27.5.1 - checksum: c60b91d02fb3b1907c47c472cd1e77deca6191259b86a7e68fcd85a2fc2084064ce50bbecd176abddf8539d06b6e9b35b0dfb0e491061ed0753f5f4e9c037a90 + magic-string: ^0.30.1 + pathe: ^1.1.1 + pretty-format: ^29.5.0 + checksum: c2f164b23741cdf10f449575a0f9996cf385675d0f76d2eb696f53b614743811f2fbefdc5eb0fd3f9544ccfbb566d57a5c50a70595167458579d56429b09151f languageName: node linkType: hard -"@vitest/spy@npm:0.31.4": - version: 0.31.4 - resolution: "@vitest/spy@npm:0.31.4" +"@vitest/spy@npm:0.34.6": + version: 0.34.6 + resolution: "@vitest/spy@npm:0.34.6" dependencies: - tinyspy: ^2.1.0 - checksum: 9e904d42a5eac1c8679047014e65584abb6b7e1862fef0f8829559e79173f7f8c350b253bd7771d806921eff959fc124a57a9016a71574bd2ff43215e5cdd3f8 + tinyspy: ^2.1.1 + checksum: b05e5906f2f489a3234a0380a21cb48635915aa7f28eac92a595e78e9ceefb95340311635e39684b32fff20f9c58fdc33488eeddee39a660cd94c9c6bc2febf7 languageName: node linkType: hard -"@vitest/utils@npm:0.31.4": - version: 0.31.4 - resolution: "@vitest/utils@npm:0.31.4" +"@vitest/utils@npm:0.34.6": + version: 0.34.6 + resolution: "@vitest/utils@npm:0.34.6" dependencies: - concordance: ^5.0.4 + diff-sequences: ^29.4.3 loupe: ^2.3.6 - pretty-format: ^27.5.1 - checksum: 769e1620e34c05b35fd58453403f5abd7775160dbb9ed908e9a12c65e740d5415f9a9ddeab42b9641a771e0d57bc0ce44abc70330b2ca36be073a0f509e1ab4b + pretty-format: ^29.5.0 + checksum: acf716af2bab66037e49bd6d3e8bae40b605b9bff515d4926c46d6f8cc2366decfac5a1756ea55029968e71fba1da1f992764c3a57c9b46eccce3f6db7197bd6 languageName: node linkType: hard @@ -1034,7 +1287,7 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.10.0, acorn@npm:^8.8.0, acorn@npm:^8.8.2, acorn@npm:^8.9.0": +"acorn@npm:^8.10.0, acorn@npm:^8.8.0, acorn@npm:^8.9.0": version: 8.10.0 resolution: "acorn@npm:8.10.0" bin: @@ -1321,13 +1574,6 @@ __metadata: languageName: node linkType: hard -"blueimp-md5@npm:^2.10.0": - version: 2.19.0 - resolution: "blueimp-md5@npm:2.19.0" - checksum: 28095dcbd2c67152a2938006e8d7c74c3406ba6556071298f872505432feb2c13241b0476644160ee0a5220383ba94cb8ccdac0053b51f68d168728f9c382530 - languageName: node - linkType: hard - "brace-expansion@npm:^1.1.7": version: 1.1.11 resolution: "brace-expansion@npm:1.1.11" @@ -1456,7 +1702,7 @@ __metadata: languageName: node linkType: hard -"chai@npm:^4.3.7": +"chai@npm:^4.3.10": version: 4.3.10 resolution: "chai@npm:4.3.10" dependencies: @@ -1632,22 +1878,6 @@ __metadata: languageName: node linkType: hard -"concordance@npm:^5.0.4": - version: 5.0.4 - resolution: "concordance@npm:5.0.4" - dependencies: - date-time: ^3.1.0 - esutils: ^2.0.3 - fast-diff: ^1.2.0 - js-string-escape: ^1.0.1 - lodash: ^4.17.15 - md5-hex: ^3.0.1 - semver: ^7.3.2 - well-known-symbols: ^2.0.0 - checksum: 749153ba711492feb7c3d2f5bb04c107157440b3e39509bd5dd19ee7b3ac751d1e4cd75796d9f702e0a713312dbc661421c68aa4a2c34d5f6d91f47e3a1c64a6 - languageName: node - linkType: hard - "console-control-strings@npm:^1.1.0": version: 1.1.0 resolution: "console-control-strings@npm:1.1.0" @@ -1731,15 +1961,6 @@ __metadata: languageName: node linkType: hard -"date-time@npm:^3.1.0": - version: 3.1.0 - resolution: "date-time@npm:3.1.0" - dependencies: - time-zone: ^1.0.0 - checksum: f9cfcd1b15dfeabab15c0b9d18eb9e4e2d9d4371713564178d46a8f91ad577a290b5178b80050718d02d9c0cf646f8a875011e12d1ed05871e9f72c72c8a8fe6 - languageName: node - linkType: hard - "debug@npm:4, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": version: 4.3.4 resolution: "debug@npm:4.3.4" @@ -1839,6 +2060,13 @@ __metadata: languageName: node linkType: hard +"diff-sequences@npm:^29.4.3": + version: 29.6.3 + resolution: "diff-sequences@npm:29.6.3" + checksum: f4914158e1f2276343d98ff5b31fc004e7304f5470bf0f1adb2ac6955d85a531a6458d33e87667f98f6ae52ebd3891bb47d420bb48a5bd8b7a27ee25b20e33aa + languageName: node + linkType: hard + "dir-glob@npm:^3.0.1": version: 3.0.1 resolution: "dir-glob@npm:3.0.1" @@ -2091,6 +2319,83 @@ __metadata: languageName: node linkType: hard +"esbuild@npm:^0.19.3": + version: 0.19.5 + resolution: "esbuild@npm:0.19.5" + dependencies: + "@esbuild/android-arm": 0.19.5 + "@esbuild/android-arm64": 0.19.5 + "@esbuild/android-x64": 0.19.5 + "@esbuild/darwin-arm64": 0.19.5 + "@esbuild/darwin-x64": 0.19.5 + "@esbuild/freebsd-arm64": 0.19.5 + "@esbuild/freebsd-x64": 0.19.5 + "@esbuild/linux-arm": 0.19.5 + "@esbuild/linux-arm64": 0.19.5 + "@esbuild/linux-ia32": 0.19.5 + "@esbuild/linux-loong64": 0.19.5 + "@esbuild/linux-mips64el": 0.19.5 + "@esbuild/linux-ppc64": 0.19.5 + "@esbuild/linux-riscv64": 0.19.5 + "@esbuild/linux-s390x": 0.19.5 + "@esbuild/linux-x64": 0.19.5 + "@esbuild/netbsd-x64": 0.19.5 + "@esbuild/openbsd-x64": 0.19.5 + "@esbuild/sunos-x64": 0.19.5 + "@esbuild/win32-arm64": 0.19.5 + "@esbuild/win32-ia32": 0.19.5 + "@esbuild/win32-x64": 0.19.5 + dependenciesMeta: + "@esbuild/android-arm": + optional: true + "@esbuild/android-arm64": + optional: true + "@esbuild/android-x64": + optional: true + "@esbuild/darwin-arm64": + optional: true + "@esbuild/darwin-x64": + optional: true + "@esbuild/freebsd-arm64": + optional: true + "@esbuild/freebsd-x64": + optional: true + "@esbuild/linux-arm": + optional: true + "@esbuild/linux-arm64": + optional: true + "@esbuild/linux-ia32": + optional: true + "@esbuild/linux-loong64": + optional: true + "@esbuild/linux-mips64el": + optional: true + "@esbuild/linux-ppc64": + optional: true + "@esbuild/linux-riscv64": + optional: true + "@esbuild/linux-s390x": + optional: true + "@esbuild/linux-x64": + optional: true + "@esbuild/netbsd-x64": + optional: true + "@esbuild/openbsd-x64": + optional: true + "@esbuild/sunos-x64": + optional: true + "@esbuild/win32-arm64": + optional: true + "@esbuild/win32-ia32": + optional: true + "@esbuild/win32-x64": + optional: true + bin: + esbuild: bin/esbuild + checksum: 5a0227cf6ffffa3076714d88230af1dfdd2fc363d91bd712a81fb91230c315a395e2c9b7588eee62986aeebf4999804b9b1b59eeab8e2457184eb0056bfe20c8 + languageName: node + linkType: hard + "escalade@npm:^3.1.1": version: 3.1.1 resolution: "escalade@npm:3.1.1" @@ -2335,7 +2640,7 @@ __metadata: languageName: node linkType: hard -"esutils@npm:^2.0.2, esutils@npm:^2.0.3": +"esutils@npm:^2.0.2": version: 2.0.3 resolution: "esutils@npm:2.0.3" checksum: 22b5b08f74737379a840b8ed2036a5fb35826c709ab000683b092d9054e5c2a82c27818f12604bfc2a9a76b90b6834ef081edbc1c7ae30d1627012e067c6ec87 @@ -2398,13 +2703,6 @@ __metadata: languageName: node linkType: hard -"fast-diff@npm:^1.2.0": - version: 1.3.0 - resolution: "fast-diff@npm:1.3.0" - checksum: d22d371b994fdc8cce9ff510d7b8dc4da70ac327bcba20df607dd5b9cae9f908f4d1028f5fe467650f058d1e7270235ae0b8230809a262b4df587a3b3aa216c3 - languageName: node - linkType: hard - "fast-glob@npm:^3.2.9": version: 3.3.1 resolution: "fast-glob@npm:3.3.1" @@ -2583,7 +2881,7 @@ __metadata: languageName: node linkType: hard -"fsevents@npm:~2.3.2": +"fsevents@npm:~2.3.2, fsevents@npm:~2.3.3": version: 2.3.3 resolution: "fsevents@npm:2.3.3" dependencies: @@ -2602,7 +2900,7 @@ __metadata: languageName: node linkType: hard -"fsevents@patch:fsevents@~2.3.2#~builtin": +"fsevents@patch:fsevents@~2.3.2#~builtin, fsevents@patch:fsevents@~2.3.3#~builtin": version: 2.3.3 resolution: "fsevents@patch:fsevents@npm%3A2.3.3#~builtin::version=2.3.3&hash=df0bf1" dependencies: @@ -3362,13 +3660,6 @@ __metadata: languageName: node linkType: hard -"js-string-escape@npm:^1.0.1": - version: 1.0.1 - resolution: "js-string-escape@npm:1.0.1" - checksum: f11e0991bf57e0c183b55c547acec85bd2445f043efc9ea5aa68b41bd2a3e7d3ce94636cb233ae0d84064ba4c1a505d32e969813c5b13f81e7d4be12c59256fe - languageName: node - linkType: hard - "js-tokens@npm:^4.0.0": version: 4.0.0 resolution: "js-tokens@npm:4.0.0" @@ -3569,13 +3860,6 @@ __metadata: languageName: node linkType: hard -"lodash@npm:^4.17.15": - version: 4.17.21 - resolution: "lodash@npm:4.17.21" - checksum: eb835a2e51d381e561e508ce932ea50a8e5a68f4ebdd771ea240d3048244a8d13658acbd502cd4829768c56f2e16bdd4340b9ea141297d472517b83868e677f7 - languageName: node - linkType: hard - "loupe@npm:^2.3.6": version: 2.3.7 resolution: "loupe@npm:2.3.7" @@ -3618,7 +3902,7 @@ __metadata: languageName: node linkType: hard -"magic-string@npm:^0.30.0": +"magic-string@npm:^0.30.1": version: 0.30.5 resolution: "magic-string@npm:0.30.5" dependencies: @@ -3664,15 +3948,6 @@ __metadata: languageName: node linkType: hard -"md5-hex@npm:^3.0.1": - version: 3.0.1 - resolution: "md5-hex@npm:3.0.1" - dependencies: - blueimp-md5: ^2.10.0 - checksum: 6799a19e8bdd3e0c2861b94c1d4d858a89220488d7885c1fa236797e367d0c2e5f2b789e05309307083503f85be3603a9686a5915568a473137d6b4117419cc2 - languageName: node - linkType: hard - "meow@npm:^6.0.0": version: 6.1.1 resolution: "meow@npm:6.1.1" @@ -3895,7 +4170,7 @@ __metadata: languageName: node linkType: hard -"mlly@npm:^1.2.0": +"mlly@npm:^1.2.0, mlly@npm:^1.4.0": version: 1.4.2 resolution: "mlly@npm:1.4.2" dependencies: @@ -4447,7 +4722,7 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.4.27": +"postcss@npm:^8.4.27, postcss@npm:^8.4.31": version: 8.4.31 resolution: "postcss@npm:8.4.31" dependencies: @@ -4495,14 +4770,14 @@ __metadata: languageName: node linkType: hard -"pretty-format@npm:^27.5.1": - version: 27.5.1 - resolution: "pretty-format@npm:27.5.1" +"pretty-format@npm:^29.5.0": + version: 29.7.0 + resolution: "pretty-format@npm:29.7.0" dependencies: - ansi-regex: ^5.0.1 + "@jest/schemas": ^29.6.3 ansi-styles: ^5.0.0 - react-is: ^17.0.1 - checksum: cf610cffcb793885d16f184a62162f2dd0df31642d9a18edf4ca298e909a8fe80bdbf556d5c9573992c102ce8bf948691da91bf9739bee0ffb6e79c8a8a6e088 + react-is: ^18.0.0 + checksum: 032c1602383e71e9c0c02a01bbd25d6759d60e9c7cf21937dde8357aa753da348fcec5def5d1002c9678a8524d5fe099ad98861286550ef44de8808cc61e43b6 languageName: node linkType: hard @@ -4543,6 +4818,19 @@ __metadata: languageName: node linkType: hard +"publint@npm:^0.2.5": + version: 0.2.5 + resolution: "publint@npm:0.2.5" + dependencies: + npm-packlist: ^5.1.3 + picocolors: ^1.0.0 + sade: ^1.8.1 + bin: + publint: lib/cli.js + checksum: 5df2e2edfbc5a28c6e790674c5100eba24ed3a9e3ea89dd0b620a2c84281ddd45043cbd8f7891d3b13f1b2263ffeb39082d81e6faa21ef4e5d7924aae7271c02 + languageName: node + linkType: hard + "punycode@npm:^2.1.0": version: 2.3.0 resolution: "punycode@npm:2.3.0" @@ -4564,10 +4852,10 @@ __metadata: languageName: node linkType: hard -"react-is@npm:^17.0.1": - version: 17.0.2 - resolution: "react-is@npm:17.0.2" - checksum: 9d6d111d8990dc98bc5402c1266a808b0459b5d54830bbea24c12d908b536df7883f268a7868cfaedde3dd9d4e0d574db456f84d2e6df9c4526f99bb4b5344d8 +"react-is@npm:^18.0.0": + version: 18.2.0 + resolution: "react-is@npm:18.2.0" + checksum: e72d0ba81b5922759e4aff17e0252bd29988f9642ed817f56b25a3e217e13eea8a7f2322af99a06edb779da12d5d636e9fda473d620df9a3da0df2a74141d53e languageName: node linkType: hard @@ -4765,6 +5053,56 @@ __metadata: languageName: node linkType: hard +"rollup@npm:^4.2.0": + version: 4.4.0 + resolution: "rollup@npm:4.4.0" + dependencies: + "@rollup/rollup-android-arm-eabi": 4.4.0 + "@rollup/rollup-android-arm64": 4.4.0 + "@rollup/rollup-darwin-arm64": 4.4.0 + "@rollup/rollup-darwin-x64": 4.4.0 + "@rollup/rollup-linux-arm-gnueabihf": 4.4.0 + "@rollup/rollup-linux-arm64-gnu": 4.4.0 + "@rollup/rollup-linux-arm64-musl": 4.4.0 + "@rollup/rollup-linux-x64-gnu": 4.4.0 + "@rollup/rollup-linux-x64-musl": 4.4.0 + "@rollup/rollup-win32-arm64-msvc": 4.4.0 + "@rollup/rollup-win32-ia32-msvc": 4.4.0 + "@rollup/rollup-win32-x64-msvc": 4.4.0 + fsevents: ~2.3.2 + dependenciesMeta: + "@rollup/rollup-android-arm-eabi": + optional: true + "@rollup/rollup-android-arm64": + optional: true + "@rollup/rollup-darwin-arm64": + optional: true + "@rollup/rollup-darwin-x64": + optional: true + "@rollup/rollup-linux-arm-gnueabihf": + optional: true + "@rollup/rollup-linux-arm64-gnu": + optional: true + "@rollup/rollup-linux-arm64-musl": + optional: true + "@rollup/rollup-linux-x64-gnu": + optional: true + "@rollup/rollup-linux-x64-musl": + optional: true + "@rollup/rollup-win32-arm64-msvc": + optional: true + "@rollup/rollup-win32-ia32-msvc": + optional: true + "@rollup/rollup-win32-x64-msvc": + optional: true + fsevents: + optional: true + bin: + rollup: dist/bin/rollup + checksum: 90fdc55bfd247dc07c04901e1b802083516c0982e6b32d2fbccee6968fb944482207accdea2f5dc01198d36a5eb9356f9be451942c45c006a87a3bf50add1803 + languageName: node + linkType: hard + "run-parallel@npm:^1.1.9": version: 1.2.0 resolution: "run-parallel@npm:1.2.0" @@ -4838,7 +5176,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.3.2, semver@npm:^7.3.5, semver@npm:^7.5.3, semver@npm:^7.5.4": +"semver@npm:^7.3.5, semver@npm:^7.5.3, semver@npm:^7.5.4": version: 7.5.4 resolution: "semver@npm:7.5.4" dependencies: @@ -5104,7 +5442,7 @@ __metadata: languageName: node linkType: hard -"std-env@npm:^3.3.2": +"std-env@npm:^3.3.3": version: 3.4.3 resolution: "std-env@npm:3.4.3" checksum: bef186fb2baddda31911234b1e58fa18f181eb6930616aaec3b54f6d5db65f2da5daaa5f3b326b98445a7d50ca81d6fe8809ab4ebab85ecbe4a802f1b40921bf @@ -5337,13 +5675,6 @@ __metadata: languageName: node linkType: hard -"time-zone@npm:^1.0.0": - version: 1.0.0 - resolution: "time-zone@npm:1.0.0" - checksum: e46f5a69b8c236dcd8e91e29d40d4e7a3495ed4f59888c3f84ce1d9678e20461421a6ba41233509d47dd94bc18f1a4377764838b21b584663f942b3426dcbce8 - languageName: node - linkType: hard - "tinybench@npm:^2.5.0": version: 2.5.1 resolution: "tinybench@npm:2.5.1" @@ -5351,14 +5682,14 @@ __metadata: languageName: node linkType: hard -"tinypool@npm:^0.5.0": - version: 0.5.0 - resolution: "tinypool@npm:0.5.0" - checksum: 4e0dfd8f28666d541c1d92304222edc4613f05d74fe2243c8520d466a2cc6596011a7072c1c41a7de7522351b82fda07e8038198e8f43673d8d69401c5903f8c +"tinypool@npm:^0.7.0": + version: 0.7.0 + resolution: "tinypool@npm:0.7.0" + checksum: fdcccd5c750574fce51f8801a877f8284e145d12b79cd5f2d72bfbddfe20c895e915555bc848e122bb6aa968098e7ac4fe1e8e88104904d518dc01cccd18a510 languageName: node linkType: hard -"tinyspy@npm:^2.1.0": +"tinyspy@npm:^2.1.1": version: 2.2.0 resolution: "tinyspy@npm:2.2.0" checksum: 36431acaa648054406147a92b9bde494b7548d0f9f3ffbcc02113c25a6e59f3310cbe924353d7f4c51436299150bec2dbb3dc595748f58c4ddffea22d5baaadb @@ -5700,23 +6031,63 @@ __metadata: languageName: node linkType: hard -"vite-node@npm:0.31.4": - version: 0.31.4 - resolution: "vite-node@npm:0.31.4" +"vite-node@npm:0.34.6": + version: 0.34.6 + resolution: "vite-node@npm:0.34.6" dependencies: cac: ^6.7.14 debug: ^4.3.4 - mlly: ^1.2.0 - pathe: ^1.1.0 + mlly: ^1.4.0 + pathe: ^1.1.1 picocolors: ^1.0.0 - vite: ^3.0.0 || ^4.0.0 + vite: ^3.0.0 || ^4.0.0 || ^5.0.0-0 bin: vite-node: vite-node.mjs - checksum: 822457481fd58915eb41f18237d99ce163f7a45cc57ba0739876f6201f287c904ed00439c351a1a0fef82e4f256db06f4ae238c0519d4121e1ad14bc5dd4a39f + checksum: 46eba82bf8b69c7dfeed901502533b172cc6303212f0f49f82c2f64758fa4b60acd1b1e37cb96aff944e36b510b0d1beedb50d9cb25ef39e0159b2b9d1136b1f languageName: node linkType: hard -"vite@npm:^3.0.0 || ^4.0.0, vite@npm:^4.4.9": +"vite@npm:^3.0.0 || ^4.0.0 || ^5.0.0-0, vite@npm:^3.1.0 || ^4.0.0 || ^5.0.0-0": + version: 5.0.0-beta.18 + resolution: "vite@npm:5.0.0-beta.18" + dependencies: + esbuild: ^0.19.3 + fsevents: ~2.3.3 + postcss: ^8.4.31 + rollup: ^4.2.0 + peerDependencies: + "@types/node": ^18.0.0 || >=20.0.0 + less: "*" + lightningcss: ^1.21.0 + sass: "*" + stylus: "*" + sugarss: "*" + terser: ^5.4.0 + dependenciesMeta: + fsevents: + optional: true + peerDependenciesMeta: + "@types/node": + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + bin: + vite: bin/vite.js + checksum: 9481814791af3932266fa05112779d51d2f330b964d3472ca3373861b0a3c33169c55b5bc5fa82752f7d046ff320dfaaa0db77f2b78ec8cbe3dd6310eb7e8d69 + languageName: node + linkType: hard + +"vite@npm:^4.4.9": version: 4.5.0 resolution: "vite@npm:4.5.0" dependencies: @@ -5756,34 +6127,33 @@ __metadata: languageName: node linkType: hard -"vitest@npm:^0.31.4": - version: 0.31.4 - resolution: "vitest@npm:0.31.4" +"vitest@npm:^0.34.6": + version: 0.34.6 + resolution: "vitest@npm:0.34.6" dependencies: "@types/chai": ^4.3.5 "@types/chai-subset": ^1.3.3 "@types/node": "*" - "@vitest/expect": 0.31.4 - "@vitest/runner": 0.31.4 - "@vitest/snapshot": 0.31.4 - "@vitest/spy": 0.31.4 - "@vitest/utils": 0.31.4 - acorn: ^8.8.2 + "@vitest/expect": 0.34.6 + "@vitest/runner": 0.34.6 + "@vitest/snapshot": 0.34.6 + "@vitest/spy": 0.34.6 + "@vitest/utils": 0.34.6 + acorn: ^8.9.0 acorn-walk: ^8.2.0 cac: ^6.7.14 - chai: ^4.3.7 - concordance: ^5.0.4 + chai: ^4.3.10 debug: ^4.3.4 local-pkg: ^0.4.3 - magic-string: ^0.30.0 - pathe: ^1.1.0 + magic-string: ^0.30.1 + pathe: ^1.1.1 picocolors: ^1.0.0 - std-env: ^3.3.2 + std-env: ^3.3.3 strip-literal: ^1.0.1 tinybench: ^2.5.0 - tinypool: ^0.5.0 - vite: ^3.0.0 || ^4.0.0 - vite-node: 0.31.4 + tinypool: ^0.7.0 + vite: ^3.1.0 || ^4.0.0 || ^5.0.0-0 + vite-node: 0.34.6 why-is-node-running: ^2.2.2 peerDependencies: "@edge-runtime/vm": "*" @@ -5813,7 +6183,7 @@ __metadata: optional: true bin: vitest: vitest.mjs - checksum: 61493711e349d33b0b42eb7ea2b0c348683256d87aeddb6df266da66193666b737d03c0ea74bb9bf2cd79ee1ecca5a034aabad3bba6ff66898bfdd2b473d8663 + checksum: 45f5c1987fa8c76dbaf5db379bbdb4f6e3713c484e850149af38247b627e70016c1863286fd7fcfab08a1d98430f66ba1f45af6f14f5c467ded4b1ea6f26afa3 languageName: node linkType: hard @@ -5840,13 +6210,6 @@ __metadata: languageName: node linkType: hard -"well-known-symbols@npm:^2.0.0": - version: 2.0.0 - resolution: "well-known-symbols@npm:2.0.0" - checksum: 4f54bbc3012371cb4d228f436891b8e7536d34ac61a57541890257e96788608e096231e0121ac24d08ef2f908b3eb2dc0adba35023eaeb2a7df655da91415402 - languageName: node - linkType: hard - "whatwg-url@npm:^5.0.0": version: 5.0.0 resolution: "whatwg-url@npm:5.0.0"