diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
index 66c268145..db80066cc 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.yml
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -9,7 +9,7 @@ body:
id: reproduction
attributes:
label: Reproduction
- description: "If possible, provide a boiled down editable reproduction using a service like [JSFiddle](https://jsfiddle.net/posva/3yq6ojLv), Codepen, [CodeSandbox](https://codesandbox.io/s/vue-router-4-reproduction-s1sqc), or a GitHub repository. A failing unit test is even better! Otherwise provide as much information as possible to reproduce the problem. If we can't reproduce the problem, we won't be able to give it a look **and the issue will be converted into a question and moved to discussions**."
+ description: "If possible, provide a boiled down editable reproduction with the [Vue.js Playground](https://play.vuejs.org/#eNqlVNtOGzEQ/RV3WylBJesQEA/bJYIiVFr1gmjVl24fNruTxLBrW7Y3BEX5947tvQUCL1UUxZ7LmTNzJt4EZcp4eKeDKGClFMqQDckUpAYupCRbMleiJINVBYOE1wFKVAZU7Qmpv3Zum9f4UilDn5vwFnWI34OEExJWGoY+3d9LUXEzHLzFtMFBcBjU6cgtNlDKAvOnNjBeHk2voSiELfYmpnh1Zul+8KCNEnwxvayUAl4zJjI1yyimtY9sNuSdc4Tzqihu0Em2WwdDPU7M01UDeOtYfmX8nhhxlgQ0CaafBJ7JtSghpp3/xYx0hpY27cLenuXFtKkZW112sX4zeCC0jqvdMW0Hg/Pys9yr5jcohXq8Ztrgz2Ft9Lh9lUetmq2etkFXuhG1MdTKNrLbhnbiWku3AoLrWg1Nzsgf28rG60IGdIC0BIJxlCzqym4Pd8PcHHdju9o2+O+TUgpL9fsdbizg0o8i2jef4YGr6YnicYvrmXBYu0ZzmKdV0WDj1PvzsKuqM8WkIRpMJUmR8gWqbzQqb+XyTjzi5clOT6YNEm705Jm4O+P8vzot1N5CXtBRmUrcJMGxlBtYUjuwQkScxdq6nbHmJFgaI3VEacXl/SJEjWgXcX4SHodjmuOQe9YQdDmaKfGg3eomgZu9xT7HIJrDyghR6FEq2UslngWen4an4REt2IwiOmU8h7XDttD4J99im0bjjszZ4kmTdq1YAeqHNAx3aKfZFJ+chy/OZlQFLdFsCdn9HvudXnvKNwqwuxX0mjOpWgC+B9Z99fM7rPHcOkuRVwVGv+K8BS2KynL0YR8rniPtXpxj+9lpxvjil75aG+C6acoSddNw8U7Iy1da7+gehye9KWrzWIAOM23fHHy8Dol9mXzeTKgcVEQmck2QLMvJ2/F4/MG6SoRjfDQTxogyIkdjuXZ2meY5km0tWCXhCEumJCXv8euA6+wC5vjn70cuJ/3KHXxHIMuyHoGIjPEzqRGC7T/iwGPK), or an editable [CodeSandbox](https://codesandbox.io/s/vue-router-4-reproduction-s1sqc), Stackblitz, or a GitHub repository. A failing unit test is even better! Otherwise provide as much information as possible to reproduce the problem. If we can't reproduce the problem, we won't be able to give it a look **and the issue will be converted into a question and moved to discussions**."
placeholder: Reproduction
validations:
required: true
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index eb8631883..e960d8a57 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -35,9 +35,9 @@ jobs:
- run: pnpm install
- run: pnpm run lint
- - run: pnpm run -r test:types
- run: pnpm run -r build
- run: pnpm run -r build:dts
+ - run: pnpm run -r test:types
- run: pnpm run -r test:unit
# e2e tests that that run locally
diff --git a/README.md b/README.md
index 578d76d97..b47ebb527 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# vue-router [![release candidate](https://img.shields.io/npm/v/vue-router.svg)](https://www.npmjs.com/package/vue-router) [![test](https://github.com/vuejs/router/actions/workflows/test.yml/badge.svg)](https://github.com/vuejs/router/actions/workflows/test.yml)
+# vue-router [![release candidate](https://img.shields.io/npm/v/vue-router.svg)](https://www.npmjs.com/package/vue-router) [![test](https://github.com/vuejs/router/actions/workflows/test.yml/badge.svg)](https://github.com/vuejs/router/actions/workflows/test.yml) [![codecov](https://codecov.io/gh/vuejs/router/graph/badge.svg?token=azNM3FI0d1)](https://codecov.io/gh/vuejs/router)
> - This is the repository for Vue Router 4 (for Vue 3)
> - For Vue Router 3 (for Vue 2) see [vuejs/vue-router](https://github.com/vuejs/vue-router).
@@ -14,10 +14,10 @@ Vue Router is part of the Vue Ecosystem and is an MIT-licensed open source proje
Silver Sponsors
-
+
-
-
+
+
@@ -26,32 +26,38 @@ Vue Router is part of the Vue Ecosystem and is an MIT-licensed open source proje
+
+
+
+
+
+
Bronze Sponsors
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
diff --git a/packages/docs/.vitepress/theme/components/sponsors.json b/packages/docs/.vitepress/theme/components/sponsors.json
index d4ef1030c..0db6e9928 100644
--- a/packages/docs/.vitepress/theme/components/sponsors.json
+++ b/packages/docs/.vitepress/theme/components/sponsors.json
@@ -3,31 +3,25 @@
"gold": [],
"silver": [
{
- "alt": "VueMastery",
- "href": "https://www.vuemastery.com/",
- "imgSrcDark": "https://posva-sponsors.pages.dev/logos/vuemastery-dark.png",
- "imgSrcLight": "https://posva-sponsors.pages.dev/logos/vuemastery-light.svg"
+ "alt": "Route Optimizer and Route Planner Software",
+ "href": "https://route4me.com",
+ "imgSrcDark": "https://posva-sponsors.pages.dev/logos/route4me.png",
+ "imgSrcLight": "https://posva-sponsors.pages.dev/logos/route4me.png"
},
{
"alt": "Prefect",
"href": "https://www.prefect.io/",
"imgSrcDark": "https://posva-sponsors.pages.dev/logos/prefectlogo-dark.svg",
"imgSrcLight": "https://posva-sponsors.pages.dev/logos/prefectlogo-light.svg"
+ },
+ {
+ "alt": "VueMastery",
+ "href": "https://www.vuemastery.com/",
+ "imgSrcDark": "https://posva-sponsors.pages.dev/logos/vuemastery-dark.png",
+ "imgSrcLight": "https://posva-sponsors.pages.dev/logos/vuemastery-light.svg"
}
],
"bronze": [
- {
- "alt": "Stanislas Ormières",
- "href": "https://stormier.ninja",
- "imgSrcDark": "https://avatars.githubusercontent.com/u/2486424?u=7b0c73ae5d090ce53bf59473094e9606fe082c59&v=4",
- "imgSrcLight": "https://avatars.githubusercontent.com/u/2486424?u=7b0c73ae5d090ce53bf59473094e9606fe082c59&v=4"
- },
- {
- "alt": "Antony Konstantinidis",
- "href": "https://www.vuejs.de",
- "imgSrcDark": "https://avatars.githubusercontent.com/u/4183726?u=6b50a8ea16de29d2982f43c5640b1db9299ebcd1&v=4",
- "imgSrcLight": "https://avatars.githubusercontent.com/u/4183726?u=6b50a8ea16de29d2982f43c5640b1db9299ebcd1&v=4"
- },
{
"alt": "Storyblok",
"href": "https://storyblok.com",
@@ -37,8 +31,20 @@
{
"alt": "Nuxt UI Pro Templates",
"href": "https://ui.nuxt.com/pro",
- "imgSrcDark": "https://avatars.githubusercontent.com/u/81570812?v=4",
- "imgSrcLight": "https://avatars.githubusercontent.com/u/81570812?v=4"
+ "imgSrcDark": "https://posva-sponsors.pages.dev/logos/nuxt-dark.svg",
+ "imgSrcLight": "https://posva-sponsors.pages.dev/logos/nuxt-light.svg"
+ },
+ {
+ "alt": "Antony Konstantinidis",
+ "href": "https://www.vuejs.de",
+ "imgSrcDark": "https://avatars.githubusercontent.com/u/4183726?u=6b50a8ea16de29d2982f43c5640b1db9299ebcd1&v=4",
+ "imgSrcLight": "https://avatars.githubusercontent.com/u/4183726?u=6b50a8ea16de29d2982f43c5640b1db9299ebcd1&v=4"
+ },
+ {
+ "alt": "Stanislas Ormières",
+ "href": "https://stormier.ninja",
+ "imgSrcDark": "https://avatars.githubusercontent.com/u/2486424?u=7b0c73ae5d090ce53bf59473094e9606fe082c59&v=4",
+ "imgSrcLight": "https://avatars.githubusercontent.com/u/2486424?u=7b0c73ae5d090ce53bf59473094e9606fe082c59&v=4"
}
]
}
diff --git a/packages/docs/guide/advanced/dynamic-routing.md b/packages/docs/guide/advanced/dynamic-routing.md
index d8d83b792..5488b2fa3 100644
--- a/packages/docs/guide/advanced/dynamic-routing.md
+++ b/packages/docs/guide/advanced/dynamic-routing.md
@@ -5,7 +5,7 @@
title="Learn how to add routes at runtime"
/>
-Adding routes to your router is usually done via the `routes` option but in some situations, you might want to add or remove routes while the application is already running. Application with extensible interfaces like [Vue CLI UI](https://cli.vuejs.org/dev-guide/ui-api.html) can use this to make the application grow.
+Adding routes to your router is usually done via the `routes` option but in some situations, you might want to add or remove routes while the application is already running. Applications with extensible interfaces like [Vue CLI UI](https://cli.vuejs.org/dev-guide/ui-api.html) can use this to make the application grow.
## Adding routes
@@ -20,13 +20,13 @@ const router = createRouter({
})
```
-Going to any page, `/about`, `/store`, or `/3-tricks-to-improve-your-routing-code` ends up rendering the `Article` component. If we are on `/about` and we add a new route:
+Going to any page like `/about`, `/store`, or `/3-tricks-to-improve-your-routing-code` ends up rendering the `Article` component. If we are on `/about` and we add a new route:
```js
router.addRoute({ path: '/about', component: About })
```
-The page will still show the `Article` component, we need to manually call `router.replace()` to change the current location and overwrite where we were (instead of pushing a new entry, ending up in the same location twice in our history):
+The page will still show the `Article` component. We need to manually call `router.replace()` to change the current location and overwrite where we were (instead of pushing a new entry, ending up in the same location twice in our history):
```js
router.addRoute({ path: '/about', component: About })
@@ -89,7 +89,7 @@ Whenever a route is removed, **all of its aliases and children** are removed wit
## Adding nested routes
-To add nested routes to an existing route, you can pass the _name_ of the route as its first parameter to `router.addRoute()`, this will effectively add the route as if it was added through `children`:
+To add nested routes to an existing route, you can pass the _name_ of the route as its first parameter to `router.addRoute()`. This will effectively add the route as if it was added through `children`:
```js
router.addRoute({ name: 'admin', path: '/admin', component: Admin })
@@ -111,5 +111,5 @@ router.addRoute({
Vue Router gives you two functions to look at existing routes:
-- [`router.hasRoute()`](/api/interfaces/Router.md#hasRoute): check if a route exists
+- [`router.hasRoute()`](/api/interfaces/Router.md#hasRoute): check if a route exists.
- [`router.getRoutes()`](/api/interfaces/Router.md#getRoutes): get an array with all the route records.
diff --git a/packages/docs/guide/essentials/route-matching-syntax.md b/packages/docs/guide/essentials/route-matching-syntax.md
index 52f8812a7..23a531793 100644
--- a/packages/docs/guide/essentials/route-matching-syntax.md
+++ b/packages/docs/guide/essentials/route-matching-syntax.md
@@ -24,7 +24,7 @@ const routes = [
]
```
-But in some scenarios we don't want to add that static section `/o`/`p`. However, `orderId` is always a number while `productName` can be anything, so we can specify a custom regex for a param in parentheses:
+But in some scenarios, we don't want to add that static section `/o` or `/p`. However, `orderId` is always a number while `productName` can be anything so we can specify a custom regex for a param in parentheses:
```js
const routes = [
@@ -80,7 +80,7 @@ const routes = [
]
```
-## Sensitive and strict route options
+## Sensitive and strict route options
By default, all routes are case-insensitive and match routes with or without a trailing slash. e.g. a route `/users` matches `/users`, `/users/`, and even `/Users/`. This behavior can be configured with the `strict` and `sensitive` options, they can be set both at a router and route level:
@@ -114,6 +114,13 @@ const routes = [
Note that `*` technically also marks a parameter as optional but `?` parameters cannot be repeated.
+If the route segment contains more than **just an optional parameter**, it won't match a path **without the trailing slash**. For example:
+
+- `/users/:uid?-:name?` won't match `/users`, only `/users/-` or even `/users/-/`
+- `/users/:uid(\\d+)?:name?` won't match `/users`, only `/users/`, `/users/2`, `/users/2/`, etc
+
+You can play around with the matching syntax [in the playground](https://paths.esm.dev/?p=AAMsIPQg4AoKzidgQFoEXAmw-IEBBRYYOE0SkABTASiz1qgBpgQA1QTsFjAb3h2onsmlAmGIFsCXjXh4AIA.&t=/users/2/#)
+
## Debugging
If you need to dig how your routes are transformed into a regex to understand why a route isn't being matched or, to report a bug, you can use the [path ranker tool](https://paths.esm.dev/?p=AAMeJSyAwR4UbFDAFxAcAGAIJXMAAA..#). It supports sharing your routes through the URL.
diff --git a/packages/docs/guide/migration/index.md b/packages/docs/guide/migration/index.md
index 1f841c89e..6fb85383b 100644
--- a/packages/docs/guide/migration/index.md
+++ b/packages/docs/guide/migration/index.md
@@ -443,6 +443,12 @@ Given any [normalized route location](/api/#RouteLocationNormalized):
**Reason**: This allows to easily copy existing properties of a location when calling `router.push()` and `router.resolve()`, and make the resulting route location consistent across browsers. `router.push()` is now idempotent, meaning that calling `router.push(route.fullPath)`, `router.push({ hash: route.hash })`, `router.push({ query: route.query })`, and `router.push({ params: route.params })` will not create extra encoding.
+### `$router.push()` and `$router.replace()` - `onComplete` and `onAbort` callbacks
+
+Previously, `$router.push()` and `$router.replace()` accepted two callbacks, `onComplete` and `onAbort`, as second and third arguments. They were called after a navigation based on the result. With the introduction of a Promise based API, these callbacks are redundant and have been removed. See [Navigation Failures](/guide/advanced/navigation-failures.md) for more information on how to detect successful and failed navigations.
+
+**Reason**: Reduce library size by adapting to established JS standards (Promises).
+
### TypeScript changes
To make typings more consistent and expressive, some types have been renamed:
diff --git a/packages/playground/package.json b/packages/playground/package.json
index 8ab8aa7dd..6d3a6a8cf 100644
--- a/packages/playground/package.json
+++ b/packages/playground/package.json
@@ -9,16 +9,16 @@
"preview": "vite preview --port 4173"
},
"dependencies": {
- "vue": "^3.4.23"
+ "vue": "^3.4.29"
},
"devDependencies": {
"@types/node": "^20.12.7",
- "@vitejs/plugin-vue": "^5.0.4",
- "@vue/compiler-sfc": "^3.4.23",
+ "@vitejs/plugin-vue": "^5.0.5",
+ "@vue/compiler-sfc": "^3.4.29",
"@vue/tsconfig": "^0.5.1",
"typescript": "~5.3.3",
- "vite": "^5.2.9",
+ "vite": "^5.3.1",
"vue-router": "workspace:*",
- "vue-tsc": "^1.8.27"
+ "vue-tsc": "^2.0.21"
}
}
diff --git a/packages/router/CHANGELOG.md b/packages/router/CHANGELOG.md
index b848140ba..0ed655457 100644
--- a/packages/router/CHANGELOG.md
+++ b/packages/router/CHANGELOG.md
@@ -1,3 +1,29 @@
+## [4.4.3](https://github.com/vuejs/router/compare/v4.4.2...v4.4.3) (2024-08-06)
+
+### Bug Fixes
+
+- reorder exports in `package.json` ([#2323](https://github.com/vuejs/router/issues/2323)) ([7422b15](https://github.com/vuejs/router/commit/7422b15e6fcf57819f82a1384c9a2a73e32e186f))
+
+## [4.4.2](https://github.com/vuejs/router/compare/v4.4.1...v4.4.2) (2024-08-01)
+
+### Bug Fixes
+
+- **types:** revert stricter meta ([d4d0087](https://github.com/vuejs/router/commit/d4d0087eae5721f73bde445be33407875a92a1ca)), closes [#2319](https://github.com/vuejs/router/issues/2319)
+
+## [4.4.1](https://github.com/vuejs/router/compare/v4.4.0...v4.4.1) (2024-07-31)
+
+### Bug Fixes
+
+> [!IMPORTANT]
+> This release replaces `declare module '@vue/runtime-core'` with `declare module 'vue'` [like it's supposed to be](https://vuejs.org/guide/typescript/options-api.html#augmenting-global-properties). If you are also augmenting `@vue/runtime-core`, you will likely have to change it to `vue`. It is also recommended to use an up-to-date TypeScript version (>=5.4) and `"moduleResolution": "Bundler"` in your `tsconfig.json`.
+
+- router typescript definitions related to vue package ([#2295](https://github.com/vuejs/router/issues/2295)) ([a495ce0](https://github.com/vuejs/router/commit/a495ce0e1d545d521673d21af43e63a761b53e27))
+- **types:** stricter meta with required fields ([423d9f7](https://github.com/vuejs/router/commit/423d9f763ed033dd6687ce7687c859c92554a60d))
+
+### Features
+
+- **warn:** fix links to docs ([0cb5797](https://github.com/vuejs/router/commit/0cb57971efd767777011e872e9cc327e0a0da79f))
+
# [4.4.0](https://github.com/vuejs/router/compare/v4.4.0-alpha.3...v4.4.0) (2024-06-21)
This version introduces native support for [typed routes via the `RouteNamedMap`](https://router.vuejs.org/guide/advanced/typed-routes.html). It is now possible to define a map without [unplugin-vue-router](https://uvr.esm.is) and have the types inferred automatically. It is still recommended to use [unplugin-vue-router](https://uvr.esm.is) to automatically generate these types.
diff --git a/packages/router/__tests__/guards/navigatioGuardsInjections.spec.ts b/packages/router/__tests__/guards/navigatioGuardsInjections.spec.ts
index f6a0e52aa..522e80b3c 100644
--- a/packages/router/__tests__/guards/navigatioGuardsInjections.spec.ts
+++ b/packages/router/__tests__/guards/navigatioGuardsInjections.spec.ts
@@ -1,18 +1,15 @@
/**
- * @vitest-environment jsdom
+ * @vitest-environment happy-dom
*/
-import { createDom, newRouter as createRouter } from '../utils'
+import { newRouter as createRouter } from '../utils'
import { mount } from '@vue/test-utils'
import { inject } from 'vue'
import { mockWarn } from '../vitest-mock-warn'
-import type { Router } from '../../src'
-import { describe, expect, it, beforeAll } from 'vitest'
+import { createMemoryHistory, type Router } from '../../src'
+import { describe, expect, it } from 'vitest'
describe('inject() within navigation guards', () => {
mockWarn()
- beforeAll(() => {
- createDom()
- })
const PageComponent = {
template: `Page
`,
@@ -97,6 +94,7 @@ describe('inject() within navigation guards', () => {
it('beforeRouteUpdate', async () => {
expect.assertions(1)
const router = createRouter({
+ history: createMemoryHistory(),
routes: [
{
path: '/',
@@ -118,6 +116,7 @@ describe('inject() within navigation guards', () => {
it('beforeRouteLeave', async () => {
expect.assertions(1)
const router = createRouter({
+ history: createMemoryHistory(),
routes: [
{ path: '/', component: PageComponent },
{
diff --git a/packages/router/package.json b/packages/router/package.json
index e82dcb534..0843823dd 100644
--- a/packages/router/package.json
+++ b/packages/router/package.json
@@ -1,14 +1,14 @@
{
"name": "vue-router",
- "version": "4.4.0",
+ "version": "4.4.3",
"main": "index.js",
"unpkg": "dist/vue-router.global.js",
"jsdelivr": "dist/vue-router.global.js",
"module": "dist/vue-router.mjs",
"types": "dist/vue-router.d.ts",
"exports": {
- "./auto-routes": {
- "types": "./vue-router-auto-routes.d.ts",
+ ".": {
+ "types": "./dist/vue-router.d.ts",
"node": {
"import": {
"production": "./dist/vue-router.node.mjs",
@@ -24,8 +24,11 @@
"import": "./dist/vue-router.mjs",
"require": "./index.js"
},
- "./auto": {
- "types": "./vue-router-auto.d.ts",
+ "./dist/*": "./dist/*",
+ "./vetur/*": "./vetur/*",
+ "./package.json": "./package.json",
+ "./auto-routes": {
+ "types": "./vue-router-auto-routes.d.ts",
"node": {
"import": {
"production": "./dist/vue-router.node.mjs",
@@ -41,8 +44,8 @@
"import": "./dist/vue-router.mjs",
"require": "./index.js"
},
- ".": {
- "types": "./dist/vue-router.d.ts",
+ "./auto": {
+ "types": "./vue-router-auto.d.ts",
"node": {
"import": {
"production": "./dist/vue-router.node.mjs",
@@ -57,10 +60,7 @@
},
"import": "./dist/vue-router.mjs",
"require": "./index.js"
- },
- "./dist/*": "./dist/*",
- "./vetur/*": "./vetur/*",
- "./package.json": "./package.json"
+ }
},
"sideEffects": false,
"author": {
@@ -98,7 +98,7 @@
"dev:e2e": "vite --config e2e/vite.config.mjs",
"test:types": "tsc --build tsconfig.json",
"test:unit": "vitest --coverage run",
- "test": "pnpm run test:types && pnpm run build && pnpm run build:dts && pnpm run test:unit && pnpm run test:e2e",
+ "test": "pnpm run build && pnpm run build:dts && pnpm run test:types && pnpm run test:unit && pnpm run test:e2e",
"test:e2e": "pnpm run test:e2e:headless",
"test:e2e:headless": "node e2e/runner.mjs --env chrome-headless",
"test:e2e:native": "node e2e/runner.mjs --env chrome",
@@ -114,7 +114,7 @@
"attributes": "vetur/attributes.json"
},
"dependencies": {
- "@vue/devtools-api": "^6.5.1"
+ "@vue/devtools-api": "^6.6.3"
},
"devDependencies": {
"@microsoft/api-extractor": "^7.40.1",
@@ -123,14 +123,14 @@
"@rollup/plugin-node-resolve": "^15.2.3",
"@rollup/plugin-replace": "^5.0.5",
"@rollup/plugin-terser": "^0.4.4",
- "@types/jsdom": "^21.1.6",
- "@types/nightwatch": "^2.3.30",
- "@vitejs/plugin-vue": "^5.0.4",
+ "@types/jsdom": "^21.1.7",
+ "@types/nightwatch": "^2.3.31",
+ "@vitejs/plugin-vue": "^5.0.5",
"@vitest/coverage-v8": "^1.6.0",
"@vitest/ui": "^1.6.0",
- "@vue/compiler-sfc": "^3.4.23",
- "@vue/server-renderer": "^3.4.23",
- "@vue/test-utils": "^2.4.4",
+ "@vue/compiler-sfc": "^3.4.29",
+ "@vue/server-renderer": "^3.4.29",
+ "@vue/test-utils": "^2.4.6",
"browserstack-local": "^1.5.5",
"chromedriver": "^121.0.2",
"connect-history-api-fallback": "^1.6.0",
@@ -138,6 +138,7 @@
"dotenv": "^16.4.5",
"faked-promise": "^2.2.2",
"geckodriver": "^3.2.0",
+ "happy-dom": "^14.12.3",
"nightwatch": "^2.6.22",
"nightwatch-helpers": "^1.2.0",
"rimraf": "^5.0.7",
@@ -145,8 +146,8 @@
"rollup-plugin-analyzer": "^4.0.0",
"rollup-plugin-typescript2": "^0.36.0",
"typescript": "~5.3.3",
- "vite": "^5.2.9",
+ "vite": "^5.3.1",
"vitest": "^1.6.0",
- "vue": "^3.4.23"
+ "vue": "^3.4.29"
}
}
diff --git a/packages/router/rollup.config.mjs b/packages/router/rollup.config.mjs
index 52f591cfd..d82c47954 100644
--- a/packages/router/rollup.config.mjs
+++ b/packages/router/rollup.config.mjs
@@ -6,7 +6,7 @@ import replace from '@rollup/plugin-replace'
import resolve from '@rollup/plugin-node-resolve'
import commonjs from '@rollup/plugin-commonjs'
import chalk from 'chalk'
-import pkg from './package.json' assert { type: 'json' }
+import pkg from './package.json' with { type: 'json' }
import terser from '@rollup/plugin-terser'
const name = pkg.name
diff --git a/packages/router/src/globalExtensions.ts b/packages/router/src/globalExtensions.ts
index 7aa983d62..22c49c3c8 100644
--- a/packages/router/src/globalExtensions.ts
+++ b/packages/router/src/globalExtensions.ts
@@ -8,8 +8,11 @@ import type { RouterLink } from './RouterLink'
import type { Router } from './router'
import type { TypesConfig } from './config'
-// TODO: figure out why it cannot be 'vue' like said in docs
-declare module '@vue/runtime-core' {
+/**
+ * NOTE: this used to be `@vue/runtime-core` but it should have been `vue` for a long time. Using both declaration at
+ * the same time breaks so using only one everywhere is the preferred way.
+ */
+declare module 'vue' {
export interface ComponentCustomOptions {
/**
* Guard called when the router is navigating to the route that is rendering
diff --git a/packages/router/src/history/html5.ts b/packages/router/src/history/html5.ts
index 9388e8f24..0f7a169a5 100644
--- a/packages/router/src/history/html5.ts
+++ b/packages/router/src/history/html5.ts
@@ -280,7 +280,7 @@ function useHistoryStateNavigation(base: string) {
warn(
`history.state seems to have been manually replaced without preserving the necessary values. Make sure to preserve existing history state if you are manually calling history.replaceState:\n\n` +
`history.replaceState(history.state, '', url)\n\n` +
- `You can find more information at https://next.router.vuejs.org/guide/migration/#usage-of-history-state.`
+ `You can find more information at https://router.vuejs.org/guide/migration/#Usage-of-history-state`
)
}
diff --git a/packages/router/src/matcher/index.ts b/packages/router/src/matcher/index.ts
index 0d67061d3..da9e821f3 100644
--- a/packages/router/src/matcher/index.ts
+++ b/packages/router/src/matcher/index.ts
@@ -133,7 +133,7 @@ export function createRouterMatcher(
if (__DEV__ && normalizedRecord.path === '*') {
throw new Error(
'Catch all routes ("*") must now be defined using a param with a custom regexp.\n' +
- 'See more at https://next.router.vuejs.org/guide/migration/#removed-star-or-catch-all-routes.'
+ 'See more at https://router.vuejs.org/guide/migration/#Removed-star-or-catch-all-routes.'
)
}
diff --git a/packages/router/src/router.ts b/packages/router/src/router.ts
index da33e976d..1906ba452 100644
--- a/packages/router/src/router.ts
+++ b/packages/router/src/router.ts
@@ -390,7 +390,7 @@ export function createRouter(options: RouterOptions): Router {
if (__DEV__ && !routerHistory)
throw new Error(
'Provide the "history" option when calling "createRouter()":' +
- ' https://next.router.vuejs.org/api/#history.'
+ ' https://router.vuejs.org/api/interfaces/RouterOptions.html#history'
)
const beforeGuards = useCallbacks>()
diff --git a/packages/router/test-dts/components.test-d.tsx b/packages/router/test-dts/components.test-d.tsx
index 532f66bac..07c270520 100644
--- a/packages/router/test-dts/components.test-d.tsx
+++ b/packages/router/test-dts/components.test-d.tsx
@@ -5,27 +5,32 @@ import {
createRouter,
createMemoryHistory,
} from './index'
-import { expectTypeOf } from 'vitest'
+import { it, describe, expectTypeOf } from 'vitest'
-let router = createRouter({
- history: createMemoryHistory(),
- routes: [],
-})
+describe('Components', () => {
+ let router = createRouter({
+ history: createMemoryHistory(),
+ routes: [],
+ })
-// RouterLink
-// @ts-expect-error missing to
-expectError( )
-// @ts-expect-error: invalid prop
-expectError( )
-// @ts-expect-error: invalid prop
-expectError( )
-expectTypeOf( )
-expectTypeOf( )
-expectTypeOf( )
-expectTypeOf( )
-expectTypeOf( )
+ // TODO: split into multiple tests
+ it('works', () => {
+ // RouterLink
+ // @ts-expect-error missing to
+ expectError( )
+ // @ts-expect-error: invalid prop
+ expectError( )
+ // @ts-expect-error: invalid prop
+ expectError( )
+ expectTypeOf( )
+ expectTypeOf( )
+ expectTypeOf( )
+ expectTypeOf( )
+ expectTypeOf( )
-// RouterView
-expectTypeOf( )
-expectTypeOf( )
-expectTypeOf( )
+ // RouterView
+ expectTypeOf( )
+ expectTypeOf( )
+ expectTypeOf( )
+ })
+})
diff --git a/packages/router/test-dts/legacy.test-d.ts b/packages/router/test-dts/legacy.test-d.ts
index 8f129a7e6..3b5f70b57 100644
--- a/packages/router/test-dts/legacy.test-d.ts
+++ b/packages/router/test-dts/legacy.test-d.ts
@@ -1,12 +1,32 @@
-import { expectTypeOf } from 'vitest'
-import { Router, RouteLocationNormalizedLoaded } from './index'
+import { describe, expectTypeOf, it } from 'vitest'
+import {
+ useRouter,
+ useRoute,
+ // rename types for better error messages, otherwise they have the same name
+ // RouteLocationNormalizedLoadedTyped as I_RLNLT
+} from './index'
import { defineComponent } from 'vue'
-defineComponent({
- methods: {
- doStuff() {
- expectTypeOf(this.$router)
- expectTypeOf(this.$route)
- },
- },
+describe('Instance types', () => {
+ it('creates a $route instance property', () => {
+ defineComponent({
+ methods: {
+ doStuff() {
+ // TODO: can't do a proper check because of typed routes
+ expectTypeOf(this.$route.params).toMatchTypeOf(useRoute().params)
+ },
+ },
+ })
+ })
+
+ it('creates $router instance properties', () => {
+ defineComponent({
+ methods: {
+ doStuff() {
+ // TODO: can't do a proper check because of typed routes
+ expectTypeOf(this.$router.back).toEqualTypeOf(useRouter().back)
+ },
+ },
+ })
+ })
})
diff --git a/packages/router/test-dts/meta.test-d.ts b/packages/router/test-dts/meta.test-d.ts
index 32e2010fa..33bd677e1 100644
--- a/packages/router/test-dts/meta.test-d.ts
+++ b/packages/router/test-dts/meta.test-d.ts
@@ -4,7 +4,7 @@ import { describe, it, expectTypeOf } from 'vitest'
const component = defineComponent({})
-declare module './index' {
+declare module '.' {
interface RouteMeta {
requiresAuth?: boolean
nested: { foo: string }
@@ -28,13 +28,23 @@ describe('RouteMeta', () => {
},
},
{
- path: '/foo',
+ path: '/hey',
component,
- // @ts-expect-error
+ // @ts-expect-error: meta is missing `nested`
meta: {},
},
],
})
+
+ router.addRoute({
+ path: '/foo',
+ component,
+ meta: {
+ nested: {
+ foo: 'foo',
+ },
+ },
+ })
})
it('route location in guards', () => {
@@ -43,9 +53,12 @@ describe('RouteMeta', () => {
routes: [],
})
router.beforeEach(to => {
- expectTypeOf<{ requiresAuth?: Boolean; nested: { foo: string } }>(to.meta)
+ expectTypeOf<{ requiresAuth?: Boolean; nested?: { foo: string } }>(
+ to.meta
+ )
expectTypeOf(to.meta.lol)
- if (to.meta.nested.foo == 'foo' || to.meta.lol) return false
+ if (to.meta.nested?.foo == 'foo' || to.meta.lol) return false
+ return
})
})
})
diff --git a/packages/router/test-dts/navigationGuards.test-d.ts b/packages/router/test-dts/navigationGuards.test-d.ts
index 6bf24ed8a..86f4a0c4a 100644
--- a/packages/router/test-dts/navigationGuards.test-d.ts
+++ b/packages/router/test-dts/navigationGuards.test-d.ts
@@ -1,4 +1,4 @@
-import { expectTypeOf } from 'vitest'
+import { expectTypeOf, describe, it } from 'vitest'
import {
createRouter,
createWebHistory,
@@ -14,44 +14,49 @@ const router = createRouter({
routes: [],
})
-router.beforeEach((to, from) => {
- return { path: '/' }
-})
-
-router.beforeEach((to, from) => {
- return '/'
-})
-
-router.beforeEach((to, from) => {
- return false
-})
-
-router.beforeEach((to, from, next) => {
- next(undefined)
-})
-
-// @ts-expect-error
-router.beforeEach((to, from, next) => {
- return Symbol('not supported')
-})
-// @ts-expect-error
-router.beforeEach(() => {
- return Symbol('not supported')
-})
-
-router.beforeEach((to, from, next) => {
- // @ts-expect-error
- next(Symbol('not supported'))
-})
-
-router.afterEach((to, from, failure) => {
- expectTypeOf(failure)
- if (isNavigationFailure(failure)) {
- expectTypeOf(failure.from)
- expectTypeOf(failure.to)
- }
- if (isNavigationFailure(failure, NavigationFailureType.cancelled)) {
- expectTypeOf(failure.from)
- expectTypeOf(failure.to)
- }
+describe('Navigation guards', () => {
+ // TODO: split into multiple tests
+ it('works', () => {
+ router.beforeEach((to, from) => {
+ return { path: '/' }
+ })
+
+ router.beforeEach((to, from) => {
+ return '/'
+ })
+
+ router.beforeEach((to, from) => {
+ return false
+ })
+
+ router.beforeEach((to, from, next) => {
+ next(undefined)
+ })
+
+ // @ts-expect-error
+ router.beforeEach((to, from, next) => {
+ return Symbol('not supported')
+ })
+ // @ts-expect-error
+ router.beforeEach(() => {
+ return Symbol('not supported')
+ })
+
+ router.beforeEach((to, from, next) => {
+ // @ts-expect-error
+ next(Symbol('not supported'))
+ })
+
+ router.afterEach((to, from, failure) => {
+ expectTypeOf(failure)
+ if (isNavigationFailure(failure)) {
+ expectTypeOf(failure.from)
+ expectTypeOf(failure.to)
+ }
+ if (isNavigationFailure(failure, NavigationFailureType.cancelled)) {
+ expectTypeOf(failure.from)
+ expectTypeOf(failure.to)
+ }
+ })
+ })
})
diff --git a/packages/router/test-dts/routeRecords.test-d.ts b/packages/router/test-dts/routeRecords.test-d.ts
index e806dad1c..86cac2e68 100644
--- a/packages/router/test-dts/routeRecords.test-d.ts
+++ b/packages/router/test-dts/routeRecords.test-d.ts
@@ -1,4 +1,5 @@
-import { RouteRecordRaw } from './index'
+import { describe, it } from 'vitest'
+import type { RouteLocationNormalized, RouteRecordRaw } from './index'
import { defineComponent } from 'vue'
const component = defineComponent({})
@@ -6,56 +7,72 @@ const components = { default: component }
const routes: RouteRecordRaw[] = []
-routes.push({ path: '/', redirect: '/foo' })
+describe('RouteRecords', () => {
+ // TODO: split into multiple tests
+ it('works', () => {
+ routes.push({ path: '/', redirect: '/foo' })
-// @ts-expect-error cannot have components and component at the same time
-routes.push({ path: '/', components, component })
+ // @ts-expect-error cannot have components and component at the same time
+ routes.push({ path: '/', components, component })
-// a redirect record with children to point to a child
-routes.push({
- path: '/',
- redirect: '/foo',
- children: [
- {
- path: 'foo',
+ // a redirect record with children to point to a child
+ routes.push({
+ path: '/',
+ redirect: '/foo',
+ children: [
+ {
+ path: 'foo',
+ component,
+ },
+ ],
+ })
+
+ // same but with a nested route
+ routes.push({
+ path: '/',
component,
- },
- ],
-})
+ redirect: '/foo',
+ children: [
+ {
+ path: 'foo',
+ component,
+ },
+ ],
+ })
-// same but with a nested route
-routes.push({
- path: '/',
- component,
- redirect: '/foo',
- children: [
- {
- path: 'foo',
+ routes.push({ path: '/a/b', component, props: true })
+ routes.push({
+ path: '/a/b',
component,
- },
- ],
-})
+ props: (to: RouteLocationNormalized<'/[id]+'>) => to.params.id,
+ })
+ // @ts-expect-error: props should be an object
+ routes.push({ path: '/a/b', components, props: to => to.params.id })
+ routes.push({
+ path: '/a/b',
+ components,
+ props: {
+ default: (to: RouteLocationNormalized<'/[id]+'>) => to.params.id,
+ },
+ })
+ routes.push({ path: '/', components, props: true })
-routes.push({ path: '/', component, props: true })
-routes.push({ path: '/', component, props: to => to.params.id })
-// @ts-expect-error: props should be an object
-routes.push({ path: '/', components, props: to => to.params.id })
-routes.push({ path: '/', components, props: { default: to => to.params.id } })
-routes.push({ path: '/', components, props: true })
-
-// let r: RouteRecordRaw = {
-// path: '/',
-// component,
-// components,
-// }
-
-export function filterNestedChildren(children: RouteRecordRaw[]) {
- return children.filter(r => {
- if (r.redirect) {
- r.children?.map(() => {})
- }
- if (r.children) {
- r.children = filterNestedChildren(r.children)
+ // let r: RouteRecordRaw = {
+ // path: '/',
+ // component,
+ // components,
+ // }
+
+ function filterNestedChildren(children: RouteRecordRaw[]) {
+ return children.filter(r => {
+ if (r.redirect) {
+ r.children?.map(() => {})
+ }
+ if (r.children) {
+ r.children = filterNestedChildren(r.children)
+ }
+ })
}
+ filterNestedChildren(routes)
})
-}
+})
diff --git a/packages/router/test-dts/typed-routes.test-d.ts b/packages/router/test-dts/typed-routes.test-d.ts
index e12bdab2a..7f6849818 100644
--- a/packages/router/test-dts/typed-routes.test-d.ts
+++ b/packages/router/test-dts/typed-routes.test-d.ts
@@ -10,7 +10,7 @@ import {
// type is needed instead of an interface
// https://github.com/microsoft/TypeScript/issues/15300
-type RouteMap = {
+export type RouteMap = {
'/[...path]': RouteRecordInfo<
'/[...path]',
'/:path(.*)',
diff --git a/packages/router/tsconfig.json b/packages/router/tsconfig.json
index 22219c6f0..41fc6c378 100644
--- a/packages/router/tsconfig.json
+++ b/packages/router/tsconfig.json
@@ -2,7 +2,8 @@
"include": [
"src/global.d.ts",
"src/**/*.ts",
- "__tests__/**/*.ts"
+ "__tests__/**/*.ts",
+ "test-dts/**/*.ts"
],
"compilerOptions": {
"baseUrl": ".",
@@ -12,7 +13,7 @@
"noEmit": true,
"target": "esnext",
"module": "esnext",
- "moduleResolution": "node",
+ "moduleResolution": "Bundler",
"allowJs": false,
"noUnusedLocals": true,
"strictNullChecks": true,
diff --git a/packages/router/vitest.config.ts b/packages/router/vitest.config.ts
index bb42313f7..1e60c7351 100644
--- a/packages/router/vitest.config.ts
+++ b/packages/router/vitest.config.ts
@@ -32,7 +32,7 @@ export default defineConfig({
checker: 'vue-tsc',
// only: true,
// by default it includes all specs too
- include: ['**/*.test-d.ts'],
+ // include: ['**/*.test-d.ts'],
// tsconfig: './tsconfig.typecheck.json',
},
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 1ab6826dd..1426778ba 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -69,18 +69,18 @@ importers:
packages/playground:
dependencies:
vue:
- specifier: ^3.4.23
- version: 3.4.23(typescript@5.3.3)
+ specifier: ^3.4.29
+ version: 3.4.29(typescript@5.3.3)
devDependencies:
'@types/node':
specifier: ^20.12.7
version: 20.12.7
'@vitejs/plugin-vue':
- specifier: ^5.0.4
- version: 5.0.4(vite@5.2.9(@types/node@20.12.7)(terser@5.31.1))(vue@3.4.23(typescript@5.3.3))
+ specifier: ^5.0.5
+ version: 5.0.5(vite@5.3.1(@types/node@20.12.7)(terser@5.31.1))(vue@3.4.29(typescript@5.3.3))
'@vue/compiler-sfc':
- specifier: ^3.4.23
- version: 3.4.23
+ specifier: ^3.4.29
+ version: 3.4.29
'@vue/tsconfig':
specifier: ^0.5.1
version: 0.5.1
@@ -88,20 +88,20 @@ importers:
specifier: ~5.3.3
version: 5.3.3
vite:
- specifier: ^5.2.9
- version: 5.2.9(@types/node@20.12.7)(terser@5.31.1)
+ specifier: ^5.3.1
+ version: 5.3.1(@types/node@20.12.7)(terser@5.31.1)
vue-router:
specifier: workspace:*
version: link:../router
vue-tsc:
- specifier: ^1.8.27
- version: 1.8.27(typescript@5.3.3)
+ specifier: ^2.0.21
+ version: 2.0.21(typescript@5.3.3)
packages/router:
dependencies:
'@vue/devtools-api':
- specifier: ^6.5.1
- version: 6.5.1
+ specifier: ^6.6.3
+ version: 6.6.3
devDependencies:
'@microsoft/api-extractor':
specifier: ^7.40.1
@@ -122,29 +122,29 @@ importers:
specifier: ^0.4.4
version: 0.4.4(rollup@3.29.4)
'@types/jsdom':
- specifier: ^21.1.6
- version: 21.1.6
+ specifier: ^21.1.7
+ version: 21.1.7
'@types/nightwatch':
- specifier: ^2.3.30
- version: 2.3.30
+ specifier: ^2.3.31
+ version: 2.3.31
'@vitejs/plugin-vue':
- specifier: ^5.0.4
- version: 5.0.4(vite@5.2.9(@types/node@20.14.7)(terser@5.31.1))(vue@3.4.23(typescript@5.3.3))
+ specifier: ^5.0.5
+ version: 5.0.5(vite@5.3.1(@types/node@20.14.7)(terser@5.31.1))(vue@3.4.29(typescript@5.3.3))
'@vitest/coverage-v8':
specifier: ^1.6.0
- version: 1.6.0(vitest@1.6.0(@types/node@20.14.7)(@vitest/ui@1.6.0)(jsdom@24.1.0)(terser@5.31.1))
+ version: 1.6.0(vitest@1.6.0(@types/node@20.14.7)(@vitest/ui@1.6.0)(happy-dom@14.12.3)(jsdom@24.1.0)(terser@5.31.1))
'@vitest/ui':
specifier: ^1.6.0
version: 1.6.0(vitest@1.6.0)
'@vue/compiler-sfc':
- specifier: ^3.4.23
- version: 3.4.23
+ specifier: ^3.4.29
+ version: 3.4.29
'@vue/server-renderer':
- specifier: ^3.4.23
- version: 3.4.23(vue@3.4.23(typescript@5.3.3))
+ specifier: ^3.4.29
+ version: 3.4.29(vue@3.4.29(typescript@5.3.3))
'@vue/test-utils':
- specifier: ^2.4.4
- version: 2.4.4(@vue/server-renderer@3.4.23(vue@3.4.23(typescript@5.3.3)))(vue@3.4.23(typescript@5.3.3))
+ specifier: ^2.4.6
+ version: 2.4.6
browserstack-local:
specifier: ^1.5.5
version: 1.5.5
@@ -166,6 +166,9 @@ importers:
geckodriver:
specifier: ^3.2.0
version: 3.2.0
+ happy-dom:
+ specifier: ^14.12.3
+ version: 14.12.3
nightwatch:
specifier: ^2.6.22
version: 2.6.24(chromedriver@121.0.2)(geckodriver@3.2.0)
@@ -188,14 +191,14 @@ importers:
specifier: ~5.3.3
version: 5.3.3
vite:
- specifier: ^5.2.9
- version: 5.2.9(@types/node@20.14.7)(terser@5.31.1)
+ specifier: ^5.3.1
+ version: 5.3.1(@types/node@20.14.7)(terser@5.31.1)
vitest:
specifier: ^1.6.0
- version: 1.6.0(@types/node@20.14.7)(@vitest/ui@1.6.0)(jsdom@24.1.0)(terser@5.31.1)
+ version: 1.6.0(@types/node@20.14.7)(@vitest/ui@1.6.0)(happy-dom@14.12.3)(jsdom@24.1.0)(terser@5.31.1)
vue:
- specifier: ^3.4.23
- version: 3.4.23(typescript@5.3.3)
+ specifier: ^3.4.29
+ version: 3.4.29(typescript@5.3.3)
packages:
@@ -292,11 +295,6 @@ packages:
resolution: {integrity: sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==}
engines: {node: '>=6.9.0'}
- '@babel/parser@7.24.4':
- resolution: {integrity: sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==}
- engines: {node: '>=6.0.0'}
- hasBin: true
-
'@babel/parser@7.24.7':
resolution: {integrity: sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==}
engines: {node: '>=6.0.0'}
@@ -340,276 +338,138 @@ packages:
search-insights:
optional: true
- '@esbuild/aix-ppc64@0.20.2':
- resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==}
- engines: {node: '>=12'}
- cpu: [ppc64]
- os: [aix]
-
'@esbuild/aix-ppc64@0.21.5':
resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
engines: {node: '>=12'}
cpu: [ppc64]
os: [aix]
- '@esbuild/android-arm64@0.20.2':
- resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [android]
-
'@esbuild/android-arm64@0.21.5':
resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==}
engines: {node: '>=12'}
cpu: [arm64]
os: [android]
- '@esbuild/android-arm@0.20.2':
- resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==}
- engines: {node: '>=12'}
- cpu: [arm]
- os: [android]
-
'@esbuild/android-arm@0.21.5':
resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==}
engines: {node: '>=12'}
cpu: [arm]
os: [android]
- '@esbuild/android-x64@0.20.2':
- resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [android]
-
'@esbuild/android-x64@0.21.5':
resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==}
engines: {node: '>=12'}
cpu: [x64]
os: [android]
- '@esbuild/darwin-arm64@0.20.2':
- resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [darwin]
-
'@esbuild/darwin-arm64@0.21.5':
resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==}
engines: {node: '>=12'}
cpu: [arm64]
os: [darwin]
- '@esbuild/darwin-x64@0.20.2':
- resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [darwin]
-
'@esbuild/darwin-x64@0.21.5':
resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==}
engines: {node: '>=12'}
cpu: [x64]
os: [darwin]
- '@esbuild/freebsd-arm64@0.20.2':
- resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [freebsd]
-
'@esbuild/freebsd-arm64@0.21.5':
resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==}
engines: {node: '>=12'}
cpu: [arm64]
os: [freebsd]
- '@esbuild/freebsd-x64@0.20.2':
- resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [freebsd]
-
'@esbuild/freebsd-x64@0.21.5':
resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==}
engines: {node: '>=12'}
cpu: [x64]
os: [freebsd]
- '@esbuild/linux-arm64@0.20.2':
- resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [linux]
-
'@esbuild/linux-arm64@0.21.5':
resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==}
engines: {node: '>=12'}
cpu: [arm64]
os: [linux]
- '@esbuild/linux-arm@0.20.2':
- resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==}
- engines: {node: '>=12'}
- cpu: [arm]
- os: [linux]
-
'@esbuild/linux-arm@0.21.5':
resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==}
engines: {node: '>=12'}
cpu: [arm]
os: [linux]
- '@esbuild/linux-ia32@0.20.2':
- resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==}
- engines: {node: '>=12'}
- cpu: [ia32]
- os: [linux]
-
'@esbuild/linux-ia32@0.21.5':
resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==}
engines: {node: '>=12'}
cpu: [ia32]
os: [linux]
- '@esbuild/linux-loong64@0.20.2':
- resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==}
- engines: {node: '>=12'}
- cpu: [loong64]
- os: [linux]
-
'@esbuild/linux-loong64@0.21.5':
resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==}
engines: {node: '>=12'}
cpu: [loong64]
os: [linux]
- '@esbuild/linux-mips64el@0.20.2':
- resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==}
- engines: {node: '>=12'}
- cpu: [mips64el]
- os: [linux]
-
'@esbuild/linux-mips64el@0.21.5':
resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==}
engines: {node: '>=12'}
cpu: [mips64el]
os: [linux]
- '@esbuild/linux-ppc64@0.20.2':
- resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==}
- engines: {node: '>=12'}
- cpu: [ppc64]
- os: [linux]
-
'@esbuild/linux-ppc64@0.21.5':
resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==}
engines: {node: '>=12'}
cpu: [ppc64]
os: [linux]
- '@esbuild/linux-riscv64@0.20.2':
- resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==}
- engines: {node: '>=12'}
- cpu: [riscv64]
- os: [linux]
-
'@esbuild/linux-riscv64@0.21.5':
resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==}
engines: {node: '>=12'}
cpu: [riscv64]
os: [linux]
- '@esbuild/linux-s390x@0.20.2':
- resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==}
- engines: {node: '>=12'}
- cpu: [s390x]
- os: [linux]
-
'@esbuild/linux-s390x@0.21.5':
resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==}
engines: {node: '>=12'}
cpu: [s390x]
os: [linux]
- '@esbuild/linux-x64@0.20.2':
- resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [linux]
-
'@esbuild/linux-x64@0.21.5':
resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==}
engines: {node: '>=12'}
cpu: [x64]
os: [linux]
- '@esbuild/netbsd-x64@0.20.2':
- resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [netbsd]
-
'@esbuild/netbsd-x64@0.21.5':
resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==}
engines: {node: '>=12'}
cpu: [x64]
os: [netbsd]
- '@esbuild/openbsd-x64@0.20.2':
- resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [openbsd]
-
'@esbuild/openbsd-x64@0.21.5':
resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==}
engines: {node: '>=12'}
cpu: [x64]
os: [openbsd]
- '@esbuild/sunos-x64@0.20.2':
- resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [sunos]
-
'@esbuild/sunos-x64@0.21.5':
resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==}
engines: {node: '>=12'}
cpu: [x64]
os: [sunos]
- '@esbuild/win32-arm64@0.20.2':
- resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [win32]
-
'@esbuild/win32-arm64@0.21.5':
resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==}
engines: {node: '>=12'}
cpu: [arm64]
os: [win32]
- '@esbuild/win32-ia32@0.20.2':
- resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==}
- engines: {node: '>=12'}
- cpu: [ia32]
- os: [win32]
-
'@esbuild/win32-ia32@0.21.5':
resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==}
engines: {node: '>=12'}
cpu: [ia32]
os: [win32]
- '@esbuild/win32-x64@0.20.2':
- resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [win32]
-
'@esbuild/win32-x64@0.21.5':
resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==}
engines: {node: '>=12'}
@@ -773,161 +633,81 @@ packages:
rollup:
optional: true
- '@rollup/rollup-android-arm-eabi@4.14.3':
- resolution: {integrity: sha512-X9alQ3XM6I9IlSlmC8ddAvMSyG1WuHk5oUnXGw+yUBs3BFoTizmG1La/Gr8fVJvDWAq+zlYTZ9DBgrlKRVY06g==}
- cpu: [arm]
- os: [android]
-
'@rollup/rollup-android-arm-eabi@4.18.0':
resolution: {integrity: sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==}
cpu: [arm]
os: [android]
- '@rollup/rollup-android-arm64@4.14.3':
- resolution: {integrity: sha512-eQK5JIi+POhFpzk+LnjKIy4Ks+pwJ+NXmPxOCSvOKSNRPONzKuUvWE+P9JxGZVxrtzm6BAYMaL50FFuPe0oWMQ==}
- cpu: [arm64]
- os: [android]
-
'@rollup/rollup-android-arm64@4.18.0':
resolution: {integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==}
cpu: [arm64]
os: [android]
- '@rollup/rollup-darwin-arm64@4.14.3':
- resolution: {integrity: sha512-Od4vE6f6CTT53yM1jgcLqNfItTsLt5zE46fdPaEmeFHvPs5SjZYlLpHrSiHEKR1+HdRfxuzXHjDOIxQyC3ptBA==}
- cpu: [arm64]
- os: [darwin]
-
'@rollup/rollup-darwin-arm64@4.18.0':
resolution: {integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==}
cpu: [arm64]
os: [darwin]
- '@rollup/rollup-darwin-x64@4.14.3':
- resolution: {integrity: sha512-0IMAO21axJeNIrvS9lSe/PGthc8ZUS+zC53O0VhF5gMxfmcKAP4ESkKOCwEi6u2asUrt4mQv2rjY8QseIEb1aw==}
- cpu: [x64]
- os: [darwin]
-
'@rollup/rollup-darwin-x64@4.18.0':
resolution: {integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==}
cpu: [x64]
os: [darwin]
- '@rollup/rollup-linux-arm-gnueabihf@4.14.3':
- resolution: {integrity: sha512-ge2DC7tHRHa3caVEoSbPRJpq7azhG+xYsd6u2MEnJ6XzPSzQsTKyXvh6iWjXRf7Rt9ykIUWHtl0Uz3T6yXPpKw==}
- cpu: [arm]
- os: [linux]
-
'@rollup/rollup-linux-arm-gnueabihf@4.18.0':
resolution: {integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==}
cpu: [arm]
os: [linux]
- '@rollup/rollup-linux-arm-musleabihf@4.14.3':
- resolution: {integrity: sha512-ljcuiDI4V3ySuc7eSk4lQ9wU8J8r8KrOUvB2U+TtK0TiW6OFDmJ+DdIjjwZHIw9CNxzbmXY39wwpzYuFDwNXuw==}
- cpu: [arm]
- os: [linux]
-
'@rollup/rollup-linux-arm-musleabihf@4.18.0':
resolution: {integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==}
cpu: [arm]
os: [linux]
- '@rollup/rollup-linux-arm64-gnu@4.14.3':
- resolution: {integrity: sha512-Eci2us9VTHm1eSyn5/eEpaC7eP/mp5n46gTRB3Aar3BgSvDQGJZuicyq6TsH4HngNBgVqC5sDYxOzTExSU+NjA==}
- cpu: [arm64]
- os: [linux]
-
'@rollup/rollup-linux-arm64-gnu@4.18.0':
resolution: {integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==}
cpu: [arm64]
os: [linux]
- '@rollup/rollup-linux-arm64-musl@4.14.3':
- resolution: {integrity: sha512-UrBoMLCq4E92/LCqlh+blpqMz5h1tJttPIniwUgOFJyjWI1qrtrDhhpHPuFxULlUmjFHfloWdixtDhSxJt5iKw==}
- cpu: [arm64]
- os: [linux]
-
'@rollup/rollup-linux-arm64-musl@4.18.0':
resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==}
cpu: [arm64]
os: [linux]
- '@rollup/rollup-linux-powerpc64le-gnu@4.14.3':
- resolution: {integrity: sha512-5aRjvsS8q1nWN8AoRfrq5+9IflC3P1leMoy4r2WjXyFqf3qcqsxRCfxtZIV58tCxd+Yv7WELPcO9mY9aeQyAmw==}
- cpu: [ppc64]
- os: [linux]
-
'@rollup/rollup-linux-powerpc64le-gnu@4.18.0':
resolution: {integrity: sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==}
cpu: [ppc64]
os: [linux]
- '@rollup/rollup-linux-riscv64-gnu@4.14.3':
- resolution: {integrity: sha512-sk/Qh1j2/RJSX7FhEpJn8n0ndxy/uf0kI/9Zc4b1ELhqULVdTfN6HL31CDaTChiBAOgLcsJ1sgVZjWv8XNEsAQ==}
- cpu: [riscv64]
- os: [linux]
-
'@rollup/rollup-linux-riscv64-gnu@4.18.0':
resolution: {integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==}
cpu: [riscv64]
os: [linux]
- '@rollup/rollup-linux-s390x-gnu@4.14.3':
- resolution: {integrity: sha512-jOO/PEaDitOmY9TgkxF/TQIjXySQe5KVYB57H/8LRP/ux0ZoO8cSHCX17asMSv3ruwslXW/TLBcxyaUzGRHcqg==}
- cpu: [s390x]
- os: [linux]
-
'@rollup/rollup-linux-s390x-gnu@4.18.0':
resolution: {integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==}
cpu: [s390x]
os: [linux]
- '@rollup/rollup-linux-x64-gnu@4.14.3':
- resolution: {integrity: sha512-8ybV4Xjy59xLMyWo3GCfEGqtKV5M5gCSrZlxkPGvEPCGDLNla7v48S662HSGwRd6/2cSneMQWiv+QzcttLrrOA==}
- cpu: [x64]
- os: [linux]
-
'@rollup/rollup-linux-x64-gnu@4.18.0':
resolution: {integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==}
cpu: [x64]
os: [linux]
- '@rollup/rollup-linux-x64-musl@4.14.3':
- resolution: {integrity: sha512-s+xf1I46trOY10OqAtZ5Rm6lzHre/UiLA1J2uOhCFXWkbZrJRkYBPO6FhvGfHmdtQ3Bx793MNa7LvoWFAm93bg==}
- cpu: [x64]
- os: [linux]
-
'@rollup/rollup-linux-x64-musl@4.18.0':
resolution: {integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==}
cpu: [x64]
os: [linux]
- '@rollup/rollup-win32-arm64-msvc@4.14.3':
- resolution: {integrity: sha512-+4h2WrGOYsOumDQ5S2sYNyhVfrue+9tc9XcLWLh+Kw3UOxAvrfOrSMFon60KspcDdytkNDh7K2Vs6eMaYImAZg==}
- cpu: [arm64]
- os: [win32]
-
'@rollup/rollup-win32-arm64-msvc@4.18.0':
resolution: {integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==}
cpu: [arm64]
os: [win32]
- '@rollup/rollup-win32-ia32-msvc@4.14.3':
- resolution: {integrity: sha512-T1l7y/bCeL/kUwh9OD4PQT4aM7Bq43vX05htPJJ46RTI4r5KNt6qJRzAfNfM+OYMNEVBWQzR2Gyk+FXLZfogGw==}
- cpu: [ia32]
- os: [win32]
-
'@rollup/rollup-win32-ia32-msvc@4.18.0':
resolution: {integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==}
cpu: [ia32]
os: [win32]
- '@rollup/rollup-win32-x64-msvc@4.14.3':
- resolution: {integrity: sha512-/BypzV0H1y1HzgYpxqRaXGBRqfodgoBBCcsrujT6QRcakDQdfU+Lq9PENPh5jB4I44YWq+0C2eHsHya+nZY1sA==}
- cpu: [x64]
- os: [win32]
-
'@rollup/rollup-win32-x64-msvc@4.18.0':
resolution: {integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==}
cpu: [x64]
@@ -988,8 +768,8 @@ packages:
'@types/cacheable-request@6.0.3':
resolution: {integrity: sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==}
- '@types/chai@4.3.5':
- resolution: {integrity: sha512-mEo1sAde+UCE6b2hxn332f1g1E8WfYRu6p5SvTKr2ZKC1f7gFJXk4h5PyGP9Dt6gCaG8y8XhwnXWC6Iy2cmBng==}
+ '@types/chai@4.3.16':
+ resolution: {integrity: sha512-PatH4iOdyh3MyWtmHVFXLWCCIhUbopaltqddG9BzB+gMIzee2MJrvd+jouii9Z3wzQJruGWAm7WOMjgfG8hQlQ==}
'@types/estree@1.0.1':
resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==}
@@ -1000,8 +780,8 @@ packages:
'@types/http-cache-semantics@4.0.1':
resolution: {integrity: sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==}
- '@types/jsdom@21.1.6':
- resolution: {integrity: sha512-/7kkMsC+/kMs7gAYmmBR9P0vGTnOoLhQhyhQJSlXGI5bzTHp6xdo0TtKWQAsz6pmSAeVqKSbqeyP6hytqr9FDw==}
+ '@types/jsdom@21.1.7':
+ resolution: {integrity: sha512-yOriVnggzrnQ3a9OKOCxaVuSug3w3/SbOj5i7VwXWZEyUNl3bLF9V3MfxGbZKuwqJOQyRfqXyROBB1CoZLFWzA==}
'@types/keyv@3.1.4':
resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==}
@@ -1018,11 +798,8 @@ packages:
'@types/minimist@1.2.2':
resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==}
- '@types/nightwatch@2.3.30':
- resolution: {integrity: sha512-TiVGKR9mORwx0nN3ylonXp2IobpQoZxwV63IjABYkxsEpNauHL8GU9kmceEThjqDUigKaeh6aPOqepwC4bwCfA==}
-
- '@types/node@20.11.19':
- resolution: {integrity: sha512-7xMnVEcZFu0DikYjWOlRq7NTPETrm7teqUT2WkQjrTIkEgUyyGdWsj/Zg8bEJt5TNklzbPD1X3fqfsHw3SpapQ==}
+ '@types/nightwatch@2.3.31':
+ resolution: {integrity: sha512-DqkgFUNhIEbO09RfsRZtFdr2cOP1TbtNDHp0RUKiVYG0mIEBQfYGBtNCH8UWEuCspMD3yhqBd+WeBdsTzQpfHQ==}
'@types/node@20.12.7':
resolution: {integrity: sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==}
@@ -1039,17 +816,17 @@ packages:
'@types/responselike@1.0.0':
resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==}
- '@types/selenium-webdriver@4.1.16':
- resolution: {integrity: sha512-ETje9rr7nTrD0r/mNnIuCAF7fAZ2xKE/1WyxXZZH9N9Cy2NKJTrpEd7SCdzuIlm/1iu1gjHCVbaDwT+MuDrVZg==}
+ '@types/selenium-webdriver@4.1.23':
+ resolution: {integrity: sha512-PgreEfCfafYLyTwvJTZvOspCq3JABnS51e+NSFFL5yoiMO7h04lWgLfr10NA7nl/yZbz4m76rBfOOdDfleb7pQ==}
- '@types/tough-cookie@4.0.2':
- resolution: {integrity: sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==}
+ '@types/tough-cookie@4.0.5':
+ resolution: {integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==}
'@types/web-bluetooth@0.0.20':
resolution: {integrity: sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==}
- '@types/ws@8.5.5':
- resolution: {integrity: sha512-lwhs8hktwxSjf9UaZ9tG5M03PGogvFaH8gUgLNbN9HKIg0dvv6q+gkSuJ8HN4/VbyxkuLzCjlN7GquQ0gUJfIg==}
+ '@types/ws@8.5.10':
+ resolution: {integrity: sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==}
'@types/yauzl@2.10.3':
resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==}
@@ -1057,13 +834,6 @@ packages:
'@ungap/promise-all-settled@1.1.2':
resolution: {integrity: sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==}
- '@vitejs/plugin-vue@5.0.4':
- resolution: {integrity: sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ==}
- engines: {node: ^18.0.0 || >=20.0.0}
- peerDependencies:
- vite: ^5.0.0
- vue: ^3.2.25
-
'@vitejs/plugin-vue@5.0.5':
resolution: {integrity: sha512-LOjm7XeIimLBZyzinBQ6OSm3UBCNVCpLkxGC0oWmm2YPzVZoxMsdvNVimLTBzpAnR9hl/yn1SHGuRfe6/Td9rQ==}
engines: {node: ^18.0.0 || >=20.0.0}
@@ -1096,41 +866,29 @@ packages:
'@vitest/utils@1.6.0':
resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==}
- '@volar/language-core@1.11.1':
- resolution: {integrity: sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==}
-
- '@volar/source-map@1.11.1':
- resolution: {integrity: sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==}
+ '@volar/language-core@2.3.0':
+ resolution: {integrity: sha512-pvhL24WUh3VDnv7Yw5N1sjhPtdx7q9g+Wl3tggmnkMcyK8GcCNElF2zHiKznryn0DiUGk+eez/p2qQhz+puuHw==}
- '@volar/typescript@1.11.1':
- resolution: {integrity: sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==}
+ '@volar/source-map@2.3.0':
+ resolution: {integrity: sha512-G/228aZjAOGhDjhlyZ++nDbKrS9uk+5DMaEstjvzglaAw7nqtDyhnQAsYzUg6BMP9BtwZ59RIw5HGePrutn00Q==}
- '@vue/compiler-core@3.4.23':
- resolution: {integrity: sha512-HAFmuVEwNqNdmk+w4VCQ2pkLk1Vw4XYiiyxEp3z/xvl14aLTUBw2OfVH3vBcx+FtGsynQLkkhK410Nah1N2yyQ==}
+ '@volar/typescript@2.3.0':
+ resolution: {integrity: sha512-PtUwMM87WsKVeLJN33GSTUjBexlKfKgouWlOUIv7pjrOnTwhXHZNSmpc312xgXdTjQPpToK6KXSIcKu9sBQ5LQ==}
'@vue/compiler-core@3.4.29':
resolution: {integrity: sha512-TFKiRkKKsRCKvg/jTSSKK7mYLJEQdUiUfykbG49rubC9SfDyvT2JrzTReopWlz2MxqeLyxh9UZhvxEIBgAhtrg==}
- '@vue/compiler-dom@3.4.23':
- resolution: {integrity: sha512-t0b9WSTnCRrzsBGrDd1LNR5HGzYTr7LX3z6nNBG+KGvZLqrT0mY6NsMzOqlVMBKKXKVuusbbB5aOOFgTY+senw==}
-
'@vue/compiler-dom@3.4.29':
resolution: {integrity: sha512-A6+iZ2fKIEGnfPJejdB7b1FlJzgiD+Y/sxxKwJWg1EbJu6ZPgzaPQQ51ESGNv0CP6jm6Z7/pO6Ia8Ze6IKrX7w==}
- '@vue/compiler-sfc@3.4.23':
- resolution: {integrity: sha512-fSDTKTfzaRX1kNAUiaj8JB4AokikzStWgHooMhaxyjZerw624L+IAP/fvI4ZwMpwIh8f08PVzEnu4rg8/Npssw==}
-
'@vue/compiler-sfc@3.4.29':
resolution: {integrity: sha512-zygDcEtn8ZimDlrEQyLUovoWgKQic6aEQqRXce2WXBvSeHbEbcAsXyCk9oG33ZkyWH4sl9D3tkYc1idoOkdqZQ==}
- '@vue/compiler-ssr@3.4.23':
- resolution: {integrity: sha512-hb6Uj2cYs+tfqz71Wj6h3E5t6OKvb4MVcM2Nl5i/z1nv1gjEhw+zYaNOV+Xwn+SSN/VZM0DgANw5TuJfxfezPg==}
-
'@vue/compiler-ssr@3.4.29':
resolution: {integrity: sha512-rFbwCmxJ16tDp3N8XCx5xSQzjhidYjXllvEcqX/lopkoznlNPz3jyy0WGJCyhAaVQK677WWFt3YO/WUEkMMUFQ==}
- '@vue/devtools-api@6.5.1':
- resolution: {integrity: sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA==}
+ '@vue/devtools-api@6.6.3':
+ resolution: {integrity: sha512-0MiMsFma/HqA6g3KLKn+AGpL1kgKhFWszC9U29NfpWK5LE7bjeXxySWJrOJ77hBz+TBrBQ7o4QJqbPbqbs8rJw==}
'@vue/devtools-api@7.3.2':
resolution: {integrity: sha512-qFCm12te9rG0XWLCHm3x8TiZLULEP5s7Ruaadi5jAogwZ5qF7QH7tKc6yXZGV96uM+y1FUlbK+QwVbWgMfXEhQ==}
@@ -1141,56 +899,33 @@ packages:
'@vue/devtools-shared@7.3.2':
resolution: {integrity: sha512-RpYfqStbzljD6zf9LPXF2T7kM3fMfepxJB5yjzyloFel5nEB49DUm4TeA426IH+hKvwjjRorZyh6CT1cG/H2Vw==}
- '@vue/language-core@1.8.27':
- resolution: {integrity: sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==}
+ '@vue/language-core@2.0.21':
+ resolution: {integrity: sha512-vjs6KwnCK++kIXT+eI63BGpJHfHNVJcUCr3RnvJsccT3vbJnZV5IhHR2puEkoOkIbDdp0Gqi1wEnv3hEd3WsxQ==}
peerDependencies:
typescript: '*'
peerDependenciesMeta:
typescript:
optional: true
- '@vue/reactivity@3.4.23':
- resolution: {integrity: sha512-GlXR9PL+23fQ3IqnbSQ8OQKLodjqCyoCrmdLKZk3BP7jN6prWheAfU7a3mrltewTkoBm+N7qMEb372VHIkQRMQ==}
-
'@vue/reactivity@3.4.29':
resolution: {integrity: sha512-w8+KV+mb1a8ornnGQitnMdLfE0kXmteaxLdccm2XwdFxXst4q/Z7SEboCV5SqJNpZbKFeaRBBJBhW24aJyGINg==}
- '@vue/runtime-core@3.4.23':
- resolution: {integrity: sha512-FeQ9MZEXoFzFkFiw9MQQ/FWs3srvrP+SjDKSeRIiQHIhtkzoj0X4rWQlRNHbGuSwLra6pMyjAttwixNMjc/xLw==}
-
'@vue/runtime-core@3.4.29':
resolution: {integrity: sha512-s8fmX3YVR/Rk5ig0ic0NuzTNjK2M7iLuVSZyMmCzN/+Mjuqqif1JasCtEtmtoJWF32pAtUjyuT2ljNKNLeOmnQ==}
- '@vue/runtime-dom@3.4.23':
- resolution: {integrity: sha512-RXJFwwykZWBkMiTPSLEWU3kgVLNAfActBfWFlZd0y79FTUxexogd0PLG4HH2LfOktjRxV47Nulygh0JFXe5f9A==}
-
'@vue/runtime-dom@3.4.29':
resolution: {integrity: sha512-gI10atCrtOLf/2MPPMM+dpz3NGulo9ZZR9d1dWo4fYvm+xkfvRrw1ZmJ7mkWtiJVXSsdmPbcK1p5dZzOCKDN0g==}
- '@vue/server-renderer@3.4.23':
- resolution: {integrity: sha512-LDwGHtnIzvKFNS8dPJ1SSU5Gvm36p2ck8wCZc52fc3k/IfjKcwCyrWEf0Yag/2wTFUBXrqizfhK9c/mC367dXQ==}
- peerDependencies:
- vue: 3.4.23
-
'@vue/server-renderer@3.4.29':
resolution: {integrity: sha512-HMLCmPI2j/k8PVkSBysrA2RxcxC5DgBiCdj7n7H2QtR8bQQPqKAe8qoaxLcInzouBmzwJ+J0x20ygN/B5mYBng==}
peerDependencies:
vue: 3.4.29
- '@vue/shared@3.4.23':
- resolution: {integrity: sha512-wBQ0gvf+SMwsCQOyusNw/GoXPV47WGd1xB5A1Pgzy0sQ3Bi5r5xm3n+92y3gCnB3MWqnRDdvfkRGxhKtbBRNgg==}
-
'@vue/shared@3.4.29':
resolution: {integrity: sha512-hQ2gAQcBO/CDpC82DCrinJNgOHI2v+FA7BDW4lMSPeBpQ7sRe2OLHWe5cph1s7D8DUQAwRt18dBDfJJ220APEA==}
- '@vue/test-utils@2.4.4':
- resolution: {integrity: sha512-8jkRxz8pNhClAf4Co4ZrpAoFISdvT3nuSkUlY6Ys6rmTpw3DMWG/X3mw3gQ7QJzgCZO9f+zuE2kW57fi09MW7Q==}
- peerDependencies:
- '@vue/server-renderer': ^3.0.1
- vue: ^3.0.1
- peerDependenciesMeta:
- '@vue/server-renderer':
- optional: true
+ '@vue/test-utils@2.4.6':
+ resolution: {integrity: sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==}
'@vue/tsconfig@0.5.1':
resolution: {integrity: sha512-VcZK7MvpjuTPx2w6blwnwZAu5/LgBUtejFOi3pPGQFXQN5Ela03FUtd2Qtg4yWGGissVL0dr6Ro1LfOFh+PCuQ==}
@@ -1895,11 +1630,6 @@ packages:
error-ex@1.3.2:
resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
- esbuild@0.20.2:
- resolution: {integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==}
- engines: {node: '>=12'}
- hasBin: true
-
esbuild@0.21.5:
resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==}
engines: {node: '>=12'}
@@ -2045,10 +1775,6 @@ packages:
debug:
optional: true
- foreground-child@3.1.1:
- resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==}
- engines: {node: '>=14'}
-
foreground-child@3.2.1:
resolution: {integrity: sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==}
engines: {node: '>=14'}
@@ -2147,11 +1873,6 @@ packages:
resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
engines: {node: '>= 6'}
- glob@10.3.10:
- resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==}
- engines: {node: '>=16 || 14 >=14.17'}
- hasBin: true
-
glob@10.4.2:
resolution: {integrity: sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==}
engines: {node: '>=16 || 14 >=14.18'}
@@ -2187,6 +1908,10 @@ packages:
engines: {node: '>=0.4.7'}
hasBin: true
+ happy-dom@14.12.3:
+ resolution: {integrity: sha512-vsYlEs3E9gLwA1Hp+w3qzu+RUDFf4VTT8cyKqVICoZ2k7WM++Qyd2LwzyTi5bqMJFiIC/vNpTDYuxdreENRK/g==}
+ engines: {node: '>=16.0.0'}
+
hard-rejection@2.1.0:
resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==}
engines: {node: '>=6'}
@@ -2441,10 +2166,6 @@ packages:
resolution: {integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==}
engines: {node: '>=8'}
- jackspeak@2.3.6:
- resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==}
- engines: {node: '>=14'}
-
jackspeak@3.4.0:
resolution: {integrity: sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==}
engines: {node: '>=14'}
@@ -2457,11 +2178,15 @@ packages:
jju@1.4.0:
resolution: {integrity: sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==}
- js-beautify@1.14.11:
- resolution: {integrity: sha512-rPogWqAfoYh1Ryqqh2agUpVfbxAhbjuN1SmU86dskQUKouRiggUTCO4+2ym9UPXllc2WAp0J+T5qxn7Um3lCdw==}
+ js-beautify@1.15.1:
+ resolution: {integrity: sha512-ESjNzSlt/sWE8sciZH8kBF8BPlwXPwhR6pWKAw8bw4Bwj+iZcnKW6ONWUutJ7eObuBZQpiIb8S7OYspWrKt7rA==}
engines: {node: '>=14'}
hasBin: true
+ js-cookie@3.0.5:
+ resolution: {integrity: sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==}
+ engines: {node: '>=14'}
+
js-tokens@4.0.0:
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
@@ -2649,10 +2374,6 @@ packages:
resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==}
engines: {node: '>=8'}
- lru-cache@10.0.1:
- resolution: {integrity: sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==}
- engines: {node: 14 || >=16.14}
-
lru-cache@10.2.2:
resolution: {integrity: sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==}
engines: {node: 14 || >=16.14}
@@ -2792,10 +2513,6 @@ packages:
resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==}
engines: {node: '>=8'}
- minipass@7.0.3:
- resolution: {integrity: sha512-LhbbwCfz3vsb12j/WkWQPZfKTsgqIe1Nf/ti1pKjYESGLHIVjWU96G9/ljLH4F9mWNVhlQOm0VySdAWzf05dpg==}
- engines: {node: '>=16 || 14 >=14.17'}
-
minipass@7.1.2:
resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -2837,8 +2554,8 @@ packages:
ms@2.1.3:
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
- muggle-string@0.3.1:
- resolution: {integrity: sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==}
+ muggle-string@0.4.1:
+ resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==}
nanoid@3.3.1:
resolution: {integrity: sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==}
@@ -2875,8 +2592,8 @@ packages:
geckodriver:
optional: true
- nopt@7.2.0:
- resolution: {integrity: sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==}
+ nopt@7.2.1:
+ resolution: {integrity: sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
hasBin: true
@@ -3038,10 +2755,6 @@ packages:
path-parse@1.0.7:
resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
- path-scurry@1.10.1:
- resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==}
- engines: {node: '>=16 || 14 >=14.17'}
-
path-scurry@1.11.1:
resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
engines: {node: '>=16 || 14 >=14.18'}
@@ -3072,6 +2785,9 @@ packages:
picocolors@1.0.0:
resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
+ picocolors@1.0.1:
+ resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==}
+
picomatch@2.3.1:
resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
engines: {node: '>=8.6'}
@@ -3271,11 +2987,6 @@ packages:
engines: {node: '>=14.18.0', npm: '>=8.0.0'}
hasBin: true
- rollup@4.14.3:
- resolution: {integrity: sha512-ag5tTQKYsj1bhrFC9+OEWqb5O6VYgtQDO9hPDBMmIbePwhfSr+ExlcU741t8Dhw5DkPCQf6noz0jb36D6W9/hw==}
- engines: {node: '>=18.0.0', npm: '>=8.0.0'}
- hasBin: true
-
rollup@4.18.0:
resolution: {integrity: sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==}
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
@@ -3332,11 +3043,6 @@ packages:
engines: {node: '>=10'}
hasBin: true
- semver@7.6.0:
- resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==}
- engines: {node: '>=10'}
- hasBin: true
-
semver@7.6.2:
resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==}
engines: {node: '>=10'}
@@ -3751,34 +3457,6 @@ packages:
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
- vite@5.2.9:
- resolution: {integrity: sha512-uOQWfuZBlc6Y3W/DTuQ1Sr+oIXWvqljLvS881SVmAj00d5RdgShLcuXWxseWPd4HXwiYBFW/vXHfKFeqj9uQnw==}
- engines: {node: ^18.0.0 || >=20.0.0}
- hasBin: true
- peerDependencies:
- '@types/node': ^18.0.0 || >=20.0.0
- less: '*'
- lightningcss: ^1.21.0
- sass: '*'
- stylus: '*'
- sugarss: '*'
- terser: ^5.4.0
- peerDependenciesMeta:
- '@types/node':
- optional: true
- less:
- optional: true
- lightningcss:
- optional: true
- sass:
- optional: true
- stylus:
- optional: true
- sugarss:
- optional: true
- terser:
- optional: true
-
vite@5.3.1:
resolution: {integrity: sha512-XBmSKRLXLxiaPYamLv3/hnP/KXDai1NDexN0FpkTaZXTfycHvkRHoenpgl/fvuK/kPbB6xAgoyiryAhQNxYmAQ==}
engines: {node: ^18.0.0 || >=20.0.0}
@@ -3857,8 +3535,11 @@ packages:
vscode-textmate@8.0.0:
resolution: {integrity: sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==}
- vue-component-type-helpers@1.8.27:
- resolution: {integrity: sha512-0vOfAtI67UjeO1G6UiX5Kd76CqaQ67wrRZiOe7UAb9Jm6GzlUr/fC7CV90XfwapJRjpCMaZFhv1V0ajWRmE9Dg==}
+ vscode-uri@3.0.8:
+ resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==}
+
+ vue-component-type-helpers@2.0.21:
+ resolution: {integrity: sha512-3NaicyZ7N4B6cft4bfb7dOnPbE9CjLcx+6wZWAg5zwszfO4qXRh+U52dN5r5ZZfc6iMaxKCEcoH9CmxxoFZHLg==}
vue-demi@0.14.8:
resolution: {integrity: sha512-Uuqnk9YE9SsWeReYqK2alDI5YzciATE0r2SkA6iMAtuXvNTMNACJLJEXNXaEy94ECuBe4Sk6RzRU80kjdbIo1Q==}
@@ -3874,20 +3555,12 @@ packages:
vue-template-compiler@2.7.16:
resolution: {integrity: sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==}
- vue-tsc@1.8.27:
- resolution: {integrity: sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==}
+ vue-tsc@2.0.21:
+ resolution: {integrity: sha512-E6x1p1HaHES6Doy8pqtm7kQern79zRtIewkf9fiv7Y43Zo4AFDS5hKi+iHi2RwEhqRmuiwliB1LCEFEGwvxQnw==}
hasBin: true
peerDependencies:
typescript: '*'
- vue@3.4.23:
- resolution: {integrity: sha512-X1y6yyGJ28LMUBJ0k/qIeKHstGd+BlWQEOT40x3auJFTmpIhpbKLgN7EFsqalnJXq1Km5ybDEsp6BhuWKciUDg==}
- peerDependencies:
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
-
vue@3.4.29:
resolution: {integrity: sha512-8QUYfRcYzNlYuzKPfge1UWC6nF9ym0lx7mpGVPJYNhddxEf3DD0+kU07NTL0sXuiT2HuJuKr/iEO8WvXvT0RSQ==}
peerDependencies:
@@ -4202,14 +3875,10 @@ snapshots:
'@babel/highlight@7.22.10':
dependencies:
- '@babel/helper-validator-identifier': 7.22.20
+ '@babel/helper-validator-identifier': 7.24.7
chalk: 2.4.2
js-tokens: 4.0.0
- '@babel/parser@7.24.4':
- dependencies:
- '@babel/types': 7.24.0
-
'@babel/parser@7.24.7':
dependencies:
'@babel/types': 7.24.7
@@ -4255,141 +3924,72 @@ snapshots:
transitivePeerDependencies:
- '@algolia/client-search'
- '@esbuild/aix-ppc64@0.20.2':
- optional: true
-
'@esbuild/aix-ppc64@0.21.5':
optional: true
- '@esbuild/android-arm64@0.20.2':
- optional: true
-
'@esbuild/android-arm64@0.21.5':
optional: true
- '@esbuild/android-arm@0.20.2':
- optional: true
-
'@esbuild/android-arm@0.21.5':
optional: true
- '@esbuild/android-x64@0.20.2':
- optional: true
-
'@esbuild/android-x64@0.21.5':
optional: true
- '@esbuild/darwin-arm64@0.20.2':
- optional: true
-
'@esbuild/darwin-arm64@0.21.5':
optional: true
- '@esbuild/darwin-x64@0.20.2':
- optional: true
-
'@esbuild/darwin-x64@0.21.5':
optional: true
- '@esbuild/freebsd-arm64@0.20.2':
- optional: true
-
'@esbuild/freebsd-arm64@0.21.5':
optional: true
- '@esbuild/freebsd-x64@0.20.2':
- optional: true
-
'@esbuild/freebsd-x64@0.21.5':
optional: true
- '@esbuild/linux-arm64@0.20.2':
- optional: true
-
'@esbuild/linux-arm64@0.21.5':
optional: true
- '@esbuild/linux-arm@0.20.2':
- optional: true
-
'@esbuild/linux-arm@0.21.5':
optional: true
- '@esbuild/linux-ia32@0.20.2':
- optional: true
-
'@esbuild/linux-ia32@0.21.5':
optional: true
- '@esbuild/linux-loong64@0.20.2':
- optional: true
-
'@esbuild/linux-loong64@0.21.5':
optional: true
- '@esbuild/linux-mips64el@0.20.2':
- optional: true
-
'@esbuild/linux-mips64el@0.21.5':
optional: true
- '@esbuild/linux-ppc64@0.20.2':
- optional: true
-
'@esbuild/linux-ppc64@0.21.5':
optional: true
- '@esbuild/linux-riscv64@0.20.2':
- optional: true
-
'@esbuild/linux-riscv64@0.21.5':
optional: true
- '@esbuild/linux-s390x@0.20.2':
- optional: true
-
'@esbuild/linux-s390x@0.21.5':
optional: true
- '@esbuild/linux-x64@0.20.2':
- optional: true
-
'@esbuild/linux-x64@0.21.5':
optional: true
- '@esbuild/netbsd-x64@0.20.2':
- optional: true
-
'@esbuild/netbsd-x64@0.21.5':
optional: true
- '@esbuild/openbsd-x64@0.20.2':
- optional: true
-
'@esbuild/openbsd-x64@0.21.5':
optional: true
- '@esbuild/sunos-x64@0.20.2':
- optional: true
-
'@esbuild/sunos-x64@0.21.5':
optional: true
- '@esbuild/win32-arm64@0.20.2':
- optional: true
-
'@esbuild/win32-arm64@0.21.5':
optional: true
- '@esbuild/win32-ia32@0.20.2':
- optional: true
-
'@esbuild/win32-ia32@0.21.5':
optional: true
- '@esbuild/win32-x64@0.20.2':
- optional: true
-
'@esbuild/win32-x64@0.21.5':
optional: true
@@ -4581,99 +4181,51 @@ snapshots:
optionalDependencies:
rollup: 3.29.4
- '@rollup/rollup-android-arm-eabi@4.14.3':
- optional: true
-
'@rollup/rollup-android-arm-eabi@4.18.0':
optional: true
- '@rollup/rollup-android-arm64@4.14.3':
- optional: true
-
'@rollup/rollup-android-arm64@4.18.0':
optional: true
- '@rollup/rollup-darwin-arm64@4.14.3':
- optional: true
-
'@rollup/rollup-darwin-arm64@4.18.0':
optional: true
- '@rollup/rollup-darwin-x64@4.14.3':
- optional: true
-
'@rollup/rollup-darwin-x64@4.18.0':
optional: true
- '@rollup/rollup-linux-arm-gnueabihf@4.14.3':
- optional: true
-
'@rollup/rollup-linux-arm-gnueabihf@4.18.0':
optional: true
- '@rollup/rollup-linux-arm-musleabihf@4.14.3':
- optional: true
-
'@rollup/rollup-linux-arm-musleabihf@4.18.0':
optional: true
- '@rollup/rollup-linux-arm64-gnu@4.14.3':
- optional: true
-
'@rollup/rollup-linux-arm64-gnu@4.18.0':
optional: true
- '@rollup/rollup-linux-arm64-musl@4.14.3':
- optional: true
-
'@rollup/rollup-linux-arm64-musl@4.18.0':
optional: true
- '@rollup/rollup-linux-powerpc64le-gnu@4.14.3':
- optional: true
-
'@rollup/rollup-linux-powerpc64le-gnu@4.18.0':
optional: true
- '@rollup/rollup-linux-riscv64-gnu@4.14.3':
- optional: true
-
'@rollup/rollup-linux-riscv64-gnu@4.18.0':
optional: true
- '@rollup/rollup-linux-s390x-gnu@4.14.3':
- optional: true
-
'@rollup/rollup-linux-s390x-gnu@4.18.0':
optional: true
- '@rollup/rollup-linux-x64-gnu@4.14.3':
- optional: true
-
'@rollup/rollup-linux-x64-gnu@4.18.0':
optional: true
- '@rollup/rollup-linux-x64-musl@4.14.3':
- optional: true
-
'@rollup/rollup-linux-x64-musl@4.18.0':
optional: true
- '@rollup/rollup-win32-arm64-msvc@4.14.3':
- optional: true
-
'@rollup/rollup-win32-arm64-msvc@4.18.0':
optional: true
- '@rollup/rollup-win32-ia32-msvc@4.14.3':
- optional: true
-
'@rollup/rollup-win32-ia32-msvc@4.18.0':
optional: true
- '@rollup/rollup-win32-x64-msvc@4.14.3':
- optional: true
-
'@rollup/rollup-win32-x64-msvc@4.18.0':
optional: true
@@ -4734,7 +4286,7 @@ snapshots:
'@types/node': 20.12.7
'@types/responselike': 1.0.0
- '@types/chai@4.3.5': {}
+ '@types/chai@4.3.16': {}
'@types/estree@1.0.1': {}
@@ -4742,10 +4294,10 @@ snapshots:
'@types/http-cache-semantics@4.0.1': {}
- '@types/jsdom@21.1.6':
+ '@types/jsdom@21.1.7':
dependencies:
- '@types/node': 20.11.19
- '@types/tough-cookie': 4.0.2
+ '@types/node': 20.14.7
+ '@types/tough-cookie': 4.0.5
parse5: 7.1.2
'@types/keyv@3.1.4':
@@ -4763,16 +4315,13 @@ snapshots:
'@types/minimist@1.2.2': {}
- '@types/nightwatch@2.3.30':
+ '@types/nightwatch@2.3.31':
dependencies:
- '@types/chai': 4.3.5
- '@types/selenium-webdriver': 4.1.16
+ '@types/chai': 4.3.16
+ '@types/node': 20.14.7
+ '@types/selenium-webdriver': 4.1.23
devtools-protocol: 0.0.1025565
- '@types/node@20.11.19':
- dependencies:
- undici-types: 5.26.5
-
'@types/node@20.12.7':
dependencies:
undici-types: 5.26.5
@@ -4780,7 +4329,6 @@ snapshots:
'@types/node@20.14.7':
dependencies:
undici-types: 5.26.5
- optional: true
'@types/normalize-package-data@2.4.1': {}
@@ -4790,17 +4338,18 @@ snapshots:
dependencies:
'@types/node': 20.12.7
- '@types/selenium-webdriver@4.1.16':
+ '@types/selenium-webdriver@4.1.23':
dependencies:
- '@types/ws': 8.5.5
+ '@types/node': 20.14.7
+ '@types/ws': 8.5.10
- '@types/tough-cookie@4.0.2': {}
+ '@types/tough-cookie@4.0.5': {}
'@types/web-bluetooth@0.0.20': {}
- '@types/ws@8.5.5':
+ '@types/ws@8.5.10':
dependencies:
- '@types/node': 20.12.7
+ '@types/node': 20.14.7
'@types/yauzl@2.10.3':
dependencies:
@@ -4809,22 +4358,22 @@ snapshots:
'@ungap/promise-all-settled@1.1.2': {}
- '@vitejs/plugin-vue@5.0.4(vite@5.2.9(@types/node@20.12.7)(terser@5.31.1))(vue@3.4.23(typescript@5.3.3))':
+ '@vitejs/plugin-vue@5.0.5(vite@5.3.1(@types/node@20.12.7)(terser@5.31.1))(vue@3.4.29(typescript@5.3.3))':
dependencies:
- vite: 5.2.9(@types/node@20.12.7)(terser@5.31.1)
- vue: 3.4.23(typescript@5.3.3)
+ vite: 5.3.1(@types/node@20.12.7)(terser@5.31.1)
+ vue: 3.4.29(typescript@5.3.3)
- '@vitejs/plugin-vue@5.0.4(vite@5.2.9(@types/node@20.14.7)(terser@5.31.1))(vue@3.4.23(typescript@5.3.3))':
+ '@vitejs/plugin-vue@5.0.5(vite@5.3.1(@types/node@20.14.7)(terser@5.31.1))(vue@3.4.29(typescript@5.3.3))':
dependencies:
- vite: 5.2.9(@types/node@20.14.7)(terser@5.31.1)
- vue: 3.4.23(typescript@5.3.3)
+ vite: 5.3.1(@types/node@20.14.7)(terser@5.31.1)
+ vue: 3.4.29(typescript@5.3.3)
'@vitejs/plugin-vue@5.0.5(vite@5.3.1(@types/node@20.14.7)(terser@5.31.1))(vue@3.4.29(typescript@5.5.2))':
dependencies:
vite: 5.3.1(@types/node@20.14.7)(terser@5.31.1)
vue: 3.4.29(typescript@5.5.2)
- '@vitest/coverage-v8@1.6.0(vitest@1.6.0(@types/node@20.14.7)(@vitest/ui@1.6.0)(jsdom@24.1.0)(terser@5.31.1))':
+ '@vitest/coverage-v8@1.6.0(vitest@1.6.0(@types/node@20.14.7)(@vitest/ui@1.6.0)(happy-dom@14.12.3)(jsdom@24.1.0)(terser@5.31.1))':
dependencies:
'@ampproject/remapping': 2.2.1
'@bcoe/v8-coverage': 0.2.3
@@ -4839,7 +4388,7 @@ snapshots:
std-env: 3.7.0
strip-literal: 2.1.0
test-exclude: 6.0.0
- vitest: 1.6.0(@types/node@20.14.7)(@vitest/ui@1.6.0)(jsdom@24.1.0)(terser@5.31.1)
+ vitest: 1.6.0(@types/node@20.14.7)(@vitest/ui@1.6.0)(happy-dom@14.12.3)(jsdom@24.1.0)(terser@5.31.1)
transitivePeerDependencies:
- supports-color
@@ -4874,7 +4423,7 @@ snapshots:
pathe: 1.1.2
picocolors: 1.0.0
sirv: 2.0.4
- vitest: 1.6.0(@types/node@20.14.7)(@vitest/ui@1.6.0)(jsdom@24.1.0)(terser@5.31.1)
+ vitest: 1.6.0(@types/node@20.14.7)(@vitest/ui@1.6.0)(happy-dom@14.12.3)(jsdom@24.1.0)(terser@5.31.1)
'@vitest/utils@1.6.0':
dependencies:
@@ -4883,26 +4432,19 @@ snapshots:
loupe: 2.3.7
pretty-format: 29.7.0
- '@volar/language-core@1.11.1':
+ '@volar/language-core@2.3.0':
dependencies:
- '@volar/source-map': 1.11.1
+ '@volar/source-map': 2.3.0
- '@volar/source-map@1.11.1':
+ '@volar/source-map@2.3.0':
dependencies:
- muggle-string: 0.3.1
+ muggle-string: 0.4.1
- '@volar/typescript@1.11.1':
+ '@volar/typescript@2.3.0':
dependencies:
- '@volar/language-core': 1.11.1
+ '@volar/language-core': 2.3.0
path-browserify: 1.0.1
-
- '@vue/compiler-core@3.4.23':
- dependencies:
- '@babel/parser': 7.24.4
- '@vue/shared': 3.4.23
- entities: 4.5.0
- estree-walker: 2.0.2
- source-map-js: 1.2.0
+ vscode-uri: 3.0.8
'@vue/compiler-core@3.4.29':
dependencies:
@@ -4912,28 +4454,11 @@ snapshots:
estree-walker: 2.0.2
source-map-js: 1.2.0
- '@vue/compiler-dom@3.4.23':
- dependencies:
- '@vue/compiler-core': 3.4.23
- '@vue/shared': 3.4.23
-
'@vue/compiler-dom@3.4.29':
dependencies:
'@vue/compiler-core': 3.4.29
'@vue/shared': 3.4.29
- '@vue/compiler-sfc@3.4.23':
- dependencies:
- '@babel/parser': 7.24.4
- '@vue/compiler-core': 3.4.23
- '@vue/compiler-dom': 3.4.23
- '@vue/compiler-ssr': 3.4.23
- '@vue/shared': 3.4.23
- estree-walker: 2.0.2
- magic-string: 0.30.9
- postcss: 8.4.38
- source-map-js: 1.2.0
-
'@vue/compiler-sfc@3.4.29':
dependencies:
'@babel/parser': 7.24.7
@@ -4946,17 +4471,12 @@ snapshots:
postcss: 8.4.38
source-map-js: 1.2.0
- '@vue/compiler-ssr@3.4.23':
- dependencies:
- '@vue/compiler-dom': 3.4.23
- '@vue/shared': 3.4.23
-
'@vue/compiler-ssr@3.4.29':
dependencies:
'@vue/compiler-dom': 3.4.29
'@vue/shared': 3.4.29
- '@vue/devtools-api@6.5.1': {}
+ '@vue/devtools-api@6.6.3': {}
'@vue/devtools-api@7.3.2':
dependencies:
@@ -4976,44 +4496,27 @@ snapshots:
dependencies:
rfdc: 1.4.1
- '@vue/language-core@1.8.27(typescript@5.3.3)':
+ '@vue/language-core@2.0.21(typescript@5.3.3)':
dependencies:
- '@volar/language-core': 1.11.1
- '@volar/source-map': 1.11.1
- '@vue/compiler-dom': 3.4.23
- '@vue/shared': 3.4.23
+ '@volar/language-core': 2.3.0
+ '@vue/compiler-dom': 3.4.29
+ '@vue/shared': 3.4.29
computeds: 0.0.1
- minimatch: 9.0.3
- muggle-string: 0.3.1
+ minimatch: 9.0.4
path-browserify: 1.0.1
vue-template-compiler: 2.7.16
optionalDependencies:
typescript: 5.3.3
- '@vue/reactivity@3.4.23':
- dependencies:
- '@vue/shared': 3.4.23
-
'@vue/reactivity@3.4.29':
dependencies:
'@vue/shared': 3.4.29
- '@vue/runtime-core@3.4.23':
- dependencies:
- '@vue/reactivity': 3.4.23
- '@vue/shared': 3.4.23
-
'@vue/runtime-core@3.4.29':
dependencies:
'@vue/reactivity': 3.4.29
'@vue/shared': 3.4.29
- '@vue/runtime-dom@3.4.23':
- dependencies:
- '@vue/runtime-core': 3.4.23
- '@vue/shared': 3.4.23
- csstype: 3.1.3
-
'@vue/runtime-dom@3.4.29':
dependencies:
'@vue/reactivity': 3.4.29
@@ -5021,11 +4524,11 @@ snapshots:
'@vue/shared': 3.4.29
csstype: 3.1.3
- '@vue/server-renderer@3.4.23(vue@3.4.23(typescript@5.3.3))':
+ '@vue/server-renderer@3.4.29(vue@3.4.29(typescript@5.3.3))':
dependencies:
- '@vue/compiler-ssr': 3.4.23
- '@vue/shared': 3.4.23
- vue: 3.4.23(typescript@5.3.3)
+ '@vue/compiler-ssr': 3.4.29
+ '@vue/shared': 3.4.29
+ vue: 3.4.29(typescript@5.3.3)
'@vue/server-renderer@3.4.29(vue@3.4.29(typescript@5.5.2))':
dependencies:
@@ -5033,17 +4536,12 @@ snapshots:
'@vue/shared': 3.4.29
vue: 3.4.29(typescript@5.5.2)
- '@vue/shared@3.4.23': {}
-
'@vue/shared@3.4.29': {}
- '@vue/test-utils@2.4.4(@vue/server-renderer@3.4.23(vue@3.4.23(typescript@5.3.3)))(vue@3.4.23(typescript@5.3.3))':
+ '@vue/test-utils@2.4.6':
dependencies:
- js-beautify: 1.14.11
- vue: 3.4.23(typescript@5.3.3)
- vue-component-type-helpers: 1.8.27
- optionalDependencies:
- '@vue/server-renderer': 3.4.23(vue@3.4.23(typescript@5.3.3))
+ js-beautify: 1.15.1
+ vue-component-type-helpers: 2.0.21
'@vue/tsconfig@0.5.1': {}
@@ -5738,32 +5236,6 @@ snapshots:
dependencies:
is-arrayish: 0.2.1
- esbuild@0.20.2:
- optionalDependencies:
- '@esbuild/aix-ppc64': 0.20.2
- '@esbuild/android-arm': 0.20.2
- '@esbuild/android-arm64': 0.20.2
- '@esbuild/android-x64': 0.20.2
- '@esbuild/darwin-arm64': 0.20.2
- '@esbuild/darwin-x64': 0.20.2
- '@esbuild/freebsd-arm64': 0.20.2
- '@esbuild/freebsd-x64': 0.20.2
- '@esbuild/linux-arm': 0.20.2
- '@esbuild/linux-arm64': 0.20.2
- '@esbuild/linux-ia32': 0.20.2
- '@esbuild/linux-loong64': 0.20.2
- '@esbuild/linux-mips64el': 0.20.2
- '@esbuild/linux-ppc64': 0.20.2
- '@esbuild/linux-riscv64': 0.20.2
- '@esbuild/linux-s390x': 0.20.2
- '@esbuild/linux-x64': 0.20.2
- '@esbuild/netbsd-x64': 0.20.2
- '@esbuild/openbsd-x64': 0.20.2
- '@esbuild/sunos-x64': 0.20.2
- '@esbuild/win32-arm64': 0.20.2
- '@esbuild/win32-ia32': 0.20.2
- '@esbuild/win32-x64': 0.20.2
-
esbuild@0.21.5:
optionalDependencies:
'@esbuild/aix-ppc64': 0.21.5
@@ -5948,11 +5420,6 @@ snapshots:
follow-redirects@1.15.6:
optional: true
- foreground-child@3.1.1:
- dependencies:
- cross-spawn: 7.0.3
- signal-exit: 4.1.0
-
foreground-child@3.2.1:
dependencies:
cross-spawn: 7.0.3
@@ -6055,14 +5522,6 @@ snapshots:
dependencies:
is-glob: 4.0.3
- glob@10.3.10:
- dependencies:
- foreground-child: 3.1.1
- jackspeak: 2.3.6
- minimatch: 9.0.3
- minipass: 7.0.3
- path-scurry: 1.10.1
-
glob@10.4.2:
dependencies:
foreground-child: 3.2.1
@@ -6134,6 +5593,12 @@ snapshots:
optionalDependencies:
uglify-js: 3.17.4
+ happy-dom@14.12.3:
+ dependencies:
+ entities: 4.5.0
+ webidl-conversions: 7.0.0
+ whatwg-mimetype: 3.0.0
+
hard-rejection@2.1.0: {}
has-flag@3.0.0: {}
@@ -6349,12 +5814,6 @@ snapshots:
html-escaper: 2.0.2
istanbul-lib-report: 3.0.1
- jackspeak@2.3.6:
- dependencies:
- '@isaacs/cliui': 8.0.2
- optionalDependencies:
- '@pkgjs/parseargs': 0.11.0
-
jackspeak@3.4.0:
dependencies:
'@isaacs/cliui': 8.0.2
@@ -6370,12 +5829,15 @@ snapshots:
jju@1.4.0: {}
- js-beautify@1.14.11:
+ js-beautify@1.15.1:
dependencies:
config-chain: 1.1.13
editorconfig: 1.0.4
- glob: 10.3.10
- nopt: 7.2.0
+ glob: 10.4.2
+ js-cookie: 3.0.5
+ nopt: 7.2.1
+
+ js-cookie@3.0.5: {}
js-tokens@4.0.0: {}
@@ -6625,8 +6087,6 @@ snapshots:
lowercase-keys@2.0.0: {}
- lru-cache@10.0.1: {}
-
lru-cache@10.2.2: {}
lru-cache@4.1.5:
@@ -6654,7 +6114,7 @@ snapshots:
magicast@0.3.4:
dependencies:
- '@babel/parser': 7.24.4
+ '@babel/parser': 7.24.7
'@babel/types': 7.24.0
source-map-js: 1.2.0
@@ -6758,8 +6218,6 @@ snapshots:
dependencies:
yallist: 4.0.0
- minipass@7.0.3: {}
-
minipass@7.1.2: {}
minisearch@6.3.0: {}
@@ -6815,7 +6273,7 @@ snapshots:
ms@2.1.3: {}
- muggle-string@0.3.1: {}
+ muggle-string@0.4.1: {}
nanoid@3.3.1: {}
@@ -6872,7 +6330,7 @@ snapshots:
- supports-color
- utf-8-validate
- nopt@7.2.0:
+ nopt@7.2.1:
dependencies:
abbrev: 2.0.0
@@ -7021,11 +6479,6 @@ snapshots:
path-parse@1.0.7: {}
- path-scurry@1.10.1:
- dependencies:
- lru-cache: 10.0.1
- minipass: 7.0.3
-
path-scurry@1.11.1:
dependencies:
lru-cache: 10.2.2
@@ -7051,6 +6504,8 @@ snapshots:
picocolors@1.0.0: {}
+ picocolors@1.0.1: {}
+
picomatch@2.3.1: {}
pidtree@0.6.0: {}
@@ -7072,7 +6527,7 @@ snapshots:
postcss@8.4.38:
dependencies:
nanoid: 3.3.7
- picocolors: 1.0.0
+ picocolors: 1.0.1
source-map-js: 1.2.0
preact@10.22.0: {}
@@ -7246,28 +6701,6 @@ snapshots:
optionalDependencies:
fsevents: 2.3.3
- rollup@4.14.3:
- dependencies:
- '@types/estree': 1.0.5
- optionalDependencies:
- '@rollup/rollup-android-arm-eabi': 4.14.3
- '@rollup/rollup-android-arm64': 4.14.3
- '@rollup/rollup-darwin-arm64': 4.14.3
- '@rollup/rollup-darwin-x64': 4.14.3
- '@rollup/rollup-linux-arm-gnueabihf': 4.14.3
- '@rollup/rollup-linux-arm-musleabihf': 4.14.3
- '@rollup/rollup-linux-arm64-gnu': 4.14.3
- '@rollup/rollup-linux-arm64-musl': 4.14.3
- '@rollup/rollup-linux-powerpc64le-gnu': 4.14.3
- '@rollup/rollup-linux-riscv64-gnu': 4.14.3
- '@rollup/rollup-linux-s390x-gnu': 4.14.3
- '@rollup/rollup-linux-x64-gnu': 4.14.3
- '@rollup/rollup-linux-x64-musl': 4.14.3
- '@rollup/rollup-win32-arm64-msvc': 4.14.3
- '@rollup/rollup-win32-ia32-msvc': 4.14.3
- '@rollup/rollup-win32-x64-msvc': 4.14.3
- fsevents: 2.3.3
-
rollup@4.18.0:
dependencies:
'@types/estree': 1.0.5
@@ -7338,10 +6771,6 @@ snapshots:
dependencies:
lru-cache: 6.0.0
- semver@7.6.0:
- dependencies:
- lru-cache: 6.0.0
-
semver@7.6.2: {}
serialize-javascript@6.0.0:
@@ -7724,7 +7153,7 @@ snapshots:
debug: 4.3.4
pathe: 1.1.2
picocolors: 1.0.0
- vite: 5.2.9(@types/node@20.14.7)(terser@5.31.1)
+ vite: 5.3.1(@types/node@20.14.7)(terser@5.31.1)
transitivePeerDependencies:
- '@types/node'
- less
@@ -7735,26 +7164,16 @@ snapshots:
- supports-color
- terser
- vite@5.2.9(@types/node@20.12.7)(terser@5.31.1):
+ vite@5.3.1(@types/node@20.12.7)(terser@5.31.1):
dependencies:
- esbuild: 0.20.2
+ esbuild: 0.21.5
postcss: 8.4.38
- rollup: 4.14.3
+ rollup: 4.18.0
optionalDependencies:
'@types/node': 20.12.7
fsevents: 2.3.3
terser: 5.31.1
- vite@5.2.9(@types/node@20.14.7)(terser@5.31.1):
- dependencies:
- esbuild: 0.20.2
- postcss: 8.4.38
- rollup: 4.14.3
- optionalDependencies:
- '@types/node': 20.14.7
- fsevents: 2.3.3
- terser: 5.31.1
-
vite@5.3.1(@types/node@20.14.7)(terser@5.31.1):
dependencies:
esbuild: 0.21.5
@@ -7821,7 +7240,7 @@ snapshots:
- typescript
- universal-cookie
- vitest@1.6.0(@types/node@20.14.7)(@vitest/ui@1.6.0)(jsdom@24.1.0)(terser@5.31.1):
+ vitest@1.6.0(@types/node@20.14.7)(@vitest/ui@1.6.0)(happy-dom@14.12.3)(jsdom@24.1.0)(terser@5.31.1):
dependencies:
'@vitest/expect': 1.6.0
'@vitest/runner': 1.6.0
@@ -7840,12 +7259,13 @@ snapshots:
strip-literal: 2.1.0
tinybench: 2.8.0
tinypool: 0.8.4
- vite: 5.2.9(@types/node@20.14.7)(terser@5.31.1)
+ vite: 5.3.1(@types/node@20.14.7)(terser@5.31.1)
vite-node: 1.6.0(@types/node@20.14.7)(terser@5.31.1)
why-is-node-running: 2.2.2
optionalDependencies:
'@types/node': 20.14.7
'@vitest/ui': 1.6.0(vitest@1.6.0)
+ happy-dom: 14.12.3
jsdom: 24.1.0
transitivePeerDependencies:
- less
@@ -7860,7 +7280,9 @@ snapshots:
vscode-textmate@8.0.0: {}
- vue-component-type-helpers@1.8.27: {}
+ vscode-uri@3.0.8: {}
+
+ vue-component-type-helpers@2.0.21: {}
vue-demi@0.14.8(vue@3.4.29(typescript@5.5.2)):
dependencies:
@@ -7871,20 +7293,20 @@ snapshots:
de-indent: 1.0.2
he: 1.2.0
- vue-tsc@1.8.27(typescript@5.3.3):
+ vue-tsc@2.0.21(typescript@5.3.3):
dependencies:
- '@volar/typescript': 1.11.1
- '@vue/language-core': 1.8.27(typescript@5.3.3)
- semver: 7.6.0
+ '@volar/typescript': 2.3.0
+ '@vue/language-core': 2.0.21(typescript@5.3.3)
+ semver: 7.6.2
typescript: 5.3.3
- vue@3.4.23(typescript@5.3.3):
+ vue@3.4.29(typescript@5.3.3):
dependencies:
- '@vue/compiler-dom': 3.4.23
- '@vue/compiler-sfc': 3.4.23
- '@vue/runtime-dom': 3.4.23
- '@vue/server-renderer': 3.4.23(vue@3.4.23(typescript@5.3.3))
- '@vue/shared': 3.4.23
+ '@vue/compiler-dom': 3.4.29
+ '@vue/compiler-sfc': 3.4.29
+ '@vue/runtime-dom': 3.4.29
+ '@vue/server-renderer': 3.4.29(vue@3.4.29(typescript@5.3.3))
+ '@vue/shared': 3.4.29
optionalDependencies:
typescript: 5.3.3