From 1359f018f7f0efe3b044aaff4684cf8912457c62 Mon Sep 17 00:00:00 2001 From: Tobias Diez Date: Sun, 16 Jun 2024 18:45:38 +0800 Subject: [PATCH] feat: start storybook in same process as dev server (#592) Instead of invoking the storybook cli, we now start the storybook dev server in the same process as the nuxt dev server. This has the advantage that we don't need to spawn a second nuxt instance, improving preformance and reducing complexifty. Fixes https://github.com/storybook-vue/storybook-nuxt/issues/59 and fixes https://github.com/nuxt-modules/storybook/issues/610 and fixes https://github.com/nuxt-modules/storybook/issues/635 and fixes https://github.com/nuxt-modules/storybook/issues/475. --- build.config.ts | 11 + examples/showcase/nuxt.config.ts | 3 + packages/storybook-nuxt/package.json | 2 + packages/storybook-nuxt/src/preset.ts | 175 +++++--- packages/storybook-nuxt/src/preview.ts | 10 +- pnpm-lock.yaml | 598 +++++++++---------------- src/storybook.ts | 174 +++---- 7 files changed, 396 insertions(+), 577 deletions(-) create mode 100644 build.config.ts diff --git a/build.config.ts b/build.config.ts new file mode 100644 index 00000000..d56060bd --- /dev/null +++ b/build.config.ts @@ -0,0 +1,11 @@ +import { defineBuildConfig } from 'unbuild' +export default defineBuildConfig({ + externals: [ + // Workaround for https://github.com/sindresorhus/globby/issues/260 + 'globby', + // Esbuild cannot be bundled + 'esbuild', + ], + // Ignore warnings + failOnWarn: false, +}) diff --git a/examples/showcase/nuxt.config.ts b/examples/showcase/nuxt.config.ts index 3a5a5a86..79229564 100644 --- a/examples/showcase/nuxt.config.ts +++ b/examples/showcase/nuxt.config.ts @@ -2,4 +2,7 @@ export default defineNuxtConfig({ devtools: { enabled: true }, modules: ['@nuxtjs/storybook'], + vue: { + runtimeCompiler: true, + }, }) diff --git a/packages/storybook-nuxt/package.json b/packages/storybook-nuxt/package.json index cfeaafad..b0a9b996 100644 --- a/packages/storybook-nuxt/package.json +++ b/packages/storybook-nuxt/package.json @@ -72,12 +72,14 @@ "@storybook/builder-vite": "^8.0.0", "@storybook/vue3": "^8.0.0", "@storybook/vue3-vite": "^8.0.0", + "json-stable-stringify": "^1.1.1", "nuxt": "^3.11.1", "vue": "^3.4.21", "vue-router": "^4.3.0" }, "devDependencies": { "@storybook/types": "^8.0.0", + "@types/json-stable-stringify": "^1.0.36", "@vitejs/plugin-vue": "^5.0.4", "@vitejs/plugin-vue-jsx": "^4.0.0", "changelogen": "^0.5.5", diff --git a/packages/storybook-nuxt/src/preset.ts b/packages/storybook-nuxt/src/preset.ts index f218f13b..e0366d2c 100644 --- a/packages/storybook-nuxt/src/preset.ts +++ b/packages/storybook-nuxt/src/preset.ts @@ -14,14 +14,13 @@ import vuePlugin from '@vitejs/plugin-vue' import replace from '@rollup/plugin-replace' import type { StorybookConfig } from './types' import { componentsDir, composablesDir, pluginsDir, runtimeDir } from './dirs' +import stringify from 'json-stable-stringify' const packageDir = resolve(fileURLToPath(import.meta.url), '../..') const distDir = resolve(fileURLToPath(import.meta.url), '../..', 'dist') const dirs = [distDir, packageDir, pluginsDir, componentsDir] -let nuxt: Nuxt - /** * extend nuxt-link component to use storybook router * @param nuxt @@ -55,16 +54,29 @@ async function extendComposables(nuxt: Nuxt) { }) } -async function defineNuxtConfig(baseConfig: { - root: string | undefined - plugins: { name: string }[] -}) { - const { loadNuxt, buildNuxt, addPlugin, extendPages } = await import( - '@nuxt/kit' - ) +async function loadNuxtViteConfig(root: string | undefined) { + const { loadNuxt, tryUseNuxt, buildNuxt, addPlugin, extendPages } = + await import('@nuxt/kit') + let nuxt = tryUseNuxt() + if (nuxt) { + // Nuxt is already started in the current process (i.e. in dev mode) + // We assume that we are called from the Nuxt module, which means that + // Nuxt is in the "load module" state and we can access the Vite config later via the hook + const nuxtRes = nuxt + return new Promise<{ viteConfig: ViteConfig; nuxt: Nuxt }>((resolve) => { + nuxtRes.hook('vite:configResolved', (config, { isClient }) => { + if (isClient) { + resolve({ + viteConfig: config, + nuxt: nuxtRes, + }) + } + }) + }) + } nuxt = await loadNuxt({ - cwd: baseConfig.root, + cwd: root, ready: false, dev: false, overrides: { @@ -78,8 +90,6 @@ async function defineNuxtConfig(baseConfig: { throw new Error( `Storybook-Nuxt does not support '${nuxt.options.builder}' for now.`, ) - - let extendedConfig: ViteConfig = {} nuxt.options.build.transpile.push(join(packageDir, 'preview')) nuxt.hook('modules:done', () => { @@ -107,29 +117,8 @@ async function defineNuxtConfig(baseConfig: { (resolve, reject) => { nuxt.hook('vite:configResolved', (config, { isClient }) => { if (isClient) { - extendedConfig = mergeConfig(config, baseConfig) - - const plugins = extendedConfig.plugins || [] - - // Find the index of the plugin with name 'vite:vue' - const index = plugins.findIndex( - (plugin) => - plugin && 'name' in plugin && plugin.name === 'vite:vue', - ) - - // Check if the plugin was found - if (index !== -1) { - // Replace the plugin with the new one using vuePlugin() - plugins[index] = vuePlugin() - } else { - // Vue plugin should be the first registered user plugin so that it will be added directly after Vite's core plugins - // and transforms global vue components before nuxt:components:imports. - plugins.unshift(vuePlugin()) - } - - extendedConfig.plugins = plugins resolve({ - viteConfig: extendedConfig, + viteConfig: config, nuxt, }) // Stop the build process, as we don't need to build the Nuxt app @@ -145,6 +134,68 @@ async function defineNuxtConfig(baseConfig: { }, ).finally(() => nuxt.close()) } + +function mergeViteConfig( + storybookConfig: ViteConfig, + nuxtConfig: ViteConfig, + nuxt: Nuxt, +): ViteConfig { + const extendedConfig: ViteConfig = mergeConfig(nuxtConfig, storybookConfig) + + const plugins = extendedConfig.plugins || [] + + // Find the index of the plugin with name 'vite:vue' + const index = plugins.findIndex( + (plugin) => plugin && 'name' in plugin && plugin.name === 'vite:vue', + ) + + // Check if the plugin was found + if (index !== -1) { + // Replace the plugin with the new one using vuePlugin() + plugins[index] = vuePlugin() + } else { + // Vue plugin should be the first registered user plugin so that it will be added directly after Vite's core plugins + // and transforms global vue components before nuxt:components:imports. + plugins.unshift(vuePlugin()) + } + + extendedConfig.plugins = plugins + // Storybook adds 'vue' as dependency that should be optimized, but nuxt explicitly excludes it from pre-bundling + // Prioritize `optimizeDeps.exclude`. If same dep is in `include` and `exclude`, remove it from `include` + extendedConfig.optimizeDeps!.include = + extendedConfig.optimizeDeps!.include!.filter( + (dep) => !extendedConfig.optimizeDeps!.exclude!.includes(dep), + ) + return mergeConfig(extendedConfig, { + // build: { rollupOptions: { external: ['vue', 'vue-demi'] } }, + define: { + __NUXT__: JSON.stringify({ + config: nuxt.options.runtimeConfig, + }), + 'import.meta.client': 'true', + }, + + plugins: [ + replace({ + values: { + 'import.meta.server': 'false', + 'import.meta.client': 'true', + }, + preventAssignment: true, + }), + ], + server: { + cors: true, + proxy: { + ...getPreviewProxy(), + ...getNuxtProxyConfig(nuxt).proxy, + }, + fs: { allow: [searchForWorkspaceRoot(process.cwd()), ...dirs] }, + }, + envPrefix: ['NUXT_'], + }) +} + export const core: PresetProperty<'core', StorybookConfig> = async ( // eslint-disable-next-line @typescript-eslint/no-explicit-any config: any, @@ -183,44 +234,28 @@ export const viteFinal: StorybookConfig['viteFinal'] = async ( if (!ViteFile) throw new Error('ViteFile not found') return ViteFile(c, o) } - const nuxtConfig = await defineNuxtConfig( - await getStorybookViteConfig(config, options), + const storybookViteConfig = await getStorybookViteConfig(config, options) + const { viteConfig: nuxtConfig, nuxt } = await loadNuxtViteConfig( + storybookViteConfig.root, + ) + const finalViteConfig = mergeViteConfig(config, nuxtConfig, nuxt) + // Write all vite configs to logs + const fs = await import('node:fs') + fs.mkdirSync(join(options.outputDir, 'logs'), { recursive: true }) + fs.writeFileSync( + join(options.outputDir, 'logs', 'vite-storybook.config.js'), + stringify(storybookViteConfig, { space: ' ' }), + ) + fs.writeFileSync( + join(options.outputDir, 'logs', 'vite-nuxt.config.js'), + stringify(nuxtConfig, { space: ' ' }), + ) + fs.writeFileSync( + join(options.outputDir, 'logs', 'vite-final.config.js'), + stringify(finalViteConfig, { space: ' ' }), ) - // Storybook adds 'vue' as dependency that should be optimized, but nuxt explicitly excludes it from pre-bundling - // Prioritize `optimizeDeps.exclude`. If same dep is in `include` and `exclude`, remove it from `include` - nuxtConfig.viteConfig.optimizeDeps!.include = - nuxtConfig.viteConfig.optimizeDeps!.include!.filter( - (dep) => !nuxtConfig.viteConfig.optimizeDeps!.exclude!.includes(dep), - ) - - return mergeConfig(nuxtConfig.viteConfig, { - // build: { rollupOptions: { external: ['vue', 'vue-demi'] } }, - define: { - __NUXT__: JSON.stringify({ - config: nuxtConfig.nuxt.options.runtimeConfig, - }), - 'import.meta.client': 'true', - }, - plugins: [ - replace({ - values: { - 'import.meta.server': 'false', - 'import.meta.client': 'true', - }, - preventAssignment: true, - }), - ], - server: { - cors: true, - proxy: { - ...getPreviewProxy(), - ...getNuxtProxyConfig(nuxt).proxy, - }, - fs: { allow: [searchForWorkspaceRoot(process.cwd()), ...dirs] }, - }, - envPrefix: ['NUXT_'], - }) + return finalViteConfig } async function getPackageDir(frameworkPackageName: string) { diff --git a/packages/storybook-nuxt/src/preview.ts b/packages/storybook-nuxt/src/preview.ts index 7d7cde28..b079e7bd 100644 --- a/packages/storybook-nuxt/src/preview.ts +++ b/packages/storybook-nuxt/src/preview.ts @@ -6,18 +6,12 @@ document.body.appendChild(vueAppRootContainer) // entry() const logger = console async function nuxtAppEntry() { - const nuxtApp = () => - import('#app/entry').then((m) => m.default).catch(() => {}) - // i - const vueAppPromise = nuxtApp().catch((_error) => { - // consola.error('Error while mounting app:', error) - }) - return vueAppPromise + const nuxtApp = () => import('#app/entry').then((m) => m.default) + return nuxtApp() } nuxtAppEntry().then((app) => { logger.log('nuxtAppEntry done', app) - // @ts-expect-error: void should never be returned (fix this in the future) app() .then(() => { logger.log('nuxtAppEntry app done') diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c51ebe6f..49b60862 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -13,10 +13,10 @@ importers: dependencies: '@nuxt/devtools-kit': specifier: ^1.0.8 - version: 1.3.3(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + version: 1.3.3(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) '@nuxt/kit': specifier: ^3.11.2 - version: 3.12.1(magicast@0.3.4)(rollup@3.29.4) + version: 3.12.1(magicast@0.3.4)(rollup@4.18.0) '@storybook-vue/nuxt': specifier: ^0.2.6 version: link:packages/storybook-nuxt @@ -44,22 +44,22 @@ importers: version: 1.1.35 '@nuxt/content': specifier: ^2.10.0 - version: 2.12.1(ioredis@5.4.1)(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5)) + version: 2.12.1(ioredis@5.4.1)(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(vue@3.4.29(typescript@5.4.5)) '@nuxt/devtools': specifier: ^1.0.8 - version: 1.3.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) + version: 1.3.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) '@nuxt/eslint-config': specifier: ^0.3.6 version: 0.3.13(eslint@9.5.0)(typescript@5.4.5) '@nuxt/module-builder': specifier: ^0.7.0 - version: 0.7.1(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(nuxi@3.12.0)(typescript@5.4.5) + version: 0.7.1(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(nuxi@3.12.0)(typescript@5.4.5) '@nuxt/schema': specifier: ^3.9.1 - version: 3.12.1(rollup@3.29.4) + version: 3.12.1(rollup@4.18.0) '@nuxt/test-utils': specifier: ^3.9.0 - version: 3.13.1(h3@1.11.1)(jsdom@24.1.0)(magicast@0.3.4)(nitropack@2.9.6(@opentelemetry/api@1.9.0)(encoding@0.1.13)(magicast@0.3.4))(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vitest@1.6.0(@types/node@20.14.2)(jsdom@24.1.0)(terser@5.31.1))(vue-router@4.3.3(vue@3.4.29(typescript@5.4.5)))(vue@3.4.29(typescript@5.4.5)) + version: 3.13.1(h3@1.11.1)(jsdom@24.1.0)(magicast@0.3.4)(nitropack@2.9.6(@opentelemetry/api@1.9.0)(encoding@0.1.13)(magicast@0.3.4))(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vitest@1.6.0(@types/node@20.14.2)(jsdom@24.1.0)(terser@5.31.1))(vue-router@4.3.3(vue@3.4.29(typescript@5.4.5)))(vue@3.4.29(typescript@5.4.5)) '@vitest/coverage-v8': specifier: ^1.5.0 version: 1.6.0(vitest@1.6.0(@types/node@20.14.2)(jsdom@24.1.0)(terser@5.31.1)) @@ -77,7 +77,7 @@ importers: version: 24.1.0 nuxt: specifier: ^3.11.2 - version: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + version: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) prettier: specifier: ^3.2.5 version: 3.3.2 @@ -98,19 +98,19 @@ importers: devDependencies: '@nuxt-themes/docus': specifier: ^1.14.9 - version: 1.15.0(change-case@4.1.2)(ioredis@5.4.1)(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(postcss@8.4.38)(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5)) + version: 1.15.0(change-case@4.1.2)(ioredis@5.4.1)(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(postcss@8.4.38)(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5)) '@nuxtjs/plausible': specifier: ^1.0.0 version: 1.0.0(magicast@0.3.4)(rollup@3.29.4) nuxt: specifier: ^3.11.2 - version: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + version: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) examples/showcase: dependencies: nuxt: specifier: ^3.11.2 - version: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + version: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) vue: specifier: ^3.4.21 version: 3.4.29(typescript@5.4.5) @@ -141,7 +141,7 @@ importers: dependencies: nuxt: specifier: ^3.11.2 - version: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + version: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) vue: specifier: ^3.4.21 version: 3.4.29(typescript@5.4.5) @@ -175,7 +175,7 @@ importers: version: 6.12.0(magicast@0.3.4)(rollup@4.18.0) nuxt: specifier: ^3.11.2 - version: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + version: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) vue: specifier: ^3.4.21 version: 3.4.29(typescript@5.4.5) @@ -206,13 +206,13 @@ importers: dependencies: '@nuxt/kit': specifier: ^3.11.1 - version: 3.12.1(magicast@0.3.4)(rollup@4.18.0) + version: 3.12.1(magicast@0.3.4)(rollup@3.29.4) '@nuxt/schema': specifier: ^3.11.1 - version: 3.12.1(rollup@4.18.0) + version: 3.12.1(rollup@3.29.4) '@nuxt/vite-builder': specifier: ^3.11.1 - version: 3.12.1(@types/node@20.14.2)(eslint@9.5.0)(magicast@0.3.4)(optionator@0.9.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(vue@3.4.29(typescript@5.4.5)) + version: 3.12.1(@types/node@20.14.2)(eslint@9.5.0)(magicast@0.3.4)(optionator@0.9.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(vue@3.4.29(typescript@5.4.5)) '@storybook/builder-vite': specifier: ^8.0.0 version: 8.1.9(encoding@0.1.13)(prettier@3.3.2)(typescript@5.4.5)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) @@ -222,9 +222,12 @@ importers: '@storybook/vue3-vite': specifier: ^8.0.0 version: 8.1.9(encoding@0.1.13)(prettier@3.3.2)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) + json-stable-stringify: + specifier: ^1.1.1 + version: 1.1.1 nuxt: specifier: ^3.11.1 - version: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + version: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) vue: specifier: ^3.4.21 version: 3.4.29(typescript@5.4.5) @@ -235,6 +238,9 @@ importers: '@storybook/types': specifier: ^8.0.0 version: 8.1.9 + '@types/json-stable-stringify': + specifier: ^1.0.36 + version: 1.0.36 '@vitejs/plugin-vue': specifier: ^5.0.4 version: 5.0.5(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) @@ -2803,6 +2809,9 @@ packages: '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + '@types/json-stable-stringify@1.0.36': + resolution: {integrity: sha512-b7bq23s4fgBB76n34m2b3RBf6M369B0Z9uRR8aHTMd8kZISRkmDEpPD8hhpYvDFzr3bJCPES96cm3Q6qRNDbQw==} + '@types/lodash@4.17.5': resolution: {integrity: sha512-MBIOHVZqVqgfro1euRDWX7OO0fBVUUMrN6Pwm8LQsz8cWhEpihlvR70ENj3f40j58TNxZaWv2ndSkInykNBBJw==} @@ -5696,6 +5705,10 @@ packages: json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + json-stable-stringify@1.1.1: + resolution: {integrity: sha512-SU/971Kt5qVQfJpyDveVhQ/vya+5hvrjClFOcr8c0Fq5aODJjMwutrOfCU+eCnVD5gpx1Q3fEqkyom77zH1iIg==} + engines: {node: '>= 0.4'} + json5@2.2.3: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} @@ -5707,6 +5720,9 @@ packages: jsonfile@6.1.0: resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + jsonify@0.0.1: + resolution: {integrity: sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==} + jsonparse@1.3.1: resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==} engines: {'0': node >= 0.2.0} @@ -10514,15 +10530,15 @@ snapshots: - bluebird - supports-color - '@nuxt-themes/docus@1.15.0(change-case@4.1.2)(ioredis@5.4.1)(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(postcss@8.4.38)(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5))': + '@nuxt-themes/docus@1.15.0(change-case@4.1.2)(ioredis@5.4.1)(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(postcss@8.4.38)(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5))': dependencies: '@nuxt-themes/elements': 0.9.5(magicast@0.3.4)(postcss@8.4.38)(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5)) '@nuxt-themes/tokens': 1.9.1(magicast@0.3.4)(postcss@8.4.38)(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5)) '@nuxt-themes/typography': 0.11.0(magicast@0.3.4)(postcss@8.4.38)(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5)) - '@nuxt/content': 2.12.1(ioredis@5.4.1)(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5)) + '@nuxt/content': 2.12.1(ioredis@5.4.1)(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5)) '@nuxthq/studio': 1.1.2(magicast@0.3.4)(rollup@3.29.4) '@vueuse/integrations': 10.11.0(change-case@4.1.2)(focus-trap@7.5.4)(fuse.js@6.6.2)(vue@3.4.29(typescript@5.4.5)) - '@vueuse/nuxt': 10.9.0(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5)) + '@vueuse/nuxt': 10.9.0(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5)) focus-trap: 7.5.4 fuse.js: 6.6.2 transitivePeerDependencies: @@ -10602,13 +10618,13 @@ snapshots: - supports-color - vue - '@nuxt/content@2.12.1(ioredis@5.4.1)(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5))': + '@nuxt/content@2.12.1(ioredis@5.4.1)(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5))': dependencies: '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@3.29.4) '@nuxtjs/mdc': 0.6.1(magicast@0.3.4)(rollup@3.29.4) '@vueuse/core': 10.11.0(vue@3.4.29(typescript@5.4.5)) '@vueuse/head': 2.0.0(vue@3.4.29(typescript@5.4.5)) - '@vueuse/nuxt': 10.9.0(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5)) + '@vueuse/nuxt': 10.9.0(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5)) consola: 3.2.3 defu: 6.1.4 destr: 2.0.3 @@ -10655,38 +10671,79 @@ snapshots: - utf-8-validate - vue - '@nuxt/devalue@2.0.2': {} - - '@nuxt/devtools-kit@1.3.3(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))': + '@nuxt/content@2.12.1(ioredis@5.4.1)(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(vue@3.4.29(typescript@5.4.5))': dependencies: '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@4.18.0) - '@nuxt/schema': 3.12.1(rollup@4.18.0) - execa: 7.2.0 - nuxt: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) - vite: 5.3.1(@types/node@20.14.2)(terser@5.31.1) + '@nuxtjs/mdc': 0.6.1(magicast@0.3.4)(rollup@4.18.0) + '@vueuse/core': 10.11.0(vue@3.4.29(typescript@5.4.5)) + '@vueuse/head': 2.0.0(vue@3.4.29(typescript@5.4.5)) + '@vueuse/nuxt': 10.9.0(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(vue@3.4.29(typescript@5.4.5)) + consola: 3.2.3 + defu: 6.1.4 + destr: 2.0.3 + json5: 2.2.3 + knitwork: 1.1.0 + listhen: 1.7.2 + mdast-util-to-string: 4.0.0 + mdurl: 2.0.0 + micromark: 4.0.0 + micromark-util-sanitize-uri: 2.0.0 + micromark-util-types: 2.0.0 + minisearch: 6.3.0 + ohash: 1.1.3 + pathe: 1.1.2 + scule: 1.3.0 + shiki: 1.5.2 + slugify: 1.6.6 + socket.io-client: 4.7.5 + ufo: 1.5.3 + unist-util-stringify-position: 4.0.0 + unstorage: 1.10.2(ioredis@5.4.1) + ws: 8.17.0 transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@netlify/blobs' + - '@planetscale/database' + - '@upstash/redis' + - '@vercel/kv' + - '@vue/composition-api' + - bufferutil + - idb-keyval + - ioredis - magicast + - nuxt - rollup - supports-color + - uWebSockets.js + - utf-8-validate + - vue + + '@nuxt/devalue@2.0.2': {} - '@nuxt/devtools-kit@1.3.3(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))': + '@nuxt/devtools-kit@1.3.3(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))': dependencies: '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@3.29.4) '@nuxt/schema': 3.12.1(rollup@3.29.4) execa: 7.2.0 - nuxt: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + nuxt: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) vite: 5.3.1(@types/node@20.14.2)(terser@5.31.1) transitivePeerDependencies: - magicast - rollup - supports-color - '@nuxt/devtools-kit@1.3.3(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))': + '@nuxt/devtools-kit@1.3.3(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))': dependencies: - '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@4.18.0) - '@nuxt/schema': 3.12.1(rollup@4.18.0) + '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@3.29.4) + '@nuxt/schema': 3.12.1(rollup@3.29.4) execa: 7.2.0 - nuxt: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + nuxt: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) vite: 5.3.1(@types/node@20.14.2)(terser@5.31.1) transitivePeerDependencies: - magicast @@ -10718,78 +10775,13 @@ snapshots: rc9: 2.1.2 semver: 7.6.2 - '@nuxt/devtools@1.3.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5))': + '@nuxt/devtools@1.3.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5))': dependencies: '@antfu/utils': 0.7.8 - '@nuxt/devtools-kit': 1.3.3(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) - '@nuxt/devtools-wizard': 1.3.3 - '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@4.18.0) - '@vue/devtools-applet': 7.1.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) - '@vue/devtools-core': 7.1.3(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) - '@vue/devtools-kit': 7.1.3(vue@3.4.29(typescript@5.4.5)) - birpc: 0.2.17 - consola: 3.2.3 - cronstrue: 2.50.0 - destr: 2.0.3 - error-stack-parser-es: 0.1.4 - execa: 7.2.0 - fast-glob: 3.3.2 - flatted: 3.3.1 - get-port-please: 3.1.2 - hookable: 5.5.3 - image-meta: 0.2.0 - is-installed-globally: 1.0.0 - launch-editor: 2.6.1 - local-pkg: 0.5.0 - magicast: 0.3.4 - nuxt: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) - nypm: 0.3.8 - ohash: 1.1.3 - pacote: 18.0.6 - pathe: 1.1.2 - perfect-debounce: 1.0.0 - pkg-types: 1.1.1 - rc9: 2.1.2 - scule: 1.3.0 - semver: 7.6.2 - simple-git: 3.25.0 - sirv: 2.0.4 - unimport: 3.7.2(rollup@4.18.0) - vite: 5.3.1(@types/node@20.14.2)(terser@5.31.1) - vite-plugin-inspect: 0.8.4(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) - vite-plugin-vue-inspector: 5.1.2(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) - which: 3.0.1 - ws: 8.17.0 - transitivePeerDependencies: - - '@unocss/reset' - - '@vue/composition-api' - - async-validator - - axios - - bluebird - - bufferutil - - change-case - - drauu - - floating-vue - - fuse.js - - idb-keyval - - jwt-decode - - nprogress - - qrcode - - rollup - - sortablejs - - supports-color - - universal-cookie - - unocss - - utf-8-validate - - vue - - '@nuxt/devtools@1.3.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5))': - dependencies: - '@antfu/utils': 0.7.8 - '@nuxt/devtools-kit': 1.3.3(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + '@nuxt/devtools-kit': 1.3.3(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) '@nuxt/devtools-wizard': 1.3.3 '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@3.29.4) - '@vue/devtools-applet': 7.1.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) + '@vue/devtools-applet': 7.1.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) '@vue/devtools-core': 7.1.3(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) '@vue/devtools-kit': 7.1.3(vue@3.4.29(typescript@5.4.5)) birpc: 0.2.17 @@ -10807,7 +10799,7 @@ snapshots: launch-editor: 2.6.1 local-pkg: 0.5.0 magicast: 0.3.4 - nuxt: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + nuxt: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) nypm: 0.3.8 ohash: 1.1.3 pacote: 18.0.6 @@ -10848,13 +10840,13 @@ snapshots: - utf-8-validate - vue - '@nuxt/devtools@1.3.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5))': + '@nuxt/devtools@1.3.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5))': dependencies: '@antfu/utils': 0.7.8 - '@nuxt/devtools-kit': 1.3.3(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + '@nuxt/devtools-kit': 1.3.3(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) '@nuxt/devtools-wizard': 1.3.3 - '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@4.18.0) - '@vue/devtools-applet': 7.1.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) + '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@3.29.4) + '@vue/devtools-applet': 7.1.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) '@vue/devtools-core': 7.1.3(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) '@vue/devtools-kit': 7.1.3(vue@3.4.29(typescript@5.4.5)) birpc: 0.2.17 @@ -10872,7 +10864,7 @@ snapshots: launch-editor: 2.6.1 local-pkg: 0.5.0 magicast: 0.3.4 - nuxt: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + nuxt: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) nypm: 0.3.8 ohash: 1.1.3 pacote: 18.0.6 @@ -10884,9 +10876,9 @@ snapshots: semver: 7.6.2 simple-git: 3.25.0 sirv: 2.0.4 - unimport: 3.7.2(rollup@4.18.0) + unimport: 3.7.2(rollup@3.29.4) vite: 5.3.1(@types/node@20.14.2)(terser@5.31.1) - vite-plugin-inspect: 0.8.4(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + vite-plugin-inspect: 0.8.4(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) vite-plugin-vue-inspector: 5.1.2(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) which: 3.0.1 ws: 8.17.0 @@ -11065,9 +11057,9 @@ snapshots: - rollup - supports-color - '@nuxt/module-builder@0.7.1(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(nuxi@3.12.0)(typescript@5.4.5)': + '@nuxt/module-builder@0.7.1(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(nuxi@3.12.0)(typescript@5.4.5)': dependencies: - '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@3.29.4) + '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@4.18.0) citty: 0.1.6 consola: 3.2.3 defu: 6.1.4 @@ -11168,10 +11160,10 @@ snapshots: - rollup - supports-color - '@nuxt/test-utils@3.13.1(h3@1.11.1)(jsdom@24.1.0)(magicast@0.3.4)(nitropack@2.9.6(@opentelemetry/api@1.9.0)(encoding@0.1.13)(magicast@0.3.4))(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vitest@1.6.0(@types/node@20.14.2)(jsdom@24.1.0)(terser@5.31.1))(vue-router@4.3.3(vue@3.4.29(typescript@5.4.5)))(vue@3.4.29(typescript@5.4.5))': + '@nuxt/test-utils@3.13.1(h3@1.11.1)(jsdom@24.1.0)(magicast@0.3.4)(nitropack@2.9.6(@opentelemetry/api@1.9.0)(encoding@0.1.13)(magicast@0.3.4))(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vitest@1.6.0(@types/node@20.14.2)(jsdom@24.1.0)(terser@5.31.1))(vue-router@4.3.3(vue@3.4.29(typescript@5.4.5)))(vue@3.4.29(typescript@5.4.5))': dependencies: - '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@3.29.4) - '@nuxt/schema': 3.12.1(rollup@3.29.4) + '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@4.18.0) + '@nuxt/schema': 3.12.1(rollup@4.18.0) c12: 1.11.1(magicast@0.3.4) consola: 3.2.3 defu: 6.1.4 @@ -11195,7 +11187,7 @@ snapshots: unenv: 1.9.0 unplugin: 1.10.1 vite: 5.3.1(@types/node@20.14.2)(terser@5.31.1) - vitest-environment-nuxt: 1.0.0(h3@1.11.1)(jsdom@24.1.0)(magicast@0.3.4)(nitropack@2.9.6(@opentelemetry/api@1.9.0)(encoding@0.1.13)(magicast@0.3.4))(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vitest@1.6.0(@types/node@20.14.2)(jsdom@24.1.0)(terser@5.31.1))(vue-router@4.3.3(vue@3.4.29(typescript@5.4.5)))(vue@3.4.29(typescript@5.4.5)) + vitest-environment-nuxt: 1.0.0(h3@1.11.1)(jsdom@24.1.0)(magicast@0.3.4)(nitropack@2.9.6(@opentelemetry/api@1.9.0)(encoding@0.1.13)(magicast@0.3.4))(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vitest@1.6.0(@types/node@20.14.2)(jsdom@24.1.0)(terser@5.31.1))(vue-router@4.3.3(vue@3.4.29(typescript@5.4.5)))(vue@3.4.29(typescript@5.4.5)) vue: 3.4.29(typescript@5.4.5) vue-router: 4.3.3(vue@3.4.29(typescript@5.4.5)) optionalDependencies: @@ -11206,10 +11198,10 @@ snapshots: - rollup - supports-color - '@nuxt/vite-builder@3.12.1(@types/node@20.14.2)(eslint@9.5.0)(magicast@0.3.4)(optionator@0.9.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(vue@3.4.29(typescript@5.4.5))': + '@nuxt/vite-builder@3.12.1(@types/node@20.14.2)(eslint@9.5.0)(magicast@0.3.4)(optionator@0.9.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(vue@3.4.29(typescript@5.4.5))': dependencies: - '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@4.18.0) - '@rollup/plugin-replace': 5.0.7(rollup@4.18.0) + '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@3.29.4) + '@rollup/plugin-replace': 5.0.7(rollup@3.29.4) '@vitejs/plugin-vue': 5.0.5(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) '@vitejs/plugin-vue-jsx': 4.0.0(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) autoprefixer: 10.4.19(postcss@8.4.38) @@ -11232,7 +11224,7 @@ snapshots: perfect-debounce: 1.0.0 pkg-types: 1.1.1 postcss: 8.4.38 - rollup-plugin-visualizer: 5.12.0(rollup@4.18.0) + rollup-plugin-visualizer: 5.12.0(rollup@3.29.4) std-env: 3.7.0 strip-literal: 2.1.0 ufo: 1.5.3 @@ -11264,10 +11256,10 @@ snapshots: - vti - vue-tsc - '@nuxt/vite-builder@3.12.1(@types/node@20.14.2)(eslint@9.5.0)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(vue@3.4.29(typescript@5.4.5))': + '@nuxt/vite-builder@3.12.1(@types/node@20.14.2)(eslint@9.5.0)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(vue@3.4.29(typescript@5.4.5))': dependencies: - '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@3.29.4) - '@rollup/plugin-replace': 5.0.7(rollup@3.29.4) + '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@4.18.0) + '@rollup/plugin-replace': 5.0.7(rollup@4.18.0) '@vitejs/plugin-vue': 5.0.5(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) '@vitejs/plugin-vue-jsx': 4.0.0(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) autoprefixer: 10.4.19(postcss@8.4.38) @@ -11290,7 +11282,7 @@ snapshots: perfect-debounce: 1.0.0 pkg-types: 1.1.1 postcss: 8.4.38 - rollup-plugin-visualizer: 5.12.0(rollup@3.29.4) + rollup-plugin-visualizer: 5.12.0(rollup@4.18.0) std-env: 3.7.0 strip-literal: 2.1.0 ufo: 1.5.3 @@ -11393,6 +11385,48 @@ snapshots: - rollup - supports-color + '@nuxtjs/mdc@0.6.1(magicast@0.3.4)(rollup@4.18.0)': + dependencies: + '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@4.18.0) + '@shikijs/transformers': 1.3.0 + '@types/hast': 3.0.4 + '@types/mdast': 4.0.3 + '@vue/compiler-core': 3.4.29 + consola: 3.2.3 + debug: 4.3.5 + defu: 6.1.4 + destr: 2.0.3 + detab: 3.0.2 + github-slugger: 2.0.0 + hast-util-to-string: 3.0.0 + mdast-util-to-hast: 13.1.0 + micromark-util-sanitize-uri: 2.0.0 + ohash: 1.1.3 + parse5: 7.1.2 + pathe: 1.1.2 + property-information: 6.5.0 + rehype-external-links: 3.0.0 + rehype-raw: 7.0.0 + rehype-slug: 6.0.0 + rehype-sort-attribute-values: 5.0.0 + rehype-sort-attributes: 5.0.0 + remark-emoji: 4.0.1 + remark-gfm: 4.0.0 + remark-mdc: 3.2.0 + remark-parse: 11.0.0 + remark-rehype: 11.1.0 + scule: 1.3.0 + shiki: 1.5.2 + ufo: 1.5.3 + unified: 11.0.4 + unist-builder: 4.0.0 + unist-util-visit: 5.0.0 + unwasm: 0.3.9 + transitivePeerDependencies: + - magicast + - rollup + - supports-color + '@nuxtjs/plausible@1.0.0(magicast@0.3.4)(rollup@3.29.4)': dependencies: '@barbapapazes/plausible-tracker': 0.4.0 @@ -12776,6 +12810,8 @@ snapshots: '@types/json-schema@7.0.15': {} + '@types/json-stable-stringify@1.0.36': {} + '@types/lodash@4.17.5': {} '@types/mdast@4.0.3': @@ -12946,16 +12982,6 @@ snapshots: unhead: 1.9.13 vue: 3.4.29(typescript@5.4.5) - '@unocss/astro@0.59.4(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))': - dependencies: - '@unocss/core': 0.59.4 - '@unocss/reset': 0.59.4 - '@unocss/vite': 0.59.4(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) - optionalDependencies: - vite: 5.3.1(@types/node@20.14.2)(terser@5.31.1) - transitivePeerDependencies: - - rollup - '@unocss/astro@0.59.4(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))': dependencies: '@unocss/core': 0.59.4 @@ -12966,24 +12992,6 @@ snapshots: transitivePeerDependencies: - rollup - '@unocss/cli@0.59.4(rollup@3.29.4)': - dependencies: - '@ampproject/remapping': 2.3.0 - '@rollup/pluginutils': 5.1.0(rollup@3.29.4) - '@unocss/config': 0.59.4 - '@unocss/core': 0.59.4 - '@unocss/preset-uno': 0.59.4 - cac: 6.7.14 - chokidar: 3.6.0 - colorette: 2.0.20 - consola: 3.2.3 - fast-glob: 3.3.2 - magic-string: 0.30.10 - pathe: 1.1.2 - perfect-debounce: 1.0.0 - transitivePeerDependencies: - - rollup - '@unocss/cli@0.59.4(rollup@4.18.0)': dependencies: '@ampproject/remapping': 2.3.0 @@ -13113,22 +13121,6 @@ snapshots: dependencies: '@unocss/core': 0.59.4 - '@unocss/vite@0.59.4(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))': - dependencies: - '@ampproject/remapping': 2.3.0 - '@rollup/pluginutils': 5.1.0(rollup@3.29.4) - '@unocss/config': 0.59.4 - '@unocss/core': 0.59.4 - '@unocss/inspector': 0.59.4 - '@unocss/scope': 0.59.4 - '@unocss/transformer-directives': 0.59.4 - chokidar: 3.6.0 - fast-glob: 3.3.2 - magic-string: 0.30.10 - vite: 5.3.1(@types/node@20.14.2)(terser@5.31.1) - transitivePeerDependencies: - - rollup - '@unocss/vite@0.59.4(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))': dependencies: '@ampproject/remapping': 2.3.0 @@ -13377,36 +13369,6 @@ snapshots: '@vue/devtools-api@6.6.3': {} - '@vue/devtools-applet@7.1.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5))': - dependencies: - '@vue/devtools-core': 7.1.3(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) - '@vue/devtools-kit': 7.1.3(vue@3.4.29(typescript@5.4.5)) - '@vue/devtools-shared': 7.2.1 - '@vue/devtools-ui': 7.2.1(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vue@3.4.29(typescript@5.4.5)) - lodash-es: 4.17.21 - perfect-debounce: 1.0.0 - shiki: 1.3.0 - splitpanes: 3.1.5 - vue: 3.4.29(typescript@5.4.5) - vue-virtual-scroller: 2.0.0-beta.8(vue@3.4.29(typescript@5.4.5)) - transitivePeerDependencies: - - '@unocss/reset' - - '@vue/composition-api' - - async-validator - - axios - - change-case - - drauu - - floating-vue - - fuse.js - - idb-keyval - - jwt-decode - - nprogress - - qrcode - - sortablejs - - universal-cookie - - unocss - - vite - '@vue/devtools-applet@7.1.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5))': dependencies: '@vue/devtools-core': 7.1.3(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) @@ -13462,32 +13424,6 @@ snapshots: dependencies: rfdc: 1.4.1 - '@vue/devtools-ui@7.2.1(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vue@3.4.29(typescript@5.4.5))': - dependencies: - '@unocss/reset': 0.59.4 - '@vue/devtools-shared': 7.2.1 - '@vueuse/components': 10.11.0(vue@3.4.29(typescript@5.4.5)) - '@vueuse/core': 10.11.0(vue@3.4.29(typescript@5.4.5)) - '@vueuse/integrations': 10.11.0(change-case@4.1.2)(focus-trap@7.5.4)(fuse.js@6.6.2)(vue@3.4.29(typescript@5.4.5)) - colord: 2.9.3 - floating-vue: 5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)) - focus-trap: 7.5.4 - unocss: 0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) - vue: 3.4.29(typescript@5.4.5) - transitivePeerDependencies: - - '@vue/composition-api' - - async-validator - - axios - - change-case - - drauu - - fuse.js - - idb-keyval - - jwt-decode - - nprogress - - qrcode - - sortablejs - - universal-cookie - '@vue/devtools-ui@7.2.1(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vue@3.4.29(typescript@5.4.5))': dependencies: '@unocss/reset': 0.59.4 @@ -13630,13 +13566,28 @@ snapshots: '@vueuse/metadata@9.13.0': {} - '@vueuse/nuxt@10.9.0(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5))': + '@vueuse/nuxt@10.9.0(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(vue@3.4.29(typescript@5.4.5))': dependencies: '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@3.29.4) '@vueuse/core': 10.9.0(vue@3.4.29(typescript@5.4.5)) '@vueuse/metadata': 10.9.0 local-pkg: 0.5.0 - nuxt: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + nuxt: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) + vue-demi: 0.14.8(vue@3.4.29(typescript@5.4.5)) + transitivePeerDependencies: + - '@vue/composition-api' + - magicast + - rollup + - supports-color + - vue + + '@vueuse/nuxt@10.9.0(magicast@0.3.4)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(vue@3.4.29(typescript@5.4.5))': + dependencies: + '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@4.18.0) + '@vueuse/core': 10.9.0(vue@3.4.29(typescript@5.4.5)) + '@vueuse/metadata': 10.9.0 + local-pkg: 0.5.0 + nuxt: 3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) vue-demi: 0.14.8(vue@3.4.29(typescript@5.4.5)) transitivePeerDependencies: - '@vue/composition-api' @@ -15541,14 +15492,6 @@ snapshots: flatted@3.3.1: {} - floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)): - dependencies: - '@floating-ui/dom': 1.1.1 - vue: 3.4.29(typescript@5.4.5) - vue-resize: 2.0.0-alpha.1(vue@3.4.29(typescript@5.4.5)) - optionalDependencies: - '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@3.29.4) - floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)): dependencies: '@floating-ui/dom': 1.1.1 @@ -16512,6 +16455,13 @@ snapshots: json-stable-stringify-without-jsonify@1.0.1: {} + json-stable-stringify@1.1.1: + dependencies: + call-bind: 1.0.7 + isarray: 2.0.5 + jsonify: 0.0.1 + object-keys: 1.1.1 + json5@2.2.3: {} jsonc-parser@3.2.1: {} @@ -16522,6 +16472,8 @@ snapshots: optionalDependencies: graceful-fs: 4.2.11 + jsonify@0.0.1: {} + jsonparse@1.3.1: {} jstransformer@1.0.0: @@ -17575,133 +17527,14 @@ snapshots: - supports-color - vue - nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)): - dependencies: - '@nuxt/devalue': 2.0.2 - '@nuxt/devtools': 1.3.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) - '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@4.18.0) - '@nuxt/schema': 3.12.1(rollup@4.18.0) - '@nuxt/telemetry': 2.5.4(magicast@0.3.4)(rollup@4.18.0) - '@nuxt/vite-builder': 3.12.1(@types/node@20.14.2)(eslint@9.5.0)(magicast@0.3.4)(optionator@0.9.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(vue@3.4.29(typescript@5.4.5)) - '@unhead/dom': 1.9.13 - '@unhead/ssr': 1.9.13 - '@unhead/vue': 1.9.13(vue@3.4.29(typescript@5.4.5)) - '@vue/shared': 3.4.29 - acorn: 8.11.3 - c12: 1.11.1(magicast@0.3.4) - chokidar: 3.6.0 - cookie-es: 1.1.0 - defu: 6.1.4 - destr: 2.0.3 - devalue: 5.0.0 - esbuild: 0.21.5 - escape-string-regexp: 5.0.0 - estree-walker: 3.0.3 - fs-extra: 11.2.0 - globby: 14.0.1 - h3: 1.11.1 - hookable: 5.5.3 - ignore: 5.3.1 - jiti: 1.21.6 - klona: 2.0.6 - knitwork: 1.1.0 - magic-string: 0.30.10 - mlly: 1.7.1 - nitropack: 2.9.6(@opentelemetry/api@1.9.0)(encoding@0.1.13)(magicast@0.3.4) - nuxi: 3.12.0 - nypm: 0.3.8 - ofetch: 1.3.4 - ohash: 1.1.3 - pathe: 1.1.2 - perfect-debounce: 1.0.0 - pkg-types: 1.1.1 - radix3: 1.1.2 - scule: 1.3.0 - semver: 7.6.2 - std-env: 3.7.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.2(rollup@4.18.0) - unplugin: 1.10.1 - unplugin-vue-router: 0.7.0(rollup@4.18.0)(vue-router@4.3.3(vue@3.4.29(typescript@5.4.5)))(vue@3.4.29(typescript@5.4.5)) - unstorage: 1.10.2(ioredis@5.4.1) - untyped: 1.4.2 - vue: 3.4.29(typescript@5.4.5) - vue-bundle-renderer: 2.1.0 - vue-devtools-stub: 0.1.0 - vue-router: 4.3.3(vue@3.4.29(typescript@5.4.5)) - optionalDependencies: - '@parcel/watcher': 2.4.1 - '@types/node': 20.14.2 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@libsql/client' - - '@netlify/blobs' - - '@opentelemetry/api' - - '@planetscale/database' - - '@unocss/reset' - - '@upstash/redis' - - '@vercel/kv' - - '@vue/composition-api' - - async-validator - - axios - - better-sqlite3 - - bluebird - - bufferutil - - change-case - - drauu - - drizzle-orm - - encoding - - eslint - - floating-vue - - fuse.js - - idb-keyval - - ioredis - - jwt-decode - - less - - lightningcss - - magicast - - meow - - nprogress - - optionator - - qrcode - - rollup - - sass - - sortablejs - - stylelint - - stylus - - sugarss - - supports-color - - terser - - typescript - - uWebSockets.js - - universal-cookie - - unocss - - utf-8-validate - - vite - - vls - - vti - - vue-tsc - - xml2js - - nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)): + nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)): dependencies: '@nuxt/devalue': 2.0.2 - '@nuxt/devtools': 1.3.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) + '@nuxt/devtools': 1.3.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(optionator@0.9.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@3.29.4) '@nuxt/schema': 3.12.1(rollup@3.29.4) '@nuxt/telemetry': 2.5.4(magicast@0.3.4)(rollup@3.29.4) - '@nuxt/vite-builder': 3.12.1(@types/node@20.14.2)(eslint@9.5.0)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(vue@3.4.29(typescript@5.4.5)) + '@nuxt/vite-builder': 3.12.1(@types/node@20.14.2)(eslint@9.5.0)(magicast@0.3.4)(optionator@0.9.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(vue@3.4.29(typescript@5.4.5)) '@unhead/dom': 1.9.13 '@unhead/ssr': 1.9.13 '@unhead/vue': 1.9.13(vue@3.4.29(typescript@5.4.5)) @@ -17813,14 +17646,14 @@ snapshots: - vue-tsc - xml2js - nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)): + nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)): dependencies: '@nuxt/devalue': 2.0.2 - '@nuxt/devtools': 1.3.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@3.29.4))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@4.18.0)(unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) - '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@4.18.0) - '@nuxt/schema': 3.12.1(rollup@4.18.0) - '@nuxt/telemetry': 2.5.4(magicast@0.3.4)(rollup@4.18.0) - '@nuxt/vite-builder': 3.12.1(@types/node@20.14.2)(eslint@9.5.0)(magicast@0.3.4)(optionator@0.9.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(vue@3.4.29(typescript@5.4.5)) + '@nuxt/devtools': 1.3.3(@unocss/reset@0.59.4)(change-case@4.1.2)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(nuxt@3.12.1(@opentelemetry/api@1.9.0)(@parcel/watcher@2.4.1)(@types/node@20.14.2)(@unocss/reset@0.59.4)(change-case@4.1.2)(encoding@0.1.13)(eslint@9.5.0)(floating-vue@5.2.2(@nuxt/kit@3.12.1(magicast@0.3.4)(rollup@4.18.0))(vue@3.4.29(typescript@5.4.5)))(fuse.js@6.6.2)(ioredis@5.4.1)(magicast@0.3.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(rollup@3.29.4)(unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)))(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vue@3.4.29(typescript@5.4.5)) + '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@3.29.4) + '@nuxt/schema': 3.12.1(rollup@3.29.4) + '@nuxt/telemetry': 2.5.4(magicast@0.3.4)(rollup@3.29.4) + '@nuxt/vite-builder': 3.12.1(@types/node@20.14.2)(eslint@9.5.0)(magicast@0.3.4)(optionator@0.9.4)(rollup@3.29.4)(terser@5.31.1)(typescript@5.4.5)(vue@3.4.29(typescript@5.4.5)) '@unhead/dom': 1.9.13 '@unhead/ssr': 1.9.13 '@unhead/vue': 1.9.13(vue@3.4.29(typescript@5.4.5)) @@ -17863,9 +17696,9 @@ snapshots: uncrypto: 0.1.3 unctx: 2.3.1 unenv: 1.9.0 - unimport: 3.7.2(rollup@4.18.0) + unimport: 3.7.2(rollup@3.29.4) unplugin: 1.10.1 - unplugin-vue-router: 0.7.0(rollup@4.18.0)(vue-router@4.3.3(vue@3.4.29(typescript@5.4.5)))(vue@3.4.29(typescript@5.4.5)) + unplugin-vue-router: 0.7.0(rollup@3.29.4)(vue-router@4.3.3(vue@3.4.29(typescript@5.4.5)))(vue@3.4.29(typescript@5.4.5)) unstorage: 1.10.2(ioredis@5.4.1) untyped: 1.4.2 vue: 3.4.29(typescript@5.4.5) @@ -17939,7 +17772,7 @@ snapshots: '@nuxt/kit': 3.12.1(magicast@0.3.4)(rollup@4.18.0) '@nuxt/schema': 3.12.1(rollup@4.18.0) '@nuxt/telemetry': 2.5.4(magicast@0.3.4)(rollup@4.18.0) - '@nuxt/vite-builder': 3.12.1(@types/node@20.14.2)(eslint@9.5.0)(magicast@0.3.4)(optionator@0.9.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(vue@3.4.29(typescript@5.4.5)) + '@nuxt/vite-builder': 3.12.1(@types/node@20.14.2)(eslint@9.5.0)(magicast@0.3.4)(rollup@4.18.0)(terser@5.31.1)(typescript@5.4.5)(vue@3.4.29(typescript@5.4.5)) '@unhead/dom': 1.9.13 '@unhead/ssr': 1.9.13 '@unhead/vue': 1.9.13(vue@3.4.29(typescript@5.4.5)) @@ -20405,35 +20238,6 @@ snapshots: universalify@2.0.1: {} - unocss@0.59.4(postcss@8.4.38)(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)): - dependencies: - '@unocss/astro': 0.59.4(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) - '@unocss/cli': 0.59.4(rollup@3.29.4) - '@unocss/core': 0.59.4 - '@unocss/extractor-arbitrary-variants': 0.59.4 - '@unocss/postcss': 0.59.4(postcss@8.4.38) - '@unocss/preset-attributify': 0.59.4 - '@unocss/preset-icons': 0.59.4 - '@unocss/preset-mini': 0.59.4 - '@unocss/preset-tagify': 0.59.4 - '@unocss/preset-typography': 0.59.4 - '@unocss/preset-uno': 0.59.4 - '@unocss/preset-web-fonts': 0.59.4 - '@unocss/preset-wind': 0.59.4 - '@unocss/reset': 0.59.4 - '@unocss/transformer-attributify-jsx': 0.59.4 - '@unocss/transformer-attributify-jsx-babel': 0.59.4 - '@unocss/transformer-compile-class': 0.59.4 - '@unocss/transformer-directives': 0.59.4 - '@unocss/transformer-variant-group': 0.59.4 - '@unocss/vite': 0.59.4(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) - optionalDependencies: - vite: 5.3.1(@types/node@20.14.2)(terser@5.31.1) - transitivePeerDependencies: - - postcss - - rollup - - supports-color - unocss@0.59.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)): dependencies: '@unocss/astro': 0.59.4(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1)) @@ -20763,9 +20567,9 @@ snapshots: fsevents: 2.3.3 terser: 5.31.1 - vitest-environment-nuxt@1.0.0(h3@1.11.1)(jsdom@24.1.0)(magicast@0.3.4)(nitropack@2.9.6(@opentelemetry/api@1.9.0)(encoding@0.1.13)(magicast@0.3.4))(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vitest@1.6.0(@types/node@20.14.2)(jsdom@24.1.0)(terser@5.31.1))(vue-router@4.3.3(vue@3.4.29(typescript@5.4.5)))(vue@3.4.29(typescript@5.4.5)): + vitest-environment-nuxt@1.0.0(h3@1.11.1)(jsdom@24.1.0)(magicast@0.3.4)(nitropack@2.9.6(@opentelemetry/api@1.9.0)(encoding@0.1.13)(magicast@0.3.4))(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vitest@1.6.0(@types/node@20.14.2)(jsdom@24.1.0)(terser@5.31.1))(vue-router@4.3.3(vue@3.4.29(typescript@5.4.5)))(vue@3.4.29(typescript@5.4.5)): dependencies: - '@nuxt/test-utils': 3.13.1(h3@1.11.1)(jsdom@24.1.0)(magicast@0.3.4)(nitropack@2.9.6(@opentelemetry/api@1.9.0)(encoding@0.1.13)(magicast@0.3.4))(rollup@3.29.4)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vitest@1.6.0(@types/node@20.14.2)(jsdom@24.1.0)(terser@5.31.1))(vue-router@4.3.3(vue@3.4.29(typescript@5.4.5)))(vue@3.4.29(typescript@5.4.5)) + '@nuxt/test-utils': 3.13.1(h3@1.11.1)(jsdom@24.1.0)(magicast@0.3.4)(nitropack@2.9.6(@opentelemetry/api@1.9.0)(encoding@0.1.13)(magicast@0.3.4))(rollup@4.18.0)(vite@5.3.1(@types/node@20.14.2)(terser@5.31.1))(vitest@1.6.0(@types/node@20.14.2)(jsdom@24.1.0)(terser@5.31.1))(vue-router@4.3.3(vue@3.4.29(typescript@5.4.5)))(vue@3.4.29(typescript@5.4.5)) transitivePeerDependencies: - '@cucumber/cucumber' - '@jest/globals' diff --git a/src/storybook.ts b/src/storybook.ts index df798619..bcb4afce 100644 --- a/src/storybook.ts +++ b/src/storybook.ts @@ -1,107 +1,91 @@ import { resolve } from 'node:path' -import { existsSync } from 'node:fs' -import { startSubprocess } from '@nuxt/devtools-kit' import type { Nuxt } from 'nuxt/schema' import { getPort } from 'get-port-please' -import { extendViteConfig, logger } from '@nuxt/kit' import type { ModuleOptions } from './module' import { withTrailingSlash } from 'ufo' -import { colors } from './logger' +import { colors, logger } from './logger' +import { + cache as storybookCache, + type PackageJson, +} from '@storybook/core-common' +import { buildDevStandalone, withTelemetry } from '@storybook/core-server' +import storybookPackageJson from '@storybook/core-server/package.json' + +const buildLogger = logger.withTag('build') + +function printError(error: { + error?: Error + stats?: { compilation?: { errors: Error[] } } + close?: boolean + compilation?: { errors: Error[] } +}) { + if (error instanceof Error) { + if (error.error) { + buildLogger.error(error.error) + } else if (error.stats?.compilation?.errors) { + error.stats.compilation.errors.forEach((e) => buildLogger.log(e)) + } else { + buildLogger.error(error) + } + } else if (error.compilation?.errors) { + error.compilation.errors.forEach((e) => buildLogger.log(e)) + } + + buildLogger.warn( + error.close + ? ` + FATAL broken build!, will close the process, + Fix the error below and restart storybook. + ` + : ` + Broken build, fix the error above. + You may need to refresh the browser. + `, + ) +} export async function setupStorybook(options: ModuleOptions, nuxt: Nuxt) { - const STORYBOOK_ROUTE = options.route - const STORYBOOK_PORT = await getPort({ + const storybookRoute = options.route + const storybookServerPort = await getPort({ ports: [options.port || 6006, 6007, 6008, 6009, 6010], }) - const STORYBOOK_HOST = options.host - const STORYBOOK_URL = - STORYBOOK_HOST + (STORYBOOK_PORT == 80 ? '' : `:${STORYBOOK_PORT}`) const projectDir = resolve(nuxt.options.rootDir) - const args = isStorybookConfigured(projectDir) - ? ['storybook', 'dev', '--port', `${STORYBOOK_PORT}`, '--ci'] - : [ - 'storybook-nuxt', - 'init', - '--start', - '--port', - `${STORYBOOK_PORT}`, - '--ci', - ] - logger.verbose(' ') - logger.verbose( - isStorybookConfigured(projectDir) - ? '📚 Storybook is configured' - : '📚 Storybook is not installed', - ) - logger.verbose('') + const storybookOptions = { + port: storybookServerPort, + configDir: resolve(projectDir, './.storybook'), + configType: 'DEVELOPMENT', + cache: storybookCache, + packageJson: storybookPackageJson as PackageJson, + } satisfies Parameters[0] if (!nuxt.options.dev) return - nuxt.hook('app:resolve', async () => { - const _process = startSubprocess( - { - command: 'npx', - args, - cwd: projectDir, + logger.verbose('Starting Storybook') + const result = await withTelemetry( + 'dev', + { + cliOptions: {}, + presetOptions: { + ...storybookOptions, + corePresets: [], + overridePresets: [], }, - { - id: 'nuxt-storybook-module:client', - name: 'Storybook Server Terminal', - }, - nuxt, - ) - _process.getProcess().stdout?.pipe(process.stdout) - _process.getProcess().stderr?.pipe(process.stderr) - - nuxt.hook('close', () => { - logger.verbose(' ⚠ī¸ Closing Storybook ') - return _process.terminate() - }) - - await new Promise((resolve) => setTimeout(resolve, 2000)) - logger.verbose('ℹī¸ Storybook ready ') - }) - - const storybookProxy = { - target: STORYBOOK_URL, - changeOrigin: true, - followRedirects: true, - secure: false, - rewrite: (path: string) => path.replace(STORYBOOK_ROUTE, ''), + printError, + }, + () => buildDevStandalone(storybookOptions), + ) + if (!result) { + logger.error('Failed to start Storybook') + return } - - extendViteConfig((config) => { - config.optimizeDeps ??= {} - config.optimizeDeps.include = config.optimizeDeps.include || [] - - config.server ??= {} - config.server.proxy ??= {} - - config.server.proxy[STORYBOOK_ROUTE] = storybookProxy - config.server.proxy['/@vite/client'] = storybookProxy - config.server.proxy['/virtual:/@storybook'] = storybookProxy - config.server.proxy['/node_modules'] = storybookProxy - config.server.proxy['/.storybook'] = storybookProxy - config.server.proxy['/stores'] = storybookProxy - - config.server.proxy['/stories'] = storybookProxy - config.server.proxy['/assets'] = storybookProxy - config.server.proxy['/@id'] = storybookProxy - config.server.proxy['/@fs'] = storybookProxy - config.server.proxy['/app.vue'] = storybookProxy - config.server.proxy['/.nuxt'] = storybookProxy - config.server.proxy['/app.config.mjs'] = storybookProxy - - config.server.proxy['/i18n.options.mjs'] = storybookProxy - config.server.proxy['/i18n.config.ts'] = storybookProxy - config.server.proxy['/components'] = storybookProxy - config.server.proxy['/composables'] = storybookProxy - config.server.proxy['/layouts'] = storybookProxy - config.server.proxy['/pages'] = storybookProxy - config.server.proxy['/storybook-server-channel'] = storybookProxy - }) + logger.log( + ` ➜ Storybook: ${colors.underline(withTrailingSlash(result.address))}`, + ) + logger.verbose( + ` ➜ Storybook: ${colors.underline(withTrailingSlash(result.networkAddress))}`, + ) nuxt.hook('build:done', () => { logger.verbose(' ') @@ -112,10 +96,6 @@ export async function setupStorybook(options: ModuleOptions, nuxt: Nuxt) { import.meta.env.__STORYBOOK__ = JSON.stringify(options) }) - logger.log( - ` ➜ Storybook: ${colors.underline(withTrailingSlash(STORYBOOK_URL))}`, - ) - nuxt.hook('devtools:customTabs', (tabs) => { tabs.push({ // unique identifier @@ -128,18 +108,8 @@ export async function setupStorybook(options: ModuleOptions, nuxt: Nuxt) { view: { type: 'iframe', // absolute URL to the iframes - src: `${STORYBOOK_ROUTE}/`, + src: `${storybookRoute}/`, }, }) }) } - -function isStorybookConfigured(rootDir: string) { - const isTypeScriptProject = existsSync(resolve(rootDir, 'tsconfig.json')) - const configFileExtension = isTypeScriptProject ? 'ts' : 'js' - const sbMain = existsSync( - resolve(rootDir, `.storybook/main.${configFileExtension}`), - ) - - return sbMain -}