diff --git a/.github/workflows/autofix-docs.yml b/.github/workflows/autofix-docs.yml index 221468868a..90d2c5900c 100644 --- a/.github/workflows/autofix-docs.yml +++ b/.github/workflows/autofix-docs.yml @@ -21,7 +21,7 @@ jobs: - run: corepack enable - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version: 22 + node-version: lts/* cache: "pnpm" - name: Install dependencies @@ -33,4 +33,4 @@ jobs: - name: Lint (docs) run: pnpm lint:docs:fix - - uses: autofix-ci/action@ff86a557419858bb967097bfc916833f5647fa8c + - uses: autofix-ci/action@551dded8c6cc8a1054039c8bc0b8b48c51dfc6ef diff --git a/.github/workflows/autofix.yml b/.github/workflows/autofix.yml index ef7cffdf16..2deae847ee 100644 --- a/.github/workflows/autofix.yml +++ b/.github/workflows/autofix.yml @@ -17,14 +17,14 @@ jobs: - run: corepack enable - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version: 22 + node-version: lts/* cache: "pnpm" - name: Install dependencies run: pnpm install - name: Check engine ranges, peer dependency ranges and installed versions - run: pnpm installed-check -d --fix + run: pnpm installed-check --no-include-workspace-root --ignore-dev --workspace-ignore='test/**,playground' --fix - name: Build (stub) run: pnpm dev:prepare @@ -55,4 +55,4 @@ jobs: - name: Lint (code) run: pnpm lint:fix - - uses: autofix-ci/action@ff86a557419858bb967097bfc916833f5647fa8c + - uses: autofix-ci/action@551dded8c6cc8a1054039c8bc0b8b48c51dfc6ef diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml deleted file mode 100644 index 3fe89901fd..0000000000 --- a/.github/workflows/benchmark.yml +++ /dev/null @@ -1,52 +0,0 @@ -name: benchmark - -on: - workflow_dispatch: - # pull_request: - # paths-ignore: - # - "docs/**" - # - "*.md" - # branches: - # - main - # - "!v[0-9]*" - -# https://github.com/vitejs/vite/blob/main/.github/workflows/ci.yml -env: - # 7 GiB by default on GitHub, setting to 6 GiB - # https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources - NODE_OPTIONS: --max-old-space-size=6144 - -# Remove default permissions of GITHUB_TOKEN for security -# https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs -permissions: {} - -concurrency: - group: ${{ github.workflow }}-${{ github.event.number || github.sha }} - cancel-in-progress: ${{ github.event_name != 'push' }} - -jobs: - run: - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - run: corepack enable - - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 - with: - node-version: 22 - cache: "pnpm" - - - name: Install dependencies - run: pnpm install - - - name: Build (stub) - run: pnpm dev:prepare - - - name: Build - run: pnpm build - - - name: Run benchmarks - uses: CodSpeedHQ/action@513a19673a831f139e8717bf45ead67e47f00044 # v3.2.0 - with: - run: pnpm vitest bench - token: ${{ secrets.CODSPEED_TOKEN }} diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index 23f47acac0..9440a6b164 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -28,7 +28,7 @@ jobs: - run: corepack enable - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version: 22 + node-version: lts/* cache: "pnpm" - name: Install dependencies diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1ad3152721..914efdc850 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -41,7 +41,7 @@ jobs: - run: corepack enable - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version: 20 + node-version: lts/* cache: "pnpm" - name: Install dependencies @@ -56,9 +56,6 @@ jobs: - name: Build run: pnpm build - - name: Check types - run: pnpm test:attw - - name: Cache dist uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0 with: @@ -81,7 +78,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Initialize CodeQL - uses: github/codeql-action/init@b6a472f63d85b9c78a3ac5e89422239fc15e9b3c # v3.28.1 + uses: github/codeql-action/init@ee117c905ab18f32fa0f66c2fe40ecc8013f3e04 # v3.28.4 with: config: | paths: @@ -98,7 +95,7 @@ jobs: languages: ${{ matrix.language }} - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@b6a472f63d85b9c78a3ac5e89422239fc15e9b3c # v3.28.1 + uses: github/codeql-action/analyze@ee117c905ab18f32fa0f66c2fe40ecc8013f3e04 # v3.28.4 with: category: "/language:${{ matrix.language }}" @@ -118,7 +115,7 @@ jobs: - run: corepack enable - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version: 22 + node-version: lts/* cache: "pnpm" - name: Install dependencies @@ -149,7 +146,7 @@ jobs: - run: corepack enable - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version: 22 + node-version: lts/* cache: "pnpm" - name: Install dependencies @@ -161,6 +158,9 @@ jobs: - name: Lint run: pnpm lint + - name: Check built types + run: pnpm test:attw + test-unit: # autofix workflow will be triggered instead for PRs if: github.event_name == 'push' @@ -173,7 +173,7 @@ jobs: - run: corepack enable - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version: 22 + node-version: lts/* cache: "pnpm" - name: Install dependencies @@ -188,6 +188,59 @@ jobs: - name: Test (runtime unit) run: pnpm test:runtime + test-size: + runs-on: ubuntu-latest + needs: + - build + + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - run: corepack enable + - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 + with: + node-version: lts/* + cache: "pnpm" + + - name: Install dependencies + run: pnpm install + + - name: Restore dist cache + uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 + with: + name: dist + path: packages + + - name: Check bundle size + run: pnpm vitest run bundle + + test-benchmark: + runs-on: ubuntu-latest + needs: + - build + + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - run: corepack enable + - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 + with: + node-version: lts/* + cache: "pnpm" + + - name: Install dependencies + run: pnpm install + + - name: Restore dist cache + uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 + with: + name: dist + path: packages + + - name: Run benchmarks + uses: CodSpeedHQ/action@513a19673a831f139e8717bf45ead67e47f00044 # v3.2.0 + with: + run: pnpm vitest bench + token: ${{ secrets.CODSPEED_TOKEN }} + test-fixtures: runs-on: ${{ matrix.os }} needs: @@ -253,27 +306,25 @@ jobs: TEST_MANIFEST: ${{ matrix.manifest }} TEST_CONTEXT: ${{ matrix.context }} TEST_PAYLOAD: ${{ matrix.payload }} - SKIP_BUNDLE_SIZE: ${{ github.event_name != 'push' || matrix.env == 'dev' || matrix.builder == 'webpack' || matrix.context == 'default' || matrix.payload == 'js' || runner.os == 'Windows' }} + SKIP_BUNDLE_SIZE: true - - uses: codecov/codecov-action@1e68e06f1dbfde0e4cefc87efeba9e4643565303 # v5.1.2 + - uses: codecov/codecov-action@0da7aa657d958d32c117fc47e1f977e7524753c7 # v5.3.0 if: github.event_name != 'push' && matrix.env == 'built' && matrix.builder == 'vite' && matrix.context == 'default' && matrix.os == 'ubuntu-latest' && matrix.manifest == 'manifest-on' with: token: ${{ secrets.CODECOV_TOKEN }} - build-release: + release-nightly: concurrency: group: release permissions: id-token: write if: | github.event_name == 'push' && - github.repository == 'nuxt/nuxt' && + github.repository_owner == 'nuxt' && !contains(github.event.head_commit.message, '[skip-release]') && !startsWith(github.event.head_commit.message, 'docs') needs: - - lint - build - - test-fixtures runs-on: ubuntu-latest timeout-minutes: 20 @@ -284,7 +335,7 @@ jobs: - run: corepack enable - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version: 22 + node-version: lts/* cache: "pnpm" - name: Install dependencies @@ -299,22 +350,13 @@ jobs: - name: Release Edge run: ./scripts/release-edge.sh ${{ github.ref == 'refs/heads/main' && 'latest' || '3x' }} env: - NODE_AUTH_TOKEN: ${{secrets.NODE_AUTH_TOKEN}} + NODE_AUTH_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }} NPM_CONFIG_PROVENANCE: true release-pr: - concurrency: - group: release - permissions: - id-token: write - pull-requests: write - if: | - github.event_name == 'pull_request' && - contains(github.event.pull_request.labels.*.name, '🧷 edge release') + if: github.repository_owner == 'nuxt' && github.event_name != 'push' needs: - - lint - build - - test-fixtures runs-on: ubuntu-latest timeout-minutes: 20 @@ -325,7 +367,7 @@ jobs: - run: corepack enable - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version: 22 + node-version: lts/* cache: "pnpm" - name: Install dependencies @@ -337,8 +379,4 @@ jobs: name: dist path: packages - - name: Release Edge - run: ./scripts/release-edge.sh pr-${{ github.event.issue.number }} - env: - NODE_AUTH_TOKEN: ${{secrets.NODE_AUTH_TOKEN}} - NPM_CONFIG_PROVENANCE: true + - run: pnpm pkg-pr-new publish --compact './packages/kit' './packages/nuxt' './packages/rspack' './packages/schema' './packages/vite' './packages/webpack' diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 342573e564..08bbd42e7b 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -25,7 +25,7 @@ jobs: - run: corepack enable - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version: 22 + node-version: lts/* cache: "pnpm" - name: Install dependencies diff --git a/.github/workflows/lint-monorepo.yml b/.github/workflows/lint-monorepo.yml index 3e7930da4b..046f3fe709 100644 --- a/.github/workflows/lint-monorepo.yml +++ b/.github/workflows/lint-monorepo.yml @@ -1,4 +1,4 @@ -name: CI +name: ci on: push: @@ -29,7 +29,7 @@ jobs: - run: corepack enable - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version: 22 + node-version: lts/* cache: "pnpm" - name: Install dependencies @@ -39,4 +39,4 @@ jobs: run: pnpm sherif -r multiple-dependency-versions - name: Check engine ranges, peer dependency ranges and installed versions - run: pnpm installed-check -d + run: pnpm installed-check --no-include-workspace-root --ignore-dev --workspace-ignore='test/**,playground' diff --git a/.github/workflows/lint-workflows.yml b/.github/workflows/lint-workflows.yml index a5b382aef3..6d2424c52d 100644 --- a/.github/workflows/lint-workflows.yml +++ b/.github/workflows/lint-workflows.yml @@ -26,6 +26,6 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 # From https://github.com/rhysd/actionlint/blob/main/docs/usage.md#use-actionlint-on-github-actions - name: Check workflow files - uses: docker://rhysd/actionlint:1.7.6@sha256:e3856d413f923accc4120884ff79f6bdba3dd53fd42884d325f21af61cc15ce0 + uses: docker://rhysd/actionlint:1.7.7@sha256:887a259a5a534f3c4f36cb02dca341673c6089431057242cdc931e9f133147e9 with: args: -color diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index c0b74d25c2..34494d2c6c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -25,7 +25,7 @@ jobs: - run: corepack enable - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version: 20 + node-version: lts/* registry-url: "https://registry.npmjs.org/" cache: "pnpm" diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml index 21ee3efc2e..997f709449 100644 --- a/.github/workflows/scorecards.yml +++ b/.github/workflows/scorecards.yml @@ -68,7 +68,7 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@b6a472f63d85b9c78a3ac5e89422239fc15e9b3c # v3.28.1 + uses: github/codeql-action/upload-sarif@ee117c905ab18f32fa0f66c2fe40ecc8013f3e04 # v3.28.4 if: github.repository == 'nuxt/nuxt' && success() with: sarif_file: results.sarif diff --git a/.github/workflows/semantic-pull-requests.yml b/.github/workflows/semantic-pull-requests.yml index d563f5045f..41e53837bc 100644 --- a/.github/workflows/semantic-pull-requests.yml +++ b/.github/workflows/semantic-pull-requests.yml @@ -17,7 +17,7 @@ jobs: statuses: write # for amannn/action-semantic-pull-request to mark status of analyzed PR if: github.repository == 'nuxt/nuxt' && !startsWith(github.head_ref, 'v') runs-on: ubuntu-latest - name: Semantic pull request + name: semantic-pr steps: - name: Validate PR title uses: amannn/action-semantic-pull-request@0723387faaf9b38adef4775cd42cfd5155ed6017 # v5.5.3 diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 23dccb624d..8620cec097 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -12,7 +12,7 @@ jobs: runs-on: ubuntu-latest if: github.event_name == 'workflow_dispatch' || github.repository == 'nuxt/nuxt' steps: - - uses: actions/stale@28ca1036281a5e5922ead5184a1bbf96e5fc984e # v9.0.0 + - uses: actions/stale@5bef64f19d7facfb25b37b414482c7164d639639 # v9.1.0 with: days-before-stale: -1 # Issues and PR will never be flagged stale automatically. stale-issue-label: 'needs reproduction' # Label that flags an issue as stale. diff --git a/debug/build-config.ts b/debug/build-config.ts new file mode 100644 index 0000000000..254d0d215e --- /dev/null +++ b/debug/build-config.ts @@ -0,0 +1,23 @@ +import { fileURLToPath } from 'node:url' +import process from 'node:process' + +import type { InputPluginOption } from 'rollup' +import type { BuildOptions } from 'unbuild' + +import { AnnotateFunctionTimingsPlugin } from './plugins/timings-unbuild' + +export const stubOptions = { + jiti: { + transformOptions: { + babel: { + plugins: (process.env.TIMINGS_DEBUG ? [fileURLToPath(new URL('./plugins/timings-babel.mjs', import.meta.url))] : []) as any, + }, + }, + }, +} satisfies BuildOptions['stubOptions'] + +export function addRollupTimingsPlugin (options: { plugins: InputPluginOption[] }) { + if (process.env.TIMINGS_DEBUG) { + options.plugins.push(AnnotateFunctionTimingsPlugin()) + } +} diff --git a/debug/plugins/timings-babel.mjs b/debug/plugins/timings-babel.mjs new file mode 100644 index 0000000000..80bf514589 --- /dev/null +++ b/debug/plugins/timings-babel.mjs @@ -0,0 +1,167 @@ +// @ts-check + +import { fileURLToPath } from 'node:url' + +import { declare } from '@babel/helper-plugin-utils' +import { types as t } from '@babel/core' + +const metricsPath = fileURLToPath(new URL('../../debug-timings.json', import.meta.url)) + +// inlined from https://github.com/danielroe/errx +function captureStackTrace () { + const IS_ABSOLUTE_RE = /^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^[a-z]:[/\\]/i + const LINE_RE = /^\s+at (?:(?[^)]+) \()?(?[^)]+)\)?$/u + const SOURCE_RE = /^(?.+):(?\d+):(?\d+)$/u + + if (!Error.captureStackTrace) { + return [] + } + // eslint-disable-next-line unicorn/error-message + const stack = new Error() + Error.captureStackTrace(stack) + const trace = [] + for (const line of stack.stack?.split('\n') || []) { + const parsed = LINE_RE.exec(line)?.groups + if (!parsed) { + continue + } + if (!parsed.source) { + continue + } + const parsedSource = SOURCE_RE.exec(parsed.source)?.groups + if (parsedSource) { + Object.assign(parsed, parsedSource) + } + if (IS_ABSOLUTE_RE.test(parsed.source)) { + parsed.source = `file://${parsed.source}` + } + if (parsed.source === import.meta.url) { + continue + } + for (const key of ['line', 'column']) { + if (parsed[key]) { + // @ts-expect-error + parsed[key] = Number(parsed[key]) + } + } + trace.push(parsed) + } + return trace +} + +export const leading = ` +import { writeFileSync as ____writeFileSync } from 'node:fs' +const ___captureStackTrace = ${captureStackTrace.toString()}; +globalThis.___calls ||= {}; +globalThis.___timings ||= {}; +globalThis.___callers ||= {};` + +function onExit () { + if (globalThis.___logged) { return } + globalThis.___logged = true + + // eslint-disable-next-line no-undef + ____writeFileSync(metricsPath, JSON.stringify(Object.fromEntries(Object.entries(globalThis.___timings).map(([name, time]) => [ + name, + { + time: Number(Number(time).toFixed(2)), + calls: globalThis.___calls[name], + callers: globalThis.___callers[name] ? Object.fromEntries(Object.entries(globalThis.___callers[name]).map(([name, count]) => [name.trim(), count]).sort((a, b) => typeof b[0] === 'string' && typeof a[0] === 'string' ? a[0].localeCompare(b[0]) : 0)) : undefined, + }, + ]).sort((a, b) => typeof b[0] === 'string' && typeof a[0] === 'string' ? a[0].localeCompare(b[0]) : 0)), null, 2)) + + // worst by total time + const timings = Object.entries(globalThis.___timings) + + const topFunctionsTotalTime = timings + .sort((a, b) => b[1] - a[1]) + .slice(0, 20) + .map(([name, time]) => ({ + name, + time: Number(Number(time).toFixed(2)), + calls: globalThis.___calls[name], + callers: globalThis.___callers[name] && Object.entries(globalThis.___callers[name]).map(([name, count]) => `${name.trim()} (${count})`).join(', '), + })) + + // eslint-disable-next-line no-console + console.log('Top 20 functions by total time:') + // eslint-disable-next-line no-console + console.table(topFunctionsTotalTime) + + // worst by average time (excluding single calls) + const topFunctionsAverageTime = timings + .filter(([name]) => (globalThis.___calls[name] || 0) > 1) + .map(([name, time]) => [name, time / (globalThis.___calls[name] || 1)]) + // @ts-expect-error + .sort((a, b) => b[1] - a[1]) + .slice(0, 20) + .map(([name, time]) => ({ + name, + time: Number(Number(time).toFixed(2)), + calls: name && globalThis.___calls[name], + callers: name && globalThis.___callers[name] && Object.entries(globalThis.___callers[name]).sort((a, b) => b[1] - a[1]).map(([name, count]) => `${name.trim()} (${count})`).join(', '), + })) + + // eslint-disable-next-line no-console + console.log('Top 20 functions by average time:') + // eslint-disable-next-line no-console + console.table(topFunctionsAverageTime) +} + +export const trailing = `process.on("exit", ${onExit.toString().replace('metricsPath', JSON.stringify(metricsPath))})` + +/** @param {string} functionName */ +export function generateInitCode (functionName) { + return ` + ___calls[${JSON.stringify(functionName)}] = (___calls[${JSON.stringify(functionName)}] || 0) + 1; + ___timings[${JSON.stringify(functionName)}] ||= 0; + const ___now = Date.now();` +} + +/** @param {string} functionName */ +export function generateFinallyCode (functionName) { + return ` + ___timings[${JSON.stringify(functionName)}] += Date.now() - ___now; + try { + const ___callee = ___captureStackTrace()[1]?.function; + if (___callee) { + ___callers[${JSON.stringify(functionName)}] ||= {}; + ___callers[${JSON.stringify(functionName)}][' ' + ___callee] = (___callers[${JSON.stringify(functionName)}][' ' + ___callee] || 0) + 1; + } + } catch {}` +} + +export default declare((api) => { + api.assertVersion(7) + + return { + name: 'annotate-function-timings', + visitor: { + Program (path) { + path.unshiftContainer('body', t.expressionStatement(t.identifier(leading))) + path.pushContainer('body', t.expressionStatement(t.identifier(trailing))) + }, + FunctionDeclaration (path) { + const functionName = path.node.id?.name + + const start = path.get('body').get('body')[0] + const end = path.get('body').get('body').pop() + + if (!functionName || ['createJiti', '___captureStackTrace', '_interopRequireDefault'].includes(functionName) || !start || !end) { return } + + const initCode = generateInitCode(functionName) + const finallyCode = generateFinallyCode(functionName) + + const originalCode = path.get('body').get('body').map(statement => statement.node) + path.get('body').get('body').forEach(statement => statement.remove()) + + path.get('body').unshiftContainer('body', t.expressionStatement(t.identifier(initCode))) + path.get('body').pushContainer('body', t.tryStatement( + t.blockStatement(originalCode), + t.catchClause(t.identifier('e'), t.blockStatement([])), + t.blockStatement([t.expressionStatement(t.identifier(finallyCode))]), + )) + }, + }, + } +}) diff --git a/debug/plugins/timings-unbuild.ts b/debug/plugins/timings-unbuild.ts new file mode 100644 index 0000000000..d1fdd5df8d --- /dev/null +++ b/debug/plugins/timings-unbuild.ts @@ -0,0 +1,57 @@ +import type { Plugin } from 'rollup' +import { parse } from 'acorn' +import { type Node, walk } from 'estree-walker' +import MagicString from 'magic-string' +import tsBlankSpace from 'ts-blank-space' + +import { generateFinallyCode, generateInitCode, leading, trailing } from './timings-babel.mjs' + +declare global { +// eslint-disable-next-line no-var + var ___logged: boolean + // eslint-disable-next-line no-var + var ___timings: Record + // eslint-disable-next-line no-var + var ___calls: Record + // eslint-disable-next-line no-var + var ___callers: Record + // eslint-disable-next-line no-var + var ____writeFileSync: typeof import('fs').writeFileSync +} + +export function AnnotateFunctionTimingsPlugin () { + return { + name: 'timings', + transform: { + order: 'post', + handler (code, id) { + const s = new MagicString(code) + try { + const ast = parse(tsBlankSpace(code), { sourceType: 'module', ecmaVersion: 'latest', locations: true }) + walk(ast as Node, { + enter (node) { + if (node.type === 'FunctionDeclaration' && node.id && node.id.name) { + const functionName = node.id.name ? `${node.id.name} (${id.match(/[\\/]packages[\\/]([^/]+)[\\/]/)?.[1]})` : '' + const start = (node.body as Node & { start: number, end: number }).start + const end = (node.body as Node & { start: number, end: number }).end + + if (!functionName || ['createJiti', 'captureStackTrace', '___captureStackTrace', '_interopRequireDefault'].includes(functionName) || !start || !end) { return } + + s.prependLeft(start + 1, generateInitCode(functionName) + 'try {') + s.appendRight(end - 1, `} finally { ${generateFinallyCode(functionName)} }`) + } + }, + }) + code = s.toString() + if (!code.includes(leading)) { + code = [leading, code, trailing].join('\n') + } + return code + } catch (e) { + // eslint-disable-next-line no-console + console.log(e, code, id) + } + }, + }, + } satisfies Plugin +} diff --git a/docs/1.getting-started/11.testing.md b/docs/1.getting-started/11.testing.md index 60d0b8db18..97bf358b2d 100644 --- a/docs/1.getting-started/11.testing.md +++ b/docs/1.getting-started/11.testing.md @@ -174,6 +174,7 @@ Under the hood, `mountSuspended` wraps `mount` from `@vue/test-utils`, so you ca For example: ```ts twoslash +// @noErrors import { it, expect } from 'vitest' import type { Component } from 'vue' declare module '#components' { @@ -194,6 +195,7 @@ it('can mount some component', async () => { ``` ```ts twoslash +// @noErrors import { it, expect } from 'vitest' // ---cut--- // tests/components/SomeComponents.nuxt.spec.ts @@ -225,6 +227,7 @@ The passed in component will be rendered inside a `
Examples: ```ts twoslash +// @noErrors import { it, expect } from 'vitest' import type { Component } from 'vue' declare module '#components' { @@ -243,6 +246,7 @@ it('can render some component', async () => { ``` ```ts twoslash +// @noErrors import { it, expect } from 'vitest' // ---cut--- // tests/App.nuxt.spec.ts diff --git a/docs/1.getting-started/6.data-fetching.md b/docs/1.getting-started/6.data-fetching.md index f8c48b3759..c82f5ca2f8 100644 --- a/docs/1.getting-started/6.data-fetching.md +++ b/docs/1.getting-started/6.data-fetching.md @@ -202,6 +202,19 @@ const { data: discounts, status } = await useAsyncData('cart-discount', async () ``` +::note +`useAsyncData` is for fetching and caching data, not triggering side effects like calling Pinia actions, as this can cause unintended behavior such as repeated executions with nullish values. If you need to trigger side effects, use the [`callOnce`](/docs/api/utils/call-once) utility to do so. + +```vue + +``` +:: + ::read-more{to="/docs/api/composables/use-async-data"} Read more about `useAsyncData`. :: diff --git a/docs/2.guide/2.directory-structure/1.content.md b/docs/2.guide/2.directory-structure/1.content.md index 5800a362a0..5b028d49a1 100644 --- a/docs/2.guide/2.directory-structure/1.content.md +++ b/docs/2.guide/2.directory-structure/1.content.md @@ -36,14 +36,24 @@ The module automatically loads and parses them. ## Render Content -To render content pages, add a [catch-all route](/docs/guide/directory-structure/pages/#catch-all-route) using the [``](https://content.nuxt.com/components/content-doc) component: +To render content pages, add a [catch-all route](/docs/guide/directory-structure/pages/#catch-all-route) using the [``](https://content.nuxt.com/docs/components/content-renderer) component: ```vue [pages/[...slug\\].vue] + + ``` diff --git a/docs/2.guide/2.directory-structure/2.env.md b/docs/2.guide/2.directory-structure/2.env.md index 422dde9f90..6976671a42 100644 --- a/docs/2.guide/2.directory-structure/2.env.md +++ b/docs/2.guide/2.directory-structure/2.env.md @@ -28,7 +28,7 @@ Note that removing a variable from `.env` or removing the `.env` file entirely w If you want to use a different file - for example, to use `.env.local` or `.env.production` - you can do so by passing the `--dotenv` flag when using `nuxi`. ```bash [Terminal] -npx nuxi dev --dotenv .env.local +npx nuxi dev -- --dotenv .env.local ``` When updating `.env` in development mode, the Nuxt instance is automatically restarted to apply new values to the `process.env`. diff --git a/docs/2.guide/4.recipes/3.custom-usefetch.md b/docs/2.guide/4.recipes/3.custom-usefetch.md index 45d9651237..bf4b08cdbb 100644 --- a/docs/2.guide/4.recipes/3.custom-usefetch.md +++ b/docs/2.guide/4.recipes/3.custom-usefetch.md @@ -116,6 +116,8 @@ export function useAPI( This example demonstrates how to use a custom `useFetch`, but the same structure is identical for a custom `useAsyncData`. :: +:link-example{to="/docs/examples/advanced/use-custom-fetch-composable"} + ::callout{icon="i-simple-icons-youtube" color="red" to="https://www.youtube.com/watch?v=jXH8Tr-exhI"} Watch a video about custom `$fetch` and Repository Pattern in Nuxt. :: diff --git a/docs/3.api/1.components/1.client-only.md b/docs/3.api/1.components/1.client-only.md index 86e56d2547..1d3b50cf38 100644 --- a/docs/3.api/1.components/1.client-only.md +++ b/docs/3.api/1.components/1.client-only.md @@ -51,3 +51,26 @@ The content of the default slot will be tree-shaken out of the server build. (Th ``` + +## Examples + +### Accessing HTML Elements + +Components inside `` are rendered only after being mounted. To access the rendered elements in the DOM, you can watch a template ref: + +```vue [pages/example.vue] + + + +``` diff --git a/docs/3.api/1.components/4.nuxt-link.md b/docs/3.api/1.components/4.nuxt-link.md index d21b798345..afdef5bd74 100644 --- a/docs/3.api/1.components/4.nuxt-link.md +++ b/docs/3.api/1.components/4.nuxt-link.md @@ -16,19 +16,24 @@ links: In this example, we use `` component to link to another page of the application. +::code-group ```vue [pages/index.vue] ``` +```html [(Renders as) index.html] + +About page +``` +:: + ### Passing Params to Dynamic Routes In this example, we pass the `id` param to link to the route `~/pages/posts/[id].vue`. +::code-group ```vue [pages/index.vue] ``` +```html [(Renders as) index.html] +Post 123 +``` +:: + ::tip Check out the Pages panel in Nuxt DevTools to see the route name and the params it might take. :: -### Handling 404s +### Handling Static File and Cross-App Links -When using `` for `/public` directory files or when pointing to a different app on the same domain, you should use the `external` prop. +By default, `` uses Vue Router's client side navigation for relative route. When linking to static files in the `/public` directory or to another application hosted on the same domain, it might result in unexpected 404 errors because they are not part of the client routes. In such cases, you can use the `external` prop with `` to bypass Vue Router's internal routing mechanism. -Using `external` forces the link to be rendered as an `a` tag instead of a Vue Router `RouterLink`. +The `external` prop explicitly indicates that the link is external. `` will render the link as a standard HTML `` tag. This ensures the link behaves correctly, bypassing Vue Router’s logic and directly pointing to the resource. + +#### Linking to Static Files + +For static files in the `/public` directory, such as PDFs or images, use the `external` prop to ensure the link resolves correctly. ```vue [pages/index.vue] ``` -The external logic is applied by default when using absolute URLs and when providing a `target` prop. +#### Linking to a Cross-App URL + +When pointing to a different application on the same domain, using the `external` prop ensures the correct behavior. + +```vue [pages/index.vue] + +``` + +Using the `external` prop or relying on automatic handling ensures proper navigation, avoids unexpected routing issues, and improves compatibility with static resources or cross-application scenarios. ## External Routing @@ -71,40 +96,126 @@ In this example, we use `` component to link to a website. ``` -## `target` and `rel` Attributes +## `rel` and `noRel` Attributes -A `rel` attribute of `noopener noreferrer` is applied by default to absolute links and links that open in new tabs. +A `rel` attribute of `noopener noreferrer` is applied by default to links with a `target` attribute or to absolute links (e.g., links starting with `http://`, `https://`, or `//`). - `noopener` solves a [security bug](https://mathiasbynens.github.io/rel-noopener/) in older browsers. - `noreferrer` improves privacy for your users by not sending the `Referer` header to the linked site. These defaults have no negative impact on SEO and are considered [best practice](https://developer.chrome.com/docs/lighthouse/best-practices/external-anchors-use-rel-noopener). -When you need to overwrite this behavior you can use the `rel` and `noRel` props. +When you need to overwrite this behavior you can use the `rel` or `noRel` props. ```vue [app.vue] +``` + +A `noRel` prop can be used to prevent the default `rel` attribute from being added to the absolute links. + +```vue [app.vue] + ``` +::note +`noRel` and `rel` cannot be used together. `rel` will be ignored. +:: + +## Prefetch Links + +Nuxt automatically includes smart prefetching. That means it detects when a link is visible (by default), either in the viewport or when scrolling and prefetches the JavaScript for those pages so that they are ready when the user clicks the link. Nuxt only loads the resources when the browser isn't busy and skips prefetching if your connection is offline or if you only have 2g connection. + +```vue [pages/index.vue] +About page not pre-fetched +About page not pre-fetched +``` + +### Custom Prefetch Triggers + +We now support custom prefetch triggers for `` after `v3.13.0`. You can use the `prefetchOn` prop to control when to prefetch links. + +```vue + +``` + +- `visibility`: Prefetches when the link becomes visible in the viewport. Monitors the element's intersection with the viewport using the [Intersection Observer API](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API). Prefetching is triggered when the element is scrolled into view. +- `interaction`: Prefetches when the link is hovered or focused. This approach listens for `pointerenter` and `focus` events, proactively prefetching resources when the user indicates intent to interact. + +You can also use an object to configure `prefetchOn`: + +```vue + +``` + +That you probably don't want both enabled! + +```vue + +``` + +This configuration will observe when the element enters the viewport and also listen for `pointerenter` and `focus` events. This may result in unnecessary resource usage or redundant prefetching, as both triggers can prefetch the same resource under different conditions. + +### Enable Cross-origin Prefetch + +To enable cross-origin prefetching, you can set the `crossOriginPrefetch` option in your `nuxt.config`. This will enabled cross-origin prefetch using the [Speculation Rules API](https://developer.mozilla.org/en-US/docs/Web/API/Speculation_Rules_API). + +```ts [nuxt.config.ts] +export default defineNuxtConfig({ + experimental: { + crossOriginPrefetch: true, + }, +}) +``` + +### Disable prefetch globally + +It's also possible to enable/disable prefetching all links globally for your app. + +```ts [nuxt.config.ts] +export default defineNuxtConfig({ + experimental: { + defaults: { + nuxtLink: { + prefetch: false, + }, + }, + }, +}) +``` + ## Props ### RouterLink @@ -113,16 +224,16 @@ When not using `external`, `` supports all Vue Router's [`RouterLink` - `to`: Any URL or a [route location object](https://router.vuejs.org/api/#RouteLocation) from Vue Router - `custom`: Whether `` should wrap its content in an `` element. It allows taking full control of how a link is rendered and how navigation works when it is clicked. Works the same as [Vue Router's `custom` prop](https://router.vuejs.org/api/interfaces/RouterLinkProps.html#Properties-custom) -- `exactActiveClass`: A class to apply on exact active links. Works the same as [Vue Router's `exact-active-class` prop](https://router.vuejs.org/api/interfaces/RouterLinkProps.html#Properties-exactActiveClass) on internal links. Defaults to Vue Router's default `"router-link-exact-active"`) +- `exactActiveClass`: A class to apply on exact active links. Works the same as [Vue Router's `exactActiveClass` prop](https://router.vuejs.org/api/interfaces/RouterLinkProps.html#Properties-exactActiveClass) on internal links. Defaults to Vue Router's default (`"router-link-exact-active"`) +- `activeClass`: A class to apply on active links. Works the same as [Vue Router's `activeClass` prop](https://router.vuejs.org/api/interfaces/RouterLinkProps.html#Properties-activeClass) on internal links. Defaults to Vue Router's default (`"router-link-active"`) - `replace`: Works the same as [Vue Router's `replace` prop](https://router.vuejs.org/api/interfaces/RouteLocationOptions.html#Properties-replace) on internal links -- `ariaCurrentValue`: An `aria-current` attribute value to apply on exact active links. Works the same as [Vue Router's `aria-current-value` prop](https://router.vuejs.org/api/interfaces/RouterLinkProps.html#Properties-ariaCurrentValue) on internal links -- `activeClass`: A class to apply on active links. Works the same as [Vue Router's `active-class` prop](https://router.vuejs.org/api/interfaces/RouterLinkProps.html#Properties-activeClass) on internal links. Defaults to Vue Router's default (`"router-link-active"`) +- `ariaCurrentValue`: An `aria-current` attribute value to apply on exact active links. Works the same as [Vue Router's `ariaCurrentValue` prop](https://router.vuejs.org/api/interfaces/RouterLinkProps.html#Properties-ariaCurrentValue) on internal links ### NuxtLink - `href`: An alias for `to`. If used with `to`, `href` will be ignored -- `noRel`: If set to `true`, no `rel` attribute will be added to the link -- `external`: Forces the link to be rendered as an `a` tag instead of a Vue Router `RouterLink`. +- `noRel`: If set to `true`, no `rel` attribute will be added to the external link +- `external`: Forces the link to be rendered as an `` tag instead of a Vue Router `RouterLink`. - `prefetch`: When enabled will prefetch middleware, layouts and payloads (when using [payloadExtraction](/docs/api/nuxt-config#crossoriginprefetch)) of links in the viewport. Used by the experimental [crossOriginPrefetch](/docs/api/nuxt-config#crossoriginprefetch) config. - `prefetchOn`: Allows custom control of when to prefetch links. Possible options are `interaction` and `visibility` (default). You can also pass an object for full control, for example: `{ interaction: true, visibility: true }`. This prop is only used when `prefetch` is enabled (default) and `noPrefetch` is not set. - `noPrefetch`: Disables prefetching. @@ -159,6 +270,8 @@ export default defineNuxtConfig({ exactActiveClass: 'router-link-exact-active', prefetchedClass: undefined, // can be any valid string class name trailingSlash: undefined // can be 'append' or 'remove' + prefetch: true, + prefetchOn: { visibility: true } } } } diff --git a/docs/3.api/2.composables/use-async-data.md b/docs/3.api/2.composables/use-async-data.md index 1a297d253f..6f422d19e5 100644 --- a/docs/3.api/2.composables/use-async-data.md +++ b/docs/3.api/2.composables/use-async-data.md @@ -62,7 +62,10 @@ const { data: posts } = await useAsyncData( ## Params - `key`: a unique key to ensure that data fetching can be properly de-duplicated across requests. If you do not provide a key, then a key that is unique to the file name and line number of the instance of `useAsyncData` will be generated for you. -- `handler`: an asynchronous function that must return a truthy value (for example, it should not be `undefined` or `null`) or the request may be duplicated on the client side +- `handler`: an asynchronous function that must return a truthy value (for example, it should not be `undefined` or `null`) or the request may be duplicated on the client side. +::warning +The `handler` function should be **side-effect free** to ensure predictable behavior during SSR and CSR hydration. If you need to trigger side effects, use the [`callOnce`](/docs/api/utils/call-once) utility to do so. +:: - `options`: - `server`: whether to fetch the data on the server (defaults to `true`) - `lazy`: whether to resolve the async function after loading the route, instead of blocking client-side navigation (defaults to `false`) diff --git a/docs/3.api/2.composables/use-head-safe.md b/docs/3.api/2.composables/use-head-safe.md index 2d4b74e34a..956657a9de 100644 --- a/docs/3.api/2.composables/use-head-safe.md +++ b/docs/3.api/2.composables/use-head-safe.md @@ -4,7 +4,7 @@ description: The recommended way to provide head data with user input. links: - label: Source icon: i-simple-icons-github - to: https://github.com/unjs/unhead/blob/main/packages/unhead/src/composables/useHeadSafe.ts + to: https://github.com/unjs/unhead/blob/main/packages/vue/src/composables.ts size: xs --- diff --git a/docs/3.api/2.composables/use-head.md b/docs/3.api/2.composables/use-head.md index 43036a5e84..18de37c85b 100644 --- a/docs/3.api/2.composables/use-head.md +++ b/docs/3.api/2.composables/use-head.md @@ -4,7 +4,7 @@ description: useHead customizes the head properties of individual pages of your links: - label: Source icon: i-simple-icons-github - to: https://github.com/unjs/unhead/blob/main/packages/unhead/src/composables/useHead.ts + to: https://github.com/unjs/unhead/blob/main/packages/vue/src/composables.ts size: xs --- diff --git a/docs/3.api/2.composables/use-nuxt-data.md b/docs/3.api/2.composables/use-nuxt-data.md index a5d3c99016..fc77d5b875 100644 --- a/docs/3.api/2.composables/use-nuxt-data.md +++ b/docs/3.api/2.composables/use-nuxt-data.md @@ -9,11 +9,27 @@ links: --- ::note -`useNuxtData` gives you access to the current cached value of [`useAsyncData`](/docs/api/composables/use-async-data) , `useLazyAsyncData`, [`useFetch`](/docs/api/composables/use-fetch) and [`useLazyFetch`](/docs/api/composables/use-lazy-fetch) with explicitly provided key. +`useNuxtData` gives you access to the current cached value of [`useAsyncData`](/docs/api/composables/use-async-data) , [`useLazyAsyncData`](/docs/api/composables/use-lazy-async-data), [`useFetch`](/docs/api/composables/use-fetch) and [`useLazyFetch`](/docs/api/composables/use-lazy-fetch) with explicitly provided key. :: ## Usage +The `useNuxtData` composable is used to access the current cached value of data-fetching composables such as `useAsyncData`, `useLazyAsyncData`, `useFetch`, and `useLazyFetch`. By providing the key used during the data fetch, you can retrieve the cached data and use it as needed. + +This is particularly useful for optimizing performance by reusing already-fetched data or implementing features like Optimistic Updates or cascading data updates. + +To use `useNuxtData`, ensure that the data-fetching composable (`useFetch`, `useAsyncData`, etc.) has been called with an explicitly provided key. + +## Params + +- `key`: The unique key that identifies the cached data. This key should match the one used during the original data fetch. + +## Return Values + +- `data`: A reactive reference to the cached data associated with the provided key. If no cached data exists, the value will be `null`. This `Ref` automatically updates if the cached data changes, allowing seamless reactivity in your components. + +## Example + The example below shows how you can use cached data as a placeholder while the most recent data is being fetched from the server. ```vue [pages/posts.vue] @@ -26,13 +42,15 @@ const { data } = await useFetch('/api/posts', { key: 'posts' }) ```vue [pages/posts/[id\\].vue] @@ -40,7 +58,9 @@ const { data } = useLazyFetch(`/api/posts/${id}`, { ## Optimistic Updates -We can leverage the cache to update the UI after a mutation, while the data is being invalidated in the background. +The example below shows how implementing Optimistic Updates can be achieved using useNuxtData. + +Optimistic Updates is a technique where the user interface is updated immediately, assuming a server operation will succeed. If the operation eventually fails, the UI is rolled back to its previous state. ```vue [pages/todos.vue] ``` diff --git a/docs/3.api/2.composables/use-seo-meta.md b/docs/3.api/2.composables/use-seo-meta.md index f3b9e95e63..e831f02067 100644 --- a/docs/3.api/2.composables/use-seo-meta.md +++ b/docs/3.api/2.composables/use-seo-meta.md @@ -4,7 +4,7 @@ description: The useSeoMeta composable lets you define your site's SEO meta tags links: - label: Source icon: i-simple-icons-github - to: https://github.com/unjs/unhead/blob/main/packages/unhead/src/composables/useSeoMeta.ts + to: https://github.com/unjs/unhead/blob/main/packages/vue/src/composables.ts size: xs --- diff --git a/docs/3.api/2.composables/use-server-seo-meta.md b/docs/3.api/2.composables/use-server-seo-meta.md index 6b1b2db9fb..d1778428a7 100644 --- a/docs/3.api/2.composables/use-server-seo-meta.md +++ b/docs/3.api/2.composables/use-server-seo-meta.md @@ -4,7 +4,7 @@ description: The useServerSeoMeta composable lets you define your site's SEO met links: - label: Source icon: i-simple-icons-github - to: https://github.com/unjs/unhead/blob/main/packages/unhead/src/composables/useServerSeoMeta.ts + to: https://github.com/unjs/unhead/blob/main/packages/vue/src/composables.ts size: xs --- diff --git a/docs/3.api/3.utils/add-route-middleware.md b/docs/3.api/3.utils/add-route-middleware.md index 5db3ab7009..41bdf1a065 100644 --- a/docs/3.api/3.utils/add-route-middleware.md +++ b/docs/3.api/3.utils/add-route-middleware.md @@ -15,7 +15,12 @@ Route middleware are navigation guards stored in the [`middleware/`](/docs/guide ## Type ```ts -addRouteMiddleware (name: string | RouteMiddleware, middleware?: RouteMiddleware, options: AddRouteMiddlewareOptions = {}) +function addRouteMiddleware (name: string, middleware: RouteMiddleware, options?: AddRouteMiddlewareOptions): void +function addRouteMiddleware (middleware: RouteMiddleware): void + +interface AddRouteMiddlewareOptions { + global?: boolean +} ``` ## Parameters @@ -42,25 +47,9 @@ An optional `options` argument lets you set the value of `global` to `true` to i ## Examples -### Anonymous Route Middleware - -Anonymous route middleware does not have a name. It takes a function as the first argument, making the second `middleware` argument redundant: - -```ts [plugins/my-plugin.ts] -export default defineNuxtPlugin(() => { - addRouteMiddleware((to, from) => { - if (to.path === '/forbidden') { - return false - } - }) -}) -``` - ### Named Route Middleware -Named route middleware takes a string as the first argument and a function as the second. - -When defined in a plugin, it overrides any existing middleware of the same name located in the `middleware/` directory: +Named route middleware is defined by providing a string as the first argument and a function as the second: ```ts [plugins/my-plugin.ts] export default defineNuxtPlugin(() => { @@ -70,16 +59,30 @@ export default defineNuxtPlugin(() => { }) ``` +When defined in a plugin, it overrides any existing middleware of the same name located in the `middleware/` directory. + ### Global Route Middleware -Set an optional, third argument `{ global: true }` to indicate whether the route middleware is global: +Global route middleware can be defined in two ways: -```ts [plugins/my-plugin.ts] -export default defineNuxtPlugin(() => { - addRouteMiddleware('global-middleware', (to, from) => { - console.log('global middleware that runs on every route change') - }, - { global: true } - ) -}) -``` +- Pass a function directly as the first argument without a name. It will automatically be treated as global middleware and applied on every route change. + + ```ts [plugins/my-plugin.ts] + export default defineNuxtPlugin(() => { + addRouteMiddleware((to, from) => { + console.log('anonymous global middleware that runs on every route change') + }) + }) + ``` + +- Set an optional, third argument `{ global: true }` to indicate whether the route middleware is global. + + ```ts [plugins/my-plugin.ts] + export default defineNuxtPlugin(() => { + addRouteMiddleware('global-middleware', (to, from) => { + console.log('global middleware that runs on every route change') + }, + { global: true } + ) + }) + ``` diff --git a/docs/3.api/3.utils/call-once.md b/docs/3.api/3.utils/call-once.md index f3f2b49bc3..35d6c3e957 100644 --- a/docs/3.api/3.utils/call-once.md +++ b/docs/3.api/3.utils/call-once.md @@ -24,6 +24,8 @@ This is useful for code that should be executed only once, such as logging an ev ## Usage +The default mode of `callOnce` is to run code only once. For example, if the code runs on the server it won't run again on the client. It also won't run again if you `callOnce` more than once on the client, for example by navigating back to this page. + ```vue [app.vue] ``` +It is also possible to run on every navigation while still avoiding the initial server/client double load. For this, it is possible to use the `navigation` mode: + +```vue [app.vue] + +``` + +::important +`navigation` mode is available since [Nuxt v3.15](/blog/v3-15). +:: + ::tip{to="/docs/getting-started/state-management#usage-with-pinia"} `callOnce` is useful in combination with the [Pinia module](/modules/pinia) to call store actions. :: @@ -52,9 +71,22 @@ Note that `callOnce` doesn't return anything. You should use [`useAsyncData`](/d ## Type ```ts -callOnce(fn?: () => any | Promise): Promise -callOnce(key: string, fn?: () => any | Promise): Promise +callOnce (key?: string, fn?: (() => any | Promise), options?: CallOnceOptions): Promise +callOnce(fn?: (() => any | Promise), options?: CallOnceOptions): Promise + +type CallOnceOptions = { + /** + * Execution mode for the callOnce function + * @default 'render' + */ + mode?: 'navigation' | 'render' +} ``` +## Parameters + - `key`: A unique key ensuring that the code is run once. If you do not provide a key, then a key that is unique to the file and line number of the instance of `callOnce` will be generated for you. - `fn`: The function to run once. This function can also return a `Promise` and a value. +- `options`: Setup the mode, either to re-execute on navigation (`navigation`) or just once for the lifetime of the app (`render`). Defaults to `render`. + - `render`: Executes once during initial render (either SSR or CSR) - Default mode + - `navigation`: Executes once during initial render and once per subsequent client-side navigation diff --git a/docs/3.api/4.commands/add.md b/docs/3.api/4.commands/add.md index c452ed8b80..458be3b782 100644 --- a/docs/3.api/4.commands/add.md +++ b/docs/3.api/4.commands/add.md @@ -4,7 +4,7 @@ description: "Scaffold an entity into your Nuxt application." links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/add.ts + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/add.ts size: xs --- diff --git a/docs/3.api/4.commands/analyze.md b/docs/3.api/4.commands/analyze.md index 60372bc7c0..f3bb3c3ea6 100644 --- a/docs/3.api/4.commands/analyze.md +++ b/docs/3.api/4.commands/analyze.md @@ -4,7 +4,7 @@ description: "Analyze the production bundle or your Nuxt application." links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/analyze.ts + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/analyze.ts size: xs --- diff --git a/docs/3.api/4.commands/build.md b/docs/3.api/4.commands/build.md index 2fdad2f675..80a3ccdabe 100644 --- a/docs/3.api/4.commands/build.md +++ b/docs/3.api/4.commands/build.md @@ -4,7 +4,7 @@ description: "Build your Nuxt application." links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/build.ts + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/build.ts size: xs --- diff --git a/docs/3.api/4.commands/cleanup.md b/docs/3.api/4.commands/cleanup.md index b7052cda08..97ffeaa1fa 100644 --- a/docs/3.api/4.commands/cleanup.md +++ b/docs/3.api/4.commands/cleanup.md @@ -4,7 +4,7 @@ description: 'Remove common generated Nuxt files and caches.' links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/cleanup.ts + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/cleanup.ts size: xs --- diff --git a/docs/3.api/4.commands/dev.md b/docs/3.api/4.commands/dev.md index 44daff53ed..d94de70904 100644 --- a/docs/3.api/4.commands/dev.md +++ b/docs/3.api/4.commands/dev.md @@ -4,7 +4,7 @@ description: The dev command starts a development server with hot module replace links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/dev.ts + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/dev.ts size: xs --- diff --git a/docs/3.api/4.commands/devtools.md b/docs/3.api/4.commands/devtools.md index 8b65a3c421..ab3d6921f9 100644 --- a/docs/3.api/4.commands/devtools.md +++ b/docs/3.api/4.commands/devtools.md @@ -4,7 +4,7 @@ description: The devtools command allows you to enable or disable Nuxt DevTools links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/devtools.ts + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/devtools.ts size: xs --- diff --git a/docs/3.api/4.commands/generate.md b/docs/3.api/4.commands/generate.md index d0b621af58..6e152bb8ff 100644 --- a/docs/3.api/4.commands/generate.md +++ b/docs/3.api/4.commands/generate.md @@ -4,7 +4,7 @@ description: Pre-renders every route of the application and stores the result in links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/generate.ts + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/generate.ts size: xs --- diff --git a/docs/3.api/4.commands/info.md b/docs/3.api/4.commands/info.md index c47593497d..79f3eb0aac 100644 --- a/docs/3.api/4.commands/info.md +++ b/docs/3.api/4.commands/info.md @@ -4,7 +4,7 @@ description: The info command logs information about the current or specified Nu links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/info.ts + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/info.ts size: xs --- diff --git a/docs/3.api/4.commands/init.md b/docs/3.api/4.commands/init.md index 4e6eeda079..168671ab4e 100644 --- a/docs/3.api/4.commands/init.md +++ b/docs/3.api/4.commands/init.md @@ -4,7 +4,7 @@ description: The init command initializes a fresh Nuxt project. links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/init.ts + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/init.ts size: xs --- diff --git a/docs/3.api/4.commands/module.md b/docs/3.api/4.commands/module.md index b54bcbe61a..846f15272d 100644 --- a/docs/3.api/4.commands/module.md +++ b/docs/3.api/4.commands/module.md @@ -4,7 +4,7 @@ description: "Search and add modules to your Nuxt application with the command l links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/module/ + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/module/ size: xs --- diff --git a/docs/3.api/4.commands/prepare.md b/docs/3.api/4.commands/prepare.md index da5a302a5a..71186d9cbb 100644 --- a/docs/3.api/4.commands/prepare.md +++ b/docs/3.api/4.commands/prepare.md @@ -4,7 +4,7 @@ description: The prepare command creates a .nuxt directory in your application a links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/prepare.ts + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/prepare.ts size: xs --- diff --git a/docs/3.api/4.commands/preview.md b/docs/3.api/4.commands/preview.md index fd3c2325af..2548d8b7a5 100644 --- a/docs/3.api/4.commands/preview.md +++ b/docs/3.api/4.commands/preview.md @@ -4,7 +4,7 @@ description: The preview command starts a server to preview your application aft links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/preview.ts + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/preview.ts size: xs --- diff --git a/docs/3.api/4.commands/typecheck.md b/docs/3.api/4.commands/typecheck.md index 40d1512f32..85276f2489 100644 --- a/docs/3.api/4.commands/typecheck.md +++ b/docs/3.api/4.commands/typecheck.md @@ -4,7 +4,7 @@ description: The typecheck command runs vue-tsc to check types throughout your a links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/typecheck.ts + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/typecheck.ts size: xs --- diff --git a/docs/3.api/4.commands/upgrade.md b/docs/3.api/4.commands/upgrade.md index fe64fc743c..88144d0918 100644 --- a/docs/3.api/4.commands/upgrade.md +++ b/docs/3.api/4.commands/upgrade.md @@ -4,7 +4,7 @@ description: The upgrade command upgrades Nuxt to the latest version. links: - label: Source icon: i-simple-icons-github - to: https://github.com/nuxt/cli/blob/main/src/commands/upgrade.ts + to: https://github.com/nuxt/cli/blob/main/packages/nuxi/src/commands/upgrade.ts size: xs --- diff --git a/package.json b/package.json index a526348c91..3d3c5a7b38 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,9 @@ "build:stub": "pnpm dev:prepare", "dev": "pnpm play", "dev:prepare": "pnpm --filter './packages/**' prepack --stub && pnpm --filter './packages/ui-templates' build", + "debug:prepare": "TIMINGS_DEBUG=true pnpm dev:prepare", + "debug:build": "TIMINGS_DEBUG=true pnpm build", + "debug:dev": "rm -rf **/node_modules/.cache/jiti && pnpm nuxi dev", "lint": "eslint . --cache", "lint:fix": "eslint . --cache --fix", "lint:docs": "markdownlint ./docs && case-police 'docs/**/*.md' *.md", @@ -34,40 +37,46 @@ "typecheck:docs": "DOCS_TYPECHECK=true pnpm nuxi prepare && nuxt-content-twoslash verify --content-dir docs --languages html" }, "resolutions": { + "@babel/core": "7.26.0", + "@babel/helper-plugin-utils": "7.26.5", + "@nuxt/cli": "3.20.0", "@nuxt/kit": "workspace:*", "@nuxt/rspack-builder": "workspace:*", "@nuxt/schema": "workspace:*", "@nuxt/vite-builder": "workspace:*", "@nuxt/webpack-builder": "workspace:*", - "@types/node": "22.10.5", - "@unhead/dom": "1.11.15", - "@unhead/schema": "1.11.15", - "@unhead/shared": "1.11.15", - "@unhead/ssr": "1.11.15", - "@unhead/vue": "1.11.15", + "@types/node": "22.10.10", + "@unhead/dom": "1.11.18", + "@unhead/schema": "1.11.18", + "@unhead/shared": "1.11.18", + "@unhead/ssr": "1.11.18", + "@unhead/vue": "1.11.18", "@vue/compiler-core": "3.5.13", "@vue/compiler-dom": "3.5.13", "@vue/shared": "3.5.13", "c12": "2.0.1", - "h3": "npm:h3-nightly@2.0.0-1718872656.6765a6e", + "h3": "npm:h3-nightly@1.14.0-20250122-114730-3f9e703", "jiti": "2.4.2", "magic-string": "^0.30.17", - "nitro": "npm:nitro-nightly@3.0.0-beta-28796231.359af68d", + "nitro": "npm:nitro-nightly@3.0.0-beta-28938837.19ec5395", "nuxt": "workspace:*", "ohash": "1.1.4", - "postcss": "8.4.49", - "rollup": "4.30.1", + "postcss": "8.5.1", + "rollup": "4.31.0", "send": ">=1.1.0", "typescript": "5.7.3", "ufo": "1.5.4", - "unbuild": "3.2.0", - "unhead": "1.11.15", - "unimport": "3.14.5", - "vite": "6.0.7", + "unbuild": "3.3.1", + "unhead": "1.11.18", + "unimport": "4.0.0", + "vite": "6.0.11", "vue": "3.5.13" }, "devDependencies": { - "@arethetypeswrong/cli": "0.17.2", + "@arethetypeswrong/cli": "0.17.3", + "@babel/core": "7.26.0", + "@babel/helper-plugin-utils": "7.26.5", + "@codspeed/vitest-plugin": "4.0.0", "@nuxt/cli": "3.20.0", "@nuxt/eslint-config": "0.7.5", "@nuxt/kit": "workspace:*", @@ -75,52 +84,58 @@ "@nuxt/test-utils": "3.15.4", "@nuxt/webpack-builder": "workspace:*", "@testing-library/vue": "8.1.0", - "@types/node": "22.10.5", + "@types/babel__core": "7.20.5", + "@types/babel__helper-plugin-utils": "7.10.3", + "@types/node": "22.10.10", "@types/semver": "7.5.8", - "@unhead/schema": "1.11.15", - "@unhead/vue": "1.11.15", - "@vitest/coverage-v8": "2.1.8", + "@unhead/schema": "1.11.18", + "@unhead/vue": "1.11.18", + "@vitest/coverage-v8": "3.0.3", "@vue/test-utils": "2.4.6", + "acorn": "8.14.0", "autoprefixer": "10.4.20", "case-police": "0.7.2", "changelogen": "0.5.7", - "consola": "3.3.3", + "consola": "3.4.0", "cssnano": "7.0.6", "destr": "2.0.3", "devalue": "5.1.1", "eslint": "9.18.0", "eslint-plugin-no-only-tests": "3.3.0", - "eslint-plugin-perfectionist": "4.6.0", + "eslint-plugin-perfectionist": "4.7.0", "eslint-typegen": "1.0.0", - "h3": "npm:h3-nightly@2.0.0-1718872656.6765a6e", - "happy-dom": "16.5.3", + "estree-walker": "3.0.3", + "h3": "npm:h3-nightly@1.14.0-20250122-114730-3f9e703", + "happy-dom": "16.7.2", "installed-check": "9.3.0", "jiti": "2.4.2", - "knip": "5.42.0", + "knip": "5.43.1", + "magic-string": "0.30.17", "markdownlint-cli": "0.43.0", "memfs": "4.17.0", - "nitro": "npm:nitro-nightly@3.0.0-beta-28796231.359af68d", + "nitro": "npm:nitro-nightly@3.0.0-beta-28938837.19ec5395", "nuxt": "workspace:*", "nuxt-content-twoslash": "0.1.2", "ofetch": "1.4.1", - "pathe": "2.0.1", - "playwright-core": "1.49.1", + "pathe": "2.0.2", + "pkg-pr-new": "0.0.39", + "playwright-core": "1.50.0", + "rollup": "4.31.0", "semver": "7.6.3", "sherif": "1.1.1", "std-env": "3.8.0", "tinyexec": "0.3.2", "tinyglobby": "0.2.10", + "ts-blank-space": "0.5.0", "typescript": "5.7.3", "ufo": "1.5.4", - "vitest": "2.1.8", + "unbuild": "3.3.1", + "vitest": "3.0.3", "vitest-environment-nuxt": "1.0.1", "vue": "3.5.13", "vue-tsc": "2.2.0", "webpack": "5.97.1" }, - "packageManager": "pnpm@9.15.3", - "engines": { - "node": "^18.20.4 || ^20.9.0 || ^22.0.0 || >=23.0.0" - }, + "packageManager": "pnpm@9.15.4", "version": "" } diff --git a/packages/kit/build.config.ts b/packages/kit/build.config.ts index d2a1f7fa7d..b0a2cf2487 100644 --- a/packages/kit/build.config.ts +++ b/packages/kit/build.config.ts @@ -1,10 +1,17 @@ import { defineBuildConfig } from 'unbuild' +import { addRollupTimingsPlugin, stubOptions } from '../../debug/build-config' export default defineBuildConfig({ declaration: true, entries: [ 'src/index', ], + stubOptions, + hooks: { + 'rollup:options' (ctx, options) { + addRollupTimingsPlugin(options) + }, + }, externals: [ '@rspack/core', '@nuxt/schema', diff --git a/packages/kit/package.json b/packages/kit/package.json index 3a318286f2..dab580984b 100644 --- a/packages/kit/package.json +++ b/packages/kit/package.json @@ -29,35 +29,36 @@ "dependencies": { "@nuxt/schema": "workspace:*", "c12": "^2.0.1", - "consola": "^3.3.3", + "consola": "^3.4.0", "defu": "^6.1.4", "destr": "^2.0.3", "errx": "^0.1.0", "globby": "^14.0.2", - "ignore": "^7.0.0", + "ignore": "^7.0.3", "jiti": "^2.4.2", "klona": "^2.0.6", - "mlly": "^1.7.3", + "mlly": "^1.7.4", "ohash": "^1.1.4", - "pathe": "^2.0.1", - "pkg-types": "^1.3.0", + "pathe": "^2.0.2", + "pkg-types": "^1.3.1", "scule": "^1.3.0", "semver": "^7.6.3", + "std-env": "^3.8.0", "ufo": "^1.5.4", "unctx": "^2.4.1", - "unimport": "^3.14.5", + "unimport": "^4.0.0", "untyped": "^1.5.2" }, "devDependencies": { - "@rspack/core": "1.1.8", + "@rspack/core": "1.2.2", "@types/semver": "7.5.8", - "nitro": "npm:nitro-nightly@3.0.0-beta-28796231.359af68d", - "unbuild": "3.2.0", - "vite": "6.0.7", - "vitest": "2.1.8", + "nitro": "npm:nitro-nightly@3.0.0-beta-28938837.19ec5395", + "unbuild": "3.3.1", + "vite": "6.0.11", + "vitest": "3.0.3", "webpack": "5.97.1" }, "engines": { - "node": ">=18.20.5" + "node": ">=18.12.0" } } diff --git a/packages/kit/src/build.ts b/packages/kit/src/build.ts index ba4a1d17ba..0f3bb8f48c 100644 --- a/packages/kit/src/build.ts +++ b/packages/kit/src/build.ts @@ -114,7 +114,7 @@ export function addWebpackPlugin (pluginOrGetter: WebpackPluginInstance | Webpac const method: 'push' | 'unshift' = options?.prepend ? 'unshift' : 'push' const plugin = typeof pluginOrGetter === 'function' ? pluginOrGetter() : pluginOrGetter - config.plugins = config.plugins || [] + config.plugins ||= [] config.plugins[method](...toArray(plugin)) }, options) } @@ -126,7 +126,7 @@ export function addRspackPlugin (pluginOrGetter: RspackPluginInstance | RspackPl const method: 'push' | 'unshift' = options?.prepend ? 'unshift' : 'push' const plugin = typeof pluginOrGetter === 'function' ? pluginOrGetter() : pluginOrGetter - config.plugins = config.plugins || [] + config.plugins ||= [] config.plugins[method](...toArray(plugin)) }, options) } @@ -139,7 +139,7 @@ export function addVitePlugin (pluginOrGetter: VitePlugin | VitePlugin[] | (() = const method: 'push' | 'unshift' = options?.prepend ? 'unshift' : 'push' const plugin = typeof pluginOrGetter === 'function' ? pluginOrGetter() : pluginOrGetter - config.plugins = config.plugins || [] + config.plugins ||= [] config.plugins[method](...toArray(plugin)) }, options) } diff --git a/packages/kit/src/compatibility.ts b/packages/kit/src/compatibility.ts index e650dc0710..a7a5568ad0 100644 --- a/packages/kit/src/compatibility.ts +++ b/packages/kit/src/compatibility.ts @@ -14,6 +14,11 @@ const builderMap = { '@nuxt/webpack-builder': 'webpack', } +export function checkNuxtVersion (version: string, nuxt: Nuxt = useNuxt()) { + const nuxtVersion = getNuxtVersion(nuxt) + return satisfies(normalizeSemanticVersion(nuxtVersion), version, { includePrerelease: true }) +} + /** * Check version constraints and return incompatibility issues as an array */ @@ -23,7 +28,7 @@ export async function checkNuxtCompatibility (constraints: NuxtCompatibility, nu // Nuxt version check if (constraints.nuxt) { const nuxtVersion = getNuxtVersion(nuxt) - if (!satisfies(normalizeSemanticVersion(nuxtVersion), constraints.nuxt, { includePrerelease: true })) { + if (!checkNuxtVersion(constraints.nuxt, nuxt)) { issues.push({ name: 'nuxt', message: `Nuxt version \`${constraints.nuxt}\` is required but currently using \`${nuxtVersion}\``, diff --git a/packages/kit/src/components.ts b/packages/kit/src/components.ts index 82394e3811..3b8e441767 100644 --- a/packages/kit/src/components.ts +++ b/packages/kit/src/components.ts @@ -1,17 +1,15 @@ import { kebabCase, pascalCase } from 'scule' import type { Component, ComponentsDir } from '@nuxt/schema' import { useNuxt } from './context' -import { assertNuxtCompatibility } from './compatibility' import { logger } from './logger' import { MODE_RE } from './utils' /** * Register a directory to be scanned for components and imported only when used. */ -export async function addComponentsDir (dir: ComponentsDir, opts: { prepend?: boolean } = {}) { +export function addComponentsDir (dir: ComponentsDir, opts: { prepend?: boolean } = {}) { const nuxt = useNuxt() - await assertNuxtCompatibility({ nuxt: '>=2.13' }, nuxt) - nuxt.options.components = nuxt.options.components || [] + nuxt.options.components ||= [] dir.priority ||= 0 nuxt.hook('components:dirs', (dirs) => { dirs[opts.prepend ? 'unshift' : 'push'](dir) }) } @@ -23,10 +21,9 @@ export type AddComponentOptions = { name: string, filePath: string } & Partial=2.13' }, nuxt) - nuxt.options.components = nuxt.options.components || [] + nuxt.options.components ||= [] if (!opts.mode) { const [, mode = 'all'] = opts.filePath.match(MODE_RE) || [] diff --git a/packages/kit/src/ignore.ts b/packages/kit/src/ignore.ts index dc18508a06..8e52e59b94 100644 --- a/packages/kit/src/ignore.ts +++ b/packages/kit/src/ignore.ts @@ -3,12 +3,14 @@ import ignore from 'ignore' import { join, relative, resolve } from 'pathe' import { tryUseNuxt } from './context' +export function createIsIgnored (nuxt = tryUseNuxt()) { + return (pathname: string, stats?: unknown) => isIgnored(pathname, stats, nuxt) +} + /** * Return a filter function to filter an array of paths */ -export function isIgnored (pathname: string): boolean { - const nuxt = tryUseNuxt() - +export function isIgnored (pathname: string, _stats?: unknown, nuxt = tryUseNuxt()): boolean { // Happens with CLI reloads if (!nuxt) { return false diff --git a/packages/kit/src/index.ts b/packages/kit/src/index.ts index 1ca6230dea..8f9515419c 100644 --- a/packages/kit/src/index.ts +++ b/packages/kit/src/index.ts @@ -19,7 +19,7 @@ export { assertNuxtCompatibility, checkNuxtCompatibility, getNuxtVersion, hasNux export { addComponent, addComponentsDir } from './components' export type { AddComponentOptions } from './components' export { getNuxtCtx, tryUseNuxt, useNuxt, nuxtCtx } from './context' -export { isIgnored, resolveIgnorePatterns } from './ignore' +export { createIsIgnored, isIgnored, resolveIgnorePatterns } from './ignore' export { addLayout } from './layout' export { addRouteMiddleware, extendPages, extendRouteRules } from './pages' export type { AddRouteMiddlewareOptions, ExtendRouteRulesOptions } from './pages' diff --git a/packages/kit/src/loader/config.ts b/packages/kit/src/loader/config.ts index 80139fb015..74652c9b43 100644 --- a/packages/kit/src/loader/config.ts +++ b/packages/kit/src/loader/config.ts @@ -58,7 +58,7 @@ export async function loadNuxtConfig (opts: LoadNuxtConfigOptions): Promise() for (const layer of layers) { // Resolve `rootDir` & `srcDir` of layers - layer.config = layer.config || {} + layer.config ||= {} layer.config.rootDir = layer.config.rootDir ?? layer.cwd! // Only process/resolve layers once diff --git a/packages/kit/src/loader/nuxt.ts b/packages/kit/src/loader/nuxt.ts index eb6ab55a45..273a0c2212 100644 --- a/packages/kit/src/loader/nuxt.ts +++ b/packages/kit/src/loader/nuxt.ts @@ -17,7 +17,7 @@ export interface LoadNuxtOptions extends LoadNuxtConfigOptions { export async function loadNuxt (opts: LoadNuxtOptions): Promise { // Backward compatibility opts.cwd = resolve(opts.cwd || (opts as any).rootDir /* backwards compat */ || '.') - opts.overrides = opts.overrides || (opts as any).config as NuxtConfig /* backwards compat */ || {} + opts.overrides ||= (opts as any).config as NuxtConfig /* backwards compat */ || {} // Apply dev as config override opts.overrides.dev = !!opts.dev diff --git a/packages/kit/src/module/define.ts b/packages/kit/src/module/define.ts index b0f30d80fb..4624692527 100644 --- a/packages/kit/src/module/define.ts +++ b/packages/kit/src/module/define.ts @@ -87,7 +87,7 @@ function _defineNuxtModule< // Avoid duplicate installs const uniqueKey = module.meta.name || module.meta.configKey if (uniqueKey) { - nuxt.options._requiredModules = nuxt.options._requiredModules || {} + nuxt.options._requiredModules ||= {} if (nuxt.options._requiredModules[uniqueKey]) { return false } diff --git a/packages/kit/src/module/install.ts b/packages/kit/src/module/install.ts index 3eda24a871..ba16c59496 100644 --- a/packages/kit/src/module/install.ts +++ b/packages/kit/src/module/install.ts @@ -19,11 +19,11 @@ export async function installModule< > (moduleToInstall: T, inlineOptions?: [Config] extends [never] ? any : Config[1], nuxt: Nuxt = useNuxt()) { const { nuxtModule, buildTimeModuleMeta, resolvedModulePath } = await loadNuxtModuleInstance(moduleToInstall, nuxt) - const localLayerModuleDirs = new Set() + const localLayerModuleDirs: string[] = [] for (const l of nuxt.options._layers) { const srcDir = l.config.srcDir || l.cwd if (!NODE_MODULES_RE.test(srcDir)) { - localLayerModuleDirs.add(resolve(srcDir, l.config?.dir?.modules || 'modules')) + localLayerModuleDirs.push(resolve(srcDir, l.config?.dir?.modules || 'modules').replace(/\/?$/, '/')) } } @@ -38,13 +38,13 @@ export async function installModule< const parsed = parseNodeModulePath(modulePath) const moduleRoot = parsed.dir ? parsed.dir + parsed.name : modulePath nuxt.options.build.transpile.push(normalizeModuleTranspilePath(moduleRoot)) - const directory = parsed.dir ? moduleRoot : getDirectory(modulePath) - if (directory !== moduleToInstall && !localLayerModuleDirs.has(directory)) { + const directory = (parsed.dir ? moduleRoot : getDirectory(modulePath)).replace(/\/?$/, '/') + if (directory !== moduleToInstall && !localLayerModuleDirs.some(dir => directory.startsWith(dir))) { nuxt.options.modulesDir.push(resolve(directory, 'node_modules')) } } - nuxt.options._installedModules = nuxt.options._installedModules || [] + nuxt.options._installedModules ||= [] const entryPath = typeof moduleToInstall === 'string' ? resolveAlias(moduleToInstall) : undefined if (typeof moduleToInstall === 'string' && entryPath !== moduleToInstall) { @@ -95,31 +95,28 @@ export async function loadNuxtModuleInstance (nuxtModule: string | NuxtModule, n paths.add(nuxtModule) for (const path of paths) { - for (const parentURL of nuxt.options.modulesDir) { - try { - const src = isAbsolute(path) - ? pathToFileURL(await resolvePath(path, { cwd: parentURL, fallbackToOriginal: false, extensions: nuxt.options.extensions })).href - : await resolveModule(path, { url: pathToFileURL(parentURL.replace(/\/node_modules\/?$/, '')), extensions: nuxt.options.extensions }) + try { + const src = isAbsolute(path) + ? pathToFileURL(await resolvePath(path, { fallbackToOriginal: false, extensions: nuxt.options.extensions })).href + : await resolveModule(path, { url: nuxt.options.modulesDir.map(m => pathToFileURL(m.replace(/\/node_modules\/?$/, ''))), extensions: nuxt.options.extensions }) - nuxtModule = await jiti.import(src, { default: true }) as NuxtModule - resolvedModulePath = fileURLToPath(new URL(src)) + nuxtModule = await jiti.import(src, { default: true }) as NuxtModule + resolvedModulePath = fileURLToPath(new URL(src)) - // nuxt-module-builder generates a module.json with metadata including the version - const moduleMetadataPath = new URL('module.json', src) - if (existsSync(moduleMetadataPath)) { - buildTimeModuleMeta = JSON.parse(await fsp.readFile(moduleMetadataPath, 'utf-8')) - } - break - } catch (error: unknown) { - const code = (error as Error & { code?: string }).code - if (code === 'MODULE_NOT_FOUND' || code === 'ERR_PACKAGE_PATH_NOT_EXPORTED' || code === 'ERR_MODULE_NOT_FOUND' || code === 'ERR_UNSUPPORTED_DIR_IMPORT' || code === 'ENOTDIR') { - continue - } - logger.error(`Error while importing module \`${nuxtModule}\`: ${error}`) - throw error + // nuxt-module-builder generates a module.json with metadata including the version + const moduleMetadataPath = new URL('module.json', src) + if (existsSync(moduleMetadataPath)) { + buildTimeModuleMeta = JSON.parse(await fsp.readFile(moduleMetadataPath, 'utf-8')) } + break + } catch (error: unknown) { + const code = (error as Error & { code?: string }).code + if (code === 'MODULE_NOT_FOUND' || code === 'ERR_PACKAGE_PATH_NOT_EXPORTED' || code === 'ERR_MODULE_NOT_FOUND' || code === 'ERR_UNSUPPORTED_DIR_IMPORT' || code === 'ENOTDIR') { + continue + } + logger.error(`Error while importing module \`${nuxtModule}\`: ${error}`) + throw error } - if (typeof nuxtModule !== 'string') { break } } } diff --git a/packages/kit/src/nitro.ts b/packages/kit/src/nitro.ts index 4c046f6a9d..361c3c7872 100644 --- a/packages/kit/src/nitro.ts +++ b/packages/kit/src/nitro.ts @@ -40,7 +40,7 @@ export function addDevServerHandler (handler: NitroDevEventHandler) { */ export function addServerPlugin (plugin: string) { const nuxt = useNuxt() - nuxt.options.nitro.plugins = nuxt.options.nitro.plugins || [] + nuxt.options.nitro.plugins ||= [] nuxt.options.nitro.plugins.push(normalize(plugin)) } @@ -89,8 +89,8 @@ export function useNitro (): Nitro { export function addServerImports (imports: Import[]) { const nuxt = useNuxt() nuxt.hook('nitro:config', (config) => { - config.imports = config.imports || {} - config.imports.imports = config.imports.imports || [] + config.imports ||= {} + config.imports.imports ||= [] config.imports.imports.push(...imports) }) } @@ -102,8 +102,8 @@ export function addServerImportsDir (dirs: string | string[], opts: { prepend?: const nuxt = useNuxt() const _dirs = toArray(dirs) nuxt.hook('nitro:config', (config) => { - config.imports = config.imports || {} - config.imports.dirs = config.imports.dirs || [] + config.imports ||= {} + config.imports.dirs ||= [] config.imports.dirs[opts.prepend ? 'unshift' : 'push'](..._dirs) }) } @@ -115,7 +115,7 @@ export function addServerImportsDir (dirs: string | string[], opts: { prepend?: export function addServerScanDir (dirs: string | string[], opts: { prepend?: boolean } = {}) { const nuxt = useNuxt() nuxt.hook('nitro:config', (config) => { - config.scanDirs = config.scanDirs || [] + config.scanDirs ||= [] for (const dir of toArray(dirs)) { config.scanDirs[opts.prepend ? 'unshift' : 'push'](dir) diff --git a/packages/kit/src/pages.ts b/packages/kit/src/pages.ts index 35c73fae83..dbb153487e 100644 --- a/packages/kit/src/pages.ts +++ b/packages/kit/src/pages.ts @@ -20,9 +20,7 @@ export interface ExtendRouteRulesOptions { export function extendRouteRules (route: string, rule: NitroRouteConfig, options: ExtendRouteRulesOptions = {}) { const nuxt = useNuxt() for (const opts of [nuxt.options, nuxt.options.nitro]) { - if (!opts.routeRules) { - opts.routeRules = {} - } + opts.routeRules ||= {} opts.routeRules[route] = options.override ? defu(rule, opts.routeRules[route]) : defu(opts.routeRules[route], rule) diff --git a/packages/kit/src/plugin.ts b/packages/kit/src/plugin.ts index 116721214f..26ae9b70dc 100644 --- a/packages/kit/src/plugin.ts +++ b/packages/kit/src/plugin.ts @@ -1,13 +1,19 @@ +import { existsSync } from 'node:fs' +import { isAbsolute } from 'node:path' +import { pathToFileURL } from 'node:url' import { normalize } from 'pathe' import type { NuxtPlugin, NuxtPluginTemplate } from '@nuxt/schema' -import { useNuxt } from './context' +import { resolvePathSync } from 'mlly' +import { isWindows } from 'std-env' +import { MODE_RE, filterInPlace } from './utils' +import { tryUseNuxt, useNuxt } from './context' import { addTemplate } from './template' import { resolveAlias } from './resolve' -import { MODE_RE } from './utils' /** * Normalize a nuxt plugin object */ +const pluginSymbol = Symbol.for('nuxt plugin') export function normalizePlugin (plugin: NuxtPlugin | string): NuxtPlugin { // Normalize src if (typeof plugin === 'string') { @@ -16,6 +22,10 @@ export function normalizePlugin (plugin: NuxtPlugin | string): NuxtPlugin { plugin = { ...plugin } } + if (pluginSymbol in plugin) { + return plugin + } + if (!plugin.src) { throw new Error('Invalid plugin. src option is required: ' + JSON.stringify(plugin)) } @@ -23,6 +33,14 @@ export function normalizePlugin (plugin: NuxtPlugin | string): NuxtPlugin { // Normalize full path to plugin plugin.src = normalize(resolveAlias(plugin.src)) + if (!existsSync(plugin.src) && isAbsolute(plugin.src)) { + try { + plugin.src = resolvePathSync(isWindows ? pathToFileURL(plugin.src).href : plugin.src, { extensions: tryUseNuxt()?.options.extensions }) + } catch { + // ignore errors as the file may be in the nuxt vfs + } + } + // Normalize mode if (plugin.ssr) { plugin.mode = 'server' @@ -32,6 +50,9 @@ export function normalizePlugin (plugin: NuxtPlugin | string): NuxtPlugin { plugin.mode = mode as 'all' | 'client' | 'server' } + // @ts-expect-error not adding symbol to types to avoid conflicts + plugin[pluginSymbol] = true + return plugin } @@ -61,7 +82,7 @@ export function addPlugin (_plugin: NuxtPlugin | string, opts: AddPluginOptions const plugin = normalizePlugin(_plugin) // Remove any existing plugin with the same src - nuxt.options.plugins = nuxt.options.plugins.filter(p => normalizePlugin(p).src !== plugin.src) + filterInPlace(nuxt.options.plugins, p => normalizePlugin(p).src !== plugin.src) // Prepend to array by default to be before user provided plugins since is usually used by modules nuxt.options.plugins[opts.append ? 'push' : 'unshift'](plugin) diff --git a/packages/kit/src/resolve.ts b/packages/kit/src/resolve.ts index 31ae08d2ed..aed41f2cbb 100644 --- a/packages/kit/src/resolve.ts +++ b/packages/kit/src/resolve.ts @@ -1,4 +1,4 @@ -import { existsSync, promises as fsp } from 'node:fs' +import { promises as fsp } from 'node:fs' import { fileURLToPath } from 'node:url' import { basename, dirname, isAbsolute, join, normalize, resolve } from 'pathe' import { globby } from 'globby' @@ -38,97 +38,30 @@ export interface ResolvePathOptions { * If path could not be resolved, normalized input path will be returned */ export async function resolvePath (path: string, opts: ResolvePathOptions = {}): Promise { - // Always normalize input - const _path = path - path = normalize(path) + const res = await _resolvePathGranularly(path, opts) - // Fast return if the path exists - if (isAbsolute(path)) { - if (opts?.virtual && existsInVFS(path)) { - return path - } - if (existsSync(path) && !(await isDirectory(path))) { - return path - } - } - - // Use current nuxt options - const nuxt = tryUseNuxt() - const cwd = opts.cwd || (nuxt ? nuxt.options.rootDir : process.cwd()) - const extensions = opts.extensions || (nuxt ? nuxt.options.extensions : ['.ts', '.mjs', '.cjs', '.json']) - const modulesDir = nuxt ? nuxt.options.modulesDir : [] - - // Resolve aliases - path = resolveAlias(path) - - // Resolve relative to cwd - if (!isAbsolute(path)) { - path = resolve(cwd, path) - } - - // Check if resolvedPath is a file - if (opts?.virtual && existsInVFS(path, nuxt)) { - return path - } - - let _isDir = false - if (existsSync(path)) { - _isDir = await isDirectory(path) - if (!_isDir) { - return path - } - } - - // Check possible extensions - for (const ext of extensions) { - // path.[ext] - const pathWithExt = path + ext - if (opts?.virtual && existsInVFS(pathWithExt, nuxt)) { - return pathWithExt - } - if (existsSync(pathWithExt)) { - return pathWithExt - } - // path/index.[ext] - const pathWithIndex = join(path, 'index' + ext) - if (opts?.virtual && existsInVFS(pathWithIndex, nuxt)) { - return pathWithIndex - } - if (_isDir && existsSync(pathWithIndex)) { - return pathWithIndex - } - } - - // Try to resolve as module id - const resolveModulePath = await _resolvePath(_path, { url: [cwd, ...modulesDir] }).catch(() => null) - if (resolveModulePath) { - return resolveModulePath + if (res.type === 'file') { + return res.path } // Return normalized input - return opts.fallbackToOriginal ? _path : path + return opts.fallbackToOriginal ? path : res.path } /** * Try to resolve first existing file in paths */ export async function findPath (paths: string | string[], opts?: ResolvePathOptions, pathType: 'file' | 'dir' = 'file'): Promise { - const nuxt = opts?.virtual ? tryUseNuxt() : undefined - for (const path of toArray(paths)) { - const rPath = await resolvePath(path, opts) + const res = await _resolvePathGranularly(path, opts) - // Check VFS - if (opts?.virtual && existsInVFS(rPath, nuxt)) { - return rPath + if (!res.type || (pathType && res.type !== pathType)) { + continue } // Check file system - if (await existsSensitive(rPath)) { - const _isDir = await isDirectory(rPath) - if (!pathType || (pathType === 'file' && !_isDir) || (pathType === 'dir' && _isDir)) { - return rPath - } + if (res.virtual || await existsSensitive(res.path)) { + return res.path } } return null @@ -186,15 +119,106 @@ export async function resolveNuxtModule (base: string, paths: string[]): Promise // --- Internal --- -async function existsSensitive (path: string) { - if (!existsSync(path)) { return false } - const dirFiles = await fsp.readdir(dirname(path)) - return dirFiles.includes(basename(path)) +interface PathResolution { + path: string + type?: 'file' | 'dir' + virtual?: boolean } -// Usage note: We assume path existence is already ensured -async function isDirectory (path: string) { - return (await fsp.lstat(path)).isDirectory() +async function _resolvePathType (path: string, opts: ResolvePathOptions = {}, skipFs = false): Promise { + if (opts?.virtual && existsInVFS(path)) { + return { + path, + type: 'file', + virtual: true, + } + } + + if (skipFs) { + return + } + + const fd = await fsp.open(path, 'r').catch(() => null) + try { + const stats = await fd?.stat() + if (stats) { + return { + path, + type: stats.isFile() ? 'file' : 'dir', + virtual: false, + } + } + } finally { + fd?.close() + } +} + +async function _resolvePathGranularly (path: string, opts: ResolvePathOptions = {}): Promise { + // Always normalize input + const _path = path + path = normalize(path) + + // Fast return if the path exists + if (isAbsolute(path)) { + const res = await _resolvePathType(path, opts) + if (res && res.type === 'file') { + return res + } + } + + // Use current nuxt options + const nuxt = tryUseNuxt() + const cwd = opts.cwd || (nuxt ? nuxt.options.rootDir : process.cwd()) + const extensions = opts.extensions || (nuxt ? nuxt.options.extensions : ['.ts', '.mjs', '.cjs', '.json']) + const modulesDir = nuxt ? nuxt.options.modulesDir : [] + + // Resolve aliases + path = resolveAlias(path) + + // Resolve relative to cwd + if (!isAbsolute(path)) { + path = resolve(cwd, path) + } + + const res = await _resolvePathType(path, opts) + if (res && res.type === 'file') { + return res + } + + // Check possible extensions + for (const ext of extensions) { + // path.[ext] + const extPath = await _resolvePathType(path + ext, opts) + if (extPath && extPath.type === 'file') { + return extPath + } + + // path/index.[ext] + const indexPath = await _resolvePathType(join(path, 'index' + ext), opts, res?.type !== 'dir' /* skip checking if parent is not a directory */) + if (indexPath && indexPath.type === 'file') { + return indexPath + } + } + + // Try to resolve as module id + const resolvedModulePath = await _resolvePath(_path, { url: [cwd, ...modulesDir] }).catch(() => null) + if (resolvedModulePath) { + return { + path: resolvedModulePath, + type: 'file', + virtual: false, + } + } + + // Return normalized input + return { + path, + } +} + +async function existsSensitive (path: string) { + const dirFiles = await fsp.readdir(dirname(path)).catch(() => null) + return dirFiles && dirFiles.includes(basename(path)) } function existsInVFS (path: string, nuxt = tryUseNuxt()) { diff --git a/packages/kit/src/template.ts b/packages/kit/src/template.ts index 8fa065fad7..9bb78f0f28 100644 --- a/packages/kit/src/template.ts +++ b/packages/kit/src/template.ts @@ -8,6 +8,7 @@ import type { TSConfig } from 'pkg-types' import { gte } from 'semver' import { readPackageJSON } from 'pkg-types' +import { filterInPlace } from './utils' import { tryResolveModule } from './internal/esm' import { getDirectory } from './module/install' import { tryUseNuxt, useNuxt } from './context' @@ -23,7 +24,7 @@ export function addTemplate (_template: NuxtTemplate | string) { const template = normalizeTemplate(_template) // Remove any existing template with the same destination path - nuxt.options.build.templates = nuxt.options.build.templates.filter(p => normalizeTemplate(p).dst !== template.dst) + filterInPlace(nuxt.options.build.templates, p => normalizeTemplate(p).dst !== template.dst) // Add to templates array nuxt.options.build.templates.push(template) @@ -229,9 +230,9 @@ export async function _generateTypes (nuxt: Nuxt) { ? resolve(nuxt.options.buildDir, tsConfig.compilerOptions!.baseUrl) : nuxt.options.buildDir - tsConfig.compilerOptions = tsConfig.compilerOptions || {} - tsConfig.compilerOptions.paths = tsConfig.compilerOptions.paths || {} - tsConfig.include = tsConfig.include || [] + tsConfig.compilerOptions ||= {} + tsConfig.compilerOptions.paths ||= {} + tsConfig.include ||= [] for (const alias in aliases) { if (excludedAlias.some(re => re.test(alias))) { diff --git a/packages/kit/src/utils.ts b/packages/kit/src/utils.ts index 862e01383d..6726b1e512 100644 --- a/packages/kit/src/utils.ts +++ b/packages/kit/src/utils.ts @@ -5,6 +5,21 @@ export function toArray (value: T | T[]): T[] { return Array.isArray(value) ? value : [value] } +/** + * Filter out items from an array in place. This function mutates the array. + * `predicate` get through the array from the end to the start for performance. + * + * This function should be faster than `Array.prototype.filter` on large arrays. + */ +export function filterInPlace (array: T[], predicate: (item: T, index: number, arr: T[]) => unknown) { + for (let i = array.length; i--; i >= 0) { + if (!predicate(array[i]!, i, array)) { + array.splice(i, 1) + } + } + return array +} + export const MODE_RE = /\.(server|client)(\.\w+)*$/ /** * async local storage for the name of the current nuxt instance diff --git a/packages/kit/test/load-nuxt-config.bench.ts b/packages/kit/test/load-nuxt-config.bench.ts index ee8ff33eeb..0c34572e12 100644 --- a/packages/kit/test/load-nuxt-config.bench.ts +++ b/packages/kit/test/load-nuxt-config.bench.ts @@ -2,7 +2,7 @@ import { fileURLToPath } from 'node:url' import { bench, describe } from 'vitest' import { join, normalize } from 'pathe' import { withoutTrailingSlash } from 'ufo' -import { loadNuxtConfig } from '../src' +import { loadNuxtConfig } from '@nuxt/kit' const fixtures = { 'empty directory': 'node_modules/fixture', @@ -16,7 +16,7 @@ describe('loadNuxtConfig', () => { for (const fixture in fixtures) { const relativeDir = join('../../..', fixtures[fixture as keyof typeof fixtures]) const path = withoutTrailingSlash(normalize(fileURLToPath(new URL(relativeDir, import.meta.url)))) - bench(fixture, async () => { + bench(`loadNuxtConfig in the ${fixture}`, async () => { await loadNuxtConfig({ cwd: path }) }) } diff --git a/packages/kit/test/write-types.bench.ts b/packages/kit/test/write-types.bench.ts index 25dced8990..92065ad234 100644 --- a/packages/kit/test/write-types.bench.ts +++ b/packages/kit/test/write-types.bench.ts @@ -2,7 +2,7 @@ import { fileURLToPath } from 'node:url' import { afterAll, bench, describe } from 'vitest' import { join, normalize } from 'pathe' import { withoutTrailingSlash } from 'ufo' -import { loadNuxt, writeTypes } from '../src' +import { loadNuxt, writeTypes } from '@nuxt/kit' describe('writeTypes', async () => { const relativeDir = join('../../..', 'test/fixtures/basic-types') @@ -13,7 +13,7 @@ describe('writeTypes', async () => { await nuxt.close() }) - bench('write types', async () => { + bench('writeTypes in the basic-types fixture', async () => { await writeTypes(nuxt) }) }) diff --git a/packages/nuxt/build.config.ts b/packages/nuxt/build.config.ts index 4301b165fb..233f249572 100644 --- a/packages/nuxt/build.config.ts +++ b/packages/nuxt/build.config.ts @@ -1,5 +1,6 @@ import type { BuildEntry } from 'unbuild' import { defineBuildConfig } from 'unbuild' +import { addRollupTimingsPlugin, stubOptions } from '../../debug/build-config' export default defineBuildConfig({ declaration: true, @@ -16,10 +17,14 @@ export default defineBuildConfig({ 'pages', ].map(name => ({ input: `src/${name}/runtime/`, outDir: `dist/${name}/runtime`, format: 'esm', ext: 'js' } as BuildEntry)), ], + stubOptions, hooks: { 'mkdist:entry:options' (_ctx, _entry, mkdistOptions) { mkdistOptions.addRelativeDeclarationExtensions = true }, + 'rollup:options' (ctx, options) { + addRollupTimingsPlugin(options) + }, }, dependencies: [ '@nuxt/cli', diff --git a/packages/nuxt/package.json b/packages/nuxt/package.json index 5d8d666f56..aec15315ce 100644 --- a/packages/nuxt/package.json +++ b/packages/nuxt/package.json @@ -71,16 +71,16 @@ "@nuxt/schema": "workspace:*", "@nuxt/telemetry": "^2.6.4", "@nuxt/vite-builder": "workspace:*", - "@unhead/dom": "^1.11.15", - "@unhead/shared": "^1.11.15", - "@unhead/ssr": "^1.11.15", - "@unhead/vue": "^1.11.15", + "@unhead/dom": "^1.11.18", + "@unhead/shared": "^1.11.18", + "@unhead/ssr": "^1.11.18", + "@unhead/vue": "^1.11.18", "@vue/shared": "^3.5.13", "acorn": "8.14.0", "c12": "^2.0.1", "chokidar": "^4.0.3", "compatx": "^0.1.8", - "consola": "^3.3.3", + "consola": "^3.4.0", "cookie-es": "^1.2.2", "defu": "^6.1.4", "destr": "^2.0.3", @@ -90,38 +90,38 @@ "escape-string-regexp": "^5.0.0", "estree-walker": "^3.0.3", "globby": "^14.0.2", - "h3": "npm:h3-nightly@2.0.0-1718872656.6765a6e", + "h3": "npm:h3-nightly@1.14.0-20250122-114730-3f9e703", "hookable": "^5.5.3", - "ignore": "^7.0.0", + "ignore": "^7.0.3", "impound": "^0.2.0", "jiti": "^2.4.2", "klona": "^2.0.6", "knitwork": "^1.2.0", "magic-string": "^0.30.17", - "mlly": "^1.7.3", - "nanotar": "^0.1.1", - "nitro": "npm:nitro-nightly@3.0.0-beta-28796231.359af68d", - "nypm": "^0.4.1", + "mlly": "^1.7.4", + "nanotar": "^0.2.0", + "nitro": "npm:nitro-nightly@3.0.0-beta-28938837.19ec5395", + "nypm": "^0.5.0", "ofetch": "^1.4.1", "ohash": "^1.1.4", - "pathe": "^2.0.1", + "pathe": "^2.0.2", "perfect-debounce": "^1.0.0", - "pkg-types": "^1.3.0", + "pkg-types": "^1.3.1", "radix3": "^1.1.2", "scule": "^1.3.0", "semver": "^7.6.3", "std-env": "^3.8.0", - "strip-literal": "^2.1.1", + "strip-literal": "^3.0.0", "tinyglobby": "0.2.10", "ufo": "^1.5.4", "ultrahtml": "^1.5.3", "uncrypto": "^0.1.3", "unctx": "^2.4.1", "unenv": "^1.10.0", - "unhead": "^1.11.15", - "unimport": "^3.14.5", + "unhead": "^1.11.18", + "unimport": "^4.0.0", "unplugin": "^2.1.2", - "unplugin-vue-router": "^0.10.9", + "unplugin-vue-router": "^0.11.1", "unstorage": "^1.14.4", "untyped": "^1.5.2", "vue": "^3.5.13", @@ -135,9 +135,9 @@ "@types/estree": "1.0.6", "@vitejs/plugin-vue": "5.2.1", "@vue/compiler-sfc": "3.5.13", - "unbuild": "3.2.0", - "vite": "6.0.7", - "vitest": "2.1.8" + "unbuild": "3.3.1", + "vite": "6.0.11", + "vitest": "3.0.3" }, "peerDependencies": { "@parcel/watcher": "^2.1.0", diff --git a/packages/nuxt/src/app/components/client-only.ts b/packages/nuxt/src/app/components/client-only.ts index c65eec1b55..b3c9aeb3a1 100644 --- a/packages/nuxt/src/app/components/client-only.ts +++ b/packages/nuxt/src/app/components/client-only.ts @@ -14,7 +14,7 @@ export default defineComponent({ inheritAttrs: false, props: ['fallback', 'placeholder', 'placeholderTag', 'fallbackTag'], - setup (_, { slots, attrs }) { + setup (props, { slots, attrs }) { const mounted = ref(false) onMounted(() => { mounted.value = true }) // Bail out of checking for pages/layouts as they might be included under `` 🤷‍♂️ @@ -24,10 +24,10 @@ export default defineComponent({ nuxtApp._isNuxtLayoutUsed = true } provide(clientOnlySymbol, true) - return (props: any) => { + return () => { if (mounted.value) { return slots.default?.() } const slot = slots.fallback || slots.placeholder - if (slot) { return slot() } + if (slot) { return h(slot) } const fallbackStr = props.fallback || props.placeholder || '' const fallbackTag = props.fallbackTag || props.placeholderTag || 'span' return createElementBlock(fallbackTag, attrs, fallbackStr) @@ -95,7 +95,7 @@ export function createClientOnly (component: T) { if (isPromise(setupState)) { return Promise.resolve(setupState).then((setupState) => { if (typeof setupState !== 'function') { - setupState = setupState || {} + setupState ||= {} setupState.mounted$ = mounted$ return setupState } diff --git a/packages/nuxt/src/app/components/nuxt-link.ts b/packages/nuxt/src/app/components/nuxt-link.ts index 353f8ccda6..c1bbd619cf 100644 --- a/packages/nuxt/src/app/components/nuxt-link.ts +++ b/packages/nuxt/src/app/components/nuxt-link.ts @@ -325,10 +325,13 @@ export function defineNuxtLink (options: NuxtLinkOptions) { const elRef = import.meta.server ? undefined : (ref: any) => { el!.value = props.custom ? ref?.$el?.nextElementSibling : ref?.$el } function shouldPrefetch (mode: 'visibility' | 'interaction') { + if (import.meta.server) { return } return !prefetched.value && (typeof props.prefetchOn === 'string' ? props.prefetchOn === mode : (props.prefetchOn?.[mode] ?? options.prefetchOn?.[mode])) && (props.prefetch ?? options.prefetch) !== false && props.noPrefetch !== true && props.target !== '_blank' && !isSlowConnection() } async function prefetch (nuxtApp = useNuxtApp()) { + if (import.meta.server) { return } + if (prefetched.value) { return } prefetched.value = true @@ -395,12 +398,14 @@ export function defineNuxtLink (options: NuxtLinkOptions) { // `custom` API cannot support fallthrough attributes as the slot // may render fragment or text root nodes (#14897, #19375) if (!props.custom) { - if (shouldPrefetch('interaction')) { - routerLinkProps.onPointerenter = prefetch.bind(null, undefined) - routerLinkProps.onFocus = prefetch.bind(null, undefined) - } - if (prefetched.value) { - routerLinkProps.class = props.prefetchedClass || options.prefetchedClass + if (import.meta.client) { + if (shouldPrefetch('interaction')) { + routerLinkProps.onPointerenter = prefetch.bind(null, undefined) + routerLinkProps.onFocus = prefetch.bind(null, undefined) + } + if (prefetched.value) { + routerLinkProps.class = props.prefetchedClass || options.prefetchedClass + } } routerLinkProps.rel = props.rel || undefined } diff --git a/packages/nuxt/src/app/composables/once.ts b/packages/nuxt/src/app/composables/once.ts index ae8746fff0..7bd3a98c23 100644 --- a/packages/nuxt/src/app/composables/once.ts +++ b/packages/nuxt/src/app/composables/once.ts @@ -37,7 +37,7 @@ export async function callOnce (...args: any): Promise { return } - nuxtApp._once = nuxtApp._once || {} + nuxtApp._once ||= {} nuxtApp._once[_key] = nuxtApp._once[_key] || fn() || true await nuxtApp._once[_key] nuxtApp.payload.once.add(_key) diff --git a/packages/nuxt/src/components/module.ts b/packages/nuxt/src/components/module.ts index f61061e5d9..ebaad05622 100644 --- a/packages/nuxt/src/components/module.ts +++ b/packages/nuxt/src/components/module.ts @@ -1,6 +1,6 @@ import { existsSync, statSync, writeFileSync } from 'node:fs' import { isAbsolute, join, normalize, relative, resolve } from 'pathe' -import { addBuildPlugin, addPluginTemplate, addTemplate, addTypeTemplate, addVitePlugin, defineNuxtModule, findPath, resolveAlias, resolvePath, updateTemplates } from '@nuxt/kit' +import { addBuildPlugin, addPluginTemplate, addTemplate, addTypeTemplate, addVitePlugin, defineNuxtModule, findPath, resolveAlias, resolvePath } from '@nuxt/kit' import type { Component, ComponentsDir, ComponentsOptions } from 'nuxt/schema' import { distDir } from '../dirs' @@ -198,24 +198,6 @@ export default defineNuxtModule({ tsConfig.compilerOptions!.paths['#components'] = [resolve(nuxt.options.buildDir, 'components')] }) - // Watch for changes - nuxt.hook('builder:watch', async (event, relativePath) => { - if (!['add', 'unlink'].includes(event)) { - return - } - const path = resolve(nuxt.options.srcDir, relativePath) - if (componentDirs.some(dir => path.startsWith(dir.path + '/'))) { - await updateTemplates({ - filter: template => [ - 'components.plugin.mjs', - 'components.d.ts', - 'components.server.mjs', - 'components.client.mjs', - ].includes(template.filename), - }) - } - }) - addBuildPlugin(TreeShakeTemplatePlugin({ sourcemap: !!nuxt.options.sourcemap.server, getComponents }), { client: false }) const sharedLoaderOptions = { @@ -250,7 +232,7 @@ export default defineNuxtModule({ // TODO: refactor this nuxt.hook('vite:extendConfig', (config, { isClient }) => { - config.plugins = config.plugins || [] + config.plugins ||= [] if (isClient && selectiveClient) { writeFileSync(join(nuxt.options.buildDir, 'components-chunk.mjs'), 'export const paths = {}') @@ -275,7 +257,7 @@ export default defineNuxtModule({ nuxt.hook(key, (configs) => { configs.forEach((config) => { const mode = config.name === 'client' ? 'client' : 'server' - config.plugins = config.plugins || [] + config.plugins ||= [] if (mode !== 'server') { writeFileSync(join(nuxt.options.buildDir, 'components-chunk.mjs'), 'export const paths = {}') diff --git a/packages/nuxt/src/components/plugins/transform.ts b/packages/nuxt/src/components/plugins/transform.ts index ba819bbfa3..f7bf3586c6 100644 --- a/packages/nuxt/src/components/plugins/transform.ts +++ b/packages/nuxt/src/components/plugins/transform.ts @@ -58,7 +58,7 @@ export function TransformPlugin (nuxt: Nuxt, options: TransformPluginOptions) { enforce: 'post', transformInclude (id) { id = normalize(id) - return id.startsWith('virtual:') || id.startsWith('\0virtual:') || id.startsWith(nuxt.options.buildDir) || !isIgnored(id) + return id.startsWith('virtual:') || id.startsWith('\0virtual:') || id.startsWith(nuxt.options.buildDir) || !isIgnored(id, undefined, nuxt) }, async transform (code, id) { // Virtual component wrapper diff --git a/packages/nuxt/src/core/app.ts b/packages/nuxt/src/core/app.ts index 887604d5e3..75248d9bfb 100644 --- a/packages/nuxt/src/core/app.ts +++ b/packages/nuxt/src/core/app.ts @@ -57,6 +57,7 @@ export async function generateApp (nuxt: Nuxt, app: NuxtApp, options: { filter?: const templateContext = { nuxt, app } const writes: Array<() => void> = [] + const dirs = new Set() const changedTemplates: Array> = [] const FORWARD_SLASH_RE = /\//g async function processTemplate (template: ResolvedNuxtTemplate) { @@ -92,10 +93,8 @@ export async function generateApp (nuxt: Nuxt, app: NuxtApp, options: { filter?: } if (template.modified && template.write) { - writes.push(() => { - mkdirSync(dirname(fullPath), { recursive: true }) - writeFileSync(fullPath, contents, 'utf8') - }) + dirs.add(dirname(fullPath)) + writes.push(() => writeFileSync(fullPath, contents, 'utf8')) } } @@ -104,7 +103,12 @@ export async function generateApp (nuxt: Nuxt, app: NuxtApp, options: { filter?: // Write template files in single synchronous step to avoid (possible) additional // runtime overhead of cascading HMRs from vite/webpack - for (const write of writes) { write() } + for (const dir of dirs) { + mkdirSync(dir, { recursive: true }) + } + for (const write of writes) { + write() + } if (changedTemplates.length) { await nuxt.callHook('app:templatesGenerated', app, changedTemplates, options) diff --git a/packages/nuxt/src/core/builder.ts b/packages/nuxt/src/core/builder.ts index 6b24372b88..84e2c8e317 100644 --- a/packages/nuxt/src/core/builder.ts +++ b/packages/nuxt/src/core/builder.ts @@ -1,7 +1,7 @@ import type { EventType } from '@parcel/watcher' import type { FSWatcher } from 'chokidar' import { watch as chokidarWatch } from 'chokidar' -import { importModule, isIgnored, tryResolveModule, useNuxt } from '@nuxt/kit' +import { createIsIgnored, importModule, isIgnored, tryResolveModule, useNuxt } from '@nuxt/kit' import { debounce } from 'perfect-debounce' import { normalize, relative, resolve } from 'pathe' import type { Nuxt, NuxtBuilder } from 'nuxt/schema' @@ -63,8 +63,11 @@ export async function build (nuxt: Nuxt) { return } - if (nuxt.options.dev) { - checkForExternalConfigurationFiles() + if (nuxt.options.dev && !nuxt.options.test) { + nuxt.hooks.hookOnce('build:done', () => { + checkForExternalConfigurationFiles() + .catch(e => logger.warn('Problem checking for external configuration files.', e)) + }) } await bundle(nuxt) @@ -97,14 +100,12 @@ async function watch (nuxt: Nuxt) { function createWatcher () { const nuxt = useNuxt() + const isIgnored = createIsIgnored(nuxt) const watcher = chokidarWatch(nuxt.options._layers.map(i => i.config.srcDir as string).filter(Boolean), { ...nuxt.options.watchers.chokidar, ignoreInitial: true, - ignored: [ - isIgnored, - 'node_modules', - ], + ignored: [isIgnored, /[\\/]node_modules[\\/]/], }) watcher.on('all', (event, path) => { @@ -118,6 +119,7 @@ function createWatcher () { function createGranularWatcher () { const nuxt = useNuxt() + const isIgnored = createIsIgnored(nuxt) if (nuxt.options.debug) { // eslint-disable-next-line no-console @@ -136,7 +138,7 @@ function createGranularWatcher () { } for (const dir of pathsToWatch) { pending++ - const watcher = chokidarWatch(dir, { ...nuxt.options.watchers.chokidar, ignoreInitial: false, depth: 0, ignored: [isIgnored, '**/node_modules'] }) + const watcher = chokidarWatch(dir, { ...nuxt.options.watchers.chokidar, ignoreInitial: false, depth: 0, ignored: [isIgnored, /[\\/]node_modules[\\/]/] }) const watchers: Record = {} watcher.on('all', (event, path) => { diff --git a/packages/nuxt/src/core/cache.ts b/packages/nuxt/src/core/cache.ts index 3096ecf554..5c24dab590 100644 --- a/packages/nuxt/src/core/cache.ts +++ b/packages/nuxt/src/core/cache.ts @@ -2,7 +2,7 @@ import { mkdir, open, readFile, stat, unlink, writeFile } from 'node:fs/promises import type { FileHandle } from 'node:fs/promises' import { resolve } from 'node:path' import { existsSync } from 'node:fs' -import { isIgnored } from '@nuxt/kit' +import { createIsIgnored } from '@nuxt/kit' import type { Nuxt, NuxtConfig, NuxtConfigLayer } from '@nuxt/schema' import { hash, murmurHash, objectHash } from 'ohash' import { glob } from 'tinyglobby' @@ -119,6 +119,7 @@ async function getHashes (nuxt: Nuxt, options: GetHashOptions): Promise data: murmurHash(f.data as any /* ArrayBuffer */), })) + const isIgnored = createIsIgnored(nuxt) const sourceFiles = await readFilesRecursive(options.cwd(layer), { shouldIgnore: isIgnored, // TODO: Validate if works with absolute paths cwd: nuxt.options.rootDir, diff --git a/packages/nuxt/src/core/nitro.ts b/packages/nuxt/src/core/nitro.ts index 698cb04b3a..085a2d8f80 100644 --- a/packages/nuxt/src/core/nitro.ts +++ b/packages/nuxt/src/core/nitro.ts @@ -239,7 +239,11 @@ export async function initNitro (nuxt: Nuxt & { _nitro?: Nitro }) { // Resolve user-provided paths nitroConfig.srcDir = resolve(nuxt.options.rootDir, nuxt.options.srcDir, nitroConfig.srcDir!) - nitroConfig.ignore = [...(nitroConfig.ignore || []), ...resolveIgnorePatterns(nitroConfig.srcDir), `!${join(nuxt.options.buildDir, 'dist/client', nuxt.options.app.buildAssetsDir, '**/*')}`] + nitroConfig.ignore ||= [] + nitroConfig.ignore.push( + ...resolveIgnorePatterns(nitroConfig.srcDir), + `!${join(nuxt.options.buildDir, 'dist/client', nuxt.options.app.buildAssetsDir, '**/*')}`, + ) // Resolve aliases in user-provided input - so `~/server/test` will work nitroConfig.plugins = nitroConfig.plugins?.map(plugin => plugin ? resolveAlias(plugin, nuxt.options.alias) : plugin) @@ -411,14 +415,16 @@ export async function initNitro (nuxt: Nuxt & { _nitro?: Nitro }) { const basePath = nitroConfig.typescript!.tsConfig!.compilerOptions?.baseUrl ? resolve(nuxt.options.buildDir, nitroConfig.typescript!.tsConfig!.compilerOptions?.baseUrl) : nuxt.options.buildDir const aliases = nitroConfig.alias! const tsConfig = nitroConfig.typescript!.tsConfig! - tsConfig.compilerOptions = tsConfig.compilerOptions || {} - tsConfig.compilerOptions.paths = tsConfig.compilerOptions.paths || {} + tsConfig.compilerOptions ||= {} + tsConfig.compilerOptions.paths ||= {} for (const _alias in aliases) { const alias = _alias as keyof typeof aliases if (excludedAlias.some(pattern => typeof pattern === 'string' ? alias === pattern : pattern.test(alias))) { continue } - if (alias in tsConfig.compilerOptions.paths) { continue } + if (alias in tsConfig.compilerOptions.paths) { + continue + } const absolutePath = resolve(basePath, aliases[alias]!) const stats = await fsp.stat(absolutePath).catch(() => null /* file does not exist */) @@ -532,7 +538,7 @@ export async function initNitro (nuxt: Nuxt & { _nitro?: Nitro }) { await writeTypes(nitro) } // Exclude nitro output dir from typescript - opts.tsConfig.exclude = opts.tsConfig.exclude || [] + opts.tsConfig.exclude ||= [] opts.tsConfig.exclude.push(relative(nuxt.options.buildDir, resolve(nuxt.options.rootDir, nitro.options.output.dir))) opts.references.push({ path: resolve(nuxt.options.buildDir, 'types/nitro.d.ts') }) }) diff --git a/packages/nuxt/src/core/nuxt.ts b/packages/nuxt/src/core/nuxt.ts index b879befcef..17fda2f6e4 100644 --- a/packages/nuxt/src/core/nuxt.ts +++ b/packages/nuxt/src/core/nuxt.ts @@ -105,7 +105,7 @@ const nightlies = { '@nuxt/kit': '@nuxt/kit-nightly', } -const keyDependencies = [ +export const keyDependencies = [ '@nuxt/kit', '@nuxt/schema', ] @@ -423,8 +423,11 @@ async function initNuxt (nuxt: Nuxt) { ...nuxt.options._layers.filter(i => i.cwd.includes('node_modules')).map(i => i.cwd as string), ) - // Ensure we can resolve dependencies within layers - nuxt.options.modulesDir.push(...nuxt.options._layers.map(l => resolve(l.cwd, 'node_modules'))) + // Ensure we can resolve dependencies within layers - filtering out local `~/layers` directories + const locallyScannedLayersDirs = nuxt.options._layers.map(l => resolve(l.cwd, 'layers').replace(/\/?$/, '/')) + nuxt.options.modulesDir.push(...nuxt.options._layers + .filter(l => l.cwd !== nuxt.options.rootDir && locallyScannedLayersDirs.every(dir => !l.cwd.startsWith(dir))) + .map(l => resolve(l.cwd, 'node_modules'))) // Init user modules await nuxt.callHook('modules:before') @@ -826,6 +829,15 @@ export async function loadNuxt (opts: LoadNuxtOptions): Promise { checkDependencyVersion(dep, nuxt._version) } + if (nuxt.options.dev && !nuxt.options.test) { + nuxt.hooks.hookOnce('build:done', () => { + for (const dep of keyDependencies) { + checkDependencyVersion(dep, nuxt._version) + .catch(e => logger.warn(`Problem checking \`${dep}\` version.`, e)) + } + }) + } + // We register hooks layer-by-layer so any overrides need to be registered separately if (opts.overrides?.hooks) { nuxt.hooks.addHooks(opts.overrides.hooks) @@ -843,7 +855,7 @@ export async function loadNuxt (opts: LoadNuxtOptions): Promise { return nuxt } -async function checkDependencyVersion (name: string, nuxtVersion: string): Promise { +export async function checkDependencyVersion (name: string, nuxtVersion: string): Promise { const path = await resolvePath(name, { fallbackToOriginal: true }).catch(() => null) if (!path || path === name) { return } diff --git a/packages/nuxt/src/core/plugins/import-protection.ts b/packages/nuxt/src/core/plugins/import-protection.ts index a48dc75d78..635edbfeca 100644 --- a/packages/nuxt/src/core/plugins/import-protection.ts +++ b/packages/nuxt/src/core/plugins/import-protection.ts @@ -36,7 +36,7 @@ export const createImportProtectionPatterns = (nuxt: { options: NuxtOptions }, o ]) } - for (const i of [/(^|node_modules\/)@nuxt\/(kit|test-utils)/, /(^|node_modules\/)nuxi/, /(^|node_modules\/)nitro(?:pack)?(?:-nightly)?(?:$|\/)(?!(?:dist\/)?(?:node_modules|presets|runtime|types))/, /(^|node_modules\/)nuxt\/(config|kit|schema)/]) { + for (const i of [/(^|node_modules\/)@nuxt\/(cli|kit|test-utils)/, /(^|node_modules\/)nuxi/, /(^|node_modules\/)nitro(?:pack)?(?:-nightly)?(?:$|\/)(?!(?:dist\/)?(?:node_modules|presets|runtime|types))/, /(^|node_modules\/)nuxt\/(config|kit|schema)/]) { patterns.push([i, `This module cannot be imported in ${context}.`]) } diff --git a/packages/nuxt/src/core/plugins/plugin-metadata.ts b/packages/nuxt/src/core/plugins/plugin-metadata.ts index e3c31157ce..69ea8069fc 100644 --- a/packages/nuxt/src/core/plugins/plugin-metadata.ts +++ b/packages/nuxt/src/core/plugins/plugin-metadata.ts @@ -44,6 +44,9 @@ export async function extractMetadata (code: string, loader = 'ts' as 'ts' | 'ts if (metaCache[code]) { return metaCache[code] } + if (code.match(/defineNuxtPlugin\s*\([\w(]/)) { + return {} + } const js = await transform(code, { loader }) parseAndWalk(js.code, `file.${loader}`, (node) => { if (node.type !== 'CallExpression' || node.callee.type !== 'Identifier') { return } diff --git a/packages/nuxt/src/core/plugins/virtual.ts b/packages/nuxt/src/core/plugins/virtual.ts index e50970c225..2a3f00a3bd 100644 --- a/packages/nuxt/src/core/plugins/virtual.ts +++ b/packages/nuxt/src/core/plugins/virtual.ts @@ -38,25 +38,25 @@ export const VirtualFSPlugin = (nuxt: Nuxt, options: VirtualFSPluginOptions) => const resolvedId = resolveWithExt(id) if (resolvedId) { - return PREFIX + resolvedId + return PREFIX + encodeURIComponent(resolvedId) } if (importer && RELATIVE_ID_RE.test(id)) { - const path = resolve(dirname(withoutPrefix(importer)), id) + const path = resolve(dirname(withoutPrefix(decodeURIComponent(importer))), id) const resolved = resolveWithExt(path) if (resolved) { - return PREFIX + resolved + return PREFIX + encodeURIComponent(resolved) } } }, loadInclude (id) { - return id.startsWith(PREFIX) && withoutPrefix(id) in nuxt.vfs + return id.startsWith(PREFIX) && withoutPrefix(decodeURIComponent(id)) in nuxt.vfs }, load (id) { return { - code: nuxt.vfs[withoutPrefix(id)] || '', + code: nuxt.vfs[withoutPrefix(decodeURIComponent(id))] || '', map: null, } }, diff --git a/packages/nuxt/src/core/runtime/nitro/no-ssr.ts b/packages/nuxt/src/core/runtime/nitro/no-ssr.ts index 556c3f98e5..d6ede3076d 100644 --- a/packages/nuxt/src/core/runtime/nitro/no-ssr.ts +++ b/packages/nuxt/src/core/runtime/nitro/no-ssr.ts @@ -2,7 +2,7 @@ import { defineEventHandler, getRequestHeader } from 'h3' export default defineEventHandler((event) => { if (getRequestHeader(event, 'x-nuxt-no-ssr')) { - event.context.nuxt = event.context.nuxt || {} + event.context.nuxt ||= {} event.context.nuxt.noSSR = true } }) diff --git a/packages/nuxt/src/core/runtime/nitro/renderer.ts b/packages/nuxt/src/core/runtime/nitro/renderer.ts index bed864aeb5..7be579a7b3 100644 --- a/packages/nuxt/src/core/runtime/nitro/renderer.ts +++ b/packages/nuxt/src/core/runtime/nitro/renderer.ts @@ -488,8 +488,8 @@ export default defineRenderHandler(async (event): Promise - resolver.resolve(layer.config.rootDir, 'nuxt.schema.*'), - )) - const watcher = watch(filesToWatch, { + const isIgnored = createIsIgnored(nuxt) + const dirsToWatch = nuxt.options._layers.map(layer => resolver.resolve(layer.config.rootDir)) + const SCHEMA_RE = /(?:^|\/)nuxt.schema.\w+$/ + const watcher = watch(dirsToWatch, { ...nuxt.options.watchers.chokidar, + depth: 1, + ignored: [ + (path, stats) => (stats && !stats.isFile()) || !SCHEMA_RE.test(path), + isIgnored, + /[\\/]node_modules[\\/]/, + ], ignoreInitial: true, }) watcher.on('all', onChange) diff --git a/packages/nuxt/src/core/templates.ts b/packages/nuxt/src/core/templates.ts index aef60133d0..7a6890bf93 100644 --- a/packages/nuxt/src/core/templates.ts +++ b/packages/nuxt/src/core/templates.ts @@ -68,7 +68,7 @@ export const clientPluginTemplate: NuxtTemplate = { const imports: string[] = [] for (const plugin of clientPlugins) { const path = relative(ctx.nuxt.options.rootDir, plugin.src) - const variable = genSafeVariableName(filename(plugin.src)).replace(PLUGIN_TEMPLATE_RE, '_') + '_' + hash(path) + const variable = genSafeVariableName(filename(plugin.src) || path).replace(PLUGIN_TEMPLATE_RE, '_') + '_' + hash(path) exports.push(variable) imports.push(genImport(plugin.src, variable)) } @@ -88,7 +88,7 @@ export const serverPluginTemplate: NuxtTemplate = { const imports: string[] = [] for (const plugin of serverPlugins) { const path = relative(ctx.nuxt.options.rootDir, plugin.src) - const variable = genSafeVariableName(filename(path)).replace(PLUGIN_TEMPLATE_RE, '_') + '_' + hash(path) + const variable = genSafeVariableName(filename(plugin.src) || path).replace(PLUGIN_TEMPLATE_RE, '_') + '_' + hash(path) exports.push(variable) imports.push(genImport(plugin.src, variable)) } diff --git a/packages/nuxt/src/imports/module.ts b/packages/nuxt/src/imports/module.ts index 4854dc8677..1d669b2eaa 100644 --- a/packages/nuxt/src/imports/module.ts +++ b/packages/nuxt/src/imports/module.ts @@ -1,5 +1,5 @@ import { existsSync } from 'node:fs' -import { addBuildPlugin, addTemplate, addTypeTemplate, defineNuxtModule, isIgnored, resolveAlias, tryResolveModule, updateTemplates, useNuxt } from '@nuxt/kit' +import { addBuildPlugin, addTemplate, addTypeTemplate, createIsIgnored, defineNuxtModule, resolveAlias, tryResolveModule, updateTemplates, useNuxt } from '@nuxt/kit' import { isAbsolute, join, normalize, relative, resolve } from 'pathe' import type { Import, Unimport } from 'unimport' import { createUnimport, scanDirExports, toExports } from 'unimport' @@ -118,6 +118,7 @@ export default defineNuxtModule>({ return IMPORTS_TEMPLATE_RE.test(template.filename) } + const isIgnored = createIsIgnored(nuxt) const regenerateImports = async () => { await ctx.modifyDynamicImports(async (imports) => { // Clear old imports diff --git a/packages/nuxt/src/pages/module.ts b/packages/nuxt/src/pages/module.ts index cfb390f1d6..21bb900d93 100644 --- a/packages/nuxt/src/pages/module.ts +++ b/packages/nuxt/src/pages/module.ts @@ -1,6 +1,6 @@ import { existsSync, readdirSync } from 'node:fs' import { mkdir, readFile } from 'node:fs/promises' -import { addBuildPlugin, addComponent, addPlugin, addTemplate, addTypeTemplate, defineNuxtModule, findPath, resolvePath, updateTemplates, useNitro } from '@nuxt/kit' +import { addBuildPlugin, addComponent, addPlugin, addTemplate, addTypeTemplate, defineNuxtModule, findPath, resolvePath, useNitro } from '@nuxt/kit' import { dirname, join, relative, resolve } from 'pathe' import { genImport, genObjectFromRawEntries, genString } from 'knitwork' import { joinURL } from 'ufo' @@ -93,10 +93,8 @@ export default defineNuxtModule({ addPlugin(resolve(runtimeDir, 'plugins/check-if-page-unused')) } - nuxt.hook('app:templates', async (app) => { - app.pages = await resolvePagesRoutes(nuxt) - - if (!nuxt.options.ssr && app.pages.some(p => p.mode === 'server')) { + nuxt.hook('app:templates', (app) => { + if (!nuxt.options.ssr && app.pages?.some(p => p.mode === 'server')) { logger.warn('Using server pages with `ssr: false` is not supported with auto-detected component islands. Set `experimental.componentIslands` to `true`.') } }) @@ -269,6 +267,13 @@ export default defineNuxtModule({ if (!pages) { return false } return pages.some(page => page.file === file) || pages.some(page => page.children && isPage(file, page.children)) } + + nuxt.hooks.hookOnce('app:templates', async (app) => { + if (!app.pages) { + app.pages = await resolvePagesRoutes(nuxt) + } + }) + nuxt.hook('builder:watch', async (event, relativePath) => { const path = resolve(nuxt.options.srcDir, relativePath) const shouldAlwaysRegenerate = nuxt.options.experimental.scanPageMeta && isPage(path) @@ -276,9 +281,7 @@ export default defineNuxtModule({ if (event === 'change' && !shouldAlwaysRegenerate) { return } if (shouldAlwaysRegenerate || updateTemplatePaths.some(dir => path.startsWith(dir))) { - await updateTemplates({ - filter: template => template.filename === 'routes.mjs', - }) + nuxt.apps.default!.pages = await resolvePagesRoutes(nuxt) } }) @@ -530,8 +533,8 @@ export default defineNuxtModule({ getContents: () => 'export { START_LOCATION, useRoute } from \'vue-router\'', }) - nuxt.options.vite.resolve = nuxt.options.vite.resolve || {} - nuxt.options.vite.resolve.dedupe = nuxt.options.vite.resolve.dedupe || [] + nuxt.options.vite.resolve ||= {} + nuxt.options.vite.resolve.dedupe ||= [] nuxt.options.vite.resolve.dedupe.push('vue-router') // Add router options template diff --git a/packages/nuxt/src/pages/plugins/page-meta.ts b/packages/nuxt/src/pages/plugins/page-meta.ts index bde07df6a3..0a6cd606bc 100644 --- a/packages/nuxt/src/pages/plugins/page-meta.ts +++ b/packages/nuxt/src/pages/plugins/page-meta.ts @@ -287,9 +287,9 @@ export const PageMetaPlugin = (options: PageMetaPluginOptions = {}) => createUnp handleHotUpdate: { order: 'post', handler: ({ file, modules, server }) => { - if (options.isPage?.(file)) { + if (options.routesPath && options.isPage?.(file)) { const macroModule = server.moduleGraph.getModuleById(file + '?macro=true') - const routesModule = server.moduleGraph.getModuleById('virtual:nuxt:' + options.routesPath) + const routesModule = server.moduleGraph.getModuleById('virtual:nuxt:' + encodeURIComponent(options.routesPath)) return [ ...modules, ...macroModule ? [macroModule] : [], diff --git a/packages/nuxt/src/pages/runtime/page.ts b/packages/nuxt/src/pages/runtime/page.ts index 5ba304cd23..3f82ed8393 100644 --- a/packages/nuxt/src/pages/runtime/page.ts +++ b/packages/nuxt/src/pages/runtime/page.ts @@ -65,7 +65,7 @@ export default defineComponent({ if (import.meta.dev) { nuxtApp._isNuxtPageUsed = true } - + let pageLoadingEndHookAlreadyCalled = false return () => { return h(RouterView, { name: props.name, route: props.route, ...attrs }, { default: (routeProps: RouterViewSlotProps) => { @@ -99,6 +99,7 @@ export default defineComponent({ const key = generateRouteKey(routeProps, props.pageKey) if (!nuxtApp.isHydrating && !hasChildrenRoutes(forkRoute, routeProps.route, routeProps.Component) && previousPageKey === key) { nuxtApp.callHook('page:loading:end') + pageLoadingEndHookAlreadyCalled = true } previousPageKey = key @@ -115,7 +116,14 @@ export default defineComponent({ wrapInKeepAlive(keepaliveConfig, h(Suspense, { suspensible: true, onPending: () => nuxtApp.callHook('page:start', routeProps.Component), - onResolve: () => { nextTick(() => nuxtApp.callHook('page:finish', routeProps.Component).then(() => nuxtApp.callHook('page:loading:end')).finally(done)) }, + onResolve: () => { + nextTick(() => nuxtApp.callHook('page:finish', routeProps.Component).then(() => { + if (!pageLoadingEndHookAlreadyCalled) { + return nuxtApp.callHook('page:loading:end') + } + pageLoadingEndHookAlreadyCalled = false + }).finally(done)) + }, }, { default: () => { const providerVNode = h(RouteProvider, { diff --git a/packages/nuxt/src/pages/utils.ts b/packages/nuxt/src/pages/utils.ts index 7f078eed28..5d8c6777ed 100644 --- a/packages/nuxt/src/pages/utils.ts +++ b/packages/nuxt/src/pages/utils.ts @@ -68,7 +68,10 @@ export async function resolvePagesRoutes (nuxt = useNuxt()): Promise return pages } - const augmentCtx = { extraExtractionKeys: nuxt.options.experimental.extraPageMetaExtractionKeys } + const augmentCtx = { + extraExtractionKeys: nuxt.options.experimental.extraPageMetaExtractionKeys, + fullyResolvedPaths: new Set(scannedFiles.map(file => file.absolutePath)), + } if (shouldAugment === 'after-resolve') { await nuxt.callHook('pages:extend', pages) await augmentPages(pages, nuxt.vfs, augmentCtx) @@ -121,7 +124,7 @@ export function generateRoutesFromFiles (files: ScannedFile[], options: Generate for (let i = 0; i < segments.length; i++) { const segment = segments[i] - const tokens = parseSegment(segment!) + const tokens = parseSegment(segment!, file.absolutePath) // Skip group segments if (tokens.every(token => token.type === SegmentTokenType.group)) { @@ -154,6 +157,7 @@ export function generateRoutesFromFiles (files: ScannedFile[], options: Generate } interface AugmentPagesContext { + fullyResolvedPaths?: Set pagesToSkip?: Set augmentedPages?: Set extraExtractionKeys?: string[] @@ -163,7 +167,9 @@ export async function augmentPages (routes: NuxtPage[], vfs: Record { + const originalPkgTypes = (await og()) + return { + ...originalPkgTypes, + readPackageJSON: vi.fn(originalPkgTypes.readPackageJSON), + } +}) + +afterEach(() => { + vi.clearAllMocks() +}) + +describe('dependency mismatch', () => { + it.sequential('expect mismatched dependency to log a warning', async () => { + vi.mocked(readPackageJSON).mockReturnValue(Promise.resolve({ + version: '3.0.0', + })) + + for (const dep of keyDependencies) { + await checkDependencyVersion(dep, version) + } + + // @nuxt/kit is explicitly installed in repo root but @nuxt/schema isn't, so we only + // get warnings about @nuxt/schema + expect(console.warn).toHaveBeenCalledWith(`[nuxt] Expected \`@nuxt/kit\` to be at least \`${version}\` but got \`3.0.0\`. This might lead to unexpected behavior. Check your package.json or refresh your lockfile.`) + + vi.mocked(readPackageJSON).mockRestore() + }) + it.sequential.each([ + { + name: 'nuxt version is lower', + depVersion: inc(version, 'minor'), + }, + { + name: 'version matches', + depVersion: version, + }, + ])('expect no warning when $name.', async ({ depVersion }) => { + vi.mocked(readPackageJSON).mockReturnValue(Promise.resolve({ + depVersion, + })) + + for (const dep of keyDependencies) { + await checkDependencyVersion(dep, version) + } + + expect(console.warn).not.toHaveBeenCalled() + vi.mocked(readPackageJSON).mockRestore() + }) +}) diff --git a/packages/nuxt/test/load-nuxt.bench.ts b/packages/nuxt/test/load-nuxt.bench.ts index 483a96497c..f3e705960e 100644 --- a/packages/nuxt/test/load-nuxt.bench.ts +++ b/packages/nuxt/test/load-nuxt.bench.ts @@ -2,13 +2,13 @@ import { fileURLToPath } from 'node:url' import { bench, describe } from 'vitest' import { normalize } from 'pathe' import { withoutTrailingSlash } from 'ufo' -import { loadNuxt } from '../src' +import { loadNuxt } from 'nuxt' const emptyDir = withoutTrailingSlash(normalize(fileURLToPath(new URL('../../../node_modules/fixture', import.meta.url)))) const basicTestFixtureDir = withoutTrailingSlash(normalize(fileURLToPath(new URL('../../../test/fixtures/basic', import.meta.url)))) describe('loadNuxt', () => { - bench('empty directory', async () => { + bench('loadNuxt in an empty directory', async () => { const nuxt = await loadNuxt({ cwd: emptyDir, ready: true, @@ -16,7 +16,7 @@ describe('loadNuxt', () => { await nuxt.close() }) - bench('basic test fixture', async () => { + bench('loadNuxt in the basic test fixture', async () => { const nuxt = await loadNuxt({ cwd: basicTestFixtureDir, ready: true, diff --git a/packages/nuxt/test/load-nuxt.test.ts b/packages/nuxt/test/load-nuxt.test.ts index 16f756e1fa..d948ae9cb5 100644 --- a/packages/nuxt/test/load-nuxt.test.ts +++ b/packages/nuxt/test/load-nuxt.test.ts @@ -2,11 +2,8 @@ import { fileURLToPath } from 'node:url' import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest' import { normalize } from 'pathe' import { withoutTrailingSlash } from 'ufo' -import { readPackageJSON } from 'pkg-types' -import { inc } from 'semver' import { asyncNameStorage, logger, useNuxt } from '@nuxt/kit' import { loadNuxt } from '../src' -import { version } from '../package.json' const repoRoot = withoutTrailingSlash(normalize(fileURLToPath(new URL('../../../', import.meta.url)))) @@ -80,45 +77,3 @@ describe('loadNuxt', () => { expect(loggerWarn).not.toHaveBeenCalled() }) }) - -describe('dependency mismatch', () => { - it('expect mismatched dependency to log a warning', async () => { - vi.mocked(readPackageJSON).mockReturnValue(Promise.resolve({ - version: '3.0.0', - })) - - const nuxt = await loadNuxt({ - cwd: repoRoot, - }) - - // @nuxt/kit is explicitly installed in repo root but @nuxt/schema isn't, so we only - // get warnings about @nuxt/schema - expect(console.warn).toHaveBeenCalledWith(`[nuxt] Expected \`@nuxt/kit\` to be at least \`${version}\` but got \`3.0.0\`. This might lead to unexpected behavior. Check your package.json or refresh your lockfile.`) - - vi.mocked(readPackageJSON).mockRestore() - await nuxt.close() - }) - it.each([ - { - name: 'nuxt version is lower', - depVersion: inc(version, 'minor'), - }, - { - name: 'version matches', - depVersion: version, - }, - ])('expect no warning when $name.', async ({ depVersion }) => { - vi.mocked(readPackageJSON).mockReturnValue(Promise.resolve({ - depVersion, - })) - - const nuxt = await loadNuxt({ - cwd: repoRoot, - }) - - expect(console.warn).not.toHaveBeenCalled() - - await nuxt.close() - vi.mocked(readPackageJSON).mockRestore() - }) -}) diff --git a/packages/nuxt/test/virtual.test.ts b/packages/nuxt/test/virtual.test.ts new file mode 100644 index 0000000000..edd386ff9d --- /dev/null +++ b/packages/nuxt/test/virtual.test.ts @@ -0,0 +1,84 @@ +import { describe, expect, it } from 'vitest' +import type { Nuxt } from '@nuxt/schema' +import { rollup } from 'rollup' + +import { VirtualFSPlugin } from '../src/core/plugins/virtual' + +describe('virtual fs plugin', () => { + it('should support loading files virtually', async () => { + const code = await generateCode('export { foo } from "#build/foo"', { + vfs: { + '/.nuxt/foo': 'export const foo = "hello world"', + }, + }) + expect(code).toMatchInlineSnapshot(` + "const foo = "hello world"; + + export { foo };" + `) + }) + + it('should support loading virtual files by suffix', async () => { + const code = await generateCode('export { foo } from "#build/foo"', { + mode: 'client', + vfs: { + '/.nuxt/foo.server.ts': 'export const foo = "foo server file"', + '/.nuxt/foo.client.ts': 'export const foo = "foo client file"', + }, + }) + expect(code).toMatchInlineSnapshot(` + "const foo = "foo client file"; + + export { foo };" + `) + }) + + it('should support loading files referenced relatively', async () => { + const code = await generateCode('export { foo } from "#build/foo"', { + vfs: { + '/.nuxt/foo': 'export { foo } from "./bar"', + '/.nuxt/bar': 'export const foo = "relative import"', + }, + }) + expect(code).toMatchInlineSnapshot(` + "const foo = "relative import"; + + export { foo };" + `) + }) +}) + +async function generateCode (input: string, options: { mode?: 'client' | 'server', vfs: Record }) { + const stubNuxt = { + options: { + extensions: ['.ts', '.js'], + alias: { + '~': '/', + '#build': '/.nuxt', + }, + }, + vfs: options.vfs, + } as unknown as Nuxt + + const bundle = await rollup({ + input: 'entry.ts', + plugins: [ + { + name: 'entry', + resolveId (id) { + if (id === 'entry.ts') { + return id + } + }, + load (id) { + if (id === 'entry.ts') { + return input + } + }, + }, + VirtualFSPlugin(stubNuxt, { mode: options.mode || 'client', alias: stubNuxt.options.alias }).rollup(), + ], + }) + const { output: [chunk] } = await bundle.generate({}) + return chunk.code.trim() +} diff --git a/packages/rspack/build.config.ts b/packages/rspack/build.config.ts index c11f11a10c..16742a8dae 100644 --- a/packages/rspack/build.config.ts +++ b/packages/rspack/build.config.ts @@ -1,4 +1,5 @@ import { defineBuildConfig } from 'unbuild' +import { addRollupTimingsPlugin, stubOptions } from '../../debug/build-config' import config from '../webpack/build.config' export default defineBuildConfig({ @@ -8,6 +9,12 @@ export default defineBuildConfig({ '#builder', '@nuxt/schema', ], + stubOptions, + hooks: { + 'rollup:options' (ctx, options) { + addRollupTimingsPlugin(options) + }, + }, entries: [ { input: '../webpack/src/index', diff --git a/packages/rspack/package.json b/packages/rspack/package.json index f843c20d0d..9d9e969127 100644 --- a/packages/rspack/package.json +++ b/packages/rspack/package.json @@ -32,7 +32,7 @@ "dependencies": { "@nuxt/friendly-errors-webpack-plugin": "^2.6.0", "@nuxt/kit": "workspace:*", - "@rspack/core": "^1.1.8", + "@rspack/core": "^1.2.2", "autoprefixer": "^10.4.20", "css-loader": "^7.1.2", "css-minimizer-webpack-plugin": "^7.0.0", @@ -43,15 +43,15 @@ "file-loader": "^6.2.0", "fork-ts-checker-webpack-plugin": "^9.0.2", "globby": "^14.0.2", - "h3": "npm:h3-nightly@2.0.0-1718872656.6765a6e", + "h3": "npm:h3-nightly@1.14.0-20250122-114730-3f9e703", "jiti": "^2.4.2", "knitwork": "^1.2.0", "magic-string": "^0.30.17", "memfs": "^4.17.0", "ohash": "^1.1.4", - "pathe": "^2.0.1", + "pathe": "^2.0.2", "pify": "^6.1.0", - "postcss": "^8.4.49", + "postcss": "^8.5.1", "postcss-import": "^16.1.0", "postcss-import-resolver": "^2.0.0", "postcss-loader": "^8.1.1", @@ -75,14 +75,14 @@ "@types/pify": "5.0.4", "@types/webpack-bundle-analyzer": "4.7.0", "@types/webpack-hot-middleware": "2.25.9", - "rollup": "4.30.1", - "unbuild": "3.2.0", + "rollup": "4.31.0", + "unbuild": "3.3.1", "vue": "3.5.13" }, "peerDependencies": { "vue": "^3.3.4" }, "engines": { - "node": "^18.20.5 || ^20.9.0 || >=22.0.0" + "node": "^18.12.0 || ^20.9.0 || >=22.0.0" } } diff --git a/packages/schema/build.config.ts b/packages/schema/build.config.ts index f4f1d79bfb..c78328916c 100644 --- a/packages/schema/build.config.ts +++ b/packages/schema/build.config.ts @@ -1,4 +1,5 @@ import { defineBuildConfig } from 'unbuild' +import { stubOptions } from '../../debug/build-config' export default defineBuildConfig({ declaration: true, @@ -20,22 +21,16 @@ export default defineBuildConfig({ 'src/index', 'src/builder-env', ], - hooks: { - 'rollup:options' (ctx, options) { - ctx.options.rollup.dts.respectExternal = false - const isExternal = options.external! as (id: string, importer?: string, isResolved?: boolean) => boolean - options.external = (source, importer, isResolved) => { - if (source === 'untyped' || source === 'knitwork') { - return false - } - return isExternal(source, importer, isResolved) - } - }, + stubOptions, + rollup: { + dts: { respectExternal: false }, + inlineDependencies: ['untyped', 'knitwork'], }, externals: [ // Type imports '@unhead/schema', '@vitejs/plugin-vue', + 'chokidar', '@vitejs/plugin-vue-jsx', '@vue/language-core', 'autoprefixer', diff --git a/packages/schema/package.json b/packages/schema/package.json index 050e039dd8..93b541fbf4 100644 --- a/packages/schema/package.json +++ b/packages/schema/package.json @@ -37,29 +37,30 @@ }, "devDependencies": { "@types/pug": "2.0.10", - "@unhead/schema": "1.11.15", + "@unhead/schema": "1.11.18", "@vitejs/plugin-vue": "5.2.1", "@vitejs/plugin-vue-jsx": "4.1.1", "@vue/compiler-core": "3.5.13", "@vue/compiler-sfc": "3.5.13", "@vue/language-core": "2.2.0", "c12": "2.0.1", + "chokidar": "4.0.3", "compatx": "0.1.8", "esbuild-loader": "4.2.2", "file-loader": "6.2.0", - "h3": "npm:h3-nightly@2.0.0-1718872656.6765a6e", + "h3": "npm:h3-nightly@1.14.0-20250122-114730-3f9e703", "hookable": "5.5.3", - "ignore": "7.0.0", - "nitro": "npm:nitro-nightly@3.0.0-beta-28796231.359af68d", + "ignore": "7.0.3", + "nitro": "npm:nitro-nightly@3.0.0-beta-28938837.19ec5395", "ofetch": "1.4.1", - "pkg-types": "1.3.0", + "pkg-types": "1.3.1", "sass-loader": "16.0.4", "scule": "1.3.0", - "unbuild": "3.2.0", + "unbuild": "3.3.1", "unctx": "2.4.1", - "unimport": "3.14.5", + "unimport": "4.0.0", "untyped": "1.5.2", - "vite": "6.0.7", + "vite": "6.0.11", "vue": "3.5.13", "vue-bundle-renderer": "2.1.1", "vue-loader": "17.4.2", @@ -68,9 +69,9 @@ "webpack-dev-middleware": "7.4.2" }, "dependencies": { - "consola": "^3.3.3", + "consola": "^3.4.0", "defu": "^6.1.4", - "pathe": "^2.0.1", + "pathe": "^2.0.2", "std-env": "^3.8.0" }, "engines": { diff --git a/packages/schema/src/config/common.ts b/packages/schema/src/config/common.ts index 59848e08dc..1d306f1630 100644 --- a/packages/schema/src/config/common.ts +++ b/packages/schema/src/config/common.ts @@ -247,12 +247,16 @@ export default defineUntypedSchema({ * * Normally, you should not need to set this. */ - dev: Boolean(isDevelopment), + dev: { + $resolve: val => val ?? Boolean(isDevelopment), + }, /** * Whether your app is being unit tested. */ - test: Boolean(isTest), + test: { + $resolve: val => val ?? Boolean(isTest), + }, /** * Set to `true` to enable debug mode. @@ -519,9 +523,11 @@ export default defineUntypedSchema({ /** * Options to pass directly to `chokidar`. * @see [chokidar](https://github.com/paulmillr/chokidar#api) + * @type {typeof import('chokidar').ChokidarOptions} */ chokidar: { ignoreInitial: true, + ignorePermissionErrors: true, }, }, diff --git a/packages/ui-templates/package.json b/packages/ui-templates/package.json index 1738e679aa..2ff799f0dc 100644 --- a/packages/ui-templates/package.json +++ b/packages/ui-templates/package.json @@ -17,22 +17,19 @@ "prerender": "pnpm build && jiti ./lib/prerender" }, "devDependencies": { - "@unocss/reset": "65.4.0", + "@unocss/reset": "65.4.3", "beasties": "0.2.0", "html-validate": "9.1.3", "htmlnano": "2.1.1", "jiti": "2.4.2", "knitwork": "1.2.0", - "pathe": "2.0.1", + "pathe": "2.0.2", "prettier": "3.4.2", "scule": "1.3.0", "svgo": "3.3.2", "tinyexec": "0.3.2", "tinyglobby": "0.2.10", - "unocss": "65.4.0", - "vite": "6.0.7" - }, - "engines": { - "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + "unocss": "65.4.3", + "vite": "6.0.11" } } diff --git a/packages/vite/build.config.ts b/packages/vite/build.config.ts index b696460b7f..3c3789865e 100644 --- a/packages/vite/build.config.ts +++ b/packages/vite/build.config.ts @@ -1,4 +1,5 @@ import { defineBuildConfig } from 'unbuild' +import { addRollupTimingsPlugin, stubOptions } from '../../debug/build-config' export default defineBuildConfig({ declaration: true, @@ -6,6 +7,12 @@ export default defineBuildConfig({ 'src/index', { input: 'src/runtime/', outDir: 'dist/runtime', format: 'esm' }, ], + stubOptions, + hooks: { + 'rollup:options' (ctx, options) { + addRollupTimingsPlugin(options) + }, + }, dependencies: [ 'vue', ], diff --git a/packages/vite/package.json b/packages/vite/package.json index 0dc731569a..07933373a0 100644 --- a/packages/vite/package.json +++ b/packages/vite/package.json @@ -26,8 +26,8 @@ }, "devDependencies": { "@nuxt/schema": "workspace:*", - "rollup": "4.30.1", - "unbuild": "3.2.0", + "rollup": "4.31.0", + "unbuild": "3.3.1", "vue": "3.5.13" }, "dependencies": { @@ -36,28 +36,27 @@ "@vitejs/plugin-vue": "^5.2.1", "@vitejs/plugin-vue-jsx": "^4.1.1", "autoprefixer": "^10.4.20", - "consola": "^3.3.3", + "consola": "^3.4.0", "cssnano": "^7.0.6", "defu": "^6.1.4", "esbuild": "^0.24.2", "escape-string-regexp": "^5.0.0", - "externality": "^1.0.2", "get-port-please": "^3.1.2", - "h3": "npm:h3-nightly@2.0.0-1718872656.6765a6e", + "h3": "npm:h3-nightly@1.14.0-20250122-114730-3f9e703", "jiti": "^2.4.2", "knitwork": "^1.2.0", "magic-string": "^0.30.17", - "mlly": "^1.7.3", - "pathe": "^2.0.1", - "pkg-types": "^1.3.0", - "postcss": "^8.4.49", + "mlly": "^1.7.4", + "pathe": "^2.0.2", + "pkg-types": "^1.3.1", + "postcss": "^8.5.1", "rollup-plugin-visualizer": "^5.13.1", "std-env": "^3.8.0", "ufo": "^1.5.4", "unenv": "^1.10.0", "unplugin": "^2.1.2", - "vite": "^6.0.7", - "vite-node": "^2.1.8", + "vite": "^6.0.11", + "vite-node": "^3.0.3", "vite-plugin-checker": "^0.8.0", "vue-bundle-renderer": "^2.1.1" }, @@ -65,6 +64,6 @@ "vue": "^3.3.4" }, "engines": { - "node": "^18.20.5 || ^20.9.0 || >=22.0.0" + "node": "^18.12.0 || ^20.9.0 || >=22.0.0" } } diff --git a/packages/vite/src/client.ts b/packages/vite/src/client.ts index ef4204ba40..0bf79e871c 100644 --- a/packages/vite/src/client.ts +++ b/packages/vite/src/client.ts @@ -110,9 +110,12 @@ export async function buildClient (ctx: ViteBuildContext) { }, resolve: { alias: { + // user aliases ...nodeCompat.alias, ...ctx.config.resolve?.alias, 'nitro/runtime': join(ctx.nuxt.options.buildDir, 'nitro.client.mjs'), + // work around vite optimizer bug + '#app-manifest': 'unenv/runtime/mock/empty', }, dedupe: [ 'vue', diff --git a/packages/vite/src/utils/external.ts b/packages/vite/src/utils/external.ts deleted file mode 100644 index c6889cb3a1..0000000000 --- a/packages/vite/src/utils/external.ts +++ /dev/null @@ -1,36 +0,0 @@ -import type { ExternalsOptions } from 'externality' -import { ExternalsDefaults, isExternal } from 'externality' -import type { ViteDevServer } from 'vite' -import escapeStringRegexp from 'escape-string-regexp' -import { withTrailingSlash } from 'ufo' -import type { Nuxt } from 'nuxt/schema' -import { resolve } from 'pathe' -import { toArray } from '.' - -export function createIsExternal (viteServer: ViteDevServer, nuxt: Nuxt) { - const externalOpts: ExternalsOptions = { - inline: [ - /virtual:/, - /\.ts$/, - ...ExternalsDefaults.inline || [], - ...( - viteServer.config.ssr.noExternal && viteServer.config.ssr.noExternal !== true - ? toArray(viteServer.config.ssr.noExternal) - : [] - ), - ], - external: [ - '#shared', - new RegExp('^' + escapeStringRegexp(withTrailingSlash(resolve(nuxt.options.rootDir, nuxt.options.dir.shared)))), - ...(viteServer.config.ssr.external as string[]) || [], - /node_modules/, - ], - resolve: { - modules: nuxt.options.modulesDir, - type: 'module', - extensions: ['.ts', '.js', '.json', '.vue', '.mjs', '.jsx', '.tsx', '.wasm'], - }, - } - - return (id: string) => isExternal(id, nuxt.options.rootDir, externalOpts) -} diff --git a/packages/vite/src/vite-node.ts b/packages/vite/src/vite-node.ts index 2f2c054cda..28c9e04bbd 100644 --- a/packages/vite/src/vite-node.ts +++ b/packages/vite/src/vite-node.ts @@ -8,12 +8,9 @@ import { isFileServingAllowed } from 'vite' import type { ModuleNode, Plugin as VitePlugin } from 'vite' import { getQuery } from 'ufo' import { normalizeViteManifest } from 'vue-bundle-renderer' -import { resolve as resolveModule } from 'mlly' import { distDir } from './dirs' import type { ViteBuildContext } from './vite' import { isCSS } from './utils' -import { createIsExternal } from './utils/external' -import { transpile } from './utils/transpile' // TODO: Remove this in favor of registerViteNodeMiddleware // after Nitropack or h3 allows adding middleware after setup @@ -44,7 +41,7 @@ export function viteNodePlugin (ctx: ViteBuildContext): VitePlugin { // invalidate changed virtual modules when templates are regenerated ctx.nuxt.hook('app:templatesGenerated', (_app, changedTemplates) => { for (const template of changedTemplates) { - const mods = server.moduleGraph.getModulesByFile(`virtual:nuxt:${template.dst}`) + const mods = server.moduleGraph.getModulesByFile(`virtual:nuxt:${encodeURIComponent(template.dst)}`) for (const mod of mods || []) { markInvalidate(mod) @@ -118,9 +115,9 @@ function createViteNodeApp (ctx: ViteBuildContext, invalidates: Set = ne const node = new ViteNodeServer(viteServer, { deps: { inline: [ - /\/node_modules\/(.*\/)?(nuxt|nuxt3|nuxt-nightly)\//, + // Common /^#/, - ...transpile({ isServer: true, isDev: ctx.nuxt.options.dev }), + /\?/, ], }, transformMode: { @@ -129,15 +126,6 @@ function createViteNodeApp (ctx: ViteBuildContext, invalidates: Set = ne }, }) - const isExternal = createIsExternal(viteServer, ctx.nuxt) - node.shouldExternalize = async (id: string) => { - const result = await isExternal(id) - if (result?.external) { - return resolveModule(result.id, { url: ctx.nuxt.options.modulesDir }).catch(() => false) - } - return false - } - return eventHandler(async (event) => { const moduleId = decodeURI(event.path).substring(1) if (moduleId === '/') { diff --git a/packages/vite/src/vite.ts b/packages/vite/src/vite.ts index 6d86f0ba9e..85290f78c0 100644 --- a/packages/vite/src/vite.ts +++ b/packages/vite/src/vite.ts @@ -2,7 +2,7 @@ import { existsSync } from 'node:fs' import * as vite from 'vite' import { dirname, join, normalize, resolve } from 'pathe' import type { Nuxt, NuxtBuilder, ViteConfig } from '@nuxt/schema' -import { addVitePlugin, isIgnored, logger, resolvePath, useNitro } from '@nuxt/kit' +import { addVitePlugin, createIsIgnored, logger, resolvePath, useNitro } from '@nuxt/kit' import replace from '@rollup/plugin-replace' import type { RollupReplaceOptions } from '@rollup/plugin-replace' import { sanitizeFilePath } from 'mlly' @@ -53,6 +53,7 @@ export const bundle: NuxtBuilder['bundle'] = async (nuxt) => { const { $client, $server, ...viteConfig } = nuxt.options.vite + const isIgnored = createIsIgnored(nuxt) const ctx: ViteBuildContext = { nuxt, entry, @@ -88,6 +89,7 @@ export const bundle: NuxtBuilder['bundle'] = async (nuxt) => { }, }, watch: { + chokidar: { ...nuxt.options.watchers.chokidar, ignored: [isIgnored, /[\\/]node_modules[\\/]/] }, exclude: nuxt.options.ignore, }, }, @@ -101,7 +103,7 @@ export const bundle: NuxtBuilder['bundle'] = async (nuxt) => { replace({ preventAssignment: true, ...globalThisReplacements }), ], server: { - watch: { ignored: isIgnored }, + watch: { ...nuxt.options.watchers.chokidar, ignored: [isIgnored, /[\\/]node_modules[\\/]/] }, fs: { allow: [...new Set(allowDirs)], }, @@ -210,13 +212,13 @@ export const bundle: NuxtBuilder['bundle'] = async (nuxt) => { nuxt.hook('vite:serverCreated', (server: vite.ViteDevServer, env) => { // Invalidate virtual modules when templates are re-generated - ctx.nuxt.hook('app:templatesGenerated', (_app, changedTemplates) => { - for (const template of changedTemplates) { - for (const mod of server.moduleGraph.getModulesByFile(`virtual:nuxt:${template.dst}`) || []) { + ctx.nuxt.hook('app:templatesGenerated', async (_app, changedTemplates) => { + await Promise.all(changedTemplates.map(async (template) => { + for (const mod of server.moduleGraph.getModulesByFile(`virtual:nuxt:${encodeURIComponent(template.dst)}`) || []) { server.moduleGraph.invalidateModule(mod) - server.reloadModule(mod) + await server.reloadModule(mod) } - } + })) }) if (nuxt.options.vite.warmupEntry !== false) { diff --git a/packages/webpack/build.config.ts b/packages/webpack/build.config.ts index e1567f1bb6..03431c3e1a 100644 --- a/packages/webpack/build.config.ts +++ b/packages/webpack/build.config.ts @@ -1,10 +1,17 @@ import { defineBuildConfig } from 'unbuild' +import { addRollupTimingsPlugin, stubOptions } from '../../debug/build-config' export default defineBuildConfig({ declaration: true, entries: [ 'src/index', ], + stubOptions, + hooks: { + 'rollup:options' (ctx, options) { + addRollupTimingsPlugin(options) + }, + }, dependencies: [ '@nuxt/kit', 'unplugin', diff --git a/packages/webpack/package.json b/packages/webpack/package.json index c11d78871a..119da0fc81 100644 --- a/packages/webpack/package.json +++ b/packages/webpack/package.json @@ -42,16 +42,16 @@ "file-loader": "^6.2.0", "fork-ts-checker-webpack-plugin": "^9.0.2", "globby": "^14.0.2", - "h3": "npm:h3-nightly@2.0.0-1718872656.6765a6e", + "h3": "npm:h3-nightly@1.14.0-20250122-114730-3f9e703", "jiti": "^2.4.2", "knitwork": "^1.2.0", "magic-string": "^0.30.17", "memfs": "^4.17.0", "mini-css-extract-plugin": "^2.9.2", "ohash": "^1.1.4", - "pathe": "^2.0.1", + "pathe": "^2.0.2", "pify": "^6.1.0", - "postcss": "^8.4.49", + "postcss": "^8.5.1", "postcss-import": "^16.1.0", "postcss-import-resolver": "^2.0.0", "postcss-loader": "^8.1.1", @@ -73,18 +73,18 @@ }, "devDependencies": { "@nuxt/schema": "workspace:*", - "@rspack/core": "1.1.8", + "@rspack/core": "1.2.2", "@types/pify": "5.0.4", "@types/webpack-bundle-analyzer": "4.7.0", "@types/webpack-hot-middleware": "2.25.9", - "rollup": "4.30.1", - "unbuild": "3.2.0", + "rollup": "4.31.0", + "unbuild": "3.3.1", "vue": "3.5.13" }, "peerDependencies": { "vue": "^3.3.4" }, "engines": { - "node": "^18.20.5 || ^20.9.0 || >=22.0.0" + "node": "^18.12.0 || ^20.9.0 || >=22.0.0" } } diff --git a/packages/webpack/src/configs/client.ts b/packages/webpack/src/configs/client.ts index f147745939..da08af89a2 100644 --- a/packages/webpack/src/configs/client.ts +++ b/packages/webpack/src/configs/client.ts @@ -56,7 +56,7 @@ function clientNodeCompat (ctx: WebpackConfigContext) { } ctx.config.plugins!.push(new webpack.DefinePlugin({ global: 'globalThis' })) - ctx.config.resolve = ctx.config.resolve || {} + ctx.config.resolve ||= {} ctx.config.resolve.fallback = { ...env(nodeless).alias, ...ctx.config.resolve.fallback, @@ -92,7 +92,7 @@ function clientHMR (ctx: WebpackConfigContext) { `webpack-hot-middleware/client?${hotMiddlewareClientOptionsStr}`, ) - ctx.config.plugins = ctx.config.plugins || [] + ctx.config.plugins ||= [] ctx.config.plugins.push(new webpack.HotModuleReplacementPlugin()) } diff --git a/packages/webpack/src/configs/server.ts b/packages/webpack/src/configs/server.ts index 574b930e7f..64347f78a7 100644 --- a/packages/webpack/src/configs/server.ts +++ b/packages/webpack/src/configs/server.ts @@ -85,7 +85,7 @@ function serverStandalone (ctx: WebpackConfigContext) { } function serverPlugins (ctx: WebpackConfigContext) { - ctx.config.plugins = ctx.config.plugins || [] + ctx.config.plugins ||= [] // Server polyfills if (ctx.userConfig.serverURLPolyfill) { diff --git a/packages/webpack/src/presets/base.ts b/packages/webpack/src/presets/base.ts index 4e80ea8c54..bafceb8291 100644 --- a/packages/webpack/src/presets/base.ts +++ b/packages/webpack/src/presets/base.ts @@ -50,7 +50,7 @@ function baseConfig (ctx: WebpackConfigContext) { } function basePlugins (ctx: WebpackConfigContext) { - ctx.config.plugins = ctx.config.plugins || [] + ctx.config.plugins ||= [] // Add timefix-plugin before other plugins if (ctx.options.dev) { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3ac8daede5..81f218bf6a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5,36 +5,39 @@ settings: excludeLinksFromLockfile: false overrides: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.26.5 + '@nuxt/cli': 3.20.0 '@nuxt/kit': workspace:* '@nuxt/rspack-builder': workspace:* '@nuxt/schema': workspace:* '@nuxt/vite-builder': workspace:* '@nuxt/webpack-builder': workspace:* - '@types/node': 22.10.5 - '@unhead/dom': 1.11.15 - '@unhead/schema': 1.11.15 - '@unhead/shared': 1.11.15 - '@unhead/ssr': 1.11.15 - '@unhead/vue': 1.11.15 + '@types/node': 22.10.10 + '@unhead/dom': 1.11.18 + '@unhead/schema': 1.11.18 + '@unhead/shared': 1.11.18 + '@unhead/ssr': 1.11.18 + '@unhead/vue': 1.11.18 '@vue/compiler-core': 3.5.13 '@vue/compiler-dom': 3.5.13 '@vue/shared': 3.5.13 c12: 2.0.1 - h3: npm:h3-nightly@2.0.0-1718872656.6765a6e + h3: npm:h3-nightly@1.14.0-20250122-114730-3f9e703 jiti: 2.4.2 magic-string: ^0.30.17 - nitro: npm:nitro-nightly@3.0.0-beta-28796231.359af68d + nitro: npm:nitro-nightly@3.0.0-beta-28938837.19ec5395 nuxt: workspace:* ohash: 1.1.4 - postcss: 8.4.49 - rollup: 4.30.1 + postcss: 8.5.1 + rollup: 4.31.0 send: '>=1.1.0' typescript: 5.7.3 ufo: 1.5.4 - unbuild: 3.2.0 - unhead: 1.11.15 - unimport: 3.14.5 - vite: 6.0.7 + unbuild: 3.3.1 + unhead: 1.11.18 + unimport: 4.0.0 + vite: 6.0.11 vue: 3.5.13 importers: @@ -42,8 +45,17 @@ importers: .: devDependencies: '@arethetypeswrong/cli': - specifier: 0.17.2 - version: 0.17.2 + specifier: 0.17.3 + version: 0.17.3 + '@babel/core': + specifier: 7.26.0 + version: 7.26.0 + '@babel/helper-plugin-utils': + specifier: 7.26.5 + version: 7.26.5 + '@codspeed/vitest-plugin': + specifier: 4.0.0 + version: 4.0.0(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vitest@3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) '@nuxt/cli': specifier: 3.20.0 version: 3.20.0(magicast@0.3.5) @@ -58,34 +70,43 @@ importers: version: link:packages/rspack '@nuxt/test-utils': specifier: 3.15.4 - version: 3.15.4(@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)))(@types/node@22.10.5)(@vue/test-utils@2.4.6)(happy-dom@16.5.3)(jiti@2.4.2)(magicast@0.3.5)(playwright-core@1.49.1)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(typescript@5.7.3)(vitest@2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(yaml@2.7.0) + version: 3.15.4(@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)))(@types/node@22.10.10)(@vue/test-utils@2.4.6)(happy-dom@16.7.2)(jiti@2.4.2)(magicast@0.3.5)(playwright-core@1.50.0)(terser@5.32.0)(tsx@4.19.2)(typescript@5.7.3)(vitest@3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(yaml@2.7.0) '@nuxt/webpack-builder': specifier: workspace:* version: link:packages/webpack '@testing-library/vue': specifier: 8.1.0 version: 8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)) + '@types/babel__core': + specifier: 7.20.5 + version: 7.20.5 + '@types/babel__helper-plugin-utils': + specifier: 7.10.3 + version: 7.10.3 '@types/node': - specifier: 22.10.5 - version: 22.10.5 + specifier: 22.10.10 + version: 22.10.10 '@types/semver': specifier: 7.5.8 version: 7.5.8 '@unhead/schema': - specifier: 1.11.15 - version: 1.11.15 + specifier: 1.11.18 + version: 1.11.18 '@unhead/vue': - specifier: 1.11.15 - version: 1.11.15(vue@3.5.13(typescript@5.7.3)) + specifier: 1.11.18 + version: 1.11.18(vue@3.5.13(typescript@5.7.3)) '@vitest/coverage-v8': - specifier: 2.1.8 - version: 2.1.8(vitest@2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) + specifier: 3.0.3 + version: 3.0.3(vitest@3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) '@vue/test-utils': specifier: 2.4.6 version: 2.4.6 + acorn: + specifier: 8.14.0 + version: 8.14.0 autoprefixer: specifier: 10.4.20 - version: 10.4.20(postcss@8.4.49) + version: 10.4.20(postcss@8.5.1) case-police: specifier: 0.7.2 version: 0.7.2 @@ -93,11 +114,11 @@ importers: specifier: 0.5.7 version: 0.5.7(magicast@0.3.5) consola: - specifier: 3.3.3 - version: 3.3.3 + specifier: 3.4.0 + version: 3.4.0 cssnano: specifier: 7.0.6 - version: 7.0.6(postcss@8.4.49) + version: 7.0.6(postcss@8.5.1) destr: specifier: 2.0.3 version: 2.0.3 @@ -111,17 +132,20 @@ importers: specifier: 3.3.0 version: 3.3.0 eslint-plugin-perfectionist: - specifier: 4.6.0 - version: 4.6.0(eslint@9.18.0(jiti@2.4.2))(typescript@5.7.3) + specifier: 4.7.0 + version: 4.7.0(eslint@9.18.0(jiti@2.4.2))(typescript@5.7.3) eslint-typegen: specifier: 1.0.0 version: 1.0.0(eslint@9.18.0(jiti@2.4.2)) + estree-walker: + specifier: 3.0.3 + version: 3.0.3 h3: - specifier: npm:h3-nightly@2.0.0-1718872656.6765a6e - version: h3-nightly@2.0.0-1718872656.6765a6e + specifier: npm:h3-nightly@1.14.0-20250122-114730-3f9e703 + version: h3-nightly@1.14.0-20250122-114730-3f9e703 happy-dom: - specifier: 16.5.3 - version: 16.5.3 + specifier: 16.7.2 + version: 16.7.2 installed-check: specifier: 9.3.0 version: 9.3.0 @@ -129,8 +153,11 @@ importers: specifier: 2.4.2 version: 2.4.2 knip: - specifier: 5.42.0 - version: 5.42.0(@types/node@22.10.5)(typescript@5.7.3) + specifier: 5.43.1 + version: 5.43.1(@types/node@22.10.10)(typescript@5.7.3) + magic-string: + specifier: ^0.30.17 + version: 0.30.17 markdownlint-cli: specifier: 0.43.0 version: 0.43.0 @@ -138,8 +165,8 @@ importers: specifier: 4.17.0 version: 4.17.0 nitro: - specifier: npm:nitro-nightly@3.0.0-beta-28796231.359af68d - version: nitro-nightly@3.0.0-beta-28796231.359af68d(typescript@5.7.3) + specifier: npm:nitro-nightly@3.0.0-beta-28938837.19ec5395 + version: nitro-nightly@3.0.0-beta-28938837.19ec5395(typescript@5.7.3) nuxt: specifier: workspace:* version: link:packages/nuxt @@ -150,11 +177,17 @@ importers: specifier: 1.4.1 version: 1.4.1 pathe: - specifier: 2.0.1 - version: 2.0.1 + specifier: 2.0.2 + version: 2.0.2 + pkg-pr-new: + specifier: 0.0.39 + version: 0.0.39 playwright-core: - specifier: 1.49.1 - version: 1.49.1 + specifier: 1.50.0 + version: 1.50.0 + rollup: + specifier: 4.31.0 + version: 4.31.0 semver: specifier: 7.6.3 version: 7.6.3 @@ -170,18 +203,24 @@ importers: tinyglobby: specifier: 0.2.10 version: 0.2.10 + ts-blank-space: + specifier: 0.5.0 + version: 0.5.0 typescript: specifier: 5.7.3 version: 5.7.3 ufo: specifier: 1.5.4 version: 1.5.4 + unbuild: + specifier: 3.3.1 + version: 3.3.1(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) vitest: - specifier: 2.1.8 - version: 2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + specifier: 3.0.3 + version: 3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) vitest-environment-nuxt: specifier: 1.0.1 - version: 1.0.1(@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)))(@types/node@22.10.5)(@vue/test-utils@2.4.6)(happy-dom@16.5.3)(jiti@2.4.2)(magicast@0.3.5)(playwright-core@1.49.1)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(typescript@5.7.3)(vitest@2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(yaml@2.7.0) + version: 1.0.1(@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)))(@types/node@22.10.10)(@vue/test-utils@2.4.6)(happy-dom@16.7.2)(jiti@2.4.2)(magicast@0.3.5)(playwright-core@1.50.0)(terser@5.32.0)(tsx@4.19.2)(typescript@5.7.3)(vitest@3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(yaml@2.7.0) vue: specifier: 3.5.13 version: 3.5.13(typescript@5.7.3) @@ -201,8 +240,8 @@ importers: specifier: 2.0.1 version: 2.0.1(magicast@0.3.5) consola: - specifier: ^3.3.3 - version: 3.3.3 + specifier: ^3.4.0 + version: 3.4.0 defu: specifier: ^6.1.4 version: 6.1.4 @@ -216,8 +255,8 @@ importers: specifier: ^14.0.2 version: 14.0.2 ignore: - specifier: ^7.0.0 - version: 7.0.0 + specifier: ^7.0.3 + version: 7.0.3 jiti: specifier: 2.4.2 version: 2.4.2 @@ -225,23 +264,26 @@ importers: specifier: ^2.0.6 version: 2.0.6 mlly: - specifier: ^1.7.3 - version: 1.7.3 + specifier: ^1.7.4 + version: 1.7.4 ohash: specifier: 1.1.4 version: 1.1.4 pathe: - specifier: ^2.0.1 - version: 2.0.1 + specifier: ^2.0.2 + version: 2.0.2 pkg-types: - specifier: ^1.3.0 - version: 1.3.0 + specifier: ^1.3.1 + version: 1.3.1 scule: specifier: ^1.3.0 version: 1.3.0 semver: specifier: ^7.6.3 version: 7.6.3 + std-env: + specifier: ^3.8.0 + version: 3.8.0 ufo: specifier: 1.5.4 version: 1.5.4 @@ -249,30 +291,30 @@ importers: specifier: ^2.4.1 version: 2.4.1 unimport: - specifier: 3.14.5 - version: 3.14.5(rollup@4.30.1) + specifier: 4.0.0 + version: 4.0.0(rollup@4.31.0) untyped: specifier: ^1.5.2 version: 1.5.2 devDependencies: '@rspack/core': - specifier: 1.1.8 - version: 1.1.8 + specifier: 1.2.2 + version: 1.2.2 '@types/semver': specifier: 7.5.8 version: 7.5.8 nitro: - specifier: npm:nitro-nightly@3.0.0-beta-28796231.359af68d - version: nitro-nightly@3.0.0-beta-28796231.359af68d(typescript@5.7.3) + specifier: npm:nitro-nightly@3.0.0-beta-28938837.19ec5395 + version: nitro-nightly@3.0.0-beta-28938837.19ec5395(typescript@5.7.3) unbuild: - specifier: 3.2.0 - version: 3.2.0(sass@1.78.0)(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) + specifier: 3.3.1 + version: 3.3.1(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) vite: - specifier: 6.0.7 - version: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + specifier: 6.0.11 + version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) vitest: - specifier: 2.1.8 - version: 2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + specifier: 3.0.3 + version: 3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) webpack: specifier: 5.97.1 version: 5.97.1 @@ -280,14 +322,14 @@ importers: packages/nuxt: dependencies: '@nuxt/cli': - specifier: ^3.20.0 + specifier: 3.20.0 version: 3.20.0(magicast@0.3.5) '@nuxt/devalue': specifier: ^2.0.2 version: 2.0.2 '@nuxt/devtools': specifier: ^1.7.0 - version: 1.7.0(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + version: 1.7.0(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) '@nuxt/kit': specifier: workspace:* version: link:../kit @@ -301,20 +343,20 @@ importers: specifier: workspace:* version: link:../vite '@types/node': - specifier: 22.10.5 - version: 22.10.5 + specifier: 22.10.10 + version: 22.10.10 '@unhead/dom': - specifier: 1.11.15 - version: 1.11.15 + specifier: 1.11.18 + version: 1.11.18 '@unhead/shared': - specifier: 1.11.15 - version: 1.11.15 + specifier: 1.11.18 + version: 1.11.18 '@unhead/ssr': - specifier: 1.11.15 - version: 1.11.15 + specifier: 1.11.18 + version: 1.11.18 '@unhead/vue': - specifier: 1.11.15 - version: 1.11.15(vue@3.5.13(typescript@5.7.3)) + specifier: 1.11.18 + version: 1.11.18(vue@3.5.13(typescript@5.7.3)) '@vue/shared': specifier: 3.5.13 version: 3.5.13 @@ -331,8 +373,8 @@ importers: specifier: ^0.1.8 version: 0.1.8 consola: - specifier: ^3.3.3 - version: 3.3.3 + specifier: ^3.4.0 + version: 3.4.0 cookie-es: specifier: ^1.2.2 version: 1.2.2 @@ -361,17 +403,17 @@ importers: specifier: ^14.0.2 version: 14.0.2 h3: - specifier: npm:h3-nightly@2.0.0-1718872656.6765a6e - version: h3-nightly@2.0.0-1718872656.6765a6e + specifier: npm:h3-nightly@1.14.0-20250122-114730-3f9e703 + version: h3-nightly@1.14.0-20250122-114730-3f9e703 hookable: specifier: ^5.5.3 version: 5.5.3 ignore: - specifier: ^7.0.0 - version: 7.0.0 + specifier: ^7.0.3 + version: 7.0.3 impound: specifier: ^0.2.0 - version: 0.2.0(rollup@4.30.1) + version: 0.2.0(rollup@4.31.0) jiti: specifier: 2.4.2 version: 2.4.2 @@ -385,17 +427,17 @@ importers: specifier: ^0.30.17 version: 0.30.17 mlly: - specifier: ^1.7.3 - version: 1.7.3 + specifier: ^1.7.4 + version: 1.7.4 nanotar: - specifier: ^0.1.1 - version: 0.1.1 + specifier: ^0.2.0 + version: 0.2.0 nitro: - specifier: npm:nitro-nightly@3.0.0-beta-28796231.359af68d - version: nitro-nightly@3.0.0-beta-28796231.359af68d(typescript@5.7.3) + specifier: npm:nitro-nightly@3.0.0-beta-28938837.19ec5395 + version: nitro-nightly@3.0.0-beta-28938837.19ec5395(typescript@5.7.3) nypm: - specifier: ^0.4.1 - version: 0.4.1 + specifier: ^0.5.0 + version: 0.5.0 ofetch: specifier: ^1.4.1 version: 1.4.1 @@ -403,14 +445,14 @@ importers: specifier: 1.1.4 version: 1.1.4 pathe: - specifier: ^2.0.1 - version: 2.0.1 + specifier: ^2.0.2 + version: 2.0.2 perfect-debounce: specifier: ^1.0.0 version: 1.0.0 pkg-types: - specifier: ^1.3.0 - version: 1.3.0 + specifier: ^1.3.1 + version: 1.3.1 radix3: specifier: ^1.1.2 version: 1.1.2 @@ -424,8 +466,8 @@ importers: specifier: ^3.8.0 version: 3.8.0 strip-literal: - specifier: ^2.1.1 - version: 2.1.1 + specifier: ^3.0.0 + version: 3.0.0 tinyglobby: specifier: 0.2.10 version: 0.2.10 @@ -445,17 +487,17 @@ importers: specifier: ^1.10.0 version: 1.10.0 unhead: - specifier: 1.11.15 - version: 1.11.15 + specifier: 1.11.18 + version: 1.11.18 unimport: - specifier: 3.14.5 - version: 3.14.5(rollup@4.30.1) + specifier: 4.0.0 + version: 4.0.0(rollup@4.31.0) unplugin: specifier: ^2.1.2 version: 2.1.2 unplugin-vue-router: - specifier: ^0.10.9 - version: 0.10.9(rollup@4.30.1)(vue-router@4.5.0(vue@3.5.13(typescript@5.7.3)))(vue@3.5.13(typescript@5.7.3)) + specifier: ^0.11.1 + version: 0.11.1(rollup@4.31.0)(vue-router@4.5.0(vue@3.5.13(typescript@5.7.3)))(vue@3.5.13(typescript@5.7.3)) unstorage: specifier: ^1.14.4 version: 1.14.4(db0@0.1.4)(ioredis@5.4.1) @@ -477,7 +519,7 @@ importers: devDependencies: '@nuxt/scripts': specifier: 0.9.5 - version: 0.9.5(@nuxt/devtools@1.7.0(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)))(@unocss/webpack@0.65.4(rollup@4.30.1)(webpack@5.97.1(esbuild@0.24.2)))(@vue/compiler-core@3.5.13)(change-case@5.4.4)(fuse.js@7.0.0)(nuxt@packages+nuxt)(postcss@8.4.49)(rollup@4.30.1)(typescript@5.7.3)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))(webpack@5.97.1(esbuild@0.24.2)) + version: 0.9.5(@nuxt/devtools@1.7.0(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)))(@unocss/webpack@0.62.4(rollup@4.31.0)(webpack@5.97.1(esbuild@0.24.2)))(@vue/compiler-core@3.5.13)(axios@1.7.9)(change-case@5.4.4)(fuse.js@7.0.0)(nuxt@packages+nuxt)(postcss@8.5.1)(rollup@4.31.0)(typescript@5.7.3)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))(webpack@5.97.1(esbuild@0.24.2)) '@parcel/watcher': specifier: 2.5.0 version: 2.5.0 @@ -486,19 +528,19 @@ importers: version: 1.0.6 '@vitejs/plugin-vue': specifier: 5.2.1 - version: 5.2.1(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + version: 5.2.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) '@vue/compiler-sfc': specifier: 3.5.13 version: 3.5.13 unbuild: - specifier: 3.2.0 - version: 3.2.0(sass@1.78.0)(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) + specifier: 3.3.1 + version: 3.3.1(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) vite: - specifier: 6.0.7 - version: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + specifier: 6.0.11 + version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) vitest: - specifier: 2.1.8 - version: 2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + specifier: 3.0.3 + version: 3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) packages/rspack: dependencies: @@ -509,20 +551,20 @@ importers: specifier: workspace:* version: link:../kit '@rspack/core': - specifier: ^1.1.8 - version: 1.1.8 + specifier: ^1.2.2 + version: 1.2.2 autoprefixer: specifier: ^10.4.20 - version: 10.4.20(postcss@8.4.49) + version: 10.4.20(postcss@8.5.1) css-loader: specifier: ^7.1.2 - version: 7.1.2(@rspack/core@1.1.8)(webpack@5.97.1) + version: 7.1.2(@rspack/core@1.2.2)(webpack@5.97.1) css-minimizer-webpack-plugin: specifier: ^7.0.0 version: 7.0.0(webpack@5.97.1) cssnano: specifier: ^7.0.6 - version: 7.0.6(postcss@8.4.49) + version: 7.0.6(postcss@8.5.1) defu: specifier: ^6.1.4 version: 6.1.4 @@ -542,8 +584,8 @@ importers: specifier: ^14.0.2 version: 14.0.2 h3: - specifier: npm:h3-nightly@2.0.0-1718872656.6765a6e - version: h3-nightly@2.0.0-1718872656.6765a6e + specifier: npm:h3-nightly@1.14.0-20250122-114730-3f9e703 + version: h3-nightly@1.14.0-20250122-114730-3f9e703 jiti: specifier: 2.4.2 version: 2.4.2 @@ -560,26 +602,26 @@ importers: specifier: 1.1.4 version: 1.1.4 pathe: - specifier: ^2.0.1 - version: 2.0.1 + specifier: ^2.0.2 + version: 2.0.2 pify: specifier: ^6.1.0 version: 6.1.0 postcss: - specifier: 8.4.49 - version: 8.4.49 + specifier: 8.5.1 + version: 8.5.1 postcss-import: specifier: ^16.1.0 - version: 16.1.0(postcss@8.4.49) + version: 16.1.0(postcss@8.5.1) postcss-import-resolver: specifier: ^2.0.0 version: 2.0.0 postcss-loader: specifier: ^8.1.1 - version: 8.1.1(@rspack/core@1.1.8)(postcss@8.4.49)(typescript@5.7.3)(webpack@5.97.1) + version: 8.1.1(@rspack/core@1.2.2)(postcss@8.5.1)(typescript@5.7.3)(webpack@5.97.1) postcss-url: specifier: ^10.1.3 - version: 10.1.3(postcss@8.4.49) + version: 10.1.3(postcss@8.5.1) pug-plain-loader: specifier: ^1.1.0 version: 1.1.0(pug@3.0.3) @@ -618,7 +660,7 @@ importers: version: 2.26.1 webpackbar: specifier: ^7.0.0 - version: 7.0.0(@rspack/core@1.1.8)(webpack@5.97.1) + version: 7.0.0(@rspack/core@1.2.2)(webpack@5.97.1) devDependencies: '@nuxt/schema': specifier: workspace:* @@ -633,11 +675,11 @@ importers: specifier: 2.25.9 version: 2.25.9 rollup: - specifier: 4.30.1 - version: 4.30.1 + specifier: 4.31.0 + version: 4.31.0 unbuild: - specifier: 3.2.0 - version: 3.2.0(sass@1.78.0)(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) + specifier: 3.3.1 + version: 3.3.1(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) vue: specifier: 3.5.13 version: 3.5.13(typescript@5.7.3) @@ -645,14 +687,14 @@ importers: packages/schema: dependencies: consola: - specifier: ^3.3.3 - version: 3.3.3 + specifier: ^3.4.0 + version: 3.4.0 defu: specifier: ^6.1.4 version: 6.1.4 pathe: - specifier: ^2.0.1 - version: 2.0.1 + specifier: ^2.0.2 + version: 2.0.2 std-env: specifier: ^3.8.0 version: 3.8.0 @@ -661,14 +703,14 @@ importers: specifier: 2.0.10 version: 2.0.10 '@unhead/schema': - specifier: 1.11.15 - version: 1.11.15 + specifier: 1.11.18 + version: 1.11.18 '@vitejs/plugin-vue': specifier: 5.2.1 - version: 5.2.1(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + version: 5.2.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) '@vitejs/plugin-vue-jsx': specifier: 4.1.1 - version: 4.1.1(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + version: 4.1.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) '@vue/compiler-core': specifier: 3.5.13 version: 3.5.13 @@ -681,6 +723,9 @@ importers: c12: specifier: 2.0.1 version: 2.0.1(magicast@0.3.5) + chokidar: + specifier: 4.0.3 + version: 4.0.3 compatx: specifier: 0.1.8 version: 0.1.8 @@ -691,44 +736,44 @@ importers: specifier: 6.2.0 version: 6.2.0(webpack@5.97.1) h3: - specifier: npm:h3-nightly@2.0.0-1718872656.6765a6e - version: h3-nightly@2.0.0-1718872656.6765a6e + specifier: npm:h3-nightly@1.14.0-20250122-114730-3f9e703 + version: h3-nightly@1.14.0-20250122-114730-3f9e703 hookable: specifier: 5.5.3 version: 5.5.3 ignore: - specifier: 7.0.0 - version: 7.0.0 + specifier: 7.0.3 + version: 7.0.3 nitro: - specifier: npm:nitro-nightly@3.0.0-beta-28796231.359af68d - version: nitro-nightly@3.0.0-beta-28796231.359af68d(typescript@5.7.3) + specifier: npm:nitro-nightly@3.0.0-beta-28938837.19ec5395 + version: nitro-nightly@3.0.0-beta-28938837.19ec5395(typescript@5.7.3) ofetch: specifier: 1.4.1 version: 1.4.1 pkg-types: - specifier: 1.3.0 - version: 1.3.0 + specifier: 1.3.1 + version: 1.3.1 sass-loader: specifier: 16.0.4 - version: 16.0.4(@rspack/core@1.1.8)(sass@1.78.0)(webpack@5.97.1) + version: 16.0.4(@rspack/core@1.2.2)(webpack@5.97.1) scule: specifier: 1.3.0 version: 1.3.0 unbuild: - specifier: 3.2.0 - version: 3.2.0(sass@1.78.0)(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) + specifier: 3.3.1 + version: 3.3.1(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) unctx: specifier: 2.4.1 version: 2.4.1 unimport: - specifier: 3.14.5 - version: 3.14.5(rollup@4.30.1) + specifier: 4.0.0 + version: 4.0.0(rollup@4.31.0) untyped: specifier: 1.5.2 version: 1.5.2 vite: - specifier: 6.0.7 - version: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + specifier: 6.0.11 + version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) vue: specifier: 3.5.13 version: 3.5.13(typescript@5.7.3) @@ -751,17 +796,17 @@ importers: packages/ui-templates: devDependencies: '@unocss/reset': - specifier: 65.4.0 - version: 65.4.0 + specifier: 65.4.3 + version: 65.4.3 beasties: specifier: 0.2.0 version: 0.2.0 html-validate: specifier: 9.1.3 - version: 9.1.3(vitest@2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) + version: 9.1.3(vitest@2.1.8(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) htmlnano: specifier: 2.1.1 - version: 2.1.1(cssnano@7.0.6(postcss@8.4.49))(postcss@8.4.49)(relateurl@0.2.7)(svgo@3.3.2)(terser@5.32.0)(typescript@5.7.3) + version: 2.1.1(cssnano@7.0.6(postcss@8.5.1))(postcss@8.5.1)(relateurl@0.2.7)(svgo@3.3.2)(terser@5.32.0)(typescript@5.7.3) jiti: specifier: 2.4.2 version: 2.4.2 @@ -769,8 +814,8 @@ importers: specifier: 1.2.0 version: 1.2.0 pathe: - specifier: 2.0.1 - version: 2.0.1 + specifier: 2.0.2 + version: 2.0.2 prettier: specifier: 3.4.2 version: 3.4.2 @@ -787,11 +832,11 @@ importers: specifier: 0.2.10 version: 0.2.10 unocss: - specifier: 65.4.0 - version: 65.4.0(postcss@8.4.49)(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + specifier: 65.4.3 + version: 65.4.3(postcss@8.5.1)(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) vite: - specifier: 6.0.7 - version: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + specifier: 6.0.11 + version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) packages/vite: dependencies: @@ -800,22 +845,22 @@ importers: version: link:../kit '@rollup/plugin-replace': specifier: ^6.0.2 - version: 6.0.2(rollup@4.30.1) + version: 6.0.2(rollup@4.31.0) '@vitejs/plugin-vue': specifier: ^5.2.1 - version: 5.2.1(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + version: 5.2.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) '@vitejs/plugin-vue-jsx': specifier: ^4.1.1 - version: 4.1.1(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + version: 4.1.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) autoprefixer: specifier: ^10.4.20 - version: 10.4.20(postcss@8.4.49) + version: 10.4.20(postcss@8.5.1) consola: - specifier: ^3.3.3 - version: 3.3.3 + specifier: ^3.4.0 + version: 3.4.0 cssnano: specifier: ^7.0.6 - version: 7.0.6(postcss@8.4.49) + version: 7.0.6(postcss@8.5.1) defu: specifier: ^6.1.4 version: 6.1.4 @@ -825,15 +870,12 @@ importers: escape-string-regexp: specifier: ^5.0.0 version: 5.0.0 - externality: - specifier: ^1.0.2 - version: 1.0.2 get-port-please: specifier: ^3.1.2 version: 3.1.2 h3: - specifier: npm:h3-nightly@2.0.0-1718872656.6765a6e - version: h3-nightly@2.0.0-1718872656.6765a6e + specifier: npm:h3-nightly@1.14.0-20250122-114730-3f9e703 + version: h3-nightly@1.14.0-20250122-114730-3f9e703 jiti: specifier: 2.4.2 version: 2.4.2 @@ -844,20 +886,20 @@ importers: specifier: ^0.30.17 version: 0.30.17 mlly: - specifier: ^1.7.3 - version: 1.7.3 + specifier: ^1.7.4 + version: 1.7.4 pathe: - specifier: ^2.0.1 - version: 2.0.1 + specifier: ^2.0.2 + version: 2.0.2 pkg-types: - specifier: ^1.3.0 - version: 1.3.0 + specifier: ^1.3.1 + version: 1.3.1 postcss: - specifier: 8.4.49 - version: 8.4.49 + specifier: 8.5.1 + version: 8.5.1 rollup-plugin-visualizer: specifier: ^5.13.1 - version: 5.14.0(rollup@4.30.1) + version: 5.13.1(rollup@4.31.0) std-env: specifier: ^3.8.0 version: 3.8.0 @@ -871,14 +913,14 @@ importers: specifier: ^2.1.2 version: 2.1.2 vite: - specifier: 6.0.7 - version: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + specifier: 6.0.11 + version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) vite-node: - specifier: ^2.1.8 - version: 2.1.8(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + specifier: ^3.0.3 + version: 3.0.4(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) vite-plugin-checker: specifier: ^0.8.0 - version: 0.8.0(eslint@9.18.0(jiti@2.4.2))(optionator@0.9.4)(typescript@5.7.3)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue-tsc@2.1.6(typescript@5.7.3)) + version: 0.8.0(eslint@9.18.0(jiti@2.4.2))(optionator@0.9.4)(typescript@5.7.3)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue-tsc@2.1.10(typescript@5.7.3)) vue-bundle-renderer: specifier: ^2.1.1 version: 2.1.1 @@ -887,11 +929,11 @@ importers: specifier: workspace:* version: link:../schema rollup: - specifier: 4.30.1 - version: 4.30.1 + specifier: 4.31.0 + version: 4.31.0 unbuild: - specifier: 3.2.0 - version: 3.2.0(sass@1.78.0)(typescript@5.7.3)(vue-tsc@2.1.6(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) + specifier: 3.3.1 + version: 3.3.1(typescript@5.7.3)(vue-tsc@2.1.10(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) vue: specifier: 3.5.13 version: 3.5.13(typescript@5.7.3) @@ -906,16 +948,16 @@ importers: version: link:../kit autoprefixer: specifier: ^10.4.20 - version: 10.4.20(postcss@8.4.49) + version: 10.4.20(postcss@8.5.1) css-loader: specifier: ^7.1.2 - version: 7.1.2(@rspack/core@1.1.8)(webpack@5.97.1) + version: 7.1.2(@rspack/core@1.2.2)(webpack@5.97.1) css-minimizer-webpack-plugin: specifier: ^7.0.0 version: 7.0.0(webpack@5.97.1) cssnano: specifier: ^7.0.6 - version: 7.0.6(postcss@8.4.49) + version: 7.0.6(postcss@8.5.1) defu: specifier: ^6.1.4 version: 6.1.4 @@ -935,8 +977,8 @@ importers: specifier: ^14.0.2 version: 14.0.2 h3: - specifier: npm:h3-nightly@2.0.0-1718872656.6765a6e - version: h3-nightly@2.0.0-1718872656.6765a6e + specifier: npm:h3-nightly@1.14.0-20250122-114730-3f9e703 + version: h3-nightly@1.14.0-20250122-114730-3f9e703 jiti: specifier: 2.4.2 version: 2.4.2 @@ -956,26 +998,26 @@ importers: specifier: 1.1.4 version: 1.1.4 pathe: - specifier: ^2.0.1 - version: 2.0.1 + specifier: ^2.0.2 + version: 2.0.2 pify: specifier: ^6.1.0 version: 6.1.0 postcss: - specifier: 8.4.49 - version: 8.4.49 + specifier: 8.5.1 + version: 8.5.1 postcss-import: specifier: ^16.1.0 - version: 16.1.0(postcss@8.4.49) + version: 16.1.0(postcss@8.5.1) postcss-import-resolver: specifier: ^2.0.0 version: 2.0.0 postcss-loader: specifier: ^8.1.1 - version: 8.1.1(@rspack/core@1.1.8)(postcss@8.4.49)(typescript@5.7.3)(webpack@5.97.1) + version: 8.1.1(@rspack/core@1.2.2)(postcss@8.5.1)(typescript@5.7.3)(webpack@5.97.1) postcss-url: specifier: ^10.1.3 - version: 10.1.3(postcss@8.4.49) + version: 10.1.3(postcss@8.5.1) pug-plain-loader: specifier: ^1.1.0 version: 1.1.0(pug@3.0.3) @@ -1017,14 +1059,14 @@ importers: version: 2.26.1 webpackbar: specifier: ^7.0.0 - version: 7.0.0(@rspack/core@1.1.8)(webpack@5.97.1) + version: 7.0.0(@rspack/core@1.2.2)(webpack@5.97.1) devDependencies: '@nuxt/schema': specifier: workspace:* version: link:../schema '@rspack/core': - specifier: 1.1.8 - version: 1.1.8 + specifier: 1.2.2 + version: 1.2.2 '@types/pify': specifier: 5.0.4 version: 5.0.4 @@ -1035,11 +1077,11 @@ importers: specifier: 2.25.9 version: 2.25.9 rollup: - specifier: 4.30.1 - version: 4.30.1 + specifier: 4.31.0 + version: 4.31.0 unbuild: - specifier: 3.2.0 - version: 3.2.0(sass@1.78.0)(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) + specifier: 3.3.1 + version: 3.3.1(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) vue: specifier: 3.5.13 version: 3.5.13(typescript@5.7.3) @@ -1064,7 +1106,7 @@ importers: devDependencies: '@vue/devtools-api': specifier: latest - version: 7.4.5 + version: 7.7.0 defu: specifier: latest version: 6.1.4 @@ -1073,7 +1115,7 @@ importers: version: 1.5.4 unplugin: specifier: latest - version: 1.14.1(webpack-sources@3.2.3) + version: 2.1.2 vue: specifier: 3.5.13 version: 3.5.13(typescript@5.7.3) @@ -1086,19 +1128,19 @@ importers: devDependencies: ofetch: specifier: latest - version: 1.3.4 + version: 1.4.1 unplugin-vue-router: specifier: ^0.10.7 - version: 0.10.9(rollup@4.30.1)(vue-router@4.4.5(vue@3.5.13(typescript@5.7.3)))(vue@3.5.13(typescript@5.7.3)) + version: 0.10.9(rollup@4.31.0)(vue-router@4.5.0(vue@3.5.13(typescript@5.7.3)))(vue@3.5.13(typescript@5.7.3)) vitest: specifier: 1.6.0 - version: 1.6.0(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + version: 1.6.0(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) vue: specifier: 3.5.13 version: 3.5.13(typescript@5.7.3) vue-router: specifier: latest - version: 4.4.5(vue@3.5.13(typescript@5.7.3)) + version: 4.5.0(vue@3.5.13(typescript@5.7.3)) test/fixtures/hmr: dependencies: @@ -1166,185 +1208,102 @@ packages: '@antfu/utils@0.7.10': resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==} + '@antfu/utils@8.1.0': + resolution: {integrity: sha512-XPR7Jfwp0FFl/dFYPX8ZjpmU4/1mIXTjnZ1ba48BLMyKOV62/tiRjdsFcPs2hsYcSud4tzk7w3a3LjX8Fu3huA==} + '@apidevtools/json-schema-ref-parser@11.7.0': resolution: {integrity: sha512-pRrmXMCwnmrkS3MLgAIW5dXRzeTv6GLjkjb4HmxNnvAKXN1Nfzp4KmGADBQvlVUcqi+a5D+hfGDLLnd5NnYxog==} engines: {node: '>= 16'} - '@arethetypeswrong/cli@0.17.2': - resolution: {integrity: sha512-/u2VcQJ8PKc4hcao/vXnHrYLEI/sQqKarbHi+NEIfvdymaW5o62XOCXy2yvalQa/vR+AAD/QNEgAUzHo5f7hrw==} + '@arethetypeswrong/cli@0.17.3': + resolution: {integrity: sha512-wI9ZSTweunmzHboSyYtWRFpba9fM9mpX1g7EUoRr+86zHSd7NR7svb6EmJD2hv1V+SoisB2fERu6EQGGEfQ8oQ==} engines: {node: '>=18'} hasBin: true - '@arethetypeswrong/core@0.17.2': - resolution: {integrity: sha512-JYeLgS4rQ2l3gHCabaka3atsEyskfpx+WqUbo+6l8LApILJgr0/XDb7KNC9Ovevp4iPVF2Q73oshpgOKJ3uDRQ==} + '@arethetypeswrong/core@0.17.3': + resolution: {integrity: sha512-2TB7O5JmC7UX7QHRGGftxRVQjV4Ce6oOIDGIDDERyT9dQ8lK/tRGfFubzO80rWeXm/gSrA8jirlXSWSE1i5ynQ==} engines: {node: '>=18'} - '@babel/code-frame@7.24.7': - resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} - engines: {node: '>=6.9.0'} - '@babel/code-frame@7.26.2': resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.25.4': - resolution: {integrity: sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==} - engines: {node: '>=6.9.0'} - - '@babel/compat-data@7.26.5': - resolution: {integrity: sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.25.2': - resolution: {integrity: sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==} + '@babel/compat-data@7.26.2': + resolution: {integrity: sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg==} engines: {node: '>=6.9.0'} '@babel/core@7.26.0': resolution: {integrity: sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==} engines: {node: '>=6.9.0'} - '@babel/generator@7.25.6': - resolution: {integrity: sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.26.5': - resolution: {integrity: sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-annotate-as-pure@7.24.7': - resolution: {integrity: sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==} + '@babel/generator@7.26.2': + resolution: {integrity: sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==} engines: {node: '>=6.9.0'} '@babel/helper-annotate-as-pure@7.25.9': resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==} engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.25.2': - resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==} + '@babel/helper-compilation-targets@7.25.9': + resolution: {integrity: sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ==} engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.26.5': - resolution: {integrity: sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-create-class-features-plugin@7.25.4': - resolution: {integrity: sha512-ro/bFs3/84MDgDmMwbcHgDa8/E6J3QKNTk4xJJnVeFtGE+tL0K26E3pNxhYz2b67fJpt7Aphw5XcploKXuCvCQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/helper-create-class-features-plugin@7.25.9': resolution: {integrity: sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-member-expression-to-functions@7.24.8': - resolution: {integrity: sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA==} - engines: {node: '>=6.9.0'} + '@babel/core': 7.26.0 '@babel/helper-member-expression-to-functions@7.25.9': resolution: {integrity: sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==} engines: {node: '>=6.9.0'} - '@babel/helper-module-imports@7.24.7': - resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} - engines: {node: '>=6.9.0'} - '@babel/helper-module-imports@7.25.9': resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==} engines: {node: '>=6.9.0'} - '@babel/helper-module-transforms@7.25.2': - resolution: {integrity: sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/helper-module-transforms@7.26.0': resolution: {integrity: sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-optimise-call-expression@7.24.7': - resolution: {integrity: sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A==} - engines: {node: '>=6.9.0'} + '@babel/core': 7.26.0 '@babel/helper-optimise-call-expression@7.25.9': resolution: {integrity: sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==} engines: {node: '>=6.9.0'} - '@babel/helper-plugin-utils@7.24.8': - resolution: {integrity: sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==} - engines: {node: '>=6.9.0'} - '@babel/helper-plugin-utils@7.26.5': resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==} engines: {node: '>=6.9.0'} - '@babel/helper-replace-supers@7.25.0': - resolution: {integrity: sha512-q688zIvQVYtZu+i2PsdIu/uWGRpfxzr5WESsfpShfZECkO+d2o+WROWezCi/Q6kJ0tfPa5+pUGUlfx2HhrA3Bg==} + '@babel/helper-replace-supers@7.25.9': + resolution: {integrity: sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-replace-supers@7.26.5': - resolution: {integrity: sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-simple-access@7.24.7': - resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-skip-transparent-expression-wrappers@7.24.7': - resolution: {integrity: sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ==} - engines: {node: '>=6.9.0'} + '@babel/core': 7.26.0 '@babel/helper-skip-transparent-expression-wrappers@7.25.9': resolution: {integrity: sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==} engines: {node: '>=6.9.0'} - '@babel/helper-string-parser@7.24.8': - resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} - engines: {node: '>=6.9.0'} - '@babel/helper-string-parser@7.25.9': resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.24.7': - resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} - engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.25.9': resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.24.8': - resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==} - engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.25.9': resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==} engines: {node: '>=6.9.0'} - '@babel/helpers@7.25.6': - resolution: {integrity: sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==} - engines: {node: '>=6.9.0'} - '@babel/helpers@7.26.0': resolution: {integrity: sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==} engines: {node: '>=6.9.0'} - '@babel/highlight@7.24.7': - resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} - engines: {node: '>=6.9.0'} - - '@babel/parser@7.25.6': - resolution: {integrity: sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==} + '@babel/parser@7.26.2': + resolution: {integrity: sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==} engines: {node: '>=6.0.0'} hasBin: true @@ -1357,89 +1316,70 @@ packages: resolution: {integrity: sha512-RL9GR0pUG5Kc8BUWLNDm2T5OpYwSX15r98I0IkgmRQTXuELq/OynH8xtMTMvTJFjXbMWFVTKtYkTaYQsuAwQlQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': 7.26.0 '@babel/plugin-syntax-decorators@7.24.7': resolution: {integrity: sha512-Ui4uLJJrRV1lb38zg1yYTmRKmiZLiftDEvZN2iq3kd9kUFU+PttmzTbAFC2ucRk/XJmtek6G23gPsuZbhrT8fQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': 7.26.0 '@babel/plugin-syntax-import-attributes@7.25.6': resolution: {integrity: sha512-sXaDXaJN9SNLymBdlWFA+bjzBhFD617ZaFiY13dGt7TVslVvVgA6fkZOP7Ki3IGElC45lwHdOTrCtKZGVAWeLQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': 7.26.0 '@babel/plugin-syntax-import-meta@7.10.4': resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': 7.26.0 '@babel/plugin-syntax-jsx@7.24.7': resolution: {integrity: sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-typescript@7.25.4': - resolution: {integrity: sha512-uMOCoHVU52BsSWxPOMVv5qKRdeSlPuImUCB2dlPuBSU+W2/ROE7/Zg8F2Kepbk+8yBa68LlRKxO+xgEVWorsDg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': 7.26.0 '@babel/plugin-syntax-typescript@7.25.9': resolution: {integrity: sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': 7.26.0 - '@babel/plugin-transform-typescript@7.25.2': - resolution: {integrity: sha512-lBwRvjSmqiMYe/pS0+1gggjJleUJi7NzjvQ1Fkqtt69hBa/0t1YuW/MLQMAPixfwaQOHUXsd6jeU3Z+vdGv3+A==} + '@babel/plugin-transform-typescript@7.25.9': + resolution: {integrity: sha512-7PbZQZP50tzv2KGGnhh82GSyMB01yKY9scIjf1a+GfZCtInOWqUH5+1EBU4t9fyR5Oykkkc9vFTs4OHrhHXljQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-typescript@7.26.5': - resolution: {integrity: sha512-GJhPO0y8SD5EYVCy2Zr+9dSZcEgaSmq5BLR0Oc25TOEhC+ba49vUAGZFjy8v79z9E1mdldq4x9d1xgh4L1d5dQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': 7.26.0 '@babel/runtime@7.25.6': resolution: {integrity: sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==} engines: {node: '>=6.9.0'} - '@babel/standalone@7.26.5': - resolution: {integrity: sha512-vXbSrFq1WauHvOg/XWcjkF6r7wDSHbN3+3Aro6LYjfODpGw8dCyqqbUMRX5LXlgzVAUrTSN6JkepFiHhLKHV5Q==} - engines: {node: '>=6.9.0'} - - '@babel/template@7.25.0': - resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==} + '@babel/standalone@7.26.4': + resolution: {integrity: sha512-SF+g7S2mhTT1b7CHyfNjDkPU1corxg4LPYsyP0x5KuCl+EbtBQHRLqr9N3q7e7+x7NQ5LYxQf8mJ2PmzebLr0A==} engines: {node: '>=6.9.0'} '@babel/template@7.25.9': resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.25.6': - resolution: {integrity: sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==} + '@babel/traverse@7.25.9': + resolution: {integrity: sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.26.5': - resolution: {integrity: sha512-rkOSPOw+AXbgtwUga3U4u8RpoK9FEFWBNAlTpcnkLFjL5CT+oyHNuUUC/xx6XefEJ16r38r8Bc/lfp6rYuHeJQ==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.25.6': - resolution: {integrity: sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==} + '@babel/types@7.26.3': + resolution: {integrity: sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==} engines: {node: '>=6.9.0'} '@babel/types@7.26.5': resolution: {integrity: sha512-L6mZmwFDK6Cjh1nRCLXpa6no13ZIioJDz7mdkzHv399pThrTa/k0nUlNaenOeh2kWu/iaOQYElEpKPUswUa9Vg==} engines: {node: '>=6.9.0'} - '@bcoe/v8-coverage@0.2.3': - resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + '@bcoe/v8-coverage@1.0.2': + resolution: {integrity: sha512-6zABk/ECA/QYSCQ1NGiVwwbQerUCZ+TQbp64Q3AgmfNvurHH0j8TtXa1qbShXA6qqkpAj4V5W8pP6mLe1mcMqA==} + engines: {node: '>=18'} '@clack/core@0.4.1': resolution: {integrity: sha512-Pxhij4UXg8KSr7rPek6Zowm+5M22rbd2g1nfojHJkxp5YkFqiZ2+YLEM/XGVIzvGOcM0nqjIFxrpDwWRZYWYjA==} @@ -1451,6 +1391,15 @@ packages: resolution: {integrity: sha512-YLPHc8yASwjNkmcDMQMY35yiWjoKAKnhUbPRszBRS0YgH+IXtsMp61j+yTcnCE3oO2DgP0U3iejLC8FTtKDC8Q==} engines: {node: '>=16.13'} + '@codspeed/core@4.0.0': + resolution: {integrity: sha512-B3zwdwLG8rcV0ORfYKX1wDP6ZCWf9C6ySidSf61q2vm9v5Lj2cWwRvj7vX+w/UyFHWKjp/zSyWTEed/r3Fv4Tg==} + + '@codspeed/vitest-plugin@4.0.0': + resolution: {integrity: sha512-L7oCOuVL2xI1/z+HLt56+7Xs/MGzbaf5aaOys6vOMDAs1PmxbmyAz6g1Y0x1TrP1+dvR9LUZQCKM/CsXHCrNxg==} + peerDependencies: + vite: 6.0.11 + vitest: '>=1.2.2' + '@colors/colors@1.5.0': resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} engines: {node: '>=0.1.90'} @@ -1901,10 +1850,6 @@ packages: peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - '@eslint-community/regexpp@4.11.0': - resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint-community/regexpp@4.12.1': resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} @@ -1913,8 +1858,8 @@ packages: resolution: {integrity: sha512-lpHyRyplhGPL5mGEh6M9O5nnKk0Gz4bFI+Zu6tKlPpDUN7XshWvH9C/px4UVm87IAANE0W81CEsNGbS1KlzXpA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/config-array@0.19.1': - resolution: {integrity: sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==} + '@eslint/config-array@0.19.0': + resolution: {integrity: sha512-zdHg2FPIFNKPdcHWtiNT+jEFCHYVplAXRDlQDyqy0zGx/q2parwh7brGJSiTxRk/TSMkbM//zt/f5CHgyTyaSQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/core@0.10.0': @@ -1929,8 +1874,8 @@ packages: resolution: {integrity: sha512-fK6L7rxcq6/z+AaQMtiFTkvbHkBLNlwyRxHpKawP0x3u9+NC6MQTnFW+AdpwC6gfHTW0051cokQgtTN2FqlxQA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/object-schema@2.1.5': - resolution: {integrity: sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==} + '@eslint/object-schema@2.1.4': + resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/plugin-kit@0.2.5': @@ -1962,25 +1907,25 @@ packages: resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} - '@humanwhocodes/retry@0.3.0': - resolution: {integrity: sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==} + '@humanwhocodes/retry@0.3.1': + resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} engines: {node: '>=18.18'} '@humanwhocodes/retry@0.4.1': resolution: {integrity: sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==} engines: {node: '>=18.18'} - '@iconify-json/carbon@1.2.5': - resolution: {integrity: sha512-aI3TEzOrUDGhs74zIT3ym/ZQBUEziyu8JifntX2Hb4siVzsP5sQ/QEfVdmcCUj37kQUYT3TYBSeAw2vTfCJx9w==} + '@iconify-json/carbon@1.2.1': + resolution: {integrity: sha512-dIMY6OOY9LnwR3kOqAtfz4phGFG+KNfESEwSL6muCprBelSlSPpRXtdqvEEO/qWhkf5AJ9hWrOV3Egi5Z2IuKA==} - '@iconify-json/logos@1.2.4': - resolution: {integrity: sha512-XC4If5D/hbaZvUkTV8iaZuGlQCyG6CNOlaAaJaGa13V5QMYwYjgtKk3vPP8wz3wtTVNVEVk3LRx1fOJz+YnSMw==} + '@iconify-json/logos@1.2.0': + resolution: {integrity: sha512-VkU9QSqeZR2guWbecdqkcoZEAJfgJJTUm6QAsypuZQ7Cve6zy39wOXDjp2H31I8QyQy4O3Cz96+pNji6UQFg4w==} - '@iconify-json/ri@1.2.5': - resolution: {integrity: sha512-kWGimOXMZrlYusjBKKXYOWcKhbOHusFsmrmRGmjS7rH0BpML5A9/fy8KHZqFOwZfC4M6amObQYbh8BqO5cMC3w==} + '@iconify-json/ri@1.2.0': + resolution: {integrity: sha512-br8It3uRHylNhEH72aU9VF6gIdL4BAi6JMdcxsCaVbAyWBJ0jd4RxfmsYnil6TmEfP5wxihiCKbtbQmIHZdqKg==} - '@iconify-json/tabler@1.2.14': - resolution: {integrity: sha512-X5Li79KW5KilHIaNVFKMuPr0WOA4B/Y/EqkrrZiEihs3Wcq/eIDMDDqGBkmei/8naYyfpkj0LWH7osr+vJYFEA==} + '@iconify-json/tabler@1.2.3': + resolution: {integrity: sha512-km0P/1Gtp/bFhvBQQmDkMx3nNIkNmU57WCYl9b8Envl81m3bhVVT85A8FtWChQxMXsYv3cTNuwMq/WZGfcY9vQ==} '@iconify/types@2.0.0': resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} @@ -1995,10 +1940,6 @@ packages: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} - '@isaacs/fs-minipass@4.0.1': - resolution: {integrity: sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==} - engines: {node: '>=18.0.0'} - '@istanbuljs/schema@0.1.3': resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} engines: {node: '>=8'} @@ -2032,6 +1973,10 @@ packages: '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + '@jsdevtools/ez-spawn@3.0.4': + resolution: {integrity: sha512-f5DRIOZf7wxogefH03RjMPMdBF7ADTWUMoOs9kaJo06EfwF+aFhMZMDZxHg/Xe12hptN9xoZjGso2fdjapBRIA==} + engines: {node: '>=10'} + '@jsdevtools/ono@7.1.3': resolution: {integrity: sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==} @@ -2059,33 +2004,35 @@ packages: '@kwsites/promise-deferred@1.1.1': resolution: {integrity: sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==} - '@mapbox/node-pre-gyp@2.0.0-rc.0': - resolution: {integrity: sha512-nhSMNprz3WmeRvd8iUs5JqkKr0Ncx46JtPxM3AhXes84XpSJfmIwKeWXRpsr53S7kqPkQfPhzrMFUxSNb23qSA==} - engines: {node: '>=18'} + '@mapbox/node-pre-gyp@1.0.11': + resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==} hasBin: true - '@module-federation/runtime-tools@0.5.1': - resolution: {integrity: sha512-nfBedkoZ3/SWyO0hnmaxuz0R0iGPSikHZOAZ0N/dVSQaIzlffUo35B5nlC2wgWIc0JdMZfkwkjZRrnuuDIJbzg==} + '@module-federation/error-codes@0.8.4': + resolution: {integrity: sha512-55LYmrDdKb4jt+qr8qE8U3al62ZANp3FhfVaNPOaAmdTh0jHdD8M3yf5HKFlr5xVkVO4eV/F/J2NCfpbh+pEXQ==} - '@module-federation/runtime@0.5.1': - resolution: {integrity: sha512-xgiMUWwGLWDrvZc9JibuEbXIbhXg6z2oUkemogSvQ4LKvrl/n0kbqP1Blk669mXzyWbqtSp6PpvNdwaE1aN5xQ==} + '@module-federation/runtime-tools@0.8.4': + resolution: {integrity: sha512-fjVOsItJ1u5YY6E9FnS56UDwZgqEQUrWFnouRiPtK123LUuqUI9FH4redZoKWlE1PB0ir1Z3tnqy8eFYzPO38Q==} - '@module-federation/sdk@0.5.1': - resolution: {integrity: sha512-exvchtjNURJJkpqjQ3/opdbfeT2wPKvrbnGnyRkrwW5o3FH1LaST1tkiNviT6OXTexGaVc2DahbdniQHVtQ7pA==} + '@module-federation/runtime@0.8.4': + resolution: {integrity: sha512-yZeZ7z2Rx4gv/0E97oLTF3V6N25vglmwXGgoeju/W2YjsFvWzVtCDI7zRRb0mJhU6+jmSM8jP1DeQGbea/AiZQ==} - '@module-federation/webpack-bundler-runtime@0.5.1': - resolution: {integrity: sha512-mMhRFH0k2VjwHt3Jol9JkUsmI/4XlrAoBG3E0o7HoyoPYv1UFOWyqAflfANcUPgbYpvqmyLzDcO+3IT36LXnrA==} + '@module-federation/sdk@0.8.4': + resolution: {integrity: sha512-waABomIjg/5m1rPDBWYG4KUhS5r7OUUY7S+avpaVIY/tkPWB3ibRDKy2dNLLAMaLKq0u+B1qIdEp4NIWkqhqpg==} - '@netlify/functions@2.8.1': - resolution: {integrity: sha512-+6wtYdoz0yE06dSa9XkP47tw5zm6g13QMeCwM3MmHx1vn8hzwFa51JtmfraprdkL7amvb7gaNM+OOhQU1h6T8A==} + '@module-federation/webpack-bundler-runtime@0.8.4': + resolution: {integrity: sha512-HggROJhvHPUX7uqBD/XlajGygMNM1DG0+4OAkk8MBQe4a18QzrRNzZt6XQbRTSG4OaEoyRWhQHvYD3Yps405tQ==} + + '@netlify/functions@2.8.2': + resolution: {integrity: sha512-DeoAQh8LuNPvBE4qsKlezjKj0PyXDryOFJfJKo3Z1qZLKzQ21sT314KQKPVjfvw6knqijj+IO+0kHXy/TJiqNA==} engines: {node: '>=14.0.0'} '@netlify/node-cookies@0.1.0': resolution: {integrity: sha512-OAs1xG+FfLX0LoRASpqzVntVV/RpYkgpI0VrUnw2u0Q1qiZUzcPffxRK8HF3gc4GjuhG5ahOEMJ9bswBiZPq0g==} engines: {node: ^14.16.0 || >=16.0.0} - '@netlify/serverless-functions-api@1.19.1': - resolution: {integrity: sha512-2KYkyluThg1AKfd0JWI7FzpS4A/fzVVGYIf6AM4ydWyNj8eI/86GQVLeRgDoH7CNOxt243R5tutWlmHpVq0/Ew==} + '@netlify/serverless-functions-api@1.26.1': + resolution: {integrity: sha512-q3L9i3HoNfz0SGpTIS4zTcKBbRkxzCRpd169eyiTuk3IwcPC3/85mzLHranlKo2b+HYT0gu37YxGB45aD8A3Tw==} engines: {node: '>=18.0.0'} '@nodelib/fs.scandir@2.1.5': @@ -2128,15 +2075,20 @@ packages: '@nuxt/devalue@2.0.2': resolution: {integrity: sha512-GBzP8zOc7CGWyFQS6dv1lQz8VVpz5C2yRszbXufwG/9zhStTIH50EtD87NmWbTMwXDvZLNg8GIpb1UFdH93JCA==} + '@nuxt/devtools-kit@1.5.1': + resolution: {integrity: sha512-s2dpN1vCOgua2pSYG7/xUMjf7CyLTBeEK2IRqeOeiNpiElft4ygDddlg6P3ot0Hpp+GvWTz0uPGot/vI73uk4w==} + peerDependencies: + vite: 6.0.11 + '@nuxt/devtools-kit@1.7.0': resolution: {integrity: sha512-+NgZ2uP5BuneqvQbe7EdOEaFEDy8762c99pLABtn7/Ur0ExEsQJMP7pYjjoTfKubhBqecr5Vo9yHkPBj1eHulQ==} peerDependencies: - vite: 6.0.7 + vite: 6.0.11 - '@nuxt/devtools-ui-kit@1.7.0': - resolution: {integrity: sha512-pYjwCP3FHz/rrEoJpb8plMinnPHRh+fFc90O+MncMC0aIGydtu4SGwAE3fZsg//JXqkvlY+JyozxqtF9IRA7rA==} + '@nuxt/devtools-ui-kit@1.5.1': + resolution: {integrity: sha512-/1B2AYXuuPePWVuoHd/UGIKR3z3vO2bW73UAEszpHVLc/OwLA19K9f5o91sgyamAi2Qb5NymAMc/UZL0ijN8uA==} peerDependencies: - '@nuxt/devtools': 1.7.0 + '@nuxt/devtools': 1.5.1 '@nuxt/devtools-wizard@1.7.0': resolution: {integrity: sha512-86Gd92uEw0Dh2ErIYT9TMIrMOISE96fCRN4rxeryTvyiowQOsyrbkCeMNYrEehoRL+lohoyK6iDmFajadPNwWQ==} @@ -2146,7 +2098,7 @@ packages: resolution: {integrity: sha512-uvnjt5Zowkz7tZmnks2cGreg1XZIiSyVzQ2MYiRXACodlXcwJ0dpUS3WTxu8BR562K+772oRdvKie9AQlyZUgg==} hasBin: true peerDependencies: - vite: 6.0.7 + vite: 6.0.11 '@nuxt/eslint-config@0.7.5': resolution: {integrity: sha512-nUMMiVNZ7qk7FP5Uev/zuTZoTwBnlfr0qSt355aw21SoUkXw0YFRFsImdzkjnEN7kQjgZj0PcCJs/ejv8mRROg==} @@ -2215,6 +2167,62 @@ packages: '@nuxtjs/mdc@0.8.3': resolution: {integrity: sha512-FqvJFWkBN9u2FeWog+7+C0aIOx0WIu61TYgAXPmmIOVVua6s2mXQsMyF3fXY2M56QBIaYJzK/SYN+5FGr5GNTQ==} + '@octokit/action@6.1.0': + resolution: {integrity: sha512-lo+nHx8kAV86bxvOVOI3vFjX3gXPd/L7guAUbvs3pUvnR2KC+R7yjBkA1uACt4gYhs4LcWP3AXSGQzsbeN2XXw==} + engines: {node: '>= 18'} + + '@octokit/auth-action@4.1.0': + resolution: {integrity: sha512-m+3t7K46IYyMk7Bl6/lF4Rv09GqDZjYmNg8IWycJ2Fa3YE3DE7vQcV6G2hUPmR9NDqenefNJwVtlisMjzymPiQ==} + engines: {node: '>= 18'} + + '@octokit/auth-token@4.0.0': + resolution: {integrity: sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==} + engines: {node: '>= 18'} + + '@octokit/core@5.2.0': + resolution: {integrity: sha512-1LFfa/qnMQvEOAdzlQymH0ulepxbxnCYAKJZfMci/5XJyIHWgEYnDmgnKakbTh7CH2tFQ5O60oYDvns4i9RAIg==} + engines: {node: '>= 18'} + + '@octokit/endpoint@9.0.5': + resolution: {integrity: sha512-ekqR4/+PCLkEBF6qgj8WqJfvDq65RH85OAgrtnVp1mSxaXF03u2xW/hUdweGS5654IlC0wkNYC18Z50tSYTAFw==} + engines: {node: '>= 18'} + + '@octokit/graphql@7.1.0': + resolution: {integrity: sha512-r+oZUH7aMFui1ypZnAvZmn0KSqAUgE1/tUXIWaqUCa1758ts/Jio84GZuzsvUkme98kv0WFY8//n0J1Z+vsIsQ==} + engines: {node: '>= 18'} + + '@octokit/openapi-types@20.0.0': + resolution: {integrity: sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA==} + + '@octokit/openapi-types@23.0.1': + resolution: {integrity: sha512-izFjMJ1sir0jn0ldEKhZ7xegCTj/ObmEDlEfpFrx4k/JyZSMRHbO3/rBwgE7f3m2DHt+RrNGIVw4wSmwnm3t/g==} + + '@octokit/plugin-paginate-rest@9.2.1': + resolution: {integrity: sha512-wfGhE/TAkXZRLjksFXuDZdmGnJQHvtU/joFQdweXUgzo1XwvBCD4o4+75NtFfjfLK5IwLf9vHTfSiU3sLRYpRw==} + engines: {node: '>= 18'} + peerDependencies: + '@octokit/core': '5' + + '@octokit/plugin-rest-endpoint-methods@10.4.1': + resolution: {integrity: sha512-xV1b+ceKV9KytQe3zCVqjg+8GTGfDYwaT1ATU5isiUyVtlVAO3HNdzpS4sr4GBx4hxQ46s7ITtZrAsxG22+rVg==} + engines: {node: '>= 18'} + peerDependencies: + '@octokit/core': '5' + + '@octokit/request-error@5.1.0': + resolution: {integrity: sha512-GETXfE05J0+7H2STzekpKObFe765O5dlAKUTLNGeH+x47z7JjXHfsHKo5z21D/o/IOZTUEI6nyWyR+bZVP/n5Q==} + engines: {node: '>= 18'} + + '@octokit/request@8.4.0': + resolution: {integrity: sha512-9Bb014e+m2TgBeEJGEbdplMVWwPmL1FPtggHQRkV+WVsMggPtEkLKPlcVYm/o8xKLkpJ7B+6N8WfQMtDLX2Dpw==} + engines: {node: '>= 18'} + + '@octokit/types@12.6.0': + resolution: {integrity: sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==} + + '@octokit/types@13.7.0': + resolution: {integrity: sha512-BXfRP+3P3IN6fd4uF3SniaHKOO4UXWBfkdR3vA8mIvaoO/wLjGN5qivUtW0QRitBHHMcfC41SLhNVYIZZE+wkA==} + '@one-ini/wasm@0.1.1': resolution: {integrity: sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==} @@ -2332,36 +2340,27 @@ packages: '@redocly/ajv@8.11.2': resolution: {integrity: sha512-io1JpnwtIcvojV7QKDUSIuMN/ikdOUd1ReEnUnMKGfDVridQZ31J0MmIuqwuRjWDZfmvr+Q0MqCcfHM2gTivOg==} - '@redocly/config@0.17.1': - resolution: {integrity: sha512-CEmvaJuG7pm2ylQg53emPmtgm4nW2nxBgwXzbVEHpGas/lGnMyN8Zlkgiz6rPw0unASg6VW3wlz27SOL5XFHYQ==} + '@redocly/config@0.10.1': + resolution: {integrity: sha512-H3LnKVGzOaxskwJu8pmJYwBOWjP61qOK7TuTrbafqArDVckE06fhA6l0nO4KvBbjLPjy1Al7UnlxOu23V4Nl0w==} - '@redocly/openapi-core@1.27.1': - resolution: {integrity: sha512-zQ47/A+Drk2Y75/af69MD3Oad4H9LxkUDzcm7XBkyLNDKIWQrDKDnS5476oDq77+zciymNxgMVtxxVXlnGS8kw==} + '@redocly/openapi-core@1.25.0': + resolution: {integrity: sha512-g6/Y7HGQCllZI1iXAXDvmnpU7kaUeA7s9RVH13V2QIFi6VUJ+8HbyqTpUvAgkWRJV3da5CECEHyu+85fH+0hEg==} engines: {node: '>=14.19.0', npm: '>=7.0.0'} - '@rollup/plugin-alias@5.1.0': - resolution: {integrity: sha512-lpA3RZ9PdIG7qqhEfv79tBffNaoDuukFDrmhLqg9ifv99u/ehn+lOg30x2zmhf8AQqQUZaMk/B9fZraQ6/acDQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: 4.30.1 - peerDependenciesMeta: - rollup: - optional: true - '@rollup/plugin-alias@5.1.1': resolution: {integrity: sha512-PR9zDb+rOzkRb2VD+EuKB7UC41vU5DIwZ5qqCpk0KJudcWAyi8rvYOhS7+L5aZCspw1stTViLgN5v6FF1p5cgQ==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: 4.30.1 + rollup: 4.31.0 peerDependenciesMeta: rollup: optional: true - '@rollup/plugin-commonjs@26.0.3': - resolution: {integrity: sha512-2BJcolt43MY+y5Tz47djHkodCC3c1VKVrBDKpVqHKpQ9z9S158kCCqB8NF6/gzxLdNlYW9abB3Ibh+kOWLp8KQ==} + '@rollup/plugin-commonjs@26.0.1': + resolution: {integrity: sha512-UnsKoZK6/aGIH6AdkptXhNvhaqftcjq3zZdT+LY5Ftms6JR06nADcDsYp5hTU9E2lbJUEOhdlY5J4DNTneM+jQ==} engines: {node: '>=16.0.0 || 14 >= 14.17'} peerDependencies: - rollup: 4.30.1 + rollup: 4.31.0 peerDependenciesMeta: rollup: optional: true @@ -2370,7 +2369,7 @@ packages: resolution: {integrity: sha512-BEFI2EDqzl+vA1rl97IDRZ61AIwGH093d9nz8+dThxJNH8oSoB7MjWvPCX3dkaK1/RCJ/1v/R1XB15FuSs0fQw==} engines: {node: '>=16.0.0 || 14 >= 14.17'} peerDependencies: - rollup: 4.30.1 + rollup: 4.31.0 peerDependenciesMeta: rollup: optional: true @@ -2379,7 +2378,7 @@ packages: resolution: {integrity: sha512-2+DEJbNBoPROPkgTDNe8/1YXWcqxbN5DTjASVIOx8HS+pITXushyNiBV56RB08zuptzz8gT3YfkqriTBVycepg==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: 4.30.1 + rollup: 4.31.0 peerDependenciesMeta: rollup: optional: true @@ -2388,16 +2387,16 @@ packages: resolution: {integrity: sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: 4.30.1 + rollup: 4.31.0 peerDependenciesMeta: rollup: optional: true - '@rollup/plugin-node-resolve@15.2.3': - resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==} + '@rollup/plugin-node-resolve@15.3.0': + resolution: {integrity: sha512-9eO5McEICxMzJpDW9OnMYSv4Sta3hmt7VtBFz5zR9273suNOydOyq/FrGeGy+KsTRFm8w0SLVhzig2ILFT63Ag==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: 4.30.1 + rollup: 4.31.0 peerDependenciesMeta: rollup: optional: true @@ -2406,7 +2405,7 @@ packages: resolution: {integrity: sha512-0FPvAeVUT/zdWoO0jnb/V5BlBsUSNfkIOtFHzMO4H9MOklrmQFY6FduVHKucNb/aTFxvnGhj4MNj/T1oNdDfNg==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: 4.30.1 + rollup: 4.31.0 peerDependenciesMeta: rollup: optional: true @@ -2415,7 +2414,7 @@ packages: resolution: {integrity: sha512-PqxSfuorkHz/SPpyngLyg5GCEkOcee9M1bkxiVDr41Pd61mqP1PLOoDPbpl44SB2mQGKwV/In74gqQmGITOhEQ==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: 4.30.1 + rollup: 4.31.0 peerDependenciesMeta: rollup: optional: true @@ -2424,7 +2423,7 @@ packages: resolution: {integrity: sha512-7QaYCf8bqF04dOy7w/eHmJeNExxTYwvKAmlSAH/EaWWUzbT0h5sbF6bktFoX/0F/0qwng5/dWFMyf3gzaM8DsQ==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: 4.30.1 + rollup: 4.31.0 peerDependenciesMeta: rollup: optional: true @@ -2433,178 +2432,176 @@ packages: resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: 4.30.1 + rollup: 4.31.0 peerDependenciesMeta: rollup: optional: true - '@rollup/pluginutils@5.1.0': - resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: 4.30.1 - peerDependenciesMeta: - rollup: - optional: true + '@rollup/pluginutils@4.2.1': + resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} + engines: {node: '>= 8.0.0'} '@rollup/pluginutils@5.1.4': resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: 4.30.1 + rollup: 4.31.0 peerDependenciesMeta: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.30.1': - resolution: {integrity: sha512-pSWY+EVt3rJ9fQ3IqlrEUtXh3cGqGtPDH1FQlNZehO2yYxCHEX1SPsz1M//NXwYfbTlcKr9WObLnJX9FsS9K1Q==} + '@rollup/rollup-android-arm-eabi@4.31.0': + resolution: {integrity: sha512-9NrR4033uCbUBRgvLcBrJofa2KY9DzxL2UKZ1/4xA/mnTNyhZCWBuD8X3tPm1n4KxcgaraOYgrFKSgwjASfmlA==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.30.1': - resolution: {integrity: sha512-/NA2qXxE3D/BRjOJM8wQblmArQq1YoBVJjrjoTSBS09jgUisq7bqxNHJ8kjCHeV21W/9WDGwJEWSN0KQ2mtD/w==} + '@rollup/rollup-android-arm64@4.31.0': + resolution: {integrity: sha512-iBbODqT86YBFHajxxF8ebj2hwKm1k8PTBQSojSt3d1FFt1gN+xf4CowE47iN0vOSdnd+5ierMHBbu/rHc7nq5g==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.30.1': - resolution: {integrity: sha512-r7FQIXD7gB0WJ5mokTUgUWPl0eYIH0wnxqeSAhuIwvnnpjdVB8cRRClyKLQr7lgzjctkbp5KmswWszlwYln03Q==} + '@rollup/rollup-darwin-arm64@4.31.0': + resolution: {integrity: sha512-WHIZfXgVBX30SWuTMhlHPXTyN20AXrLH4TEeH/D0Bolvx9PjgZnn4H677PlSGvU6MKNsjCQJYczkpvBbrBnG6g==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.30.1': - resolution: {integrity: sha512-x78BavIwSH6sqfP2xeI1hd1GpHL8J4W2BXcVM/5KYKoAD3nNsfitQhvWSw+TFtQTLZ9OmlF+FEInEHyubut2OA==} + '@rollup/rollup-darwin-x64@4.31.0': + resolution: {integrity: sha512-hrWL7uQacTEF8gdrQAqcDy9xllQ0w0zuL1wk1HV8wKGSGbKPVjVUv/DEwT2+Asabf8Dh/As+IvfdU+H8hhzrQQ==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.30.1': - resolution: {integrity: sha512-HYTlUAjbO1z8ywxsDFWADfTRfTIIy/oUlfIDmlHYmjUP2QRDTzBuWXc9O4CXM+bo9qfiCclmHk1x4ogBjOUpUQ==} + '@rollup/rollup-freebsd-arm64@4.31.0': + resolution: {integrity: sha512-S2oCsZ4hJviG1QjPY1h6sVJLBI6ekBeAEssYKad1soRFv3SocsQCzX6cwnk6fID6UQQACTjeIMB+hyYrFacRew==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.30.1': - resolution: {integrity: sha512-1MEdGqogQLccphhX5myCJqeGNYTNcmTyaic9S7CG3JhwuIByJ7J05vGbZxsizQthP1xpVx7kd3o31eOogfEirw==} + '@rollup/rollup-freebsd-x64@4.31.0': + resolution: {integrity: sha512-pCANqpynRS4Jirn4IKZH4tnm2+2CqCNLKD7gAdEjzdLGbH1iO0zouHz4mxqg0uEMpO030ejJ0aA6e1PJo2xrPA==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.30.1': - resolution: {integrity: sha512-PaMRNBSqCx7K3Wc9QZkFx5+CX27WFpAMxJNiYGAXfmMIKC7jstlr32UhTgK6T07OtqR+wYlWm9IxzennjnvdJg==} + '@rollup/rollup-linux-arm-gnueabihf@4.31.0': + resolution: {integrity: sha512-0O8ViX+QcBd3ZmGlcFTnYXZKGbFu09EhgD27tgTdGnkcYXLat4KIsBBQeKLR2xZDCXdIBAlWLkiXE1+rJpCxFw==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.30.1': - resolution: {integrity: sha512-B8Rcyj9AV7ZlEFqvB5BubG5iO6ANDsRKlhIxySXcF1axXYUyqwBok+XZPgIYGBgs7LDXfWfifxhw0Ik57T0Yug==} + '@rollup/rollup-linux-arm-musleabihf@4.31.0': + resolution: {integrity: sha512-w5IzG0wTVv7B0/SwDnMYmbr2uERQp999q8FMkKG1I+j8hpPX2BYFjWe69xbhbP6J9h2gId/7ogesl9hwblFwwg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.30.1': - resolution: {integrity: sha512-hqVyueGxAj3cBKrAI4aFHLV+h0Lv5VgWZs9CUGqr1z0fZtlADVV1YPOij6AhcK5An33EXaxnDLmJdQikcn5NEw==} + '@rollup/rollup-linux-arm64-gnu@4.31.0': + resolution: {integrity: sha512-JyFFshbN5xwy6fulZ8B/8qOqENRmDdEkcIMF0Zz+RsfamEW+Zabl5jAb0IozP/8UKnJ7g2FtZZPEUIAlUSX8cA==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.30.1': - resolution: {integrity: sha512-i4Ab2vnvS1AE1PyOIGp2kXni69gU2DAUVt6FSXeIqUCPIR3ZlheMW3oP2JkukDfu3PsexYRbOiJrY+yVNSk9oA==} + '@rollup/rollup-linux-arm64-musl@4.31.0': + resolution: {integrity: sha512-kpQXQ0UPFeMPmPYksiBL9WS/BDiQEjRGMfklVIsA0Sng347H8W2iexch+IEwaR7OVSKtr2ZFxggt11zVIlZ25g==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-loongarch64-gnu@4.30.1': - resolution: {integrity: sha512-fARcF5g296snX0oLGkVxPmysetwUk2zmHcca+e9ObOovBR++9ZPOhqFUM61UUZ2EYpXVPN1redgqVoBB34nTpQ==} + '@rollup/rollup-linux-loongarch64-gnu@4.31.0': + resolution: {integrity: sha512-pMlxLjt60iQTzt9iBb3jZphFIl55a70wexvo8p+vVFK+7ifTRookdoXX3bOsRdmfD+OKnMozKO6XM4zR0sHRrQ==} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.30.1': - resolution: {integrity: sha512-GLrZraoO3wVT4uFXh67ElpwQY0DIygxdv0BNW9Hkm3X34wu+BkqrDrkcsIapAY+N2ATEbvak0XQ9gxZtCIA5Rw==} + '@rollup/rollup-linux-powerpc64le-gnu@4.31.0': + resolution: {integrity: sha512-D7TXT7I/uKEuWiRkEFbed1UUYZwcJDU4vZQdPTcepK7ecPhzKOYk4Er2YR4uHKme4qDeIh6N3XrLfpuM7vzRWQ==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.30.1': - resolution: {integrity: sha512-0WKLaAUUHKBtll0wvOmh6yh3S0wSU9+yas923JIChfxOaaBarmb/lBKPF0w/+jTVozFnOXJeRGZ8NvOxvk/jcw==} + '@rollup/rollup-linux-riscv64-gnu@4.31.0': + resolution: {integrity: sha512-wal2Tc8O5lMBtoePLBYRKj2CImUCJ4UNGJlLwspx7QApYny7K1cUYlzQ/4IGQBLmm+y0RS7dwc3TDO/pmcneTw==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.30.1': - resolution: {integrity: sha512-GWFs97Ruxo5Bt+cvVTQkOJ6TIx0xJDD/bMAOXWJg8TCSTEK8RnFeOeiFTxKniTc4vMIaWvCplMAFBt9miGxgkA==} + '@rollup/rollup-linux-s390x-gnu@4.31.0': + resolution: {integrity: sha512-O1o5EUI0+RRMkK9wiTVpk2tyzXdXefHtRTIjBbmFREmNMy7pFeYXCFGbhKFwISA3UOExlo5GGUuuj3oMKdK6JQ==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.30.1': - resolution: {integrity: sha512-UtgGb7QGgXDIO+tqqJ5oZRGHsDLO8SlpE4MhqpY9Llpzi5rJMvrK6ZGhsRCST2abZdBqIBeXW6WPD5fGK5SDwg==} + '@rollup/rollup-linux-x64-gnu@4.31.0': + resolution: {integrity: sha512-zSoHl356vKnNxwOWnLd60ixHNPRBglxpv2g7q0Cd3Pmr561gf0HiAcUBRL3S1vPqRC17Zo2CX/9cPkqTIiai1g==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.30.1': - resolution: {integrity: sha512-V9U8Ey2UqmQsBT+xTOeMzPzwDzyXmnAoO4edZhL7INkwQcaW1Ckv3WJX3qrrp/VHaDkEWIBWhRwP47r8cdrOow==} + '@rollup/rollup-linux-x64-musl@4.31.0': + resolution: {integrity: sha512-ypB/HMtcSGhKUQNiFwqgdclWNRrAYDH8iMYH4etw/ZlGwiTVxBz2tDrGRrPlfZu6QjXwtd+C3Zib5pFqID97ZA==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.30.1': - resolution: {integrity: sha512-WabtHWiPaFF47W3PkHnjbmWawnX/aE57K47ZDT1BXTS5GgrBUEpvOzq0FI0V/UYzQJgdb8XlhVNH8/fwV8xDjw==} + '@rollup/rollup-win32-arm64-msvc@4.31.0': + resolution: {integrity: sha512-JuhN2xdI/m8Hr+aVO3vspO7OQfUFO6bKLIRTAy0U15vmWjnZDLrEgCZ2s6+scAYaQVpYSh9tZtRijApw9IXyMw==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.30.1': - resolution: {integrity: sha512-pxHAU+Zv39hLUTdQQHUVHf4P+0C47y/ZloorHpzs2SXMRqeAWmGghzAhfOlzFHHwjvgokdFAhC4V+6kC1lRRfw==} + '@rollup/rollup-win32-ia32-msvc@4.31.0': + resolution: {integrity: sha512-U1xZZXYkvdf5MIWmftU8wrM5PPXzyaY1nGCI4KI4BFfoZxHamsIe+BtnPLIvvPykvQWlVbqUXdLa4aJUuilwLQ==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.30.1': - resolution: {integrity: sha512-D6qjsXGcvhTjv0kI4fU8tUuBDF/Ueee4SVX79VfNDXZa64TfCW1Slkb6Z7O1p7vflqZjcmOVdZlqf8gvJxc6og==} + '@rollup/rollup-win32-x64-msvc@4.31.0': + resolution: {integrity: sha512-ul8rnCsUumNln5YWwz0ted2ZHFhzhRRnkpBZ+YRuHoRAlUji9KChpOUOndY7uykrPEPXVbHLlsdo6v5yXo/TXw==} cpu: [x64] os: [win32] - '@rspack/binding-darwin-arm64@1.1.8': - resolution: {integrity: sha512-I7avr471ghQ3LAqKm2fuXuJPLgQ9gffn5Q4nHi8rsukuZUtiLDPfYzK1QuupEp2JXRWM1gG5lIbSUOht3cD6Ug==} + '@rspack/binding-darwin-arm64@1.2.2': + resolution: {integrity: sha512-h23F8zEkXWhwMeScm0ZnN78Zh7hCDalxIWsm7bBS0eKadnlegUDwwCF8WE+8NjWr7bRzv0p3QBWlS5ufkcL4eA==} cpu: [arm64] os: [darwin] - '@rspack/binding-darwin-x64@1.1.8': - resolution: {integrity: sha512-vfqf/c+mcx8rr1M8LnqKmzDdnrgguflZnjGerBLjNerAc+dcUp3lCvNxRIvZ2TkSZZBW8BpCMgjj3n70CZ4VLQ==} + '@rspack/binding-darwin-x64@1.2.2': + resolution: {integrity: sha512-vG5s7FkEvwrGLfksyDRHwKAHUkhZt1zHZZXJQn4gZKjTBonje8ezdc7IFlDiWpC4S+oBYp73nDWkUzkGRbSdcQ==} cpu: [x64] os: [darwin] - '@rspack/binding-linux-arm64-gnu@1.1.8': - resolution: {integrity: sha512-lZlO/rAJSeozi+qtVLkGSXfe+riPawCwM4FsrflELfNlvvEXpANwtrdJ+LsaNVXcgvhh50ZX2KicTdmx9G2b6Q==} + '@rspack/binding-linux-arm64-gnu@1.2.2': + resolution: {integrity: sha512-VykY/kiYOzO8E1nYzfJ9+gQEHxb5B6lt5wa8M6xFi5B6jEGU+OsaGskmAZB9/GFImeFDHxDPvhUalI4R9p8O2Q==} cpu: [arm64] os: [linux] - '@rspack/binding-linux-arm64-musl@1.1.8': - resolution: {integrity: sha512-bX7exULSZwy8xtDh6Z65b6sRC4uSxGuyvSLCEKyhmG6AnJkg0gQMxk3hoO0hWnyGEZgdJEn+jEhk0fjl+6ZRAQ==} + '@rspack/binding-linux-arm64-musl@1.2.2': + resolution: {integrity: sha512-Z5vAC4wGfXi8XXZ6hs8Q06TYjr3zHf819HB4DI5i4C1eQTeKdZSyoFD0NHFG23bP4NWJffp8KhmoObcy9jBT5Q==} cpu: [arm64] os: [linux] - '@rspack/binding-linux-x64-gnu@1.1.8': - resolution: {integrity: sha512-2Prw2USgTJ3aLdLExfik8pAwAHbX4MZrACBGEmR7Vbb56kLjC+++fXkciRc50pUDK4JFr1VQ7eNZrJuDR6GG6Q==} + '@rspack/binding-linux-x64-gnu@1.2.2': + resolution: {integrity: sha512-o3pDaL+cH5EeRbDE9gZcdZpBgp5iXvYZBBhe8vZQllYgI4zN5MJEuleV7WplG3UwTXlgZg3Kht4RORSOPn96vg==} cpu: [x64] os: [linux] - '@rspack/binding-linux-x64-musl@1.1.8': - resolution: {integrity: sha512-bnVGB/mQBKEdzOU/CPmcOE3qEXxGOGGW7/i6iLl2MamVOykJq8fYjL9j86yi6L0r009ja16OgWckykQGc4UqGw==} + '@rspack/binding-linux-x64-musl@1.2.2': + resolution: {integrity: sha512-RE3e0xe4DdchHssttKzryDwjLkbrNk/4H59TkkWeGYJcLw41tmcOZVFQUOwKLUvXWVyif/vjvV/w1SMlqB4wQg==} cpu: [x64] os: [linux] - '@rspack/binding-win32-arm64-msvc@1.1.8': - resolution: {integrity: sha512-u+na3gxhzeksm4xZyAzn1+XWo5a5j7hgWA/KcFPDQ8qQNkRknx4jnQMxVtcZ9pLskAYV4AcOV/AIximx7zvv8A==} + '@rspack/binding-win32-arm64-msvc@1.2.2': + resolution: {integrity: sha512-R+PKBYn6uzTaDdVqTHvjqiJPBr5ZHg1wg5UmFDLNH9OklzVFyQh1JInSdJRb7lzfzTRz6bEkkwUFBPQK/CGScw==} cpu: [arm64] os: [win32] - '@rspack/binding-win32-ia32-msvc@1.1.8': - resolution: {integrity: sha512-FijUxym1INd5fFHwVCLuVP8XEAb4Sk1sMwEEQUlugiDra9ZsLaPw4OgPGxbxkD6SB0DeUz9Zq46Xbcf6d3OgfA==} + '@rspack/binding-win32-ia32-msvc@1.2.2': + resolution: {integrity: sha512-dBqz3sRAGZ2f31FgzKLDvIRfq2haRP3X3XVCT0PsiMcvt7QJng+26aYYMy2THatd/nM8IwExYeitHWeiMBoruw==} cpu: [ia32] os: [win32] - '@rspack/binding-win32-x64-msvc@1.1.8': - resolution: {integrity: sha512-SBzIcND4qpDt71jlu1MCDxt335tqInT3YID9V4DoQ4t8wgM/uad7EgKOWKTK6vc2RRaOIShfS2XzqjNUxPXh4w==} + '@rspack/binding-win32-x64-msvc@1.2.2': + resolution: {integrity: sha512-eeAvaN831KG553cMSHkVldyk6YQn4ujgRHov6r1wtREq7CD3/ka9LMkJUepCN85K7XtwYT0N4KpFIQyf5GTGoA==} cpu: [x64] os: [win32] - '@rspack/binding@1.1.8': - resolution: {integrity: sha512-+/JzXx1HctfgPj+XtsCTbRkxiaOfAXGZZLEvs7jgp04WgWRSZ5u97WRCePNPvy+sCfOEH/2zw2ZK36Z7oQRGhQ==} + '@rspack/binding@1.2.2': + resolution: {integrity: sha512-GCZwpGFYlLTdJ2soPLwjw9z4LSZ+GdpbHNfBt3Cm/f/bAF8n6mZc7dHUqN893RFh7MPU17HNEL3fMw7XR+6pHg==} - '@rspack/core@1.1.8': - resolution: {integrity: sha512-pcZtcj5iXLCuw9oElTYC47bp/RQADm/MMEb3djHdwJuSlFWfWPQi5QFgJ/lJAxIW9UNHnTFrYtytycfjpuoEcA==} + '@rspack/core@1.2.2': + resolution: {integrity: sha512-EeHAmY65Uj62hSbUKesbrcWGE7jfUI887RD03G++Gj8jS4WPHEu1TFODXNOXg6pa7zyIvs2BK0Bm16Kwz8AEaQ==} engines: {node: '>=16.0.0'} peerDependencies: + '@rspack/tracing': ^1.x '@swc/helpers': '>=0.5.1' peerDependenciesMeta: + '@rspack/tracing': + optional: true '@swc/helpers': optional: true @@ -2612,56 +2609,62 @@ packages: resolution: {integrity: sha512-VynGOEsVw2s8TAlLf/uESfrgfrq2+rcXB1muPJYBWbsm1Oa6r5qVQhjA5ggM6z/coYPrsVMgovl3Ff7Q7OCp1w==} engines: {node: '>=16.0.0'} - '@shikijs/core@1.17.0': - resolution: {integrity: sha512-Mkk4Mp4bNnW1kytU8I7S5PK5teNSe0iKlfqxPss4sdwnlcU8a2N62Z3te2gVmZfU9t1HF6L3wyWuM43IvEeEsg==} - '@shikijs/core@1.22.0': resolution: {integrity: sha512-S8sMe4q71TJAW+qG93s5VaiihujRK6rqDFqBnxqvga/3LvqHEnxqBIOPkt//IdXVtHkQWKu4nOQNk0uBGicU7Q==} - '@shikijs/core@1.26.1': - resolution: {integrity: sha512-yeo7sG+WZQblKPclUOKRPwkv1PyoHYkJ4gP9DzhFJbTdueKR7wYTI1vfF/bFi1NTgc545yG/DzvVhZgueVOXMA==} + '@shikijs/core@1.22.2': + resolution: {integrity: sha512-bvIQcd8BEeR1yFvOYv6HDiyta2FFVePbzeowf5pPS1avczrPK+cjmaxxh0nx5QzbON7+Sv0sQfQVciO7bN72sg==} - '@shikijs/engine-javascript@1.17.0': - resolution: {integrity: sha512-EiBVlxmzJZdC2ypzn8k+vxLngbBNgHLS4RilwrFOABGRc72kUZubbD/6Chrq2RcVtD3yq1GtiiIdFMGd9BTX3Q==} + '@shikijs/core@1.23.1': + resolution: {integrity: sha512-NuOVgwcHgVC6jBVH5V7iblziw6iQbWWHrj5IlZI3Fqu2yx9awH7OIQkXIcsHsUmY19ckwSgUMgrqExEyP5A0TA==} + + '@shikijs/core@1.27.2': + resolution: {integrity: sha512-ns1dokDr0KE1lQ9mWd4rqaBkhSApk0qGCK1+lOqwnkQSkVZ08UGqXj1Ef8dAcTMZNFkN6PSNjkL5TYNX7pyPbQ==} '@shikijs/engine-javascript@1.22.0': resolution: {integrity: sha512-AeEtF4Gcck2dwBqCFUKYfsCq0s+eEbCEbkUuFou53NZ0sTGnJnJ/05KHQFZxpii5HMXbocV9URYVowOP2wH5kw==} - '@shikijs/engine-javascript@1.26.1': - resolution: {integrity: sha512-CRhA0b8CaSLxS0E9A4Bzcb3LKBNpykfo9F85ozlNyArxjo2NkijtiwrJZ6eHa+NT5I9Kox2IXVdjUsP4dilsmw==} + '@shikijs/engine-javascript@1.22.2': + resolution: {integrity: sha512-iOvql09ql6m+3d1vtvP8fLCVCK7BQD1pJFmHIECsujB0V32BJ0Ab6hxk1ewVSMFA58FI0pR2Had9BKZdyQrxTw==} - '@shikijs/engine-oniguruma@1.17.0': - resolution: {integrity: sha512-nsXzJGLQ0fhKmA4Gwt1cF7vC8VuZ1HSDrTRuj48h/qDeX/TzmOlTDXQ3uPtyuhyg/2rbZRzNhN8UFU4fSnQfXg==} + '@shikijs/engine-javascript@1.23.1': + resolution: {integrity: sha512-i/LdEwT5k3FVu07SiApRFwRcSJs5QM9+tod5vYCPig1Ywi8GR30zcujbxGQFJHwYD7A5BUqagi8o5KS+LEVgBg==} + + '@shikijs/engine-javascript@1.27.2': + resolution: {integrity: sha512-0JB7U5vJc16NShBdxv9hSSJYSKX79+32O7F4oXIxJLdYfomyFvx4B982ackUI9ftO9T3WwagkiiD3nOxOOLiGA==} '@shikijs/engine-oniguruma@1.22.0': resolution: {integrity: sha512-5iBVjhu/DYs1HB0BKsRRFipRrD7rqjxlWTj4F2Pf+nQSPqc3kcyqFFeZXnBMzDf0HdqaFVvhDRAGiYNvyLP+Mw==} - '@shikijs/engine-oniguruma@1.26.1': - resolution: {integrity: sha512-F5XuxN1HljLuvfXv7d+mlTkV7XukC1cawdtOo+7pKgPD83CAB1Sf8uHqP3PK0u7njFH0ZhoXE1r+0JzEgAQ+kg==} + '@shikijs/engine-oniguruma@1.22.2': + resolution: {integrity: sha512-GIZPAGzQOy56mGvWMoZRPggn0dTlBf1gutV5TdceLCZlFNqWmuc7u+CzD0Gd9vQUTgLbrt0KLzz6FNprqYAxlA==} - '@shikijs/langs@1.26.1': - resolution: {integrity: sha512-oz/TQiIqZejEIZbGtn68hbJijAOTtYH4TMMSWkWYozwqdpKR3EXgILneQy26WItmJjp3xVspHdiUxUCws4gtuw==} + '@shikijs/engine-oniguruma@1.23.1': + resolution: {integrity: sha512-KQ+lgeJJ5m2ISbUZudLR1qHeH3MnSs2mjFg7bnencgs5jDVPeJ2NVDJ3N5ZHbcTsOIh0qIueyAJnwg7lg7kwXQ==} - '@shikijs/themes@1.26.1': - resolution: {integrity: sha512-JDxVn+z+wgLCiUhBGx2OQrLCkKZQGzNH3nAxFir4PjUcYiyD8Jdms9izyxIogYmSwmoPTatFTdzyrRKbKlSfPA==} + '@shikijs/engine-oniguruma@1.27.2': + resolution: {integrity: sha512-FZYKD1KN7srvpkz4lbGLOYWlyDU4Rd+2RtuKfABTkafAPOFr+J6umfIwY/TzOQqfNtWjL7SAwPAO0dcOraRLaQ==} - '@shikijs/transformers@1.17.0': - resolution: {integrity: sha512-C/s6z0knkWBVRG6cmklTUn+70URKVE8qlQuFg6Bi/9iqpX68NZloZhxCtVHeTd56pit15hivTlgSAY+SP7C8hA==} + '@shikijs/transformers@1.22.2': + resolution: {integrity: sha512-8f78OiBa6pZDoZ53lYTmuvpFPlWtevn23bzG+azpPVvZg7ITax57o/K3TC91eYL3OMJOO0onPbgnQyZjRos8XQ==} - '@shikijs/twoslash@1.26.1': - resolution: {integrity: sha512-jgRt6c6y+rXVfpcLIAY8luCKDiadhozrLS1+xjXA6WcZ/5wCAB2oj+ubue+14UZkg2yLJaH0X7N8N2J7/X1YJQ==} - - '@shikijs/types@1.17.0': - resolution: {integrity: sha512-Tvu2pA69lbpXB+MmgIaROP1tio8y0uYvKb5Foh3q0TJBTAJuaoa5eDEtS/0LquyveacsiVrYF4uEZILju+7Ybg==} + '@shikijs/twoslash@1.27.2': + resolution: {integrity: sha512-hi/ysuEzEkHua3qdc/6hOTVdxS1s6SUFs985NB4t5/5qLyF+ST7GwLHPRyRZmT1TJ2IhPX8dg8McVU+oeDJmwA==} '@shikijs/types@1.22.0': resolution: {integrity: sha512-Fw/Nr7FGFhlQqHfxzZY8Cwtwk5E9nKDUgeLjZgt3UuhcM3yJR9xj3ZGNravZZok8XmEZMiYkSMTPlPkULB8nww==} - '@shikijs/types@1.26.1': - resolution: {integrity: sha512-d4B00TKKAMaHuFYgRf3L0gwtvqpW4hVdVwKcZYbBfAAQXspgkbWqnFfuFl3MDH6gLbsubOcr+prcnsqah3ny7Q==} + '@shikijs/types@1.22.2': + resolution: {integrity: sha512-NCWDa6LGZqTuzjsGfXOBWfjS/fDIbDdmVDug+7ykVe1IKT4c1gakrvlfFYp5NhAXH/lyqLM8wsAPo5wNy73Feg==} - '@shikijs/vitepress-twoslash@1.26.1': - resolution: {integrity: sha512-doNqlJ+oOkC98cgiJSFJ3T/RZMBTiutQ3xw8EB8Xr6Qbk1/5Tfg+eOpI/2h2HTHdEafC2jzkgWK/l7Te1u5aWA==} + '@shikijs/types@1.23.1': + resolution: {integrity: sha512-98A5hGyEhzzAgQh2dAeHKrWW4HfCMeoFER2z16p5eJ+vmPeF6lZ/elEne6/UCU551F/WqkopqRsr1l2Yu6+A0g==} + + '@shikijs/types@1.27.2': + resolution: {integrity: sha512-DM9OWUyjmdYdnKDpaGB/GEn9XkToyK1tqxuqbmc5PV+5K8WjjwfygL3+cIvbkSw2v1ySwHDgqATq/+98pJ4Kyg==} + + '@shikijs/vitepress-twoslash@1.23.1': + resolution: {integrity: sha512-L67HkzDkbECjYdWxQA9BuKAIB0c7eaa+7sD6dZUQ6/cdJGiWvaPLYMRwMWZQ4ToRsz1X6MQmOKQp6Xb6FEc3Bg==} '@shikijs/vscode-textmate@10.0.1': resolution: {integrity: sha512-fTIQwLF+Qhuws31iw7Ncl1R3HUDtGwIipiJ9iU+UsDUwMhegFcQKQHd51nZjb7CArq0MvON8rbgCGQYWHUKAdg==} @@ -2691,8 +2694,8 @@ packages: engines: {node: '>=8.10'} hasBin: true - '@stripe/stripe-js@4.10.0': - resolution: {integrity: sha512-KrMOL+sH69htCIXCaZ4JluJ35bchuCCznyPyrbN8JXSGQfwBI1SuIEMZNwvy8L8ykj29t6sa5BAAiL7fNoLZ8A==} + '@stripe/stripe-js@4.8.0': + resolution: {integrity: sha512-+4Cb0bVHlV4BJXxkJ3cCLSLuWxm3pXKtgcRacox146EuugjCzRRII5T5gUMgL4HpzrBLVwVxjKaZqntNWAXawQ==} engines: {node: '>=12.16'} '@stylistic/eslint-plugin@2.12.1': @@ -2722,6 +2725,21 @@ packages: '@types/aria-query@5.0.4': resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==} + '@types/babel__core@7.20.5': + resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} + + '@types/babel__generator@7.6.8': + resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} + + '@types/babel__helper-plugin-utils@7.10.3': + resolution: {integrity: sha512-FcLBBPXInqKfULB2nvOBskQPcnSMZ0s1Y2q76u9H1NPPWaLcTeq38xBeKfF/RBUECK333qeaqRdYoPSwW7rTNQ==} + + '@types/babel__template@7.4.4': + resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} + + '@types/babel__traverse@7.20.6': + resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==} + '@types/connect@3.4.38': resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} @@ -2767,8 +2785,8 @@ packages: '@types/ms@0.7.34': resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} - '@types/node@22.10.5': - resolution: {integrity: sha512-F8Q+SeGimwOo86fiovQh8qiXfFEh2/ocYv7tU5pJ3EXMSSxk1Joj5wefpFK2fHTf/N6HKGSxIDBT9f3gCxXPkQ==} + '@types/node@22.10.10': + resolution: {integrity: sha512-X47y/mPNzxviAGY5TcYPtYL8JsY3kAq2n8fMmKoRCxq/c4v4pyGNCzM2R6+M5/umG4ZfHuT+sgqDYqWc9rJ6ww==} '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -2834,6 +2852,10 @@ packages: resolution: {integrity: sha512-60L9KIuN/xgmsINzonOcMDSB8p82h95hoBfSBtXuO4jlR1R9L1xSkmVZKgCPVfavDlXihh4ARNjXhh1gGnLC7Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/scope-manager@8.21.0': + resolution: {integrity: sha512-G3IBKz0/0IPfdeGRMbp+4rbjfSSdnGkXsM/pFZA8zM9t9klXDnB/YnKOBQ0GoPmoROa4bCq2NeHgJa5ydsQ4mA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/type-utils@8.19.1': resolution: {integrity: sha512-Rp7k9lhDKBMRJB/nM9Ksp1zs4796wVNyihG9/TU9R6KCJDNkQbc2EOKjrBtLYh3396ZdpXLtr/MkaSEmNMtykw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -2845,12 +2867,22 @@ packages: resolution: {integrity: sha512-JBVHMLj7B1K1v1051ZaMMgLW4Q/jre5qGK0Ew6UgXz1Rqh+/xPzV1aW581OM00X6iOfyr1be+QyW8LOUf19BbA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/types@8.21.0': + resolution: {integrity: sha512-PAL6LUuQwotLW2a8VsySDBwYMm129vFm4tMVlylzdoTybTHaAi0oBp7Ac6LhSrHHOdLM3efH+nAR6hAWoMF89A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/typescript-estree@8.19.1': resolution: {integrity: sha512-jk/TZwSMJlxlNnqhy0Eod1PNEvCkpY6MXOXE/WLlblZ6ibb32i2We4uByoKPv1d0OD2xebDv4hbs3fm11SMw8Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: 5.7.3 + '@typescript-eslint/typescript-estree@8.21.0': + resolution: {integrity: sha512-x+aeKh/AjAArSauz0GiQZsjT8ciadNMHdkUSwBB9Z6PrKc/4knM4g3UfHml6oDJmKC88a6//cdxnO/+P2LkMcg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: 5.7.3 + '@typescript-eslint/utils@8.19.1': resolution: {integrity: sha512-IxG5gLO0Ne+KaUc8iW1A+XuKLd63o4wlbI1Zp692n1xojCl/THvgIKXJXBZixTh5dd5+yTJ/VXH7GJaaw21qXA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -2858,10 +2890,21 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: 5.7.3 + '@typescript-eslint/utils@8.21.0': + resolution: {integrity: sha512-xcXBfcq0Kaxgj7dwejMbFyq7IOHgpNMtVuDveK7w3ZGwG9owKzhALVwKpTF2yrZmEwl9SWdetf3fxNzJQaVuxw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: 5.7.3 + '@typescript-eslint/visitor-keys@8.19.1': resolution: {integrity: sha512-fzmjU8CHK853V/avYZAvuVut3ZTfwN5YtMaoi+X9Y9MA9keaWNHC3zEQ9zvyX/7Hj+5JkNyK1l7TOR2hevHB6Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/visitor-keys@8.21.0': + resolution: {integrity: sha512-BkLMNpdV6prozk8LlyK/SOoWLmUFi+ZD+pcqti9ILCbVvHGk1ui1g4jJOc2WDLaeExz2qWwojxlPce5PljcT3w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript/vfs@1.6.0': resolution: {integrity: sha512-hvJUjNVeBMp77qPINuUvYXj4FyWeeMMKZkxEATEU3hqBAQ7qdTBCUFT7Sp0Zu0faeEtFf+ldXxMEDr/bk73ISg==} peerDependencies: @@ -2870,193 +2913,193 @@ packages: '@ungap/structured-clone@1.2.0': resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - '@unhead/dom@1.11.15': - resolution: {integrity: sha512-2OZ7zvZQLqlqkhvsKsNOhxxoO3vgjygzzrmtooQR9QNKY+3HjwJ3+QfjGswXI976YV7VJem57ydQSMk1ijB7yg==} + '@unhead/dom@1.11.18': + resolution: {integrity: sha512-zQuJUw/et9zYEV0SZWTDX23IgurwMaXycAuxt4L6OgNL0T4TWP3a0J/Vm3Q02hmdNo/cPKeVBrwBdnFUXjGU4w==} - '@unhead/schema@1.11.15': - resolution: {integrity: sha512-UkLz1dqw4yoh4jELEyLsgSG7yrXc+gv68GkQeTv8LysEPa8sXtFqhfuqTBLhY3sHqSnP8RkDknhtFhG2S3fuKQ==} + '@unhead/schema@1.11.18': + resolution: {integrity: sha512-a3TA/OJCRdfbFhcA3Hq24k1ZU1o9szicESrw8DZcGyQFacHnh84mVgnyqSkMnwgCmfN4kvjSiTBlLEHS6+wATw==} - '@unhead/shared@1.11.15': - resolution: {integrity: sha512-VT42ssmwpFGfixfXqAZ+Rn7KyNG0yFqWGsvLOXIgahiTzh3N1k2st1tPvuYFZU22dtWBNxG7cvy8yxUd1vunMQ==} + '@unhead/shared@1.11.18': + resolution: {integrity: sha512-OsupRQRxJqqnuKiL1Guqipjbl7MndD5DofvmGa3PFGu2qNPmOmH2mxGFjRBBgq2XxY1KalIHl/2I9HV6gbK8cw==} - '@unhead/ssr@1.11.15': - resolution: {integrity: sha512-btoJ7huldVdxOJOr9yx8DpDiUELzdlX3LB0k5cBub+CI4nZoPC/8ovuaYzKBriAIkEtQp9g9ytHRUJYDvim/1g==} + '@unhead/ssr@1.11.18': + resolution: {integrity: sha512-uaHPz0RRAb18yKeCmHyHk5QKWRk/uHpOrqSbhRXTOhbrd3Ur3gGTVaAoyUoRYKGPU5B5/pyHh3TfLw0LkfrH1A==} - '@unhead/vue@1.11.15': - resolution: {integrity: sha512-2NT8Kph5AvB/qO+C8UKAc7cudbFRZTJk0eRpn8o1nG3yk2+mWvN0vsTTjnKvXixNF193I/R+zqo/NkcjgaWG9A==} + '@unhead/vue@1.11.18': + resolution: {integrity: sha512-Jfi7t/XNBnlcauP9UTH3VHBcS69G70ikFd2e5zdgULLDRWpOlLs1sSTH1V2juNptc93DOk9RQfC5jLWbLcivFw==} peerDependencies: vue: 3.5.13 - '@unocss/astro@0.65.4': - resolution: {integrity: sha512-ex1CJOQ6yeftBEPcbA9/W47/YoV+mhQnrAoc8MA1VVrvvFKDitICFU62+nSt3NWRe53XL/fXnQbcbCb8AAgKlA==} + '@unocss/astro@0.62.4': + resolution: {integrity: sha512-98KfkbrNhBLx2+uYxMiGsldIeIZ6/PbL4yaGRHeHoiHd7p4HmIyCF+auYe4Psntx3Yr8kU+XSIAhGDYebvTidQ==} peerDependencies: - vite: 6.0.7 + vite: 6.0.11 peerDependenciesMeta: vite: optional: true - '@unocss/astro@65.4.0': - resolution: {integrity: sha512-bLi+H181PJ17E0Br06VwK7yeZffv9X46JCA7pnBlA/g8sDBxB+CwPOFaHlUeqVvis0CEt8HOr/e9418pxqQJTQ==} + '@unocss/astro@65.4.3': + resolution: {integrity: sha512-yhPKH4CT2CFjvKR8lL6oS/7jarMWp4iSnYcNlTlZLmvTIS3dGxyhAsVy/xkdzdJ6sM+6FS0hUuQNv+NYvArRNg==} peerDependencies: - vite: 6.0.7 + vite: 6.0.11 peerDependenciesMeta: vite: optional: true - '@unocss/cli@0.65.4': - resolution: {integrity: sha512-D/4hY5Hezh3QETscl4i+ojb+q8YU9Cl9AYJ8v3gsjc/GjTmEuIOD5V4x+/aN25vY5wjqgoApOgaIDGCV3b+2Ig==} + '@unocss/cli@0.62.4': + resolution: {integrity: sha512-p4VyS40mzn4LCOkIsbIRzN0Zi50rRepesREi2S1+R4Kpvd4QFeeuxTuZNHEyi2uCboQ9ZWl1gfStCXIrNECwTg==} engines: {node: '>=14'} hasBin: true - '@unocss/cli@65.4.0': - resolution: {integrity: sha512-g1k24tKs233V2F6EWDCGimke5SjSM59HacCUnc411NSUBqNmPojxPtRWn9vp6XRovQ9X6FdKsuMHmpMotWlTiQ==} + '@unocss/cli@65.4.3': + resolution: {integrity: sha512-pZESqf5tS5AjATkAP11M0ecIiias0//nir7MgUQLs/v2GX0x7K0KhVTJ50TiFePff0TnwTHheDNJGR3gesDiVg==} engines: {node: '>=14'} hasBin: true - '@unocss/config@0.65.4': - resolution: {integrity: sha512-/vCt4AXnJ4p4Ow6xqsYwdrelF9533yhZjzkg3SQmL3rKeSkicPayKpeq8nkYECdhDI03VTCVD+6oh5Y/26Hg7A==} + '@unocss/config@0.62.4': + resolution: {integrity: sha512-XKudKxxW8P44JvlIdS6HBpfE3qZA9rhbemy6/sb8HyZjKYjgeM9jx5yjk+9+4hXNma/KlwDXwjAqY29z0S0SrA==} engines: {node: '>=14'} - '@unocss/config@65.4.0': - resolution: {integrity: sha512-7V3zuf+qWVxpy+1EkmyEBiU49fNiFfEUkh0n95IoLAhk9xyfz9a1dRBv20CQLte/OZ/NkD+fB+6J/w8ARn+tow==} + '@unocss/config@65.4.3': + resolution: {integrity: sha512-Z3tnQ10UjM09Y1yVqfCYfZEh2pXFQlUQ1g188mMWxjXWEIXeei3f9dIApRBgC+xcPE6prqdu3fDC5emU+sqyxw==} engines: {node: '>=14'} - '@unocss/core@0.65.4': - resolution: {integrity: sha512-a2JOoFutrhqd5RgPhIR5FIXrDoHDU3gwCbPrpT6KYTjsqlSc/fv02yZ+JGOZFN3MCFhCmaPTs+idDFtwb3xU8g==} + '@unocss/core@0.62.4': + resolution: {integrity: sha512-Cc+Vo6XlaQpyVejkJrrzzWtiK9pgMWzVVBpm9VCVtwZPUjD4GSc+g7VQCPXSsr7m03tmSuRySJx72QcASmauNQ==} - '@unocss/core@65.4.0': - resolution: {integrity: sha512-UZPvyqS7jj5gRzFeozXG9gOEsGwdbOrQnWjeKLFbfE1upZlG3cwrwIuEl9bqTWNVAtqbpQLyaRiC09YBre52oA==} + '@unocss/core@65.4.3': + resolution: {integrity: sha512-luFgdcchSlNrYSaDvU2176T2PPQZdxqfREVbxEXNXlFEgyEFrx5hOSUXoJtJSZjRhAcE6zkWyLDf/JkQJ5Eeyw==} - '@unocss/extractor-arbitrary-variants@0.65.4': - resolution: {integrity: sha512-GbvTgsDaHplfWfsQtOY8RrvEZvptmvR9k9NwQ5NsZBNIG1JepYVel93CVQvsxT5KioKcoWngXxTYLNOGyxLs0g==} + '@unocss/extractor-arbitrary-variants@0.62.4': + resolution: {integrity: sha512-e4hJfBMyFr6T6dYSTTjNv9CQwaU1CVEKxDlYP0GpfSgxsV58pguID9j1mt0/XZD6LvEDzwxj9RTRWKpUSWqp+Q==} - '@unocss/extractor-arbitrary-variants@65.4.0': - resolution: {integrity: sha512-uR9zqpu0dqtISuaKxFXgMgcJdPL5XqFsKQbttqkLRnWWv5soaP2Hh/THojZqiHPMctgrDP/2S113QvJkFY4j5w==} + '@unocss/extractor-arbitrary-variants@65.4.3': + resolution: {integrity: sha512-RhSOOzOxkNjJl9zeglaBe0U+o39jleCCNPWJ87DDJA3ckbyylIIf21ZwY1Xu76rmdar5DT9ob7ucuPfEpJLN9A==} - '@unocss/inspector@0.65.4': - resolution: {integrity: sha512-byg9x549Ul17U4Ety7ufDwC0UOygypoq4QnLEPzhlZ0KJG1f7WmXKYanOhupeg3h4qCj6Nc/xdZYMGbHl9QRIg==} + '@unocss/inspector@0.62.4': + resolution: {integrity: sha512-bRcnI99gZecNzrUr6kDMdwGHkhUuTPyvvadRdaOxHc9Ow3ANNyqymeFM1q5anZEUZt8h15TYN0mdyQyIWkU3zg==} - '@unocss/inspector@65.4.0': - resolution: {integrity: sha512-ug72DHjfcerkn/RXeB9GC9GwTi/Dj1R/BlRqy4dJ61ij8OnOl4N/ghAMQCqri59YEYG8CPeL9aQuq66eYcjpPg==} + '@unocss/inspector@65.4.3': + resolution: {integrity: sha512-mj3K0WtnP0DuonQPzxkXhLMBU5qi13dpxaJcEOSv+EBMPlJbww0bj7K7uaFqXv8LPufs/hkQzI9yjOrEzR5WBQ==} - '@unocss/nuxt@0.65.4': - resolution: {integrity: sha512-dEJdqgvrukgZJk1szxRW6MiIozUZDLeFyyxmnO+iW3loPlji9hu95j2KBVHaQWIzi39XqVSORi4lH5flvAz3Pg==} + '@unocss/nuxt@0.62.4': + resolution: {integrity: sha512-ZNfXu/f2kIRc8rnstToR/s2ubcvWDaCPmV5jXL+SQytSPb1ONCkK7ITNgB2TtrTEqQyhNX33VlnHNF8KsM8PNA==} - '@unocss/postcss@0.65.4': - resolution: {integrity: sha512-8peDRo0+rNQsnKh/H2uZEVy67sV2cC16rAeSLpgbVJUMNfZlmF0rC2DNGsOV17uconUXSwz7+mGcHKNiv+8YlQ==} + '@unocss/postcss@0.62.4': + resolution: {integrity: sha512-kWdHy7UsSP4bDu8I7sCKeO0VuzvVpNHmn2rifK5gNstUx5dZ1H/SoyXTHx5sKtgfZBRzdNXFu2nZ3PzYGvEFbw==} engines: {node: '>=14'} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 - '@unocss/postcss@65.4.0': - resolution: {integrity: sha512-sg2k7B3T8B55QHNqNeOm61RmKE4m2355jxbMCAY1rx/CZCFUTUTI4pd+XY9ekbZjLe84YUlBs4bt62MOlJ58hg==} + '@unocss/postcss@65.4.3': + resolution: {integrity: sha512-ZHlWfArfhhWBVhUeAETrtnD7nhqpfXv5muGrJCSDHmjgFJX8jtDa6rf52ICCFWEOe8p2dku7o27o26pGXYTYJg==} engines: {node: '>=14'} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 - '@unocss/preset-attributify@0.65.4': - resolution: {integrity: sha512-zxE9hJJ5b37phjdzDdZsxX559ZlmH9rFlY5LVEcQySTnsfY0znviHxPbD2iRpCBCRd+YC5HfFd2jb3XlnTKMJQ==} + '@unocss/preset-attributify@0.62.4': + resolution: {integrity: sha512-ei5nNT58GON9iyCGRRiIrphzyQbBIZ9iEqSBhIY0flcfi1uAPUXV32aO2slqJnWWAIwbRSb1GMpwYR8mmfuz8g==} - '@unocss/preset-attributify@65.4.0': - resolution: {integrity: sha512-k7UMkCSgjq4yDHMMUxV2C6uj1i63L6iNyRUaYwLrwcRZArVRuamJFaSCWOkpxlYnmYtOdpf9I3WYRFJwDT1Yjw==} + '@unocss/preset-attributify@65.4.3': + resolution: {integrity: sha512-kN8levkt+BwzzWKA6glthasuFt/Cplc70oxzAYd/gZcosxwDK5+MmxjGDG5aLLu2PA58tPHUZ+ltW/QG5BM+Xw==} - '@unocss/preset-icons@0.65.4': - resolution: {integrity: sha512-5sSzTN72X2Ag3VH48xY1pYudeWnql9jqdMiwgZuLJcmvETBNGelXy2wGxm7tsUUEx/l40Yr04Ck8XRPGT9jLBw==} + '@unocss/preset-icons@0.62.4': + resolution: {integrity: sha512-n9m2nRTxyiw0sqOwSioO3rro0kaPW0JJzWlzcfdwQ+ZORNR5WyJL298fLXYUFbZG3EOF+zSPg6CMDWudKk/tlA==} - '@unocss/preset-icons@65.4.0': - resolution: {integrity: sha512-F50biWPeLw2LtN17y/n75qaZAtpuOotyQPbK7PeihI5lr6Xg9eGWBuLc+AFIPNZZD0JDVMKEjDVOLqXHBnp0zA==} + '@unocss/preset-icons@65.4.3': + resolution: {integrity: sha512-g1WNamvYOIdD8YAOvZ5h4g3peel3rLTtKvB0wX4pVL5exsYsoyc0tmiGm57k+ZmnIucqSzxoUZ/vjHDLAViahw==} - '@unocss/preset-mini@0.65.4': - resolution: {integrity: sha512-dcO2PzSl87qN1KdQWcfZDIKEhpdFeImWbYfiXtE7k6pi1393FJkdHEopgI/1ZciIQN1CkTvQJ5c7EpEVWftYRA==} + '@unocss/preset-mini@0.62.4': + resolution: {integrity: sha512-1O+QpQFx7FT61aheAZEYemW5e4AGib8TFGm+rWLudKq2IBNnXHcS5xsq5QvqdC7rp9Dn3lnW5du6ijow5kCBuw==} - '@unocss/preset-mini@65.4.0': - resolution: {integrity: sha512-HKwok9pp+gI54RDX4/o6PWNVdCEDfVzT4MsNZO3WvGXhtMLInGrVl42IzkBp22ttkapIkIgXsqcYhBrZbmQrQA==} + '@unocss/preset-mini@65.4.3': + resolution: {integrity: sha512-JajAF18DKJRXgd9usrAYTcHUtZy606mD396ZswDgw/mUSu529tuiT6LOD43aJMYHgPEw7wKYjiGFHkeBTHijuQ==} - '@unocss/preset-tagify@0.65.4': - resolution: {integrity: sha512-qll6koqdFEkvmz594vKnxj9+3nfM3ugkJxYHrTkqtwx7DAnTgtM8fInFFGZelvjwUzR3o3+Zw6uMhFkLTVTfvg==} + '@unocss/preset-tagify@0.62.4': + resolution: {integrity: sha512-8b2Kcsvt93xu1JqDqcD3QvvW0L5rqvH7ev3BlNEVx6n8ayBqfB5HEd4ILKr7wSC90re+EnCgnMm7EP2FiQAJkw==} - '@unocss/preset-tagify@65.4.0': - resolution: {integrity: sha512-spiEh+piBJOmnU7n/P9GLL0Bl4Ttfuew+ahRSJuUK5hgPVTadhSujSrzKvM6S7aonnBuJSscw3cJIybBXoxogQ==} + '@unocss/preset-tagify@65.4.3': + resolution: {integrity: sha512-8/MbMbgdvj1A87XNVVzD8gFVqywaSJAD3Bv8RwjcFn0rwlgZY0PdTBYo3M3FH25axb4znzXBmLZdEBVZOGUosg==} - '@unocss/preset-typography@0.65.4': - resolution: {integrity: sha512-Dl940ATrviWD9Vh+4fcN0QZXb6wA7al+c7QkdVAzW7I+NtdN2ELvLcN0cY22KnLRpwztzmg52Qp2J/1QnqrLTw==} + '@unocss/preset-typography@0.62.4': + resolution: {integrity: sha512-ZVh+NbcibMmD6ve8Deub/G+XAFcGPuzE2Fx/tMAfWfYlfyOAtrMxuL+AARMthpRxdE0JOtggXNTrJb0ZhGYl9g==} - '@unocss/preset-typography@65.4.0': - resolution: {integrity: sha512-4WR1ht0TAkuOQwkxmPdP0DBXNAs6O2o8e13K5WHseKy5qoanFXO/0EzQ9w8OMlxvsCF2Bpl1KKlicJWAyiSFgA==} + '@unocss/preset-typography@65.4.3': + resolution: {integrity: sha512-DEo7GECG0AQ8FkzH/x8QCEL5BR1D+GNoxHGmNxc7rFKghJONVyJ3jROA9mDmWNAva8JygN4Up+lzPZG3mNYezQ==} - '@unocss/preset-uno@0.65.4': - resolution: {integrity: sha512-56bdBtf476i+soQCQmT36uGzcF2z+7DGCnG1hwWiw6XAbL6gmRMQsubwi1c8z8TcTQNBsOFUnOziFil0gbWufw==} + '@unocss/preset-uno@0.62.4': + resolution: {integrity: sha512-2S6+molIz8dH/al0nfkU7i/pMS0oERPr4k9iW80Byt4cKDIhh/0jhZrC83kgZRtCf5hclSBO4oCoMTi1JF7SBw==} - '@unocss/preset-uno@65.4.0': - resolution: {integrity: sha512-M2VQ7Qt67f5Re2h5FeAbMgS91jk/YBKDZh2T3zNh6OiigQl5L3GKoEvLNq2JtzvCVCxSksQATAspTmbw2Vzi1w==} + '@unocss/preset-uno@65.4.3': + resolution: {integrity: sha512-gxELOQwR3YbMLR+WjYz3m/Zb6VXa8O0Xln0rfS2TI7OXXoQ1twak5zwYPrOI5fJF8lJ5yyKUiXiOR8UEPBpoCQ==} - '@unocss/preset-web-fonts@0.65.4': - resolution: {integrity: sha512-UB/MvXHUTqMNVH1bbiKZ/ZtZUI5tsYlTYAvBrnXPO1Cztuwr8hJKSi4RCfI9g+YYtKHX4uYuxUbW5bcN85gmBQ==} + '@unocss/preset-web-fonts@0.62.4': + resolution: {integrity: sha512-kaxgYBVyMdBlErseN8kWLiaS2N5OMlwg5ktAxUlei275fMoY7inQjOwppnjDVveJbN9SP6TcqqFpBIPfUayPkQ==} - '@unocss/preset-web-fonts@65.4.0': - resolution: {integrity: sha512-6WA5lFmgYtZJqyYPVWsKZ7VmorbCLdTJV3JkgwCXLnXXVOs7xrbzYnNyoCTPP8p1rKyR1p/tynNP9Jvn1uYW7g==} + '@unocss/preset-web-fonts@65.4.3': + resolution: {integrity: sha512-edkyohQ4+qjuOxIJf+NeQiEayB47A9eA2NhBLbcqZ0OfMpN8tRZPVW5cyB3b5Ef253NGMd4S8H/96vGTBpqOBA==} - '@unocss/preset-wind@0.65.4': - resolution: {integrity: sha512-0rbNbw5E8Lvh2yf4R1Mq+lxI/wL5Tm6+r+crE0uAAhCPe9kxPHW4k+x1cWKDIwq6Vudlm3cNX85N49wN5tYgdA==} + '@unocss/preset-wind@0.62.4': + resolution: {integrity: sha512-YOzfQ11AmAnl1ZkcWLMMxCdezLjRKavLNk38LumUMtcdsa0DAy+1JjTp+KEvVQAnD+Et/ld5X+YcBWJkVy5WFQ==} - '@unocss/preset-wind@65.4.0': - resolution: {integrity: sha512-LnjEdxqffSoKg8nYJl8vwB1q8666afpYI1M33gExpSV85gyHssfrSEbqq6bYXufHGz5yMkIco+jDeYcXWv18ZA==} + '@unocss/preset-wind@65.4.3': + resolution: {integrity: sha512-KM13xIARNeZ/ZKJr33fZ89l79wgI+1Oo8VPJzmckLjbH9IGOhcH2GON7wVIxQqqqM9IM3vALEqw2KNdM6ontWw==} - '@unocss/reset@0.65.4': - resolution: {integrity: sha512-m685H0KFvVMz6R2i5GDIFv4RS9Z7y2G8hJK7xg2OWli+7w8l2ZMihYvXKofPsst4q/ms8EgKXpWc/qqUOTucvA==} + '@unocss/reset@0.62.4': + resolution: {integrity: sha512-CtxjeDgN39fY/eZDLIXN4wy7C8W7+SD+41AlzGVU5JwhcXmnb1XoDpOd2lzMxc/Yy3F5dIJt2+MRDj9RnpX9Ew==} - '@unocss/reset@65.4.0': - resolution: {integrity: sha512-SHT5IKWbr1iZm1gswWJy+G0a/tnzIODZxjZGr64JStZn/uy7N9AVs5+Kmnlx2NyhW8VNApxTnAkl035jRejZPw==} + '@unocss/reset@65.4.3': + resolution: {integrity: sha512-f9QnMtY1yPS1HEIkeKmSwUYcp4QS6zdo9ZcIFE9PDSLOcns3v+M1lTQg8mLChxJHVl73Cf6PofWVh5tmnxV53Q==} - '@unocss/rule-utils@0.65.4': - resolution: {integrity: sha512-+EzdJEWcqGcO6HwbBTe7vEdBRpuKkBiz4MycQeLD6GEio04T45y6VHHO7/WTqxltbO4YwwW9/s2TKRMxKtoG8g==} + '@unocss/rule-utils@0.62.4': + resolution: {integrity: sha512-XUwLbLUzL+VSHCJNK5QBHC9RbFehumge1/XJmsRfmh0+oxgJoO1gvEvxi57gYEmdJdMRJHRJZ66se6+cB0Ymvw==} engines: {node: '>=14'} - '@unocss/rule-utils@65.4.0': - resolution: {integrity: sha512-Fb2IKg/wQlIBDY3rzVpDxwZ3Ho1ihcbFGEzr17ZM/N5MTrdzAA3GiXA3yzOjOboc/UnqRr2Q5JG8aACLn0lAAw==} + '@unocss/rule-utils@65.4.3': + resolution: {integrity: sha512-bzRRdb9mb82IvgOt3KiRyUh/njRfJC3hoV84lMyUPryT8YTEP/hl6kt2KQ2l1K3WDz7ZPQXVi2eqUbqc+AUpwg==} engines: {node: '>=14'} - '@unocss/transformer-attributify-jsx@0.65.4': - resolution: {integrity: sha512-n438EzWdTKlLCOlAUSpFjmH6FflctqzIReMzMZSJDkmkorymc+C5GpjN3Nty2cKRJXIl6Vwq0oxPuB59RT+FIw==} + '@unocss/transformer-attributify-jsx@0.62.4': + resolution: {integrity: sha512-z9DDqS2DibDR9gno55diKfAVegeJ9uoyQXQhH3R0KY4YMF49N1fWy/t74gOiHtlPmvjQtDRZYgjgaMCc2w8oWg==} - '@unocss/transformer-attributify-jsx@65.4.0': - resolution: {integrity: sha512-c65TpsbxlsByxpX64wmJsybLQTdZaVSGUEW7sGC8I7w60vaJXpdOibvquNTvpEXfIWl3efgA1N6XDPaFtxO7KQ==} + '@unocss/transformer-attributify-jsx@65.4.3': + resolution: {integrity: sha512-GI0joW6+jG3sLMzqDxT/Nr0lGarHKsXQzpKQt1LfBGEDgNSQZtDZ1IGlkdZeErRFvWcDLWU0xm2LikLS4Az8kw==} - '@unocss/transformer-compile-class@0.65.4': - resolution: {integrity: sha512-n1yHDC/iIbcj/9fBUTXkSoASKfLBuRoCN7P1a0ecPc8Gu+uOGfoxafOhrlqC+tpD3hlQGoL+0h74BHSKh+L23Q==} + '@unocss/transformer-compile-class@0.62.4': + resolution: {integrity: sha512-8yadY9T7LToJwSsrmYU3rUKlnDgPGVRvON7z9g1IjUCmFCGx7Gpg84x9KpKUG6eUTshPQFUI0YUHocrYFevAEA==} - '@unocss/transformer-compile-class@65.4.0': - resolution: {integrity: sha512-0AygkbQI0kCquwB6CNNKvr2NOK8eOhArzKrO0imPcCqJNT2GdaHqVqajrM530ZM56KXjUV70hW3pskX6bkdhzg==} + '@unocss/transformer-compile-class@65.4.3': + resolution: {integrity: sha512-AzLeic0ESQ/yhLKfkSsQ72wQLkKEPsmX578+ZKcPSRh/HM5tfNz8RqffOHr6YOEKKTaZHN23OqbA511amRKC1w==} - '@unocss/transformer-directives@0.65.4': - resolution: {integrity: sha512-zkoDEwzPkgXi6ohW7P11gbArwfTRMZ9knYSUYoPEltQz+UZYzeRQ85exiAmdz5MsbCAuhQEr577Kd/CWfhjEuA==} + '@unocss/transformer-directives@0.62.4': + resolution: {integrity: sha512-bq9ZDG6/mr6X2mAogAo0PBVrLSLT0900MPqnj/ixadYHc7mRpX+y6bc/1AgWytZIFYSdNzf7XDoquZuwf42Ucg==} - '@unocss/transformer-directives@65.4.0': - resolution: {integrity: sha512-vRhuGVCsByWSp6ok7a8dPGFwsFn+gyXKSVmLGWyMY4p+rKaRdYiDHOnWWXbHFEKwHuhTv+mxq7q1wZB3OUkR1A==} + '@unocss/transformer-directives@65.4.3': + resolution: {integrity: sha512-e3zZYjXqHSWb6YrC09/FnCsndhZdRzmYhPubTzOjnvb5K0ihIiLvHx9c2TRPWvMspXs0wHKQsLW5fAs8oyimeQ==} - '@unocss/transformer-variant-group@0.65.4': - resolution: {integrity: sha512-ggO6xMGeOeoD5GHS2xXBJrYFuzqyiZ25tM0zHAMJn9QU9GIu1NwWvcXluvLCF/MRIygBJGPpAE98aEICI6ifEA==} + '@unocss/transformer-variant-group@0.62.4': + resolution: {integrity: sha512-W1fxMc2Lzxu4E+6JBQEBzK+AwoCQYI+EL2FT2BCUsAno37f3JdnwFFEVscck0epSdmdtidsSLDognyX8h10r8A==} - '@unocss/transformer-variant-group@65.4.0': - resolution: {integrity: sha512-VsQeMP1J/AU3Dp+qUhv9ATR54jLRGPHiNRXe/byFOU7VhJT/pn9qdtwFJQjpvkcc0ezkRoQSpuhuMCBsHRB/bg==} + '@unocss/transformer-variant-group@65.4.3': + resolution: {integrity: sha512-nZNgKLclhIjfuqCaZTmJwhWSByL7vnhb3l/ChRX4qtWOweRLro79r6MvfcqQNrweK5nCw4yibsXCrFUWq7Jj5w==} - '@unocss/vite@0.65.4': - resolution: {integrity: sha512-02pRcVLfb5UUxMJwudnjS/0ZQdSlskjuXVHdpZpLBZCA8hhoru2uEOsPbUOBRNNMjDj6ld00pmgk/+im07M35Q==} + '@unocss/vite@0.62.4': + resolution: {integrity: sha512-JKq3V6bcevYl9X5Jl3p9crArbhzI8JVWQkOxKV2nGLFaqvnc47vMSDxlU4MUdRWp3aQvzDw132tcx27oSbrojw==} peerDependencies: - vite: 6.0.7 + vite: 6.0.11 - '@unocss/vite@65.4.0': - resolution: {integrity: sha512-9k4dUDvEK9PwttmVXhNWkEO7mH0Gp9hSUJY2CX3q+u40xqT3jx7hG765yfWWI9d/VSvzuv6/SurUul3ORJYA3w==} + '@unocss/vite@65.4.3': + resolution: {integrity: sha512-YajF8Z2J/KvXdnC5BsGJjt3fm4D14vmYaHdlTyzi92Rkh/67JtaCz2OhElDoF6k4S4fm9B8uLRP10p+smRe9Fw==} peerDependencies: - vite: 6.0.7 + vite: 6.0.11 - '@unocss/webpack@0.65.4': - resolution: {integrity: sha512-cnd0qnJdSxYlQ+zuF0Qad3xZk2X0/p70XLzlA4TaBZuKa2OPJOyulfJwJSqcrSc4PXYOd9B/B8nXJk8WQ1yBHQ==} + '@unocss/webpack@0.62.4': + resolution: {integrity: sha512-hccXqpssqi1DyPJOwyIB3IhYe5SWND2JwTPxVTg8wO9fI1JvEK5DxK8FflJpXVps7QjotCmB/AXp0ezD0SutUg==} peerDependencies: webpack: ^4 || ^5 - '@vercel/nft@0.27.10': - resolution: {integrity: sha512-zbaF9Wp/NsZtKLE4uVmL3FyfFwlpDyuymQM1kPbeT0mVOHKDQQNjnnfslB3REg3oZprmNFJuh3pkHBk2qAaizg==} + '@vercel/nft@0.27.4': + resolution: {integrity: sha512-Rioz3LJkEKicKCi9BSyc1RXZ5R6GmXosFMeBSThh6msWSOiArKhb7c75MiWwZEgPL7x0/l3TAfH/l0cxKNuUFA==} engines: {node: '>=16'} hasBin: true @@ -3064,21 +3107,21 @@ packages: resolution: {integrity: sha512-uMJqv/7u1zz/9NbWAD3XdjaY20tKTf17XVfQ9zq4wY1BjsB/PjpJPMe2xiG39QpP4ZdhYNhm4Hvo66uJrykNLA==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: - vite: 6.0.7 + vite: 6.0.11 vue: 3.5.13 '@vitejs/plugin-vue@5.2.1': resolution: {integrity: sha512-cxh314tzaWwOLqVes2gnnCtvBDcM1UMdn+iFR+UjAn411dPT3tOmqrJjbMd7koZpMAmBM/GqeV4n9ge7JSiJJQ==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: - vite: 6.0.7 + vite: 6.0.11 vue: 3.5.13 - '@vitest/coverage-v8@2.1.8': - resolution: {integrity: sha512-2Y7BPlKH18mAZYAW1tYByudlCYrQyl5RGvnnDYJKW5tCiO5qg3KSAy3XAxcxKz900a0ZXxWtKrMuZLe3lKBpJw==} + '@vitest/coverage-v8@3.0.3': + resolution: {integrity: sha512-uVbJ/xhImdNtzPnLyxCZJMTeTIYdgcC2nWtBBBpR1H6z0w8m7D+9/zrDIx2nNxgMg9r+X8+RY2qVpUDeW2b3nw==} peerDependencies: - '@vitest/browser': 2.1.8 - vitest: 2.1.8 + '@vitest/browser': 3.0.3 + vitest: 3.0.3 peerDependenciesMeta: '@vitest/browser': optional: true @@ -3089,11 +3132,25 @@ packages: '@vitest/expect@2.1.8': resolution: {integrity: sha512-8ytZ/fFHq2g4PJVAtDX57mayemKgDR6X3Oa2Foro+EygiOJHUXhCqBAAKQYYajZpFoIfvBCF1j6R6IYRSIUFuw==} + '@vitest/expect@3.0.3': + resolution: {integrity: sha512-SbRCHU4qr91xguu+dH3RUdI5dC86zm8aZWydbp961aIR7G8OYNN6ZiayFuf9WAngRbFOfdrLHCGgXTj3GtoMRQ==} + '@vitest/mocker@2.1.8': resolution: {integrity: sha512-7guJ/47I6uqfttp33mgo6ga5Gr1VnL58rcqYKyShoRK9ebu8T5Rs6HN3s1NABiBeVTdWNrwUMcHH54uXZBN4zA==} peerDependencies: msw: ^2.4.9 - vite: 6.0.7 + vite: 6.0.11 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true + + '@vitest/mocker@3.0.3': + resolution: {integrity: sha512-XT2XBc4AN9UdaxJAeIlcSZ0ILi/GzmG5G8XSly4gaiqIvPV3HMTSIDZWJVX6QRJ0PX1m+W8Cy0K9ByXNb/bPIA==} + peerDependencies: + msw: ^2.4.9 + vite: 6.0.11 peerDependenciesMeta: msw: optional: true @@ -3103,42 +3160,54 @@ packages: '@vitest/pretty-format@2.1.8': resolution: {integrity: sha512-9HiSZ9zpqNLKlbIDRWOnAWqgcA7xu+8YxXSekhr0Ykab7PAYFkhkwoqVArPOtJhPmYeE2YHgKZlj3CP36z2AJQ==} + '@vitest/pretty-format@3.0.3': + resolution: {integrity: sha512-gCrM9F7STYdsDoNjGgYXKPq4SkSxwwIU5nkaQvdUxiQ0EcNlez+PdKOVIsUJvh9P9IeIFmjn4IIREWblOBpP2Q==} + + '@vitest/pretty-format@3.0.4': + resolution: {integrity: sha512-ts0fba+dEhK2aC9PFuZ9LTpULHpY/nd6jhAQ5IMU7Gaj7crPCTdCFfgvXxruRBLFS+MLraicCuFXxISEq8C93g==} + '@vitest/runner@1.6.0': resolution: {integrity: sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==} '@vitest/runner@2.1.8': resolution: {integrity: sha512-17ub8vQstRnRlIU5k50bG+QOMLHRhYPAna5tw8tYbj+jzjcspnwnwtPtiOlkuKC4+ixDPTuLZiqiWWQ2PSXHVg==} + '@vitest/runner@3.0.3': + resolution: {integrity: sha512-Rgi2kOAk5ZxWZlwPguRJFOBmWs6uvvyAAR9k3MvjRvYrG7xYvKChZcmnnpJCS98311CBDMqsW9MzzRFsj2gX3g==} + '@vitest/snapshot@1.6.0': resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==} '@vitest/snapshot@2.1.8': resolution: {integrity: sha512-20T7xRFbmnkfcmgVEz+z3AU/3b0cEzZOt/zmnvZEctg64/QZbSDJEVm9fLnnlSi74KibmRsO9/Qabi+t0vCRPg==} + '@vitest/snapshot@3.0.3': + resolution: {integrity: sha512-kNRcHlI4txBGztuJfPEJ68VezlPAXLRT1u5UCx219TU3kOG2DplNxhWLwDf2h6emwmTPogzLnGVwP6epDaJN6Q==} + '@vitest/spy@1.6.0': resolution: {integrity: sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==} '@vitest/spy@2.1.8': resolution: {integrity: sha512-5swjf2q95gXeYPevtW0BLk6H8+bPlMb4Vw/9Em4hFxDcaOxS+e0LOX4yqNxoHzMR2akEB2xfpnWUzkZokmgWDg==} + '@vitest/spy@3.0.3': + resolution: {integrity: sha512-7/dgux8ZBbF7lEIKNnEqQlyRaER9nkAL9eTmdKJkDO3hS8p59ATGwKOCUDHcBLKr7h/oi/6hP+7djQk8049T2A==} + '@vitest/utils@1.6.0': resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==} '@vitest/utils@2.1.8': resolution: {integrity: sha512-dwSoui6djdwbfFmIgbIjX2ZhIoG7Ex/+xpxyiEgIGzjliY8xGkcpITKTlp6B4MgtGkF2ilvm97cPM96XZaAgcA==} + '@vitest/utils@3.0.3': + resolution: {integrity: sha512-f+s8CvyzPtMFY1eZKkIHGhPsQgYo5qCm6O8KZoim9qm1/jT64qBgGpO5tHscNH6BzRHM+edLNOP+3vO8+8pE/A==} + '@volar/language-core@2.4.11': resolution: {integrity: sha512-lN2C1+ByfW9/JRPpqScuZt/4OrUUse57GLI6TbLgTIqBVemdl1wNcZ1qYGEo2+Gw8coYLgCy7SuKqn6IrQcQgg==} - '@volar/language-core@2.4.4': - resolution: {integrity: sha512-kO9k4kTLfxpg+6lq7/KAIv3m2d62IHuCL6GbVgYZTpfKvIGoAIlDxK7pFcB/eczN2+ydg/vnyaeZ6SGyZrJw2w==} - '@volar/source-map@2.4.11': resolution: {integrity: sha512-ZQpmafIGvaZMn/8iuvCFGrW3smeqkq/IIh9F1SdSx9aUl0J4Iurzd6/FhmjNO5g2ejF3rT45dKskgXWiofqlZQ==} - '@volar/source-map@2.4.4': - resolution: {integrity: sha512-xG3PZqOP2haG8XG4Pg3PD1UGDAdqZg24Ru8c/qYjYAnmcj6GBR64mstx+bZux5QOyRaJK+/lNM/RnpvBD3489g==} - '@volar/typescript@2.4.11': resolution: {integrity: sha512-2DT+Tdh88Spp5PyPbqhyoYavYCPDsqbHLFwcUI9K1NlY1YgUJvujGdrqUp0zWxnW7KWNTr3xSpMuv2WnaTKDAw==} @@ -3154,8 +3223,17 @@ packages: resolution: {integrity: sha512-icXQSR6SeGL6kr9koJw9zkDZqWyFXgpJG8kTaDydjZhy9/V0MQB9tYyibvRgJHlk98SDJJhPLCouTdqOdn+riw==} engines: {node: '>=18.0.0'} - '@vue-macros/common@1.15.1': - resolution: {integrity: sha512-O0ZXaladWXwHplQnSjxLbB/G1KpdWCUNJPNYVHIxHonGex1BGpoB4fBZZLgddHgAiy18VZG/Iu5L0kwG+SV7JQ==} + '@vue-macros/common@1.15.0': + resolution: {integrity: sha512-yg5VqW7+HRfJGimdKvFYzx8zorHUYo0hzPwuraoC1DWa7HHazbTMoVsHDvk3JHa1SGfSL87fRnzmlvgjEHhszA==} + engines: {node: '>=16.14.0'} + peerDependencies: + vue: 3.5.13 + peerDependenciesMeta: + vue: + optional: true + + '@vue-macros/common@1.16.1': + resolution: {integrity: sha512-Pn/AWMTjoMYuquepLZP813BIcq8DTZiNCoaceuNlvaYuOTd8DqBZWc5u0uOMQZMInwME1mdSmmBAcTluiV9Jtg==} engines: {node: '>=16.14.0'} peerDependencies: vue: 3.5.13 @@ -3169,7 +3247,7 @@ packages: '@vue/babel-plugin-jsx@1.2.5': resolution: {integrity: sha512-zTrNmOd4939H9KsRIGmmzn3q2zvv1mjxkYZHgqHZgDrXz5B1Q3WyGEjO2f+JrmKghvl1JIRcvo63LgM1kH5zFg==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': 7.26.0 peerDependenciesMeta: '@babel/core': optional: true @@ -3177,7 +3255,7 @@ packages: '@vue/babel-plugin-resolve-type@1.2.5': resolution: {integrity: sha512-U/ibkQrf5sx0XXRnUZD1mo5F7PkpKyTbfXM3a3rC4YnUz6crHEz9Jg09jzzL6QYlXNto/9CePdOg/c87O4Nlfg==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': 7.26.0 '@vue/compiler-core@3.5.13': resolution: {integrity: sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==} @@ -3197,28 +3275,25 @@ packages: '@vue/devtools-api@6.6.4': resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==} - '@vue/devtools-api@7.4.5': - resolution: {integrity: sha512-PX9uXirHOY2P99kb1cP3DxWZojFW3acNMqd+l4i5nKcqY59trXTOfwDZXt2Qifu0OU1izAQb76Ur6NPVldF2KQ==} + '@vue/devtools-api@7.7.0': + resolution: {integrity: sha512-bHEv6kT85BHtyGgDhE07bAUMAy7zpv6nnR004nSTd0wWMrAOtcrYoXO5iyr20Hkf5jR8obQOfS3byW+I3l2CCA==} '@vue/devtools-core@7.6.8': resolution: {integrity: sha512-8X4roysTwzQ94o7IobjVcOd1aZF5iunikrMrHPI2uUdigZCi2kFTQc7ffYiFiTNaLElCpjOhCnM7bo7aK1yU7A==} peerDependencies: vue: 3.5.13 - '@vue/devtools-kit@7.4.5': - resolution: {integrity: sha512-Uuki4Z6Bc/ExvtlPkeDNGSAe4580R+HPcVABfTE9TF7BTz3Nntk7vxIRUyWblZkUEcB/x+wn2uofyt5i2LaUew==} - '@vue/devtools-kit@7.6.8': resolution: {integrity: sha512-JhJ8M3sPU+v0P2iZBF2DkdmR9L0dnT5RXJabJqX6o8KtFs3tebdvfoXV2Dm3BFuqeECuMJIfF1aCzSt+WQ4wrw==} - '@vue/devtools-shared@7.4.5': - resolution: {integrity: sha512-2XgUOkL/7QDmyYI9J7cm+rz/qBhcGv+W5+i1fhwdQ0HQ1RowhdK66F0QBuJSz/5k12opJY8eN6m03/XZMs7imQ==} + '@vue/devtools-kit@7.7.0': + resolution: {integrity: sha512-5cvZ+6SA88zKC8XiuxUfqpdTwVjJbvYnQZY5NReh7qlSGPvVDjjzyEtW+gdzLXNSd8tStgOjAdMCpvDQamUXtA==} '@vue/devtools-shared@7.7.0': resolution: {integrity: sha512-jtlQY26R5thQxW9YQTpXbI0HoK0Wf9Rd4ekidOkRvSy7ChfK0kIU6vvcBtjj87/EcpeOSK49fZAicaFNJcoTcQ==} - '@vue/language-core@2.1.6': - resolution: {integrity: sha512-MW569cSky9R/ooKMh6xa2g1D0AtRKbL56k83dzus/bx//RDJk24RHWkMzbAlXjMdDNyxAaagKPRquBIxkxlCkg==} + '@vue/language-core@2.1.10': + resolution: {integrity: sha512-DAI289d0K3AB5TUG3xDp9OuQ71CnrujQwJrQnfuZDwo6eGNf0UoRlPuaVNO+Zrn65PC3j0oB2i7mNmVPggeGeQ==} peerDependencies: typescript: 5.7.3 peerDependenciesMeta: @@ -3253,14 +3328,11 @@ packages: '@vue/test-utils@2.4.6': resolution: {integrity: sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==} - '@vueuse/core@11.3.0': - resolution: {integrity: sha512-7OC4Rl1f9G8IT6rUfi9JrKiXy4bfmHhZ5x2Ceojy0jnd3mHNEvV4JaRygH362ror6/NZ+Nl+n13LPzGiPN8cKA==} + '@vueuse/core@11.1.0': + resolution: {integrity: sha512-P6dk79QYA6sKQnghrUz/1tHi0n9mrb/iO1WTMk/ElLmTyNqgDeSZ3wcDf6fRBGzRJbeG1dxzEOvLENMjr+E3fg==} - '@vueuse/core@12.4.0': - resolution: {integrity: sha512-XnjQYcJwCsyXyIafyA6SvyN/OBtfPnjvJmbxNxQjCcyWD198urwm5TYvIUUyAxEAN0K7HJggOgT15cOlWFyLeA==} - - '@vueuse/integrations@12.4.0': - resolution: {integrity: sha512-EZm+TLoZMeEwDnccnEqB54CvvcVKbVnJubOF380HqdyZAxWfQ8egnFCESdlXWEIbxFgjfhcGfZUvQx5Nqw9Ofw==} + '@vueuse/integrations@11.1.0': + resolution: {integrity: sha512-O2ZgrAGPy0qAjpoI2YR3egNgyEqwG85fxfwmA9BshRIGjV4G6yu6CfOPpMHAOoCD+UfsIl7Vb1bXJ6ifrHYDDA==} peerDependencies: async-validator: ^4 axios: ^1 @@ -3300,22 +3372,16 @@ packages: universal-cookie: optional: true - '@vueuse/metadata@11.3.0': - resolution: {integrity: sha512-pwDnDspTqtTo2HwfLw4Rp6yywuuBdYnPYDq+mO38ZYKGebCUQC/nVj/PXSiK9HX5otxLz8Fn7ECPbjiRz2CC3g==} + '@vueuse/metadata@11.1.0': + resolution: {integrity: sha512-l9Q502TBTaPYGanl1G+hPgd3QX5s4CGnpXriVBR5fEZ/goI6fvDaVmIl3Td8oKFurOxTmbXvBPSsgrd6eu6HYg==} - '@vueuse/metadata@12.4.0': - resolution: {integrity: sha512-AhPuHs/qtYrKHUlEoNO6zCXufu8OgbR8S/n2oMw1OQuBQJ3+HOLQ+EpvXs+feOlZMa0p8QVvDWNlmcJJY8rW2g==} - - '@vueuse/nuxt@12.4.0': - resolution: {integrity: sha512-3T4YTIxbScSfYPF6+EodL04b54CtaKwaPg+BQcod1BDa3j0afxbDlhqWv7uobacLR5xYWy+hITnmgT+TJQsdWA==} + '@vueuse/nuxt@11.1.0': + resolution: {integrity: sha512-ZPYigcqgPPe9vk9nBHLF8p0zshX8qvWV/ox1Y4GdV4k2flPiw7+2THNTpU2NZDBXSOXlhB2sao+paGCsvJm/Qw==} peerDependencies: nuxt: workspace:* - '@vueuse/shared@11.3.0': - resolution: {integrity: sha512-P8gSSWQeucH5821ek2mn/ciCk+MS/zoRKqdQIM3bHq6p7GXDAJLmnRRKmF5F65sAVJIfzQlwR3aDzwCn10s8hA==} - - '@vueuse/shared@12.4.0': - resolution: {integrity: sha512-9yLgbHVIF12OSCojnjTIoZL1+UA10+O4E1aD6Hpfo/DKVm5o3SZIwz6CupqGy3+IcKI8d6Jnl26EQj/YucnW0Q==} + '@vueuse/shared@11.1.0': + resolution: {integrity: sha512-YUtIpY122q7osj+zsNMFAfMTubGz0sn5QzE5gPzAIiCmtt2ha3uQUY1+JPyL4gRCTsLPX82Y9brNbo/aqlA91w==} '@webassemblyjs/ast@1.14.1': resolution: {integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==} @@ -3368,6 +3434,9 @@ packages: '@xtuc/long@4.2.2': resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} + abbrev@1.1.1: + resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} + abbrev@2.0.0: resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -3400,8 +3469,12 @@ packages: engines: {node: '>=0.4.0'} hasBin: true - agent-base@7.1.3: - resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==} + agent-base@6.0.2: + resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} + engines: {node: '>= 6.0.0'} + + agent-base@7.1.1: + resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==} engines: {node: '>= 14'} aggregate-error@3.1.0: @@ -3432,8 +3505,11 @@ packages: ajv@8.17.1: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} - alien-signals@0.4.14: - resolution: {integrity: sha512-itUAVzhczTmP2U5yX67xVpsbbOiquusbWVyA9N+sy6+r6YVbFkahXvNCeEPWEOMhwDYwbVbGHFkVL03N9I5g+Q==} + alien-signals@0.2.0: + resolution: {integrity: sha512-StlonZhBBrsPPwrDjiPAiVTf/rolxffLxVPT60Qv/t88BZ81BvUVzHgGqEFvJ1ii8HXtm1+zU2Icr59tfWEcag==} + + alien-signals@0.4.9: + resolution: {integrity: sha512-piRGlMgQ65uRiY06mGU7I432AwPwAGf64TK1RXtM1Px4pPfLMTGI9TmsHTfioW1GukZRsNzkVQ/uHjhhd231Ow==} ansi-colors@4.1.3: resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} @@ -3476,9 +3552,9 @@ packages: resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} - ansis@3.8.1: - resolution: {integrity: sha512-gzGUTqsBugYCegbhldz7Ox9NrizAlCSAP5Y6rRD9agN76osoyhKznznmaB4G5BAVvrqwksPOGdnYh1Q000cUqw==} - engines: {node: '>=16'} + ansis@3.3.2: + resolution: {integrity: sha512-cFthbBlt+Oi0i9Pv/j6YdVWJh54CtjGACaMPCIrEV4Ha7HWsIjXDwseYV79TIL0B4+KfSwD5S70PeQDkPUd1rA==} + engines: {node: '>=15'} any-promise@1.3.0: resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} @@ -3487,6 +3563,9 @@ packages: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} + aproba@2.0.0: + resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} + archiver-utils@5.0.2: resolution: {integrity: sha512-wuLJMmIBQYCsGZgYLTy5FIB2pF6Lfb6cXMSF8Qywwk3t20zWnAi7zLcQFdKQmIB8wyZpY5ER38x08GbwtR2cLA==} engines: {node: '>= 14'} @@ -3499,6 +3578,11 @@ packages: resolution: {integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==} engines: {node: '>=14'} + are-we-there-yet@2.0.0: + resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==} + engines: {node: '>=10'} + deprecated: This package is no longer supported. + argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} @@ -3522,14 +3606,14 @@ packages: resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} engines: {node: '>=12'} - ast-kit@1.1.0: - resolution: {integrity: sha512-RlNqd4u6c/rJ5R+tN/ZTtyNrH8X0NHCvyt6gD8RHa3JjzxxHWoyaU0Ujk3Zjbh7IZqrYl1Sxm6XzZifmVxXxHQ==} - engines: {node: '>=16.14.0'} - ast-kit@1.3.2: resolution: {integrity: sha512-gdvX700WVC6sHCJQ7bJGfDvtuKAh6Sa6weIZROxfzUZKP7BjvB8y0SMlM/o4omSQ3L60PQSJROBJsb0vEViVnA==} engines: {node: '>=16.14.0'} + ast-kit@1.4.0: + resolution: {integrity: sha512-BlGeOw73FDsX7z0eZE/wuuafxYoek2yzNJ6l6A1nsb4+z/p87TOPbHaWuN53kFKNuUXiCQa2M+xLF71IqQmRSw==} + engines: {node: '>=16.14.0'} + ast-walker-scope@0.6.2: resolution: {integrity: sha512-1UWOyC50xI3QZkRuDj6PqDtpm1oHWtYs+NQGwqL/2R11eN3Q81PHAHPM0SWW3BNQm53UDwS//Jv8L4CCVLM1bQ==} engines: {node: '>=16.14.0'} @@ -3540,17 +3624,23 @@ packages: async@3.2.6: resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} + asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + autoprefixer@10.4.20: resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==} engines: {node: ^10 || ^12 || >=14} hasBin: true peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 available-typed-arrays@1.0.7: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} + axios@1.7.9: + resolution: {integrity: sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==} + b4a@1.6.6: resolution: {integrity: sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==} @@ -3574,6 +3664,9 @@ packages: resolution: {integrity: sha512-Ljqskqx/tbZagIglYoJIMzH5zgssyp+in9+9sAyh15N22AornBeIDnb8EZ6Rk+6ShfMxd92uO3gfpT0NtZbpow==} engines: {node: '>=14.0.0'} + before-after-hook@2.2.3: + resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==} + big.js@5.2.2: resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} @@ -3584,9 +3677,6 @@ packages: bindings@1.5.0: resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} - birpc@0.2.17: - resolution: {integrity: sha512-+hkTxhot+dWsLpp3gia5AkVHIsKlZybNT5gIYiDlNzJrmYPcTM9k5/w2uaj3IPpd7LlEYpmCj4Jj1nC41VhDFg==} - birpc@0.2.19: resolution: {integrity: sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==} @@ -3603,13 +3693,8 @@ packages: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} - browserslist@4.23.3: - resolution: {integrity: sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - - browserslist@4.24.4: - resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==} + browserslist@4.24.0: + resolution: {integrity: sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true @@ -3657,6 +3742,9 @@ packages: resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} engines: {node: '>= 0.4'} + call-me-maybe@1.0.2: + resolution: {integrity: sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==} + callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} @@ -3664,11 +3752,8 @@ packages: caniuse-api@3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} - caniuse-lite@1.0.30001660: - resolution: {integrity: sha512-GacvNTTuATm26qC74pt+ad1fW15mlQ/zuTzzY1ZoIzECTP8HURDfF43kNxPgf7H1jmelCBQTTbBNxdSXOA7Bqg==} - - caniuse-lite@1.0.30001692: - resolution: {integrity: sha512-A95VKan0kdtrsnMubMKxEKUKImOPSuCpYgxSQBo036P5YYgVIcOYJEgt/txJWqObiRQeISNCfef9nvlQ0vbV7A==} + caniuse-lite@1.0.30001667: + resolution: {integrity: sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==} case-police@0.7.2: resolution: {integrity: sha512-qxIuluIS2DdugnuveaTXrN+++BcjRZkoNXIc+2yIFDZlAl72YekXhr/M1xzfOGU445nZKi4ruIZbp0qz1YBEFQ==} @@ -3742,10 +3827,6 @@ packages: resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} engines: {node: '>=10'} - chownr@3.0.0: - resolution: {integrity: sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==} - engines: {node: '>=18'} - chrome-trace-event@1.0.4: resolution: {integrity: sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==} engines: {node: '>=6.0'} @@ -3813,6 +3894,10 @@ packages: color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + color-support@1.1.3: + resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} + hasBin: true + colord@2.9.3: resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==} @@ -3822,6 +3907,10 @@ packages: colorette@2.0.20: resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + comma-separated-tokens@2.0.3: resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} @@ -3862,25 +3951,22 @@ packages: resolution: {integrity: sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==} engines: {node: '>= 14'} - computeds@0.0.1: - resolution: {integrity: sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==} - concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - confbox@0.1.7: - resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} - confbox@0.1.8: resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} config-chain@1.1.13: resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} - consola@3.3.3: - resolution: {integrity: sha512-Qil5KwghMzlqd51UXM0b6fyaGHtOC22scxrwrz4A2882LyUMwQjnvaedN1HAeXzphspQ6CpHkzMAWxBTUruDLg==} + consola@3.4.0: + resolution: {integrity: sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA==} engines: {node: ^14.18.0 || >=16.10.0} + console-control-strings@1.1.0: + resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} + constantinople@4.0.1: resolution: {integrity: sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==} @@ -3930,18 +4016,14 @@ packages: resolution: {integrity: sha512-piICUB6ei4IlTv1+653yq5+KoqfBYmj9bw6LqXoOneTMDXk5nM1qt12mFW1caG3LlJXEKW1Bp0WggEmIfQB34g==} engines: {node: '>= 14'} - croner@8.1.1: - resolution: {integrity: sha512-1VdUuRnQP4drdFkS8NKvDR1NBgevm8TOuflcaZEKsxw42CxonjW/2vkj1AKlinJb4ZLwBcuWF9GiPr7FQc6AQA==} + croner@8.1.2: + resolution: {integrity: sha512-ypfPFcAXHuAZRCzo3vJL6ltENzniTjwe/qsLleH1V2/7SRDjgvRQyrLmumFTLmjFax4IuSxfGXEn79fozXcJog==} engines: {node: '>=18.0'} cronstrue@2.52.0: resolution: {integrity: sha512-NKgHbWkSZXJUcaBHSsyzC8eegD6bBd4O0oCI6XMIJ+y4Bq3v4w7sY3wfWoKPuVlq9pQHRB6od0lmKpIqi8TlKA==} hasBin: true - cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} - engines: {node: '>= 8'} - cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} @@ -3954,11 +4036,14 @@ packages: uWebSockets.js: optional: true + crossws@0.3.2: + resolution: {integrity: sha512-S2PpQHRcgYABOS2465b34wqTOn5dbLL+iSvyweJYGGFLDsKq88xrjDXUiEhfYkhWZq1HuS6of3okRHILbkrqxw==} + css-declaration-sorter@7.2.0: resolution: {integrity: sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==} engines: {node: ^14 || ^16 || >=18} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 css-loader@7.1.2: resolution: {integrity: sha512-6WvYYn7l/XEGN8Xu2vWFt9nVzrCn39vKyTEFf/ExEyoksJjjSZV/0/35XPlMbpnr6VGhZIUg5yJrL8tGfes/FA==} @@ -4025,19 +4110,19 @@ packages: resolution: {integrity: sha512-ZzrgYupYxEvdGGuqL+JKOY70s7+saoNlHSCK/OGn1vB2pQK8KSET8jvenzItcY+kA7NoWvfbb/YhlzuzNKjOhQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 cssnano-utils@5.0.0: resolution: {integrity: sha512-Uij0Xdxc24L6SirFr25MlwC2rCFX6scyUmuKpzI+JQ7cyqDEwD42fJ0xfB3yLfOnRDU5LKGgjQ9FA6LYh76GWQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 cssnano@7.0.6: resolution: {integrity: sha512-54woqx8SCbp8HwvNZYn68ZFAepuouZW4lTwiMVnBErM3VkO7/Sd4oTOt3Zz3bPx3kxQ36aISppyXj2Md4lg8bw==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 csso@5.0.5: resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==} @@ -4077,15 +4162,6 @@ packages: supports-color: optional: true - debug@4.3.7: - resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - debug@4.4.0: resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} engines: {node: '>=6.0'} @@ -4098,6 +4174,10 @@ packages: decode-named-character-reference@1.0.2: resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} + decode-uri-component@0.4.1: + resolution: {integrity: sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==} + engines: {node: '>=14.16'} + deep-eql@4.1.4: resolution: {integrity: sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==} engines: {node: '>=6'} @@ -4151,6 +4231,13 @@ packages: defu@6.1.4: resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} + delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + + delegates@1.0.0: + resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} + denque@2.1.0: resolution: {integrity: sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==} engines: {node: '>=0.10'} @@ -4159,6 +4246,9 @@ packages: resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} engines: {node: '>= 0.8'} + deprecation@2.3.1: + resolution: {integrity: sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==} + dequal@2.0.3: resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} engines: {node: '>=6'} @@ -4233,10 +4323,6 @@ packages: resolution: {integrity: sha512-1gxPBJpI/pcjQhKgIU91II6Wkay+dLcN3M6rf2uwP8hRur3HtQXjVrdAK3sjC0piaEuxzMwjXChcETiJl47lAQ==} engines: {node: '>=18'} - dotenv@16.4.5: - resolution: {integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==} - engines: {node: '>=12'} - dotenv@16.4.7: resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==} engines: {node: '>=12'} @@ -4258,11 +4344,8 @@ packages: ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - electron-to-chromium@1.5.19: - resolution: {integrity: sha512-kpLJJi3zxTR1U828P+LIUDZ5ohixyo68/IcYOHLqnbTPr/wdgn4i1ECvmALN9E16JPA6cvCG5UG79gVwVdEK5w==} - - electron-to-chromium@1.5.80: - resolution: {integrity: sha512-LTrKpW0AqIuHwmlVNV+cjFYTnXtM9K37OGhpe0ZI10ScPSxqVSryZHIY3WnCS5NSYbBODRTZyhRMS2h5FAEqAw==} + electron-to-chromium@1.5.32: + resolution: {integrity: sha512-M+7ph0VGBQqqpTT2YrabjNKSQ2fEl9PVx6AK3N558gDH9NO8O6XN9SXXFWRo9u9PbEg/bWq+tjXQr+eXmxubCw==} emoji-regex-xs@1.0.0: resolution: {integrity: sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==} @@ -4283,10 +4366,6 @@ packages: emoticon@4.1.0: resolution: {integrity: sha512-VWZfnxqwNcc51hIy/sbOdEem6D+cVtpPzEEtVAFdaas30+1dgkyaOQ4sQ6Bp0tOMqWO1v+HQfYaoodOkdhK6SQ==} - encodeurl@1.0.2: - resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} - engines: {node: '>= 0.8'} - encodeurl@2.0.0: resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} engines: {node: '>= 0.8'} @@ -4295,10 +4374,6 @@ packages: resolution: {integrity: sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==} engines: {node: '>=6.9.0'} - enhanced-resolve@5.17.1: - resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==} - engines: {node: '>=10.13.0'} - enhanced-resolve@5.18.0: resolution: {integrity: sha512-0/r0MySGYG8YqlayBZ6MuCfECmHFdJ5qyPh8s8wa5Hnm6SaFLSK1VYCbj+NKp090Nm1caZhD+QTnmxO7esYGyQ==} engines: {node: '>=10.13.0'} @@ -4349,8 +4424,8 @@ packages: es-get-iterator@1.1.3: resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} - es-module-lexer@1.5.4: - resolution: {integrity: sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==} + es-module-lexer@1.6.0: + resolution: {integrity: sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==} esbuild-loader@4.2.2: resolution: {integrity: sha512-Mdq/A1L8p37hkibp8jGFwuQTDSWhDmlueAefsrCPRwNWThEOlQmIglV7Gd6GE2mO5bt7ksfxKOMwkuY7jjVTXg==} @@ -4421,8 +4496,8 @@ packages: resolution: {integrity: sha512-brcKcxGnISN2CcVhXJ/kEQlNa0MEfGRtwKtWA16SkqXHKitaKIMrfemJKLKX1YqDU5C/5JY3PvZXd5jEW04e0Q==} engines: {node: '>=5.0.0'} - eslint-plugin-perfectionist@4.6.0: - resolution: {integrity: sha512-kOswTebUK0LlYExRwqz7YQtvyTUIRsKfp8XrwBBeHGh2e8MBOS6K+7VvG6HpmNckyKySi1I96uPeAlptMFGcRQ==} + eslint-plugin-perfectionist@4.7.0: + resolution: {integrity: sha512-e2ODzm2SsAztFWY3ZRJd1K702vyl8Sapacjc3JluOW294CfA3+jfjin+UxjcrK48EvlNIMOp+JJB9N54YR2LRw==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: eslint: '>=8.0.0' @@ -4547,9 +4622,6 @@ packages: extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} - externality@1.0.2: - resolution: {integrity: sha512-LyExtJWKxtgVzmgtEHyQtLFpw1KFhQphF9nTG8TpAIVkiI/xQ3FJh75tRFLYl4hkn7BNIIdLJInuDAavX35pMw==} - fake-indexeddb@6.0.0: resolution: {integrity: sha512-YEboHE5VfopUclOck7LncgIqskAqnv4q0EWbYCaxKKjAvO93c+TJIaBuGy8CBFdbg9nKdpN3AuPRwVBJ4k7NrQ==} engines: {node: '>=18'} @@ -4560,10 +4632,6 @@ packages: fast-fifo@1.3.2: resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} - fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} - fast-glob@3.3.3: resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} engines: {node: '>=8.6.0'} @@ -4583,14 +4651,6 @@ packages: fastq@1.17.1: resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} - fdir@6.3.0: - resolution: {integrity: sha512-QOnuT+BOtivR77wYvCWHfGt9s4Pz1VIMbD463vegT5MLqNXy8rYFT/lPVEqf/bhYeT6qmqrNHhsX+rWwe3rOCQ==} - peerDependencies: - picomatch: ^3 || ^4 - peerDependenciesMeta: - picomatch: - optional: true - fdir@6.4.2: resolution: {integrity: sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==} peerDependencies: @@ -4619,6 +4679,10 @@ packages: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} + filter-obj@5.1.0: + resolution: {integrity: sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==} + engines: {node: '>=14.16'} + find-up-simple@1.0.0: resolution: {integrity: sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==} engines: {node: '>=18'} @@ -4631,6 +4695,10 @@ packages: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} + find-up@6.3.0: + resolution: {integrity: sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + flat-cache@4.0.1: resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} engines: {node: '>=16'} @@ -4640,9 +4708,6 @@ packages: engines: {node: '>=18'} hasBin: true - flatted@3.3.1: - resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} - flatted@3.3.2: resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} @@ -4655,8 +4720,17 @@ packages: '@nuxt/kit': optional: true - focus-trap@7.6.4: - resolution: {integrity: sha512-xx560wGBk7seZ6y933idtjJQc1l+ck+pI3sKvhKozdBV1dRZoKhkW5xoCaFv9tQiX5RH1xfSxjuNu6g+lmN/gw==} + focus-trap@7.6.0: + resolution: {integrity: sha512-1td0l3pMkWJLFipobUcGaf+5DTY4PLDDrcqoSaKP8ediO/CoWCCYk/fT/Y2A4e6TNB+Sh6clRJCjOPPnKoNHnQ==} + + follow-redirects@1.15.9: + resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true for-each@0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} @@ -4672,6 +4746,10 @@ packages: typescript: 5.7.3 webpack: ^5.11.0 + form-data@4.0.1: + resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} + engines: {node: '>= 6'} + fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} @@ -4712,6 +4790,11 @@ packages: resolution: {integrity: sha512-14F4hBIxqKvD4Zz/XjDc3y94mNZN6pRv3U13Udo0lNLCWRBUsrMv2xwcF/y/Z5sV6+FQW+/ow68cHpm4sunt8Q==} engines: {node: '>=10'} + gauge@3.0.2: + resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==} + engines: {node: '>=10'} + deprecated: This package is no longer supported. + gensync@1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} @@ -4823,11 +4906,11 @@ packages: resolution: {integrity: sha512-O1Ld7Dr+nqPnmGpdhzLmMTQ4vAsD+rHwMm1NLUmoUFFymBOMKxCCrtDxqdBRYXdeEPEi3SyoR4TizJLQrnKBNA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - h3-nightly@2.0.0-1718872656.6765a6e: - resolution: {integrity: sha512-LQ8hHOIzk+agD1p0K7UosByKuzDAKGLTnYsP0syV/XMr9E7pWmoaDSWkGdWjtLR9O3hinNqrXU1NW0kTmhiSag==} + h3-nightly@1.14.0-20250122-114730-3f9e703: + resolution: {integrity: sha512-mAl1YHJq2fwAIVXBaDCQD9uIiAFs+Jl3uNg6vGFfHG8VPHzcEqFbImUE83wCLHYCxC68qSjEnkaDCRzO8SNQAA==} - happy-dom@16.5.3: - resolution: {integrity: sha512-7zGnyROZuntn+5X84MQ535qiQ3ccm45uHl+Q7EFAcPP0NhkbrfPitqprz0GgszX91/QqsZKQ7nTYkyObCTDUjg==} + happy-dom@16.7.2: + resolution: {integrity: sha512-zOzw0xyYlDaF/ylwbAsduYZZVRTd5u7IwlFkGbEathIeJMLp3vrN3cHm3RS7PZpD9gr/IO16bHEswcgNyWTsqw==} engines: {node: '>=18.0.0'} has-bigints@1.0.2: @@ -4856,6 +4939,9 @@ packages: resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} engines: {node: '>= 0.4'} + has-unicode@2.0.1: + resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==} + hash-sum@2.0.0: resolution: {integrity: sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==} @@ -4884,8 +4970,8 @@ packages: hast-util-to-parse5@8.0.0: resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} - hast-util-to-string@3.0.0: - resolution: {integrity: sha512-OGkAxX1Ua3cbcW6EJ5pT/tslVb90uViVkcJ4ZZIMW/R33DX/AkcJcRrPebPwJkHYwlDHXz4aIwvAAaAdtrACFA==} + hast-util-to-string@3.0.1: + resolution: {integrity: sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==} hast-util-whitespace@3.0.0: resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} @@ -4946,7 +5032,7 @@ packages: resolution: {integrity: sha512-kAERyg/LuNZYmdqgCdYvugyLWNFAm8MWXpQMz1pLpetmCbFwoMxvkSoaAMlFrOC4OKTWI4KlZGT/RsNxg4ghOw==} peerDependencies: cssnano: ^7.0.0 - postcss: 8.4.49 + postcss: 8.5.1 purgecss: ^6.0.0 relateurl: ^0.2.7 srcset: 5.0.1 @@ -4985,8 +5071,12 @@ packages: resolution: {integrity: sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw==} engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} - https-proxy-agent@7.0.6: - resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} + https-proxy-agent@5.0.1: + resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} + engines: {node: '>= 6'} + + https-proxy-agent@7.0.5: + resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==} engines: {node: '>= 14'} httpxy@0.1.5: @@ -5008,7 +5098,7 @@ packages: resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} @@ -5021,8 +5111,8 @@ packages: resolution: {integrity: sha512-InwqeHHN2XpumIkMvpl/DCJVrAHgCsG5+cn1XlnLWGwtZBm8QJfSusItfrwx81CTp5agNZqpKU2J/ccC5nGT4A==} engines: {node: '>= 4'} - ignore@7.0.0: - resolution: {integrity: sha512-lcX8PNQygAa22u/0BysEY8VhaFRzlOkvdlKczDPnJvrkJD1EuqzEky5VYYKM2iySIuaVIDv9N190DfSreSLw2A==} + ignore@7.0.3: + resolution: {integrity: sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA==} engines: {node: '>= 4'} image-meta@0.2.1: @@ -5035,6 +5125,9 @@ packages: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} + importx@0.4.4: + resolution: {integrity: sha512-Lo1pukzAREqrBnnHC+tj+lreMTAvyxtkKsMxLY8H15M/bvLl54p3YuoTI70Tz7Il0AsgSlD7Lrk/FaApRcBL7w==} + importx@0.5.1: resolution: {integrity: sha512-YrRaigAec1sC2CdIJjf/hCH1Wp9Ii8Cq5ROw4k5nJ19FVl2FcJUHZ5gGIb1vs8+JNYIyOJpc2fcufS2330bxDw==} @@ -5272,9 +5365,17 @@ packages: isarray@2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + isbinaryfile@5.0.4: + resolution: {integrity: sha512-YKBKVkKhty7s8rxddb40oOkuP0NbaeXrQvLin6QMHL7Ypiy2RW9LwOVrVgZRyOrhQlayMd9t+D8yDy8MKFTSDQ==} + engines: {node: '>= 18.0.0'} + isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + isomorphic-rslog@0.0.6: + resolution: {integrity: sha512-HM0q6XqQ93psDlqvuViNs/Ea3hAyGDkIdVAHlrEocjjAwGrs1fZ+EdQjS9eUPacnYB7Y8SoDdSY3H8p3ce205A==} + engines: {node: '>=14.17.6'} + istanbul-lib-coverage@3.2.2: resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} engines: {node: '>=8'} @@ -5310,6 +5411,10 @@ packages: resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jiti@1.21.6: + resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} + hasBin: true + jiti@2.4.2: resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} hasBin: true @@ -5348,11 +5453,6 @@ packages: resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} hasBin: true - jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} - hasBin: true - jsesc@3.0.2: resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} engines: {node: '>=6'} @@ -5417,12 +5517,12 @@ packages: resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==} engines: {node: '>= 8'} - knip@5.42.0: - resolution: {integrity: sha512-/+/GV+oIJ0A2l2LBaiHvp4sGj448T1EMQm2S1I6sPh9AIR9riBaYY19ZYq743Ql/GR0lgwwGoQ2UKNp0B93HNA==} + knip@5.43.1: + resolution: {integrity: sha512-U910KCyDnQPvXqcIqCRa5y3x9Uww8PcKttyyGb9KSH4uiXCSB/iWMDcbgEFNAqMkJS8S9wAAIWrCOXew5B4dSg==} engines: {node: '>=18.18.0'} hasBin: true peerDependencies: - '@types/node': 22.10.5 + '@types/node': 22.10.10 typescript: 5.7.3 knitwork@1.2.0: @@ -5456,10 +5556,6 @@ packages: resolution: {integrity: sha512-MLK5hj3vViLbs/RDgi/tY7rhi9ifiwnKppUF21mH2DqqMznvZhZ8TnjI0W6ZS0iCsl1qGAiHrUIMhjK7xrJstg==} engines: {node: '>=18.6.0'} - listhen@1.7.2: - resolution: {integrity: sha512-7/HamOm5YD9Wb7CFgAZkKgVPA96WwhcTQoqtm2VTZGVbVVn3IWKRBTgrU7cchA3Q8k9iCsG8Osoi9GX4JsGM9g==} - hasBin: true - listhen@1.9.0: resolution: {integrity: sha512-I8oW2+QL5KJo8zXNWX046M134WchxsXC7SawLPvRQpogCbkyQIaFxPE89A2HiwR7vAK2Dm2ERBAmyjTYGYEpBg==} hasBin: true @@ -5480,10 +5576,6 @@ packages: resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==} engines: {node: '>=8.9.0'} - local-pkg@0.5.0: - resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} - engines: {node: '>=14'} - local-pkg@0.5.1: resolution: {integrity: sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==} engines: {node: '>=14'} @@ -5500,12 +5592,19 @@ packages: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} + locate-path@7.2.0: + resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + lodash.defaults@4.2.0: resolution: {integrity: sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==} lodash.isarguments@3.1.0: resolution: {integrity: sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==} + lodash.isequal@4.5.0: + resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==} + lodash.memoize@4.1.2: resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} @@ -5524,9 +5623,6 @@ packages: loupe@2.3.7: resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} - loupe@3.1.1: - resolution: {integrity: sha512-edNu/8D5MKVfGVFRhFf8aAxiTM6Wumfz5XsaatSxlD3w4R1d/WEKUTydCdPGbl9K7QG/Ca3GnDV2sIKIpXRQcw==} - loupe@3.1.2: resolution: {integrity: sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==} @@ -5544,8 +5640,12 @@ packages: resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} hasBin: true - magic-string-ast@0.6.3: - resolution: {integrity: sha512-C9sgUzVZtUtzCBoMdYtwrIRQ4IucGRFGgdhkjL7PXsVfPYmTuWtewqzk7dlipaCMWH/gOYehW9rgMoa4Oebtpw==} + magic-string-ast@0.6.2: + resolution: {integrity: sha512-oN3Bcd7ZVt+0VGEs7402qR/tjgjbM7kPlH/z7ufJnzTLVBzXJITRHOJiwMmmYMgZfdoWQsfQcY+iKlxiBppnMA==} + engines: {node: '>=16.14.0'} + + magic-string-ast@0.7.0: + resolution: {integrity: sha512-686fgAHaJY7wLTFEq7nnKqeQrhqmXB19d1HnqT35Ci7BN6hbAYLZUezTQ062uUHM7ggZEQlqJ94Ftls+KDXU8Q==} engines: {node: '>=16.14.0'} magic-string@0.30.17: @@ -5596,9 +5696,6 @@ packages: mdast-util-find-and-replace@3.0.1: resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} - mdast-util-from-markdown@2.0.1: - resolution: {integrity: sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==} - mdast-util-from-markdown@2.0.2: resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==} @@ -5626,8 +5723,8 @@ packages: mdast-util-to-hast@13.2.0: resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==} - mdast-util-to-markdown@2.1.0: - resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==} + mdast-util-to-markdown@2.1.2: + resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==} mdast-util-to-string@4.0.0: resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} @@ -5833,10 +5930,6 @@ packages: resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} engines: {node: '>= 8'} - minizlib@3.0.1: - resolution: {integrity: sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg==} - engines: {node: '>= 18'} - mitt@3.0.1: resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} @@ -5845,11 +5938,6 @@ packages: engines: {node: '>=10'} hasBin: true - mkdirp@3.0.1: - resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==} - engines: {node: '>=10'} - hasBin: true - mkdist@2.2.0: resolution: {integrity: sha512-GfKwu4A2grXfhj2TZm4ydfzP515NaALqKaPq4WqaZ6NhEnD47BiIQPySoCTTvVqHxYcuqVkNdCXjYf9Bz1Y04Q==} hasBin: true @@ -5868,8 +5956,8 @@ packages: vue-tsc: optional: true - mlly@1.7.3: - resolution: {integrity: sha512-xUsx5n/mN0uQf4V548PKQ+YShA4/IW0KI1dZhrNrPCLG+xizETbHTkOa1f8/xut9JRPp8kQuMnz0oqwkTiLo/A==} + mlly@1.7.4: + resolution: {integrity: sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==} mri@1.2.0: resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} @@ -5888,8 +5976,8 @@ packages: mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - nanoid@3.3.7: - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + nanoid@3.3.8: + resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true @@ -5898,8 +5986,8 @@ packages: engines: {node: ^18 || >=20} hasBin: true - nanotar@0.1.1: - resolution: {integrity: sha512-AiJsGsSF3O0havL1BydvI4+wR76sKT+okKRwWIaK96cZUnXqH0uNBOsHlbwZq3+m2BR1VKqHDVudl3gO4mYjpQ==} + nanotar@0.2.0: + resolution: {integrity: sha512-9ca1h0Xjvo9bEkE4UOxgAzLV0jHKe6LMaxo37ND2DAhhAtd0j8pR1Wxz+/goMrZO8AEZTWCmyaOsFI/W5AdpCQ==} natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} @@ -5911,8 +5999,8 @@ packages: neo-async@2.6.2: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} - nitro-nightly@3.0.0-beta-28796231.359af68d: - resolution: {integrity: sha512-/wD/WAhYsH866aRDuJ+dK73HLST2s2BNHaLAoNDhkNpTgHQbr1+5gVDwTnJFUHClUEt1PIir3QLDeb2O9r59xA==} + nitro-nightly@3.0.0-beta-28938837.19ec5395: + resolution: {integrity: sha512-6vMInOp9BVrhbjLwD3IXlG+WsfMwgazz55O75Jdwmd9SZpyI7JCaMZeTx8MD/A5g3k4x3iBqoXvBg5Xoc/aXTA==} engines: {node: ^16.11.0 || >=17.0.0} hasBin: true peerDependencies: @@ -5954,19 +6042,16 @@ packages: node-releases@2.0.18: resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} - node-releases@2.0.19: - resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} + nopt@5.0.0: + resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} + engines: {node: '>=6'} + hasBin: true nopt@7.2.1: resolution: {integrity: sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} hasBin: true - nopt@8.0.0: - resolution: {integrity: sha512-1L/fTJ4UmV/lUxT2Uf006pfZKTvAgCF+chz+0OgBHO8u2Z67pE7AaAUUj7CJy0lXqHmymUvGFt6NE9R3HER0yw==} - engines: {node: ^18.17.0 || >=20.5.0} - hasBin: true - normalize-package-data@2.5.0: resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} @@ -5994,6 +6079,10 @@ packages: resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + npmlog@5.0.1: + resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==} + deprecated: This package is no longer supported. + nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} @@ -6003,8 +6092,8 @@ packages: peerDependencies: '@nuxtjs/mdc': '>=0.5.0' - nypm@0.3.11: - resolution: {integrity: sha512-E5GqaAYSnbb6n1qZyik2wjPDZON43FqOJO59+3OkWrnmQtjggrMOVnsyzfjxp/tS6nlYJBA4zRA5jSM2YaadMg==} + nypm@0.3.12: + resolution: {integrity: sha512-D3pzNDWIvgA+7IORhD/IuWzEk4uXv6GsgOxiid4UU3h9oq5IqV1KtPDi63n4sZJ/xcWlr88c0QM2RgN5VbOhFA==} engines: {node: ^14.16.0 || >=16.10.0} hasBin: true @@ -6013,6 +6102,11 @@ packages: engines: {node: ^14.16.0 || >=16.10.0} hasBin: true + nypm@0.5.0: + resolution: {integrity: sha512-+2aEZ9h9Ocvsq1AR9hXsCsRW/7ZFVoPbk3GpYBCosKI1WuSyni58mi3v0WS7UczRA741gFjQ/9ivg4YRR3qv6w==} + engines: {node: ^14.16.0 || >=16.10.0} + hasBin: true + object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} @@ -6033,9 +6127,6 @@ packages: resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} engines: {node: '>= 0.4'} - ofetch@1.3.4: - resolution: {integrity: sha512-KLIET85ik3vhEfS+3fDlc/BAZiAp+43QEC/yCo5zkNoY2YaKvNkOaFr/6wCFgFH1kuYQM5pMNi0Tg8koiIemtw==} - ofetch@1.4.1: resolution: {integrity: sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw==} @@ -6053,11 +6144,11 @@ packages: resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} engines: {node: '>=12'} - oniguruma-to-es@0.10.0: - resolution: {integrity: sha512-zapyOUOCJxt+xhiNRPPMtfJkHGsZ98HHB9qJEkdT8BGytO/+kpe4m1Ngf0MzbzTmhacn11w9yGeDP6tzDhnCdg==} + oniguruma-to-es@0.4.1: + resolution: {integrity: sha512-rNcEohFz095QKGRovP/yqPIKc+nP+Sjs4YTHMv33nMePGKrq/r2eu9Yh4646M5XluGJsUnmwoXuiXE69KDs+fQ==} - oniguruma-to-js@0.3.3: - resolution: {integrity: sha512-m90/WEhgs8g4BxG37+Nu3YrMfJDs2YXtYtIllhsEPR+wP3+K4EZk6dDUvy2v2K4MNFDDOYKL4/yqYPXDqyozTQ==} + oniguruma-to-es@2.1.0: + resolution: {integrity: sha512-Iq/949c5IueVC5gQR7OYXs0uHsDIePcgZFlVRIVGfQcWwbKG+nsyWfthswdytShlRdkZADY+bWSi+BRyUL81gA==} oniguruma-to-js@0.4.3: resolution: {integrity: sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==} @@ -6070,8 +6161,8 @@ packages: resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} engines: {node: '>=12'} - openapi-typescript@7.5.2: - resolution: {integrity: sha512-W/QXuQz0Fa3bGY6LKoqTCgrSX+xI/ST+E5RXo2WBmp3WwgXCWKDJPHv5GZmElF4yLCccnqYsakBDOJikHZYGRw==} + openapi-typescript@7.4.0: + resolution: {integrity: sha512-u4iVuTGkzKG4rHFUMA/IFXTks9tYVQzkowZsScMOdzJSvIF10qSNySWHTwnN2fD+MEeWFAM8i1f3IUBlgS92eQ==} hasBin: true peerDependencies: typescript: 5.7.3 @@ -6092,6 +6183,10 @@ packages: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} engines: {node: '>=10'} + p-limit@4.0.0: + resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + p-limit@5.0.0: resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} engines: {node: '>=18'} @@ -6104,6 +6199,10 @@ packages: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} + p-locate@6.0.0: + resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + p-map@4.0.0: resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} engines: {node: '>=10'} @@ -6115,9 +6214,6 @@ packages: package-json-from-dist@1.0.0: resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} - package-manager-detector@0.2.0: - resolution: {integrity: sha512-E385OSk9qDcXhcM9LNSe4sdhx8a9mAPrZ4sMLW+tmxl5ZuGtPUcdFu+MPP2jbgiWAZ6Pfe5soGFMd+0Db5Vrog==} - package-manager-detector@0.2.8: resolution: {integrity: sha512-ts9KSdroZisdvKMWVAVCXiKqnqNfXz4+IbrBG8/BWx/TR5le+jfenvoBuIZ6UWM9nz47W7AbD9qYfAwfWMIwzA==} @@ -6167,8 +6263,8 @@ packages: parse5@6.0.1: resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} - parse5@7.1.2: - resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} + parse5@7.2.1: + resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==} parseurl@1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} @@ -6181,6 +6277,10 @@ packages: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} + path-exists@5.0.0: + resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + path-is-absolute@1.0.1: resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} engines: {node: '>=0.10.0'} @@ -6215,8 +6315,8 @@ packages: pathe@1.1.2: resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} - pathe@2.0.1: - resolution: {integrity: sha512-6jpjMpOth5S9ITVu5clZ7NOgHNsv5vRQdheL9ztp2vZmM6fRbLvyua1tiBIL4lk8SAe3ARzeXEly6siXCjDHDw==} + pathe@2.0.2: + resolution: {integrity: sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==} pathval@1.1.1: resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} @@ -6228,9 +6328,6 @@ packages: perfect-debounce@1.0.0: resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==} - picocolors@1.1.0: - resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==} - picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} @@ -6250,11 +6347,15 @@ packages: resolution: {integrity: sha512-KocF8ve28eFjjuBKKGvzOBGzG8ew2OqOOSxTTZhirkzH7h3BI1vyzqlR0qbfcDBve1Yzo3FVlWUAtCRrbVN8Fw==} engines: {node: '>=14.16'} - pkg-types@1.3.0: - resolution: {integrity: sha512-kS7yWjVFCkIw9hqdJBoMxDdzEngmkr5FXeWZZfQ6GoYacjVnsW6l2CcYW/0ThD0vF4LPJgVYnrg4d0uuhwYQbg==} + pkg-pr-new@0.0.39: + resolution: {integrity: sha512-ItcsHK+4uO0qmjK4RNs6vTWv3xFhbPZd5U6RoYbxRURWNZfH7KvpyqRzaw4GR7de/IjkdHVZHCzQkjnp3VOVdg==} + hasBin: true - playwright-core@1.49.1: - resolution: {integrity: sha512-BzmpVcs4kE2CH15rWfzpjzVGhWERJfmnXmniSyKeRZUs9Ws65m+RGIi7mjJK/euCegfn3i7jvqWeWyHe9y3Vgg==} + pkg-types@1.3.1: + resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==} + + playwright-core@1.50.0: + resolution: {integrity: sha512-CXkSSlr4JaZs2tZHI40DsZUN/NIwgaUPsyLuOAaIZp2CyF2sN5MM5NJsyB188lFSSozFxQ5fPT4qM+f0tH/6wQ==} engines: {node: '>=18'} hasBin: true @@ -6274,43 +6375,43 @@ packages: resolution: {integrity: sha512-DT/Wwm6fCKgpYVI7ZEWuPJ4az8hiEHtCUeYjZXqU7Ou4QqYh1Df2yCQ7Ca6N7xqKPFkxN3fhf+u9KSoOCJNAjg==} engines: {node: ^18.12 || ^20.9 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-colormin@7.0.2: resolution: {integrity: sha512-YntRXNngcvEvDbEjTdRWGU606eZvB5prmHG4BF0yLmVpamXbpsRJzevyy6MZVyuecgzI2AWAlvFi8DAeCqwpvA==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-convert-values@7.0.4: resolution: {integrity: sha512-e2LSXPqEHVW6aoGbjV9RsSSNDO3A0rZLCBxN24zvxF25WknMPpX8Dm9UxxThyEbaytzggRuZxaGXqaOhxQ514Q==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-discard-comments@7.0.3: resolution: {integrity: sha512-q6fjd4WU4afNhWOA2WltHgCbkRhZPgQe7cXF74fuVB/ge4QbM9HEaOIzGSiMvM+g/cOsNAUGdf2JDzqA2F8iLA==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-discard-duplicates@7.0.1: resolution: {integrity: sha512-oZA+v8Jkpu1ct/xbbrntHRsfLGuzoP+cpt0nJe5ED2FQF8n8bJtn7Bo28jSmBYwqgqnqkuSXJfSUEE7if4nClQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-discard-empty@7.0.0: resolution: {integrity: sha512-e+QzoReTZ8IAwhnSdp/++7gBZ/F+nBq9y6PomfwORfP7q9nBpK5AMP64kOt0bA+lShBFbBDcgpJ3X4etHg4lzA==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-discard-overridden@7.0.0: resolution: {integrity: sha512-GmNAzx88u3k2+sBTZrJSDauR0ccpE24omTQCVmaTTZFz1du6AasspjaUPMJ2ud4RslZpoFKyf+6MSPETLojc6w==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-import-resolver@2.0.0: resolution: {integrity: sha512-y001XYgGvVwgxyxw9J1a5kqM/vtmIQGzx34g0A0Oy44MFcy/ZboZw1hu/iN3VYFjSTRzbvd7zZJJz0Kh0AGkTw==} @@ -6319,14 +6420,14 @@ packages: resolution: {integrity: sha512-7hsAZ4xGXl4MW+OKEWCnF6T5jqBw80/EE9aXg1r2yyn1RsVEU8EtKXbijEODa+rg7iih4bKf7vlvTGYR4CnPNg==} engines: {node: '>=18.0.0'} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-loader@8.1.1: resolution: {integrity: sha512-0IeqyAsG6tYiDRCYKQJLAmgQr47DX6N7sFSWvQxt6AcupX8DIdmykuk/o/tx0Lze3ErGHJEp5OSRxrelC6+NdQ==} engines: {node: '>= 18.12.0'} peerDependencies: '@rspack/core': 0.x || 1.x - postcss: 8.4.49 + postcss: 8.5.1 webpack: ^5.0.0 peerDependenciesMeta: '@rspack/core': @@ -6341,139 +6442,139 @@ packages: resolution: {integrity: sha512-zer1KoZA54Q8RVHKOY5vMke0cCdNxMP3KBfDerjH/BYHh4nCIh+1Yy0t1pAEQF18ac/4z3OFclO+ZVH8azjR4A==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-merge-rules@7.0.4: resolution: {integrity: sha512-ZsaamiMVu7uBYsIdGtKJ64PkcQt6Pcpep/uO90EpLS3dxJi6OXamIobTYcImyXGoW0Wpugh7DSD3XzxZS9JCPg==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-minify-font-values@7.0.0: resolution: {integrity: sha512-2ckkZtgT0zG8SMc5aoNwtm5234eUx1GGFJKf2b1bSp8UflqaeFzR50lid4PfqVI9NtGqJ2J4Y7fwvnP/u1cQog==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-minify-gradients@7.0.0: resolution: {integrity: sha512-pdUIIdj/C93ryCHew0UgBnL2DtUS3hfFa5XtERrs4x+hmpMYGhbzo6l/Ir5de41O0GaKVpK1ZbDNXSY6GkXvtg==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-minify-params@7.0.2: resolution: {integrity: sha512-nyqVLu4MFl9df32zTsdcLqCFfE/z2+f8GE1KHPxWOAmegSo6lpV2GNy5XQvrzwbLmiU7d+fYay4cwto1oNdAaQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-minify-selectors@7.0.4: resolution: {integrity: sha512-JG55VADcNb4xFCf75hXkzc1rNeURhlo7ugf6JjiiKRfMsKlDzN9CXHZDyiG6x/zGchpjQS+UAgb1d4nqXqOpmA==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-modules-extract-imports@3.1.0: resolution: {integrity: sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-modules-local-by-default@4.0.5: resolution: {integrity: sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-modules-scope@3.2.0: resolution: {integrity: sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-modules-values@4.0.0: resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-nested@7.0.2: resolution: {integrity: sha512-5osppouFc0VR9/VYzYxO03VaDa3e8F23Kfd6/9qcZTUI8P58GIYlArOET2Wq0ywSl2o2PjELhYOFI4W7l5QHKw==} engines: {node: '>=18.0'} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-normalize-charset@7.0.0: resolution: {integrity: sha512-ABisNUXMeZeDNzCQxPxBCkXexvBrUHV+p7/BXOY+ulxkcjUZO0cp8ekGBwvIh2LbCwnWbyMPNJVtBSdyhM2zYQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-normalize-display-values@7.0.0: resolution: {integrity: sha512-lnFZzNPeDf5uGMPYgGOw7v0BfB45+irSRz9gHQStdkkhiM0gTfvWkWB5BMxpn0OqgOQuZG/mRlZyJxp0EImr2Q==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-normalize-positions@7.0.0: resolution: {integrity: sha512-I0yt8wX529UKIGs2y/9Ybs2CelSvItfmvg/DBIjTnoUSrPxSV7Z0yZ8ShSVtKNaV/wAY+m7bgtyVQLhB00A1NQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-normalize-repeat-style@7.0.0: resolution: {integrity: sha512-o3uSGYH+2q30ieM3ppu9GTjSXIzOrRdCUn8UOMGNw7Af61bmurHTWI87hRybrP6xDHvOe5WlAj3XzN6vEO8jLw==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-normalize-string@7.0.0: resolution: {integrity: sha512-w/qzL212DFVOpMy3UGyxrND+Kb0fvCiBBujiaONIihq7VvtC7bswjWgKQU/w4VcRyDD8gpfqUiBQ4DUOwEJ6Qg==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-normalize-timing-functions@7.0.0: resolution: {integrity: sha512-tNgw3YV0LYoRwg43N3lTe3AEWZ66W7Dh7lVEpJbHoKOuHc1sLrzMLMFjP8SNULHaykzsonUEDbKedv8C+7ej6g==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-normalize-unicode@7.0.2: resolution: {integrity: sha512-ztisabK5C/+ZWBdYC+Y9JCkp3M9qBv/XFvDtSw0d/XwfT3UaKeW/YTm/MD/QrPNxuecia46vkfEhewjwcYFjkg==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-normalize-url@7.0.0: resolution: {integrity: sha512-+d7+PpE+jyPX1hDQZYG+NaFD+Nd2ris6r8fPTBAjE8z/U41n/bib3vze8x7rKs5H1uEw5ppe9IojewouHk0klQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-normalize-whitespace@7.0.0: resolution: {integrity: sha512-37/toN4wwZErqohedXYqWgvcHUGlT8O/m2jVkAfAe9Bd4MzRqlBmXrJRePH0e9Wgnz2X7KymTgTOaaFizQe3AQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-ordered-values@7.0.1: resolution: {integrity: sha512-irWScWRL6nRzYmBOXReIKch75RRhNS86UPUAxXdmW/l0FcAsg0lvAXQCby/1lymxn/o0gVa6Rv/0f03eJOwHxw==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-reduce-initial@7.0.2: resolution: {integrity: sha512-pOnu9zqQww7dEKf62Nuju6JgsW2V0KRNBHxeKohU+JkHd/GAH5uvoObqFLqkeB2n20mr6yrlWDvo5UBU5GnkfA==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-reduce-transforms@7.0.0: resolution: {integrity: sha512-pnt1HKKZ07/idH8cpATX/ujMbtOGhUfE+m8gbqwJE05aTaNw8gbo34a2e3if0xc0dlu75sUOiqvwCGY3fzOHew==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-selector-parser@6.1.2: resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} @@ -6487,25 +6588,25 @@ packages: resolution: {integrity: sha512-0WBUlSL4lhD9rA5k1e5D8EN5wCEyZD6HJk0jIvRxl+FDVOMlJ7DePHYWGGVc5QRqrJ3/06FTXM0bxjmJpmTPSA==} engines: {node: ^18.12.0 || ^20.9.0 || >= 18} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-unique-selectors@7.0.3: resolution: {integrity: sha512-J+58u5Ic5T1QjP/LDV9g3Cx4CNOgB5vz+kM6+OxHHhFACdcDeKhBXjQmB7fnIZM12YSTvsL0Opwco83DmacW2g==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-url@10.1.3: resolution: {integrity: sha512-FUzyxfI5l2tKmXdYc6VTu3TWZsInayEKPbiyW+P6vmmIrrb4I6CGX0BFoewgYHLK+oIL5FECEK02REYRpBvUCw==} engines: {node: '>=10'} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - postcss@8.4.49: - resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==} + postcss@8.5.1: + resolution: {integrity: sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==} engines: {node: ^10 || ^12 || >=14} posthtml-parser@0.11.0: @@ -6572,6 +6673,9 @@ packages: protocols@2.0.1: resolution: {integrity: sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==} + proxy-from-env@1.1.0: + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + prr@1.0.1: resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==} @@ -6624,12 +6728,24 @@ packages: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} + query-registry@3.0.1: + resolution: {integrity: sha512-M9RxRITi2mHMVPU5zysNjctUT8bAPx6ltEXo/ir9+qmiM47Y7f0Ir3+OxUO5OjYAWdicBQRew7RtHtqUXydqlg==} + engines: {node: '>=20'} + + query-string@9.1.1: + resolution: {integrity: sha512-MWkCOVIcJP9QSKU52Ngow6bsAWAPlPK2MludXvcrS2bGZSl+T1qX9MZvRIkqUIkGLJquMJHWfsT6eRqUpp4aWg==} + engines: {node: '>=18'} + queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} queue-tick@1.0.1: resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==} + quick-lru@7.0.0: + resolution: {integrity: sha512-MX8gB7cVYTrYcFfAnfLlhRd0+Toyl8yX8uBx1MrX7K0jegiz9TumwOK27ldXrgDlHRdVi+MqU9Ssw6dr4BNreg==} + engines: {node: '>=18'} + radix3@1.1.2: resolution: {integrity: sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==} @@ -6679,6 +6795,10 @@ packages: readable-stream@2.3.8: resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} + readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} + readable-stream@4.5.2: resolution: {integrity: sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -6690,9 +6810,9 @@ packages: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} - readdirp@4.1.0: - resolution: {integrity: sha512-4+hHiVsxlm4OVSNFpAIrOGyGeG9kNLGcLMqvSGL5Rj2NOYBDQiQ6lJRViwAZ80i8SNbY8kCpdjgJy5PNALARew==} - engines: {node: '>= 14.18.0'} + readdirp@4.0.1: + resolution: {integrity: sha512-GkMg9uOTpIWWKbSsgwb5fA4EavTR+SG/PMPoAY8hkhHfEEY0/vqljY+XHqtDf2cr2IJtoNRDbrrEpZUiZCkYRw==} + engines: {node: '>= 14.16.0'} redis-errors@1.2.0: resolution: {integrity: sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w==} @@ -6709,14 +6829,17 @@ packages: regenerator-runtime@0.14.1: resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} + regex-recursion@4.3.0: + resolution: {integrity: sha512-5LcLnizwjcQ2ALfOj95MjcatxyqF5RPySx9yT+PaXu3Gox2vyAtLDjHB8NTJLtMGkvyau6nI3CfpwFCjPUIs/A==} + regex-recursion@5.1.1: resolution: {integrity: sha512-ae7SBCbzVNrIjgSbh7wMznPcQel1DNlDtzensnFxpiNpXt1U2ju/bHugH422r+4LAVS1FpW1YCwilmnNsjum9w==} regex-utilities@2.3.0: resolution: {integrity: sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==} - regex@4.3.2: - resolution: {integrity: sha512-kK/AA3A9K6q2js89+VMymcboLOlF5lZRCYJv3gzszXFHBr6kO6qLGzbm+UIugBEV8SMMKCTR59txoY6ctRHYVw==} + regex@4.4.0: + resolution: {integrity: sha512-uCUSuobNVeqUupowbdZub6ggI5/JZkYyJdDogddJr60L764oxC2pMZov1fQ3wM9bdyzUILDG+Sqx6NAKAz9rKQ==} regex@5.1.1: resolution: {integrity: sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw==} @@ -6746,11 +6869,11 @@ packages: rehype-slug@6.0.0: resolution: {integrity: sha512-lWyvf/jwu+oS5+hL5eClVd3hNdmwM1kAC0BUvEGD19pajQMIzcNUd/k9GsfQ+FfECvX+JE+e9/btsKH0EjJT6A==} - rehype-sort-attribute-values@5.0.0: - resolution: {integrity: sha512-dQdHdCIRnpiU+BkrLSqH+aM4lWJyLqGzv49KvH4gHj+JxYwNqvGhoTXckS3AJu4V9ZutwsTcawP0pC7PhwX0tQ==} + rehype-sort-attribute-values@5.0.1: + resolution: {integrity: sha512-lU3ABJO5frbUgV132YS6SL7EISf//irIm9KFMaeu5ixHfgWf6jhe+09Uf/Ef8pOYUJWKOaQJDRJGCXs6cNsdsQ==} - rehype-sort-attributes@5.0.0: - resolution: {integrity: sha512-6tJUH4xHFcdO85CZRwAcEtHNCzjZ9V9S0VZLgo1pzbN04qy8jiVCZ3oAxDmBVG3Rth5b1xFTDet5WG/UYZeJLQ==} + rehype-sort-attributes@5.0.1: + resolution: {integrity: sha512-Bxo+AKUIELcnnAZwJDt5zUDDRpt4uzhfz9d0PVGhcxYWsbFj5Cv35xuWxu5r1LeYNFNhgGqsr9Q2QiIOM/Qctg==} relateurl@0.2.7: resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==} @@ -6769,8 +6892,8 @@ packages: remark-parse@11.0.0: resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} - remark-rehype@11.1.0: - resolution: {integrity: sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==} + remark-rehype@11.1.1: + resolution: {integrity: sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==} remark-stringify@11.0.0: resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} @@ -6805,32 +6928,34 @@ packages: rfdc@1.4.1: resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} - rimraf@5.0.10: - resolution: {integrity: sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==} + rimraf@3.0.2: + resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + deprecated: Rimraf versions prior to v4 are no longer supported hasBin: true rollup-plugin-dts@6.1.1: resolution: {integrity: sha512-aSHRcJ6KG2IHIioYlvAOcEq6U99sVtqDDKVhnwt70rW6tsz3tv5OSjEiWcgzfsHdLyGXZ/3b/7b/+Za3Y6r1XA==} engines: {node: '>=16'} peerDependencies: - rollup: 4.30.1 + rollup: 4.31.0 typescript: 5.7.3 - rollup-plugin-visualizer@5.14.0: - resolution: {integrity: sha512-VlDXneTDaKsHIw8yzJAFWtrzguoJ/LnQ+lMpoVfYJ3jJF4Ihe5oYLAqLklIK/35lgUY+1yEzCkHyZ1j4A5w5fA==} + rollup-plugin-visualizer@5.13.1: + resolution: {integrity: sha512-vMg8i6BprL8aFm9DKvL2c8AwS8324EgymYQo9o6E26wgVvwMhsJxS37aNL6ZsU7X9iAcMYwdME7gItLfG5fwJg==} engines: {node: '>=18'} + deprecated: Contains unintended breaking changes hasBin: true peerDependencies: rolldown: 1.x - rollup: 4.30.1 + rollup: 4.31.0 peerDependenciesMeta: rolldown: optional: true rollup: optional: true - rollup@4.30.1: - resolution: {integrity: sha512-mlJ4glW020fPuLi7DkM/lN97mYEZGWeqBnrljzN0gs7GLctqX3lNWxKQ7Gl712UAX+6fog/L3jh4gb7R6aVi3w==} + rollup@4.31.0: + resolution: {integrity: sha512-9cCE8P4rZLx9+PjoyqHLs31V9a9Vpvfo4qNcs6JCiGWYhw2gijSetFbH6SSy1whnkgcefnUwr8sad7tgqsGvnw==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -6915,10 +7040,13 @@ packages: serve-placeholder@2.0.2: resolution: {integrity: sha512-/TMG8SboeiQbZJWRlfTCqMs2DD3SZgWp0kDQePz9yUuCnDfDh/92gf7/PxGhzXTKBIPASIHxFcZndoNbp6QOLQ==} - serve-static@1.16.0: - resolution: {integrity: sha512-pDLK8zwl2eKaYrs8mrPZBJua4hMplRWJ1tIFksVC3FtBEBnl8dxgeHtsaMS8DhS9i4fLObaon6ABoc4/hQGdPA==} + serve-static@1.16.2: + resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==} engines: {node: '>= 0.8.0'} + set-blocking@2.0.0: + resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} + set-function-length@1.2.2: resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} engines: {node: '>= 0.4'} @@ -6975,14 +7103,14 @@ packages: resolution: {integrity: sha512-571FkeQKaRZJJj4w55LEATkUC2kkoxkdlYuBx3V5N+O3P++4dgpCO1+goQBHbVJivmTpL7zkcLWLfymWf1BtUw==} hasBin: true - shiki@1.17.0: - resolution: {integrity: sha512-VZf8cPShRwfzPcaswv81+YP7qJEoFwRT+Ehy6bizim7M0zG9bk8Egug550C+xS9g7rKIOPhzAlp2uEyuCxbk/A==} - shiki@1.22.0: resolution: {integrity: sha512-/t5LlhNs+UOKQCYBtl5ZsH/Vclz73GIqT2yQsCBygr8L/ppTdmpL4w3kPLoZJbMKVWtoG77Ue1feOjZfDxvMkw==} - shiki@1.26.1: - resolution: {integrity: sha512-Gqg6DSTk3wYqaZ5OaYtzjcdxcBvX5kCy24yvRJEgjT5U+WHlmqCThLuBUx0juyxQBi+6ug53IGeuQS07DWwpcw==} + shiki@1.22.2: + resolution: {integrity: sha512-3IZau0NdGKXhH2bBlUk4w1IHNxPh6A5B2sUpyY+8utLu2j/h1QpFkAaUA1bAMxOWWGtTWcAh531vnS4NJKS/lA==} + + shiki@1.23.1: + resolution: {integrity: sha512-8kxV9TH4pXgdKGxNOkrSMydn1Xf6It8lsle0fiqxf7a1149K1WGtdOu3Zb91T5r1JpvRPxqxU3C2XdZZXQnrig==} side-channel@1.0.6: resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} @@ -7016,10 +7144,6 @@ packages: resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==} engines: {node: '>=8'} - slash@4.0.0: - resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} - engines: {node: '>=12'} - slash@5.1.0: resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} engines: {node: '>=14.16'} @@ -7074,6 +7198,10 @@ packages: resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==} engines: {node: '>=0.10.0'} + split-on-first@3.0.0: + resolution: {integrity: sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==} + engines: {node: '>=12'} + splitpanes@3.1.5: resolution: {integrity: sha512-r3Mq2ITFQ5a2VXLOy4/Sb2Ptp7OfEO8YIbhVJqJXoFc9hc5nTXXkCvtVDjIGbvC0vdE7tse+xTM9BMjsszP6bw==} @@ -7103,6 +7231,10 @@ packages: streamx@2.20.0: resolution: {integrity: sha512-ZGd1LhDeGFucr1CUCTBOS58ZhEendd0ttpGT3usTvosS4ntIwKN9LJFp+OeCSprsCPL14BXVRZlHGRY1V9PVzQ==} + string-argv@0.3.2: + resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} + engines: {node: '>=0.6.19'} + string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} @@ -7151,11 +7283,14 @@ packages: strip-literal@2.1.1: resolution: {integrity: sha512-631UJ6O00eNGfMiWG78ck80dfBab8X6IVFB51jZK5Icd7XAs60Z5y7QdSd/wGIklnWvRbUNloVzhOKKmutxQ6Q==} + strip-literal@3.0.0: + resolution: {integrity: sha512-TcccoMhJOM3OebGhSBEmp3UZ2SfDMZUEBdRA/9ynfLi8yYajyWX3JiXArcJt4Umh4vISpspkQIY8ZZoCqjbviA==} + stylehacks@7.0.4: resolution: {integrity: sha512-i4zfNrGMt9SB4xRK9L83rlsFCgdGANfeDAYacO1pkqcE7cRHPdWHwnKZVz7WY17Veq/FvyYsRAU++Ga+qDFIww==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: - postcss: 8.4.49 + postcss: 8.5.1 summary@2.1.0: resolution: {integrity: sha512-nMIjMrd5Z2nuB2RZCKJfFMjgS3fygbeyGk9PxPPaJR1RIcyN9yn4A63Isovzm3ZtQuEkLBVgMdPup8UeLH7aQw==} @@ -7222,10 +7357,6 @@ packages: resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==} engines: {node: '>=10'} - tar@7.4.3: - resolution: {integrity: sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==} - engines: {node: '>=18'} - terser-webpack-plugin@5.3.10: resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==} engines: {node: '>= 10.13.0'} @@ -7295,14 +7426,18 @@ packages: resolution: {integrity: sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==} engines: {node: '>=14.0.0'} - tinypool@1.0.1: - resolution: {integrity: sha512-URZYihUbRPcGv95En+sz6MfghfIc2OJ1sv/RmhWZLouPY0/8Vo80viwPvg3dlaS9fuq7fQMEfgRRK7BBZThBEA==} + tinypool@1.0.2: + resolution: {integrity: sha512-al6n+QEANGFOMf/dmUMsuS5/r9B06uwlyNjZZql/zv8J7ybHCgoihBNORZCY2mzUuAnomQa2JdhyHKzZxPCrFA==} engines: {node: ^18.0.0 || >=20.0.0} tinyrainbow@1.2.0: resolution: {integrity: sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==} engines: {node: '>=14.0.0'} + tinyrainbow@2.0.0: + resolution: {integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==} + engines: {node: '>=14.0.0'} + tinyspy@2.2.1: resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==} engines: {node: '>=14.0.0'} @@ -7311,10 +7446,6 @@ packages: resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==} engines: {node: '>=14.0.0'} - to-fast-properties@2.0.0: - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} - engines: {node: '>=4'} - to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} @@ -7351,6 +7482,10 @@ packages: peerDependencies: typescript: 5.7.3 + ts-blank-space@0.5.0: + resolution: {integrity: sha512-qFJAuJsXm+qV/IQbfJ8Rx9tVELrTjU4DijxtX7LO3foHEYwJx7Z90t2eOEocZBunM91NA+ia1xEgVBluiQO6/w==} + engines: {node: '>=18.0.0'} + tslib@2.7.0: resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} @@ -7396,8 +7531,8 @@ packages: resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} engines: {node: '>=8'} - type-fest@4.32.0: - resolution: {integrity: sha512-rfgpoi08xagF3JSdtJlCwMq9DGNDE0IMh3Mkpc1wUypg9vPi786AiqeBBKcqvIkq42azsBM85N490fyZjeUftw==} + type-fest@4.26.1: + resolution: {integrity: sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==} engines: {node: '>=16'} typescript@5.7.3: @@ -7414,8 +7549,8 @@ packages: ultrahtml@1.5.3: resolution: {integrity: sha512-GykOvZwgDWZlTQMtp5jrD4BVL+gNn2NVlVafjcFUJ7taY20tqYdwdoWBFy6GBJsNTZe1GkGPkSl5knQAjtgceg==} - unbuild@3.2.0: - resolution: {integrity: sha512-9XO8Yh0r2a0Aid8beiPXJQ5vaT3KdnNPnV5WDnAZljOX1rfp0/O75oruwiZtU5qCqb7lYVsBg9iOgG2+0VGwVw==} + unbuild@3.3.1: + resolution: {integrity: sha512-/5OeeHmW1JlWEyQw3SPkB9BV16lzr6C5i8D+O17NLx6ETgvCZ3ZlyXfWkVVfG2YCsv8xAVQCqJNJtbEAGwHg7A==} hasBin: true peerDependencies: typescript: 5.7.3 @@ -7423,8 +7558,11 @@ packages: typescript: optional: true - unconfig@0.6.0: - resolution: {integrity: sha512-4C67J0nIF2QwSXty2kW3zZx1pMZ3iXabylvJWWgHybWVUcMf9pxwsngoQt0gC+AVstRywFqrRBp3qOXJayhpOw==} + unconfig@0.5.5: + resolution: {integrity: sha512-VQZ5PT9HDX+qag0XdgQi8tJepPhXiR/yVOkn707gJDKo31lGjRilPREiQJ9Z6zd/Ugpv6ZvO5VxVIcatldYcNQ==} + + unconfig@0.6.1: + resolution: {integrity: sha512-cVU+/sPloZqOyJEAfNwnQSFCzFrZm85vcVkryH7lnlB/PiTycUkAjt5Ds79cfIshGOZ+M5v3PBDnKgpmlE5DtA==} uncrypto@0.1.3: resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==} @@ -7435,11 +7573,15 @@ packages: undici-types@6.20.0: resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} + undici@6.21.0: + resolution: {integrity: sha512-BUgJXc752Kou3oOIuU1i+yZZypyZRqNPW0vqoMPl8VaoalSfeR0D8/t4iAS3yirs79SSMTxTag+ZC86uswv+Cw==} + engines: {node: '>=18.17'} + unenv@1.10.0: resolution: {integrity: sha512-wY5bskBQFL9n3Eca5XnhH6KbUo/tfvkwm9OpcdCvLaeA7piBNbavbOKJySEwQ1V0RH6HvNlSAFRTpvTqgKRQXQ==} - unhead@1.11.15: - resolution: {integrity: sha512-fA0rYB7qMHKY4sg0yzEXhi0cqiF/nl/OUKNaXOS9ChJwCjJxabpZvmQIUOiGS+1ckoFbZc3qZnhDLpdeNhOQwg==} + unhead@1.11.18: + resolution: {integrity: sha512-TWgGUoZMpYe2yJwY6jZ0/9kpQT18ygr2h5lI6cUXdfD9UzDc0ytM9jGaleSYkj9guJWXkk7izYBnzJvxl8mRvQ==} unicode-emoji-modifier-base@1.0.0: resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} @@ -7452,8 +7594,9 @@ packages: unified@11.0.5: resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} - unimport@3.14.5: - resolution: {integrity: sha512-tn890SwFFZxqaJSKQPPd+yygfKSATbM8BZWW1aCR2TJBTs1SDrmLamBueaFtYsGjHtQaRgqEbQflOjN2iW12gA==} + unimport@4.0.0: + resolution: {integrity: sha512-FH+yZ36YaVlh0ZjHesP20Q4uL+wL0EqTNxDZcUupsIn6WRYXZAbIYEMDLTaLBpkNVzFpqZXS+am51/HR3ANUNw==} + engines: {node: '>=18.12.0'} unist-builder@4.0.0: resolution: {integrity: sha512-wmRFnH+BLpZnTKpc5L7O67Kac89s9HMrtELpnNaE6TAobq5DTZZs5YaTQfAZBA9bFPECx2uVAPO31c+GVug8mg==} @@ -7473,28 +7616,31 @@ packages: unist-util-visit@5.0.0: resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} + universal-user-agent@6.0.1: + resolution: {integrity: sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==} + universalify@2.0.1: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} - unocss@0.65.4: - resolution: {integrity: sha512-KUCW5OzI20Ik6j1zXkkrpWhxZ59TwSKl6+DvmYHEzMfaEcrHlBZaFSApAoSt2CYSvo6SluGiKyr+Im1UTkd4KA==} + unocss@0.62.4: + resolution: {integrity: sha512-SaGbxXQkk8GDPeJpWsBCZ8a23Knu4ixVTt6pvcQWKjOCGTd9XBd+vLZzN2WwdwgBPVwmMmx5wp+/gPHKFNOmIw==} engines: {node: '>=14'} peerDependencies: - '@unocss/webpack': 0.65.4 - vite: 6.0.7 + '@unocss/webpack': 0.62.4 + vite: 6.0.11 peerDependenciesMeta: '@unocss/webpack': optional: true vite: optional: true - unocss@65.4.0: - resolution: {integrity: sha512-1JO+9YHJ1n0xedOUWfgjJfQXentoxtMuXqR9+kB8I8A9N+PC73KX2YOMjvTia+NSrnSgnCmmnnsUWQqnJZR9fA==} + unocss@65.4.3: + resolution: {integrity: sha512-mwSVi0ovPxaDv58yFB7Vm5v1x/q/pUc7aTh7SJbeYoRrpbUGdKiVf20YSQfMqmBNXV9CFDr4o6tabP/58as6RQ==} engines: {node: '>=14'} peerDependencies: - '@unocss/webpack': 65.4.0 - vite: 6.0.7 + '@unocss/webpack': 65.4.3 + vite: 6.0.11 peerDependenciesMeta: '@unocss/webpack': optional: true @@ -7509,13 +7655,12 @@ packages: vue-router: optional: true - unplugin@1.14.1: - resolution: {integrity: sha512-lBlHbfSFPToDYp9pjXlUEFVxYLaue9f9T1HC+4OHlmj+HnMDdz9oZY+erXfoCe/5V/7gKUSY2jpXPb9S7f0f/w==} - engines: {node: '>=14.0.0'} + unplugin-vue-router@0.11.1: + resolution: {integrity: sha512-uYKJiFcPcLn20ve9KDDfvmGvgZph3mfE9ozd3SduFmkmQXo7bnPhSglytlV7WhuaHkhEDCPfnKx2trKbYieNXQ==} peerDependencies: - webpack-sources: ^3 + vue-router: ^4.4.0 peerDependenciesMeta: - webpack-sources: + vue-router: optional: true unplugin@1.16.1: @@ -7606,12 +7751,6 @@ packages: peerDependencies: browserslist: '>= 4.21.0' - update-browserslist-db@1.1.2: - resolution: {integrity: sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - uqr@0.1.2: resolution: {integrity: sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==} @@ -7621,6 +7760,10 @@ packages: uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + url-join@5.0.0: + resolution: {integrity: sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + url-loader@4.1.1: resolution: {integrity: sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==} engines: {node: '>= 10.13.0'} @@ -7637,8 +7780,8 @@ packages: util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - v-lazy-show@0.3.0: - resolution: {integrity: sha512-xpVALnvzB+RoDkI/5gqzVC2bL/Mh0Mw5/cPpSWJTTS6K4yDwFE2hZr5OsgFS74c6IHV6/k0jzSkAFXJttnhufg==} + v-lazy-show@0.2.4: + resolution: {integrity: sha512-Lx9Str2i+HTh+zGzs9O3YyhGAZOAAfU+6MUUPcQPPiPxQO1sHBEv9sH3MO9bPc4T09gsjsS2+sbaCWQ1MdhpJQ==} peerDependencies: '@vue/compiler-core': 3.5.13 @@ -7673,7 +7816,7 @@ packages: vite-hot-client@0.2.4: resolution: {integrity: sha512-a1nzURqO7DDmnXqabFOliz908FRmIppkBKsJthS8rbe8hBEXwEwe4C3Pp33Z1JoFCYfVL4kTOMLKk0ZZxREIeA==} peerDependencies: - vite: 6.0.7 + vite: 6.0.11 vite-node@1.6.0: resolution: {integrity: sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==} @@ -7685,6 +7828,16 @@ packages: engines: {node: ^18.0.0 || >=20.0.0} hasBin: true + vite-node@3.0.3: + resolution: {integrity: sha512-0sQcwhwAEw/UJGojbhOrnq3HtiZ3tC7BzpAa0lx3QaTX0S3YX70iGcik25UBdB96pmdwjyY2uyKNYruxCDmiEg==} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + hasBin: true + + vite-node@3.0.4: + resolution: {integrity: sha512-7JZKEzcYV2Nx3u6rlvN8qdo3QV7Fxyt6hx+CCKz9fbWxdX5IvUOmTWEAxMrWxaiSf7CKGLJQ5rFu8prb/jBjOA==} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + hasBin: true + vite-plugin-checker@0.8.0: resolution: {integrity: sha512-UA5uzOGm97UvZRTdZHiQVYFnd86AVn8EVaD4L3PoVzxH+IZSfaAw14WGFwX9QS23UW3lV/5bVKZn6l0w+q9P0g==} engines: {node: '>=14.16'} @@ -7695,7 +7848,7 @@ packages: optionator: ^0.9.1 stylelint: '>=13' typescript: 5.7.3 - vite: 6.0.7 + vite: 6.0.11 vls: '*' vti: '*' vue-tsc: ~2.1.6 @@ -7724,7 +7877,7 @@ packages: engines: {node: '>=14'} peerDependencies: '@nuxt/kit': '*' - vite: 6.0.7 + vite: 6.0.11 peerDependenciesMeta: '@nuxt/kit': optional: true @@ -7732,14 +7885,14 @@ packages: vite-plugin-vue-inspector@5.3.1: resolution: {integrity: sha512-cBk172kZKTdvGpJuzCCLg8lJ909wopwsu3Ve9FsL1XsnLBiRT9U3MePcqrgGHgCX2ZgkqZmAGR8taxw+TV6s7A==} peerDependencies: - vite: 6.0.7 + vite: 6.0.11 - vite@6.0.7: - resolution: {integrity: sha512-RDt8r/7qx9940f8FcOIAH9PTViRrghKaK2K1jY3RaAURrEUbm9Du1mJ72G+jlhtG3WwodnfzY8ORQZbBavZEAQ==} + vite@6.0.11: + resolution: {integrity: sha512-4VL9mQPKoHy4+FE0NnRE/kbY51TOfaknxAjt3fJbGJxhIpBZiqVzlZDEesWWsuREXHwNdAoOFZ9MkPEVXczHwg==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true peerDependencies: - '@types/node': 22.10.5 + '@types/node': 22.10.10 jiti: 2.4.2 less: '*' lightningcss: ^1.21.0 @@ -7783,7 +7936,7 @@ packages: hasBin: true peerDependencies: '@edge-runtime/vm': '*' - '@types/node': 22.10.5 + '@types/node': 22.10.10 '@vitest/browser': 1.6.0 '@vitest/ui': 1.6.0 happy-dom: '*' @@ -7808,7 +7961,7 @@ packages: hasBin: true peerDependencies: '@edge-runtime/vm': '*' - '@types/node': 22.10.5 + '@types/node': 22.10.10 '@vitest/browser': 2.1.8 '@vitest/ui': 2.1.8 happy-dom: '*' @@ -7827,6 +7980,31 @@ packages: jsdom: optional: true + vitest@3.0.3: + resolution: {integrity: sha512-dWdwTFUW9rcnL0LyF2F+IfvNQWB0w9DERySCk8VMG75F8k25C7LsZoh6XfCjPvcR8Nb+Lqi9JKr6vnzH7HSrpQ==} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@types/node': 22.10.10 + '@vitest/browser': 3.0.3 + '@vitest/ui': 3.0.3 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@types/node': + optional: true + '@vitest/browser': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + void-elements@3.1.0: resolution: {integrity: sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==} engines: {node: '>=0.10.0'} @@ -7903,18 +8081,13 @@ packages: peerDependencies: vue: 3.5.13 - vue-router@4.4.5: - resolution: {integrity: sha512-4fKZygS8cH1yCyuabAXGUAsyi1b2/o/OKgu/RUb+znIYOxPRxdkytJEx+0wGcpBE1pX6vUgh5jwWOKRGvuA/7Q==} - peerDependencies: - vue: 3.5.13 - vue-router@4.5.0: resolution: {integrity: sha512-HDuk+PuH5monfNuY+ct49mNmkCRK4xJAV9Ts4z9UFc4rzdDnxQLyCMGGc8pKhZhHTVzfanpNwB/lwqevcBwI4w==} peerDependencies: vue: 3.5.13 - vue-tsc@2.1.6: - resolution: {integrity: sha512-f98dyZp5FOukcYmbFpuSCJ4Z0vHSOSmxGttZJCsFeX0M4w/Rsq0s4uKXjcSRsZqsRgQa6z7SfuO+y0HVICE57Q==} + vue-tsc@2.1.10: + resolution: {integrity: sha512-RBNSfaaRHcN5uqVqJSZh++Gy/YUzryuv9u1aFWhsammDJXNtUiJMNoJ747lZcQ68wUQFx6E73y4FY3D8E7FGMA==} hasBin: true peerDependencies: typescript: 5.7.3 @@ -8032,6 +8205,9 @@ packages: engines: {node: '>=8'} hasBin: true + wide-align@1.1.5: + resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==} + with@7.0.2: resolution: {integrity: sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==} engines: {node: '>= 10.0.0'} @@ -8092,15 +8268,11 @@ packages: yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - yallist@5.0.0: - resolution: {integrity: sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==} - engines: {node: '>=18'} - yaml-ast-parser@0.0.43: resolution: {integrity: sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==} - yaml@2.5.1: - resolution: {integrity: sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==} + yaml@2.6.1: + resolution: {integrity: sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg==} engines: {node: '>= 14'} hasBin: true @@ -8140,14 +8312,18 @@ packages: resolution: {integrity: sha512-zK7YHHz4ZXpW89AHXUPbQVGKI7uvkd3hzusTdotCg1UxyaVtg0zFJSTfW/Dq5f7OBBVnq6cZIaC8Ti4hb6dtCA==} engines: {node: '>= 14'} + zod-package-json@1.0.3: + resolution: {integrity: sha512-Mb6GzuRyUEl8X+6V6xzHbd4XV0au/4gOYrYP+CAfHL32uPmGswES+v2YqonZiW1NZWVA3jkssCKSU2knonm/aQ==} + engines: {node: '>=20'} + zod-validation-error@3.4.0: resolution: {integrity: sha512-ZOPR9SVY6Pb2qqO5XHt+MkkTRxGXb4EVtnjc9JpXUOtUB1T9Ru7mZOT361AN3MsetVe7R0a1KZshJDZdgp9miQ==} engines: {node: '>=18.0.0'} peerDependencies: zod: ^3.18.0 - zod@3.24.1: - resolution: {integrity: sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==} + zod@3.23.8: + resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==} zwitch@2.0.4: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} @@ -8163,7 +8339,7 @@ snapshots: '@antfu/install-pkg@0.4.1': dependencies: - package-manager-detector: 0.2.0 + package-manager-detector: 0.2.8 tinyexec: 0.3.2 '@antfu/install-pkg@1.0.0': @@ -8173,15 +8349,17 @@ snapshots: '@antfu/utils@0.7.10': {} + '@antfu/utils@8.1.0': {} + '@apidevtools/json-schema-ref-parser@11.7.0': dependencies: '@jsdevtools/ono': 7.1.3 '@types/json-schema': 7.0.15 js-yaml: 4.1.0 - '@arethetypeswrong/cli@0.17.2': + '@arethetypeswrong/cli@0.17.3': dependencies: - '@arethetypeswrong/core': 0.17.2 + '@arethetypeswrong/core': 0.17.3 chalk: 4.1.2 cli-table3: 0.6.5 commander: 10.0.1 @@ -8189,7 +8367,7 @@ snapshots: marked-terminal: 7.2.1(marked@9.1.6) semver: 7.6.3 - '@arethetypeswrong/core@0.17.2': + '@arethetypeswrong/core@0.17.3': dependencies: '@andrewbranch/untar.js': 1.0.3 cjs-module-lexer: 1.4.1 @@ -8199,161 +8377,78 @@ snapshots: typescript: 5.7.3 validate-npm-package-name: 5.0.1 - '@babel/code-frame@7.24.7': - dependencies: - '@babel/highlight': 7.24.7 - picocolors: 1.1.0 - '@babel/code-frame@7.26.2': dependencies: '@babel/helper-validator-identifier': 7.25.9 js-tokens: 4.0.0 - picocolors: 1.1.0 + picocolors: 1.1.1 - '@babel/compat-data@7.25.4': {} - - '@babel/compat-data@7.26.5': {} - - '@babel/core@7.25.2': - dependencies: - '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.6 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) - '@babel/helpers': 7.25.6 - '@babel/parser': 7.25.6 - '@babel/template': 7.25.0 - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 - convert-source-map: 2.0.0 - debug: 4.3.7 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color + '@babel/compat-data@7.26.2': {} '@babel/core@7.26.0': dependencies: '@ampproject/remapping': 2.3.0 '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.5 - '@babel/helper-compilation-targets': 7.26.5 + '@babel/generator': 7.26.2 + '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) '@babel/helpers': 7.26.0 - '@babel/parser': 7.26.5 + '@babel/parser': 7.26.2 '@babel/template': 7.25.9 - '@babel/traverse': 7.26.5 - '@babel/types': 7.26.5 + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.3 convert-source-map: 2.0.0 - debug: 4.3.7 + debug: 4.4.0(supports-color@9.4.0) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/generator@7.25.6': + '@babel/generator@7.26.2': dependencies: - '@babel/types': 7.25.6 - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - jsesc: 2.5.2 - - '@babel/generator@7.26.5': - dependencies: - '@babel/parser': 7.26.5 - '@babel/types': 7.26.5 + '@babel/parser': 7.26.2 + '@babel/types': 7.26.3 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 3.0.2 - '@babel/helper-annotate-as-pure@7.24.7': - dependencies: - '@babel/types': 7.25.6 - '@babel/helper-annotate-as-pure@7.25.9': dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.26.3 - '@babel/helper-compilation-targets@7.25.2': + '@babel/helper-compilation-targets@7.25.9': dependencies: - '@babel/compat-data': 7.25.4 - '@babel/helper-validator-option': 7.24.8 - browserslist: 4.23.3 - lru-cache: 5.1.1 - semver: 6.3.1 - - '@babel/helper-compilation-targets@7.26.5': - dependencies: - '@babel/compat-data': 7.26.5 + '@babel/compat-data': 7.26.2 '@babel/helper-validator-option': 7.25.9 - browserslist: 4.24.4 + browserslist: 4.24.0 lru-cache: 5.1.1 semver: 6.3.1 - '@babel/helper-create-class-features-plugin@7.25.4(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-member-expression-to-functions': 7.24.8 - '@babel/helper-optimise-call-expression': 7.24.7 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.25.2) - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/traverse': 7.25.6 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - '@babel/helper-create-class-features-plugin@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 '@babel/helper-member-expression-to-functions': 7.25.9 '@babel/helper-optimise-call-expression': 7.25.9 - '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.0) + '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0) '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 - '@babel/traverse': 7.26.5 + '@babel/traverse': 7.25.9 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/helper-member-expression-to-functions@7.24.8': - dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 - transitivePeerDependencies: - - supports-color - '@babel/helper-member-expression-to-functions@7.25.9': dependencies: - '@babel/traverse': 7.26.5 - '@babel/types': 7.26.5 - transitivePeerDependencies: - - supports-color - - '@babel/helper-module-imports@7.24.7': - dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color '@babel/helper-module-imports@7.25.9': dependencies: - '@babel/traverse': 7.26.5 - '@babel/types': 7.26.5 - transitivePeerDependencies: - - supports-color - - '@babel/helper-module-transforms@7.25.2(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-simple-access': 7.24.7 - '@babel/helper-validator-identifier': 7.24.7 - '@babel/traverse': 7.25.6 + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color @@ -8362,154 +8457,86 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.26.5 + '@babel/traverse': 7.25.9 transitivePeerDependencies: - supports-color - '@babel/helper-optimise-call-expression@7.24.7': - dependencies: - '@babel/types': 7.25.6 - '@babel/helper-optimise-call-expression@7.25.9': dependencies: - '@babel/types': 7.26.5 - - '@babel/helper-plugin-utils@7.24.8': {} + '@babel/types': 7.26.3 '@babel/helper-plugin-utils@7.26.5': {} - '@babel/helper-replace-supers@7.25.0(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-member-expression-to-functions': 7.24.8 - '@babel/helper-optimise-call-expression': 7.24.7 - '@babel/traverse': 7.25.6 - transitivePeerDependencies: - - supports-color - - '@babel/helper-replace-supers@7.26.5(@babel/core@7.26.0)': + '@babel/helper-replace-supers@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-member-expression-to-functions': 7.25.9 '@babel/helper-optimise-call-expression': 7.25.9 - '@babel/traverse': 7.26.5 - transitivePeerDependencies: - - supports-color - - '@babel/helper-simple-access@7.24.7': - dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 - transitivePeerDependencies: - - supports-color - - '@babel/helper-skip-transparent-expression-wrappers@7.24.7': - dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/traverse': 7.25.9 transitivePeerDependencies: - supports-color '@babel/helper-skip-transparent-expression-wrappers@7.25.9': dependencies: - '@babel/traverse': 7.26.5 - '@babel/types': 7.26.5 + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color - '@babel/helper-string-parser@7.24.8': {} - '@babel/helper-string-parser@7.25.9': {} - '@babel/helper-validator-identifier@7.24.7': {} - '@babel/helper-validator-identifier@7.25.9': {} - '@babel/helper-validator-option@7.24.8': {} - '@babel/helper-validator-option@7.25.9': {} - '@babel/helpers@7.25.6': - dependencies: - '@babel/template': 7.25.0 - '@babel/types': 7.25.6 - '@babel/helpers@7.26.0': dependencies: '@babel/template': 7.25.9 - '@babel/types': 7.26.5 + '@babel/types': 7.26.3 - '@babel/highlight@7.24.7': + '@babel/parser@7.26.2': dependencies: - '@babel/helper-validator-identifier': 7.24.7 - chalk: 2.4.2 - js-tokens: 4.0.0 - picocolors: 1.1.0 - - '@babel/parser@7.25.6': - dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.26.3 '@babel/parser@7.26.5': dependencies: '@babel/types': 7.26.5 - '@babel/plugin-proposal-decorators@7.24.7(@babel/core@7.25.2)': + '@babel/plugin-proposal-decorators@7.24.7(@babel/core@7.26.0)': dependencies: - '@babel/core': 7.25.2 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-decorators': 7.24.7(@babel/core@7.25.2) + '@babel/core': 7.26.0 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.26.5 + '@babel/plugin-syntax-decorators': 7.24.7(@babel/core@7.26.0) transitivePeerDependencies: - supports-color - '@babel/plugin-syntax-decorators@7.24.7(@babel/core@7.25.2)': + '@babel/plugin-syntax-decorators@7.24.7(@babel/core@7.26.0)': dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-syntax-import-attributes@7.25.6(@babel/core@7.25.2)': + '@babel/plugin-syntax-import-attributes@7.25.6(@babel/core@7.26.0)': dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.25.2)': + '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.26.0)': dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-typescript@7.25.4(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-typescript@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-transform-typescript@7.25.2(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-syntax-typescript': 7.25.4(@babel/core@7.25.2) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-typescript@7.26.5(@babel/core@7.26.0)': + '@babel/plugin-transform-typescript@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 @@ -8524,72 +8551,70 @@ snapshots: dependencies: regenerator-runtime: 0.14.1 - '@babel/standalone@7.26.5': {} - - '@babel/template@7.25.0': - dependencies: - '@babel/code-frame': 7.24.7 - '@babel/parser': 7.25.6 - '@babel/types': 7.25.6 + '@babel/standalone@7.26.4': {} '@babel/template@7.25.9': dependencies: '@babel/code-frame': 7.26.2 - '@babel/parser': 7.26.5 - '@babel/types': 7.26.5 + '@babel/parser': 7.26.2 + '@babel/types': 7.26.3 - '@babel/traverse@7.25.6': - dependencies: - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.6 - '@babel/parser': 7.25.6 - '@babel/template': 7.25.0 - '@babel/types': 7.25.6 - debug: 4.3.7 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/traverse@7.26.5': + '@babel/traverse@7.25.9': dependencies: '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.5 - '@babel/parser': 7.26.5 + '@babel/generator': 7.26.2 + '@babel/parser': 7.26.2 '@babel/template': 7.25.9 - '@babel/types': 7.26.5 - debug: 4.3.7 + '@babel/types': 7.26.3 + debug: 4.4.0(supports-color@9.4.0) globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.25.6': + '@babel/types@7.26.3': dependencies: - '@babel/helper-string-parser': 7.24.8 - '@babel/helper-validator-identifier': 7.24.7 - to-fast-properties: 2.0.0 + '@babel/helper-string-parser': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 '@babel/types@7.26.5': dependencies: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@bcoe/v8-coverage@0.2.3': {} + '@bcoe/v8-coverage@1.0.2': {} '@clack/core@0.4.1': dependencies: - picocolors: 1.1.0 + picocolors: 1.1.1 sisteransi: 1.0.5 '@clack/prompts@0.9.1': dependencies: '@clack/core': 0.4.1 - picocolors: 1.1.0 + picocolors: 1.1.1 sisteransi: 1.0.5 '@cloudflare/kv-asset-handler@0.3.4': dependencies: mime: 3.0.0 + '@codspeed/core@4.0.0': + dependencies: + axios: 1.7.9 + find-up: 6.3.0 + form-data: 4.0.1 + node-gyp-build: 4.8.2 + transitivePeerDependencies: + - debug + + '@codspeed/vitest-plugin@4.0.0(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vitest@3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))': + dependencies: + '@codspeed/core': 4.0.0 + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vitest: 3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + transitivePeerDependencies: + - debug + '@colors/colors@1.5.0': optional: true @@ -8822,16 +8847,14 @@ snapshots: eslint: 9.18.0(jiti@2.4.2) eslint-visitor-keys: 3.4.3 - '@eslint-community/regexpp@4.11.0': {} - '@eslint-community/regexpp@4.12.1': {} '@eslint/compat@1.1.1': {} - '@eslint/config-array@0.19.1': + '@eslint/config-array@0.19.0': dependencies: - '@eslint/object-schema': 2.1.5 - debug: 4.3.7 + '@eslint/object-schema': 2.1.4 + debug: 4.4.0(supports-color@9.4.0) minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -8843,7 +8866,7 @@ snapshots: '@eslint/eslintrc@3.2.0': dependencies: ajv: 6.12.6 - debug: 4.3.7 + debug: 4.4.0(supports-color@9.4.0) espree: 10.3.0 globals: 14.0.0 ignore: 5.3.2 @@ -8856,7 +8879,7 @@ snapshots: '@eslint/js@9.18.0': {} - '@eslint/object-schema@2.1.5': {} + '@eslint/object-schema@2.1.4': {} '@eslint/plugin-kit@0.2.5': dependencies: @@ -8882,27 +8905,27 @@ snapshots: '@humanfs/node@0.16.6': dependencies: '@humanfs/core': 0.19.1 - '@humanwhocodes/retry': 0.3.0 + '@humanwhocodes/retry': 0.3.1 '@humanwhocodes/module-importer@1.0.1': {} - '@humanwhocodes/retry@0.3.0': {} + '@humanwhocodes/retry@0.3.1': {} '@humanwhocodes/retry@0.4.1': {} - '@iconify-json/carbon@1.2.5': + '@iconify-json/carbon@1.2.1': dependencies: '@iconify/types': 2.0.0 - '@iconify-json/logos@1.2.4': + '@iconify-json/logos@1.2.0': dependencies: '@iconify/types': 2.0.0 - '@iconify-json/ri@1.2.5': + '@iconify-json/ri@1.2.0': dependencies: '@iconify/types': 2.0.0 - '@iconify-json/tabler@1.2.14': + '@iconify-json/tabler@1.2.3': dependencies: '@iconify/types': 2.0.0 @@ -8917,7 +8940,7 @@ snapshots: globals: 15.14.0 kolorist: 1.8.0 local-pkg: 0.5.1 - mlly: 1.7.3 + mlly: 1.7.4 transitivePeerDependencies: - supports-color @@ -8932,10 +8955,6 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 - '@isaacs/fs-minipass@4.0.1': - dependencies: - minipass: 7.1.2 - '@istanbuljs/schema@0.1.3': {} '@jest/schemas@29.6.3': @@ -8947,7 +8966,7 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 22.10.5 + '@types/node': 22.10.10 '@types/yargs': 17.0.33 chalk: 4.1.2 @@ -8973,6 +8992,13 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.0 + '@jsdevtools/ez-spawn@3.0.4': + dependencies: + call-me-maybe: 1.0.2 + cross-spawn: 7.0.6 + string-argv: 0.3.2 + type-detect: 4.1.0 + '@jsdevtools/ono@7.1.3': {} '@jsonjoy.com/base64@1.1.2(tslib@2.7.0)': @@ -8993,48 +9019,55 @@ snapshots: '@kwsites/file-exists@1.1.1': dependencies: - debug: 4.3.7 + debug: 4.4.0(supports-color@9.4.0) transitivePeerDependencies: - supports-color '@kwsites/promise-deferred@1.1.1': {} - '@mapbox/node-pre-gyp@2.0.0-rc.0': + '@mapbox/node-pre-gyp@1.0.11': dependencies: - consola: 3.3.3 detect-libc: 2.0.3 - https-proxy-agent: 7.0.6(supports-color@9.4.0) + https-proxy-agent: 5.0.1 + make-dir: 3.1.0 node-fetch: 2.7.0 - nopt: 8.0.0 + nopt: 5.0.0 + npmlog: 5.0.1 + rimraf: 3.0.2 semver: 7.6.3 - tar: 7.4.3 + tar: 6.2.1 transitivePeerDependencies: - encoding - supports-color - '@module-federation/runtime-tools@0.5.1': - dependencies: - '@module-federation/runtime': 0.5.1 - '@module-federation/webpack-bundler-runtime': 0.5.1 + '@module-federation/error-codes@0.8.4': {} - '@module-federation/runtime@0.5.1': + '@module-federation/runtime-tools@0.8.4': dependencies: - '@module-federation/sdk': 0.5.1 + '@module-federation/runtime': 0.8.4 + '@module-federation/webpack-bundler-runtime': 0.8.4 - '@module-federation/sdk@0.5.1': {} - - '@module-federation/webpack-bundler-runtime@0.5.1': + '@module-federation/runtime@0.8.4': dependencies: - '@module-federation/runtime': 0.5.1 - '@module-federation/sdk': 0.5.1 + '@module-federation/error-codes': 0.8.4 + '@module-federation/sdk': 0.8.4 - '@netlify/functions@2.8.1': + '@module-federation/sdk@0.8.4': dependencies: - '@netlify/serverless-functions-api': 1.19.1 + isomorphic-rslog: 0.0.6 + + '@module-federation/webpack-bundler-runtime@0.8.4': + dependencies: + '@module-federation/runtime': 0.8.4 + '@module-federation/sdk': 0.8.4 + + '@netlify/functions@2.8.2': + dependencies: + '@netlify/serverless-functions-api': 1.26.1 '@netlify/node-cookies@0.1.0': {} - '@netlify/serverless-functions-api@1.19.1': + '@netlify/serverless-functions-api@1.26.1': dependencies: '@netlify/node-cookies': 0.1.0 urlpattern-polyfill: 8.0.2 @@ -9078,20 +9111,20 @@ snapshots: chokidar: 4.0.3 citty: 0.1.6 clipboardy: 4.0.0 - consola: 3.3.3 + consola: 3.4.0 defu: 6.1.4 fuse.js: 7.0.0 giget: 1.2.3 - h3: h3-nightly@2.0.0-1718872656.6765a6e + h3: h3-nightly@1.14.0-20250122-114730-3f9e703 httpxy: 0.1.5 jiti: 2.4.2 listhen: 1.9.0 nypm: 0.4.1 ofetch: 1.4.1 ohash: 1.1.4 - pathe: 2.0.1 + pathe: 2.0.2 perfect-debounce: 1.0.0 - pkg-types: 1.3.0 + pkg-types: 1.3.1 scule: 1.3.0 semver: 7.6.3 std-env: 3.8.0 @@ -9103,39 +9136,47 @@ snapshots: '@nuxt/devalue@2.0.2': {} - '@nuxt/devtools-kit@1.7.0(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))': + '@nuxt/devtools-kit@1.5.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))': dependencies: '@nuxt/kit': link:packages/kit '@nuxt/schema': link:packages/schema execa: 7.2.0 - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) - '@nuxt/devtools-ui-kit@1.7.0(@nuxt/devtools@1.7.0(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)))(@unocss/webpack@0.65.4(rollup@4.30.1)(webpack@5.97.1(esbuild@0.24.2)))(@vue/compiler-core@3.5.13)(change-case@5.4.4)(fuse.js@7.0.0)(nuxt@packages+nuxt)(postcss@8.4.49)(rollup@4.30.1)(typescript@5.7.3)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))(webpack@5.97.1(esbuild@0.24.2))': + '@nuxt/devtools-kit@1.7.0(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))': dependencies: - '@iconify-json/carbon': 1.2.5 - '@iconify-json/logos': 1.2.4 - '@iconify-json/ri': 1.2.5 - '@iconify-json/tabler': 1.2.14 - '@nuxt/devtools': 1.7.0(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) - '@nuxt/devtools-kit': 1.7.0(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) '@nuxt/kit': link:packages/kit - '@unocss/core': 0.65.4 - '@unocss/nuxt': 0.65.4(postcss@8.4.49)(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))(webpack@5.97.1(esbuild@0.24.2)) - '@unocss/preset-attributify': 0.65.4 - '@unocss/preset-icons': 0.65.4 - '@unocss/preset-mini': 0.65.4 - '@unocss/reset': 0.65.4 - '@vueuse/core': 12.4.0(typescript@5.7.3) - '@vueuse/integrations': 12.4.0(change-case@5.4.4)(focus-trap@7.6.4)(fuse.js@7.0.0)(typescript@5.7.3) - '@vueuse/nuxt': 12.4.0(nuxt@packages+nuxt)(typescript@5.7.3) + '@nuxt/schema': link:packages/schema + execa: 7.2.0 + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + + '@nuxt/devtools-ui-kit@1.5.1(@nuxt/devtools@1.7.0(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)))(@unocss/webpack@0.62.4(rollup@4.31.0)(webpack@5.97.1(esbuild@0.24.2)))(@vue/compiler-core@3.5.13)(axios@1.7.9)(change-case@5.4.4)(fuse.js@7.0.0)(nuxt@packages+nuxt)(postcss@8.5.1)(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))(webpack@5.97.1(esbuild@0.24.2))': + dependencies: + '@iconify-json/carbon': 1.2.1 + '@iconify-json/logos': 1.2.0 + '@iconify-json/ri': 1.2.0 + '@iconify-json/tabler': 1.2.3 + '@nuxt/devtools': 1.7.0(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + '@nuxt/devtools-kit': 1.5.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) + '@nuxt/kit': link:packages/kit + '@unocss/core': 0.62.4 + '@unocss/nuxt': 0.62.4(postcss@8.5.1)(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(webpack@5.97.1(esbuild@0.24.2)) + '@unocss/preset-attributify': 0.62.4 + '@unocss/preset-icons': 0.62.4 + '@unocss/preset-mini': 0.62.4 + '@unocss/reset': 0.62.4 + '@vueuse/core': 11.1.0(vue@3.5.13(typescript@5.7.3)) + '@vueuse/integrations': 11.1.0(axios@1.7.9)(change-case@5.4.4)(focus-trap@7.6.0)(fuse.js@7.0.0)(vue@3.5.13(typescript@5.7.3)) + '@vueuse/nuxt': 11.1.0(nuxt@packages+nuxt)(vue@3.5.13(typescript@5.7.3)) defu: 6.1.4 - focus-trap: 7.6.4 + focus-trap: 7.6.0 splitpanes: 3.1.5 - unocss: 0.65.4(@unocss/webpack@0.65.4(rollup@4.30.1)(webpack@5.97.1(esbuild@0.24.2)))(postcss@8.4.49)(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) - v-lazy-show: 0.3.0(@vue/compiler-core@3.5.13) + unocss: 0.62.4(@unocss/webpack@0.62.4(rollup@4.31.0)(webpack@5.97.1(esbuild@0.24.2)))(postcss@8.5.1)(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) + v-lazy-show: 0.2.4(@vue/compiler-core@3.5.13) transitivePeerDependencies: - '@unocss/webpack' - '@vue/compiler-core' + - '@vue/composition-api' - async-validator - axios - change-case @@ -9150,7 +9191,6 @@ snapshots: - rollup - sortablejs - supports-color - - typescript - universal-cookie - vite - vue @@ -9158,27 +9198,27 @@ snapshots: '@nuxt/devtools-wizard@1.7.0': dependencies: - consola: 3.3.3 + consola: 3.4.0 diff: 7.0.0 execa: 7.2.0 global-directory: 4.0.1 magicast: 0.3.5 pathe: 1.1.2 - pkg-types: 1.3.0 + pkg-types: 1.3.1 prompts: 2.4.2 rc9: 2.1.2 semver: 7.6.3 - '@nuxt/devtools@1.7.0(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': + '@nuxt/devtools@1.7.0(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': dependencies: '@antfu/utils': 0.7.10 - '@nuxt/devtools-kit': 1.7.0(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) + '@nuxt/devtools-kit': 1.7.0(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) '@nuxt/devtools-wizard': 1.7.0 '@nuxt/kit': link:packages/kit - '@vue/devtools-core': 7.6.8(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + '@vue/devtools-core': 7.6.8(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) '@vue/devtools-kit': 7.6.8 birpc: 0.2.19 - consola: 3.3.3 + consola: 3.4.0 cronstrue: 2.52.0 destr: 2.0.3 error-stack-parser-es: 0.1.5 @@ -9196,17 +9236,17 @@ snapshots: ohash: 1.1.4 pathe: 1.1.2 perfect-debounce: 1.0.0 - pkg-types: 1.3.0 + pkg-types: 1.3.1 rc9: 2.1.2 scule: 1.3.0 semver: 7.6.3 simple-git: 3.27.0 sirv: 3.0.0 tinyglobby: 0.2.10 - unimport: 3.14.5(rollup@4.30.1) - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) - vite-plugin-inspect: 0.8.9(@nuxt/kit@packages+kit)(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) - vite-plugin-vue-inspector: 5.3.1(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) + unimport: 4.0.0(rollup@4.31.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite-plugin-inspect: 0.8.9(@nuxt/kit@packages+kit)(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) + vite-plugin-vue-inspector: 5.3.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) which: 3.0.1 ws: 8.18.0 transitivePeerDependencies: @@ -9237,7 +9277,7 @@ snapshots: eslint-processor-vue-blocks: 0.1.2(@vue/compiler-sfc@3.5.13)(eslint@9.18.0(jiti@2.4.2)) globals: 15.14.0 local-pkg: 0.5.1 - pathe: 2.0.1 + pathe: 2.0.2 vue-eslint-parser: 9.4.3(eslint@9.18.0(jiti@2.4.2)) transitivePeerDependencies: - '@vue/compiler-sfc' @@ -9256,38 +9296,38 @@ snapshots: '@nuxt/friendly-errors-webpack-plugin@2.6.0(webpack@5.97.1)': dependencies: chalk: 2.4.2 - consola: 3.3.3 + consola: 3.4.0 error-stack-parser: 2.1.4 string-width: 4.2.3 webpack: 5.97.1 - '@nuxt/scripts@0.9.5(@nuxt/devtools@1.7.0(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)))(@unocss/webpack@0.65.4(rollup@4.30.1)(webpack@5.97.1(esbuild@0.24.2)))(@vue/compiler-core@3.5.13)(change-case@5.4.4)(fuse.js@7.0.0)(nuxt@packages+nuxt)(postcss@8.4.49)(rollup@4.30.1)(typescript@5.7.3)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))(webpack@5.97.1(esbuild@0.24.2))': + '@nuxt/scripts@0.9.5(@nuxt/devtools@1.7.0(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)))(@unocss/webpack@0.62.4(rollup@4.31.0)(webpack@5.97.1(esbuild@0.24.2)))(@vue/compiler-core@3.5.13)(axios@1.7.9)(change-case@5.4.4)(fuse.js@7.0.0)(nuxt@packages+nuxt)(postcss@8.5.1)(rollup@4.31.0)(typescript@5.7.3)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))(webpack@5.97.1(esbuild@0.24.2))': dependencies: - '@nuxt/devtools-kit': 1.7.0(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) - '@nuxt/devtools-ui-kit': 1.7.0(@nuxt/devtools@1.7.0(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)))(@unocss/webpack@0.65.4(rollup@4.30.1)(webpack@5.97.1(esbuild@0.24.2)))(@vue/compiler-core@3.5.13)(change-case@5.4.4)(fuse.js@7.0.0)(nuxt@packages+nuxt)(postcss@8.4.49)(rollup@4.30.1)(typescript@5.7.3)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))(webpack@5.97.1(esbuild@0.24.2)) + '@nuxt/devtools-kit': 1.7.0(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) + '@nuxt/devtools-ui-kit': 1.5.1(@nuxt/devtools@1.7.0(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)))(@unocss/webpack@0.62.4(rollup@4.31.0)(webpack@5.97.1(esbuild@0.24.2)))(@vue/compiler-core@3.5.13)(axios@1.7.9)(change-case@5.4.4)(fuse.js@7.0.0)(nuxt@packages+nuxt)(postcss@8.5.1)(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))(webpack@5.97.1(esbuild@0.24.2)) '@nuxt/kit': link:packages/kit - '@stripe/stripe-js': 4.10.0 + '@stripe/stripe-js': 4.8.0 '@types/google.maps': 3.58.1 '@types/vimeo__player': 2.18.3 '@types/youtube': 0.1.0 - '@unhead/vue': 1.11.15(vue@3.5.13(typescript@5.7.3)) - '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.7.3)) - consola: 3.3.3 + '@unhead/vue': 1.11.18(vue@3.5.13(typescript@5.7.3)) + '@vueuse/core': 11.1.0(vue@3.5.13(typescript@5.7.3)) + consola: 3.4.0 defu: 6.1.4 - h3: h3-nightly@2.0.0-1718872656.6765a6e + h3: h3-nightly@1.14.0-20250122-114730-3f9e703 magic-string: 0.30.17 - mlly: 1.7.3 + mlly: 1.7.4 ofetch: 1.4.1 ohash: 1.1.4 pathe: 1.1.2 - pkg-types: 1.3.0 + pkg-types: 1.3.1 semver: 7.6.3 shiki: 1.22.0 sirv: 3.0.0 std-env: 3.8.0 third-party-capital: 2.3.0 ufo: 1.5.4 - unimport: 3.14.5(rollup@4.30.1) + unimport: 4.0.0(rollup@4.31.0) unplugin: 1.16.1 unstorage: 1.14.4(db0@0.1.4)(ioredis@5.4.1) valibot: 0.42.1(typescript@5.7.3) @@ -9327,7 +9367,6 @@ snapshots: - sortablejs - supports-color - typescript - - uWebSockets.js - universal-cookie - uploadthing - vite @@ -9338,7 +9377,7 @@ snapshots: dependencies: '@nuxt/kit': link:packages/kit citty: 0.1.6 - consola: 3.3.3 + consola: 3.4.0 destr: 2.0.3 dotenv: 16.4.7 git-url-parse: 16.0.0 @@ -9346,27 +9385,27 @@ snapshots: ofetch: 1.4.1 package-manager-detector: 0.2.8 parse-git-config: 3.0.0 - pathe: 2.0.1 + pathe: 2.0.2 rc9: 2.1.2 std-env: 3.8.0 - '@nuxt/test-utils@3.15.4(@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)))(@types/node@22.10.5)(@vue/test-utils@2.4.6)(happy-dom@16.5.3)(jiti@2.4.2)(magicast@0.3.5)(playwright-core@1.49.1)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(typescript@5.7.3)(vitest@2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(yaml@2.7.0)': + '@nuxt/test-utils@3.15.4(@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)))(@types/node@22.10.10)(@vue/test-utils@2.4.6)(happy-dom@16.7.2)(jiti@2.4.2)(magicast@0.3.5)(playwright-core@1.50.0)(terser@5.32.0)(tsx@4.19.2)(typescript@5.7.3)(vitest@3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(yaml@2.7.0)': dependencies: '@nuxt/kit': link:packages/kit '@nuxt/schema': link:packages/schema c12: 2.0.1(magicast@0.3.5) - consola: 3.3.3 + consola: 3.4.0 defu: 6.1.4 destr: 2.0.3 estree-walker: 3.0.3 fake-indexeddb: 6.0.0 get-port-please: 3.1.2 - h3: h3-nightly@2.0.0-1718872656.6765a6e + h3: h3-nightly@1.14.0-20250122-114730-3f9e703 local-pkg: 1.0.0 magic-string: 0.30.17 node-fetch-native: 1.6.4 ofetch: 1.4.1 - pathe: 2.0.1 + pathe: 2.0.2 perfect-debounce: 1.0.0 radix3: 1.1.2 scule: 1.3.0 @@ -9375,15 +9414,15 @@ snapshots: ufo: 1.5.4 unenv: 1.10.0 unplugin: 2.1.2 - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) - vitest-environment-nuxt: 1.0.1(@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)))(@types/node@22.10.5)(@vue/test-utils@2.4.6)(happy-dom@16.5.3)(jiti@2.4.2)(magicast@0.3.5)(playwright-core@1.49.1)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(typescript@5.7.3)(vitest@2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vitest-environment-nuxt: 1.0.1(@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)))(@types/node@22.10.10)(@vue/test-utils@2.4.6)(happy-dom@16.7.2)(jiti@2.4.2)(magicast@0.3.5)(playwright-core@1.50.0)(terser@5.32.0)(tsx@4.19.2)(typescript@5.7.3)(vitest@3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(yaml@2.7.0) vue: 3.5.13(typescript@5.7.3) optionalDependencies: '@testing-library/vue': 8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)) '@vue/test-utils': 2.4.6 - happy-dom: 16.5.3 - playwright-core: 1.49.1 - vitest: 2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + happy-dom: 16.7.2 + playwright-core: 1.50.0 + vitest: 3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) transitivePeerDependencies: - '@types/node' - jiti @@ -9397,41 +9436,40 @@ snapshots: - terser - tsx - typescript - - uWebSockets.js - yaml '@nuxtjs/mdc@0.8.3': dependencies: '@nuxt/kit': link:packages/kit - '@shikijs/transformers': 1.17.0 + '@shikijs/transformers': 1.22.2 '@types/hast': 3.0.4 '@types/mdast': 4.0.4 '@vue/compiler-core': 3.5.13 - consola: 3.3.3 + consola: 3.4.0 debug: 4.4.0(supports-color@9.4.0) defu: 6.1.4 destr: 2.0.3 detab: 3.0.2 github-slugger: 2.0.0 - hast-util-to-string: 3.0.0 + hast-util-to-string: 3.0.1 mdast-util-to-hast: 13.2.0 micromark-util-sanitize-uri: 2.0.0 ohash: 1.1.4 - parse5: 7.1.2 + parse5: 7.2.1 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 + rehype-sort-attribute-values: 5.0.1 + rehype-sort-attributes: 5.0.1 remark-emoji: 5.0.1 remark-gfm: 4.0.0 remark-mdc: 3.2.1 remark-parse: 11.0.0 - remark-rehype: 11.1.0 + remark-rehype: 11.1.1 scule: 1.3.0 - shiki: 1.26.1 + shiki: 1.23.1 ufo: 1.5.4 unified: 11.0.5 unist-builder: 4.0.0 @@ -9440,6 +9478,78 @@ snapshots: transitivePeerDependencies: - supports-color + '@octokit/action@6.1.0': + dependencies: + '@octokit/auth-action': 4.1.0 + '@octokit/core': 5.2.0 + '@octokit/plugin-paginate-rest': 9.2.1(@octokit/core@5.2.0) + '@octokit/plugin-rest-endpoint-methods': 10.4.1(@octokit/core@5.2.0) + '@octokit/types': 12.6.0 + undici: 6.21.0 + + '@octokit/auth-action@4.1.0': + dependencies: + '@octokit/auth-token': 4.0.0 + '@octokit/types': 13.7.0 + + '@octokit/auth-token@4.0.0': {} + + '@octokit/core@5.2.0': + dependencies: + '@octokit/auth-token': 4.0.0 + '@octokit/graphql': 7.1.0 + '@octokit/request': 8.4.0 + '@octokit/request-error': 5.1.0 + '@octokit/types': 13.7.0 + before-after-hook: 2.2.3 + universal-user-agent: 6.0.1 + + '@octokit/endpoint@9.0.5': + dependencies: + '@octokit/types': 13.7.0 + universal-user-agent: 6.0.1 + + '@octokit/graphql@7.1.0': + dependencies: + '@octokit/request': 8.4.0 + '@octokit/types': 13.7.0 + universal-user-agent: 6.0.1 + + '@octokit/openapi-types@20.0.0': {} + + '@octokit/openapi-types@23.0.1': {} + + '@octokit/plugin-paginate-rest@9.2.1(@octokit/core@5.2.0)': + dependencies: + '@octokit/core': 5.2.0 + '@octokit/types': 12.6.0 + + '@octokit/plugin-rest-endpoint-methods@10.4.1(@octokit/core@5.2.0)': + dependencies: + '@octokit/core': 5.2.0 + '@octokit/types': 12.6.0 + + '@octokit/request-error@5.1.0': + dependencies: + '@octokit/types': 13.7.0 + deprecation: 2.3.1 + once: 1.4.0 + + '@octokit/request@8.4.0': + dependencies: + '@octokit/endpoint': 9.0.5 + '@octokit/request-error': 5.1.0 + '@octokit/types': 13.7.0 + universal-user-agent: 6.0.1 + + '@octokit/types@12.6.0': + dependencies: + '@octokit/openapi-types': 20.0.0 + + '@octokit/types@13.7.0': + dependencies: + '@octokit/openapi-types': 23.0.1 + '@one-ini/wasm@0.1.1': {} '@parcel/watcher-android-arm64@2.5.0': @@ -9533,16 +9643,17 @@ snapshots: require-from-string: 2.0.2 uri-js-replace: 1.0.1 - '@redocly/config@0.17.1': {} + '@redocly/config@0.10.1': {} - '@redocly/openapi-core@1.27.1(supports-color@9.4.0)': + '@redocly/openapi-core@1.25.0(supports-color@9.4.0)': dependencies: '@redocly/ajv': 8.11.2 - '@redocly/config': 0.17.1 + '@redocly/config': 0.10.1 colorette: 1.4.0 - https-proxy-agent: 7.0.6(supports-color@9.4.0) + https-proxy-agent: 7.0.5(supports-color@9.4.0) js-levenshtein: 1.1.6 js-yaml: 4.1.0 + lodash.isequal: 4.5.0 minimatch: 5.1.6 node-fetch: 2.7.0 pluralize: 8.0.0 @@ -9551,226 +9662,207 @@ snapshots: - encoding - supports-color - '@rollup/plugin-alias@5.1.0(rollup@4.30.1)': - dependencies: - slash: 4.0.0 + '@rollup/plugin-alias@5.1.1(rollup@4.31.0)': optionalDependencies: - rollup: 4.30.1 + rollup: 4.31.0 - '@rollup/plugin-alias@5.1.1(rollup@4.30.1)': - optionalDependencies: - rollup: 4.30.1 - - '@rollup/plugin-commonjs@26.0.3(rollup@4.30.1)': + '@rollup/plugin-commonjs@26.0.1(rollup@4.31.0)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.30.1) + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) commondir: 1.0.1 estree-walker: 2.0.2 glob: 10.4.5 is-reference: 1.2.1 magic-string: 0.30.17 optionalDependencies: - rollup: 4.30.1 + rollup: 4.31.0 - '@rollup/plugin-commonjs@28.0.2(rollup@4.30.1)': + '@rollup/plugin-commonjs@28.0.2(rollup@4.31.0)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) commondir: 1.0.1 estree-walker: 2.0.2 - fdir: 6.3.0(picomatch@4.0.2) + fdir: 6.4.2(picomatch@4.0.2) is-reference: 1.2.1 magic-string: 0.30.17 picomatch: 4.0.2 optionalDependencies: - rollup: 4.30.1 + rollup: 4.31.0 - '@rollup/plugin-inject@5.0.5(rollup@4.30.1)': + '@rollup/plugin-inject@5.0.5(rollup@4.31.0)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.30.1) + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) estree-walker: 2.0.2 magic-string: 0.30.17 optionalDependencies: - rollup: 4.30.1 + rollup: 4.31.0 - '@rollup/plugin-json@6.1.0(rollup@4.30.1)': + '@rollup/plugin-json@6.1.0(rollup@4.31.0)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.30.1) + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) optionalDependencies: - rollup: 4.30.1 + rollup: 4.31.0 - '@rollup/plugin-node-resolve@15.2.3(rollup@4.30.1)': + '@rollup/plugin-node-resolve@15.3.0(rollup@4.31.0)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.30.1) - '@types/resolve': 1.20.2 - deepmerge: 4.3.1 - is-builtin-module: 3.2.1 - is-module: 1.0.0 - resolve: 1.22.8 - optionalDependencies: - rollup: 4.30.1 - - '@rollup/plugin-node-resolve@16.0.0(rollup@4.30.1)': - dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 resolve: 1.22.8 optionalDependencies: - rollup: 4.30.1 + rollup: 4.31.0 - '@rollup/plugin-replace@5.0.7(rollup@4.30.1)': + '@rollup/plugin-node-resolve@16.0.0(rollup@4.31.0)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.30.1) + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) + '@types/resolve': 1.20.2 + deepmerge: 4.3.1 + is-module: 1.0.0 + resolve: 1.22.8 + optionalDependencies: + rollup: 4.31.0 + + '@rollup/plugin-replace@5.0.7(rollup@4.31.0)': + dependencies: + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) magic-string: 0.30.17 optionalDependencies: - rollup: 4.30.1 + rollup: 4.31.0 - '@rollup/plugin-replace@6.0.2(rollup@4.30.1)': + '@rollup/plugin-replace@6.0.2(rollup@4.31.0)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.30.1) + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) magic-string: 0.30.17 optionalDependencies: - rollup: 4.30.1 + rollup: 4.31.0 - '@rollup/plugin-terser@0.4.4(rollup@4.30.1)': + '@rollup/plugin-terser@0.4.4(rollup@4.31.0)': dependencies: serialize-javascript: 6.0.2 smob: 1.5.0 terser: 5.32.0 optionalDependencies: - rollup: 4.30.1 + rollup: 4.31.0 - '@rollup/pluginutils@5.1.0(rollup@4.30.1)': + '@rollup/pluginutils@4.2.1': dependencies: - '@types/estree': 1.0.6 estree-walker: 2.0.2 picomatch: 2.3.1 - optionalDependencies: - rollup: 4.30.1 - '@rollup/pluginutils@5.1.4(rollup@4.30.1)': + '@rollup/pluginutils@5.1.4(rollup@4.31.0)': dependencies: '@types/estree': 1.0.6 estree-walker: 2.0.2 picomatch: 4.0.2 optionalDependencies: - rollup: 4.30.1 + rollup: 4.31.0 - '@rollup/rollup-android-arm-eabi@4.30.1': + '@rollup/rollup-android-arm-eabi@4.31.0': optional: true - '@rollup/rollup-android-arm64@4.30.1': + '@rollup/rollup-android-arm64@4.31.0': optional: true - '@rollup/rollup-darwin-arm64@4.30.1': + '@rollup/rollup-darwin-arm64@4.31.0': optional: true - '@rollup/rollup-darwin-x64@4.30.1': + '@rollup/rollup-darwin-x64@4.31.0': optional: true - '@rollup/rollup-freebsd-arm64@4.30.1': + '@rollup/rollup-freebsd-arm64@4.31.0': optional: true - '@rollup/rollup-freebsd-x64@4.30.1': + '@rollup/rollup-freebsd-x64@4.31.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.30.1': + '@rollup/rollup-linux-arm-gnueabihf@4.31.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.30.1': + '@rollup/rollup-linux-arm-musleabihf@4.31.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.30.1': + '@rollup/rollup-linux-arm64-gnu@4.31.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.30.1': + '@rollup/rollup-linux-arm64-musl@4.31.0': optional: true - '@rollup/rollup-linux-loongarch64-gnu@4.30.1': + '@rollup/rollup-linux-loongarch64-gnu@4.31.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.30.1': + '@rollup/rollup-linux-powerpc64le-gnu@4.31.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.30.1': + '@rollup/rollup-linux-riscv64-gnu@4.31.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.30.1': + '@rollup/rollup-linux-s390x-gnu@4.31.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.30.1': + '@rollup/rollup-linux-x64-gnu@4.31.0': optional: true - '@rollup/rollup-linux-x64-musl@4.30.1': + '@rollup/rollup-linux-x64-musl@4.31.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.30.1': + '@rollup/rollup-win32-arm64-msvc@4.31.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.30.1': + '@rollup/rollup-win32-ia32-msvc@4.31.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.30.1': + '@rollup/rollup-win32-x64-msvc@4.31.0': optional: true - '@rspack/binding-darwin-arm64@1.1.8': + '@rspack/binding-darwin-arm64@1.2.2': optional: true - '@rspack/binding-darwin-x64@1.1.8': + '@rspack/binding-darwin-x64@1.2.2': optional: true - '@rspack/binding-linux-arm64-gnu@1.1.8': + '@rspack/binding-linux-arm64-gnu@1.2.2': optional: true - '@rspack/binding-linux-arm64-musl@1.1.8': + '@rspack/binding-linux-arm64-musl@1.2.2': optional: true - '@rspack/binding-linux-x64-gnu@1.1.8': + '@rspack/binding-linux-x64-gnu@1.2.2': optional: true - '@rspack/binding-linux-x64-musl@1.1.8': + '@rspack/binding-linux-x64-musl@1.2.2': optional: true - '@rspack/binding-win32-arm64-msvc@1.1.8': + '@rspack/binding-win32-arm64-msvc@1.2.2': optional: true - '@rspack/binding-win32-ia32-msvc@1.1.8': + '@rspack/binding-win32-ia32-msvc@1.2.2': optional: true - '@rspack/binding-win32-x64-msvc@1.1.8': + '@rspack/binding-win32-x64-msvc@1.2.2': optional: true - '@rspack/binding@1.1.8': + '@rspack/binding@1.2.2': optionalDependencies: - '@rspack/binding-darwin-arm64': 1.1.8 - '@rspack/binding-darwin-x64': 1.1.8 - '@rspack/binding-linux-arm64-gnu': 1.1.8 - '@rspack/binding-linux-arm64-musl': 1.1.8 - '@rspack/binding-linux-x64-gnu': 1.1.8 - '@rspack/binding-linux-x64-musl': 1.1.8 - '@rspack/binding-win32-arm64-msvc': 1.1.8 - '@rspack/binding-win32-ia32-msvc': 1.1.8 - '@rspack/binding-win32-x64-msvc': 1.1.8 + '@rspack/binding-darwin-arm64': 1.2.2 + '@rspack/binding-darwin-x64': 1.2.2 + '@rspack/binding-linux-arm64-gnu': 1.2.2 + '@rspack/binding-linux-arm64-musl': 1.2.2 + '@rspack/binding-linux-x64-gnu': 1.2.2 + '@rspack/binding-linux-x64-musl': 1.2.2 + '@rspack/binding-win32-arm64-msvc': 1.2.2 + '@rspack/binding-win32-ia32-msvc': 1.2.2 + '@rspack/binding-win32-x64-msvc': 1.2.2 - '@rspack/core@1.1.8': + '@rspack/core@1.2.2': dependencies: - '@module-federation/runtime-tools': 0.5.1 - '@rspack/binding': 1.1.8 + '@module-federation/runtime-tools': 0.8.4 + '@rspack/binding': 1.2.2 '@rspack/lite-tapable': 1.0.1 - caniuse-lite: 1.0.30001660 + caniuse-lite: 1.0.30001667 '@rspack/lite-tapable@1.0.1': {} - '@shikijs/core@1.17.0': - dependencies: - '@shikijs/engine-javascript': 1.17.0 - '@shikijs/engine-oniguruma': 1.17.0 - '@shikijs/types': 1.17.0 - '@shikijs/vscode-textmate': 9.3.1 - '@types/hast': 3.0.4 - hast-util-to-html: 9.0.4 - '@shikijs/core@1.22.0': dependencies: '@shikijs/engine-javascript': 1.22.0 @@ -9780,20 +9872,32 @@ snapshots: '@types/hast': 3.0.4 hast-util-to-html: 9.0.4 - '@shikijs/core@1.26.1': + '@shikijs/core@1.22.2': dependencies: - '@shikijs/engine-javascript': 1.26.1 - '@shikijs/engine-oniguruma': 1.26.1 - '@shikijs/types': 1.26.1 - '@shikijs/vscode-textmate': 10.0.1 + '@shikijs/engine-javascript': 1.22.2 + '@shikijs/engine-oniguruma': 1.22.2 + '@shikijs/types': 1.22.2 + '@shikijs/vscode-textmate': 9.3.1 '@types/hast': 3.0.4 hast-util-to-html: 9.0.4 - '@shikijs/engine-javascript@1.17.0': + '@shikijs/core@1.23.1': dependencies: - '@shikijs/types': 1.17.0 - oniguruma-to-js: 0.3.3 - regex: 4.3.2 + '@shikijs/engine-javascript': 1.23.1 + '@shikijs/engine-oniguruma': 1.23.1 + '@shikijs/types': 1.23.1 + '@shikijs/vscode-textmate': 9.3.1 + '@types/hast': 3.0.4 + hast-util-to-html: 9.0.4 + + '@shikijs/core@1.27.2': + dependencies: + '@shikijs/engine-javascript': 1.27.2 + '@shikijs/engine-oniguruma': 1.27.2 + '@shikijs/types': 1.27.2 + '@shikijs/vscode-textmate': 10.0.1 + '@types/hast': 3.0.4 + hast-util-to-html: 9.0.4 '@shikijs/engine-javascript@1.22.0': dependencies: @@ -9801,71 +9905,85 @@ snapshots: '@shikijs/vscode-textmate': 9.3.1 oniguruma-to-js: 0.4.3 - '@shikijs/engine-javascript@1.26.1': + '@shikijs/engine-javascript@1.22.2': dependencies: - '@shikijs/types': 1.26.1 - '@shikijs/vscode-textmate': 10.0.1 - oniguruma-to-es: 0.10.0 - - '@shikijs/engine-oniguruma@1.17.0': - dependencies: - '@shikijs/types': 1.17.0 + '@shikijs/types': 1.22.2 '@shikijs/vscode-textmate': 9.3.1 + oniguruma-to-js: 0.4.3 + + '@shikijs/engine-javascript@1.23.1': + dependencies: + '@shikijs/types': 1.23.1 + '@shikijs/vscode-textmate': 9.3.1 + oniguruma-to-es: 0.4.1 + + '@shikijs/engine-javascript@1.27.2': + dependencies: + '@shikijs/types': 1.27.2 + '@shikijs/vscode-textmate': 10.0.1 + oniguruma-to-es: 2.1.0 '@shikijs/engine-oniguruma@1.22.0': dependencies: '@shikijs/types': 1.22.0 '@shikijs/vscode-textmate': 9.3.1 - '@shikijs/engine-oniguruma@1.26.1': + '@shikijs/engine-oniguruma@1.22.2': dependencies: - '@shikijs/types': 1.26.1 + '@shikijs/types': 1.22.2 + '@shikijs/vscode-textmate': 9.3.1 + + '@shikijs/engine-oniguruma@1.23.1': + dependencies: + '@shikijs/types': 1.23.1 + '@shikijs/vscode-textmate': 9.3.1 + + '@shikijs/engine-oniguruma@1.27.2': + dependencies: + '@shikijs/types': 1.27.2 '@shikijs/vscode-textmate': 10.0.1 - '@shikijs/langs@1.26.1': + '@shikijs/transformers@1.22.2': dependencies: - '@shikijs/types': 1.26.1 + shiki: 1.22.2 - '@shikijs/themes@1.26.1': + '@shikijs/twoslash@1.27.2(typescript@5.7.3)': dependencies: - '@shikijs/types': 1.26.1 - - '@shikijs/transformers@1.17.0': - dependencies: - shiki: 1.17.0 - - '@shikijs/twoslash@1.26.1(typescript@5.7.3)': - dependencies: - '@shikijs/core': 1.26.1 - '@shikijs/types': 1.26.1 + '@shikijs/core': 1.27.2 + '@shikijs/types': 1.27.2 twoslash: 0.2.12(typescript@5.7.3) transitivePeerDependencies: - supports-color - typescript - '@shikijs/types@1.17.0': - dependencies: - '@shikijs/vscode-textmate': 9.3.1 - '@types/hast': 3.0.4 - '@shikijs/types@1.22.0': dependencies: '@shikijs/vscode-textmate': 9.3.1 '@types/hast': 3.0.4 - '@shikijs/types@1.26.1': + '@shikijs/types@1.22.2': + dependencies: + '@shikijs/vscode-textmate': 9.3.1 + '@types/hast': 3.0.4 + + '@shikijs/types@1.23.1': + dependencies: + '@shikijs/vscode-textmate': 9.3.1 + '@types/hast': 3.0.4 + + '@shikijs/types@1.27.2': dependencies: '@shikijs/vscode-textmate': 10.0.1 '@types/hast': 3.0.4 - '@shikijs/vitepress-twoslash@1.26.1(@nuxt/kit@packages+kit)(typescript@5.7.3)': + '@shikijs/vitepress-twoslash@1.23.1(@nuxt/kit@packages+kit)(typescript@5.7.3)': dependencies: - '@shikijs/twoslash': 1.26.1(typescript@5.7.3) + '@shikijs/twoslash': 1.27.2(typescript@5.7.3) floating-vue: 5.2.2(@nuxt/kit@packages+kit)(vue@3.5.13(typescript@5.7.3)) mdast-util-from-markdown: 2.0.2 mdast-util-gfm: 3.0.0 mdast-util-to-hast: 13.2.0 - shiki: 1.26.1 + shiki: 1.23.1 twoslash: 0.2.12(typescript@5.7.3) twoslash-vue: 0.2.12(typescript@5.7.3) vue: 3.5.13(typescript@5.7.3) @@ -9895,7 +10013,7 @@ snapshots: ignore: 5.3.2 p-map: 4.0.0 - '@stripe/stripe-js@4.10.0': {} + '@stripe/stripe-js@4.8.0': {} '@stylistic/eslint-plugin@2.12.1(eslint@9.18.0(jiti@2.4.2))(typescript@5.7.3)': dependencies: @@ -9911,7 +10029,7 @@ snapshots: '@testing-library/dom@9.3.4': dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.26.2 '@babel/runtime': 7.25.6 '@types/aria-query': 5.0.4 aria-query: 5.1.3 @@ -9933,9 +10051,34 @@ snapshots: '@types/aria-query@5.0.4': {} + '@types/babel__core@7.20.5': + dependencies: + '@babel/parser': 7.26.2 + '@babel/types': 7.26.3 + '@types/babel__generator': 7.6.8 + '@types/babel__template': 7.4.4 + '@types/babel__traverse': 7.20.6 + + '@types/babel__generator@7.6.8': + dependencies: + '@babel/types': 7.26.3 + + '@types/babel__helper-plugin-utils@7.10.3': + dependencies: + '@types/babel__core': 7.20.5 + + '@types/babel__template@7.4.4': + dependencies: + '@babel/parser': 7.26.2 + '@babel/types': 7.26.3 + + '@types/babel__traverse@7.20.6': + dependencies: + '@babel/types': 7.26.3 + '@types/connect@3.4.38': dependencies: - '@types/node': 22.10.5 + '@types/node': 22.10.10 '@types/debug@4.1.12': dependencies: @@ -9963,7 +10106,7 @@ snapshots: '@types/http-proxy@1.17.15': dependencies: - '@types/node': 22.10.5 + '@types/node': 22.10.10 '@types/istanbul-lib-coverage@2.0.6': {} @@ -9983,7 +10126,7 @@ snapshots: '@types/ms@0.7.34': {} - '@types/node@22.10.5': + '@types/node@22.10.10': dependencies: undici-types: 6.20.0 @@ -10009,7 +10152,7 @@ snapshots: '@types/webpack-bundle-analyzer@4.7.0': dependencies: - '@types/node': 22.10.5 + '@types/node': 22.10.10 tapable: 2.2.1 webpack: 5.97.1 transitivePeerDependencies: @@ -10071,6 +10214,11 @@ snapshots: '@typescript-eslint/types': 8.19.1 '@typescript-eslint/visitor-keys': 8.19.1 + '@typescript-eslint/scope-manager@8.21.0': + dependencies: + '@typescript-eslint/types': 8.21.0 + '@typescript-eslint/visitor-keys': 8.21.0 + '@typescript-eslint/type-utils@8.19.1(eslint@9.18.0(jiti@2.4.2))(typescript@5.7.3)': dependencies: '@typescript-eslint/typescript-estree': 8.19.1(typescript@5.7.3) @@ -10084,12 +10232,28 @@ snapshots: '@typescript-eslint/types@8.19.1': {} + '@typescript-eslint/types@8.21.0': {} + '@typescript-eslint/typescript-estree@8.19.1(typescript@5.7.3)': dependencies: '@typescript-eslint/types': 8.19.1 '@typescript-eslint/visitor-keys': 8.19.1 debug: 4.4.0(supports-color@9.4.0) - fast-glob: 3.3.2 + fast-glob: 3.3.3 + is-glob: 4.0.3 + minimatch: 9.0.5 + semver: 7.6.3 + ts-api-utils: 2.0.0(typescript@5.7.3) + typescript: 5.7.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/typescript-estree@8.21.0(typescript@5.7.3)': + dependencies: + '@typescript-eslint/types': 8.21.0 + '@typescript-eslint/visitor-keys': 8.21.0 + debug: 4.4.0(supports-color@9.4.0) + fast-glob: 3.3.3 is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 @@ -10109,11 +10273,27 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/utils@8.21.0(eslint@9.18.0(jiti@2.4.2))(typescript@5.7.3)': + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.18.0(jiti@2.4.2)) + '@typescript-eslint/scope-manager': 8.21.0 + '@typescript-eslint/types': 8.21.0 + '@typescript-eslint/typescript-estree': 8.21.0(typescript@5.7.3) + eslint: 9.18.0(jiti@2.4.2) + typescript: 5.7.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/visitor-keys@8.19.1': dependencies: '@typescript-eslint/types': 8.19.1 eslint-visitor-keys: 4.2.0 + '@typescript-eslint/visitor-keys@8.21.0': + dependencies: + '@typescript-eslint/types': 8.21.0 + eslint-visitor-keys: 4.2.0 + '@typescript/vfs@1.6.0(typescript@5.7.3)': dependencies: debug: 4.4.0(supports-color@9.4.0) @@ -10123,69 +10303,68 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@unhead/dom@1.11.15': + '@unhead/dom@1.11.18': dependencies: - '@unhead/schema': 1.11.15 - '@unhead/shared': 1.11.15 + '@unhead/schema': 1.11.18 + '@unhead/shared': 1.11.18 - '@unhead/schema@1.11.15': + '@unhead/schema@1.11.18': dependencies: hookable: 5.5.3 zhead: 2.2.4 - '@unhead/shared@1.11.15': + '@unhead/shared@1.11.18': dependencies: - '@unhead/schema': 1.11.15 + '@unhead/schema': 1.11.18 packrup: 0.1.2 - '@unhead/ssr@1.11.15': + '@unhead/ssr@1.11.18': dependencies: - '@unhead/schema': 1.11.15 - '@unhead/shared': 1.11.15 + '@unhead/schema': 1.11.18 + '@unhead/shared': 1.11.18 - '@unhead/vue@1.11.15(vue@3.5.13(typescript@5.7.3))': + '@unhead/vue@1.11.18(vue@3.5.13(typescript@5.7.3))': dependencies: - '@unhead/schema': 1.11.15 - '@unhead/shared': 1.11.15 + '@unhead/schema': 1.11.18 + '@unhead/shared': 1.11.18 hookable: 5.5.3 - unhead: 1.11.15 + unhead: 1.11.18 vue: 3.5.13(typescript@5.7.3) - '@unocss/astro@0.65.4(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': + '@unocss/astro@0.62.4(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))': dependencies: - '@unocss/core': 0.65.4 - '@unocss/reset': 0.65.4 - '@unocss/vite': 0.65.4(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + '@unocss/core': 0.62.4 + '@unocss/reset': 0.62.4 + '@unocss/vite': 0.62.4(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) optionalDependencies: - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + transitivePeerDependencies: + - rollup + - supports-color + + '@unocss/astro@65.4.3(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': + dependencies: + '@unocss/core': 65.4.3 + '@unocss/reset': 65.4.3 + '@unocss/vite': 65.4.3(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + optionalDependencies: + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) transitivePeerDependencies: - rollup - supports-color - vue - '@unocss/astro@65.4.0(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': - dependencies: - '@unocss/core': 65.4.0 - '@unocss/reset': 65.4.0 - '@unocss/vite': 65.4.0(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) - optionalDependencies: - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) - transitivePeerDependencies: - - rollup - - supports-color - - vue - - '@unocss/cli@0.65.4(rollup@4.30.1)': + '@unocss/cli@0.62.4(rollup@4.31.0)': dependencies: '@ampproject/remapping': 2.3.0 - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) - '@unocss/config': 0.65.4 - '@unocss/core': 0.65.4 - '@unocss/preset-uno': 0.65.4 + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) + '@unocss/config': 0.62.4 + '@unocss/core': 0.62.4 + '@unocss/preset-uno': 0.62.4 cac: 6.7.14 chokidar: 3.6.0 colorette: 2.0.20 - consola: 3.3.3 + consola: 3.4.0 magic-string: 0.30.17 pathe: 1.1.2 perfect-debounce: 1.0.0 @@ -10194,55 +10373,62 @@ snapshots: - rollup - supports-color - '@unocss/cli@65.4.0(rollup@4.30.1)': + '@unocss/cli@65.4.3(rollup@4.31.0)': dependencies: '@ampproject/remapping': 2.3.0 - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) - '@unocss/config': 65.4.0 - '@unocss/core': 65.4.0 - '@unocss/preset-uno': 65.4.0 + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) + '@unocss/config': 65.4.3 + '@unocss/core': 65.4.3 + '@unocss/preset-uno': 65.4.3 cac: 6.7.14 chokidar: 3.6.0 colorette: 2.0.20 - consola: 3.3.3 + consola: 3.4.0 magic-string: 0.30.17 - pathe: 1.1.2 + pathe: 2.0.2 perfect-debounce: 1.0.0 tinyglobby: 0.2.10 transitivePeerDependencies: - rollup - supports-color - '@unocss/config@0.65.4': + '@unocss/config@0.62.4': dependencies: - '@unocss/core': 0.65.4 - unconfig: 0.6.0 + '@unocss/core': 0.62.4 + unconfig: 0.5.5 transitivePeerDependencies: - supports-color - '@unocss/config@65.4.0': + '@unocss/config@65.4.3': dependencies: - '@unocss/core': 65.4.0 - unconfig: 0.6.0 + '@unocss/core': 65.4.3 + unconfig: 0.6.1 transitivePeerDependencies: - supports-color - '@unocss/core@0.65.4': {} + '@unocss/core@0.62.4': {} - '@unocss/core@65.4.0': {} + '@unocss/core@65.4.3': {} - '@unocss/extractor-arbitrary-variants@0.65.4': + '@unocss/extractor-arbitrary-variants@0.62.4': dependencies: - '@unocss/core': 0.65.4 + '@unocss/core': 0.62.4 - '@unocss/extractor-arbitrary-variants@65.4.0': + '@unocss/extractor-arbitrary-variants@65.4.3': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 65.4.3 - '@unocss/inspector@0.65.4(vue@3.5.13(typescript@5.7.3))': + '@unocss/inspector@0.62.4': dependencies: - '@unocss/core': 0.65.4 - '@unocss/rule-utils': 0.65.4 + '@unocss/core': 0.62.4 + '@unocss/rule-utils': 0.62.4 + gzip-size: 6.0.0 + sirv: 2.0.4 + + '@unocss/inspector@65.4.3(vue@3.5.13(typescript@5.7.3))': + dependencies: + '@unocss/core': 65.4.3 + '@unocss/rule-utils': 65.4.3 colorette: 2.0.20 gzip-size: 6.0.0 sirv: 3.0.0 @@ -10250,255 +10436,242 @@ snapshots: transitivePeerDependencies: - vue - '@unocss/inspector@65.4.0(vue@3.5.13(typescript@5.7.3))': - dependencies: - '@unocss/core': 65.4.0 - '@unocss/rule-utils': 65.4.0 - colorette: 2.0.20 - gzip-size: 6.0.0 - sirv: 3.0.0 - vue-flow-layout: 0.1.1(vue@3.5.13(typescript@5.7.3)) - transitivePeerDependencies: - - vue - - '@unocss/nuxt@0.65.4(postcss@8.4.49)(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))(webpack@5.97.1(esbuild@0.24.2))': + '@unocss/nuxt@0.62.4(postcss@8.5.1)(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(webpack@5.97.1(esbuild@0.24.2))': dependencies: '@nuxt/kit': link:packages/kit - '@unocss/config': 0.65.4 - '@unocss/core': 0.65.4 - '@unocss/preset-attributify': 0.65.4 - '@unocss/preset-icons': 0.65.4 - '@unocss/preset-tagify': 0.65.4 - '@unocss/preset-typography': 0.65.4 - '@unocss/preset-uno': 0.65.4 - '@unocss/preset-web-fonts': 0.65.4 - '@unocss/preset-wind': 0.65.4 - '@unocss/reset': 0.65.4 - '@unocss/vite': 0.65.4(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) - '@unocss/webpack': 0.65.4(rollup@4.30.1)(webpack@5.97.1(esbuild@0.24.2)) - unocss: 0.65.4(@unocss/webpack@0.65.4(rollup@4.30.1)(webpack@5.97.1(esbuild@0.24.2)))(postcss@8.4.49)(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + '@unocss/config': 0.62.4 + '@unocss/core': 0.62.4 + '@unocss/preset-attributify': 0.62.4 + '@unocss/preset-icons': 0.62.4 + '@unocss/preset-tagify': 0.62.4 + '@unocss/preset-typography': 0.62.4 + '@unocss/preset-uno': 0.62.4 + '@unocss/preset-web-fonts': 0.62.4 + '@unocss/preset-wind': 0.62.4 + '@unocss/reset': 0.62.4 + '@unocss/vite': 0.62.4(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) + '@unocss/webpack': 0.62.4(rollup@4.31.0)(webpack@5.97.1(esbuild@0.24.2)) + unocss: 0.62.4(@unocss/webpack@0.62.4(rollup@4.31.0)(webpack@5.97.1(esbuild@0.24.2)))(postcss@8.5.1)(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) transitivePeerDependencies: - postcss - rollup - supports-color - vite - - vue - webpack - '@unocss/postcss@0.65.4(postcss@8.4.49)': + '@unocss/postcss@0.62.4(postcss@8.5.1)': dependencies: - '@unocss/config': 0.65.4 - '@unocss/core': 0.65.4 - '@unocss/rule-utils': 0.65.4 - css-tree: 3.1.0 - postcss: 8.4.49 + '@unocss/config': 0.62.4 + '@unocss/core': 0.62.4 + '@unocss/rule-utils': 0.62.4 + css-tree: 2.3.1 + postcss: 8.5.1 tinyglobby: 0.2.10 transitivePeerDependencies: - supports-color - '@unocss/postcss@65.4.0(postcss@8.4.49)': + '@unocss/postcss@65.4.3(postcss@8.5.1)': dependencies: - '@unocss/config': 65.4.0 - '@unocss/core': 65.4.0 - '@unocss/rule-utils': 65.4.0 + '@unocss/config': 65.4.3 + '@unocss/core': 65.4.3 + '@unocss/rule-utils': 65.4.3 css-tree: 3.1.0 - postcss: 8.4.49 + postcss: 8.5.1 tinyglobby: 0.2.10 transitivePeerDependencies: - supports-color - '@unocss/preset-attributify@0.65.4': + '@unocss/preset-attributify@0.62.4': dependencies: - '@unocss/core': 0.65.4 + '@unocss/core': 0.62.4 - '@unocss/preset-attributify@65.4.0': + '@unocss/preset-attributify@65.4.3': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 65.4.3 - '@unocss/preset-icons@0.65.4': + '@unocss/preset-icons@0.62.4': dependencies: '@iconify/utils': 2.2.1 - '@unocss/core': 0.65.4 + '@unocss/core': 0.62.4 ofetch: 1.4.1 transitivePeerDependencies: - supports-color - '@unocss/preset-icons@65.4.0': + '@unocss/preset-icons@65.4.3': dependencies: '@iconify/utils': 2.2.1 - '@unocss/core': 65.4.0 + '@unocss/core': 65.4.3 ofetch: 1.4.1 transitivePeerDependencies: - supports-color - '@unocss/preset-mini@0.65.4': + '@unocss/preset-mini@0.62.4': dependencies: - '@unocss/core': 0.65.4 - '@unocss/extractor-arbitrary-variants': 0.65.4 - '@unocss/rule-utils': 0.65.4 + '@unocss/core': 0.62.4 + '@unocss/extractor-arbitrary-variants': 0.62.4 + '@unocss/rule-utils': 0.62.4 - '@unocss/preset-mini@65.4.0': + '@unocss/preset-mini@65.4.3': dependencies: - '@unocss/core': 65.4.0 - '@unocss/extractor-arbitrary-variants': 65.4.0 - '@unocss/rule-utils': 65.4.0 + '@unocss/core': 65.4.3 + '@unocss/extractor-arbitrary-variants': 65.4.3 + '@unocss/rule-utils': 65.4.3 - '@unocss/preset-tagify@0.65.4': + '@unocss/preset-tagify@0.62.4': dependencies: - '@unocss/core': 0.65.4 + '@unocss/core': 0.62.4 - '@unocss/preset-tagify@65.4.0': + '@unocss/preset-tagify@65.4.3': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 65.4.3 - '@unocss/preset-typography@0.65.4': + '@unocss/preset-typography@0.62.4': dependencies: - '@unocss/core': 0.65.4 - '@unocss/preset-mini': 0.65.4 + '@unocss/core': 0.62.4 + '@unocss/preset-mini': 0.62.4 - '@unocss/preset-typography@65.4.0': + '@unocss/preset-typography@65.4.3': dependencies: - '@unocss/core': 65.4.0 - '@unocss/preset-mini': 65.4.0 + '@unocss/core': 65.4.3 + '@unocss/preset-mini': 65.4.3 - '@unocss/preset-uno@0.65.4': + '@unocss/preset-uno@0.62.4': dependencies: - '@unocss/core': 0.65.4 - '@unocss/preset-mini': 0.65.4 - '@unocss/preset-wind': 0.65.4 - '@unocss/rule-utils': 0.65.4 + '@unocss/core': 0.62.4 + '@unocss/preset-mini': 0.62.4 + '@unocss/preset-wind': 0.62.4 + '@unocss/rule-utils': 0.62.4 - '@unocss/preset-uno@65.4.0': + '@unocss/preset-uno@65.4.3': dependencies: - '@unocss/core': 65.4.0 - '@unocss/preset-mini': 65.4.0 - '@unocss/preset-wind': 65.4.0 - '@unocss/rule-utils': 65.4.0 + '@unocss/core': 65.4.3 + '@unocss/preset-mini': 65.4.3 + '@unocss/preset-wind': 65.4.3 + '@unocss/rule-utils': 65.4.3 - '@unocss/preset-web-fonts@0.65.4': + '@unocss/preset-web-fonts@0.62.4': dependencies: - '@unocss/core': 0.65.4 + '@unocss/core': 0.62.4 ofetch: 1.4.1 - '@unocss/preset-web-fonts@65.4.0': + '@unocss/preset-web-fonts@65.4.3': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 65.4.3 ofetch: 1.4.1 - '@unocss/preset-wind@0.65.4': + '@unocss/preset-wind@0.62.4': dependencies: - '@unocss/core': 0.65.4 - '@unocss/preset-mini': 0.65.4 - '@unocss/rule-utils': 0.65.4 + '@unocss/core': 0.62.4 + '@unocss/preset-mini': 0.62.4 + '@unocss/rule-utils': 0.62.4 - '@unocss/preset-wind@65.4.0': + '@unocss/preset-wind@65.4.3': dependencies: - '@unocss/core': 65.4.0 - '@unocss/preset-mini': 65.4.0 - '@unocss/rule-utils': 65.4.0 + '@unocss/core': 65.4.3 + '@unocss/preset-mini': 65.4.3 + '@unocss/rule-utils': 65.4.3 - '@unocss/reset@0.65.4': {} + '@unocss/reset@0.62.4': {} - '@unocss/reset@65.4.0': {} + '@unocss/reset@65.4.3': {} - '@unocss/rule-utils@0.65.4': + '@unocss/rule-utils@0.62.4': dependencies: - '@unocss/core': 0.65.4 + '@unocss/core': 0.62.4 magic-string: 0.30.17 - '@unocss/rule-utils@65.4.0': + '@unocss/rule-utils@65.4.3': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 65.4.3 magic-string: 0.30.17 - '@unocss/transformer-attributify-jsx@0.65.4': + '@unocss/transformer-attributify-jsx@0.62.4': dependencies: - '@unocss/core': 0.65.4 + '@unocss/core': 0.62.4 - '@unocss/transformer-attributify-jsx@65.4.0': + '@unocss/transformer-attributify-jsx@65.4.3': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 65.4.3 - '@unocss/transformer-compile-class@0.65.4': + '@unocss/transformer-compile-class@0.62.4': dependencies: - '@unocss/core': 0.65.4 + '@unocss/core': 0.62.4 - '@unocss/transformer-compile-class@65.4.0': + '@unocss/transformer-compile-class@65.4.3': dependencies: - '@unocss/core': 65.4.0 + '@unocss/core': 65.4.3 - '@unocss/transformer-directives@0.65.4': + '@unocss/transformer-directives@0.62.4': dependencies: - '@unocss/core': 0.65.4 - '@unocss/rule-utils': 0.65.4 + '@unocss/core': 0.62.4 + '@unocss/rule-utils': 0.62.4 + css-tree: 2.3.1 + + '@unocss/transformer-directives@65.4.3': + dependencies: + '@unocss/core': 65.4.3 + '@unocss/rule-utils': 65.4.3 css-tree: 3.1.0 - '@unocss/transformer-directives@65.4.0': + '@unocss/transformer-variant-group@0.62.4': dependencies: - '@unocss/core': 65.4.0 - '@unocss/rule-utils': 65.4.0 - css-tree: 3.1.0 + '@unocss/core': 0.62.4 - '@unocss/transformer-variant-group@0.65.4': + '@unocss/transformer-variant-group@65.4.3': dependencies: - '@unocss/core': 0.65.4 + '@unocss/core': 65.4.3 - '@unocss/transformer-variant-group@65.4.0': - dependencies: - '@unocss/core': 65.4.0 - - '@unocss/vite@0.65.4(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': + '@unocss/vite@0.62.4(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))': dependencies: '@ampproject/remapping': 2.3.0 - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) - '@unocss/config': 0.65.4 - '@unocss/core': 0.65.4 - '@unocss/inspector': 0.65.4(vue@3.5.13(typescript@5.7.3)) + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) + '@unocss/config': 0.62.4 + '@unocss/core': 0.62.4 + '@unocss/inspector': 0.62.4 chokidar: 3.6.0 magic-string: 0.30.17 tinyglobby: 0.2.10 - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + transitivePeerDependencies: + - rollup + - supports-color + + '@unocss/vite@65.4.3(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': + dependencies: + '@ampproject/remapping': 2.3.0 + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) + '@unocss/config': 65.4.3 + '@unocss/core': 65.4.3 + '@unocss/inspector': 65.4.3(vue@3.5.13(typescript@5.7.3)) + chokidar: 3.6.0 + magic-string: 0.30.17 + tinyglobby: 0.2.10 + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) transitivePeerDependencies: - rollup - supports-color - vue - '@unocss/vite@65.4.0(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': + '@unocss/webpack@0.62.4(rollup@4.31.0)(webpack@5.97.1(esbuild@0.24.2))': dependencies: '@ampproject/remapping': 2.3.0 - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) - '@unocss/config': 65.4.0 - '@unocss/core': 65.4.0 - '@unocss/inspector': 65.4.0(vue@3.5.13(typescript@5.7.3)) + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) + '@unocss/config': 0.62.4 + '@unocss/core': 0.62.4 chokidar: 3.6.0 magic-string: 0.30.17 tinyglobby: 0.2.10 - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) - transitivePeerDependencies: - - rollup - - supports-color - - vue - - '@unocss/webpack@0.65.4(rollup@4.30.1)(webpack@5.97.1(esbuild@0.24.2))': - dependencies: - '@ampproject/remapping': 2.3.0 - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) - '@unocss/config': 0.65.4 - '@unocss/core': 0.65.4 - chokidar: 3.6.0 - magic-string: 0.30.17 - tinyglobby: 0.2.10 - unplugin: 2.1.2 + unplugin: 1.16.1 webpack: 5.97.1(esbuild@0.24.2) webpack-sources: 3.2.3 transitivePeerDependencies: - rollup - supports-color - '@vercel/nft@0.27.10(rollup@4.30.1)': + '@vercel/nft@0.27.4': dependencies: - '@mapbox/node-pre-gyp': 2.0.0-rc.0 - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) + '@mapbox/node-pre-gyp': 1.0.11 + '@rollup/pluginutils': 4.2.1 acorn: 8.14.0 acorn-import-attributes: 1.9.5(acorn@8.14.0) async-sema: 3.1.1 @@ -10506,34 +10679,33 @@ snapshots: estree-walker: 2.0.2 glob: 7.2.3 graceful-fs: 4.2.11 + micromatch: 4.0.8 node-gyp-build: 4.8.2 - picomatch: 4.0.2 resolve-from: 5.0.0 transitivePeerDependencies: - encoding - - rollup - supports-color - '@vitejs/plugin-vue-jsx@4.1.1(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': + '@vitejs/plugin-vue-jsx@4.1.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': dependencies: '@babel/core': 7.26.0 - '@babel/plugin-transform-typescript': 7.26.5(@babel/core@7.26.0) + '@babel/plugin-transform-typescript': 7.25.9(@babel/core@7.26.0) '@vue/babel-plugin-jsx': 1.2.5(@babel/core@7.26.0) - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) vue: 3.5.13(typescript@5.7.3) transitivePeerDependencies: - supports-color - '@vitejs/plugin-vue@5.2.1(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': + '@vitejs/plugin-vue@5.2.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': dependencies: - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) vue: 3.5.13(typescript@5.7.3) - '@vitest/coverage-v8@2.1.8(vitest@2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))': + '@vitest/coverage-v8@3.0.3(vitest@3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))': dependencies: '@ampproject/remapping': 2.3.0 - '@bcoe/v8-coverage': 0.2.3 - debug: 4.3.7 + '@bcoe/v8-coverage': 1.0.2 + debug: 4.4.0(supports-color@9.4.0) istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 5.0.6 @@ -10542,8 +10714,8 @@ snapshots: magicast: 0.3.5 std-env: 3.8.0 test-exclude: 7.0.1 - tinyrainbow: 1.2.0 - vitest: 2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + tinyrainbow: 2.0.0 + vitest: 3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) transitivePeerDependencies: - supports-color @@ -10559,18 +10731,44 @@ snapshots: '@vitest/utils': 2.1.8 chai: 5.1.2 tinyrainbow: 1.2.0 + optional: true - '@vitest/mocker@2.1.8(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))': + '@vitest/expect@3.0.3': + dependencies: + '@vitest/spy': 3.0.3 + '@vitest/utils': 3.0.3 + chai: 5.1.2 + tinyrainbow: 2.0.0 + + '@vitest/mocker@2.1.8(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))': dependencies: '@vitest/spy': 2.1.8 estree-walker: 3.0.3 magic-string: 0.30.17 optionalDependencies: - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + optional: true + + '@vitest/mocker@3.0.3(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))': + dependencies: + '@vitest/spy': 3.0.3 + estree-walker: 3.0.3 + magic-string: 0.30.17 + optionalDependencies: + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) '@vitest/pretty-format@2.1.8': dependencies: tinyrainbow: 1.2.0 + optional: true + + '@vitest/pretty-format@3.0.3': + dependencies: + tinyrainbow: 2.0.0 + + '@vitest/pretty-format@3.0.4': + dependencies: + tinyrainbow: 2.0.0 '@vitest/runner@1.6.0': dependencies: @@ -10582,6 +10780,12 @@ snapshots: dependencies: '@vitest/utils': 2.1.8 pathe: 1.1.2 + optional: true + + '@vitest/runner@3.0.3': + dependencies: + '@vitest/utils': 3.0.3 + pathe: 2.0.2 '@vitest/snapshot@1.6.0': dependencies: @@ -10594,6 +10798,13 @@ snapshots: '@vitest/pretty-format': 2.1.8 magic-string: 0.30.17 pathe: 1.1.2 + optional: true + + '@vitest/snapshot@3.0.3': + dependencies: + '@vitest/pretty-format': 3.0.3 + magic-string: 0.30.17 + pathe: 2.0.2 '@vitest/spy@1.6.0': dependencies: @@ -10602,6 +10813,11 @@ snapshots: '@vitest/spy@2.1.8': dependencies: tinyspy: 3.0.2 + optional: true + + '@vitest/spy@3.0.3': + dependencies: + tinyspy: 3.0.2 '@vitest/utils@1.6.0': dependencies: @@ -10615,19 +10831,20 @@ snapshots: '@vitest/pretty-format': 2.1.8 loupe: 3.1.2 tinyrainbow: 1.2.0 + optional: true + + '@vitest/utils@3.0.3': + dependencies: + '@vitest/pretty-format': 3.0.3 + loupe: 3.1.2 + tinyrainbow: 2.0.0 '@volar/language-core@2.4.11': dependencies: '@volar/source-map': 2.4.11 - '@volar/language-core@2.4.4': - dependencies: - '@volar/source-map': 2.4.4 - '@volar/source-map@2.4.11': {} - '@volar/source-map@2.4.4': {} - '@volar/typescript@2.4.11': dependencies: '@volar/language-core': 2.4.11 @@ -10644,46 +10861,40 @@ snapshots: dependencies: '@voxpelli/type-helpers': 3.4.0 - '@vue-macros/common@1.15.1(rollup@4.30.1)(vue@3.5.13(typescript@5.7.3))': + '@vue-macros/common@1.15.0(rollup@4.31.0)(vue@3.5.13(typescript@5.7.3))': dependencies: - '@babel/types': 7.26.5 - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) + '@babel/types': 7.26.3 + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) '@vue/compiler-sfc': 3.5.13 ast-kit: 1.3.2 local-pkg: 0.5.1 - magic-string-ast: 0.6.3 + magic-string-ast: 0.6.2 optionalDependencies: vue: 3.5.13(typescript@5.7.3) transitivePeerDependencies: - rollup - '@vue/babel-helper-vue-transform-on@1.2.5': {} - - '@vue/babel-plugin-jsx@1.2.5(@babel/core@7.25.2)': + '@vue-macros/common@1.16.1(vue@3.5.13(typescript@5.7.3))': dependencies: - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.25.2) - '@babel/template': 7.25.0 - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 - '@vue/babel-helper-vue-transform-on': 1.2.5 - '@vue/babel-plugin-resolve-type': 1.2.5(@babel/core@7.25.2) - html-tags: 3.3.1 - svg-tags: 1.0.0 + '@vue/compiler-sfc': 3.5.13 + ast-kit: 1.4.0 + local-pkg: 1.0.0 + magic-string-ast: 0.7.0 + pathe: 2.0.2 + picomatch: 4.0.2 optionalDependencies: - '@babel/core': 7.25.2 - transitivePeerDependencies: - - supports-color + vue: 3.5.13(typescript@5.7.3) + + '@vue/babel-helper-vue-transform-on@1.2.5': {} '@vue/babel-plugin-jsx@1.2.5(@babel/core@7.26.0)': dependencies: - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.26.0) - '@babel/template': 7.25.0 - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/template': 7.25.9 + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.3 '@vue/babel-helper-vue-transform-on': 1.2.5 '@vue/babel-plugin-resolve-type': 1.2.5(@babel/core@7.26.0) html-tags: 3.3.1 @@ -10693,31 +10904,20 @@ snapshots: transitivePeerDependencies: - supports-color - '@vue/babel-plugin-resolve-type@1.2.5(@babel/core@7.25.2)': - dependencies: - '@babel/code-frame': 7.24.7 - '@babel/core': 7.25.2 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/parser': 7.25.6 - '@vue/compiler-sfc': 3.5.13 - transitivePeerDependencies: - - supports-color - '@vue/babel-plugin-resolve-type@1.2.5(@babel/core@7.26.0)': dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.26.2 '@babel/core': 7.26.0 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/parser': 7.25.6 + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 + '@babel/parser': 7.26.2 '@vue/compiler-sfc': 3.5.13 transitivePeerDependencies: - supports-color '@vue/compiler-core@3.5.13': dependencies: - '@babel/parser': 7.25.6 + '@babel/parser': 7.26.2 '@vue/shared': 3.5.13 entities: 4.5.0 estree-walker: 2.0.2 @@ -10730,14 +10930,14 @@ snapshots: '@vue/compiler-sfc@3.5.13': dependencies: - '@babel/parser': 7.25.6 + '@babel/parser': 7.26.2 '@vue/compiler-core': 3.5.13 '@vue/compiler-dom': 3.5.13 '@vue/compiler-ssr': 3.5.13 '@vue/shared': 3.5.13 estree-walker: 2.0.2 magic-string: 0.30.17 - postcss: 8.4.49 + postcss: 8.5.1 source-map-js: 1.2.1 '@vue/compiler-ssr@3.5.13': @@ -10752,32 +10952,22 @@ snapshots: '@vue/devtools-api@6.6.4': {} - '@vue/devtools-api@7.4.5': + '@vue/devtools-api@7.7.0': dependencies: - '@vue/devtools-kit': 7.4.5 + '@vue/devtools-kit': 7.7.0 - '@vue/devtools-core@7.6.8(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': + '@vue/devtools-core@7.6.8(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': dependencies: - '@vue/devtools-kit': 7.6.8 + '@vue/devtools-kit': 7.7.0 '@vue/devtools-shared': 7.7.0 mitt: 3.0.1 nanoid: 5.0.9 pathe: 1.1.2 - vite-hot-client: 0.2.4(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) + vite-hot-client: 0.2.4(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) vue: 3.5.13(typescript@5.7.3) transitivePeerDependencies: - vite - '@vue/devtools-kit@7.4.5': - dependencies: - '@vue/devtools-shared': 7.4.5 - birpc: 0.2.17 - hookable: 5.5.3 - mitt: 3.0.1 - perfect-debounce: 1.0.0 - speakingurl: 14.0.1 - superjson: 2.2.1 - '@vue/devtools-kit@7.6.8': dependencies: '@vue/devtools-shared': 7.7.0 @@ -10788,21 +10978,27 @@ snapshots: speakingurl: 14.0.1 superjson: 2.2.1 - '@vue/devtools-shared@7.4.5': + '@vue/devtools-kit@7.7.0': dependencies: - rfdc: 1.4.1 + '@vue/devtools-shared': 7.7.0 + birpc: 0.2.19 + hookable: 5.5.3 + mitt: 3.0.1 + perfect-debounce: 1.0.0 + speakingurl: 14.0.1 + superjson: 2.2.1 '@vue/devtools-shared@7.7.0': dependencies: rfdc: 1.4.1 - '@vue/language-core@2.1.6(typescript@5.7.3)': + '@vue/language-core@2.1.10(typescript@5.7.3)': dependencies: - '@volar/language-core': 2.4.4 + '@volar/language-core': 2.4.11 '@vue/compiler-dom': 3.5.13 '@vue/compiler-vue2': 2.7.16 '@vue/shared': 3.5.13 - computeds: 0.0.1 + alien-signals: 0.2.0 minimatch: 9.0.5 muggle-string: 0.4.1 path-browserify: 1.0.1 @@ -10815,7 +11011,7 @@ snapshots: '@vue/compiler-dom': 3.5.13 '@vue/compiler-vue2': 2.7.16 '@vue/shared': 3.5.13 - alien-signals: 0.4.14 + alien-signals: 0.4.9 minimatch: 9.0.5 muggle-string: 0.4.1 path-browserify: 1.0.1 @@ -10851,64 +11047,50 @@ snapshots: js-beautify: 1.15.1 vue-component-type-helpers: 2.1.6 - '@vueuse/core@11.3.0(vue@3.5.13(typescript@5.7.3))': + '@vueuse/core@11.1.0(vue@3.5.13(typescript@5.7.3))': dependencies: '@types/web-bluetooth': 0.0.20 - '@vueuse/metadata': 11.3.0 - '@vueuse/shared': 11.3.0(vue@3.5.13(typescript@5.7.3)) + '@vueuse/metadata': 11.1.0 + '@vueuse/shared': 11.1.0(vue@3.5.13(typescript@5.7.3)) vue-demi: 0.14.10(vue@3.5.13(typescript@5.7.3)) transitivePeerDependencies: - '@vue/composition-api' - vue - '@vueuse/core@12.4.0(typescript@5.7.3)': + '@vueuse/integrations@11.1.0(axios@1.7.9)(change-case@5.4.4)(focus-trap@7.6.0)(fuse.js@7.0.0)(vue@3.5.13(typescript@5.7.3))': dependencies: - '@types/web-bluetooth': 0.0.20 - '@vueuse/metadata': 12.4.0 - '@vueuse/shared': 12.4.0(typescript@5.7.3) - vue: 3.5.13(typescript@5.7.3) - transitivePeerDependencies: - - typescript - - '@vueuse/integrations@12.4.0(change-case@5.4.4)(focus-trap@7.6.4)(fuse.js@7.0.0)(typescript@5.7.3)': - dependencies: - '@vueuse/core': 12.4.0(typescript@5.7.3) - '@vueuse/shared': 12.4.0(typescript@5.7.3) - vue: 3.5.13(typescript@5.7.3) + '@vueuse/core': 11.1.0(vue@3.5.13(typescript@5.7.3)) + '@vueuse/shared': 11.1.0(vue@3.5.13(typescript@5.7.3)) + vue-demi: 0.14.10(vue@3.5.13(typescript@5.7.3)) optionalDependencies: + axios: 1.7.9 change-case: 5.4.4 - focus-trap: 7.6.4 + focus-trap: 7.6.0 fuse.js: 7.0.0 transitivePeerDependencies: - - typescript + - '@vue/composition-api' + - vue - '@vueuse/metadata@11.3.0': {} + '@vueuse/metadata@11.1.0': {} - '@vueuse/metadata@12.4.0': {} - - '@vueuse/nuxt@12.4.0(nuxt@packages+nuxt)(typescript@5.7.3)': + '@vueuse/nuxt@11.1.0(nuxt@packages+nuxt)(vue@3.5.13(typescript@5.7.3))': dependencies: '@nuxt/kit': link:packages/kit - '@vueuse/core': 12.4.0(typescript@5.7.3) - '@vueuse/metadata': 12.4.0 - local-pkg: 1.0.0 + '@vueuse/core': 11.1.0(vue@3.5.13(typescript@5.7.3)) + '@vueuse/metadata': 11.1.0 + local-pkg: 0.5.1 nuxt: link:packages/nuxt - vue: 3.5.13(typescript@5.7.3) - transitivePeerDependencies: - - typescript - - '@vueuse/shared@11.3.0(vue@3.5.13(typescript@5.7.3))': - dependencies: vue-demi: 0.14.10(vue@3.5.13(typescript@5.7.3)) transitivePeerDependencies: - '@vue/composition-api' - vue - '@vueuse/shared@12.4.0(typescript@5.7.3)': + '@vueuse/shared@11.1.0(vue@3.5.13(typescript@5.7.3))': dependencies: - vue: 3.5.13(typescript@5.7.3) + vue-demi: 0.14.10(vue@3.5.13(typescript@5.7.3)) transitivePeerDependencies: - - typescript + - '@vue/composition-api' + - vue '@webassemblyjs/ast@1.14.1': dependencies: @@ -10990,6 +11172,8 @@ snapshots: '@xtuc/long@4.2.2': {} + abbrev@1.1.1: {} + abbrev@2.0.0: {} abort-controller@3.0.0: @@ -11012,7 +11196,17 @@ snapshots: acorn@8.14.0: {} - agent-base@7.1.3: {} + agent-base@6.0.2: + dependencies: + debug: 4.4.0(supports-color@9.4.0) + transitivePeerDependencies: + - supports-color + + agent-base@7.1.1(supports-color@9.4.0): + dependencies: + debug: 4.4.0(supports-color@9.4.0) + transitivePeerDependencies: + - supports-color aggregate-error@3.1.0: dependencies: @@ -11046,7 +11240,9 @@ snapshots: json-schema-traverse: 1.0.0 require-from-string: 2.0.2 - alien-signals@0.4.14: {} + alien-signals@0.2.0: {} + + alien-signals@0.4.9: {} ansi-colors@4.1.3: {} @@ -11076,7 +11272,7 @@ snapshots: ansi-styles@6.2.1: {} - ansis@3.8.1: {} + ansis@3.3.2: {} any-promise@1.3.0: {} @@ -11085,6 +11281,8 @@ snapshots: normalize-path: 3.0.0 picomatch: 2.3.1 + aproba@2.0.0: {} + archiver-utils@5.0.2: dependencies: glob: 10.4.5 @@ -11107,6 +11305,11 @@ snapshots: are-docs-informative@0.0.2: {} + are-we-there-yet@2.0.0: + dependencies: + delegates: 1.0.0 + readable-stream: 3.6.2 + argparse@2.0.1: {} aria-query@5.1.3: @@ -11126,44 +11329,54 @@ snapshots: assertion-error@2.0.1: {} - ast-kit@1.1.0: - dependencies: - '@babel/parser': 7.25.6 - pathe: 1.1.2 - ast-kit@1.3.2: dependencies: - '@babel/parser': 7.26.5 + '@babel/parser': 7.26.2 pathe: 1.1.2 + ast-kit@1.4.0: + dependencies: + '@babel/parser': 7.26.5 + pathe: 2.0.2 + ast-walker-scope@0.6.2: dependencies: - '@babel/parser': 7.25.6 - ast-kit: 1.1.0 + '@babel/parser': 7.26.2 + ast-kit: 1.3.2 async-sema@3.1.1: {} async@3.2.6: {} - autoprefixer@10.4.20(postcss@8.4.49): + asynckit@0.4.0: {} + + autoprefixer@10.4.20(postcss@8.5.1): dependencies: - browserslist: 4.23.3 - caniuse-lite: 1.0.30001660 + browserslist: 4.24.0 + caniuse-lite: 1.0.30001667 fraction.js: 4.3.7 normalize-range: 0.1.2 - picocolors: 1.1.0 - postcss: 8.4.49 + picocolors: 1.1.1 + postcss: 8.5.1 postcss-value-parser: 4.2.0 available-typed-arrays@1.0.7: dependencies: possible-typed-array-names: 1.0.0 + axios@1.7.9: + dependencies: + follow-redirects: 1.15.9 + form-data: 4.0.1 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + b4a@1.6.6: {} babel-walk@3.0.0-canary-5: dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.26.3 bail@2.0.2: {} @@ -11182,9 +11395,11 @@ snapshots: domhandler: 5.0.3 htmlparser2: 9.1.0 picocolors: 1.1.1 - postcss: 8.4.49 + postcss: 8.5.1 postcss-media-query-parser: 0.2.3 + before-after-hook@2.2.3: {} + big.js@5.2.2: {} binary-extensions@2.3.0: {} @@ -11193,8 +11408,6 @@ snapshots: dependencies: file-uri-to-path: 1.0.0 - birpc@0.2.17: {} - birpc@0.2.19: {} boolbase@1.0.0: {} @@ -11212,19 +11425,12 @@ snapshots: dependencies: fill-range: 7.1.1 - browserslist@4.23.3: + browserslist@4.24.0: dependencies: - caniuse-lite: 1.0.30001660 - electron-to-chromium: 1.5.19 + caniuse-lite: 1.0.30001667 + electron-to-chromium: 1.5.32 node-releases: 2.0.18 - update-browserslist-db: 1.1.0(browserslist@4.23.3) - - browserslist@4.24.4: - dependencies: - caniuse-lite: 1.0.30001692 - electron-to-chromium: 1.5.80 - node-releases: 2.0.19 - update-browserslist-db: 1.1.2(browserslist@4.24.4) + update-browserslist-db: 1.1.0(browserslist@4.24.0) buffer-crc32@1.0.0: {} @@ -11243,6 +11449,11 @@ snapshots: dependencies: run-applescript: 7.0.0 + bundle-require@5.0.0(esbuild@0.23.1): + dependencies: + esbuild: 0.23.1 + load-tsconfig: 0.2.5 + bundle-require@5.0.0(esbuild@0.24.2): dependencies: esbuild: 0.24.2 @@ -11251,16 +11462,16 @@ snapshots: c12@2.0.1(magicast@0.3.5): dependencies: chokidar: 4.0.3 - confbox: 0.1.7 + confbox: 0.1.8 defu: 6.1.4 - dotenv: 16.4.5 + dotenv: 16.4.7 giget: 1.2.3 jiti: 2.4.2 - mlly: 1.7.3 + mlly: 1.7.4 ohash: 1.1.4 pathe: 1.1.2 perfect-debounce: 1.0.0 - pkg-types: 1.3.0 + pkg-types: 1.3.1 rc9: 2.1.2 optionalDependencies: magicast: 0.3.5 @@ -11275,18 +11486,18 @@ snapshots: get-intrinsic: 1.2.4 set-function-length: 1.2.2 + call-me-maybe@1.0.2: {} + callsites@3.1.0: {} caniuse-api@3.0.0: dependencies: - browserslist: 4.23.3 - caniuse-lite: 1.0.30001660 + browserslist: 4.24.0 + caniuse-lite: 1.0.30001667 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 - caniuse-lite@1.0.30001660: {} - - caniuse-lite@1.0.30001692: {} + caniuse-lite@1.0.30001667: {} case-police@0.7.2: {} @@ -11307,7 +11518,7 @@ snapshots: assertion-error: 2.0.1 check-error: 2.1.1 deep-eql: 5.0.2 - loupe: 3.1.1 + loupe: 3.1.2 pathval: 2.0.0 chalk@2.4.2: @@ -11329,18 +11540,18 @@ snapshots: dependencies: c12: 2.0.1(magicast@0.3.5) colorette: 2.0.20 - consola: 3.3.3 + consola: 3.4.0 convert-gitmoji: 0.1.5 mri: 1.2.0 node-fetch-native: 1.6.4 ofetch: 1.4.1 open: 10.1.0 pathe: 1.1.2 - pkg-types: 1.3.0 + pkg-types: 1.3.1 scule: 1.3.0 semver: 7.6.3 std-env: 3.8.0 - yaml: 2.5.1 + yaml: 2.6.1 transitivePeerDependencies: - magicast @@ -11378,12 +11589,10 @@ snapshots: chokidar@4.0.3: dependencies: - readdirp: 4.1.0 + readdirp: 4.0.1 chownr@2.0.0: {} - chownr@3.0.0: {} - chrome-trace-event@1.0.4: {} ci-info@3.9.0: {} @@ -11392,7 +11601,7 @@ snapshots: citty@0.1.6: dependencies: - consola: 3.3.3 + consola: 3.4.0 cjs-module-lexer@1.4.1: {} @@ -11452,12 +11661,18 @@ snapshots: color-name@1.1.4: {} + color-support@1.1.3: {} + colord@2.9.3: {} colorette@1.4.0: {} colorette@2.0.20: {} + combined-stream@1.0.8: + dependencies: + delayed-stream: 1.0.0 + comma-separated-tokens@2.0.3: {} commander@10.0.1: {} @@ -11486,12 +11701,8 @@ snapshots: normalize-path: 3.0.0 readable-stream: 4.5.2 - computeds@0.0.1: {} - concat-map@0.0.1: {} - confbox@0.1.7: {} - confbox@0.1.8: {} config-chain@1.1.13: @@ -11499,12 +11710,14 @@ snapshots: ini: 1.3.8 proto-list: 1.2.4 - consola@3.3.3: {} + consola@3.4.0: {} + + console-control-strings@1.1.0: {} constantinople@4.0.1: dependencies: - '@babel/parser': 7.26.5 - '@babel/types': 7.26.5 + '@babel/parser': 7.26.2 + '@babel/types': 7.26.3 convert-gitmoji@0.1.5: {} @@ -11518,7 +11731,7 @@ snapshots: core-js-compat@3.38.1: dependencies: - browserslist: 4.23.3 + browserslist: 4.24.0 core-util-is@1.0.3: {} @@ -11547,16 +11760,10 @@ snapshots: crc-32: 1.2.2 readable-stream: 4.5.2 - croner@8.1.1: {} + croner@8.1.2: {} cronstrue@2.52.0: {} - cross-spawn@7.0.3: - dependencies: - path-key: 3.1.1 - shebang-command: 2.0.0 - which: 2.0.2 - cross-spawn@7.0.6: dependencies: path-key: 3.1.1 @@ -11565,30 +11772,34 @@ snapshots: crossws@0.2.4: {} - css-declaration-sorter@7.2.0(postcss@8.4.49): + crossws@0.3.2: dependencies: - postcss: 8.4.49 + uncrypto: 0.1.3 - css-loader@7.1.2(@rspack/core@1.1.8)(webpack@5.97.1): + css-declaration-sorter@7.2.0(postcss@8.5.1): dependencies: - icss-utils: 5.1.0(postcss@8.4.49) - postcss: 8.4.49 - postcss-modules-extract-imports: 3.1.0(postcss@8.4.49) - postcss-modules-local-by-default: 4.0.5(postcss@8.4.49) - postcss-modules-scope: 3.2.0(postcss@8.4.49) - postcss-modules-values: 4.0.0(postcss@8.4.49) + postcss: 8.5.1 + + css-loader@7.1.2(@rspack/core@1.2.2)(webpack@5.97.1): + dependencies: + icss-utils: 5.1.0(postcss@8.5.1) + postcss: 8.5.1 + postcss-modules-extract-imports: 3.1.0(postcss@8.5.1) + postcss-modules-local-by-default: 4.0.5(postcss@8.5.1) + postcss-modules-scope: 3.2.0(postcss@8.5.1) + postcss-modules-values: 4.0.0(postcss@8.5.1) postcss-value-parser: 4.2.0 semver: 7.6.3 optionalDependencies: - '@rspack/core': 1.1.8 + '@rspack/core': 1.2.2 webpack: 5.97.1 css-minimizer-webpack-plugin@7.0.0(webpack@5.97.1): dependencies: '@jridgewell/trace-mapping': 0.3.25 - cssnano: 7.0.6(postcss@8.4.49) + cssnano: 7.0.6(postcss@8.5.1) jest-worker: 29.7.0 - postcss: 8.4.49 + postcss: 8.5.1 schema-utils: 4.2.0 serialize-javascript: 6.0.2 webpack: 5.97.1 @@ -11620,49 +11831,49 @@ snapshots: cssesc@3.0.0: {} - cssnano-preset-default@7.0.6(postcss@8.4.49): + cssnano-preset-default@7.0.6(postcss@8.5.1): dependencies: - browserslist: 4.23.3 - css-declaration-sorter: 7.2.0(postcss@8.4.49) - cssnano-utils: 5.0.0(postcss@8.4.49) - postcss: 8.4.49 - postcss-calc: 10.0.2(postcss@8.4.49) - postcss-colormin: 7.0.2(postcss@8.4.49) - postcss-convert-values: 7.0.4(postcss@8.4.49) - postcss-discard-comments: 7.0.3(postcss@8.4.49) - postcss-discard-duplicates: 7.0.1(postcss@8.4.49) - postcss-discard-empty: 7.0.0(postcss@8.4.49) - postcss-discard-overridden: 7.0.0(postcss@8.4.49) - postcss-merge-longhand: 7.0.4(postcss@8.4.49) - postcss-merge-rules: 7.0.4(postcss@8.4.49) - postcss-minify-font-values: 7.0.0(postcss@8.4.49) - postcss-minify-gradients: 7.0.0(postcss@8.4.49) - postcss-minify-params: 7.0.2(postcss@8.4.49) - postcss-minify-selectors: 7.0.4(postcss@8.4.49) - postcss-normalize-charset: 7.0.0(postcss@8.4.49) - postcss-normalize-display-values: 7.0.0(postcss@8.4.49) - postcss-normalize-positions: 7.0.0(postcss@8.4.49) - postcss-normalize-repeat-style: 7.0.0(postcss@8.4.49) - postcss-normalize-string: 7.0.0(postcss@8.4.49) - postcss-normalize-timing-functions: 7.0.0(postcss@8.4.49) - postcss-normalize-unicode: 7.0.2(postcss@8.4.49) - postcss-normalize-url: 7.0.0(postcss@8.4.49) - postcss-normalize-whitespace: 7.0.0(postcss@8.4.49) - postcss-ordered-values: 7.0.1(postcss@8.4.49) - postcss-reduce-initial: 7.0.2(postcss@8.4.49) - postcss-reduce-transforms: 7.0.0(postcss@8.4.49) - postcss-svgo: 7.0.1(postcss@8.4.49) - postcss-unique-selectors: 7.0.3(postcss@8.4.49) + browserslist: 4.24.0 + css-declaration-sorter: 7.2.0(postcss@8.5.1) + cssnano-utils: 5.0.0(postcss@8.5.1) + postcss: 8.5.1 + postcss-calc: 10.0.2(postcss@8.5.1) + postcss-colormin: 7.0.2(postcss@8.5.1) + postcss-convert-values: 7.0.4(postcss@8.5.1) + postcss-discard-comments: 7.0.3(postcss@8.5.1) + postcss-discard-duplicates: 7.0.1(postcss@8.5.1) + postcss-discard-empty: 7.0.0(postcss@8.5.1) + postcss-discard-overridden: 7.0.0(postcss@8.5.1) + postcss-merge-longhand: 7.0.4(postcss@8.5.1) + postcss-merge-rules: 7.0.4(postcss@8.5.1) + postcss-minify-font-values: 7.0.0(postcss@8.5.1) + postcss-minify-gradients: 7.0.0(postcss@8.5.1) + postcss-minify-params: 7.0.2(postcss@8.5.1) + postcss-minify-selectors: 7.0.4(postcss@8.5.1) + postcss-normalize-charset: 7.0.0(postcss@8.5.1) + postcss-normalize-display-values: 7.0.0(postcss@8.5.1) + postcss-normalize-positions: 7.0.0(postcss@8.5.1) + postcss-normalize-repeat-style: 7.0.0(postcss@8.5.1) + postcss-normalize-string: 7.0.0(postcss@8.5.1) + postcss-normalize-timing-functions: 7.0.0(postcss@8.5.1) + postcss-normalize-unicode: 7.0.2(postcss@8.5.1) + postcss-normalize-url: 7.0.0(postcss@8.5.1) + postcss-normalize-whitespace: 7.0.0(postcss@8.5.1) + postcss-ordered-values: 7.0.1(postcss@8.5.1) + postcss-reduce-initial: 7.0.2(postcss@8.5.1) + postcss-reduce-transforms: 7.0.0(postcss@8.5.1) + postcss-svgo: 7.0.1(postcss@8.5.1) + postcss-unique-selectors: 7.0.3(postcss@8.5.1) - cssnano-utils@5.0.0(postcss@8.4.49): + cssnano-utils@5.0.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 - cssnano@7.0.6(postcss@8.4.49): + cssnano@7.0.6(postcss@8.5.1): dependencies: - cssnano-preset-default: 7.0.6(postcss@8.4.49) + cssnano-preset-default: 7.0.6(postcss@8.5.1) lilconfig: 3.1.2 - postcss: 8.4.49 + postcss: 8.5.1 csso@5.0.5: dependencies: @@ -11682,10 +11893,6 @@ snapshots: dependencies: ms: 2.1.3 - debug@4.3.7: - dependencies: - ms: 2.1.3 - debug@4.4.0(supports-color@9.4.0): dependencies: ms: 2.1.3 @@ -11696,6 +11903,8 @@ snapshots: dependencies: character-entities: 2.0.2 + decode-uri-component@0.4.1: {} + deep-eql@4.1.4: dependencies: type-detect: 4.1.0 @@ -11759,10 +11968,16 @@ snapshots: defu@6.1.4: {} + delayed-stream@1.0.0: {} + + delegates@1.0.0: {} + denque@2.1.0: {} depd@2.0.0: {} + deprecation@2.3.1: {} + dequal@2.0.3: {} destr@2.0.3: {} @@ -11829,9 +12044,7 @@ snapshots: dot-prop@9.0.0: dependencies: - type-fest: 4.32.0 - - dotenv@16.4.5: {} + type-fest: 4.26.1 dotenv@16.4.7: {} @@ -11854,9 +12067,7 @@ snapshots: ee-first@1.1.1: {} - electron-to-chromium@1.5.19: {} - - electron-to-chromium@1.5.80: {} + electron-to-chromium@1.5.32: {} emoji-regex-xs@1.0.0: {} @@ -11870,8 +12081,6 @@ snapshots: emoticon@4.1.0: {} - encodeurl@1.0.2: {} - encodeurl@2.0.0: {} enhanced-resolve@4.5.0: @@ -11880,11 +12089,6 @@ snapshots: memory-fs: 0.5.0 tapable: 1.1.3 - enhanced-resolve@5.17.1: - dependencies: - graceful-fs: 4.2.11 - tapable: 2.2.1 - enhanced-resolve@5.18.0: dependencies: graceful-fs: 4.2.11 @@ -11934,7 +12138,7 @@ snapshots: isarray: 2.0.5 stop-iteration-iterator: 1.0.0 - es-module-lexer@1.5.4: {} + es-module-lexer@1.6.0: {} esbuild-loader@4.2.2(webpack@5.97.1): dependencies: @@ -12042,7 +12246,7 @@ snapshots: eslint-flat-config-utils@1.0.0: dependencies: - pathe: 2.0.1 + pathe: 2.0.2 eslint-import-resolver-node@0.3.9: dependencies: @@ -12081,7 +12285,7 @@ snapshots: '@es-joy/jsdoccomment': 0.49.0 are-docs-informative: 0.0.2 comment-parser: 1.4.1 - debug: 4.3.7 + debug: 4.4.0(supports-color@9.4.0) escape-string-regexp: 4.0.0 eslint: 9.18.0(jiti@2.4.2) espree: 10.3.0 @@ -12095,10 +12299,10 @@ snapshots: eslint-plugin-no-only-tests@3.3.0: {} - eslint-plugin-perfectionist@4.6.0(eslint@9.18.0(jiti@2.4.2))(typescript@5.7.3): + eslint-plugin-perfectionist@4.7.0(eslint@9.18.0(jiti@2.4.2))(typescript@5.7.3): dependencies: - '@typescript-eslint/types': 8.19.1 - '@typescript-eslint/utils': 8.19.1(eslint@9.18.0(jiti@2.4.2))(typescript@5.7.3) + '@typescript-eslint/types': 8.21.0 + '@typescript-eslint/utils': 8.21.0(eslint@9.18.0(jiti@2.4.2))(typescript@5.7.3) eslint: 9.18.0(jiti@2.4.2) natural-orderby: 5.0.0 transitivePeerDependencies: @@ -12184,7 +12388,7 @@ snapshots: dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@9.18.0(jiti@2.4.2)) '@eslint-community/regexpp': 4.12.1 - '@eslint/config-array': 0.19.1 + '@eslint/config-array': 0.19.0 '@eslint/core': 0.10.0 '@eslint/eslintrc': 3.2.0 '@eslint/js': 9.18.0 @@ -12197,7 +12401,7 @@ snapshots: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.3.7 + debug: 4.4.0(supports-color@9.4.0) escape-string-regexp: 4.0.0 eslint-scope: 8.2.0 eslint-visitor-keys: 4.2.0 @@ -12261,7 +12465,7 @@ snapshots: execa@7.2.0: dependencies: - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 get-stream: 6.0.1 human-signals: 4.3.1 is-stream: 3.0.0 @@ -12273,7 +12477,7 @@ snapshots: execa@8.0.1: dependencies: - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 get-stream: 8.0.1 human-signals: 5.0.0 is-stream: 3.0.0 @@ -12287,27 +12491,12 @@ snapshots: extend@3.0.2: {} - externality@1.0.2: - dependencies: - enhanced-resolve: 5.17.1 - mlly: 1.7.3 - pathe: 1.1.2 - ufo: 1.5.4 - fake-indexeddb@6.0.0: {} fast-deep-equal@3.1.3: {} fast-fifo@1.3.2: {} - fast-glob@3.3.2: - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.8 - fast-glob@3.3.3: dependencies: '@nodelib/fs.stat': 2.0.5 @@ -12328,10 +12517,6 @@ snapshots: dependencies: reusify: 1.0.4 - fdir@6.3.0(picomatch@4.0.2): - optionalDependencies: - picomatch: 4.0.2 - fdir@6.4.2(picomatch@4.0.2): optionalDependencies: picomatch: 4.0.2 @@ -12354,6 +12539,8 @@ snapshots: dependencies: to-regex-range: 5.0.1 + filter-obj@5.1.0: {} + find-up-simple@1.0.0: {} find-up@4.1.0: @@ -12366,15 +12553,18 @@ snapshots: locate-path: 6.0.0 path-exists: 4.0.0 + find-up@6.3.0: + dependencies: + locate-path: 7.2.0 + path-exists: 5.0.0 + flat-cache@4.0.1: dependencies: - flatted: 3.3.1 + flatted: 3.3.2 keyv: 4.5.4 flat@6.0.1: {} - flatted@3.3.1: {} - flatted@3.3.2: {} floating-vue@5.2.2(@nuxt/kit@packages+kit)(vue@3.5.13(typescript@5.7.3)): @@ -12385,22 +12575,24 @@ snapshots: optionalDependencies: '@nuxt/kit': link:packages/kit - focus-trap@7.6.4: + focus-trap@7.6.0: dependencies: tabbable: 6.2.0 + follow-redirects@1.15.9: {} + for-each@0.3.3: dependencies: is-callable: 1.2.7 foreground-child@3.3.0: dependencies: - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 signal-exit: 4.1.0 fork-ts-checker-webpack-plugin@9.0.2(typescript@5.7.3)(webpack@5.97.1): dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.26.2 chalk: 4.1.2 chokidar: 3.6.0 cosmiconfig: 8.3.6(typescript@5.7.3) @@ -12415,6 +12607,12 @@ snapshots: typescript: 5.7.3 webpack: 5.97.1 + form-data@4.0.1: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + fraction.js@4.3.7: {} fresh@0.5.2: {} @@ -12448,6 +12646,18 @@ snapshots: fuse.js@7.0.0: {} + gauge@3.0.2: + dependencies: + aproba: 2.0.0 + color-support: 1.1.3 + console-control-strings: 1.1.0 + has-unicode: 2.0.1 + object-assign: 4.1.1 + signal-exit: 3.0.7 + string-width: 4.2.3 + strip-ansi: 6.0.1 + wide-align: 1.1.5 + gensync@1.0.0-beta.2: {} get-caller-file@2.0.5: {} @@ -12475,10 +12685,10 @@ snapshots: giget@1.2.3: dependencies: citty: 0.1.6 - consola: 3.3.3 + consola: 3.4.0 defu: 6.1.4 node-fetch-native: 1.6.4 - nypm: 0.3.11 + nypm: 0.3.12 ohash: 1.1.4 pathe: 1.1.2 tar: 6.2.1 @@ -12550,7 +12760,7 @@ snapshots: globby@14.0.2: dependencies: '@sindresorhus/merge-streams': 2.3.0 - fast-glob: 3.3.2 + fast-glob: 3.3.3 ignore: 5.3.2 path-type: 5.0.0 slash: 5.1.0 @@ -12572,10 +12782,10 @@ snapshots: dependencies: duplexer: 0.1.2 - h3-nightly@2.0.0-1718872656.6765a6e: + h3-nightly@1.14.0-20250122-114730-3f9e703: dependencies: cookie-es: 1.2.2 - crossws: 0.2.4 + crossws: 0.3.2 defu: 6.1.4 destr: 2.0.3 iron-webcrypto: 1.2.1 @@ -12584,10 +12794,8 @@ snapshots: ufo: 1.5.4 uncrypto: 0.1.3 unenv: 1.10.0 - transitivePeerDependencies: - - uWebSockets.js - happy-dom@16.5.3: + happy-dom@16.7.2: dependencies: webidl-conversions: 7.0.0 whatwg-mimetype: 3.0.0 @@ -12610,6 +12818,8 @@ snapshots: dependencies: has-symbols: 1.0.3 + has-unicode@2.0.1: {} + hash-sum@2.0.0: {} hasown@2.0.2: @@ -12648,7 +12858,7 @@ snapshots: hast-util-to-parse5: 8.0.0 html-void-elements: 3.0.0 mdast-util-to-hast: 13.2.0 - parse5: 7.1.2 + parse5: 7.2.1 unist-util-position: 5.0.0 unist-util-visit: 5.0.0 vfile: 6.0.3 @@ -12679,7 +12889,7 @@ snapshots: web-namespaces: 2.0.1 zwitch: 2.0.4 - hast-util-to-string@3.0.0: + hast-util-to-string@3.0.1: dependencies: '@types/hast': 3.0.4 @@ -12713,7 +12923,7 @@ snapshots: html-tags@3.3.1: {} - html-validate@9.1.3(vitest@2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)): + html-validate@9.1.3(vitest@2.1.8(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)): dependencies: '@html-validate/stylish': 4.2.0 '@sidvind/better-ajv-errors': 3.0.1(ajv@8.17.1) @@ -12724,18 +12934,18 @@ snapshots: prompts: 2.4.2 semver: 7.6.3 optionalDependencies: - vitest: 2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vitest: 2.1.8(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) html-void-elements@3.0.0: {} - htmlnano@2.1.1(cssnano@7.0.6(postcss@8.4.49))(postcss@8.4.49)(relateurl@0.2.7)(svgo@3.3.2)(terser@5.32.0)(typescript@5.7.3): + htmlnano@2.1.1(cssnano@7.0.6(postcss@8.5.1))(postcss@8.5.1)(relateurl@0.2.7)(svgo@3.3.2)(terser@5.32.0)(typescript@5.7.3): dependencies: cosmiconfig: 9.0.0(typescript@5.7.3) posthtml: 0.16.6 timsort: 0.3.0 optionalDependencies: - cssnano: 7.0.6(postcss@8.4.49) - postcss: 8.4.49 + cssnano: 7.0.6(postcss@8.5.1) + postcss: 8.5.1 relateurl: 0.2.7 svgo: 3.3.2 terser: 5.32.0 @@ -12766,9 +12976,16 @@ snapshots: http-shutdown@1.2.2: {} - https-proxy-agent@7.0.6(supports-color@9.4.0): + https-proxy-agent@5.0.1: dependencies: - agent-base: 7.1.3 + agent-base: 6.0.2 + debug: 4.4.0(supports-color@9.4.0) + transitivePeerDependencies: + - supports-color + + https-proxy-agent@7.0.5(supports-color@9.4.0): + dependencies: + agent-base: 7.1.1(supports-color@9.4.0) debug: 4.4.0(supports-color@9.4.0) transitivePeerDependencies: - supports-color @@ -12781,9 +12998,9 @@ snapshots: hyperdyperid@1.2.0: {} - icss-utils@5.1.0(postcss@8.4.49): + icss-utils@5.1.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 ieee754@1.2.1: {} @@ -12791,7 +13008,7 @@ snapshots: ignore@6.0.2: {} - ignore@7.0.0: {} + ignore@7.0.3: {} image-meta@0.2.1: {} @@ -12803,6 +13020,18 @@ snapshots: parent-module: 1.0.1 resolve-from: 4.0.0 + importx@0.4.4: + dependencies: + bundle-require: 5.0.0(esbuild@0.23.1) + debug: 4.4.0(supports-color@9.4.0) + esbuild: 0.23.1 + jiti: 2.4.2 + jiti-v1: jiti@1.21.6 + pathe: 1.1.2 + tsx: 4.19.2 + transitivePeerDependencies: + - supports-color + importx@0.5.1: dependencies: bundle-require: 5.0.0(esbuild@0.24.2) @@ -12814,10 +13043,10 @@ snapshots: transitivePeerDependencies: - supports-color - impound@0.2.0(rollup@4.30.1): + impound@0.2.0(rollup@4.31.0): dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) - mlly: 1.7.3 + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) + mlly: 1.7.4 pathe: 1.1.2 unenv: 1.10.0 unplugin: 1.16.1 @@ -12870,7 +13099,7 @@ snapshots: dependencies: '@ioredis/commands': 1.2.0 cluster-key-slot: 1.1.2 - debug: 4.3.7 + debug: 4.4.0(supports-color@9.4.0) denque: 2.1.0 lodash.defaults: 4.2.0 lodash.isarguments: 3.1.0 @@ -13034,8 +13263,12 @@ snapshots: isarray@2.0.5: {} + isbinaryfile@5.0.4: {} + isexe@2.0.0: {} + isomorphic-rslog@0.0.6: {} + istanbul-lib-coverage@3.2.2: {} istanbul-lib-report@3.0.1: @@ -13047,7 +13280,7 @@ snapshots: istanbul-lib-source-maps@5.0.6: dependencies: '@jridgewell/trace-mapping': 0.3.25 - debug: 4.3.7 + debug: 4.4.0(supports-color@9.4.0) istanbul-lib-coverage: 3.2.2 transitivePeerDependencies: - supports-color @@ -13072,7 +13305,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 22.10.5 + '@types/node': 22.10.10 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -13080,17 +13313,19 @@ snapshots: jest-worker@27.5.1: dependencies: - '@types/node': 22.10.5 + '@types/node': 22.10.10 merge-stream: 2.0.0 supports-color: 8.1.1 jest-worker@29.7.0: dependencies: - '@types/node': 22.10.5 + '@types/node': 22.10.10 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 + jiti@1.21.6: {} + jiti@2.4.2: {} js-beautify@1.15.1: @@ -13119,8 +13354,6 @@ snapshots: jsesc@0.5.0: {} - jsesc@2.5.2: {} - jsesc@3.0.2: {} json-buffer@3.0.1: {} @@ -13171,26 +13404,26 @@ snapshots: klona@2.0.6: {} - knip@5.42.0(@types/node@22.10.5)(typescript@5.7.3): + knip@5.43.1(@types/node@22.10.10)(typescript@5.7.3): dependencies: '@nodelib/fs.walk': 3.0.1 '@snyk/github-codeowners': 1.1.0 - '@types/node': 22.10.5 + '@types/node': 22.10.10 easy-table: 1.2.0 enhanced-resolve: 5.18.0 fast-glob: 3.3.3 jiti: 2.4.2 js-yaml: 4.1.0 minimist: 1.2.8 - picocolors: 1.1.0 + picocolors: 1.1.1 picomatch: 4.0.2 pretty-ms: 9.2.0 smol-toml: 1.3.1 strip-json-comments: 5.0.1 summary: 2.1.0 typescript: 5.7.3 - zod: 3.24.1 - zod-validation-error: 3.4.0(zod@3.24.1) + zod: 3.23.8 + zod-validation-error: 3.4.0(zod@3.23.8) knitwork@1.2.0: {} @@ -13198,7 +13431,7 @@ snapshots: launch-editor@2.9.1: dependencies: - picocolors: 1.1.0 + picocolors: 1.1.1 shell-quote: 1.8.1 lazystream@1.0.1: @@ -13225,43 +13458,20 @@ snapshots: read-pkg: 9.0.1 read-workspaces: 1.2.2 - listhen@1.7.2: - dependencies: - '@parcel/watcher': 2.5.0 - '@parcel/watcher-wasm': 2.4.1 - citty: 0.1.6 - clipboardy: 4.0.0 - consola: 3.3.3 - crossws: 0.2.4 - defu: 6.1.4 - get-port-please: 3.1.2 - h3: h3-nightly@2.0.0-1718872656.6765a6e - http-shutdown: 1.2.2 - jiti: 2.4.2 - mlly: 1.7.3 - node-forge: 1.3.1 - pathe: 1.1.2 - std-env: 3.8.0 - ufo: 1.5.4 - untun: 0.1.3 - uqr: 0.1.2 - transitivePeerDependencies: - - uWebSockets.js - listhen@1.9.0: dependencies: '@parcel/watcher': 2.5.0 '@parcel/watcher-wasm': 2.4.1 citty: 0.1.6 clipboardy: 4.0.0 - consola: 3.3.3 + consola: 3.4.0 crossws: 0.2.4 defu: 6.1.4 get-port-please: 3.1.2 - h3: h3-nightly@2.0.0-1718872656.6765a6e + h3: h3-nightly@1.14.0-20250122-114730-3f9e703 http-shutdown: 1.2.2 jiti: 2.4.2 - mlly: 1.7.3 + mlly: 1.7.4 node-forge: 1.3.1 pathe: 1.1.2 std-env: 3.8.0 @@ -13287,20 +13497,15 @@ snapshots: emojis-list: 3.0.0 json5: 2.2.3 - local-pkg@0.5.0: - dependencies: - mlly: 1.7.3 - pkg-types: 1.3.0 - local-pkg@0.5.1: dependencies: - mlly: 1.7.3 - pkg-types: 1.3.0 + mlly: 1.7.4 + pkg-types: 1.3.1 local-pkg@1.0.0: dependencies: - mlly: 1.7.3 - pkg-types: 1.3.0 + mlly: 1.7.4 + pkg-types: 1.3.1 locate-path@5.0.0: dependencies: @@ -13310,10 +13515,16 @@ snapshots: dependencies: p-locate: 5.0.0 + locate-path@7.2.0: + dependencies: + p-locate: 6.0.0 + lodash.defaults@4.2.0: {} lodash.isarguments@3.1.0: {} + lodash.isequal@4.5.0: {} + lodash.memoize@4.1.2: {} lodash.merge@4.6.2: {} @@ -13328,10 +13539,6 @@ snapshots: dependencies: get-func-name: 2.0.2 - loupe@3.1.1: - dependencies: - get-func-name: 2.0.2 - loupe@3.1.2: {} lru-cache@10.4.3: {} @@ -13344,7 +13551,11 @@ snapshots: lz-string@1.5.0: {} - magic-string-ast@0.6.3: + magic-string-ast@0.6.2: + dependencies: + magic-string: 0.30.17 + + magic-string-ast@0.7.0: dependencies: magic-string: 0.30.17 @@ -13354,8 +13565,8 @@ snapshots: magicast@0.3.5: dependencies: - '@babel/parser': 7.25.6 - '@babel/types': 7.25.6 + '@babel/parser': 7.26.2 + '@babel/types': 7.26.3 source-map-js: 1.2.1 make-dir@3.1.0: @@ -13417,23 +13628,6 @@ snapshots: unist-util-is: 6.0.0 unist-util-visit-parents: 6.0.1 - mdast-util-from-markdown@2.0.1: - dependencies: - '@types/mdast': 4.0.4 - '@types/unist': 3.0.3 - decode-named-character-reference: 1.0.2 - devlop: 1.1.0 - mdast-util-to-string: 4.0.0 - micromark: 4.0.0 - micromark-util-decode-numeric-character-reference: 2.0.1 - micromark-util-decode-string: 2.0.0 - micromark-util-normalize-identifier: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - unist-util-stringify-position: 4.0.0 - transitivePeerDependencies: - - supports-color - mdast-util-from-markdown@2.0.2: dependencies: '@types/mdast': 4.0.4 @@ -13464,7 +13658,7 @@ snapshots: '@types/mdast': 4.0.4 devlop: 1.1.0 mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 micromark-util-normalize-identifier: 2.0.0 transitivePeerDependencies: - supports-color @@ -13473,7 +13667,7 @@ snapshots: dependencies: '@types/mdast': 4.0.4 mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -13483,7 +13677,7 @@ snapshots: devlop: 1.1.0 markdown-table: 3.0.3 mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -13492,7 +13686,7 @@ snapshots: '@types/mdast': 4.0.4 devlop: 1.1.0 mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -13504,7 +13698,7 @@ snapshots: mdast-util-gfm-strikethrough: 2.0.0 mdast-util-gfm-table: 2.0.0 mdast-util-gfm-task-list-item: 2.0.0 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -13525,13 +13719,14 @@ snapshots: unist-util-visit: 5.0.0 vfile: 6.0.3 - mdast-util-to-markdown@2.1.0: + mdast-util-to-markdown@2.1.2: dependencies: '@types/mdast': 4.0.4 '@types/unist': 3.0.3 longest-streak: 3.1.0 mdast-util-phrasing: 4.1.0 mdast-util-to-string: 4.0.0 + micromark-util-classify-character: 2.0.0 micromark-util-decode-string: 2.0.0 unist-util-visit: 5.0.0 zwitch: 2.0.4 @@ -13827,64 +14022,55 @@ snapshots: minipass: 3.3.6 yallist: 4.0.0 - minizlib@3.0.1: - dependencies: - minipass: 7.1.2 - rimraf: 5.0.10 - mitt@3.0.1: {} mkdirp@1.0.4: {} - mkdirp@3.0.1: {} - - mkdist@2.2.0(sass@1.78.0)(typescript@5.7.3)(vue-tsc@2.1.6(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)): + mkdist@2.2.0(typescript@5.7.3)(vue-tsc@2.1.10(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)): dependencies: - autoprefixer: 10.4.20(postcss@8.4.49) + autoprefixer: 10.4.20(postcss@8.5.1) citty: 0.1.6 - cssnano: 7.0.6(postcss@8.4.49) + cssnano: 7.0.6(postcss@8.5.1) defu: 6.1.4 esbuild: 0.24.2 jiti: 2.4.2 - mlly: 1.7.3 + mlly: 1.7.4 pathe: 1.1.2 - pkg-types: 1.3.0 - postcss: 8.4.49 - postcss-nested: 7.0.2(postcss@8.4.49) + pkg-types: 1.3.1 + postcss: 8.5.1 + postcss-nested: 7.0.2(postcss@8.5.1) semver: 7.6.3 tinyglobby: 0.2.10 optionalDependencies: - sass: 1.78.0 typescript: 5.7.3 vue: 3.5.13(typescript@5.7.3) - vue-tsc: 2.1.6(typescript@5.7.3) + vue-tsc: 2.1.10(typescript@5.7.3) - mkdist@2.2.0(sass@1.78.0)(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)): + mkdist@2.2.0(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)): dependencies: - autoprefixer: 10.4.20(postcss@8.4.49) + autoprefixer: 10.4.20(postcss@8.5.1) citty: 0.1.6 - cssnano: 7.0.6(postcss@8.4.49) + cssnano: 7.0.6(postcss@8.5.1) defu: 6.1.4 esbuild: 0.24.2 jiti: 2.4.2 - mlly: 1.7.3 + mlly: 1.7.4 pathe: 1.1.2 - pkg-types: 1.3.0 - postcss: 8.4.49 - postcss-nested: 7.0.2(postcss@8.4.49) + pkg-types: 1.3.1 + postcss: 8.5.1 + postcss-nested: 7.0.2(postcss@8.5.1) semver: 7.6.3 tinyglobby: 0.2.10 optionalDependencies: - sass: 1.78.0 typescript: 5.7.3 vue: 3.5.13(typescript@5.7.3) vue-tsc: 2.2.0(typescript@5.7.3) - mlly@1.7.3: + mlly@1.7.4: dependencies: acorn: 8.14.0 - pathe: 1.1.2 - pkg-types: 1.3.0 + pathe: 2.0.2 + pkg-types: 1.3.1 ufo: 1.5.4 mri@1.2.0: {} @@ -13901,11 +14087,11 @@ snapshots: object-assign: 4.1.1 thenify-all: 1.6.0 - nanoid@3.3.7: {} + nanoid@3.3.8: {} nanoid@5.0.9: {} - nanotar@0.1.1: {} + nanotar@0.2.0: {} natural-compare@1.4.0: {} @@ -13913,30 +14099,30 @@ snapshots: neo-async@2.6.2: {} - nitro-nightly@3.0.0-beta-28796231.359af68d(typescript@5.7.3): + nitro-nightly@3.0.0-beta-28938837.19ec5395(typescript@5.7.3): dependencies: '@cloudflare/kv-asset-handler': 0.3.4 - '@netlify/functions': 2.8.1 - '@rollup/plugin-alias': 5.1.0(rollup@4.30.1) - '@rollup/plugin-commonjs': 26.0.3(rollup@4.30.1) - '@rollup/plugin-inject': 5.0.5(rollup@4.30.1) - '@rollup/plugin-json': 6.1.0(rollup@4.30.1) - '@rollup/plugin-node-resolve': 15.2.3(rollup@4.30.1) - '@rollup/plugin-replace': 5.0.7(rollup@4.30.1) - '@rollup/plugin-terser': 0.4.4(rollup@4.30.1) - '@rollup/pluginutils': 5.1.0(rollup@4.30.1) + '@netlify/functions': 2.8.2 + '@rollup/plugin-alias': 5.1.1(rollup@4.31.0) + '@rollup/plugin-commonjs': 26.0.1(rollup@4.31.0) + '@rollup/plugin-inject': 5.0.5(rollup@4.31.0) + '@rollup/plugin-json': 6.1.0(rollup@4.31.0) + '@rollup/plugin-node-resolve': 15.3.0(rollup@4.31.0) + '@rollup/plugin-replace': 5.0.7(rollup@4.31.0) + '@rollup/plugin-terser': 0.4.4(rollup@4.31.0) + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) '@types/http-proxy': 1.17.15 - '@vercel/nft': 0.27.10(rollup@4.30.1) + '@vercel/nft': 0.27.4 archiver: 7.0.1 c12: 2.0.1(magicast@0.3.5) chalk: 5.3.0 chokidar: 3.6.0 citty: 0.1.6 compatx: 0.1.8 - confbox: 0.1.7 - consola: 3.3.3 + confbox: 0.1.8 + consola: 3.4.0 cookie-es: 1.2.2 - croner: 8.1.1 + croner: 8.1.2 crossws: 0.2.4 db0: 0.1.4 defu: 6.1.4 @@ -13948,40 +14134,40 @@ snapshots: fs-extra: 11.2.0 globby: 14.0.2 gzip-size: 7.0.0 - h3: h3-nightly@2.0.0-1718872656.6765a6e + h3: h3-nightly@1.14.0-20250122-114730-3f9e703 hookable: 5.5.3 httpxy: 0.1.5 ioredis: 5.4.1 jiti: 2.4.2 klona: 2.0.6 knitwork: 1.2.0 - listhen: 1.7.2 + listhen: 1.9.0 magic-string: 0.30.17 magicast: 0.3.5 mime: 4.0.4 - mlly: 1.7.3 + mlly: 1.7.4 mri: 1.2.0 node-fetch-native: 1.6.4 ofetch: 1.4.1 ohash: 1.1.4 - openapi-typescript: 7.5.2(typescript@5.7.3) + openapi-typescript: 7.4.0(typescript@5.7.3) pathe: 1.1.2 perfect-debounce: 1.0.0 - pkg-types: 1.3.0 + pkg-types: 1.3.1 pretty-bytes: 6.1.1 radix3: 1.1.2 - rollup: 4.30.1 - rollup-plugin-visualizer: 5.14.0(rollup@4.30.1) + rollup: 4.31.0 + rollup-plugin-visualizer: 5.13.1(rollup@4.31.0) scule: 1.3.0 semver: 7.6.3 serve-placeholder: 2.0.2 - serve-static: 1.16.0 + serve-static: 1.16.2 std-env: 3.8.0 ufo: 1.5.4 uncrypto: 0.1.3 unctx: 2.4.1 unenv: 1.10.0 - unimport: 3.14.5(rollup@4.30.1) + unimport: 4.0.0(rollup@4.31.0) unstorage: 1.14.4(db0@0.1.4)(ioredis@5.4.1) untyped: 1.5.2 unwasm: 0.3.9 @@ -14034,16 +14220,14 @@ snapshots: node-releases@2.0.18: {} - node-releases@2.0.19: {} + nopt@5.0.0: + dependencies: + abbrev: 1.1.1 nopt@7.2.1: dependencies: abbrev: 2.0.0 - nopt@8.0.0: - dependencies: - abbrev: 2.0.0 - normalize-package-data@2.5.0: dependencies: hosted-git-info: 2.8.9 @@ -14071,6 +14255,13 @@ snapshots: dependencies: path-key: 4.0.0 + npmlog@5.0.1: + dependencies: + are-we-there-yet: 2.0.0 + console-control-strings: 1.1.0 + gauge: 3.0.2 + set-blocking: 2.0.0 + nth-check@2.1.1: dependencies: boolbase: 1.0.0 @@ -14080,14 +14271,14 @@ snapshots: '@nuxt/kit': link:packages/kit '@nuxt/schema': link:packages/schema '@nuxtjs/mdc': 0.8.3 - '@shikijs/vitepress-twoslash': 1.26.1(@nuxt/kit@packages+kit)(typescript@5.7.3) + '@shikijs/vitepress-twoslash': 1.23.1(@nuxt/kit@packages+kit)(typescript@5.7.3) cac: 6.7.14 chokidar: 4.0.3 - fast-glob: 3.3.2 + fast-glob: 3.3.3 pathe: 1.1.2 picocolors: 1.1.1 remark-parse: 11.0.0 - shiki: 1.26.1 + shiki: 1.23.1 twoslash: 0.2.12(typescript@5.7.3) typescript: 5.7.3 unified: 11.0.5 @@ -14095,21 +14286,30 @@ snapshots: transitivePeerDependencies: - supports-color - nypm@0.3.11: + nypm@0.3.12: dependencies: citty: 0.1.6 - consola: 3.3.3 + consola: 3.4.0 execa: 8.0.1 pathe: 1.1.2 - pkg-types: 1.3.0 + pkg-types: 1.3.1 ufo: 1.5.4 nypm@0.4.1: dependencies: citty: 0.1.6 - consola: 3.3.3 + consola: 3.4.0 pathe: 1.1.2 - pkg-types: 1.3.0 + pkg-types: 1.3.1 + tinyexec: 0.3.2 + ufo: 1.5.4 + + nypm@0.5.0: + dependencies: + citty: 0.1.6 + consola: 3.4.0 + pathe: 2.0.2 + pkg-types: 1.3.1 tinyexec: 0.3.2 ufo: 1.5.4 @@ -14131,12 +14331,6 @@ snapshots: has-symbols: 1.0.3 object-keys: 1.1.1 - ofetch@1.3.4: - dependencies: - destr: 2.0.3 - node-fetch-native: 1.6.4 - ufo: 1.5.4 - ofetch@1.4.1: dependencies: destr: 2.0.3 @@ -14157,17 +14351,21 @@ snapshots: dependencies: mimic-fn: 4.0.0 - oniguruma-to-es@0.10.0: + oniguruma-to-es@0.4.1: + dependencies: + emoji-regex-xs: 1.0.0 + regex: 5.1.1 + regex-recursion: 4.3.0 + + oniguruma-to-es@2.1.0: dependencies: emoji-regex-xs: 1.0.0 regex: 5.1.1 regex-recursion: 5.1.1 - oniguruma-to-js@0.3.3: {} - oniguruma-to-js@0.4.3: dependencies: - regex: 4.3.2 + regex: 4.4.0 open@10.1.0: dependencies: @@ -14182,9 +14380,9 @@ snapshots: is-docker: 2.2.1 is-wsl: 2.2.0 - openapi-typescript@7.5.2(typescript@5.7.3): + openapi-typescript@7.4.0(typescript@5.7.3): dependencies: - '@redocly/openapi-core': 1.27.1(supports-color@9.4.0) + '@redocly/openapi-core': 1.25.0(supports-color@9.4.0) ansi-colors: 4.1.3 change-case: 5.4.4 parse-json: 8.1.0 @@ -14213,6 +14411,10 @@ snapshots: dependencies: yocto-queue: 0.1.0 + p-limit@4.0.0: + dependencies: + yocto-queue: 1.1.1 + p-limit@5.0.0: dependencies: yocto-queue: 1.1.1 @@ -14225,6 +14427,10 @@ snapshots: dependencies: p-limit: 3.1.0 + p-locate@6.0.0: + dependencies: + p-limit: 4.0.0 + p-map@4.0.0: dependencies: aggregate-error: 3.1.0 @@ -14233,8 +14439,6 @@ snapshots: package-json-from-dist@1.0.0: {} - package-manager-detector@0.2.0: {} - package-manager-detector@0.2.8: {} packrup@0.1.2: {} @@ -14261,21 +14465,21 @@ snapshots: parse-imports@2.1.1: dependencies: - es-module-lexer: 1.5.4 + es-module-lexer: 1.6.0 slashes: 3.0.12 parse-json@5.2.0: dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.26.2 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 parse-json@8.1.0: dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.26.2 index-to-position: 0.1.2 - type-fest: 4.32.0 + type-fest: 4.26.1 parse-ms@4.0.0: {} @@ -14296,7 +14500,7 @@ snapshots: parse5@6.0.1: {} - parse5@7.1.2: + parse5@7.2.1: dependencies: entities: 4.5.0 @@ -14306,6 +14510,8 @@ snapshots: path-exists@4.0.0: {} + path-exists@5.0.0: {} + path-is-absolute@1.0.1: {} path-key@3.1.1: {} @@ -14330,7 +14536,7 @@ snapshots: pathe@1.1.2: {} - pathe@2.0.1: {} + pathe@2.0.2: {} pathval@1.1.1: {} @@ -14338,8 +14544,6 @@ snapshots: perfect-debounce@1.0.0: {} - picocolors@1.1.0: {} - picocolors@1.1.1: {} picomatch@2.3.1: {} @@ -14350,13 +14554,23 @@ snapshots: pify@6.1.0: {} - pkg-types@1.3.0: + pkg-pr-new@0.0.39: + dependencies: + '@jsdevtools/ez-spawn': 3.0.4 + '@octokit/action': 6.1.0 + ignore: 5.3.2 + isbinaryfile: 5.0.4 + pkg-types: 1.3.1 + query-registry: 3.0.1 + tinyglobby: 0.2.10 + + pkg-types@1.3.1: dependencies: confbox: 0.1.8 - mlly: 1.7.3 - pathe: 1.1.2 + mlly: 1.7.4 + pathe: 2.0.2 - playwright-core@1.49.1: {} + playwright-core@1.50.0: {} pluralize@8.0.0: {} @@ -14364,193 +14578,193 @@ snapshots: possible-typed-array-names@1.0.0: {} - postcss-calc@10.0.2(postcss@8.4.49): + postcss-calc@10.0.2(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-selector-parser: 6.1.2 postcss-value-parser: 4.2.0 - postcss-colormin@7.0.2(postcss@8.4.49): + postcss-colormin@7.0.2(postcss@8.5.1): dependencies: - browserslist: 4.23.3 + browserslist: 4.24.0 caniuse-api: 3.0.0 colord: 2.9.3 - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-convert-values@7.0.4(postcss@8.4.49): + postcss-convert-values@7.0.4(postcss@8.5.1): dependencies: - browserslist: 4.23.3 - postcss: 8.4.49 + browserslist: 4.24.0 + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-discard-comments@7.0.3(postcss@8.4.49): + postcss-discard-comments@7.0.3(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-selector-parser: 6.1.2 - postcss-discard-duplicates@7.0.1(postcss@8.4.49): + postcss-discard-duplicates@7.0.1(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 - postcss-discard-empty@7.0.0(postcss@8.4.49): + postcss-discard-empty@7.0.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 - postcss-discard-overridden@7.0.0(postcss@8.4.49): + postcss-discard-overridden@7.0.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-import-resolver@2.0.0: dependencies: enhanced-resolve: 4.5.0 - postcss-import@16.1.0(postcss@8.4.49): + postcss-import@16.1.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser: 4.2.0 read-cache: 1.0.0 resolve: 1.22.8 - postcss-loader@8.1.1(@rspack/core@1.1.8)(postcss@8.4.49)(typescript@5.7.3)(webpack@5.97.1): + postcss-loader@8.1.1(@rspack/core@1.2.2)(postcss@8.5.1)(typescript@5.7.3)(webpack@5.97.1): dependencies: cosmiconfig: 9.0.0(typescript@5.7.3) jiti: 2.4.2 - postcss: 8.4.49 + postcss: 8.5.1 semver: 7.6.3 optionalDependencies: - '@rspack/core': 1.1.8 + '@rspack/core': 1.2.2 webpack: 5.97.1 transitivePeerDependencies: - typescript postcss-media-query-parser@0.2.3: {} - postcss-merge-longhand@7.0.4(postcss@8.4.49): + postcss-merge-longhand@7.0.4(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser: 4.2.0 - stylehacks: 7.0.4(postcss@8.4.49) + stylehacks: 7.0.4(postcss@8.5.1) - postcss-merge-rules@7.0.4(postcss@8.4.49): + postcss-merge-rules@7.0.4(postcss@8.5.1): dependencies: - browserslist: 4.23.3 + browserslist: 4.24.0 caniuse-api: 3.0.0 - cssnano-utils: 5.0.0(postcss@8.4.49) - postcss: 8.4.49 + cssnano-utils: 5.0.0(postcss@8.5.1) + postcss: 8.5.1 postcss-selector-parser: 6.1.2 - postcss-minify-font-values@7.0.0(postcss@8.4.49): + postcss-minify-font-values@7.0.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-minify-gradients@7.0.0(postcss@8.4.49): + postcss-minify-gradients@7.0.0(postcss@8.5.1): dependencies: colord: 2.9.3 - cssnano-utils: 5.0.0(postcss@8.4.49) - postcss: 8.4.49 + cssnano-utils: 5.0.0(postcss@8.5.1) + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-minify-params@7.0.2(postcss@8.4.49): + postcss-minify-params@7.0.2(postcss@8.5.1): dependencies: - browserslist: 4.23.3 - cssnano-utils: 5.0.0(postcss@8.4.49) - postcss: 8.4.49 + browserslist: 4.24.0 + cssnano-utils: 5.0.0(postcss@8.5.1) + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-minify-selectors@7.0.4(postcss@8.4.49): + postcss-minify-selectors@7.0.4(postcss@8.5.1): dependencies: cssesc: 3.0.0 - postcss: 8.4.49 + postcss: 8.5.1 postcss-selector-parser: 6.1.2 - postcss-modules-extract-imports@3.1.0(postcss@8.4.49): + postcss-modules-extract-imports@3.1.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 - postcss-modules-local-by-default@4.0.5(postcss@8.4.49): + postcss-modules-local-by-default@4.0.5(postcss@8.5.1): dependencies: - icss-utils: 5.1.0(postcss@8.4.49) - postcss: 8.4.49 + icss-utils: 5.1.0(postcss@8.5.1) + postcss: 8.5.1 postcss-selector-parser: 6.1.2 postcss-value-parser: 4.2.0 - postcss-modules-scope@3.2.0(postcss@8.4.49): + postcss-modules-scope@3.2.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-selector-parser: 6.1.2 - postcss-modules-values@4.0.0(postcss@8.4.49): + postcss-modules-values@4.0.0(postcss@8.5.1): dependencies: - icss-utils: 5.1.0(postcss@8.4.49) - postcss: 8.4.49 + icss-utils: 5.1.0(postcss@8.5.1) + postcss: 8.5.1 - postcss-nested@7.0.2(postcss@8.4.49): + postcss-nested@7.0.2(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-selector-parser: 7.0.0 - postcss-normalize-charset@7.0.0(postcss@8.4.49): + postcss-normalize-charset@7.0.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 - postcss-normalize-display-values@7.0.0(postcss@8.4.49): + postcss-normalize-display-values@7.0.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-normalize-positions@7.0.0(postcss@8.4.49): + postcss-normalize-positions@7.0.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-normalize-repeat-style@7.0.0(postcss@8.4.49): + postcss-normalize-repeat-style@7.0.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-normalize-string@7.0.0(postcss@8.4.49): + postcss-normalize-string@7.0.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-normalize-timing-functions@7.0.0(postcss@8.4.49): + postcss-normalize-timing-functions@7.0.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-normalize-unicode@7.0.2(postcss@8.4.49): + postcss-normalize-unicode@7.0.2(postcss@8.5.1): dependencies: - browserslist: 4.23.3 - postcss: 8.4.49 + browserslist: 4.24.0 + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-normalize-url@7.0.0(postcss@8.4.49): + postcss-normalize-url@7.0.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-normalize-whitespace@7.0.0(postcss@8.4.49): + postcss-normalize-whitespace@7.0.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-ordered-values@7.0.1(postcss@8.4.49): + postcss-ordered-values@7.0.1(postcss@8.5.1): dependencies: - cssnano-utils: 5.0.0(postcss@8.4.49) - postcss: 8.4.49 + cssnano-utils: 5.0.0(postcss@8.5.1) + postcss: 8.5.1 postcss-value-parser: 4.2.0 - postcss-reduce-initial@7.0.2(postcss@8.4.49): + postcss-reduce-initial@7.0.2(postcss@8.5.1): dependencies: - browserslist: 4.23.3 + browserslist: 4.24.0 caniuse-api: 3.0.0 - postcss: 8.4.49 + postcss: 8.5.1 - postcss-reduce-transforms@7.0.0(postcss@8.4.49): + postcss-reduce-transforms@7.0.0(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser: 4.2.0 postcss-selector-parser@6.1.2: @@ -14563,30 +14777,30 @@ snapshots: cssesc: 3.0.0 util-deprecate: 1.0.2 - postcss-svgo@7.0.1(postcss@8.4.49): + postcss-svgo@7.0.1(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-value-parser: 4.2.0 svgo: 3.3.2 - postcss-unique-selectors@7.0.3(postcss@8.4.49): + postcss-unique-selectors@7.0.3(postcss@8.5.1): dependencies: - postcss: 8.4.49 + postcss: 8.5.1 postcss-selector-parser: 6.1.2 - postcss-url@10.1.3(postcss@8.4.49): + postcss-url@10.1.3(postcss@8.5.1): dependencies: make-dir: 3.1.0 mime: 2.5.2 minimatch: 3.0.8 - postcss: 8.4.49 + postcss: 8.5.1 xxhashjs: 0.2.2 postcss-value-parser@4.2.0: {} - postcss@8.4.49: + postcss@8.5.1: dependencies: - nanoid: 3.3.7 + nanoid: 3.3.8 picocolors: 1.1.1 source-map-js: 1.2.1 @@ -14646,6 +14860,8 @@ snapshots: protocols@2.0.1: {} + proxy-from-env@1.1.0: {} + prr@1.0.1: {} pug-attrs@3.0.0: @@ -14724,10 +14940,27 @@ snapshots: punycode@2.3.1: {} + query-registry@3.0.1: + dependencies: + query-string: 9.1.1 + quick-lru: 7.0.0 + url-join: 5.0.0 + validate-npm-package-name: 5.0.1 + zod: 3.23.8 + zod-package-json: 1.0.3 + + query-string@9.1.1: + dependencies: + decode-uri-component: 0.4.1 + filter-obj: 5.1.0 + split-on-first: 3.0.0 + queue-microtask@1.2.3: {} queue-tick@1.0.1: {} + quick-lru@7.0.0: {} + radix3@1.1.2: {} randombytes@2.1.0: @@ -14772,7 +15005,7 @@ snapshots: '@types/normalize-package-data': 2.4.4 normalize-package-data: 6.0.2 parse-json: 8.1.0 - type-fest: 4.32.0 + type-fest: 4.26.1 unicorn-magic: 0.1.0 read-workspaces@1.2.2: @@ -14796,6 +15029,12 @@ snapshots: string_decoder: 1.1.1 util-deprecate: 1.0.2 + readable-stream@3.6.2: + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + readable-stream@4.5.2: dependencies: abort-controller: 3.0.0 @@ -14812,7 +15051,7 @@ snapshots: dependencies: picomatch: 2.3.1 - readdirp@4.1.0: {} + readdirp@4.0.1: {} redis-errors@1.2.0: {} @@ -14822,10 +15061,14 @@ snapshots: refa@0.12.1: dependencies: - '@eslint-community/regexpp': 4.11.0 + '@eslint-community/regexpp': 4.12.1 regenerator-runtime@0.14.1: {} + regex-recursion@4.3.0: + dependencies: + regex-utilities: 2.3.0 + regex-recursion@5.1.1: dependencies: regex: 5.1.1 @@ -14833,7 +15076,7 @@ snapshots: regex-utilities@2.3.0: {} - regex@4.3.2: {} + regex@4.4.0: {} regex@5.1.1: dependencies: @@ -14841,7 +15084,7 @@ snapshots: regexp-ast-analysis@0.7.1: dependencies: - '@eslint-community/regexpp': 4.11.0 + '@eslint-community/regexpp': 4.12.1 refa: 0.12.1 regexp-tree@0.1.27: {} @@ -14877,16 +15120,16 @@ snapshots: '@types/hast': 3.0.4 github-slugger: 2.0.0 hast-util-heading-rank: 3.0.0 - hast-util-to-string: 3.0.0 + hast-util-to-string: 3.0.1 unist-util-visit: 5.0.0 - rehype-sort-attribute-values@5.0.0: + rehype-sort-attribute-values@5.0.1: dependencies: '@types/hast': 3.0.4 hast-util-is-element: 3.0.0 unist-util-visit: 5.0.0 - rehype-sort-attributes@5.0.0: + rehype-sort-attributes@5.0.1: dependencies: '@types/hast': 3.0.4 unist-util-visit: 5.0.0 @@ -14920,7 +15163,7 @@ snapshots: flat: 6.0.1 js-yaml: 4.1.0 mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 micromark: 4.0.0 micromark-core-commonmark: 2.0.1 micromark-factory-space: 2.0.0 @@ -14939,13 +15182,13 @@ snapshots: remark-parse@11.0.0: dependencies: '@types/mdast': 4.0.4 - mdast-util-from-markdown: 2.0.1 + mdast-util-from-markdown: 2.0.2 micromark-util-types: 2.0.0 unified: 11.0.5 transitivePeerDependencies: - supports-color - remark-rehype@11.1.0: + remark-rehype@11.1.1: dependencies: '@types/hast': 3.0.4 '@types/mdast': 4.0.4 @@ -14956,7 +15199,7 @@ snapshots: remark-stringify@11.0.0: dependencies: '@types/mdast': 4.0.4 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 unified: 11.0.5 require-directory@2.1.1: {} @@ -14979,50 +15222,50 @@ snapshots: rfdc@1.4.1: {} - rimraf@5.0.10: + rimraf@3.0.2: dependencies: - glob: 10.4.5 + glob: 7.2.3 - rollup-plugin-dts@6.1.1(rollup@4.30.1)(typescript@5.7.3): + rollup-plugin-dts@6.1.1(rollup@4.31.0)(typescript@5.7.3): dependencies: magic-string: 0.30.17 - rollup: 4.30.1 + rollup: 4.31.0 typescript: 5.7.3 optionalDependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.26.2 - rollup-plugin-visualizer@5.14.0(rollup@4.30.1): + rollup-plugin-visualizer@5.13.1(rollup@4.31.0): dependencies: open: 8.4.2 picomatch: 4.0.2 source-map: 0.7.4 yargs: 17.7.2 optionalDependencies: - rollup: 4.30.1 + rollup: 4.31.0 - rollup@4.30.1: + rollup@4.31.0: dependencies: '@types/estree': 1.0.6 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.30.1 - '@rollup/rollup-android-arm64': 4.30.1 - '@rollup/rollup-darwin-arm64': 4.30.1 - '@rollup/rollup-darwin-x64': 4.30.1 - '@rollup/rollup-freebsd-arm64': 4.30.1 - '@rollup/rollup-freebsd-x64': 4.30.1 - '@rollup/rollup-linux-arm-gnueabihf': 4.30.1 - '@rollup/rollup-linux-arm-musleabihf': 4.30.1 - '@rollup/rollup-linux-arm64-gnu': 4.30.1 - '@rollup/rollup-linux-arm64-musl': 4.30.1 - '@rollup/rollup-linux-loongarch64-gnu': 4.30.1 - '@rollup/rollup-linux-powerpc64le-gnu': 4.30.1 - '@rollup/rollup-linux-riscv64-gnu': 4.30.1 - '@rollup/rollup-linux-s390x-gnu': 4.30.1 - '@rollup/rollup-linux-x64-gnu': 4.30.1 - '@rollup/rollup-linux-x64-musl': 4.30.1 - '@rollup/rollup-win32-arm64-msvc': 4.30.1 - '@rollup/rollup-win32-ia32-msvc': 4.30.1 - '@rollup/rollup-win32-x64-msvc': 4.30.1 + '@rollup/rollup-android-arm-eabi': 4.31.0 + '@rollup/rollup-android-arm64': 4.31.0 + '@rollup/rollup-darwin-arm64': 4.31.0 + '@rollup/rollup-darwin-x64': 4.31.0 + '@rollup/rollup-freebsd-arm64': 4.31.0 + '@rollup/rollup-freebsd-x64': 4.31.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.31.0 + '@rollup/rollup-linux-arm-musleabihf': 4.31.0 + '@rollup/rollup-linux-arm64-gnu': 4.31.0 + '@rollup/rollup-linux-arm64-musl': 4.31.0 + '@rollup/rollup-linux-loongarch64-gnu': 4.31.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.31.0 + '@rollup/rollup-linux-riscv64-gnu': 4.31.0 + '@rollup/rollup-linux-s390x-gnu': 4.31.0 + '@rollup/rollup-linux-x64-gnu': 4.31.0 + '@rollup/rollup-linux-x64-musl': 4.31.0 + '@rollup/rollup-win32-arm64-msvc': 4.31.0 + '@rollup/rollup-win32-ia32-msvc': 4.31.0 + '@rollup/rollup-win32-x64-msvc': 4.31.0 fsevents: 2.3.3 run-applescript@7.0.0: {} @@ -15042,12 +15285,11 @@ snapshots: safe-buffer@5.2.1: {} - sass-loader@16.0.4(@rspack/core@1.1.8)(sass@1.78.0)(webpack@5.97.1): + sass-loader@16.0.4(@rspack/core@1.2.2)(webpack@5.97.1): dependencies: neo-async: 2.6.2 optionalDependencies: - '@rspack/core': 1.1.8 - sass: 1.78.0 + '@rspack/core': 1.2.2 webpack: 5.97.1 sass@1.78.0: @@ -15072,7 +15314,7 @@ snapshots: scslre@0.3.0: dependencies: - '@eslint-community/regexpp': 4.11.0 + '@eslint-community/regexpp': 4.12.1 refa: 0.12.1 regexp-ast-analysis: 0.7.1 @@ -15086,7 +15328,7 @@ snapshots: send@1.1.0: dependencies: - debug: 4.3.7 + debug: 4.4.0(supports-color@9.4.0) destroy: 1.2.0 encodeurl: 2.0.0 escape-html: 1.0.3 @@ -15109,15 +15351,17 @@ snapshots: dependencies: defu: 6.1.4 - serve-static@1.16.0: + serve-static@1.16.2: dependencies: - encodeurl: 1.0.2 + encodeurl: 2.0.0 escape-html: 1.0.3 parseurl: 1.3.3 send: 1.1.0 transitivePeerDependencies: - supports-color + set-blocking@2.0.0: {} + set-function-length@1.2.2: dependencies: define-data-property: 1.1.4 @@ -15171,13 +15415,6 @@ snapshots: sherif-windows-arm64: 1.1.1 sherif-windows-x64: 1.1.1 - shiki@1.17.0: - dependencies: - '@shikijs/core': 1.17.0 - '@shikijs/types': 1.17.0 - '@shikijs/vscode-textmate': 9.3.1 - '@types/hast': 3.0.4 - shiki@1.22.0: dependencies: '@shikijs/core': 1.22.0 @@ -15187,15 +15424,22 @@ snapshots: '@shikijs/vscode-textmate': 9.3.1 '@types/hast': 3.0.4 - shiki@1.26.1: + shiki@1.22.2: dependencies: - '@shikijs/core': 1.26.1 - '@shikijs/engine-javascript': 1.26.1 - '@shikijs/engine-oniguruma': 1.26.1 - '@shikijs/langs': 1.26.1 - '@shikijs/themes': 1.26.1 - '@shikijs/types': 1.26.1 - '@shikijs/vscode-textmate': 10.0.1 + '@shikijs/core': 1.22.2 + '@shikijs/engine-javascript': 1.22.2 + '@shikijs/engine-oniguruma': 1.22.2 + '@shikijs/types': 1.22.2 + '@shikijs/vscode-textmate': 9.3.1 + '@types/hast': 3.0.4 + + shiki@1.23.1: + dependencies: + '@shikijs/core': 1.23.1 + '@shikijs/engine-javascript': 1.23.1 + '@shikijs/engine-oniguruma': 1.23.1 + '@shikijs/types': 1.23.1 + '@shikijs/vscode-textmate': 9.3.1 '@types/hast': 3.0.4 side-channel@1.0.6: @@ -15215,7 +15459,7 @@ snapshots: dependencies: '@kwsites/file-exists': 1.1.1 '@kwsites/promise-deferred': 1.1.1 - debug: 4.3.7 + debug: 4.4.0(supports-color@9.4.0) transitivePeerDependencies: - supports-color @@ -15237,8 +15481,6 @@ snapshots: dependencies: unicode-emoji-modifier-base: 1.0.0 - slash@4.0.0: {} - slash@5.1.0: {} slashes@3.0.12: {} @@ -15283,6 +15525,8 @@ snapshots: speakingurl@14.0.1: {} + split-on-first@3.0.0: {} + splitpanes@3.1.5: {} stable-hash@0.0.4: {} @@ -15309,6 +15553,8 @@ snapshots: optionalDependencies: bare-events: 2.4.2 + string-argv@0.3.2: {} + string-width@4.2.3: dependencies: emoji-regex: 8.0.0 @@ -15358,10 +15604,14 @@ snapshots: dependencies: js-tokens: 9.0.1 - stylehacks@7.0.4(postcss@8.4.49): + strip-literal@3.0.0: dependencies: - browserslist: 4.23.3 - postcss: 8.4.49 + js-tokens: 9.0.1 + + stylehacks@7.0.4(postcss@8.5.1): + dependencies: + browserslist: 4.24.0 + postcss: 8.5.1 postcss-selector-parser: 6.1.2 summary@2.1.0: {} @@ -15401,7 +15651,7 @@ snapshots: css-tree: 2.3.1 css-what: 6.1.0 csso: 5.0.5 - picocolors: 1.1.0 + picocolors: 1.1.1 synckit@0.9.1: dependencies: @@ -15431,15 +15681,6 @@ snapshots: mkdirp: 1.0.4 yallist: 4.0.0 - tar@7.4.3: - dependencies: - '@isaacs/fs-minipass': 4.0.1 - chownr: 3.0.0 - minipass: 7.1.2 - minizlib: 3.0.1 - mkdirp: 3.0.1 - yallist: 5.0.0 - terser-webpack-plugin@5.3.10(esbuild@0.24.2)(webpack@5.97.1(esbuild@0.24.2)): dependencies: '@jridgewell/trace-mapping': 0.3.25 @@ -15512,16 +15753,17 @@ snapshots: tinypool@0.8.4: {} - tinypool@1.0.1: {} + tinypool@1.0.2: {} - tinyrainbow@1.2.0: {} + tinyrainbow@1.2.0: + optional: true + + tinyrainbow@2.0.0: {} tinyspy@2.2.1: {} tinyspy@3.0.2: {} - to-fast-properties@2.0.0: {} - to-regex-range@5.0.1: dependencies: is-number: 7.0.0 @@ -15546,6 +15788,10 @@ snapshots: dependencies: typescript: 5.7.3 + ts-blank-space@0.5.0: + dependencies: + typescript: 5.7.3 + tslib@2.7.0: {} tsx@4.19.2: @@ -15559,7 +15805,7 @@ snapshots: twoslash-vue@0.2.12(typescript@5.7.3): dependencies: - '@vue/language-core': 2.1.6(typescript@5.7.3) + '@vue/language-core': 2.1.10(typescript@5.7.3) twoslash: 0.2.12(typescript@5.7.3) twoslash-protocol: 0.2.12 typescript: 5.7.3 @@ -15588,7 +15834,7 @@ snapshots: type-fest@0.8.1: {} - type-fest@4.32.0: {} + type-fest@4.26.1: {} typescript@5.7.3: {} @@ -15598,31 +15844,30 @@ snapshots: ultrahtml@1.5.3: {} - unbuild@3.2.0(sass@1.78.0)(typescript@5.7.3)(vue-tsc@2.1.6(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)): + unbuild@3.3.1(typescript@5.7.3)(vue-tsc@2.1.10(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)): dependencies: - '@rollup/plugin-alias': 5.1.1(rollup@4.30.1) - '@rollup/plugin-commonjs': 28.0.2(rollup@4.30.1) - '@rollup/plugin-json': 6.1.0(rollup@4.30.1) - '@rollup/plugin-node-resolve': 16.0.0(rollup@4.30.1) - '@rollup/plugin-replace': 6.0.2(rollup@4.30.1) - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) + '@rollup/plugin-alias': 5.1.1(rollup@4.31.0) + '@rollup/plugin-commonjs': 28.0.2(rollup@4.31.0) + '@rollup/plugin-json': 6.1.0(rollup@4.31.0) + '@rollup/plugin-node-resolve': 16.0.0(rollup@4.31.0) + '@rollup/plugin-replace': 6.0.2(rollup@4.31.0) + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) citty: 0.1.6 - consola: 3.3.3 + consola: 3.4.0 defu: 6.1.4 esbuild: 0.24.2 hookable: 5.5.3 jiti: 2.4.2 magic-string: 0.30.17 - mkdist: 2.2.0(sass@1.78.0)(typescript@5.7.3)(vue-tsc@2.1.6(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) - mlly: 1.7.3 - pathe: 1.1.2 - pkg-types: 1.3.0 + mkdist: 2.2.0(typescript@5.7.3)(vue-tsc@2.1.10(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) + mlly: 1.7.4 + pathe: 2.0.2 + pkg-types: 1.3.1 pretty-bytes: 6.1.1 - rollup: 4.30.1 - rollup-plugin-dts: 6.1.1(rollup@4.30.1)(typescript@5.7.3) + rollup: 4.31.0 + rollup-plugin-dts: 6.1.1(rollup@4.31.0)(typescript@5.7.3) scule: 1.3.0 tinyglobby: 0.2.10 - ufo: 1.5.4 untyped: 1.5.2 optionalDependencies: typescript: 5.7.3 @@ -15632,31 +15877,30 @@ snapshots: - vue - vue-tsc - unbuild@3.2.0(sass@1.78.0)(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)): + unbuild@3.3.1(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)): dependencies: - '@rollup/plugin-alias': 5.1.1(rollup@4.30.1) - '@rollup/plugin-commonjs': 28.0.2(rollup@4.30.1) - '@rollup/plugin-json': 6.1.0(rollup@4.30.1) - '@rollup/plugin-node-resolve': 16.0.0(rollup@4.30.1) - '@rollup/plugin-replace': 6.0.2(rollup@4.30.1) - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) + '@rollup/plugin-alias': 5.1.1(rollup@4.31.0) + '@rollup/plugin-commonjs': 28.0.2(rollup@4.31.0) + '@rollup/plugin-json': 6.1.0(rollup@4.31.0) + '@rollup/plugin-node-resolve': 16.0.0(rollup@4.31.0) + '@rollup/plugin-replace': 6.0.2(rollup@4.31.0) + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) citty: 0.1.6 - consola: 3.3.3 + consola: 3.4.0 defu: 6.1.4 esbuild: 0.24.2 hookable: 5.5.3 jiti: 2.4.2 magic-string: 0.30.17 - mkdist: 2.2.0(sass@1.78.0)(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) - mlly: 1.7.3 - pathe: 1.1.2 - pkg-types: 1.3.0 + mkdist: 2.2.0(typescript@5.7.3)(vue-tsc@2.2.0(typescript@5.7.3))(vue@3.5.13(typescript@5.7.3)) + mlly: 1.7.4 + pathe: 2.0.2 + pkg-types: 1.3.1 pretty-bytes: 6.1.1 - rollup: 4.30.1 - rollup-plugin-dts: 6.1.1(rollup@4.30.1)(typescript@5.7.3) + rollup: 4.31.0 + rollup-plugin-dts: 6.1.1(rollup@4.31.0)(typescript@5.7.3) scule: 1.3.0 tinyglobby: 0.2.10 - ufo: 1.5.4 untyped: 1.5.2 optionalDependencies: typescript: 5.7.3 @@ -15666,10 +15910,18 @@ snapshots: - vue - vue-tsc - unconfig@0.6.0: + unconfig@0.5.5: dependencies: '@antfu/utils': 0.7.10 defu: 6.1.4 + importx: 0.4.4 + transitivePeerDependencies: + - supports-color + + unconfig@0.6.1: + dependencies: + '@antfu/utils': 8.1.0 + defu: 6.1.4 importx: 0.5.1 transitivePeerDependencies: - supports-color @@ -15685,19 +15937,21 @@ snapshots: undici-types@6.20.0: {} + undici@6.21.0: {} + unenv@1.10.0: dependencies: - consola: 3.3.3 + consola: 3.4.0 defu: 6.1.4 mime: 3.0.0 node-fetch-native: 1.6.4 pathe: 1.1.2 - unhead@1.11.15: + unhead@1.11.18: dependencies: - '@unhead/dom': 1.11.15 - '@unhead/schema': 1.11.15 - '@unhead/shared': 1.11.15 + '@unhead/dom': 1.11.18 + '@unhead/schema': 1.11.18 + '@unhead/shared': 1.11.18 hookable: 5.5.3 unicode-emoji-modifier-base@1.0.0: {} @@ -15714,22 +15968,22 @@ snapshots: trough: 2.2.0 vfile: 6.0.3 - unimport@3.14.5(rollup@4.30.1): + unimport@4.0.0(rollup@4.31.0): dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) acorn: 8.14.0 escape-string-regexp: 5.0.0 estree-walker: 3.0.3 - fast-glob: 3.3.2 - local-pkg: 0.5.1 + fast-glob: 3.3.3 + local-pkg: 1.0.0 magic-string: 0.30.17 - mlly: 1.7.3 - pathe: 1.1.2 + mlly: 1.7.4 + pathe: 2.0.2 picomatch: 4.0.2 - pkg-types: 1.3.0 + pkg-types: 1.3.1 scule: 1.3.0 - strip-literal: 2.1.1 - unplugin: 1.16.1 + strip-literal: 3.0.0 + unplugin: 2.1.2 transitivePeerDependencies: - rollup @@ -15760,113 +16014,107 @@ snapshots: unist-util-is: 6.0.0 unist-util-visit-parents: 6.0.1 + universal-user-agent@6.0.1: {} + universalify@2.0.1: {} - unocss@0.65.4(@unocss/webpack@0.65.4(rollup@4.30.1)(webpack@5.97.1(esbuild@0.24.2)))(postcss@8.4.49)(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)): + unocss@0.62.4(@unocss/webpack@0.62.4(rollup@4.31.0)(webpack@5.97.1(esbuild@0.24.2)))(postcss@8.5.1)(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)): dependencies: - '@unocss/astro': 0.65.4(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) - '@unocss/cli': 0.65.4(rollup@4.30.1) - '@unocss/core': 0.65.4 - '@unocss/postcss': 0.65.4(postcss@8.4.49) - '@unocss/preset-attributify': 0.65.4 - '@unocss/preset-icons': 0.65.4 - '@unocss/preset-mini': 0.65.4 - '@unocss/preset-tagify': 0.65.4 - '@unocss/preset-typography': 0.65.4 - '@unocss/preset-uno': 0.65.4 - '@unocss/preset-web-fonts': 0.65.4 - '@unocss/preset-wind': 0.65.4 - '@unocss/transformer-attributify-jsx': 0.65.4 - '@unocss/transformer-compile-class': 0.65.4 - '@unocss/transformer-directives': 0.65.4 - '@unocss/transformer-variant-group': 0.65.4 - '@unocss/vite': 0.65.4(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + '@unocss/astro': 0.62.4(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) + '@unocss/cli': 0.62.4(rollup@4.31.0) + '@unocss/core': 0.62.4 + '@unocss/postcss': 0.62.4(postcss@8.5.1) + '@unocss/preset-attributify': 0.62.4 + '@unocss/preset-icons': 0.62.4 + '@unocss/preset-mini': 0.62.4 + '@unocss/preset-tagify': 0.62.4 + '@unocss/preset-typography': 0.62.4 + '@unocss/preset-uno': 0.62.4 + '@unocss/preset-web-fonts': 0.62.4 + '@unocss/preset-wind': 0.62.4 + '@unocss/transformer-attributify-jsx': 0.62.4 + '@unocss/transformer-compile-class': 0.62.4 + '@unocss/transformer-directives': 0.62.4 + '@unocss/transformer-variant-group': 0.62.4 + '@unocss/vite': 0.62.4(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) optionalDependencies: - '@unocss/webpack': 0.65.4(rollup@4.30.1)(webpack@5.97.1(esbuild@0.24.2)) - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + '@unocss/webpack': 0.62.4(rollup@4.31.0)(webpack@5.97.1(esbuild@0.24.2)) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + transitivePeerDependencies: + - postcss + - rollup + - supports-color + + unocss@65.4.3(postcss@8.5.1)(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)): + dependencies: + '@unocss/astro': 65.4.3(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + '@unocss/cli': 65.4.3(rollup@4.31.0) + '@unocss/core': 65.4.3 + '@unocss/postcss': 65.4.3(postcss@8.5.1) + '@unocss/preset-attributify': 65.4.3 + '@unocss/preset-icons': 65.4.3 + '@unocss/preset-mini': 65.4.3 + '@unocss/preset-tagify': 65.4.3 + '@unocss/preset-typography': 65.4.3 + '@unocss/preset-uno': 65.4.3 + '@unocss/preset-web-fonts': 65.4.3 + '@unocss/preset-wind': 65.4.3 + '@unocss/transformer-attributify-jsx': 65.4.3 + '@unocss/transformer-compile-class': 65.4.3 + '@unocss/transformer-directives': 65.4.3 + '@unocss/transformer-variant-group': 65.4.3 + '@unocss/vite': 65.4.3(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) + optionalDependencies: + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) transitivePeerDependencies: - postcss - rollup - supports-color - vue - unocss@65.4.0(postcss@8.4.49)(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)): + unplugin-vue-router@0.10.9(rollup@4.31.0)(vue-router@4.5.0(vue@3.5.13(typescript@5.7.3)))(vue@3.5.13(typescript@5.7.3)): dependencies: - '@unocss/astro': 65.4.0(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) - '@unocss/cli': 65.4.0(rollup@4.30.1) - '@unocss/core': 65.4.0 - '@unocss/postcss': 65.4.0(postcss@8.4.49) - '@unocss/preset-attributify': 65.4.0 - '@unocss/preset-icons': 65.4.0 - '@unocss/preset-mini': 65.4.0 - '@unocss/preset-tagify': 65.4.0 - '@unocss/preset-typography': 65.4.0 - '@unocss/preset-uno': 65.4.0 - '@unocss/preset-web-fonts': 65.4.0 - '@unocss/preset-wind': 65.4.0 - '@unocss/transformer-attributify-jsx': 65.4.0 - '@unocss/transformer-compile-class': 65.4.0 - '@unocss/transformer-directives': 65.4.0 - '@unocss/transformer-variant-group': 65.4.0 - '@unocss/vite': 65.4.0(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3)) - optionalDependencies: - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) - transitivePeerDependencies: - - postcss - - rollup - - supports-color - - vue - - unplugin-vue-router@0.10.9(rollup@4.30.1)(vue-router@4.4.5(vue@3.5.13(typescript@5.7.3)))(vue@3.5.13(typescript@5.7.3)): - dependencies: - '@babel/types': 7.26.5 - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) - '@vue-macros/common': 1.15.1(rollup@4.30.1)(vue@3.5.13(typescript@5.7.3)) + '@babel/types': 7.26.3 + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) + '@vue-macros/common': 1.15.0(rollup@4.31.0)(vue@3.5.13(typescript@5.7.3)) ast-walker-scope: 0.6.2 chokidar: 3.6.0 - fast-glob: 3.3.2 + fast-glob: 3.3.3 json5: 2.2.3 local-pkg: 0.5.1 magic-string: 0.30.17 - mlly: 1.7.3 + mlly: 1.7.4 pathe: 1.1.2 scule: 1.3.0 unplugin: 2.0.0-beta.1 - yaml: 2.7.0 - optionalDependencies: - vue-router: 4.4.5(vue@3.5.13(typescript@5.7.3)) - transitivePeerDependencies: - - rollup - - vue - - unplugin-vue-router@0.10.9(rollup@4.30.1)(vue-router@4.5.0(vue@3.5.13(typescript@5.7.3)))(vue@3.5.13(typescript@5.7.3)): - dependencies: - '@babel/types': 7.26.5 - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) - '@vue-macros/common': 1.15.1(rollup@4.30.1)(vue@3.5.13(typescript@5.7.3)) - ast-walker-scope: 0.6.2 - chokidar: 3.6.0 - fast-glob: 3.3.2 - json5: 2.2.3 - local-pkg: 0.5.1 - magic-string: 0.30.17 - mlly: 1.7.3 - pathe: 1.1.2 - scule: 1.3.0 - unplugin: 2.0.0-beta.1 - yaml: 2.7.0 + yaml: 2.6.1 optionalDependencies: vue-router: 4.5.0(vue@3.5.13(typescript@5.7.3)) transitivePeerDependencies: - rollup - vue - unplugin@1.14.1(webpack-sources@3.2.3): + unplugin-vue-router@0.11.1(rollup@4.31.0)(vue-router@4.5.0(vue@3.5.13(typescript@5.7.3)))(vue@3.5.13(typescript@5.7.3)): dependencies: - acorn: 8.14.0 - webpack-virtual-modules: 0.6.2 + '@babel/types': 7.26.5 + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) + '@vue-macros/common': 1.16.1(vue@3.5.13(typescript@5.7.3)) + ast-walker-scope: 0.6.2 + chokidar: 3.6.0 + fast-glob: 3.3.3 + json5: 2.2.3 + local-pkg: 1.0.0 + magic-string: 0.30.17 + mlly: 1.7.4 + pathe: 2.0.2 + scule: 1.3.0 + unplugin: 2.1.2 + yaml: 2.7.0 optionalDependencies: - webpack-sources: 3.2.3 + vue-router: 4.5.0(vue@3.5.13(typescript@5.7.3)) + transitivePeerDependencies: + - rollup + - vue unplugin@1.16.1: dependencies: @@ -15888,7 +16136,7 @@ snapshots: anymatch: 3.1.3 chokidar: 3.6.0 destr: 2.0.3 - h3: h3-nightly@2.0.0-1718872656.6765a6e + h3: h3-nightly@1.14.0-20250122-114730-3f9e703 lru-cache: 10.4.3 node-fetch-native: 1.6.4 ofetch: 1.4.1 @@ -15896,20 +16144,18 @@ snapshots: optionalDependencies: db0: 0.1.4 ioredis: 5.4.1 - transitivePeerDependencies: - - uWebSockets.js untun@0.1.3: dependencies: citty: 0.1.6 - consola: 3.3.3 + consola: 3.4.0 pathe: 1.1.2 untyped@1.5.2: dependencies: '@babel/core': 7.26.0 - '@babel/standalone': 7.26.5 - '@babel/types': 7.26.5 + '@babel/standalone': 7.26.4 + '@babel/types': 7.26.3 citty: 0.1.6 defu: 6.1.4 jiti: 2.4.2 @@ -15922,20 +16168,14 @@ snapshots: dependencies: knitwork: 1.2.0 magic-string: 0.30.17 - mlly: 1.7.3 + mlly: 1.7.4 pathe: 1.1.2 - pkg-types: 1.3.0 + pkg-types: 1.3.1 unplugin: 1.16.1 - update-browserslist-db@1.1.0(browserslist@4.23.3): + update-browserslist-db@1.1.0(browserslist@4.24.0): dependencies: - browserslist: 4.23.3 - escalade: 3.2.0 - picocolors: 1.1.0 - - update-browserslist-db@1.1.2(browserslist@4.24.4): - dependencies: - browserslist: 4.24.4 + browserslist: 4.24.0 escalade: 3.2.0 picocolors: 1.1.1 @@ -15947,6 +16187,8 @@ snapshots: dependencies: punycode: 2.3.1 + url-join@5.0.0: {} + url-loader@4.1.1(file-loader@6.2.0(webpack@5.97.1))(webpack@5.97.1): dependencies: loader-utils: 2.0.4 @@ -15960,7 +16202,7 @@ snapshots: util-deprecate@1.0.2: {} - v-lazy-show@0.3.0(@vue/compiler-core@3.5.13): + v-lazy-show@0.2.4(@vue/compiler-core@3.5.13): dependencies: '@vue/compiler-core': 3.5.13 @@ -15992,17 +16234,17 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-hot-client@0.2.4(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)): + vite-hot-client@0.2.4(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)): dependencies: - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) - vite-node@1.6.0(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0): + vite-node@1.6.0(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0): dependencies: cac: 6.7.14 - debug: 4.3.7 + debug: 4.4.0(supports-color@9.4.0) pathe: 1.1.2 - picocolors: 1.1.0 - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + picocolors: 1.1.1 + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) transitivePeerDependencies: - '@types/node' - jiti @@ -16017,13 +16259,35 @@ snapshots: - tsx - yaml - vite-node@2.1.8(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0): + vite-node@2.1.8(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0): dependencies: cac: 6.7.14 - debug: 4.3.7 - es-module-lexer: 1.5.4 + debug: 4.4.0(supports-color@9.4.0) + es-module-lexer: 1.6.0 pathe: 1.1.2 - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + transitivePeerDependencies: + - '@types/node' + - jiti + - less + - lightningcss + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + - tsx + - yaml + optional: true + + vite-node@3.0.3(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0): + dependencies: + cac: 6.7.14 + debug: 4.4.0(supports-color@9.4.0) + es-module-lexer: 1.6.0 + pathe: 2.0.2 + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) transitivePeerDependencies: - '@types/node' - jiti @@ -16038,19 +16302,40 @@ snapshots: - tsx - yaml - vite-plugin-checker@0.8.0(eslint@9.18.0(jiti@2.4.2))(optionator@0.9.4)(typescript@5.7.3)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue-tsc@2.1.6(typescript@5.7.3)): + vite-node@3.0.4(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0): dependencies: - '@babel/code-frame': 7.24.7 + cac: 6.7.14 + debug: 4.4.0(supports-color@9.4.0) + es-module-lexer: 1.6.0 + pathe: 2.0.2 + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + transitivePeerDependencies: + - '@types/node' + - jiti + - less + - lightningcss + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + - tsx + - yaml + + vite-plugin-checker@0.8.0(eslint@9.18.0(jiti@2.4.2))(optionator@0.9.4)(typescript@5.7.3)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(vue-tsc@2.1.10(typescript@5.7.3)): + dependencies: + '@babel/code-frame': 7.26.2 ansi-escapes: 4.3.2 chalk: 4.1.2 chokidar: 3.6.0 commander: 8.3.0 - fast-glob: 3.3.2 + fast-glob: 3.3.3 fs-extra: 11.2.0 npm-run-path: 4.0.1 strip-ansi: 6.0.1 tiny-invariant: 1.3.3 - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) vscode-languageclient: 7.0.0 vscode-languageserver: 7.0.0 vscode-languageserver-textdocument: 1.0.12 @@ -16059,48 +16344,48 @@ snapshots: eslint: 9.18.0(jiti@2.4.2) optionator: 0.9.4 typescript: 5.7.3 - vue-tsc: 2.1.6(typescript@5.7.3) + vue-tsc: 2.1.10(typescript@5.7.3) - vite-plugin-inspect@0.8.9(@nuxt/kit@packages+kit)(rollup@4.30.1)(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)): + vite-plugin-inspect@0.8.9(@nuxt/kit@packages+kit)(rollup@4.31.0)(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)): dependencies: '@antfu/utils': 0.7.10 - '@rollup/pluginutils': 5.1.4(rollup@4.30.1) - debug: 4.3.7 + '@rollup/pluginutils': 5.1.4(rollup@4.31.0) + debug: 4.4.0(supports-color@9.4.0) error-stack-parser-es: 0.1.5 fs-extra: 11.2.0 open: 10.1.0 perfect-debounce: 1.0.0 picocolors: 1.1.1 sirv: 3.0.0 - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) optionalDependencies: '@nuxt/kit': link:packages/kit transitivePeerDependencies: - rollup - supports-color - vite-plugin-vue-inspector@5.3.1(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)): + vite-plugin-vue-inspector@5.3.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)): dependencies: - '@babel/core': 7.25.2 - '@babel/plugin-proposal-decorators': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-syntax-import-attributes': 7.25.6(@babel/core@7.25.2) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.25.2) - '@babel/plugin-transform-typescript': 7.25.2(@babel/core@7.25.2) - '@vue/babel-plugin-jsx': 1.2.5(@babel/core@7.25.2) + '@babel/core': 7.26.0 + '@babel/plugin-proposal-decorators': 7.24.7(@babel/core@7.26.0) + '@babel/plugin-syntax-import-attributes': 7.25.6(@babel/core@7.26.0) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.26.0) + '@babel/plugin-transform-typescript': 7.25.9(@babel/core@7.26.0) + '@vue/babel-plugin-jsx': 1.2.5(@babel/core@7.26.0) '@vue/compiler-dom': 3.5.13 kolorist: 1.8.0 magic-string: 0.30.17 - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) transitivePeerDependencies: - supports-color - vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0): + vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0): dependencies: esbuild: 0.24.2 - postcss: 8.4.49 - rollup: 4.30.1 + postcss: 8.5.1 + rollup: 4.31.0 optionalDependencies: - '@types/node': 22.10.5 + '@types/node': 22.10.10 fsevents: 2.3.3 jiti: 2.4.2 sass: 1.78.0 @@ -16108,9 +16393,9 @@ snapshots: tsx: 4.19.2 yaml: 2.7.0 - vitest-environment-nuxt@1.0.1(@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)))(@types/node@22.10.5)(@vue/test-utils@2.4.6)(happy-dom@16.5.3)(jiti@2.4.2)(magicast@0.3.5)(playwright-core@1.49.1)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(typescript@5.7.3)(vitest@2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(yaml@2.7.0): + vitest-environment-nuxt@1.0.1(@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)))(@types/node@22.10.10)(@vue/test-utils@2.4.6)(happy-dom@16.7.2)(jiti@2.4.2)(magicast@0.3.5)(playwright-core@1.50.0)(terser@5.32.0)(tsx@4.19.2)(typescript@5.7.3)(vitest@3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(yaml@2.7.0): dependencies: - '@nuxt/test-utils': 3.15.4(@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)))(@types/node@22.10.5)(@vue/test-utils@2.4.6)(happy-dom@16.5.3)(jiti@2.4.2)(magicast@0.3.5)(playwright-core@1.49.1)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(typescript@5.7.3)(vitest@2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(yaml@2.7.0) + '@nuxt/test-utils': 3.15.4(@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.3)))(@types/node@22.10.10)(@vue/test-utils@2.4.6)(happy-dom@16.7.2)(jiti@2.4.2)(magicast@0.3.5)(playwright-core@1.50.0)(terser@5.32.0)(tsx@4.19.2)(typescript@5.7.3)(vitest@3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0))(yaml@2.7.0) transitivePeerDependencies: - '@cucumber/cucumber' - '@jest/globals' @@ -16133,11 +16418,10 @@ snapshots: - terser - tsx - typescript - - uWebSockets.js - vitest - yaml - vitest@1.6.0(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0): + vitest@1.6.0(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0): dependencies: '@vitest/expect': 1.6.0 '@vitest/runner': 1.6.0 @@ -16146,22 +16430,22 @@ snapshots: '@vitest/utils': 1.6.0 acorn-walk: 8.3.4 chai: 4.5.0 - debug: 4.3.7 + debug: 4.4.0(supports-color@9.4.0) execa: 8.0.1 - local-pkg: 0.5.0 + local-pkg: 0.5.1 magic-string: 0.30.17 pathe: 1.1.2 - picocolors: 1.1.0 + picocolors: 1.1.1 std-env: 3.8.0 strip-literal: 2.1.1 tinybench: 2.9.0 tinypool: 0.8.4 - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) - vite-node: 1.6.0(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite-node: 1.6.0(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 22.10.5 - happy-dom: 16.5.3 + '@types/node': 22.10.10 + happy-dom: 16.7.2 transitivePeerDependencies: - jiti - less @@ -16175,31 +16459,71 @@ snapshots: - tsx - yaml - vitest@2.1.8(@types/node@22.10.5)(happy-dom@16.5.3)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0): + vitest@2.1.8(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0): dependencies: '@vitest/expect': 2.1.8 - '@vitest/mocker': 2.1.8(vite@6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) + '@vitest/mocker': 2.1.8(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) '@vitest/pretty-format': 2.1.8 '@vitest/runner': 2.1.8 '@vitest/snapshot': 2.1.8 '@vitest/spy': 2.1.8 '@vitest/utils': 2.1.8 chai: 5.1.2 - debug: 4.3.7 + debug: 4.4.0(supports-color@9.4.0) expect-type: 1.1.0 magic-string: 0.30.17 pathe: 1.1.2 std-env: 3.8.0 tinybench: 2.9.0 tinyexec: 0.3.2 - tinypool: 1.0.1 + tinypool: 1.0.2 tinyrainbow: 1.2.0 - vite: 6.0.7(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) - vite-node: 2.1.8(@types/node@22.10.5)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite-node: 2.1.8(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 22.10.5 - happy-dom: 16.5.3 + '@types/node': 22.10.10 + happy-dom: 16.7.2 + transitivePeerDependencies: + - jiti + - less + - lightningcss + - msw + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + - tsx + - yaml + optional: true + + vitest@3.0.3(@types/node@22.10.10)(happy-dom@16.7.2)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0): + dependencies: + '@vitest/expect': 3.0.3 + '@vitest/mocker': 3.0.3(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0)) + '@vitest/pretty-format': 3.0.4 + '@vitest/runner': 3.0.3 + '@vitest/snapshot': 3.0.3 + '@vitest/spy': 3.0.3 + '@vitest/utils': 3.0.3 + chai: 5.1.2 + debug: 4.4.0(supports-color@9.4.0) + expect-type: 1.1.0 + magic-string: 0.30.17 + pathe: 2.0.2 + std-env: 3.8.0 + tinybench: 2.9.0 + tinyexec: 0.3.2 + tinypool: 1.0.2 + tinyrainbow: 2.0.0 + vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(sass@1.78.0)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + vite-node: 3.0.3(@types/node@22.10.10)(jiti@2.4.2)(terser@5.32.0)(tsx@4.19.2)(yaml@2.7.0) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 22.10.10 + happy-dom: 16.7.2 transitivePeerDependencies: - jiti - less @@ -16282,20 +16606,15 @@ snapshots: dependencies: vue: 3.5.13(typescript@5.7.3) - vue-router@4.4.5(vue@3.5.13(typescript@5.7.3)): - dependencies: - '@vue/devtools-api': 6.6.4 - vue: 3.5.13(typescript@5.7.3) - vue-router@4.5.0(vue@3.5.13(typescript@5.7.3)): dependencies: '@vue/devtools-api': 6.6.4 vue: 3.5.13(typescript@5.7.3) - vue-tsc@2.1.6(typescript@5.7.3): + vue-tsc@2.1.10(typescript@5.7.3): dependencies: '@volar/typescript': 2.4.11 - '@vue/language-core': 2.1.6(typescript@5.7.3) + '@vue/language-core': 2.1.10(typescript@5.7.3) semver: 7.6.3 typescript: 5.7.3 optional: true @@ -16343,7 +16662,7 @@ snapshots: gzip-size: 6.0.0 html-escaper: 2.0.2 opener: 1.5.2 - picocolors: 1.1.0 + picocolors: 1.1.1 sirv: 2.0.4 ws: 7.5.10 transitivePeerDependencies: @@ -16384,10 +16703,10 @@ snapshots: '@webassemblyjs/wasm-edit': 1.14.1 '@webassemblyjs/wasm-parser': 1.14.1 acorn: 8.14.0 - browserslist: 4.24.4 + browserslist: 4.24.0 chrome-trace-event: 1.0.4 - enhanced-resolve: 5.17.1 - es-module-lexer: 1.5.4 + enhanced-resolve: 5.18.0 + es-module-lexer: 1.6.0 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -16414,10 +16733,10 @@ snapshots: '@webassemblyjs/wasm-edit': 1.14.1 '@webassemblyjs/wasm-parser': 1.14.1 acorn: 8.14.0 - browserslist: 4.24.4 + browserslist: 4.24.0 chrome-trace-event: 1.0.4 - enhanced-resolve: 5.17.1 - es-module-lexer: 1.5.4 + enhanced-resolve: 5.18.0 + es-module-lexer: 1.6.0 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -16436,14 +16755,14 @@ snapshots: - esbuild - uglify-js - webpackbar@7.0.0(@rspack/core@1.1.8)(webpack@5.97.1): + webpackbar@7.0.0(@rspack/core@1.2.2)(webpack@5.97.1): dependencies: - ansis: 3.8.1 - consola: 3.3.3 + ansis: 3.3.2 + consola: 3.4.0 pretty-time: 1.1.0 std-env: 3.8.0 optionalDependencies: - '@rspack/core': 1.1.8 + '@rspack/core': 1.2.2 webpack: 5.97.1 whatwg-mimetype@3.0.0: {} @@ -16489,10 +16808,14 @@ snapshots: siginfo: 2.0.0 stackback: 0.0.2 + wide-align@1.1.5: + dependencies: + string-width: 4.2.3 + with@7.0.2: dependencies: - '@babel/parser': 7.26.5 - '@babel/types': 7.26.5 + '@babel/parser': 7.26.2 + '@babel/types': 7.26.3 assert-never: 1.3.0 babel-walk: 3.0.0-canary-5 @@ -16528,11 +16851,9 @@ snapshots: yallist@4.0.0: {} - yallist@5.0.0: {} - yaml-ast-parser@0.0.43: {} - yaml@2.5.1: {} + yaml@2.6.1: {} yaml@2.7.0: {} @@ -16572,10 +16893,14 @@ snapshots: compress-commons: 6.0.2 readable-stream: 4.5.2 - zod-validation-error@3.4.0(zod@3.24.1): + zod-package-json@1.0.3: dependencies: - zod: 3.24.1 + zod: 3.23.8 - zod@3.24.1: {} + zod-validation-error@3.4.0(zod@3.23.8): + dependencies: + zod: 3.23.8 + + zod@3.23.8: {} zwitch@2.0.4: {} diff --git a/renovate.json b/renovate.json index 187d327fe2..3d3d14ecd2 100644 --- a/renovate.json +++ b/renovate.json @@ -9,6 +9,10 @@ "main", "3.x" ], + "ignoreDeps": [ + "node", + "npm" + ], "packageRules": [ { "groupName": "vitest", @@ -24,8 +28,6 @@ "3.x" ], "ignoreDeps": [ - "nitro", - "h3", "nuxt", "nuxt3", "@nuxt/kit" diff --git a/test/basic.test.ts b/test/basic.test.ts index 50a36b2a27..1253413a1e 100644 --- a/test/basic.test.ts +++ b/test/basic.test.ts @@ -625,6 +625,44 @@ describe('pages', () => { const html = await $fetch('/prerender/test') expect(html).toContain('should be prerendered: true') }) + + it('should trigger page:loading:end only once', async () => { + const { page, consoleLogs } = await renderPage('/') + + await page.getByText('to page load hook').click() + await page.waitForFunction(path => window.useNuxtApp?.()._route.fullPath === path, '/page-load-hook') + const loadingEndLogs = consoleLogs.filter(c => c.text.includes('page:loading:end')) + expect(loadingEndLogs.length).toBe(1) + + await page.close() + }) + + it('should hide nuxt page load indicator after navigate back from nested page', async () => { + const LOAD_INDICATOR_SELECTOR = '.nuxt-loading-indicator' + const { page } = await renderPage('/page-load-hook') + await page.getByText('To sub page').click() + await page.waitForFunction(path => window.useNuxtApp?.()._route.fullPath === path, '/page-load-hook/subpage') + + await page.waitForSelector(LOAD_INDICATOR_SELECTOR) + let isVisible = await page.isVisible(LOAD_INDICATOR_SELECTOR) + expect(isVisible).toBe(true) + + await page.waitForSelector(LOAD_INDICATOR_SELECTOR, { state: 'hidden' }) + isVisible = await page.isVisible(LOAD_INDICATOR_SELECTOR) + expect(isVisible).toBe(false) + + await page.goBack() + + await page.waitForSelector(LOAD_INDICATOR_SELECTOR) + isVisible = await page.isVisible(LOAD_INDICATOR_SELECTOR) + expect(isVisible).toBe(true) + + await page.waitForSelector(LOAD_INDICATOR_SELECTOR, { state: 'hidden' }) + isVisible = await page.isVisible(LOAD_INDICATOR_SELECTOR) + expect(isVisible).toBe(false) + + await page.close() + }) }) describe('nuxt composables', () => { @@ -2738,7 +2776,7 @@ describe('teleports', () => { const html = await $fetch('/nuxt-teleport') // Teleport is appended to body, after the __nuxt div - expect(html).toContain('

Normal content

Nuxt Teleport

Normal content

Nuxt Teleport
m.endsWith('package.json')) @@ -130,7 +130,7 @@ describe.skipIf(process.env.SKIP_BUNDLE_SIZE === 'true' || process.env.ECOSYSTEM expect.soft(roundToKilobytes(serverStats.totalBytes)).toMatchInlineSnapshot(`"303k"`) const modules = await analyzeSizes(['node_modules/**/*'], serverDir) - expect.soft(roundToKilobytes(modules.totalBytes)).toMatchInlineSnapshot(`"1398k"`) + expect.soft(roundToKilobytes(modules.totalBytes)).toMatchInlineSnapshot(`"1402k"`) const packages = modules.files .filter(m => m.endsWith('package.json')) diff --git a/test/fixtures/basic/app.vue b/test/fixtures/basic/app.vue new file mode 100644 index 0000000000..6d2a415958 --- /dev/null +++ b/test/fixtures/basic/app.vue @@ -0,0 +1,6 @@ + diff --git a/test/fixtures/basic/pages/index.vue b/test/fixtures/basic/pages/index.vue index d0fcd1513c..84edf9d105 100644 --- a/test/fixtures/basic/pages/index.vue +++ b/test/fixtures/basic/pages/index.vue @@ -94,6 +94,9 @@ to server page + + to page load hook + diff --git a/test/fixtures/basic/pages/page-load-hook.vue b/test/fixtures/basic/pages/page-load-hook.vue new file mode 100644 index 0000000000..867cf5f097 --- /dev/null +++ b/test/fixtures/basic/pages/page-load-hook.vue @@ -0,0 +1,9 @@ + diff --git a/test/fixtures/basic/pages/page-load-hook/[slug].vue b/test/fixtures/basic/pages/page-load-hook/[slug].vue new file mode 100644 index 0000000000..6bb96bf43e --- /dev/null +++ b/test/fixtures/basic/pages/page-load-hook/[slug].vue @@ -0,0 +1,7 @@ + diff --git a/test/fixtures/basic/plugins/page-hook-plugin.ts b/test/fixtures/basic/plugins/page-hook-plugin.ts new file mode 100644 index 0000000000..880f7f1ac4 --- /dev/null +++ b/test/fixtures/basic/plugins/page-hook-plugin.ts @@ -0,0 +1,8 @@ +export default defineNuxtPlugin((nuxtApp) => { + const route = useRoute() + nuxtApp.hook('page:loading:end', () => { + if (route.path === '/page-load-hook') { + console.log('page:loading:end') + } + }) +}) diff --git a/test/hmr.test.ts b/test/hmr.test.ts index 7c6ea46705..c0ecfcb497 100644 --- a/test/hmr.test.ts +++ b/test/hmr.test.ts @@ -134,7 +134,7 @@ if (process.env.TEST_ENV !== 'built' && !isWindows) { 'type': 'debug', }, { - 'text': `[vite] hot updated: /@id/virtual:nuxt:${fixturePath}/.nuxt/routes.mjs`, + 'text': `[vite] hot updated: /@id/virtual:nuxt:${encodeURIComponent(join(fixturePath, '.nuxt/routes.mjs'))}`, 'type': 'debug', }, ]) diff --git a/vitest.config.ts b/vitest.config.ts index e9734754a4..26ec50f984 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -1,10 +1,10 @@ import { resolve } from 'pathe' import { configDefaults, coverageConfigDefaults, defineConfig } from 'vitest/config' import { isWindows } from 'std-env' -// import codspeedPlugin from '@codspeed/vitest-plugin' +import codspeedPlugin from '@codspeed/vitest-plugin' export default defineConfig({ - // plugins: [codspeedPlugin()], + plugins: [codspeedPlugin()], resolve: { alias: { '#build/nuxt.config.mjs': resolve('./test/mocks/nuxt-config'),