diff --git a/.github/workflows/cr.yml b/.github/workflows/cr.yml index b8b833ef..7dd5c4c7 100644 --- a/.github/workflows/cr.yml +++ b/.github/workflows/cr.yml @@ -9,6 +9,7 @@ on: types: [opened, synchronize, labeled, ready_for_review] paths-ignore: - '.github/**' + - '!.github/workflows/cr.yml' - '__tests__/**' - 'art/**' - 'docs/**' @@ -17,6 +18,7 @@ on: branches: [main] paths-ignore: - '.github/**' + - '!.github/workflows/cr.yml' - '__tests__/**' - 'art/**' - 'docs/**' diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index dc527e35..51d3fffe 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -18,7 +18,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - node_version: [18, 20, 22] + node_version: [20, 22, latest] include: - os: windows-latest node_version: 22 diff --git a/CHANGELOG.md b/CHANGELOG.md index 387e81e0..4d737c93 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,31 @@ +## [2.0.0-alpha.5](https://github.com/vuejs/vitepress/compare/v2.0.0-alpha.4...v2.0.0-alpha.5) (2025-04-21) + +### Bug Fixes + +- don't remove shiki styles from `pre` and remove unnecessary transformers (#4652) ([db58af5](https://github.com/vuejs/vitepress/commit/db58af5c66e563e7663084057a9853d8f2da984c)), closes [#4652](https://github.com/vuejs/vitepress/issues/4652) +- normalize url fragments in internal links to correctly resolve to anchors ([#4628](https://github.com/vuejs/vitepress/issues/4628)) ([e25d080](https://github.com/vuejs/vitepress/commit/e25d0805505db2f1116e99d38a488d5cb39ed426)), closes [#4605](https://github.com/vuejs/vitepress/issues/4605) +- **theme-default:** ensure proper sizing of SVG hero images ([#4639](https://github.com/vuejs/vitepress/issues/4639)) ([7d94481](https://github.com/vuejs/vitepress/commit/7d9448192079e59493aa5c1e86cdf6d6deae8e36)) + +### Features + +- add `isHome` frontmatter option (#4673) ([544cd81](https://github.com/vuejs/vitepress/commit/544cd8125985b9e3af7fee68ea9592d159799e01)), closes [#4673](https://github.com/vuejs/vitepress/issues/4673) +- add `custom-block-title-default` class when default title is used for containers ([#4643](https://github.com/vuejs/vitepress/issues/4643)) ([63079bf](https://github.com/vuejs/vitepress/commit/63079bff03b15861d174199f7361a2aff84380e0)) +- add `dir=ltr` by default on code block pre elements instead of relying on css ([19faa16](https://github.com/vuejs/vitepress/commit/19faa16169b44f52bedf1401b4a97b2a8ffdeacb)) +- **default-theme:** make VPButton slottable ([#4689](https://github.com/vuejs/vitepress/issues/4689)) ([0b70397](https://github.com/vuejs/vitepress/commit/0b7039719782e85119ad22be5c89ef3d233ffaae)) +- support distributed config files ([#4660](https://github.com/vuejs/vitepress/issues/4660)) ([c5e2e4d](https://github.com/vuejs/vitepress/commit/c5e2e4db818c06f3c1b458753f22fb6ec1609628)) +- **theme:** make "Take me home" button's link customizable ([#4658](https://github.com/vuejs/vitepress/issues/4658)) ([0267dca](https://github.com/vuejs/vitepress/commit/0267dcafa20beea24ef359d24bb1fa99e1ffda49)) + +### Performance Improvements + +- call `module.enableCompileCache()` ([70de34c](https://github.com/vuejs/vitepress/commit/70de34c0387d9668ada3ea9a795f9ebee3535f5b)) +- hoist expensive operations in useLayout ([e5ab067](https://github.com/vuejs/vitepress/commit/e5ab0676a9a8dc607e213eb691439b2e4ee472b7)) + +### BREAKING CHANGES + +- `useLocalNav` and `useSidebar` are removed in favor of `useLayout`. To migrate, just do find and replace. Sidebar controls are no longer exported, but we didn't find any usage on GitHub. If there is demand, we can export respective composables later. `DefaultTheme.DocSidebar` and `DefaultTheme.DocLocalNav` types are also removed. +- `vp-adaptive-theme` class is no longer added to code blocks when there is single theme. Theme authors supporting single code theme can use `.shiki:not(.shiki-themes)` as selector. Alternatively, it might be better to use the bg/fg variables set on the `.shiki` block to keep things generic. +- `vp-code` class is no longer added to code blocks. Use `.shiki` or `pre.shiki` or `[class*='language-'] pre` instead. People not customizing their themes are not affected. + ## [2.0.0-alpha.4](https://github.com/vuejs/vitepress/compare/v2.0.0-alpha.3...v2.0.0-alpha.4) (2025-03-09) ### Bug Fixes diff --git a/README.md b/README.md index 134226a4..aedcd487 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # VitePress 📝💨 -[![test](https://github.com/vuejs/vitepress/workflows/Test/badge.svg)](https://github.com/vuejs/vitepress/actions) +[![test](https://github.com/vuejs/vitepress/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/vuejs/vitepress/actions/workflows/test.yml) [![npm](https://img.shields.io/npm/v/vitepress)](https://www.npmjs.com/package/vitepress) [![nightly releases](https://img.shields.io/badge/nightly-releases-orange)](https://nightly.akryum.dev/vuejs/vitepress) [![chat](https://img.shields.io/badge/chat-discord-blue?logo=discord)](https://chat.vuejs.org) diff --git a/__tests__/e2e/.vitepress/theme/components/ApiPreference.vue b/__tests__/e2e/.vitepress/theme/components/ApiPreference.vue index 12207764..c286640b 100644 --- a/__tests__/e2e/.vitepress/theme/components/ApiPreference.vue +++ b/__tests__/e2e/.vitepress/theme/components/ApiPreference.vue @@ -30,7 +30,7 @@ function removeSpaces(str: string) { diff --git a/art/vitepress-logo.svg b/art/vitepress-logo.svg index 1052015b..0805ed51 100644 --- a/art/vitepress-logo.svg +++ b/art/vitepress-logo.svg @@ -1,4 +1,4 @@ - + diff --git a/bin/vitepress.js b/bin/vitepress.js index 7c50ec90..9cf31ae0 100755 --- a/bin/vitepress.js +++ b/bin/vitepress.js @@ -1,2 +1,16 @@ #!/usr/bin/env node +// @ts-check + +import module from 'node:module' + +// https://github.com/vitejs/vite/blob/6c8a5a27e645a182f5b03a4ed6aa726eab85993f/packages/vite/bin/vite.js#L48-L63 +try { + module.enableCompileCache?.() + setTimeout(() => { + try { + module.flushCompileCache?.() + } catch {} + }, 10 * 1000).unref() +} catch {} + import('../dist/node/cli.js') diff --git a/docs/.vitepress/config/shared.ts b/docs/.vitepress/config.ts similarity index 72% rename from docs/.vitepress/config/shared.ts rename to docs/.vitepress/config.ts index 1f4961d2..575d114d 100644 --- a/docs/.vitepress/config/shared.ts +++ b/docs/.vitepress/config.ts @@ -1,17 +1,18 @@ -import { defineConfig } from 'vitepress' +import { + defineConfig, + resolveSiteDataByRoute, + type HeadConfig +} from 'vitepress' import { groupIconMdPlugin, groupIconVitePlugin, localIconLoader } from 'vitepress-plugin-group-icons' -import { search as esSearch } from './es' -import { search as faSearch } from './fa' -import { search as koSearch } from './ko' -import { search as ptSearch } from './pt' -import { search as ruSearch } from './ru' -import { search as zhSearch } from './zh' +import llmstxt from 'vitepress-plugin-llms' + +const prod = !!process.env.NETLIFY -export const shared = defineConfig({ +export default defineConfig({ title: 'VitePress', rewrites: { @@ -77,8 +78,6 @@ export const shared = defineConfig({ ['link', { rel: 'icon', type: 'image/png', href: '/vitepress-logo-mini.png' }], ['meta', { name: 'theme-color', content: '#5f67ee' }], ['meta', { property: 'og:type', content: 'website' }], - ['meta', { property: 'og:locale', content: 'en' }], - ['meta', { property: 'og:title', content: 'VitePress | Vite & Vue Powered Static Site Generator' }], ['meta', { property: 'og:site_name', content: 'VitePress' }], ['meta', { property: 'og:image', content: 'https://vitepress.dev/vitepress-og.jpg' }], ['meta', { property: 'og:url', content: 'https://vitepress.dev/' }], @@ -97,31 +96,53 @@ export const shared = defineConfig({ options: { appId: '8J64VVRP8K', apiKey: '52f578a92b88ad6abde815aae2b0ad7c', - indexName: 'vitepress', - locales: { - ...zhSearch, - ...ptSearch, - ...ruSearch, - ...esSearch, - ...koSearch, - ...faSearch - } + indexName: 'vitepress' } }, carbonAds: { code: 'CEBDT27Y', placement: 'vuejsorg' } }, + + locales: { + root: { label: 'English' }, + zh: { label: '简体中文' }, + pt: { label: 'Português' }, + ru: { label: 'Русский' }, + es: { label: 'Español' }, + ko: { label: '한국어' }, + fa: { label: 'فارسی' } + }, + vite: { plugins: [ groupIconVitePlugin({ customIcon: { vitepress: localIconLoader( import.meta.url, - '../../public/vitepress-logo-mini.svg' + '../public/vitepress-logo-mini.svg' ), firebase: 'logos:firebase' } - }) + }), + prod && + llmstxt({ + workDir: 'en', + ignoreFiles: ['index.md'] + }) ] - } + }, + + transformPageData: prod + ? (pageData, ctx) => { + const site = resolveSiteDataByRoute( + ctx.siteConfig.site, + pageData.relativePath + ) + const title = `${pageData.title || site.title} | ${pageData.description || site.description}` + ;((pageData.frontmatter.head ??= []) as HeadConfig[]).push( + ['meta', { property: 'og:locale', content: site.lang }], + ['meta', { property: 'og:title', content: title }] + ) + } + : undefined }) diff --git a/docs/.vitepress/config/index.ts b/docs/.vitepress/config/index.ts deleted file mode 100644 index 08a81fb9..00000000 --- a/docs/.vitepress/config/index.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { defineConfig } from 'vitepress' -import { shared } from './shared' -import { en } from './en' -import { zh } from './zh' -import { pt } from './pt' -import { ru } from './ru' -import { es } from './es' -import { ko } from './ko' -import { fa } from './fa' - -export default defineConfig({ - ...shared, - locales: { - root: { label: 'English', ...en }, - zh: { label: '简体中文', ...zh }, - pt: { label: 'Português', ...pt }, - ru: { label: 'Русский', ...ru }, - es: { label: 'Español', ...es }, - ko: { label: '한국어', ...ko }, - fa: { label: 'فارسی', ...fa } - } -}) diff --git a/docs/.vitepress/theme/styles.css b/docs/.vitepress/theme/styles.css index 1f397744..2635e80d 100644 --- a/docs/.vitepress/theme/styles.css +++ b/docs/.vitepress/theme/styles.css @@ -1,5 +1,3 @@ -@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@100..900&display=swap'); - :root:where(:lang(fa)) { --vp-font-family-base: 'Vazirmatn', 'Inter', ui-sans-serif, system-ui, sans-serif, @@ -33,6 +31,11 @@ } } +.VPHero .VPImage { + filter: drop-shadow(-2px 4px 6px rgba(0, 0, 0, 0.2)); + padding: 18px; +} + /* used in reference/default-theme-search */ img[src='/search.png'] { width: 100%; diff --git a/docs/.vitepress/config/en.ts b/docs/config.ts similarity index 97% rename from docs/.vitepress/config/en.ts rename to docs/config.ts index 1f619347..a09a3a67 100644 --- a/docs/.vitepress/config/en.ts +++ b/docs/config.ts @@ -1,10 +1,10 @@ import { createRequire } from 'module' -import { defineConfig, type DefaultTheme } from 'vitepress' +import { defineAdditionalConfig, type DefaultTheme } from 'vitepress' const require = createRequire(import.meta.url) const pkg = require('vitepress/package.json') -export const en = defineConfig({ +export default defineAdditionalConfig({ lang: 'en-US', description: 'Vite & Vue powered static site generator.', diff --git a/docs/en/guide/deploy.md b/docs/en/guide/deploy.md index a4093df2..ed6331c1 100644 --- a/docs/en/guide/deploy.md +++ b/docs/en/guide/deploy.md @@ -111,7 +111,7 @@ Set up a new project and change these settings using your dashboard: - **Build Command:** `npm run docs:build` - **Output Directory:** `docs/.vitepress/dist` -- **Node Version:** `18` (or above) +- **Node Version:** `20` (or above) ::: warning Don't enable options like _Auto Minify_ for HTML code. It will remove comments from output which have meaning to Vue. You may see hydration mismatch errors if they get removed. @@ -163,7 +163,7 @@ Don't enable options like _Auto Minify_ for HTML code. It will remove comments f - name: Setup Node uses: actions/setup-node@v4 with: - node-version: 20 + node-version: 22 cache: npm # or pnpm / yarn - name: Setup Pages uses: actions/configure-pages@v4 diff --git a/docs/en/guide/extending-default-theme.md b/docs/en/guide/extending-default-theme.md index 799d1773..e7d67305 100644 --- a/docs/en/guide/extending-default-theme.md +++ b/docs/en/guide/extending-default-theme.md @@ -70,7 +70,7 @@ If your font is a local file referenced via `@font-face`, it will be processed a export default { transformHead({ assets }) { // adjust the regex accordingly to match your font - const myFontFile = assets.find(file => /font-name\.\w+\.woff2/) + const myFontFile = assets.find(file => /font-name\.[\w-]+\.woff2/.test(file)) if (myFontFile) { return [ [ diff --git a/docs/en/guide/markdown.md b/docs/en/guide/markdown.md index 88729f3e..bbd2b2a3 100644 --- a/docs/en/guide/markdown.md +++ b/docs/en/guide/markdown.md @@ -824,7 +824,7 @@ It also supports selecting a line range: **Input** -```md +```md:line-numbers # Docs ## Basics @@ -834,7 +834,7 @@ It also supports selecting a line range: **Part file** (`parts/basics.md`) -```md +```md:line-numbers Some getting started stuff. ### Configuration @@ -844,7 +844,7 @@ Can be created using `.foorc.json`. **Equivalent code** -```md +```md:line-numbers # Docs ## Basics @@ -860,7 +860,7 @@ You can also use a [VS Code region](https://code.visualstudio.com/docs/editor/co **Input** -```md +```md:line-numbers # Docs ## Basics @@ -871,7 +871,7 @@ You can also use a [VS Code region](https://code.visualstudio.com/docs/editor/co **Part file** (`parts/basics.md`) -```md +```md:line-numbers ## Usage Line 1 @@ -883,7 +883,7 @@ You can also use a [VS Code region](https://code.visualstudio.com/docs/editor/co **Equivalent code** -```md +```md:line-numbers # Docs ## Basics diff --git a/docs/en/index.md b/docs/en/index.md index d65ee07b..61a2b003 100644 --- a/docs/en/index.md +++ b/docs/en/index.md @@ -1,9 +1,6 @@ --- layout: home -title: VitePress -titleTemplate: Vite & Vue Powered Static Site Generator - hero: name: VitePress text: Vite & Vue Powered Static Site Generator @@ -19,7 +16,7 @@ hero: text: GitHub link: https://github.com/vuejs/vitepress image: - src: /vitepress-logo-large.webp + src: /vitepress-logo-large.svg alt: VitePress features: diff --git a/docs/en/reference/default-theme-config.md b/docs/en/reference/default-theme-config.md index c8afc554..39c3fcf7 100644 --- a/docs/en/reference/default-theme-config.md +++ b/docs/en/reference/default-theme-config.md @@ -457,3 +457,38 @@ Can be used to customize the label of the skip to content link. This link is sho - Default: `false` Whether to show an external link icon next to external links in markdown. + +## `useLayout` + +Returns layout-related data. The returned object has the following type: + +```ts +interface { + isHome: ComputedRef + + sidebar: Readonly> + sidebarGroups: ComputedRef + hasSidebar: ComputedRef + isSidebarEnabled: ComputedRef + + hasAside: ComputedRef + leftAside: ComputedRef + + headers: Readonly> + hasLocalNav: ComputedRef +} +``` + +**Example:** + +```vue + + +
Only show when sidebar exists
+ +``` diff --git a/docs/en/reference/default-theme-sidebar.md b/docs/en/reference/default-theme-sidebar.md index 9a64a074..67893cf6 100644 --- a/docs/en/reference/default-theme-sidebar.md +++ b/docs/en/reference/default-theme-sidebar.md @@ -180,36 +180,3 @@ export default { } } ``` - -## `useSidebar` - -Returns sidebar-related data. The returned object has the following type: - -```ts -export interface DocSidebar { - isOpen: Ref - sidebar: ComputedRef - sidebarGroups: ComputedRef - hasSidebar: ComputedRef - hasAside: ComputedRef - leftAside: ComputedRef - isSidebarEnabled: ComputedRef - open: () => void - close: () => void - toggle: () => void -} -``` - -**Example:** - -```vue - - - -``` diff --git a/docs/en/reference/default-theme-team-page.md b/docs/en/reference/default-theme-team-page.md index 29b071ff..6c37c6a7 100644 --- a/docs/en/reference/default-theme-team-page.md +++ b/docs/en/reference/default-theme-team-page.md @@ -53,12 +53,12 @@ const members = [ Say hello to our awesome team. - + ``` The above will display a team member in card looking element. It should display something similar to below. - + `` component comes in 2 different sizes, `small` and `medium`. While it boils down to your preference, usually `small` size should fit better when used in doc page. Also, you may add more properties to each member such as adding "description" or "sponsor" button. Learn more about it in [``](#vpteammembers). @@ -107,9 +107,7 @@ const members = [ team, some of whom have chosen to be featured below. - + ``` diff --git a/docs/en/reference/frontmatter-config.md b/docs/en/reference/frontmatter-config.md index 955d4ad7..4d6f86c0 100644 --- a/docs/en/reference/frontmatter-config.md +++ b/docs/en/reference/frontmatter-config.md @@ -225,3 +225,16 @@ Then you can customize styles of this specific page in `.vitepress/theme/custom. /* page-specific styles */ } ``` + +### isHome + +- Type: `boolean` + +The default theme relies on checks like `frontmatter.layout === 'home'` to determine if the current page is the home page.\ +This is useful when you want to force show the home page elements in a custom layout. + +```yaml +--- +isHome: true +--- +``` diff --git a/docs/.vitepress/config/es.ts b/docs/es/config.ts similarity index 92% rename from docs/.vitepress/config/es.ts rename to docs/es/config.ts index d30fc89f..099edba6 100644 --- a/docs/.vitepress/config/es.ts +++ b/docs/es/config.ts @@ -1,16 +1,18 @@ import { createRequire } from 'module' -import { defineConfig, type DefaultTheme } from 'vitepress' +import { defineAdditionalConfig, type DefaultTheme } from 'vitepress' const require = createRequire(import.meta.url) const pkg = require('vitepress/package.json') -export const es = defineConfig({ +export default defineAdditionalConfig({ lang: 'es-CO', description: 'Generador de Sitios Estaticos desarrollado con Vite y Vue.', themeConfig: { nav: nav(), + search: { options: searchOptions() }, + sidebar: { '/es/guide/': { base: '/es/guide/', items: sidebarGuide() }, '/es/reference/': { base: '/es/reference/', items: sidebarReference() } @@ -36,11 +38,15 @@ export const es = defineConfig({ }, lastUpdated: { - text: 'Actualizado en', - formatOptions: { - dateStyle: 'short', - timeStyle: 'medium' - } + text: 'Actualizado en' + }, + + notFound: { + title: 'PÁGINA NO ENCONTRADA', + quote: + 'Pero si no cambias de dirección y sigues buscando, podrías terminar donde te diriges.', + linkLabel: 'ir a inicio', + linkText: 'Llévame a casa' }, langMenuLabel: 'Cambiar Idioma', @@ -170,8 +176,8 @@ function sidebarReference(): DefaultTheme.SidebarItem[] { ] } -export const search: DefaultTheme.AlgoliaSearchOptions['locales'] = { - es: { +function searchOptions(): Partial { + return { placeholder: 'Buscar documentos', translations: { button: { diff --git a/docs/es/guide/deploy.md b/docs/es/guide/deploy.md index 005f05c9..5d2c9c06 100644 --- a/docs/es/guide/deploy.md +++ b/docs/es/guide/deploy.md @@ -163,7 +163,7 @@ No active opciones como _Auto Minify_ para código HTML. Eso removera comentario - name: Setup Node uses: actions/setup-node@v4 with: - node-version: 20 + node-version: 22 cache: npm # o pnpm / yarn - name: Setup Pages uses: actions/configure-pages@v4 diff --git a/docs/es/guide/extending-default-theme.md b/docs/es/guide/extending-default-theme.md index 87452b63..85bf8de8 100644 --- a/docs/es/guide/extending-default-theme.md +++ b/docs/es/guide/extending-default-theme.md @@ -70,7 +70,7 @@ Si su fuente es un archivo local referenciado via `@font-face`, ella será proce export default { transformHead({ assets }) { // ajuste el regex para corresponder a su fuente - const myFontFile = assets.find(file => /font-name\.\w+\.woff2/) + const myFontFile = assets.find(file => /font-name\.[\w-]+\.woff2/.test(file)) if (myFontFile) { return [ [ diff --git a/docs/es/index.md b/docs/es/index.md index 6ced6057..24b5034c 100644 --- a/docs/es/index.md +++ b/docs/es/index.md @@ -1,9 +1,6 @@ --- layout: home -title: VitePress -titleTemplate: Generador de Sitios Estáticos desarrollado con Vite y Vue - hero: name: VitePress text: Generador de Sitios Estáticos Vite y Vue @@ -19,7 +16,7 @@ hero: text: GitHub link: https://github.com/vuejs/vitepress image: - src: /vitepress-logo-large.webp + src: /vitepress-logo-large.svg alt: VitePress features: diff --git a/docs/es/reference/default-theme-sidebar.md b/docs/es/reference/default-theme-sidebar.md index cf2af04b..41cd5cac 100644 --- a/docs/es/reference/default-theme-sidebar.md +++ b/docs/es/reference/default-theme-sidebar.md @@ -181,36 +181,3 @@ export default { } } ``` - -## `useSidebar` - -Devuelve datos relacionados con la barra lateral. El objeto devuelto tiene el siguiente tipo: - -```ts -export interface DocSidebar { - isOpen: Ref - sidebar: ComputedRef - sidebarGroups: ComputedRef - hasSidebar: ComputedRef - hasAside: ComputedRef - leftAside: ComputedRef - isSidebarEnabled: ComputedRef - open: () => void - close: () => void - toggle: () => void -} -``` - -**Exemplo:** - -```vue - - - -``` diff --git a/docs/es/reference/default-theme-team-page.md b/docs/es/reference/default-theme-team-page.md index 1f6492a8..996e8f18 100644 --- a/docs/es/reference/default-theme-team-page.md +++ b/docs/es/reference/default-theme-team-page.md @@ -53,12 +53,12 @@ const members = [ Saluda a nuestro increible equipo. - + ``` El código anterior mostrará a un miembro del equipo en un elemento similar a una tarjeta. Debería mostrar algo similar a lo siguiente. - + El componente `` viene en dos tamaños diferentes, pequeño `small` y médio `medium`. Si bien es una cuestión de preferencia, generalmente el tamaño `small` debería encajar mejor cuando se use en la página del documento. Además, puede agregar más propiedades a cada miembro, como agregar el botón "descripción" o "patrocinador". Obtenga más información sobre en [``](#vpteammembers). @@ -107,9 +107,7 @@ const members = [ Algunos de los miembros han elegido aparecer a continuación. - + ``` diff --git a/docs/.vitepress/config/fa.ts b/docs/fa/config.ts similarity index 86% rename from docs/.vitepress/config/fa.ts rename to docs/fa/config.ts index 5c91d0bc..606366f6 100644 --- a/docs/.vitepress/config/fa.ts +++ b/docs/fa/config.ts @@ -1,25 +1,26 @@ import { createRequire } from 'module' -import { defineConfig, type DefaultTheme } from 'vitepress' +import { defineAdditionalConfig, type DefaultTheme } from 'vitepress' const require = createRequire(import.meta.url) const pkg = require('vitepress/package.json') -export const fa = defineConfig({ - title: 'ویت‌پرس', +export default defineAdditionalConfig({ lang: 'fa-IR', - description: 'Vite & Vue powered static site generator.', + description: 'ژنراتور استاتیک وب‌سایت با Vite و Vue', dir: 'rtl', - markdown: { - container: { - tipLabel: 'نکته', - warningLabel: 'هشدار', - dangerLabel: 'خطر', - infoLabel: 'اطلاعات', - detailsLabel: 'جزئیات' - } - }, + + // prettier-ignore + head: [ + ['link', { rel: 'preconnect', href: 'https://fonts.googleapis.com' }], + ['link', { rel: 'preconnect', href: 'https://fonts.gstatic.com', crossorigin: '' }], + ['link', { href: 'https://fonts.googleapis.com/css2?family=Vazirmatn:wght@100..900&display=swap', rel: 'stylesheet' }], + ], + themeConfig: { nav: nav(), + + search: { options: searchOptions() }, + sidebar: { '/fa/guide/': { base: '/fa/guide/', items: sidebarGuide() }, '/fa/reference/': { base: '/fa/reference/', items: sidebarReference() } @@ -45,11 +46,15 @@ export const fa = defineConfig({ }, lastUpdated: { - text: 'آخرین به‌روزرسانی‌', - formatOptions: { - dateStyle: 'short', - timeStyle: 'medium' - } + text: 'آخرین به‌روزرسانی‌' + }, + + notFound: { + title: 'صفحه پیدا نشد', + quote: + 'اما اگر جهت خود را تغییر ندهید و همچنان به جستجو ادامه دهید، ممکن است در نهایت به جایی برسید که در حال رفتن به آن هستید.', + linkLabel: 'برو به خانه', + linkText: 'من را به خانه ببر' }, langMenuLabel: 'تغییر زبان', @@ -58,14 +63,6 @@ export const fa = defineConfig({ darkModeSwitchLabel: 'تم تاریک', lightModeSwitchTitle: 'رفتن به حالت روشن', darkModeSwitchTitle: 'رفتن به حالت تاریک', - notFound: { - linkLabel: 'بازگشت به خانه', - linkText: 'بازگشت به خانه', - title: 'صفحه مورد نظر یافت نشد', - code: '۴۰۴', - quote: - 'اما اگر جهت خود را تغییر ندهید و اگر ادامه دهید به دنبال چیزی که دنبال می‌کنید، ممکن است در نهایت به جایی که در حال رفتن به سمتش هستید، برسید.' - }, siteTitle: 'ویت‌پرس' } }) @@ -181,8 +178,8 @@ function sidebarReference(): DefaultTheme.SidebarItem[] { ] } -export const search: DefaultTheme.AlgoliaSearchOptions['locales'] = { - fa: { +function searchOptions(): Partial { + return { placeholder: 'جستجوی مستندات', translations: { button: { diff --git a/docs/fa/guide/deploy.md b/docs/fa/guide/deploy.md index dcc74f69..1b89f334 100644 --- a/docs/fa/guide/deploy.md +++ b/docs/fa/guide/deploy.md @@ -161,7 +161,7 @@ Cache-Control: max-age=31536000,immutable - name: Setup Node uses: actions/setup-node@v4 with: - node-version: 20 + node-version: 22 cache: npm # or pnpm / yarn - name: Setup Pages uses: actions/configure-pages@v4 diff --git a/docs/fa/guide/extending-default-theme.md b/docs/fa/guide/extending-default-theme.md index e4d35270..2aaefa7a 100644 --- a/docs/fa/guide/extending-default-theme.md +++ b/docs/fa/guide/extending-default-theme.md @@ -70,7 +70,7 @@ export default DefaultTheme export default { transformHead({ assets }) { // منظور شده برای همسان سازی font خود، regex مورد نیاز را تنظیم کنید - const myFontFile = assets.find(file => /font-name\.\w+\.woff2/) + const myFontFile = assets.find(file => /font-name\.[\w-]+\.woff2/.test(file)) if (myFontFile) { return [ [ diff --git a/docs/fa/index.md b/docs/fa/index.md index 1637397f..8fa79bd3 100644 --- a/docs/fa/index.md +++ b/docs/fa/index.md @@ -1,9 +1,6 @@ --- layout: home -title: ویت‌پرس -titleTemplate: Vite & Vue Powered Static Site Generator - hero: name: ویت‌پرس text: سازنده سایت‌های ایستا به کمک Vite و Vue @@ -19,7 +16,7 @@ hero: text: گیت‌هاب link: https://github.com/vuejs/vitepress image: - src: /vitepress-logo-large.webp + src: /vitepress-logo-large.svg alt: ویت‌پرس features: diff --git a/docs/fa/reference/default-theme-sidebar.md b/docs/fa/reference/default-theme-sidebar.md index cba65dff..96433c2d 100644 --- a/docs/fa/reference/default-theme-sidebar.md +++ b/docs/fa/reference/default-theme-sidebar.md @@ -178,38 +178,3 @@ export default { } } ``` - -## `useSidebar` {#usesidebar} - -داده‌های مربوط به نوار کناری را برمی‌گرداند. شیء برگردانده شده دارای نوع‌های زیر است: - -```ts -export interface DocSidebar { - isOpen: Ref - sidebar: ComputedRef - sidebarGroups: ComputedRef - hasSidebar: ComputedRef - hasAside: ComputedRef - leftAside: ComputedRef - isSidebarEnabled: ComputedRef - open: () => void - close: () => void - toggle: () => void -} -``` - -**مثال:** - -```vue - - - -``` diff --git a/docs/fa/reference/default-theme-team-page.md b/docs/fa/reference/default-theme-team-page.md index ccd9738d..57fc2814 100644 --- a/docs/fa/reference/default-theme-team-page.md +++ b/docs/fa/reference/default-theme-team-page.md @@ -53,12 +53,12 @@ const members = [ با سلام به تیم فوق‌العاده‌ی ما خوش آمدید. - + ``` بالا به صورت عنصری با شکل کارتی اعضای تیم را نمایش می‌دهد. باید به شکل زیر نمایش داده شود. - + کامپوننت `` دارای دو اندازه مختلف، `small` و `medium` است. معمولاً اندازه `small` برای استفاده در صفحات مستندات مناسب‌تر است. همچنین می‌توانید ویژگی‌های بیشتری برای هر عضو اضافه کنید مانند "توضیحات" یا "دکمه حامی". جهت کسب اطلاعات بیشتر به [``](#vpteammembers) مراجعه کنید. @@ -106,9 +106,7 @@ const members = [ توسعه ویت‌پرس توسط تیمی بین‌المللی راهنمایی می‌شود، برخی از اعضا که انتخاب کرده‌اند تا در زیر نمایش داده شوند. - + ``` diff --git a/docs/.vitepress/config/ko.ts b/docs/ko/config.ts similarity index 92% rename from docs/.vitepress/config/ko.ts rename to docs/ko/config.ts index faebabf4..78b5c3f3 100644 --- a/docs/.vitepress/config/ko.ts +++ b/docs/ko/config.ts @@ -1,16 +1,18 @@ import { createRequire } from 'module' -import { defineConfig, type DefaultTheme } from 'vitepress' +import { defineAdditionalConfig, type DefaultTheme } from 'vitepress' const require = createRequire(import.meta.url) const pkg = require('vitepress/package.json') -export const ko = defineConfig({ +export default defineAdditionalConfig({ lang: 'ko-KR', description: 'Vite 및 Vue 기반 정적 사이트 생성기.', themeConfig: { nav: nav(), + search: { options: searchOptions() }, + sidebar: { '/ko/guide/': { base: '/ko/guide/', items: sidebarGuide() }, '/ko/reference/': { base: '/ko/reference/', items: sidebarReference() } @@ -39,6 +41,14 @@ export const ko = defineConfig({ text: '업데이트 날짜' }, + notFound: { + title: '페이지를 찾을 수 없습니다', + quote: + '방향을 바꾸지 않고 계속 찾다 보면 결국 당신이 가고 있는 곳에 도달할 수도 있습니다.', + linkLabel: '홈으로 가기', + linkText: '집으로 데려가줘' + }, + langMenuLabel: '언어 변경', returnToTopLabel: '맨 위로 돌아가기', sidebarMenuLabel: '사이드바 메뉴', @@ -208,8 +218,8 @@ function sidebarReference(): DefaultTheme.SidebarItem[] { ] } -export const search: DefaultTheme.AlgoliaSearchOptions['locales'] = { - ko: { +function searchOptions(): Partial { + return { placeholder: '문서 검색', translations: { button: { diff --git a/docs/ko/guide/deploy.md b/docs/ko/guide/deploy.md index 797015da..7a57a8ad 100644 --- a/docs/ko/guide/deploy.md +++ b/docs/ko/guide/deploy.md @@ -162,7 +162,7 @@ HTML 코드에 대해 _Auto Minify_ 옵션을 활성화하지 마세요. 이는 - name: Setup Node uses: actions/setup-node@v4 with: - node-version: 20 + node-version: 22 cache: npm # 또는 pnpm / yarn - name: Setup Pages uses: actions/configure-pages@v4 diff --git a/docs/ko/guide/extending-default-theme.md b/docs/ko/guide/extending-default-theme.md index 6e64646f..0207e049 100644 --- a/docs/ko/guide/extending-default-theme.md +++ b/docs/ko/guide/extending-default-theme.md @@ -70,7 +70,7 @@ export default DefaultTheme export default { transformHead({ assets }) { // 폰트를 매칭하기 위해 정규식을 적절히 조정하세요 - const myFontFile = assets.find(file => /font-name\.\w+\.woff2/) + const myFontFile = assets.find(file => /font-name\.[\w-]+\.woff2/.test(file)) if (myFontFile) { return [ [ diff --git a/docs/ko/guide/using-vue.md b/docs/ko/guide/using-vue.md index 5c65eeb7..0146352a 100644 --- a/docs/ko/guide/using-vue.md +++ b/docs/ko/guide/using-vue.md @@ -125,7 +125,7 @@ import CustomComponent from '../components/CustomComponent.vue' 컴포넌트가 대부분의 페이지에서 사용될 경우, Vue 앱 인스턴스를 커스텀하여 전역적으로 등록할 수 있습니다. [기본 테마 확장](./extending-default-theme#registering-global-components)의 관련 섹션을 예제를 참고하세요. ::: warning 중요 -커스텀 컴포넌트의 이름에 하이픈이 포함되어 있거나 파스칼케이스(PascalCase)e인지 확인하세요. 그렇지 않으면 인라인 요소로 처리되어 `

` 태그 안에 래핑됩니다. `

`는 블록 엘리먼트를 내부에 배치할 수 없기 때문에 하이드레이션 불일치가 발생합니다. +커스텀 컴포넌트의 이름에 하이픈이 포함되어 있거나 파스칼케이스(PascalCase)인지 확인하세요. 그렇지 않으면 인라인 요소로 처리되어 `

` 태그 안에 래핑됩니다. `

`는 블록 엘리먼트를 내부에 배치할 수 없기 때문에 하이드레이션 불일치가 발생합니다. ::: ### 헤더에 컴포넌트 사용하기 {#using-components-in-headers} diff --git a/docs/ko/index.md b/docs/ko/index.md index 6a16ff49..ae7df4c8 100644 --- a/docs/ko/index.md +++ b/docs/ko/index.md @@ -1,9 +1,6 @@ --- layout: home -title: VitePress -titleTemplate: Vite & Vue 기반 정적 사이트 생성기 - hero: name: VitePress text: Vite & Vue 기반 정적 사이트 생성기 @@ -19,7 +16,7 @@ hero: text: GitHub link: https://github.com/vuejs/vitepress image: - src: /vitepress-logo-large.webp + src: /vitepress-logo-large.svg alt: VitePress features: diff --git a/docs/ko/reference/default-theme-sidebar.md b/docs/ko/reference/default-theme-sidebar.md index 21e19ccc..8e4709cd 100644 --- a/docs/ko/reference/default-theme-sidebar.md +++ b/docs/ko/reference/default-theme-sidebar.md @@ -180,36 +180,3 @@ export default { } } ``` - -## `useSidebar` - -사이드바 관련 데이터를 반환합니다. 반환된 객체는 다음과 같은 타입을 가집니다: - -```ts -export interface DocSidebar { - isOpen: Ref - sidebar: ComputedRef - sidebarGroups: ComputedRef - hasSidebar: ComputedRef - hasAside: ComputedRef - leftAside: ComputedRef - isSidebarEnabled: ComputedRef - open: () => void - close: () => void - toggle: () => void -} -``` - -**예제:** - -```vue - - - -``` diff --git a/docs/ko/reference/default-theme-team-page.md b/docs/ko/reference/default-theme-team-page.md index 2123f349..b4fddb0f 100644 --- a/docs/ko/reference/default-theme-team-page.md +++ b/docs/ko/reference/default-theme-team-page.md @@ -53,12 +53,12 @@ const members = [ Say hello to our awesome team. - + ``` 위 코드는 카드 형태의 엘리먼트로 팀 구성원을 표시합니다. 아래와 비슷한 형태로 표시됩니다. - + `` 컴포넌트는 `small`과 `medium` 두 가지 크기로 제공됩니다. 개인의 선호도에 따라 선택할 수 있지만, 일반적으로 `small` 사이즈가 문서 페이지에 더 적합합니다. 또한, 각 구성원에 "설명"이나 "후원" 버튼과 같은 프로퍼티를 추가할 수도 있습니다. 자세한 내용은 [``](#vpteammembers)에서 확인할 수 있습니다. @@ -107,9 +107,7 @@ const members = [ team, some of whom have chosen to be featured below. - + ``` diff --git a/docs/lunaria.config.json b/docs/lunaria.config.json index 60abdd98..4f93f4dc 100644 --- a/docs/lunaria.config.json +++ b/docs/lunaria.config.json @@ -6,8 +6,8 @@ }, "files": [ { - "location": ".vitepress/config/{en,zh,pt,ru,es,ko,fa}.ts", - "pattern": ".vitepress/config/@lang.ts", + "location": "**/config.ts", + "pattern": "@lang/@path", "type": "universal" }, { diff --git a/docs/package.json b/docs/package.json index d3c19d0c..4dcb91f6 100644 --- a/docs/package.json +++ b/docs/package.json @@ -13,8 +13,9 @@ "@lunariajs/core": "^0.1.1", "markdown-it-mathjax3": "^4.3.2", "open-cli": "^8.0.0", - "postcss-rtlcss": "^5.6.0", + "postcss-rtlcss": "^5.7.0", "vitepress": "workspace:*", - "vitepress-plugin-group-icons": "^1.3.6" + "vitepress-plugin-group-icons": "^1.5.2", + "vitepress-plugin-llms": "^1.1.0" } } diff --git a/docs/.vitepress/config/pt.ts b/docs/pt/config.ts similarity index 92% rename from docs/.vitepress/config/pt.ts rename to docs/pt/config.ts index 12cb52fa..4926e697 100644 --- a/docs/.vitepress/config/pt.ts +++ b/docs/pt/config.ts @@ -1,16 +1,18 @@ import { createRequire } from 'module' -import { defineConfig, type DefaultTheme } from 'vitepress' +import { defineAdditionalConfig, type DefaultTheme } from 'vitepress' const require = createRequire(import.meta.url) const pkg = require('vitepress/package.json') -export const pt = defineConfig({ +export default defineAdditionalConfig({ lang: 'pt-BR', description: 'Gerador de Site Estático desenvolvido com Vite e Vue.', themeConfig: { nav: nav(), + search: { options: searchOptions() }, + sidebar: { '/pt/guide/': { base: '/pt/guide/', items: sidebarGuide() }, '/pt/reference/': { base: '/pt/reference/', items: sidebarReference() } @@ -36,11 +38,15 @@ export const pt = defineConfig({ }, lastUpdated: { - text: 'Atualizado em', - formatOptions: { - dateStyle: 'short', - timeStyle: 'medium' - } + text: 'Atualizado em' + }, + + notFound: { + title: 'PÁGINA NÃO ENCONTRADA', + quote: + 'Mas se você não mudar de direção e continuar procurando, pode acabar onde está indo.', + linkLabel: 'ir para a página inicial', + linkText: 'Me leve para casa' }, langMenuLabel: 'Alterar Idioma', @@ -167,8 +173,8 @@ function sidebarReference(): DefaultTheme.SidebarItem[] { ] } -export const search: DefaultTheme.AlgoliaSearchOptions['locales'] = { - pt: { +function searchOptions(): Partial { + return { placeholder: 'Pesquisar documentos', translations: { button: { diff --git a/docs/pt/guide/deploy.md b/docs/pt/guide/deploy.md index 9a03631b..b112bf7d 100644 --- a/docs/pt/guide/deploy.md +++ b/docs/pt/guide/deploy.md @@ -163,7 +163,7 @@ Não ative opções como _Auto Minify_ para código HTML. Isso removerá coment - name: Setup Node uses: actions/setup-node@v4 with: - node-version: 20 + node-version: 22 cache: npm # ou pnpm / yarn - name: Setup Pages uses: actions/configure-pages@v4 diff --git a/docs/pt/guide/extending-default-theme.md b/docs/pt/guide/extending-default-theme.md index 08aea50a..aa918b48 100644 --- a/docs/pt/guide/extending-default-theme.md +++ b/docs/pt/guide/extending-default-theme.md @@ -70,7 +70,7 @@ Se a sua fonte é um arquivo local referenciado via `@font-face`, ela será proc export default { transformHead({ assets }) { // ajuste o regex para corresponder à sua fonte - const myFontFile = assets.find(file => /font-name\.\w+\.woff2/) + const myFontFile = assets.find(file => /font-name\.[\w-]+\.woff2/.test(file)) if (myFontFile) { return [ [ diff --git a/docs/pt/index.md b/docs/pt/index.md index fccf03a0..67cab365 100644 --- a/docs/pt/index.md +++ b/docs/pt/index.md @@ -1,9 +1,6 @@ --- layout: home -title: VitePress -titleTemplate: Gerador de Site Estático desenvolvido com Vite & Vue - hero: name: VitePress text: Gerador de Site Estático Vite & Vue @@ -19,7 +16,7 @@ hero: text: GitHub link: https://github.com/vuejs/vitepress image: - src: /vitepress-logo-large.webp + src: /vitepress-logo-large.svg alt: VitePress features: diff --git a/docs/pt/reference/default-theme-sidebar.md b/docs/pt/reference/default-theme-sidebar.md index 62c3b3b1..0d8baf8d 100644 --- a/docs/pt/reference/default-theme-sidebar.md +++ b/docs/pt/reference/default-theme-sidebar.md @@ -180,36 +180,3 @@ export default { } } ``` - -## `useSidebar` - -Retorna dados relacionados à barra lateral. O objeto retornado tem o seguinte tipo: - -```ts -export interface DocSidebar { - isOpen: Ref - sidebar: ComputedRef - sidebarGroups: ComputedRef - hasSidebar: ComputedRef - hasAside: ComputedRef - leftAside: ComputedRef - isSidebarEnabled: ComputedRef - open: () => void - close: () => void - toggle: () => void -} -``` - -**Exemplo:** - -```vue - - - -``` diff --git a/docs/pt/reference/default-theme-team-page.md b/docs/pt/reference/default-theme-team-page.md index 1daa47a5..32a9db0d 100644 --- a/docs/pt/reference/default-theme-team-page.md +++ b/docs/pt/reference/default-theme-team-page.md @@ -53,12 +53,12 @@ const members = [ Diga olá à nossa equipe incrível. - + ``` O código acima exibirá um membro da equipe em um elemento tipo cartão. Ele deve exibir algo semelhante ao abaixo. - + O componente `` vem em 2 tamanhos diferentes, pequeno `small` e médio `medium`. Enquanto é uma questão de preferência, geralmente o tamanho `small` deve encaixar melhor quando usado na página de documento. Além disso, você pode adicionar mais propriedades a cada membro, como adicionar o botão "descrição" ou "patrocinador". Saiba mais sobre em [``](#vpteammembers). @@ -107,9 +107,7 @@ const members = [ alguns dos membros escolheram ser apresentados abaixo. - + ``` diff --git a/docs/public/vitepress-logo-large.svg b/docs/public/vitepress-logo-large.svg new file mode 120000 index 00000000..59e331aa --- /dev/null +++ b/docs/public/vitepress-logo-large.svg @@ -0,0 +1 @@ +../../art/vitepress-logo.svg \ No newline at end of file diff --git a/docs/public/vitepress-logo-mini.svg b/docs/public/vitepress-logo-mini.svg deleted file mode 100644 index 47756f7a..00000000 --- a/docs/public/vitepress-logo-mini.svg +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/public/vitepress-logo-mini.svg b/docs/public/vitepress-logo-mini.svg new file mode 120000 index 00000000..f7c9b3af --- /dev/null +++ b/docs/public/vitepress-logo-mini.svg @@ -0,0 +1 @@ +../../art/vitepress-logo-mini.svg \ No newline at end of file diff --git a/docs/.vitepress/config/ru.ts b/docs/ru/config.ts similarity index 92% rename from docs/.vitepress/config/ru.ts rename to docs/ru/config.ts index b75b1b77..739cfbf2 100644 --- a/docs/.vitepress/config/ru.ts +++ b/docs/ru/config.ts @@ -1,16 +1,18 @@ import { createRequire } from 'module' -import { defineConfig, type DefaultTheme } from 'vitepress' +import { defineAdditionalConfig, type DefaultTheme } from 'vitepress' const require = createRequire(import.meta.url) const pkg = require('vitepress/package.json') -export const ru = defineConfig({ +export default defineAdditionalConfig({ lang: 'ru-RU', description: 'Генератор статических сайтов на основе Vite и Vue.', themeConfig: { nav: nav(), + search: { options: searchOptions() }, + sidebar: { '/ru/guide/': { base: '/ru/guide/', items: sidebarGuide() }, '/ru/reference/': { base: '/ru/reference/', items: sidebarReference() } @@ -37,6 +39,14 @@ export const ru = defineConfig({ text: 'Обновлено' }, + notFound: { + title: 'СТРАНИЦА НЕ НАЙДЕНА', + quote: + 'Но если ты не изменишь направление и продолжишь искать, ты можешь оказаться там, куда направляешься.', + linkLabel: 'перейти на главную', + linkText: 'Отведи меня домой' + }, + darkModeSwitchLabel: 'Оформление', lightModeSwitchTitle: 'Переключить на светлую тему', darkModeSwitchTitle: 'Переключить на тёмную тему', @@ -163,8 +173,8 @@ function sidebarReference(): DefaultTheme.SidebarItem[] { ] } -export const search: DefaultTheme.AlgoliaSearchOptions['locales'] = { - ru: { +function searchOptions(): Partial { + return { placeholder: 'Поиск в документации', translations: { button: { diff --git a/docs/ru/guide/deploy.md b/docs/ru/guide/deploy.md index 0de4fbe0..ff12be6c 100644 --- a/docs/ru/guide/deploy.md +++ b/docs/ru/guide/deploy.md @@ -111,7 +111,7 @@ Cache-Control: max-age=31536000,immutable - **Build Command:** `npm run docs:build` - **Output Directory:** `docs/.vitepress/dist` -- **Node Version:** `18` (или выше) +- **Node Version:** `20` (или выше) ::: warning ПРЕДУПРЕЖДЕНИЕ Не включайте такие опции, как _Auto Minify_ для HTML-кода. Он удалит из вывода комментарии, которые имеют значение для Vue. При их удалении могут возникать ошибки несоответствия гидратации. @@ -163,7 +163,7 @@ Cache-Control: max-age=31536000,immutable - name: Setup Node uses: actions/setup-node@v4 with: - node-version: 20 + node-version: 22 cache: npm # или pnpm / yarn - name: Setup Pages uses: actions/configure-pages@v4 diff --git a/docs/ru/guide/extending-default-theme.md b/docs/ru/guide/extending-default-theme.md index a8f0acc7..4443b882 100644 --- a/docs/ru/guide/extending-default-theme.md +++ b/docs/ru/guide/extending-default-theme.md @@ -70,7 +70,7 @@ export default DefaultTheme export default { transformHead({ assets }) { // настраиваем regex соответствующим образом, чтобы он соответствовал вашему шрифту - const myFontFile = assets.find((file) => /font-name\.\w+\.woff2/) + const myFontFile = assets.find(file => /font-name\.[\w-]+\.woff2/.test(file)) if (myFontFile) { return [ [ diff --git a/docs/ru/index.md b/docs/ru/index.md index 6d5f0de3..e5bc7732 100644 --- a/docs/ru/index.md +++ b/docs/ru/index.md @@ -1,9 +1,6 @@ --- layout: home -title: VitePress -titleTemplate: Генератор статических сайтов на основе Vite и Vue - hero: name: VitePress text: Генератор статических сайтов на основе Vite и Vue @@ -19,7 +16,7 @@ hero: text: GitHub link: https://github.com/vuejs/vitepress image: - src: /vitepress-logo-large.webp + src: /vitepress-logo-large.svg alt: VitePress features: diff --git a/docs/ru/reference/default-theme-config.md b/docs/ru/reference/default-theme-config.md index 348791c0..2eb95570 100644 --- a/docs/ru/reference/default-theme-config.md +++ b/docs/ru/reference/default-theme-config.md @@ -19,13 +19,13 @@ export default { **Параметры, описанные на этой странице, применимы только к теме по умолчанию.** Разные темы предполагают разные конфигурации темы. При использовании пользовательской темы объект конфигурации темы будет передан теме, чтобы она могла определить условное поведение на его основе. -## i18nRouting {#i18nrouting} +## i18nRouting - Тип: `boolean` При смене локали на `ru` URL изменится с `/foo` (или `/en/foo/`) на `/ru/foo`. Вы можете отключить это поведение, установив для параметра `themeConfig.i18nRouting` значение `false`. -## logo {#logo} +## logo - Тип: `ThemeableImage` @@ -46,7 +46,7 @@ type ThemeableImage = | { light: string; dark: string; alt?: string } ``` -## siteTitle {#sitetitle} +## siteTitle - Тип: `string | false` @@ -60,7 +60,7 @@ export default { } ``` -## nav {#nav} +## nav - Тип: `NavItem` @@ -108,7 +108,7 @@ interface NavItemWithChildren { } ``` -## sidebar {#sidebar} +## sidebar - Тип: `Sidebar` @@ -135,7 +135,7 @@ export default { export type Sidebar = SidebarItem[] | SidebarMulti export interface SidebarMulti { - [path: string]: SidebarItem[] + [path: string]: SidebarItem[] | { items: SidebarItem[]; base: string } } export type SidebarItem = { @@ -162,10 +162,23 @@ export type SidebarItem = { * Если `false`, группа сворачивается, но по умолчанию разворачивается */ collapsed?: boolean + + /** + * Базовый путь для дочерних элементов + */ + base?: string + + /** + * Настройте текст, который отображается в футере предыдущей/следующей страницы + */ + docFooterText?: string + + rel?: string + target?: string } ``` -## aside {#aside} +## aside - Тип: `boolean | 'left'` - По умолчанию: `true` @@ -177,7 +190,7 @@ export type SidebarItem = { Если вы хотите отключить его для всех режимов просмотра, используйте `aside: false`. -## outline {#outline} +## outline - Тип: `Outline | Outline['level'] | false` - Уровень можно переопределить для каждой страницы с помощью [метаданных](./frontmatter-config#outline) @@ -205,7 +218,7 @@ interface Outline { } ``` -## socialLinks {#sociallinks} +## socialLinks - Тип: `SocialLink[]` @@ -215,6 +228,7 @@ interface Outline { export default { themeConfig: { socialLinks: [ + // Можно добавить любую иконку из simple-icons (https://simpleicons.org/): { icon: 'github', link: 'https://github.com/vuejs/vitepress' }, { icon: 'twitter', link: '...' }, // Можно добавить пользовательские иконки, передав SVG в виде строки: @@ -239,7 +253,7 @@ interface SocialLink { } ``` -## footer {#footer} +## footer - Тип: `Footer` - Можно переопределить для каждой страницы с помощью [метаданных](./frontmatter-config#footer) @@ -264,7 +278,7 @@ export interface Footer { } ``` -## editLink {#editlink} +## editLink - Тип: `EditLink` - Можно переопределить для каждой страницы с помощью [метаданных](./frontmatter-config#editlink) @@ -289,7 +303,7 @@ export interface EditLink { } ``` -## lastUpdated {#lastupdated} +## lastUpdated - Тип: `LastUpdatedOptions` @@ -324,7 +338,7 @@ export interface LastUpdatedOptions { } ``` -## algolia {#algolia} +## algolia - Тип: `AlgoliaSearch` @@ -364,7 +378,7 @@ export interface CarbonAdsOptions { Подробнее в главе [Тема по умолчанию: Carbon Ads](./default-theme-carbon-ads) -## docFooter {#docfooter} +## docFooter - Тип: `DocFooter` @@ -388,47 +402,47 @@ export interface DocFooter { } ``` -## darkModeSwitchLabel {#darkmodeswitchlabel} +## darkModeSwitchLabel - Тип: `string` - По умолчанию: `Appearance` Можно использовать для настройки надписи переключателя тёмного режима. Этот ярлык отображается только в мобильном представлении. -## lightModeSwitchTitle {#lightmodeswitchtitle} +## lightModeSwitchTitle - Тип: `string` - По умолчанию: `Switch to light theme` Может использоваться для настройки заголовка переключателя светлого режима, который появляется при наведении курсора. -## darkModeSwitchTitle {#darkmodeswitchtitle} +## darkModeSwitchTitle - Тип: `string` - По умолчанию: `Switch to dark theme` Можно использовать для настройки заголовка переключателя тёмного режима, который появляется при наведении курсора. -## sidebarMenuLabel {#sidebarmenulabel} +## sidebarMenuLabel - Тип: `string` - По умолчанию: `Menu` Может использоваться для настройки метки бокового меню. Эта метка отображается только в мобильном представлении. -## returnToTopLabel {#returntotoplabel} +## returnToTopLabel - Тип: `string` - По умолчанию: `Return to top` Может использоваться для настройки метки кнопки возврата наверх. Эта метка отображается только в мобильном представлении. -## langMenuLabel {#langmenulabel} +## langMenuLabel - Тип: `string` - По умолчанию: `Change language` -Можно использовать для настройки aria-метки кнопки переключения языка в панели навигации. Это используется только в том случае, если вы используете [i18n](../guide/i18n). +Можно использовать для настройки aria-метки кнопки переключения языка в панели навигации. Применяется только в том случае, если вы используете [i18n](../guide/i18n). ## skipToContentLabel @@ -437,9 +451,44 @@ export interface DocFooter { Можно использовать для настройки метки ссылки перехода к содержимому. Эта ссылка отображается, когда пользователь перемещается по сайту с помощью клавиатуры. -## externalLinkIcon {#externallinkicon} +## externalLinkIcon - Тип: `boolean` - По умолчанию: `false` Отображать ли значок внешней ссылки рядом с внешними ссылками в Markdown. + +## `useLayout` + +Возвращает данные, относящиеся к макету. Возвращаемый объект имеет следующий тип: + +```ts +interface { + isHome: ComputedRef + + sidebar: Readonly> + sidebarGroups: ComputedRef + hasSidebar: ComputedRef + isSidebarEnabled: ComputedRef + + hasAside: ComputedRef + leftAside: ComputedRef + + headers: Readonly> + hasLocalNav: ComputedRef +} +``` + +**Пример:** + +```vue + + + +``` diff --git a/docs/ru/reference/default-theme-sidebar.md b/docs/ru/reference/default-theme-sidebar.md index 92fd89c1..bdc6e338 100644 --- a/docs/ru/reference/default-theme-sidebar.md +++ b/docs/ru/reference/default-theme-sidebar.md @@ -178,36 +178,3 @@ export default { } } ``` - -## `useSidebar` {#usesidebar} - -Возвращает данные, связанные с сайдбаром. Возвращаемый объект имеет следующий тип: - -```ts -export interface DocSidebar { - isOpen: Ref - sidebar: ComputedRef - sidebarGroups: ComputedRef - hasSidebar: ComputedRef - hasAside: ComputedRef - leftAside: ComputedRef - isSidebarEnabled: ComputedRef - open: () => void - close: () => void - toggle: () => void -} -``` - -**Пример:** - -```vue - - - -``` diff --git a/docs/ru/reference/default-theme-team-page.md b/docs/ru/reference/default-theme-team-page.md index 0eebaa24..615692bb 100644 --- a/docs/ru/reference/default-theme-team-page.md +++ b/docs/ru/reference/default-theme-team-page.md @@ -51,12 +51,12 @@ const members = [ # Поприветствуйте нашу замечательную команду - + ``` Вышеуказанное отобразит члена команды в виде карточки. Должно отобразиться что-то похожее на то, что показано ниже. - + Компонент `` поставляется в двух различных размерах, `small` и `medium`. Хотя это зависит от ваших предпочтений, обычно размер `small` лучше подходит для использования на странице с макетом `doc`. Кроме того, вы можете добавить дополнительные свойства для карточки члена команды, например, добавить «описание» или кнопку «спонсировать». Подробнее об этом в секции [``](#vpteammembers). @@ -104,7 +104,7 @@ layout: page которой представлены ниже. - + ``` diff --git a/docs/ru/reference/frontmatter-config.md b/docs/ru/reference/frontmatter-config.md index e16ed837..70151fd7 100644 --- a/docs/ru/reference/frontmatter-config.md +++ b/docs/ru/reference/frontmatter-config.md @@ -21,7 +21,7 @@ editLink: true {{ $frontmatter.title }} ``` -## title {#title} +## title - Тип: `string` @@ -33,7 +33,7 @@ title: VitePress --- ``` -## titleTemplate {#titletemplate} +## titleTemplate - Тип: `string | boolean` @@ -46,7 +46,7 @@ titleTemplate: Генератор статических сайтов на ос --- ``` -## description {#description} +## description - Тип: `string` @@ -58,7 +58,7 @@ description: VitePress --- ``` -## head {#head} +## head - Тип: `HeadConfig[]` @@ -86,7 +86,7 @@ type HeadConfig = Следующие параметры метаданных применимы только при использовании темы по умолчанию. -### layout {#layout} +### layout - Тип: `doc | home | page` - По умолчанию: `doc` @@ -103,15 +103,15 @@ layout: doc --- ``` -### hero {#hero} +### hero Определяет содержимое секции `hero`, когда `layout` имеет значение `home`. Подробнее в главе [Тема по умолчанию: Главная страница](./default-theme-home-page). -### features {#features} +### features Определяет элементы для отображения в секции `features`, когда `layout` имеет значение `home`. Подробнее в главе [Тема по умолчанию: Главная страница](./default-theme-home-page). -### navbar {#navbar} +### navbar - Тип: `boolean` - По умолчанию: `true` @@ -124,7 +124,7 @@ navbar: false --- ``` -### sidebar {#sidebar} +### sidebar - Тип: `boolean` - По умолчанию: `true` @@ -137,7 +137,7 @@ sidebar: false --- ``` -### aside {#aside} +### aside - Тип: `boolean | 'left'` - По умолчанию: `true` @@ -154,7 +154,7 @@ aside: false --- ``` -### outline {#outline} +### outline - Тип: `number | [number, number] | 'deep' | false` - По умолчанию: `2` @@ -167,7 +167,7 @@ outline: [2, 4] --- ``` -### lastUpdated {#lastupdated} +### lastUpdated - Тип: `boolean | Date` - По умолчанию: `true` @@ -180,7 +180,7 @@ lastUpdated: false --- ``` -### editLink {#editlink} +### editLink - Тип: `boolean` - По умолчанию: `true` @@ -193,7 +193,7 @@ editLink: false --- ``` -### footer {#footer} +### footer - Тип: `boolean` - По умолчанию: `true` @@ -206,7 +206,7 @@ footer: false --- ``` -### pageClass {#pageclass} +### pageClass - Тип: `string` @@ -225,3 +225,16 @@ pageClass: custom-page-class /* стили для конкретной страницы */ } ``` + +### isHome + +- Тип: `boolean` + +Стандартная тема полагается на проверки типа `frontmatter.layout === 'home'`, чтобы определить, является ли текущая страница домашней (главной).\ +Это полезно, когда вы хотите принудительно показывать элементы домашней страницы в пользовательском макете. + +```yaml +--- +isHome: true +--- +``` diff --git a/docs/ru/reference/site-config.md b/docs/ru/reference/site-config.md index 8ba3a110..50bd132c 100644 --- a/docs/ru/reference/site-config.md +++ b/docs/ru/reference/site-config.md @@ -10,7 +10,7 @@ outline: deep ### Разрешение конфигурации {#config-resolution} -Файл конфигурации всегда разрешается из `/.vitepress/config.[ext]`, где `` — это корень вашего [проекта](../guide/routing#root-and-source-directory) VitePress, а `[ext]` — одно из поддерживаемых расширений файла. TypeScript поддерживается из коробки. Поддерживаемые расширения включают `.js`, `.ts`, `.mjs` и `.mts`. +Конфигурация всегда считывается из файла `/.vitepress/config.[ext]`, где `` — это корень вашего [проекта](../guide/routing#root-and-source-directory) VitePress, а `[ext]` — одно из поддерживаемых расширений файла. TypeScript поддерживается из коробки. Поддерживаемые расширения включают `.js`, `.ts`, `.mjs` и `.mts`. В файлах конфигурации рекомендуется использовать синтаксис ES-модулей. Файл конфигурации должен по умолчанию экспортировать объект: diff --git a/docs/.vitepress/config/zh.ts b/docs/zh/config.ts similarity index 91% rename from docs/.vitepress/config/zh.ts rename to docs/zh/config.ts index e9d5fbcd..22fb8b95 100644 --- a/docs/.vitepress/config/zh.ts +++ b/docs/zh/config.ts @@ -1,16 +1,18 @@ import { createRequire } from 'module' -import { defineConfig, type DefaultTheme } from 'vitepress' +import { defineAdditionalConfig, type DefaultTheme } from 'vitepress' const require = createRequire(import.meta.url) const pkg = require('vitepress/package.json') -export const zh = defineConfig({ +export default defineAdditionalConfig({ lang: 'zh-Hans', description: '由 Vite 和 Vue 驱动的静态站点生成器', themeConfig: { nav: nav(), + search: { options: searchOptions() }, + sidebar: { '/zh/guide/': { base: '/zh/guide/', items: sidebarGuide() }, '/zh/reference/': { base: '/zh/reference/', items: sidebarReference() } @@ -36,11 +38,15 @@ export const zh = defineConfig({ }, lastUpdated: { - text: '最后更新于', - formatOptions: { - dateStyle: 'short', - timeStyle: 'medium' - } + text: '最后更新于' + }, + + notFound: { + title: '页面未找到', + quote: + '但如果你不改变方向,并且继续寻找,你可能最终会到达你所前往的地方。', + linkLabel: '前往首页', + linkText: '带我回首页' }, langMenuLabel: '多语言', @@ -160,8 +166,8 @@ function sidebarReference(): DefaultTheme.SidebarItem[] { ] } -export const search: DefaultTheme.AlgoliaSearchOptions['locales'] = { - zh: { +function searchOptions(): Partial { + return { placeholder: '搜索文档', translations: { button: { diff --git a/docs/zh/guide/deploy.md b/docs/zh/guide/deploy.md index db68276c..54ed13d4 100644 --- a/docs/zh/guide/deploy.md +++ b/docs/zh/guide/deploy.md @@ -111,7 +111,7 @@ Cache-Control: max-age=31536000,immutable - **构建命令:** `npm run docs:build` - **输出目录:** `docs/.vitepress/dist` -- **node 版本:** `18` (或更高版本) +- **node 版本:** `20` (或更高版本) ::: warning 不要为 HTML 代码启用 _Auto Minify_ 等选项。它将从输出中删除对 Vue 有意义的注释。如果被删除,你可能会看到激活不匹配错误。 @@ -163,7 +163,7 @@ Cache-Control: max-age=31536000,immutable - name: Setup Node uses: actions/setup-node@v4 with: - node-version: 20 + node-version: 22 cache: npm # 或 pnpm / yarn - name: Setup Pages uses: actions/configure-pages@v4 diff --git a/docs/zh/guide/extending-default-theme.md b/docs/zh/guide/extending-default-theme.md index a40613f7..4d19eea2 100644 --- a/docs/zh/guide/extending-default-theme.md +++ b/docs/zh/guide/extending-default-theme.md @@ -70,7 +70,7 @@ export default DefaultTheme export default { transformHead({ assets }) { // 相应地调整正则表达式以匹配字体 - const myFontFile = assets.find(file => /font-name\.\w+\.woff2/) + const myFontFile = assets.find(file => /font-name\.[\w-]+\.woff2/.test(file)) if (myFontFile) { return [ [ diff --git a/docs/zh/index.md b/docs/zh/index.md index 81f71c16..7beeb998 100644 --- a/docs/zh/index.md +++ b/docs/zh/index.md @@ -1,9 +1,6 @@ --- layout: home -title: VitePress -titleTemplate: 由 Vite 和 Vue 驱动的静态站点生成器 - hero: name: VitePress text: 由 Vite 和 Vue 驱动的静态站点生成器 @@ -19,7 +16,7 @@ hero: text: GitHub link: https://github.com/vuejs/vitepress image: - src: /vitepress-logo-large.webp + src: /vitepress-logo-large.svg alt: VitePress features: diff --git a/docs/zh/reference/default-theme-sidebar.md b/docs/zh/reference/default-theme-sidebar.md index ba9a9adc..e353ef78 100644 --- a/docs/zh/reference/default-theme-sidebar.md +++ b/docs/zh/reference/default-theme-sidebar.md @@ -178,36 +178,3 @@ export default { } } ``` - -## `useSidebar` - -返回侧边栏相关数据。返回的对象具有以下类型: - -```ts -export interface DocSidebar { - isOpen: Ref - sidebar: ComputedRef - sidebarGroups: ComputedRef - hasSidebar: ComputedRef - hasAside: ComputedRef - leftAside: ComputedRef - isSidebarEnabled: ComputedRef - open: () => void - close: () => void - toggle: () => void -} -``` - -**示例:** - -```vue - - - -``` diff --git a/docs/zh/reference/default-theme-team-page.md b/docs/zh/reference/default-theme-team-page.md index 0341f0f2..9f155cf2 100644 --- a/docs/zh/reference/default-theme-team-page.md +++ b/docs/zh/reference/default-theme-team-page.md @@ -53,12 +53,12 @@ const members = [ Say hello to our awesome team. - + ``` 以上将在卡片外观元素中显示团队成员。它应该显示类似于下面的内容。 - + `` 组件有 2 种不同的尺寸,`small` 和 `medium`。虽然它取决于你的偏好,但通常尺寸在文档页面中使用时 `small` 应该更适合。此外,你可以为每个成员添加更多属性,例如添加“描述”或“赞助”按钮。在 [``](#vpteammembers) 中了解更多信息。 @@ -107,9 +107,7 @@ const members = [ team, some of whom have chosen to be featured below. - + ``` diff --git a/netlify.toml b/netlify.toml index 0f6f6ed5..b74ba994 100644 --- a/netlify.toml +++ b/netlify.toml @@ -26,3 +26,13 @@ [[redirects]] from = "/guide/" to = "/guide/getting-started" + +[[redirects]] + from = "/llms.md" + status = 301 + to = "/llms.txt" + +[[redirects]] + from = "/llms-full.md" + status = 301 + to = "/llms-full.txt" diff --git a/package.json b/package.json index f44e3c28..871539af 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vitepress", - "version": "2.0.0-alpha.4", + "version": "2.0.0-alpha.5", "description": "Vite & Vue powered static site generator", "keywords": [ "vite", @@ -97,37 +97,37 @@ "dependencies": { "@docsearch/css": "^3.9.0", "@docsearch/js": "^3.9.0", - "@iconify-json/simple-icons": "^1.2.27", - "@shikijs/core": "^3.1.0", - "@shikijs/transformers": "^3.1.0", - "@shikijs/types": "^3.1.0", - "@vitejs/plugin-vue": "^5.2.1", - "@vue/devtools-api": "^7.7.2", + "@iconify-json/simple-icons": "^1.2.32", + "@shikijs/core": "^3.2.2", + "@shikijs/transformers": "^3.2.2", + "@shikijs/types": "^3.2.2", + "@vitejs/plugin-vue": "^5.2.3", + "@vue/devtools-api": "^7.7.5", "@vue/shared": "^3.5.13", - "@vueuse/core": "^12.8.2", - "@vueuse/integrations": "^12.8.2", + "@vueuse/core": "^13.1.0", + "@vueuse/integrations": "^13.1.0", "focus-trap": "^7.6.4", "mark.js": "8.11.1", "minisearch": "^7.1.2", - "shiki": "^3.1.0", - "vite": "^6.2.1", + "shiki": "^3.2.2", + "vite": "^6.3.2", "vue": "^3.5.13" }, "devDependencies": { - "@clack/prompts": "^0.10.0", + "@clack/prompts": "^0.10.1", "@iconify/utils": "^2.3.0", - "@mdit-vue/plugin-component": "^2.1.3", - "@mdit-vue/plugin-frontmatter": "^2.1.3", - "@mdit-vue/plugin-headers": "^2.1.3", - "@mdit-vue/plugin-sfc": "^2.1.3", - "@mdit-vue/plugin-title": "^2.1.3", - "@mdit-vue/plugin-toc": "^2.1.3", - "@mdit-vue/shared": "^2.1.3", + "@mdit-vue/plugin-component": "^2.1.4", + "@mdit-vue/plugin-frontmatter": "^2.1.4", + "@mdit-vue/plugin-headers": "^2.1.4", + "@mdit-vue/plugin-sfc": "^2.1.4", + "@mdit-vue/plugin-title": "^2.1.4", + "@mdit-vue/plugin-toc": "^2.1.4", + "@mdit-vue/shared": "^2.1.4", "@polka/compression": "^1.0.0-next.28", "@rollup/plugin-alias": "^5.1.1", "@rollup/plugin-commonjs": "^28.0.3", "@rollup/plugin-json": "^6.1.0", - "@rollup/plugin-node-resolve": "^16.0.0", + "@rollup/plugin-node-resolve": "^16.0.1", "@rollup/plugin-replace": "^6.0.2", "@types/cross-spawn": "^6.0.6", "@types/debug": "^4.1.12", @@ -139,22 +139,22 @@ "@types/markdown-it-container": "^2.0.10", "@types/markdown-it-emoji": "^3.0.1", "@types/minimist": "^1.2.5", - "@types/node": "^22.13.9", - "@types/picomatch": "^3.0.2", + "@types/node": "^22.14.1", + "@types/picomatch": "^4.0.0", "@types/postcss-prefix-selector": "^1.16.3", "@types/prompts": "^2.4.9", "chokidar": "^4.0.3", "conventional-changelog-cli": "^5.0.0", "cross-spawn": "^7.0.6", "debug": "^4.4.0", - "esbuild": "^0.25.0", + "esbuild": "^0.25.2", "execa": "^9.5.2", "fs-extra": "^11.3.0", "get-port": "^7.1.0", "gray-matter": "^4.0.3", - "lint-staged": "^15.4.3", + "lint-staged": "^15.5.1", "lodash.template": "^4.5.0", - "lru-cache": "^11.0.2", + "lru-cache": "^11.1.0", "markdown-it": "^14.1.0", "markdown-it-anchor": "^9.2.0", "markdown-it-async": "^2.2.0", @@ -163,32 +163,32 @@ "markdown-it-emoji": "^3.0.0", "markdown-it-mathjax3": "^4.3.2", "minimist": "^1.2.8", - "nanoid": "^5.1.3", + "nanoid": "^5.1.5", "ora": "^8.2.0", "p-map": "^7.0.3", "path-to-regexp": "^6.3.0", "picocolors": "^1.1.1", "picomatch": "^4.0.2", "pkg-dir": "^8.0.0", - "playwright-chromium": "^1.51.0", + "playwright-chromium": "^1.52.0", "polka": "^1.0.0-next.28", - "postcss-prefix-selector": "^2.1.0", + "postcss-prefix-selector": "^2.1.1", "prettier": "^3.5.3", "prompts": "^2.4.2", "punycode": "^2.3.1", "rimraf": "^6.0.1", - "rollup": "^4.34.9", - "rollup-plugin-dts": "^6.1.1", + "rollup": "^4.40.0", + "rollup-plugin-dts": "6.1.1", "rollup-plugin-esbuild": "^6.2.1", "semver": "^7.7.1", - "simple-git-hooks": "^2.11.1", + "simple-git-hooks": "^2.12.1", "sirv": "^3.0.1", "sitemap": "^8.0.0", - "tinyglobby": "^0.2.12", - "typescript": "^5.8.2", - "vitest": "^3.0.8", + "tinyglobby": "^0.2.13", + "typescript": "^5.8.3", + "vitest": "^3.1.2", "vue-tsc": "^2.2.8", - "wait-on": "^8.0.2" + "wait-on": "^8.0.3" }, "peerDependencies": { "markdown-it-mathjax3": "^4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 76b395f3..319006b2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -24,34 +24,34 @@ importers: version: 3.9.0 '@docsearch/js': specifier: ^3.9.0 - version: 3.9.0(@algolia/client-search@5.20.4) + version: 3.9.0(@algolia/client-search@5.23.4) '@iconify-json/simple-icons': - specifier: ^1.2.27 - version: 1.2.27 + specifier: ^1.2.32 + version: 1.2.32 '@shikijs/core': - specifier: ^3.1.0 - version: 3.1.0 + specifier: ^3.2.2 + version: 3.2.2 '@shikijs/transformers': - specifier: ^3.1.0 - version: 3.1.0 + specifier: ^3.2.2 + version: 3.2.2 '@shikijs/types': - specifier: ^3.1.0 - version: 3.1.0 + specifier: ^3.2.2 + version: 3.2.2 '@vitejs/plugin-vue': - specifier: ^5.2.1 - version: 5.2.1(vite@6.2.1(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0))(vue@3.5.13(typescript@5.8.2)) + specifier: ^5.2.3 + version: 5.2.3(vite@6.3.2(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1))(vue@3.5.13(typescript@5.8.3)) '@vue/devtools-api': - specifier: ^7.7.2 - version: 7.7.2 + specifier: ^7.7.5 + version: 7.7.5 '@vue/shared': specifier: ^3.5.13 version: 3.5.13 '@vueuse/core': - specifier: ^12.8.2 - version: 12.8.2(typescript@5.8.2) + specifier: ^13.1.0 + version: 13.1.0(vue@3.5.13(typescript@5.8.3)) '@vueuse/integrations': - specifier: ^12.8.2 - version: 12.8.2(axios@1.8.2(debug@4.4.0))(focus-trap@7.6.4)(typescript@5.8.2) + specifier: ^13.1.0 + version: 13.1.0(axios@1.8.4(debug@4.4.0))(focus-trap@7.6.4)(vue@3.5.13(typescript@5.8.3)) focus-trap: specifier: ^7.6.4 version: 7.6.4 @@ -62,60 +62,60 @@ importers: specifier: ^7.1.2 version: 7.1.2 shiki: - specifier: ^3.1.0 - version: 3.1.0 + specifier: ^3.2.2 + version: 3.2.2 vite: - specifier: ^6.2.1 - version: 6.2.1(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0) + specifier: ^6.3.2 + version: 6.3.2(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1) vue: specifier: ^3.5.13 - version: 3.5.13(typescript@5.8.2) + version: 3.5.13(typescript@5.8.3) devDependencies: '@clack/prompts': - specifier: ^0.10.0 - version: 0.10.0 + specifier: ^0.10.1 + version: 0.10.1 '@iconify/utils': specifier: ^2.3.0 version: 2.3.0 '@mdit-vue/plugin-component': - specifier: ^2.1.3 - version: 2.1.3 + specifier: ^2.1.4 + version: 2.1.4 '@mdit-vue/plugin-frontmatter': - specifier: ^2.1.3 - version: 2.1.3 + specifier: ^2.1.4 + version: 2.1.4 '@mdit-vue/plugin-headers': - specifier: ^2.1.3 - version: 2.1.3 + specifier: ^2.1.4 + version: 2.1.4 '@mdit-vue/plugin-sfc': - specifier: ^2.1.3 - version: 2.1.3 + specifier: ^2.1.4 + version: 2.1.4 '@mdit-vue/plugin-title': - specifier: ^2.1.3 - version: 2.1.3 + specifier: ^2.1.4 + version: 2.1.4 '@mdit-vue/plugin-toc': - specifier: ^2.1.3 - version: 2.1.3 + specifier: ^2.1.4 + version: 2.1.4 '@mdit-vue/shared': - specifier: ^2.1.3 - version: 2.1.3 + specifier: ^2.1.4 + version: 2.1.4 '@polka/compression': specifier: ^1.0.0-next.28 version: 1.0.0-next.28 '@rollup/plugin-alias': specifier: ^5.1.1 - version: 5.1.1(rollup@4.34.9) + version: 5.1.1(rollup@4.40.0) '@rollup/plugin-commonjs': specifier: ^28.0.3 - version: 28.0.3(rollup@4.34.9) + version: 28.0.3(rollup@4.40.0) '@rollup/plugin-json': specifier: ^6.1.0 - version: 6.1.0(rollup@4.34.9) + version: 6.1.0(rollup@4.40.0) '@rollup/plugin-node-resolve': - specifier: ^16.0.0 - version: 16.0.0(rollup@4.34.9) + specifier: ^16.0.1 + version: 16.0.1(rollup@4.40.0) '@rollup/plugin-replace': specifier: ^6.0.2 - version: 6.0.2(rollup@4.34.9) + version: 6.0.2(rollup@4.40.0) '@types/cross-spawn': specifier: ^6.0.6 version: 6.0.6 @@ -147,11 +147,11 @@ importers: specifier: ^1.2.5 version: 1.2.5 '@types/node': - specifier: ^22.13.9 - version: 22.13.9 + specifier: ^22.14.1 + version: 22.14.1 '@types/picomatch': - specifier: ^3.0.2 - version: 3.0.2 + specifier: ^4.0.0 + version: 4.0.0 '@types/postcss-prefix-selector': specifier: ^1.16.3 version: 1.16.3 @@ -171,8 +171,8 @@ importers: specifier: ^4.4.0 version: 4.4.0 esbuild: - specifier: ^0.25.0 - version: 0.25.0 + specifier: ^0.25.2 + version: 0.25.2 execa: specifier: ^9.5.2 version: 9.5.2 @@ -186,14 +186,14 @@ importers: specifier: ^4.0.3 version: 4.0.3 lint-staged: - specifier: ^15.4.3 - version: 15.4.3 + specifier: ^15.5.1 + version: 15.5.1 lodash.template: specifier: ^4.5.0 version: 4.5.0 lru-cache: - specifier: ^11.0.2 - version: 11.0.2 + specifier: ^11.1.0 + version: 11.1.0 markdown-it: specifier: ^14.1.0 version: 14.1.0 @@ -219,8 +219,8 @@ importers: specifier: ^1.2.8 version: 1.2.8 nanoid: - specifier: ^5.1.3 - version: 5.1.3 + specifier: ^5.1.5 + version: 5.1.5 ora: specifier: ^8.2.0 version: 8.2.0 @@ -240,14 +240,14 @@ importers: specifier: ^8.0.0 version: 8.0.0 playwright-chromium: - specifier: ^1.51.0 - version: 1.51.0 + specifier: ^1.52.0 + version: 1.52.0 polka: specifier: ^1.0.0-next.28 version: 1.0.0-next.28 postcss-prefix-selector: - specifier: ^2.1.0 - version: 2.1.0(postcss@8.5.3) + specifier: ^2.1.1 + version: 2.1.1(postcss@8.5.3) prettier: specifier: ^3.5.3 version: 3.5.3 @@ -261,20 +261,20 @@ importers: specifier: ^6.0.1 version: 6.0.1 rollup: - specifier: ^4.34.9 - version: 4.34.9 + specifier: ^4.40.0 + version: 4.40.0 rollup-plugin-dts: - specifier: ^6.1.1 - version: 6.1.1(rollup@4.34.9)(typescript@5.8.2) + specifier: 6.1.1 + version: 6.1.1(rollup@4.40.0)(typescript@5.8.3) rollup-plugin-esbuild: specifier: ^6.2.1 - version: 6.2.1(esbuild@0.25.0)(rollup@4.34.9) + version: 6.2.1(esbuild@0.25.2)(rollup@4.40.0) semver: specifier: ^7.7.1 version: 7.7.1 simple-git-hooks: - specifier: ^2.11.1 - version: 2.11.1 + specifier: ^2.12.1 + version: 2.12.1 sirv: specifier: ^3.0.1 version: 3.0.1 @@ -282,20 +282,20 @@ importers: specifier: ^8.0.0 version: 8.0.0 tinyglobby: - specifier: ^0.2.12 - version: 0.2.12 + specifier: ^0.2.13 + version: 0.2.13 typescript: - specifier: ^5.8.2 - version: 5.8.2 + specifier: ^5.8.3 + version: 5.8.3 vitest: - specifier: ^3.0.8 - version: 3.0.8(@types/debug@4.1.12)(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0) + specifier: ^3.1.2 + version: 3.1.2(@types/debug@4.1.12)(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1) vue-tsc: specifier: ^2.2.8 - version: 2.2.8(typescript@5.8.2) + version: 2.2.8(typescript@5.8.3) wait-on: - specifier: ^8.0.2 - version: 8.0.2(debug@4.4.0) + specifier: ^8.0.3 + version: 8.0.3(debug@4.4.0) __tests__/e2e: devDependencies: @@ -321,14 +321,17 @@ importers: specifier: ^8.0.0 version: 8.0.0 postcss-rtlcss: - specifier: ^5.6.0 - version: 5.6.0(postcss@8.5.3) + specifier: ^5.7.0 + version: 5.7.0(postcss@8.5.3) vitepress: specifier: workspace:* version: link:.. vitepress-plugin-group-icons: - specifier: ^1.3.6 - version: 1.3.6 + specifier: ^1.5.2 + version: 1.5.2 + vitepress-plugin-llms: + specifier: ^1.1.0 + version: 1.1.0 packages: @@ -352,56 +355,56 @@ packages: '@algolia/client-search': '>= 4.9.1 < 6' algoliasearch: '>= 4.9.1 < 6' - '@algolia/client-abtesting@5.20.4': - resolution: {integrity: sha512-OZ3Xvvf+k7NMcwmmioIVX+76E/KKtN607NCMNsBEKe+uHqktZ+I5bmi/EVr2m5VF59Gnh9MTlJCdXtBiGjruxw==} + '@algolia/client-abtesting@5.23.4': + resolution: {integrity: sha512-WIMT2Kxy+FFWXWQxIU8QgbTioL+SGE24zhpj0kipG4uQbzXwONaWt7ffaYLjfge3gcGSgJVv+1VlahVckafluQ==} engines: {node: '>= 14.0.0'} - '@algolia/client-analytics@5.20.4': - resolution: {integrity: sha512-8pM5zQpHonCIBxKmMyBLgQoaSKUNBE5u741VEIjn2ArujolhoKRXempRAlLwEg5hrORKl9XIlit00ff4g6LWvA==} + '@algolia/client-analytics@5.23.4': + resolution: {integrity: sha512-4B9gChENsQA9kFmFlb+x3YhBz2Gx3vSsm81FHI1yJ3fn2zlxREHmfrjyqYoMunsU7BybT/o5Nb7ccCbm/vfseA==} engines: {node: '>= 14.0.0'} - '@algolia/client-common@5.20.4': - resolution: {integrity: sha512-OCGa8hKAP6kQKBwi+tu9flTXshz4qeCK5P8J6bI1qq8KYs+/TU1xSotT+E7hO+uyDanGU6dT6soiMSi4A38JgA==} + '@algolia/client-common@5.23.4': + resolution: {integrity: sha512-bsj0lwU2ytiWLtl7sPunr+oLe+0YJql9FozJln5BnIiqfKOaseSDdV42060vUy+D4373f2XBI009K/rm2IXYMA==} engines: {node: '>= 14.0.0'} - '@algolia/client-insights@5.20.4': - resolution: {integrity: sha512-MroyJStJFLf/cYeCbguCRdrA2U6miDVqbi3t9ZGovBWWTef7BZwVQG0mLyInzp4MIjBfwqu3xTrhxsiiOavX3A==} + '@algolia/client-insights@5.23.4': + resolution: {integrity: sha512-XSCtAYvJ/hnfDHfRVMbBH0dayR+2ofVZy3jf5qyifjguC6rwxDsSdQvXpT0QFVyG+h8UPGtDhMPoUIng4wIcZA==} engines: {node: '>= 14.0.0'} - '@algolia/client-personalization@5.20.4': - resolution: {integrity: sha512-bVR5sxFfgCQ+G0ZegGVhBqtaDd7jCfr33m5mGuT43U+bH//xeqAHQyIS4abcmRulwqeIAHNm5Yl2J7grT3z//A==} + '@algolia/client-personalization@5.23.4': + resolution: {integrity: sha512-l/0QvqgRFFOf7BnKSJ3myd1WbDr86ftVaa3PQwlsNh7IpIHmvVcT83Bi5zlORozVGMwaKfyPZo6O48PZELsOeA==} engines: {node: '>= 14.0.0'} - '@algolia/client-query-suggestions@5.20.4': - resolution: {integrity: sha512-ZHsV0vceNDR87wIVaz7VjxilwCUCkzbuy4QnqIdnQs3NnC43is7KKbEtKueuNw+YGMdx+wmD5kRI2XKip1R93A==} + '@algolia/client-query-suggestions@5.23.4': + resolution: {integrity: sha512-TB0htrDgVacVGtPDyENoM6VIeYqR+pMsDovW94dfi2JoaRxfqu/tYmLpvgWcOknP6wLbr8bA+G7t/NiGksNAwQ==} engines: {node: '>= 14.0.0'} - '@algolia/client-search@5.20.4': - resolution: {integrity: sha512-hXM2LpwTzG5kGQSyq3feIijzzl6vkjYPP+LF3ru1relNUIh7fWJ4uYQay2NMNbWX5LWQzF8Vr9qlIA139doQXg==} + '@algolia/client-search@5.23.4': + resolution: {integrity: sha512-uBGo6KwUP6z+u6HZWRui8UJClS7fgUIAiYd1prUqCbkzDiCngTOzxaJbEvrdkK0hGCQtnPDiuNhC5MhtVNN4Eg==} engines: {node: '>= 14.0.0'} - '@algolia/ingestion@1.20.4': - resolution: {integrity: sha512-idAe53XsTlLSSQ7pJcjscUEmc67vEM+VohYkr78Ebfb43vtfKH0ik8ux9OGQpLRNGntaHqpe/lfU5PDRi5/92w==} + '@algolia/ingestion@1.23.4': + resolution: {integrity: sha512-Si6rFuGnSeEUPU9QchYvbknvEIyCRK7nkeaPVQdZpABU7m4V/tsiWdHmjVodtx3h20VZivJdHeQO9XbHxBOcCw==} engines: {node: '>= 14.0.0'} - '@algolia/monitoring@1.20.4': - resolution: {integrity: sha512-O6HjdSWtyu5LhHR7gdU83oWbl1vVVRwoTxkENHF61Ar7l9C1Ok91VtnK7RtXB9pJL1kpIMDExwZOT5sEN2Ppfw==} + '@algolia/monitoring@1.23.4': + resolution: {integrity: sha512-EXGoVVTshraqPJgr5cMd1fq7Jm71Ew6MpGCEaxI5PErBpJAmKdtjRIzs6JOGKHRaWLi+jdbJPYc2y8RN4qcx5Q==} engines: {node: '>= 14.0.0'} - '@algolia/recommend@5.20.4': - resolution: {integrity: sha512-p8M78pQjPrN6PudO2TnkWiOJbyp/IPhgCFBW8aZrLshhZpPkV9N4u0YsU/w6OoeYDKSxmXntWQrKYiU1dVRWfg==} + '@algolia/recommend@5.23.4': + resolution: {integrity: sha512-1t6glwKVCkjvBNlng2itTf8fwaLSqkL4JaMENgR3WTGR8mmW2akocUy/ZYSQcG4TcR7qu4zW2UMGAwLoWoflgQ==} engines: {node: '>= 14.0.0'} - '@algolia/requester-browser-xhr@5.20.4': - resolution: {integrity: sha512-Y8GThjDVdhFUurZKKDdzAML/LNKOA/BOydEcaFeb/g4Iv4Iq0qQJs6aIbtdsngUU6cu74qH/2P84kr2h16uVvQ==} + '@algolia/requester-browser-xhr@5.23.4': + resolution: {integrity: sha512-UUuizcgc5+VSY8hqzDFVdJ3Wcto03lpbFRGPgW12pHTlUQHUTADtIpIhkLLOZRCjXmCVhtr97Z+eR6LcRYXa3Q==} engines: {node: '>= 14.0.0'} - '@algolia/requester-fetch@5.20.4': - resolution: {integrity: sha512-OrAUSrvbFi46U7AxOXkyl9QQiaW21XWpixWmcx3D2S65P/DCIGOVE6K2741ZE+WiKIqp+RSYkyDFj3BiFHzLTg==} + '@algolia/requester-fetch@5.23.4': + resolution: {integrity: sha512-UhDg6elsek6NnV5z4VG1qMwR6vbp+rTMBEnl/v4hUyXQazU+CNdYkl++cpdmLwGI/7nXc28xtZiL90Es3I7viQ==} engines: {node: '>= 14.0.0'} - '@algolia/requester-node-http@5.20.4': - resolution: {integrity: sha512-Jc/bofGBw4P9nBii4oCzCqqusv8DAFFORfUD2Ce1cZk3fvUPk+q/Qnu7i9JpTSHjMc0MWzqApLdq7Nwh1gelLg==} + '@algolia/requester-node-http@5.23.4': + resolution: {integrity: sha512-jXGzGBRUS0oywQwnaCA6mMDJO7LoC3dYSLsyNfIqxDR4SNGLhtg3je0Y31lc24OA4nYyKAYgVLtjfrpcpsWShg==} engines: {node: '>= 14.0.0'} '@antfu/install-pkg@1.0.0': @@ -422,23 +425,23 @@ packages: resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} engines: {node: '>=6.9.0'} - '@babel/parser@7.26.9': - resolution: {integrity: sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==} + '@babel/parser@7.27.0': + resolution: {integrity: sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/types@7.26.9': - resolution: {integrity: sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==} + '@babel/types@7.27.0': + resolution: {integrity: sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==} engines: {node: '>=6.9.0'} '@clack/core@0.3.5': resolution: {integrity: sha512-5cfhQNH+1VQ2xLQlmzXMqUoiaH0lRBq9/CLW9lTyMbuKLC3+xEK01tHVvyut++mLOn5urSHmkm6I0Lg9MaJSTQ==} - '@clack/core@0.4.1': - resolution: {integrity: sha512-Pxhij4UXg8KSr7rPek6Zowm+5M22rbd2g1nfojHJkxp5YkFqiZ2+YLEM/XGVIzvGOcM0nqjIFxrpDwWRZYWYjA==} + '@clack/core@0.4.2': + resolution: {integrity: sha512-NYQfcEy8MWIxrT5Fj8nIVchfRFA26yYKJcvBS7WlUIlw2OmQOY9DhGGXMovyI5J5PpxrCPGkgUi207EBrjpBvg==} - '@clack/prompts@0.10.0': - resolution: {integrity: sha512-H3rCl6CwW1NdQt9rE3n373t7o5cthPv7yUoxF2ytZvyvlJv89C5RYMJu83Hed8ODgys5vpBU0GKxIRG83jd8NQ==} + '@clack/prompts@0.10.1': + resolution: {integrity: sha512-Q0T02vx8ZM9XSv9/Yde0jTmmBQufZhPJfYAg2XrrrxWWaZgq1rr8nU8Hv710BQ1dhoP8rtY7YUdpGej2Qza/cw==} '@conventional-changelog/git-client@1.0.1': resolution: {integrity: sha512-PJEqBwAleffCMETaVm/fUgHldzBE35JFk3/9LL6NUA5EXa3qednu+UT6M7E5iBu3zIQZCULYIiZ90fBYHt6xUw==} @@ -475,152 +478,152 @@ packages: search-insights: optional: true - '@esbuild/aix-ppc64@0.25.0': - resolution: {integrity: sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ==} + '@esbuild/aix-ppc64@0.25.2': + resolution: {integrity: sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==} engines: {node: '>=18'} cpu: [ppc64] os: [aix] - '@esbuild/android-arm64@0.25.0': - resolution: {integrity: sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g==} + '@esbuild/android-arm64@0.25.2': + resolution: {integrity: sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==} engines: {node: '>=18'} cpu: [arm64] os: [android] - '@esbuild/android-arm@0.25.0': - resolution: {integrity: sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g==} + '@esbuild/android-arm@0.25.2': + resolution: {integrity: sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA==} engines: {node: '>=18'} cpu: [arm] os: [android] - '@esbuild/android-x64@0.25.0': - resolution: {integrity: sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg==} + '@esbuild/android-x64@0.25.2': + resolution: {integrity: sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg==} engines: {node: '>=18'} cpu: [x64] os: [android] - '@esbuild/darwin-arm64@0.25.0': - resolution: {integrity: sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw==} + '@esbuild/darwin-arm64@0.25.2': + resolution: {integrity: sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==} engines: {node: '>=18'} cpu: [arm64] os: [darwin] - '@esbuild/darwin-x64@0.25.0': - resolution: {integrity: sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg==} + '@esbuild/darwin-x64@0.25.2': + resolution: {integrity: sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA==} engines: {node: '>=18'} cpu: [x64] os: [darwin] - '@esbuild/freebsd-arm64@0.25.0': - resolution: {integrity: sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w==} + '@esbuild/freebsd-arm64@0.25.2': + resolution: {integrity: sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==} engines: {node: '>=18'} cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-x64@0.25.0': - resolution: {integrity: sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A==} + '@esbuild/freebsd-x64@0.25.2': + resolution: {integrity: sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ==} engines: {node: '>=18'} cpu: [x64] os: [freebsd] - '@esbuild/linux-arm64@0.25.0': - resolution: {integrity: sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg==} + '@esbuild/linux-arm64@0.25.2': + resolution: {integrity: sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==} engines: {node: '>=18'} cpu: [arm64] os: [linux] - '@esbuild/linux-arm@0.25.0': - resolution: {integrity: sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg==} + '@esbuild/linux-arm@0.25.2': + resolution: {integrity: sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g==} engines: {node: '>=18'} cpu: [arm] os: [linux] - '@esbuild/linux-ia32@0.25.0': - resolution: {integrity: sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg==} + '@esbuild/linux-ia32@0.25.2': + resolution: {integrity: sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ==} engines: {node: '>=18'} cpu: [ia32] os: [linux] - '@esbuild/linux-loong64@0.25.0': - resolution: {integrity: sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw==} + '@esbuild/linux-loong64@0.25.2': + resolution: {integrity: sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w==} engines: {node: '>=18'} cpu: [loong64] os: [linux] - '@esbuild/linux-mips64el@0.25.0': - resolution: {integrity: sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ==} + '@esbuild/linux-mips64el@0.25.2': + resolution: {integrity: sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q==} engines: {node: '>=18'} cpu: [mips64el] os: [linux] - '@esbuild/linux-ppc64@0.25.0': - resolution: {integrity: sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw==} + '@esbuild/linux-ppc64@0.25.2': + resolution: {integrity: sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g==} engines: {node: '>=18'} cpu: [ppc64] os: [linux] - '@esbuild/linux-riscv64@0.25.0': - resolution: {integrity: sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA==} + '@esbuild/linux-riscv64@0.25.2': + resolution: {integrity: sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw==} engines: {node: '>=18'} cpu: [riscv64] os: [linux] - '@esbuild/linux-s390x@0.25.0': - resolution: {integrity: sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA==} + '@esbuild/linux-s390x@0.25.2': + resolution: {integrity: sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q==} engines: {node: '>=18'} cpu: [s390x] os: [linux] - '@esbuild/linux-x64@0.25.0': - resolution: {integrity: sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw==} + '@esbuild/linux-x64@0.25.2': + resolution: {integrity: sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg==} engines: {node: '>=18'} cpu: [x64] os: [linux] - '@esbuild/netbsd-arm64@0.25.0': - resolution: {integrity: sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw==} + '@esbuild/netbsd-arm64@0.25.2': + resolution: {integrity: sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] - '@esbuild/netbsd-x64@0.25.0': - resolution: {integrity: sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA==} + '@esbuild/netbsd-x64@0.25.2': + resolution: {integrity: sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg==} engines: {node: '>=18'} cpu: [x64] os: [netbsd] - '@esbuild/openbsd-arm64@0.25.0': - resolution: {integrity: sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw==} + '@esbuild/openbsd-arm64@0.25.2': + resolution: {integrity: sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] - '@esbuild/openbsd-x64@0.25.0': - resolution: {integrity: sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg==} + '@esbuild/openbsd-x64@0.25.2': + resolution: {integrity: sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw==} engines: {node: '>=18'} cpu: [x64] os: [openbsd] - '@esbuild/sunos-x64@0.25.0': - resolution: {integrity: sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg==} + '@esbuild/sunos-x64@0.25.2': + resolution: {integrity: sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==} engines: {node: '>=18'} cpu: [x64] os: [sunos] - '@esbuild/win32-arm64@0.25.0': - resolution: {integrity: sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw==} + '@esbuild/win32-arm64@0.25.2': + resolution: {integrity: sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==} engines: {node: '>=18'} cpu: [arm64] os: [win32] - '@esbuild/win32-ia32@0.25.0': - resolution: {integrity: sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA==} + '@esbuild/win32-ia32@0.25.2': + resolution: {integrity: sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg==} engines: {node: '>=18'} cpu: [ia32] os: [win32] - '@esbuild/win32-x64@0.25.0': - resolution: {integrity: sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ==} + '@esbuild/win32-x64@0.25.2': + resolution: {integrity: sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA==} engines: {node: '>=18'} cpu: [x64] os: [win32] @@ -638,11 +641,11 @@ packages: '@iconify-json/logos@1.2.4': resolution: {integrity: sha512-XC4If5D/hbaZvUkTV8iaZuGlQCyG6CNOlaAaJaGa13V5QMYwYjgtKk3vPP8wz3wtTVNVEVk3LRx1fOJz+YnSMw==} - '@iconify-json/simple-icons@1.2.27': - resolution: {integrity: sha512-FtZwp/H7ih5rY9FPfDR+k6toOo/cuwpHWY8faNhxLs5O5uW6Q8TeqdNWfjVfgFtrs5tUUzWysjqNGL234v8EMA==} + '@iconify-json/simple-icons@1.2.32': + resolution: {integrity: sha512-gxgLq0raip7SJaeJ0302vwhsqupQttS21B93Ci1kA/++B+hIgGw71HzTOWQoUhwjlrdWcoVUxSvpPJoMs7oURg==} - '@iconify-json/vscode-icons@1.2.16': - resolution: {integrity: sha512-hstc2yVq2UJ6v6FrgjftzXRvphGZBsKxvSeXoFLP1Hgx89TPZKrGE5SV6vqsoeIlLYaQ7OZbXmAoVGroTfGmVQ==} + '@iconify-json/vscode-icons@1.2.19': + resolution: {integrity: sha512-M6Ujx2Ncmr/jfHhLJ+unqaILOJ/wWAkfc84Eh3+e8PccFmB1TS4KwOSyqbawybbqKK7JaaEk5uhFYSFpYOeuOA==} '@iconify/types@2.0.0': resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} @@ -668,29 +671,29 @@ packages: engines: {node: '>=18.17.0'} hasBin: true - '@mdit-vue/plugin-component@2.1.3': - resolution: {integrity: sha512-9AG17beCgpEw/4ldo/M6Y/1Rh4E1bqMmr/rCkWKmCAxy9tJz3lzY7HQJanyHMJufwsb3WL5Lp7Om/aPcQTZ9SA==} + '@mdit-vue/plugin-component@2.1.4': + resolution: {integrity: sha512-fiLbwcaE6gZE4c8Mkdkc4X38ltXh/EdnuPE1hepFT2dLiW6I4X8ho2Wq7nhYuT8RmV4OKlCFENwCuXlKcpV/sw==} - '@mdit-vue/plugin-frontmatter@2.1.3': - resolution: {integrity: sha512-KxsSCUVBEmn6sJcchSTiI5v9bWaoRxe68RBYRDGcSEY1GTnfQ5gQPMIsM48P4q1luLEIWurVGGrRu7u93//LDQ==} + '@mdit-vue/plugin-frontmatter@2.1.4': + resolution: {integrity: sha512-mOlavV176njnozIf0UZGFYymmQ2LK5S1rjrbJ1uGz4Df59tu0DQntdE7YZXqmJJA9MiSx7ViCTUQCNPKg7R8Ow==} - '@mdit-vue/plugin-headers@2.1.3': - resolution: {integrity: sha512-AcL7a7LHQR3ISINhfjGJNE/bHyM0dcl6MYm1Sr//zF7ZgokPGwD/HhD7TzwmrKA9YNYCcO9P3QmF/RN9XyA6CA==} + '@mdit-vue/plugin-headers@2.1.4': + resolution: {integrity: sha512-tyZwGZu2mYkNSqigFP1CK3aZYxuYwrqcrIh8ljd8tfD1UDPJkAbQeayq62U572po2IuWVB1BqIG8JIXp5POOTA==} - '@mdit-vue/plugin-sfc@2.1.3': - resolution: {integrity: sha512-Ezl0dNvQNS639Yl4siXm+cnWtQvlqHrg+u+lnau/OHpj9Xh3LVap/BSQVugKIV37eR13jXXYf3VaAOP1fXPN+w==} + '@mdit-vue/plugin-sfc@2.1.4': + resolution: {integrity: sha512-oqAlMulkz280xUJIkormzp6Ps0x5WULZrwRivylWJWDEyVAFCj5VgR3Dx6CP2jdgyuPXwW3+gh2Kzw+Xe+kEIQ==} - '@mdit-vue/plugin-title@2.1.3': - resolution: {integrity: sha512-XWVOQoZqczoN97xCDrnQicmXKoqwOjIymIm9HQnRXhHnYKOgJPW1CxSGhkcOGzvDU1v0mD/adojVyyj/s6ggWw==} + '@mdit-vue/plugin-title@2.1.4': + resolution: {integrity: sha512-uuF24gJvvLVIWG/VBtCDRqMndfd5JzOXoBoHPdKKLk3PA4P84dsB0u0NnnBUEl/YBOumdCotasn7OfFMmco9uQ==} - '@mdit-vue/plugin-toc@2.1.3': - resolution: {integrity: sha512-41Q+iXpLHZt0zJdApVwoVt7WF6za/xUjtjEPf90Z3KLzQO01TXsv48Xp9BsrFHPcPcm8tiZ0+O1/ICJO80V/MQ==} + '@mdit-vue/plugin-toc@2.1.4': + resolution: {integrity: sha512-vvOU7u6aNmvPwKXzmoHion1sv4zChBp20LDpSHlRlXc3btLwdYIA0DR+UiO5YeyLUAO0XSHQKBpsIWi57K9/3w==} - '@mdit-vue/shared@2.1.3': - resolution: {integrity: sha512-27YI8b0VVZsAlNwaWoaOCWbr4eL8B04HxiYk/y2ktblO/nMcOEOLt4p0RjuobvdyUyjHvGOS09RKhq7qHm1CHQ==} + '@mdit-vue/shared@2.1.4': + resolution: {integrity: sha512-Axd8g2iKQTMuHcPXZH5JY3hbSMeLyoeu0ftdgMrjuPzHpJnWiPSAnA0dAx5NQFQqZkXHhyIrAssLSrOWjFmPKg==} - '@mdit-vue/types@2.1.0': - resolution: {integrity: sha512-TMBB/BQWVvwtpBdWD75rkZx4ZphQ6MN0O4QB2Bc0oI5PC2uE57QerhNxdRZ7cvBHE2iY2C+BUNUziCfJbjIRRA==} + '@mdit-vue/types@2.1.4': + resolution: {integrity: sha512-QiGNZslz+zXUs2X8D11UQhB4KAMZ0DZghvYxa7+1B+VMLcDtz//XHpWbcuexjzE3kBXSxIUTPH3eSQCa0puZHA==} '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} @@ -708,8 +711,8 @@ packages: resolution: {integrity: sha512-aDmrBhgHJtxE+jy145WfhW9WmTAFmES/dNnn1LAs8UnnkFgBUj4T8I4ScQ9+rOkpDZStvnVP5iqhN3tvt7O1NA==} engines: {node: '>=6'} - '@polka/url@1.0.0-next.28': - resolution: {integrity: sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==} + '@polka/url@1.0.0-next.29': + resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} '@rollup/plugin-alias@5.1.1': resolution: {integrity: sha512-PR9zDb+rOzkRb2VD+EuKB7UC41vU5DIwZ5qqCpk0KJudcWAyi8rvYOhS7+L5aZCspw1stTViLgN5v6FF1p5cgQ==} @@ -738,8 +741,8 @@ packages: rollup: optional: true - '@rollup/plugin-node-resolve@16.0.0': - resolution: {integrity: sha512-0FPvAeVUT/zdWoO0jnb/V5BlBsUSNfkIOtFHzMO4H9MOklrmQFY6FduVHKucNb/aTFxvnGhj4MNj/T1oNdDfNg==} + '@rollup/plugin-node-resolve@16.0.1': + resolution: {integrity: sha512-tk5YCxJWIG81umIvNkSod2qK5KyQW19qcBF/B78n1bjtOON6gzKoVeSzAE8yHCZEDmqkHKkxplExA8KzdJLJpA==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^2.78.0||^3.0.0||^4.0.0 @@ -765,124 +768,129 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.34.9': - resolution: {integrity: sha512-qZdlImWXur0CFakn2BJ2znJOdqYZKiedEPEVNTBrpfPjc/YuTGcaYZcdmNFTkUj3DU0ZM/AElcM8Ybww3xVLzA==} + '@rollup/rollup-android-arm-eabi@4.40.0': + resolution: {integrity: sha512-+Fbls/diZ0RDerhE8kyC6hjADCXA1K4yVNlH0EYfd2XjyH0UGgzaQ8MlT0pCXAThfxv3QUAczHaL+qSv1E4/Cg==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.34.9': - resolution: {integrity: sha512-4KW7P53h6HtJf5Y608T1ISKvNIYLWRKMvfnG0c44M6In4DQVU58HZFEVhWINDZKp7FZps98G3gxwC1sb0wXUUg==} + '@rollup/rollup-android-arm64@4.40.0': + resolution: {integrity: sha512-PPA6aEEsTPRz+/4xxAmaoWDqh67N7wFbgFUJGMnanCFs0TV99M0M8QhhaSCks+n6EbQoFvLQgYOGXxlMGQe/6w==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.34.9': - resolution: {integrity: sha512-0CY3/K54slrzLDjOA7TOjN1NuLKERBgk9nY5V34mhmuu673YNb+7ghaDUs6N0ujXR7fz5XaS5Aa6d2TNxZd0OQ==} + '@rollup/rollup-darwin-arm64@4.40.0': + resolution: {integrity: sha512-GwYOcOakYHdfnjjKwqpTGgn5a6cUX7+Ra2HeNj/GdXvO2VJOOXCiYYlRFU4CubFM67EhbmzLOmACKEfvp3J1kQ==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.34.9': - resolution: {integrity: sha512-eOojSEAi/acnsJVYRxnMkPFqcxSMFfrw7r2iD9Q32SGkb/Q9FpUY1UlAu1DH9T7j++gZ0lHjnm4OyH2vCI7l7Q==} + '@rollup/rollup-darwin-x64@4.40.0': + resolution: {integrity: sha512-CoLEGJ+2eheqD9KBSxmma6ld01czS52Iw0e2qMZNpPDlf7Z9mj8xmMemxEucinev4LgHalDPczMyxzbq+Q+EtA==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.34.9': - resolution: {integrity: sha512-2lzjQPJbN5UnHm7bHIUKFMulGTQwdvOkouJDpPysJS+QFBGDJqcfh+CxxtG23Ik/9tEvnebQiylYoazFMAgrYw==} + '@rollup/rollup-freebsd-arm64@4.40.0': + resolution: {integrity: sha512-r7yGiS4HN/kibvESzmrOB/PxKMhPTlz+FcGvoUIKYoTyGd5toHp48g1uZy1o1xQvybwwpqpe010JrcGG2s5nkg==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.34.9': - resolution: {integrity: sha512-SLl0hi2Ah2H7xQYd6Qaiu01kFPzQ+hqvdYSoOtHYg/zCIFs6t8sV95kaoqjzjFwuYQLtOI0RZre/Ke0nPaQV+g==} + '@rollup/rollup-freebsd-x64@4.40.0': + resolution: {integrity: sha512-mVDxzlf0oLzV3oZOr0SMJ0lSDd3xC4CmnWJ8Val8isp9jRGl5Dq//LLDSPFrasS7pSm6m5xAcKaw3sHXhBjoRw==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.34.9': - resolution: {integrity: sha512-88I+D3TeKItrw+Y/2ud4Tw0+3CxQ2kLgu3QvrogZ0OfkmX/DEppehus7L3TS2Q4lpB+hYyxhkQiYPJ6Mf5/dPg==} + '@rollup/rollup-linux-arm-gnueabihf@4.40.0': + resolution: {integrity: sha512-y/qUMOpJxBMy8xCXD++jeu8t7kzjlOCkoxxajL58G62PJGBZVl/Gwpm7JK9+YvlB701rcQTzjUZ1JgUoPTnoQA==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.34.9': - resolution: {integrity: sha512-3qyfWljSFHi9zH0KgtEPG4cBXHDFhwD8kwg6xLfHQ0IWuH9crp005GfoUUh/6w9/FWGBwEHg3lxK1iHRN1MFlA==} + '@rollup/rollup-linux-arm-musleabihf@4.40.0': + resolution: {integrity: sha512-GoCsPibtVdJFPv/BOIvBKO/XmwZLwaNWdyD8TKlXuqp0veo2sHE+A/vpMQ5iSArRUz/uaoj4h5S6Pn0+PdhRjg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.34.9': - resolution: {integrity: sha512-6TZjPHjKZUQKmVKMUowF3ewHxctrRR09eYyvT5eFv8w/fXarEra83A2mHTVJLA5xU91aCNOUnM+DWFMSbQ0Nxw==} + '@rollup/rollup-linux-arm64-gnu@4.40.0': + resolution: {integrity: sha512-L5ZLphTjjAD9leJzSLI7rr8fNqJMlGDKlazW2tX4IUF9P7R5TMQPElpH82Q7eNIDQnQlAyiNVfRPfP2vM5Avvg==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.34.9': - resolution: {integrity: sha512-LD2fytxZJZ6xzOKnMbIpgzFOuIKlxVOpiMAXawsAZ2mHBPEYOnLRK5TTEsID6z4eM23DuO88X0Tq1mErHMVq0A==} + '@rollup/rollup-linux-arm64-musl@4.40.0': + resolution: {integrity: sha512-ATZvCRGCDtv1Y4gpDIXsS+wfFeFuLwVxyUBSLawjgXK2tRE6fnsQEkE4csQQYWlBlsFztRzCnBvWVfcae/1qxQ==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-loongarch64-gnu@4.34.9': - resolution: {integrity: sha512-dRAgTfDsn0TE0HI6cmo13hemKpVHOEyeciGtvlBTkpx/F65kTvShtY/EVyZEIfxFkV5JJTuQ9tP5HGBS0hfxIg==} + '@rollup/rollup-linux-loongarch64-gnu@4.40.0': + resolution: {integrity: sha512-wG9e2XtIhd++QugU5MD9i7OnpaVb08ji3P1y/hNbxrQ3sYEelKJOq1UJ5dXczeo6Hj2rfDEL5GdtkMSVLa/AOg==} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.34.9': - resolution: {integrity: sha512-PHcNOAEhkoMSQtMf+rJofwisZqaU8iQ8EaSps58f5HYll9EAY5BSErCZ8qBDMVbq88h4UxaNPlbrKqfWP8RfJA==} + '@rollup/rollup-linux-powerpc64le-gnu@4.40.0': + resolution: {integrity: sha512-vgXfWmj0f3jAUvC7TZSU/m/cOE558ILWDzS7jBhiCAFpY2WEBn5jqgbqvmzlMjtp8KlLcBlXVD2mkTSEQE6Ixw==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.34.9': - resolution: {integrity: sha512-Z2i0Uy5G96KBYKjeQFKbbsB54xFOL5/y1P5wNBsbXB8yE+At3oh0DVMjQVzCJRJSfReiB2tX8T6HUFZ2k8iaKg==} + '@rollup/rollup-linux-riscv64-gnu@4.40.0': + resolution: {integrity: sha512-uJkYTugqtPZBS3Z136arevt/FsKTF/J9dEMTX/cwR7lsAW4bShzI2R0pJVw+hcBTWF4dxVckYh72Hk3/hWNKvA==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-riscv64-musl@4.40.0': + resolution: {integrity: sha512-rKmSj6EXQRnhSkE22+WvrqOqRtk733x3p5sWpZilhmjnkHkpeCgWsFFo0dGnUGeA+OZjRl3+VYq+HyCOEuwcxQ==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.34.9': - resolution: {integrity: sha512-U+5SwTMoeYXoDzJX5dhDTxRltSrIax8KWwfaaYcynuJw8mT33W7oOgz0a+AaXtGuvhzTr2tVKh5UO8GVANTxyQ==} + '@rollup/rollup-linux-s390x-gnu@4.40.0': + resolution: {integrity: sha512-SpnYlAfKPOoVsQqmTFJ0usx0z84bzGOS9anAC0AZ3rdSo3snecihbhFTlJZ8XMwzqAcodjFU4+/SM311dqE5Sw==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.34.9': - resolution: {integrity: sha512-FwBHNSOjUTQLP4MG7y6rR6qbGw4MFeQnIBrMe161QGaQoBQLqSUEKlHIiVgF3g/mb3lxlxzJOpIBhaP+C+KP2A==} + '@rollup/rollup-linux-x64-gnu@4.40.0': + resolution: {integrity: sha512-RcDGMtqF9EFN8i2RYN2W+64CdHruJ5rPqrlYw+cgM3uOVPSsnAQps7cpjXe9be/yDp8UC7VLoCoKC8J3Kn2FkQ==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.34.9': - resolution: {integrity: sha512-cYRpV4650z2I3/s6+5/LONkjIz8MBeqrk+vPXV10ORBnshpn8S32bPqQ2Utv39jCiDcO2eJTuSlPXpnvmaIgRA==} + '@rollup/rollup-linux-x64-musl@4.40.0': + resolution: {integrity: sha512-HZvjpiUmSNx5zFgwtQAV1GaGazT2RWvqeDi0hV+AtC8unqqDSsaFjPxfsO6qPtKRRg25SisACWnJ37Yio8ttaw==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.34.9': - resolution: {integrity: sha512-z4mQK9dAN6byRA/vsSgQiPeuO63wdiDxZ9yg9iyX2QTzKuQM7T4xlBoeUP/J8uiFkqxkcWndWi+W7bXdPbt27Q==} + '@rollup/rollup-win32-arm64-msvc@4.40.0': + resolution: {integrity: sha512-UtZQQI5k/b8d7d3i9AZmA/t+Q4tk3hOC0tMOMSq2GlMYOfxbesxG4mJSeDp0EHs30N9bsfwUvs3zF4v/RzOeTQ==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.34.9': - resolution: {integrity: sha512-KB48mPtaoHy1AwDNkAJfHXvHp24H0ryZog28spEs0V48l3H1fr4i37tiyHsgKZJnCmvxsbATdZGBpbmxTE3a9w==} + '@rollup/rollup-win32-ia32-msvc@4.40.0': + resolution: {integrity: sha512-+m03kvI2f5syIqHXCZLPVYplP8pQch9JHyXKZ3AGMKlg8dCyr2PKHjwRLiW53LTrN/Nc3EqHOKxUxzoSPdKddA==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.34.9': - resolution: {integrity: sha512-AyleYRPU7+rgkMWbEh71fQlrzRfeP6SyMnRf9XX4fCdDPAJumdSBqYEcWPMzVQ4ScAl7E4oFfK0GUVn77xSwbw==} + '@rollup/rollup-win32-x64-msvc@4.40.0': + resolution: {integrity: sha512-lpPE1cLfP5oPzVjKMx10pgBmKELQnFJXHgvtHCtuJWOv8MxqdEIMNtgHgBFf7Ea2/7EuVwa9fodWUfXAlXZLZQ==} cpu: [x64] os: [win32] '@sec-ant/readable-stream@0.4.1': resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==} - '@shikijs/core@3.1.0': - resolution: {integrity: sha512-1ppAOyg3F18N8Ge9DmJjGqRVswihN33rOgPovR6gUHW17Hw1L4RlRhnmVQcsacSHh0A8IO1FIgNbtTxUFwodmg==} + '@shikijs/core@3.2.2': + resolution: {integrity: sha512-yvlSKVMLjddAGBa2Yu+vUZxuu3sClOWW1AG+UtJkvejYuGM5BVL35s6Ijiwb75O9QdEx6IkMxinHZSi8ZyrBaA==} - '@shikijs/engine-javascript@3.1.0': - resolution: {integrity: sha512-/LwkhW17jYi7uPcdaaSQQDNW+xgrHXarkrxYPoC6WPzH2xW5mFMw12doHXJBqxmYvtcTbaatcv2MkH9+3PU1FA==} + '@shikijs/engine-javascript@3.2.2': + resolution: {integrity: sha512-tlDKfhWpF4jKLUyVAnmL+ggIC+0VyteNsUpBzh1iwWLZu4i+PelIRr0TNur6pRRo5UZIv3ss/PLMuwahg9S2hg==} - '@shikijs/engine-oniguruma@3.1.0': - resolution: {integrity: sha512-reRgy8VzDPdiDocuGDD60Rk/jLxgcgy+6H4n6jYLeN2Yw5ikasRjQQx8ERXtDM35yg2v/d6KolDBcK8hYYhcmw==} + '@shikijs/engine-oniguruma@3.2.2': + resolution: {integrity: sha512-vyXRnWVCSvokwbaUD/8uPn6Gqsf5Hv7XwcW4AgiU4Z2qwy19sdr6VGzMdheKKN58tJOOe5MIKiNb901bgcUXYQ==} - '@shikijs/langs@3.1.0': - resolution: {integrity: sha512-hAM//sExPXAXG3ZDWjrmV6Vlw4zlWFOcT1ZXNhFRBwPP27scZu/ZIdZ+TdTgy06zSvyF4KIjnF8j6+ScKGu6ww==} + '@shikijs/langs@3.2.2': + resolution: {integrity: sha512-NY0Urg2dV9ETt3JIOWoMPuoDNwte3geLZ4M1nrPHbkDS8dWMpKcEwlqiEIGqtwZNmt5gKyWpR26ln2Bg2ecPgw==} - '@shikijs/themes@3.1.0': - resolution: {integrity: sha512-A4MJmy9+ydLNbNCtkmdTp8a+ON+MMXoUe1KTkELkyu0+pHGOcbouhNuobhZoK59cL4cOST6CCz1x+kUdkp9UZA==} + '@shikijs/themes@3.2.2': + resolution: {integrity: sha512-Zuq4lgAxVKkb0FFdhHSdDkALuRpsj1so1JdihjKNQfgM78EHxV2JhO10qPsMrm01FkE3mDRTdF68wfmsqjt6HA==} - '@shikijs/transformers@3.1.0': - resolution: {integrity: sha512-Et+agcilvJOmWh/goUczrdM6R35JrEr8B8xZxJVv6rCIpUo2rICtWZF4YBUIILx5mV78455EcYyFPCrk3lJ+nw==} + '@shikijs/transformers@3.2.2': + resolution: {integrity: sha512-DQvrPdygc6NNdbfeOZoO1+KiRnnjUQuuPLwsAbUuSKq4QFLD0Ik15FbHojmot5NbgCQRbVr8ufRg8U6X5rGWuQ==} - '@shikijs/types@3.1.0': - resolution: {integrity: sha512-F8e7Fy4ihtcNpJG572BZZC1ErYrBrzJ5Cbc9Zi3REgWry43gIvjJ9lFAoUnuy7Bvy4IFz7grUSxL5edfrrjFEA==} + '@shikijs/types@3.2.2': + resolution: {integrity: sha512-a5TiHk7EH5Lso8sHcLHbVNNhWKP0Wi3yVnXnu73g86n3WoDgEra7n3KszyeCGuyoagspQ2fzvy4cpSc8pKhb0A==} '@shikijs/vscode-textmate@10.0.2': resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} @@ -909,8 +917,8 @@ packages: '@types/debug@4.1.12': resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} - '@types/estree@1.0.6': - resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} + '@types/estree@1.0.7': + resolution: {integrity: sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==} '@types/fs-extra@11.0.4': resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==} @@ -963,14 +971,14 @@ packages: '@types/node@17.0.45': resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} - '@types/node@22.13.9': - resolution: {integrity: sha512-acBjXdRJ3A6Pb3tqnw9HZmyR3Fiol3aGxRCK1x3d+6CDAMjl7I649wpSd+yNURCjbOUGu9tqtLKnTGxmK6CyGw==} + '@types/node@22.14.1': + resolution: {integrity: sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==} '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} - '@types/picomatch@3.0.2': - resolution: {integrity: sha512-n0i8TD3UDB7paoMMxA3Y65vUncFJXjcUf7lQY7YyKGl6031FNjfsLs6pdLFCy2GNFxItPJG8GvvpbZc2skH7WA==} + '@types/picomatch@4.0.0': + resolution: {integrity: sha512-J1Bng+wlyEERWSgJQU1Pi0HObCLVcr994xT/M+1wcl/yNRTGBupsCxthgkdYG+GCOMaQH7iSVUY3LJVBBqG7MQ==} '@types/postcss-prefix-selector@1.16.3': resolution: {integrity: sha512-YZLPWRkJIrYjwaqojVDXzaRCAEYslRAm8Shznwwn+ZFA4iKQR4LZlS3d+ZMVteFz4iyQnngZZG7k/GIzV1f3mQ==} @@ -984,8 +992,8 @@ packages: '@types/sax@1.2.7': resolution: {integrity: sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==} - '@types/semver@7.5.8': - resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} + '@types/semver@7.7.0': + resolution: {integrity: sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==} '@types/sizzle@2.3.9': resolution: {integrity: sha512-xzLEyKB50yqCUPUJkIsrVvoWNfFUbIZI+RspLWt8u+tIW/BetMBZtgV2LY/2o+tYH8dRvQ+eoPf3NdhQCcLE2w==} @@ -999,18 +1007,18 @@ packages: '@ungap/structured-clone@1.3.0': resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} - '@vitejs/plugin-vue@5.2.1': - resolution: {integrity: sha512-cxh314tzaWwOLqVes2gnnCtvBDcM1UMdn+iFR+UjAn411dPT3tOmqrJjbMd7koZpMAmBM/GqeV4n9ge7JSiJJQ==} + '@vitejs/plugin-vue@5.2.3': + resolution: {integrity: sha512-IYSLEQj4LgZZuoVpdSUCw3dIynTWQgPlaRP6iAvMle4My0HdYwr5g5wQAfwOeHQBmYwEkqF70nRpSilr6PoUDg==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: vite: ^5.0.0 || ^6.0.0 vue: ^3.2.25 - '@vitest/expect@3.0.8': - resolution: {integrity: sha512-Xu6TTIavTvSSS6LZaA3EebWFr6tsoXPetOWNMOlc7LO88QVVBwq2oQWBoDiLCN6YTvNYsGSjqOO8CAdjom5DCQ==} + '@vitest/expect@3.1.2': + resolution: {integrity: sha512-O8hJgr+zREopCAqWl3uCVaOdqJwZ9qaDwUP7vy3Xigad0phZe9APxKhPcDNqYYi0rX5oMvwJMSCAXY2afqeTSA==} - '@vitest/mocker@3.0.8': - resolution: {integrity: sha512-n3LjS7fcW1BCoF+zWZxG7/5XvuYH+lsFg+BDwwAz0arIwHQJFUEsKBQ0BLU49fCxuM/2HSeBPHQD8WjgrxMfow==} + '@vitest/mocker@3.1.2': + resolution: {integrity: sha512-kOtd6K2lc7SQ0mBqYv/wdGedlqPdM/B38paPY+OwJ1XiNi44w3Fpog82UfOibmHaV9Wod18A09I9SCKLyDMqgw==} peerDependencies: msw: ^2.4.9 vite: ^5.0.0 || ^6.0.0 @@ -1020,20 +1028,20 @@ packages: vite: optional: true - '@vitest/pretty-format@3.0.8': - resolution: {integrity: sha512-BNqwbEyitFhzYMYHUVbIvepOyeQOSFA/NeJMIP9enMntkkxLgOcgABH6fjyXG85ipTgvero6noreavGIqfJcIg==} + '@vitest/pretty-format@3.1.2': + resolution: {integrity: sha512-R0xAiHuWeDjTSB3kQ3OQpT8Rx3yhdOAIm/JM4axXxnG7Q/fS8XUwggv/A4xzbQA+drYRjzkMnpYnOGAc4oeq8w==} - '@vitest/runner@3.0.8': - resolution: {integrity: sha512-c7UUw6gEcOzI8fih+uaAXS5DwjlBaCJUo7KJ4VvJcjL95+DSR1kova2hFuRt3w41KZEFcOEiq098KkyrjXeM5w==} + '@vitest/runner@3.1.2': + resolution: {integrity: sha512-bhLib9l4xb4sUMPXnThbnhX2Yi8OutBMA8Yahxa7yavQsFDtwY/jrUZwpKp2XH9DhRFJIeytlyGpXCqZ65nR+g==} - '@vitest/snapshot@3.0.8': - resolution: {integrity: sha512-x8IlMGSEMugakInj44nUrLSILh/zy1f2/BgH0UeHpNyOocG18M9CWVIFBaXPt8TrqVZWmcPjwfG/ht5tnpba8A==} + '@vitest/snapshot@3.1.2': + resolution: {integrity: sha512-Q1qkpazSF/p4ApZg1vfZSQ5Yw6OCQxVMVrLjslbLFA1hMDrT2uxtqMaw8Tc/jy5DLka1sNs1Y7rBcftMiaSH/Q==} - '@vitest/spy@3.0.8': - resolution: {integrity: sha512-MR+PzJa+22vFKYb934CejhR4BeRpMSoxkvNoDit68GQxRLSf11aT6CTj3XaqUU9rxgWJFnqicN/wxw6yBRkI1Q==} + '@vitest/spy@3.1.2': + resolution: {integrity: sha512-OEc5fSXMws6sHVe4kOFyDSj/+4MSwst0ib4un0DlcYgQvRuYQ0+M2HyqGaauUMnjq87tmUaMNDxKQx7wNfVqPA==} - '@vitest/utils@3.0.8': - resolution: {integrity: sha512-nkBC3aEhfX2PdtQI/QwAWp8qZWwzASsU4Npbcd5RdMPBSSLCpkZp52P3xku3s3uA0HIEhGvEcF8rNkBsz9dQ4Q==} + '@vitest/utils@3.1.2': + resolution: {integrity: sha512-5GGd0ytZ7BH3H6JTj9Kw7Prn1Nbg0wZVrIvou+UWxm54d+WoXXgAgjFJ8wn3LdagWLFSEfpPeyYrByZaGEZHLg==} '@volar/language-core@2.4.12': resolution: {integrity: sha512-RLrFdXEaQBWfSnYGVxvR2WrO6Bub0unkdHYIdC31HzIEqATIuuhRRzYu76iGPZ6OtA4Au1SnW0ZwIqPP217YhA==} @@ -1059,14 +1067,14 @@ packages: '@vue/compiler-vue2@2.7.16': resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} - '@vue/devtools-api@7.7.2': - resolution: {integrity: sha512-1syn558KhyN+chO5SjlZIwJ8bV/bQ1nOVTG66t2RbG66ZGekyiYNmRO7X9BJCXQqPsFHlnksqvPhce2qpzxFnA==} + '@vue/devtools-api@7.7.5': + resolution: {integrity: sha512-HYV3tJGARROq5nlVMJh5KKHk7GU8Au3IrrmNNqr978m0edxgpHgYPDoNUGrvEgIbObz09SQezFR3A1EVmB5WZg==} - '@vue/devtools-kit@7.7.2': - resolution: {integrity: sha512-CY0I1JH3Z8PECbn6k3TqM1Bk9ASWxeMtTCvZr7vb+CHi+X/QwQm5F1/fPagraamKMAHVfuuCbdcnNg1A4CYVWQ==} + '@vue/devtools-kit@7.7.5': + resolution: {integrity: sha512-S9VAVJYVAe4RPx2JZb9ZTEi0lqTySz2CBeF0wHT5D3dkTLnT9yMMGegKNl4b2EIELwLSkcI9bl2qp0/jW+upqA==} - '@vue/devtools-shared@7.7.2': - resolution: {integrity: sha512-uBFxnp8gwW2vD6FrJB8JZLUzVb6PNRG0B0jBnHsOH8uKyva2qINY8PTF5Te4QlTbMDqU5K6qtJDr6cNsKWhbOA==} + '@vue/devtools-shared@7.7.5': + resolution: {integrity: sha512-QBjG72RfpM0DKtpns2RZOxBltO226kOAls9e4Lri6YxS2gWTgL0H+wj1R2K76lxxIeOrqo4+2Ty6RQnzv+WSTQ==} '@vue/language-core@2.2.8': resolution: {integrity: sha512-rrzB0wPGBvcwaSNRriVWdNAbHQWSf0NlGqgKHK5mEkXpefjUlVRP62u03KvwZpvKVjRnBIQ/Lwre+Mx9N6juUQ==} @@ -1093,11 +1101,13 @@ packages: '@vue/shared@3.5.13': resolution: {integrity: sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==} - '@vueuse/core@12.8.2': - resolution: {integrity: sha512-HbvCmZdzAu3VGi/pWYm5Ut+Kd9mn1ZHnn4L5G8kOQTPs/IwIAmJoBrmYk2ckLArgMXZj0AW3n5CAejLUO+PhdQ==} + '@vueuse/core@13.1.0': + resolution: {integrity: sha512-PAauvdRXZvTWXtGLg8cPUFjiZEddTqmogdwYpnn60t08AA5a8Q4hZokBnpTOnVNqySlFlTcRYIC8OqreV4hv3Q==} + peerDependencies: + vue: ^3.5.0 - '@vueuse/integrations@12.8.2': - resolution: {integrity: sha512-fbGYivgK5uBTRt7p5F3zy6VrETlV9RtZjBqd1/HxGdjdckBgBM4ugP8LHpjolqTj14TXTxSK1ZfgPbHYyGuH7g==} + '@vueuse/integrations@13.1.0': + resolution: {integrity: sha512-wJ6aANdUs4SOpVabChQK+uLIwxRTUAEmn1DJnflGG7Wq6yaipiRmp6as/Md201FjJnquQt8MecIPbFv8HSBeDA==} peerDependencies: async-validator: ^4 axios: ^1 @@ -1111,6 +1121,7 @@ packages: qrcode: ^1.5 sortablejs: ^1 universal-cookie: ^7 + vue: ^3.5.0 peerDependenciesMeta: async-validator: optional: true @@ -1137,11 +1148,17 @@ packages: universal-cookie: optional: true - '@vueuse/metadata@12.8.2': - resolution: {integrity: sha512-rAyLGEuoBJ/Il5AmFHiziCPdQzRt88VxR+Y/A/QhJ1EWtWqPBBAxTAFaSkviwEuOEZNtW8pvkPgoCZQ+HxqW1A==} + '@vueuse/metadata@13.1.0': + resolution: {integrity: sha512-+TDd7/a78jale5YbHX9KHW3cEDav1lz1JptwDvep2zSG8XjCsVE+9mHIzjTOaPbHUAk5XiE4jXLz51/tS+aKQw==} + + '@vueuse/shared@13.1.0': + resolution: {integrity: sha512-IVS/qRRjhPTZ6C2/AM3jieqXACGwFZwWTdw5sNTSKk2m/ZpkuuN+ri+WCVUP8TqaKwJYt/KuMwmXspMAw8E6ew==} + peerDependencies: + vue: ^3.5.0 - '@vueuse/shared@12.8.2': - resolution: {integrity: sha512-dznP38YzxZoNloI0qpEfpkms8knDtaoQ6Y/sfS0L7Yki4zh40LFHEhur0odJC6xTHG5dxWVPiUWBXn+wCG2s5w==} + '@xmldom/xmldom@0.9.8': + resolution: {integrity: sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==} + engines: {node: '>=14.6'} abort-controller@3.0.0: resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} @@ -1155,12 +1172,12 @@ packages: add-stream@1.0.0: resolution: {integrity: sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ==} - algoliasearch@5.20.4: - resolution: {integrity: sha512-wjfzqruxovJyDqga8M6Xk5XtfuVg3igrWjhjgkRya87+WwfEa1kg+IluujBLzgAiMSd6rO6jqRb7czjgeeSYgQ==} + algoliasearch@5.23.4: + resolution: {integrity: sha512-QzAKFHl3fm53s44VHrTdEo0TkpL3XVUYQpnZy1r6/EHvMAyIg+O4hwprzlsNmcCHTNyVcF2S13DAUn7XhkC6qg==} engines: {node: '>= 14.0.0'} - alien-signals@1.0.4: - resolution: {integrity: sha512-DJqqQD3XcsaQcQ1s+iE2jDUZmmQpXwHiR6fCAim/w87luaW+vmLY8fMlrdkmRwzaFXhkxf3rqPCR59tKVv1MDw==} + alien-signals@1.0.13: + resolution: {integrity: sha512-OGj9yyTnJEttvzhTUWuscOvtqxq5vrhF7vL9oS0xJ2mK0ItPYP1/y+vCFebfxoEyAz0++1AIwJ5CMr+Fk3nDmg==} ansi-colors@4.1.3: resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} @@ -1205,8 +1222,11 @@ packages: asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - axios@1.8.2: - resolution: {integrity: sha512-ls4GYBm5aig9vWx8AWDSGLpnpDQRtWAfrjU+EuytuODrFBkqesN2RkOQCBzrA1RQNHw1SmRMSDDDSwzNAYQ6Rg==} + axios@1.8.4: + resolution: {integrity: sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==} + + bail@2.0.2: + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} @@ -1214,8 +1234,8 @@ packages: base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - birpc@0.2.19: - resolution: {integrity: sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==} + birpc@2.3.0: + resolution: {integrity: sha512-ijbtkn/F3Pvzb6jHypHRyve2QApOCZDR25D/VnkY2G/lBNcXCTsnsCxgY4k4PkVB7zfwzYbY3O9Lcqe3xufS5g==} boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} @@ -1234,6 +1254,15 @@ packages: resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==} engines: {node: '>=18'} + byte-size@9.0.1: + resolution: {integrity: sha512-YLe9x3rabBrcI0cueCdLS2l5ONUKywcRpTs02B8KP9/Cimhj7o3ZccGrPnRvcbyHMbb7W79/3MUJl7iGgTXKEw==} + engines: {node: '>=12.17'} + peerDependencies: + '@75lb/nature': latest + peerDependenciesMeta: + '@75lb/nature': + optional: true + cac@6.7.14: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} engines: {node: '>=8'} @@ -1259,6 +1288,9 @@ packages: character-entities-legacy@3.0.0: resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} + character-entities@2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + check-error@2.1.1: resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} engines: {node: '>= 16'} @@ -1286,6 +1318,10 @@ packages: resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==} engines: {node: '>=18'} + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} @@ -1311,10 +1347,6 @@ packages: resolution: {integrity: sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==} engines: {node: '>= 6'} - commander@9.2.0: - resolution: {integrity: sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==} - engines: {node: ^12.20.0 || >=14} - commondir@1.0.1: resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} @@ -1324,8 +1356,8 @@ packages: confbox@0.1.8: resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} - confbox@0.2.1: - resolution: {integrity: sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg==} + confbox@0.2.2: + resolution: {integrity: sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==} conventional-changelog-angular@8.0.0: resolution: {integrity: sha512-CLf+zr6St0wIxos4bmaKHRXWAcsCXrJU6F4VdNDrGRK3B8LDLKoX3zuMV5GhtbGkVR/LohZ6MT6im43vZLSjmA==} @@ -1428,6 +1460,9 @@ packages: supports-color: optional: true + decode-named-character-reference@1.1.0: + resolution: {integrity: sha512-Wy+JTSbFThEOXQIR2L6mxJvEs+veIzpmqD7ynWxMXGpnk3smkHQOp6forLdHsKpAMW9iJpaBBIxz285t1n1C3w==} + deep-eql@5.0.2: resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==} engines: {node: '>=6'} @@ -1529,8 +1564,8 @@ packages: resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} engines: {node: '>= 0.4'} - esbuild@0.25.0: - resolution: {integrity: sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw==} + esbuild@0.25.2: + resolution: {integrity: sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==} engines: {node: '>=18'} hasBin: true @@ -1542,6 +1577,10 @@ packages: resolution: {integrity: sha512-w3PwNZJwRxlp47QGzhuEBldEqVHHhh8/tIPcl6ecf2Bou99cdAt0knihBV0Ecc7CGxYduXVBDheH1K2oADRlvw==} engines: {node: '>=10'} + escape-string-regexp@5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + esm@3.2.25: resolution: {integrity: sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==} engines: {node: '>=6'} @@ -1576,17 +1615,20 @@ packages: resolution: {integrity: sha512-EHlpxMCpHWSAh1dgS6bVeoLAXGnJNdR93aabr4QCGbzOM73o5XmRfM/e5FUqsw3aagP8S8XEWUWFAxnRBnAF0Q==} engines: {node: ^18.19.0 || >=20.5.0} - expect-type@1.2.0: - resolution: {integrity: sha512-80F22aiJ3GLyVnS/B3HzgR6RelZVumzj9jkL0Rhz4h0xYbNW9PjlQz5h3J/SShErbXBc295vseR4/MIbVmUbeA==} + expect-type@1.2.1: + resolution: {integrity: sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw==} engines: {node: '>=12.0.0'} - exsolve@1.0.2: - resolution: {integrity: sha512-ZEcIMbthn2zeX4/wD/DLxDUjuCltHXT8Htvm/JFlTkdYgWh2+HGppgwwNUnIVxzxP7yJOPtuBAec0dLx6lVY8w==} + exsolve@1.0.5: + resolution: {integrity: sha512-pz5dvkYYKQ1AHVrgOzBKWeP4u4FRb3a6DNK2ucr0OoNwYIU4QWsJ+NM36LLzORT+z845MzKHHhpXiUF5nvQoJg==} extend-shallow@2.0.1: resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} engines: {node: '>=0.10.0'} + extend@3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + fast-glob@3.3.3: resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} engines: {node: '>=8.6.0'} @@ -1594,8 +1636,11 @@ packages: fastq@1.19.1: resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} - fdir@6.4.3: - resolution: {integrity: sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==} + fault@2.0.1: + resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==} + + fdir@6.4.4: + resolution: {integrity: sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg==} peerDependencies: picomatch: ^3 || ^4 peerDependenciesMeta: @@ -1638,6 +1683,10 @@ packages: resolution: {integrity: sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==} engines: {node: '>= 6'} + format@0.2.2: + resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} + engines: {node: '>=0.4.x'} + fs-extra@11.3.0: resolution: {integrity: sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==} engines: {node: '>=14.14'} @@ -1650,6 +1699,10 @@ packages: function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + get-east-asian-width@1.3.0: resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==} engines: {node: '>=18'} @@ -1762,15 +1815,15 @@ packages: resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} engines: {node: '>=16.17.0'} - human-signals@8.0.0: - resolution: {integrity: sha512-/1/GPCpDUCCYwlERiYjxoczfP0zfvZMU/OWgQPMya9AbAE24vseigFdhAMObpc8Q4lc/kjutPfUddDYyAmejnA==} + human-signals@8.0.1: + resolution: {integrity: sha512-eKCa6bwnJhvxj14kZk5NCPc6Hb6BdsU9DZcOnmQKSnO1VKrfV0zCvtttPZUsBvjmNDn8rpcJfpwSYnHBjc95MQ==} engines: {node: '>=18.18.0'} ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} - index-to-position@0.1.2: - resolution: {integrity: sha512-MWDKS3AS1bGCHLBA2VLImJz42f7bJh8wQsTGCzI3j519/CASStoDONUBVz2I/VID0MpiX3SGSnbOD2xUalbE5g==} + index-to-position@1.1.0: + resolution: {integrity: sha512-XPdx9Dq4t9Qk1mTMbWONJqU7boCoumEH7fRET37HX5+khDUl3J2W6PdALxhILYlIYx2amlwYcRPp28p0tSiojg==} engines: {node: '>=18'} is-core-module@2.16.1: @@ -1904,13 +1957,13 @@ packages: linkify-it@5.0.0: resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} - lint-staged@15.4.3: - resolution: {integrity: sha512-FoH1vOeouNh1pw+90S+cnuoFwRfUD9ijY2GKy5h7HS3OR7JVir2N2xrsa0+Twc1B7cW72L+88geG5cW4wIhn7g==} + lint-staged@15.5.1: + resolution: {integrity: sha512-6m7u8mue4Xn6wK6gZvSCQwBvMBR36xfY24nF5bMTf2MHDYG6S3yhJuOgdYVw99hsjyDt2d4z168b3naI8+NWtQ==} engines: {node: '>=18.12.0'} hasBin: true - listr2@8.2.5: - resolution: {integrity: sha512-iyAZCeyD+c1gPyE9qpFu8af0Y+MRtmKOncdGoA2S5EY8iFq99dmmvkNnHiWo+pj0s7yH7l3KPIgee77tKpXPWQ==} + listr2@8.3.2: + resolution: {integrity: sha512-vsBzcU4oE+v0lj4FhVLzr9dBTv4/fHIa57l+GCwovP8MoFNZJTOhGU8PXd4v2VJCbECAaijBiHntiekFMLvo0g==} engines: {node: '>=18.0.0'} local-pkg@1.1.1: @@ -1938,14 +1991,17 @@ packages: resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==} engines: {node: '>=18'} + longest-streak@3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} + loupe@3.1.3: resolution: {integrity: sha512-kkIp7XSkP78ZxJEsSxW3712C6teJVoeHHwgo9zJ380de7IYyJ2ISlxojcH2pC5OFLewESmnRi/+XCDIEEVyoug==} lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - lru-cache@11.0.2: - resolution: {integrity: sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==} + lru-cache@11.1.0: + resolution: {integrity: sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==} engines: {node: 20 || >=22} magic-string@0.30.17: @@ -1982,6 +2038,10 @@ packages: resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} hasBin: true + markdown-title@1.0.2: + resolution: {integrity: sha512-MqIQVVkz+uGEHi3TsHx/czcxxCbRIL7sv5K5DnYw/tI+apY54IbPefV/cmgxp6LoJSEx/TqcHdLs/298afG5QQ==} + engines: {node: '>=6'} + math-intrinsics@1.1.0: resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} engines: {node: '>= 0.4'} @@ -1989,9 +2049,24 @@ packages: mathjax-full@3.2.2: resolution: {integrity: sha512-+LfG9Fik+OuI8SLwsiR02IVdjcnRCy5MufYLi0C3TdMT56L/pjB0alMVGgoWJF8pN9Rc7FESycZB9BMNWIid5w==} + mdast-util-from-markdown@2.0.2: + resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==} + + mdast-util-frontmatter@2.0.1: + resolution: {integrity: sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==} + + mdast-util-phrasing@4.1.0: + resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} + mdast-util-to-hast@13.2.0: resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==} + 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==} + mdurl@2.0.0: resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} @@ -2016,25 +2091,80 @@ packages: mhchemparser@4.2.1: resolution: {integrity: sha512-kYmyrCirqJf3zZ9t/0wGgRZ4/ZJw//VwaRVGA75C4nhE60vtnIzhl9J9ndkX/h6hxSN7pjg/cE0VxbnNM+bnDQ==} + micromark-core-commonmark@2.0.3: + resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==} + + micromark-extension-frontmatter@2.0.0: + resolution: {integrity: sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==} + + micromark-factory-destination@2.0.1: + resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==} + + micromark-factory-label@2.0.1: + resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==} + + micromark-factory-space@2.0.1: + resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==} + + micromark-factory-title@2.0.1: + resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==} + + micromark-factory-whitespace@2.0.1: + resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==} + micromark-util-character@2.1.1: resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==} + micromark-util-chunked@2.0.1: + resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==} + + micromark-util-classify-character@2.0.1: + resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==} + + micromark-util-combine-extensions@2.0.1: + resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==} + + micromark-util-decode-numeric-character-reference@2.0.2: + resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==} + + micromark-util-decode-string@2.0.1: + resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==} + micromark-util-encode@2.0.1: resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} + micromark-util-html-tag-name@2.0.1: + resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==} + + micromark-util-normalize-identifier@2.0.1: + resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==} + + micromark-util-resolve-all@2.0.1: + resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==} + micromark-util-sanitize-uri@2.0.1: resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} + micromark-util-subtokenize@2.1.0: + resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==} + micromark-util-symbol@2.0.1: resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} micromark-util-types@2.0.2: resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==} + micromark@4.0.2: + resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==} + micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} + millify@6.1.0: + resolution: {integrity: sha512-H/E3J6t+DQs/F2YgfDhxUVZz/dF8JXPPKTLHL/yHCcLZLtCXJDUaqvhJXQwqOVBvbyNn4T0WjLpIHd7PAw7fBA==} + hasBin: true + mime-db@1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} @@ -2093,13 +2223,13 @@ packages: muggle-string@0.4.1: resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} - nanoid@3.3.9: - resolution: {integrity: sha512-SppoicMGpZvbF1l3z4x7No3OlIjP7QJvC9XR7AhZr1kL133KHnKPztkKDc+Ir4aJ/1VhTySrtKhrsycmrMQfvg==} + nanoid@3.3.11: + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - nanoid@5.1.3: - resolution: {integrity: sha512-zAbEOEr7u2CbxwoMRlz/pNSpRP0FdAU4pRaYunCdEezWohXFs+a0Xw7RfkKaezMsmSM1vttcLthJtwRnVtOfHQ==} + nanoid@5.1.5: + resolution: {integrity: sha512-Ir/+ZpE9fDsNH0hQ3C68uyThDXzYcim2EqcZ8zn8Chtt1iylPT9xXJB0kPCnqzgcEGikO9RxSrh63MsmVCU7Fw==} engines: {node: ^18 || >=20} hasBin: true @@ -2138,16 +2268,19 @@ packages: resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} engines: {node: '>=18'} - oniguruma-to-es@3.1.1: - resolution: {integrity: sha512-bUH8SDvPkH3ho3dvwJwfonjlQ4R80vjyvrU8YpxuROddv55vAEJrTuCuCVUhhsHbtlD9tGGbaNApGQckXhS8iQ==} + oniguruma-parser@0.11.2: + resolution: {integrity: sha512-F7Ld4oDZJCI5/wCZ8AOffQbqjSzIRpKH7I/iuSs1SkhZeCj0wS6PMZ4W6VA16TWHrAo0Y9bBKEJOe7tvwcTXnw==} + + oniguruma-to-es@4.2.0: + resolution: {integrity: sha512-MDPs6KSOLS0tKQ7joqg44dRIRZUyotfTy0r+7oEEs6VwWWP0+E2PPDYWMFN0aqOjRyWHBYq7RfKw9GQk2S2z5g==} open-cli@8.0.0: resolution: {integrity: sha512-3muD3BbfLyzl+aMVSEfn2FfOqGdPYR0O4KNnxXsLEPE2q9OSjBfJAaB6XKbrUzLgymoSMejvb5jpXJfru/Ko2A==} engines: {node: '>=18'} hasBin: true - open@10.1.0: - resolution: {integrity: sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==} + open@10.1.1: + resolution: {integrity: sha512-zy1wx4+P3PfhXSEPJNtZmJXfhkkIaxU1VauWIrDZw1O7uJRDRJtKr9n3Ic4NgbA16KyOxOXO2ng9gYwCdXuSXA==} engines: {node: '>=18'} ora@8.2.0: @@ -2164,8 +2297,8 @@ packages: package-manager-detector@0.2.11: resolution: {integrity: sha512-BEnLolu+yuz22S56CU1SUKq3XC3PkwD5wv4ikR4MfGvnRVcmzXR9DwSlW2fEamyTPyXHomBJRzgapeuBvRNzJQ==} - parse-json@8.1.0: - resolution: {integrity: sha512-rum1bPifK5SSar35Z6EKZuYPJx85pkNaFrxBK3mwdfSJ1/WKbYrjoW/zTPSjRRamfmVX1ACBIdFAO0VRErW/EA==} + parse-json@8.3.0: + resolution: {integrity: sha512-ybiGyvspI+fAoRQbIPRddCcSTV9/LsJbf0e/S85VLowVGzRmokfneg2kwVW/KU5rOXrPSbF1qAKPMgNTqqROQQ==} engines: {node: '>=18'} parse-ms@4.0.0: @@ -2239,13 +2372,13 @@ packages: pkg-types@2.1.0: resolution: {integrity: sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A==} - playwright-chromium@1.51.0: - resolution: {integrity: sha512-vvTfgpnpy/OHzszS6jtRxvltC0J3x2Eko925FciIC0IN3KC1fg76veqV9AVWIasR+JTq9ZQh9V5Yqz8DPl38Lg==} + playwright-chromium@1.52.0: + resolution: {integrity: sha512-ZTpzBzRFFRglyqRnAqdK5mFaw1P41qe8V2zSR+fA0eKPgGEEaH7r91ejXKijs3WhReatRcatHQe3ndMBMN1PLA==} engines: {node: '>=18'} hasBin: true - playwright-core@1.51.0: - resolution: {integrity: sha512-x47yPE3Zwhlil7wlNU/iktF7t2r/URR3VLbH6EknJd/04Qc/PSJ0EY3CMXipmglLG+zyRxW6HNo2EGbKLHPWMg==} + playwright-core@1.52.0: + resolution: {integrity: sha512-l2osTgLXSMeuLZOML9qYODUQoPPnUsKsb5/P6LJ2e6uPKXUdPK5WYhN4z03G+YNbWmGDY4YENauNu4ZKczreHg==} engines: {node: '>=18'} hasBin: true @@ -2253,13 +2386,13 @@ packages: resolution: {integrity: sha512-ryc8D/B5E/YnlWHkNMnRvNntPc4GwU1/+iDBjiXVz1SUjDRqlxYX5Ic0IaDLA/cQ+g7/x+jUzEjv2K16u1J+wA==} engines: {node: '>=8'} - postcss-prefix-selector@2.1.0: - resolution: {integrity: sha512-UJjQ5CJZuvDGbrGzanqZyH1R/dUSxil/IxfQyeUg+POmZGhG4nz4FERhrgy75+JiUESw0ws3+GxXofapOBbdkg==} + postcss-prefix-selector@2.1.1: + resolution: {integrity: sha512-ZBgf427Et6+XnrnJ9VXtJEKCjJwTvn2wn/qMg+wvvlRhIeFIAxdbrlZZ0CSsWYMJfcyPLBh8ogj5O1kb/Mcx3g==} peerDependencies: postcss: ^8.0.0 - postcss-rtlcss@5.6.0: - resolution: {integrity: sha512-vfO8AcjuQ6eFD3zBjN1UBjkZppgHTjMfIM+InCvzLjMtREI/Kax4YvTyFH/i+lRSI8BFeHuOJUc2Ah47zlungQ==} + postcss-rtlcss@5.7.0: + resolution: {integrity: sha512-qx0KQ9iX17Qsi6AGZL3D6Ty7UjDebApE92FLP1Z8tQg4cGck/V/w0UrIo1rFQSh3rYsxDnSf1r30X8GNyxy6VQ==} engines: {node: '>=18.0.0'} peerDependencies: postcss: ^8.4.21 @@ -2268,8 +2401,8 @@ packages: resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==} engines: {node: ^10 || ^12 || >=14} - preact@10.26.4: - resolution: {integrity: sha512-KJhO7LBFTjP71d83trW+Ilnjbo+ySsaAgCfXOXUlmGzJ4ygYPWmysm77yg4emwfmoz3b22yvH5IsVFHbhUaH5w==} + preact@10.26.5: + resolution: {integrity: sha512-fmpDkgfGU6JYux9teDWLhj9mKN55tyepwYbxHgQuIxbWQzgFg5vk7Mrrtfx7xRxq798ynkY4DDDxZr235Kk+4w==} prettier@3.5.3: resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==} @@ -2302,8 +2435,8 @@ packages: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} - quansync@0.2.8: - resolution: {integrity: sha512-4+saucphJMazjt7iOM27mbFCk+D9dd/zmgMDCzRZ8MEoBfYp7lAvoN38et/phRQF6wOPMy/OROBGgoWeSKyluA==} + quansync@0.2.10: + resolution: {integrity: sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A==} queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} @@ -2341,6 +2474,22 @@ packages: resolution: {integrity: sha512-RSYAtP31mvYLkAHrOlh25pCNQ5hWnT106VukGaaFfuJrZFkGRX5GhUAdPqpSDXxOhA2c4akmRuplv1mRqnBn6Q==} engines: {node: '>=8'} + remark-frontmatter@5.0.0: + resolution: {integrity: sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==} + + remark-parse@11.0.0: + resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} + + remark-stringify@11.0.0: + resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} + + remark@15.0.1: + resolution: {integrity: sha512-Eht5w30ruCXgFmxVUSlNWQ9iiimq07URKeFS3hNc8cUWy1llX4KDWfyEDZRycMc+znsN9Ux5/tJ/BFdgdOwA3A==} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + resolve-pkg-maps@1.0.0: resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} @@ -2379,8 +2528,8 @@ packages: esbuild: '>=0.18.0' rollup: ^1.20.0 || ^2.0.0 || ^3.0.0 || ^4.0.0 - rollup@4.34.9: - resolution: {integrity: sha512-nF5XYqWWp9hx/LrpC8sZvvvmq0TeTjQgaZHYmAgwysT9nh8sWnZhBnM8ZyVbbJFIQBLwHDNoMqsBZBbUo4U8sQ==} + rollup@4.40.0: + resolution: {integrity: sha512-Noe455xmA96nnqH5piFtLobsGbCij7Tu+tb3c1vYjNbTkfzGqXqQXG3wJaYXkRZuQ0vEYN4bhwg7QnIrqB5B+w==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -2422,8 +2571,8 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} - shiki@3.1.0: - resolution: {integrity: sha512-LdTNyWQlC5zdCaHdcp1zPA1OVA2ivb+KjGOOnGcy02tGaF5ja+dGibWFH7Ar8YlngUgK/scDqworK18Ys9cbYA==} + shiki@3.2.2: + resolution: {integrity: sha512-0qWBkM2t/0NXPRcVgtLhtHv6Ak3Q5yI4K/ggMqcgLRKm4+pCs3namgZlhlat/7u2CuqNtlShNs9lENOG6n7UaQ==} siginfo@2.0.0: resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} @@ -2432,8 +2581,8 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} - simple-git-hooks@2.11.1: - resolution: {integrity: sha512-tgqwPUMDcNDhuf1Xf6KTUsyeqGdgKMhzaH4PAZZuzguOgTl5uuyeYe/8mWgAr6IBxB5V06uqEf6Dy37gIWDtDg==} + simple-git-hooks@2.12.1: + resolution: {integrity: sha512-NB3V4XyCOrWTIhjh85DyEoVlM3adHWwqQXKYHmuegy/108bJPP6YxuPGm4ZKBq1+GVKRbKJuzNY//09cMJYp+A==} hasBin: true simple-git@3.27.0: @@ -2489,8 +2638,8 @@ packages: resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==} engines: {node: '>=0.10.0'} - speech-rule-engine@4.0.7: - resolution: {integrity: sha512-sJrL3/wHzNwJRLBdf6CjJWIlxC04iYKkyXvYSVsWVOiC2DSkHmxsqOhEeMsBA9XK+CHuNcsdkbFDnoUfAsmp9g==} + speech-rule-engine@4.1.2: + resolution: {integrity: sha512-S6ji+flMEga+1QU79NDbwZ8Ivf0S/MpupQQiIC0rTpU/ZTKgcajijJJb1OcByBQDjrXCN1/DJtGz4ZJeBMPGJw==} hasBin: true sprintf-js@1.0.3: @@ -2499,8 +2648,8 @@ packages: stackback@0.0.2: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} - std-env@3.8.1: - resolution: {integrity: sha512-vj5lIj3Mwf9D79hBkltk5qmkFI+biIKWS2IBxEyEU3AX1tUf7AoL8nSazCOiiqQsGKIq01SClsKEzweu34uwvA==} + std-env@3.9.0: + resolution: {integrity: sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==} stdin-discarder@0.2.2: resolution: {integrity: sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==} @@ -2585,8 +2734,8 @@ packages: tinyexec@0.3.2: resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} - tinyglobby@0.2.12: - resolution: {integrity: sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==} + tinyglobby@0.2.13: + resolution: {integrity: sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw==} engines: {node: '>=12.0.0'} tinypool@1.0.2: @@ -2609,6 +2758,9 @@ packages: resolution: {integrity: sha512-Y2fmSnZjQdDb9W4w4r1tswlMHylzWIeOKpx0aZH9BgGtACHhrk3OkT52AzwcuqTRBZtvvnTjDBh8eynMulu8Vg==} engines: {node: '>=14.16'} + tokenx@0.4.1: + resolution: {integrity: sha512-LCMniis0WsHel07xh3K9OIt5c9Xla1awtOoWBmUHZBQR7pvTvgGFuYpLiCZWohXPC1YuZORnN0+fCVYI/ie8Jg==} + totalist@3.0.1: resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} engines: {node: '>=6'} @@ -2619,6 +2771,9 @@ packages: trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} + trough@2.2.0: + resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} + trouter@4.0.0: resolution: {integrity: sha512-bwwr76BThfiVwAFZqks5cJ+VoKNM3/2Yg1ZwJslkdmAUQ6S0UNoCoGYFDxdw+u1skfexggdmD2p35kW5Td4Cug==} engines: {node: '>=6'} @@ -2634,20 +2789,20 @@ packages: resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} engines: {node: '>=12.20'} - type-fest@4.37.0: - resolution: {integrity: sha512-S/5/0kFftkq27FPNye0XM1e2NsnoD/3FS+pBmbjmmtLT6I+i344KoOf7pvXreaFsDamWeaJX55nczA1m5PsBDg==} + type-fest@4.40.0: + resolution: {integrity: sha512-ABHZ2/tS2JkvH1PEjxFDTUWC8dB5OsIGZP4IFLhR293GqT5Y5qB1WwL2kMPYhQW9DVgVD8Hd7I8gjwPIf5GFkw==} engines: {node: '>=16'} - typescript@5.8.2: - resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} + typescript@5.8.3: + resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} engines: {node: '>=14.17'} hasBin: true uc.micro@2.1.0: resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} - ufo@1.5.4: - resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} + ufo@1.6.1: + resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==} uglify-js@3.19.3: resolution: {integrity: sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==} @@ -2657,8 +2812,8 @@ packages: ultramatter@0.0.4: resolution: {integrity: sha512-1f/hO3mR+/Hgue4eInOF/Qm/wzDqwhYha4DxM0hre9YIUyso3fE2XtrAU6B4njLqTC8CM49EZaYgsVSa+dXHGw==} - undici-types@6.20.0: - resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} unicorn-magic@0.1.0: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} @@ -2668,6 +2823,9 @@ packages: resolution: {integrity: sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==} engines: {node: '>=18'} + unified@11.0.5: + resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} + unique-string@3.0.0: resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==} engines: {node: '>=12'} @@ -2678,6 +2836,9 @@ packages: unist-util-position@5.0.0: resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} + unist-util-remove@4.0.0: + resolution: {integrity: sha512-b4gokeGId57UVRX/eVKej5gXqGlc9+trkORhFJpu9raqZkZhU0zm8Doi05+HaiBsMEIJowL+2WtQ5ItjsngPXg==} + unist-util-stringify-position@4.0.0: resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} @@ -2708,13 +2869,13 @@ packages: vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - vite-node@3.0.8: - resolution: {integrity: sha512-6PhR4H9VGlcwXZ+KWCdMqbtG649xCPZqfI9j2PsK1FcXgEzro5bGHcVKFCTqPLaNKZES8Evqv4LwvZARsq5qlg==} + vite-node@3.1.2: + resolution: {integrity: sha512-/8iMryv46J3aK13iUXsei5G/A3CUlW4665THCPS+K8xAaqrVWiGB4RfXMQXCLjpK9P2eK//BczrVkn5JLAk6DA==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true - vite@6.2.1: - resolution: {integrity: sha512-n2GnqDb6XPhlt9B8olZPrgMD/es/Nd1RdChF6CBD/fHW6pUyUTt2sQW2fPRX5GiD9XEa6+8A6A4f2vT6pSsE7Q==} + vite@6.3.2: + resolution: {integrity: sha512-ZSvGOXKGceizRQIZSz7TGJ0pS3QLlVY/9hwxVh17W3re67je1RKYzFHivZ/t0tubU78Vkyb9WnHPENSBCzbckg==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true peerDependencies: @@ -2753,19 +2914,22 @@ packages: yaml: optional: true - vitepress-plugin-group-icons@1.3.6: - resolution: {integrity: sha512-MzUAuMZ43f51dfBKYowW7yv/A2DxIjtN50d8Dcj31nU9RB6GuYBJ48E/Ze88U0bEn4wlnrjMXFh2j2e0rYmGug==} + vitepress-plugin-group-icons@1.5.2: + resolution: {integrity: sha512-zen07KxZ83y3eecou4EraaEgwIriwHaB5Q0cHAmS4yO1UZEQvbljTylHPqiJ7LNkV39U8VehfcyquAJXg/26LA==} - vitest@3.0.8: - resolution: {integrity: sha512-dfqAsNqRGUc8hB9OVR2P0w8PZPEckti2+5rdZip0WIz9WW0MnImJ8XiR61QhqLa92EQzKP2uPkzenKOAHyEIbA==} + vitepress-plugin-llms@1.1.0: + resolution: {integrity: sha512-nb7bG/lBDihlcFTzqxRxQIyzeBWQW9F6OwuUWQ7PFUNK5kVbybxXGISU4wvAV8osQmfrD9xNIGJQfuOLj5CzHg==} + + vitest@3.1.2: + resolution: {integrity: sha512-WaxpJe092ID1C0mr+LH9MmNrhfzi8I65EX/NRU/Ld016KqQNRgxSOlGNP1hHN+a/F8L15Mh8klwaF77zR3GeDQ==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@types/debug': ^4.1.12 '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 - '@vitest/browser': 3.0.8 - '@vitest/ui': 3.0.8 + '@vitest/browser': 3.1.2 + '@vitest/ui': 3.1.2 happy-dom: '*' jsdom: '*' peerDependenciesMeta: @@ -2801,8 +2965,8 @@ packages: typescript: optional: true - wait-on@8.0.2: - resolution: {integrity: sha512-qHlU6AawrgAIHlueGQHQ+ETcPLAauXbnoTKl3RKq20W0T8x0DKVAo5xWIYjHSyvHxQlcYbFdR0jp4T9bDVITFA==} + wait-on@8.0.3: + resolution: {integrity: sha512-nQFqAFzZDeRxsu7S3C7LbuxslHhk+gnJZHyethuGKAn2IVleIbTB9I3vJSQiSR+DifUqmdzfPMoMPJfLqMF2vw==} engines: {node: '>=12.0.0'} hasBin: true @@ -2844,130 +3008,138 @@ packages: resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==} engines: {node: '>=18'} - xmldom-sre@0.1.31: - resolution: {integrity: sha512-f9s+fUkX04BxQf+7mMWAp5zk61pciie+fFLC9hX9UVvCeJQfNHRHXpeo5MPcR0EUf57PYLdt+ZO4f3Ipk2oZUw==} - engines: {node: '>=0.1'} + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} - yaml@2.7.0: - resolution: {integrity: sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==} + yaml@2.7.1: + resolution: {integrity: sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==} engines: {node: '>= 14'} hasBin: true + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + yoctocolors@2.1.1: resolution: {integrity: sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==} engines: {node: '>=18'} - zod@3.24.2: - resolution: {integrity: sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==} + zod@3.24.3: + resolution: {integrity: sha512-HhY1oqzWCQWuUqvBFnsyrtZRhyPeR7SUGv+C4+MsisMuVfSPx8HpwWqH8tRahSlt6M3PiFAcoeFhZAqIXTxoSg==} zwitch@2.0.4: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} snapshots: - '@algolia/autocomplete-core@1.17.9(@algolia/client-search@5.20.4)(algoliasearch@5.20.4)': + '@algolia/autocomplete-core@1.17.9(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)': dependencies: - '@algolia/autocomplete-plugin-algolia-insights': 1.17.9(@algolia/client-search@5.20.4)(algoliasearch@5.20.4) - '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.20.4)(algoliasearch@5.20.4) + '@algolia/autocomplete-plugin-algolia-insights': 1.17.9(@algolia/client-search@5.23.4)(algoliasearch@5.23.4) + '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.23.4)(algoliasearch@5.23.4) transitivePeerDependencies: - '@algolia/client-search' - algoliasearch - search-insights - '@algolia/autocomplete-plugin-algolia-insights@1.17.9(@algolia/client-search@5.20.4)(algoliasearch@5.20.4)': + '@algolia/autocomplete-plugin-algolia-insights@1.17.9(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)': dependencies: - '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.20.4)(algoliasearch@5.20.4) + '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.23.4)(algoliasearch@5.23.4) transitivePeerDependencies: - '@algolia/client-search' - algoliasearch - '@algolia/autocomplete-preset-algolia@1.17.9(@algolia/client-search@5.20.4)(algoliasearch@5.20.4)': + '@algolia/autocomplete-preset-algolia@1.17.9(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)': dependencies: - '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.20.4)(algoliasearch@5.20.4) - '@algolia/client-search': 5.20.4 - algoliasearch: 5.20.4 + '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.23.4)(algoliasearch@5.23.4) + '@algolia/client-search': 5.23.4 + algoliasearch: 5.23.4 - '@algolia/autocomplete-shared@1.17.9(@algolia/client-search@5.20.4)(algoliasearch@5.20.4)': + '@algolia/autocomplete-shared@1.17.9(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)': dependencies: - '@algolia/client-search': 5.20.4 - algoliasearch: 5.20.4 + '@algolia/client-search': 5.23.4 + algoliasearch: 5.23.4 - '@algolia/client-abtesting@5.20.4': + '@algolia/client-abtesting@5.23.4': dependencies: - '@algolia/client-common': 5.20.4 - '@algolia/requester-browser-xhr': 5.20.4 - '@algolia/requester-fetch': 5.20.4 - '@algolia/requester-node-http': 5.20.4 + '@algolia/client-common': 5.23.4 + '@algolia/requester-browser-xhr': 5.23.4 + '@algolia/requester-fetch': 5.23.4 + '@algolia/requester-node-http': 5.23.4 - '@algolia/client-analytics@5.20.4': + '@algolia/client-analytics@5.23.4': dependencies: - '@algolia/client-common': 5.20.4 - '@algolia/requester-browser-xhr': 5.20.4 - '@algolia/requester-fetch': 5.20.4 - '@algolia/requester-node-http': 5.20.4 + '@algolia/client-common': 5.23.4 + '@algolia/requester-browser-xhr': 5.23.4 + '@algolia/requester-fetch': 5.23.4 + '@algolia/requester-node-http': 5.23.4 - '@algolia/client-common@5.20.4': {} + '@algolia/client-common@5.23.4': {} - '@algolia/client-insights@5.20.4': + '@algolia/client-insights@5.23.4': dependencies: - '@algolia/client-common': 5.20.4 - '@algolia/requester-browser-xhr': 5.20.4 - '@algolia/requester-fetch': 5.20.4 - '@algolia/requester-node-http': 5.20.4 + '@algolia/client-common': 5.23.4 + '@algolia/requester-browser-xhr': 5.23.4 + '@algolia/requester-fetch': 5.23.4 + '@algolia/requester-node-http': 5.23.4 - '@algolia/client-personalization@5.20.4': + '@algolia/client-personalization@5.23.4': dependencies: - '@algolia/client-common': 5.20.4 - '@algolia/requester-browser-xhr': 5.20.4 - '@algolia/requester-fetch': 5.20.4 - '@algolia/requester-node-http': 5.20.4 + '@algolia/client-common': 5.23.4 + '@algolia/requester-browser-xhr': 5.23.4 + '@algolia/requester-fetch': 5.23.4 + '@algolia/requester-node-http': 5.23.4 - '@algolia/client-query-suggestions@5.20.4': + '@algolia/client-query-suggestions@5.23.4': dependencies: - '@algolia/client-common': 5.20.4 - '@algolia/requester-browser-xhr': 5.20.4 - '@algolia/requester-fetch': 5.20.4 - '@algolia/requester-node-http': 5.20.4 + '@algolia/client-common': 5.23.4 + '@algolia/requester-browser-xhr': 5.23.4 + '@algolia/requester-fetch': 5.23.4 + '@algolia/requester-node-http': 5.23.4 - '@algolia/client-search@5.20.4': + '@algolia/client-search@5.23.4': dependencies: - '@algolia/client-common': 5.20.4 - '@algolia/requester-browser-xhr': 5.20.4 - '@algolia/requester-fetch': 5.20.4 - '@algolia/requester-node-http': 5.20.4 + '@algolia/client-common': 5.23.4 + '@algolia/requester-browser-xhr': 5.23.4 + '@algolia/requester-fetch': 5.23.4 + '@algolia/requester-node-http': 5.23.4 - '@algolia/ingestion@1.20.4': + '@algolia/ingestion@1.23.4': dependencies: - '@algolia/client-common': 5.20.4 - '@algolia/requester-browser-xhr': 5.20.4 - '@algolia/requester-fetch': 5.20.4 - '@algolia/requester-node-http': 5.20.4 + '@algolia/client-common': 5.23.4 + '@algolia/requester-browser-xhr': 5.23.4 + '@algolia/requester-fetch': 5.23.4 + '@algolia/requester-node-http': 5.23.4 - '@algolia/monitoring@1.20.4': + '@algolia/monitoring@1.23.4': dependencies: - '@algolia/client-common': 5.20.4 - '@algolia/requester-browser-xhr': 5.20.4 - '@algolia/requester-fetch': 5.20.4 - '@algolia/requester-node-http': 5.20.4 + '@algolia/client-common': 5.23.4 + '@algolia/requester-browser-xhr': 5.23.4 + '@algolia/requester-fetch': 5.23.4 + '@algolia/requester-node-http': 5.23.4 - '@algolia/recommend@5.20.4': + '@algolia/recommend@5.23.4': dependencies: - '@algolia/client-common': 5.20.4 - '@algolia/requester-browser-xhr': 5.20.4 - '@algolia/requester-fetch': 5.20.4 - '@algolia/requester-node-http': 5.20.4 + '@algolia/client-common': 5.23.4 + '@algolia/requester-browser-xhr': 5.23.4 + '@algolia/requester-fetch': 5.23.4 + '@algolia/requester-node-http': 5.23.4 - '@algolia/requester-browser-xhr@5.20.4': + '@algolia/requester-browser-xhr@5.23.4': dependencies: - '@algolia/client-common': 5.20.4 + '@algolia/client-common': 5.23.4 - '@algolia/requester-fetch@5.20.4': + '@algolia/requester-fetch@5.23.4': dependencies: - '@algolia/client-common': 5.20.4 + '@algolia/client-common': 5.23.4 - '@algolia/requester-node-http@5.20.4': + '@algolia/requester-node-http@5.23.4': dependencies: - '@algolia/client-common': 5.20.4 + '@algolia/client-common': 5.23.4 '@antfu/install-pkg@1.0.0': dependencies: @@ -2986,11 +3158,11 @@ snapshots: '@babel/helper-validator-identifier@7.25.9': {} - '@babel/parser@7.26.9': + '@babel/parser@7.27.0': dependencies: - '@babel/types': 7.26.9 + '@babel/types': 7.27.0 - '@babel/types@7.26.9': + '@babel/types@7.27.0': dependencies: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 @@ -3000,20 +3172,20 @@ snapshots: picocolors: 1.1.1 sisteransi: 1.0.5 - '@clack/core@0.4.1': + '@clack/core@0.4.2': dependencies: picocolors: 1.1.1 sisteransi: 1.0.5 - '@clack/prompts@0.10.0': + '@clack/prompts@0.10.1': dependencies: - '@clack/core': 0.4.1 + '@clack/core': 0.4.2 picocolors: 1.1.1 sisteransi: 1.0.5 '@conventional-changelog/git-client@1.0.1(conventional-commits-filter@5.0.0)(conventional-commits-parser@6.1.0)': dependencies: - '@types/semver': 7.5.8 + '@types/semver': 7.7.0 semver: 7.7.1 optionalDependencies: conventional-commits-filter: 5.0.0 @@ -3021,10 +3193,10 @@ snapshots: '@docsearch/css@3.9.0': {} - '@docsearch/js@3.9.0(@algolia/client-search@5.20.4)': + '@docsearch/js@3.9.0(@algolia/client-search@5.23.4)': dependencies: - '@docsearch/react': 3.9.0(@algolia/client-search@5.20.4) - preact: 10.26.4 + '@docsearch/react': 3.9.0(@algolia/client-search@5.23.4) + preact: 10.26.5 transitivePeerDependencies: - '@algolia/client-search' - '@types/react' @@ -3032,88 +3204,88 @@ snapshots: - react-dom - search-insights - '@docsearch/react@3.9.0(@algolia/client-search@5.20.4)': + '@docsearch/react@3.9.0(@algolia/client-search@5.23.4)': dependencies: - '@algolia/autocomplete-core': 1.17.9(@algolia/client-search@5.20.4)(algoliasearch@5.20.4) - '@algolia/autocomplete-preset-algolia': 1.17.9(@algolia/client-search@5.20.4)(algoliasearch@5.20.4) + '@algolia/autocomplete-core': 1.17.9(@algolia/client-search@5.23.4)(algoliasearch@5.23.4) + '@algolia/autocomplete-preset-algolia': 1.17.9(@algolia/client-search@5.23.4)(algoliasearch@5.23.4) '@docsearch/css': 3.9.0 - algoliasearch: 5.20.4 + algoliasearch: 5.23.4 transitivePeerDependencies: - '@algolia/client-search' - '@esbuild/aix-ppc64@0.25.0': + '@esbuild/aix-ppc64@0.25.2': optional: true - '@esbuild/android-arm64@0.25.0': + '@esbuild/android-arm64@0.25.2': optional: true - '@esbuild/android-arm@0.25.0': + '@esbuild/android-arm@0.25.2': optional: true - '@esbuild/android-x64@0.25.0': + '@esbuild/android-x64@0.25.2': optional: true - '@esbuild/darwin-arm64@0.25.0': + '@esbuild/darwin-arm64@0.25.2': optional: true - '@esbuild/darwin-x64@0.25.0': + '@esbuild/darwin-x64@0.25.2': optional: true - '@esbuild/freebsd-arm64@0.25.0': + '@esbuild/freebsd-arm64@0.25.2': optional: true - '@esbuild/freebsd-x64@0.25.0': + '@esbuild/freebsd-x64@0.25.2': optional: true - '@esbuild/linux-arm64@0.25.0': + '@esbuild/linux-arm64@0.25.2': optional: true - '@esbuild/linux-arm@0.25.0': + '@esbuild/linux-arm@0.25.2': optional: true - '@esbuild/linux-ia32@0.25.0': + '@esbuild/linux-ia32@0.25.2': optional: true - '@esbuild/linux-loong64@0.25.0': + '@esbuild/linux-loong64@0.25.2': optional: true - '@esbuild/linux-mips64el@0.25.0': + '@esbuild/linux-mips64el@0.25.2': optional: true - '@esbuild/linux-ppc64@0.25.0': + '@esbuild/linux-ppc64@0.25.2': optional: true - '@esbuild/linux-riscv64@0.25.0': + '@esbuild/linux-riscv64@0.25.2': optional: true - '@esbuild/linux-s390x@0.25.0': + '@esbuild/linux-s390x@0.25.2': optional: true - '@esbuild/linux-x64@0.25.0': + '@esbuild/linux-x64@0.25.2': optional: true - '@esbuild/netbsd-arm64@0.25.0': + '@esbuild/netbsd-arm64@0.25.2': optional: true - '@esbuild/netbsd-x64@0.25.0': + '@esbuild/netbsd-x64@0.25.2': optional: true - '@esbuild/openbsd-arm64@0.25.0': + '@esbuild/openbsd-arm64@0.25.2': optional: true - '@esbuild/openbsd-x64@0.25.0': + '@esbuild/openbsd-x64@0.25.2': optional: true - '@esbuild/sunos-x64@0.25.0': + '@esbuild/sunos-x64@0.25.2': optional: true - '@esbuild/win32-arm64@0.25.0': + '@esbuild/win32-arm64@0.25.2': optional: true - '@esbuild/win32-ia32@0.25.0': + '@esbuild/win32-ia32@0.25.2': optional: true - '@esbuild/win32-x64@0.25.0': + '@esbuild/win32-x64@0.25.2': optional: true '@hapi/hoek@9.3.0': {} @@ -3128,11 +3300,11 @@ snapshots: dependencies: '@iconify/types': 2.0.0 - '@iconify-json/simple-icons@1.2.27': + '@iconify-json/simple-icons@1.2.32': dependencies: '@iconify/types': 2.0.0 - '@iconify-json/vscode-icons@1.2.16': + '@iconify-json/vscode-icons@1.2.19': dependencies: '@iconify/types': 2.0.0 @@ -3181,56 +3353,56 @@ snapshots: picocolors: 1.1.1 simple-git: 3.27.0 ultramatter: 0.0.4 - zod: 3.24.2 + zod: 3.24.3 transitivePeerDependencies: - supports-color - '@mdit-vue/plugin-component@2.1.3': + '@mdit-vue/plugin-component@2.1.4': dependencies: '@types/markdown-it': 14.1.2 markdown-it: 14.1.0 - '@mdit-vue/plugin-frontmatter@2.1.3': + '@mdit-vue/plugin-frontmatter@2.1.4': dependencies: - '@mdit-vue/types': 2.1.0 + '@mdit-vue/types': 2.1.4 '@types/markdown-it': 14.1.2 gray-matter: 4.0.3 markdown-it: 14.1.0 - '@mdit-vue/plugin-headers@2.1.3': + '@mdit-vue/plugin-headers@2.1.4': dependencies: - '@mdit-vue/shared': 2.1.3 - '@mdit-vue/types': 2.1.0 + '@mdit-vue/shared': 2.1.4 + '@mdit-vue/types': 2.1.4 '@types/markdown-it': 14.1.2 markdown-it: 14.1.0 - '@mdit-vue/plugin-sfc@2.1.3': + '@mdit-vue/plugin-sfc@2.1.4': dependencies: - '@mdit-vue/types': 2.1.0 + '@mdit-vue/types': 2.1.4 '@types/markdown-it': 14.1.2 markdown-it: 14.1.0 - '@mdit-vue/plugin-title@2.1.3': + '@mdit-vue/plugin-title@2.1.4': dependencies: - '@mdit-vue/shared': 2.1.3 - '@mdit-vue/types': 2.1.0 + '@mdit-vue/shared': 2.1.4 + '@mdit-vue/types': 2.1.4 '@types/markdown-it': 14.1.2 markdown-it: 14.1.0 - '@mdit-vue/plugin-toc@2.1.3': + '@mdit-vue/plugin-toc@2.1.4': dependencies: - '@mdit-vue/shared': 2.1.3 - '@mdit-vue/types': 2.1.0 + '@mdit-vue/shared': 2.1.4 + '@mdit-vue/types': 2.1.4 '@types/markdown-it': 14.1.2 markdown-it: 14.1.0 - '@mdit-vue/shared@2.1.3': + '@mdit-vue/shared@2.1.4': dependencies: - '@mdit-vue/types': 2.1.0 + '@mdit-vue/types': 2.1.4 '@types/markdown-it': 14.1.2 markdown-it: 14.1.0 - '@mdit-vue/types@2.1.0': {} + '@mdit-vue/types@2.1.4': {} '@nodelib/fs.scandir@2.1.5': dependencies: @@ -3246,146 +3418,149 @@ snapshots: '@polka/compression@1.0.0-next.28': {} - '@polka/url@1.0.0-next.28': {} + '@polka/url@1.0.0-next.29': {} - '@rollup/plugin-alias@5.1.1(rollup@4.34.9)': + '@rollup/plugin-alias@5.1.1(rollup@4.40.0)': optionalDependencies: - rollup: 4.34.9 + rollup: 4.40.0 - '@rollup/plugin-commonjs@28.0.3(rollup@4.34.9)': + '@rollup/plugin-commonjs@28.0.3(rollup@4.40.0)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.34.9) + '@rollup/pluginutils': 5.1.4(rollup@4.40.0) commondir: 1.0.1 estree-walker: 2.0.2 - fdir: 6.4.3(picomatch@4.0.2) + fdir: 6.4.4(picomatch@4.0.2) is-reference: 1.2.1 magic-string: 0.30.17 picomatch: 4.0.2 optionalDependencies: - rollup: 4.34.9 + rollup: 4.40.0 - '@rollup/plugin-json@6.1.0(rollup@4.34.9)': + '@rollup/plugin-json@6.1.0(rollup@4.40.0)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.34.9) + '@rollup/pluginutils': 5.1.4(rollup@4.40.0) optionalDependencies: - rollup: 4.34.9 + rollup: 4.40.0 - '@rollup/plugin-node-resolve@16.0.0(rollup@4.34.9)': + '@rollup/plugin-node-resolve@16.0.1(rollup@4.40.0)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.34.9) + '@rollup/pluginutils': 5.1.4(rollup@4.40.0) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 resolve: 1.22.10 optionalDependencies: - rollup: 4.34.9 + rollup: 4.40.0 - '@rollup/plugin-replace@6.0.2(rollup@4.34.9)': + '@rollup/plugin-replace@6.0.2(rollup@4.40.0)': dependencies: - '@rollup/pluginutils': 5.1.4(rollup@4.34.9) + '@rollup/pluginutils': 5.1.4(rollup@4.40.0) magic-string: 0.30.17 optionalDependencies: - rollup: 4.34.9 + rollup: 4.40.0 - '@rollup/pluginutils@5.1.4(rollup@4.34.9)': + '@rollup/pluginutils@5.1.4(rollup@4.40.0)': dependencies: - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 estree-walker: 2.0.2 picomatch: 4.0.2 optionalDependencies: - rollup: 4.34.9 + rollup: 4.40.0 + + '@rollup/rollup-android-arm-eabi@4.40.0': + optional: true - '@rollup/rollup-android-arm-eabi@4.34.9': + '@rollup/rollup-android-arm64@4.40.0': optional: true - '@rollup/rollup-android-arm64@4.34.9': + '@rollup/rollup-darwin-arm64@4.40.0': optional: true - '@rollup/rollup-darwin-arm64@4.34.9': + '@rollup/rollup-darwin-x64@4.40.0': optional: true - '@rollup/rollup-darwin-x64@4.34.9': + '@rollup/rollup-freebsd-arm64@4.40.0': optional: true - '@rollup/rollup-freebsd-arm64@4.34.9': + '@rollup/rollup-freebsd-x64@4.40.0': optional: true - '@rollup/rollup-freebsd-x64@4.34.9': + '@rollup/rollup-linux-arm-gnueabihf@4.40.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.34.9': + '@rollup/rollup-linux-arm-musleabihf@4.40.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.34.9': + '@rollup/rollup-linux-arm64-gnu@4.40.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.34.9': + '@rollup/rollup-linux-arm64-musl@4.40.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.34.9': + '@rollup/rollup-linux-loongarch64-gnu@4.40.0': optional: true - '@rollup/rollup-linux-loongarch64-gnu@4.34.9': + '@rollup/rollup-linux-powerpc64le-gnu@4.40.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.34.9': + '@rollup/rollup-linux-riscv64-gnu@4.40.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.34.9': + '@rollup/rollup-linux-riscv64-musl@4.40.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.34.9': + '@rollup/rollup-linux-s390x-gnu@4.40.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.34.9': + '@rollup/rollup-linux-x64-gnu@4.40.0': optional: true - '@rollup/rollup-linux-x64-musl@4.34.9': + '@rollup/rollup-linux-x64-musl@4.40.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.34.9': + '@rollup/rollup-win32-arm64-msvc@4.40.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.34.9': + '@rollup/rollup-win32-ia32-msvc@4.40.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.34.9': + '@rollup/rollup-win32-x64-msvc@4.40.0': optional: true '@sec-ant/readable-stream@0.4.1': {} - '@shikijs/core@3.1.0': + '@shikijs/core@3.2.2': dependencies: - '@shikijs/types': 3.1.0 + '@shikijs/types': 3.2.2 '@shikijs/vscode-textmate': 10.0.2 '@types/hast': 3.0.4 hast-util-to-html: 9.0.5 - '@shikijs/engine-javascript@3.1.0': + '@shikijs/engine-javascript@3.2.2': dependencies: - '@shikijs/types': 3.1.0 + '@shikijs/types': 3.2.2 '@shikijs/vscode-textmate': 10.0.2 - oniguruma-to-es: 3.1.1 + oniguruma-to-es: 4.2.0 - '@shikijs/engine-oniguruma@3.1.0': + '@shikijs/engine-oniguruma@3.2.2': dependencies: - '@shikijs/types': 3.1.0 + '@shikijs/types': 3.2.2 '@shikijs/vscode-textmate': 10.0.2 - '@shikijs/langs@3.1.0': + '@shikijs/langs@3.2.2': dependencies: - '@shikijs/types': 3.1.0 + '@shikijs/types': 3.2.2 - '@shikijs/themes@3.1.0': + '@shikijs/themes@3.2.2': dependencies: - '@shikijs/types': 3.1.0 + '@shikijs/types': 3.2.2 - '@shikijs/transformers@3.1.0': + '@shikijs/transformers@3.2.2': dependencies: - '@shikijs/core': 3.1.0 - '@shikijs/types': 3.1.0 + '@shikijs/core': 3.2.2 + '@shikijs/types': 3.2.2 - '@shikijs/types@3.1.0': + '@shikijs/types@3.2.2': dependencies: '@shikijs/vscode-textmate': 10.0.2 '@types/hast': 3.0.4 @@ -3406,18 +3581,18 @@ snapshots: '@types/cross-spawn@6.0.6': dependencies: - '@types/node': 22.13.9 + '@types/node': 22.14.1 '@types/debug@4.1.12': dependencies: '@types/ms': 2.1.0 - '@types/estree@1.0.6': {} + '@types/estree@1.0.7': {} '@types/fs-extra@11.0.4': dependencies: '@types/jsonfile': 6.1.4 - '@types/node': 22.13.9 + '@types/node': 22.14.1 '@types/hast@3.0.4': dependencies: @@ -3429,7 +3604,7 @@ snapshots: '@types/jsonfile@6.1.4': dependencies: - '@types/node': 22.13.9 + '@types/node': 22.14.1 '@types/linkify-it@5.0.0': {} @@ -3472,13 +3647,13 @@ snapshots: '@types/node@17.0.45': {} - '@types/node@22.13.9': + '@types/node@22.14.1': dependencies: - undici-types: 6.20.0 + undici-types: 6.21.0 '@types/normalize-package-data@2.4.4': {} - '@types/picomatch@3.0.2': {} + '@types/picomatch@4.0.0': {} '@types/postcss-prefix-selector@1.16.3': dependencies: @@ -3486,16 +3661,16 @@ snapshots: '@types/prompts@2.4.9': dependencies: - '@types/node': 22.13.9 + '@types/node': 22.14.1 kleur: 3.0.3 '@types/resolve@1.20.2': {} '@types/sax@1.2.7': dependencies: - '@types/node': 22.13.9 + '@types/node': 22.14.1 - '@types/semver@7.5.8': {} + '@types/semver@7.7.0': {} '@types/sizzle@2.3.9': {} @@ -3505,48 +3680,48 @@ snapshots: '@ungap/structured-clone@1.3.0': {} - '@vitejs/plugin-vue@5.2.1(vite@6.2.1(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0))(vue@3.5.13(typescript@5.8.2))': + '@vitejs/plugin-vue@5.2.3(vite@6.3.2(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1))(vue@3.5.13(typescript@5.8.3))': dependencies: - vite: 6.2.1(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0) - vue: 3.5.13(typescript@5.8.2) + vite: 6.3.2(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1) + vue: 3.5.13(typescript@5.8.3) - '@vitest/expect@3.0.8': + '@vitest/expect@3.1.2': dependencies: - '@vitest/spy': 3.0.8 - '@vitest/utils': 3.0.8 + '@vitest/spy': 3.1.2 + '@vitest/utils': 3.1.2 chai: 5.2.0 tinyrainbow: 2.0.0 - '@vitest/mocker@3.0.8(vite@6.2.1(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0))': + '@vitest/mocker@3.1.2(vite@6.3.2(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1))': dependencies: - '@vitest/spy': 3.0.8 + '@vitest/spy': 3.1.2 estree-walker: 3.0.3 magic-string: 0.30.17 optionalDependencies: - vite: 6.2.1(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0) + vite: 6.3.2(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1) - '@vitest/pretty-format@3.0.8': + '@vitest/pretty-format@3.1.2': dependencies: tinyrainbow: 2.0.0 - '@vitest/runner@3.0.8': + '@vitest/runner@3.1.2': dependencies: - '@vitest/utils': 3.0.8 + '@vitest/utils': 3.1.2 pathe: 2.0.3 - '@vitest/snapshot@3.0.8': + '@vitest/snapshot@3.1.2': dependencies: - '@vitest/pretty-format': 3.0.8 + '@vitest/pretty-format': 3.1.2 magic-string: 0.30.17 pathe: 2.0.3 - '@vitest/spy@3.0.8': + '@vitest/spy@3.1.2': dependencies: tinyspy: 3.0.2 - '@vitest/utils@3.0.8': + '@vitest/utils@3.1.2': dependencies: - '@vitest/pretty-format': 3.0.8 + '@vitest/pretty-format': 3.1.2 loupe: 3.1.3 tinyrainbow: 2.0.0 @@ -3564,7 +3739,7 @@ snapshots: '@vue/compiler-core@3.5.13': dependencies: - '@babel/parser': 7.26.9 + '@babel/parser': 7.27.0 '@vue/shared': 3.5.13 entities: 4.5.0 estree-walker: 2.0.2 @@ -3577,7 +3752,7 @@ snapshots: '@vue/compiler-sfc@3.5.13': dependencies: - '@babel/parser': 7.26.9 + '@babel/parser': 7.27.0 '@vue/compiler-core': 3.5.13 '@vue/compiler-dom': 3.5.13 '@vue/compiler-ssr': 3.5.13 @@ -3597,36 +3772,36 @@ snapshots: de-indent: 1.0.2 he: 1.2.0 - '@vue/devtools-api@7.7.2': + '@vue/devtools-api@7.7.5': dependencies: - '@vue/devtools-kit': 7.7.2 + '@vue/devtools-kit': 7.7.5 - '@vue/devtools-kit@7.7.2': + '@vue/devtools-kit@7.7.5': dependencies: - '@vue/devtools-shared': 7.7.2 - birpc: 0.2.19 + '@vue/devtools-shared': 7.7.5 + birpc: 2.3.0 hookable: 5.5.3 mitt: 3.0.1 perfect-debounce: 1.0.0 speakingurl: 14.0.1 superjson: 2.2.2 - '@vue/devtools-shared@7.7.2': + '@vue/devtools-shared@7.7.5': dependencies: rfdc: 1.4.1 - '@vue/language-core@2.2.8(typescript@5.8.2)': + '@vue/language-core@2.2.8(typescript@5.8.3)': dependencies: '@volar/language-core': 2.4.12 '@vue/compiler-dom': 3.5.13 '@vue/compiler-vue2': 2.7.16 '@vue/shared': 3.5.13 - alien-signals: 1.0.4 + alien-signals: 1.0.13 minimatch: 9.0.5 muggle-string: 0.4.1 path-browserify: 1.0.1 optionalDependencies: - typescript: 5.8.2 + typescript: 5.8.3 '@vue/reactivity@3.5.13': dependencies: @@ -3644,41 +3819,37 @@ snapshots: '@vue/shared': 3.5.13 csstype: 3.1.3 - '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.8.2))': + '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.8.3))': dependencies: '@vue/compiler-ssr': 3.5.13 '@vue/shared': 3.5.13 - vue: 3.5.13(typescript@5.8.2) + vue: 3.5.13(typescript@5.8.3) '@vue/shared@3.5.13': {} - '@vueuse/core@12.8.2(typescript@5.8.2)': + '@vueuse/core@13.1.0(vue@3.5.13(typescript@5.8.3))': dependencies: '@types/web-bluetooth': 0.0.21 - '@vueuse/metadata': 12.8.2 - '@vueuse/shared': 12.8.2(typescript@5.8.2) - vue: 3.5.13(typescript@5.8.2) - transitivePeerDependencies: - - typescript + '@vueuse/metadata': 13.1.0 + '@vueuse/shared': 13.1.0(vue@3.5.13(typescript@5.8.3)) + vue: 3.5.13(typescript@5.8.3) - '@vueuse/integrations@12.8.2(axios@1.8.2(debug@4.4.0))(focus-trap@7.6.4)(typescript@5.8.2)': + '@vueuse/integrations@13.1.0(axios@1.8.4(debug@4.4.0))(focus-trap@7.6.4)(vue@3.5.13(typescript@5.8.3))': dependencies: - '@vueuse/core': 12.8.2(typescript@5.8.2) - '@vueuse/shared': 12.8.2(typescript@5.8.2) - vue: 3.5.13(typescript@5.8.2) + '@vueuse/core': 13.1.0(vue@3.5.13(typescript@5.8.3)) + '@vueuse/shared': 13.1.0(vue@3.5.13(typescript@5.8.3)) + vue: 3.5.13(typescript@5.8.3) optionalDependencies: - axios: 1.8.2(debug@4.4.0) + axios: 1.8.4(debug@4.4.0) focus-trap: 7.6.4 - transitivePeerDependencies: - - typescript - '@vueuse/metadata@12.8.2': {} + '@vueuse/metadata@13.1.0': {} - '@vueuse/shared@12.8.2(typescript@5.8.2)': + '@vueuse/shared@13.1.0(vue@3.5.13(typescript@5.8.3))': dependencies: - vue: 3.5.13(typescript@5.8.2) - transitivePeerDependencies: - - typescript + vue: 3.5.13(typescript@5.8.3) + + '@xmldom/xmldom@0.9.8': {} abort-controller@3.0.0: dependencies: @@ -3688,23 +3859,23 @@ snapshots: add-stream@1.0.0: {} - algoliasearch@5.20.4: + algoliasearch@5.23.4: dependencies: - '@algolia/client-abtesting': 5.20.4 - '@algolia/client-analytics': 5.20.4 - '@algolia/client-common': 5.20.4 - '@algolia/client-insights': 5.20.4 - '@algolia/client-personalization': 5.20.4 - '@algolia/client-query-suggestions': 5.20.4 - '@algolia/client-search': 5.20.4 - '@algolia/ingestion': 1.20.4 - '@algolia/monitoring': 1.20.4 - '@algolia/recommend': 5.20.4 - '@algolia/requester-browser-xhr': 5.20.4 - '@algolia/requester-fetch': 5.20.4 - '@algolia/requester-node-http': 5.20.4 + '@algolia/client-abtesting': 5.23.4 + '@algolia/client-analytics': 5.23.4 + '@algolia/client-common': 5.23.4 + '@algolia/client-insights': 5.23.4 + '@algolia/client-personalization': 5.23.4 + '@algolia/client-query-suggestions': 5.23.4 + '@algolia/client-search': 5.23.4 + '@algolia/ingestion': 1.23.4 + '@algolia/monitoring': 1.23.4 + '@algolia/recommend': 5.23.4 + '@algolia/requester-browser-xhr': 5.23.4 + '@algolia/requester-fetch': 5.23.4 + '@algolia/requester-node-http': 5.23.4 - alien-signals@1.0.4: {} + alien-signals@1.0.13: {} ansi-colors@4.1.3: {} @@ -3736,7 +3907,7 @@ snapshots: asynckit@0.4.0: {} - axios@1.8.2(debug@4.4.0): + axios@1.8.4(debug@4.4.0): dependencies: follow-redirects: 1.15.9(debug@4.4.0) form-data: 4.0.2 @@ -3744,11 +3915,13 @@ snapshots: transitivePeerDependencies: - debug + bail@2.0.2: {} + balanced-match@1.0.2: {} base64-js@1.5.1: {} - birpc@0.2.19: {} + birpc@2.3.0: {} boolbase@1.0.0: {} @@ -3769,6 +3942,8 @@ snapshots: dependencies: run-applescript: 7.0.0 + byte-size@9.0.1: {} + cac@6.7.14: {} call-bind-apply-helpers@1.0.2: @@ -3792,6 +3967,8 @@ snapshots: character-entities-legacy@3.0.0: {} + character-entities@2.0.2: {} + check-error@2.1.1: {} cheerio-select@1.6.0: @@ -3827,6 +4004,12 @@ snapshots: slice-ansi: 5.0.0 string-width: 7.2.0 + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + color-convert@2.0.1: dependencies: color-name: 1.1.4 @@ -3845,8 +4028,6 @@ snapshots: commander@6.2.1: {} - commander@9.2.0: {} - commondir@1.0.1: {} compare-func@2.0.0: @@ -3856,7 +4037,7 @@ snapshots: confbox@0.1.8: {} - confbox@0.2.1: {} + confbox@0.2.2: {} conventional-changelog-angular@8.0.0: dependencies: @@ -3969,6 +4150,10 @@ snapshots: dependencies: ms: 2.1.3 + decode-named-character-reference@1.1.0: + dependencies: + character-entities: 2.0.2 + deep-eql@5.0.2: {} deepmerge@4.3.1: {} @@ -4055,38 +4240,40 @@ snapshots: has-tostringtag: 1.0.2 hasown: 2.0.2 - esbuild@0.25.0: + esbuild@0.25.2: optionalDependencies: - '@esbuild/aix-ppc64': 0.25.0 - '@esbuild/android-arm': 0.25.0 - '@esbuild/android-arm64': 0.25.0 - '@esbuild/android-x64': 0.25.0 - '@esbuild/darwin-arm64': 0.25.0 - '@esbuild/darwin-x64': 0.25.0 - '@esbuild/freebsd-arm64': 0.25.0 - '@esbuild/freebsd-x64': 0.25.0 - '@esbuild/linux-arm': 0.25.0 - '@esbuild/linux-arm64': 0.25.0 - '@esbuild/linux-ia32': 0.25.0 - '@esbuild/linux-loong64': 0.25.0 - '@esbuild/linux-mips64el': 0.25.0 - '@esbuild/linux-ppc64': 0.25.0 - '@esbuild/linux-riscv64': 0.25.0 - '@esbuild/linux-s390x': 0.25.0 - '@esbuild/linux-x64': 0.25.0 - '@esbuild/netbsd-arm64': 0.25.0 - '@esbuild/netbsd-x64': 0.25.0 - '@esbuild/openbsd-arm64': 0.25.0 - '@esbuild/openbsd-x64': 0.25.0 - '@esbuild/sunos-x64': 0.25.0 - '@esbuild/win32-arm64': 0.25.0 - '@esbuild/win32-ia32': 0.25.0 - '@esbuild/win32-x64': 0.25.0 + '@esbuild/aix-ppc64': 0.25.2 + '@esbuild/android-arm': 0.25.2 + '@esbuild/android-arm64': 0.25.2 + '@esbuild/android-x64': 0.25.2 + '@esbuild/darwin-arm64': 0.25.2 + '@esbuild/darwin-x64': 0.25.2 + '@esbuild/freebsd-arm64': 0.25.2 + '@esbuild/freebsd-x64': 0.25.2 + '@esbuild/linux-arm': 0.25.2 + '@esbuild/linux-arm64': 0.25.2 + '@esbuild/linux-ia32': 0.25.2 + '@esbuild/linux-loong64': 0.25.2 + '@esbuild/linux-mips64el': 0.25.2 + '@esbuild/linux-ppc64': 0.25.2 + '@esbuild/linux-riscv64': 0.25.2 + '@esbuild/linux-s390x': 0.25.2 + '@esbuild/linux-x64': 0.25.2 + '@esbuild/netbsd-arm64': 0.25.2 + '@esbuild/netbsd-x64': 0.25.2 + '@esbuild/openbsd-arm64': 0.25.2 + '@esbuild/openbsd-x64': 0.25.2 + '@esbuild/sunos-x64': 0.25.2 + '@esbuild/win32-arm64': 0.25.2 + '@esbuild/win32-ia32': 0.25.2 + '@esbuild/win32-x64': 0.25.2 escalade@3.2.0: {} escape-goat@3.0.0: {} + escape-string-regexp@5.0.0: {} + esm@3.2.25: {} esprima@4.0.1: {} @@ -4095,7 +4282,7 @@ snapshots: estree-walker@3.0.3: dependencies: - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 event-target-shim@5.0.1: {} @@ -4121,7 +4308,7 @@ snapshots: cross-spawn: 7.0.6 figures: 6.1.0 get-stream: 9.0.1 - human-signals: 8.0.0 + human-signals: 8.0.1 is-plain-obj: 4.1.0 is-stream: 4.0.1 npm-run-path: 6.0.0 @@ -4130,14 +4317,16 @@ snapshots: strip-final-newline: 4.0.0 yoctocolors: 2.1.1 - expect-type@1.2.0: {} + expect-type@1.2.1: {} - exsolve@1.0.2: {} + exsolve@1.0.5: {} extend-shallow@2.0.1: dependencies: is-extendable: 0.1.1 + extend@3.0.2: {} + fast-glob@3.3.3: dependencies: '@nodelib/fs.stat': 2.0.5 @@ -4150,7 +4339,11 @@ snapshots: dependencies: reusify: 1.1.0 - fdir@6.4.3(picomatch@4.0.2): + fault@2.0.1: + dependencies: + format: 0.2.2 + + fdir@6.4.4(picomatch@4.0.2): optionalDependencies: picomatch: 4.0.2 @@ -4190,6 +4383,8 @@ snapshots: es-set-tostringtag: 2.1.0 mime-types: 2.1.35 + format@0.2.2: {} + fs-extra@11.3.0: dependencies: graceful-fs: 4.2.11 @@ -4201,6 +4396,8 @@ snapshots: function-bind@1.1.2: {} + get-caller-file@2.0.5: {} + get-east-asian-width@1.3.0: {} get-intrinsic@1.3.0: @@ -4341,11 +4538,11 @@ snapshots: human-signals@5.0.0: {} - human-signals@8.0.0: {} + human-signals@8.0.1: {} ieee754@1.2.1: {} - index-to-position@0.1.2: {} + index-to-position@1.1.0: {} is-core-module@2.16.1: dependencies: @@ -4385,7 +4582,7 @@ snapshots: is-reference@1.2.1: dependencies: - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 is-stream@3.0.0: {} @@ -4452,22 +4649,22 @@ snapshots: dependencies: uc.micro: 2.1.0 - lint-staged@15.4.3: + lint-staged@15.5.1: dependencies: chalk: 5.4.1 commander: 13.1.0 debug: 4.4.0 execa: 8.0.1 lilconfig: 3.1.3 - listr2: 8.2.5 + listr2: 8.3.2 micromatch: 4.0.8 pidtree: 0.6.0 string-argv: 0.3.2 - yaml: 2.7.0 + yaml: 2.7.1 transitivePeerDependencies: - supports-color - listr2@8.2.5: + listr2@8.3.2: dependencies: cli-truncate: 4.0.0 colorette: 2.0.20 @@ -4480,7 +4677,7 @@ snapshots: dependencies: mlly: 1.7.4 pkg-types: 2.1.0 - quansync: 0.2.8 + quansync: 0.2.10 lodash._reinterpolate@3.0.0: {} @@ -4508,11 +4705,13 @@ snapshots: strip-ansi: 7.1.0 wrap-ansi: 9.0.0 + longest-streak@3.1.0: {} + loupe@3.1.3: {} lru-cache@10.4.3: {} - lru-cache@11.0.2: {} + lru-cache@11.1.0: {} magic-string@0.30.17: dependencies: @@ -4554,6 +4753,8 @@ snapshots: punycode.js: 2.3.1 uc.micro: 2.1.0 + markdown-title@1.0.2: {} + math-intrinsics@1.1.0: {} mathjax-full@3.2.2: @@ -4561,7 +4762,40 @@ snapshots: esm: 3.2.25 mhchemparser: 4.2.1 mj-context-menu: 0.6.1 - speech-rule-engine: 4.0.7 + speech-rule-engine: 4.1.2 + + mdast-util-from-markdown@2.0.2: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + decode-named-character-reference: 1.1.0 + devlop: 1.1.0 + mdast-util-to-string: 4.0.0 + micromark: 4.0.2 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-decode-string: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + unist-util-stringify-position: 4.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-frontmatter@2.0.1: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + escape-string-regexp: 5.0.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + micromark-extension-frontmatter: 2.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-phrasing@4.1.0: + dependencies: + '@types/mdast': 4.0.4 + unist-util-is: 6.0.0 mdast-util-to-hast@13.2.0: dependencies: @@ -4575,6 +4809,22 @@ snapshots: unist-util-visit: 5.0.0 vfile: 6.0.3 + 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.1 + micromark-util-decode-string: 2.0.1 + unist-util-visit: 5.0.0 + zwitch: 2.0.4 + + mdast-util-to-string@4.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdurl@2.0.0: {} mensch@0.3.4: {} @@ -4589,28 +4839,155 @@ snapshots: mhchemparser@4.2.1: {} + micromark-core-commonmark@2.0.3: + dependencies: + decode-named-character-reference: 1.1.0 + devlop: 1.1.0 + micromark-factory-destination: 2.0.1 + micromark-factory-label: 2.0.1 + micromark-factory-space: 2.0.1 + micromark-factory-title: 2.0.1 + micromark-factory-whitespace: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-html-tag-name: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-frontmatter@2.0.0: + dependencies: + fault: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-destination@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-label@2.0.1: + dependencies: + devlop: 1.1.0 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-space@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-types: 2.0.2 + + micromark-factory-title@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-whitespace@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + micromark-util-character@2.1.1: dependencies: micromark-util-symbol: 2.0.1 micromark-util-types: 2.0.2 + micromark-util-chunked@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-classify-character@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-combine-extensions@2.0.1: + dependencies: + micromark-util-chunked: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-decode-numeric-character-reference@2.0.2: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-decode-string@2.0.1: + dependencies: + decode-named-character-reference: 1.1.0 + micromark-util-character: 2.1.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-symbol: 2.0.1 + micromark-util-encode@2.0.1: {} + micromark-util-html-tag-name@2.0.1: {} + + micromark-util-normalize-identifier@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-resolve-all@2.0.1: + dependencies: + micromark-util-types: 2.0.2 + micromark-util-sanitize-uri@2.0.1: dependencies: micromark-util-character: 2.1.1 micromark-util-encode: 2.0.1 micromark-util-symbol: 2.0.1 + micromark-util-subtokenize@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + micromark-util-symbol@2.0.1: {} micromark-util-types@2.0.2: {} + micromark@4.0.2: + dependencies: + '@types/debug': 4.1.12 + debug: 4.4.0 + decode-named-character-reference: 1.1.0 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.3 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-combine-extensions: 2.0.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-encode: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + transitivePeerDependencies: + - supports-color + micromatch@4.0.8: dependencies: braces: 3.0.3 picomatch: 2.3.1 + millify@6.1.0: + dependencies: + yargs: 17.7.2 + mime-db@1.52.0: {} mime-types@2.1.35: @@ -4646,7 +5023,7 @@ snapshots: acorn: 8.14.1 pathe: 2.0.3 pkg-types: 1.3.1 - ufo: 1.5.4 + ufo: 1.6.1 mrmime@2.0.1: {} @@ -4654,9 +5031,9 @@ snapshots: muggle-string@0.4.1: {} - nanoid@3.3.9: {} + nanoid@3.3.11: {} - nanoid@5.1.3: {} + nanoid@5.1.5: {} neo-async@2.6.2: {} @@ -4691,9 +5068,12 @@ snapshots: dependencies: mimic-function: 5.0.1 - oniguruma-to-es@3.1.1: + oniguruma-parser@0.11.2: {} + + oniguruma-to-es@4.2.0: dependencies: emoji-regex-xs: 1.0.0 + oniguruma-parser: 0.11.2 regex: 6.0.1 regex-recursion: 6.0.2 @@ -4702,10 +5082,10 @@ snapshots: file-type: 18.7.0 get-stdin: 9.0.0 meow: 12.1.1 - open: 10.1.0 + open: 10.1.1 tempy: 3.1.0 - open@10.1.0: + open@10.1.1: dependencies: default-browser: 5.2.1 define-lazy-prop: 3.0.0 @@ -4730,13 +5110,13 @@ snapshots: package-manager-detector@0.2.11: dependencies: - quansync: 0.2.8 + quansync: 0.2.10 - parse-json@8.1.0: + parse-json@8.3.0: dependencies: '@babel/code-frame': 7.26.2 - index-to-position: 0.1.2 - type-fest: 4.37.0 + index-to-position: 1.1.0 + type-fest: 4.40.0 parse-ms@4.0.0: {} @@ -4756,7 +5136,7 @@ snapshots: path-scurry@2.0.0: dependencies: - lru-cache: 11.0.2 + lru-cache: 11.1.0 minipass: 7.1.2 path-to-regexp@6.3.0: {} @@ -4789,37 +5169,37 @@ snapshots: pkg-types@2.1.0: dependencies: - confbox: 0.2.1 - exsolve: 1.0.2 + confbox: 0.2.2 + exsolve: 1.0.5 pathe: 2.0.3 - playwright-chromium@1.51.0: + playwright-chromium@1.52.0: dependencies: - playwright-core: 1.51.0 + playwright-core: 1.52.0 - playwright-core@1.51.0: {} + playwright-core@1.52.0: {} polka@1.0.0-next.28: dependencies: - '@polka/url': 1.0.0-next.28 + '@polka/url': 1.0.0-next.29 trouter: 4.0.0 - postcss-prefix-selector@2.1.0(postcss@8.5.3): + postcss-prefix-selector@2.1.1(postcss@8.5.3): dependencies: postcss: 8.5.3 - postcss-rtlcss@5.6.0(postcss@8.5.3): + postcss-rtlcss@5.7.0(postcss@8.5.3): dependencies: postcss: 8.5.3 rtlcss: 4.3.0 postcss@8.5.3: dependencies: - nanoid: 3.3.9 + nanoid: 3.3.11 picocolors: 1.1.1 source-map-js: 1.2.1 - preact@10.26.4: {} + preact@10.26.5: {} prettier@3.5.3: {} @@ -4842,7 +5222,7 @@ snapshots: punycode@2.3.1: {} - quansync@0.2.8: {} + quansync@0.2.10: {} queue-microtask@1.2.3: {} @@ -4850,14 +5230,14 @@ snapshots: dependencies: find-up-simple: 1.0.1 read-pkg: 9.0.1 - type-fest: 4.37.0 + type-fest: 4.40.0 read-pkg@9.0.1: dependencies: '@types/normalize-package-data': 2.4.4 normalize-package-data: 6.0.2 - parse-json: 8.1.0 - type-fest: 4.37.0 + parse-json: 8.3.0 + type-fest: 4.40.0 unicorn-magic: 0.1.0 readable-stream@4.7.0: @@ -4886,6 +5266,41 @@ snapshots: regexparam@3.0.0: {} + remark-frontmatter@5.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-frontmatter: 2.0.1 + micromark-extension-frontmatter: 2.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-parse@11.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.2 + micromark-util-types: 2.0.2 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-stringify@11.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-to-markdown: 2.1.2 + unified: 11.0.5 + + remark@15.0.1: + dependencies: + '@types/mdast': 4.0.4 + remark-parse: 11.0.0 + remark-stringify: 11.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + require-directory@2.1.1: {} + resolve-pkg-maps@1.0.0: {} resolve@1.22.10: @@ -4908,48 +5323,49 @@ snapshots: glob: 11.0.1 package-json-from-dist: 1.0.1 - rollup-plugin-dts@6.1.1(rollup@4.34.9)(typescript@5.8.2): + rollup-plugin-dts@6.1.1(rollup@4.40.0)(typescript@5.8.3): dependencies: magic-string: 0.30.17 - rollup: 4.34.9 - typescript: 5.8.2 + rollup: 4.40.0 + typescript: 5.8.3 optionalDependencies: '@babel/code-frame': 7.26.2 - rollup-plugin-esbuild@6.2.1(esbuild@0.25.0)(rollup@4.34.9): + rollup-plugin-esbuild@6.2.1(esbuild@0.25.2)(rollup@4.40.0): dependencies: debug: 4.4.0 es-module-lexer: 1.6.0 - esbuild: 0.25.0 + esbuild: 0.25.2 get-tsconfig: 4.10.0 - rollup: 4.34.9 + rollup: 4.40.0 unplugin-utils: 0.2.4 transitivePeerDependencies: - supports-color - rollup@4.34.9: + rollup@4.40.0: dependencies: - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.34.9 - '@rollup/rollup-android-arm64': 4.34.9 - '@rollup/rollup-darwin-arm64': 4.34.9 - '@rollup/rollup-darwin-x64': 4.34.9 - '@rollup/rollup-freebsd-arm64': 4.34.9 - '@rollup/rollup-freebsd-x64': 4.34.9 - '@rollup/rollup-linux-arm-gnueabihf': 4.34.9 - '@rollup/rollup-linux-arm-musleabihf': 4.34.9 - '@rollup/rollup-linux-arm64-gnu': 4.34.9 - '@rollup/rollup-linux-arm64-musl': 4.34.9 - '@rollup/rollup-linux-loongarch64-gnu': 4.34.9 - '@rollup/rollup-linux-powerpc64le-gnu': 4.34.9 - '@rollup/rollup-linux-riscv64-gnu': 4.34.9 - '@rollup/rollup-linux-s390x-gnu': 4.34.9 - '@rollup/rollup-linux-x64-gnu': 4.34.9 - '@rollup/rollup-linux-x64-musl': 4.34.9 - '@rollup/rollup-win32-arm64-msvc': 4.34.9 - '@rollup/rollup-win32-ia32-msvc': 4.34.9 - '@rollup/rollup-win32-x64-msvc': 4.34.9 + '@rollup/rollup-android-arm-eabi': 4.40.0 + '@rollup/rollup-android-arm64': 4.40.0 + '@rollup/rollup-darwin-arm64': 4.40.0 + '@rollup/rollup-darwin-x64': 4.40.0 + '@rollup/rollup-freebsd-arm64': 4.40.0 + '@rollup/rollup-freebsd-x64': 4.40.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.40.0 + '@rollup/rollup-linux-arm-musleabihf': 4.40.0 + '@rollup/rollup-linux-arm64-gnu': 4.40.0 + '@rollup/rollup-linux-arm64-musl': 4.40.0 + '@rollup/rollup-linux-loongarch64-gnu': 4.40.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.40.0 + '@rollup/rollup-linux-riscv64-gnu': 4.40.0 + '@rollup/rollup-linux-riscv64-musl': 4.40.0 + '@rollup/rollup-linux-s390x-gnu': 4.40.0 + '@rollup/rollup-linux-x64-gnu': 4.40.0 + '@rollup/rollup-linux-x64-musl': 4.40.0 + '@rollup/rollup-win32-arm64-msvc': 4.40.0 + '@rollup/rollup-win32-ia32-msvc': 4.40.0 + '@rollup/rollup-win32-x64-msvc': 4.40.0 fsevents: 2.3.3 rtlcss@4.3.0: @@ -4986,14 +5402,14 @@ snapshots: shebang-regex@3.0.0: {} - shiki@3.1.0: + shiki@3.2.2: dependencies: - '@shikijs/core': 3.1.0 - '@shikijs/engine-javascript': 3.1.0 - '@shikijs/engine-oniguruma': 3.1.0 - '@shikijs/langs': 3.1.0 - '@shikijs/themes': 3.1.0 - '@shikijs/types': 3.1.0 + '@shikijs/core': 3.2.2 + '@shikijs/engine-javascript': 3.2.2 + '@shikijs/engine-oniguruma': 3.2.2 + '@shikijs/langs': 3.2.2 + '@shikijs/themes': 3.2.2 + '@shikijs/types': 3.2.2 '@shikijs/vscode-textmate': 10.0.2 '@types/hast': 3.0.4 @@ -5001,7 +5417,7 @@ snapshots: signal-exit@4.1.0: {} - simple-git-hooks@2.11.1: {} + simple-git-hooks@2.12.1: {} simple-git@3.27.0: dependencies: @@ -5013,7 +5429,7 @@ snapshots: sirv@3.0.1: dependencies: - '@polka/url': 1.0.0-next.28 + '@polka/url': 1.0.0-next.29 mrmime: 2.0.1 totalist: 3.0.1 @@ -5060,17 +5476,17 @@ snapshots: speakingurl@14.0.1: {} - speech-rule-engine@4.0.7: + speech-rule-engine@4.1.2: dependencies: - commander: 9.2.0 + '@xmldom/xmldom': 0.9.8 + commander: 13.1.0 wicked-good-xpath: 1.3.0 - xmldom-sre: 0.1.31 sprintf-js@1.0.3: {} stackback@0.0.2: {} - std-env@3.8.1: {} + std-env@3.9.0: {} stdin-discarder@0.2.2: {} @@ -5149,9 +5565,9 @@ snapshots: tinyexec@0.3.2: {} - tinyglobby@0.2.12: + tinyglobby@0.2.13: dependencies: - fdir: 6.4.3(picomatch@4.0.2) + fdir: 6.4.4(picomatch@4.0.2) picomatch: 4.0.2 tinypool@1.0.2: {} @@ -5169,12 +5585,16 @@ snapshots: '@tokenizer/token': 0.3.0 ieee754: 1.2.1 + tokenx@0.4.1: {} + totalist@3.0.1: {} tr46@0.0.3: {} trim-lines@3.0.1: {} + trough@2.2.0: {} + trouter@4.0.0: dependencies: regexparam: 3.0.0 @@ -5185,25 +5605,35 @@ snapshots: type-fest@2.19.0: {} - type-fest@4.37.0: {} + type-fest@4.40.0: {} - typescript@5.8.2: {} + typescript@5.8.3: {} uc.micro@2.1.0: {} - ufo@1.5.4: {} + ufo@1.6.1: {} uglify-js@3.19.3: optional: true ultramatter@0.0.4: {} - undici-types@6.20.0: {} + undici-types@6.21.0: {} unicorn-magic@0.1.0: {} unicorn-magic@0.3.0: {} + unified@11.0.5: + dependencies: + '@types/unist': 3.0.3 + bail: 2.0.2 + devlop: 1.1.0 + extend: 3.0.2 + is-plain-obj: 4.1.0 + trough: 2.2.0 + vfile: 6.0.3 + unique-string@3.0.0: dependencies: crypto-random-string: 4.0.0 @@ -5216,6 +5646,12 @@ snapshots: dependencies: '@types/unist': 3.0.3 + unist-util-remove@4.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + unist-util-stringify-position@4.0.0: dependencies: '@types/unist': 3.0.3 @@ -5255,13 +5691,13 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-node@3.0.8(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0): + vite-node@3.1.2(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1): dependencies: cac: 6.7.14 debug: 4.4.0 es-module-lexer: 1.6.0 pathe: 2.0.3 - vite: 6.2.1(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0) + vite: 6.3.2(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1) transitivePeerDependencies: - '@types/node' - jiti @@ -5276,50 +5712,70 @@ snapshots: - tsx - yaml - vite@6.2.1(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0): + vite@6.3.2(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1): dependencies: - esbuild: 0.25.0 + esbuild: 0.25.2 + fdir: 6.4.4(picomatch@4.0.2) + picomatch: 4.0.2 postcss: 8.5.3 - rollup: 4.34.9 + rollup: 4.40.0 + tinyglobby: 0.2.13 optionalDependencies: - '@types/node': 22.13.9 + '@types/node': 22.14.1 fsevents: 2.3.3 jiti: 1.21.7 - yaml: 2.7.0 + yaml: 2.7.1 - vitepress-plugin-group-icons@1.3.6: + vitepress-plugin-group-icons@1.5.2: dependencies: '@iconify-json/logos': 1.2.4 - '@iconify-json/vscode-icons': 1.2.16 + '@iconify-json/vscode-icons': 1.2.19 '@iconify/utils': 2.3.0 transitivePeerDependencies: - supports-color - vitest@3.0.8(@types/debug@4.1.12)(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0): + vitepress-plugin-llms@1.1.0: dependencies: - '@vitest/expect': 3.0.8 - '@vitest/mocker': 3.0.8(vite@6.2.1(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0)) - '@vitest/pretty-format': 3.0.8 - '@vitest/runner': 3.0.8 - '@vitest/snapshot': 3.0.8 - '@vitest/spy': 3.0.8 - '@vitest/utils': 3.0.8 + byte-size: 9.0.1 + gray-matter: 4.0.3 + markdown-title: 1.0.2 + millify: 6.1.0 + minimatch: 10.0.1 + picocolors: 1.1.1 + remark: 15.0.1 + remark-frontmatter: 5.0.0 + tokenx: 0.4.1 + unist-util-remove: 4.0.0 + transitivePeerDependencies: + - '@75lb/nature' + - supports-color + + vitest@3.1.2(@types/debug@4.1.12)(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1): + dependencies: + '@vitest/expect': 3.1.2 + '@vitest/mocker': 3.1.2(vite@6.3.2(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1)) + '@vitest/pretty-format': 3.1.2 + '@vitest/runner': 3.1.2 + '@vitest/snapshot': 3.1.2 + '@vitest/spy': 3.1.2 + '@vitest/utils': 3.1.2 chai: 5.2.0 debug: 4.4.0 - expect-type: 1.2.0 + expect-type: 1.2.1 magic-string: 0.30.17 pathe: 2.0.3 - std-env: 3.8.1 + std-env: 3.9.0 tinybench: 2.9.0 tinyexec: 0.3.2 + tinyglobby: 0.2.13 tinypool: 1.0.2 tinyrainbow: 2.0.0 - vite: 6.2.1(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0) - vite-node: 3.0.8(@types/node@22.13.9)(jiti@1.21.7)(yaml@2.7.0) + vite: 6.3.2(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1) + vite-node: 3.1.2(@types/node@22.14.1)(jiti@1.21.7)(yaml@2.7.1) why-is-node-running: 2.3.0 optionalDependencies: '@types/debug': 4.1.12 - '@types/node': 22.13.9 + '@types/node': 22.14.1 transitivePeerDependencies: - jiti - less @@ -5336,25 +5792,25 @@ snapshots: vscode-uri@3.1.0: {} - vue-tsc@2.2.8(typescript@5.8.2): + vue-tsc@2.2.8(typescript@5.8.3): dependencies: '@volar/typescript': 2.4.12 - '@vue/language-core': 2.2.8(typescript@5.8.2) - typescript: 5.8.2 + '@vue/language-core': 2.2.8(typescript@5.8.3) + typescript: 5.8.3 - vue@3.5.13(typescript@5.8.2): + vue@3.5.13(typescript@5.8.3): dependencies: '@vue/compiler-dom': 3.5.13 '@vue/compiler-sfc': 3.5.13 '@vue/runtime-dom': 3.5.13 - '@vue/server-renderer': 3.5.13(vue@3.5.13(typescript@5.8.2)) + '@vue/server-renderer': 3.5.13(vue@3.5.13(typescript@5.8.3)) '@vue/shared': 3.5.13 optionalDependencies: - typescript: 5.8.2 + typescript: 5.8.3 - wait-on@8.0.2(debug@4.4.0): + wait-on@8.0.3(debug@4.4.0): dependencies: - axios: 1.8.2(debug@4.4.0) + axios: 1.8.4(debug@4.4.0) joi: 17.13.3 lodash: 4.17.21 minimist: 1.2.8 @@ -5411,12 +5867,24 @@ snapshots: string-width: 7.2.0 strip-ansi: 7.1.0 - xmldom-sre@0.1.31: {} + y18n@5.0.8: {} + + yaml@2.7.1: {} + + yargs-parser@21.1.1: {} - yaml@2.7.0: {} + yargs@17.7.2: + dependencies: + cliui: 8.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 yoctocolors@2.1.1: {} - zod@3.24.2: {} + zod@3.24.3: {} zwitch@2.0.4: {} diff --git a/rollup.config.ts b/rollup.config.ts index 6bf7ff1b..77a2a610 100644 --- a/rollup.config.ts +++ b/rollup.config.ts @@ -55,24 +55,17 @@ const esmBuild: RollupOptions = { const typesExternal = [ ...external, - /\/vitepress\/(?!(dist|node_modules)\/).*\.d\.ts$/, + /\/vitepress\/(?!(dist|node_modules|vitepress)\/).*\.d\.ts$/, 'source-map-js', 'fast-glob' ] const dtsNode = dts({ respectExternal: true, - tsconfig: 'src/node/tsconfig.json' + tsconfig: 'src/node/tsconfig.json', + compilerOptions: { preserveSymlinks: false } }) -const originalResolveId = dtsNode.resolveId - -dtsNode.resolveId = async function (source, importer) { - const res = await (originalResolveId as Function).call(this, source, importer) - if (res?.id) res.id = await fs.realpath(res.id) - return res -} - const nodeTypes: RollupOptions = { input: 'src/node/index.ts', output: { diff --git a/src/client/app/utils.ts b/src/client/app/utils.ts index 53ef6e51..b734179c 100644 --- a/src/client/app/utils.ts +++ b/src/client/app/utils.ts @@ -1,10 +1,5 @@ -import { - h, - onMounted, - onUnmounted, - shallowRef, - type AsyncComponentLoader -} from 'vue' +import { tryOnUnmounted } from '@vueuse/core' +import { h, onMounted, shallowRef, type AsyncComponentLoader } from 'vue' import { EXTERNAL_URL_RE, inBrowser, @@ -81,7 +76,7 @@ export let contentUpdatedCallbacks: (() => any)[] = [] */ export function onContentUpdated(fn: () => any) { contentUpdatedCallbacks.push(fn) - onUnmounted(() => { + tryOnUnmounted(() => { contentUpdatedCallbacks = contentUpdatedCallbacks.filter((f) => f !== fn) }) } diff --git a/src/client/theme-default/Layout.vue b/src/client/theme-default/Layout.vue index 69284148..30ebe491 100644 --- a/src/client/theme-default/Layout.vue +++ b/src/client/theme-default/Layout.vue @@ -1,6 +1,5 @@ diff --git a/src/client/theme-default/components/VPContent.vue b/src/client/theme-default/components/VPContent.vue index 3b2dbdf6..8b033785 100644 --- a/src/client/theme-default/components/VPContent.vue +++ b/src/client/theme-default/components/VPContent.vue @@ -1,23 +1,20 @@ diff --git a/src/client/theme-default/components/VPDocAsideSponsors.vue b/src/client/theme-default/components/VPDocAsideSponsors.vue index dc9f8d0e..9e023dbc 100644 --- a/src/client/theme-default/components/VPDocAsideSponsors.vue +++ b/src/client/theme-default/components/VPDocAsideSponsors.vue @@ -12,6 +12,6 @@ defineProps<{ diff --git a/src/client/theme-default/components/VPDocOutlineItem.vue b/src/client/theme-default/components/VPDocOutlineItem.vue index 89ea9710..c945fc21 100644 --- a/src/client/theme-default/components/VPDocOutlineItem.vue +++ b/src/client/theme-default/components/VPDocOutlineItem.vue @@ -1,8 +1,8 @@