diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index f99be3b89d..8cba9c0e73 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,37 +1,19 @@ - - ### ๐Ÿ”— Linked issue - - -### โ“ Type of change - - - -- [ ] ๐Ÿ“– Documentation (updates to the documentation, readme or JSdoc annotations) -- [ ] ๐Ÿž Bug fix (a non-breaking change that fixes an issue) -- [ ] ๐Ÿ‘Œ Enhancement (improving an existing functionality like performance) -- [ ] โœจ New feature (a non-breaking change that adds functionality) -- [ ] ๐Ÿงน Chore (updates to the build process or auxiliary tools and libraries) -- [ ] โš ๏ธ Breaking change (fix or feature that would cause existing functionality to change) + ### ๐Ÿ“š Description - - - + -### ๐Ÿ“ Checklist + - - +- Check that there isn't already a PR that solves the problem the same way. If you find a duplicate, please help us reviewing it. +- Read the contribution docs at https://nuxt.com/docs/community/contribution +- Ensure that PR title follows conventional commits (https://conventionalcommits.org) +- Update the corresponding documentation if needed. +- Include relevant tests that fail without this PR but pass with it. -- [ ] I have linked an issue or discussion. -- [ ] I have added tests (if possible). -- [ ] I have updated the documentation accordingly. +Thank you for contributing to Nuxt! +-----------------------------------------------------------------------> diff --git a/docs/2.guide/2.directory-structure/3.app-config.md b/docs/2.guide/2.directory-structure/3.app-config.md index d8eb2ce4be..93c15381f8 100644 --- a/docs/2.guide/2.directory-structure/3.app-config.md +++ b/docs/2.guide/2.directory-structure/3.app-config.md @@ -99,7 +99,7 @@ Nuxt uses a custom merging strategy for the `AppConfig` within [the layers](/doc This strategy is implemented using a [Function Merger](https://github.com/unjs/defu#function-merger), which allows defining a custom merging strategy for every key in `app.config` that has an array as value. ::note -The Function Merger should only be used in the base `app.config` of your application. +The function merger can only be used in the extended layers and not the main `app.config` in project. :: Here's an example of how you can use: diff --git a/docs/3.api/1.components/3.nuxt-layout.md b/docs/3.api/1.components/3.nuxt-layout.md index 3b5a462a00..1ff8168ade 100644 --- a/docs/3.api/1.components/3.nuxt-layout.md +++ b/docs/3.api/1.components/3.nuxt-layout.md @@ -87,6 +87,8 @@ console.log(layoutCustomProps.title) // I am a custom layout `` renders incoming content via ``, which is then wrapped around Vueโ€™s `` component to activate layout transition. For this to work as expected, it is recommended that `` is **not** the root element of the page component. +::code-group + ```vue [pages/index.vue] ``` +```vue [layouts/custom.vue] + +``` + +:: + :read-more{to="/docs/getting-started/transitions"} ## Layout's Ref To get the ref of a layout component, access it through `ref.value.layoutRef`. -````vue [app.vue] +::code-group + +```vue [app.vue] -```` +``` + +```vue [layouts/default.vue] + + + +``` + +:: :read-more{to="/docs/guide/directory-structure/layouts"} diff --git a/docs/3.api/3.utils/prerender-routes.md b/docs/3.api/3.utils/prerender-routes.md index 0b679c49e0..a806678bfd 100644 --- a/docs/3.api/3.utils/prerender-routes.md +++ b/docs/3.api/3.utils/prerender-routes.md @@ -14,6 +14,10 @@ When prerendering, you can hint to Nitro to prerender additional paths, even if `prerenderRoutes` can only be called within the [Nuxt context](/docs/guide/going-further/nuxt-app#the-nuxt-context). :: +::note +`prerenderRoutes` has to be executed during prerendering. If the `prerenderRoutes` is used in dynamic pages/routes which are not prerendered, then it will not be executed. +:: + ```js const route = useRoute() diff --git a/docs/5.community/6.roadmap.md b/docs/5.community/6.roadmap.md index e0380c9cfc..9d17984679 100644 --- a/docs/5.community/6.roadmap.md +++ b/docs/5.community/6.roadmap.md @@ -31,9 +31,7 @@ Check [Discussions](https://github.com/nuxt/nuxt/discussions) and [RFCs](https:/ Milestone | Expected date | Notes | Description -------------|---------------|------------------------------------------------------------------------|----------------------- SEO & PWA | 2024 | [nuxt/nuxt#18395](https://github.com/nuxt/nuxt/discussions/18395) | Migrating from [nuxt-community/pwa-module](https://github.com/nuxt-community/pwa-module) for built-in SEO utils and service worker support -Scripts | 2024 | [nuxt/nuxt#22016](https://github.com/nuxt/nuxt/discussions/22016) | Easy 3rd party script management. Assets | 2024 | [nuxt/nuxt#22012](https://github.com/nuxt/nuxt/discussions/22012) | Allow developers and modules to handle loading third-party assets. -A11y | 2024 | [nuxt/nuxt#23255](https://github.com/nuxt/nuxt/issues/23255) | Accessibility hinting and utilities Translations | - | [nuxt/translations#4](https://github.com/nuxt/translations/discussions/4) ([request access](https://github.com/nuxt/nuxt/discussions/16054)) | A collaborative project for a stable translation process for Nuxt 3 docs. Currently pending for ideas and documentation tooling support (content v2 with remote sources). ## Core Modules Roadmap @@ -42,7 +40,10 @@ In addition to the Nuxt framework, there are modules that are vital for the ecos Module | Status | Nuxt Support | Repository | Description ---------------|---------------------|--------------|------------|------------------- +Scripts | April 2024 | 3.x | `nuxt/scripts` to be announced | Easy 3rd party script management. [nuxt/nuxt#22016](https://github.com/nuxt/nuxt/discussions/22016) +A11y | Planned | 3.x | `nuxt/a11y` to be announced | Accessibility hinting and utilities [nuxt/nuxt#23255](https://github.com/nuxt/nuxt/issues/23255) Auth | Planned | 3.x | `nuxt/auth` to be announced | Nuxt 3 support is planned after session support +Hints | Planned | 3.x | `nuxt/hints` to be announced | Guidance and suggestions for enhancing development practices ## Release Cycle diff --git a/package.json b/package.json index d2401e66b9..3117a858cd 100644 --- a/package.json +++ b/package.json @@ -37,9 +37,9 @@ "@nuxt/schema": "workspace:*", "@nuxt/vite-builder": "workspace:*", "@nuxt/webpack-builder": "workspace:*", - "rollup": "^4.13.1", + "rollup": "^4.13.2", "nuxt": "workspace:*", - "vite": "5.2.6", + "vite": "5.2.7", "vue": "3.4.21", "magic-string": "^0.30.8" }, @@ -50,7 +50,7 @@ "@nuxt/webpack-builder": "workspace:*", "@testing-library/vue": "8.0.3", "@types/fs-extra": "11.0.4", - "@types/node": "20.11.30", + "@types/node": "20.12.2", "@types/semver": "7.5.8", "@vitest/coverage-v8": "1.4.0", "@vue/test-utils": "2.4.5", @@ -61,7 +61,7 @@ "eslint": "8.57.0", "eslint-config-standard": "17.1.0", "eslint-plugin-import": "2.29.1", - "eslint-plugin-jsdoc": "48.2.1", + "eslint-plugin-jsdoc": "48.2.2", "eslint-plugin-no-only-tests": "3.1.0", "eslint-plugin-unicorn": "51.0.1", "execa": "8.0.1", diff --git a/packages/kit/package.json b/packages/kit/package.json index 722047b326..e26ad1de80 100644 --- a/packages/kit/package.json +++ b/packages/kit/package.json @@ -52,7 +52,7 @@ "lodash-es": "4.17.21", "nitropack": "2.9.5", "unbuild": "latest", - "vite": "5.2.6", + "vite": "5.2.7", "vitest": "1.4.0", "webpack": "5.91.0" }, diff --git a/packages/nuxt/package.json b/packages/nuxt/package.json index deb79741dd..ad5b5d15c0 100644 --- a/packages/nuxt/package.json +++ b/packages/nuxt/package.json @@ -60,20 +60,20 @@ }, "dependencies": { "@nuxt/devalue": "^2.0.2", - "@nuxt/devtools": "^1.1.4", + "@nuxt/devtools": "^1.1.5", "@nuxt/kit": "workspace:*", "@nuxt/schema": "workspace:*", "@nuxt/telemetry": "^2.5.3", "@nuxt/ui-templates": "^1.3.1", "@nuxt/vite-builder": "workspace:*", - "@unhead/dom": "^1.9.1", - "@unhead/ssr": "^1.9.1", - "@unhead/vue": "^1.9.1", + "@unhead/dom": "^1.9.3", + "@unhead/ssr": "^1.9.3", + "@unhead/vue": "^1.9.3", "@vue/shared": "^3.4.21", "acorn": "8.11.3", "c12": "^1.10.0", "chokidar": "^3.6.0", - "cookie-es": "^1.0.0", + "cookie-es": "^1.1.0", "defu": "^6.1.4", "destr": "^2.0.3", "devalue": "^4.3.2", @@ -100,14 +100,14 @@ "radix3": "^1.1.2", "scule": "^1.3.0", "std-env": "^3.7.0", - "strip-literal": "^2.0.0", + "strip-literal": "^2.1.0", "ufo": "^1.5.3", "ultrahtml": "^1.5.3", "uncrypto": "^0.1.3", "unctx": "^2.3.1", "unenv": "^1.9.0", "unimport": "^3.7.1", - "unplugin": "^1.10.0", + "unplugin": "^1.10.1", "unplugin-vue-router": "^0.7.0", "unstorage": "^1.10.2", "untyped": "^1.4.2", @@ -122,7 +122,7 @@ "@types/fs-extra": "11.0.4", "@vitejs/plugin-vue": "5.0.4", "unbuild": "latest", - "vite": "5.2.6", + "vite": "5.2.7", "vitest": "1.4.0" }, "peerDependencies": { diff --git a/packages/nuxt/src/app/components/nuxt-island.ts b/packages/nuxt/src/app/components/nuxt-island.ts index 5b6a424be9..efed027d50 100644 --- a/packages/nuxt/src/app/components/nuxt-island.ts +++ b/packages/nuxt/src/app/components/nuxt-island.ts @@ -88,30 +88,32 @@ export default defineComponent({ onMounted(() => { mounted.value = true; teleportKey.value++ }) function setPayload (key: string, result: NuxtIslandResponse) { + const toRevive: Partial = {} + if (result.props) { toRevive.props = result.props } + if (result.slots) { toRevive.slots = result.slots } + if (result.components) { toRevive.components = result.components } + nuxtApp.payload.data[key] = { __nuxt_island: { key, ...(import.meta.server && import.meta.prerender) ? {} : { params: { ...props.context, props: props.props ? JSON.stringify(props.props) : undefined } }, - result: { - props: result.props, - slots: result.slots, - components: result.components - } + result: toRevive }, ...result } } - const payloads: Required> = { - slots: {}, - components: {} - } + const payloads: Partial> = {} if (instance.vnode.el) { - payloads.slots = toRaw(nuxtApp.payload.data[`${props.name}_${hashId.value}`])?.slots ?? {} - payloads.components = toRaw(nuxtApp.payload.data[`${props.name}_${hashId.value}`])?.components ?? {} + const slots = toRaw(nuxtApp.payload.data[`${props.name}_${hashId.value}`])?.slots + if (slots) { payloads.slots = slots } + if (selectiveClient) { + const components = toRaw(nuxtApp.payload.data[`${props.name}_${hashId.value}`])?.components + if (components) { payloads.components = components } + } } const ssrHTML = ref('') @@ -137,12 +139,15 @@ export default defineComponent({ } } - return html.replaceAll(SLOT_FALLBACK_RE, (full, slotName) => { - if (!currentSlots.includes(slotName)) { - return full + (payloads.slots[slotName]?.fallback || '') - } - return full - }) + if (payloads.slots) { + return html.replaceAll(SLOT_FALLBACK_RE, (full, slotName) => { + if (!currentSlots.includes(slotName)) { + return full + (payloads.slots?.[slotName]?.fallback || '') + } + return full + }) + } + return html }) const cHead = ref>>>({ link: [], style: [] }) @@ -256,24 +261,26 @@ export default defineComponent({ teleports.push(createVNode(Teleport, // use different selectors for even and odd teleportKey to force trigger the teleport { to: import.meta.client ? `${isKeyOdd ? 'div' : ''}[data-island-uid="${uid.value}"][data-island-slot="${slot}"]` : `uid=${uid.value};slot=${slot}` }, - { default: () => (payloads.slots[slot].props?.length ? payloads.slots[slot].props : [{}]).map((data: any) => slots[slot]?.(data)) }) + { default: () => (payloads.slots?.[slot].props?.length ? payloads.slots[slot].props : [{}]).map((data: any) => slots[slot]?.(data)) }) ) } } if (selectiveClient) { if (import.meta.server) { - for (const [id, info] of Object.entries(payloads.components ?? {})) { - const { html, slots } = info - let replaced = html.replaceAll('data-island-uid', `data-island-uid="${uid.value}"`) - for (const slot in slots) { - replaced = replaced.replaceAll(`data-island-slot="${slot}">`, full => full + slots[slot]) + if (payloads.components) { + for (const [id, info] of Object.entries(payloads.components)) { + const { html, slots } = info + let replaced = html.replaceAll('data-island-uid', `data-island-uid="${uid.value}"`) + for (const slot in slots) { + replaced = replaced.replaceAll(`data-island-slot="${slot}">`, full => full + slots[slot]) + } + teleports.push(createVNode(Teleport, { to: `uid=${uid.value};client=${id}` }, { + default: () => [createStaticVNode(replaced, 1)] + })) } - teleports.push(createVNode(Teleport, { to: `uid=${uid.value};client=${id}` }, { - default: () => [createStaticVNode(replaced, 1)] - })) } - } else if (canLoadClientComponent.value) { - for (const [id, info] of Object.entries(payloads.components ?? {})) { + } else if (canLoadClientComponent.value && payloads.components) { + for (const [id, info] of Object.entries(payloads.components)) { const { props, slots } = info const component = components!.get(id)! // use different selectors for even and odd teleportKey to force trigger the teleport diff --git a/packages/nuxt/src/app/composables/asyncData.ts b/packages/nuxt/src/app/composables/asyncData.ts index 4ae5507330..6e8de20f3b 100644 --- a/packages/nuxt/src/app/composables/asyncData.ts +++ b/packages/nuxt/src/app/composables/asyncData.ts @@ -351,13 +351,11 @@ export function useAsyncData< if (instance && !instance._nuxtOnBeforeMountCbs) { instance._nuxtOnBeforeMountCbs = [] const cbs = instance._nuxtOnBeforeMountCbs - if (instance) { - onBeforeMount(() => { - cbs.forEach((cb) => { cb() }) - cbs.splice(0, cbs.length) - }) - onUnmounted(() => cbs.splice(0, cbs.length)) - } + onBeforeMount(() => { + cbs.forEach((cb) => { cb() }) + cbs.splice(0, cbs.length) + }) + onUnmounted(() => cbs.splice(0, cbs.length)) } if (fetchOnServer && nuxtApp.isHydrating && (asyncData.error.value || hasCachedData())) { diff --git a/packages/nuxt/src/app/composables/router.ts b/packages/nuxt/src/app/composables/router.ts index 0f2eac9811..717b14cf43 100644 --- a/packages/nuxt/src/app/composables/router.ts +++ b/packages/nuxt/src/app/composables/router.ts @@ -125,18 +125,16 @@ export const navigateTo = (to: RouteLocationRaw | undefined | null, options?: Na const toPath = typeof to === 'string' ? to : (withQuery((to as RouteLocationPathRaw).path || '/', to.query || {}) + (to.hash || '')) // Early open handler - if (options?.open) { - if (import.meta.client) { - const { target = '_blank', windowFeatures = {} } = options.open + if (import.meta.client && options?.open) { + const { target = '_blank', windowFeatures = {} } = options.open - const features = Object.entries(windowFeatures) - .filter(([_, value]) => value !== undefined) - .map(([feature, value]) => `${feature.toLowerCase()}=${value}`) - .join(', ') + const features = Object.entries(windowFeatures) + .filter(([_, value]) => value !== undefined) + .map(([feature, value]) => `${feature.toLowerCase()}=${value}`) + .join(', ') - open(toPath, target, features) - return Promise.resolve() - } + open(toPath, target, features) + return Promise.resolve() } const isExternal = options?.external || hasProtocol(toPath, { acceptRelative: true }) diff --git a/packages/nuxt/src/app/nuxt.ts b/packages/nuxt/src/app/nuxt.ts index 61aecaf95f..95734eb125 100644 --- a/packages/nuxt/src/app/nuxt.ts +++ b/packages/nuxt/src/app/nuxt.ts @@ -338,7 +338,7 @@ export function createNuxtApp (options: CreateOptions) { } // Expose runtime config - const runtimeConfig = import.meta.server ? options.ssrContext!.runtimeConfig : reactive(nuxtApp.payload.config!) + const runtimeConfig = import.meta.server ? options.ssrContext!.runtimeConfig : nuxtApp.payload.config! nuxtApp.provide('config', runtimeConfig) return nuxtApp diff --git a/packages/nuxt/src/app/plugins/dev-server-logs.ts b/packages/nuxt/src/app/plugins/dev-server-logs.ts index 15ee629db4..edeb39ae8f 100644 --- a/packages/nuxt/src/app/plugins/dev-server-logs.ts +++ b/packages/nuxt/src/app/plugins/dev-server-logs.ts @@ -37,7 +37,11 @@ export default defineNuxtPlugin((nuxtApp) => { nuxtApp.hook('dev:ssr-logs', (logs) => { for (const log of logs) { // deduplicate so we don't print out things that are logged on client - if (!hydrationLogs.size || !hydrationLogs.has(JSON.stringify(log.args))) { + try { + if (!hydrationLogs.size || !hydrationLogs.has(JSON.stringify(log.args))) { + logger.log(normalizeServerLog({ ...log })) + } + } catch { logger.log(normalizeServerLog({ ...log })) } } @@ -50,7 +54,8 @@ export default defineNuxtPlugin((nuxtApp) => { // pass SSR logs after hydration nuxtApp.hooks.hook('app:suspense:resolve', async () => { if (typeof window !== 'undefined') { - const logs = parse(document.getElementById('__NUXT_LOGS__')?.textContent || '[]', nuxtApp._payloadRevivers) as LogObject[] + const content = document.getElementById('__NUXT_LOGS__')?.textContent + const logs = content ? parse(content, nuxtApp._payloadRevivers) as LogObject[] : [] await nuxtApp.hooks.callHook('dev:ssr-logs', logs) } }) diff --git a/packages/nuxt/src/components/templates.ts b/packages/nuxt/src/components/templates.ts index c5b31e8252..44c166eb07 100644 --- a/packages/nuxt/src/components/templates.ts +++ b/packages/nuxt/src/components/templates.ts @@ -109,12 +109,22 @@ export const componentsTypeTemplate = { : c.filePath.replace(/(?<=\w)\.(?!vue)\w+$/g, ''), { wrapper: false })}['${c.export}']` ]) - return `// Generated by components discovery + return ` +interface _GlobalComponents { + ${componentTypes.map(([pascalName, type]) => ` '${pascalName}': ${type}`).join('\n')} + ${componentTypes.map(([pascalName, type]) => ` 'Lazy${pascalName}': ${type}`).join('\n')} +} + +declare module '@vue/runtime-core' { + export interface GlobalComponents extends _GlobalComponents { } +} + +declare module '@vue/runtime-dom' { + export interface GlobalComponents extends _GlobalComponents { } +} + declare module 'vue' { - export interface GlobalComponents { -${componentTypes.map(([pascalName, type]) => ` '${pascalName}': ${type}`).join('\n')} -${componentTypes.map(([pascalName, type]) => ` 'Lazy${pascalName}': ${type}`).join('\n')} - } + export interface GlobalComponents extends _GlobalComponents { } } ${componentTypes.map(([pascalName, type]) => `export const ${pascalName}: ${type}`).join('\n')} diff --git a/packages/nuxt/src/core/runtime/nitro/renderer.ts b/packages/nuxt/src/core/runtime/nitro/renderer.ts index 90d3c89225..1b367f432d 100644 --- a/packages/nuxt/src/core/runtime/nitro/renderer.ts +++ b/packages/nuxt/src/core/runtime/nitro/renderer.ts @@ -649,7 +649,7 @@ const SSR_CLIENT_TELEPORT_MARKER = /^uid=([^;]*);client=(.*)$/ const SSR_CLIENT_SLOT_MARKER = /^island-slot=(?:[^;]*);(.*)$/ function getSlotIslandResponse (ssrContext: NuxtSSRContext): NuxtIslandResponse['slots'] { - if (!ssrContext.islandContext) { return {} } + if (!ssrContext.islandContext || !Object.keys(ssrContext.islandContext.slots).length) { return undefined } const response: NuxtIslandResponse['slots'] = {} for (const slot in ssrContext.islandContext.slots) { response[slot] = { @@ -661,7 +661,7 @@ function getSlotIslandResponse (ssrContext: NuxtSSRContext): NuxtIslandResponse[ } function getClientIslandResponse (ssrContext: NuxtSSRContext): NuxtIslandResponse['components'] { - if (!ssrContext.islandContext) { return {} } + if (!ssrContext.islandContext || !Object.keys(ssrContext.islandContext.components).length) { return undefined } const response: NuxtIslandResponse['components'] = {} for (const clientUid in ssrContext.islandContext.components) { diff --git a/packages/schema/package.json b/packages/schema/package.json index 989b8f7b37..3cb0df058c 100644 --- a/packages/schema/package.json +++ b/packages/schema/package.json @@ -38,7 +38,7 @@ "@types/file-loader": "5.0.4", "@types/pug": "2.0.10", "@types/sass-loader": "8.0.8", - "@unhead/schema": "1.9.1", + "@unhead/schema": "1.9.3", "@vitejs/plugin-vue": "5.0.4", "@vitejs/plugin-vue-jsx": "3.1.0", "@vue/compiler-core": "3.4.21", @@ -52,13 +52,13 @@ "unbuild": "latest", "unctx": "2.3.1", "unenv": "1.9.0", - "vite": "5.2.6", + "vite": "5.2.7", "vue": "3.4.21", "vue-bundle-renderer": "2.0.0", "vue-loader": "17.4.2", "vue-router": "4.3.0", "webpack": "5.91.0", - "webpack-dev-middleware": "7.1.1" + "webpack-dev-middleware": "7.2.0" }, "dependencies": { "@nuxt/ui-templates": "^1.3.1", diff --git a/packages/schema/src/config/typescript.ts b/packages/schema/src/config/typescript.ts index 9fcdf4ada2..d67d6497ee 100644 --- a/packages/schema/src/config/typescript.ts +++ b/packages/schema/src/config/typescript.ts @@ -32,7 +32,22 @@ export default defineUntypedSchema({ */ hoist: { $resolve: (val) => { - const defaults = ['nitropack', 'defu', 'h3', '@unhead/vue', 'vue', 'vue-router', '@nuxt/schema', 'nuxt', 'consola', 'ofetch'] + const defaults = [ + // Nitro auto-imported/augmented dependencies + 'nitropack', + 'defu', + 'h3', + 'consola', + 'ofetch', + // Key nuxt dependencies + '@unhead/vue', + 'vue', + '@vue/runtime-core', + '@vue/runtime-dom', + 'vue-router', + '@nuxt/schema', + 'nuxt' + ] return val === false ? [] : (Array.isArray(val) ? val.concat(defaults) : defaults) } }, diff --git a/packages/vite/package.json b/packages/vite/package.json index 5a26664a96..179734ea31 100644 --- a/packages/vite/package.json +++ b/packages/vite/package.json @@ -58,11 +58,11 @@ "postcss": "^8.4.38", "rollup-plugin-visualizer": "^5.12.0", "std-env": "^3.7.0", - "strip-literal": "^2.0.0", + "strip-literal": "^2.1.0", "ufo": "^1.5.3", "unenv": "^1.9.0", - "unplugin": "^1.10.0", - "vite": "^5.2.6", + "unplugin": "^1.10.1", + "vite": "^5.2.7", "vite-node": "^1.4.0", "vite-plugin-checker": "^0.6.4", "vue-bundle-renderer": "^2.0.0" diff --git a/packages/webpack/package.json b/packages/webpack/package.json index 9b155d1dae..ed5ac84992 100644 --- a/packages/webpack/package.json +++ b/packages/webpack/package.json @@ -58,13 +58,13 @@ "time-fix-plugin": "^2.0.7", "ufo": "^1.5.3", "unenv": "^1.9.0", - "unplugin": "^1.10.0", + "unplugin": "^1.10.1", "url-loader": "^4.1.1", "vue-bundle-renderer": "^2.0.0", "vue-loader": "^17.4.2", "webpack": "^5.91.0", "webpack-bundle-analyzer": "^4.10.1", - "webpack-dev-middleware": "^7.1.1", + "webpack-dev-middleware": "^7.2.0", "webpack-hot-middleware": "^2.26.1", "webpack-virtual-modules": "^0.6.1", "webpackbar": "^6.0.1" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 92c98fd4b7..366b0e3387 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,9 +9,9 @@ overrides: '@nuxt/schema': workspace:* '@nuxt/vite-builder': workspace:* '@nuxt/webpack-builder': workspace:* - rollup: ^4.13.1 + rollup: ^4.13.2 nuxt: workspace:* - vite: 5.2.6 + vite: 5.2.7 vue: 3.4.21 magic-string: ^0.30.8 @@ -27,7 +27,7 @@ importers: version: link:packages/kit '@nuxt/test-utils': specifier: 3.12.0 - version: 3.12.0(@testing-library/vue@8.0.3)(@vue/test-utils@2.4.5)(h3@1.11.1)(happy-dom@14.3.9)(playwright-core@1.42.1)(vite@5.2.6)(vitest@1.4.0)(vue-router@4.3.0)(vue@3.4.21) + version: 3.12.0(@testing-library/vue@8.0.3)(@vue/test-utils@2.4.5)(h3@1.11.1)(happy-dom@14.3.9)(playwright-core@1.42.1)(vite@5.2.7)(vitest@1.4.0)(vue-router@4.3.0)(vue@3.4.21) '@nuxt/webpack-builder': specifier: workspace:* version: link:packages/webpack @@ -38,8 +38,8 @@ importers: specifier: 11.0.4 version: 11.0.4 '@types/node': - specifier: 20.11.30 - version: 20.11.30 + specifier: 20.12.2 + version: 20.12.2 '@types/semver': specifier: 7.5.8 version: 7.5.8 @@ -71,8 +71,8 @@ importers: specifier: 2.29.1 version: 2.29.1(@typescript-eslint/parser@6.8.0)(eslint@8.57.0) eslint-plugin-jsdoc: - specifier: 48.2.1 - version: 48.2.1(eslint@8.57.0) + specifier: 48.2.2 + version: 48.2.2(eslint@8.57.0) eslint-plugin-no-only-tests: specifier: 3.1.0 version: 3.1.0 @@ -138,10 +138,10 @@ importers: version: 1.5.3 vitest: specifier: 1.4.0 - version: 1.4.0(@types/node@20.11.30)(happy-dom@14.3.9) + version: 1.4.0(@types/node@20.12.2)(happy-dom@14.3.9) vitest-environment-nuxt: specifier: 1.0.0 - version: 1.0.0(@testing-library/vue@8.0.3)(@vue/test-utils@2.4.5)(h3@1.11.1)(happy-dom@14.3.9)(playwright-core@1.42.1)(vite@5.2.6)(vitest@1.4.0)(vue-router@4.3.0)(vue@3.4.21) + version: 1.0.0(@testing-library/vue@8.0.3)(@vue/test-utils@2.4.5)(h3@1.11.1)(happy-dom@14.3.9)(playwright-core@1.42.1)(vite@5.2.7)(vitest@1.4.0)(vue-router@4.3.0)(vue@3.4.21) vue: specifier: 3.4.21 version: 3.4.21(typescript@5.4.3) @@ -204,7 +204,7 @@ importers: version: 2.3.1 unimport: specifier: ^3.7.1 - version: 3.7.1(rollup@4.13.1) + version: 3.7.1(rollup@4.13.2) untyped: specifier: ^1.4.2 version: 1.4.2 @@ -228,11 +228,11 @@ importers: specifier: latest version: 2.0.0(typescript@5.4.3) vite: - specifier: 5.2.6 - version: 5.2.6(@types/node@20.11.30) + specifier: 5.2.7 + version: 5.2.7(@types/node@20.12.2) vitest: specifier: 1.4.0 - version: 1.4.0(@types/node@20.11.30)(happy-dom@14.3.9) + version: 1.4.0(@types/node@20.12.2)(happy-dom@14.3.9) webpack: specifier: 5.91.0 version: 5.91.0 @@ -243,8 +243,8 @@ importers: specifier: ^2.0.2 version: 2.0.2 '@nuxt/devtools': - specifier: ^1.1.4 - version: 1.1.4(@unocss/reset@0.58.6)(floating-vue@5.2.2)(nuxt@packages+nuxt)(rollup@4.13.1)(unocss@0.58.6)(vite@5.2.6)(vue@3.4.21) + specifier: ^1.1.5 + version: 1.1.5(@unocss/reset@0.58.6)(floating-vue@5.2.2)(nuxt@packages+nuxt)(rollup@4.13.2)(unocss@0.58.6)(vite@5.2.7)(vue@3.4.21) '@nuxt/kit': specifier: workspace:* version: link:../kit @@ -264,14 +264,14 @@ importers: specifier: ^14.18.0 || >=16.10.0 version: 20.11.30 '@unhead/dom': - specifier: ^1.9.1 - version: 1.9.1 + specifier: ^1.9.3 + version: 1.9.3 '@unhead/ssr': - specifier: ^1.9.1 - version: 1.9.1 + specifier: ^1.9.3 + version: 1.9.3 '@unhead/vue': - specifier: ^1.9.1 - version: 1.9.1(vue@3.4.21) + specifier: ^1.9.3 + version: 1.9.3(vue@3.4.21) '@vue/shared': specifier: ^3.4.21 version: 3.4.21 @@ -285,8 +285,8 @@ importers: specifier: ^3.6.0 version: 3.6.0 cookie-es: - specifier: ^1.0.0 - version: 1.0.0 + specifier: ^1.1.0 + version: 1.1.0 defu: specifier: ^6.1.4 version: 6.1.4 @@ -366,8 +366,8 @@ importers: specifier: ^3.7.0 version: 3.7.0 strip-literal: - specifier: ^2.0.0 - version: 2.0.0 + specifier: ^2.1.0 + version: 2.1.0 ufo: specifier: ^1.5.3 version: 1.5.3 @@ -385,13 +385,13 @@ importers: version: 1.9.0 unimport: specifier: ^3.7.1 - version: 3.7.1(rollup@4.13.1) + version: 3.7.1(rollup@4.13.2) unplugin: - specifier: ^1.10.0 - version: 1.10.0 + specifier: ^1.10.1 + version: 1.10.1 unplugin-vue-router: specifier: ^0.7.0 - version: 0.7.0(rollup@4.13.1)(vue-router@4.3.0)(vue@3.4.21) + version: 0.7.0(rollup@4.13.2)(vue-router@4.3.0)(vue@3.4.21) unstorage: specifier: ^1.10.2 version: 1.10.2(ioredis@5.3.2) @@ -422,13 +422,13 @@ importers: version: 11.0.4 '@vitejs/plugin-vue': specifier: 5.0.4 - version: 5.0.4(vite@5.2.6)(vue@3.4.21) + version: 5.0.4(vite@5.2.7)(vue@3.4.21) unbuild: specifier: latest version: 2.0.0(typescript@5.4.3) vite: - specifier: 5.2.6 - version: 5.2.6(@types/node@20.11.30) + specifier: 5.2.7 + version: 5.2.7(@types/node@20.11.30) vitest: specifier: 1.4.0 version: 1.4.0(@types/node@20.11.30)(happy-dom@14.3.9) @@ -464,7 +464,7 @@ importers: version: 1.5.3 unimport: specifier: ^3.7.1 - version: 3.7.1(rollup@4.13.1) + version: 3.7.1(rollup@4.13.2) untyped: specifier: ^1.4.2 version: 1.4.2 @@ -482,14 +482,14 @@ importers: specifier: 8.0.8 version: 8.0.8 '@unhead/schema': - specifier: 1.9.1 - version: 1.9.1 + specifier: 1.9.3 + version: 1.9.3 '@vitejs/plugin-vue': specifier: 5.0.4 - version: 5.0.4(vite@5.2.6)(vue@3.4.21) + version: 5.0.4(vite@5.2.7)(vue@3.4.21) '@vitejs/plugin-vue-jsx': specifier: 3.1.0 - version: 3.1.0(vite@5.2.6)(vue@3.4.21) + version: 3.1.0(vite@5.2.7)(vue@3.4.21) '@vue/compiler-core': specifier: 3.4.21 version: 3.4.21 @@ -524,8 +524,8 @@ importers: specifier: 1.9.0 version: 1.9.0 vite: - specifier: 5.2.6 - version: 5.2.6(@types/node@20.11.30) + specifier: 5.2.7 + version: 5.2.7(@types/node@20.12.2) vue: specifier: 3.4.21 version: 3.4.21(typescript@5.4.3) @@ -542,8 +542,8 @@ importers: specifier: 5.91.0 version: 5.91.0 webpack-dev-middleware: - specifier: 7.1.1 - version: 7.1.1(webpack@5.91.0) + specifier: 7.2.0 + version: 7.2.0(webpack@5.91.0) packages/vite: dependencies: @@ -552,13 +552,13 @@ importers: version: link:../kit '@rollup/plugin-replace': specifier: ^5.0.5 - version: 5.0.5(rollup@4.13.1) + version: 5.0.5(rollup@4.13.2) '@vitejs/plugin-vue': specifier: ^5.0.4 - version: 5.0.4(vite@5.2.6)(vue@3.4.21) + version: 5.0.4(vite@5.2.7)(vue@3.4.21) '@vitejs/plugin-vue-jsx': specifier: ^3.1.0 - version: 3.1.0(vite@5.2.6)(vue@3.4.21) + version: 3.1.0(vite@5.2.7)(vue@3.4.21) autoprefixer: specifier: ^10.4.19 version: 10.4.19(postcss@8.4.38) @@ -621,13 +621,13 @@ importers: version: 8.4.38 rollup-plugin-visualizer: specifier: ^5.12.0 - version: 5.12.0(rollup@4.13.1) + version: 5.12.0(rollup@4.13.2) std-env: specifier: ^3.7.0 version: 3.7.0 strip-literal: - specifier: ^2.0.0 - version: 2.0.0 + specifier: ^2.1.0 + version: 2.1.0 ufo: specifier: ^1.5.3 version: 1.5.3 @@ -635,17 +635,17 @@ importers: specifier: ^1.9.0 version: 1.9.0 unplugin: - specifier: ^1.10.0 - version: 1.10.0 + specifier: ^1.10.1 + version: 1.10.1 vite: - specifier: 5.2.6 - version: 5.2.6(@types/node@20.11.30) + specifier: 5.2.7 + version: 5.2.7(@types/node@20.12.2) vite-node: specifier: ^1.4.0 - version: 1.4.0(@types/node@20.11.30) + version: 1.4.0(@types/node@20.12.2) vite-plugin-checker: specifier: ^0.6.4 - version: 0.6.4(eslint@8.57.0)(typescript@5.4.3)(vite@5.2.6)(vue-tsc@2.0.7) + version: 0.6.4(eslint@8.57.0)(typescript@5.4.3)(vite@5.2.7)(vue-tsc@2.0.7) vue-bundle-renderer: specifier: ^2.0.0 version: 2.0.0 @@ -771,8 +771,8 @@ importers: specifier: ^1.9.0 version: 1.9.0 unplugin: - specifier: ^1.10.0 - version: 1.10.0 + specifier: ^1.10.1 + version: 1.10.1 url-loader: specifier: ^4.1.1 version: 4.1.1(file-loader@6.2.0)(webpack@5.91.0) @@ -789,8 +789,8 @@ importers: specifier: ^4.10.1 version: 4.10.1 webpack-dev-middleware: - specifier: ^7.1.1 - version: 7.1.1(webpack@5.91.0) + specifier: ^7.2.0 + version: 7.2.0(webpack@5.91.0) webpack-hot-middleware: specifier: ^2.26.1 version: 2.26.1 @@ -868,7 +868,7 @@ importers: version: 1.3.4 vitest: specifier: 1.0.2 - version: 1.0.2(@types/node@20.11.30)(happy-dom@14.3.9) + version: 1.0.2(@types/node@20.12.2)(happy-dom@14.3.9) vue: specifier: 3.4.21 version: 3.4.21(typescript@5.4.3) @@ -2004,7 +2004,7 @@ packages: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.5 '@types/istanbul-reports': 3.0.3 - '@types/node': 20.11.30 + '@types/node': 20.12.2 '@types/yargs': 17.0.28 chalk: 4.1.2 dev: false @@ -2178,21 +2178,21 @@ packages: resolution: {integrity: sha512-GBzP8zOc7CGWyFQS6dv1lQz8VVpz5C2yRszbXufwG/9zhStTIH50EtD87NmWbTMwXDvZLNg8GIpb1UFdH93JCA==} dev: false - /@nuxt/devtools-kit@1.1.4(nuxt@packages+nuxt)(vite@5.2.6): - resolution: {integrity: sha512-/aZW/vn09vJML3Bi6dP9m51EN8eyeqHbyCyeuGsPUy/2GIlziaNHTaFlNWmLLkezdS4bhEGSr38Z5sa6x8FchQ==} + /@nuxt/devtools-kit@1.1.5(nuxt@packages+nuxt)(vite@5.2.7): + resolution: {integrity: sha512-Nb/NKFCRtxyqcPD6snB52rXtbRQMjGtn3ncpa8cLWsnoqnkd9emQ4uwV8IwCNxTnqUBtbGU79/TlJ79SKH9TAw==} peerDependencies: nuxt: workspace:* - vite: 5.2.6 + vite: 5.2.7 dependencies: '@nuxt/kit': link:packages/kit '@nuxt/schema': link:packages/schema execa: 7.2.0 nuxt: link:packages/nuxt - vite: 5.2.6(@types/node@20.11.30) + vite: 5.2.7(@types/node@20.11.30) dev: false - /@nuxt/devtools-wizard@1.1.4: - resolution: {integrity: sha512-BTobds8a5fwucbHwMb42V53xgPv78SzAt/I44Dz0/uI8LxSKeX45ogEERDHB9hnRMjC/ZBTv1Z6HpGOmoB4Sxg==} + /@nuxt/devtools-wizard@1.1.5: + resolution: {integrity: sha512-bWLgLvYFbYCQYlLPttZaUo58cS1VJo1uEFguHaCwZ7Fzkm4Iv+lFTv5BzD+gOHwohaXLr3YecgZOO4YNJTgXyA==} hasBin: true dependencies: consola: 3.2.3 @@ -2207,20 +2207,20 @@ packages: semver: 7.6.0 dev: false - /@nuxt/devtools@1.1.4(@unocss/reset@0.58.6)(floating-vue@5.2.2)(nuxt@packages+nuxt)(rollup@4.13.1)(unocss@0.58.6)(vite@5.2.6)(vue@3.4.21): - resolution: {integrity: sha512-mJFSB7zbzT1oBP9yf82siI7xIvhZleVuVLiSOCCks8+DhJGgcRPLIDNRm23aFu6YWO0pEv19TiISExiLAkJp2g==} + /@nuxt/devtools@1.1.5(@unocss/reset@0.58.6)(floating-vue@5.2.2)(nuxt@packages+nuxt)(rollup@4.13.2)(unocss@0.58.6)(vite@5.2.7)(vue@3.4.21): + resolution: {integrity: sha512-aDEqz4L1GDj4DDnX7PL9ety3Wx0kLyKTb2JOSoJR8uX09fC3gonCvj/gYHLSSIKqhPasUjoOO5RPCtT+r9dtsA==} hasBin: true peerDependencies: nuxt: workspace:* - vite: 5.2.6 + vite: 5.2.7 dependencies: '@antfu/utils': 0.7.7 - '@nuxt/devtools-kit': 1.1.4(nuxt@packages+nuxt)(vite@5.2.6) - '@nuxt/devtools-wizard': 1.1.4 + '@nuxt/devtools-kit': 1.1.5(nuxt@packages+nuxt)(vite@5.2.7) + '@nuxt/devtools-wizard': 1.1.5 '@nuxt/kit': link:packages/kit - '@vue/devtools-applet': 7.0.22(@unocss/reset@0.58.6)(floating-vue@5.2.2)(unocss@0.58.6)(vite@5.2.6)(vue@3.4.21) - '@vue/devtools-core': 7.0.22(vite@5.2.6)(vue@3.4.21) - '@vue/devtools-kit': 7.0.22(vue@3.4.21) + '@vue/devtools-applet': 7.0.25(@unocss/reset@0.58.6)(floating-vue@5.2.2)(unocss@0.58.6)(vite@5.2.7)(vue@3.4.21) + '@vue/devtools-core': 7.0.25(vite@5.2.7)(vue@3.4.21) + '@vue/devtools-kit': 7.0.25(vue@3.4.21) birpc: 0.2.17 consola: 3.2.3 cronstrue: 2.48.0 @@ -2248,10 +2248,10 @@ packages: semver: 7.6.0 simple-git: 3.23.0 sirv: 2.0.4 - unimport: 3.7.1(rollup@4.13.1) - vite: 5.2.6(@types/node@20.11.30) - vite-plugin-inspect: 0.8.3(@nuxt/kit@packages+kit)(rollup@4.13.1)(vite@5.2.6) - vite-plugin-vue-inspector: 4.0.2(vite@5.2.6) + unimport: 3.7.1(rollup@4.13.2) + vite: 5.2.7(@types/node@20.11.30) + vite-plugin-inspect: 0.8.3(@nuxt/kit@packages+kit)(rollup@4.13.2)(vite@5.2.7) + vite-plugin-vue-inspector: 4.0.2(vite@5.2.7) which: 3.0.1 ws: 8.16.0 transitivePeerDependencies: @@ -2328,7 +2328,7 @@ packages: rc9: 2.1.1 std-env: 3.7.0 - /@nuxt/test-utils@3.12.0(@testing-library/vue@8.0.3)(@vue/test-utils@2.4.5)(h3@1.11.1)(happy-dom@14.3.9)(playwright-core@1.42.1)(vite@5.2.6)(vitest@1.4.0)(vue-router@4.3.0)(vue@3.4.21): + /@nuxt/test-utils@3.12.0(@testing-library/vue@8.0.3)(@vue/test-utils@2.4.5)(h3@1.11.1)(happy-dom@14.3.9)(playwright-core@1.42.1)(vite@5.2.7)(vitest@1.4.0)(vue-router@4.3.0)(vue@3.4.21): resolution: {integrity: sha512-Q3HP53TDIYeqHT65r31HZhK/gRwVBmchSdVj1tfiYECyqstckvsQ4Cyt/GX/XmD7cLdD3d5aHow8LaMfP+BSqQ==} engines: {node: ^14.18.0 || >=16.10.0} peerDependencies: @@ -2342,7 +2342,7 @@ packages: happy-dom: ^9.10.9 || ^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0 jsdom: ^22.0.0 || ^23.0.0 || ^24.0.0 playwright-core: ^1.34.3 - vite: 5.2.6 + vite: 5.2.7 vitest: ^0.34.6 || ^1.0.0 vue: 3.4.21 vue-router: ^4.0.0 @@ -2394,10 +2394,10 @@ packages: std-env: 3.7.0 ufo: 1.5.3 unenv: 1.9.0 - unplugin: 1.10.0 - vite: 5.2.6(@types/node@20.11.30) - vitest: 1.4.0(@types/node@20.11.30)(happy-dom@14.3.9) - vitest-environment-nuxt: 1.0.0(@testing-library/vue@8.0.3)(@vue/test-utils@2.4.5)(h3@1.11.1)(happy-dom@14.3.9)(playwright-core@1.42.1)(vite@5.2.6)(vitest@1.4.0)(vue-router@4.3.0)(vue@3.4.21) + unplugin: 1.10.1 + vite: 5.2.7(@types/node@20.12.2) + vitest: 1.4.0(@types/node@20.12.2)(happy-dom@14.3.9) + vitest-environment-nuxt: 1.0.0(@testing-library/vue@8.0.3)(@vue/test-utils@2.4.5)(h3@1.11.1)(happy-dom@14.3.9)(playwright-core@1.42.1)(vite@5.2.7)(vitest@1.4.0)(vue-router@4.3.0)(vue@3.4.21) vue: 3.4.21(typescript@5.4.3) vue-router: 4.3.0(vue@3.4.21) dev: true @@ -2589,101 +2589,101 @@ packages: resolution: {integrity: sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ==} dev: false - /@rollup/plugin-alias@5.1.0(rollup@4.13.1): + /@rollup/plugin-alias@5.1.0(rollup@4.13.2): resolution: {integrity: sha512-lpA3RZ9PdIG7qqhEfv79tBffNaoDuukFDrmhLqg9ifv99u/ehn+lOg30x2zmhf8AQqQUZaMk/B9fZraQ6/acDQ==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: ^4.13.1 + rollup: ^4.13.2 peerDependenciesMeta: rollup: optional: true dependencies: - rollup: 4.13.1 + rollup: 4.13.2 slash: 4.0.0 - /@rollup/plugin-commonjs@25.0.7(rollup@4.13.1): + /@rollup/plugin-commonjs@25.0.7(rollup@4.13.2): resolution: {integrity: sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: ^4.13.1 + rollup: ^4.13.2 peerDependenciesMeta: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) commondir: 1.0.1 estree-walker: 2.0.2 glob: 8.1.0 is-reference: 1.2.1 magic-string: 0.30.8 - rollup: 4.13.1 + rollup: 4.13.2 - /@rollup/plugin-inject@5.0.5(rollup@4.13.1): + /@rollup/plugin-inject@5.0.5(rollup@4.13.2): resolution: {integrity: sha512-2+DEJbNBoPROPkgTDNe8/1YXWcqxbN5DTjASVIOx8HS+pITXushyNiBV56RB08zuptzz8gT3YfkqriTBVycepg==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: ^4.13.1 + rollup: ^4.13.2 peerDependenciesMeta: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) estree-walker: 2.0.2 magic-string: 0.30.8 - rollup: 4.13.1 + rollup: 4.13.2 - /@rollup/plugin-json@6.1.0(rollup@4.13.1): + /@rollup/plugin-json@6.1.0(rollup@4.13.2): resolution: {integrity: sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: ^4.13.1 + rollup: ^4.13.2 peerDependenciesMeta: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) - rollup: 4.13.1 + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) + rollup: 4.13.2 - /@rollup/plugin-node-resolve@15.2.3(rollup@4.13.1): + /@rollup/plugin-node-resolve@15.2.3(rollup@4.13.2): resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: ^4.13.1 + rollup: ^4.13.2 peerDependenciesMeta: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-builtin-module: 3.2.1 is-module: 1.0.0 resolve: 1.22.8 - rollup: 4.13.1 + rollup: 4.13.2 - /@rollup/plugin-replace@5.0.5(rollup@4.13.1): + /@rollup/plugin-replace@5.0.5(rollup@4.13.2): resolution: {integrity: sha512-rYO4fOi8lMaTg/z5Jb+hKnrHHVn8j2lwkqwyS4kTRhKyWOLf2wST2sWXr4WzWiTcoHTp2sTjqUbqIj2E39slKQ==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: ^4.13.1 + rollup: ^4.13.2 peerDependenciesMeta: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) magic-string: 0.30.8 - rollup: 4.13.1 + rollup: 4.13.2 - /@rollup/plugin-terser@0.4.4(rollup@4.13.1): + /@rollup/plugin-terser@0.4.4(rollup@4.13.2): resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: ^4.13.1 + rollup: ^4.13.2 peerDependenciesMeta: rollup: optional: true dependencies: - rollup: 4.13.1 + rollup: 4.13.2 serialize-javascript: 6.0.2 smob: 1.4.1 terser: 5.27.0 @@ -2695,11 +2695,11 @@ packages: estree-walker: 2.0.2 picomatch: 2.3.1 - /@rollup/pluginutils@5.1.0(rollup@4.13.1): + /@rollup/pluginutils@5.1.0(rollup@4.13.2): resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: ^4.13.1 + rollup: ^4.13.2 peerDependenciesMeta: rollup: optional: true @@ -2707,101 +2707,108 @@ packages: '@types/estree': 1.0.5 estree-walker: 2.0.2 picomatch: 2.3.1 - rollup: 4.13.1 + rollup: 4.13.2 - /@rollup/rollup-android-arm-eabi@4.13.1: - resolution: {integrity: sha512-4C4UERETjXpC4WpBXDbkgNVgHyWfG3B/NKY46e7w5H134UDOFqUJKpsLm0UYmuupW+aJmRgeScrDNfvZ5WV80A==} + /@rollup/rollup-android-arm-eabi@4.13.2: + resolution: {integrity: sha512-3XFIDKWMFZrMnao1mJhnOT1h2g0169Os848NhhmGweEcfJ4rCi+3yMCOLG4zA61rbJdkcrM/DjVZm9Hg5p5w7g==} cpu: [arm] os: [android] requiresBuild: true optional: true - /@rollup/rollup-android-arm64@4.13.1: - resolution: {integrity: sha512-TrTaFJ9pXgfXEiJKQ3yQRelpQFqgRzVR9it8DbeRzG0RX7mKUy0bqhCFsgevwXLJepQKTnLl95TnPGf9T9AMOA==} + /@rollup/rollup-android-arm64@4.13.2: + resolution: {integrity: sha512-GdxxXbAuM7Y/YQM9/TwwP+L0omeE/lJAR1J+olu36c3LqqZEBdsIWeQ91KBe6nxwOnb06Xh7JS2U5ooWU5/LgQ==} cpu: [arm64] os: [android] requiresBuild: true optional: true - /@rollup/rollup-darwin-arm64@4.13.1: - resolution: {integrity: sha512-fz7jN6ahTI3cKzDO2otQuybts5cyu0feymg0bjvYCBrZQ8tSgE8pc0sSNEuGvifrQJWiwx9F05BowihmLxeQKw==} + /@rollup/rollup-darwin-arm64@4.13.2: + resolution: {integrity: sha512-mCMlpzlBgOTdaFs83I4XRr8wNPveJiJX1RLfv4hggyIVhfB5mJfN4P8Z6yKh+oE4Luz+qq1P3kVdWrCKcMYrrA==} cpu: [arm64] os: [darwin] requiresBuild: true optional: true - /@rollup/rollup-darwin-x64@4.13.1: - resolution: {integrity: sha512-WTvdz7SLMlJpektdrnWRUN9C0N2qNHwNbWpNo0a3Tod3gb9leX+yrYdCeB7VV36OtoyiPAivl7/xZ3G1z5h20g==} + /@rollup/rollup-darwin-x64@4.13.2: + resolution: {integrity: sha512-yUoEvnH0FBef/NbB1u6d3HNGyruAKnN74LrPAfDQL3O32e3k3OSfLrPgSJmgb3PJrBZWfPyt6m4ZhAFa2nZp2A==} cpu: [x64] os: [darwin] requiresBuild: true optional: true - /@rollup/rollup-linux-arm-gnueabihf@4.13.1: - resolution: {integrity: sha512-dBHQl+7wZzBYcIF6o4k2XkAfwP2ks1mYW2q/Gzv9n39uDcDiAGDqEyml08OdY0BIct0yLSPkDTqn4i6czpBLLw==} + /@rollup/rollup-linux-arm-gnueabihf@4.13.2: + resolution: {integrity: sha512-GYbLs5ErswU/Xs7aGXqzc3RrdEjKdmoCrgzhJWyFL0r5fL3qd1NPcDKDowDnmcoSiGJeU68/Vy+OMUluRxPiLQ==} cpu: [arm] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-arm64-gnu@4.13.1: - resolution: {integrity: sha512-bur4JOxvYxfrAmocRJIW0SADs3QdEYK6TQ7dTNz6Z4/lySeu3Z1H/+tl0a4qDYv0bCdBpUYM0sYa/X+9ZqgfSQ==} + /@rollup/rollup-linux-arm64-gnu@4.13.2: + resolution: {integrity: sha512-L1+D8/wqGnKQIlh4Zre9i4R4b4noxzH5DDciyahX4oOz62CphY7WDWqJoQ66zNR4oScLNOqQJfNSIAe/6TPUmQ==} cpu: [arm64] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-arm64-musl@4.13.1: - resolution: {integrity: sha512-ssp77SjcDIUSoUyj7DU7/5iwM4ZEluY+N8umtCT9nBRs3u045t0KkW02LTyHouHDomnMXaXSZcCSr2bdMK63kA==} + /@rollup/rollup-linux-arm64-musl@4.13.2: + resolution: {integrity: sha512-tK5eoKFkXdz6vjfkSTCupUzCo40xueTOiOO6PeEIadlNBkadH1wNOH8ILCPIl8by/Gmb5AGAeQOFeLev7iZDOA==} cpu: [arm64] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-riscv64-gnu@4.13.1: - resolution: {integrity: sha512-Jv1DkIvwEPAb+v25/Unrnnq9BO3F5cbFPT821n3S5litkz+O5NuXuNhqtPx5KtcwOTtaqkTsO+IVzJOsxd11aQ==} + /@rollup/rollup-linux-powerpc64le-gnu@4.13.2: + resolution: {integrity: sha512-zvXvAUGGEYi6tYhcDmb9wlOckVbuD+7z3mzInCSTACJ4DQrdSLPNUeDIcAQW39M3q6PDquqLWu7pnO39uSMRzQ==} + cpu: [ppc64le] + os: [linux] + requiresBuild: true + optional: true + + /@rollup/rollup-linux-riscv64-gnu@4.13.2: + resolution: {integrity: sha512-C3GSKvMtdudHCN5HdmAMSRYR2kkhgdOfye4w0xzyii7lebVr4riCgmM6lRiSCnJn2w1Xz7ZZzHKuLrjx5620kw==} cpu: [riscv64] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-s390x-gnu@4.13.1: - resolution: {integrity: sha512-U564BrhEfaNChdATQaEODtquCC7Ez+8Hxz1h5MAdMYj0AqD0GA9rHCpElajb/sQcaFL6NXmHc5O+7FXpWMa73Q==} + /@rollup/rollup-linux-s390x-gnu@4.13.2: + resolution: {integrity: sha512-l4U0KDFwzD36j7HdfJ5/TveEQ1fUTjFFQP5qIt9gBqBgu1G8/kCaq5Ok05kd5TG9F8Lltf3MoYsUMw3rNlJ0Yg==} cpu: [s390x] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-x64-gnu@4.13.1: - resolution: {integrity: sha512-zGRDulLTeDemR8DFYyFIQ8kMP02xpUsX4IBikc7lwL9PrwR3gWmX2NopqiGlI2ZVWMl15qZeUjumTwpv18N7sQ==} + /@rollup/rollup-linux-x64-gnu@4.13.2: + resolution: {integrity: sha512-xXMLUAMzrtsvh3cZ448vbXqlUa7ZL8z0MwHp63K2IIID2+DeP5iWIT6g1SN7hg1VxPzqx0xZdiDM9l4n9LRU1A==} cpu: [x64] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-x64-musl@4.13.1: - resolution: {integrity: sha512-VTk/MveyPdMFkYJJPCkYBw07KcTkGU2hLEyqYMsU4NjiOfzoaDTW9PWGRsNwiOA3qI0k/JQPjkl/4FCK1smskQ==} + /@rollup/rollup-linux-x64-musl@4.13.2: + resolution: {integrity: sha512-M/JYAWickafUijWPai4ehrjzVPKRCyDb1SLuO+ZyPfoXgeCEAlgPkNXewFZx0zcnoIe3ay4UjXIMdXQXOZXWqA==} cpu: [x64] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-win32-arm64-msvc@4.13.1: - resolution: {integrity: sha512-L+hX8Dtibb02r/OYCsp4sQQIi3ldZkFI0EUkMTDwRfFykXBPptoz/tuuGqEd3bThBSLRWPR6wsixDSgOx/U3Zw==} + /@rollup/rollup-win32-arm64-msvc@4.13.2: + resolution: {integrity: sha512-2YWwoVg9KRkIKaXSh0mz3NmfurpmYoBBTAXA9qt7VXk0Xy12PoOP40EFuau+ajgALbbhi4uTj3tSG3tVseCjuA==} cpu: [arm64] os: [win32] requiresBuild: true optional: true - /@rollup/rollup-win32-ia32-msvc@4.13.1: - resolution: {integrity: sha512-+dI2jVPfM5A8zme8riEoNC7UKk0Lzc7jCj/U89cQIrOjrZTCWZl/+IXUeRT2rEZ5j25lnSA9G9H1Ob9azaF/KQ==} + /@rollup/rollup-win32-ia32-msvc@4.13.2: + resolution: {integrity: sha512-2FSsE9aQ6OWD20E498NYKEQLneShWes0NGMPQwxWOdws35qQXH+FplabOSP5zEe1pVjurSDOGEVCE2agFwSEsw==} cpu: [ia32] os: [win32] requiresBuild: true optional: true - /@rollup/rollup-win32-x64-msvc@4.13.1: - resolution: {integrity: sha512-YY1Exxo2viZ/O2dMHuwQvimJ0SqvL+OAWQLLY6rvXavgQKjhQUzn7nc1Dd29gjB5Fqi00nrBWctJBOyfVMIVxw==} + /@rollup/rollup-win32-x64-msvc@4.13.2: + resolution: {integrity: sha512-7h7J2nokcdPePdKykd8wtc8QqqkqxIrUz7MHj6aNr8waBRU//NLDVnNjQnqQO6fqtjrtCdftpbTuOKAyrAQETQ==} cpu: [x64] os: [win32] requiresBuild: true @@ -2977,7 +2984,7 @@ packages: /@types/connect@3.4.37: resolution: {integrity: sha512-zBUSRqkfZ59OcwXon4HVxhx5oWCJmc0OtBTK05M+p0dYjgN6iTwIL2T/WbsQZrEsdnwaF9cWQ+azOnpPvIqY3Q==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.12.2 dev: true /@types/debug@4.1.12: @@ -3027,7 +3034,7 @@ packages: /@types/http-proxy@1.17.14: resolution: {integrity: sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.12.2 /@types/istanbul-lib-coverage@2.0.5: resolution: {integrity: sha512-zONci81DZYCZjiLe0r6equvZut0b+dBRPBN5kBDjsONnutYNtJMoWQ9uR2RkL1gLG9NMTzvf+29e5RFfPbeKhQ==} @@ -3054,7 +3061,7 @@ packages: /@types/jsonfile@6.1.2: resolution: {integrity: sha512-8t92P+oeW4d/CRQfJaSqEwXujrhH4OEeHRjGU3v1Q8mUS8GPF3yiX26sw4svv6faL2HfBtGTe2xWIoVgN3dy9w==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.12.2 dev: true /@types/lodash-es@4.17.12: @@ -3080,7 +3087,7 @@ packages: /@types/node-sass@4.11.6: resolution: {integrity: sha512-Qkf5Fs9zzsXchenUY7oVdIHyv8FtPgqIXqOJzhh3FDqpYjqvc/gtZ3hlZVFmKQhl7wyI4+WkRbYufYC5pfY7iw==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.12.2 dev: true /@types/node@20.11.30: @@ -3088,6 +3095,11 @@ packages: dependencies: undici-types: 5.26.5 + /@types/node@20.12.2: + resolution: {integrity: sha512-zQ0NYO87hyN6Xrclcqp7f8ZbXNbRfoGWNcMvHTPQp9UUrwI0mI7XBz+cu7/W6/VClYo2g63B0cjull/srU7LgQ==} + dependencies: + undici-types: 5.26.5 + /@types/normalize-package-data@2.4.4: resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} dev: true @@ -3171,7 +3183,7 @@ packages: /@types/webpack-sources@3.2.1: resolution: {integrity: sha512-iLC3Fsx62ejm3ST3PQ8vBMC54Rb3EoCprZjeJGI5q+9QjfDLGt9jeg/k245qz1G9AQnORGk0vqPicJFPT1QODQ==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.12.2 '@types/source-list-map': 0.1.4 source-map: 0.7.4 dev: true @@ -3186,7 +3198,7 @@ packages: /@types/webpack@4.41.34: resolution: {integrity: sha512-CN2aOGrR3zbMc2v+cKqzaClYP1ldkpPOgtdNvgX+RmlWCSWxHxpzz6WSCVQZRkF8D60ROlkRzAoEpgjWQ+bd2g==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.12.2 '@types/tapable': 1.0.10 '@types/uglify-js': 3.17.3 '@types/webpack-sources': 3.2.1 @@ -3346,67 +3358,67 @@ packages: /@ungap/structured-clone@1.2.0: resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - /@unhead/dom@1.9.1: - resolution: {integrity: sha512-5YVT8pyg7Mw8niWwklP8nFKK9WLIvaK4O3tXvqpW9OxSAexJG576bh6FR0hEtSDLBkJh+pI8mMMMIuzSdK/whA==} + /@unhead/dom@1.9.3: + resolution: {integrity: sha512-l7KO6zv8T/yKpWOtcKww3k6RLENEiwiapoiPwtKlwWBFJekSjgM1+1AVu58yWqadFYHGP0/XhMwxKrOaOL+Vkw==} dependencies: - '@unhead/schema': 1.9.1 - '@unhead/shared': 1.9.1 + '@unhead/schema': 1.9.3 + '@unhead/shared': 1.9.3 dev: false - /@unhead/schema@1.9.1: - resolution: {integrity: sha512-wCJKNx4l837NEVMWP3MnUfkgsnMyuXwYs7+5VvbYzAWbnZSvQt/K10xDV0N7ft9RSlPfgukVVG+gtARm1kGVHQ==} + /@unhead/schema@1.9.3: + resolution: {integrity: sha512-emFHDYxn6u5SVwSRXMpYBCYKBua+GCjUwTLLdUupInthW3UraSUuXakmv06wDvejE8pTrBOPrGWescIYmwm69A==} dependencies: hookable: 5.5.3 zhead: 2.2.4 - /@unhead/shared@1.9.1: - resolution: {integrity: sha512-rZgzXzOeF4vu2bJJAkHJckgPgWGfpDA3/vesPhJIZGs2NkGYi9lDwMUeJ90HKCMJv1+JRAcPOokjRi6vRlnQpg==} + /@unhead/shared@1.9.3: + resolution: {integrity: sha512-9wJ+wNmAVDCsCFKE3YHMwNkmFqKzCqQfp53ABJHQFOvY336s4nMWtiMNMjxF4aY4pJk8Qpwd8dRlgpLlyH0KZg==} dependencies: - '@unhead/schema': 1.9.1 + '@unhead/schema': 1.9.3 dev: false - /@unhead/ssr@1.9.1: - resolution: {integrity: sha512-ojY5umX2rtEvmsAFX935DPxk+rZfmgLOEMP1etJGYmCh2GQskK4USjUp9uYJyf0DP0xh+42R4a06e5602CIWHQ==} + /@unhead/ssr@1.9.3: + resolution: {integrity: sha512-oFFynkmAoHoDU2uG3otBnYOj5rmi14fqaUpA4tzsRlyLiwyF3Hd8nXec9YM7JaBzstoiy2NGf7dTfY7eNc8NoQ==} dependencies: - '@unhead/schema': 1.9.1 - '@unhead/shared': 1.9.1 + '@unhead/schema': 1.9.3 + '@unhead/shared': 1.9.3 dev: false - /@unhead/vue@1.9.1(vue@3.4.21): - resolution: {integrity: sha512-clSKIkwtw26Lx5tR7ecJ/zvyFJkghvJU+jt2liQ4XYQb/Qaveh8L7gqsI1RKUuKaXAjlo2Z4Jpp1v9nHxA0heg==} + /@unhead/vue@1.9.3(vue@3.4.21): + resolution: {integrity: sha512-DrTOTUOvKZlL7nVhsu9gCNXiGv/ErqHqSOrbNGqahlnOFJgJQD+9VVr904K/u75ISg00ksAzKfFPN15FgMovMw==} peerDependencies: vue: 3.4.21 dependencies: - '@unhead/schema': 1.9.1 - '@unhead/shared': 1.9.1 + '@unhead/schema': 1.9.3 + '@unhead/shared': 1.9.3 hookable: 5.5.3 - unhead: 1.9.1 + unhead: 1.9.3 vue: 3.4.21(typescript@5.4.3) dev: false - /@unocss/astro@0.58.6(rollup@4.13.1)(vite@5.2.6): + /@unocss/astro@0.58.6(rollup@4.13.2)(vite@5.2.7): resolution: {integrity: sha512-0BvbhEp5Ln6wFNnhISusB2hcfycWkdgnjlFMcLT69efvj4G39MzB6JYT/1qiidLfpj35HcqkpBz7TfZ4bUmOAw==} peerDependencies: - vite: 5.2.6 + vite: 5.2.7 peerDependenciesMeta: vite: optional: true dependencies: '@unocss/core': 0.58.6 '@unocss/reset': 0.58.6 - '@unocss/vite': 0.58.6(rollup@4.13.1)(vite@5.2.6) - vite: 5.2.6(@types/node@20.11.30) + '@unocss/vite': 0.58.6(rollup@4.13.2)(vite@5.2.7) + vite: 5.2.7(@types/node@20.11.30) transitivePeerDependencies: - rollup dev: false - /@unocss/cli@0.58.6(rollup@4.13.1): + /@unocss/cli@0.58.6(rollup@4.13.2): resolution: {integrity: sha512-cfJBiEAKElo9vcA4ZU1WTXeUha5qVBtn3+ZjgdgOvveSX0oY0gOheG+DD2LaEjwWzjCstFU38lblUHWzHRv0sQ==} engines: {node: '>=14'} hasBin: true dependencies: '@ampproject/remapping': 2.3.0 - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) '@unocss/config': 0.58.6 '@unocss/core': 0.58.6 '@unocss/preset-uno': 0.58.6 @@ -3578,13 +3590,13 @@ packages: '@unocss/core': 0.58.6 dev: false - /@unocss/vite@0.58.6(rollup@4.13.1)(vite@5.2.6): + /@unocss/vite@0.58.6(rollup@4.13.2)(vite@5.2.7): resolution: {integrity: sha512-DPXCoYU/Ozqc/Jeptd41XvtW8MSgVxmtTyhpMAsm/hJuBfwIV7Fy3TZquf4V9BpaTb4ao1LVXzgXmVUmj2HXpA==} peerDependencies: - vite: 5.2.6 + vite: 5.2.7 dependencies: '@ampproject/remapping': 2.3.0 - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) '@unocss/config': 0.58.6 '@unocss/core': 0.58.6 '@unocss/inspector': 0.58.6 @@ -3593,7 +3605,7 @@ packages: chokidar: 3.6.0 fast-glob: 3.3.2 magic-string: 0.30.8 - vite: 5.2.6(@types/node@20.11.30) + vite: 5.2.7(@types/node@20.11.30) transitivePeerDependencies: - rollup dev: false @@ -3619,29 +3631,29 @@ packages: - encoding - supports-color - /@vitejs/plugin-vue-jsx@3.1.0(vite@5.2.6)(vue@3.4.21): + /@vitejs/plugin-vue-jsx@3.1.0(vite@5.2.7)(vue@3.4.21): resolution: {integrity: sha512-w9M6F3LSEU5kszVb9An2/MmXNxocAnUb3WhRr8bHlimhDrXNt6n6D2nJQR3UXpGlZHh/EsgouOHCsM8V3Ln+WA==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: - vite: 5.2.6 + vite: 5.2.7 vue: 3.4.21 dependencies: '@babel/core': 7.24.1 '@babel/plugin-transform-typescript': 7.24.1(@babel/core@7.24.1) '@vue/babel-plugin-jsx': 1.1.5(@babel/core@7.24.1) - vite: 5.2.6(@types/node@20.11.30) + vite: 5.2.7(@types/node@20.12.2) vue: 3.4.21(typescript@5.4.3) transitivePeerDependencies: - supports-color - /@vitejs/plugin-vue@5.0.4(vite@5.2.6)(vue@3.4.21): + /@vitejs/plugin-vue@5.0.4(vite@5.2.7)(vue@3.4.21): resolution: {integrity: sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: - vite: 5.2.6 + vite: 5.2.7 vue: 3.4.21 dependencies: - vite: 5.2.6(@types/node@20.11.30) + vite: 5.2.7(@types/node@20.11.30) vue: 3.4.21(typescript@5.4.3) /@vitest/coverage-v8@1.4.0(vitest@1.4.0): @@ -3660,10 +3672,10 @@ packages: magicast: 0.3.3 picocolors: 1.0.0 std-env: 3.7.0 - strip-literal: 2.0.0 + strip-literal: 2.1.0 test-exclude: 6.0.0 v8-to-istanbul: 9.2.0 - vitest: 1.4.0(@types/node@20.11.30)(happy-dom@14.3.9) + vitest: 1.4.0(@types/node@20.12.2)(happy-dom@14.3.9) transitivePeerDependencies: - supports-color dev: true @@ -3773,7 +3785,7 @@ packages: '@volar/language-core': 2.1.3 path-browserify: 1.0.1 - /@vue-macros/common@1.10.1(rollup@4.13.1)(vue@3.4.21): + /@vue-macros/common@1.10.1(rollup@4.13.2)(vue@3.4.21): resolution: {integrity: sha512-uftSpfwdwitcQT2lM8aVxcfe5rKQBzC9jMrtJM5sG4hEuFyfIvnJihpPpnaWxY+X4p64k+YYXtBFv+1O5Bq3dg==} engines: {node: '>=16.14.0'} peerDependencies: @@ -3783,9 +3795,9 @@ packages: optional: true dependencies: '@babel/types': 7.24.0 - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) '@vue/compiler-sfc': 3.4.21 - ast-kit: 0.11.3(rollup@4.13.1) + ast-kit: 0.11.3(rollup@4.13.2) local-pkg: 0.5.0 magic-string-ast: 0.3.0 vue: 3.4.21(typescript@5.4.3) @@ -3851,15 +3863,15 @@ packages: /@vue/devtools-api@6.5.1: resolution: {integrity: sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA==} - /@vue/devtools-applet@7.0.22(@unocss/reset@0.58.6)(floating-vue@5.2.2)(unocss@0.58.6)(vite@5.2.6)(vue@3.4.21): - resolution: {integrity: sha512-qr6CM6MtDU7aWcwYeHPdfKWPnA2AnRFpHnZ6r3xrPIC2Gx8ekRClaOFZlnXRSMAxNCvfiXpPeJNOgCIHePUcHQ==} + /@vue/devtools-applet@7.0.25(@unocss/reset@0.58.6)(floating-vue@5.2.2)(unocss@0.58.6)(vite@5.2.7)(vue@3.4.21): + resolution: {integrity: sha512-9JwnjRO2tAHxFjA+cHSpQ/DKIqUKILvYaWJkOt1KqkedXPHzUWU1NfQAto+p6ycaKInA5A0VdXdmIl4N8YJCrw==} peerDependencies: vue: 3.4.21 dependencies: - '@vue/devtools-core': 7.0.22(vite@5.2.6)(vue@3.4.21) - '@vue/devtools-kit': 7.0.22(vue@3.4.21) - '@vue/devtools-shared': 7.0.22 - '@vue/devtools-ui': 7.0.22(@unocss/reset@0.58.6)(floating-vue@5.2.2)(unocss@0.58.6)(vue@3.4.21) + '@vue/devtools-core': 7.0.25(vite@5.2.7)(vue@3.4.21) + '@vue/devtools-kit': 7.0.25(vue@3.4.21) + '@vue/devtools-shared': 7.0.25 + '@vue/devtools-ui': 7.0.25(@unocss/reset@0.58.6)(floating-vue@5.2.2)(unocss@0.58.6)(vue@3.4.21) perfect-debounce: 1.0.0 splitpanes: 3.1.5 vue: 3.4.21(typescript@5.4.3) @@ -3883,26 +3895,26 @@ packages: - vite dev: false - /@vue/devtools-core@7.0.22(vite@5.2.6)(vue@3.4.21): - resolution: {integrity: sha512-jnC+fFMvUsVRy136TxTSXUvfRv/1RzNpQaLJEq+j8YeImyetoPiLX7wdB0z2NMray1//0d8tg9ItIZaLalAm9w==} + /@vue/devtools-core@7.0.25(vite@5.2.7)(vue@3.4.21): + resolution: {integrity: sha512-aCsY4J6SvSBDuGdYADszByT0wy0GgpgdCApxcZzQEqYlyVchX7vqznJQrm7Y1GCLqAvoLaxsQqew7Cz+KQ3Idg==} dependencies: - '@vue/devtools-kit': 7.0.22(vue@3.4.21) - '@vue/devtools-shared': 7.0.22 + '@vue/devtools-kit': 7.0.25(vue@3.4.21) + '@vue/devtools-shared': 7.0.25 mitt: 3.0.1 nanoid: 3.3.7 pathe: 1.1.2 - vite-hot-client: 0.2.3(vite@5.2.6) + vite-hot-client: 0.2.3(vite@5.2.7) transitivePeerDependencies: - vite - vue dev: false - /@vue/devtools-kit@7.0.22(vue@3.4.21): - resolution: {integrity: sha512-STRHF+dNF8+ekGN1e3TxOyAN/ivrjqIJcAGsz9jS2rsQvU3HIkC5YNFvpbVk2dGdEnVuvgZQNb4qJGMJrQufoA==} + /@vue/devtools-kit@7.0.25(vue@3.4.21): + resolution: {integrity: sha512-wbLkSnOTsKHPb1mB9koFHUoSAF8Dp6Ii/ocR2+DeXFY4oKqIjCeJb/4Lihk4rgqEhCy1WwxLfTgNDo83VvDYkQ==} peerDependencies: vue: 3.4.21 dependencies: - '@vue/devtools-shared': 7.0.22 + '@vue/devtools-shared': 7.0.25 hookable: 5.5.3 mitt: 3.0.1 perfect-debounce: 1.0.0 @@ -3910,14 +3922,14 @@ packages: vue: 3.4.21(typescript@5.4.3) dev: false - /@vue/devtools-shared@7.0.22: - resolution: {integrity: sha512-RtqPObulhlhZr8mP27TWcZHBx63x4BaEO6X9JRKqnIa9PenaT28dIpgYLL/9bZsjRP/6YyP4wMu9sL74JJdipQ==} + /@vue/devtools-shared@7.0.25: + resolution: {integrity: sha512-5+XYhcHSXuJSguYnNwL6/e6VTmXwCfryWQOkffh9ZU2zMByybqqqBrMWqvBkqTmMFCjPdzulo66xXbVbwLaElQ==} dependencies: rfdc: 1.3.1 dev: false - /@vue/devtools-ui@7.0.22(@unocss/reset@0.58.6)(floating-vue@5.2.2)(unocss@0.58.6)(vue@3.4.21): - resolution: {integrity: sha512-1WtmpBSX4kxHJeqpn5ylN883Ly7epjAysvVm+QwabLwuuzqPn1tD/M55R3BFsPx2wAbjw/Kga5BqNHvnGms6mg==} + /@vue/devtools-ui@7.0.25(@unocss/reset@0.58.6)(floating-vue@5.2.2)(unocss@0.58.6)(vue@3.4.21): + resolution: {integrity: sha512-OxcwecnKmKm/zIG/VSixRgSqzjRU9UFld26LIq8kunxvr4zswjHT2xHMb/iauBC2c9TNo8Uk5muUTFLmNbYwnA==} peerDependencies: '@unocss/reset': '>=0.50.0-0' floating-vue: '>=2.0.0-0' @@ -3931,7 +3943,7 @@ packages: colord: 2.9.3 floating-vue: 5.2.2(@nuxt/kit@packages+kit)(vue@3.4.21) focus-trap: 7.5.4 - unocss: 0.58.6(postcss@8.4.38)(rollup@4.13.1)(vite@5.2.6) + unocss: 0.58.6(postcss@8.4.38)(rollup@4.13.2)(vite@5.2.7) vue: 3.4.21(typescript@5.4.3) transitivePeerDependencies: - '@vue/composition-api' @@ -4511,34 +4523,34 @@ packages: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} dev: true - /ast-kit@0.11.3(rollup@4.13.1): + /ast-kit@0.11.3(rollup@4.13.2): resolution: {integrity: sha512-qdwwKEhckRk0XE22/xDdmU3v/60E8Edu4qFhgTLIhGGDs/PAJwLw9pQn8Rj99PitlbBZbYpx0k/lbir4kg0SuA==} engines: {node: '>=16.14.0'} dependencies: '@babel/parser': 7.24.1 - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) pathe: 1.1.2 transitivePeerDependencies: - rollup dev: false - /ast-kit@0.9.5(rollup@4.13.1): + /ast-kit@0.9.5(rollup@4.13.2): resolution: {integrity: sha512-kbL7ERlqjXubdDd+szuwdlQ1xUxEz9mCz1+m07ftNVStgwRb2RWw+U6oKo08PAvOishMxiqz1mlJyLl8yQx2Qg==} engines: {node: '>=16.14.0'} dependencies: '@babel/parser': 7.24.1 - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) pathe: 1.1.2 transitivePeerDependencies: - rollup dev: false - /ast-walker-scope@0.5.0(rollup@4.13.1): + /ast-walker-scope@0.5.0(rollup@4.13.2): resolution: {integrity: sha512-NsyHMxBh4dmdEHjBo1/TBZvCKxffmZxRYhmclfu0PP6Aftre47jOHYaYaNqJcV0bxihxFXhDkzLHUwHc0ocd0Q==} engines: {node: '>=16.14.0'} dependencies: '@babel/parser': 7.24.1 - ast-kit: 0.9.5(rollup@4.13.1) + ast-kit: 0.9.5(rollup@4.13.2) transitivePeerDependencies: - rollup dev: false @@ -5050,6 +5062,9 @@ packages: /cookie-es@1.0.0: resolution: {integrity: sha512-mWYvfOLrfEc996hlKcdABeIiPHUPC6DM2QYZdGGOvhOTbA3tjm2eBwqlJpoFdjC89NI4Qt6h0Pu06Mp+1Pj5OQ==} + /cookie-es@1.1.0: + resolution: {integrity: sha512-L2rLOcK0wzWSfSDA33YR+PUHDG10a8px7rUHKWbGLP4YfbsMed2KFUw5fczvDPbT98DDe3LEzviswl810apTEw==} + /core-js-compat@3.34.0: resolution: {integrity: sha512-4ZIyeNbW/Cn1wkMMDy+mvrRUxrwFNjKwbhCfQpDd+eLgYipDqp8oGFGtLmhh18EDPKA0g3VUBYOxQGGwvWLVpA==} dependencies: @@ -6018,8 +6033,8 @@ packages: - supports-color dev: true - /eslint-plugin-jsdoc@48.2.1(eslint@8.57.0): - resolution: {integrity: sha512-iUvbcyDZSO/9xSuRv2HQBw++8VkV/pt3UWtX9cpPH0l7GKPq78QC/6+PmyQHHvNZaTjAce6QVciEbnc6J/zH5g==} + /eslint-plugin-jsdoc@48.2.2(eslint@8.57.0): + resolution: {integrity: sha512-S0Gk+rpT5w/ephKCncUY7kUsix9uE4B9XI8D/fS1/26d8okE+vZsuG1IvIt4B6sJUdQqsnzi+YXfmh+HJG11CA==} engines: {node: '>=18'} peerDependencies: eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 @@ -6760,7 +6775,7 @@ packages: /h3@1.11.1: resolution: {integrity: sha512-AbaH6IDnZN6nmbnJOH72y3c5Wwh9P97soSVdGSBbcDACRdkC0FEWf25pzx4f/NuOCK6quHmW18yF2Wx+G4Zi1A==} dependencies: - cookie-es: 1.0.0 + cookie-es: 1.1.0 crossws: 0.2.4 defu: 6.1.4 destr: 2.0.3 @@ -7460,7 +7475,7 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@jest/types': 29.6.3 - '@types/node': 20.11.30 + '@types/node': 20.12.2 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -7471,7 +7486,7 @@ packages: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.12.2 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -7479,7 +7494,7 @@ packages: resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.12.2 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -7510,6 +7525,10 @@ packages: /js-tokens@8.0.2: resolution: {integrity: sha512-Olnt+V7xYdvGze9YTbGFZIfQXuGV4R3nQwwl8BrtgaPE/wq8UFpUHWuTNc05saowhSr1ZO6tx+V6RjE9D5YQog==} + dev: true + + /js-tokens@9.0.0: + resolution: {integrity: sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==} /js-yaml@4.1.0: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} @@ -8590,14 +8609,14 @@ packages: dependencies: '@cloudflare/kv-asset-handler': 0.3.1 '@netlify/functions': 2.6.0 - '@rollup/plugin-alias': 5.1.0(rollup@4.13.1) - '@rollup/plugin-commonjs': 25.0.7(rollup@4.13.1) - '@rollup/plugin-inject': 5.0.5(rollup@4.13.1) - '@rollup/plugin-json': 6.1.0(rollup@4.13.1) - '@rollup/plugin-node-resolve': 15.2.3(rollup@4.13.1) - '@rollup/plugin-replace': 5.0.5(rollup@4.13.1) - '@rollup/plugin-terser': 0.4.4(rollup@4.13.1) - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) + '@rollup/plugin-alias': 5.1.0(rollup@4.13.2) + '@rollup/plugin-commonjs': 25.0.7(rollup@4.13.2) + '@rollup/plugin-inject': 5.0.5(rollup@4.13.2) + '@rollup/plugin-json': 6.1.0(rollup@4.13.2) + '@rollup/plugin-node-resolve': 15.2.3(rollup@4.13.2) + '@rollup/plugin-replace': 5.0.5(rollup@4.13.2) + '@rollup/plugin-terser': 0.4.4(rollup@4.13.2) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) '@types/http-proxy': 1.17.14 '@vercel/nft': 0.26.4 archiver: 7.0.1 @@ -8641,8 +8660,8 @@ packages: pkg-types: 1.0.3 pretty-bytes: 6.1.1 radix3: 1.1.2 - rollup: 4.13.1 - rollup-plugin-visualizer: 5.12.0(rollup@4.13.1) + rollup: 4.13.2 + rollup-plugin-visualizer: 5.12.0(rollup@4.13.2) scule: 1.3.0 semver: 7.6.0 serve-placeholder: 2.0.1 @@ -8652,7 +8671,7 @@ packages: uncrypto: 0.1.3 unctx: 2.3.1 unenv: 1.9.0 - unimport: 3.7.1(rollup@4.13.1) + unimport: 3.7.1(rollup@4.13.2) unstorage: 1.10.2(ioredis@5.3.2) unwasm: 0.3.8 transitivePeerDependencies: @@ -10199,57 +10218,58 @@ packages: glob: 10.3.10 dev: true - /rollup-plugin-dts@6.1.0(rollup@4.13.1)(typescript@5.4.3): + /rollup-plugin-dts@6.1.0(rollup@4.13.2)(typescript@5.4.3): resolution: {integrity: sha512-ijSCPICkRMDKDLBK9torss07+8dl9UpY9z1N/zTeA1cIqdzMlpkV3MOOC7zukyvQfDyxa1s3Dl2+DeiP/G6DOw==} engines: {node: '>=16'} peerDependencies: - rollup: ^4.13.1 + rollup: ^4.13.2 typescript: ^4.5 || ^5.0 dependencies: magic-string: 0.30.8 - rollup: 4.13.1 + rollup: 4.13.2 typescript: 5.4.3 optionalDependencies: '@babel/code-frame': 7.24.2 dev: true - /rollup-plugin-visualizer@5.12.0(rollup@4.13.1): + /rollup-plugin-visualizer@5.12.0(rollup@4.13.2): resolution: {integrity: sha512-8/NU9jXcHRs7Nnj07PF2o4gjxmm9lXIrZ8r175bT9dK8qoLlvKTwRMArRCMgpMGlq8CTLugRvEmyMeMXIU2pNQ==} engines: {node: '>=14'} hasBin: true peerDependencies: - rollup: ^4.13.1 + rollup: ^4.13.2 peerDependenciesMeta: rollup: optional: true dependencies: open: 8.4.2 picomatch: 2.3.1 - rollup: 4.13.1 + rollup: 4.13.2 source-map: 0.7.4 yargs: 17.7.2 - /rollup@4.13.1: - resolution: {integrity: sha512-hFi+fU132IvJ2ZuihN56dwgpltpmLZHZWsx27rMCTZ2sYwrqlgL5sECGy1eeV2lAihD8EzChBVVhsXci0wD4Tg==} + /rollup@4.13.2: + resolution: {integrity: sha512-MIlLgsdMprDBXC+4hsPgzWUasLO9CE4zOkj/u6j+Z6j5A4zRY+CtiXAdJyPtgCsc42g658Aeh1DlrdVEJhsL2g==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true dependencies: '@types/estree': 1.0.5 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.13.1 - '@rollup/rollup-android-arm64': 4.13.1 - '@rollup/rollup-darwin-arm64': 4.13.1 - '@rollup/rollup-darwin-x64': 4.13.1 - '@rollup/rollup-linux-arm-gnueabihf': 4.13.1 - '@rollup/rollup-linux-arm64-gnu': 4.13.1 - '@rollup/rollup-linux-arm64-musl': 4.13.1 - '@rollup/rollup-linux-riscv64-gnu': 4.13.1 - '@rollup/rollup-linux-s390x-gnu': 4.13.1 - '@rollup/rollup-linux-x64-gnu': 4.13.1 - '@rollup/rollup-linux-x64-musl': 4.13.1 - '@rollup/rollup-win32-arm64-msvc': 4.13.1 - '@rollup/rollup-win32-ia32-msvc': 4.13.1 - '@rollup/rollup-win32-x64-msvc': 4.13.1 + '@rollup/rollup-android-arm-eabi': 4.13.2 + '@rollup/rollup-android-arm64': 4.13.2 + '@rollup/rollup-darwin-arm64': 4.13.2 + '@rollup/rollup-darwin-x64': 4.13.2 + '@rollup/rollup-linux-arm-gnueabihf': 4.13.2 + '@rollup/rollup-linux-arm64-gnu': 4.13.2 + '@rollup/rollup-linux-arm64-musl': 4.13.2 + '@rollup/rollup-linux-powerpc64le-gnu': 4.13.2 + '@rollup/rollup-linux-riscv64-gnu': 4.13.2 + '@rollup/rollup-linux-s390x-gnu': 4.13.2 + '@rollup/rollup-linux-x64-gnu': 4.13.2 + '@rollup/rollup-linux-x64-musl': 4.13.2 + '@rollup/rollup-win32-arm64-msvc': 4.13.2 + '@rollup/rollup-win32-ia32-msvc': 4.13.2 + '@rollup/rollup-win32-x64-msvc': 4.13.2 fsevents: 2.3.3 /run-applescript@5.0.0: @@ -10762,6 +10782,12 @@ packages: resolution: {integrity: sha512-f9vHgsCWBq2ugHAkGMiiYY+AYG0D/cbloKKg0nhaaaSNsujdGIpVXCNsrJpCKr5M0f4aI31mr13UjY6GAuXCKA==} dependencies: js-tokens: 8.0.2 + dev: true + + /strip-literal@2.1.0: + resolution: {integrity: sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==} + dependencies: + js-tokens: 9.0.0 /stylehacks@6.1.1(postcss@8.4.38): resolution: {integrity: sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg==} @@ -11129,12 +11155,12 @@ packages: typescript: optional: true dependencies: - '@rollup/plugin-alias': 5.1.0(rollup@4.13.1) - '@rollup/plugin-commonjs': 25.0.7(rollup@4.13.1) - '@rollup/plugin-json': 6.1.0(rollup@4.13.1) - '@rollup/plugin-node-resolve': 15.2.3(rollup@4.13.1) - '@rollup/plugin-replace': 5.0.5(rollup@4.13.1) - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) + '@rollup/plugin-alias': 5.1.0(rollup@4.13.2) + '@rollup/plugin-commonjs': 25.0.7(rollup@4.13.2) + '@rollup/plugin-json': 6.1.0(rollup@4.13.2) + '@rollup/plugin-node-resolve': 15.2.3(rollup@4.13.2) + '@rollup/plugin-replace': 5.0.5(rollup@4.13.2) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) chalk: 5.3.0 citty: 0.1.6 consola: 3.2.3 @@ -11149,8 +11175,8 @@ packages: pathe: 1.1.2 pkg-types: 1.0.3 pretty-bytes: 6.1.1 - rollup: 4.13.1 - rollup-plugin-dts: 6.1.0(rollup@4.13.1)(typescript@5.4.3) + rollup: 4.13.2 + rollup-plugin-dts: 6.1.0(rollup@4.13.2)(typescript@5.4.3) scule: 1.3.0 typescript: 5.4.3 untyped: 1.4.2 @@ -11197,12 +11223,12 @@ packages: node-fetch-native: 1.6.4 pathe: 1.1.2 - /unhead@1.9.1: - resolution: {integrity: sha512-qTyA0V6xjUrIJp6KWs0CqAayw4K2DE7rh0GO0vmcC2YuF0HITO/3zkVtG7zhJUd5VeGgGCO/82zatDOOhMyneA==} + /unhead@1.9.3: + resolution: {integrity: sha512-nV6d4ALJph73hCJT1tAd4z30Q2Gv8vNUvK0netM/EetL2scdggf9brcX3OyPqWhZbnFIOE+AouH2oE1KPznkcw==} dependencies: - '@unhead/dom': 1.9.1 - '@unhead/schema': 1.9.1 - '@unhead/shared': 1.9.1 + '@unhead/dom': 1.9.3 + '@unhead/schema': 1.9.3 + '@unhead/shared': 1.9.3 hookable: 5.5.3 dev: false @@ -11227,10 +11253,10 @@ packages: vfile: 6.0.1 dev: true - /unimport@3.7.1(rollup@4.13.1): + /unimport@3.7.1(rollup@4.13.2): resolution: {integrity: sha512-V9HpXYfsZye5bPPYUgs0Otn3ODS1mDUciaBlXljI4C2fTwfFpvFZRywmlOu943puN9sncxROMZhsZCjNXEpzEQ==} dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) acorn: 8.11.3 escape-string-regexp: 5.0.0 estree-walker: 3.0.3 @@ -11242,7 +11268,7 @@ packages: pkg-types: 1.0.3 scule: 1.3.0 strip-literal: 1.3.0 - unplugin: 1.10.0 + unplugin: 1.10.1 transitivePeerDependencies: - rollup @@ -11303,20 +11329,20 @@ packages: resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} engines: {node: '>= 10.0.0'} - /unocss@0.58.6(postcss@8.4.38)(rollup@4.13.1)(vite@5.2.6): + /unocss@0.58.6(postcss@8.4.38)(rollup@4.13.2)(vite@5.2.7): resolution: {integrity: sha512-HBstDtC6KKD5yCYh5hHpPdHGZai0B/iLlDwkOIK+xfQYrvl8tNBvKfRz3xgiaI5MJ+fLmEOxbfXQIjleU1A0iA==} engines: {node: '>=14'} peerDependencies: '@unocss/webpack': 0.58.6 - vite: 5.2.6 + vite: 5.2.7 peerDependenciesMeta: '@unocss/webpack': optional: true vite: optional: true dependencies: - '@unocss/astro': 0.58.6(rollup@4.13.1)(vite@5.2.6) - '@unocss/cli': 0.58.6(rollup@4.13.1) + '@unocss/astro': 0.58.6(rollup@4.13.2)(vite@5.2.7) + '@unocss/cli': 0.58.6(rollup@4.13.2) '@unocss/core': 0.58.6 '@unocss/extractor-arbitrary-variants': 0.58.6 '@unocss/postcss': 0.58.6(postcss@8.4.38) @@ -11334,15 +11360,15 @@ packages: '@unocss/transformer-compile-class': 0.58.6 '@unocss/transformer-directives': 0.58.6 '@unocss/transformer-variant-group': 0.58.6 - '@unocss/vite': 0.58.6(rollup@4.13.1)(vite@5.2.6) - vite: 5.2.6(@types/node@20.11.30) + '@unocss/vite': 0.58.6(rollup@4.13.2)(vite@5.2.7) + vite: 5.2.7(@types/node@20.11.30) transitivePeerDependencies: - postcss - rollup - supports-color dev: false - /unplugin-vue-router@0.7.0(rollup@4.13.1)(vue-router@4.3.0)(vue@3.4.21): + /unplugin-vue-router@0.7.0(rollup@4.13.2)(vue-router@4.3.0)(vue@3.4.21): resolution: {integrity: sha512-ddRreGq0t5vlSB7OMy4e4cfU1w2AwBQCwmvW3oP/0IHQiokzbx4hd3TpwBu3eIAFVuhX2cwNQwp1U32UybTVCw==} peerDependencies: vue-router: ^4.1.0 @@ -11351,9 +11377,9 @@ packages: optional: true dependencies: '@babel/types': 7.24.0 - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) - '@vue-macros/common': 1.10.1(rollup@4.13.1)(vue@3.4.21) - ast-walker-scope: 0.5.0(rollup@4.13.1) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) + '@vue-macros/common': 1.10.1(rollup@4.13.2)(vue@3.4.21) + ast-walker-scope: 0.5.0(rollup@4.13.2) chokidar: 3.6.0 fast-glob: 3.3.2 json5: 2.2.3 @@ -11361,7 +11387,7 @@ packages: mlly: 1.6.1 pathe: 1.1.2 scule: 1.3.0 - unplugin: 1.10.0 + unplugin: 1.10.1 vue-router: 4.3.0(vue@3.4.21) yaml: 2.3.4 transitivePeerDependencies: @@ -11378,6 +11404,15 @@ packages: webpack-sources: 3.2.3 webpack-virtual-modules: 0.6.1 + /unplugin@1.10.1: + resolution: {integrity: sha512-d6Mhq8RJeGA8UfKCu54Um4lFA0eSaRa3XxdAJg8tIdxbu1ubW0hBCZUL7yI2uGyYCRndvbK8FLHzqy2XKfeMsg==} + engines: {node: '>=14.0.0'} + dependencies: + acorn: 8.11.3 + chokidar: 3.6.0 + webpack-sources: 3.2.3 + webpack-virtual-modules: 0.6.1 + /unstorage@1.10.2(ioredis@5.3.2): resolution: {integrity: sha512-cULBcwDqrS8UhlIysUJs2Dk0Mmt8h7B0E6mtR+relW9nZvsf/u4SkAYyNliPiPW7XtFNb5u3IUMkxGxFTTRTgQ==} peerDependencies: @@ -11471,7 +11506,7 @@ packages: mlly: 1.6.1 pathe: 1.1.2 pkg-types: 1.0.3 - unplugin: 1.10.0 + unplugin: 1.10.1 /update-browserslist-db@1.0.13(browserslist@4.23.0): resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} @@ -11558,15 +11593,15 @@ packages: vfile-message: 4.0.2 dev: true - /vite-hot-client@0.2.3(vite@5.2.6): + /vite-hot-client@0.2.3(vite@5.2.7): resolution: {integrity: sha512-rOGAV7rUlUHX89fP2p2v0A2WWvV3QMX2UYq0fRqsWSvFvev4atHWqjwGoKaZT1VTKyLGk533ecu3eyd0o59CAg==} peerDependencies: - vite: 5.2.6 + vite: 5.2.7 dependencies: - vite: 5.2.6(@types/node@20.11.30) + vite: 5.2.7(@types/node@20.11.30) dev: false - /vite-node@1.0.2(@types/node@20.11.30): + /vite-node@1.0.2(@types/node@20.12.2): resolution: {integrity: sha512-h7BbMJf46fLvFW/9Ygo3snkIBEHFh6fHpB4lge98H5quYrDhPFeI3S0LREz328uqPWSnii2yeJXktQ+Pmqk5BQ==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -11575,7 +11610,7 @@ packages: debug: 4.3.4 pathe: 1.1.2 picocolors: 1.0.0 - vite: 5.2.6(@types/node@20.11.30) + vite: 5.2.7(@types/node@20.12.2) transitivePeerDependencies: - '@types/node' - less @@ -11596,7 +11631,28 @@ packages: debug: 4.3.4 pathe: 1.1.2 picocolors: 1.0.0 - vite: 5.2.6(@types/node@20.11.30) + vite: 5.2.7(@types/node@20.11.30) + transitivePeerDependencies: + - '@types/node' + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + dev: true + + /vite-node@1.4.0(@types/node@20.12.2): + resolution: {integrity: sha512-VZDAseqjrHgNd4Kh8icYHWzTKSCZMhia7GyHfhtzLW33fZlG9SwsB6CEhgyVOWkJfJ2pFLrp/Gj1FSfAiqH9Lw==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + dependencies: + cac: 6.7.14 + debug: 4.3.4 + pathe: 1.1.2 + picocolors: 1.0.0 + vite: 5.2.7(@types/node@20.12.2) transitivePeerDependencies: - '@types/node' - less @@ -11607,7 +11663,7 @@ packages: - supports-color - terser - /vite-plugin-checker@0.6.4(eslint@8.57.0)(typescript@5.4.3)(vite@5.2.6)(vue-tsc@2.0.7): + /vite-plugin-checker@0.6.4(eslint@8.57.0)(typescript@5.4.3)(vite@5.2.7)(vue-tsc@2.0.7): resolution: {integrity: sha512-2zKHH5oxr+ye43nReRbC2fny1nyARwhxdm0uNYp/ERy4YvU9iZpNOsueoi/luXw5gnpqRSvjcEPxXbS153O2wA==} engines: {node: '>=14.16'} peerDependencies: @@ -11616,7 +11672,7 @@ packages: optionator: ^0.9.1 stylelint: '>=13' typescript: '*' - vite: 5.2.6 + vite: 5.2.7 vls: '*' vti: '*' vue-tsc: '>=1.3.9' @@ -11651,7 +11707,7 @@ packages: strip-ansi: 6.0.1 tiny-invariant: 1.3.1 typescript: 5.4.3 - vite: 5.2.6(@types/node@20.11.30) + vite: 5.2.7(@types/node@20.12.2) vscode-languageclient: 7.0.0 vscode-languageserver: 7.0.0 vscode-languageserver-textdocument: 1.0.11 @@ -11659,19 +11715,19 @@ packages: vue-tsc: 2.0.7(typescript@5.4.3) dev: false - /vite-plugin-inspect@0.8.3(@nuxt/kit@packages+kit)(rollup@4.13.1)(vite@5.2.6): + /vite-plugin-inspect@0.8.3(@nuxt/kit@packages+kit)(rollup@4.13.2)(vite@5.2.7): resolution: {integrity: sha512-SBVzOIdP/kwe6hjkt7LSW4D0+REqqe58AumcnCfRNw4Kt3mbS9pEBkch+nupu2PBxv2tQi69EQHQ1ZA1vgB/Og==} engines: {node: '>=14'} peerDependencies: '@nuxt/kit': '*' - vite: 5.2.6 + vite: 5.2.7 peerDependenciesMeta: '@nuxt/kit': optional: true dependencies: '@antfu/utils': 0.7.7 '@nuxt/kit': link:packages/kit - '@rollup/pluginutils': 5.1.0(rollup@4.13.1) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) debug: 4.3.4 error-stack-parser-es: 0.1.1 fs-extra: 11.2.0 @@ -11679,16 +11735,16 @@ packages: perfect-debounce: 1.0.0 picocolors: 1.0.0 sirv: 2.0.4 - vite: 5.2.6(@types/node@20.11.30) + vite: 5.2.7(@types/node@20.11.30) transitivePeerDependencies: - rollup - supports-color dev: false - /vite-plugin-vue-inspector@4.0.2(vite@5.2.6): + /vite-plugin-vue-inspector@4.0.2(vite@5.2.7): resolution: {integrity: sha512-KPvLEuafPG13T7JJuQbSm5PwSxKFnVS965+MP1we2xGw9BPkkc/+LPix5MMWenpKWqtjr0ws8THrR+KuoDC8hg==} peerDependencies: - vite: 5.2.6 + vite: 5.2.7 dependencies: '@babel/core': 7.24.1 '@babel/plugin-proposal-decorators': 7.23.2(@babel/core@7.24.1) @@ -11699,13 +11755,13 @@ packages: '@vue/compiler-dom': 3.4.21 kolorist: 1.8.0 magic-string: 0.30.8 - vite: 5.2.6(@types/node@20.11.30) + vite: 5.2.7(@types/node@20.11.30) transitivePeerDependencies: - supports-color dev: false - /vite@5.2.6(@types/node@20.11.30): - resolution: {integrity: sha512-FPtnxFlSIKYjZ2eosBQamz4CbyrTizbZ3hnGJlh/wMtCrlp1Hah6AzBLjGI5I2urTfNnpovpHdrL6YRuBOPnCA==} + /vite@5.2.7(@types/node@20.11.30): + resolution: {integrity: sha512-k14PWOKLI6pMaSzAuGtT+Cf0YmIx12z9YGon39onaJNy8DLBfBJrzg9FQEmkAM5lpHBZs9wksWAsyF/HkpEwJA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: @@ -11735,14 +11791,49 @@ packages: '@types/node': 20.11.30 esbuild: 0.20.2 postcss: 8.4.38 - rollup: 4.13.1 + rollup: 4.13.2 optionalDependencies: fsevents: 2.3.3 - /vitest-environment-nuxt@1.0.0(@testing-library/vue@8.0.3)(@vue/test-utils@2.4.5)(h3@1.11.1)(happy-dom@14.3.9)(playwright-core@1.42.1)(vite@5.2.6)(vitest@1.4.0)(vue-router@4.3.0)(vue@3.4.21): + /vite@5.2.7(@types/node@20.12.2): + resolution: {integrity: sha512-k14PWOKLI6pMaSzAuGtT+Cf0YmIx12z9YGon39onaJNy8DLBfBJrzg9FQEmkAM5lpHBZs9wksWAsyF/HkpEwJA==} + 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 + dependencies: + '@types/node': 20.12.2 + esbuild: 0.20.2 + postcss: 8.4.38 + rollup: 4.13.2 + optionalDependencies: + fsevents: 2.3.3 + + /vitest-environment-nuxt@1.0.0(@testing-library/vue@8.0.3)(@vue/test-utils@2.4.5)(h3@1.11.1)(happy-dom@14.3.9)(playwright-core@1.42.1)(vite@5.2.7)(vitest@1.4.0)(vue-router@4.3.0)(vue@3.4.21): resolution: {integrity: sha512-AWMO9h4HdbaFdPWZw34gALFI8gbBiOpvfbyeZwHIPfh4kWg/TwElYHvYMQ61WPUlCGaS5LebfHkaI0WPyb//Iw==} dependencies: - '@nuxt/test-utils': 3.12.0(@testing-library/vue@8.0.3)(@vue/test-utils@2.4.5)(h3@1.11.1)(happy-dom@14.3.9)(playwright-core@1.42.1)(vite@5.2.6)(vitest@1.4.0)(vue-router@4.3.0)(vue@3.4.21) + '@nuxt/test-utils': 3.12.0(@testing-library/vue@8.0.3)(@vue/test-utils@2.4.5)(h3@1.11.1)(happy-dom@14.3.9)(playwright-core@1.42.1)(vite@5.2.7)(vitest@1.4.0)(vue-router@4.3.0)(vue@3.4.21) transitivePeerDependencies: - '@cucumber/cucumber' - '@jest/globals' @@ -11760,7 +11851,7 @@ packages: - vue-router dev: true - /vitest@1.0.2(@types/node@20.11.30)(happy-dom@14.3.9): + /vitest@1.0.2(@types/node@20.12.2)(happy-dom@14.3.9): resolution: {integrity: sha512-F3NVwwpXfRSDnJmyv+ALPwSRVt0zDkRRE18pwUHSUPXAlWQ47rY1dc99ziMW5bBHyqwK2ERjMisLNoef64qk9w==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -11785,7 +11876,7 @@ packages: jsdom: optional: true dependencies: - '@types/node': 20.11.30 + '@types/node': 20.12.2 '@vitest/expect': 1.0.2 '@vitest/runner': 1.0.2 '@vitest/snapshot': 1.0.2 @@ -11805,8 +11896,8 @@ packages: strip-literal: 1.3.0 tinybench: 2.5.1 tinypool: 0.8.2 - vite: 5.2.6(@types/node@20.11.30) - vite-node: 1.0.2(@types/node@20.11.30) + vite: 5.2.7(@types/node@20.12.2) + vite-node: 1.0.2(@types/node@20.12.2) why-is-node-running: 2.2.2 transitivePeerDependencies: - less @@ -11862,7 +11953,7 @@ packages: strip-literal: 2.0.0 tinybench: 2.5.1 tinypool: 0.8.2 - vite: 5.2.6(@types/node@20.11.30) + vite: 5.2.7(@types/node@20.11.30) vite-node: 1.4.0(@types/node@20.11.30) why-is-node-running: 2.2.2 transitivePeerDependencies: @@ -11875,6 +11966,63 @@ packages: - terser dev: true + /vitest@1.4.0(@types/node@20.12.2)(happy-dom@14.3.9): + resolution: {integrity: sha512-gujzn0g7fmwf83/WzrDTnncZt2UiXP41mHuFYFrdwaLRVQ6JYQEiME2IfEjU3vcFL3VKa75XhI3lFgn+hfVsQw==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@types/node': ^18.0.0 || >=20.0.0 + '@vitest/browser': 1.4.0 + '@vitest/ui': 1.4.0 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@types/node': + optional: true + '@vitest/browser': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + dependencies: + '@types/node': 20.12.2 + '@vitest/expect': 1.4.0 + '@vitest/runner': 1.4.0 + '@vitest/snapshot': 1.4.0 + '@vitest/spy': 1.4.0 + '@vitest/utils': 1.4.0 + acorn-walk: 8.3.2 + chai: 4.3.10 + debug: 4.3.4 + execa: 8.0.1 + happy-dom: 14.3.9 + local-pkg: 0.5.0 + magic-string: 0.30.8 + pathe: 1.1.2 + picocolors: 1.0.0 + std-env: 3.7.0 + strip-literal: 2.0.0 + tinybench: 2.5.1 + tinypool: 0.8.2 + vite: 5.2.7(@types/node@20.12.2) + vite-node: 1.4.0(@types/node@20.12.2) + why-is-node-running: 2.2.2 + transitivePeerDependencies: + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + dev: true + /void-elements@3.1.0: resolution: {integrity: sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==} engines: {node: '>=0.10.0'} @@ -12092,8 +12240,8 @@ packages: - utf-8-validate dev: false - /webpack-dev-middleware@7.1.1(webpack@5.91.0): - resolution: {integrity: sha512-NmRVq4AvRQs66dFWyDR4GsFDJggtSi2Yn38MXLk0nffgF9n/AIP4TFBg2TQKYaRAN4sHuKOTiz9BnNCENDLEVA==} + /webpack-dev-middleware@7.2.0(webpack@5.91.0): + resolution: {integrity: sha512-VLzmsjJrf+3UVf3QsT3E7xZ9F9bdhUhQFGRxyl6bmYR+W519UWnK6/teZeqAFFjWEtpVs+JqNPCVqB/s7P4tGg==} engines: {node: '>= 18.12.0'} peerDependencies: webpack: ^5.0.0 diff --git a/test/basic.test.ts b/test/basic.test.ts index 18e3884d15..86aff1bb37 100644 --- a/test/basic.test.ts +++ b/test/basic.test.ts @@ -1968,14 +1968,12 @@ describe('component islands', () => { expect(result).toMatchInlineSnapshot(` { - "components": {}, "head": { "link": [], "style": [], }, "html": "
    Route: /foo
         
", - "slots": {}, "state": {}, } `) @@ -1993,7 +1991,6 @@ describe('component islands', () => { result.html = result.html.replaceAll(/ (data-island-uid|data-island-component)="([^"]*)"/g, '') expect(result).toMatchInlineSnapshot(` { - "components": {}, "head": { "link": [], "style": [], diff --git a/test/bundle.test.ts b/test/bundle.test.ts index c12fd76f66..63ce5418d5 100644 --- a/test/bundle.test.ts +++ b/test/bundle.test.ts @@ -19,7 +19,7 @@ describe.skipIf(process.env.SKIP_BUNDLE_SIZE === 'true' || process.env.ECOSYSTEM for (const outputDir of ['.output', '.output-inline']) { it('default client bundle size', async () => { const clientStats = await analyzeSizes('**/*.js', join(rootDir, outputDir, 'public')) - expect.soft(roundToKilobytes(clientStats.totalBytes)).toMatchInlineSnapshot('"106k"') + expect.soft(roundToKilobytes(clientStats.totalBytes)).toMatchInlineSnapshot('"105k"') expect(clientStats.files.map(f => f.replace(/\..*\.js/, '.js'))).toMatchInlineSnapshot(` [ "_nuxt/entry.js", @@ -75,7 +75,7 @@ describe.skipIf(process.env.SKIP_BUNDLE_SIZE === 'true' || process.env.ECOSYSTEM expect.soft(roundToKilobytes(serverStats.totalBytes)).toMatchInlineSnapshot('"526k"') const modules = await analyzeSizes('node_modules/**/*', serverDir) - expect.soft(roundToKilobytes(modules.totalBytes)).toMatchInlineSnapshot('"76.0k"') + expect.soft(roundToKilobytes(modules.totalBytes)).toMatchInlineSnapshot('"75.5k"') const packages = modules.files .filter(m => m.endsWith('package.json'))