From d3b933cca57e55d8dd8286e4e4b0e0257837d07d Mon Sep 17 00:00:00 2001 From: YunYouJun Date: Wed, 25 Mar 2026 02:11:31 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E9=87=8D=E6=9E=84=E4=B8=BA=20monorepo?= =?UTF-8?q?=20=E7=BB=93=E6=9E=84=EF=BC=8C=E6=96=B0=E5=A2=9E=20cook=20CLI?= =?UTF-8?q?=20=E5=92=8C=20types=20=E5=85=B1=E4=BA=AB=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将 scripts/ 迁移至 packages/cook CLI 工具(飞书 fetch、CSV convert、单元测试) - 新增 packages/types 共享类型包,抽取 app/types 类型定义 - 更新依赖(nuxt 4.4、vite 8、eslint 10.1 等) - 新增 vitest coverage 配置 - 更新文档和配置(CLAUDE.md、.env.example、pnpm-workspace) --- .env.example | 11 + .gitignore | 4 + CLAUDE.md | 89 + README.md | 42 +- app/constants/index.ts | 2 +- app/data/recipe.csv | 10 +- app/types/cookbook.ts | 23 +- app/types/incompatible-foods.ts | 9 +- app/types/recipe.ts | 70 +- docs/.vitepress/components.d.ts | 18 +- docs/.vitepress/config/index.ts | 26 + docs/dev/cli.md | 211 + docs/guide/getting-started.md | 125 +- docs/package.json | 14 +- nuxt.config.ts | 29 +- package.json | 50 +- packages/cook/README.md | 149 + packages/cook/package.json | 27 + packages/cook/src/commands/convert.ts | 93 + packages/cook/src/commands/fetch.ts | 123 + packages/cook/src/index.ts | 53 + packages/cook/src/utils/config.ts | 30 + packages/cook/src/utils/csv.test.ts | 261 ++ packages/cook/src/utils/csv.ts | 144 + packages/cook/src/utils/feishu.ts | 96 + packages/cook/tsconfig.json | 16 + packages/cook/types.ts | 3 + packages/types/README.md | 19 + packages/types/package.json | 15 + packages/types/src/cookbook.ts | 22 + packages/types/src/incompatible-foods.ts | 8 + packages/types/src/index.ts | 3 + packages/types/src/recipe.ts | 69 + packages/types/tsconfig.json | 14 + pnpm-lock.yaml | 4529 +++++++++++++--------- pnpm-workspace.yaml | 5 +- scripts/config.ts | 15 - scripts/convert.ts | 112 - scripts/git.ts | 17 - scripts/package.json | 11 - vitest.config.ts | 15 +- 41 files changed, 4432 insertions(+), 2150 deletions(-) create mode 100644 CLAUDE.md create mode 100644 docs/dev/cli.md create mode 100644 packages/cook/README.md create mode 100644 packages/cook/package.json create mode 100644 packages/cook/src/commands/convert.ts create mode 100644 packages/cook/src/commands/fetch.ts create mode 100755 packages/cook/src/index.ts create mode 100644 packages/cook/src/utils/config.ts create mode 100644 packages/cook/src/utils/csv.test.ts create mode 100644 packages/cook/src/utils/csv.ts create mode 100644 packages/cook/src/utils/feishu.ts create mode 100644 packages/cook/tsconfig.json create mode 100644 packages/cook/types.ts create mode 100644 packages/types/README.md create mode 100644 packages/types/package.json create mode 100644 packages/types/src/cookbook.ts create mode 100644 packages/types/src/incompatible-foods.ts create mode 100644 packages/types/src/index.ts create mode 100644 packages/types/src/recipe.ts create mode 100644 packages/types/tsconfig.json delete mode 100644 scripts/config.ts delete mode 100644 scripts/convert.ts delete mode 100644 scripts/git.ts delete mode 100644 scripts/package.json diff --git a/.env.example b/.env.example index d7267d0..86df49a 100644 --- a/.env.example +++ b/.env.example @@ -1 +1,12 @@ +# Apple Development Team ID +# 用于 iOS 应用签名和打包 APPLE_DEVELOPMENT_TEAM= + +# 飞书开放平台应用凭证 +# 用于 cook fetch 命令从飞书拉取菜谱数据 +# 获取方式: https://open.feishu.cn/app +# 1. 创建或选择应用 +# 2. 在"凭证与基础信息"中获取 App ID 和 App Secret +FEISHU_APP_ID= +FEISHU_APP_SECRET= + diff --git a/.gitignore b/.gitignore index 49e3b20..d775eff 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,7 @@ dist .env .idea/ .vercel + +# CodeBuddy +.codebuddy/memory +.codebuddy/plans \ No newline at end of file diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..f9d871d --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,89 @@ +# CLAUDE.md + +This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. + +## Project Overview + +Cook (食用手册) is a Chinese recipe web/mobile app for finding recipes based on available ingredients. Built with Nuxt 4 (Vue 3, CSR-only), Ionic UI, and Capacitor for native iOS/Android apps. The UI and content are in Chinese. + +## Common Commands + +```bash +pnpm install # Install deps (auto-runs nuxt prepare via postinstall) +pnpm convert # Convert CSV recipe data → JSON (required before first run) +pnpm dev # Dev server on http://localhost:3333 +pnpm lint # ESLint check (uses @antfu/eslint-config flat config) +pnpm lint --fix # Auto-fix lint issues +pnpm typecheck # TypeScript type checking via vue-tsc +pnpm test # Run Vitest tests +pnpm test -- --run # Run tests once without watch +pnpm build # Full production build (convert + nuxt generate) +``` + +### Mobile Development + +```bash +pnpm dev:ios # iOS with live reload (cap run ios -l) +pnpm dev:android # Android dev +pnpm ios # Open in Xcode +pnpm android # Open in Android Studio +``` + +## Architecture + +### Data Pipeline + +CSV source files (`app/data/recipe.csv`, `app/data/incompatible-foods.csv`) → `pnpm convert` (via `packages/cook` CLI) → JSON files (`app/data/recipe.json`, `app/data/incompatible-foods.json`) → consumed at runtime. The `pnpm fetch` command pulls fresh data from Feishu (飞书) API. + +### Monorepo Structure (pnpm workspaces) + +- **Root** — Nuxt app (main application) +- **packages/cook** — CLI tool with `convert` and `fetch` commands +- **docs** — VitePress documentation site +- **scripts** — Build/utility scripts + +### App Source (`app/`) + +- **pages/** — Nuxt file-based routing; main interface uses Ionic tabs (`tabs.vue`) +- **components/** — Organized by feature: `recipe/`, `tags/`, `layouts/`, `common/` +- **composables/store/** — Pinia stores: `app`, `recipe`, `favorite`, `history`, `user` +- **composables/** — Shared logic: `db.ts` (IndexedDB via Dexie), `dark.ts`, `recipe.ts`, `incompatible-foods.ts` +- **data/** — Static JSON data + `food.ts` (food/tool definitions) +- **types/** — TypeScript type definitions +- **styles/** — SCSS including CSS variables (`css-vars.scss`) + +### Key Patterns + +- **CSR-only**: SSR is disabled in `nuxt.config.ts`; app is statically generated +- **Client storage**: Dexie (IndexedDB) for favorites, history, user preferences — enables offline support +- **Styling**: UnoCSS with Wind preset (Tailwind-compatible), attributify mode, and custom shortcuts (`tag`, `btn`) +- **Dark mode**: Class-based via `@nuxtjs/color-mode` (classSuffix: '') +- **Icons**: Iconify with multiple packs (carbon, mdi, twemoji); food tool icons dynamically safelisted in `uno.config.ts` + +### Prerendered Routes + +`/`, `/random`, `/help`, `/user`, `/404`, `/settings` are prerendered during static generation. + +## Testing + +Tests live in `test/` directory. Vitest uses jsdom environment with setup in `test/setup.ts`. Config in `vitest.config.ts`. Run a single test file: + +```bash +pnpm test -- test/recipe.test.ts +``` + +## Code Style + +Uses `@antfu/eslint-config` (flat config) with UnoCSS and formatters enabled. Pre-commit hook runs `lint-staged` via `simple-git-hooks`. Ignored paths include `app/data/*.json`, `ios/`, `android/`, `dist/`. + +## Environment Variables + +See `.env.example`: + +- `FEISHU_APP_ID` / `FEISHU_APP_SECRET` — For fetching recipe data from Feishu +- `APPLE_DEVELOPMENT_TEAM` — iOS signing + +## Node/Package Manager + +- Node: v22.20.0 (see `.nvmrc`) +- pnpm: 10.32.1 (enforced via `packageManager` field) diff --git a/README.md b/README.md index 0483561..74612a9 100644 --- a/README.md +++ b/README.md @@ -32,6 +32,7 @@ 欢迎反馈更多菜谱数据: - 相关链接 + - [菜谱数据表格(飞书)](https://yunlefun.feishu.cn/wiki/KgxowvnB9iM91AkZEJHcNGoQnPg?sheet=X4j9Bn) - [居家菜谱投稿](https://docs.qq.com/form/page/DWk9GWW9oTmlXZU9V) - [反馈建议分享-兔小巢](https://support.qq.com/products/507827) @@ -43,19 +44,52 @@ ## 开发 +### 环境配置 + +如需从飞书拉取菜谱数据,请先配置环境变量: + ```bash -# install dependencies +# 复制环境变量模板 +cp .env.example .env + +# 编辑 .env 文件,填入飞书应用凭证 +# FEISHU_APP_ID=cli_xxxxxxxxxxxxxxxx +# FEISHU_APP_SECRET=xxxxxxxxxxxxxxxxxxxxxxxx +``` + +获取飞书凭证请访问 [飞书开放平台](https://open.feishu.cn/app)。 + +详细配置说明请查看 [文档](https://cook.yunyoujun.cn/docs/)。 + +### 启动项目 + +```bash +# 安装依赖 pnpm install -# convert csv to json -# automatically executed when postinstall +# 从飞书拉取最新数据(可选) +pnpm fetch + +# 或将本地 CSV 转换为 JSON pnpm convert -# start +# 启动开发服务器 pnpm dev # http://localhost:3333 ``` +### CLI 命令 + +```bash +# 从飞书拉取菜谱数据 +pnpm fetch + +# 将 CSV 转换为 JSON +pnpm convert +``` + +更多 CLI 使用说明请查看 [Cook CLI 文档](https://cook.yunyoujun.cn/docs/dev/cli)。 + ### 开发 APP > [Local Development](https://ionic.nuxtjs.org/cookbook/local-development) diff --git a/app/constants/index.ts b/app/constants/index.ts index 2a02cb1..e6ab455 100644 --- a/app/constants/index.ts +++ b/app/constants/index.ts @@ -2,7 +2,7 @@ export const appName = '食用手册' export const appDescription = '好的,今天我们来做菜!' export const namespace = 'cook' -export const lastDbUpdated = '2023-11-11 19:51:02' +export const lastDbUpdated = '2026-3-25 02:07:07' export const icp = '苏ICP备17038157号' diff --git a/app/data/recipe.csv b/app/data/recipe.csv index 22b1e17..29a262c 100644 --- a/app/data/recipe.csv +++ b/app/data/recipe.csv @@ -1,4 +1,4 @@ -name,stuff,bv,difficulty,tags,methods,tools, +name,stuff,bv,difficulty,tags,methods,tools, 电饭煲版广式腊肠煲饭,腊肠、米,BV1NE411Q7Jj,简单,广式,煲,电饭煲, 电饭煲版烧鸡,鸡肉、洋葱、菌菇,BV1T54y1U7Cu,简单,好吃,,电饭煲, 电饭煲焖面,猪肉、面食,BV14b411q7rM,简单,筋道,,电饭煲, @@ -31,7 +31,7 @@ 电饭煲版茄子猪肉焖面,茄子、猪肉、面食,BV1ib41137ig,复杂,,,电饭煲, 电饭煲版肉饼蛋,猪肉、鸡蛋,BV13W411a7Ax,普通,,,电饭煲, 电饭煲版上海菜饭,猪肉、腊肠、米、包菜、莴笋,BV1mW411x7F7,,,,电饭煲, -电饭煲版蒜蓉排骨,猪肉、米、,BV1Dv411T7bD,,,,电饭煲, +电饭煲版蒜蓉排骨,猪肉、米,BV1Dv411T7bD,,,,电饭煲, 电饭煲版土豆香肠焖饭,土豆、香肠、米,BV1Kv411q7BM,简单,,,电饭煲, 电饭煲版吐司(尽量不做,废手),鸡蛋、面包,BV1vY41137F1,困难,,,电饭煲, 电饭煲叉烧肉(叉烧酱版),猪肉、米,BV127411W75D,普通,,,电饭煲, @@ -190,7 +190,7 @@ BBQ烟熏手撕猪肉,猪肉,BV1DV411x7SH,复杂,,烤,烤箱, 微波炉版番茄肉盒,番茄、猪肉、青椒,BV194411R7aH,,,微波加热,微波炉, 微波炉版肥牛饭,牛肉、洋葱、鸡蛋、米,BV1gh411Y7TU,,,,微波炉, 微波炉版干脆面,面食,BV1pL4y1j7oe,,,微波加热,微波炉, -微波炉版虾吃豆腐 ,虾、豆腐,BV1VW41157uy,,,,微波炉, +微波炉版虾吃豆腐,虾、豆腐,BV1VW41157uy,,,,微波炉, 微波炉版红烧茄子,茄子、洋葱、米,BV17Q4y1y7NC,普通,,微波加热,微波炉, 微波炉版厚蛋烧,鸡蛋、包菜,BV1bT4y1o7dv,普通,,微波加热,微波炉, 微波炉版厚蛋烧(没芝士就别选了),鸡蛋、包菜、香肠,BV1bT4y1o7dv,,,,微波炉, @@ -263,7 +263,7 @@ BBQ烟熏手撕猪肉,猪肉,BV1DV411x7SH,复杂,,烤,烤箱, 土豆烧包菜,包菜、土豆,BV1Ug4y1B7Uj,普通,家常菜,烧,一口大锅, 土豆烧红肉,土豆、猪肉,BV1fY41187Xo,普通,家常菜,炖,一口大锅, 莴笋炒蛋,莴笋、鸡蛋、胡萝卜,BV1C7411J7cb,普通,家常菜,炒,一口大锅, -油焖大虾,虾、米,BV1DP4y1s7zu,普通,家常菜,焖,一口大锅, +油焖大虾,虾、米,BV1CW411c7kP,普通,家常菜,焖,一口大锅, 陈氏醋卤面,面食、猪肉,BV1tQ4y1M76f,普通,家传秘方,拌,一口大锅, 白灼西兰花,花菜,BV1o4411A7dC,简单,健康,煮,一口大锅, 芹菜牛肉卷,芹菜、牛肉,BV1Tv411L7V9,,健康餐,,一口大锅, @@ -539,7 +539,7 @@ biangbiang面,面食,BV1844y157GL,简单,,油泼,一口大锅, 铁板豆腐,豆腐,BV1dU4y1d7hz,简单,,,一口大锅, 土豆拌饭,土豆、香肠、米,BV1YD4y1c7ip,简单,,炒,一口大锅, 土豆炖茄子,茄子、土豆,BV1uP4y1M7rt,普通,,炖,一口大锅, -土豆胡萝卜炖牛腩,牛肉、胡萝卜、土豆、,BV1R54y1E7JX,,,,一口大锅, +土豆胡萝卜炖牛腩,牛肉、胡萝卜、土豆,BV1R54y1E7JX,,,,一口大锅, 土豆腊肠煲饭,腊肠、土豆、米,BV1wV411o7Sq,困难,,煲,一口大锅, 土豆泥厚蛋烧,土豆、鸡蛋,BV1DL4y1j7Nu,困难,,煎,一口大锅, 土豆烧牛腩,土豆、牛肉,BV1qs411u7gj,普通,,炒,一口大锅, diff --git a/app/types/cookbook.ts b/app/types/cookbook.ts index 5c76717..e6d90a4 100644 --- a/app/types/cookbook.ts +++ b/app/types/cookbook.ts @@ -1,22 +1 @@ -import type { Recipes } from './recipe' - -export interface Cookbook { - /** - * 菜谱 ID,自定义,唯一标识符 - */ - id: string - cover?: string - /** - * 菜谱名称 - */ - title: string - description: string - author: string | string[] - /** - * 菜谱 - */ - recipes: Recipes - - createdAt: string - updatedAt: string -} +export type { Cookbook } from '@cook/types/cookbook' diff --git a/app/types/incompatible-foods.ts b/app/types/incompatible-foods.ts index 37bc6ea..15137f2 100644 --- a/app/types/incompatible-foods.ts +++ b/app/types/incompatible-foods.ts @@ -1,8 +1 @@ -/** - * 食物相克规则 - */ -export interface IncompatibleRule { - foodA: string - foodB: string - reason: string -} +export type { IncompatibleRule } from '@cook/types/incompatible' diff --git a/app/types/recipe.ts b/app/types/recipe.ts index 7fcb982..7caeaaa 100644 --- a/app/types/recipe.ts +++ b/app/types/recipe.ts @@ -1,69 +1 @@ -export type Difficulty = '简单' | '普通' | '困难' - -export interface RecipeItem { - /** - * 菜名 - */ - name: string - /** - * 链接 - */ - link?: string - /** - * BiliBili video id - */ - bv?: string - /** - * 材料 - */ - stuff: string[] - /** - * 根据材料生成 - */ - emojis?: string[] - /** - * 难度 - */ - difficulty?: Difficulty | '' - /** - * 标签 - */ - tags?: string[] - /** - * 方式 - */ - methods?: ('炒' | '煎' | '烘' | '炸')[] - /** - * 工具 - */ - tools: string[] -} - -export type Recipes = RecipeItem[] - -export interface StuffItem { - /** - * 食材名称 - */ - name: string - /** - * 例如:🥔 - */ - emoji: string - /** - * 图片链接 - */ - image?: string - /** - * 别名,譬如:西红柿/番茄 - */ - alias?: string - /** - * 图标名称 - */ - icon?: string - /** - * 显示标签 - */ - label?: string -} +export type { Difficulty, RecipeItem, Recipes, StuffItem } from '@cook/types/recipe' diff --git a/docs/.vitepress/components.d.ts b/docs/.vitepress/components.d.ts index c1d1ede..6b48a67 100644 --- a/docs/.vitepress/components.d.ts +++ b/docs/.vitepress/components.d.ts @@ -1,16 +1,28 @@ /* eslint-disable */ // @ts-nocheck +// biome-ignore lint: disable +// oxlint-disable +// ------ // Generated by unplugin-vue-components // Read more: https://github.com/vuejs/core/pull/3399 -// biome-ignore lint: disable +import { GlobalComponents } from 'vue' + export {} /* prettier-ignore */ declare module 'vue' { export interface GlobalComponents { - DocsProjectCard: typeof import('./../../node_modules/.pnpm/@yunyoujun+docs@0.1.13/node_modules/@yunyoujun/docs/client/components/DocsProjectCard.vue')['default'] - DocsProjectList: typeof import('./../../node_modules/.pnpm/@yunyoujun+docs@0.1.13/node_modules/@yunyoujun/docs/client/components/DocsProjectList.vue')['default'] + DocsProjectCard: typeof import('./../../node_modules/.pnpm/@yunyoujun+docs@0.1.14_vite@7.3.1_@types+node@25.3.3_jiti@2.6.1_sass@1.97.3_terser@5.44.1_tsx@4.21.0_yaml@2.8.2_/node_modules/@yunyoujun/docs/client/components/DocsProjectCard.vue')['default'] + DocsProjectList: typeof import('./../../node_modules/.pnpm/@yunyoujun+docs@0.1.14_vite@7.3.1_@types+node@25.3.3_jiti@2.6.1_sass@1.97.3_terser@5.44.1_tsx@4.21.0_yaml@2.8.2_/node_modules/@yunyoujun/docs/client/components/DocsProjectList.vue')['default'] RouterLink: typeof import('vue-router')['RouterLink'] RouterView: typeof import('vue-router')['RouterView'] } } + +// For TSX support +declare global { + const DocsProjectCard: typeof import('./../../node_modules/.pnpm/@yunyoujun+docs@0.1.14_vite@7.3.1_@types+node@25.3.3_jiti@2.6.1_sass@1.97.3_terser@5.44.1_tsx@4.21.0_yaml@2.8.2_/node_modules/@yunyoujun/docs/client/components/DocsProjectCard.vue')['default'] + const DocsProjectList: typeof import('./../../node_modules/.pnpm/@yunyoujun+docs@0.1.14_vite@7.3.1_@types+node@25.3.3_jiti@2.6.1_sass@1.97.3_terser@5.44.1_tsx@4.21.0_yaml@2.8.2_/node_modules/@yunyoujun/docs/client/components/DocsProjectList.vue')['default'] + const RouterLink: typeof import('vue-router')['RouterLink'] + const RouterView: typeof import('vue-router')['RouterView'] +} \ No newline at end of file diff --git a/docs/.vitepress/config/index.ts b/docs/.vitepress/config/index.ts index db8af11..7abb3e3 100644 --- a/docs/.vitepress/config/index.ts +++ b/docs/.vitepress/config/index.ts @@ -12,5 +12,31 @@ export default defineConfig({ themeConfig: { ...vpConfig.themeConfig, + + nav: [ + { text: '使用指南', link: '/guide/getting-started' }, + { text: '开发文档', link: '/dev/cli' }, + { text: '应用', link: 'https://cook.yunyoujun.cn' }, + ], + + sidebar: { + '/guide/': [ + { + text: '使用指南', + items: [ + { text: '快速开始', link: '/guide/getting-started' }, + ], + }, + ], + '/dev/': [ + { + text: '开发文档', + items: [ + { text: 'Cook CLI', link: '/dev/cli' }, + { text: '移动应用', link: '/dev/app' }, + ], + }, + ], + }, }, }) diff --git a/docs/dev/cli.md b/docs/dev/cli.md new file mode 100644 index 0000000..ecc6c77 --- /dev/null +++ b/docs/dev/cli.md @@ -0,0 +1,211 @@ +# Cook CLI + +Cook CLI 是一个命令行工具,用于管理菜谱数据。 + +## 安装 + +项目依赖已在 workspace 中配置,无需单独安装。 + +## 环境配置 + +### 数据源 + +菜谱数据存储在飞书 Wiki 电子表格中: + +- [菜谱数据表格(飞书)](https://yunlefun.feishu.cn/wiki/KgxowvnB9iM91AkZEJHcNGoQnPg?sheet=X4j9Bn) + +### 配置飞书应用 + +1. 复制环境变量模板: + + ```bash + cp .env.example .env + ``` + +2. 填写飞书开放平台应用凭证: + + ```bash + # .env + FEISHU_APP_ID=cli_xxxxxxxxxxxxxxxx + FEISHU_APP_SECRET=xxxxxxxxxxxxxxxxxxxxxxxx + ``` + +3. 获取飞书凭证: + - 访问 [飞书开放平台](https://open.feishu.cn/app) + - 创建或选择你的应用 + - 在"凭证与基础信息"中获取 `App ID` 和 `App Secret` + +::: tip +`.env` 文件已被 `.gitignore` 忽略,不会被提交到 Git。 +::: + +## 命令 + +### fetch + +从飞书拉取菜谱数据并生成 CSV + JSON 文件。 + +```bash +pnpm fetch +``` + +**功能:** + +- 从飞书 Wiki 获取电子表格数据 +- 解析并清洗数据 +- 生成 `app/data/recipe.csv` +- 生成 `app/data/recipe.json` + +**输出示例:** + +``` +✔ 从飞书 Wiki 获取电子表格 token... +✔ 读取到 600 行数据 (含表头) +✔ 解析出 599 条菜谱 +✔ 写入 app/data/recipe.csv +✔ 写入 app/data/recipe.json +``` + +::: warning 注意 +此命令会**覆盖**现有的 `recipe.csv` 和 `recipe.json` 文件。 +::: + +### convert + +将本地 CSV 数据转换为 JSON 格式。 + +```bash +pnpm convert +``` + +**功能:** + +- 读取 `app/data/recipe.csv` +- 转换为 JSON 格式 +- 生成 `app/data/recipe.json` + +**使用场景:** + +- 手动编辑 CSV 后需要重新生成 JSON +- 确保 CSV 和 JSON 数据同步 + +## 工作流程 + +### 更新菜谱数据 + +```bash +# 1. 从飞书拉取最新数据 +pnpm fetch + +# 2. 启动开发服务器查看效果 +pnpm dev +``` + +### 手动编辑数据 + +```bash +# 1. 编辑 app/data/recipe.csv + +# 2. 转换为 JSON +pnpm convert + +# 3. 查看效果 +pnpm dev +``` + +## 数据格式 + +### CSV 格式 + +```csv +名称,别名,类别,主料,辅料,调料,做法,难度,耗时,口味,图片,视频 +宫保鸡丁,,,鸡胸肉,花生米,干辣椒,炒,简单,30分钟,麻辣,https://...,https://... +``` + +### JSON 格式 + +```json +[ + { + "名称": "宫保鸡丁", + "别名": "", + "类别": "", + "主料": "鸡胸肉", + "辅料": "花生米", + "调料": "干辣椒", + "做法": "炒", + "难度": "简单", + "耗时": "30分钟", + "口味": "麻辣", + "图片": "https://...", + "视频": "https://..." + } +] +``` + +## 故障排查 + +### 飞书 API 调用失败 + +**错误信息:** + +``` +Error: Feishu API failed with code 99991663 +``` + +**解决方案:** + +1. 检查 `.env` 文件是否存在 +2. 确认 `FEISHU_APP_ID` 和 `FEISHU_APP_SECRET` 是否正确 +3. 验证应用是否有访问 Wiki 的权限 +4. 检查飞书 Wiki 链接是否正确配置在代码中 + +### CSV 解析错误 + +**错误信息:** + +``` +Error: Failed to parse CSV +``` + +**解决方案:** + +1. 检查 CSV 文件格式是否正确 +2. 确认字段分隔符为逗号 +3. 检查是否有未闭合的引号 +4. 验证编码是否为 UTF-8 + +## 相关文档 + +- [飞书开放平台文档](https://open.feishu.cn/document) +- [开发指南](/dev/app) +- [使用说明](/guide/getting-started) + +## 测试 + +### 运行测试 + +```bash +# 运行所有测试 +pnpm test + +# 运行 CLI 相关测试 +pnpm test packages/cook + +# 运行特定测试文件 +pnpm test packages/cook/src/utils/csv.test.ts +``` + +### 测试覆盖 + +CLI 工具包含以下测试: + +- **CSV 解析测试** (`csv.test.ts`) + - ✅ BV 号清洗和 URL 处理 + - ✅ CSV 格式解析 + - ✅ 空值和边界情况处理 + - ✅ 数组字段过滤空值 + - ✅ CSV 往返一致性(parse → stringify → parse) + - ✅ 与 fetch 命令输出格式一致性 + +测试确保 `fetch` 和 `convert` 命令产生完全一致的数据格式。 diff --git a/docs/guide/getting-started.md b/docs/guide/getting-started.md index 46cc5c9..736c73f 100644 --- a/docs/guide/getting-started.md +++ b/docs/guide/getting-started.md @@ -1,3 +1,124 @@ -# 使用说明 +# 快速开始 -TODO +欢迎使用 Cook! 这是一个帮助你决定"今天吃什么"的应用。 + +## 环境准备 + +### 系统要求 + +- Node.js >= 18 +- pnpm >= 8 + +### 安装依赖 + +```bash +# 克隆项目 +git clone https://github.com/YunYouJun/cook.git +cd cook + +# 安装依赖 +pnpm install +``` + +## 开发 + +### 启动开发服务器 + +```bash +pnpm dev +``` + +访问 查看应用。 + +### 数据管理 + +菜谱数据存储在飞书 Wiki 电子表格中:[菜谱数据表格](https://yunlefun.feishu.cn/wiki/KgxowvnB9iM91AkZEJHcNGoQnPg?sheet=X4j9Bn) + +#### 配置飞书应用 + +如果需要从飞书拉取菜谱数据,请先配置环境变量: + +```bash +# 1. 复制环境变量模板 +cp .env.example .env + +# 2. 编辑 .env 文件 +# FEISHU_APP_ID=cli_xxxxxxxxxxxxxxxx +# FEISHU_APP_SECRET=xxxxxxxxxxxxxxxxxxxxxxxx +``` + +获取飞书凭证: + +1. 访问 [飞书开放平台](https://open.feishu.cn/app) +2. 创建或选择应用 +3. 复制 App ID 和 App Secret + +#### 更新菜谱数据 + +```bash +# 从飞书拉取最新数据 +pnpm fetch + +# 或手动编辑 app/data/recipe.csv 后转换为 JSON +pnpm convert +``` + +详细的 CLI 使用说明请查看 [Cook CLI 文档](/dev/cli)。 + +## 构建 + +### Web 应用 + +```bash +# 构建生产版本 +pnpm build + +# 预览构建结果 +pnpm preview +``` + +### 移动应用 + +#### iOS + +```bash +# 构建 iOS 应用 +pnpm build:ios + +# 在 Xcode 中打开 +open ios/App/App.xcworkspace +``` + +#### Android + +```bash +# 构建 Android 应用 +pnpm build:android + +# 在 Android Studio 中打开 +# File > Open > android/ +``` + +## 项目结构 + +``` +cook/ +├── app/ # 应用源码 +│ ├── components/ # Vue 组件 +│ ├── composables/ # 组合式函数 +│ ├── data/ # 菜谱数据 (CSV + JSON) +│ ├── pages/ # 页面路由 +│ └── utils/ # 工具函数 +├── docs/ # 文档网站 +├── packages/ +│ └── cook/ # CLI 工具 +├── android/ # Android 应用 +├── ios/ # iOS 应用 +└── public/ # 静态资源 +``` + +## 下一步 + +- 📖 查看 [CLI 文档](/dev/cli) 了解数据管理 +- 📱 查看 [移动应用开发](/dev/app) 了解跨平台构建 +- 🍳 开始添加你喜欢的菜谱! diff --git a/docs/package.json b/docs/package.json index dc5c75b..1afe54f 100644 --- a/docs/package.json +++ b/docs/package.json @@ -14,14 +14,14 @@ }, "devDependencies": { "@shikijs/vitepress-twoslash": "^3.23.0", - "sass": "^1.97.3", - "typedoc": "^0.28.17", - "typedoc-plugin-markdown": "^4.10.0", + "sass": "^1.98.0", + "typedoc": "^0.28.18", + "typedoc-plugin-markdown": "^4.11.0", "typedoc-vitepress-theme": "^1.1.2", - "unocss": "^66.6.4", - "unplugin-vue-components": "^31.0.0", - "vite-plugin-vue-devtools": "^8.0.7", - "vitepress": "^2.0.0-alpha.16", + "unocss": "^66.6.7", + "unplugin-vue-components": "^32.0.0", + "vite-plugin-vue-devtools": "^8.1.1", + "vitepress": "^2.0.0-alpha.17", "vitepress-plugin-group-icons": "^1.7.1" } } diff --git a/nuxt.config.ts b/nuxt.config.ts index c528da0..b578622 100644 --- a/nuxt.config.ts +++ b/nuxt.config.ts @@ -1,5 +1,6 @@ import process from 'node:process' import { defineNuxtConfig } from 'nuxt/config' +import { simpleGit } from 'simple-git' // import { pwa } from './app/config/pwa' import { appDescription } from './app/constants/index' @@ -9,20 +10,34 @@ import { appDescription } from './app/constants/index' // VITE_COMMIT_REF: process.env.CF_PAGES_COMMIT_SHA || '', // }) +/** + * Get git repo latest commit + */ +async function getLatestCommit() { + const git = simpleGit() + try { + const log = await git.log({ maxCount: 1 }) + return log.latest + } + catch (error) { + console.error('Error fetching latest commit:', error) + return null + } +} + try { - const { getLatestCommit } = await import('./scripts/git') const latestCommit = await getLatestCommit() /** * CF_PAGES_COMMIT_SHA is Cloudflare Pages env */ - import.meta.env.VITE_COMMIT_REF = process.env.CF_PAGES_COMMIT_SHA || latestCommit?.hash || '' + process.env.VITE_COMMIT_REF = process.env.CF_PAGES_COMMIT_SHA || latestCommit?.hash || '' // add build date string to env - import.meta.env.VITE_APP_BUILD_DATE = latestCommit?.date || new Date().toString() + process.env.VITE_APP_BUILD_DATE = latestCommit?.date || new Date().toString() } catch (e) { console.error('Not in git repo, get latest commit failed:', e) - import.meta.env.VITE_APP_BUILD_DATE = new Date().toString() - import.meta.env.VITE_COMMIT_REF = '' + process.env.VITE_APP_BUILD_DATE = new Date().toString() + process.env.VITE_COMMIT_REF = '' } export default defineNuxtConfig({ @@ -86,6 +101,10 @@ export default defineNuxtConfig({ classSuffix: '', }, + alias: { + '@cook/types': './packages/types/src', + }, + future: { compatibilityVersion: 4, }, diff --git a/package.json b/package.json index 6ea2a39..a8f5542 100644 --- a/package.json +++ b/package.json @@ -3,15 +3,17 @@ "type": "module", "version": "2.0.0-beta.12", "private": true, - "packageManager": "pnpm@10.30.3", + "packageManager": "pnpm@10.33.0", "engines": { "node": "^20.19.0 || >=22.12.0" }, "scripts": { "build": "npm run convert && npm run generate", + "build:full": "npm run fetch && npm run generate", "build:nuxt": "nuxt build", "build:android": "bash ./scripts/android/build.sh", - "convert": "pnpm -C scripts run convert", + "convert": "pnpm -C packages/cook run convert", + "fetch": "pnpm -C packages/cook run fetch", "dev": "nuxt dev", "dev:pwa": "VITE_PLUGIN_PWA=true nuxi dev", "dev:android": "bash ./scripts/android/dev.sh", @@ -31,6 +33,7 @@ "release": "bumpp", "sync": "cap sync", "test": "vitest", + "test:coverage": "vitest run --coverage", "typecheck": "nuxt typecheck" }, "dependencies": { @@ -40,13 +43,13 @@ "@capacitor/ios": "7.4.3", "@capacitor/keyboard": "7.0.3", "@capacitor/status-bar": "7.0.3", - "dayjs": "^1.11.19", + "dayjs": "^1.11.20", "vue-about-me": "^1.4.0", "vue-virtual-scroller": "2.0.0-beta.8" }, "devDependencies": { - "@antfu/eslint-config": "^7.6.1", - "@capacitor/android": "^8.1.0", + "@antfu/eslint-config": "^7.7.3", + "@capacitor/android": "^8.2.0", "@capacitor/cli": "7.4.3", "@capacitor/dialog": "^8.0.1", "@headlessui/vue": "^1.7.23", @@ -57,7 +60,7 @@ "@iconify-json/mdi": "^1.2.3", "@iconify-json/ri": "^1.2.10", "@iconify-json/twemoji": "^1.2.5", - "@nuxt/devtools": "^3.2.2", + "@nuxt/devtools": "^3.2.4", "@nuxt/eslint": "^1.15.2", "@nuxt/scripts": "^0.13.2", "@nuxt/test-utils": "^4.0.0", @@ -65,38 +68,39 @@ "@nuxtjs/ionic": "1.0.2", "@pinia/nuxt": "^0.11.3", "@pinia/testing": "^1.0.3", - "@types/node": "^25.3.3", - "@unhead/vue": "^2.1.10", - "@unocss/eslint-config": "^66.6.4", - "@unocss/nuxt": "^66.6.4", + "@types/node": "^25.5.0", + "@unhead/vue": "^2.1.12", + "@unocss/eslint-config": "^66.6.7", + "@unocss/nuxt": "^66.6.7", "@vite-pwa/nuxt": "^1.1.1", "@vue/test-utils": "^2.4.6", "@vueuse/nuxt": "^14.2.1", "@yunlefun/vue": "^0.1.1", - "baseline-browser-mapping": "^2.10.0", - "bumpp": "^10.4.1", + "baseline-browser-mapping": "^2.10.10", + "bumpp": "^11.0.1", "consola": "^3.4.2", "dexie": "^4.3.0", - "eslint": "^10.0.2", + "eslint": "^10.1.0", "eslint-plugin-format": "^2.0.1", "fake-indexeddb": "^6.2.5", - "jsdom": "^28.1.0", - "lint-staged": "^16.3.1", - "nuxt": "^4.3.1", + "jsdom": "^29.0.1", + "lint-staged": "^16.4.0", + "nuxt": "^4.4.2", "pinia": "^3.0.4", - "sass": "^1.97.3", - "serve": "^14.2.5", + "sass": "^1.98.0", + "serve": "^14.2.6", + "simple-git": "^3.33.0", "simple-git-hooks": "^2.13.1", "star-markdown-css": "^0.5.3", "tsx": "^4.21.0", "typescript": "^5.9.3", - "unocss": "^66.6.4", - "vitest": "^4.0.18", - "vue-tsc": "^3.2.5" + "unocss": "^66.6.7", + "vitest": "^4.1.1", + "vue-tsc": "^3.2.6" }, "resolutions": { - "unplugin": "^2.3.11", - "vite": "^7.3.1" + "unplugin": "^3.0.0", + "vite": "^8.0.2" }, "simple-git-hooks": { "pre-commit": "pnpm lint-staged" diff --git a/packages/cook/README.md b/packages/cook/README.md new file mode 100644 index 0000000..21049b9 --- /dev/null +++ b/packages/cook/README.md @@ -0,0 +1,149 @@ +# @cook/cli + +Cook CLI 工具 - 用于管理菜谱数据的命令行工具。 + +## 功能 + +- 🚀 从飞书 Wiki 拉取菜谱数据 +- 📝 CSV ↔ JSON 双向转换 +- ✅ 完整的单元测试覆盖 +- 🔄 数据格式一致性保证 + +## 命令 + +### fetch + +从飞书 Wiki 拉取最新菜谱数据: + +```bash +pnpm fetch +``` + +功能: + +- 获取飞书电子表格数据(API 返回二维数组) +- 自动清洗和格式化 +- 使用 papaparse 生成标准 CSV(自动处理特殊字符) +- 同时生成 CSV 和 JSON 文件 + +**为什么不直接下载 CSV?** + +- 飞书 API 没有提供直接导出 CSV 的接口 +- API 返回的是原始表格数据(二维数组),需要转换为 CSV +- 使用 papaparse 确保生成的 CSV 符合标准,能正确处理字段中的逗号、引号、换行符等特殊字符 + +### convert + +将本地 CSV 转换为 JSON: + +```bash +pnpm convert +``` + +功能: + +- 读取 `app/data/recipe.csv` +- 解析并验证数据 +- 生成 `app/data/recipe.json` +- 更新 `lastDbUpdated` 时间戳 + +## 数据格式 + +### CSV 结构 + +```csv +name,stuff,bv,difficulty,tags,methods,tools, +宫保鸡丁,鸡胸肉、花生米,BV1234567890,简单,川菜、家常菜,炒、煎,炒锅, +``` + +字段说明: + +- `name`: 菜名(必填) +- `stuff`: 食材列表(用 `、` 分隔) +- `bv`: B站视频 BV 号 +- `difficulty`: 难度(简单/普通/困难) +- `tags`: 标签列表(用 `、` 分隔) +- `methods`: 烹饪方式(炒/煎/烘/炸,用 `、` 分隔) +- `tools`: 所需工具(用 `、` 分隔) + +### JSON 结构 + +```json +{ + "name": "宫保鸡丁", + "stuff": ["鸡胸肉", "花生米"], + "bv": "BV1234567890", + "difficulty": "简单", + "tags": ["川菜", "家常菜"], + "methods": ["炒", "煎"], + "tools": ["炒锅"] +} +``` + +## 测试 + +运行测试: + +```bash +# 运行所有测试 +pnpm test + +# 运行 CLI 测试 +pnpm test packages/cook + +# 测试覆盖率 +pnpm test:coverage +``` + +测试内容: + +- ✅ CSV 解析和格式化 +- ✅ BV 号清洗(URL 前缀去除) +- ✅ 空值和边界情况处理 +- ✅ 数组字段空值过滤 +- ✅ CSV/JSON 往返一致性 +- ✅ fetch/convert 输出格式一致性 + +## 开发 + +### 项目结构 + +``` +packages/cook/ +├── src/ +│ ├── commands/ +│ │ ├── fetch.ts # 飞书数据拉取 +│ │ └── convert.ts # CSV 转 JSON +│ ├── utils/ +│ │ ├── config.ts # 配置和常量 +│ │ ├── csv.ts # CSV 处理工具 +│ │ ├── csv.test.ts # CSV 测试 +│ │ └── feishu.ts # 飞书 API 封装 +│ └── index.ts # CLI 入口 +├── types.ts # 类型定义 +├── package.json +└── tsconfig.json +``` + +### 技术栈 + +- **CLI 框架**: [cac](https://github.com/cacjs/cac) +- **交互提示**: [@clack/prompts](https://github.com/natemoo-re/clack) +- **日志输出**: [consola](https://github.com/unjs/consola) +- **飞书 SDK**: [@larksuiteoapi/node-sdk](https://github.com/larksuite/node-sdk) +- **运行时**: [tsx](https://github.com/privatenumber/tsx) + +## 配置 + +需要配置飞书应用凭证(`.env` 文件): + +```bash +FEISHU_APP_ID=cli_xxxxxxxxxxxxxxxx +FEISHU_APP_SECRET=xxxxxxxxxxxxxxxxxxxxxxxx +``` + +获取方式:[飞书开放平台](https://open.feishu.cn/app) + +## 许可 + +MIT diff --git a/packages/cook/package.json b/packages/cook/package.json new file mode 100644 index 0000000..1161abe --- /dev/null +++ b/packages/cook/package.json @@ -0,0 +1,27 @@ +{ + "name": "@cook/cli", + "type": "module", + "version": "0.1.0", + "private": true, + "bin": { + "cook": "./src/index.ts" + }, + "scripts": { + "cook": "tsx src/index.ts", + "fetch": "tsx src/index.ts fetch", + "convert": "tsx src/index.ts convert" + }, + "dependencies": { + "@clack/prompts": "^1.1.0", + "@cook/types": "workspace:*", + "@larksuiteoapi/node-sdk": "^1.59.0", + "cac": "^7.0.0", + "consola": "^3.4.2", + "papaparse": "^5.5.3" + }, + "devDependencies": { + "@types/node": "^25.5.0", + "@types/papaparse": "^5.5.2", + "tsx": "^4.21.0" + } +} diff --git a/packages/cook/src/commands/convert.ts b/packages/cook/src/commands/convert.ts new file mode 100644 index 0000000..b876e92 --- /dev/null +++ b/packages/cook/src/commands/convert.ts @@ -0,0 +1,93 @@ +import fs from 'node:fs' +import path from 'node:path' +import consola from 'consola' +import { + incompatibleFoodsCsvFile, + incompatibleFoodsJsonFile, + recipeCsvFile, + recipeJsonFile, + rootDir, +} from '../utils/config.js' +import { parseIncompatibleFoodsCsv, parseRecipeCsv } from '../utils/csv.js' + +// 正则表达式预编译,避免每次调用时重新编译 +const DATE_SLASH_REGEX = /\//g +const LAST_DB_UPDATED_REGEX = /export const lastDbUpdated = '.+'/ + +/** + * 转换 recipe CSV → JSON + */ +function convertRecipes() { + consola.info('Converting recipe data...') + + const csvData = fs.readFileSync(recipeCsvFile, 'utf-8') + const recipes = parseRecipeCsv(csvData) + + if (recipes.length === 0) { + consola.warn('No recipes parsed, skipping JSON generation') + return + } + + fs.writeFileSync(recipeJsonFile, JSON.stringify(recipes)) + consola.success(`Generated: ${recipeJsonFile} (${recipes.length} recipes)`) +} + +/** + * 转换食物相克 CSV → JSON + */ +function convertIncompatibleFoods() { + consola.info('Converting incompatible foods data...') + + try { + const csvData = fs.readFileSync(incompatibleFoodsCsvFile, 'utf-8') + const rules = parseIncompatibleFoodsCsv(csvData) + + if (rules.length === 0) { + consola.warn('No rules parsed, skipping JSON generation') + return + } + + fs.writeFileSync(incompatibleFoodsJsonFile, JSON.stringify(rules, null, 2)) + consola.success(`Generated: ${incompatibleFoodsJsonFile} (${rules.length} rules)`) + } + catch (error) { + consola.error('Failed to convert incompatible foods data:', error) + } +} + +/** + * 更新 lastDbUpdated 时间戳 + */ +function updateLastDbUpdated() { + const constantsFile = path.join(rootDir, 'app/constants/index.ts') + + if (!fs.existsSync(constantsFile)) { + consola.warn('Constants file not found, skipping timestamp update') + return + } + + const content = fs.readFileSync(constantsFile, 'utf-8') + const now = new Date().toLocaleString('zh-CN', { + timeZone: 'Asia/Shanghai', + hour12: false, + }).replace(DATE_SLASH_REGEX, '-') + + const updated = content.replace( + LAST_DB_UPDATED_REGEX, + `export const lastDbUpdated = '${now}'`, + ) + + if (content !== updated) { + fs.writeFileSync(constantsFile, updated) + consola.success(`Updated lastDbUpdated to: ${now}`) + } +} + +/** + * convert 命令入口 + */ +export function runConvert() { + convertRecipes() + convertIncompatibleFoods() + updateLastDbUpdated() +} diff --git a/packages/cook/src/commands/fetch.ts b/packages/cook/src/commands/fetch.ts new file mode 100644 index 0000000..5a72844 --- /dev/null +++ b/packages/cook/src/commands/fetch.ts @@ -0,0 +1,123 @@ +import type { RecipeItem } from '../../types.js' +import fs from 'node:fs' +import consola from 'consola' +import { + RECIPE_CSV_HEADERS, + recipeCsvFile, + recipeJsonFile, + SEP, +} from '../utils/config.js' +import { cleanBv, recipesToCsv } from '../utils/csv.js' +import { + createFeishuClient, + getFeishuCredentials, + getSpreadsheetToken, + readSpreadsheetValues, +} from '../utils/feishu.js' + +/** + * 安全获取单元格值,处理 null / undefined + */ +function cellStr(value: unknown): string { + if (value == null) + return '' + return String(value).trim() +} + +/** + * 校验表头是否符合预期 + */ +function validateHeaders(headers: unknown[]): void { + const expected = RECIPE_CSV_HEADERS.split(',').filter(Boolean) + const actual = headers.map(h => cellStr(h)) + + for (let i = 0; i < expected.length; i++) { + if (actual[i] !== expected[i]) { + consola.warn(`表头不匹配: 期望 "${expected[i]}", 实际 "${actual[i]}" (列 ${i + 1})`) + throw new Error('飞书表格表头与预期不匹配,请检查表格结构') + } + } +} + +/** + * 将飞书表格行数据转为 RecipeItem + */ +function rowToRecipeItem(row: unknown[]): RecipeItem | null { + const name = cellStr(row[0]) + if (!name) + return null + + const stuff = cellStr(row[1]).split(SEP).filter(Boolean) + const bv = cleanBv(cellStr(row[2])) + const difficulty = cellStr(row[3]) as RecipeItem['difficulty'] + const tags = cellStr(row[4]).split(SEP).filter(Boolean) + const methods = cellStr(row[5]).split(SEP).filter(Boolean) as RecipeItem['methods'] + const tools = cellStr(row[6]).split(SEP).filter(Boolean) + + return { + name, + stuff, + bv: bv || undefined, + difficulty: difficulty || undefined, + tags: tags.length > 0 ? tags : [], + methods: methods && methods.length > 0 ? methods : [], + tools, + } +} + +/** + * fetch 命令入口 + */ +export async function runFetch() { + consola.start('从飞书拉取菜谱数据...') + + // 1. 校验环境变量 & 创建 Client + const credentials = getFeishuCredentials() + const client = createFeishuClient(credentials) + + // 2. 获取 spreadsheetToken + consola.info('获取 Wiki 节点信息...') + const spreadsheetToken = await getSpreadsheetToken(client) + consola.info(`SpreadsheetToken: ${spreadsheetToken}`) + + // 3. 读取表格数据 + consola.info('读取电子表格数据...') + const values = await readSpreadsheetValues(client, spreadsheetToken) + + // 4. 校验表头 + const headerRow = values[0] + if (!headerRow) { + throw new Error('表格无表头行') + } + validateHeaders(headerRow) + consola.success('表头校验通过') + + // 5. 转换数据 + const recipes: RecipeItem[] = [] + for (let i = 1; i < values.length; i++) { + const row = values[i] + if (!row) + continue + + const item = rowToRecipeItem(row) + if (item) { + recipes.push(item) + } + else { + consola.warn(`跳过空行: 第 ${i + 1} 行`) + } + } + + consola.info(`解析到 ${recipes.length} 条菜谱数据`) + + // 6. 写入 CSV + const csvContent = recipesToCsv(recipes) + fs.writeFileSync(recipeCsvFile, csvContent, 'utf-8') + consola.success(`写入 CSV: ${recipeCsvFile}`) + + // 7. 写入 JSON + fs.writeFileSync(recipeJsonFile, JSON.stringify(recipes), 'utf-8') + consola.success(`写入 JSON: ${recipeJsonFile}`) + + consola.success(`完成!共 ${recipes.length} 条菜谱`) +} diff --git a/packages/cook/src/index.ts b/packages/cook/src/index.ts new file mode 100755 index 0000000..7703d8b --- /dev/null +++ b/packages/cook/src/index.ts @@ -0,0 +1,53 @@ +#!/usr/bin/env npx tsx +import fs from 'node:fs' +import process from 'node:process' +import cac from 'cac' +import { version } from '../package.json' +import { runConvert } from './commands/convert.js' +import { envFile } from './utils/config.js' + +const LINE_BREAK_RE = /\r?\n/ + +// 加载 .env 文件(Node 20.6+ 支持 --env-file,但这里手动加载兼容性更好) +function loadEnv() { + try { + if (!fs.existsSync(envFile)) + return + const content = fs.readFileSync(envFile, 'utf-8') + for (const line of content.split(LINE_BREAK_RE)) { + const trimmed = line.trim() + if (!trimmed || trimmed.startsWith('#')) + continue + const eqIndex = trimmed.indexOf('=') + if (eqIndex === -1) + continue + const key = trimmed.slice(0, eqIndex).trim() + const value = trimmed.slice(eqIndex + 1).trim() + if (key && !(key in process.env)) { + process.env[key] = value + } + } + } + catch {} +} + +loadEnv() + +const cli = cac('cook') + +cli + .command('convert', '将本地 CSV 数据转换为 JSON') + .action(() => { + runConvert() + }) + +cli + .command('fetch', '从飞书拉取菜谱数据并生成 CSV + JSON') + .action(async () => { + const { runFetch } = await import('./commands/fetch.js') + await runFetch() + }) + +cli.help() +cli.version(version) +cli.parse() diff --git a/packages/cook/src/utils/config.ts b/packages/cook/src/utils/config.ts new file mode 100644 index 0000000..44054d1 --- /dev/null +++ b/packages/cook/src/utils/config.ts @@ -0,0 +1,30 @@ +import path from 'node:path' +import { fileURLToPath } from 'node:url' + +// 基于当前文件位置计算 monorepo 根目录 +// config.ts → src/utils/ → packages/cook/ → 项目根 +const __dirname = path.dirname(fileURLToPath(import.meta.url)) +const root = path.resolve(__dirname, '../../../..') + +// monorepo 根目录 +export const rootDir = root + +// .env 文件路径 +export const envFile = path.resolve(root, '.env') + +// Data 文件路径 +export const recipeCsvFile = path.resolve(root, 'app/data/recipe.csv') +export const recipeJsonFile = path.resolve(root, 'app/data/recipe.json') +export const incompatibleFoodsCsvFile = path.resolve(root, 'app/data/incompatible-foods.csv') +export const incompatibleFoodsJsonFile = path.resolve(root, 'app/data/incompatible-foods.json') + +// CSV Headers +export const RECIPE_CSV_HEADERS = 'name,stuff,bv,difficulty,tags,methods,tools,' +export const INCOMPATIBLE_FOODS_CSV_HEADERS = 'foodA,foodB,reason' + +// 分隔符(食材、标签等使用中文顿号) +export const SEP = '、' + +// 飞书相关配置 +export const FEISHU_WIKI_NODE_TOKEN = 'KgxowvnB9iM91AkZEJHcNGoQnPg' +export const FEISHU_SHEET_ID = 'X4j9Bn' diff --git a/packages/cook/src/utils/csv.test.ts b/packages/cook/src/utils/csv.test.ts new file mode 100644 index 0000000..c3b1ce2 --- /dev/null +++ b/packages/cook/src/utils/csv.test.ts @@ -0,0 +1,261 @@ +import type { RecipeItem } from '../../types.js' +import { describe, expect, it } from 'vitest' +import { RECIPE_CSV_HEADERS } from './config.js' +import { cleanBv, parseRecipeCsv, recipesToCsv } from './csv.js' + +describe('cleanBv', () => { + it('should clean bilibili URL prefix', () => { + expect(cleanBv('https://www.bilibili.com/video/BV1234567890')).toBe('BV1234567890') + expect(cleanBv('BV1234567890')).toBe('BV1234567890') + }) + + it('should handle empty or null values', () => { + expect(cleanBv('')).toBeUndefined() + expect(cleanBv(null)).toBeUndefined() + expect(cleanBv(undefined)).toBeUndefined() + expect(cleanBv(' ')).toBeUndefined() + }) +}) + +describe('parseRecipeCsv', () => { + it('should parse valid CSV data', () => { + const csvData = `${RECIPE_CSV_HEADERS} +宫保鸡丁,鸡胸肉、花生米,BV1234567890,简单,川菜、家常菜,炒、煎,炒锅, +青椒土豆丝,土豆、青椒,,普通,素菜,炒,炒锅,` + + const recipes = parseRecipeCsv(csvData) + + expect(recipes).toHaveLength(2) + expect(recipes[0]).toEqual({ + name: '宫保鸡丁', + stuff: ['鸡胸肉', '花生米'], + bv: 'BV1234567890', + difficulty: '简单', + tags: ['川菜', '家常菜'], + methods: ['炒', '煎'], + tools: ['炒锅'], + }) + expect(recipes[1]).toEqual({ + name: '青椒土豆丝', + stuff: ['土豆', '青椒'], + bv: undefined, + difficulty: '普通', + tags: ['素菜'], + methods: ['炒'], + tools: ['炒锅'], + }) + }) + + it('should filter out empty values in arrays', () => { + const csvData = `${RECIPE_CSV_HEADERS} +测试菜,土豆、、青椒,,,标签1、、标签2,炒、,工具1、,` + + const recipes = parseRecipeCsv(csvData) + + expect(recipes).toHaveLength(1) + expect(recipes[0]?.stuff).toEqual(['土豆', '青椒']) + expect(recipes[0]?.tags).toEqual(['标签1', '标签2']) + expect(recipes[0]?.methods).toEqual(['炒']) + expect(recipes[0]?.tools).toEqual(['工具1']) + }) + + it('should handle empty arrays correctly', () => { + const csvData = `${RECIPE_CSV_HEADERS} +简单菜,土豆,,,,,,` + + const recipes = parseRecipeCsv(csvData) + + expect(recipes).toHaveLength(1) + expect(recipes[0]?.stuff).toEqual(['土豆']) + expect(recipes[0]?.bv).toBeUndefined() + expect(recipes[0]?.difficulty).toBeUndefined() + expect(recipes[0]?.tags).toEqual([]) + expect(recipes[0]?.methods).toEqual([]) + expect(recipes[0]?.tools).toEqual([]) + }) + + it('should skip empty lines and lines without name', () => { + const csvData = `${RECIPE_CSV_HEADERS} + +宫保鸡丁,鸡胸肉,BV123,简单,川菜,炒,炒锅, +,土豆,,,,,` + + const recipes = parseRecipeCsv(csvData) + + expect(recipes).toHaveLength(1) + expect(recipes[0]?.name).toBe('宫保鸡丁') + }) + + it('should throw error for invalid CSV (no data)', () => { + expect(() => parseRecipeCsv('')).toThrow('No data in csv file') + expect(() => parseRecipeCsv(RECIPE_CSV_HEADERS)).toThrow('No data in csv file') + }) + + it('should return empty array for mismatched headers', () => { + const csvData = `wrong,headers,here +宫保鸡丁,鸡胸肉,BV123` + + const recipes = parseRecipeCsv(csvData) + + expect(recipes).toEqual([]) + }) + + it('should handle bilibili URLs in bv field', () => { + const csvData = `${RECIPE_CSV_HEADERS} +测试菜,土豆,https://www.bilibili.com/video/BV1234567890,简单,,,炒锅,` + + const recipes = parseRecipeCsv(csvData) + + expect(recipes[0]?.bv).toBe('BV1234567890') + }) +}) + +describe('recipesToCsv', () => { + it('should convert recipes to CSV format', () => { + const recipes: RecipeItem[] = [ + { + name: '宫保鸡丁', + stuff: ['鸡胸肉', '花生米'], + bv: 'BV1234567890', + difficulty: '简单', + tags: ['川菜', '家常菜'], + methods: ['炒', '煎'], + tools: ['炒锅'], + }, + { + name: '青椒土豆丝', + stuff: ['土豆', '青椒'], + tags: [], + methods: [], + tools: ['炒锅'], + }, + ] + + const csv = recipesToCsv(recipes) + + expect(csv).toContain(RECIPE_CSV_HEADERS) + expect(csv).toContain('宫保鸡丁,鸡胸肉、花生米,BV1234567890,简单,川菜、家常菜,炒、煎,炒锅') + expect(csv).toContain('青椒土豆丝,土豆、青椒,,,,,炒锅') + }) + + it('should handle empty arrays and undefined values', () => { + const recipes: RecipeItem[] = [ + { + name: '简单菜', + stuff: ['土豆'], + tags: [], + methods: [], + tools: [], + }, + ] + + const csv = recipesToCsv(recipes) + + expect(csv).toContain('简单菜,土豆,,,,,') + }) + + it('should handle special characters with papaparse (commas, quotes)', () => { + const recipes: RecipeItem[] = [ + { + name: '特殊菜品, 含逗号', + stuff: ['食材A, 含逗号', '食材B'], + bv: 'BV123', + difficulty: '简单', + tags: ['标签"含引号"', '标签2'], + methods: ['炒'], + tools: ['工具'], + }, + ] + + const csv = recipesToCsv(recipes) + + // papaparse 应该自动处理引号和逗号 + expect(csv).toContain(RECIPE_CSV_HEADERS) + + // 解析回去验证数据完整性 + const parsed = parseRecipeCsv(csv) + expect(parsed).toHaveLength(1) + expect(parsed[0]).toEqual({ + name: '特殊菜品, 含逗号', + stuff: ['食材A, 含逗号', '食材B'], + bv: 'BV123', + difficulty: '简单', + tags: ['标签"含引号"', '标签2'], + methods: ['炒'], + tools: ['工具'], + }) + }) + + it('should handle newlines in fields with papaparse', () => { + const recipes: RecipeItem[] = [ + { + name: '换行\n测试', + stuff: ['食材1', '食材2'], + tools: ['工具'], + }, + ] + + const csv = recipesToCsv(recipes) + + // 解析回去验证数据完整性 + const parsed = parseRecipeCsv(csv) + expect(parsed).toHaveLength(1) + expect(parsed[0]?.name).toBe('换行\n测试') + }) +}) + +describe('cSV roundtrip consistency', () => { + it('should maintain data consistency through parse and stringify cycle', () => { + const originalRecipes: RecipeItem[] = [ + { + name: '宫保鸡丁', + stuff: ['鸡胸肉', '花生米'], + bv: 'BV1234567890', + difficulty: '简单', + tags: ['川菜', '家常菜'], + methods: ['炒', '煎'], + tools: ['炒锅'], + }, + { + name: '青椒土豆丝', + stuff: ['土豆', '青椒'], + tags: [], + methods: [], + tools: ['炒锅'], + }, + ] + + // Convert to CSV + const csv = recipesToCsv(originalRecipes) + + // Parse back + const parsedRecipes = parseRecipeCsv(csv) + + // Should match original data + expect(parsedRecipes).toEqual(originalRecipes) + }) + + it('should produce same output as fetch command logic', () => { + // Simulate fetch command output format + const csvData = `${RECIPE_CSV_HEADERS} +宫保鸡丁,鸡胸肉、花生米,BV1234567890,简单,川菜、家常菜,炒、煎,炒锅, +青椒土豆丝,土豆、青椒,,普通,素菜,炒,炒锅,` + + const recipes = parseRecipeCsv(csvData) + + // Verify output format matches fetch command + expect(recipes[0]).toMatchObject({ + name: '宫保鸡丁', + stuff: ['鸡胸肉', '花生米'], + bv: 'BV1234567890', + difficulty: '简单', + tags: ['川菜', '家常菜'], + methods: ['炒', '煎'], + tools: ['炒锅'], + }) + + // Verify arrays don't contain empty strings + expect(recipes[0]?.stuff.every(s => s.length > 0)).toBe(true) + expect(recipes[0]?.tags?.every(t => t.length > 0)).toBe(true) + }) +}) diff --git a/packages/cook/src/utils/csv.ts b/packages/cook/src/utils/csv.ts new file mode 100644 index 0000000..e5dc56a --- /dev/null +++ b/packages/cook/src/utils/csv.ts @@ -0,0 +1,144 @@ +import type { IncompatibleRule, RecipeItem } from '../../types.js' +import consola from 'consola' +import Papa from 'papaparse' +import { + INCOMPATIBLE_FOODS_CSV_HEADERS, + RECIPE_CSV_HEADERS, + SEP, +} from './config.js' + +const LINE_BREAK_RE = /\r?\n/ + +/** + * 清洗 BV 号:去除可能的 bilibili URL 前缀 + */ +export function cleanBv(bv: string | undefined | null): string | undefined { + if (!bv) + return undefined + const cleaned = bv.trim().replace('https://www.bilibili.com/video/', '') + return cleaned || undefined +} + +/** + * 解析 recipe CSV 内容为 RecipeItem[] + */ +export function parseRecipeCsv(csvData: string): RecipeItem[] { + const parsed = Papa.parse(csvData, { + skipEmptyLines: true, + }) + + if (parsed.errors.length > 0) { + consola.warn('CSV 解析警告:', parsed.errors) + } + + const rows = parsed.data + if (rows.length < 2) { + throw new Error('No data in csv file') + } + + // 验证表头 + const headerRow = rows[0]?.join(',') + if (headerRow !== RECIPE_CSV_HEADERS) { + consola.warn(`Headers Changed: ${headerRow}`) + return [] + } + + const recipes: RecipeItem[] = [] + + // 从第二行开始处理数据 + for (let i = 1; i < rows.length; i++) { + const row = rows[i] + if (!row || row.length < 7) { + consola.warn(`Invalid row ${i + 1}: ${row?.join(',')}`) + continue + } + + const name = row[0]?.trim() || '' + if (!name) + continue + + const stuff = row[1]?.trim().split(SEP).filter(Boolean) || [] + const bv = cleanBv(row[2]) + const difficulty = row[3]?.trim() as RecipeItem['difficulty'] + const tags = row[4] ? row[4].trim().split(SEP).filter(Boolean) : [] + const methods = row[5] ? (row[5].trim().split(SEP).filter(Boolean)) as RecipeItem['methods'] : [] + const tools = row[6] ? row[6].trim().split(SEP).filter(Boolean) : [] + + recipes.push({ + name, + stuff, + bv: bv || undefined, + difficulty: difficulty || undefined, + tags: tags.length > 0 ? tags : [], + methods: methods.length > 0 ? methods : [], + tools, + }) + } + + return recipes +} + +/** + * 解析 incompatible-foods CSV 内容为 IncompatibleRule[] + */ +export function parseIncompatibleFoodsCsv(csvData: string): IncompatibleRule[] { + const lines = csvData.split(LINE_BREAK_RE) + + if (lines.length < 2) { + throw new Error('No data in incompatible foods csv file') + } + + if (lines[0]?.trim() !== INCOMPATIBLE_FOODS_CSV_HEADERS) { + consola.warn(`Headers Changed: ${lines[0]}`) + return [] + } + + const rules: IncompatibleRule[] = [] + + lines.slice(1).forEach((line) => { + if (line.trim()) { + const attrs = line.split(',') + if (attrs.length < 3) { + consola.warn(`Invalid line: ${line}`) + return + } + + const foodA = attrs[0]?.trim() + const foodB = attrs[1]?.trim() + const reason = attrs[2]?.trim() + + if (!foodA || !foodB || !reason) { + consola.warn(`Missing required field(s) in line: ${line}`) + return + } + + rules.push({ foodA, foodB, reason }) + } + }) + + return rules +} + +/** + * 将 RecipeItem[] 转为 CSV 字符串 + */ +export function recipesToCsv(recipes: RecipeItem[]): string { + const headers = RECIPE_CSV_HEADERS.split(',') + + const rows = recipes.map(item => [ + item.name, + item.stuff.join(SEP), + item.bv || '', + item.difficulty || '', + item.tags?.join(SEP) || '', + item.methods?.join(SEP) || '', + item.tools?.join(SEP) || '', + ]) + + const csv = Papa.unparse({ + fields: headers, + data: rows, + }) + + return csv +} diff --git a/packages/cook/src/utils/feishu.ts b/packages/cook/src/utils/feishu.ts new file mode 100644 index 0000000..fc2563b --- /dev/null +++ b/packages/cook/src/utils/feishu.ts @@ -0,0 +1,96 @@ +import process from 'node:process' +import * as lark from '@larksuiteoapi/node-sdk' +import consola from 'consola' +import { FEISHU_SHEET_ID, FEISHU_WIKI_NODE_TOKEN } from './config.js' + +export interface FeishuCredentials { + appId: string + appSecret: string +} + +/** + * 校验飞书环境变量 + */ +export function getFeishuCredentials(): FeishuCredentials { + const appId = process.env.FEISHU_APP_ID + const appSecret = process.env.FEISHU_APP_SECRET + + if (!appId || !appSecret) { + consola.error('缺少飞书应用凭证,请在 .env 文件中配置:') + consola.error(' FEISHU_APP_ID=<你的应用 ID>') + consola.error(' FEISHU_APP_SECRET=<你的应用密钥>') + consola.error('') + consola.error('获取方式:https://open.feishu.cn/app → 创建/选择应用 → 凭证与基础信息') + process.exit(1) + } + + return { appId, appSecret } +} + +/** + * 创建飞书 Client + */ +export function createFeishuClient(credentials: FeishuCredentials): lark.Client { + return new lark.Client({ + appId: credentials.appId, + appSecret: credentials.appSecret, + appType: lark.AppType.SelfBuild, + domain: lark.Domain.Feishu, + }) +} + +/** + * 从 Wiki 节点获取 spreadsheetToken(obj_token) + */ +export async function getSpreadsheetToken(client: lark.Client): Promise { + const res = await client.wiki.v2.space.getNode({ + params: { + token: FEISHU_WIKI_NODE_TOKEN, + }, + }) + + if (res.code !== 0) { + throw new Error(`获取 Wiki 节点信息失败: [${res.code}] ${res.msg}`) + } + + const objToken = res.data?.node?.obj_token + if (!objToken) { + throw new Error('Wiki 节点返回的 obj_token 为空') + } + + consola.info(`Wiki 节点类型: ${res.data?.node?.obj_type}, 标题: ${res.data?.node?.title}`) + return objToken +} + +/** + * 读取电子表格数据 + * 使用 sheets v2 API(需要 client.request 手动调用) + */ +export async function readSpreadsheetValues( + client: lark.Client, + spreadsheetToken: string, +): Promise<(string | null)[][]> { + // 使用 sheetId 作为 range,读取该 sheet 的全部数据 + const range = FEISHU_SHEET_ID + + const res = await client.request({ + method: 'GET', + url: `/open-apis/sheets/v2/spreadsheets/${spreadsheetToken}/values/${range}`, + params: { + valueRenderOption: 'ToString', + dateTimeRenderOption: 'FormattedString', + }, + }) + + if (res.code !== 0) { + throw new Error(`读取电子表格数据失败: [${res.code}] ${res.msg}`) + } + + const values = res.data?.valueRange?.values + if (!values || values.length === 0) { + throw new Error('电子表格数据为空') + } + + consola.info(`读取到 ${values.length} 行数据(含表头)`) + return values +} diff --git a/packages/cook/tsconfig.json b/packages/cook/tsconfig.json new file mode 100644 index 0000000..3e0b1eb --- /dev/null +++ b/packages/cook/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "target": "ES2022", + "module": "NodeNext", + "moduleResolution": "NodeNext", + "paths": { + "~/*": ["../../app/*"] + }, + "resolveJsonModule": true, + "strict": true, + "esModuleInterop": true, + "skipLibCheck": true + }, + "include": ["src/**/*.ts"], + "exclude": ["node_modules"] +} diff --git a/packages/cook/types.ts b/packages/cook/types.ts new file mode 100644 index 0000000..eaf162f --- /dev/null +++ b/packages/cook/types.ts @@ -0,0 +1,3 @@ +export type { Cookbook } from '@cook/types/cookbook' +export type { IncompatibleRule } from '@cook/types/incompatible' +export type { Difficulty, RecipeItem, Recipes, StuffItem } from '@cook/types/recipe' diff --git a/packages/types/README.md b/packages/types/README.md new file mode 100644 index 0000000..cd295eb --- /dev/null +++ b/packages/types/README.md @@ -0,0 +1,19 @@ +# @cook/types + +共享类型定义包,用于在项目各模块间共享 TypeScript 类型。 + +## 导出的类型 + +- `Cookbook`: 菜谱集合 +- `RecipeItem`, `Recipes`: 菜谱和菜谱列表 +- `StuffItem`: 食材 +- `IncompatibleRule`: 食物相克规则 +- `Difficulty`: 难度类型 + +## 使用 + +```ts +import type { Cookbook, RecipeItem } from '@cook/types' +// 或者单独导入 +import type { Cookbook } from '@cook/types/cookbook' +``` diff --git a/packages/types/package.json b/packages/types/package.json new file mode 100644 index 0000000..ac4e86d --- /dev/null +++ b/packages/types/package.json @@ -0,0 +1,15 @@ +{ + "name": "@cook/types", + "type": "module", + "version": "0.1.0", + "private": true, + "exports": { + ".": "./src/index.ts", + "./cookbook": "./src/cookbook.ts", + "./recipe": "./src/recipe.ts", + "./incompatible": "./src/incompatible-foods.ts" + }, + "files": [ + "src" + ] +} diff --git a/packages/types/src/cookbook.ts b/packages/types/src/cookbook.ts new file mode 100644 index 0000000..cfa969a --- /dev/null +++ b/packages/types/src/cookbook.ts @@ -0,0 +1,22 @@ +import type { Recipes } from './recipe' + +export interface Cookbook { + /** + * 菜谱 ID,自定义,唯一标识符 + */ + id: string + cover?: string + /** + * 菜谱名称 + */ + title: string + description: string + author: string | string[] + /** + * 菜谱 + */ + recipes: Recipes + + createdAt: string + updatedAt: string +} diff --git a/packages/types/src/incompatible-foods.ts b/packages/types/src/incompatible-foods.ts new file mode 100644 index 0000000..37bc6ea --- /dev/null +++ b/packages/types/src/incompatible-foods.ts @@ -0,0 +1,8 @@ +/** + * 食物相克规则 + */ +export interface IncompatibleRule { + foodA: string + foodB: string + reason: string +} diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts new file mode 100644 index 0000000..1f562ac --- /dev/null +++ b/packages/types/src/index.ts @@ -0,0 +1,3 @@ +export type { Cookbook } from './cookbook' +export type { IncompatibleRule } from './incompatible-foods' +export type { Difficulty, RecipeItem, Recipes, StuffItem } from './recipe' diff --git a/packages/types/src/recipe.ts b/packages/types/src/recipe.ts new file mode 100644 index 0000000..8b77227 --- /dev/null +++ b/packages/types/src/recipe.ts @@ -0,0 +1,69 @@ +export type Difficulty = '简单' | '普通' | '困难' + +export interface RecipeItem { + /** + * 菜名 + */ + name: string + /** + * 链接 + */ + link?: string + /** + * BiliBili video id + */ + bv?: string + /** + * 材料 + */ + stuff: string[] + /** + * 根据材料生成 + */ + emojis?: string[] + /** + * 难度 + */ + difficulty?: Difficulty | '' + /** + * 标签 + */ + tags?: string[] + /** + * 方式 + */ + methods?: ('炒' | '煎' | '烘' | '炸')[] + /** + * 工具 + */ + tools: string[] +} + +export type Recipes = RecipeItem[] + +export interface StuffItem { + /** + * 食材名称 + */ + name: string + /** + * 例如:🥔 + */ + emoji: string + /** + * 图片链接 + */ + image?: string + /** + * 别名,譬如:西红柿/番茄 + */ + alias?: string + /** + * 图标名称 + */ + icon?: string + /** + * 显示标签 + */ + label?: string +} diff --git a/packages/types/tsconfig.json b/packages/types/tsconfig.json new file mode 100644 index 0000000..809e28a --- /dev/null +++ b/packages/types/tsconfig.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "target": "ES2022", + "module": "ESNext", + "moduleResolution": "Bundler", + "strict": true, + "declaration": true, + "declarationMap": true, + "esModuleInterop": true, + "skipLibCheck": true + }, + "include": ["src/**/*.ts"], + "exclude": ["node_modules"] +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c253865..b4bf9bf 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5,8 +5,8 @@ settings: excludeLinksFromLockfile: false overrides: - unplugin: ^2.3.11 - vite: ^7.3.1 + unplugin: ^3.0.0 + vite: ^8.0.2 importers: @@ -31,8 +31,8 @@ importers: specifier: 7.0.3 version: 7.0.3(@capacitor/core@7.4.3) dayjs: - specifier: ^1.11.19 - version: 1.11.19 + specifier: ^1.11.20 + version: 1.11.20 vue-about-me: specifier: ^1.4.0 version: 1.4.0(typescript@5.9.3) @@ -41,11 +41,11 @@ importers: version: 2.0.0-beta.8(vue@3.5.29(typescript@5.9.3)) devDependencies: '@antfu/eslint-config': - specifier: ^7.6.1 - version: 7.6.1(@typescript-eslint/typescript-estree@8.56.1(typescript@5.9.3))(@typescript-eslint/utils@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(@unocss/eslint-plugin@66.6.4(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.29)(eslint-plugin-format@2.0.1(eslint@10.0.2(jiti@2.6.1)))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)(vitest@4.0.18(@types/node@25.3.3)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@1.8.0))(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + specifier: ^7.7.3 + version: 7.7.3(@typescript-eslint/typescript-estree@8.57.2(typescript@5.9.3))(@typescript-eslint/utils@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(@unocss/eslint-plugin@66.6.7(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.30)(eslint-plugin-format@2.0.1(eslint@10.1.0(jiti@2.6.1)))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)(vitest@4.1.1(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(jsdom@29.0.1(@noble/hashes@1.8.0))(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) '@capacitor/android': - specifier: ^8.1.0 - version: 8.1.0(@capacitor/core@7.4.3) + specifier: ^8.2.0 + version: 8.2.0(@capacitor/core@7.4.3) '@capacitor/cli': specifier: 7.4.3 version: 7.4.3 @@ -77,23 +77,23 @@ importers: specifier: ^1.2.5 version: 1.2.5 '@nuxt/devtools': - specifier: ^3.2.2 - version: 3.2.2(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)) + specifier: ^3.2.4 + version: 3.2.4(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)) '@nuxt/eslint': specifier: ^1.15.2 - version: 1.15.2(@typescript-eslint/utils@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.29)(eslint-plugin-format@2.0.1(eslint@10.0.2(jiti@2.6.1)))(eslint@10.0.2(jiti@2.6.1))(magicast@0.5.2)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + version: 1.15.2(@typescript-eslint/utils@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.30)(eslint-plugin-format@2.0.1(eslint@10.1.0(jiti@2.6.1)))(eslint@10.1.0(jiti@2.6.1))(magicast@0.5.2)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) '@nuxt/scripts': specifier: ^0.13.2 - version: 0.13.2(@unhead/vue@2.1.10(vue@3.5.29(typescript@5.9.3)))(db0@0.3.4)(ioredis@5.10.0)(magicast@0.5.2)(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)) + version: 0.13.2(@unhead/vue@2.1.12(vue@3.5.29(typescript@5.9.3)))(db0@0.3.4)(ioredis@5.10.0)(magicast@0.5.2)(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)) '@nuxt/test-utils': specifier: ^4.0.0 - version: 4.0.0(@vue/test-utils@2.4.6)(jsdom@28.1.0(@noble/hashes@1.8.0))(magicast@0.5.2)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.0.18(@types/node@25.3.3)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@1.8.0))(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + version: 4.0.0(@vue/test-utils@2.4.6)(jsdom@29.0.1(@noble/hashes@1.8.0))(magicast@0.5.2)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.1(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(jsdom@29.0.1(@noble/hashes@1.8.0))(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) '@nuxtjs/color-mode': specifier: ^4.0.0 version: 4.0.0(magicast@0.5.2) '@nuxtjs/ionic': specifier: 1.0.2 - version: 1.0.2(@stencil/core@4.38.3)(magicast@0.5.2)(vue-router@4.6.4(vue@3.5.29(typescript@5.9.3)))(vue@3.5.29(typescript@5.9.3)) + version: 1.0.2(@stencil/core@4.38.3)(magicast@0.5.2)(vue@3.5.29(typescript@5.9.3)) '@pinia/nuxt': specifier: ^0.11.3 version: 0.11.3(magicast@0.5.2)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3))) @@ -101,35 +101,35 @@ importers: specifier: ^1.0.3 version: 1.0.3(pinia@3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3))) '@types/node': - specifier: ^25.3.3 - version: 25.3.3 + specifier: ^25.5.0 + version: 25.5.0 '@unhead/vue': - specifier: ^2.1.10 - version: 2.1.10(vue@3.5.29(typescript@5.9.3)) + specifier: ^2.1.12 + version: 2.1.12(vue@3.5.29(typescript@5.9.3)) '@unocss/eslint-config': - specifier: ^66.6.4 - version: 66.6.4(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) + specifier: ^66.6.7 + version: 66.6.7(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) '@unocss/nuxt': - specifier: ^66.6.4 - version: 66.6.4(magicast@0.5.2)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + specifier: ^66.6.7 + version: 66.6.7(magicast@0.5.2)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) '@vite-pwa/nuxt': specifier: ^1.1.1 - version: 1.1.1(magicast@0.5.2)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + version: 1.1.1(magicast@0.5.2)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) '@vue/test-utils': specifier: ^2.4.6 version: 2.4.6 '@vueuse/nuxt': specifier: ^14.2.1 - version: 14.2.1(magicast@0.5.2)(nuxt@4.3.1(@parcel/watcher@2.5.1)(@types/node@25.3.3)(@vue/compiler-sfc@3.5.29)(cac@6.7.14)(db0@0.3.4)(eslint@10.0.2(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(rollup@4.59.0)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.5(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)) + version: 14.2.1(magicast@0.5.2)(nuxt@4.4.2(@babel/core@7.29.0)(@babel/plugin-proposal-decorators@7.28.0(@babel/core@7.29.0))(@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.29.0))(@parcel/watcher@2.5.1)(@types/node@25.5.0)(@vue/compiler-sfc@3.5.30)(cac@6.7.14)(db0@0.3.4)(esbuild@0.27.3)(eslint@10.1.0(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)))(rolldown@1.0.0-rc.11)(rollup-plugin-visualizer@6.0.5(rolldown@1.0.0-rc.11)(rollup@4.59.0))(rollup@4.59.0)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.6(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)) '@yunlefun/vue': specifier: ^0.1.1 version: 0.1.1 baseline-browser-mapping: - specifier: ^2.10.0 - version: 2.10.0 + specifier: ^2.10.10 + version: 2.10.10 bumpp: - specifier: ^10.4.1 - version: 10.4.1(magicast@0.5.2) + specifier: ^11.0.1 + version: 11.0.1 consola: specifier: ^3.4.2 version: 3.4.2 @@ -137,32 +137,35 @@ importers: specifier: ^4.3.0 version: 4.3.0 eslint: - specifier: ^10.0.2 - version: 10.0.2(jiti@2.6.1) + specifier: ^10.1.0 + version: 10.1.0(jiti@2.6.1) eslint-plugin-format: specifier: ^2.0.1 - version: 2.0.1(eslint@10.0.2(jiti@2.6.1)) + version: 2.0.1(eslint@10.1.0(jiti@2.6.1)) fake-indexeddb: specifier: ^6.2.5 version: 6.2.5 jsdom: - specifier: ^28.1.0 - version: 28.1.0(@noble/hashes@1.8.0) + specifier: ^29.0.1 + version: 29.0.1(@noble/hashes@1.8.0) lint-staged: - specifier: ^16.3.1 - version: 16.3.1 + specifier: ^16.4.0 + version: 16.4.0 nuxt: - specifier: ^4.3.1 - version: 4.3.1(@parcel/watcher@2.5.1)(@types/node@25.3.3)(@vue/compiler-sfc@3.5.29)(cac@6.7.14)(db0@0.3.4)(eslint@10.0.2(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(rollup@4.59.0)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.5(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2) + specifier: ^4.4.2 + version: 4.4.2(@babel/core@7.29.0)(@babel/plugin-proposal-decorators@7.28.0(@babel/core@7.29.0))(@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.29.0))(@parcel/watcher@2.5.1)(@types/node@25.5.0)(@vue/compiler-sfc@3.5.30)(cac@6.7.14)(db0@0.3.4)(esbuild@0.27.3)(eslint@10.1.0(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)))(rolldown@1.0.0-rc.11)(rollup-plugin-visualizer@6.0.5(rolldown@1.0.0-rc.11)(rollup@4.59.0))(rollup@4.59.0)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.6(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2) pinia: specifier: ^3.0.4 version: 3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)) sass: - specifier: ^1.97.3 - version: 1.97.3 + specifier: ^1.98.0 + version: 1.98.0 serve: - specifier: ^14.2.5 - version: 14.2.5 + specifier: ^14.2.6 + version: 14.2.6 + simple-git: + specifier: ^3.33.0 + version: 3.33.0 simple-git-hooks: specifier: ^2.13.1 version: 2.13.1 @@ -176,68 +179,89 @@ importers: specifier: ^5.9.3 version: 5.9.3 unocss: - specifier: ^66.6.4 - version: 66.6.4(@unocss/webpack@66.6.4)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + specifier: ^66.6.7 + version: 66.6.7(@unocss/webpack@66.6.7)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) vitest: - specifier: ^4.0.18 - version: 4.0.18(@types/node@25.3.3)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@1.8.0))(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + specifier: ^4.1.1 + version: 4.1.1(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(jsdom@29.0.1(@noble/hashes@1.8.0))(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) vue-tsc: - specifier: ^3.2.5 - version: 3.2.5(typescript@5.9.3) + specifier: ^3.2.6 + version: 3.2.6(typescript@5.9.3) docs: dependencies: '@yunyoujun/docs': specifier: ^0.1.14 - version: 0.1.14(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + version: 0.1.14(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) devDependencies: '@shikijs/vitepress-twoslash': specifier: ^3.23.0 version: 3.23.0(@nuxt/kit@3.21.1(magicast@0.5.2))(typescript@5.9.3) sass: - specifier: ^1.97.3 - version: 1.97.3 + specifier: ^1.98.0 + version: 1.98.0 typedoc: - specifier: ^0.28.17 - version: 0.28.17(typescript@5.9.3) + specifier: ^0.28.18 + version: 0.28.18(typescript@5.9.3) typedoc-plugin-markdown: - specifier: ^4.10.0 - version: 4.10.0(typedoc@0.28.17(typescript@5.9.3)) + specifier: ^4.11.0 + version: 4.11.0(typedoc@0.28.18(typescript@5.9.3)) typedoc-vitepress-theme: specifier: ^1.1.2 - version: 1.1.2(typedoc-plugin-markdown@4.10.0(typedoc@0.28.17(typescript@5.9.3))) + version: 1.1.2(typedoc-plugin-markdown@4.11.0(typedoc@0.28.18(typescript@5.9.3))) unocss: - specifier: ^66.6.4 - version: 66.6.4(@unocss/webpack@66.6.4)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + specifier: ^66.6.7 + version: 66.6.7(@unocss/webpack@66.6.7)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) unplugin-vue-components: - specifier: ^31.0.0 - version: 31.0.0(@nuxt/kit@3.21.1(magicast@0.5.2))(vue@3.5.29(typescript@5.9.3)) + specifier: ^32.0.0 + version: 32.0.0(@nuxt/kit@3.21.1(magicast@0.5.2))(vue@3.5.29(typescript@5.9.3)) vite-plugin-vue-devtools: - specifier: ^8.0.7 - version: 8.0.7(@nuxt/kit@3.21.1(magicast@0.5.2))(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)) + specifier: ^8.1.1 + version: 8.1.1(@nuxt/kit@3.21.1(magicast@0.5.2))(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)) vitepress: - specifier: ^2.0.0-alpha.16 - version: 2.0.0-alpha.16(@types/node@25.3.3)(change-case@5.4.4)(fuse.js@7.1.0)(jiti@2.6.1)(oxc-minify@0.112.0)(postcss@8.5.6)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + specifier: ^2.0.0-alpha.17 + version: 2.0.0-alpha.17(@types/node@25.5.0)(axios@1.13.6)(change-case@5.4.4)(esbuild@0.27.3)(fuse.js@7.1.0)(jiti@2.6.1)(oxc-minify@0.117.0)(postcss@8.5.8)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) vitepress-plugin-group-icons: specifier: ^1.7.1 - version: 1.7.1(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + version: 1.7.1(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) - scripts: + packages/cook: + dependencies: + '@clack/prompts': + specifier: ^1.1.0 + version: 1.1.0 + '@cook/types': + specifier: workspace:* + version: link:../types + '@larksuiteoapi/node-sdk': + specifier: ^1.59.0 + version: 1.59.0 + cac: + specifier: ^7.0.0 + version: 7.0.0 + consola: + specifier: ^3.4.2 + version: 3.4.2 + papaparse: + specifier: ^5.5.3 + version: 5.5.3 devDependencies: - simple-git: - specifier: ^3.32.3 - version: 3.32.3 + '@types/node': + specifier: ^25.5.0 + version: 25.5.0 + '@types/papaparse': + specifier: ^5.5.2 + version: 5.5.2 tsx: specifier: ^4.21.0 version: 4.21.0 + packages/types: {} + packages: - '@acemir/cssom@0.9.31': - resolution: {integrity: sha512-ZnR3GSaH+/vJ0YlHau21FjfLYjMpYVIzTD8M8vIEQvIGxeOXyXdzCI140rrCY862p/C/BbzWsjc1dgnM9mkoTA==} - - '@antfu/eslint-config@7.6.1': - resolution: {integrity: sha512-MRiskHFHYPF0R3eWDUkPPiHUM3fWXwAviVv9O8iMH5hVJkgp60oJYBMzbImKdqSGMuuyOMY3GXxWbH60t9rK0g==} + '@antfu/eslint-config@7.7.3': + resolution: {integrity: sha512-BtroDxTvmWtvr3yJkdWVCvwsKlnEdkreoeOyrdNezc/W5qaiQNf2xjcsQ3N5Yy0x27h+0WFfW8rG8YlVioG6dw==} hasBin: true peerDependencies: '@angular-eslint/eslint-plugin': ^21.1.0 @@ -319,8 +343,9 @@ packages: resolution: {integrity: sha512-2SZFvqMyvboVV1d15lMf7XiI3m7SDqXUuKaTymJYLN6dSGadqp+fVojqJlVoMlbZnlTmu3S0TLwLTJpvBMO1Aw==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} - '@asamuzakjp/dom-selector@6.8.1': - resolution: {integrity: sha512-MvRz1nCqW0fsy8Qz4dnLIvhOlMzqDVBabZx6lH+YywFDdjXhMY37SmpV1XFX3JzG5GWHn63j6HX6QPr3lZXHvQ==} + '@asamuzakjp/dom-selector@7.0.4': + resolution: {integrity: sha512-jXR6x4AcT3eIrS2fSNAwJpwirOkGcd+E7F7CP3zjdTqz9B/2huHOL8YJZBgekKwLML+u7qB/6P1LXQuMScsx0w==} + engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} '@asamuzakjp/nwsapi@2.3.9': resolution: {integrity: sha512-n8GuYSrI9bF7FFZ/SjhwevlHc8xaVlb/7HmHelnc/PZXBD2ZR49NnN9sMMuDdEGPeeRQ5d0hqlSlEpgCX3Wl0Q==} @@ -559,12 +584,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-typescript@7.27.1': - resolution: {integrity: sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-typescript@7.28.6': resolution: {integrity: sha512-+nDNmQye7nlnuuHDboPbGm00Vqg3oO8niRRL27/4LYHUsHYh0zJ1xWOz0uRwNFmM1Avzk8wZbc6rdiYhomzv/A==} engines: {node: '>=6.9.0'} @@ -859,12 +878,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typescript@7.28.5': - resolution: {integrity: sha512-x2Qa+v/CuEoX7Dr31iAfr0IhInrVOWZU/2vJMJ00FOR/2nM0BcBEclpaf9sWCDc+v5e9dMrhSH8/atq/kX7+bA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typescript@7.28.6': resolution: {integrity: sha512-0YWL2RFxOqEm9Efk5PvreamxPME8OyY0wM5wh5lHjF+VtVhdneCWGzZeSqzOfiobVqQaNCd2z0tQvnI9DaPWPw==} engines: {node: '>=6.9.0'} @@ -934,12 +947,12 @@ packages: resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==} engines: {node: '>=6.9.0'} - '@bomb.sh/tab@0.0.12': - resolution: {integrity: sha512-dYRwg4MqfHR5/BcTy285XOGRhjQFmNpaJBZ0tl2oU+RY595MQ5ApTF6j3OvauPAooHL6cfoOZMySQrOQztT8RQ==} + '@bomb.sh/tab@0.0.14': + resolution: {integrity: sha512-cHMk2LI430MVoX1unTt9oK1iZzQS4CYDz97MSxKLNErW69T43Z2QLFTpdS/3jVOIKrIADWfuxQ+nQNJkNV7E4w==} hasBin: true peerDependencies: cac: ^6.7.14 - citty: ^0.1.6 + citty: ^0.1.6 || ^0.2.0 commander: ^13.1.0 peerDependenciesMeta: cac: @@ -953,10 +966,10 @@ packages: resolution: {integrity: sha512-ctxtJ/eA+t+6q2++vj5j7FYX3nRu311q1wfYH3xjlLOsczhlhxAg2FWNUXhpGvAw3BWo1xBcvOV6/YLc2r5FJw==} hasBin: true - '@capacitor/android@8.1.0': - resolution: {integrity: sha512-z0acTPxj5DCy/U2FU7w+GA93oC+wdyKnsOcRg5rutDmSYa8Do1tzYqApKgf+hnuTNPbtrCTHp0Zy1cLiK/4MEw==} + '@capacitor/android@8.2.0': + resolution: {integrity: sha512-XLm5OsWLPfXQxDxzFS7SOdMEgGvW+2c7TGLXkTR2cSKdkWK5Abns4imlT5qghKYhjM9r74IrDkBWg/9ALUGNKQ==} peerDependencies: - '@capacitor/core': ^8.1.0 + '@capacitor/core': ^8.2.0 '@capacitor/app@7.1.0': resolution: {integrity: sha512-W7m09IWrUjZbo7AKeq+rc/KyucxrJekTBg0l4QCm/yDtCejE3hebxp/W2esU26KKCzMc7H3ClkUw32E9lZkwRA==} @@ -999,14 +1012,14 @@ packages: '@clack/core@1.0.0': resolution: {integrity: sha512-Orf9Ltr5NeiEuVJS8Rk2XTw3IxNC2Bic3ash7GgYeA8LJ/zmSNpSQ/m5UAhe03lA6KFgklzZ5KTHs4OAMA/SAQ==} - '@clack/core@1.0.1': - resolution: {integrity: sha512-WKeyK3NOBwDOzagPR5H08rFk9D/WuN705yEbuZvKqlkmoLM2woKtXb10OO2k1NoSU4SFG947i2/SCYh+2u5e4g==} + '@clack/core@1.1.0': + resolution: {integrity: sha512-SVcm4Dqm2ukn64/8Gub2wnlA5nS2iWJyCkdNHcvNHPIeBTGojpdJ+9cZKwLfmqy7irD4N5qLteSilJlE0WLAtA==} '@clack/prompts@1.0.0': resolution: {integrity: sha512-rWPXg9UaCFqErJVQ+MecOaWsozjaxol4yjnmYcGNipAWzdaWa2x+VJmKfGq7L0APwBohQOYdHC+9RO4qRXej+A==} - '@clack/prompts@1.0.1': - resolution: {integrity: sha512-/42G73JkuYdyWZ6m8d/CJtBrGl1Hegyc7Fy78m5Ob+jF85TOUmLR5XLce/U3LxYAw0kJ8CT5aI99RIvPHcGp/Q==} + '@clack/prompts@1.1.0': + resolution: {integrity: sha512-pkqbPGtohJAvm4Dphs2M8xE29ggupihHdy1x84HNojZuMtFsHiUlRvqD24tM2+XmI+61LlfNceM3Wr7U5QES5g==} '@cloudflare/kv-asset-handler@0.4.2': resolution: {integrity: sha512-SIOD2DxrRRwQ+jgzlXCqoEFiKOFqaPjhnNTGKXSRLvp1HiOvapLaFG2kEr9dYQTYe8rKrd9uvDUzmAITeNyaHQ==} @@ -1036,8 +1049,13 @@ packages: peerDependencies: '@csstools/css-tokenizer': ^4.0.0 - '@csstools/css-syntax-patches-for-csstree@1.0.29': - resolution: {integrity: sha512-jx9GjkkP5YHuTmko2eWAvpPnb0mB4mGRr2U7XwVNwevm8nlpobZEVk+GNmiYMk2VuA75v+plfXWyroWKmICZXg==} + '@csstools/css-syntax-patches-for-csstree@1.1.1': + resolution: {integrity: sha512-BvqN0AMWNAnLk9G8jnUT77D+mUbY/H2b3uDTvg2isJkHaOufUE2R3AOwxWo7VBQKT1lOdwdvorddo2B/lk64+w==} + peerDependencies: + css-tree: ^3.2.1 + peerDependenciesMeta: + css-tree: + optional: true '@csstools/css-tokenizer@4.0.0': resolution: {integrity: sha512-QxULHAm7cNu72w97JUNCBFODFaXpbDg+dP8b/oWFAZ2MTRppA3U00Y2L1HqaS4J6yBqxwa/Y3nMBaxVKbB/NsA==} @@ -1061,12 +1079,25 @@ packages: '@dprint/toml@0.7.0': resolution: {integrity: sha512-eFaQTcfxKHB+YyTh83x7GEv+gDPuj9q5NFOTaoj5rZmQTbj6OgjjMxUicmS1R8zYcx8YAq5oA9J3YFa5U6x2gA==} - '@dxup/nuxt@0.3.2': - resolution: {integrity: sha512-2f2usP4oLNsIGjPprvABe3f3GWuIhIDp0169pGLFxTDRI5A4d4sBbGpR+tD9bGZCT+1Btb6Q2GKlyv3LkDCW5g==} + '@dxup/nuxt@0.4.0': + resolution: {integrity: sha512-28LDotpr9G2knUse3cQYsOo6NJq5yhABv4ByRVRYJUmzf9Q31DI7rpRek4POlKy1aAcYyKgu5J2616pyqLohYg==} + peerDependencies: + typescript: '*' '@dxup/unimport@0.1.2': resolution: {integrity: sha512-/B8YJGPzaYq1NbsQmwgP8EZqg40NpTw4ZB3suuI0TplbxKHeK94jeaawLmVhCv+YwUnOpiWEz9U6SeThku/8JQ==} + '@e18e/eslint-plugin@0.2.0': + resolution: {integrity: sha512-mXgODVwhuDjTJ+UT+XSvmMmCidtGKfrV5nMIv1UtpWex2pYLsIM3RSpT8HWIMAebS9qANbXPKlSX4BE7ZvuCgA==} + peerDependencies: + eslint: ^9.0.0 || ^10.0.0 + oxlint: ^1.41.0 + peerDependenciesMeta: + eslint: + optional: true + oxlint: + optional: true + '@emnapi/core@1.7.1': resolution: {integrity: sha512-o1uhUASyo921r2XtHYOHy7gdkGLge8ghBEQHMWmyJFoXlpU58kIrhhN3w26lpQb6dspetweapMn2CSNwQ8I4wg==} @@ -1402,12 +1433,6 @@ packages: peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 - '@eslint-community/eslint-utils@4.9.0': - resolution: {integrity: sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - '@eslint-community/eslint-utils@4.9.1': resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -1427,14 +1452,18 @@ packages: eslint: optional: true - '@eslint/config-array@0.23.2': - resolution: {integrity: sha512-YF+fE6LV4v5MGWRGj7G404/OZzGNepVF8fxk7jqmqo3lrza7a0uUcDnROGRBG1WFC1omYUS/Wp1f42i0M+3Q3A==} + '@eslint/config-array@0.23.3': + resolution: {integrity: sha512-j+eEWmB6YYLwcNOdlwQ6L2OsptI/LO6lNBuLIqe5R7RetD658HLoF+Mn7LzYmAWWNNzdC6cqP+L6r8ujeYXWLw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} '@eslint/config-helpers@0.5.2': resolution: {integrity: sha512-a5MxrdDXEvqnIq+LisyCX6tQMPF/dSJpCfBgBauY+pNZ28yCtSsTvyTYrMhaI+LK26bVyCJfJkT0u8KIj2i1dQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@eslint/config-helpers@0.5.3': + resolution: {integrity: sha512-lzGN0onllOZCGroKJmRwY6QcEHxbjBw1gwB8SgRSqK8YbbtEXMvKynsXc3553ckIEBxsbMBU7oOZXKIPGZNeZw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@eslint/config-inspector@1.4.2': resolution: {integrity: sha512-Ay8QcvV/Tq6YDeoltwZDQsQTrcS5flPkOp4ylk1WdV7L2UGotINwjatjbAIEqBTmP3G0g3Ah8dnuHC8DsnKPYQ==} hasBin: true @@ -1449,6 +1478,10 @@ packages: resolution: {integrity: sha512-/nr9K9wkr3P1EzFTdFdMoLuo1PmIxjmwvPozwoSodjNBdefGujXQUF93u1DDZpEaTuDvMsIQddsd35BwtrW9Xw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@eslint/core@1.1.1': + resolution: {integrity: sha512-QUPblTtE51/7/Zhfv8BDwO0qkkzQL7P/aWWbqcf4xWLEYn1oKjdO0gglQBB4GAsu7u6wjijbCmzsUTy6mnk6oQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + '@eslint/js@9.39.3': resolution: {integrity: sha512-1B1VkCq6FuUNlQvlBYb+1jDu/gV297TIs/OeiaSR9l1H27SVW55ONE1e1Vp16NqP683+xEGzxYtv4XCiDPaQiw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -1457,8 +1490,8 @@ packages: resolution: {integrity: sha512-R8uZemG9dKTbru/DQRPblbJyXpObwKzo8rv1KYGGuPUPtjM4LXBYM9q5CIZAComzZupws3tWbDwam5AFpPLyJQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/object-schema@3.0.2': - resolution: {integrity: sha512-HOy56KJt48Bx8KmJ+XGQNSUMT/6dZee/M54XyUyuvTvPXJmsERRvBchsUVx1UMe1WwIH49XLAczNC7V2INsuUw==} + '@eslint/object-schema@3.0.3': + resolution: {integrity: sha512-iM869Pugn9Nsxbh/YHRqYiqd23AmIbxJOcpUMOuWCVNdoQJ5ZtwL6h3t0bcZzJUlC3Dq9jCFCESBZnX0GTv7iQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} '@eslint/plugin-kit@0.4.1': @@ -1469,8 +1502,12 @@ packages: resolution: {integrity: sha512-bIZEUzOI1jkhviX2cp5vNyXQc6olzb2ohewQubuYlMXZ2Q/XjBO0x0XhGPvc9fjSIiUN0vw+0hq53BJ4eQSJKQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@exodus/bytes@1.14.1': - resolution: {integrity: sha512-OhkBFWI6GcRMUroChZiopRiSp2iAMvEBK47NhJooDqz1RERO4QuZIZnjP63TXX8GAiLABkYmX+fuQsdJ1dd2QQ==} + '@eslint/plugin-kit@0.6.1': + resolution: {integrity: sha512-iH1B076HoAshH1mLpHMgwdGeTs0CYwL0SPMkGuSebZrwBp16v415e9NZXg2jtrqPVQjf6IANe2Vtlr5KswtcZQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + '@exodus/bytes@1.15.0': + resolution: {integrity: sha512-UY0nlA+feH81UGSHv92sLEPLCeZFjXOuHhrIo0HQydScuQc8s0A7kL/UdgwgDq8g8ilksmuoF35YVTNphV2aBQ==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: '@noble/hashes': ^1.8.0 || ^2.0.0 @@ -1650,6 +1687,9 @@ packages: '@kwsites/promise-deferred@1.1.1': resolution: {integrity: sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==} + '@larksuiteoapi/node-sdk@1.59.0': + resolution: {integrity: sha512-sBpkruTvZDOxnVtoTbepWKRX0j1Y1ZElQYu0x7+v088sI9pcpbVp6ZzCGn62dhrKPatzNyCJyzYCPXPYQWccrA==} + '@mapbox/node-pre-gyp@2.0.0': resolution: {integrity: sha512-llMXd39jtP0HpQLVI37Bf1m2ADlEb35GYSh1SDSLsBhR+5iCxiNGlT31yqbNtVHygHAtMy6dWFERpU2JgufhPg==} engines: {node: '>=18'} @@ -1677,12 +1717,12 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} - '@nuxt/cli@3.33.1': - resolution: {integrity: sha512-/sCrcI0WemING9zASaXPgPDY7PrQTPlRyCXlSgGx8VwRAkWbxGaPhIc3kZQikgLwVAwy+muWVV4Wks8OTtW5Tw==} - engines: {node: ^16.10.0 || >=18.0.0} + '@nuxt/cli@3.34.0': + resolution: {integrity: sha512-KVI4xSo96UtUUbmxr9ouWTytbj1LzTw5alsM4vC/gSY/l8kPMRAlq0XpNSAVTDJyALzLY70WhaIMX24LJLpdFw==} + engines: {node: ^16.14.0 || >=18.0.0} hasBin: true peerDependencies: - '@nuxt/schema': ^4.3.0 + '@nuxt/schema': ^4.3.1 peerDependenciesMeta: '@nuxt/schema': optional: true @@ -1693,23 +1733,28 @@ packages: '@nuxt/devtools-kit@2.7.0': resolution: {integrity: sha512-MIJdah6CF6YOW2GhfKnb8Sivu6HpcQheqdjOlZqShBr+1DyjtKQbAKSCAyKPaoIzZP4QOo2SmTFV6aN8jBeEIQ==} peerDependencies: - vite: ^7.3.1 + vite: ^8.0.2 '@nuxt/devtools-kit@3.2.2': resolution: {integrity: sha512-07E1phqoVPNlexlkrYuOMPhTzLIRjcl9iEqyc/vZLH2zWeH/T1X3v+RLTVW5Oio40f/XBp9yQuyihmX34ddjgQ==} peerDependencies: - vite: ^7.3.1 + vite: ^8.0.2 - '@nuxt/devtools-wizard@3.2.2': - resolution: {integrity: sha512-FaKV3xZF+Sj2ORxJNWTUalnEV8cpXW2rkg60KzQd7LryEHgUdFMuY/oTSVh9YmURqSzwVlfYd1Su56yi02pxlA==} + '@nuxt/devtools-kit@3.2.4': + resolution: {integrity: sha512-Yxy2Xgmq5hf3dQy983V0xh0OJV2mYwRZz9eVIGc3EaribdFGPDNGMMbYqX9qCty3Pbxn/bCF3J0UyPaNlHVayQ==} + peerDependencies: + vite: ^8.0.2 + + '@nuxt/devtools-wizard@3.2.4': + resolution: {integrity: sha512-5tu2+Quu9XTxwtpzM8CUN0UKn/bzZIfJcoGd+at5Yy1RiUQJ4E52tRK0idW1rMSUDkbkvX3dSnu8Tpj7SAtWdQ==} hasBin: true - '@nuxt/devtools@3.2.2': - resolution: {integrity: sha512-b6roSuKed5XMg09oWejXb4bRG+iYPDFRHEP2HpAfwpFWgAhpiQIAdrdjZNt4f/pzbfhDqb1R5TSa1KmztOuMKw==} + '@nuxt/devtools@3.2.4': + resolution: {integrity: sha512-VPbFy7hlPzWpEZk4BsuVpNuHq1ZYGV9xezjb7/NGuePuNLqeNn74YZugU+PCtva7OwKhEeTXmMK0Mqo/6+nwNA==} hasBin: true peerDependencies: '@vitejs/devtools': '*' - vite: ^7.3.1 + vite: ^8.0.2 peerDependenciesMeta: '@vitejs/devtools': optional: true @@ -1756,14 +1801,25 @@ packages: resolution: {integrity: sha512-UjBFt72dnpc+83BV3OIbCT0YHLevJtgJCHpxMX0YRKWLDhhbcDdUse87GtsQBrjvOzK7WUNUYLDS/hQLYev5rA==} engines: {node: '>=18.12.0'} - '@nuxt/nitro-server@4.3.1': - resolution: {integrity: sha512-4aNiM69Re02gI1ywnDND0m6QdVKXhWzDdtvl/16veytdHZj3FSq57ZCwOClNJ7HQkEMqXgS+bi6S2HmJX+et+g==} + '@nuxt/kit@4.4.2': + resolution: {integrity: sha512-5+IPRNX2CjkBhuWUwz0hBuLqiaJPRoKzQ+SvcdrQDbAyE+VDeFt74VpSFr5/R0ujrK4b+XnSHUJWdS72w6hsog==} + engines: {node: '>=18.12.0'} + + '@nuxt/nitro-server@4.4.2': + resolution: {integrity: sha512-iMTfraWcpA0MuEnnEI8JFK/4DODY4ss1CfB8m3sBVOqW9jpY1Z6hikxzrtN+CadtepW2aOI5d8TdX5hab+Sb4Q==} engines: {node: ^20.19.0 || >=22.12.0} peerDependencies: - nuxt: ^4.3.1 + '@babel/plugin-proposal-decorators': ^7.25.0 + '@rollup/plugin-babel': ^6.0.0 || ^7.0.0 + nuxt: ^4.4.2 + peerDependenciesMeta: + '@babel/plugin-proposal-decorators': + optional: true + '@rollup/plugin-babel': + optional: true - '@nuxt/schema@4.3.1': - resolution: {integrity: sha512-S+wHJdYDuyk9I43Ej27y5BeWMZgi7R/UVql3b3qtT35d0fbpXW7fUenzhLRCCDC6O10sjguc6fcMcR9sMKvV8g==} + '@nuxt/schema@4.4.2': + resolution: {integrity: sha512-/q6C7Qhiricgi+PKR7ovBnJlKTL0memCbA1CzRT+itCW/oeYzUfeMdQ35mGntlBoyRPNrMXbzuSUhfDbSCU57w==} engines: {node: ^14.18.0 || >=16.10.0} '@nuxt/scripts@0.13.2': @@ -1833,16 +1889,25 @@ packages: vitest: optional: true - '@nuxt/vite-builder@4.3.1': - resolution: {integrity: sha512-LndnxPJzDUDbWAB8q5gZZN1mSOLHEyMOoj4T3pTdPydGf31QZdMR0V1fQ1fdRgtgNtWB3WLP0d1ZfaAOITsUpw==} + '@nuxt/vite-builder@4.4.2': + resolution: {integrity: sha512-fJaIwMA8ID6BU5EqmoDvnhq4qYDJeWjdHk4jfqy8D3Nm7CoUW0BvX7Ee92XoO05rtUiClGlk/NQ1Ii8hs3ZIbw==} engines: {node: ^20.19.0 || >=22.12.0} peerDependencies: - nuxt: 4.3.1 + '@babel/plugin-proposal-decorators': ^7.25.0 + '@babel/plugin-syntax-jsx': ^7.25.0 + nuxt: 4.4.2 rolldown: ^1.0.0-beta.38 + rollup-plugin-visualizer: ^6.0.0 || ^7.0.1 vue: ^3.3.4 peerDependenciesMeta: + '@babel/plugin-proposal-decorators': + optional: true + '@babel/plugin-syntax-jsx': + optional: true rolldown: optional: true + rollup-plugin-visualizer: + optional: true '@nuxtjs/color-mode@4.0.0': resolution: {integrity: sha512-xyaVR/TPLdMuRa2VOgH6b75jvmFEsn9QKL6ISldaAw38ooFJfWY1ts2F3ye43wcT/goCbcuvPuskF2f8yUZhlw==} @@ -1857,149 +1922,143 @@ packages: resolution: {integrity: sha512-XRO0zi2NIUKq2lUk3T1ecFSld1fMWRKE6naRFGkgkdeosx7IslyUKNv5Dcb5PJTja9tHJoFu0v/7yEpAkrkrTg==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@oxc-minify/binding-android-arm-eabi@0.112.0': - resolution: {integrity: sha512-m7TGBR2hjsBJIN9UJ909KBoKsuogo6CuLsHKvUIBXdjI0JVHP8g4ZHeB+BJpGn5LJdeSGDfz9MWiuXrZDRzunw==} + '@oxc-minify/binding-android-arm-eabi@0.117.0': + resolution: {integrity: sha512-5Hf2KsGRjxp3HnPU/mse7cQJa5tWfMFUPZQcgSMVsv2JZnGFFOIDzA0Oja2KDD+VPJqMpEJKc2dCHAGZgJxsGg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [android] - '@oxc-minify/binding-android-arm64@0.112.0': - resolution: {integrity: sha512-RvxOOkzvP5NeeoraBtgNJSBqO+XzlS7DooxST/drAXCfO52GsmxVB1N7QmifrsTYtH8GC2z3DTFjZQ1w/AJOWg==} + '@oxc-minify/binding-android-arm64@0.117.0': + resolution: {integrity: sha512-uuxGwxA5J4Sap+gz4nxyM/rer6q2A4X1Oe8HpE0CZQyb5cSBULQ15btZiVG3xOBctI5O+c2dwR1aZAP4oGKcLw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [android] - '@oxc-minify/binding-darwin-arm64@0.112.0': - resolution: {integrity: sha512-hDslO3uVHza3kB9zkcsi25JzN65Gj5ZYty0OvylS11Mhg9ydCYxAzfQ/tISHW/YmV1NRUJX8+GGqM1cKmrHaTA==} + '@oxc-minify/binding-darwin-arm64@0.117.0': + resolution: {integrity: sha512-lLBf75cxUSLydumToKtGTwbLqO/1urScblJ33Vx0uF38M2ZbL2x51AybBV5vlfLjYNrxvQ8ov0Bj/OhsVO/biA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] - '@oxc-minify/binding-darwin-x64@0.112.0': - resolution: {integrity: sha512-mWA2Y5bUyNoGM+gSGGHesgtQ3LDWgpRe4zDGkBDovxNIiDLBXqu/7QcuS+G918w8oG9VYm1q1iinILer/2pD1Q==} + '@oxc-minify/binding-darwin-x64@0.117.0': + resolution: {integrity: sha512-wBWwP1voLZMuN4hpe1HRtkPBd4/o/1qan5XssmmI/hewBvGHEHkyvVLS0zu+cKqXDxYzYvb/p+EqU+xSXhEl4A==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] - '@oxc-minify/binding-freebsd-x64@0.112.0': - resolution: {integrity: sha512-T7fsegxcy82xS0jWPXkz/BMhrkb3D7YOCiV0R9pDksjaov+iIFoNEWAoBsaC5NtpdzkX+bmffwDpu336EIfEeg==} + '@oxc-minify/binding-freebsd-x64@0.117.0': + resolution: {integrity: sha512-pYSacHw698oH2vb70iP1cHk6x0zhvAuOvdskvNtEqvfziu8MSjKXa699vA9Cx72+DH5rwVuj1I3f+7no2fWglA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] - '@oxc-minify/binding-linux-arm-gnueabihf@0.112.0': - resolution: {integrity: sha512-yePavbIilAcpVYc8vRsDCn3xJxHMXDZIiamyH9fuLosAHNELcLib4/JR4fhDk4NmHVagQH3kRhsnm5Q9cm3pAw==} + '@oxc-minify/binding-linux-arm-gnueabihf@0.117.0': + resolution: {integrity: sha512-Ugm4Qj7F2+bccjhHCjjnSNHBDPyvjPXWrntID4WJpSrPqt+Az/o0EGdty9sWOjQXRZiTVpa80uqCWZQUn94yTA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@oxc-minify/binding-linux-arm-musleabihf@0.112.0': - resolution: {integrity: sha512-lmPWLXtW6FspERhy97iP0hwbmLtL66xI29QQ9GpHmTiE4k+zv/FaefuV/Qw+LuHnmFSYzUNrLcxh4ulOZTIP2g==} + '@oxc-minify/binding-linux-arm-musleabihf@0.117.0': + resolution: {integrity: sha512-qrY6ZviO9wVRI/jl4nRZO4B9os8jaJQemMeWIyFInZNk3lhqihId8iBqMKibJnRaf+JRxLM9j68atXkFRhOHrg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@oxc-minify/binding-linux-arm64-gnu@0.112.0': - resolution: {integrity: sha512-gySS5XqU5MKs/oCjsTlVm8zb8lqcNKHEANsaRmhW2qvGKJoeGwFb6Fbq6TLCZMRuk143mLbncbverBCa1c3dog==} + '@oxc-minify/binding-linux-arm64-gnu@0.117.0': + resolution: {integrity: sha512-2VLJHKEFBRhCihT/8uesuDPhXpbWu1OlHCxqQ7pdFVqKik1Maj5E9oSDcYzxqfaCRStvTHkmLVWJBK5CVcIadg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [glibc] - '@oxc-minify/binding-linux-arm64-musl@0.112.0': - resolution: {integrity: sha512-IRFMZX589lr3rjG0jc8N261/7wqFq2Vl0OMrJWeFls5BF8HiB+fRYuf0Zy2CyRH6NCY2vbdDdp+QCAavQGVsGw==} + '@oxc-minify/binding-linux-arm64-musl@0.117.0': + resolution: {integrity: sha512-C3zapJconWpl2Y7LR3GkRkH6jxpuV2iVUfkFcHT5Ffn4Zu7l88mZa2dhcfdULZDybN1Phka/P34YUzuskUUrXw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [musl] - '@oxc-minify/binding-linux-ppc64-gnu@0.112.0': - resolution: {integrity: sha512-V/69XqIW9hCUceDpcZh79oDg+F4ptEgIfKRENzYs41LRbSoJ7sNjjcW4zifqyviTvzcnXLgK4uoTyoymmNZBMQ==} + '@oxc-minify/binding-linux-ppc64-gnu@0.117.0': + resolution: {integrity: sha512-2T/Bm+3/qTfuNS4gKSzL8qbiYk+ErHW2122CtDx+ilZAzvWcJ8IbqdZIbEWOlwwe03lESTxPwTBLFqVgQU2OeQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ppc64] os: [linux] libc: [glibc] - '@oxc-minify/binding-linux-riscv64-gnu@0.112.0': - resolution: {integrity: sha512-zghvexySyGXGNW+MutjZN7UGTyOQl56RWMlPe1gb+knBm/+0hf9qjk7Q6ofm2tSte+vQolPfQttifGl0dP9uvQ==} + '@oxc-minify/binding-linux-riscv64-gnu@0.117.0': + resolution: {integrity: sha512-MKLjpldYkeoB4T+yAi4aIAb0waifxUjLcKkCUDmYAY3RqBJTvWK34KtfaKZL0IBMIXfD92CbKkcxQirDUS9Xcg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] libc: [glibc] - '@oxc-minify/binding-linux-riscv64-musl@0.112.0': - resolution: {integrity: sha512-E4a8VUFDJPb2mPcc7J4NQQPi1ssHKF7/g4r6KD2+SBVERIaEEd3cGNqR7SG3g82/BLGV2UDoQe/WvZCkt5M/bQ==} + '@oxc-minify/binding-linux-riscv64-musl@0.117.0': + resolution: {integrity: sha512-UFVcbPvKUStry6JffriobBp8BHtjmLLPl4bCY+JMxIn/Q3pykCpZzRwFTcDurG/kY8tm+uSNfKKdRNa5Nh9A7g==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] libc: [musl] - '@oxc-minify/binding-linux-s390x-gnu@0.112.0': - resolution: {integrity: sha512-2Hx87sK3y6jBV364Mvv0zyxiITIuy26Ixenv6pK7e+4an3HgNdhAj8nk3aLoLTTSvLik5/MaGhcZGEu9tYV1aA==} + '@oxc-minify/binding-linux-s390x-gnu@0.117.0': + resolution: {integrity: sha512-B9GyPQ1NKbvpETVAMyJMfRlD3c6UJ7kiuFUAlx9LTYiQL+YIyT6vpuRlq1zgsXxavZluVrfeJv6x0owV4KDx4Q==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [s390x] os: [linux] libc: [glibc] - '@oxc-minify/binding-linux-x64-gnu@0.112.0': - resolution: {integrity: sha512-2MSCnEPLk9ddSouMhJo78Xy2/JbYC80OYzWdR4yWTGSULsgH3d1VXg73DSwFL8vU7Ad9oK10DioBY2ww7sQTEg==} + '@oxc-minify/binding-linux-x64-gnu@0.117.0': + resolution: {integrity: sha512-fXfhtr+WWBGNy4M5GjAF5vu/lpulR4Me34FjTyaK9nDrTZs7LM595UDsP1wliksqp4hD/KdoqHGmbCrC+6d4vA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [glibc] - '@oxc-minify/binding-linux-x64-musl@0.112.0': - resolution: {integrity: sha512-HAPfmQKlkVi97/zRonVE9t/kKUG3ni+mOuU1Euw+3s37KwUuOJjmcwXdclVgXKBlTkCGO0FajPwW5dAJeIXCCw==} + '@oxc-minify/binding-linux-x64-musl@0.117.0': + resolution: {integrity: sha512-jFBgGbx1oLadb83ntJmy1dWlAHSQanXTS21G4PgkxyONmxZdZ/UMKr7KsADzMuoPsd2YhJHxzRpwJd9U+4BFBw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [musl] - '@oxc-minify/binding-openharmony-arm64@0.112.0': - resolution: {integrity: sha512-bLnMojcPadYzMNpB6IAqMiTOag4etc0zbs8On73JsotO1W5c5/j/ncplpSokpEpNasKRUpHVRXpmq0KRXprNhw==} + '@oxc-minify/binding-openharmony-arm64@0.117.0': + resolution: {integrity: sha512-nxPd9vx1vYz8IlIMdl9HFdOK/ood1H5hzbSFsyO8JU55tkcJoBL8TLCbuFf9pHpOy27l2gcPyV6z3p4eAcTH5Q==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] - '@oxc-minify/binding-wasm32-wasi@0.112.0': - resolution: {integrity: sha512-tv7PmHYq/8QBlqMaDjsy51GF5KQkG17Yc/PsgB5OVndU34kwbQuebBIic7UfK9ygzidI8moYq3ztnu3za/rqHw==} + '@oxc-minify/binding-wasm32-wasi@0.117.0': + resolution: {integrity: sha512-pSvjJ6cCCfEXSteWSiVfZhdRzvpmS3tLhlXrXTYiuTDFrkRCobRP39SRwAzK23rE9i/m2JAaES2xPEW6+xu85g==} engines: {node: '>=14.0.0'} cpu: [wasm32] - '@oxc-minify/binding-win32-arm64-msvc@0.112.0': - resolution: {integrity: sha512-d+jes2jwRkcBSpcaZC6cL8GBi56Br6uAorn9dfquhWLczWL+hHSvvVrRgT1i5/6dkf5UWx2zdoEsAMiJ11w78A==} + '@oxc-minify/binding-win32-arm64-msvc@0.117.0': + resolution: {integrity: sha512-9NoT9baFrWPdJRIZVQ1jzPZW9TjPT2sbzQyDdoK7uD1V8JXCe1L2y7sp9k2ldZZheaIcmtNwHc7jyD7kYz/0XQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [win32] - '@oxc-minify/binding-win32-ia32-msvc@0.112.0': - resolution: {integrity: sha512-TV1C3qDwj7//jNIi5tnNRhReSUgtaRQKi5KobDE6zVAc5gjeuBA8G2qizS9ziXlf/I0dlelrGmGMMDJmH9ekWg==} + '@oxc-minify/binding-win32-ia32-msvc@0.117.0': + resolution: {integrity: sha512-E51LTjkRei5u2dpFiYSObuh+e43xg45qlmilSTd0XDGFdYJCOv62Q0MEn61TR+efQYPNleYwWdTS9t+tp9p/4w==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ia32] os: [win32] - '@oxc-minify/binding-win32-x64-msvc@0.112.0': - resolution: {integrity: sha512-LML2Gld6VY8/+7a3VH4k1qngsBXvTkXgbmYgSYwaElqtiQiYaAcXfi0XKOUGe3k3GbBK4juAGixC31CrdFHAQw==} + '@oxc-minify/binding-win32-x64-msvc@0.117.0': + resolution: {integrity: sha512-I8vniPOxWQdxfIbXNvQLaJ1n8SrnqES6wuiAX10CU72sKsizkds9kDaJ1KzWvDy39RKhTBmD1cJsU2uxPFgizQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [win32] - '@oxc-parser/binding-android-arm-eabi@0.112.0': - resolution: {integrity: sha512-retxBzJ39Da7Lh/eZTn9+HJgTeDUxZIpuI0urOsmcFsBKXAth3lc1jIvwseQ9qbAI/VrsoFOXiGIzgclARbAHg==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm] - os: [android] - '@oxc-parser/binding-android-arm-eabi@0.115.0': resolution: {integrity: sha512-VoB2rhgoqgYf64d6Qs5emONQW8ASiTc0xp+aUE4JUhxjX+0pE3gblTYDO0upcN5vt9UlBNmUhAwfSifkfre7nw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [android] - '@oxc-parser/binding-android-arm64@0.112.0': - resolution: {integrity: sha512-pRkbBRbuIIsufUWpOJ+JHWfJFNupkidy4sbjfcm37e6xwYrn9LSKMLubPHvNaL1Zf92ZRhGiwaYkEcmaFg2VcA==} + '@oxc-parser/binding-android-arm-eabi@0.117.0': + resolution: {integrity: sha512-XarGPJpaobgKjfm7xRfCGWWszuPbm/OeP91NdMhxtcLZ/qLTmWF0P0z0gqmr0Uysi1F1v1BNtcST11THMrcEOw==} engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm64] + cpu: [arm] os: [android] '@oxc-parser/binding-android-arm64@0.115.0': @@ -2008,11 +2067,11 @@ packages: cpu: [arm64] os: [android] - '@oxc-parser/binding-darwin-arm64@0.112.0': - resolution: {integrity: sha512-fh6/KQL/cbH5DukT3VkdCqnULLuvVnszVKySD5IgSE0WZb32YZo/cPsPdEv052kk6w3N4agu+NTiMnZjcvhUIg==} + '@oxc-parser/binding-android-arm64@0.117.0': + resolution: {integrity: sha512-EPTs2EBijGmyhPso4rXAL0NSpECXER9IaVKFZEv83YcA6h4uhKW47kmYt+OZcSp130zhHx+lTWILDQ/LDkCRNA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] - os: [darwin] + os: [android] '@oxc-parser/binding-darwin-arm64@0.115.0': resolution: {integrity: sha512-ii/oOZjfGY1aszXTy29Z5DRyCEnBOrAXDVCvfdfXFQsOZlbbOa7NMHD7D+06YFe5qdxfmbWAYv4yn6QJi/0d2g==} @@ -2020,10 +2079,10 @@ packages: cpu: [arm64] os: [darwin] - '@oxc-parser/binding-darwin-x64@0.112.0': - resolution: {integrity: sha512-vUBOOY1E30vlu/DoTGDoT1UbLlwu5Yv9tqeBabAwRzwNDz8Skho16VKhsBDUiyqddtpsR3//v6vNk38w4c+6IA==} + '@oxc-parser/binding-darwin-arm64@0.117.0': + resolution: {integrity: sha512-3bAEpyih6r/Kb+Xzn1em1qBMClOS7NsVWgF86k95jpysR5ix/HlKFKSy7cax6PcS96HeHR4kjlME20n/XK1zNg==} engines: {node: ^20.19.0 || >=22.12.0} - cpu: [x64] + cpu: [arm64] os: [darwin] '@oxc-parser/binding-darwin-x64@0.115.0': @@ -2032,11 +2091,11 @@ packages: cpu: [x64] os: [darwin] - '@oxc-parser/binding-freebsd-x64@0.112.0': - resolution: {integrity: sha512-hnEtO/9AVnYWzrgnp6L+oPs/6UqlFeteUL6n7magkd2tttgmx1C01hyNNh6nTpZfLzEVJSNJ0S+4NTsK2q2CxA==} + '@oxc-parser/binding-darwin-x64@0.117.0': + resolution: {integrity: sha512-W7S99zFwVZhSbCxvjfZkioStFU249DBc4TJw/kK6kfKwx2Zew+jvizX5Y3ZPkAh7fBVUSNOdSeOqLBHLiP50tw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] - os: [freebsd] + os: [darwin] '@oxc-parser/binding-freebsd-x64@0.115.0': resolution: {integrity: sha512-CSJ5ldNm9wIGGkhaIJeGmxRMZbgxThRN+X1ufYQQUNi5jZDV/U3C2QDMywpP93fczNBj961hXtcUPO/oVGq4Pw==} @@ -2044,11 +2103,11 @@ packages: cpu: [x64] os: [freebsd] - '@oxc-parser/binding-linux-arm-gnueabihf@0.112.0': - resolution: {integrity: sha512-WxJrUz3pcIc2hp4lvJbvt/sTL33oX9NPvkD3vDDybE6tc0V++rS+hNOJxwXdD2FDIFPkHs/IEn5asEZFVH+VKw==} + '@oxc-parser/binding-freebsd-x64@0.117.0': + resolution: {integrity: sha512-xH76lqSdjCSY0KUMPwLXlvQ3YEm3FFVEQmgiOCGNf+stZ6E4Mo3nC102Bo8yKd7aW0foIPAFLYsHgj7vVI/axw==} engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm] - os: [linux] + cpu: [x64] + os: [freebsd] '@oxc-parser/binding-linux-arm-gnueabihf@0.115.0': resolution: {integrity: sha512-uWFwssE5dHfQ8lH+ktrsD9JA49+Qa0gtxZHUs62z1e91NgGz6O7jefHGI6aygNyKNS45pnnBSDSP/zV977MsOQ==} @@ -2056,8 +2115,8 @@ packages: cpu: [arm] os: [linux] - '@oxc-parser/binding-linux-arm-musleabihf@0.112.0': - resolution: {integrity: sha512-jj8A8WWySaJQqM9XKAIG8U2Q3qxhFQKrXPWv98d1oC35at+L1h+C+V4M3l8BAKhpHKCu3dYlloaAbHd5q1Hw6A==} + '@oxc-parser/binding-linux-arm-gnueabihf@0.117.0': + resolution: {integrity: sha512-9Hdm1imzrn4RdMYnQKKcy+7p7QsSPIrgVIZmpGSJT02nYDuBWLdG1pdYMPFoEo46yiXry3tS3RoHIpNbT1IiyQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] @@ -2068,12 +2127,11 @@ packages: cpu: [arm] os: [linux] - '@oxc-parser/binding-linux-arm64-gnu@0.112.0': - resolution: {integrity: sha512-G2F8H6FcAExVK5vvhpSh61tqWx5QoaXXUnSsj5FyuDiFT/K7AMMVSQVqnZREDc+YxhrjB0vnKjCcuobXK63kIw==} + '@oxc-parser/binding-linux-arm-musleabihf@0.117.0': + resolution: {integrity: sha512-Itszer/VCeYhYVJLcuKnHktlY8QyGnVxapltP68S1XRGlV6IsM9HQAElJRMwQhT6/GkMjOhANmkv2Qu/9v44lw==} engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm64] + cpu: [arm] os: [linux] - libc: [glibc] '@oxc-parser/binding-linux-arm64-gnu@0.115.0': resolution: {integrity: sha512-1ej/MjuTY9tJEunU/hUPIFmgH5PqgMQoRjNOvOkibtJ3Zqlw/+Lc+HGHDNET8sjbgIkWzdhX+p4J96A5CPdbag==} @@ -2082,12 +2140,12 @@ packages: os: [linux] libc: [glibc] - '@oxc-parser/binding-linux-arm64-musl@0.112.0': - resolution: {integrity: sha512-3R0iqjM3xYOZCnwgcxOQXH7hrz64/USDIuLbNTM1kZqQzRqaR4w7SwoWKU934zABo8d0op2oSwOp+CV3hZnM7A==} + '@oxc-parser/binding-linux-arm64-gnu@0.117.0': + resolution: {integrity: sha512-jBxD7DtlHQ36ivjjZdH0noQJgWNouenzpLmXNKnYaCsBfo3jY95m5iyjYQEiWkvkhJ3TJUAs7tQ1/kEpY7x/Kg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] - libc: [musl] + libc: [glibc] '@oxc-parser/binding-linux-arm64-musl@0.115.0': resolution: {integrity: sha512-HjsZbJPH9mMd4swJRywVMsDZsJX0hyKb1iNHo5ijRl5yhtbO3lj7ImSrrL1oZ1VEg0te4iKmDGGz/6YPLd1G8w==} @@ -2096,12 +2154,12 @@ packages: os: [linux] libc: [musl] - '@oxc-parser/binding-linux-ppc64-gnu@0.112.0': - resolution: {integrity: sha512-lAQf8PQxfgy7h0bmcfSVE3hg3qMueshPYULFsCrHM+8KefGZ9W+ZMvRyU33gLrB4w1O3Fz1orR0hmKMCRxXNrQ==} + '@oxc-parser/binding-linux-arm64-musl@0.117.0': + resolution: {integrity: sha512-QagKTDF4lrz8bCXbUi39Uq5xs7C7itAseKm51f33U+Dyar9eJY/zGKqfME9mKLOiahX7Fc1J3xMWVS0AdDXLPg==} engines: {node: ^20.19.0 || >=22.12.0} - cpu: [ppc64] + cpu: [arm64] os: [linux] - libc: [glibc] + libc: [musl] '@oxc-parser/binding-linux-ppc64-gnu@0.115.0': resolution: {integrity: sha512-zhhePoBrd7kQx3oClX/W6NldsuCbuMqaN9rRsY+6/WoorAb4j490PG/FjqgAXscWp2uSW2WV9L+ksn0wHrvsrg==} @@ -2110,10 +2168,10 @@ packages: os: [linux] libc: [glibc] - '@oxc-parser/binding-linux-riscv64-gnu@0.112.0': - resolution: {integrity: sha512-2QlvQBUhHuAE3ezD4X3CAEKMXdfgInggQ5Bj/7gb5NcYP3GyfLTj7c+mMu+BRwfC9B3AXBNyqHWbqEuuUvZyRQ==} + '@oxc-parser/binding-linux-ppc64-gnu@0.117.0': + resolution: {integrity: sha512-RPddpcE/0xxWaommWy0c5i/JdrXcXAkxBS2GOrAUh5LKmyCh03hpJedOAWszG4ADsKQwoUQQ1/tZVGRhZIWtKA==} engines: {node: ^20.19.0 || >=22.12.0} - cpu: [riscv64] + cpu: [ppc64] os: [linux] libc: [glibc] @@ -2124,12 +2182,12 @@ packages: os: [linux] libc: [glibc] - '@oxc-parser/binding-linux-riscv64-musl@0.112.0': - resolution: {integrity: sha512-v06iu0osHszgqJ1dLQRb6leWFU1sjG/UQk4MoVBtE6ZPewgfTkby6G9II1SpEAf2onnAuQceVYxQH9iuU3NJqw==} + '@oxc-parser/binding-linux-riscv64-gnu@0.117.0': + resolution: {integrity: sha512-ur/WVZF9FSOiZGxyP+nfxZzuv6r5OJDYoVxJnUR7fM/hhXLh4V/be6rjbzm9KLCDBRwYCEKJtt+XXNccwd06IA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] - libc: [musl] + libc: [glibc] '@oxc-parser/binding-linux-riscv64-musl@0.115.0': resolution: {integrity: sha512-79jBHSSh/YpQRAmvYoaCfpyToRbJ/HBrdB7hxK2ku2JMehjopTVo+xMJss/RV7/ZYqeezgjvKDQzapJbgcjVZA==} @@ -2138,12 +2196,12 @@ packages: os: [linux] libc: [musl] - '@oxc-parser/binding-linux-s390x-gnu@0.112.0': - resolution: {integrity: sha512-+5HhNHtxsdcd7+ljXFnn9FOoCNXJX3UPgIfIE6vdwS1HqdGNH6eAcVobuqGOp54l8pvcxDQA6F4cPswCgLrQfQ==} + '@oxc-parser/binding-linux-riscv64-musl@0.117.0': + resolution: {integrity: sha512-ujGcAx8xAMvhy7X5sBFi3GXML1EtyORuJZ5z2T6UV3U416WgDX/4OCi3GnoteeenvxIf6JgP45B+YTHpt71vpA==} engines: {node: ^20.19.0 || >=22.12.0} - cpu: [s390x] + cpu: [riscv64] os: [linux] - libc: [glibc] + libc: [musl] '@oxc-parser/binding-linux-s390x-gnu@0.115.0': resolution: {integrity: sha512-nA1TpxkhNTIOMMyiSSsa7XIVJVoOU/SsVrHIz3gHvWweB5PHCQfO7w+Lb2EP0lBWokv7HtA/KbF7aLDoXzmuMw==} @@ -2152,10 +2210,10 @@ packages: os: [linux] libc: [glibc] - '@oxc-parser/binding-linux-x64-gnu@0.112.0': - resolution: {integrity: sha512-jKwO7ZLNkjxwg7FoCLw+fJszooL9yXRZsDN0AQ1AQUTWq1l8GH/2e44k68N3fcP19jl8O8jGpqLAZcQTYk6skA==} + '@oxc-parser/binding-linux-s390x-gnu@0.117.0': + resolution: {integrity: sha512-hbsfKjUwRjcMZZvvmpZSc+qS0bHcHRu8aV/I3Ikn9BzOA0ZAgUE7ctPtce5zCU7bM8dnTLi4sJ1Pi9YHdx6Urw==} engines: {node: ^20.19.0 || >=22.12.0} - cpu: [x64] + cpu: [s390x] os: [linux] libc: [glibc] @@ -2166,12 +2224,12 @@ packages: os: [linux] libc: [glibc] - '@oxc-parser/binding-linux-x64-musl@0.112.0': - resolution: {integrity: sha512-TYqnuKV/p3eOc+N61E0961nA7DC+gaCeJ3+V2LcjJdTwFMdikqWL6uVk1jlrpUCBrozHDATVUKDZYH7r4FQYjQ==} + '@oxc-parser/binding-linux-x64-gnu@0.117.0': + resolution: {integrity: sha512-1QrTrf8rige7UPJrYuDKJLQOuJlgkt+nRSJLBMHWNm9TdivzP48HaK3f4q18EjNlglKtn03lgjMu4fryDm8X4A==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] - libc: [musl] + libc: [glibc] '@oxc-parser/binding-linux-x64-musl@0.115.0': resolution: {integrity: sha512-RmQmk+mjCB0nMNfEYhaCxwofLo1Z95ebHw1AGvRiWGCd4zhCNOyskgCbMogIcQzSB3SuEKWgkssyaiQYVAA4hQ==} @@ -2180,11 +2238,12 @@ packages: os: [linux] libc: [musl] - '@oxc-parser/binding-openharmony-arm64@0.112.0': - resolution: {integrity: sha512-ZhrVmWFifVEFQX4XPwLoVFDHw9tAWH9p9vHsHFH+5uCKdfVR+jje4WxVo6YrokWCboGckoOzHq5KKMOcPZfkRg==} + '@oxc-parser/binding-linux-x64-musl@0.117.0': + resolution: {integrity: sha512-gRvK6HPzF5ITRL68fqb2WYYs/hGviPIbkV84HWCgiJX+LkaOpp+HIHQl3zVZdyKHwopXToTbXbtx/oFjDjl8pg==} engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm64] - os: [openharmony] + cpu: [x64] + os: [linux] + libc: [musl] '@oxc-parser/binding-openharmony-arm64@0.115.0': resolution: {integrity: sha512-viigraWWQhhDvX5aGq+wrQq58k00Xq3MHz/0R4AFMxGlZ8ogNonpEfNc73Q5Ly87Z6sU9BvxEdG0dnYTfVnmew==} @@ -2192,21 +2251,21 @@ packages: cpu: [arm64] os: [openharmony] - '@oxc-parser/binding-wasm32-wasi@0.112.0': - resolution: {integrity: sha512-Gr8X2PUU3hX1g3F5oLWIZB8DhzDmjr5TfOrmn5tlBOo9l8ojPGdKjnIBfObM7X15928vza8QRKW25RTR7jfivg==} - engines: {node: '>=14.0.0'} - cpu: [wasm32] + '@oxc-parser/binding-openharmony-arm64@0.117.0': + resolution: {integrity: sha512-QPJvFbnnDZZY7xc+xpbIBWLThcGBakwaYA9vKV8b3+oS5MGfAZUoTFJcix5+Zg2Ri46sOfrUim6Y6jsKNcssAQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [openharmony] '@oxc-parser/binding-wasm32-wasi@0.115.0': resolution: {integrity: sha512-IzGCrMwXhpb4kTXy/8lnqqqwjI7eOvy+r9AhVw+hsr8t1ecBBEHprcNy0aKatFHN6hsX7UMHHQmBAQjVvL/p1A==} engines: {node: '>=14.0.0'} cpu: [wasm32] - '@oxc-parser/binding-win32-arm64-msvc@0.112.0': - resolution: {integrity: sha512-t5CDLbU70Ea88bGRhvU/dLJTc/Wcrtf2Jp534E8P3cgjAvHDjdKsfDDqBZrhybJ8Jv9v9vW5ngE40EK51BluDA==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm64] - os: [win32] + '@oxc-parser/binding-wasm32-wasi@0.117.0': + resolution: {integrity: sha512-+XRSNA0xt3pk/6CUHM7pykVe7M8SdifJk8LX1+fIp/zefvR3HBieZCbwG5un8gogNgh7srLycoh/cQA9uozv5g==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] '@oxc-parser/binding-win32-arm64-msvc@0.115.0': resolution: {integrity: sha512-/ym+Absk/TLFvbhh3se9XYuI1D7BrUVHw4RaG/2dmWKgBenrZHaJsgnRb7NJtaOyjEOLIPtULx1wDdVL0SX2eg==} @@ -2214,10 +2273,10 @@ packages: cpu: [arm64] os: [win32] - '@oxc-parser/binding-win32-ia32-msvc@0.112.0': - resolution: {integrity: sha512-rZH0JynCCwnhe2HfRoyNOl/Kfd9pudoWxgpC5OZhj7j77pMK0UOAa35hYDfrtSOUk2HLzrikV5dPUOY2DpSBSA==} + '@oxc-parser/binding-win32-arm64-msvc@0.117.0': + resolution: {integrity: sha512-GpxeGS+Vo030DsrXeRPc7OSJOQIyAHkM3mzwBcnQjg/79XnOIDDMXJ5X6/aNdkVt/+Pv35pqKzGA4TQau97x8w==} engines: {node: ^20.19.0 || >=22.12.0} - cpu: [ia32] + cpu: [arm64] os: [win32] '@oxc-parser/binding-win32-ia32-msvc@0.115.0': @@ -2226,10 +2285,10 @@ packages: cpu: [ia32] os: [win32] - '@oxc-parser/binding-win32-x64-msvc@0.112.0': - resolution: {integrity: sha512-oGHluohzmVFAuQrkEnl1OXAxMz2aYmimxUqIgKXpBgbr7PvFv0doELB273sX+5V3fKeggohKg1A2Qq21W9Z9cQ==} + '@oxc-parser/binding-win32-ia32-msvc@0.117.0': + resolution: {integrity: sha512-tchWEYiso1+objTZirmlR+w3fcIel6PVBOJ8NuC2Jr30dxBOiKUfFLovJLANwHg1+TzeD6pVSLIIIEf2T5o5lQ==} engines: {node: ^20.19.0 || >=22.12.0} - cpu: [x64] + cpu: [ia32] os: [win32] '@oxc-parser/binding-win32-x64-msvc@0.115.0': @@ -2238,135 +2297,144 @@ packages: cpu: [x64] os: [win32] - '@oxc-project/types@0.112.0': - resolution: {integrity: sha512-m6RebKHIRsax2iCwVpYW2ErQwa4ywHJrE4sCK3/8JK8ZZAWOKXaRJFl/uP51gaVyyXlaS4+chU1nSCdzYf6QqQ==} + '@oxc-parser/binding-win32-x64-msvc@0.117.0': + resolution: {integrity: sha512-ysRJAjIbB4e5y+t9PZs7TwbgOV/GVT//s30AORLCT/pedYwpYzHq6ApXK7is9fvyfZtgT3anNir8+esurmyaDw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [win32] '@oxc-project/types@0.115.0': resolution: {integrity: sha512-4n91DKnebUS4yjUHl2g3/b2T+IUdCfmoZGhmwsovZCDaJSs+QkVAM+0AqqTxHSsHfeiMuueT75cZaZcT/m0pSw==} - '@oxc-transform/binding-android-arm-eabi@0.112.0': - resolution: {integrity: sha512-r4LuBaPnOAi0eUOBNi880Fm2tO2omH7N1FRrL6+nyz/AjQ+QPPLtoyZJva0O+sKi1buyN/7IzM5p9m+5ANSDbg==} + '@oxc-project/types@0.117.0': + resolution: {integrity: sha512-C/kPXBphID44fXdsa2xSOCuzX8fKZiFxPsvucJ6Yfkr6CJlMA+kNLPNKyLoI+l9XlDsNxBrz6h7IIjKU8pB69w==} + + '@oxc-project/types@0.122.0': + resolution: {integrity: sha512-oLAl5kBpV4w69UtFZ9xqcmTi+GENWOcPF7FCrczTiBbmC0ibXxCwyvZGbO39rCVEuLGAZM84DH0pUIyyv/YJzA==} + + '@oxc-transform/binding-android-arm-eabi@0.117.0': + resolution: {integrity: sha512-17giX7h5VR9Eodru4OoSCFdgwLFIaUxeEn8JWe0vMZrAuRbT9NiDTy5dXdbGQBoO8aXPkbGS38FGlvbi31aujw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [android] - '@oxc-transform/binding-android-arm64@0.112.0': - resolution: {integrity: sha512-ve46vQcQrY8eGe8990VSlS9gkD+AogJqbtfOkeua+5sQGQTDgeIRRxOm7ktCo19uZc2bEBwXRJITgosd+NRVmQ==} + '@oxc-transform/binding-android-arm64@0.117.0': + resolution: {integrity: sha512-1LrDd1CPochtLx04pAafdah6QtOQQj0/Evttevi+0u8rCI5FKucIG7pqBHkIQi/y7pycFYIj+GebhET80maeUg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [android] - '@oxc-transform/binding-darwin-arm64@0.112.0': - resolution: {integrity: sha512-ddbmLU3Tr+i7MOynfwAXxUXud3SjJKlv7XNjaq08qiI8Av/QvhXVGc2bMhXkWQSMSBUeTDoiughKjK+Zsb6y/A==} + '@oxc-transform/binding-darwin-arm64@0.117.0': + resolution: {integrity: sha512-K1Xo52xJOvFfHSkz2ax9X5Qsku23RCfTIPbHZWdUCAQ1TQooI+sFcewSubhVUJ4DVK12/tYT//XXboumin+FHA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] - '@oxc-transform/binding-darwin-x64@0.112.0': - resolution: {integrity: sha512-TKvmNw96jQZPqYb4pRrzLFDailNB3YS14KNn+x2hwRbqc6CqY96S9PYwyOpVpYdxfoRjYO9WgX9SoS+62a1DPA==} + '@oxc-transform/binding-darwin-x64@0.117.0': + resolution: {integrity: sha512-ftFT/8Laolfq49mRRWLkIhd1AbJ0MI5bW3LwddvdoAg9zXwkx4qhzTYyBPRZhvXWftts+NjlHfHsXCOqI4tPtw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] - '@oxc-transform/binding-freebsd-x64@0.112.0': - resolution: {integrity: sha512-YPMkSCDaelO8HHYRMYjm+Q+IfkfIbdtQzwPuasItYkq8UUkNeHNPheNh2JkvQa3c+io3E9ePOgHQ2yihpk7o/Q==} + '@oxc-transform/binding-freebsd-x64@0.117.0': + resolution: {integrity: sha512-QDRyw0atg9BMnwOwnJeW6REzWPLEjiWtsCc2Sj612F1hCdvP+n0L3o8sHinEWM+BiOkOYtUxHA69WjUslc3G+g==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] - '@oxc-transform/binding-linux-arm-gnueabihf@0.112.0': - resolution: {integrity: sha512-nA7kzQGNEpuTRknst/IJ3l8hqmDmEda3aun6jkXgp7gKxESjuHeaNH04mKISxvJ7fIacvP2g/wtTSnm4u5jL8Q==} + '@oxc-transform/binding-linux-arm-gnueabihf@0.117.0': + resolution: {integrity: sha512-UvpvOjyQVgiIJahIpMT0qAsLJT8O1ibHTBgXGOsZkQgw1xmjARPQ07dpRcucPPn6cqCF3wrxfbqtr2vFHaMkdA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@oxc-transform/binding-linux-arm-musleabihf@0.112.0': - resolution: {integrity: sha512-w8GuLmckKlGc3YujaZKhtbFxziCcosvM2l9GnQjCb/yENWLGDiyQOy0BTAgPGdJwpYTiOeJblEXSuXYvlE1Ong==} + '@oxc-transform/binding-linux-arm-musleabihf@0.117.0': + resolution: {integrity: sha512-cIhztGFjKk8ngP+/7EPkEhzWMGr2neezxgWirSn/f/MirjH234oHHGJ2diKIbGQEsy0aOuJMTkL9NLfzfmH51A==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@oxc-transform/binding-linux-arm64-gnu@0.112.0': - resolution: {integrity: sha512-9LwwGnJ8+WT0rXcrI8M0RJtDNt91eMqcDPPEvJxhRFHIMcHTy5D5xT+fOl3Us0yMqKo3HUWkbfUYqAp4GoZ3Jw==} + '@oxc-transform/binding-linux-arm64-gnu@0.117.0': + resolution: {integrity: sha512-mXbDfvDN0RZVg7v4LohNzU0kK3fMAZgkUKTkpFVgxEvzibEG5VpSznkypUwHI4a8U8pz+K6mGaLetX3Xt+CvvA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [glibc] - '@oxc-transform/binding-linux-arm64-musl@0.112.0': - resolution: {integrity: sha512-Lg6VOuSd3oXv7J0eGywgqh/086h+qQzIBOD+47pYKMTTJcbDe+f3h/RgGoMKJE5HhiwT5sH1aGEJfIfaYUiVSw==} + '@oxc-transform/binding-linux-arm64-musl@0.117.0': + resolution: {integrity: sha512-ykxpPQp0eAcSmhy0Y3qKvdanHY4d8THPonDfmCoktUXb6r0X6qnjpJB3V+taN1wevW55bOEZd97kxtjTKjqhmg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] libc: [musl] - '@oxc-transform/binding-linux-ppc64-gnu@0.112.0': - resolution: {integrity: sha512-PXzmj82o1moA4IGphYImTRgc2youTi4VRfyFX3CHwLjxPcQ5JtcsgbDt4QUdOzXZ+zC07s5jf2ZzhRapEOlj2w==} + '@oxc-transform/binding-linux-ppc64-gnu@0.117.0': + resolution: {integrity: sha512-Rvspti4Kr7eq6zSrURK5WjscfWQPvmy/KjJZV45neRKW8RLonE3r9+NgrwSLGoHvQ3F24fbqlkplox1RtlhH5A==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ppc64] os: [linux] libc: [glibc] - '@oxc-transform/binding-linux-riscv64-gnu@0.112.0': - resolution: {integrity: sha512-vhJsMsVH/6xwa3bt1LGts33FXUkGjaEGDwsRyp4lIfOjSfQVWMtCmWMFNaA0dW9FVWdD2Gt2fSFBSZ+azDxlpg==} + '@oxc-transform/binding-linux-riscv64-gnu@0.117.0': + resolution: {integrity: sha512-Dr2ZW9ZZ4l1eQ5JUEUY3smBh4JFPCPuybWaDZTLn3ADZjyd8ZtNXEjeMT8rQbbhbgSL9hEgbwaqraole3FNThQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] libc: [glibc] - '@oxc-transform/binding-linux-riscv64-musl@0.112.0': - resolution: {integrity: sha512-cXWFb7z+2IjFUEcXtRwluq9oEG5qnyFCjiu3SWrgYNcWwPdHusv3I/7K5/CTbbi4StoZ5txbi7/iSfDHNyWuRw==} + '@oxc-transform/binding-linux-riscv64-musl@0.117.0': + resolution: {integrity: sha512-oD1Bnes1bIC3LVBSrWEoSUBj6fvatESPwAVWfJVGVQlqWuOs/ZBn1e4Nmbipo3KGPHK7DJY75r/j7CQCxhrOFQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] libc: [musl] - '@oxc-transform/binding-linux-s390x-gnu@0.112.0': - resolution: {integrity: sha512-eEFu4SRqJTJ20/88KRWmp+jpHKAw0Y1DsnSgpEeXyBIIcsOaLIUMU/TfYWUmqRbvbMV9rmOmI3kp5xWYUq6kSQ==} + '@oxc-transform/binding-linux-s390x-gnu@0.117.0': + resolution: {integrity: sha512-qT//IAPLvse844t99Kff5j055qEbXfwzWgvCMb0FyjisnB8foy25iHZxZIocNBe6qwrCYWUP1M8rNrB/WyfS1Q==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [s390x] os: [linux] libc: [glibc] - '@oxc-transform/binding-linux-x64-gnu@0.112.0': - resolution: {integrity: sha512-ST1MDT+TlOyZ1c5btrGinRSUW2Jf4Pa+0gdKwsyjDSOC3dxy2ZNkN3mosTf4ywc3J+mxfYKqtjs7zSwHz03ILA==} + '@oxc-transform/binding-linux-x64-gnu@0.117.0': + resolution: {integrity: sha512-2YEO5X+KgNzFqRVO5dAkhjcI5gwxus4NSWVl/+cs2sI6P0MNPjqE3VWPawl4RTC11LvetiiZdHcujUCPM8aaUw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [glibc] - '@oxc-transform/binding-linux-x64-musl@0.112.0': - resolution: {integrity: sha512-ISQoA3pD4cyTGpf9sXXeerH6pL2L6EIpdy6oAy2ttkswyVFDyQNVOVIGIdLZDgbpmqGljxZnWqt/J/N68pQaig==} + '@oxc-transform/binding-linux-x64-musl@0.117.0': + resolution: {integrity: sha512-3wqWbTSaIFZvDr1aqmTul4cg8PRWYh6VC52E8bLI7ytgS/BwJLW+sDUU2YaGIds4sAf/1yKeJRmudRCDPW9INg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] libc: [musl] - '@oxc-transform/binding-openharmony-arm64@0.112.0': - resolution: {integrity: sha512-UOGVrGIv7yLJovyEXEyUTADuLq98vd/cbMHFLJweRXD+11I8Tn4jASi4WzdsN8C3BVYGRHrXH2NlSBmhz33a4g==} + '@oxc-transform/binding-openharmony-arm64@0.117.0': + resolution: {integrity: sha512-Ebxx6NPqhzlrjvx4+PdSqbOq+li0f7X59XtJljDghkbJsbnkHvhLmPR09ifHt5X32UlZN63ekjwcg/nbmHLLlA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] - '@oxc-transform/binding-wasm32-wasi@0.112.0': - resolution: {integrity: sha512-XIX7Gpq9koAvzBVHDlVFHM79r5uOVK6kTEsdsN4qaajpjkgtv4tdsAOKIYK6l7fUbsbE6xS+6w1+yRFrDeC1kg==} + '@oxc-transform/binding-wasm32-wasi@0.117.0': + resolution: {integrity: sha512-Nn8mmcBiQ0XKHLTb05QBlH+CDkn7jf5YDVv9FtKhy4zJT0NEU9y3dXVbfcurOpsVrG9me4ktzDQNCaAoJjUQyw==} engines: {node: '>=14.0.0'} cpu: [wasm32] - '@oxc-transform/binding-win32-arm64-msvc@0.112.0': - resolution: {integrity: sha512-EgXef9kOne9BNsbYBbuRqxk2hteT0xsAGcx/VbtCBMJYNj8fANFhT271DUSOgfa4DAgrQQmsyt/Kr1aV9mpU9w==} + '@oxc-transform/binding-win32-arm64-msvc@0.117.0': + resolution: {integrity: sha512-15cbsF8diXWGnHrTsVgVeabETiT/KdMAfRAcot99xsaVecJs3pITNNjC6Qj+/TPNpehbgIFjlhhxOVSbQsTBgg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [win32] - '@oxc-transform/binding-win32-ia32-msvc@0.112.0': - resolution: {integrity: sha512-6QaB0qjNaou2YR+blncHdw7j0e26IOwOIjLbhVGDeuf9+4rjJeiqRXJ2hOtCcS4zblnao/MjdgQuZ3fM0nl+Kw==} + '@oxc-transform/binding-win32-ia32-msvc@0.117.0': + resolution: {integrity: sha512-I6DkhCuFX6p9rckdWiLuZfBWrrYUC7sNX+zLaCfa5zvrPNwo1/29KkefvqXVxu3AWT/6oZAbtc0A8/mqhETJPQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ia32] os: [win32] - '@oxc-transform/binding-win32-x64-msvc@0.112.0': - resolution: {integrity: sha512-FRKYlY959QeqRPx9kXs0HjU2xuXPT1cdF+vvA200D9uAX/KLcC34MwRqUKTYml4kCc2Vf/P2pBR9cQuBm3zECQ==} + '@oxc-transform/binding-win32-x64-msvc@0.117.0': + resolution: {integrity: sha512-V7YzavQnYcRJBeJkp0qpb3FKrlm5I57XJetCYB4jsjStuboQmnFMZ/XQH55Szlf/kVyeU9ddQwv72gJJ5BrGjQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [win32] @@ -2614,15 +2682,149 @@ packages: '@poppinss/colors@4.1.5': resolution: {integrity: sha512-FvdDqtcRCtz6hThExcFOgW0cWX+xwSMWcRuQe5ZEb2m7cVQOAVZOIMt+/v9RxGiD9/OY16qJBXK4CVKWAPalBw==} + '@poppinss/colors@4.1.6': + resolution: {integrity: sha512-H9xkIdFswbS8n1d6vmRd8+c10t2Qe+rZITbbDHHkQixH5+2x1FDGmi/0K+WgWiqQFKPSlIYB7jlH6Kpfn6Fleg==} + '@poppinss/dumper@0.6.5': resolution: {integrity: sha512-NBdYIb90J7LfOI32dOewKI1r7wnkiH6m920puQ3qHUeZkxNkQiFnXVWoE6YtFSv6QOiPPf7ys6i+HWWecDz7sw==} + '@poppinss/dumper@0.7.0': + resolution: {integrity: sha512-0UTYalzk2t6S4rA2uHOz5bSSW2CHdv4vggJI6Alg90yvl0UgXs6XSXpH96OH+bRkX4J/06djv29pqXJ0lq5Kag==} + '@poppinss/exception@1.2.2': resolution: {integrity: sha512-m7bpKCD4QMlFCjA/nKTs23fuvoVFoA83brRKmObCUNmi/9tVu8Ve3w4YQAnJu4q3Tjf5fr685HYIC/IA2zHRSg==} + '@protobufjs/aspromise@1.1.2': + resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==} + + '@protobufjs/base64@1.1.2': + resolution: {integrity: sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==} + + '@protobufjs/codegen@2.0.4': + resolution: {integrity: sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==} + + '@protobufjs/eventemitter@1.1.0': + resolution: {integrity: sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==} + + '@protobufjs/fetch@1.1.0': + resolution: {integrity: sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==} + + '@protobufjs/float@1.0.2': + resolution: {integrity: sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==} + + '@protobufjs/inquire@1.1.0': + resolution: {integrity: sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==} + + '@protobufjs/path@1.1.2': + resolution: {integrity: sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==} + + '@protobufjs/pool@1.1.0': + resolution: {integrity: sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==} + + '@protobufjs/utf8@1.1.0': + resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} + '@quansync/fs@1.0.0': resolution: {integrity: sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ==} + '@rolldown/binding-android-arm64@1.0.0-rc.11': + resolution: {integrity: sha512-SJ+/g+xNnOh6NqYxD0V3uVN4W3VfnrGsC9/hoglicgTNfABFG9JjISvkkU0dNY84MNHLWyOgxP9v9Y9pX4S7+A==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [android] + + '@rolldown/binding-darwin-arm64@1.0.0-rc.11': + resolution: {integrity: sha512-7WQgR8SfOPwmDZGFkThUvsmd/nwAWv91oCO4I5LS7RKrssPZmOt7jONN0cW17ydGC1n/+puol1IpoieKqQidmg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [darwin] + + '@rolldown/binding-darwin-x64@1.0.0-rc.11': + resolution: {integrity: sha512-39Ks6UvIHq4rEogIfQBoBRusj0Q0nPVWIvqmwBLaT6aqQGIakHdESBVOPRRLacy4WwUPIx4ZKzfZ9PMW+IeyUQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [darwin] + + '@rolldown/binding-freebsd-x64@1.0.0-rc.11': + resolution: {integrity: sha512-jfsm0ZHfhiqrvWjJAmzsqiIFPz5e7mAoCOPBNTcNgkiid/LaFKiq92+0ojH+nmJmKYkre4t71BWXUZDNp7vsag==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [freebsd] + + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.11': + resolution: {integrity: sha512-zjQaUtSyq1nVe3nxmlSCuR96T1LPlpvmJ0SZy0WJFEsV4kFbXcq2u68L4E6O0XeFj4aex9bEauqjW8UQBeAvfQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [linux] + + '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.11': + resolution: {integrity: sha512-WMW1yE6IOnehTcFE9eipFkm3XN63zypWlrJQ2iF7NrQ9b2LDRjumFoOGJE8RJJTJCTBAdmLMnJ8uVitACUUo1Q==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@rolldown/binding-linux-arm64-musl@1.0.0-rc.11': + resolution: {integrity: sha512-jfndI9tsfm4APzjNt6QdBkYwre5lRPUgHeDHoI7ydKUuJvz3lZeCfMsI56BZj+7BYqiKsJm7cfd/6KYV7ubrBg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.11': + resolution: {integrity: sha512-ZlFgw46NOAGMgcdvdYwAGu2Q+SLFA9LzbJLW+iyMOJyhj5wk6P3KEE9Gct4xWwSzFoPI7JCdYmYMzVtlgQ+zfw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [ppc64] + os: [linux] + libc: [glibc] + + '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.11': + resolution: {integrity: sha512-hIOYmuT6ofM4K04XAZd3OzMySEO4K0/nc9+jmNcxNAxRi6c5UWpqfw3KMFV4MVFWL+jQsSh+bGw2VqmaPMTLyw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@rolldown/binding-linux-x64-gnu@1.0.0-rc.11': + resolution: {integrity: sha512-qXBQQO9OvkjjQPLdUVr7Nr2t3QTZI7s4KZtfw7HzBgjbmAPSFwSv4rmET9lLSgq3rH/ndA3ngv3Qb8l2njoPNA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@rolldown/binding-linux-x64-musl@1.0.0-rc.11': + resolution: {integrity: sha512-/tpFfoSTzUkH9LPY+cYbqZBDyyX62w5fICq9qzsHLL8uTI6BHip3Q9Uzft0wylk/i8OOwKik8OxW+QAhDmzwmg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [musl] + + '@rolldown/binding-openharmony-arm64@1.0.0-rc.11': + resolution: {integrity: sha512-mcp3Rio2w72IvdZG0oQ4bM2c2oumtwHfUfKncUM6zGgz0KgPz4YmDPQfnXEiY5t3+KD/i8HG2rOB/LxdmieK2g==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [openharmony] + + '@rolldown/binding-wasm32-wasi@1.0.0-rc.11': + resolution: {integrity: sha512-LXk5Hii1Ph9asuGRjBuz8TUxdc1lWzB7nyfdoRgI0WGPZKmCxvlKk8KfYysqtr4MfGElu/f/pEQRh8fcEgkrWw==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.11': + resolution: {integrity: sha512-dDwf5otnx0XgRY1yqxOC4ITizcdzS/8cQ3goOWv3jFAo4F+xQYni+hnMuO6+LssHHdJW7+OCVL3CoU4ycnh35Q==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [win32] + + '@rolldown/binding-win32-x64-msvc@1.0.0-rc.11': + resolution: {integrity: sha512-LN4/skhSggybX71ews7dAj6r2geaMJfm3kMbK2KhFMg9B10AZXnKoLCVVgzhMHL0S+aKtr4p8QbAW8k+w95bAA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [win32] + + '@rolldown/pluginutils@1.0.0-rc.11': + resolution: {integrity: sha512-xQO9vbwBecJRv9EUcQ/y0dzSTJgA7Q6UVN7xp6B81+tBGSLVAK03yJ9NkJaUA7JFD91kbjxRSC/mDnmvXzbHoQ==} + '@rolldown/pluginutils@1.0.0-rc.2': resolution: {integrity: sha512-izyXV/v+cHiRfozX62W9htOAvwMo4/bXKDrQ+vom1L1qRuexPock/7VZDAhnpHCLNejd3NJ6hiab+tO0D44Rgw==} @@ -2732,21 +2934,11 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.53.3': - resolution: {integrity: sha512-mRSi+4cBjrRLoaal2PnqH82Wqyb+d3HsPUN/W+WslCXsZsyHa9ZeQQX/pQsZaVIWDkPcpV6jJ+3KLbTbgnwv8w==} - cpu: [arm] - os: [android] - '@rollup/rollup-android-arm-eabi@4.59.0': resolution: {integrity: sha512-upnNBkA6ZH2VKGcBj9Fyl9IGNPULcjXRlg0LLeaioQWueH30p6IXtJEbKAgvyv+mJaMxSm1l6xwDXYjpEMiLMg==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.53.3': - resolution: {integrity: sha512-CbDGaMpdE9sh7sCmTrTUyllhrg65t6SwhjlMJsLr+J8YjFuPmCEjbBSx4Z/e4SmDyH3aB5hGaJUP2ltV/vcs4w==} - cpu: [arm64] - os: [android] - '@rollup/rollup-android-arm64@4.59.0': resolution: {integrity: sha512-hZ+Zxj3SySm4A/DylsDKZAeVg0mvi++0PYVceVyX7hemkw7OreKdCvW2oQ3T1FMZvCaQXqOTHb8qmBShoqk69Q==} cpu: [arm64] @@ -2757,11 +2949,6 @@ packages: cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-arm64@4.53.3': - resolution: {integrity: sha512-Nr7SlQeqIBpOV6BHHGZgYBuSdanCXuw09hon14MGOLGmXAFYjx1wNvquVPmpZnl0tLjg25dEdr4IQ6GgyToCUA==} - cpu: [arm64] - os: [darwin] - '@rollup/rollup-darwin-arm64@4.59.0': resolution: {integrity: sha512-W2Psnbh1J8ZJw0xKAd8zdNgF9HRLkdWwwdWqubSVk0pUuQkoHnv7rx4GiF9rT4t5DIZGAsConRE3AxCdJ4m8rg==} cpu: [arm64] @@ -2772,54 +2959,27 @@ packages: cpu: [x64] os: [darwin] - '@rollup/rollup-darwin-x64@4.53.3': - resolution: {integrity: sha512-DZ8N4CSNfl965CmPktJ8oBnfYr3F8dTTNBQkRlffnUarJ2ohudQD17sZBa097J8xhQ26AwhHJ5mvUyQW8ddTsQ==} - cpu: [x64] - os: [darwin] - '@rollup/rollup-darwin-x64@4.59.0': resolution: {integrity: sha512-ZW2KkwlS4lwTv7ZVsYDiARfFCnSGhzYPdiOU4IM2fDbL+QGlyAbjgSFuqNRbSthybLbIJ915UtZBtmuLrQAT/w==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.53.3': - resolution: {integrity: sha512-yMTrCrK92aGyi7GuDNtGn2sNW+Gdb4vErx4t3Gv/Tr+1zRb8ax4z8GWVRfr3Jw8zJWvpGHNpss3vVlbF58DZ4w==} - cpu: [arm64] - os: [freebsd] - '@rollup/rollup-freebsd-arm64@4.59.0': resolution: {integrity: sha512-EsKaJ5ytAu9jI3lonzn3BgG8iRBjV4LxZexygcQbpiU0wU0ATxhNVEpXKfUa0pS05gTcSDMKpn3Sx+QB9RlTTA==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.53.3': - resolution: {integrity: sha512-lMfF8X7QhdQzseM6XaX0vbno2m3hlyZFhwcndRMw8fbAGUGL3WFMBdK0hbUBIUYcEcMhVLr1SIamDeuLBnXS+Q==} - cpu: [x64] - os: [freebsd] - '@rollup/rollup-freebsd-x64@4.59.0': resolution: {integrity: sha512-d3DuZi2KzTMjImrxoHIAODUZYoUUMsuUiY4SRRcJy6NJoZ6iIqWnJu9IScV9jXysyGMVuW+KNzZvBLOcpdl3Vg==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.53.3': - resolution: {integrity: sha512-k9oD15soC/Ln6d2Wv/JOFPzZXIAIFLp6B+i14KhxAfnq76ajt0EhYc5YPeX6W1xJkAdItcVT+JhKl1QZh44/qw==} - cpu: [arm] - os: [linux] - libc: [glibc] - '@rollup/rollup-linux-arm-gnueabihf@4.59.0': resolution: {integrity: sha512-t4ONHboXi/3E0rT6OZl1pKbl2Vgxf9vJfWgmUoCEVQVxhW6Cw/c8I6hbbu7DAvgp82RKiH7TpLwxnJeKv2pbsw==} cpu: [arm] os: [linux] libc: [glibc] - '@rollup/rollup-linux-arm-musleabihf@4.53.3': - resolution: {integrity: sha512-vTNlKq+N6CK/8UktsrFuc+/7NlEYVxgaEgRXVUVK258Z5ymho29skzW1sutgYjqNnquGwVUObAaxae8rZ6YMhg==} - cpu: [arm] - os: [linux] - libc: [musl] - '@rollup/rollup-linux-arm-musleabihf@4.59.0': resolution: {integrity: sha512-CikFT7aYPA2ufMD086cVORBYGHffBo4K8MQ4uPS/ZnY54GKj36i196u8U+aDVT2LX4eSMbyHtyOh7D7Zvk2VvA==} cpu: [arm] @@ -2832,12 +2992,6 @@ packages: os: [linux] libc: [glibc] - '@rollup/rollup-linux-arm64-gnu@4.53.3': - resolution: {integrity: sha512-RGrFLWgMhSxRs/EWJMIFM1O5Mzuz3Xy3/mnxJp/5cVhZ2XoCAxJnmNsEyeMJtpK+wu0FJFWz+QF4mjCA7AUQ3w==} - cpu: [arm64] - os: [linux] - libc: [glibc] - '@rollup/rollup-linux-arm64-gnu@4.59.0': resolution: {integrity: sha512-jYgUGk5aLd1nUb1CtQ8E+t5JhLc9x5WdBKew9ZgAXg7DBk0ZHErLHdXM24rfX+bKrFe+Xp5YuJo54I5HFjGDAA==} cpu: [arm64] @@ -2850,24 +3004,12 @@ packages: os: [linux] libc: [musl] - '@rollup/rollup-linux-arm64-musl@4.53.3': - resolution: {integrity: sha512-kASyvfBEWYPEwe0Qv4nfu6pNkITLTb32p4yTgzFCocHnJLAHs+9LjUu9ONIhvfT/5lv4YS5muBHyuV84epBo/A==} - cpu: [arm64] - os: [linux] - libc: [musl] - '@rollup/rollup-linux-arm64-musl@4.59.0': resolution: {integrity: sha512-peZRVEdnFWZ5Bh2KeumKG9ty7aCXzzEsHShOZEFiCQlDEepP1dpUl/SrUNXNg13UmZl+gzVDPsiCwnV1uI0RUA==} cpu: [arm64] os: [linux] libc: [musl] - '@rollup/rollup-linux-loong64-gnu@4.53.3': - resolution: {integrity: sha512-JiuKcp2teLJwQ7vkJ95EwESWkNRFJD7TQgYmCnrPtlu50b4XvT5MOmurWNrCj3IFdyjBQ5p9vnrX4JM6I8OE7g==} - cpu: [loong64] - os: [linux] - libc: [glibc] - '@rollup/rollup-linux-loong64-gnu@4.59.0': resolution: {integrity: sha512-gbUSW/97f7+r4gHy3Jlup8zDG190AuodsWnNiXErp9mT90iCy9NKKU0Xwx5k8VlRAIV2uU9CsMnEFg/xXaOfXg==} cpu: [loong64] @@ -2880,12 +3022,6 @@ packages: os: [linux] libc: [musl] - '@rollup/rollup-linux-ppc64-gnu@4.53.3': - resolution: {integrity: sha512-EoGSa8nd6d3T7zLuqdojxC20oBfNT8nexBbB/rkxgKj5T5vhpAQKKnD+h3UkoMuTyXkP5jTjK/ccNRmQrPNDuw==} - cpu: [ppc64] - os: [linux] - libc: [glibc] - '@rollup/rollup-linux-ppc64-gnu@4.59.0': resolution: {integrity: sha512-sw1o3tfyk12k3OEpRddF68a1unZ5VCN7zoTNtSn2KndUE+ea3m3ROOKRCZxEpmT9nsGnogpFP9x6mnLTCaoLkA==} cpu: [ppc64] @@ -2898,36 +3034,18 @@ packages: os: [linux] libc: [musl] - '@rollup/rollup-linux-riscv64-gnu@4.53.3': - resolution: {integrity: sha512-4s+Wped2IHXHPnAEbIB0YWBv7SDohqxobiiPA1FIWZpX+w9o2i4LezzH/NkFUl8LRci/8udci6cLq+jJQlh+0g==} - cpu: [riscv64] - os: [linux] - libc: [glibc] - '@rollup/rollup-linux-riscv64-gnu@4.59.0': resolution: {integrity: sha512-NDYMpsXYJJaj+I7UdwIuHHNxXZ/b/N2hR15NyH3m2qAtb/hHPA4g4SuuvrdxetTdndfj9b1WOmy73kcPRoERUg==} cpu: [riscv64] os: [linux] libc: [glibc] - '@rollup/rollup-linux-riscv64-musl@4.53.3': - resolution: {integrity: sha512-68k2g7+0vs2u9CxDt5ktXTngsxOQkSEV/xBbwlqYcUrAVh6P9EgMZvFsnHy4SEiUl46Xf0IObWVbMvPrr2gw8A==} - cpu: [riscv64] - os: [linux] - libc: [musl] - '@rollup/rollup-linux-riscv64-musl@4.59.0': resolution: {integrity: sha512-nLckB8WOqHIf1bhymk+oHxvM9D3tyPndZH8i8+35p/1YiVoVswPid2yLzgX7ZJP0KQvnkhM4H6QZ5m0LzbyIAg==} cpu: [riscv64] os: [linux] libc: [musl] - '@rollup/rollup-linux-s390x-gnu@4.53.3': - resolution: {integrity: sha512-VYsFMpULAz87ZW6BVYw3I6sWesGpsP9OPcyKe8ofdg9LHxSbRMd7zrVrr5xi/3kMZtpWL/wC+UIJWJYVX5uTKg==} - cpu: [s390x] - os: [linux] - libc: [glibc] - '@rollup/rollup-linux-s390x-gnu@4.59.0': resolution: {integrity: sha512-oF87Ie3uAIvORFBpwnCvUzdeYUqi2wY6jRFWJAy1qus/udHFYIkplYRW+wo+GRUP4sKzYdmE1Y3+rY5Gc4ZO+w==} cpu: [s390x] @@ -2940,12 +3058,6 @@ packages: os: [linux] libc: [glibc] - '@rollup/rollup-linux-x64-gnu@4.53.3': - resolution: {integrity: sha512-3EhFi1FU6YL8HTUJZ51imGJWEX//ajQPfqWLI3BQq4TlvHy4X0MOr5q3D2Zof/ka0d5FNdPwZXm3Yyib/UEd+w==} - cpu: [x64] - os: [linux] - libc: [glibc] - '@rollup/rollup-linux-x64-gnu@4.59.0': resolution: {integrity: sha512-3AHmtQq/ppNuUspKAlvA8HtLybkDflkMuLK4DPo77DfthRb71V84/c4MlWJXixZz4uruIH4uaa07IqoAkG64fg==} cpu: [x64] @@ -2958,12 +3070,6 @@ packages: os: [linux] libc: [musl] - '@rollup/rollup-linux-x64-musl@4.53.3': - resolution: {integrity: sha512-eoROhjcc6HbZCJr+tvVT8X4fW3/5g/WkGvvmwz/88sDtSJzO7r/blvoBDgISDiCjDRZmHpwud7h+6Q9JxFwq1Q==} - cpu: [x64] - os: [linux] - libc: [musl] - '@rollup/rollup-linux-x64-musl@4.59.0': resolution: {integrity: sha512-2UdiwS/9cTAx7qIUZB/fWtToJwvt0Vbo0zmnYt7ED35KPg13Q0ym1g442THLC7VyI6JfYTP4PiSOWyoMdV2/xg==} cpu: [x64] @@ -2975,11 +3081,6 @@ packages: cpu: [x64] os: [openbsd] - '@rollup/rollup-openharmony-arm64@4.53.3': - resolution: {integrity: sha512-OueLAWgrNSPGAdUdIjSWXw+u/02BRTcnfw9PN41D2vq/JSEPnJnVuBgw18VkN8wcd4fjUs+jFHVM4t9+kBSNLw==} - cpu: [arm64] - os: [openharmony] - '@rollup/rollup-openharmony-arm64@4.59.0': resolution: {integrity: sha512-tt9KBJqaqp5i5HUZzoafHZX8b5Q2Fe7UjYERADll83O4fGqJ49O1FsL6LpdzVFQcpwvnyd0i+K/VSwu/o/nWlA==} cpu: [arm64] @@ -2990,31 +3091,16 @@ packages: cpu: [arm64] os: [win32] - '@rollup/rollup-win32-arm64-msvc@4.53.3': - resolution: {integrity: sha512-GOFuKpsxR/whszbF/bzydebLiXIHSgsEUp6M0JI8dWvi+fFa1TD6YQa4aSZHtpmh2/uAlj/Dy+nmby3TJ3pkTw==} - cpu: [arm64] - os: [win32] - '@rollup/rollup-win32-arm64-msvc@4.59.0': resolution: {integrity: sha512-V5B6mG7OrGTwnxaNUzZTDTjDS7F75PO1ae6MJYdiMu60sq0CqN5CVeVsbhPxalupvTX8gXVSU9gq+Rx1/hvu6A==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.53.3': - resolution: {integrity: sha512-iah+THLcBJdpfZ1TstDFbKNznlzoxa8fmnFYK4V67HvmuNYkVdAywJSoteUszvBQ9/HqN2+9AZghbajMsFT+oA==} - cpu: [ia32] - os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.59.0': resolution: {integrity: sha512-UKFMHPuM9R0iBegwzKF4y0C4J9u8C6MEJgFuXTBerMk7EJ92GFVFYBfOZaSGLu6COf7FxpQNqhNS4c4icUPqxA==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-gnu@4.53.3': - resolution: {integrity: sha512-J9QDiOIZlZLdcot5NXEepDkstocktoVjkaKUtqzgzpt2yWjGlbYiKyp05rWwk4nypbYUNoFAztEgixoLaSETkg==} - cpu: [x64] - os: [win32] - '@rollup/rollup-win32-x64-gnu@4.59.0': resolution: {integrity: sha512-laBkYlSS1n2L8fSo1thDNGrCTQMmxjYY5G0WFWjFFYZkKPjsMBsgJfGf4TLxXrF6RyhI60L8TMOjBMvXiTcxeA==} cpu: [x64] @@ -3025,11 +3111,6 @@ packages: cpu: [x64] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.53.3': - resolution: {integrity: sha512-UhTd8u31dXadv0MopwGgNOBpUVROFKWVQgAg5N1ESyCz8AuBcMqm4AuTjrwgQKGDfoFuz02EuMRHQIw/frmYKQ==} - cpu: [x64] - os: [win32] - '@rollup/rollup-win32-x64-msvc@4.59.0': resolution: {integrity: sha512-2HRCml6OztYXyJXAvdDXPKcawukWY2GpR5/nxKp4iBgiO3wcoEGkAaqctIbZcNB6KlUQBIqt8VYkNSj2397EfA==} cpu: [x64] @@ -3082,8 +3163,11 @@ packages: '@speed-highlight/core@1.2.12': resolution: {integrity: sha512-uilwrK0Ygyri5dToHYdZSjcvpS2ZwX0w5aSt3GCEN9hrjxWCoeV4Z2DTXuxjwbntaLQIEEAlCeNQss5SoHvAEA==} - '@standard-schema/spec@1.0.0': - resolution: {integrity: sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==} + '@speed-highlight/core@1.2.15': + resolution: {integrity: sha512-BMq1K3DsElxDWawkX6eLg9+CKJrTVGCBAWVuHXVUV2u0s2711qiChLSId6ikYPfxhdYocLNt3wWwSvDiTvFabw==} + + '@standard-schema/spec@1.1.0': + resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} '@stencil/core@4.38.0': resolution: {integrity: sha512-oC3QFKO0X1yXVvETgc8OLY525MNKhn9vISBrbtKnGoPlokJ6rI8Vk1RK22TevnNrHLI4SExNLbcDnqilKR35JQ==} @@ -3107,6 +3191,12 @@ packages: vue-router: optional: true + '@stylistic/eslint-plugin@5.10.0': + resolution: {integrity: sha512-nPK52ZHvot8Ju/0A4ucSX1dcPV2/1clx0kLcH5wDmrE4naKso7TUC/voUyU1O9OTKTrR6MYip6LP0ogEMQ9jPQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^9.0.0 || ^10.0.0 + '@stylistic/eslint-plugin@5.9.0': resolution: {integrity: sha512-FqqSkvDMYJReydrMhlugc71M76yLLQWNfmGq+SIlLa7N3kHp8Qq8i2PyWrVNAfjOyOIY+xv9XaaYwvVW7vroMA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -3172,8 +3262,11 @@ packages: '@types/ms@2.1.0': resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} - '@types/node@25.3.3': - resolution: {integrity: sha512-DpzbrH7wIcBaJibpKo9nnSQL0MTRdnWttGyE5haGwK86xgMOkFLp7vEyfQPGLOJh5wNYiJ3V9PmUMDhV9u8kkQ==} + '@types/node@25.5.0': + resolution: {integrity: sha512-jp2P3tQMSxWugkCUKLRPVUpGaL5MVFwF8RDuSRztfwgN1wmqJeMSbKlnEtQqU8UrhTmzEmZdu2I6v2dpp7XIxw==} + + '@types/papaparse@5.5.2': + resolution: {integrity: sha512-gFnFp/JMzLHCwRf7tQHrNnfhN4eYBVYYI897CGX4MY1tzY9l2aLkVyx2IlKZ/SAqDbB3I1AOZW5gTMGGsqWliA==} '@types/resolve@1.20.2': resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} @@ -3198,6 +3291,14 @@ packages: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/eslint-plugin@8.57.2': + resolution: {integrity: sha512-NZZgp0Fm2IkD+La5PR81sd+g+8oS6JwJje+aRWsDocxHkjyRw0J5L5ZTlN3LI1LlOcGL7ph3eaIUmTXMIjLk0w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.57.2 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/parser@8.56.1': resolution: {integrity: sha512-klQbnPAAiGYFyI02+znpBRLyjL4/BrBd0nyWkdC0s/6xFLkXYQ8OoRrSkqacS1ddVxf/LDyODIKbQ5TgKAf/Fg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -3205,22 +3306,45 @@ packages: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/parser@8.57.2': + resolution: {integrity: sha512-30ScMRHIAD33JJQkgfGW1t8CURZtjc2JpTrq5n2HFhOefbAhb7ucc7xJwdWcrEtqUIYJ73Nybpsggii6GtAHjA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/project-service@8.56.1': resolution: {integrity: sha512-TAdqQTzHNNvlVFfR+hu2PDJrURiwKsUvxFn1M0h95BB8ah5jejas08jUWG4dBA68jDMI988IvtfdAI53JzEHOQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/project-service@8.57.2': + resolution: {integrity: sha512-FuH0wipFywXRTHf+bTTjNyuNQQsQC3qh/dYzaM4I4W0jrCqjCVuUh99+xd9KamUfmCGPvbO8NDngo/vsnNVqgw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/scope-manager@8.56.1': resolution: {integrity: sha512-YAi4VDKcIZp0O4tz/haYKhmIDZFEUPOreKbfdAN3SzUDMcPhJ8QI99xQXqX+HoUVq8cs85eRKnD+rne2UAnj2w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/scope-manager@8.57.2': + resolution: {integrity: sha512-snZKH+W4WbWkrBqj4gUNRIGb/jipDW3qMqVJ4C9rzdFc+wLwruxk+2a5D+uoFcKPAqyqEnSb4l2ULuZf95eSkw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/tsconfig-utils@8.56.1': resolution: {integrity: sha512-qOtCYzKEeyr3aR9f28mPJqBty7+DBqsdd63eO0yyDwc6vgThj2UjWfJIcsFeSucYydqcuudMOprZ+x1SpF3ZuQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/tsconfig-utils@8.57.2': + resolution: {integrity: sha512-3Lm5DSM+DCowsUOJC+YqHHnKEfFh5CoGkj5Z31NQSNF4l5wdOwqGn99wmwN/LImhfY3KJnmordBq/4+VDe2eKw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/type-utils@8.56.1': resolution: {integrity: sha512-yB/7dxi7MgTtGhZdaHCemf7PuwrHMenHjmzgUW1aJpO+bBU43OycnM3Wn+DdvDO/8zzA9HlhaJ0AUGuvri4oGg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -3228,6 +3352,13 @@ packages: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/type-utils@8.57.2': + resolution: {integrity: sha512-Co6ZCShm6kIbAM/s+oYVpKFfW7LBc6FXoPXjTRQ449PPNBY8U0KZXuevz5IFuuUj2H9ss40atTaf9dlGLzbWZg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/types@8.47.0': resolution: {integrity: sha512-nHAE6bMKsizhA2uuYZbEbmp5z2UpffNrPEqiKIeN7VsV6UY/roxanWfoRrf6x/k9+Obf+GQdkm0nPU+vnMXo9A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -3236,12 +3367,22 @@ packages: resolution: {integrity: sha512-dbMkdIUkIkchgGDIv7KLUpa0Mda4IYjo4IAMJUZ+3xNoUXxMsk9YtKpTHSChRS85o+H9ftm51gsK1dZReY9CVw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/types@8.57.2': + resolution: {integrity: sha512-/iZM6FnM4tnx9csuTxspMW4BOSegshwX5oBDznJ7S4WggL7Vczz5d2W11ecc4vRrQMQHXRSxzrCsyG5EsPPTbA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/typescript-estree@8.56.1': resolution: {integrity: sha512-qzUL1qgalIvKWAf9C1HpvBjif+Vm6rcT5wZd4VoMb9+Km3iS3Cv9DY6dMRMDtPnwRAFyAi7YXJpTIEXLvdfPxg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/typescript-estree@8.57.2': + resolution: {integrity: sha512-2MKM+I6g8tJxfSmFKOnHv2t8Sk3T6rF20A1Puk0svLK+uVapDZB/4pfAeB7nE83uAZrU6OxW+HmOd5wHVdXwXA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/utils@8.56.1': resolution: {integrity: sha512-HPAVNIME3tABJ61siYlHzSWCGtOoeP2RTIaHXFMPqjrQKCGB9OgUVdiNgH7TJS2JNIQ5qQ4RsAUDuGaGme/KOA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -3249,10 +3390,21 @@ packages: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/utils@8.57.2': + resolution: {integrity: sha512-krRIbvPK1ju1WBKIefiX+bngPs+odIQUtR7kymzPfo1POVw3jlF+nLkmexdSSd4UCbDcQn+wMBATOOmpBbqgKg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/visitor-keys@8.56.1': resolution: {integrity: sha512-KiROIzYdEV85YygXw6BI/Dx4fnBlFQu6Mq4QE4MOH9fFnhohw6wX/OAvDY2/C+ut0I3RSPKenvZJIVYqJNkhEw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/visitor-keys@8.57.2': + resolution: {integrity: sha512-zhahknjobV2FiD6Ee9iLbS7OV9zi10rG26odsQdfBO/hjSzUQbkIYgda+iNKK1zNiW2ey+Lf8MU5btN17V3dUw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript/vfs@1.6.2': resolution: {integrity: sha512-hoBwJwcbKHmvd2QVebiytN1aELvpk9B74B4L1mFm/XT1Q/VOYAWl2vQ9AWRFtQq8zmz6enTpfTV8WRc4ATjW/g==} peerDependencies: @@ -3261,96 +3413,96 @@ packages: '@ungap/structured-clone@1.3.0': resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} - '@unhead/vue@2.1.10': - resolution: {integrity: sha512-VP78Onh2HNezLPfhYjfHqn4dxlcQsE6PJgTTs61NksO/thvilNswtgBq0N0MWCLtn43N5akEPGW2y2zxM3PWgQ==} + '@unhead/vue@2.1.12': + resolution: {integrity: sha512-zEWqg0nZM8acpuTZE40wkeUl8AhIe0tU0OkilVi1D4fmVjACrwoh5HP6aNqJ8kUnKsoy6D+R3Vi/O+fmdNGO7g==} peerDependencies: vue: '>=3.5.18' - '@unocss/cli@66.6.4': - resolution: {integrity: sha512-jSeGL9a7tchoKvGQAsEdtjmvEu1axdikK5fdvmQnDOnLSM5Vo5wCthGYtsIIpQvb9HFBe0NupAJNwpjRBGiCaQ==} + '@unocss/cli@66.6.7': + resolution: {integrity: sha512-m/yW5HMVyxfAOeyO4OyA4JB9dY+/gTsk25ucI8xVCFVDEENPEGr+vEqTDOA+vfe6pdURtyDYS7OrhikIRU1WNA==} engines: {node: '>=14'} hasBin: true - '@unocss/config@66.6.4': - resolution: {integrity: sha512-iwHl5FG81cOAMalqigjw21Z2tMa0xjN0doQxnGOLx8KP+BllruXSjBj8CRk3m6Ny9fDxfpFY0ruYbIBA5AGwDQ==} + '@unocss/config@66.6.7': + resolution: {integrity: sha512-1uleyRLyJc6PNNc2L3hEaKL89zXwvQAtP36oFySgL47RAxZHPZ4vfqFpbwR0eEN4iSqTS24ZFr7CTRWCaEGjzQ==} engines: {node: '>=14'} - '@unocss/core@66.6.4': - resolution: {integrity: sha512-Fii3lhVJVFrKUz6hMGAkq3sXBfNnXB2G8bldNHuBHJpDAoP1F0oO/SU/oSqSjCYvtcD5RtOn8qwzcHuuN3B/mg==} + '@unocss/core@66.6.7': + resolution: {integrity: sha512-Q8456iWFtdwrUNYKVOQY8ygRggjZOVtLc6Jc8KIkxig7OiNlUWOgXJTfCh4I8g6jBYzC5eHaHFDLgJOmOrxBsg==} - '@unocss/eslint-config@66.6.4': - resolution: {integrity: sha512-ViovcMVg4NGf9Ir08AsFANU7g8a0/kUthsOHI5D7zqohPjOpk7NiTHccQCncpRg/Uxj6KdkJJFIDv4+CJyrDDQ==} + '@unocss/eslint-config@66.6.7': + resolution: {integrity: sha512-l33NbugpKr5twWmRbFwQcvAuD/lWAqT9Nrnguga75geeUBENOVNQialeyEFcZAmR7/eYOeILIrhM8XtFUmtf2g==} engines: {node: '>=14'} - '@unocss/eslint-plugin@66.6.4': - resolution: {integrity: sha512-MZnNthoENPy7Bp9LpLeZRkMigKeay+rWF+bYYKiveaAesIR8aKMQZStV7MMooh6TsF8txXwxAr4zfobN7nZ+kQ==} + '@unocss/eslint-plugin@66.6.7': + resolution: {integrity: sha512-0pNFT918CUOiWSlr3ZmePL5Bb06/g/mmP8zP+/dpl2+Vc/GuW6wHVsP+qn5hT2c5FwCPRZ3CUm0HprTru2/sGA==} engines: {node: '>=14'} - '@unocss/extractor-arbitrary-variants@66.6.4': - resolution: {integrity: sha512-l827c/UdE2FUBiaXDde5f/IjW41TflhtnjgQr3tJoCw7v9VuokDJFl+iOTyaH6AwMKpMeSBB+DU5Ippj4IOs9w==} + '@unocss/extractor-arbitrary-variants@66.6.7': + resolution: {integrity: sha512-PQiBHK0yUJ0BR+3GYnTPU6va6HVSRPV+O+s1zZmt23TWbyIeucoKCNR47TDtv+Z1xuksY8krIjtDYtufdrVWKw==} - '@unocss/inspector@66.6.4': - resolution: {integrity: sha512-q5oplYKCyO6YHN1MFQadkjs4fTTOKgsw0tXoSft6RLXowo8Utv6nBmED4yWb6Y6iYFmFU5RZ8VavxZvfghOlmg==} + '@unocss/inspector@66.6.7': + resolution: {integrity: sha512-4lA70A/wy9dfSDm7rJ5Uq5fKz+/Szm2rUcHjdbLCVNEc6vv2YXeI7aFvP5qDjTp4ClBSF2AMPnF1mtoMQOfDvA==} - '@unocss/nuxt@66.6.4': - resolution: {integrity: sha512-D2JVnFCEzopqgSiFhb7CHQpt+l9lZzRfAbmE1EepcCcYZT6YuknIFD/+m0rHX18aEL4Fg/rIw2mQW3/7G+Ztxw==} + '@unocss/nuxt@66.6.7': + resolution: {integrity: sha512-UUc5rhG4ClLUMJVBe7KWtyV3dtbQLnuNOqQVe5NFCLlqWsDW8P8MHBFUAy7UclPuLq/rq9kf4vlN8knDVxTtFQ==} - '@unocss/preset-attributify@66.6.4': - resolution: {integrity: sha512-pksrugV/GqfgyUonHycxDvxUPVI3H9LiRcOEf1mZweD2qAqT6lH9qE1AHHddiZpWAcics4CkUkDpgXRwgt+wJQ==} + '@unocss/preset-attributify@66.6.7': + resolution: {integrity: sha512-thtoLQb53+Acy2QJYT6n+YhgNJ5ilhS8k9bqi+UzflbsuK4TJqOuQQjC9fRkULP5QjtNxgqN3d5Up7ms8tBPDA==} - '@unocss/preset-icons@66.6.4': - resolution: {integrity: sha512-Xz8EQdPkANHlHUmWDw5/ehWTcn4tJeNltB4OnxI5vsi0hiqpLJxxKUE/vLUVH1I4GnVFCF4bBg7fmHanEcL0/A==} + '@unocss/preset-icons@66.6.7': + resolution: {integrity: sha512-mGAOyI/qz1pZUV1BcOtWAMm5czdFCjhFCYcDk0KY+Jw37pKRVSQRFeh4gpHuYKmehGv36caLyVrWXpTAwRBdFQ==} - '@unocss/preset-mini@66.6.4': - resolution: {integrity: sha512-8xUXf/Bbi1/h98ldL56OxOnWUgWy0el0/xCGDLKYtBRUYGvZgrV+ys9UxY1/z+w7q+T+PZi+3qhc0O06nJ8wUw==} + '@unocss/preset-mini@66.6.7': + resolution: {integrity: sha512-tf0mqiSEhPQ49WZOqjNhxlbZbNakiBLzCoxfLSzqfIGglOPYShP8mxsdp9Jv0n+Ntn0rHcBiX5KTLfax1/Bd9g==} - '@unocss/preset-tagify@66.6.4': - resolution: {integrity: sha512-eWu9fH6c6gZH1FswMVPaX0kMS8Jw6dqDvlVLbjZgWraAHTon53lOnB2365bXgsl5zXYg30JGMzP/k171FJQWig==} + '@unocss/preset-tagify@66.6.7': + resolution: {integrity: sha512-0WeQf+Dx9Ztv3aewkBKEnAfOauSjvWBlfkpsgLpXcCkyGMnCqq87UrAq3+b76TDJvQc8i2ADlvVGK7V1z0JZQg==} - '@unocss/preset-typography@66.6.4': - resolution: {integrity: sha512-APtMRFUPA4e5S1Yyc3LWTqiy+XMq/SEMStkcGM6Rroy8Rzx+ItfqV/UrOWdg8gFYFPK8tVOvNG+40qlZy5Keww==} + '@unocss/preset-typography@66.6.7': + resolution: {integrity: sha512-RA7MwPDD5N9xGrbWnguVm5tP+F4/n/9X1rJsq2nBjvvK2dbtIRJZjRFM1vBDsR0GIhtvbHMoTchZaSZed5I+Hw==} - '@unocss/preset-uno@66.6.4': - resolution: {integrity: sha512-9BAprWrx6/leMaRBzH91vGYl4mEgIX/BP1h8ucEJ3aAo6dFrfmpC56HG7wOHNGMr4/uxm4aD7uI2SUpN+CBEEg==} + '@unocss/preset-uno@66.6.7': + resolution: {integrity: sha512-imGCe6Yv2XgrJxP77gV8WZCz0xL99MsGov5rYn64lh2/tcsHF2rUIhTj/Urgxt0kwk8rLFtGbR1JuwPMNL5EDw==} - '@unocss/preset-web-fonts@66.6.4': - resolution: {integrity: sha512-N2qqeKf0W1mDXDBlXBdN32Dm6pLEbTFQsRe6WpX9SH5pCrEvuJG8cnIBPPpATLC+Qf2EWOepg1fIX+iWoF4Cyw==} + '@unocss/preset-web-fonts@66.6.7': + resolution: {integrity: sha512-GLjUoSL/kYt1Yw2zpzixKnxvpHgLHAg0JXiPglct4PZ9YmUzCPbvJ/vVn+0AnB8Fxr29Z8NAFSNoX625ZaRonQ==} - '@unocss/preset-wind3@66.6.4': - resolution: {integrity: sha512-RxPR5czvE3RJ+eJoMM2AkPews7z4vSOeqTX8OIILzvEUFG1fRUvxMLaHGb4qstGPtHBJKrwNmvYjMozoiU2EgA==} + '@unocss/preset-wind3@66.6.7': + resolution: {integrity: sha512-PKyqeRzlIMd3Irdt6fCKMm73zgwweiXESk5edUK8dVWndvPIcZCOqrEq7yg6Pr/Q8tHdq26viYSkVY3a3t8RSg==} - '@unocss/preset-wind4@66.6.4': - resolution: {integrity: sha512-MvI3bxoOafEADiFJSHr7WB8nT01ZQvjsfWEuRNtNeRSTBVZ2QuJW8imL2sr9fk1qHoHmzN/3HefpTQoxiQWVcA==} + '@unocss/preset-wind4@66.6.7': + resolution: {integrity: sha512-9grhWeBsFzpv8iER9AFATRaxLyXMCwGQ5HzeI4XZh2ZZ9O6vC7nYfGhns4/I+F/RpFglzU1bjqMWRS/DS8OpGQ==} - '@unocss/preset-wind@66.6.4': - resolution: {integrity: sha512-OGeLXvcGQROuFrFmu/WOY8sbBvNBzAyi0firMY5AZhSkGmX/q4aBEJGGs3eiuMwg6JIhPg4QXzLjL7uWZJ0ZgQ==} + '@unocss/preset-wind@66.6.7': + resolution: {integrity: sha512-jxtAN96jljd+KglbhPv6Y/ujceI5rVdrLQimj4KUTPoYBPEiWadzsGKN3o8Q07hlPRg+hBlO0r4tGSUWl+/EZQ==} - '@unocss/reset@66.6.4': - resolution: {integrity: sha512-p455LSW3SximmUMkHFb0k2mr11zpGjzR4N6mWWkHgyehPAmXZdOuYVVfz/clCjl3LI9Y+m76J455hPSvKJDG/A==} + '@unocss/reset@66.6.7': + resolution: {integrity: sha512-+OjpLDEaPmhTQ3Gj7EaKApNM92TM9f9gLgHNa79+66wIll9IfhKfEmJXnF9y1SE725n4PmPIQgC9k313HztMLA==} - '@unocss/rule-utils@66.6.4': - resolution: {integrity: sha512-n/vCodRuzKtRBpZqd4OLVujDEJlPl11Iw5AtxB4GYsRT4AED/JY//XHLb5ubdLa1j3m84OAfnkT9Gr9sMWcwig==} + '@unocss/rule-utils@66.6.7': + resolution: {integrity: sha512-4PT/s8yKIShSqP9XPSw4EjbZopcu3wlIB9i3kbGbzQwF91H+0Yy10guK3kHDGtkmWVN6Np6VvaGIj2UcbmaivA==} engines: {node: '>=14'} - '@unocss/transformer-attributify-jsx@66.6.4': - resolution: {integrity: sha512-Rw9g3Ed/Et1W68znIuCod4OTLlOmuPpt2/6ZsylzNPEgGdJCHGYOdNs6Ai5IlbjrlOE4XfwK0O0iJQdk01V6FA==} + '@unocss/transformer-attributify-jsx@66.6.7': + resolution: {integrity: sha512-r5bsnaPVe4iySLK5G5rA/QPSKmpPjYT9lixEv+KElvZcqZ+cPpkGoo+E+rnTcapu9KDMOVJItH/4Zy9m4AQ1ZQ==} - '@unocss/transformer-compile-class@66.6.4': - resolution: {integrity: sha512-sZrPIp28xPnroT+BTX6onHfIXwjBkuPDyO3oKyciuCRZxGgTkV6GXV6lSGSu2EHFRjCmzzuCWgo33gU55TtklA==} + '@unocss/transformer-compile-class@66.6.7': + resolution: {integrity: sha512-4uz4jCyq8VUaSPveXhelUWUNaTnetPFvEmXzmbYJ5BygAlUlipNynffUlUusDQmBBRrfZhJNB5J1Zif2Q6oUiA==} - '@unocss/transformer-directives@66.6.4': - resolution: {integrity: sha512-IIczs0NZeEOIa/X28gkJevT6FtCWoMT3OmnMFDRi9plu3d7BYuQuBkBUYVyT7lIspn+iENCaXFl3e1l60e/xpw==} + '@unocss/transformer-directives@66.6.7': + resolution: {integrity: sha512-z3gi8/cD2P0I+c6jOPZUtsPXknHwVNlMIitSh7LhyM6W3EqbqvDcYH2gFeGhdhoYcN2r5OpTBujq34iz4IdUxA==} - '@unocss/transformer-variant-group@66.6.4': - resolution: {integrity: sha512-evAbg2fKuhJ0en71Y8iHJYbuED0SSiqg7BIajSbk0BQvy8N70wbu19Ljpjfc7JfcWV/vSWgNIklOr/TsYJhU6g==} + '@unocss/transformer-variant-group@66.6.7': + resolution: {integrity: sha512-XouJuQCjYJpvR3sY4QDXnGXxtyJ4qgWFG+S9bAB01TTslhQLvNPE9o2+4gZlltnJLqxiPQWuLeJA1KdPD6ciww==} - '@unocss/vite@66.6.4': - resolution: {integrity: sha512-qLSfJ2a0iDMhM/d3zpg9RQ7RW22tnP5hXARo430m9UK7bK1SmAbMAS70Wv2/FuRScBGLeMfluIuePghtuzgOLQ==} + '@unocss/vite@66.6.7': + resolution: {integrity: sha512-8AHrVzAecnQaPLJv3/mpyFt5j2iL3gEwkZcZ8HzjH5ttK2XON1YE9vgujN5NS/yvZwlJxCMNPxn0S410/Ek61A==} peerDependencies: - vite: ^7.3.1 + vite: ^8.0.2 - '@unocss/webpack@66.6.4': - resolution: {integrity: sha512-eT9pW3V/PAK1gs4pOPhYJZJJLhsEm0APvDQa8tvJaIbm0+ROlVPkuv4TGaDuE7B6zyRxPXpjVTVtDUcaAtujIw==} + '@unocss/webpack@66.6.7': + resolution: {integrity: sha512-h+H3LE/OOYrVZPdlVaczx3qGEA59YbQI7bLaTh0ft/WR2qAq7GgB5KmqcUx+G8H/O+rPD1NZm8+fTdy/Tcr44g==} peerDependencies: webpack: ^4 || ^5 @@ -3474,57 +3626,60 @@ packages: resolution: {integrity: sha512-70LmoVk9riR7qc4W2CpjsbNMWTPnuZb9dpFKX1emru0yP57nsc9k8nhLA6U93ngQapv5VDIUq2JatNfLbBIkrA==} engines: {node: ^20.19.0 || >=22.12.0} peerDependencies: - vite: ^7.3.1 + vite: ^8.0.2 vue: ^3.0.0 '@vitejs/plugin-vue@6.0.4': resolution: {integrity: sha512-uM5iXipgYIn13UUQCZNdWkYk+sysBeA97d5mHsAoAt1u/wpN3+zxOmsVJWosuzX+IMGRzeYUNytztrYznboIkQ==} engines: {node: ^20.19.0 || >=22.12.0} peerDependencies: - vite: ^7.3.1 + vite: ^8.0.2 vue: ^3.2.25 - '@vitest/eslint-plugin@1.6.9': - resolution: {integrity: sha512-9WfPx1OwJ19QLCSRLkqVO7//1WcWnK3fE/3fJhKMAmDe8+9G4rB47xCNIIeCq3FdEzkIoLTfDlwDlPBaUTMhow==} + '@vitest/eslint-plugin@1.6.13': + resolution: {integrity: sha512-ui7JGWBoQpS5NKKW0FDb1eTuFEZ5EupEv2Psemuyfba7DfA5K52SeDLelt6P4pQJJ/4UGkker/BgMk/KrjH3WQ==} engines: {node: '>=18'} peerDependencies: + '@typescript-eslint/eslint-plugin': '*' eslint: '>=8.57.0' typescript: '>=5.0.0' vitest: '*' peerDependenciesMeta: + '@typescript-eslint/eslint-plugin': + optional: true typescript: optional: true vitest: optional: true - '@vitest/expect@4.0.18': - resolution: {integrity: sha512-8sCWUyckXXYvx4opfzVY03EOiYVxyNrHS5QxX3DAIi5dpJAAkyJezHCP77VMX4HKA2LDT/Jpfo8i2r5BE3GnQQ==} + '@vitest/expect@4.1.1': + resolution: {integrity: sha512-xAV0fqBTk44Rn6SjJReEQkHP3RrqbJo6JQ4zZ7/uVOiJZRarBtblzrOfFIZeYUrukp2YD6snZG6IBqhOoHTm+A==} - '@vitest/mocker@4.0.18': - resolution: {integrity: sha512-HhVd0MDnzzsgevnOWCBj5Otnzobjy5wLBe4EdeeFGv8luMsGcYqDuFRMcttKWZA5vVO8RFjexVovXvAM4JoJDQ==} + '@vitest/mocker@4.1.1': + resolution: {integrity: sha512-h3BOylsfsCLPeceuCPAAJ+BvNwSENgJa4hXoXu4im0bs9Lyp4URc4JYK4pWLZ4pG/UQn7AT92K6IByi6rE6g3A==} peerDependencies: msw: ^2.4.9 - vite: ^7.3.1 + vite: ^8.0.2 peerDependenciesMeta: msw: optional: true vite: optional: true - '@vitest/pretty-format@4.0.18': - resolution: {integrity: sha512-P24GK3GulZWC5tz87ux0m8OADrQIUVDPIjjj65vBXYG17ZeU3qD7r+MNZ1RNv4l8CGU2vtTRqixrOi9fYk/yKw==} + '@vitest/pretty-format@4.1.1': + resolution: {integrity: sha512-GM+TEQN5WhOygr1lp7skeVjdLPqqWMHsfzXrcHAqZJi/lIVh63H0kaRCY8MDhNWikx19zBUK8ceaLB7X5AH9NQ==} - '@vitest/runner@4.0.18': - resolution: {integrity: sha512-rpk9y12PGa22Jg6g5M3UVVnTS7+zycIGk9ZNGN+m6tZHKQb7jrP7/77WfZy13Y/EUDd52NDsLRQhYKtv7XfPQw==} + '@vitest/runner@4.1.1': + resolution: {integrity: sha512-f7+FPy75vN91QGWsITueq0gedwUZy1fLtHOCMeQpjs8jTekAHeKP80zfDEnhrleviLHzVSDXIWuCIOFn3D3f8A==} - '@vitest/snapshot@4.0.18': - resolution: {integrity: sha512-PCiV0rcl7jKQjbgYqjtakly6T1uwv/5BQ9SwBLekVg/EaYeQFPiXcgrC2Y7vDMA8dM1SUEAEV82kgSQIlXNMvA==} + '@vitest/snapshot@4.1.1': + resolution: {integrity: sha512-kMVSgcegWV2FibXEx9p9WIKgje58lcTbXgnJixfcg15iK8nzCXhmalL0ZLtTWLW9PH1+1NEDShiFFedB3tEgWg==} - '@vitest/spy@4.0.18': - resolution: {integrity: sha512-cbQt3PTSD7P2OARdVW3qWER5EGq7PHlvE+QfzSC0lbwO+xnt7+XH06ZzFjFRgzUX//JmpxrCu92VdwvEPlWSNw==} + '@vitest/spy@4.1.1': + resolution: {integrity: sha512-6Ti/KT5OVaiupdIZEuZN7l3CZcR0cxnxt70Z0//3CtwgObwA6jZhmVBA3yrXSVN3gmwjgd7oDNLlsXz526gpRA==} - '@vitest/utils@4.0.18': - resolution: {integrity: sha512-msMRKLMVLWygpK3u2Hybgi4MNjcYJvwTb0Ru09+fOyCXIgT5raYP041DRRdiJiI3k/2U6SEbAETB3YtBrUkCFA==} + '@vitest/utils@4.1.1': + resolution: {integrity: sha512-cNxAlaB3sHoCdL6pj6yyUXv9Gry1NHNg0kFTXdvSIZXLHsqKH7chiWOkwJ5s5+d/oMwcoG9T0bKU38JZWKusrQ==} '@volar/language-core@2.4.28': resolution: {integrity: sha512-w4qhIJ8ZSitgLAkVay6AbcnC7gP3glYM3fYwKV3srj8m494E3xtrCv6E+bWviiK/8hs6e6t1ij1s2Endql7vzQ==} @@ -3582,26 +3737,35 @@ packages: '@vue/compiler-core@3.5.29': resolution: {integrity: sha512-cuzPhD8fwRHk8IGfmYaR4eEe4cAyJEL66Ove/WZL7yWNL134nqLddSLwNRIsFlnnW1kK+p8Ck3viFnC0chXCXw==} + '@vue/compiler-core@3.5.30': + resolution: {integrity: sha512-s3DfdZkcu/qExZ+td75015ljzHc6vE+30cFMGRPROYjqkroYI5NV2X1yAMX9UeyBNWB9MxCfPcsjpLS11nzkkw==} + '@vue/compiler-dom@3.5.24': resolution: {integrity: sha512-1QHGAvs53gXkWdd3ZMGYuvQFXHW4ksKWPG8HP8/2BscrbZ0brw183q2oNWjMrSWImYLHxHrx1ItBQr50I/q2zw==} '@vue/compiler-dom@3.5.29': resolution: {integrity: sha512-n0G5o7R3uBVmVxjTIYcz7ovr8sy7QObFG8OQJ3xGCDNhbG60biP/P5KnyY8NLd81OuT1WJflG7N4KWYHaeeaIg==} + '@vue/compiler-dom@3.5.30': + resolution: {integrity: sha512-eCFYESUEVYHhiMuK4SQTldO3RYxyMR/UQL4KdGD1Yrkfdx4m/HYuZ9jSfPdA+nWJY34VWndiYdW/wZXyiPEB9g==} + '@vue/compiler-sfc@3.5.24': resolution: {integrity: sha512-8EG5YPRgmTB+YxYBM3VXy8zHD9SWHUJLIGPhDovo3Z8VOgvP+O7UP5vl0J4BBPWYD9vxtBabzW1EuEZ+Cqs14g==} '@vue/compiler-sfc@3.5.29': resolution: {integrity: sha512-oJZhN5XJs35Gzr50E82jg2cYdZQ78wEwvRO6Y63TvLVTc+6xICzJHP1UIecdSPPYIbkautNBanDiWYa64QSFIA==} + '@vue/compiler-sfc@3.5.30': + resolution: {integrity: sha512-LqmFPDn89dtU9vI3wHJnwaV6GfTRD87AjWpTWpyrdVOObVtjIuSeZr181z5C4PmVx/V3j2p+0f7edFKGRMpQ5A==} + '@vue/compiler-ssr@3.5.24': resolution: {integrity: sha512-trOvMWNBMQ/odMRHW7Ae1CdfYx+7MuiQu62Jtu36gMLXcaoqKvAyh+P73sYG9ll+6jLB6QPovqoKGGZROzkFFg==} '@vue/compiler-ssr@3.5.29': resolution: {integrity: sha512-Y/ARJZE6fpjzL5GH/phJmsFwx3g6t2KmHKHx5q+MLl2kencADKIrhH5MLF6HHpRMmlRAYBRSvv347Mepf1zVNw==} - '@vue/devtools-api@6.6.4': - resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==} + '@vue/compiler-ssr@3.5.30': + resolution: {integrity: sha512-NsYK6OMTnx109PSL2IAyf62JP6EUdk4Dmj6AkWcJGBvN0dQoMYtVekAmdqgTtWQgEJo+Okstbf/1p7qZr5H+bA==} '@vue/devtools-api@7.7.9': resolution: {integrity: sha512-kIE8wvwlcZ6TJTbNeU2HQNtaxLx3a84aotTITUuL/4bzfPxzajGBOoqjMhwZJ8L9qFYDU/lAYMEEm11dnZOD6g==} @@ -3609,50 +3773,65 @@ packages: '@vue/devtools-api@8.0.5': resolution: {integrity: sha512-DgVcW8H/Nral7LgZEecYFFYXnAvGuN9C3L3DtWekAncFBedBczpNW8iHKExfaM559Zm8wQWrwtYZ9lXthEHtDw==} - '@vue/devtools-core@8.0.7': - resolution: {integrity: sha512-PmpiPxvg3Of80ODHVvyckxwEW1Z02VIAvARIZS1xegINn3VuNQLm9iHUmKD+o6cLkMNWV8OG8x7zo0kgydZgdg==} + '@vue/devtools-api@8.1.1': + resolution: {integrity: sha512-bsDMJ07b3GN1puVwJb/fyFnj/U2imyswK5UQVLZwVl7O05jDrt6BHxeG5XffmOOdasOj/bOmIjxJvGPxU7pcqw==} + + '@vue/devtools-core@8.1.1': + resolution: {integrity: sha512-bCCsSABp1/ot4j8xJEycM6Mtt2wbuucfByr6hMgjbYhrtlscOJypZKvy8f1FyWLYrLTchB5Qz216Lm92wfbq0A==} peerDependencies: vue: ^3.0.0 '@vue/devtools-kit@7.7.9': resolution: {integrity: sha512-PyQ6odHSgiDVd4hnTP+aDk2X4gl2HmLDfiyEnn3/oV+ckFDuswRs4IbBT7vacMuGdwY/XemxBoh302ctbsptuA==} - '@vue/devtools-kit@8.0.5': - resolution: {integrity: sha512-q2VV6x1U3KJMTQPUlRMyWEKVbcHuxhqJdSr6Jtjz5uAThAIrfJ6WVZdGZm5cuO63ZnSUz0RCsVwiUUb0mDV0Yg==} - '@vue/devtools-kit@8.0.7': resolution: {integrity: sha512-H6esJGHGl5q0E9iV3m2EoBQHJ+V83WMW83A0/+Fn95eZ2iIvdsq4+UCS6yT/Fdd4cGZSchx/MdWDreM3WqMsDw==} + '@vue/devtools-kit@8.1.1': + resolution: {integrity: sha512-gVBaBv++i+adg4JpH71k9ppl4soyR7Y2McEqO5YNgv0BI1kMZ7BDX5gnwkZ5COYgiCyhejZG+yGNrBAjj6Coqg==} + '@vue/devtools-shared@7.7.9': resolution: {integrity: sha512-iWAb0v2WYf0QWmxCGy0seZNDPdO3Sp5+u78ORnyeonS6MT4PC7VPrryX2BpMJrwlDeaZ6BD4vP4XKjK0SZqaeA==} - '@vue/devtools-shared@8.0.5': - resolution: {integrity: sha512-bRLn6/spxpmgLk+iwOrR29KrYnJjG9DGpHGkDFG82UM21ZpJ39ztUT9OXX3g+usW7/b2z+h46I9ZiYyB07XMXg==} - '@vue/devtools-shared@8.0.7': resolution: {integrity: sha512-CgAb9oJH5NUmbQRdYDj/1zMiaICYSLtm+B1kxcP72LBrifGAjUmt8bx52dDH1gWRPlQgxGPqpAMKavzVirAEhA==} + '@vue/devtools-shared@8.1.1': + resolution: {integrity: sha512-+h4ttmJYl/txpxHKaoZcaKpC+pvckgLzIDiSQlaQ7kKthKh8KuwoLW2D8hPJEnqKzXOvu15UHEoGyngAXCz0EQ==} + '@vue/language-core@3.2.5': resolution: {integrity: sha512-d3OIxN/+KRedeM5wQ6H6NIpwS3P5gC9nmyaHgBk+rO6dIsjY+tOh4UlPpiZbAh3YtLdCGEX4M16RmsBqPmJV+g==} + '@vue/language-core@3.2.6': + resolution: {integrity: sha512-xYYYX3/aVup576tP/23sEUpgiEnujrENaoNRbaozC1/MA9I6EGFQRJb4xrt/MmUCAGlxTKL2RmT8JLTPqagCkg==} + '@vue/reactivity@3.5.24': resolution: {integrity: sha512-BM8kBhtlkkbnyl4q+HiF5R5BL0ycDPfihowulm02q3WYp2vxgPcJuZO866qa/0u3idbMntKEtVNuAUp5bw4teg==} '@vue/reactivity@3.5.29': resolution: {integrity: sha512-zcrANcrRdcLtmGZETBxWqIkoQei8HaFpZWx/GHKxx79JZsiZ8j1du0VUJtu4eJjgFvU/iKL5lRXFXksVmI+5DA==} + '@vue/reactivity@3.5.30': + resolution: {integrity: sha512-179YNgKATuwj9gB+66snskRDOitDiuOZqkYia7mHKJaidOMo/WJxHKF8DuGc4V4XbYTJANlfEKb0yxTQotnx4Q==} + '@vue/runtime-core@3.5.24': resolution: {integrity: sha512-RYP/byyKDgNIqfX/gNb2PB55dJmM97jc9wyF3jK7QUInYKypK2exmZMNwnjueWwGceEkP6NChd3D2ZVEp9undQ==} '@vue/runtime-core@3.5.29': resolution: {integrity: sha512-8DpW2QfdwIWOLqtsNcds4s+QgwSaHSJY/SUe04LptianUQ/0xi6KVsu/pYVh+HO3NTVvVJjIPL2t6GdeKbS4Lg==} + '@vue/runtime-core@3.5.30': + resolution: {integrity: sha512-e0Z+8PQsUTdwV8TtEsLzUM7SzC7lQwYKePydb7K2ZnmS6jjND+WJXkmmfh/swYzRyfP1EY3fpdesyYoymCzYfg==} + '@vue/runtime-dom@3.5.24': resolution: {integrity: sha512-Z8ANhr/i0XIluonHVjbUkjvn+CyrxbXRIxR7wn7+X7xlcb7dJsfITZbkVOeJZdP8VZwfrWRsWdShH6pngMxRjw==} '@vue/runtime-dom@3.5.29': resolution: {integrity: sha512-AHvvJEtcY9tw/uk+s/YRLSlxxQnqnAkjqvK25ZiM4CllCZWzElRAoQnCM42m9AHRLNJ6oe2kC5DCgD4AUdlvXg==} + '@vue/runtime-dom@3.5.30': + resolution: {integrity: sha512-2UIGakjU4WSQ0T4iwDEW0W7vQj6n7AFn7taqZ9Cvm0Q/RA2FFOziLESrDL4GmtI1wV3jXg5nMoJSYO66egDUBw==} + '@vue/server-renderer@3.5.24': resolution: {integrity: sha512-Yh2j2Y4G/0/4z/xJ1Bad4mxaAk++C2v4kaa8oSYTMJBJ00/ndPuxCnWeot0/7/qafQFLh5pr6xeV6SdMcE/G1w==} peerDependencies: @@ -3663,12 +3842,20 @@ packages: peerDependencies: vue: 3.5.29 + '@vue/server-renderer@3.5.30': + resolution: {integrity: sha512-v+R34icapydRwbZRD0sXwtHqrQJv38JuMB4JxbOxd8NEpGLny7cncMp53W9UH/zo4j8eDHjQ1dEJXwzFQknjtQ==} + peerDependencies: + vue: 3.5.30 + '@vue/shared@3.5.24': resolution: {integrity: sha512-9cwHL2EsJBdi8NY22pngYYWzkTDhld6fAD6jlaeloNGciNSJL6bLpbxVgXl96X00Jtc6YWQv96YA/0sxex/k1A==} '@vue/shared@3.5.29': resolution: {integrity: sha512-w7SR0A5zyRByL9XUkCfdLs7t9XOHUyJ67qPGQjOou3p6GvBeBW+AVjUUmlxtZ4PIYaRvE+1LmK44O4uajlZwcg==} + '@vue/shared@3.5.30': + resolution: {integrity: sha512-YXgQ7JjaO18NeK2K9VTbDHaFy62WrObMa6XERNfNOkAhD1F1oDSf3ZJ7K6GqabZ0BvSDHajp8qfS5Sa2I9n8uQ==} + '@vue/test-utils@2.4.6': resolution: {integrity: sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==} @@ -3785,12 +3972,12 @@ packages: ajv@6.14.0: resolution: {integrity: sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==} - ajv@8.12.0: - resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} - ajv@8.17.1: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} + ajv@8.18.0: + resolution: {integrity: sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==} + alien-signals@3.1.0: resolution: {integrity: sha512-yufC6VpSy8tK3I0lO67pjumo5JvDQVQyr38+3OHqe6CHl1t2VZekKZ7EKKZSqk0cRmE7U7tfZbpXiKNzuc+ckg==} @@ -3912,6 +4099,9 @@ packages: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} + axios@1.13.6: + resolution: {integrity: sha512-ChTCHMouEe2kn713WHbQGcuYrr6fXTBiu460OTwWrWob16g1bXn4vtz07Ope7ewMozJAnEquLk5lWQWtBig9DQ==} + b4a@1.7.3: resolution: {integrity: sha512-5Q2mfq2WfGuFp3uS//0s6baOJLMoVduPYVeNmDYxu5OUA1/cBfvr2RIS7vi62LdNj/urk1hfmj867I3qt6uZ7Q==} peerDependencies: @@ -3953,8 +4143,8 @@ packages: base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - baseline-browser-mapping@2.10.0: - resolution: {integrity: sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrmnjWAA==} + baseline-browser-mapping@2.10.10: + resolution: {integrity: sha512-sUoJ3IMxx4AyRqO4MLeHlnGDkyXRoUG0/AI9fjK+vS72ekpV0yWVY7O0BVjmBcRtkNcsAO2QDZ4tdKKGoI6YaQ==} engines: {node: '>=6.0.0'} hasBin: true @@ -4030,9 +4220,9 @@ packages: resolution: {integrity: sha512-bkXY9WsVpY7CvMhKSR6pZilZu9Ln5WDrKVBUXf2S443etkmEO4V58heTecXcUIsNsi4Rx8JUO4NfX1IcQl4deg==} engines: {node: '>=18.20'} - bumpp@10.4.1: - resolution: {integrity: sha512-X/bwWs5Gbb/D7rN4aHLB7zdjiA6nGdjckM1sTHhI9oovIbEw2L5pw5S4xzk8ZTeOZ8EnwU/Ze4SoZ6/Vr3pM2Q==} - engines: {node: '>=18'} + bumpp@11.0.1: + resolution: {integrity: sha512-X0ti27I/ewsx/u0EJSyl0IZWWOE95q+wIpAG/60kc5gqMNR4a23YJdd3lL7JsBN11TgLbCM4KpfGMuFfdigb4g==} + engines: {node: '>=20.19.0'} hasBin: true bundle-name@4.1.0: @@ -4073,6 +4263,10 @@ packages: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} engines: {node: '>=8'} + cac@7.0.0: + resolution: {integrity: sha512-tixWYgm5ZoOD+3g6UTea91eow5z6AAHaho3g0V9CNSNb45gM8SmflpAc+GRd1InC4AqN/07Unrgp56Y94N9hJQ==} + engines: {node: '>=20.19.0'} + call-bind-apply-helpers@1.0.2: resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} engines: {node: '>= 0.4'} @@ -4101,8 +4295,8 @@ packages: ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} - chai@6.2.1: - resolution: {integrity: sha512-p4Z49OGG5W/WBCPSS/dH3jQ73kD6tiMmUM+bckNK6Jr5JHMG3k9bg/BvKR8lKmtVBKmOiuVaV2ws8s9oSbwysg==} + chai@6.2.2: + resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==} engines: {node: '>=18'} chalk-template@0.4.0: @@ -4313,9 +4507,6 @@ packages: resolution: {integrity: sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==} engines: {node: '>=18'} - copy-paste@2.2.0: - resolution: {integrity: sha512-jqSL4r9DSeiIvJZStLzY/sMLt9ToTM7RsK237lYOTG+KcbQJHGala3R1TUpa8h1p9adswVgIdV4qGbseVhL4lg==} - core-js-compat@3.47.0: resolution: {integrity: sha512-IGfuznZ/n7Kp9+nypamBhvwdwLsW6KC8IOaURw2doAK5e98AG3acVLdh0woOnEqCfUtS+Vu882JE4k/DAm3ItQ==} @@ -4363,6 +4554,10 @@ packages: resolution: {integrity: sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==} engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + css-tree@3.2.1: + resolution: {integrity: sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + css-what@6.2.2: resolution: {integrity: sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==} engines: {node: '>= 6'} @@ -4372,8 +4567,8 @@ packages: engines: {node: '>=4'} hasBin: true - cssnano-preset-default@7.0.10: - resolution: {integrity: sha512-6ZBjW0Lf1K1Z+0OKUAUpEN62tSXmYChXWi2NAA0afxEVsj9a+MbcB1l5qel6BHJHmULai2fCGRthCeKSFbScpA==} + cssnano-preset-default@7.0.11: + resolution: {integrity: sha512-waWlAMuCakP7//UCY+JPrQS1z0OSLeOXk2sKWJximKWGupVxre50bzPlvpbUwZIDylhf/ptf0Pk+Yf7C+hoa3g==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 @@ -4384,8 +4579,8 @@ packages: peerDependencies: postcss: ^8.4.32 - cssnano@7.1.2: - resolution: {integrity: sha512-HYOPBsNvoiFeR1eghKD5C3ASm64v9YVyJB4Ivnl2gqKoQYvjjN/G0rztvKQq8OxocUtC6sjqY8jwYngIB4AByA==} + cssnano@7.1.3: + resolution: {integrity: sha512-mLFHQAzyapMVFLiJIn7Ef4C2UCEvtlTlbyILR6B5ZsUAV3D/Pa761R5uC1YPhyBkRd3eqaDm2ncaNrD7R4mTRg==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 @@ -4394,10 +4589,6 @@ packages: resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==} engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} - cssstyle@6.2.0: - resolution: {integrity: sha512-Fm5NvhYathRnXNVndkUsCCuR63DCLVVwGOOwQw782coXFi5HhkXdu289l59HlXZBawsyNccXfWRYvLzcDCdDig==} - engines: {node: '>=20'} - csstype@3.2.3: resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} @@ -4424,6 +4615,9 @@ packages: dayjs@1.11.19: resolution: {integrity: sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw==} + dayjs@1.11.20: + resolution: {integrity: sha512-YbwwqR/uYpeoP4pu043q+LTDLFBLApUP6VxRihdfNTqu4ubqMlGDLd6ErXhEgsyvY0K6nCs7nggYumAN+9uEuQ==} + db0@0.3.4: resolution: {integrity: sha512-RiXXi4WaNzPTHEOu8UPQKMooIbqOEyqA1t7Z6MsdxSCeb8iUC9ko3LcmsLmeUt2SM5bctfArZKkRQggKZz7JNw==} peerDependencies: @@ -4683,9 +4877,6 @@ packages: resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} engines: {node: '>= 0.4'} - es-module-lexer@1.7.0: - resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==} - es-module-lexer@2.0.0: resolution: {integrity: sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw==} @@ -4749,6 +4940,9 @@ packages: eslint-flat-config-utils@3.0.1: resolution: {integrity: sha512-VMA3u86bLzNAwD/7DkLtQ9lolgIOx2Sj0kTMMnBvrvEz7w0rQj4aGCR+lqsqtld63gKiLyT4BnQZ3gmGDXtvjg==} + eslint-flat-config-utils@3.0.2: + resolution: {integrity: sha512-mPvevWSDQFwgABvyCurwIu6ZdKxGI5NW22/BGDwA1T49NO6bXuxbV9VfJK/tkQoNyPogT6Yu1d57iM0jnZVWmg==} + eslint-formatting-reporter@0.0.0: resolution: {integrity: sha512-k9RdyTqxqN/wNYVaTk/ds5B5rA8lgoAmvceYN7bcZMBwU7TuXx5ntewJv81eF3pIL/CiJE+pJZm36llG8yhyyw==} peerDependencies: @@ -4795,6 +4989,11 @@ packages: '@typescript-eslint/utils': '*' eslint: '*' + eslint-plugin-depend@1.5.0: + resolution: {integrity: sha512-i3UeLYmclf1Icp35+6W7CR4Bp2PIpDgBuf/mpmXK5UeLkZlvYJ21VuQKKHHAIBKRTPivPGX/gZl5JGno1o9Y0A==} + peerDependencies: + eslint: '>=8.40.0' + eslint-plugin-es-x@7.8.0: resolution: {integrity: sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==} engines: {node: ^14.18.0 || >=16.0.0} @@ -4864,8 +5063,14 @@ packages: peerDependencies: eslint: '>=9.38.0' - eslint-plugin-toml@1.3.0: - resolution: {integrity: sha512-+jjKAs2WRNom9PU1APlrL1kNexy1RHoKB7SHw7FLZBlqOCYXUKyG3Quiv1XUICdWDJ6oGVgW/mSm+BDuQrcc3w==} + eslint-plugin-regexp@3.1.0: + resolution: {integrity: sha512-qGXIC3DIKZHcK1H9A9+Byz9gmndY6TTSRkSMTZpNXdyCw2ObSehRgccJv35n9AdUakEjQp5VFNLas6BMXizCZg==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + peerDependencies: + eslint: '>=9.38.0' + + eslint-plugin-toml@1.3.1: + resolution: {integrity: sha512-1l00fBP03HIt9IPV7ZxBi7x0y0NMdEZmakL1jBD6N/FoKBvfKxPw5S8XkmzBecOnFBTn5Z8sNJtL5vdf9cpRMQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} peerDependencies: eslint: '>=9.38.0' @@ -4899,8 +5104,8 @@ packages: '@typescript-eslint/parser': optional: true - eslint-plugin-yml@3.3.0: - resolution: {integrity: sha512-kRja5paNrMfZnbNqDbZSFrSHz5x7jmGBQq7d6z/+wRvWD4Y0yb1fbjojBg3ReMewFhBB7nD2nPC86+m3HmILJA==} + eslint-plugin-yml@3.3.1: + resolution: {integrity: sha512-isntsZchaTqDMNNkD+CakrgA/pdUoJ45USWBKpuqfAW1MCuw731xX/vrXfoJFZU3tTFr24nCbDYmDfT2+g4QtQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24.0.0} peerDependencies: eslint: '>=9.38.0' @@ -4911,14 +5116,14 @@ packages: '@vue/compiler-sfc': ^3.3.0 eslint: '>=9.0.0' - eslint-scope@8.4.0: - resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint-scope@9.1.1: resolution: {integrity: sha512-GaUN0sWim5qc8KVErfPBWmc31LEsOkrUJbvJZV+xuL3u2phMUK4HIvXlWAakfC8W4nzlK+chPEAkYOYb5ZScIw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} + eslint-scope@9.1.2: + resolution: {integrity: sha512-xS90H51cKw0jltxmvmHy2Iai1LIqrfbw57b79w/J7MfvDfkIkFZ+kj6zC3BjtUwh150HsSSdxXZcsuv72miDFQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + eslint-typegen@2.3.1: resolution: {integrity: sha512-zVdh8rThBvv2o5T/K524Fr5iy1Jo0q09rHL7y7FbOhgMB177T2gw+shxfC4ChCEqdq6/y6LJA4j8Fbr/Xls9aw==} peerDependencies: @@ -4936,8 +5141,8 @@ packages: resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - eslint@10.0.2: - resolution: {integrity: sha512-uYixubwmqJZH+KLVYIVKY1JQt7tysXhtj21WSvjcSmU5SVNzMus1bgLe+pAt816yQ8opKfheVVoPLqvVMGejYw==} + eslint@10.1.0: + resolution: {integrity: sha512-S9jlY/ELKEUwwQnqWDO+f+m6sercqOPSqXM5Go94l7DOmxHVDgmSFGWEzeE/gwgTAr0W103BWt0QLe/7mabIvA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} hasBin: true peerDependencies: @@ -4954,15 +5159,15 @@ packages: resolution: {integrity: sha512-AVHPqQoZYc+RUM4/3Ly5udlZY/U4LS8pIG05jEjWM2lQMU/oaZ7qshzAl2YP1tfNmXfftH3ohurfwNAug+MnsQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} + espree@11.2.0: + resolution: {integrity: sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} engines: {node: '>=4'} hasBin: true - esquery@1.6.0: - resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} - engines: {node: '>=0.10'} - esquery@1.7.0: resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==} engines: {node: '>=0.10'} @@ -5018,8 +5223,8 @@ packages: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} - expect-type@1.2.2: - resolution: {integrity: sha512-JhFGDVJ7tmDJItKhYgJCGLOWjuK9vPxiXoUFLwLDc99NlmklilbiQJwoctZtt13+xMw91MCk/REan6MWHqDjyA==} + expect-type@1.3.0: + resolution: {integrity: sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==} engines: {node: '>=12.0.0'} exsolve@1.0.8: @@ -5052,8 +5257,8 @@ packages: fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - fast-npm-meta@1.3.0: - resolution: {integrity: sha512-Yz48hvMPiD+J5vPQj767Gdd3i6TOzqwBuvc0ylkzyxh2+VEJmtWBBy1OT1/CoeStcKhS6lBK8opUf13BNXBBYw==} + fast-npm-meta@1.4.2: + resolution: {integrity: sha512-XXyd9d3ie/JeIIjm6WeKalvapGGFI4ShAjPJM78vgUFYzoEsuNSjvvVTuht0XZcwbVdOnEEGzhxwguRbxkIcDg==} hasBin: true fast-safe-stringify@2.1.1: @@ -5126,8 +5331,17 @@ packages: '@nuxt/kit': optional: true - focus-trap@7.8.0: - resolution: {integrity: sha512-/yNdlIkpWbM0ptxno3ONTuf+2g318kh2ez3KSeZN5dZ8YC6AAmgeWz+GasYYiBJPFaYcSAPeu4GfhUaChzIJXA==} + focus-trap@8.0.1: + resolution: {integrity: sha512-9ptSG6z51YQOstI/oN4XuVGP/03u2nh0g//qz7L6zX0i6PZiPnkcf3GenXq7N2hZnASXaMxTPpbKwdI+PFvxlw==} + + follow-redirects@1.15.11: + resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true for-each@0.3.5: resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} @@ -5325,6 +5539,9 @@ packages: resolution: {integrity: sha512-O1Ld7Dr+nqPnmGpdhzLmMTQ4vAsD+rHwMm1NLUmoUFFymBOMKxCCrtDxqdBRYXdeEPEi3SyoR4TizJLQrnKBNA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + h3@1.15.10: + resolution: {integrity: sha512-YzJeWSkDZxAhvmp8dexjRK5hxziRO7I9m0N53WhvYL5NiWfkUkzssVzY9jvGu0HBoLFW6+duYmNSn6MaZBCCtg==} + h3@1.15.4: resolution: {integrity: sha512-z5cFQWDffyOe4vQ9xIqNfCZdV4p//vy6fBnr8Q1AWnVZ0teurKMG66rLj++TKwKPUP3u7iMUvrvKaEUiQw2QWQ==} @@ -5379,6 +5596,9 @@ packages: hookable@6.0.1: resolution: {integrity: sha512-uKGyY8BuzN/a5gvzvA+3FVWo0+wUjgtfSdnmjtrOVwQCZPHpHDH2WRO3VZSOeluYrHoDCiXFffZXs8Dj1ULWtw==} + hookable@6.1.0: + resolution: {integrity: sha512-ZoKZSJgu8voGK2geJS+6YtYjvIzu9AOM/KZXsBxr83uhLL++e9pEv/dlgwgy3dvHg06kTz6JOh1hk3C8Ceiymw==} + html-encoding-sniffer@6.0.0: resolution: {integrity: sha512-CV9TW3Y3f8/wT0BRFc1/KAVQ3TUHiXmaAb6VW9vtiMFf7SLoMd1PdAc4W3KFOFETBJUb90KatHqlsZMWV+R9Gg==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} @@ -5441,11 +5661,11 @@ packages: image-meta@0.2.2: resolution: {integrity: sha512-3MOLanc3sb3LNGWQl1RlQlNWURE5g32aUphrDyFeCsxBTk08iE3VNe4CwsUZ0Qs1X+EfX0+r29Sxdpza4B+yRA==} - immutable@5.1.4: - resolution: {integrity: sha512-p6u1bG3YSnINT5RQmx/yRZBpenIl30kVxkTLDyHLIMk0gict704Q9n+thfDI7lTRm9vXdDYutVzXhzcThxTnXA==} + immutable@5.1.5: + resolution: {integrity: sha512-t7xcm2siw+hlUM68I+UEOK+z84RzmN59as9DZ7P1l0994DKUWV7UXBMQZVxaoMSRQ+PBZbHCOoBt7a2wxOMt+A==} - impound@1.0.0: - resolution: {integrity: sha512-8lAJ+1Arw2sMaZ9HE2ZmL5zOcMnt18s6+7Xqgq2aUVy4P1nlzAyPtzCDxsk51KVFwHEEdc6OWvUyqwHwhRYaug==} + impound@1.1.5: + resolution: {integrity: sha512-5AUn+QE0UofqNHu5f2Skf6Svukdg4ehOIq8O0EtqIx4jta0CDZYBPqpIHt0zrlUTiFVYlLpeH39DoikXBjPKpA==} imurmurhash@0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} @@ -5687,9 +5907,9 @@ packages: isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - isexe@3.1.1: - resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==} - engines: {node: '>=16'} + isexe@4.0.0: + resolution: {integrity: sha512-FFUtZMpoZ8RqHS3XeXEmHWLA4thH+ZxCv2lOiPIn1Xc7CxrqhWzNSDzD+/chS/zbYezmiwWLdQC09JdQKmthOw==} + engines: {node: '>=20'} jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} @@ -5730,9 +5950,9 @@ packages: resolution: {integrity: sha512-/2uqY7x6bsrpi3i9LVU6J89352C0rpMk0as8trXxCtvd4kPk1ke/Eyif6wqfSLvoNJqcDG9Vk4UsXgygzCt2xA==} engines: {node: '>=20.0.0'} - jsdom@28.1.0: - resolution: {integrity: sha512-0+MoQNYyr2rBHqO1xilltfDjV9G7ymYGlAUazgcDLQaUf8JDHbuGwsxN6U9qWaElZ4w1B2r7yEGIL3GdeW3Rug==} - engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} + jsdom@29.0.1: + resolution: {integrity: sha512-z6JOK5gRO7aMybVq/y/MlIpKh8JIi68FBKMUtKkK2KH/wMSRlCxQ682d08LB9fYXplyY/UXG8P4XXTScmdjApg==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24.0.0} peerDependencies: canvas: ^3.0.0 peerDependenciesMeta: @@ -5820,6 +6040,80 @@ packages: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} + lightningcss-android-arm64@1.32.0: + resolution: {integrity: sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [android] + + lightningcss-darwin-arm64@1.32.0: + resolution: {integrity: sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [darwin] + + lightningcss-darwin-x64@1.32.0: + resolution: {integrity: sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [darwin] + + lightningcss-freebsd-x64@1.32.0: + resolution: {integrity: sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [freebsd] + + lightningcss-linux-arm-gnueabihf@1.32.0: + resolution: {integrity: sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==} + engines: {node: '>= 12.0.0'} + cpu: [arm] + os: [linux] + + lightningcss-linux-arm64-gnu@1.32.0: + resolution: {integrity: sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + libc: [glibc] + + lightningcss-linux-arm64-musl@1.32.0: + resolution: {integrity: sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + libc: [musl] + + lightningcss-linux-x64-gnu@1.32.0: + resolution: {integrity: sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + libc: [glibc] + + lightningcss-linux-x64-musl@1.32.0: + resolution: {integrity: sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + libc: [musl] + + lightningcss-win32-arm64-msvc@1.32.0: + resolution: {integrity: sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [win32] + + lightningcss-win32-x64-msvc@1.32.0: + resolution: {integrity: sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [win32] + + lightningcss@1.32.0: + resolution: {integrity: sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==} + engines: {node: '>= 12.0.0'} + lilconfig@3.1.3: resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} engines: {node: '>=14'} @@ -5827,8 +6121,8 @@ packages: linkify-it@5.0.0: resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} - lint-staged@16.3.1: - resolution: {integrity: sha512-bqvvquXzFBAlSbluugR4KXAe4XnO/QZcKVszpkBtqLWa2KEiVy8n6Xp38OeUbv/gOJOX4Vo9u5pFt/ADvbm42Q==} + lint-staged@16.4.0: + resolution: {integrity: sha512-lBWt8hujh/Cjysw5GYVmZpFHXDCgZzhrOm8vbcUdobADZNOK/bRshr2kM3DfgrrtR1DQhfupW9gnIXOfiFi+bw==} engines: {node: '>=20.17'} hasBin: true @@ -5883,6 +6177,9 @@ packages: lodash.defaults@4.2.0: resolution: {integrity: sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==} + lodash.identity@3.0.0: + resolution: {integrity: sha512-AupTIzdLQxJS5wIYUQlgGyk2XRTfGXA+MCghDHqZk0pzUNYvd3EESS6dkChNauNYVIutcb0dfHw1ri9Q1yPV8Q==} + lodash.isarguments@3.1.0: resolution: {integrity: sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==} @@ -5895,6 +6192,12 @@ packages: lodash.memoize@4.1.2: resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + + lodash.pickby@4.6.0: + resolution: {integrity: sha512-AZV+GsS/6ckvPOVQPXSiFFacKvKB4kOQu6ynt9wz0F3LO4R9Ij4K1ddYsIytDpSgLz88JHd9P+oaLeej5/Sl7Q==} + lodash.restparam@3.6.1: resolution: {integrity: sha512-L4/arjjuq4noiUJpt3yS6KIKDtJwNe2fIYgMqyYYKoeIfV1iEqvPwhCx23o+R9dzouGihDAPN1dTIRWa7zk8tw==} @@ -5911,6 +6214,9 @@ packages: resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==} engines: {node: '>=18'} + long@5.3.2: + resolution: {integrity: sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==} + longest-streak@3.1.0: resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} @@ -5925,6 +6231,10 @@ packages: resolution: {integrity: sha512-ESL2CrkS/2wTPfuend7Zhkzo2u0daGJ/A2VucJOgQ/C48S/zB8MMeMHSGKYpXhIjbPxfuezITkaBH1wqv00DDQ==} engines: {node: 20 || >=22} + lru-cache@11.2.7: + resolution: {integrity: sha512-aY/R+aEsRelme17KGQa/1ZSIpLpNYYrhcrepKTZgE+W3WM16YMCaPwOHLHsmopZHELU0Ojin1lPVxKR0MihncA==} + engines: {node: 20 || >=22} + lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} @@ -5956,9 +6266,6 @@ packages: magic-string@0.30.21: resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} - magicast@0.5.1: - resolution: {integrity: sha512-xrHS24IxaLrvuo613F719wvOIv9xPHFWQHuvGUBmPnCA/3MQxKI3b+r7n1jAoDHmsbC5bRhTZYR77invLAxVnw==} - magicast@0.5.2: resolution: {integrity: sha512-E3ZJh4J3S9KfwdjZhe2afj6R9lGIN5Pher1pF39UGrXRqq/VDaGVIGN13BjHd2u8B61hArAGOnso7nBOouW3TQ==} @@ -5968,10 +6275,6 @@ packages: markdown-it-task-lists@2.1.1: resolution: {integrity: sha512-TxFAc76Jnhb2OUu+n3yz9RMu4CwGfaT788br6HhEDlvWfdeJcLUsxk1Hgw2yJio0OXsxv7pyIPmvECY7bMbluA==} - markdown-it@14.1.0: - resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} - hasBin: true - markdown-it@14.1.1: resolution: {integrity: sha512-BuU2qnTti9YKgK5N+IeMubp14ZUKUUw7yeJbkjtosvHiP0AZ5c8IAgEMk79D0eC8F23r4Ac/q8cAIFdm2FtyoA==} hasBin: true @@ -6031,6 +6334,9 @@ packages: mdn-data@2.12.2: resolution: {integrity: sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==} + mdn-data@2.27.1: + resolution: {integrity: sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==} + mdurl@2.0.0: resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} @@ -6193,6 +6499,9 @@ packages: minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + minimatch@3.1.5: + resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} + minimatch@5.1.6: resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} engines: {node: '>=10'} @@ -6245,9 +6554,15 @@ packages: mlly@1.8.0: resolution: {integrity: sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==} + mlly@1.8.2: + resolution: {integrity: sha512-d+ObxMQFmbt10sretNDytwt85VrbkhhUA/JBGm1MPaWJ65Cl4wOgLaB1NYvJSZ0Ef03MMEU/0xpPMXUIQ29UfA==} + mocked-exports@0.1.1: resolution: {integrity: sha512-aF7yRQr/Q0O2/4pIXm6PZ5G+jAd7QS4Yu8m+WEeEHGnbo+7mE36CbLSDQiXYV8bVL3NfmdeqPJct0tUlnjVSnA==} + module-replacements@2.11.0: + resolution: {integrity: sha512-j5sNQm3VCpQQ7nTqGeOZtoJtV3uKERgCBm9QRhmGRiXiqkf7iRFOkfxdJRZWLkqYY8PNf4cDQF/WfXUYLENrRA==} + mrmime@2.0.1: resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==} engines: {node: '>=10'} @@ -6269,8 +6584,8 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - nanotar@0.2.0: - resolution: {integrity: sha512-9ca1h0Xjvo9bEkE4UOxgAzLV0jHKe6LMaxo37ND2DAhhAtd0j8pR1Wxz+/goMrZO8AEZTWCmyaOsFI/W5AdpCQ==} + nanotar@0.3.0: + resolution: {integrity: sha512-Kv2JYYiCzt16Kt5QwAc9BFG89xfPNBx+oQL4GQXD9nLqPkZBiNaqaCWtwnbk/q7UVsTYevvM1b0UF8zmEI4pCg==} napi-postinstall@0.3.4: resolution: {integrity: sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==} @@ -6368,8 +6683,8 @@ packages: nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} - nuxt@4.3.1: - resolution: {integrity: sha512-bl+0rFcT5Ax16aiWFBFPyWcsTob19NTZaDL5P6t0MQdK63AtgS6fN6fwvwdbXtnTk6/YdCzlmuLzXhSM22h0OA==} + nuxt@4.4.2: + resolution: {integrity: sha512-iWVFpr/YEqVU/CenqIHMnIkvb2HE/9f+q8oxZ+pj2et+60NljGRClCgnmbvGPdmNFE0F1bEhoBCYfqbDOCim3Q==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: @@ -6479,20 +6794,20 @@ packages: resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} engines: {node: '>= 0.4'} - oxc-minify@0.112.0: - resolution: {integrity: sha512-rkVSeeIRSt+RYI9uX6xonBpLUpvZyegxIg0UL87ev7YAfUqp7IIZlRjkgQN5Us1lyXD//TOo0Dcuuro/TYOWoQ==} - engines: {node: ^20.19.0 || >=22.12.0} - - oxc-parser@0.112.0: - resolution: {integrity: sha512-7rQ3QdJwobMQLMZwQaPuPYMEF2fDRZwf51lZ//V+bA37nejjKW5ifMHbbCwvA889Y4RLhT+/wLJpPRhAoBaZYw==} + oxc-minify@0.117.0: + resolution: {integrity: sha512-JHsv/b+bmBJkAzkHXgTN7RThloVxLHPT0ojHfjqxVeHuQB7LPpLUbJ2qfwz37sto9stZ9+AVwUP4b3gtR7p/Tw==} engines: {node: ^20.19.0 || >=22.12.0} oxc-parser@0.115.0: resolution: {integrity: sha512-2w7Xn3CbS/zwzSY82S5WLemrRu3CT57uF7Lx8llrE/2bul6iMTcJE4Rbls7GDNbLn3ttATI68PfOz2Pt3KZ2cQ==} engines: {node: ^20.19.0 || >=22.12.0} - oxc-transform@0.112.0: - resolution: {integrity: sha512-cIRRvZgrHfsAHrkt8LWdAX4+Do8R0MzQSfeo9yzErzHeYiuyNiP4PCTPbOy/wBXL4MYzt3ebrBa5jt3akQkKAg==} + oxc-parser@0.117.0: + resolution: {integrity: sha512-l3cbgK5wUvWDVNWM/JFU77qDdGZK1wudnLsFcrRyNo/bL1CyU8pC25vDhMHikVY29lbK2InTWsX42RxVSutUdQ==} + engines: {node: ^20.19.0 || >=22.12.0} + + oxc-transform@0.117.0: + resolution: {integrity: sha512-u1Stl2uhDh9bFuOGjGXQIqx46IRUNMyHQkq59LayXNGS2flNv7RpZpRSWs5S5deuNP6jJZ12gtMBze+m4dOhmw==} engines: {node: ^20.19.0 || >=22.12.0} oxc-walker@0.7.0: @@ -6535,6 +6850,9 @@ packages: package-manager-detector@1.6.0: resolution: {integrity: sha512-61A5ThoTiDG/C8s8UMZwSorAGwMJ0ERVGj2OjoW5pAalsNOg15+iQiPzrLJ4jhZ1HJzmC2PIHT2oEiH3R5fzNA==} + papaparse@5.5.3: + resolution: {integrity: sha512-5QvjGxYVjxO59MGU2lHVYpRWBBtKHnlIAcSe1uNFCkkptUh63NFRj0FJQm7nR67puEruUci/ZkjmEFrjCAyP4A==} + parse-gitignore@2.0.0: resolution: {integrity: sha512-RmVuCHWsfu0QPNW+mraxh/xjQVw/lhUCUru8Zni3Ctq3AoMhpDTq0OVdKS6iesd6Kqb7viCV3isAL43dciOSog==} engines: {node: '>=14'} @@ -6653,20 +6971,20 @@ packages: peerDependencies: postcss: ^8.4.38 - postcss-colormin@7.0.5: - resolution: {integrity: sha512-ekIBP/nwzRWhEMmIxHHbXHcMdzd1HIUzBECaj5KEdLz9DVP2HzT065sEhvOx1dkLjYW7jyD0CngThx6bpFi2fA==} + postcss-colormin@7.0.6: + resolution: {integrity: sha512-oXM2mdx6IBTRm39797QguYzVEWzbdlFiMNfq88fCCN1Wepw3CYmJ/1/Ifa/KjWo+j5ZURDl2NTldLJIw51IeNQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 - postcss-convert-values@7.0.8: - resolution: {integrity: sha512-+XNKuPfkHTCEo499VzLMYn94TiL3r9YqRE3Ty+jP7UX4qjewUONey1t7CG21lrlTLN07GtGM8MqFVp86D4uKJg==} + postcss-convert-values@7.0.9: + resolution: {integrity: sha512-l6uATQATZaCa0bckHV+r6dLXfWtUBKXxO3jK+AtxxJJtgMPD+VhhPCCx51I4/5w8U5uHV67g3w7PXj+V3wlMlg==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 - postcss-discard-comments@7.0.5: - resolution: {integrity: sha512-IR2Eja8WfYgN5n32vEGSctVQ1+JARfu4UH8M7bgGh1bC+xI/obsPJXaBpQF7MAByvgwZinhpHpdrmXtvVVlKcQ==} + postcss-discard-comments@7.0.6: + resolution: {integrity: sha512-Sq+Fzj1Eg5/CPf1ERb0wS1Im5cvE2gDXCE+si4HCn1sf+jpQZxDI4DXEp8t77B/ImzDceWE2ebJQFXdqZ6GRJw==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 @@ -6695,8 +7013,8 @@ packages: peerDependencies: postcss: ^8.4.32 - postcss-merge-rules@7.0.7: - resolution: {integrity: sha512-njWJrd/Ms6XViwowaaCc+/vqhPG3SmXn725AGrnl+BgTuRPEacjiLEaGq16J6XirMJbtKkTwnt67SS+e2WGoew==} + postcss-merge-rules@7.0.8: + resolution: {integrity: sha512-BOR1iAM8jnr7zoQSlpeBmCsWV5Uudi/+5j7k05D0O/WP3+OFMPD86c1j/20xiuRtyt45bhxw/7hnhZNhW2mNFA==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 @@ -6713,14 +7031,14 @@ packages: peerDependencies: postcss: ^8.4.32 - postcss-minify-params@7.0.5: - resolution: {integrity: sha512-FGK9ky02h6Ighn3UihsyeAH5XmLEE2MSGH5Tc4tXMFtEDx7B+zTG6hD/+/cT+fbF7PbYojsmmWjyTwFwW1JKQQ==} + postcss-minify-params@7.0.6: + resolution: {integrity: sha512-YOn02gC68JijlaXVuKvFSCvQOhTpblkcfDre2hb/Aaa58r2BIaK4AtE/cyZf2wV7YKAG+UlP9DT+By0ry1E4VQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 - postcss-minify-selectors@7.0.5: - resolution: {integrity: sha512-x2/IvofHcdIrAm9Q+p06ZD1h6FPcQ32WtCRVodJLDR+WMn8EVHI1kvLxZuGKz/9EY5nAmI6lIQIrpo4tBy5+ug==} + postcss-minify-selectors@7.0.6: + resolution: {integrity: sha512-lIbC0jy3AAwDxEgciZlBullDiMBeBCT+fz5G8RcA9MWqh/hfUkpOI3vNDUNEZHgokaoiv0juB9Y8fGcON7rU/A==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 @@ -6761,8 +7079,8 @@ packages: peerDependencies: postcss: ^8.4.32 - postcss-normalize-unicode@7.0.5: - resolution: {integrity: sha512-X6BBwiRxVaFHrb2WyBMddIeB5HBjJcAaUHyhLrM2FsxSq5TFqcHSsK7Zu1otag+o0ZphQGJewGH1tAyrD0zX1Q==} + postcss-normalize-unicode@7.0.6: + resolution: {integrity: sha512-z6bwTV84YW6ZvvNoaNLuzRW4/uWxDKYI1iIDrzk6D2YTL7hICApy+Q1LP6vBEsljX8FM7YSuV9qI79XESd4ddQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 @@ -6785,8 +7103,8 @@ packages: peerDependencies: postcss: ^8.4.32 - postcss-reduce-initial@7.0.5: - resolution: {integrity: sha512-RHagHLidG8hTZcnr4FpyMB2jtgd/OcyAazjMhoy5qmWJOx1uxKh4ntk0Pb46ajKM0rkf32lRH4C8c9qQiPR6IA==} + postcss-reduce-initial@7.0.6: + resolution: {integrity: sha512-G6ZyK68AmrPdMB6wyeA37ejnnRG2S8xinJrZJnOv+IaRKf6koPAVbQsiC7MfkmXaGmF1UO+QCijb27wfpxuRNg==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 @@ -6801,14 +7119,18 @@ packages: resolution: {integrity: sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==} engines: {node: '>=4'} - postcss-svgo@7.1.0: - resolution: {integrity: sha512-KnAlfmhtoLz6IuU3Sij2ycusNs4jPW+QoFE5kuuUOK8awR6tMxZQrs5Ey3BUz7nFCzT3eqyFgqkyrHiaU2xx3w==} + postcss-selector-parser@7.1.1: + resolution: {integrity: sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==} + engines: {node: '>=4'} + + postcss-svgo@7.1.1: + resolution: {integrity: sha512-zU9H9oEDrUFKa0JB7w+IYL7Qs9ey1mZyjhbf0KLxwJDdDRtoPvCmaEfknzqfHj44QS9VD6c5sJnBAVYTLRg/Sg==} engines: {node: ^18.12.0 || ^20.9.0 || >= 18} peerDependencies: postcss: ^8.4.32 - postcss-unique-selectors@7.0.4: - resolution: {integrity: sha512-pmlZjsmEAG7cHd7uK3ZiNSW6otSZ13RHuZ/4cDN/bVglS5EpF2r2oxY99SuOHa8m7AWoBCelTS3JPpzsIs8skQ==} + postcss-unique-selectors@7.0.5: + resolution: {integrity: sha512-3QoYmEt4qg/rUWDn6Tc8+ZVPmbp4G1hXDtCNWDx0st8SjtCbRcxRXDDM1QrEiXGG3A45zscSJFb4QH90LViyxg==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 @@ -6820,6 +7142,10 @@ packages: resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} engines: {node: ^10 || ^12 || >=14} + postcss@8.5.8: + resolution: {integrity: sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==} + engines: {node: ^10 || ^12 || >=14} + prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} @@ -6862,6 +7188,10 @@ packages: proto-list@1.2.4: resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} + protobufjs@7.5.4: + resolution: {integrity: sha512-CvexbZtbov6jW2eXAvLukXjXUW1TzFaivC46BpWc/3BpcCysb5Vffu+B3XHMm8lVEuy2Mm4XGex8hBSg1yapPg==} + engines: {node: '>=12.0.0'} + proxy-agent@6.5.0: resolution: {integrity: sha512-TmatMXdr2KlRiA2CyDu8GqR8EjahTG3aY3nXjdzFyoZbmB8hrBsTyMezhULIXKnC0jpfjlmiZ3+EaCzoInSu/A==} engines: {node: '>= 14'} @@ -6884,6 +7214,10 @@ packages: resolution: {integrity: sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==} engines: {node: '>=0.6'} + qs@6.15.0: + resolution: {integrity: sha512-mAZTtNCeetKMH+pSjrb76NAM8V9a05I9aBZOHztWy/UqcJdQYNsf59vrRKWnojAT9Y+GbIvoTBC++CPHqpDBhQ==} + engines: {node: '>=0.6'} + quansync@0.2.11: resolution: {integrity: sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==} @@ -7050,6 +7384,11 @@ packages: engines: {node: 20 || >=22} hasBin: true + rolldown@1.0.0-rc.11: + resolution: {integrity: sha512-NRjoKMusSjfRbSYiH3VSumlkgFe7kYAa3pzVOsVYVFY3zb5d7nS+a3KGQ7hJKXuYWbzJKPVQ9Wxq2UvyK+ENpw==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + rollup-plugin-visualizer@6.0.5: resolution: {integrity: sha512-9+HlNgKCVbJDs8tVtjQ43US12eqaiHyyiLMdBwQ7vSZPiHMysGNo2E88TAp1si5wx8NAoYriI2A5kuKfIakmJg==} engines: {node: '>=18'} @@ -7068,11 +7407,6 @@ packages: engines: {node: '>=10.0.0'} hasBin: true - rollup@4.53.3: - resolution: {integrity: sha512-w8GmOxZfBmKknvdXU1sdM9NHcoQejwF/4mNgj2JuEEdRaHwwF12K7e9eXn1nLZ07ad+du76mkVsyeb2rKGllsA==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - rollup@4.59.0: resolution: {integrity: sha512-2oMpl67a3zCH9H79LeMcbDhXW/UmWG/y2zuqnF2jQq5uq9TbM9TVyXvA4+t+ne2IIkBdrLpAaRQAvo7YI/Yyeg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} @@ -7081,6 +7415,9 @@ packages: rou3@0.7.12: resolution: {integrity: sha512-iFE4hLDuloSWcD7mjdCDhx2bKcIsYbtOTpfH5MHHLSKMOUyjqQXTeZVa289uuwEGEKFoE/BAPbhaU4B774nceg==} + rou3@0.8.1: + resolution: {integrity: sha512-ePa+XGk00/3HuCqrEnK3LxJW7I0SdNg6EFzKUJG73hMAdDcOUC/i/aSz7LSDwLrGr33kal/rqOGydzwl6U7zBA==} + rsvp@3.6.2: resolution: {integrity: sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw==} engines: {node: 0.12.* || 4.* || 6.* || >= 7.*} @@ -7121,8 +7458,8 @@ packages: safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - sass@1.97.3: - resolution: {integrity: sha512-fDz1zJpd5GycprAbu4Q2PV/RprsRtKC/0z82z0JLgdytmcq0+ujJbJ/09bPGDxCLkKY3Np5cRAOcWiVkLXJURg==} + sass@1.98.0: + resolution: {integrity: sha512-+4N/u9dZ4PrgzGgPlKnaaRQx64RO0JBKs9sDhQ2pLgN6JQZ25uPQZKQYaBJU48Kd5BxgXoJ4e09Dq7nMcOUW3A==} engines: {node: '>=14.0.0'} hasBin: true @@ -7132,6 +7469,10 @@ packages: sax@1.4.3: resolution: {integrity: sha512-yqYn1JhPczigF94DMS+shiDMjDowYO6y9+wB/4WgO0Y19jWYk0lQ4tuG5KI7kj4FTp1wxPj5IFfcrz/s1c3jjQ==} + sax@1.6.0: + resolution: {integrity: sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA==} + engines: {node: '>=11.0.0'} + saxes@6.0.0: resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} engines: {node: '>=v12.22.7'} @@ -7164,12 +7505,12 @@ packages: serialize-javascript@6.0.2: resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} - seroval@1.5.0: - resolution: {integrity: sha512-OE4cvmJ1uSPrKorFIH9/w/Qwuvi/IMcGbv5RKgcJ/zjA/IohDLU6SVaxFN9FwajbP7nsX0dQqMDes1whk3y+yw==} + seroval@1.5.1: + resolution: {integrity: sha512-OwrZRZAfhHww0WEnKHDY8OM0U/Qs8OTfIDWhUD4BLpNJUfXK4cGmjiagGze086m+mhI+V2nD0gfbHEnJjb9STA==} engines: {node: '>=10'} - serve-handler@6.1.6: - resolution: {integrity: sha512-x5RL9Y2p5+Sh3D38Fh9i/iQ5ZK+e4xuXRd/pGbM4D13tgo/MGwbttUk8emytcr1YYzBYs+apnUngBDFYfpjPuQ==} + serve-handler@6.1.7: + resolution: {integrity: sha512-CinAq1xWb0vR3twAv9evEU8cNWkXCb9kd5ePAHUKJBkOsUpR1wt/CvGdeca7vqumL1U5cSaeVQ6zZMxiJ3yWsg==} serve-placeholder@2.0.2: resolution: {integrity: sha512-/TMG8SboeiQbZJWRlfTCqMs2DD3SZgWp0kDQePz9yUuCnDfDh/92gf7/PxGhzXTKBIPASIHxFcZndoNbp6QOLQ==} @@ -7178,8 +7519,8 @@ packages: resolution: {integrity: sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw==} engines: {node: '>= 18'} - serve@14.2.5: - resolution: {integrity: sha512-Qn/qMkzCcMFVPb60E/hQy+iRLpiU8PamOfOSYoAHmmF+fFFmpPpqa6Oci2iWYpTdOUM3VF+TINud7CfbQnsZbA==} + serve@14.2.6: + resolution: {integrity: sha512-QEjUSA+sD4Rotm1znR8s50YqA3kYpRGPmtd5GlFxbaL9n/FdUNbqMhxClqdditSk0LlZyA/dhud6XNRTOC9x2Q==} engines: {node: '>= 14'} hasBin: true @@ -7243,8 +7584,8 @@ packages: resolution: {integrity: sha512-WszCLXwT4h2k1ufIXAgsbiTOazqqevFCIncOuUBZJ91DdvWcC5+OFkluWRQPrcuSYd8fjq+o2y1QfWqYMoAToQ==} hasBin: true - simple-git@3.32.3: - resolution: {integrity: sha512-56a5oxFdWlsGygOXHWrG+xjj5w9ZIt2uQbzqiIGdR/6i5iococ7WQ/bNPzWxCJdEUGUCmyMH0t9zMpRJTaKxmw==} + simple-git@3.33.0: + resolution: {integrity: sha512-D4V/tGC2sjsoNhoMybKyGoE+v8A60hRawKQ1iFRA1zwuDgGZCBJ4ByOzZ5J8joBbi4Oam0qiPH+GhzmSBwbJng==} sirv@3.0.2: resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==} @@ -7332,8 +7673,8 @@ packages: engines: {node: '>=20.16.0'} hasBin: true - srvx@0.11.8: - resolution: {integrity: sha512-2n9t0YnAXPJjinytvxccNgs7rOA5gmE7Wowt/8Dy2dx2fDC6sBhfBpbrCvjYKALlVukPS/Uq3QwkolKNa7P/2Q==} + srvx@0.11.13: + resolution: {integrity: sha512-oknN6qduuMPafxKtHucUeG32Q963pjriA5g3/Bl05cwEsUe5VVbIU4qR9LrALHbipSCyBe+VmfDGGydqazDRkw==} engines: {node: '>=20.16.0'} hasBin: true @@ -7360,6 +7701,9 @@ packages: std-env@3.10.0: resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==} + std-env@4.0.0: + resolution: {integrity: sha512-zUMPtQ/HBY3/50VbpkupYHbRroTRZJPRLvreamgErJVys0ceuzMkD44J/QjqhHjOzK42GQ3QZIeFG1OYfOtKqQ==} + stop-iteration-iterator@1.1.0: resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} engines: {node: '>= 0.4'} @@ -7450,8 +7794,8 @@ packages: strip-literal@3.1.0: resolution: {integrity: sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==} - structured-clone-es@1.0.0: - resolution: {integrity: sha512-FL8EeKFFyNQv5cMnXI31CIMCsFarSVI2bF0U0ImeNE3g/F1IvJQyqzOXxPBRXiwQfyBTlbNe88jh1jFW0O/jiQ==} + structured-clone-es@2.0.0: + resolution: {integrity: sha512-5UuAHmBLXYPCl22xWJrFuGmIhBKQzxISPVz6E7nmTmTcAOpUzlbjKJsRrCE4vADmMQ0dzeCnlWn9XufnAGf76Q==} stylehacks@7.0.7: resolution: {integrity: sha512-bJkD0JkEtbRrMFtwgpJyBbFIwfDDONQ1Ov3sDLZQP8HuJ73kBOyx66H4bOcAbVWmnfLdvQ0AJwXxOMkpujcO6g==} @@ -7480,8 +7824,8 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} - svgo@4.0.0: - resolution: {integrity: sha512-VvrHQ+9uniE+Mvx3+C9IEe/lWasXCU0nXMY2kZeLrHNICuRiC8uMPyM14UEaMOFA5mhyQqEkB02VoQ16n3DLaw==} + svgo@4.0.1: + resolution: {integrity: sha512-XDpWUOPC6FEibaLzjfe0ucaV0YrOjYotGJO1WpF0Zd+n6ZGEQUsSugaoLq9QkEZtAfQIxT42UChcssDVPP3+/w==} engines: {node: '>=16'} hasBin: true @@ -7547,10 +7891,18 @@ packages: tinybench@2.9.0: resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} + tinyclip@0.1.12: + resolution: {integrity: sha512-Ae3OVUqifDw0wBriIBS7yVaW44Dp6eSHQcyq4Igc7eN2TJH/2YsicswaW+J/OuMvhpDPOKEgpAZCjkb4hpoyeA==} + engines: {node: ^16.14.0 || >= 17.3.0} + tinyexec@1.0.2: resolution: {integrity: sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==} engines: {node: '>=18'} + tinyexec@1.0.4: + resolution: {integrity: sha512-u9r3uZC0bdpGOXtlxUIdwf9pkmvhqJdrVCH9fapQtgy/OeTTMZ1nqH7agtvEfmGui6e1XxjcdrlxvxJvc3sMqw==} + engines: {node: '>=18'} + tinyglobby@0.2.15: resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} engines: {node: '>=12.0.0'} @@ -7594,8 +7946,8 @@ packages: resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} engines: {node: '>=6'} - tough-cookie@6.0.0: - resolution: {integrity: sha512-kXuRi1mtaKMrsLUxz3sQYvVl37B0Ns6MzfrtV5DvJceE9bPyspOqk9xxv7XbZWcfLWbFmm997vl83qUWVJA64w==} + tough-cookie@6.0.1: + resolution: {integrity: sha512-LktZQb3IeoUWB9lqR5EWTHgW/VTITCXg4D21M+lvybRVdylLrRMnqaIONLVb5mav8vM19m44HIcGq4qASeu2Qw==} engines: {node: '>=16'} tr46@0.0.3: @@ -7692,8 +8044,8 @@ packages: typedarray-to-buffer@3.1.5: resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} - typedoc-plugin-markdown@4.10.0: - resolution: {integrity: sha512-psrg8Rtnv4HPWCsoxId+MzEN8TVK5jeKCnTbnGAbTBqcDapR9hM41bJT/9eAyKn9C2MDG9Qjh3MkltAYuLDoXg==} + typedoc-plugin-markdown@4.11.0: + resolution: {integrity: sha512-2iunh2ALyfyh204OF7h2u0kuQ84xB3jFZtFyUr01nThJkLvR8oGGSSDlyt2gyO4kXhvUxDcVbO0y43+qX+wFbw==} engines: {node: '>= 18'} peerDependencies: typedoc: 0.28.x @@ -7703,12 +8055,12 @@ packages: peerDependencies: typedoc-plugin-markdown: '>=4.4.0' - typedoc@0.28.17: - resolution: {integrity: sha512-ZkJ2G7mZrbxrKxinTQMjFqsCoYY6a5Luwv2GKbTnBCEgV2ihYm5CflA9JnJAwH0pZWavqfYxmDkFHPt4yx2oDQ==} + typedoc@0.28.18: + resolution: {integrity: sha512-NTWTUOFRQ9+SGKKTuWKUioUkjxNwtS3JDRPVKZAXGHZy2wCA8bdv2iJiyeePn0xkmK+TCCqZFT0X7+2+FLjngA==} engines: {node: '>= 18', pnpm: '>= 10'} hasBin: true peerDependencies: - typescript: 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x || 5.9.x + typescript: 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x || 5.9.x || 6.0.x typescript@5.9.3: resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} @@ -7749,15 +8101,15 @@ packages: undici-types@7.18.2: resolution: {integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==} - undici@7.22.0: - resolution: {integrity: sha512-RqslV2Us5BrllB+JeiZnK4peryVTndy9Dnqq62S3yYRRTj0tFQCwEniUy2167skdGOy3vqRzEvl1Dm4sV2ReDg==} + undici@7.24.5: + resolution: {integrity: sha512-3IWdCpjgxp15CbJnsi/Y9TCDE7HWVN19j1hmzVhoAkY/+CJx449tVxT5wZc1Gwg8J+P0LWvzlBzxYRnHJ+1i7Q==} engines: {node: '>=20.18.1'} unenv@2.0.0-rc.24: resolution: {integrity: sha512-i7qRCmY42zmCwnYlh9H2SvLEypEFGye5iRmEMKjcGi7zk9UquigRjFtTLz0TYqr0ZGLZhaMHl/foy1bZR+Cwlw==} - unhead@2.1.10: - resolution: {integrity: sha512-We8l9uNF8zz6U8lfQaVG70+R/QBfQx1oPIgXin4BtZnK2IQpz6yazQ0qjMNVBDw2ADgF2ea58BtvSK+XX5AS7g==} + unhead@2.1.12: + resolution: {integrity: sha512-iTHdWD9ztTunOErtfUFk6Wr11BxvzumcYJ0CzaSCBUOEtg+DUZ9+gnE99i8QkLFT2q1rZD48BYYGXpOZVDLYkA==} unicode-canonical-property-names-ecmascript@2.0.1: resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==} @@ -7791,6 +8143,10 @@ packages: resolution: {integrity: sha512-njnL6sp8lEA8QQbZrt+52p/g4X0rw3bnGGmUcJnt1jeG8+iiqO779aGz0PirCtydAIVcuTBRlJ52F0u46z309Q==} engines: {node: '>=18.12.0'} + unimport@6.0.2: + resolution: {integrity: sha512-ZSOkrDw380w+KIPniY3smyXh2h7H9v2MNr9zejDuh239o5sdea44DRAYrv+rfUi2QGT186P2h0GPGKvy8avQ5g==} + engines: {node: '>=18.12.0'} + unique-string@2.0.0: resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==} engines: {node: '>=8'} @@ -7814,13 +8170,13 @@ packages: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} - unocss@66.6.4: - resolution: {integrity: sha512-W7BfUX2pw4cvUB8kq5CZro/TWM0LcXTjgwwmjowK5B/KVs0Sgc8vTaCr5wuyqNcDLLGAe/9oNPGsVgVBJQN6kQ==} + unocss@66.6.7: + resolution: {integrity: sha512-TdZ/JnKhrqkknrMvLl0KOwrGzFThEspFIyYiylFYJki2JkMN/5EJIr+vIZEGRX69hFTjTLi6utIpbipueqzNbw==} engines: {node: '>=14'} peerDependencies: - '@unocss/astro': 66.6.4 - '@unocss/postcss': 66.6.4 - '@unocss/webpack': 66.6.4 + '@unocss/astro': 66.6.7 + '@unocss/postcss': 66.6.7 + '@unocss/webpack': 66.6.7 peerDependenciesMeta: '@unocss/astro': optional: true @@ -7829,16 +8185,12 @@ packages: '@unocss/webpack': optional: true - unplugin-utils@0.2.5: - resolution: {integrity: sha512-gwXJnPRewT4rT7sBi/IvxKTjsms7jX7QIDLOClApuZwR49SXbrB1z2NLUZ+vDHyqCj/n58OzRRqaW+B8OZi8vg==} - engines: {node: '>=18.12.0'} - unplugin-utils@0.3.1: resolution: {integrity: sha512-5lWVjgi6vuHhJ526bI4nlCOmkCIF3nnfXkCMDeMJrtdvxTs6ZFCM8oNufGTsDbKv/tJ/xj8RpvXjRuPBZJuJog==} engines: {node: '>=20.19.0'} - unplugin-vue-components@31.0.0: - resolution: {integrity: sha512-4ULwfTZTLuWJ7+S9P7TrcStYLsSRkk6vy2jt/WTfgUEUb0nW9//xxmrfhyHUEVpZ2UKRRwfRb8Yy15PDbVZf+Q==} + unplugin-vue-components@32.0.0: + resolution: {integrity: sha512-uLdccgS7mf3pv1bCCP20y/hm+u1eOjAmygVkh+Oa70MPkzgl1eQv1L0CwdHNM3gscO8/GDMGIET98Ja47CBbZg==} engines: {node: '>=20.19.0'} peerDependencies: '@nuxt/kit': ^3.2.2 || ^4.0.0 @@ -7847,19 +8199,12 @@ packages: '@nuxt/kit': optional: true - unplugin-vue-router@0.19.2: - resolution: {integrity: sha512-u5dgLBarxE5cyDK/hzJGfpCTLIAyiTXGlo85COuD4Nssj6G7NxS+i9mhCWz/1p/ud1eMwdcUbTXehQe41jYZUA==} - deprecated: 'Merged into vuejs/router. Migrate: https://router.vuejs.org/guide/migration/v4-to-v5.html' - peerDependencies: - '@vue/compiler-sfc': ^3.5.17 - vue-router: ^4.6.0 - peerDependenciesMeta: - vue-router: - optional: true + unplugin@3.0.0: + resolution: {integrity: sha512-0Mqk3AT2TZCXWKdcoaufeXNukv2mTrEZExeXlHIOZXdqYoHHr4n51pymnwV8x2BOVxwXbK2HLlI7usrqMpycdg==} + engines: {node: ^20.19.0 || >=22.12.0} - unplugin@2.3.11: - resolution: {integrity: sha512-5uKD0nqiYVzlmCRs01Fhs2BdkEgBS3SAVP6ndrBsuK42iC2+JHyxM05Rm9G8+5mkmRtzMZGY8Ct5+mliZxU/Ww==} - engines: {node: '>=18.12.0'} + unrouting@0.1.7: + resolution: {integrity: sha512-+0hfD+CVWtD636rc5Fn9VEjjTEDhdqgMpbwAuVoUmydSHDaMNiFW93SJG4LV++RoGSEAyvQN5uABAscYpDphpQ==} unrs-resolver@1.11.1: resolution: {integrity: sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==} @@ -8052,12 +8397,12 @@ packages: vite-dev-rpc@1.1.0: resolution: {integrity: sha512-pKXZlgoXGoE8sEKiKJSng4hI1sQ4wi5YT24FCrwrLt6opmkjlqPPVmiPWWJn8M8byMxRGzp1CrFuqQs4M/Z39A==} peerDependencies: - vite: ^7.3.1 + vite: ^8.0.2 vite-hot-client@2.1.0: resolution: {integrity: sha512-7SpgZmU7R+dDnSmvXE1mfDtnHLHQSisdySVR7lO8ceAXvM0otZeuQQ6C8LrS5d/aYyP/QZ0hI0L+dIPrm4YlFQ==} peerDependencies: - vite: ^7.3.1 + vite: ^8.0.2 vite-node@5.3.0: resolution: {integrity: sha512-8f20COPYJujc3OKPX6OuyBy3ZIv2det4eRRU4GY1y2MjbeGSUmPjedxg1b72KnTagCofwvZ65ThzjxDW2AtQFQ==} @@ -8075,7 +8420,7 @@ packages: oxlint: '>=1' stylelint: '>=16' typescript: '*' - vite: ^7.3.1 + vite: ^8.0.2 vls: '*' vti: '*' vue-tsc: ~2.2.10 || ^3.0.0 @@ -8106,7 +8451,7 @@ packages: engines: {node: '>=14'} peerDependencies: '@nuxt/kit': '*' - vite: ^7.3.1 + vite: ^8.0.2 peerDependenciesMeta: '@nuxt/kit': optional: true @@ -8116,37 +8461,38 @@ packages: engines: {node: '>=16.0.0'} peerDependencies: '@vite-pwa/assets-generator': ^1.0.0 - vite: ^7.3.1 + vite: ^8.0.2 peerDependenciesMeta: '@vite-pwa/assets-generator': optional: true - vite-plugin-vue-devtools@8.0.7: - resolution: {integrity: sha512-BWj/ykGpqVAJVdPyHmSTUm44buz3jPv+6jnvuFdQSRH0kAgP1cEIE4doHiFyqHXOmuB5EQVR/nh2g9YRiRNs9g==} + vite-plugin-vue-devtools@8.1.1: + resolution: {integrity: sha512-9qTpOmZ2vHpvlI9hdVXAQ1Ry4I8GcBArU7aPi0qfIaV7fQIXy0L1nb6X4mFY2Gw0dYshHuLbIl0Ulb572SCjsQ==} engines: {node: '>=v14.21.3'} peerDependencies: - vite: ^7.3.1 + vite: ^8.0.2 vite-plugin-vue-inspector@5.3.2: resolution: {integrity: sha512-YvEKooQcSiBTAs0DoYLfefNja9bLgkFM7NI2b07bE2SruuvX0MEa9cMaxjKVMkeCp5Nz9FRIdcN1rOdFVBeL6Q==} peerDependencies: - vite: ^7.3.1 + vite: ^8.0.2 - vite-plugin-vue-tracer@1.2.0: - resolution: {integrity: sha512-a9Z/TLpxwmoE9kIcv28wqQmiszM7ec4zgndXWEsVD/2lEZLRGzcg7ONXmplzGF/UP5W59QNtS809OdywwpUWQQ==} + vite-plugin-vue-tracer@1.3.0: + resolution: {integrity: sha512-Cgfce6VikzOw5MUJTpeg50s5rRjzU1Vr61ZjuHunVVHLjZZ5AUlgyExHthZ3r59vtoz9W2rDt23FYG81avYBKw==} peerDependencies: - vite: ^7.3.1 + vite: ^8.0.2 vue: ^3.5.0 - vite@7.3.1: - resolution: {integrity: sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==} + vite@8.0.2: + resolution: {integrity: sha512-1gFhNi+bHhRE/qKZOJXACm6tX4bA3Isy9KuKF15AgSRuRazNBOJfdDemPBU16/mpMxApDPrWvZ08DcLPEoRnuA==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: '@types/node': ^20.19.0 || >=22.12.0 + '@vitejs/devtools': ^0.1.0 + esbuild: ^0.27.0 jiti: '>=1.21.0' less: ^4.0.0 - lightningcss: ^1.21.0 sass: ^1.70.0 sass-embedded: ^1.70.0 stylus: '>=0.54.8' @@ -8157,12 +8503,14 @@ packages: peerDependenciesMeta: '@types/node': optional: true + '@vitejs/devtools': + optional: true + esbuild: + optional: true jiti: optional: true less: optional: true - lightningcss: - optional: true sass: optional: true sass-embedded: @@ -8181,13 +8529,13 @@ packages: vitepress-plugin-group-icons@1.7.1: resolution: {integrity: sha512-3ZPcIqwHNBg1btrOOSecOqv8yJxHdu3W2ugxE5LusclDF005LAm60URMEmBQrkgl4JvM32AqJirqghK6lGIk8g==} peerDependencies: - vite: ^7.3.1 + vite: ^8.0.2 peerDependenciesMeta: vite: optional: true - vitepress@2.0.0-alpha.16: - resolution: {integrity: sha512-w1nwsefDVIsje7BZr2tsKxkZutDGjG0YoQ2yxO7+a9tvYVqfljYbwj5LMYkPy8Tb7YbPwa22HtIhk62jbrvuEQ==} + vitepress@2.0.0-alpha.17: + resolution: {integrity: sha512-Z3VPUpwk/bHYqt1uMVOOK1/4xFiWQov1GNc2FvMdz6kvje4JRXEOngVI9C+bi5jeedMSHiA4dwKkff1NCvbZ9Q==} hasBin: true peerDependencies: markdown-it-mathjax3: ^4 @@ -8204,18 +8552,18 @@ packages: vitest-environment-nuxt@1.0.1: resolution: {integrity: sha512-eBCwtIQriXW5/M49FjqNKfnlJYlG2LWMSNFsRVKomc8CaMqmhQPBS5LZ9DlgYL9T8xIVsiA6RZn2lk7vxov3Ow==} - vitest@4.0.18: - resolution: {integrity: sha512-hOQuK7h0FGKgBAas7v0mSAsnvrIgAvWmRFjmzpJ7SwFHH3g1k2u37JtYwOwmEKhK6ZO3v9ggDBBm0La1LCK4uQ==} + vitest@4.1.1: + resolution: {integrity: sha512-yF+o4POL41rpAzj5KVILUxm1GCjKnELvaqmU9TLLUbMfDzuN0UpUR9uaDs+mCtjPe+uYPksXDRLQGGPvj1cTmA==} engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@opentelemetry/api': ^1.9.0 '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 4.0.18 - '@vitest/browser-preview': 4.0.18 - '@vitest/browser-webdriverio': 4.0.18 - '@vitest/ui': 4.0.18 + '@vitest/browser-playwright': 4.1.1 + '@vitest/browser-preview': 4.1.1 + '@vitest/browser-webdriverio': 4.1.1 + '@vitest/ui': 4.1.1 happy-dom: '*' jsdom: '*' peerDependenciesMeta: @@ -8269,13 +8617,23 @@ packages: peerDependencies: vue: ^3.0.0 - vue-router@4.6.4: - resolution: {integrity: sha512-Hz9q5sa33Yhduglwz6g9skT8OBPii+4bFn88w6J+J4MfEo4KRRpmiNG/hHHkdbRFlLBOqxN8y8gf2Fb0MTUgVg==} + vue-router@5.0.4: + resolution: {integrity: sha512-lCqDLCI2+fKVRl2OzXuzdSWmxXFLQRxQbmHugnRpTMyYiT+hNaycV0faqG5FBHDXoYrZ6MQcX87BvbY8mQ20Bg==} peerDependencies: + '@pinia/colada': '>=0.21.2' + '@vue/compiler-sfc': ^3.5.17 + pinia: ^3.0.4 vue: ^3.5.0 + peerDependenciesMeta: + '@pinia/colada': + optional: true + '@vue/compiler-sfc': + optional: true + pinia: + optional: true - vue-tsc@3.2.5: - resolution: {integrity: sha512-/htfTCMluQ+P2FISGAooul8kO4JMheOTCbCy4M6dYnYYjqLe3BExZudAua6MSIKSFYQtFOYAll7XobYwcpokGA==} + vue-tsc@3.2.6: + resolution: {integrity: sha512-gYW/kWI0XrwGzd0PKc7tVB/qpdeAkIZLNZb10/InizkQjHjnT8weZ/vBarZoj4kHKbUTZT/bAVgoOr8x4NsQ/Q==} hasBin: true peerDependencies: typescript: '>=5.0.0' @@ -8301,6 +8659,14 @@ packages: typescript: optional: true + vue@3.5.30: + resolution: {integrity: sha512-hTHLc6VNZyzzEH/l7PFGjpcTvUgiaPK5mdLkbjrTeWSRcEfxFrv56g/XckIYlE9ckuobsdwqd5mk2g1sBkMewg==} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + w3c-xmlserializer@5.0.0: resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==} engines: {node: '>=18'} @@ -8357,9 +8723,9 @@ packages: engines: {node: '>= 8'} hasBin: true - which@5.0.0: - resolution: {integrity: sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==} - engines: {node: ^18.17.0 || >=20.5.0} + which@6.0.1: + resolution: {integrity: sha512-oGLe46MIrCRqX7ytPUf66EAYvdeMIZYn3WaocqqKZAxrBpkqHfL/qvTyJ/bTk5+AqHCjXmrv3CEWgy368zhRUg==} + engines: {node: ^20.17.0 || >=22.9.0} hasBin: true why-is-node-running@2.3.0: @@ -8515,11 +8881,6 @@ packages: resolution: {integrity: sha512-h0uDm97wvT2bokfwwTmY6kJ1hp6YDFL0nRHwNKz8s/VD1FH/vvZjAKoMUE+un0eaYBSG7/c6h+lJTP+31tjgTw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - yaml@2.8.1: - resolution: {integrity: sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==} - engines: {node: '>= 14.6'} - hasBin: true - yaml@2.8.2: resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==} engines: {node: '>= 14.6'} @@ -8555,6 +8916,9 @@ packages: youch-core@0.3.3: resolution: {integrity: sha512-ho7XuGjLaJ2hWHoK8yFnsUGy2Y5uDpqSTq1FkHLK4/oqKtyUU1AFbOOxY4IpC9f0fTLjwYbslUz0Po5BpD1wrA==} + youch@4.1.0: + resolution: {integrity: sha512-cYekNh2tUoU+voS11X0D0UQntVCSO6LQ1h10VriQGmfbpf0mnGTruwZICts23UUNiZCXm8H8hQBtRrdsbhuNNg==} + youch@4.1.0-beta.13: resolution: {integrity: sha512-3+AG1Xvt+R7M7PSDudhbfbwiyveW6B8PLBIwTyEC598biEYIjHhC89i6DBEvR0EZUjGY3uGSnC429HpIa2Z09g==} @@ -8567,55 +8931,55 @@ packages: snapshots: - '@acemir/cssom@0.9.31': {} - - '@antfu/eslint-config@7.6.1(@typescript-eslint/typescript-estree@8.56.1(typescript@5.9.3))(@typescript-eslint/utils@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(@unocss/eslint-plugin@66.6.4(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.29)(eslint-plugin-format@2.0.1(eslint@10.0.2(jiti@2.6.1)))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)(vitest@4.0.18(@types/node@25.3.3)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@1.8.0))(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': + '@antfu/eslint-config@7.7.3(@typescript-eslint/typescript-estree@8.57.2(typescript@5.9.3))(@typescript-eslint/utils@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(@unocss/eslint-plugin@66.6.7(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.30)(eslint-plugin-format@2.0.1(eslint@10.1.0(jiti@2.6.1)))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)(vitest@4.1.1(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(jsdom@29.0.1(@noble/hashes@1.8.0))(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@antfu/install-pkg': 1.1.0 - '@clack/prompts': 1.0.1 - '@eslint-community/eslint-plugin-eslint-comments': 4.7.1(eslint@10.0.2(jiti@2.6.1)) + '@clack/prompts': 1.1.0 + '@e18e/eslint-plugin': 0.2.0(eslint@10.1.0(jiti@2.6.1)) + '@eslint-community/eslint-plugin-eslint-comments': 4.7.1(eslint@10.1.0(jiti@2.6.1)) '@eslint/markdown': 7.5.1 - '@stylistic/eslint-plugin': 5.9.0(eslint@10.0.2(jiti@2.6.1)) - '@typescript-eslint/eslint-plugin': 8.56.1(@typescript-eslint/parser@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/parser': 8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - '@vitest/eslint-plugin': 1.6.9(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)(vitest@4.0.18(@types/node@25.3.3)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@1.8.0))(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + '@stylistic/eslint-plugin': 5.10.0(eslint@10.1.0(jiti@2.6.1)) + '@typescript-eslint/eslint-plugin': 8.57.2(@typescript-eslint/parser@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + '@vitest/eslint-plugin': 1.6.13(@typescript-eslint/eslint-plugin@8.57.2(@typescript-eslint/parser@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)(vitest@4.1.1(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(jsdom@29.0.1(@noble/hashes@1.8.0))(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) ansis: 4.2.0 - cac: 6.7.14 - eslint: 10.0.2(jiti@2.6.1) - eslint-config-flat-gitignore: 2.2.1(eslint@10.0.2(jiti@2.6.1)) - eslint-flat-config-utils: 3.0.1 - eslint-merge-processors: 2.0.0(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-antfu: 3.2.2(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-command: 3.5.2(@typescript-eslint/typescript-estree@8.56.1(typescript@5.9.3))(@typescript-eslint/utils@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-import-lite: 0.5.2(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-jsdoc: 62.7.1(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-jsonc: 3.1.1(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-n: 17.24.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) + cac: 7.0.0 + eslint: 10.1.0(jiti@2.6.1) + eslint-config-flat-gitignore: 2.2.1(eslint@10.1.0(jiti@2.6.1)) + eslint-flat-config-utils: 3.0.2 + eslint-merge-processors: 2.0.0(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-antfu: 3.2.2(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-command: 3.5.2(@typescript-eslint/typescript-estree@8.57.2(typescript@5.9.3))(@typescript-eslint/utils@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-import-lite: 0.5.2(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-jsdoc: 62.7.1(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-jsonc: 3.1.1(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-n: 17.24.0(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) eslint-plugin-no-only-tests: 3.3.0 - eslint-plugin-perfectionist: 5.6.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - eslint-plugin-pnpm: 1.6.0(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-regexp: 3.0.0(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-toml: 1.3.0(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-unicorn: 63.0.0(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-unused-imports: 4.4.1(@typescript-eslint/eslint-plugin@8.56.1(@typescript-eslint/parser@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-vue: 10.8.0(@stylistic/eslint-plugin@5.9.0(eslint@10.0.2(jiti@2.6.1)))(@typescript-eslint/parser@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@10.0.2(jiti@2.6.1))) - eslint-plugin-yml: 3.3.0(eslint@10.0.2(jiti@2.6.1)) - eslint-processor-vue-blocks: 2.0.0(@vue/compiler-sfc@3.5.29)(eslint@10.0.2(jiti@2.6.1)) + eslint-plugin-perfectionist: 5.6.0(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + eslint-plugin-pnpm: 1.6.0(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-regexp: 3.1.0(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-toml: 1.3.1(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-unicorn: 63.0.0(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-unused-imports: 4.4.1(@typescript-eslint/eslint-plugin@8.57.2(@typescript-eslint/parser@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-vue: 10.8.0(@stylistic/eslint-plugin@5.10.0(eslint@10.1.0(jiti@2.6.1)))(@typescript-eslint/parser@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@10.1.0(jiti@2.6.1))) + eslint-plugin-yml: 3.3.1(eslint@10.1.0(jiti@2.6.1)) + eslint-processor-vue-blocks: 2.0.0(@vue/compiler-sfc@3.5.30)(eslint@10.1.0(jiti@2.6.1)) globals: 17.4.0 local-pkg: 1.1.2 parse-gitignore: 2.0.0 toml-eslint-parser: 1.0.3 - vue-eslint-parser: 10.4.0(eslint@10.0.2(jiti@2.6.1)) + vue-eslint-parser: 10.4.0(eslint@10.1.0(jiti@2.6.1)) yaml-eslint-parser: 2.0.0 optionalDependencies: - '@unocss/eslint-plugin': 66.6.4(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - eslint-plugin-format: 2.0.1(eslint@10.0.2(jiti@2.6.1)) + '@unocss/eslint-plugin': 66.6.7(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + eslint-plugin-format: 2.0.1(eslint@10.1.0(jiti@2.6.1)) transitivePeerDependencies: - '@eslint/json' - '@typescript-eslint/rule-tester' - '@typescript-eslint/typescript-estree' - '@typescript-eslint/utils' - '@vue/compiler-sfc' + - oxlint - supports-color - typescript - vitest @@ -8643,15 +9007,15 @@ snapshots: '@csstools/css-color-parser': 4.0.2(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) '@csstools/css-parser-algorithms': 4.0.0(@csstools/css-tokenizer@4.0.0) '@csstools/css-tokenizer': 4.0.0 - lru-cache: 11.2.6 + lru-cache: 11.2.7 - '@asamuzakjp/dom-selector@6.8.1': + '@asamuzakjp/dom-selector@7.0.4': dependencies: '@asamuzakjp/nwsapi': 2.3.9 bidi-js: 1.0.3 - css-tree: 3.1.0 + css-tree: 3.2.1 is-potential-custom-element-name: 1.0.1 - lru-cache: 11.2.6 + lru-cache: 11.2.7 '@asamuzakjp/nwsapi@2.3.9': {} @@ -8743,7 +9107,7 @@ snapshots: dependencies: '@babel/compat-data': 7.29.0 '@babel/helper-validator-option': 7.27.1 - browserslist: 4.28.0 + browserslist: 4.28.1 lru-cache: 5.1.1 semver: 6.3.1 @@ -8900,7 +9264,7 @@ snapshots: '@babel/parser@7.28.5': dependencies: - '@babel/types': 7.28.5 + '@babel/types': 7.29.0 '@babel/parser@7.29.0': dependencies: @@ -8941,12 +9305,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-proposal-decorators@7.28.0(@babel/core@7.28.5)': + '@babel/plugin-proposal-decorators@7.28.0(@babel/core@7.29.0)': dependencies: - '@babel/core': 7.28.5 - '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5) - '@babel/helper-plugin-utils': 7.27.1 - '@babel/plugin-syntax-decorators': 7.27.1(@babel/core@7.28.5) + '@babel/core': 7.29.0 + '@babel/helper-create-class-features-plugin': 7.28.6(@babel/core@7.29.0) + '@babel/helper-plugin-utils': 7.28.6 + '@babel/plugin-syntax-decorators': 7.27.1(@babel/core@7.29.0) transitivePeerDependencies: - supports-color @@ -8954,10 +9318,10 @@ snapshots: dependencies: '@babel/core': 7.28.5 - '@babel/plugin-syntax-decorators@7.27.1(@babel/core@7.28.5)': + '@babel/plugin-syntax-decorators@7.27.1(@babel/core@7.29.0)': dependencies: - '@babel/core': 7.28.5 - '@babel/helper-plugin-utils': 7.27.1 + '@babel/core': 7.29.0 + '@babel/helper-plugin-utils': 7.28.6 '@babel/plugin-syntax-import-assertions@7.27.1(@babel/core@7.28.5)': dependencies: @@ -8969,25 +9333,20 @@ snapshots: '@babel/core': 7.28.5 '@babel/helper-plugin-utils': 7.27.1 - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.28.5)': - dependencies: - '@babel/core': 7.28.5 - '@babel/helper-plugin-utils': 7.27.1 - - '@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.28.5)': - dependencies: - '@babel/core': 7.28.5 - '@babel/helper-plugin-utils': 7.27.1 - - '@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.29.0)': + '@babel/plugin-syntax-import-attributes@7.27.1(@babel/core@7.29.0)': dependencies: '@babel/core': 7.29.0 '@babel/helper-plugin-utils': 7.27.1 - '@babel/plugin-syntax-typescript@7.27.1(@babel/core@7.28.5)': + '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.29.0)': dependencies: - '@babel/core': 7.28.5 - '@babel/helper-plugin-utils': 7.27.1 + '@babel/core': 7.29.0 + '@babel/helper-plugin-utils': 7.28.6 + + '@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.29.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-plugin-utils': 7.28.6 '@babel/plugin-syntax-typescript@7.28.6(@babel/core@7.29.0)': dependencies: @@ -9310,17 +9669,6 @@ snapshots: '@babel/core': 7.28.5 '@babel/helper-plugin-utils': 7.27.1 - '@babel/plugin-transform-typescript@7.28.5(@babel/core@7.28.5)': - dependencies: - '@babel/core': 7.28.5 - '@babel/helper-annotate-as-pure': 7.27.3 - '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5) - '@babel/helper-plugin-utils': 7.27.1 - '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 - '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.28.5) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-typescript@7.28.6(@babel/core@7.29.0)': dependencies: '@babel/core': 7.29.0 @@ -9486,16 +9834,16 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.28.5 - '@bomb.sh/tab@0.0.12(cac@6.7.14)(citty@0.2.1)': + '@bomb.sh/tab@0.0.14(cac@6.7.14)(citty@0.2.1)': optionalDependencies: cac: 6.7.14 citty: 0.2.1 '@bramus/specificity@2.4.2': dependencies: - css-tree: 3.1.0 + css-tree: 3.2.1 - '@capacitor/android@8.1.0(@capacitor/core@7.4.3)': + '@capacitor/android@8.2.0(@capacitor/core@7.4.3)': dependencies: '@capacitor/core': 7.4.3 @@ -9554,9 +9902,8 @@ snapshots: picocolors: 1.1.1 sisteransi: 1.0.5 - '@clack/core@1.0.1': + '@clack/core@1.1.0': dependencies: - picocolors: 1.1.1 sisteransi: 1.0.5 '@clack/prompts@1.0.0': @@ -9565,10 +9912,9 @@ snapshots: picocolors: 1.1.1 sisteransi: 1.0.5 - '@clack/prompts@1.0.1': + '@clack/prompts@1.1.0': dependencies: - '@clack/core': 1.0.1 - picocolors: 1.1.1 + '@clack/core': 1.1.0 sisteransi: 1.0.5 '@cloudflare/kv-asset-handler@0.4.2': {} @@ -9591,7 +9937,9 @@ snapshots: dependencies: '@csstools/css-tokenizer': 4.0.0 - '@csstools/css-syntax-patches-for-csstree@1.0.29': {} + '@csstools/css-syntax-patches-for-csstree@1.1.1(css-tree@3.2.1)': + optionalDependencies: + css-tree: 3.2.1 '@csstools/css-tokenizer@4.0.0': {} @@ -9607,18 +9955,25 @@ snapshots: '@dprint/toml@0.7.0': {} - '@dxup/nuxt@0.3.2(magicast@0.5.2)': + '@dxup/nuxt@0.4.0(magicast@0.5.2)(typescript@5.9.3)': dependencies: '@dxup/unimport': 0.1.2 - '@nuxt/kit': 4.3.1(magicast@0.5.2) + '@nuxt/kit': 4.4.2(magicast@0.5.2) chokidar: 5.0.0 pathe: 2.0.3 tinyglobby: 0.2.15 + typescript: 5.9.3 transitivePeerDependencies: - magicast '@dxup/unimport@0.1.2': {} + '@e18e/eslint-plugin@0.2.0(eslint@10.1.0(jiti@2.6.1))': + dependencies: + eslint-plugin-depend: 1.5.0(eslint@10.1.0(jiti@2.6.1)) + optionalDependencies: + eslint: 10.1.0(jiti@2.6.1) + '@emnapi/core@1.7.1': dependencies: '@emnapi/wasi-threads': 1.1.0 @@ -9801,33 +10156,28 @@ snapshots: '@esbuild/win32-x64@0.27.3': optional: true - '@eslint-community/eslint-plugin-eslint-comments@4.7.1(eslint@10.0.2(jiti@2.6.1))': + '@eslint-community/eslint-plugin-eslint-comments@4.7.1(eslint@10.1.0(jiti@2.6.1))': dependencies: escape-string-regexp: 4.0.0 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) ignore: 7.0.5 - '@eslint-community/eslint-utils@4.9.0(eslint@10.0.2(jiti@2.6.1))': + '@eslint-community/eslint-utils@4.9.1(eslint@10.1.0(jiti@2.6.1))': dependencies: - eslint: 10.0.2(jiti@2.6.1) - eslint-visitor-keys: 3.4.3 - - '@eslint-community/eslint-utils@4.9.1(eslint@10.0.2(jiti@2.6.1))': - dependencies: - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.2': {} - '@eslint/compat@2.0.2(eslint@10.0.2(jiti@2.6.1))': + '@eslint/compat@2.0.2(eslint@10.1.0(jiti@2.6.1))': dependencies: '@eslint/core': 1.1.0 optionalDependencies: - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) - '@eslint/config-array@0.23.2': + '@eslint/config-array@0.23.3': dependencies: - '@eslint/object-schema': 3.0.2 + '@eslint/object-schema': 3.0.3 debug: 4.4.3 minimatch: 10.2.4 transitivePeerDependencies: @@ -9837,14 +10187,18 @@ snapshots: dependencies: '@eslint/core': 1.1.0 - '@eslint/config-inspector@1.4.2(eslint@10.0.2(jiti@2.6.1))': + '@eslint/config-helpers@0.5.3': + dependencies: + '@eslint/core': 1.1.1 + + '@eslint/config-inspector@1.4.2(eslint@10.1.0(jiti@2.6.1))': dependencies: ansis: 4.2.0 bundle-require: 5.1.0(esbuild@0.27.0) cac: 6.7.14 chokidar: 4.0.3 esbuild: 0.27.0 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) h3: 1.15.4 tinyglobby: 0.2.15 ws: 8.18.3 @@ -9860,6 +10214,10 @@ snapshots: dependencies: '@types/json-schema': 7.0.15 + '@eslint/core@1.1.1': + dependencies: + '@types/json-schema': 7.0.15 + '@eslint/js@9.39.3': {} '@eslint/markdown@7.5.1': @@ -9876,7 +10234,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/object-schema@3.0.2': {} + '@eslint/object-schema@3.0.3': {} '@eslint/plugin-kit@0.4.1': dependencies: @@ -9888,7 +10246,12 @@ snapshots: '@eslint/core': 1.1.0 levn: 0.4.1 - '@exodus/bytes@1.14.1(@noble/hashes@1.8.0)': + '@eslint/plugin-kit@0.6.1': + dependencies: + '@eslint/core': 1.1.1 + levn: 0.4.1 + + '@exodus/bytes@1.15.0(@noble/hashes@1.8.0)': optionalDependencies: '@noble/hashes': 1.8.0 @@ -10123,18 +10486,18 @@ snapshots: transitivePeerDependencies: - supports-color - '@ionic/vue-router@8.7.10(@stencil/core@4.38.3)(vue-router@4.6.4(vue@3.5.29(typescript@5.9.3)))(vue@3.5.29(typescript@5.9.3))': + '@ionic/vue-router@8.7.10(@stencil/core@4.38.3)(vue@3.5.29(typescript@5.9.3))': dependencies: - '@ionic/vue': 8.7.10(@stencil/core@4.38.3)(vue-router@4.6.4(vue@3.5.29(typescript@5.9.3)))(vue@3.5.29(typescript@5.9.3)) + '@ionic/vue': 8.7.10(@stencil/core@4.38.3)(vue@3.5.29(typescript@5.9.3)) transitivePeerDependencies: - '@stencil/core' - vue - vue-router - '@ionic/vue@8.7.10(@stencil/core@4.38.3)(vue-router@4.6.4(vue@3.5.29(typescript@5.9.3)))(vue@3.5.29(typescript@5.9.3))': + '@ionic/vue@8.7.10(@stencil/core@4.38.3)(vue@3.5.29(typescript@5.9.3))': dependencies: '@ionic/core': 8.7.10 - '@stencil/vue-output-target': 0.10.7(@stencil/core@4.38.3)(vue-router@4.6.4(vue@3.5.29(typescript@5.9.3)))(vue@3.5.29(typescript@5.9.3)) + '@stencil/vue-output-target': 0.10.7(@stencil/core@4.38.3)(vue@3.5.29(typescript@5.9.3)) ionicons: 8.0.13 transitivePeerDependencies: - '@stencil/core' @@ -10194,6 +10557,20 @@ snapshots: '@kwsites/promise-deferred@1.1.1': {} + '@larksuiteoapi/node-sdk@1.59.0': + dependencies: + axios: 1.13.6 + lodash.identity: 3.0.0 + lodash.merge: 4.6.2 + lodash.pickby: 4.6.0 + protobufjs: 7.5.4 + qs: 6.15.0 + ws: 8.19.0 + transitivePeerDependencies: + - bufferutil + - debug + - utf-8-validate + '@mapbox/node-pre-gyp@2.0.0': dependencies: consola: 3.4.2 @@ -10235,15 +10612,14 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.19.1 - '@nuxt/cli@3.33.1(@nuxt/schema@4.3.1)(cac@6.7.14)(magicast@0.5.2)': + '@nuxt/cli@3.34.0(@nuxt/schema@4.4.2)(cac@6.7.14)(magicast@0.5.2)': dependencies: - '@bomb.sh/tab': 0.0.12(cac@6.7.14)(citty@0.2.1) - '@clack/prompts': 1.0.1 + '@bomb.sh/tab': 0.0.14(cac@6.7.14)(citty@0.2.1) + '@clack/prompts': 1.1.0 c12: 3.3.3(magicast@0.5.2) citty: 0.2.1 confbox: 0.2.4 consola: 3.4.2 - copy-paste: 2.2.0 debug: 4.4.3 defu: 6.1.4 exsolve: 1.0.8 @@ -10260,13 +10636,14 @@ snapshots: pkg-types: 2.3.0 scule: 1.3.0 semver: 7.7.4 - srvx: 0.11.8 + srvx: 0.11.13 std-env: 3.10.0 + tinyclip: 0.1.12 tinyexec: 1.0.2 ufo: 1.6.3 - youch: 4.1.0-beta.13 + youch: 4.1.0 optionalDependencies: - '@nuxt/schema': 4.3.1 + '@nuxt/schema': 4.4.2 transitivePeerDependencies: - cac - commander @@ -10275,25 +10652,33 @@ snapshots: '@nuxt/devalue@2.0.2': {} - '@nuxt/devtools-kit@2.7.0(magicast@0.5.2)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': + '@nuxt/devtools-kit@2.7.0(magicast@0.5.2)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@nuxt/kit': 3.21.1(magicast@0.5.2) execa: 8.0.1 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) transitivePeerDependencies: - magicast - '@nuxt/devtools-kit@3.2.2(magicast@0.5.2)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': + '@nuxt/devtools-kit@3.2.2(magicast@0.5.2)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@nuxt/kit': 4.3.1(magicast@0.5.2) execa: 8.0.1 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) transitivePeerDependencies: - magicast - '@nuxt/devtools-wizard@3.2.2': + '@nuxt/devtools-kit@3.2.4(magicast@0.5.2)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: - '@clack/prompts': 1.0.1 + '@nuxt/kit': 4.4.2(magicast@0.5.2) + execa: 8.0.1 + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + transitivePeerDependencies: + - magicast + + '@nuxt/devtools-wizard@3.2.4': + dependencies: + '@clack/prompts': 1.1.0 consola: 3.4.2 diff: 8.0.3 execa: 8.0.1 @@ -10302,21 +10687,21 @@ snapshots: pkg-types: 2.3.0 semver: 7.7.4 - '@nuxt/devtools@3.2.2(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3))': + '@nuxt/devtools@3.2.4(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3))': dependencies: - '@nuxt/devtools-kit': 3.2.2(magicast@0.5.2)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) - '@nuxt/devtools-wizard': 3.2.2 - '@nuxt/kit': 4.3.1(magicast@0.5.2) - '@vue/devtools-core': 8.0.7(vue@3.5.29(typescript@5.9.3)) - '@vue/devtools-kit': 8.0.7 + '@nuxt/devtools-kit': 3.2.4(magicast@0.5.2)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + '@nuxt/devtools-wizard': 3.2.4 + '@nuxt/kit': 4.4.2(magicast@0.5.2) + '@vue/devtools-core': 8.1.1(vue@3.5.29(typescript@5.9.3)) + '@vue/devtools-kit': 8.1.1 birpc: 4.0.0 consola: 3.4.2 destr: 2.0.5 error-stack-parser-es: 1.0.5 execa: 8.0.1 - fast-npm-meta: 1.3.0 + fast-npm-meta: 1.4.2 get-port-please: 3.2.0 - hookable: 6.0.1 + hookable: 6.1.0 image-meta: 0.2.2 is-installed-globally: 1.0.0 launch-editor: 2.13.1 @@ -10328,14 +10713,14 @@ snapshots: perfect-debounce: 2.1.0 pkg-types: 2.3.0 semver: 7.7.4 - simple-git: 3.32.3 + simple-git: 3.33.0 sirv: 3.0.2 - structured-clone-es: 1.0.0 + structured-clone-es: 2.0.0 tinyglobby: 0.2.15 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) - vite-plugin-inspect: 11.3.3(@nuxt/kit@4.3.1(magicast@0.5.2))(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) - vite-plugin-vue-tracer: 1.2.0(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)) - which: 5.0.0 + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite-plugin-inspect: 11.3.3(@nuxt/kit@4.4.2(magicast@0.5.2))(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + vite-plugin-vue-tracer: 1.3.0(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)) + which: 6.0.1 ws: 8.19.0 transitivePeerDependencies: - bufferutil @@ -10343,32 +10728,73 @@ snapshots: - utf-8-validate - vue - '@nuxt/eslint-config@1.15.2(@typescript-eslint/utils@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.29)(eslint-plugin-format@2.0.1(eslint@10.0.2(jiti@2.6.1)))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)': + '@nuxt/devtools@3.2.4(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.30(typescript@5.9.3))': + dependencies: + '@nuxt/devtools-kit': 3.2.4(magicast@0.5.2)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + '@nuxt/devtools-wizard': 3.2.4 + '@nuxt/kit': 4.4.2(magicast@0.5.2) + '@vue/devtools-core': 8.1.1(vue@3.5.30(typescript@5.9.3)) + '@vue/devtools-kit': 8.1.1 + birpc: 4.0.0 + consola: 3.4.2 + destr: 2.0.5 + error-stack-parser-es: 1.0.5 + execa: 8.0.1 + fast-npm-meta: 1.4.2 + get-port-please: 3.2.0 + hookable: 6.1.0 + image-meta: 0.2.2 + is-installed-globally: 1.0.0 + launch-editor: 2.13.1 + local-pkg: 1.1.2 + magicast: 0.5.2 + nypm: 0.6.5 + ohash: 2.0.11 + pathe: 2.0.3 + perfect-debounce: 2.1.0 + pkg-types: 2.3.0 + semver: 7.7.4 + simple-git: 3.33.0 + sirv: 3.0.2 + structured-clone-es: 2.0.0 + tinyglobby: 0.2.15 + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite-plugin-inspect: 11.3.3(@nuxt/kit@4.4.2(magicast@0.5.2))(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + vite-plugin-vue-tracer: 1.3.0(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.30(typescript@5.9.3)) + which: 6.0.1 + ws: 8.19.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + - vue + + '@nuxt/eslint-config@1.15.2(@typescript-eslint/utils@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.30)(eslint-plugin-format@2.0.1(eslint@10.1.0(jiti@2.6.1)))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@antfu/install-pkg': 1.1.0 - '@clack/prompts': 1.0.1 + '@clack/prompts': 1.1.0 '@eslint/js': 9.39.3 - '@nuxt/eslint-plugin': 1.15.2(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - '@stylistic/eslint-plugin': 5.9.0(eslint@10.0.2(jiti@2.6.1)) - '@typescript-eslint/eslint-plugin': 8.56.1(@typescript-eslint/parser@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/parser': 8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - eslint: 10.0.2(jiti@2.6.1) - eslint-config-flat-gitignore: 2.2.1(eslint@10.0.2(jiti@2.6.1)) + '@nuxt/eslint-plugin': 1.15.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + '@stylistic/eslint-plugin': 5.9.0(eslint@10.1.0(jiti@2.6.1)) + '@typescript-eslint/eslint-plugin': 8.56.1(@typescript-eslint/parser@8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + eslint: 10.1.0(jiti@2.6.1) + eslint-config-flat-gitignore: 2.2.1(eslint@10.1.0(jiti@2.6.1)) eslint-flat-config-utils: 3.0.1 - eslint-merge-processors: 2.0.0(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-import-lite: 0.5.2(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-import-x: 4.16.1(@typescript-eslint/utils@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-jsdoc: 62.7.1(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-regexp: 3.0.0(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-unicorn: 63.0.0(eslint@10.0.2(jiti@2.6.1)) - eslint-plugin-vue: 10.8.0(@stylistic/eslint-plugin@5.9.0(eslint@10.0.2(jiti@2.6.1)))(@typescript-eslint/parser@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@10.0.2(jiti@2.6.1))) - eslint-processor-vue-blocks: 2.0.0(@vue/compiler-sfc@3.5.29)(eslint@10.0.2(jiti@2.6.1)) + eslint-merge-processors: 2.0.0(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-import-lite: 0.5.2(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-import-x: 4.16.1(@typescript-eslint/utils@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-jsdoc: 62.7.1(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-regexp: 3.0.0(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-unicorn: 63.0.0(eslint@10.1.0(jiti@2.6.1)) + eslint-plugin-vue: 10.8.0(@stylistic/eslint-plugin@5.9.0(eslint@10.1.0(jiti@2.6.1)))(@typescript-eslint/parser@8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@10.1.0(jiti@2.6.1))) + eslint-processor-vue-blocks: 2.0.0(@vue/compiler-sfc@3.5.30)(eslint@10.1.0(jiti@2.6.1)) globals: 17.4.0 local-pkg: 1.1.2 pathe: 2.0.3 - vue-eslint-parser: 10.4.0(eslint@10.0.2(jiti@2.6.1)) + vue-eslint-parser: 10.4.0(eslint@10.1.0(jiti@2.6.1)) optionalDependencies: - eslint-plugin-format: 2.0.1(eslint@10.0.2(jiti@2.6.1)) + eslint-plugin-format: 2.0.1(eslint@10.1.0(jiti@2.6.1)) transitivePeerDependencies: - '@typescript-eslint/utils' - '@vue/compiler-sfc' @@ -10376,26 +10802,26 @@ snapshots: - supports-color - typescript - '@nuxt/eslint-plugin@1.15.2(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)': + '@nuxt/eslint-plugin@1.15.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@typescript-eslint/types': 8.56.1 - '@typescript-eslint/utils': 8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - eslint: 10.0.2(jiti@2.6.1) + '@typescript-eslint/utils': 8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + eslint: 10.1.0(jiti@2.6.1) transitivePeerDependencies: - supports-color - typescript - '@nuxt/eslint@1.15.2(@typescript-eslint/utils@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.29)(eslint-plugin-format@2.0.1(eslint@10.0.2(jiti@2.6.1)))(eslint@10.0.2(jiti@2.6.1))(magicast@0.5.2)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': + '@nuxt/eslint@1.15.2(@typescript-eslint/utils@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.30)(eslint-plugin-format@2.0.1(eslint@10.1.0(jiti@2.6.1)))(eslint@10.1.0(jiti@2.6.1))(magicast@0.5.2)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: - '@eslint/config-inspector': 1.4.2(eslint@10.0.2(jiti@2.6.1)) - '@nuxt/devtools-kit': 3.2.2(magicast@0.5.2)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) - '@nuxt/eslint-config': 1.15.2(@typescript-eslint/utils@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.29)(eslint-plugin-format@2.0.1(eslint@10.0.2(jiti@2.6.1)))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - '@nuxt/eslint-plugin': 1.15.2(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) + '@eslint/config-inspector': 1.4.2(eslint@10.1.0(jiti@2.6.1)) + '@nuxt/devtools-kit': 3.2.2(magicast@0.5.2)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + '@nuxt/eslint-config': 1.15.2(@typescript-eslint/utils@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.30)(eslint-plugin-format@2.0.1(eslint@10.1.0(jiti@2.6.1)))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + '@nuxt/eslint-plugin': 1.15.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) '@nuxt/kit': 4.3.1(magicast@0.5.2) chokidar: 5.0.0 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) eslint-flat-config-utils: 3.0.1 - eslint-typegen: 2.3.1(eslint@10.0.2(jiti@2.6.1)) + eslint-typegen: 2.3.1(eslint@10.1.0(jiti@2.6.1)) find-up: 8.0.0 get-port-please: 3.2.0 mlly: 1.8.0 @@ -10515,12 +10941,38 @@ snapshots: transitivePeerDependencies: - magicast - '@nuxt/nitro-server@4.3.1(db0@0.3.4)(ioredis@5.10.0)(magicast@0.5.2)(nuxt@4.3.1(@parcel/watcher@2.5.1)(@types/node@25.3.3)(@vue/compiler-sfc@3.5.29)(cac@6.7.14)(db0@0.3.4)(eslint@10.0.2(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(rollup@4.59.0)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.5(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2))(typescript@5.9.3)(xml2js@0.6.2)': + '@nuxt/kit@4.4.2(magicast@0.5.2)': dependencies: + c12: 3.3.3(magicast@0.5.2) + consola: 3.4.2 + defu: 6.1.4 + destr: 2.0.5 + errx: 0.1.0 + exsolve: 1.0.8 + ignore: 7.0.5 + jiti: 2.6.1 + klona: 2.0.6 + mlly: 1.8.2 + ohash: 2.0.11 + pathe: 2.0.3 + pkg-types: 2.3.0 + rc9: 3.0.0 + scule: 1.3.0 + semver: 7.7.4 + tinyglobby: 0.2.15 + ufo: 1.6.3 + unctx: 2.5.0 + untyped: 2.0.0 + transitivePeerDependencies: + - magicast + + '@nuxt/nitro-server@4.4.2(@babel/core@7.29.0)(@babel/plugin-proposal-decorators@7.28.0(@babel/core@7.29.0))(db0@0.3.4)(ioredis@5.10.0)(magicast@0.5.2)(nuxt@4.4.2(@babel/core@7.29.0)(@babel/plugin-proposal-decorators@7.28.0(@babel/core@7.29.0))(@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.29.0))(@parcel/watcher@2.5.1)(@types/node@25.5.0)(@vue/compiler-sfc@3.5.30)(cac@6.7.14)(db0@0.3.4)(esbuild@0.27.3)(eslint@10.1.0(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)))(rolldown@1.0.0-rc.11)(rollup-plugin-visualizer@6.0.5(rolldown@1.0.0-rc.11)(rollup@4.59.0))(rollup@4.59.0)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.6(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2))(rolldown@1.0.0-rc.11)(typescript@5.9.3)(xml2js@0.6.2)': + dependencies: + '@babel/plugin-syntax-typescript': 7.28.6(@babel/core@7.29.0) '@nuxt/devalue': 2.0.2 - '@nuxt/kit': 4.3.1(magicast@0.5.2) - '@unhead/vue': 2.1.10(vue@3.5.29(typescript@5.9.3)) - '@vue/shared': 3.5.29 + '@nuxt/kit': 4.4.2(magicast@0.5.2) + '@unhead/vue': 2.1.12(vue@3.5.30(typescript@5.9.3)) + '@vue/shared': 3.5.30 consola: 3.4.2 defu: 6.1.4 destr: 2.0.5 @@ -10528,23 +10980,26 @@ snapshots: errx: 0.1.0 escape-string-regexp: 5.0.0 exsolve: 1.0.8 - h3: 1.15.5 - impound: 1.0.0 + h3: 1.15.10 + impound: 1.1.5 klona: 2.0.6 mocked-exports: 0.1.1 - nitropack: 2.13.1(xml2js@0.6.2) - nuxt: 4.3.1(@parcel/watcher@2.5.1)(@types/node@25.3.3)(@vue/compiler-sfc@3.5.29)(cac@6.7.14)(db0@0.3.4)(eslint@10.0.2(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(rollup@4.59.0)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.5(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2) + nitropack: 2.13.1(rolldown@1.0.0-rc.11)(xml2js@0.6.2) + nuxt: 4.4.2(@babel/core@7.29.0)(@babel/plugin-proposal-decorators@7.28.0(@babel/core@7.29.0))(@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.29.0))(@parcel/watcher@2.5.1)(@types/node@25.5.0)(@vue/compiler-sfc@3.5.30)(cac@6.7.14)(db0@0.3.4)(esbuild@0.27.3)(eslint@10.1.0(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)))(rolldown@1.0.0-rc.11)(rollup-plugin-visualizer@6.0.5(rolldown@1.0.0-rc.11)(rollup@4.59.0))(rollup@4.59.0)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.6(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2) + nypm: 0.6.5 ohash: 2.0.11 pathe: 2.0.3 pkg-types: 2.3.0 - rou3: 0.7.12 - std-env: 3.10.0 + rou3: 0.8.1 + std-env: 4.0.0 ufo: 1.6.3 unctx: 2.5.0 unstorage: 1.17.4(db0@0.3.4)(ioredis@5.10.0) - vue: 3.5.29(typescript@5.9.3) + vue: 3.5.30(typescript@5.9.3) vue-bundle-renderer: 2.2.0 vue-devtools-stub: 0.1.0 + optionalDependencies: + '@babel/plugin-proposal-decorators': 7.28.0(@babel/core@7.29.0) transitivePeerDependencies: - '@azure/app-configuration' - '@azure/cosmos' @@ -10552,6 +11007,7 @@ snapshots: - '@azure/identity' - '@azure/keyvault-secrets' - '@azure/storage-blob' + - '@babel/core' - '@capacitor/preferences' - '@deno/kv' - '@electric-sql/pglite' @@ -10580,18 +11036,18 @@ snapshots: - uploadthing - xml2js - '@nuxt/schema@4.3.1': + '@nuxt/schema@4.4.2': dependencies: - '@vue/shared': 3.5.29 + '@vue/shared': 3.5.30 defu: 6.1.4 pathe: 2.0.3 pkg-types: 2.3.0 - std-env: 3.10.0 + std-env: 4.0.0 - '@nuxt/scripts@0.13.2(@unhead/vue@2.1.10(vue@3.5.29(typescript@5.9.3)))(db0@0.3.4)(ioredis@5.10.0)(magicast@0.5.2)(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3))': + '@nuxt/scripts@0.13.2(@unhead/vue@2.1.12(vue@3.5.29(typescript@5.9.3)))(db0@0.3.4)(ioredis@5.10.0)(magicast@0.5.2)(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3))': dependencies: '@nuxt/kit': 4.3.1(magicast@0.5.2) - '@unhead/vue': 2.1.10(vue@3.5.29(typescript@5.9.3)) + '@unhead/vue': 2.1.12(vue@3.5.29(typescript@5.9.3)) '@vueuse/core': 14.2.1(vue@3.5.29(typescript@5.9.3)) consola: 3.4.2 defu: 6.1.4 @@ -10604,7 +11060,7 @@ snapshots: sirv: 3.0.2 std-env: 3.10.0 ufo: 1.6.1 - unplugin: 2.3.11 + unplugin: 3.0.0 unstorage: 1.17.3(db0@0.3.4)(ioredis@5.10.0) valibot: 1.2.0(typescript@5.9.3) transitivePeerDependencies: @@ -10631,19 +11087,19 @@ snapshots: - uploadthing - vue - '@nuxt/telemetry@2.7.0(@nuxt/kit@4.3.1(magicast@0.5.2))': + '@nuxt/telemetry@2.7.0(@nuxt/kit@4.4.2(magicast@0.5.2))': dependencies: - '@nuxt/kit': 4.3.1(magicast@0.5.2) + '@nuxt/kit': 4.4.2(magicast@0.5.2) citty: 0.2.1 consola: 3.4.2 ofetch: 2.0.0-alpha.3 rc9: 3.0.0 std-env: 3.10.0 - '@nuxt/test-utils@4.0.0(@vue/test-utils@2.4.6)(jsdom@28.1.0(@noble/hashes@1.8.0))(magicast@0.5.2)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.0.18(@types/node@25.3.3)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@1.8.0))(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': + '@nuxt/test-utils@4.0.0(@vue/test-utils@2.4.6)(jsdom@29.0.1(@noble/hashes@1.8.0))(magicast@0.5.2)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.1(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(jsdom@29.0.1(@noble/hashes@1.8.0))(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@clack/prompts': 1.0.0 - '@nuxt/devtools-kit': 2.7.0(magicast@0.5.2)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + '@nuxt/devtools-kit': 2.7.0(magicast@0.5.2)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) '@nuxt/kit': 3.21.1(magicast@0.5.2) c12: 3.3.3(magicast@0.5.2) consola: 3.4.2 @@ -10668,58 +11124,63 @@ snapshots: std-env: 3.10.0 tinyexec: 1.0.2 ufo: 1.6.3 - unplugin: 2.3.11 - vitest-environment-nuxt: 1.0.1(@vue/test-utils@2.4.6)(jsdom@28.1.0(@noble/hashes@1.8.0))(magicast@0.5.2)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.0.18(@types/node@25.3.3)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@1.8.0))(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + unplugin: 3.0.0 + vitest-environment-nuxt: 1.0.1(@vue/test-utils@2.4.6)(jsdom@29.0.1(@noble/hashes@1.8.0))(magicast@0.5.2)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.1(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(jsdom@29.0.1(@noble/hashes@1.8.0))(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) vue: 3.5.29(typescript@5.9.3) optionalDependencies: '@vue/test-utils': 2.4.6 - jsdom: 28.1.0(@noble/hashes@1.8.0) - vitest: 4.0.18(@types/node@25.3.3)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@1.8.0))(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + jsdom: 29.0.1(@noble/hashes@1.8.0) + vitest: 4.1.1(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(jsdom@29.0.1(@noble/hashes@1.8.0))(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) transitivePeerDependencies: - crossws - magicast - typescript - vite - '@nuxt/vite-builder@4.3.1(@types/node@25.3.3)(eslint@10.0.2(jiti@2.6.1))(magicast@0.5.2)(nuxt@4.3.1(@parcel/watcher@2.5.1)(@types/node@25.3.3)(@vue/compiler-sfc@3.5.29)(cac@6.7.14)(db0@0.3.4)(eslint@10.0.2(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(rollup@4.59.0)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.5(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2))(optionator@0.9.4)(rollup@4.59.0)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3))(vue@3.5.29(typescript@5.9.3))(yaml@2.8.2)': + '@nuxt/vite-builder@4.4.2(444a4541794fd239685cf860fa63699b)': dependencies: - '@nuxt/kit': 4.3.1(magicast@0.5.2) + '@nuxt/kit': 4.4.2(magicast@0.5.2) '@rollup/plugin-replace': 6.0.3(rollup@4.59.0) - '@vitejs/plugin-vue': 6.0.4(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)) - '@vitejs/plugin-vue-jsx': 5.1.4(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)) - autoprefixer: 10.4.27(postcss@8.5.6) + '@vitejs/plugin-vue': 6.0.4(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.30(typescript@5.9.3)) + '@vitejs/plugin-vue-jsx': 5.1.4(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.30(typescript@5.9.3)) + autoprefixer: 10.4.27(postcss@8.5.8) consola: 3.4.2 - cssnano: 7.1.2(postcss@8.5.6) + cssnano: 7.1.3(postcss@8.5.8) defu: 6.1.4 - esbuild: 0.27.3 escape-string-regexp: 5.0.0 exsolve: 1.0.8 get-port-please: 3.2.0 jiti: 2.6.1 knitwork: 1.3.0 magic-string: 0.30.21 - mlly: 1.8.0 + mlly: 1.8.2 mocked-exports: 0.1.1 - nuxt: 4.3.1(@parcel/watcher@2.5.1)(@types/node@25.3.3)(@vue/compiler-sfc@3.5.29)(cac@6.7.14)(db0@0.3.4)(eslint@10.0.2(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(rollup@4.59.0)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.5(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2) + nuxt: 4.4.2(@babel/core@7.29.0)(@babel/plugin-proposal-decorators@7.28.0(@babel/core@7.29.0))(@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.29.0))(@parcel/watcher@2.5.1)(@types/node@25.5.0)(@vue/compiler-sfc@3.5.30)(cac@6.7.14)(db0@0.3.4)(esbuild@0.27.3)(eslint@10.1.0(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)))(rolldown@1.0.0-rc.11)(rollup-plugin-visualizer@6.0.5(rolldown@1.0.0-rc.11)(rollup@4.59.0))(rollup@4.59.0)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.6(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2) + nypm: 0.6.5 pathe: 2.0.3 pkg-types: 2.3.0 - postcss: 8.5.6 - rollup-plugin-visualizer: 6.0.5(rollup@4.59.0) - seroval: 1.5.0 - std-env: 3.10.0 + postcss: 8.5.8 + seroval: 1.5.1 + std-env: 4.0.0 ufo: 1.6.3 unenv: 2.0.0-rc.24 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) - vite-node: 5.3.0(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) - vite-plugin-checker: 0.12.0(eslint@10.0.2(jiti@2.6.1))(optionator@0.9.4)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.5(typescript@5.9.3)) - vue: 3.5.29(typescript@5.9.3) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite-node: 5.3.0(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite-plugin-checker: 0.12.0(eslint@10.1.0(jiti@2.6.1))(optionator@0.9.4)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.6(typescript@5.9.3)) + vue: 3.5.30(typescript@5.9.3) vue-bundle-renderer: 2.2.0 + optionalDependencies: + '@babel/plugin-proposal-decorators': 7.28.0(@babel/core@7.29.0) + '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.29.0) + rolldown: 1.0.0-rc.11 + rollup-plugin-visualizer: 6.0.5(rolldown@1.0.0-rc.11)(rollup@4.59.0) transitivePeerDependencies: - '@biomejs/biome' - '@types/node' + - '@vitejs/devtools' + - esbuild - eslint - less - - lightningcss - magicast - meow - optionator @@ -10749,15 +11210,15 @@ snapshots: transitivePeerDependencies: - magicast - '@nuxtjs/ionic@1.0.2(@stencil/core@4.38.3)(magicast@0.5.2)(vue-router@4.6.4(vue@3.5.29(typescript@5.9.3)))(vue@3.5.29(typescript@5.9.3))': + '@nuxtjs/ionic@1.0.2(@stencil/core@4.38.3)(magicast@0.5.2)(vue@3.5.29(typescript@5.9.3))': dependencies: '@capacitor/cli': 7.4.3 '@capacitor/core': 7.4.3 '@ionic/cli': 7.2.1 - '@ionic/vue': 8.7.10(@stencil/core@4.38.3)(vue-router@4.6.4(vue@3.5.29(typescript@5.9.3)))(vue@3.5.29(typescript@5.9.3)) - '@ionic/vue-router': 8.7.10(@stencil/core@4.38.3)(vue-router@4.6.4(vue@3.5.29(typescript@5.9.3)))(vue@3.5.29(typescript@5.9.3)) + '@ionic/vue': 8.7.10(@stencil/core@4.38.3)(vue@3.5.29(typescript@5.9.3)) + '@ionic/vue-router': 8.7.10(@stencil/core@4.38.3)(vue@3.5.29(typescript@5.9.3)) '@nuxt/kit': 4.2.1(magicast@0.5.2) - '@unhead/vue': 2.1.10(vue@3.5.29(typescript@5.9.3)) + '@unhead/vue': 2.1.12(vue@3.5.29(typescript@5.9.3)) ionicons: 8.0.13 jiti: 2.6.1 pathe: 2.0.3 @@ -10776,167 +11237,162 @@ snapshots: '@ota-meshi/ast-token-store@0.3.0': {} - '@oxc-minify/binding-android-arm-eabi@0.112.0': + '@oxc-minify/binding-android-arm-eabi@0.117.0': optional: true - '@oxc-minify/binding-android-arm64@0.112.0': + '@oxc-minify/binding-android-arm64@0.117.0': optional: true - '@oxc-minify/binding-darwin-arm64@0.112.0': + '@oxc-minify/binding-darwin-arm64@0.117.0': optional: true - '@oxc-minify/binding-darwin-x64@0.112.0': + '@oxc-minify/binding-darwin-x64@0.117.0': optional: true - '@oxc-minify/binding-freebsd-x64@0.112.0': + '@oxc-minify/binding-freebsd-x64@0.117.0': optional: true - '@oxc-minify/binding-linux-arm-gnueabihf@0.112.0': + '@oxc-minify/binding-linux-arm-gnueabihf@0.117.0': optional: true - '@oxc-minify/binding-linux-arm-musleabihf@0.112.0': + '@oxc-minify/binding-linux-arm-musleabihf@0.117.0': optional: true - '@oxc-minify/binding-linux-arm64-gnu@0.112.0': + '@oxc-minify/binding-linux-arm64-gnu@0.117.0': optional: true - '@oxc-minify/binding-linux-arm64-musl@0.112.0': + '@oxc-minify/binding-linux-arm64-musl@0.117.0': optional: true - '@oxc-minify/binding-linux-ppc64-gnu@0.112.0': + '@oxc-minify/binding-linux-ppc64-gnu@0.117.0': optional: true - '@oxc-minify/binding-linux-riscv64-gnu@0.112.0': + '@oxc-minify/binding-linux-riscv64-gnu@0.117.0': optional: true - '@oxc-minify/binding-linux-riscv64-musl@0.112.0': + '@oxc-minify/binding-linux-riscv64-musl@0.117.0': optional: true - '@oxc-minify/binding-linux-s390x-gnu@0.112.0': + '@oxc-minify/binding-linux-s390x-gnu@0.117.0': optional: true - '@oxc-minify/binding-linux-x64-gnu@0.112.0': + '@oxc-minify/binding-linux-x64-gnu@0.117.0': optional: true - '@oxc-minify/binding-linux-x64-musl@0.112.0': + '@oxc-minify/binding-linux-x64-musl@0.117.0': optional: true - '@oxc-minify/binding-openharmony-arm64@0.112.0': + '@oxc-minify/binding-openharmony-arm64@0.117.0': optional: true - '@oxc-minify/binding-wasm32-wasi@0.112.0': + '@oxc-minify/binding-wasm32-wasi@0.117.0': dependencies: '@napi-rs/wasm-runtime': 1.1.1 optional: true - '@oxc-minify/binding-win32-arm64-msvc@0.112.0': + '@oxc-minify/binding-win32-arm64-msvc@0.117.0': optional: true - '@oxc-minify/binding-win32-ia32-msvc@0.112.0': + '@oxc-minify/binding-win32-ia32-msvc@0.117.0': optional: true - '@oxc-minify/binding-win32-x64-msvc@0.112.0': - optional: true - - '@oxc-parser/binding-android-arm-eabi@0.112.0': + '@oxc-minify/binding-win32-x64-msvc@0.117.0': optional: true '@oxc-parser/binding-android-arm-eabi@0.115.0': optional: true - '@oxc-parser/binding-android-arm64@0.112.0': + '@oxc-parser/binding-android-arm-eabi@0.117.0': optional: true '@oxc-parser/binding-android-arm64@0.115.0': optional: true - '@oxc-parser/binding-darwin-arm64@0.112.0': + '@oxc-parser/binding-android-arm64@0.117.0': optional: true '@oxc-parser/binding-darwin-arm64@0.115.0': optional: true - '@oxc-parser/binding-darwin-x64@0.112.0': + '@oxc-parser/binding-darwin-arm64@0.117.0': optional: true '@oxc-parser/binding-darwin-x64@0.115.0': optional: true - '@oxc-parser/binding-freebsd-x64@0.112.0': + '@oxc-parser/binding-darwin-x64@0.117.0': optional: true '@oxc-parser/binding-freebsd-x64@0.115.0': optional: true - '@oxc-parser/binding-linux-arm-gnueabihf@0.112.0': + '@oxc-parser/binding-freebsd-x64@0.117.0': optional: true '@oxc-parser/binding-linux-arm-gnueabihf@0.115.0': optional: true - '@oxc-parser/binding-linux-arm-musleabihf@0.112.0': + '@oxc-parser/binding-linux-arm-gnueabihf@0.117.0': optional: true '@oxc-parser/binding-linux-arm-musleabihf@0.115.0': optional: true - '@oxc-parser/binding-linux-arm64-gnu@0.112.0': + '@oxc-parser/binding-linux-arm-musleabihf@0.117.0': optional: true '@oxc-parser/binding-linux-arm64-gnu@0.115.0': optional: true - '@oxc-parser/binding-linux-arm64-musl@0.112.0': + '@oxc-parser/binding-linux-arm64-gnu@0.117.0': optional: true '@oxc-parser/binding-linux-arm64-musl@0.115.0': optional: true - '@oxc-parser/binding-linux-ppc64-gnu@0.112.0': + '@oxc-parser/binding-linux-arm64-musl@0.117.0': optional: true '@oxc-parser/binding-linux-ppc64-gnu@0.115.0': optional: true - '@oxc-parser/binding-linux-riscv64-gnu@0.112.0': + '@oxc-parser/binding-linux-ppc64-gnu@0.117.0': optional: true '@oxc-parser/binding-linux-riscv64-gnu@0.115.0': optional: true - '@oxc-parser/binding-linux-riscv64-musl@0.112.0': + '@oxc-parser/binding-linux-riscv64-gnu@0.117.0': optional: true '@oxc-parser/binding-linux-riscv64-musl@0.115.0': optional: true - '@oxc-parser/binding-linux-s390x-gnu@0.112.0': + '@oxc-parser/binding-linux-riscv64-musl@0.117.0': optional: true '@oxc-parser/binding-linux-s390x-gnu@0.115.0': optional: true - '@oxc-parser/binding-linux-x64-gnu@0.112.0': + '@oxc-parser/binding-linux-s390x-gnu@0.117.0': optional: true '@oxc-parser/binding-linux-x64-gnu@0.115.0': optional: true - '@oxc-parser/binding-linux-x64-musl@0.112.0': + '@oxc-parser/binding-linux-x64-gnu@0.117.0': optional: true '@oxc-parser/binding-linux-x64-musl@0.115.0': optional: true - '@oxc-parser/binding-openharmony-arm64@0.112.0': + '@oxc-parser/binding-linux-x64-musl@0.117.0': optional: true '@oxc-parser/binding-openharmony-arm64@0.115.0': optional: true - '@oxc-parser/binding-wasm32-wasi@0.112.0': - dependencies: - '@napi-rs/wasm-runtime': 1.1.1 + '@oxc-parser/binding-openharmony-arm64@0.117.0': optional: true '@oxc-parser/binding-wasm32-wasi@0.115.0': @@ -10944,88 +11400,95 @@ snapshots: '@napi-rs/wasm-runtime': 1.1.1 optional: true - '@oxc-parser/binding-win32-arm64-msvc@0.112.0': + '@oxc-parser/binding-wasm32-wasi@0.117.0': + dependencies: + '@napi-rs/wasm-runtime': 1.1.1 optional: true '@oxc-parser/binding-win32-arm64-msvc@0.115.0': optional: true - '@oxc-parser/binding-win32-ia32-msvc@0.112.0': + '@oxc-parser/binding-win32-arm64-msvc@0.117.0': optional: true '@oxc-parser/binding-win32-ia32-msvc@0.115.0': optional: true - '@oxc-parser/binding-win32-x64-msvc@0.112.0': + '@oxc-parser/binding-win32-ia32-msvc@0.117.0': optional: true '@oxc-parser/binding-win32-x64-msvc@0.115.0': optional: true - '@oxc-project/types@0.112.0': {} + '@oxc-parser/binding-win32-x64-msvc@0.117.0': + optional: true '@oxc-project/types@0.115.0': {} - '@oxc-transform/binding-android-arm-eabi@0.112.0': + '@oxc-project/types@0.117.0': {} + + '@oxc-project/types@0.122.0': {} + + '@oxc-transform/binding-android-arm-eabi@0.117.0': optional: true - '@oxc-transform/binding-android-arm64@0.112.0': + '@oxc-transform/binding-android-arm64@0.117.0': optional: true - '@oxc-transform/binding-darwin-arm64@0.112.0': + '@oxc-transform/binding-darwin-arm64@0.117.0': optional: true - '@oxc-transform/binding-darwin-x64@0.112.0': + '@oxc-transform/binding-darwin-x64@0.117.0': optional: true - '@oxc-transform/binding-freebsd-x64@0.112.0': + '@oxc-transform/binding-freebsd-x64@0.117.0': optional: true - '@oxc-transform/binding-linux-arm-gnueabihf@0.112.0': + '@oxc-transform/binding-linux-arm-gnueabihf@0.117.0': optional: true - '@oxc-transform/binding-linux-arm-musleabihf@0.112.0': + '@oxc-transform/binding-linux-arm-musleabihf@0.117.0': optional: true - '@oxc-transform/binding-linux-arm64-gnu@0.112.0': + '@oxc-transform/binding-linux-arm64-gnu@0.117.0': optional: true - '@oxc-transform/binding-linux-arm64-musl@0.112.0': + '@oxc-transform/binding-linux-arm64-musl@0.117.0': optional: true - '@oxc-transform/binding-linux-ppc64-gnu@0.112.0': + '@oxc-transform/binding-linux-ppc64-gnu@0.117.0': optional: true - '@oxc-transform/binding-linux-riscv64-gnu@0.112.0': + '@oxc-transform/binding-linux-riscv64-gnu@0.117.0': optional: true - '@oxc-transform/binding-linux-riscv64-musl@0.112.0': + '@oxc-transform/binding-linux-riscv64-musl@0.117.0': optional: true - '@oxc-transform/binding-linux-s390x-gnu@0.112.0': + '@oxc-transform/binding-linux-s390x-gnu@0.117.0': optional: true - '@oxc-transform/binding-linux-x64-gnu@0.112.0': + '@oxc-transform/binding-linux-x64-gnu@0.117.0': optional: true - '@oxc-transform/binding-linux-x64-musl@0.112.0': + '@oxc-transform/binding-linux-x64-musl@0.117.0': optional: true - '@oxc-transform/binding-openharmony-arm64@0.112.0': + '@oxc-transform/binding-openharmony-arm64@0.117.0': optional: true - '@oxc-transform/binding-wasm32-wasi@0.112.0': + '@oxc-transform/binding-wasm32-wasi@0.117.0': dependencies: '@napi-rs/wasm-runtime': 1.1.1 optional: true - '@oxc-transform/binding-win32-arm64-msvc@0.112.0': + '@oxc-transform/binding-win32-arm64-msvc@0.117.0': optional: true - '@oxc-transform/binding-win32-ia32-msvc@0.112.0': + '@oxc-transform/binding-win32-ia32-msvc@0.117.0': optional: true - '@oxc-transform/binding-win32-x64-msvc@0.112.0': + '@oxc-transform/binding-win32-x64-msvc@0.117.0': optional: true '@oxfmt/binding-android-arm-eabi@0.35.0': @@ -11176,18 +11639,100 @@ snapshots: dependencies: kleur: 4.1.5 + '@poppinss/colors@4.1.6': + dependencies: + kleur: 4.1.5 + '@poppinss/dumper@0.6.5': dependencies: '@poppinss/colors': 4.1.5 '@sindresorhus/is': 7.1.1 supports-color: 10.2.2 + '@poppinss/dumper@0.7.0': + dependencies: + '@poppinss/colors': 4.1.6 + '@sindresorhus/is': 7.1.1 + supports-color: 10.2.2 + '@poppinss/exception@1.2.2': {} + '@protobufjs/aspromise@1.1.2': {} + + '@protobufjs/base64@1.1.2': {} + + '@protobufjs/codegen@2.0.4': {} + + '@protobufjs/eventemitter@1.1.0': {} + + '@protobufjs/fetch@1.1.0': + dependencies: + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/inquire': 1.1.0 + + '@protobufjs/float@1.0.2': {} + + '@protobufjs/inquire@1.1.0': {} + + '@protobufjs/path@1.1.2': {} + + '@protobufjs/pool@1.1.0': {} + + '@protobufjs/utf8@1.1.0': {} + '@quansync/fs@1.0.0': dependencies: quansync: 1.0.0 + '@rolldown/binding-android-arm64@1.0.0-rc.11': + optional: true + + '@rolldown/binding-darwin-arm64@1.0.0-rc.11': + optional: true + + '@rolldown/binding-darwin-x64@1.0.0-rc.11': + optional: true + + '@rolldown/binding-freebsd-x64@1.0.0-rc.11': + optional: true + + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.11': + optional: true + + '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.11': + optional: true + + '@rolldown/binding-linux-arm64-musl@1.0.0-rc.11': + optional: true + + '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.11': + optional: true + + '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.11': + optional: true + + '@rolldown/binding-linux-x64-gnu@1.0.0-rc.11': + optional: true + + '@rolldown/binding-linux-x64-musl@1.0.0-rc.11': + optional: true + + '@rolldown/binding-openharmony-arm64@1.0.0-rc.11': + optional: true + + '@rolldown/binding-wasm32-wasi@1.0.0-rc.11': + dependencies: + '@napi-rs/wasm-runtime': 1.1.1 + optional: true + + '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.11': + optional: true + + '@rolldown/binding-win32-x64-msvc@1.0.0-rc.11': + optional: true + + '@rolldown/pluginutils@1.0.0-rc.11': {} + '@rolldown/pluginutils@1.0.0-rc.2': {} '@rolldown/pluginutils@1.0.0-rc.6': {} @@ -11303,168 +11848,102 @@ snapshots: optionalDependencies: rollup: 4.59.0 - '@rollup/rollup-android-arm-eabi@4.53.3': - optional: true - '@rollup/rollup-android-arm-eabi@4.59.0': optional: true - '@rollup/rollup-android-arm64@4.53.3': - optional: true - '@rollup/rollup-android-arm64@4.59.0': optional: true '@rollup/rollup-darwin-arm64@4.34.9': optional: true - '@rollup/rollup-darwin-arm64@4.53.3': - optional: true - '@rollup/rollup-darwin-arm64@4.59.0': optional: true '@rollup/rollup-darwin-x64@4.34.9': optional: true - '@rollup/rollup-darwin-x64@4.53.3': - optional: true - '@rollup/rollup-darwin-x64@4.59.0': optional: true - '@rollup/rollup-freebsd-arm64@4.53.3': - optional: true - '@rollup/rollup-freebsd-arm64@4.59.0': optional: true - '@rollup/rollup-freebsd-x64@4.53.3': - optional: true - '@rollup/rollup-freebsd-x64@4.59.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.53.3': - optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.59.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.53.3': - optional: true - '@rollup/rollup-linux-arm-musleabihf@4.59.0': optional: true '@rollup/rollup-linux-arm64-gnu@4.34.9': optional: true - '@rollup/rollup-linux-arm64-gnu@4.53.3': - optional: true - '@rollup/rollup-linux-arm64-gnu@4.59.0': optional: true '@rollup/rollup-linux-arm64-musl@4.34.9': optional: true - '@rollup/rollup-linux-arm64-musl@4.53.3': - optional: true - '@rollup/rollup-linux-arm64-musl@4.59.0': optional: true - '@rollup/rollup-linux-loong64-gnu@4.53.3': - optional: true - '@rollup/rollup-linux-loong64-gnu@4.59.0': optional: true '@rollup/rollup-linux-loong64-musl@4.59.0': optional: true - '@rollup/rollup-linux-ppc64-gnu@4.53.3': - optional: true - '@rollup/rollup-linux-ppc64-gnu@4.59.0': optional: true '@rollup/rollup-linux-ppc64-musl@4.59.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.53.3': - optional: true - '@rollup/rollup-linux-riscv64-gnu@4.59.0': optional: true - '@rollup/rollup-linux-riscv64-musl@4.53.3': - optional: true - '@rollup/rollup-linux-riscv64-musl@4.59.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.53.3': - optional: true - '@rollup/rollup-linux-s390x-gnu@4.59.0': optional: true '@rollup/rollup-linux-x64-gnu@4.34.9': optional: true - '@rollup/rollup-linux-x64-gnu@4.53.3': - optional: true - '@rollup/rollup-linux-x64-gnu@4.59.0': optional: true '@rollup/rollup-linux-x64-musl@4.34.9': optional: true - '@rollup/rollup-linux-x64-musl@4.53.3': - optional: true - '@rollup/rollup-linux-x64-musl@4.59.0': optional: true '@rollup/rollup-openbsd-x64@4.59.0': optional: true - '@rollup/rollup-openharmony-arm64@4.53.3': - optional: true - '@rollup/rollup-openharmony-arm64@4.59.0': optional: true '@rollup/rollup-win32-arm64-msvc@4.34.9': optional: true - '@rollup/rollup-win32-arm64-msvc@4.53.3': - optional: true - '@rollup/rollup-win32-arm64-msvc@4.59.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.53.3': - optional: true - '@rollup/rollup-win32-ia32-msvc@4.59.0': optional: true - '@rollup/rollup-win32-x64-gnu@4.53.3': - optional: true - '@rollup/rollup-win32-x64-gnu@4.59.0': optional: true '@rollup/rollup-win32-x64-msvc@4.34.9': optional: true - '@rollup/rollup-win32-x64-msvc@4.53.3': - optional: true - '@rollup/rollup-win32-x64-msvc@4.59.0': optional: true @@ -11543,7 +12022,9 @@ snapshots: '@speed-highlight/core@1.2.12': {} - '@standard-schema/spec@1.0.0': {} + '@speed-highlight/core@1.2.15': {} + + '@standard-schema/spec@1.1.0': {} '@stencil/core@4.38.0': optionalDependencies: @@ -11567,18 +12048,27 @@ snapshots: '@rollup/rollup-win32-arm64-msvc': 4.34.9 '@rollup/rollup-win32-x64-msvc': 4.34.9 - '@stencil/vue-output-target@0.10.7(@stencil/core@4.38.3)(vue-router@4.6.4(vue@3.5.29(typescript@5.9.3)))(vue@3.5.29(typescript@5.9.3))': + '@stencil/vue-output-target@0.10.7(@stencil/core@4.38.3)(vue@3.5.29(typescript@5.9.3))': dependencies: vue: 3.5.29(typescript@5.9.3) optionalDependencies: '@stencil/core': 4.38.3 - vue-router: 4.6.4(vue@3.5.29(typescript@5.9.3)) - '@stylistic/eslint-plugin@5.9.0(eslint@10.0.2(jiti@2.6.1))': + '@stylistic/eslint-plugin@5.10.0(eslint@10.1.0(jiti@2.6.1))': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.2(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0(jiti@2.6.1)) '@typescript-eslint/types': 8.56.1 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) + eslint-visitor-keys: 4.2.1 + espree: 10.4.0 + estraverse: 5.3.0 + picomatch: 4.0.3 + + '@stylistic/eslint-plugin@5.9.0(eslint@10.1.0(jiti@2.6.1))': + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0(jiti@2.6.1)) + '@typescript-eslint/types': 8.56.1 + eslint: 10.1.0(jiti@2.6.1) eslint-visitor-keys: 4.2.1 espree: 10.4.0 estraverse: 5.3.0 @@ -11624,7 +12114,7 @@ snapshots: '@types/fs-extra@8.1.5': dependencies: - '@types/node': 25.3.3 + '@types/node': 25.5.0 '@types/hast@3.0.4': dependencies: @@ -11647,10 +12137,14 @@ snapshots: '@types/ms@2.1.0': {} - '@types/node@25.3.3': + '@types/node@25.5.0': dependencies: undici-types: 7.18.2 + '@types/papaparse@5.5.2': + dependencies: + '@types/node': 25.5.0 + '@types/resolve@1.20.2': {} '@types/slice-ansi@4.0.0': {} @@ -11661,15 +12155,15 @@ snapshots: '@types/web-bluetooth@0.0.21': {} - '@typescript-eslint/eslint-plugin@8.56.1(@typescript-eslint/parser@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.56.1(@typescript-eslint/parser@8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/scope-manager': 8.56.1 - '@typescript-eslint/type-utils': 8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/utils': 8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/type-utils': 8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/visitor-keys': 8.56.1 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) ignore: 7.0.5 natural-compare: 1.4.0 ts-api-utils: 2.4.0(typescript@5.9.3) @@ -11677,14 +12171,42 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.57.2(@typescript-eslint/parser@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/regexpp': 4.12.2 + '@typescript-eslint/parser': 8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.57.2 + '@typescript-eslint/type-utils': 8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.57.2 + eslint: 10.1.0(jiti@2.6.1) + ignore: 7.0.5 + natural-compare: 1.4.0 + ts-api-utils: 2.4.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@typescript-eslint/scope-manager': 8.56.1 '@typescript-eslint/types': 8.56.1 '@typescript-eslint/typescript-estree': 8.56.1(typescript@5.9.3) '@typescript-eslint/visitor-keys': 8.56.1 debug: 4.4.3 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.57.2 + '@typescript-eslint/types': 8.57.2 + '@typescript-eslint/typescript-estree': 8.57.2(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.57.2 + debug: 4.4.3 + eslint: 10.1.0(jiti@2.6.1) typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -11698,22 +12220,52 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/project-service@8.57.2(typescript@5.9.3)': + dependencies: + '@typescript-eslint/tsconfig-utils': 8.57.2(typescript@5.9.3) + '@typescript-eslint/types': 8.57.2 + debug: 4.4.3 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/scope-manager@8.56.1': dependencies: '@typescript-eslint/types': 8.56.1 '@typescript-eslint/visitor-keys': 8.56.1 + '@typescript-eslint/scope-manager@8.57.2': + dependencies: + '@typescript-eslint/types': 8.57.2 + '@typescript-eslint/visitor-keys': 8.57.2 + '@typescript-eslint/tsconfig-utils@8.56.1(typescript@5.9.3)': dependencies: typescript: 5.9.3 - '@typescript-eslint/type-utils@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/tsconfig-utils@8.57.2(typescript@5.9.3)': + dependencies: + typescript: 5.9.3 + + '@typescript-eslint/type-utils@8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@typescript-eslint/types': 8.56.1 '@typescript-eslint/typescript-estree': 8.56.1(typescript@5.9.3) - '@typescript-eslint/utils': 8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) debug: 4.4.3 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) + ts-api-utils: 2.4.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/type-utils@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/types': 8.57.2 + '@typescript-eslint/typescript-estree': 8.57.2(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + debug: 4.4.3 + eslint: 10.1.0(jiti@2.6.1) ts-api-utils: 2.4.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: @@ -11723,6 +12275,8 @@ snapshots: '@typescript-eslint/types@8.56.1': {} + '@typescript-eslint/types@8.57.2': {} + '@typescript-eslint/typescript-estree@8.56.1(typescript@5.9.3)': dependencies: '@typescript-eslint/project-service': 8.56.1(typescript@5.9.3) @@ -11738,13 +12292,39 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/typescript-estree@8.57.2(typescript@5.9.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.2(jiti@2.6.1)) + '@typescript-eslint/project-service': 8.57.2(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.57.2(typescript@5.9.3) + '@typescript-eslint/types': 8.57.2 + '@typescript-eslint/visitor-keys': 8.57.2 + debug: 4.4.3 + minimatch: 10.2.4 + semver: 7.7.4 + tinyglobby: 0.2.15 + ts-api-utils: 2.4.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0(jiti@2.6.1)) '@typescript-eslint/scope-manager': 8.56.1 '@typescript-eslint/types': 8.56.1 '@typescript-eslint/typescript-estree': 8.56.1(typescript@5.9.3) - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0(jiti@2.6.1)) + '@typescript-eslint/scope-manager': 8.57.2 + '@typescript-eslint/types': 8.57.2 + '@typescript-eslint/typescript-estree': 8.57.2(typescript@5.9.3) + eslint: 10.1.0(jiti@2.6.1) typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -11754,6 +12334,11 @@ snapshots: '@typescript-eslint/types': 8.56.1 eslint-visitor-keys: 5.0.1 + '@typescript-eslint/visitor-keys@8.57.2': + dependencies: + '@typescript-eslint/types': 8.57.2 + eslint-visitor-keys: 5.0.1 + '@typescript/vfs@1.6.2(typescript@5.9.3)': dependencies: debug: 4.4.3 @@ -11763,20 +12348,26 @@ snapshots: '@ungap/structured-clone@1.3.0': {} - '@unhead/vue@2.1.10(vue@3.5.29(typescript@5.9.3))': + '@unhead/vue@2.1.12(vue@3.5.29(typescript@5.9.3))': dependencies: hookable: 6.0.1 - unhead: 2.1.10 + unhead: 2.1.12 vue: 3.5.29(typescript@5.9.3) - '@unocss/cli@66.6.4': + '@unhead/vue@2.1.12(vue@3.5.30(typescript@5.9.3))': + dependencies: + hookable: 6.0.1 + unhead: 2.1.12 + vue: 3.5.30(typescript@5.9.3) + + '@unocss/cli@66.6.7': dependencies: '@jridgewell/remapping': 2.3.5 - '@unocss/config': 66.6.4 - '@unocss/core': 66.6.4 - '@unocss/preset-wind3': 66.6.4 - '@unocss/preset-wind4': 66.6.4 - '@unocss/transformer-directives': 66.6.4 + '@unocss/config': 66.6.7 + '@unocss/core': 66.6.7 + '@unocss/preset-wind3': 66.6.7 + '@unocss/preset-wind4': 66.6.7 + '@unocss/transformer-directives': 66.6.7 cac: 6.7.14 chokidar: 5.0.0 colorette: 2.0.20 @@ -11787,29 +12378,29 @@ snapshots: tinyglobby: 0.2.15 unplugin-utils: 0.3.1 - '@unocss/config@66.6.4': + '@unocss/config@66.6.7': dependencies: - '@unocss/core': 66.6.4 + '@unocss/core': 66.6.7 colorette: 2.0.20 consola: 3.4.2 unconfig: 7.5.0 - '@unocss/core@66.6.4': {} + '@unocss/core@66.6.7': {} - '@unocss/eslint-config@66.6.4(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)': + '@unocss/eslint-config@66.6.7(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@unocss/eslint-plugin': 66.6.4(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) + '@unocss/eslint-plugin': 66.6.7(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) transitivePeerDependencies: - eslint - supports-color - typescript - '@unocss/eslint-plugin@66.6.4(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)': + '@unocss/eslint-plugin@66.6.7(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@typescript-eslint/utils': 8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - '@unocss/config': 66.6.4 - '@unocss/core': 66.6.4 - '@unocss/rule-utils': 66.6.4 + '@typescript-eslint/utils': 8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + '@unocss/config': 66.6.7 + '@unocss/core': 66.6.7 + '@unocss/rule-utils': 66.6.7 magic-string: 0.30.21 synckit: 0.11.12 transitivePeerDependencies: @@ -11817,34 +12408,34 @@ snapshots: - supports-color - typescript - '@unocss/extractor-arbitrary-variants@66.6.4': + '@unocss/extractor-arbitrary-variants@66.6.7': dependencies: - '@unocss/core': 66.6.4 + '@unocss/core': 66.6.7 - '@unocss/inspector@66.6.4': + '@unocss/inspector@66.6.7': dependencies: - '@unocss/core': 66.6.4 - '@unocss/rule-utils': 66.6.4 + '@unocss/core': 66.6.7 + '@unocss/rule-utils': 66.6.7 colorette: 2.0.20 gzip-size: 6.0.0 sirv: 3.0.2 - '@unocss/nuxt@66.6.4(magicast@0.5.2)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': + '@unocss/nuxt@66.6.7(magicast@0.5.2)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@nuxt/kit': 4.3.1(magicast@0.5.2) - '@unocss/config': 66.6.4 - '@unocss/core': 66.6.4 - '@unocss/preset-attributify': 66.6.4 - '@unocss/preset-icons': 66.6.4 - '@unocss/preset-tagify': 66.6.4 - '@unocss/preset-typography': 66.6.4 - '@unocss/preset-web-fonts': 66.6.4 - '@unocss/preset-wind3': 66.6.4 - '@unocss/preset-wind4': 66.6.4 - '@unocss/reset': 66.6.4 - '@unocss/vite': 66.6.4(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) - '@unocss/webpack': 66.6.4 - unocss: 66.6.4(@unocss/webpack@66.6.4)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + '@unocss/config': 66.6.7 + '@unocss/core': 66.6.7 + '@unocss/preset-attributify': 66.6.7 + '@unocss/preset-icons': 66.6.7 + '@unocss/preset-tagify': 66.6.7 + '@unocss/preset-typography': 66.6.7 + '@unocss/preset-web-fonts': 66.6.7 + '@unocss/preset-wind3': 66.6.7 + '@unocss/preset-wind4': 66.6.7 + '@unocss/reset': 66.6.7 + '@unocss/vite': 66.6.7(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + '@unocss/webpack': 66.6.7 + unocss: 66.6.7(@unocss/webpack@66.6.7)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) transitivePeerDependencies: - '@unocss/astro' - '@unocss/postcss' @@ -11852,108 +12443,108 @@ snapshots: - vite - webpack - '@unocss/preset-attributify@66.6.4': + '@unocss/preset-attributify@66.6.7': dependencies: - '@unocss/core': 66.6.4 + '@unocss/core': 66.6.7 - '@unocss/preset-icons@66.6.4': + '@unocss/preset-icons@66.6.7': dependencies: '@iconify/utils': 3.1.0 - '@unocss/core': 66.6.4 + '@unocss/core': 66.6.7 ofetch: 1.5.1 - '@unocss/preset-mini@66.6.4': + '@unocss/preset-mini@66.6.7': dependencies: - '@unocss/core': 66.6.4 - '@unocss/extractor-arbitrary-variants': 66.6.4 - '@unocss/rule-utils': 66.6.4 + '@unocss/core': 66.6.7 + '@unocss/extractor-arbitrary-variants': 66.6.7 + '@unocss/rule-utils': 66.6.7 - '@unocss/preset-tagify@66.6.4': + '@unocss/preset-tagify@66.6.7': dependencies: - '@unocss/core': 66.6.4 + '@unocss/core': 66.6.7 - '@unocss/preset-typography@66.6.4': + '@unocss/preset-typography@66.6.7': dependencies: - '@unocss/core': 66.6.4 - '@unocss/rule-utils': 66.6.4 + '@unocss/core': 66.6.7 + '@unocss/rule-utils': 66.6.7 - '@unocss/preset-uno@66.6.4': + '@unocss/preset-uno@66.6.7': dependencies: - '@unocss/core': 66.6.4 - '@unocss/preset-wind3': 66.6.4 + '@unocss/core': 66.6.7 + '@unocss/preset-wind3': 66.6.7 - '@unocss/preset-web-fonts@66.6.4': + '@unocss/preset-web-fonts@66.6.7': dependencies: - '@unocss/core': 66.6.4 + '@unocss/core': 66.6.7 ofetch: 1.5.1 - '@unocss/preset-wind3@66.6.4': + '@unocss/preset-wind3@66.6.7': dependencies: - '@unocss/core': 66.6.4 - '@unocss/preset-mini': 66.6.4 - '@unocss/rule-utils': 66.6.4 + '@unocss/core': 66.6.7 + '@unocss/preset-mini': 66.6.7 + '@unocss/rule-utils': 66.6.7 - '@unocss/preset-wind4@66.6.4': + '@unocss/preset-wind4@66.6.7': dependencies: - '@unocss/core': 66.6.4 - '@unocss/extractor-arbitrary-variants': 66.6.4 - '@unocss/rule-utils': 66.6.4 + '@unocss/core': 66.6.7 + '@unocss/extractor-arbitrary-variants': 66.6.7 + '@unocss/rule-utils': 66.6.7 - '@unocss/preset-wind@66.6.4': + '@unocss/preset-wind@66.6.7': dependencies: - '@unocss/core': 66.6.4 - '@unocss/preset-wind3': 66.6.4 + '@unocss/core': 66.6.7 + '@unocss/preset-wind3': 66.6.7 - '@unocss/reset@66.6.4': {} + '@unocss/reset@66.6.7': {} - '@unocss/rule-utils@66.6.4': + '@unocss/rule-utils@66.6.7': dependencies: - '@unocss/core': 66.6.4 + '@unocss/core': 66.6.7 magic-string: 0.30.21 - '@unocss/transformer-attributify-jsx@66.6.4': + '@unocss/transformer-attributify-jsx@66.6.7': dependencies: - '@unocss/core': 66.6.4 + '@unocss/core': 66.6.7 oxc-parser: 0.115.0 oxc-walker: 0.7.0(oxc-parser@0.115.0) - '@unocss/transformer-compile-class@66.6.4': + '@unocss/transformer-compile-class@66.6.7': dependencies: - '@unocss/core': 66.6.4 + '@unocss/core': 66.6.7 - '@unocss/transformer-directives@66.6.4': + '@unocss/transformer-directives@66.6.7': dependencies: - '@unocss/core': 66.6.4 - '@unocss/rule-utils': 66.6.4 + '@unocss/core': 66.6.7 + '@unocss/rule-utils': 66.6.7 css-tree: 3.1.0 - '@unocss/transformer-variant-group@66.6.4': + '@unocss/transformer-variant-group@66.6.7': dependencies: - '@unocss/core': 66.6.4 + '@unocss/core': 66.6.7 - '@unocss/vite@66.6.4(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': + '@unocss/vite@66.6.7(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@jridgewell/remapping': 2.3.5 - '@unocss/config': 66.6.4 - '@unocss/core': 66.6.4 - '@unocss/inspector': 66.6.4 + '@unocss/config': 66.6.7 + '@unocss/core': 66.6.7 + '@unocss/inspector': 66.6.7 chokidar: 5.0.0 magic-string: 0.30.21 pathe: 2.0.3 tinyglobby: 0.2.15 unplugin-utils: 0.3.1 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) - '@unocss/webpack@66.6.4': + '@unocss/webpack@66.6.7': dependencies: '@jridgewell/remapping': 2.3.5 - '@unocss/config': 66.6.4 - '@unocss/core': 66.6.4 + '@unocss/config': 66.6.7 + '@unocss/core': 66.6.7 chokidar: 5.0.0 magic-string: 0.30.21 pathe: 2.0.3 tinyglobby: 0.2.15 - unplugin: 2.3.11 + unplugin: 3.0.0 unplugin-utils: 0.3.1 webpack-sources: 3.3.4 @@ -12020,8 +12611,8 @@ snapshots: dependencies: '@mapbox/node-pre-gyp': 2.0.0 '@rollup/pluginutils': 5.3.0(rollup@4.59.0) - acorn: 8.15.0 - acorn-import-attributes: 1.9.5(acorn@8.15.0) + acorn: 8.16.0 + acorn-import-attributes: 1.9.5(acorn@8.16.0) async-sema: 3.1.1 bindings: 1.5.0 estree-walker: 2.0.2 @@ -12035,84 +12626,93 @@ snapshots: - rollup - supports-color - '@vite-pwa/nuxt@1.1.1(magicast@0.5.2)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': + '@vite-pwa/nuxt@1.1.1(magicast@0.5.2)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@nuxt/kit': 3.20.1(magicast@0.5.2) pathe: 1.1.2 ufo: 1.6.1 - vite-plugin-pwa: 1.2.0(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + vite-plugin-pwa: 1.2.0(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) transitivePeerDependencies: - '@types/babel__core' - magicast - supports-color - vite - '@vitejs/plugin-vue-jsx@5.1.4(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3))': + '@vitejs/plugin-vue-jsx@5.1.4(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.30(typescript@5.9.3))': dependencies: '@babel/core': 7.29.0 '@babel/plugin-syntax-typescript': 7.28.6(@babel/core@7.29.0) '@babel/plugin-transform-typescript': 7.28.6(@babel/core@7.29.0) '@rolldown/pluginutils': 1.0.0-rc.6 '@vue/babel-plugin-jsx': 2.0.1(@babel/core@7.29.0) - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) - vue: 3.5.29(typescript@5.9.3) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vue: 3.5.30(typescript@5.9.3) transitivePeerDependencies: - supports-color - '@vitejs/plugin-vue@6.0.4(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3))': + '@vitejs/plugin-vue@6.0.4(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3))': dependencies: '@rolldown/pluginutils': 1.0.0-rc.2 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) vue: 3.5.29(typescript@5.9.3) - '@vitest/eslint-plugin@1.6.9(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)(vitest@4.0.18(@types/node@25.3.3)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@1.8.0))(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': + '@vitejs/plugin-vue@6.0.4(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.30(typescript@5.9.3))': + dependencies: + '@rolldown/pluginutils': 1.0.0-rc.2 + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vue: 3.5.30(typescript@5.9.3) + + '@vitest/eslint-plugin@1.6.13(@typescript-eslint/eslint-plugin@8.57.2(@typescript-eslint/parser@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3)(vitest@4.1.1(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(jsdom@29.0.1(@noble/hashes@1.8.0))(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@typescript-eslint/scope-manager': 8.56.1 - '@typescript-eslint/utils': 8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - eslint: 10.0.2(jiti@2.6.1) + '@typescript-eslint/utils': 8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + eslint: 10.1.0(jiti@2.6.1) optionalDependencies: + '@typescript-eslint/eslint-plugin': 8.57.2(@typescript-eslint/parser@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) typescript: 5.9.3 - vitest: 4.0.18(@types/node@25.3.3)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@1.8.0))(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vitest: 4.1.1(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(jsdom@29.0.1(@noble/hashes@1.8.0))(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) transitivePeerDependencies: - supports-color - '@vitest/expect@4.0.18': + '@vitest/expect@4.1.1': dependencies: - '@standard-schema/spec': 1.0.0 + '@standard-schema/spec': 1.1.0 '@types/chai': 5.2.3 - '@vitest/spy': 4.0.18 - '@vitest/utils': 4.0.18 - chai: 6.2.1 + '@vitest/spy': 4.1.1 + '@vitest/utils': 4.1.1 + chai: 6.2.2 tinyrainbow: 3.0.3 - '@vitest/mocker@4.0.18(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': + '@vitest/mocker@4.1.1(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: - '@vitest/spy': 4.0.18 + '@vitest/spy': 4.1.1 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) - '@vitest/pretty-format@4.0.18': + '@vitest/pretty-format@4.1.1': dependencies: tinyrainbow: 3.0.3 - '@vitest/runner@4.0.18': + '@vitest/runner@4.1.1': dependencies: - '@vitest/utils': 4.0.18 + '@vitest/utils': 4.1.1 pathe: 2.0.3 - '@vitest/snapshot@4.0.18': + '@vitest/snapshot@4.1.1': dependencies: - '@vitest/pretty-format': 4.0.18 + '@vitest/pretty-format': 4.1.1 + '@vitest/utils': 4.1.1 magic-string: 0.30.21 pathe: 2.0.3 - '@vitest/spy@4.0.18': {} + '@vitest/spy@4.1.1': {} - '@vitest/utils@4.0.18': + '@vitest/utils@4.1.1': dependencies: - '@vitest/pretty-format': 4.0.18 + '@vitest/pretty-format': 4.1.1 + convert-source-map: 2.0.0 tinyrainbow: 3.0.3 '@volar/language-core@2.4.28': @@ -12127,71 +12727,71 @@ snapshots: path-browserify: 1.0.1 vscode-uri: 3.1.0 - '@vue-macros/common@3.1.1(vue@3.5.29(typescript@5.9.3))': + '@vue-macros/common@3.1.1(vue@3.5.30(typescript@5.9.3))': dependencies: - '@vue/compiler-sfc': 3.5.24 + '@vue/compiler-sfc': 3.5.29 ast-kit: 2.2.0 local-pkg: 1.1.2 magic-string-ast: 1.0.3 unplugin-utils: 0.3.1 optionalDependencies: - vue: 3.5.29(typescript@5.9.3) + vue: 3.5.30(typescript@5.9.3) '@vue/babel-helper-vue-transform-on@1.5.0': {} '@vue/babel-helper-vue-transform-on@2.0.1': {} - '@vue/babel-plugin-jsx@1.5.0(@babel/core@7.28.5)': + '@vue/babel-plugin-jsx@1.5.0(@babel/core@7.29.0)': dependencies: - '@babel/helper-module-imports': 7.27.1 - '@babel/helper-plugin-utils': 7.27.1 - '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.5) - '@babel/template': 7.27.2 - '@babel/traverse': 7.28.5 - '@babel/types': 7.28.5 - '@vue/babel-helper-vue-transform-on': 1.5.0 - '@vue/babel-plugin-resolve-type': 1.5.0(@babel/core@7.28.5) - '@vue/shared': 3.5.24 - optionalDependencies: - '@babel/core': 7.28.5 - transitivePeerDependencies: - - supports-color - - '@vue/babel-plugin-jsx@2.0.1(@babel/core@7.29.0)': - dependencies: - '@babel/helper-module-imports': 7.27.1 - '@babel/helper-plugin-utils': 7.27.1 + '@babel/helper-module-imports': 7.28.6 + '@babel/helper-plugin-utils': 7.28.6 '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.29.0) - '@babel/template': 7.27.2 - '@babel/traverse': 7.28.5 - '@babel/types': 7.28.5 - '@vue/babel-helper-vue-transform-on': 2.0.1 - '@vue/babel-plugin-resolve-type': 2.0.1(@babel/core@7.29.0) + '@babel/template': 7.28.6 + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 + '@vue/babel-helper-vue-transform-on': 1.5.0 + '@vue/babel-plugin-resolve-type': 1.5.0(@babel/core@7.29.0) '@vue/shared': 3.5.29 optionalDependencies: '@babel/core': 7.29.0 transitivePeerDependencies: - supports-color - '@vue/babel-plugin-resolve-type@1.5.0(@babel/core@7.28.5)': + '@vue/babel-plugin-jsx@2.0.1(@babel/core@7.29.0)': dependencies: - '@babel/code-frame': 7.27.1 - '@babel/core': 7.28.5 - '@babel/helper-module-imports': 7.27.1 - '@babel/helper-plugin-utils': 7.27.1 - '@babel/parser': 7.28.5 - '@vue/compiler-sfc': 3.5.24 + '@babel/helper-module-imports': 7.28.6 + '@babel/helper-plugin-utils': 7.28.6 + '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.29.0) + '@babel/template': 7.28.6 + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 + '@vue/babel-helper-vue-transform-on': 2.0.1 + '@vue/babel-plugin-resolve-type': 2.0.1(@babel/core@7.29.0) + '@vue/shared': 3.5.30 + optionalDependencies: + '@babel/core': 7.29.0 + transitivePeerDependencies: + - supports-color + + '@vue/babel-plugin-resolve-type@1.5.0(@babel/core@7.29.0)': + dependencies: + '@babel/code-frame': 7.29.0 + '@babel/core': 7.29.0 + '@babel/helper-module-imports': 7.28.6 + '@babel/helper-plugin-utils': 7.28.6 + '@babel/parser': 7.29.0 + '@vue/compiler-sfc': 3.5.29 transitivePeerDependencies: - supports-color '@vue/babel-plugin-resolve-type@2.0.1(@babel/core@7.29.0)': dependencies: - '@babel/code-frame': 7.27.1 + '@babel/code-frame': 7.29.0 '@babel/core': 7.29.0 - '@babel/helper-module-imports': 7.27.1 - '@babel/helper-plugin-utils': 7.27.1 - '@babel/parser': 7.28.5 - '@vue/compiler-sfc': 3.5.24 + '@babel/helper-module-imports': 7.28.6 + '@babel/helper-plugin-utils': 7.28.6 + '@babel/parser': 7.29.0 + '@vue/compiler-sfc': 3.5.29 transitivePeerDependencies: - supports-color @@ -12211,6 +12811,14 @@ snapshots: estree-walker: 2.0.2 source-map-js: 1.2.1 + '@vue/compiler-core@3.5.30': + dependencies: + '@babel/parser': 7.29.0 + '@vue/shared': 3.5.30 + entities: 7.0.1 + estree-walker: 2.0.2 + source-map-js: 1.2.1 + '@vue/compiler-dom@3.5.24': dependencies: '@vue/compiler-core': 3.5.24 @@ -12221,6 +12829,11 @@ snapshots: '@vue/compiler-core': 3.5.29 '@vue/shared': 3.5.29 + '@vue/compiler-dom@3.5.30': + dependencies: + '@vue/compiler-core': 3.5.30 + '@vue/shared': 3.5.30 + '@vue/compiler-sfc@3.5.24': dependencies: '@babel/parser': 7.28.5 @@ -12245,6 +12858,18 @@ snapshots: postcss: 8.5.6 source-map-js: 1.2.1 + '@vue/compiler-sfc@3.5.30': + dependencies: + '@babel/parser': 7.29.0 + '@vue/compiler-core': 3.5.30 + '@vue/compiler-dom': 3.5.30 + '@vue/compiler-ssr': 3.5.30 + '@vue/shared': 3.5.30 + estree-walker: 2.0.2 + magic-string: 0.30.21 + postcss: 8.5.8 + source-map-js: 1.2.1 + '@vue/compiler-ssr@3.5.24': dependencies: '@vue/compiler-dom': 3.5.24 @@ -12255,22 +12880,35 @@ snapshots: '@vue/compiler-dom': 3.5.29 '@vue/shared': 3.5.29 - '@vue/devtools-api@6.6.4': {} + '@vue/compiler-ssr@3.5.30': + dependencies: + '@vue/compiler-dom': 3.5.30 + '@vue/shared': 3.5.30 '@vue/devtools-api@7.7.9': dependencies: '@vue/devtools-kit': 7.7.9 '@vue/devtools-api@8.0.5': - dependencies: - '@vue/devtools-kit': 8.0.5 - - '@vue/devtools-core@8.0.7(vue@3.5.29(typescript@5.9.3))': dependencies: '@vue/devtools-kit': 8.0.7 - '@vue/devtools-shared': 8.0.7 + + '@vue/devtools-api@8.1.1': + dependencies: + '@vue/devtools-kit': 8.1.1 + + '@vue/devtools-core@8.1.1(vue@3.5.29(typescript@5.9.3))': + dependencies: + '@vue/devtools-kit': 8.1.1 + '@vue/devtools-shared': 8.1.1 vue: 3.5.29(typescript@5.9.3) + '@vue/devtools-core@8.1.1(vue@3.5.30(typescript@5.9.3))': + dependencies: + '@vue/devtools-kit': 8.1.1 + '@vue/devtools-shared': 8.1.1 + vue: 3.5.30(typescript@5.9.3) + '@vue/devtools-kit@7.7.9': dependencies: '@vue/devtools-shared': 7.7.9 @@ -12281,33 +12919,28 @@ snapshots: speakingurl: 14.0.1 superjson: 2.2.5 - '@vue/devtools-kit@8.0.5': - dependencies: - '@vue/devtools-shared': 8.0.5 - birpc: 2.8.0 - hookable: 5.5.3 - mitt: 3.0.1 - perfect-debounce: 2.0.0 - speakingurl: 14.0.1 - superjson: 2.2.5 - '@vue/devtools-kit@8.0.7': dependencies: '@vue/devtools-shared': 8.0.7 birpc: 2.8.0 hookable: 5.5.3 - perfect-debounce: 2.0.0 + perfect-debounce: 2.1.0 + + '@vue/devtools-kit@8.1.1': + dependencies: + '@vue/devtools-shared': 8.1.1 + birpc: 2.8.0 + hookable: 5.5.3 + perfect-debounce: 2.1.0 '@vue/devtools-shared@7.7.9': dependencies: rfdc: 1.4.1 - '@vue/devtools-shared@8.0.5': - dependencies: - rfdc: 1.4.1 - '@vue/devtools-shared@8.0.7': {} + '@vue/devtools-shared@8.1.1': {} + '@vue/language-core@3.2.5': dependencies: '@volar/language-core': 2.4.28 @@ -12318,6 +12951,16 @@ snapshots: path-browserify: 1.0.1 picomatch: 4.0.3 + '@vue/language-core@3.2.6': + dependencies: + '@volar/language-core': 2.4.28 + '@vue/compiler-dom': 3.5.29 + '@vue/shared': 3.5.29 + alien-signals: 3.1.0 + muggle-string: 0.4.1 + path-browserify: 1.0.1 + picomatch: 4.0.3 + '@vue/reactivity@3.5.24': dependencies: '@vue/shared': 3.5.24 @@ -12326,6 +12969,10 @@ snapshots: dependencies: '@vue/shared': 3.5.29 + '@vue/reactivity@3.5.30': + dependencies: + '@vue/shared': 3.5.30 + '@vue/runtime-core@3.5.24': dependencies: '@vue/reactivity': 3.5.24 @@ -12336,6 +12983,11 @@ snapshots: '@vue/reactivity': 3.5.29 '@vue/shared': 3.5.29 + '@vue/runtime-core@3.5.30': + dependencies: + '@vue/reactivity': 3.5.30 + '@vue/shared': 3.5.30 + '@vue/runtime-dom@3.5.24': dependencies: '@vue/reactivity': 3.5.24 @@ -12350,6 +13002,13 @@ snapshots: '@vue/shared': 3.5.29 csstype: 3.2.3 + '@vue/runtime-dom@3.5.30': + dependencies: + '@vue/reactivity': 3.5.30 + '@vue/runtime-core': 3.5.30 + '@vue/shared': 3.5.30 + csstype: 3.2.3 + '@vue/server-renderer@3.5.24(vue@3.5.24(typescript@5.9.3))': dependencies: '@vue/compiler-ssr': 3.5.24 @@ -12362,10 +13021,18 @@ snapshots: '@vue/shared': 3.5.29 vue: 3.5.29(typescript@5.9.3) + '@vue/server-renderer@3.5.30(vue@3.5.30(typescript@5.9.3))': + dependencies: + '@vue/compiler-ssr': 3.5.30 + '@vue/shared': 3.5.30 + vue: 3.5.30(typescript@5.9.3) + '@vue/shared@3.5.24': {} '@vue/shared@3.5.29': {} + '@vue/shared@3.5.30': {} + '@vue/test-utils@2.4.6': dependencies: js-beautify: 1.15.4 @@ -12378,25 +13045,26 @@ snapshots: '@vueuse/shared': 14.2.1(vue@3.5.29(typescript@5.9.3)) vue: 3.5.29(typescript@5.9.3) - '@vueuse/integrations@14.2.1(change-case@5.4.4)(focus-trap@7.8.0)(fuse.js@7.1.0)(vue@3.5.29(typescript@5.9.3))': + '@vueuse/integrations@14.2.1(axios@1.13.6)(change-case@5.4.4)(focus-trap@8.0.1)(fuse.js@7.1.0)(vue@3.5.29(typescript@5.9.3))': dependencies: '@vueuse/core': 14.2.1(vue@3.5.29(typescript@5.9.3)) '@vueuse/shared': 14.2.1(vue@3.5.29(typescript@5.9.3)) vue: 3.5.29(typescript@5.9.3) optionalDependencies: + axios: 1.13.6 change-case: 5.4.4 - focus-trap: 7.8.0 + focus-trap: 8.0.1 fuse.js: 7.1.0 '@vueuse/metadata@14.2.1': {} - '@vueuse/nuxt@14.2.1(magicast@0.5.2)(nuxt@4.3.1(@parcel/watcher@2.5.1)(@types/node@25.3.3)(@vue/compiler-sfc@3.5.29)(cac@6.7.14)(db0@0.3.4)(eslint@10.0.2(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(rollup@4.59.0)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.5(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3))': + '@vueuse/nuxt@14.2.1(magicast@0.5.2)(nuxt@4.4.2(@babel/core@7.29.0)(@babel/plugin-proposal-decorators@7.28.0(@babel/core@7.29.0))(@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.29.0))(@parcel/watcher@2.5.1)(@types/node@25.5.0)(@vue/compiler-sfc@3.5.30)(cac@6.7.14)(db0@0.3.4)(esbuild@0.27.3)(eslint@10.1.0(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)))(rolldown@1.0.0-rc.11)(rollup-plugin-visualizer@6.0.5(rolldown@1.0.0-rc.11)(rollup@4.59.0))(rollup@4.59.0)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.6(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3))': dependencies: '@nuxt/kit': 4.3.1(magicast@0.5.2) '@vueuse/core': 14.2.1(vue@3.5.29(typescript@5.9.3)) '@vueuse/metadata': 14.2.1 local-pkg: 1.1.2 - nuxt: 4.3.1(@parcel/watcher@2.5.1)(@types/node@25.3.3)(@vue/compiler-sfc@3.5.29)(cac@6.7.14)(db0@0.3.4)(eslint@10.0.2(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(rollup@4.59.0)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.5(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2) + nuxt: 4.4.2(@babel/core@7.29.0)(@babel/plugin-proposal-decorators@7.28.0(@babel/core@7.29.0))(@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.29.0))(@parcel/watcher@2.5.1)(@types/node@25.5.0)(@vue/compiler-sfc@3.5.30)(cac@6.7.14)(db0@0.3.4)(esbuild@0.27.3)(eslint@10.1.0(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)))(rolldown@1.0.0-rc.11)(rollup-plugin-visualizer@6.0.5(rolldown@1.0.0-rc.11)(rollup@4.59.0))(rollup@4.59.0)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.6(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2) vue: 3.5.29(typescript@5.9.3) transitivePeerDependencies: - magicast @@ -12409,12 +13077,12 @@ snapshots: '@yunlefun/vue@0.1.1': {} - '@yunyoujun/docs@0.1.14(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': + '@yunyoujun/docs@0.1.14(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: dayjs: 1.11.19 markdown-it-task-lists: 2.1.1 prompts: 2.4.2 - vitepress-plugin-group-icons: 1.7.1(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + vitepress-plugin-group-icons: 1.7.1(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) yargs: 18.0.0 transitivePeerDependencies: - vite @@ -12429,13 +13097,9 @@ snapshots: dependencies: event-target-shim: 5.0.1 - acorn-import-attributes@1.9.5(acorn@8.15.0): + acorn-import-attributes@1.9.5(acorn@8.16.0): dependencies: - acorn: 8.15.0 - - acorn-jsx@5.3.2(acorn@8.15.0): - dependencies: - acorn: 8.15.0 + acorn: 8.16.0 acorn-jsx@5.3.2(acorn@8.16.0): dependencies: @@ -12454,14 +13118,14 @@ snapshots: json-schema-traverse: 0.4.1 uri-js: 4.4.1 - ajv@8.12.0: + ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 + fast-uri: 3.1.0 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 - uri-js: 4.4.1 - ajv@8.17.1: + ajv@8.18.0: dependencies: fast-deep-equal: 3.1.3 fast-uri: 3.1.0 @@ -12553,7 +13217,7 @@ snapshots: ast-kit@2.2.0: dependencies: - '@babel/parser': 7.28.5 + '@babel/parser': 7.29.0 pathe: 2.0.3 ast-types@0.13.4: @@ -12562,7 +13226,7 @@ snapshots: ast-walker-scope@0.8.3: dependencies: - '@babel/parser': 7.28.5 + '@babel/parser': 7.29.0 ast-kit: 2.2.0 astral-regex@2.0.0: {} @@ -12577,19 +13241,27 @@ snapshots: at-least-node@1.0.0: {} - autoprefixer@10.4.27(postcss@8.5.6): + autoprefixer@10.4.27(postcss@8.5.8): dependencies: browserslist: 4.28.1 caniuse-lite: 1.0.30001776 fraction.js: 5.3.4 picocolors: 1.1.1 - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 available-typed-arrays@1.0.7: dependencies: possible-typed-array-names: 1.1.0 + axios@1.13.6: + dependencies: + follow-redirects: 1.15.11 + form-data: 4.0.5 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + b4a@1.7.3: {} babel-plugin-polyfill-corejs2@0.4.14(@babel/core@7.28.5): @@ -12624,7 +13296,7 @@ snapshots: base64-js@1.5.1: {} - baseline-browser-mapping@2.10.0: {} + baseline-browser-mapping@2.10.10: {} basic-ftp@5.0.5: {} @@ -12678,7 +13350,7 @@ snapshots: browserslist@4.28.0: dependencies: - baseline-browser-mapping: 2.10.0 + baseline-browser-mapping: 2.10.10 caniuse-lite: 1.0.30001756 electron-to-chromium: 1.5.259 node-releases: 2.0.27 @@ -12686,7 +13358,7 @@ snapshots: browserslist@4.28.1: dependencies: - baseline-browser-mapping: 2.10.0 + baseline-browser-mapping: 2.10.10 caniuse-lite: 1.0.30001776 electron-to-chromium: 1.5.307 node-releases: 2.0.27 @@ -12705,21 +13377,17 @@ snapshots: builtin-modules@5.0.0: {} - bumpp@10.4.1(magicast@0.5.2): + bumpp@11.0.1: dependencies: - ansis: 4.2.0 args-tokenizer: 0.3.0 - c12: 3.3.3(magicast@0.5.2) - cac: 6.7.14 - escalade: 3.2.0 + cac: 7.0.0 jsonc-parser: 3.3.1 package-manager-detector: 1.6.0 - semver: 7.7.3 - tinyexec: 1.0.2 + semver: 7.7.4 + tinyexec: 1.0.4 tinyglobby: 0.2.15 + unconfig: 7.5.0 yaml: 2.8.2 - transitivePeerDependencies: - - magicast bundle-name@4.1.0: dependencies: @@ -12751,23 +13419,6 @@ snapshots: optionalDependencies: magicast: 0.5.2 - c12@3.3.3(magicast@0.5.1): - dependencies: - chokidar: 5.0.0 - confbox: 0.2.2 - defu: 6.1.4 - dotenv: 17.2.3 - exsolve: 1.0.8 - giget: 2.0.0 - jiti: 2.6.1 - ohash: 2.0.11 - pathe: 2.0.3 - perfect-debounce: 2.0.0 - pkg-types: 2.3.0 - rc9: 2.1.2 - optionalDependencies: - magicast: 0.5.1 - c12@3.3.3(magicast@0.5.2): dependencies: chokidar: 5.0.0 @@ -12787,6 +13438,8 @@ snapshots: cac@6.7.14: {} + cac@7.0.0: {} + call-bind-apply-helpers@1.0.2: dependencies: es-errors: 1.3.0 @@ -12808,8 +13461,8 @@ snapshots: caniuse-api@3.0.0: dependencies: - browserslist: 4.28.0 - caniuse-lite: 1.0.30001756 + browserslist: 4.28.1 + caniuse-lite: 1.0.30001776 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 @@ -12819,7 +13472,7 @@ snapshots: ccount@2.0.1: {} - chai@6.2.1: {} + chai@6.2.2: {} chalk-template@0.4.0: dependencies: @@ -13000,10 +13653,6 @@ snapshots: dependencies: is-what: 5.5.0 - copy-paste@2.2.0: - dependencies: - iconv-lite: 0.4.24 - core-js-compat@3.47.0: dependencies: browserslist: 4.28.0 @@ -13031,9 +13680,9 @@ snapshots: crypto-random-string@2.0.0: {} - css-declaration-sorter@7.3.0(postcss@8.5.6): + css-declaration-sorter@7.3.0(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 css-select@5.2.2: dependencies: @@ -13053,65 +13702,63 @@ snapshots: mdn-data: 2.12.2 source-map-js: 1.2.1 + css-tree@3.2.1: + dependencies: + mdn-data: 2.27.1 + source-map-js: 1.2.1 + css-what@6.2.2: {} cssesc@3.0.0: {} - cssnano-preset-default@7.0.10(postcss@8.5.6): + cssnano-preset-default@7.0.11(postcss@8.5.8): dependencies: - browserslist: 4.28.0 - css-declaration-sorter: 7.3.0(postcss@8.5.6) - cssnano-utils: 5.0.1(postcss@8.5.6) - postcss: 8.5.6 - postcss-calc: 10.1.1(postcss@8.5.6) - postcss-colormin: 7.0.5(postcss@8.5.6) - postcss-convert-values: 7.0.8(postcss@8.5.6) - postcss-discard-comments: 7.0.5(postcss@8.5.6) - postcss-discard-duplicates: 7.0.2(postcss@8.5.6) - postcss-discard-empty: 7.0.1(postcss@8.5.6) - postcss-discard-overridden: 7.0.1(postcss@8.5.6) - postcss-merge-longhand: 7.0.5(postcss@8.5.6) - postcss-merge-rules: 7.0.7(postcss@8.5.6) - postcss-minify-font-values: 7.0.1(postcss@8.5.6) - postcss-minify-gradients: 7.0.1(postcss@8.5.6) - postcss-minify-params: 7.0.5(postcss@8.5.6) - postcss-minify-selectors: 7.0.5(postcss@8.5.6) - postcss-normalize-charset: 7.0.1(postcss@8.5.6) - postcss-normalize-display-values: 7.0.1(postcss@8.5.6) - postcss-normalize-positions: 7.0.1(postcss@8.5.6) - postcss-normalize-repeat-style: 7.0.1(postcss@8.5.6) - postcss-normalize-string: 7.0.1(postcss@8.5.6) - postcss-normalize-timing-functions: 7.0.1(postcss@8.5.6) - postcss-normalize-unicode: 7.0.5(postcss@8.5.6) - postcss-normalize-url: 7.0.1(postcss@8.5.6) - postcss-normalize-whitespace: 7.0.1(postcss@8.5.6) - postcss-ordered-values: 7.0.2(postcss@8.5.6) - postcss-reduce-initial: 7.0.5(postcss@8.5.6) - postcss-reduce-transforms: 7.0.1(postcss@8.5.6) - postcss-svgo: 7.1.0(postcss@8.5.6) - postcss-unique-selectors: 7.0.4(postcss@8.5.6) + browserslist: 4.28.1 + css-declaration-sorter: 7.3.0(postcss@8.5.8) + cssnano-utils: 5.0.1(postcss@8.5.8) + postcss: 8.5.8 + postcss-calc: 10.1.1(postcss@8.5.8) + postcss-colormin: 7.0.6(postcss@8.5.8) + postcss-convert-values: 7.0.9(postcss@8.5.8) + postcss-discard-comments: 7.0.6(postcss@8.5.8) + postcss-discard-duplicates: 7.0.2(postcss@8.5.8) + postcss-discard-empty: 7.0.1(postcss@8.5.8) + postcss-discard-overridden: 7.0.1(postcss@8.5.8) + postcss-merge-longhand: 7.0.5(postcss@8.5.8) + postcss-merge-rules: 7.0.8(postcss@8.5.8) + postcss-minify-font-values: 7.0.1(postcss@8.5.8) + postcss-minify-gradients: 7.0.1(postcss@8.5.8) + postcss-minify-params: 7.0.6(postcss@8.5.8) + postcss-minify-selectors: 7.0.6(postcss@8.5.8) + postcss-normalize-charset: 7.0.1(postcss@8.5.8) + postcss-normalize-display-values: 7.0.1(postcss@8.5.8) + postcss-normalize-positions: 7.0.1(postcss@8.5.8) + postcss-normalize-repeat-style: 7.0.1(postcss@8.5.8) + postcss-normalize-string: 7.0.1(postcss@8.5.8) + postcss-normalize-timing-functions: 7.0.1(postcss@8.5.8) + postcss-normalize-unicode: 7.0.6(postcss@8.5.8) + postcss-normalize-url: 7.0.1(postcss@8.5.8) + postcss-normalize-whitespace: 7.0.1(postcss@8.5.8) + postcss-ordered-values: 7.0.2(postcss@8.5.8) + postcss-reduce-initial: 7.0.6(postcss@8.5.8) + postcss-reduce-transforms: 7.0.1(postcss@8.5.8) + postcss-svgo: 7.1.1(postcss@8.5.8) + postcss-unique-selectors: 7.0.5(postcss@8.5.8) - cssnano-utils@5.0.1(postcss@8.5.6): + cssnano-utils@5.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 - cssnano@7.1.2(postcss@8.5.6): + cssnano@7.1.3(postcss@8.5.8): dependencies: - cssnano-preset-default: 7.0.10(postcss@8.5.6) + cssnano-preset-default: 7.0.11(postcss@8.5.8) lilconfig: 3.1.3 - postcss: 8.5.6 + postcss: 8.5.8 csso@5.0.5: dependencies: css-tree: 2.2.1 - cssstyle@6.2.0: - dependencies: - '@asamuzakjp/css-color': 5.0.1 - '@csstools/css-syntax-patches-for-csstree': 1.0.29 - css-tree: 3.1.0 - lru-cache: 11.2.6 - csstype@3.2.3: {} data-uri-to-buffer@6.0.2: {} @@ -13143,6 +13790,8 @@ snapshots: dayjs@1.11.19: {} + dayjs@1.11.20: {} + db0@0.3.4: {} debug@2.6.9: @@ -13382,8 +14031,6 @@ snapshots: es-errors@1.3.0: {} - es-module-lexer@1.7.0: {} - es-module-lexer@2.0.0: {} es-object-atoms@1.1.1: @@ -13479,24 +14126,29 @@ snapshots: optionalDependencies: source-map: 0.6.1 - eslint-compat-utils@0.5.1(eslint@10.0.2(jiti@2.6.1)): + eslint-compat-utils@0.5.1(eslint@10.1.0(jiti@2.6.1)): dependencies: - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) semver: 7.7.4 - eslint-config-flat-gitignore@2.2.1(eslint@10.0.2(jiti@2.6.1)): + eslint-config-flat-gitignore@2.2.1(eslint@10.1.0(jiti@2.6.1)): dependencies: - '@eslint/compat': 2.0.2(eslint@10.0.2(jiti@2.6.1)) - eslint: 10.0.2(jiti@2.6.1) + '@eslint/compat': 2.0.2(eslint@10.1.0(jiti@2.6.1)) + eslint: 10.1.0(jiti@2.6.1) eslint-flat-config-utils@3.0.1: dependencies: '@eslint/config-helpers': 0.5.2 pathe: 2.0.3 - eslint-formatting-reporter@0.0.0(eslint@10.0.2(jiti@2.6.1)): + eslint-flat-config-utils@3.0.2: dependencies: - eslint: 10.0.2(jiti@2.6.1) + '@eslint/config-helpers': 0.5.3 + pathe: 2.0.3 + + eslint-formatting-reporter@0.0.0(eslint@10.1.0(jiti@2.6.1)): + dependencies: + eslint: 10.1.0(jiti@2.6.1) prettier-linter-helpers: 1.0.0 eslint-import-context@0.1.9(unrs-resolver@1.11.1): @@ -13506,71 +14158,78 @@ snapshots: optionalDependencies: unrs-resolver: 1.11.1 - eslint-json-compat-utils@0.2.1(eslint@10.0.2(jiti@2.6.1))(jsonc-eslint-parser@3.1.0): + eslint-json-compat-utils@0.2.1(eslint@10.1.0(jiti@2.6.1))(jsonc-eslint-parser@3.1.0): dependencies: - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) esquery: 1.7.0 jsonc-eslint-parser: 3.1.0 - eslint-merge-processors@2.0.0(eslint@10.0.2(jiti@2.6.1)): + eslint-merge-processors@2.0.0(eslint@10.1.0(jiti@2.6.1)): dependencies: - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) eslint-parser-plain@0.1.1: {} - eslint-plugin-antfu@3.2.2(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-antfu@3.2.2(eslint@10.1.0(jiti@2.6.1)): dependencies: - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) - eslint-plugin-command@3.5.2(@typescript-eslint/typescript-estree@8.56.1(typescript@5.9.3))(@typescript-eslint/utils@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-command@3.5.2(@typescript-eslint/typescript-estree@8.57.2(typescript@5.9.3))(@typescript-eslint/utils@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1)): dependencies: '@es-joy/jsdoccomment': 0.84.0 - '@typescript-eslint/typescript-estree': 8.56.1(typescript@5.9.3) - '@typescript-eslint/utils': 8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - eslint: 10.0.2(jiti@2.6.1) + '@typescript-eslint/typescript-estree': 8.57.2(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + eslint: 10.1.0(jiti@2.6.1) - eslint-plugin-es-x@7.8.0(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-depend@1.5.0(eslint@10.1.0(jiti@2.6.1)): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.2(jiti@2.6.1)) - '@eslint-community/regexpp': 4.12.2 - eslint: 10.0.2(jiti@2.6.1) - eslint-compat-utils: 0.5.1(eslint@10.0.2(jiti@2.6.1)) + empathic: 2.0.0 + eslint: 10.1.0(jiti@2.6.1) + module-replacements: 2.11.0 + semver: 7.7.4 - eslint-plugin-format@2.0.1(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-es-x@7.8.0(eslint@10.1.0(jiti@2.6.1)): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0(jiti@2.6.1)) + '@eslint-community/regexpp': 4.12.2 + eslint: 10.1.0(jiti@2.6.1) + eslint-compat-utils: 0.5.1(eslint@10.1.0(jiti@2.6.1)) + + eslint-plugin-format@2.0.1(eslint@10.1.0(jiti@2.6.1)): dependencies: '@dprint/formatter': 0.5.1 '@dprint/markdown': 0.21.1 '@dprint/toml': 0.7.0 - eslint: 10.0.2(jiti@2.6.1) - eslint-formatting-reporter: 0.0.0(eslint@10.0.2(jiti@2.6.1)) + eslint: 10.1.0(jiti@2.6.1) + eslint-formatting-reporter: 0.0.0(eslint@10.1.0(jiti@2.6.1)) eslint-parser-plain: 0.1.1 ohash: 2.0.11 oxfmt: 0.35.0 prettier: 3.8.1 synckit: 0.11.12 - eslint-plugin-import-lite@0.5.2(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-import-lite@0.5.2(eslint@10.1.0(jiti@2.6.1)): dependencies: - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) - eslint-plugin-import-x@4.16.1(@typescript-eslint/utils@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-import-x@4.16.1(@typescript-eslint/utils@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1)): dependencies: '@typescript-eslint/types': 8.47.0 comment-parser: 1.4.1 debug: 4.4.3 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) eslint-import-context: 0.1.9(unrs-resolver@1.11.1) is-glob: 4.0.3 - minimatch: 10.1.1 - semver: 7.7.3 + minimatch: 10.2.4 + semver: 7.7.4 stable-hash-x: 0.2.0 unrs-resolver: 1.11.1 optionalDependencies: - '@typescript-eslint/utils': 8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) transitivePeerDependencies: - supports-color - eslint-plugin-jsdoc@62.7.1(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-jsdoc@62.7.1(eslint@10.1.0(jiti@2.6.1)): dependencies: '@es-joy/jsdoccomment': 0.84.0 '@es-joy/resolve.exports': 1.2.0 @@ -13578,7 +14237,7 @@ snapshots: comment-parser: 1.4.5 debug: 4.4.3 escape-string-regexp: 4.0.0 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) espree: 11.1.1 esquery: 1.7.0 html-entities: 2.6.0 @@ -13590,27 +14249,27 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-jsonc@3.1.1(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-jsonc@3.1.1(eslint@10.1.0(jiti@2.6.1)): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.2(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0(jiti@2.6.1)) '@eslint/core': 1.1.0 '@eslint/plugin-kit': 0.6.0 '@ota-meshi/ast-token-store': 0.3.0 diff-sequences: 29.6.3 - eslint: 10.0.2(jiti@2.6.1) - eslint-json-compat-utils: 0.2.1(eslint@10.0.2(jiti@2.6.1))(jsonc-eslint-parser@3.1.0) + eslint: 10.1.0(jiti@2.6.1) + eslint-json-compat-utils: 0.2.1(eslint@10.1.0(jiti@2.6.1))(jsonc-eslint-parser@3.1.0) jsonc-eslint-parser: 3.1.0 natural-compare: 1.4.0 synckit: 0.11.12 transitivePeerDependencies: - '@eslint/json' - eslint-plugin-n@17.24.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3): + eslint-plugin-n@17.24.0(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.2(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0(jiti@2.6.1)) enhanced-resolve: 5.18.3 - eslint: 10.0.2(jiti@2.6.1) - eslint-plugin-es-x: 7.8.0(eslint@10.0.2(jiti@2.6.1)) + eslint: 10.1.0(jiti@2.6.1) + eslint-plugin-es-x: 7.8.0(eslint@10.1.0(jiti@2.6.1)) get-tsconfig: 4.13.0 globals: 15.15.0 globrex: 0.1.2 @@ -13622,19 +14281,19 @@ snapshots: eslint-plugin-no-only-tests@3.3.0: {} - eslint-plugin-perfectionist@5.6.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3): + eslint-plugin-perfectionist@5.6.0(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3): dependencies: - '@typescript-eslint/utils': 8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) - eslint: 10.0.2(jiti@2.6.1) + '@typescript-eslint/utils': 8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + eslint: 10.1.0(jiti@2.6.1) natural-orderby: 5.0.0 transitivePeerDependencies: - supports-color - typescript - eslint-plugin-pnpm@1.6.0(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-pnpm@1.6.0(eslint@10.1.0(jiti@2.6.1)): dependencies: empathic: 2.0.0 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) jsonc-eslint-parser: 3.1.0 pathe: 2.0.3 pnpm-workspace-yaml: 1.6.0 @@ -13642,37 +14301,48 @@ snapshots: yaml: 2.8.2 yaml-eslint-parser: 2.0.0 - eslint-plugin-regexp@3.0.0(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-regexp@3.0.0(eslint@10.1.0(jiti@2.6.1)): dependencies: - '@eslint-community/eslint-utils': 4.9.0(eslint@10.0.2(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0(jiti@2.6.1)) '@eslint-community/regexpp': 4.12.2 comment-parser: 1.4.1 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) jsdoc-type-pratt-parser: 7.1.1 refa: 0.12.1 regexp-ast-analysis: 0.7.1 scslre: 0.3.0 - eslint-plugin-toml@1.3.0(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-regexp@3.1.0(eslint@10.1.0(jiti@2.6.1)): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0(jiti@2.6.1)) + '@eslint-community/regexpp': 4.12.2 + comment-parser: 1.4.5 + eslint: 10.1.0(jiti@2.6.1) + jsdoc-type-pratt-parser: 7.1.1 + refa: 0.12.1 + regexp-ast-analysis: 0.7.1 + scslre: 0.3.0 + + eslint-plugin-toml@1.3.1(eslint@10.1.0(jiti@2.6.1)): dependencies: '@eslint/core': 1.1.0 '@eslint/plugin-kit': 0.6.0 '@ota-meshi/ast-token-store': 0.3.0 debug: 4.4.3 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) toml-eslint-parser: 1.0.3 transitivePeerDependencies: - supports-color - eslint-plugin-unicorn@63.0.0(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-unicorn@63.0.0(eslint@10.1.0(jiti@2.6.1)): dependencies: '@babel/helper-validator-identifier': 7.28.5 - '@eslint-community/eslint-utils': 4.9.0(eslint@10.0.2(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0(jiti@2.6.1)) change-case: 5.4.4 ci-info: 4.3.1 clean-regexp: 1.0.0 core-js-compat: 3.47.0 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) find-up-simple: 1.0.1 globals: 16.5.0 indent-string: 5.0.0 @@ -13681,30 +14351,44 @@ snapshots: pluralize: 8.0.0 regexp-tree: 0.1.27 regjsparser: 0.13.0 - semver: 7.7.3 + semver: 7.7.4 strip-indent: 4.1.1 - eslint-plugin-unused-imports@4.4.1(@typescript-eslint/eslint-plugin@8.56.1(@typescript-eslint/parser@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-unused-imports@4.4.1(@typescript-eslint/eslint-plugin@8.57.2(@typescript-eslint/parser@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1)): dependencies: - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) optionalDependencies: - '@typescript-eslint/eslint-plugin': 8.56.1(@typescript-eslint/parser@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/eslint-plugin': 8.57.2(@typescript-eslint/parser@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) - eslint-plugin-vue@10.8.0(@stylistic/eslint-plugin@5.9.0(eslint@10.0.2(jiti@2.6.1)))(@typescript-eslint/parser@8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@10.0.2(jiti@2.6.1))): + eslint-plugin-vue@10.8.0(@stylistic/eslint-plugin@5.10.0(eslint@10.1.0(jiti@2.6.1)))(@typescript-eslint/parser@8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@10.1.0(jiti@2.6.1))): dependencies: - '@eslint-community/eslint-utils': 4.9.0(eslint@10.0.2(jiti@2.6.1)) - eslint: 10.0.2(jiti@2.6.1) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0(jiti@2.6.1)) + eslint: 10.1.0(jiti@2.6.1) natural-compare: 1.4.0 nth-check: 2.1.1 postcss-selector-parser: 7.1.0 - semver: 7.7.3 - vue-eslint-parser: 10.4.0(eslint@10.0.2(jiti@2.6.1)) + semver: 7.7.4 + vue-eslint-parser: 10.4.0(eslint@10.1.0(jiti@2.6.1)) xml-name-validator: 4.0.0 optionalDependencies: - '@stylistic/eslint-plugin': 5.9.0(eslint@10.0.2(jiti@2.6.1)) - '@typescript-eslint/parser': 8.56.1(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3) + '@stylistic/eslint-plugin': 5.10.0(eslint@10.1.0(jiti@2.6.1)) + '@typescript-eslint/parser': 8.57.2(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) - eslint-plugin-yml@3.3.0(eslint@10.0.2(jiti@2.6.1)): + eslint-plugin-vue@10.8.0(@stylistic/eslint-plugin@5.9.0(eslint@10.1.0(jiti@2.6.1)))(@typescript-eslint/parser@8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.1.0(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@10.1.0(jiti@2.6.1))): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0(jiti@2.6.1)) + eslint: 10.1.0(jiti@2.6.1) + natural-compare: 1.4.0 + nth-check: 2.1.1 + postcss-selector-parser: 7.1.0 + semver: 7.7.4 + vue-eslint-parser: 10.4.0(eslint@10.1.0(jiti@2.6.1)) + xml-name-validator: 4.0.0 + optionalDependencies: + '@stylistic/eslint-plugin': 5.9.0(eslint@10.1.0(jiti@2.6.1)) + '@typescript-eslint/parser': 8.56.1(eslint@10.1.0(jiti@2.6.1))(typescript@5.9.3) + + eslint-plugin-yml@3.3.1(eslint@10.1.0(jiti@2.6.1)): dependencies: '@eslint/core': 1.1.0 '@eslint/plugin-kit': 0.6.0 @@ -13712,21 +14396,16 @@ snapshots: debug: 4.4.3 diff-sequences: 29.6.3 escape-string-regexp: 5.0.0 - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) natural-compare: 1.4.0 yaml-eslint-parser: 2.0.0 transitivePeerDependencies: - supports-color - eslint-processor-vue-blocks@2.0.0(@vue/compiler-sfc@3.5.29)(eslint@10.0.2(jiti@2.6.1)): + eslint-processor-vue-blocks@2.0.0(@vue/compiler-sfc@3.5.30)(eslint@10.1.0(jiti@2.6.1)): dependencies: - '@vue/compiler-sfc': 3.5.29 - eslint: 10.0.2(jiti@2.6.1) - - eslint-scope@8.4.0: - dependencies: - esrecurse: 4.3.0 - estraverse: 5.3.0 + '@vue/compiler-sfc': 3.5.30 + eslint: 10.1.0(jiti@2.6.1) eslint-scope@9.1.1: dependencies: @@ -13735,9 +14414,16 @@ snapshots: esrecurse: 4.3.0 estraverse: 5.3.0 - eslint-typegen@2.3.1(eslint@10.0.2(jiti@2.6.1)): + eslint-scope@9.1.2: dependencies: - eslint: 10.0.2(jiti@2.6.1) + '@types/esrecurse': 4.3.1 + '@types/estree': 1.0.8 + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-typegen@2.3.1(eslint@10.1.0(jiti@2.6.1)): + dependencies: + eslint: 10.1.0(jiti@2.6.1) json-schema-to-typescript-lite: 15.0.0 ohash: 2.0.11 @@ -13747,14 +14433,14 @@ snapshots: eslint-visitor-keys@5.0.1: {} - eslint@10.0.2(jiti@2.6.1): + eslint@10.1.0(jiti@2.6.1): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.2(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0(jiti@2.6.1)) '@eslint-community/regexpp': 4.12.2 - '@eslint/config-array': 0.23.2 - '@eslint/config-helpers': 0.5.2 - '@eslint/core': 1.1.0 - '@eslint/plugin-kit': 0.6.0 + '@eslint/config-array': 0.23.3 + '@eslint/config-helpers': 0.5.3 + '@eslint/core': 1.1.1 + '@eslint/plugin-kit': 0.6.1 '@humanfs/node': 0.16.7 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.3 @@ -13763,9 +14449,9 @@ snapshots: cross-spawn: 7.0.6 debug: 4.4.3 escape-string-regexp: 4.0.0 - eslint-scope: 9.1.1 + eslint-scope: 9.1.2 eslint-visitor-keys: 5.0.1 - espree: 11.1.1 + espree: 11.2.0 esquery: 1.7.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 @@ -13786,8 +14472,8 @@ snapshots: espree@10.4.0: dependencies: - acorn: 8.15.0 - acorn-jsx: 5.3.2(acorn@8.15.0) + acorn: 8.16.0 + acorn-jsx: 5.3.2(acorn@8.16.0) eslint-visitor-keys: 4.2.1 espree@11.1.1: @@ -13796,11 +14482,13 @@ snapshots: acorn-jsx: 5.3.2(acorn@8.16.0) eslint-visitor-keys: 5.0.1 - esprima@4.0.1: {} - - esquery@1.6.0: + espree@11.2.0: dependencies: - estraverse: 5.3.0 + acorn: 8.16.0 + acorn-jsx: 5.3.2(acorn@8.16.0) + eslint-visitor-keys: 5.0.1 + + esprima@4.0.1: {} esquery@1.7.0: dependencies: @@ -13872,7 +14560,7 @@ snapshots: signal-exit: 4.1.0 strip-final-newline: 3.0.0 - expect-type@1.2.2: {} + expect-type@1.3.0: {} exsolve@1.0.8: {} @@ -13902,7 +14590,7 @@ snapshots: fast-levenshtein@2.0.6: {} - fast-npm-meta@1.3.0: {} + fast-npm-meta@1.4.2: {} fast-safe-stringify@2.1.1: {} @@ -13969,10 +14657,12 @@ snapshots: optionalDependencies: '@nuxt/kit': 3.21.1(magicast@0.5.2) - focus-trap@7.8.0: + focus-trap@8.0.1: dependencies: tabbable: 6.4.0 + follow-redirects@1.15.11: {} + for-each@0.3.5: dependencies: is-callable: 1.2.7 @@ -14189,6 +14879,18 @@ snapshots: dependencies: duplexer: 0.1.2 + h3@1.15.10: + dependencies: + cookie-es: 1.2.2 + crossws: 0.3.5 + defu: 6.1.4 + destr: 2.0.5 + iron-webcrypto: 1.2.1 + node-mock-http: 1.0.4 + radix3: 1.1.2 + ufo: 1.6.3 + uncrypto: 0.1.3 + h3@1.15.4: dependencies: cookie-es: 1.2.2 @@ -14262,9 +14964,11 @@ snapshots: hookable@6.0.1: {} + hookable@6.1.0: {} + html-encoding-sniffer@6.0.0(@noble/hashes@1.8.0): dependencies: - '@exodus/bytes': 1.14.1(@noble/hashes@1.8.0) + '@exodus/bytes': 1.15.0(@noble/hashes@1.8.0) transitivePeerDependencies: - '@noble/hashes' @@ -14318,15 +15022,15 @@ snapshots: image-meta@0.2.2: {} - immutable@5.1.4: {} + immutable@5.1.5: {} - impound@1.0.0: + impound@1.1.5: dependencies: - exsolve: 1.0.8 - mocked-exports: 0.1.1 + '@jridgewell/trace-mapping': 0.3.31 + es-module-lexer: 2.0.0 pathe: 2.0.3 - unplugin: 2.3.11 - unplugin-utils: 0.2.5 + unplugin: 3.0.0 + unplugin-utils: 0.3.1 imurmurhash@0.1.4: {} @@ -14562,7 +15266,7 @@ snapshots: isexe@2.0.0: {} - isexe@3.1.1: {} + isexe@4.0.0: {} jackspeak@3.4.3: dependencies: @@ -14602,24 +15306,24 @@ snapshots: jsdoc-type-pratt-parser@7.1.1: {} - jsdom@28.1.0(@noble/hashes@1.8.0): + jsdom@29.0.1(@noble/hashes@1.8.0): dependencies: - '@acemir/cssom': 0.9.31 - '@asamuzakjp/dom-selector': 6.8.1 + '@asamuzakjp/css-color': 5.0.1 + '@asamuzakjp/dom-selector': 7.0.4 '@bramus/specificity': 2.4.2 - '@exodus/bytes': 1.14.1(@noble/hashes@1.8.0) - cssstyle: 6.2.0 + '@csstools/css-syntax-patches-for-csstree': 1.1.1(css-tree@3.2.1) + '@exodus/bytes': 1.15.0(@noble/hashes@1.8.0) + css-tree: 3.2.1 data-urls: 7.0.0(@noble/hashes@1.8.0) decimal.js: 10.6.0 html-encoding-sniffer: 6.0.0(@noble/hashes@1.8.0) - http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.6 is-potential-custom-element-name: 1.0.1 + lru-cache: 11.2.7 parse5: 8.0.0 saxes: 6.0.0 symbol-tree: 3.2.4 - tough-cookie: 6.0.0 - undici: 7.22.0 + tough-cookie: 6.0.1 + undici: 7.24.5 w3c-xmlserializer: 5.0.0 webidl-conversions: 8.0.1 whatwg-mimetype: 5.0.0 @@ -14627,7 +15331,6 @@ snapshots: xml-name-validator: 5.0.0 transitivePeerDependencies: - '@noble/hashes' - - supports-color jsesc@3.1.0: {} @@ -14702,19 +15405,68 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 + lightningcss-android-arm64@1.32.0: + optional: true + + lightningcss-darwin-arm64@1.32.0: + optional: true + + lightningcss-darwin-x64@1.32.0: + optional: true + + lightningcss-freebsd-x64@1.32.0: + optional: true + + lightningcss-linux-arm-gnueabihf@1.32.0: + optional: true + + lightningcss-linux-arm64-gnu@1.32.0: + optional: true + + lightningcss-linux-arm64-musl@1.32.0: + optional: true + + lightningcss-linux-x64-gnu@1.32.0: + optional: true + + lightningcss-linux-x64-musl@1.32.0: + optional: true + + lightningcss-win32-arm64-msvc@1.32.0: + optional: true + + lightningcss-win32-x64-msvc@1.32.0: + optional: true + + lightningcss@1.32.0: + dependencies: + detect-libc: 2.1.2 + optionalDependencies: + lightningcss-android-arm64: 1.32.0 + lightningcss-darwin-arm64: 1.32.0 + lightningcss-darwin-x64: 1.32.0 + lightningcss-freebsd-x64: 1.32.0 + lightningcss-linux-arm-gnueabihf: 1.32.0 + lightningcss-linux-arm64-gnu: 1.32.0 + lightningcss-linux-arm64-musl: 1.32.0 + lightningcss-linux-x64-gnu: 1.32.0 + lightningcss-linux-x64-musl: 1.32.0 + lightningcss-win32-arm64-msvc: 1.32.0 + lightningcss-win32-x64-msvc: 1.32.0 + lilconfig@3.1.3: {} linkify-it@5.0.0: dependencies: uc.micro: 2.1.0 - lint-staged@16.3.1: + lint-staged@16.4.0: dependencies: commander: 14.0.3 listr2: 9.0.5 - micromatch: 4.0.8 + picomatch: 4.0.3 string-argv: 0.3.2 - tinyexec: 1.0.2 + tinyexec: 1.0.4 yaml: 2.8.2 listhen@1.9.0: @@ -14730,7 +15482,7 @@ snapshots: h3: 1.15.5 http-shutdown: 1.2.2 jiti: 2.6.1 - mlly: 1.8.0 + mlly: 1.8.2 node-forge: 1.3.1 pathe: 1.1.2 std-env: 3.10.0 @@ -14792,6 +15544,8 @@ snapshots: lodash.defaults@4.2.0: {} + lodash.identity@3.0.0: {} + lodash.isarguments@3.1.0: {} lodash.isarray@3.0.4: {} @@ -14804,6 +15558,10 @@ snapshots: lodash.memoize@4.1.2: {} + lodash.merge@4.6.2: {} + + lodash.pickby@4.6.0: {} + lodash.restparam@3.6.1: {} lodash.sortby@4.7.0: {} @@ -14820,6 +15578,8 @@ snapshots: strip-ansi: 7.1.2 wrap-ansi: 9.0.2 + long@5.3.2: {} + longest-streak@3.1.0: {} lru-cache@10.4.3: {} @@ -14828,6 +15588,8 @@ snapshots: lru-cache@11.2.6: {} + lru-cache@11.2.7: {} + lru-cache@5.1.1: dependencies: yallist: 3.1.1 @@ -14844,11 +15606,11 @@ snapshots: dependencies: estree-walker: 3.0.3 magic-string: 0.30.21 - mlly: 1.8.0 + mlly: 1.8.2 regexp-tree: 0.1.27 type-level-regexp: 0.1.17 ufo: 1.6.3 - unplugin: 2.3.11 + unplugin: 3.0.0 magic-string-ast@1.0.3: dependencies: @@ -14862,12 +15624,6 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 - magicast@0.5.1: - dependencies: - '@babel/parser': 7.28.5 - '@babel/types': 7.28.5 - source-map-js: 1.2.1 - magicast@0.5.2: dependencies: '@babel/parser': 7.29.0 @@ -14878,15 +15634,6 @@ snapshots: markdown-it-task-lists@2.1.1: {} - markdown-it@14.1.0: - dependencies: - argparse: 2.0.1 - entities: 4.5.0 - linkify-it: 5.0.0 - mdurl: 2.0.0 - punycode.js: 2.3.1 - uc.micro: 2.1.0 - markdown-it@14.1.1: dependencies: argparse: 2.0.1 @@ -15041,6 +15788,8 @@ snapshots: mdn-data@2.12.2: {} + mdn-data@2.27.1: {} + mdurl@2.0.0: {} merge-stream@2.0.0: {} @@ -15292,6 +16041,10 @@ snapshots: dependencies: brace-expansion: 1.1.12 + minimatch@3.1.5: + dependencies: + brace-expansion: 1.1.12 + minimatch@5.1.6: dependencies: brace-expansion: 2.0.2 @@ -15338,8 +16091,17 @@ snapshots: pkg-types: 1.3.1 ufo: 1.6.1 + mlly@1.8.2: + dependencies: + acorn: 8.16.0 + pathe: 2.0.3 + pkg-types: 1.3.1 + ufo: 1.6.3 + mocked-exports@0.1.1: {} + module-replacements@2.11.0: {} + mrmime@2.0.1: {} ms@2.0.0: {} @@ -15352,7 +16114,7 @@ snapshots: nanoid@3.3.11: {} - nanotar@0.2.0: {} + nanotar@0.3.0: {} napi-postinstall@0.3.4: {} @@ -15380,7 +16142,7 @@ snapshots: netmask@2.0.2: {} - nitropack@2.13.1(xml2js@0.6.2): + nitropack@2.13.1(rolldown@1.0.0-rc.11)(xml2js@0.6.2): dependencies: '@cloudflare/kv-asset-handler': 0.4.2 '@rollup/plugin-alias': 6.0.0(rollup@4.59.0) @@ -15392,11 +16154,11 @@ snapshots: '@rollup/plugin-terser': 0.4.4(rollup@4.59.0) '@vercel/nft': 1.3.2(rollup@4.59.0) archiver: 7.0.1 - c12: 3.3.3(magicast@0.5.1) + c12: 3.3.3(magicast@0.5.2) chokidar: 5.0.0 citty: 0.1.6 compatx: 0.2.0 - confbox: 0.2.2 + confbox: 0.2.4 consola: 3.4.2 cookie-es: 2.0.0 croner: 9.1.0 @@ -15411,7 +16173,7 @@ snapshots: exsolve: 1.0.8 globby: 16.1.1 gzip-size: 7.0.0 - h3: 1.15.5 + h3: 1.15.10 hookable: 5.5.3 httpxy: 0.1.7 ioredis: 5.10.0 @@ -15420,9 +16182,9 @@ snapshots: knitwork: 1.3.0 listhen: 1.9.0 magic-string: 0.30.21 - magicast: 0.5.1 + magicast: 0.5.2 mime: 4.1.0 - mlly: 1.8.0 + mlly: 1.8.2 node-fetch-native: 1.6.7 node-mock-http: 1.0.4 ofetch: 1.5.1 @@ -15433,7 +16195,7 @@ snapshots: pretty-bytes: 7.1.0 radix3: 1.1.2 rollup: 4.59.0 - rollup-plugin-visualizer: 6.0.5(rollup@4.59.0) + rollup-plugin-visualizer: 6.0.5(rolldown@1.0.0-rc.11)(rollup@4.59.0) scule: 1.3.0 semver: 7.7.4 serve-placeholder: 2.0.2 @@ -15529,68 +16291,67 @@ snapshots: dependencies: boolbase: 1.0.0 - nuxt@4.3.1(@parcel/watcher@2.5.1)(@types/node@25.3.3)(@vue/compiler-sfc@3.5.29)(cac@6.7.14)(db0@0.3.4)(eslint@10.0.2(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(rollup@4.59.0)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.5(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2): + nuxt@4.4.2(@babel/core@7.29.0)(@babel/plugin-proposal-decorators@7.28.0(@babel/core@7.29.0))(@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.29.0))(@parcel/watcher@2.5.1)(@types/node@25.5.0)(@vue/compiler-sfc@3.5.30)(cac@6.7.14)(db0@0.3.4)(esbuild@0.27.3)(eslint@10.1.0(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)))(rolldown@1.0.0-rc.11)(rollup-plugin-visualizer@6.0.5(rolldown@1.0.0-rc.11)(rollup@4.59.0))(rollup@4.59.0)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.6(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2): dependencies: - '@dxup/nuxt': 0.3.2(magicast@0.5.2) - '@nuxt/cli': 3.33.1(@nuxt/schema@4.3.1)(cac@6.7.14)(magicast@0.5.2) - '@nuxt/devtools': 3.2.2(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)) - '@nuxt/kit': 4.3.1(magicast@0.5.2) - '@nuxt/nitro-server': 4.3.1(db0@0.3.4)(ioredis@5.10.0)(magicast@0.5.2)(nuxt@4.3.1(@parcel/watcher@2.5.1)(@types/node@25.3.3)(@vue/compiler-sfc@3.5.29)(cac@6.7.14)(db0@0.3.4)(eslint@10.0.2(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(rollup@4.59.0)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.5(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2))(typescript@5.9.3)(xml2js@0.6.2) - '@nuxt/schema': 4.3.1 - '@nuxt/telemetry': 2.7.0(@nuxt/kit@4.3.1(magicast@0.5.2)) - '@nuxt/vite-builder': 4.3.1(@types/node@25.3.3)(eslint@10.0.2(jiti@2.6.1))(magicast@0.5.2)(nuxt@4.3.1(@parcel/watcher@2.5.1)(@types/node@25.3.3)(@vue/compiler-sfc@3.5.29)(cac@6.7.14)(db0@0.3.4)(eslint@10.0.2(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(rollup@4.59.0)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.5(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2))(optionator@0.9.4)(rollup@4.59.0)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3))(vue@3.5.29(typescript@5.9.3))(yaml@2.8.2) - '@unhead/vue': 2.1.10(vue@3.5.29(typescript@5.9.3)) - '@vue/shared': 3.5.29 + '@dxup/nuxt': 0.4.0(magicast@0.5.2)(typescript@5.9.3) + '@nuxt/cli': 3.34.0(@nuxt/schema@4.4.2)(cac@6.7.14)(magicast@0.5.2) + '@nuxt/devtools': 3.2.4(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.30(typescript@5.9.3)) + '@nuxt/kit': 4.4.2(magicast@0.5.2) + '@nuxt/nitro-server': 4.4.2(@babel/core@7.29.0)(@babel/plugin-proposal-decorators@7.28.0(@babel/core@7.29.0))(db0@0.3.4)(ioredis@5.10.0)(magicast@0.5.2)(nuxt@4.4.2(@babel/core@7.29.0)(@babel/plugin-proposal-decorators@7.28.0(@babel/core@7.29.0))(@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.29.0))(@parcel/watcher@2.5.1)(@types/node@25.5.0)(@vue/compiler-sfc@3.5.30)(cac@6.7.14)(db0@0.3.4)(esbuild@0.27.3)(eslint@10.1.0(jiti@2.6.1))(ioredis@5.10.0)(magicast@0.5.2)(optionator@0.9.4)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)))(rolldown@1.0.0-rc.11)(rollup-plugin-visualizer@6.0.5(rolldown@1.0.0-rc.11)(rollup@4.59.0))(rollup@4.59.0)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.6(typescript@5.9.3))(xml2js@0.6.2)(yaml@2.8.2))(rolldown@1.0.0-rc.11)(typescript@5.9.3)(xml2js@0.6.2) + '@nuxt/schema': 4.4.2 + '@nuxt/telemetry': 2.7.0(@nuxt/kit@4.4.2(magicast@0.5.2)) + '@nuxt/vite-builder': 4.4.2(444a4541794fd239685cf860fa63699b) + '@unhead/vue': 2.1.12(vue@3.5.30(typescript@5.9.3)) + '@vue/shared': 3.5.30 c12: 3.3.3(magicast@0.5.2) chokidar: 5.0.0 compatx: 0.2.0 consola: 3.4.2 cookie-es: 2.0.0 defu: 6.1.4 - destr: 2.0.5 devalue: 5.6.3 errx: 0.1.0 escape-string-regexp: 5.0.0 exsolve: 1.0.8 - h3: 1.15.5 - hookable: 5.5.3 + hookable: 6.0.1 ignore: 7.0.5 - impound: 1.0.0 + impound: 1.1.5 jiti: 2.6.1 klona: 2.0.6 knitwork: 1.3.0 magic-string: 0.30.21 - mlly: 1.8.0 - nanotar: 0.2.0 + mlly: 1.8.2 + nanotar: 0.3.0 nypm: 0.6.5 ofetch: 1.5.1 ohash: 2.0.11 on-change: 6.0.2 - oxc-minify: 0.112.0 - oxc-parser: 0.112.0 - oxc-transform: 0.112.0 - oxc-walker: 0.7.0(oxc-parser@0.112.0) + oxc-minify: 0.117.0 + oxc-parser: 0.117.0 + oxc-transform: 0.117.0 + oxc-walker: 0.7.0(oxc-parser@0.117.0) pathe: 2.0.3 perfect-debounce: 2.1.0 + picomatch: 4.0.3 pkg-types: 2.3.0 - rou3: 0.7.12 + rou3: 0.8.1 scule: 1.3.0 semver: 7.7.4 - std-env: 3.10.0 + std-env: 4.0.0 tinyglobby: 0.2.15 ufo: 1.6.3 ultrahtml: 1.6.0 uncrypto: 0.1.3 unctx: 2.5.0 - unimport: 5.7.0 - unplugin: 2.3.11 - unplugin-vue-router: 0.19.2(@vue/compiler-sfc@3.5.29)(vue-router@4.6.4(vue@3.5.29(typescript@5.9.3)))(vue@3.5.29(typescript@5.9.3)) + unimport: 6.0.2 + unplugin: 3.0.0 + unrouting: 0.1.7 untyped: 2.0.0 - vue: 3.5.29(typescript@5.9.3) - vue-router: 4.6.4(vue@3.5.29(typescript@5.9.3)) + vue: 3.5.30(typescript@5.9.3) + vue-router: 5.0.4(@vue/compiler-sfc@3.5.30)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)))(vue@3.5.30(typescript@5.9.3)) optionalDependencies: '@parcel/watcher': 2.5.1 - '@types/node': 25.3.3 + '@types/node': 25.5.0 transitivePeerDependencies: - '@azure/app-configuration' - '@azure/cosmos' @@ -15598,13 +16359,18 @@ snapshots: - '@azure/identity' - '@azure/keyvault-secrets' - '@azure/storage-blob' + - '@babel/core' + - '@babel/plugin-proposal-decorators' + - '@babel/plugin-syntax-jsx' - '@biomejs/biome' - '@capacitor/preferences' - '@deno/kv' - '@electric-sql/pglite' - '@libsql/client' - '@netlify/blobs' + - '@pinia/colada' - '@planetscale/database' + - '@rollup/plugin-babel' - '@upstash/redis' - '@vercel/blob' - '@vercel/functions' @@ -15620,19 +16386,21 @@ snapshots: - db0 - drizzle-orm - encoding + - esbuild - eslint - idb-keyval - ioredis - less - - lightningcss - magicast - meow - mysql2 - optionator - oxlint + - pinia - react-native-b4a - rolldown - rollup + - rollup-plugin-visualizer - sass - sass-embedded - sqlite3 @@ -15765,53 +16533,28 @@ snapshots: object-keys: 1.1.1 safe-push-apply: 1.0.0 - oxc-minify@0.112.0: + oxc-minify@0.117.0: optionalDependencies: - '@oxc-minify/binding-android-arm-eabi': 0.112.0 - '@oxc-minify/binding-android-arm64': 0.112.0 - '@oxc-minify/binding-darwin-arm64': 0.112.0 - '@oxc-minify/binding-darwin-x64': 0.112.0 - '@oxc-minify/binding-freebsd-x64': 0.112.0 - '@oxc-minify/binding-linux-arm-gnueabihf': 0.112.0 - '@oxc-minify/binding-linux-arm-musleabihf': 0.112.0 - '@oxc-minify/binding-linux-arm64-gnu': 0.112.0 - '@oxc-minify/binding-linux-arm64-musl': 0.112.0 - '@oxc-minify/binding-linux-ppc64-gnu': 0.112.0 - '@oxc-minify/binding-linux-riscv64-gnu': 0.112.0 - '@oxc-minify/binding-linux-riscv64-musl': 0.112.0 - '@oxc-minify/binding-linux-s390x-gnu': 0.112.0 - '@oxc-minify/binding-linux-x64-gnu': 0.112.0 - '@oxc-minify/binding-linux-x64-musl': 0.112.0 - '@oxc-minify/binding-openharmony-arm64': 0.112.0 - '@oxc-minify/binding-wasm32-wasi': 0.112.0 - '@oxc-minify/binding-win32-arm64-msvc': 0.112.0 - '@oxc-minify/binding-win32-ia32-msvc': 0.112.0 - '@oxc-minify/binding-win32-x64-msvc': 0.112.0 - - oxc-parser@0.112.0: - dependencies: - '@oxc-project/types': 0.112.0 - optionalDependencies: - '@oxc-parser/binding-android-arm-eabi': 0.112.0 - '@oxc-parser/binding-android-arm64': 0.112.0 - '@oxc-parser/binding-darwin-arm64': 0.112.0 - '@oxc-parser/binding-darwin-x64': 0.112.0 - '@oxc-parser/binding-freebsd-x64': 0.112.0 - '@oxc-parser/binding-linux-arm-gnueabihf': 0.112.0 - '@oxc-parser/binding-linux-arm-musleabihf': 0.112.0 - '@oxc-parser/binding-linux-arm64-gnu': 0.112.0 - '@oxc-parser/binding-linux-arm64-musl': 0.112.0 - '@oxc-parser/binding-linux-ppc64-gnu': 0.112.0 - '@oxc-parser/binding-linux-riscv64-gnu': 0.112.0 - '@oxc-parser/binding-linux-riscv64-musl': 0.112.0 - '@oxc-parser/binding-linux-s390x-gnu': 0.112.0 - '@oxc-parser/binding-linux-x64-gnu': 0.112.0 - '@oxc-parser/binding-linux-x64-musl': 0.112.0 - '@oxc-parser/binding-openharmony-arm64': 0.112.0 - '@oxc-parser/binding-wasm32-wasi': 0.112.0 - '@oxc-parser/binding-win32-arm64-msvc': 0.112.0 - '@oxc-parser/binding-win32-ia32-msvc': 0.112.0 - '@oxc-parser/binding-win32-x64-msvc': 0.112.0 + '@oxc-minify/binding-android-arm-eabi': 0.117.0 + '@oxc-minify/binding-android-arm64': 0.117.0 + '@oxc-minify/binding-darwin-arm64': 0.117.0 + '@oxc-minify/binding-darwin-x64': 0.117.0 + '@oxc-minify/binding-freebsd-x64': 0.117.0 + '@oxc-minify/binding-linux-arm-gnueabihf': 0.117.0 + '@oxc-minify/binding-linux-arm-musleabihf': 0.117.0 + '@oxc-minify/binding-linux-arm64-gnu': 0.117.0 + '@oxc-minify/binding-linux-arm64-musl': 0.117.0 + '@oxc-minify/binding-linux-ppc64-gnu': 0.117.0 + '@oxc-minify/binding-linux-riscv64-gnu': 0.117.0 + '@oxc-minify/binding-linux-riscv64-musl': 0.117.0 + '@oxc-minify/binding-linux-s390x-gnu': 0.117.0 + '@oxc-minify/binding-linux-x64-gnu': 0.117.0 + '@oxc-minify/binding-linux-x64-musl': 0.117.0 + '@oxc-minify/binding-openharmony-arm64': 0.117.0 + '@oxc-minify/binding-wasm32-wasi': 0.117.0 + '@oxc-minify/binding-win32-arm64-msvc': 0.117.0 + '@oxc-minify/binding-win32-ia32-msvc': 0.117.0 + '@oxc-minify/binding-win32-x64-msvc': 0.117.0 oxc-parser@0.115.0: dependencies: @@ -15838,39 +16581,64 @@ snapshots: '@oxc-parser/binding-win32-ia32-msvc': 0.115.0 '@oxc-parser/binding-win32-x64-msvc': 0.115.0 - oxc-transform@0.112.0: - optionalDependencies: - '@oxc-transform/binding-android-arm-eabi': 0.112.0 - '@oxc-transform/binding-android-arm64': 0.112.0 - '@oxc-transform/binding-darwin-arm64': 0.112.0 - '@oxc-transform/binding-darwin-x64': 0.112.0 - '@oxc-transform/binding-freebsd-x64': 0.112.0 - '@oxc-transform/binding-linux-arm-gnueabihf': 0.112.0 - '@oxc-transform/binding-linux-arm-musleabihf': 0.112.0 - '@oxc-transform/binding-linux-arm64-gnu': 0.112.0 - '@oxc-transform/binding-linux-arm64-musl': 0.112.0 - '@oxc-transform/binding-linux-ppc64-gnu': 0.112.0 - '@oxc-transform/binding-linux-riscv64-gnu': 0.112.0 - '@oxc-transform/binding-linux-riscv64-musl': 0.112.0 - '@oxc-transform/binding-linux-s390x-gnu': 0.112.0 - '@oxc-transform/binding-linux-x64-gnu': 0.112.0 - '@oxc-transform/binding-linux-x64-musl': 0.112.0 - '@oxc-transform/binding-openharmony-arm64': 0.112.0 - '@oxc-transform/binding-wasm32-wasi': 0.112.0 - '@oxc-transform/binding-win32-arm64-msvc': 0.112.0 - '@oxc-transform/binding-win32-ia32-msvc': 0.112.0 - '@oxc-transform/binding-win32-x64-msvc': 0.112.0 - - oxc-walker@0.7.0(oxc-parser@0.112.0): + oxc-parser@0.117.0: dependencies: - magic-regexp: 0.10.0 - oxc-parser: 0.112.0 + '@oxc-project/types': 0.117.0 + optionalDependencies: + '@oxc-parser/binding-android-arm-eabi': 0.117.0 + '@oxc-parser/binding-android-arm64': 0.117.0 + '@oxc-parser/binding-darwin-arm64': 0.117.0 + '@oxc-parser/binding-darwin-x64': 0.117.0 + '@oxc-parser/binding-freebsd-x64': 0.117.0 + '@oxc-parser/binding-linux-arm-gnueabihf': 0.117.0 + '@oxc-parser/binding-linux-arm-musleabihf': 0.117.0 + '@oxc-parser/binding-linux-arm64-gnu': 0.117.0 + '@oxc-parser/binding-linux-arm64-musl': 0.117.0 + '@oxc-parser/binding-linux-ppc64-gnu': 0.117.0 + '@oxc-parser/binding-linux-riscv64-gnu': 0.117.0 + '@oxc-parser/binding-linux-riscv64-musl': 0.117.0 + '@oxc-parser/binding-linux-s390x-gnu': 0.117.0 + '@oxc-parser/binding-linux-x64-gnu': 0.117.0 + '@oxc-parser/binding-linux-x64-musl': 0.117.0 + '@oxc-parser/binding-openharmony-arm64': 0.117.0 + '@oxc-parser/binding-wasm32-wasi': 0.117.0 + '@oxc-parser/binding-win32-arm64-msvc': 0.117.0 + '@oxc-parser/binding-win32-ia32-msvc': 0.117.0 + '@oxc-parser/binding-win32-x64-msvc': 0.117.0 + + oxc-transform@0.117.0: + optionalDependencies: + '@oxc-transform/binding-android-arm-eabi': 0.117.0 + '@oxc-transform/binding-android-arm64': 0.117.0 + '@oxc-transform/binding-darwin-arm64': 0.117.0 + '@oxc-transform/binding-darwin-x64': 0.117.0 + '@oxc-transform/binding-freebsd-x64': 0.117.0 + '@oxc-transform/binding-linux-arm-gnueabihf': 0.117.0 + '@oxc-transform/binding-linux-arm-musleabihf': 0.117.0 + '@oxc-transform/binding-linux-arm64-gnu': 0.117.0 + '@oxc-transform/binding-linux-arm64-musl': 0.117.0 + '@oxc-transform/binding-linux-ppc64-gnu': 0.117.0 + '@oxc-transform/binding-linux-riscv64-gnu': 0.117.0 + '@oxc-transform/binding-linux-riscv64-musl': 0.117.0 + '@oxc-transform/binding-linux-s390x-gnu': 0.117.0 + '@oxc-transform/binding-linux-x64-gnu': 0.117.0 + '@oxc-transform/binding-linux-x64-musl': 0.117.0 + '@oxc-transform/binding-openharmony-arm64': 0.117.0 + '@oxc-transform/binding-wasm32-wasi': 0.117.0 + '@oxc-transform/binding-win32-arm64-msvc': 0.117.0 + '@oxc-transform/binding-win32-ia32-msvc': 0.117.0 + '@oxc-transform/binding-win32-x64-msvc': 0.117.0 oxc-walker@0.7.0(oxc-parser@0.115.0): dependencies: magic-regexp: 0.10.0 oxc-parser: 0.115.0 + oxc-walker@0.7.0(oxc-parser@0.117.0): + dependencies: + magic-regexp: 0.10.0 + oxc-parser: 0.117.0 + oxfmt@0.35.0: dependencies: tinypool: 2.1.0 @@ -15933,6 +16701,8 @@ snapshots: package-manager-detector@1.6.0: {} + papaparse@5.5.3: {} + parse-gitignore@2.0.0: {} parse-imports-exports@0.2.4: @@ -16024,142 +16794,142 @@ snapshots: possible-typed-array-names@1.1.0: {} - postcss-calc@10.1.1(postcss@8.5.6): + postcss-calc@10.1.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-selector-parser: 7.1.0 postcss-value-parser: 4.2.0 - postcss-colormin@7.0.5(postcss@8.5.6): + postcss-colormin@7.0.6(postcss@8.5.8): dependencies: - browserslist: 4.28.0 + browserslist: 4.28.1 caniuse-api: 3.0.0 colord: 2.9.3 - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-convert-values@7.0.8(postcss@8.5.6): + postcss-convert-values@7.0.9(postcss@8.5.8): dependencies: - browserslist: 4.28.0 - postcss: 8.5.6 + browserslist: 4.28.1 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-discard-comments@7.0.5(postcss@8.5.6): + postcss-discard-comments@7.0.6(postcss@8.5.8): dependencies: - postcss: 8.5.6 - postcss-selector-parser: 7.1.0 + postcss: 8.5.8 + postcss-selector-parser: 7.1.1 - postcss-discard-duplicates@7.0.2(postcss@8.5.6): + postcss-discard-duplicates@7.0.2(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 - postcss-discard-empty@7.0.1(postcss@8.5.6): + postcss-discard-empty@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 - postcss-discard-overridden@7.0.1(postcss@8.5.6): + postcss-discard-overridden@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 - postcss-merge-longhand@7.0.5(postcss@8.5.6): + postcss-merge-longhand@7.0.5(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - stylehacks: 7.0.7(postcss@8.5.6) + stylehacks: 7.0.7(postcss@8.5.8) - postcss-merge-rules@7.0.7(postcss@8.5.6): + postcss-merge-rules@7.0.8(postcss@8.5.8): dependencies: - browserslist: 4.28.0 + browserslist: 4.28.1 caniuse-api: 3.0.0 - cssnano-utils: 5.0.1(postcss@8.5.6) - postcss: 8.5.6 - postcss-selector-parser: 7.1.0 + cssnano-utils: 5.0.1(postcss@8.5.8) + postcss: 8.5.8 + postcss-selector-parser: 7.1.1 - postcss-minify-font-values@7.0.1(postcss@8.5.6): + postcss-minify-font-values@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-minify-gradients@7.0.1(postcss@8.5.6): + postcss-minify-gradients@7.0.1(postcss@8.5.8): dependencies: colord: 2.9.3 - cssnano-utils: 5.0.1(postcss@8.5.6) - postcss: 8.5.6 + cssnano-utils: 5.0.1(postcss@8.5.8) + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-minify-params@7.0.5(postcss@8.5.6): + postcss-minify-params@7.0.6(postcss@8.5.8): dependencies: - browserslist: 4.28.0 - cssnano-utils: 5.0.1(postcss@8.5.6) - postcss: 8.5.6 + browserslist: 4.28.1 + cssnano-utils: 5.0.1(postcss@8.5.8) + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-minify-selectors@7.0.5(postcss@8.5.6): + postcss-minify-selectors@7.0.6(postcss@8.5.8): dependencies: cssesc: 3.0.0 - postcss: 8.5.6 - postcss-selector-parser: 7.1.0 + postcss: 8.5.8 + postcss-selector-parser: 7.1.1 - postcss-normalize-charset@7.0.1(postcss@8.5.6): + postcss-normalize-charset@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 - postcss-normalize-display-values@7.0.1(postcss@8.5.6): + postcss-normalize-display-values@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-positions@7.0.1(postcss@8.5.6): + postcss-normalize-positions@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-repeat-style@7.0.1(postcss@8.5.6): + postcss-normalize-repeat-style@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-string@7.0.1(postcss@8.5.6): + postcss-normalize-string@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-timing-functions@7.0.1(postcss@8.5.6): + postcss-normalize-timing-functions@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-unicode@7.0.5(postcss@8.5.6): + postcss-normalize-unicode@7.0.6(postcss@8.5.8): dependencies: - browserslist: 4.28.0 - postcss: 8.5.6 + browserslist: 4.28.1 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-url@7.0.1(postcss@8.5.6): + postcss-normalize-url@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-normalize-whitespace@7.0.1(postcss@8.5.6): + postcss-normalize-whitespace@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-ordered-values@7.0.2(postcss@8.5.6): + postcss-ordered-values@7.0.2(postcss@8.5.8): dependencies: - cssnano-utils: 5.0.1(postcss@8.5.6) - postcss: 8.5.6 + cssnano-utils: 5.0.1(postcss@8.5.8) + postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-reduce-initial@7.0.5(postcss@8.5.6): + postcss-reduce-initial@7.0.6(postcss@8.5.8): dependencies: - browserslist: 4.28.0 + browserslist: 4.28.1 caniuse-api: 3.0.0 - postcss: 8.5.6 + postcss: 8.5.8 - postcss-reduce-transforms@7.0.1(postcss@8.5.6): + postcss-reduce-transforms@7.0.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 + postcss: 8.5.8 postcss-value-parser: 4.2.0 postcss-selector-parser@7.1.0: @@ -16167,16 +16937,21 @@ snapshots: cssesc: 3.0.0 util-deprecate: 1.0.2 - postcss-svgo@7.1.0(postcss@8.5.6): + postcss-selector-parser@7.1.1: dependencies: - postcss: 8.5.6 - postcss-value-parser: 4.2.0 - svgo: 4.0.0 + cssesc: 3.0.0 + util-deprecate: 1.0.2 - postcss-unique-selectors@7.0.4(postcss@8.5.6): + postcss-svgo@7.1.1(postcss@8.5.8): dependencies: - postcss: 8.5.6 - postcss-selector-parser: 7.1.0 + postcss: 8.5.8 + postcss-value-parser: 4.2.0 + svgo: 4.0.1 + + postcss-unique-selectors@7.0.5(postcss@8.5.8): + dependencies: + postcss: 8.5.8 + postcss-selector-parser: 7.1.1 postcss-value-parser@4.2.0: {} @@ -16186,6 +16961,12 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 + postcss@8.5.8: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + prelude-ls@1.2.1: {} prettier-linter-helpers@1.0.0: @@ -16213,6 +16994,21 @@ snapshots: proto-list@1.2.4: {} + protobufjs@7.5.4: + dependencies: + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/base64': 1.1.2 + '@protobufjs/codegen': 2.0.4 + '@protobufjs/eventemitter': 1.1.0 + '@protobufjs/fetch': 1.1.0 + '@protobufjs/float': 1.0.2 + '@protobufjs/inquire': 1.1.0 + '@protobufjs/path': 1.1.2 + '@protobufjs/pool': 1.1.0 + '@protobufjs/utf8': 1.1.0 + '@types/node': 25.5.0 + long: 5.3.2 + proxy-agent@6.5.0: dependencies: agent-base: 7.1.4 @@ -16241,6 +17037,10 @@ snapshots: dependencies: side-channel: 1.1.0 + qs@6.15.0: + dependencies: + side-channel: 1.1.0 + quansync@0.2.11: {} quansync@1.0.0: {} @@ -16422,47 +17222,41 @@ snapshots: glob: 13.0.0 package-json-from-dist: 1.0.1 - rollup-plugin-visualizer@6.0.5(rollup@4.59.0): + rolldown@1.0.0-rc.11: + dependencies: + '@oxc-project/types': 0.122.0 + '@rolldown/pluginutils': 1.0.0-rc.11 + optionalDependencies: + '@rolldown/binding-android-arm64': 1.0.0-rc.11 + '@rolldown/binding-darwin-arm64': 1.0.0-rc.11 + '@rolldown/binding-darwin-x64': 1.0.0-rc.11 + '@rolldown/binding-freebsd-x64': 1.0.0-rc.11 + '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-rc.11 + '@rolldown/binding-linux-arm64-gnu': 1.0.0-rc.11 + '@rolldown/binding-linux-arm64-musl': 1.0.0-rc.11 + '@rolldown/binding-linux-ppc64-gnu': 1.0.0-rc.11 + '@rolldown/binding-linux-s390x-gnu': 1.0.0-rc.11 + '@rolldown/binding-linux-x64-gnu': 1.0.0-rc.11 + '@rolldown/binding-linux-x64-musl': 1.0.0-rc.11 + '@rolldown/binding-openharmony-arm64': 1.0.0-rc.11 + '@rolldown/binding-wasm32-wasi': 1.0.0-rc.11 + '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.11 + '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.11 + + rollup-plugin-visualizer@6.0.5(rolldown@1.0.0-rc.11)(rollup@4.59.0): dependencies: open: 8.4.2 picomatch: 4.0.3 source-map: 0.7.6 yargs: 17.7.2 optionalDependencies: + rolldown: 1.0.0-rc.11 rollup: 4.59.0 rollup@2.79.2: optionalDependencies: fsevents: 2.3.3 - rollup@4.53.3: - dependencies: - '@types/estree': 1.0.8 - optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.53.3 - '@rollup/rollup-android-arm64': 4.53.3 - '@rollup/rollup-darwin-arm64': 4.53.3 - '@rollup/rollup-darwin-x64': 4.53.3 - '@rollup/rollup-freebsd-arm64': 4.53.3 - '@rollup/rollup-freebsd-x64': 4.53.3 - '@rollup/rollup-linux-arm-gnueabihf': 4.53.3 - '@rollup/rollup-linux-arm-musleabihf': 4.53.3 - '@rollup/rollup-linux-arm64-gnu': 4.53.3 - '@rollup/rollup-linux-arm64-musl': 4.53.3 - '@rollup/rollup-linux-loong64-gnu': 4.53.3 - '@rollup/rollup-linux-ppc64-gnu': 4.53.3 - '@rollup/rollup-linux-riscv64-gnu': 4.53.3 - '@rollup/rollup-linux-riscv64-musl': 4.53.3 - '@rollup/rollup-linux-s390x-gnu': 4.53.3 - '@rollup/rollup-linux-x64-gnu': 4.53.3 - '@rollup/rollup-linux-x64-musl': 4.53.3 - '@rollup/rollup-openharmony-arm64': 4.53.3 - '@rollup/rollup-win32-arm64-msvc': 4.53.3 - '@rollup/rollup-win32-ia32-msvc': 4.53.3 - '@rollup/rollup-win32-x64-gnu': 4.53.3 - '@rollup/rollup-win32-x64-msvc': 4.53.3 - fsevents: 2.3.3 - rollup@4.59.0: dependencies: '@types/estree': 1.0.8 @@ -16496,6 +17290,8 @@ snapshots: rou3@0.7.12: {} + rou3@0.8.1: {} + rsvp@3.6.2: {} run-applescript@7.1.0: {} @@ -16535,10 +17331,10 @@ snapshots: safer-buffer@2.1.2: {} - sass@1.97.3: + sass@1.98.0: dependencies: chokidar: 4.0.3 - immutable: 5.1.4 + immutable: 5.1.5 source-map-js: 1.2.1 optionalDependencies: '@parcel/watcher': 2.5.1 @@ -16547,6 +17343,8 @@ snapshots: sax@1.4.3: {} + sax@1.6.0: {} + saxes@6.0.0: dependencies: xmlchars: 2.2.0 @@ -16585,14 +17383,14 @@ snapshots: dependencies: randombytes: 2.1.0 - seroval@1.5.0: {} + seroval@1.5.1: {} - serve-handler@6.1.6: + serve-handler@6.1.7: dependencies: bytes: 3.0.0 content-disposition: 0.5.2 mime-types: 2.1.18 - minimatch: 3.1.2 + minimatch: 3.1.5 path-is-inside: 1.0.2 path-to-regexp: 3.3.0 range-parser: 1.2.0 @@ -16610,10 +17408,10 @@ snapshots: transitivePeerDependencies: - supports-color - serve@14.2.5: + serve@14.2.6: dependencies: '@zeit/schemas': 2.36.0 - ajv: 8.12.0 + ajv: 8.18.0 arg: 5.0.2 boxen: 7.0.0 chalk: 5.0.1 @@ -16621,7 +17419,7 @@ snapshots: clipboardy: 3.0.0 compression: 1.8.1 is-port-reachable: 4.0.0 - serve-handler: 6.1.6 + serve-handler: 6.1.7 update-check: 1.5.4 transitivePeerDependencies: - supports-color @@ -16705,7 +17503,7 @@ snapshots: simple-git-hooks@2.13.1: {} - simple-git@3.32.3: + simple-git@3.33.0: dependencies: '@kwsites/file-exists': 1.1.1 '@kwsites/promise-deferred': 1.1.1 @@ -16789,7 +17587,7 @@ snapshots: srvx@0.10.1: {} - srvx@0.11.8: {} + srvx@0.11.13: {} ssh-config@1.1.6: {} @@ -16805,6 +17603,8 @@ snapshots: std-env@3.10.0: {} + std-env@4.0.0: {} + stop-iteration-iterator@1.1.0: dependencies: es-errors: 1.3.0 @@ -16929,12 +17729,12 @@ snapshots: dependencies: js-tokens: 9.0.1 - structured-clone-es@1.0.0: {} + structured-clone-es@2.0.0: {} - stylehacks@7.0.7(postcss@8.5.6): + stylehacks@7.0.7(postcss@8.5.8): dependencies: - browserslist: 4.28.0 - postcss: 8.5.6 + browserslist: 4.28.1 + postcss: 8.5.8 postcss-selector-parser: 7.1.0 superagent@9.0.2: @@ -16963,7 +17763,7 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - svgo@4.0.0: + svgo@4.0.1: dependencies: commander: 11.1.0 css-select: 5.2.2 @@ -16971,7 +17771,7 @@ snapshots: css-what: 6.2.2 csso: 5.0.5 picocolors: 1.1.1 - sax: 1.4.3 + sax: 1.6.0 symbol-tree@3.2.4: {} @@ -17045,8 +17845,12 @@ snapshots: tinybench@2.9.0: {} + tinyclip@0.1.12: {} + tinyexec@1.0.2: {} + tinyexec@1.0.4: {} + tinyglobby@0.2.15: dependencies: fdir: 6.5.0(picomatch@4.0.3) @@ -17083,7 +17887,7 @@ snapshots: totalist@3.0.1: {} - tough-cookie@6.0.0: + tough-cookie@6.0.1: dependencies: tldts: 7.0.18 @@ -17193,22 +17997,22 @@ snapshots: dependencies: is-typedarray: 1.0.0 - typedoc-plugin-markdown@4.10.0(typedoc@0.28.17(typescript@5.9.3)): + typedoc-plugin-markdown@4.11.0(typedoc@0.28.18(typescript@5.9.3)): dependencies: - typedoc: 0.28.17(typescript@5.9.3) + typedoc: 0.28.18(typescript@5.9.3) - typedoc-vitepress-theme@1.1.2(typedoc-plugin-markdown@4.10.0(typedoc@0.28.17(typescript@5.9.3))): + typedoc-vitepress-theme@1.1.2(typedoc-plugin-markdown@4.11.0(typedoc@0.28.18(typescript@5.9.3))): dependencies: - typedoc-plugin-markdown: 4.10.0(typedoc@0.28.17(typescript@5.9.3)) + typedoc-plugin-markdown: 4.11.0(typedoc@0.28.18(typescript@5.9.3)) - typedoc@0.28.17(typescript@5.9.3): + typedoc@0.28.18(typescript@5.9.3): dependencies: '@gerrit0/mini-shiki': 3.23.0 lunr: 2.3.9 - markdown-it: 14.1.0 - minimatch: 9.0.5 + markdown-it: 14.1.1 + minimatch: 10.2.4 typescript: 5.9.3 - yaml: 2.8.1 + yaml: 2.8.2 typescript@5.9.3: {} @@ -17247,24 +18051,24 @@ snapshots: acorn: 8.15.0 estree-walker: 3.0.3 magic-string: 0.30.21 - unplugin: 2.3.11 + unplugin: 3.0.0 unctx@2.5.0: dependencies: acorn: 8.15.0 estree-walker: 3.0.3 magic-string: 0.30.21 - unplugin: 2.3.11 + unplugin: 3.0.0 undici-types@7.18.2: {} - undici@7.22.0: {} + undici@7.24.5: {} unenv@2.0.0-rc.24: dependencies: pathe: 2.0.3 - unhead@2.1.10: + unhead@2.1.12: dependencies: hookable: 6.0.1 @@ -17297,7 +18101,7 @@ snapshots: scule: 1.3.0 strip-literal: 3.1.0 tinyglobby: 0.2.15 - unplugin: 2.3.11 + unplugin: 3.0.0 unplugin-utils: 0.3.1 unimport@5.7.0: @@ -17314,7 +18118,24 @@ snapshots: scule: 1.3.0 strip-literal: 3.1.0 tinyglobby: 0.2.15 - unplugin: 2.3.11 + unplugin: 3.0.0 + unplugin-utils: 0.3.1 + + unimport@6.0.2: + dependencies: + acorn: 8.16.0 + escape-string-regexp: 5.0.0 + estree-walker: 3.0.3 + local-pkg: 1.1.2 + magic-string: 0.30.21 + mlly: 1.8.2 + pathe: 2.0.3 + picomatch: 4.0.3 + pkg-types: 2.3.0 + scule: 1.3.0 + strip-literal: 3.1.0 + tinyglobby: 0.2.15 + unplugin: 3.0.0 unplugin-utils: 0.3.1 unique-string@2.0.0: @@ -17346,87 +18167,61 @@ snapshots: universalify@2.0.1: {} - unocss@66.6.4(@unocss/webpack@66.6.4)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): + unocss@66.6.7(@unocss/webpack@66.6.7)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): dependencies: - '@unocss/cli': 66.6.4 - '@unocss/core': 66.6.4 - '@unocss/preset-attributify': 66.6.4 - '@unocss/preset-icons': 66.6.4 - '@unocss/preset-mini': 66.6.4 - '@unocss/preset-tagify': 66.6.4 - '@unocss/preset-typography': 66.6.4 - '@unocss/preset-uno': 66.6.4 - '@unocss/preset-web-fonts': 66.6.4 - '@unocss/preset-wind': 66.6.4 - '@unocss/preset-wind3': 66.6.4 - '@unocss/preset-wind4': 66.6.4 - '@unocss/transformer-attributify-jsx': 66.6.4 - '@unocss/transformer-compile-class': 66.6.4 - '@unocss/transformer-directives': 66.6.4 - '@unocss/transformer-variant-group': 66.6.4 - '@unocss/vite': 66.6.4(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + '@unocss/cli': 66.6.7 + '@unocss/core': 66.6.7 + '@unocss/preset-attributify': 66.6.7 + '@unocss/preset-icons': 66.6.7 + '@unocss/preset-mini': 66.6.7 + '@unocss/preset-tagify': 66.6.7 + '@unocss/preset-typography': 66.6.7 + '@unocss/preset-uno': 66.6.7 + '@unocss/preset-web-fonts': 66.6.7 + '@unocss/preset-wind': 66.6.7 + '@unocss/preset-wind3': 66.6.7 + '@unocss/preset-wind4': 66.6.7 + '@unocss/transformer-attributify-jsx': 66.6.7 + '@unocss/transformer-compile-class': 66.6.7 + '@unocss/transformer-directives': 66.6.7 + '@unocss/transformer-variant-group': 66.6.7 + '@unocss/vite': 66.6.7(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) optionalDependencies: - '@unocss/webpack': 66.6.4 + '@unocss/webpack': 66.6.7 transitivePeerDependencies: - vite - unplugin-utils@0.2.5: - dependencies: - pathe: 2.0.3 - picomatch: 4.0.3 - unplugin-utils@0.3.1: dependencies: pathe: 2.0.3 picomatch: 4.0.3 - unplugin-vue-components@31.0.0(@nuxt/kit@3.21.1(magicast@0.5.2))(vue@3.5.29(typescript@5.9.3)): + unplugin-vue-components@32.0.0(@nuxt/kit@3.21.1(magicast@0.5.2))(vue@3.5.29(typescript@5.9.3)): dependencies: chokidar: 5.0.0 local-pkg: 1.1.2 magic-string: 0.30.21 - mlly: 1.8.0 + mlly: 1.8.2 obug: 2.1.1 picomatch: 4.0.3 tinyglobby: 0.2.15 - unplugin: 2.3.11 + unplugin: 3.0.0 unplugin-utils: 0.3.1 vue: 3.5.29(typescript@5.9.3) optionalDependencies: '@nuxt/kit': 3.21.1(magicast@0.5.2) - unplugin-vue-router@0.19.2(@vue/compiler-sfc@3.5.29)(vue-router@4.6.4(vue@3.5.29(typescript@5.9.3)))(vue@3.5.29(typescript@5.9.3)): - dependencies: - '@babel/generator': 7.28.5 - '@vue-macros/common': 3.1.1(vue@3.5.29(typescript@5.9.3)) - '@vue/compiler-sfc': 3.5.29 - '@vue/language-core': 3.2.5 - ast-walker-scope: 0.8.3 - chokidar: 5.0.0 - json5: 2.2.3 - local-pkg: 1.1.2 - magic-string: 0.30.21 - mlly: 1.8.0 - muggle-string: 0.4.1 - pathe: 2.0.3 - picomatch: 4.0.3 - scule: 1.3.0 - tinyglobby: 0.2.15 - unplugin: 2.3.11 - unplugin-utils: 0.3.1 - yaml: 2.8.2 - optionalDependencies: - vue-router: 4.6.4(vue@3.5.29(typescript@5.9.3)) - transitivePeerDependencies: - - vue - - unplugin@2.3.11: + unplugin@3.0.0: dependencies: '@jridgewell/remapping': 2.3.5 - acorn: 8.15.0 picomatch: 4.0.3 webpack-virtual-modules: 0.6.2 + unrouting@0.1.7: + dependencies: + escape-string-regexp: 5.0.0 + ufo: 1.6.3 + unrs-resolver@1.11.1: dependencies: napi-postinstall: 0.3.4 @@ -17470,8 +18265,8 @@ snapshots: anymatch: 3.1.3 chokidar: 5.0.0 destr: 2.0.5 - h3: 1.15.5 - lru-cache: 11.2.2 + h3: 1.15.10 + lru-cache: 11.2.6 node-fetch-native: 1.6.7 ofetch: 1.5.1 ufo: 1.6.3 @@ -17500,7 +18295,7 @@ snapshots: exsolve: 1.0.8 knitwork: 1.3.0 magic-string: 0.30.21 - mlly: 1.8.0 + mlly: 1.8.2 pathe: 2.0.3 pkg-types: 2.3.0 @@ -17547,28 +18342,29 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.3 - vite-dev-rpc@1.1.0(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): + vite-dev-rpc@1.1.0(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): dependencies: birpc: 2.8.0 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) - vite-hot-client: 2.1.0(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite-hot-client: 2.1.0(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) - vite-hot-client@2.1.0(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): + vite-hot-client@2.1.0(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): dependencies: - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) - vite-node@5.3.0(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2): + vite-node@5.3.0(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2): dependencies: cac: 6.7.14 es-module-lexer: 2.0.0 obug: 2.1.1 pathe: 2.0.3 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) transitivePeerDependencies: - '@types/node' + - '@vitejs/devtools' + - esbuild - jiti - less - - lightningcss - sass - sass-embedded - stylus @@ -17577,134 +18373,144 @@ snapshots: - tsx - yaml - vite-plugin-checker@0.12.0(eslint@10.0.2(jiti@2.6.1))(optionator@0.9.4)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.5(typescript@5.9.3)): + vite-plugin-checker@0.12.0(eslint@10.1.0(jiti@2.6.1))(optionator@0.9.4)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue-tsc@3.2.6(typescript@5.9.3)): dependencies: - '@babel/code-frame': 7.27.1 + '@babel/code-frame': 7.29.0 chokidar: 4.0.3 npm-run-path: 6.0.0 picocolors: 1.1.1 picomatch: 4.0.3 tiny-invariant: 1.3.3 tinyglobby: 0.2.15 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) vscode-uri: 3.1.0 optionalDependencies: - eslint: 10.0.2(jiti@2.6.1) + eslint: 10.1.0(jiti@2.6.1) optionator: 0.9.4 typescript: 5.9.3 - vue-tsc: 3.2.5(typescript@5.9.3) + vue-tsc: 3.2.6(typescript@5.9.3) - vite-plugin-inspect@11.3.3(@nuxt/kit@3.21.1(magicast@0.5.2))(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): + vite-plugin-inspect@11.3.3(@nuxt/kit@3.21.1(magicast@0.5.2))(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): dependencies: ansis: 4.2.0 debug: 4.4.3 error-stack-parser-es: 1.0.5 ohash: 2.0.11 open: 10.2.0 - perfect-debounce: 2.0.0 + perfect-debounce: 2.1.0 sirv: 3.0.2 unplugin-utils: 0.3.1 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) - vite-dev-rpc: 1.1.0(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite-dev-rpc: 1.1.0(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) optionalDependencies: '@nuxt/kit': 3.21.1(magicast@0.5.2) transitivePeerDependencies: - supports-color - vite-plugin-inspect@11.3.3(@nuxt/kit@4.3.1(magicast@0.5.2))(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): + vite-plugin-inspect@11.3.3(@nuxt/kit@4.4.2(magicast@0.5.2))(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): dependencies: ansis: 4.2.0 debug: 4.4.3 error-stack-parser-es: 1.0.5 ohash: 2.0.11 open: 10.2.0 - perfect-debounce: 2.0.0 + perfect-debounce: 2.1.0 sirv: 3.0.2 unplugin-utils: 0.3.1 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) - vite-dev-rpc: 1.1.0(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite-dev-rpc: 1.1.0(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) optionalDependencies: - '@nuxt/kit': 4.3.1(magicast@0.5.2) + '@nuxt/kit': 4.4.2(magicast@0.5.2) transitivePeerDependencies: - supports-color - vite-plugin-pwa@1.2.0(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): + vite-plugin-pwa@1.2.0(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): dependencies: debug: 4.4.3 pretty-bytes: 6.1.1 tinyglobby: 0.2.15 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) workbox-build: 7.4.0 workbox-window: 7.4.0 transitivePeerDependencies: - '@types/babel__core' - supports-color - vite-plugin-vue-devtools@8.0.7(@nuxt/kit@3.21.1(magicast@0.5.2))(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)): + vite-plugin-vue-devtools@8.1.1(@nuxt/kit@3.21.1(magicast@0.5.2))(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)): dependencies: - '@vue/devtools-core': 8.0.7(vue@3.5.29(typescript@5.9.3)) - '@vue/devtools-kit': 8.0.7 - '@vue/devtools-shared': 8.0.7 + '@vue/devtools-core': 8.1.1(vue@3.5.29(typescript@5.9.3)) + '@vue/devtools-kit': 8.1.1 + '@vue/devtools-shared': 8.1.1 sirv: 3.0.2 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) - vite-plugin-inspect: 11.3.3(@nuxt/kit@3.21.1(magicast@0.5.2))(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) - vite-plugin-vue-inspector: 5.3.2(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite-plugin-inspect: 11.3.3(@nuxt/kit@3.21.1(magicast@0.5.2))(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + vite-plugin-vue-inspector: 5.3.2(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) transitivePeerDependencies: - '@nuxt/kit' - supports-color - vue - vite-plugin-vue-inspector@5.3.2(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): + vite-plugin-vue-inspector@5.3.2(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): dependencies: - '@babel/core': 7.28.5 - '@babel/plugin-proposal-decorators': 7.28.0(@babel/core@7.28.5) - '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.28.5) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.28.5) - '@babel/plugin-transform-typescript': 7.28.5(@babel/core@7.28.5) - '@vue/babel-plugin-jsx': 1.5.0(@babel/core@7.28.5) - '@vue/compiler-dom': 3.5.24 + '@babel/core': 7.29.0 + '@babel/plugin-proposal-decorators': 7.28.0(@babel/core@7.29.0) + '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.29.0) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.29.0) + '@babel/plugin-transform-typescript': 7.28.6(@babel/core@7.29.0) + '@vue/babel-plugin-jsx': 1.5.0(@babel/core@7.29.0) + '@vue/compiler-dom': 3.5.29 kolorist: 1.8.0 magic-string: 0.30.21 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) transitivePeerDependencies: - supports-color - vite-plugin-vue-tracer@1.2.0(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)): + vite-plugin-vue-tracer@1.3.0(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)): dependencies: estree-walker: 3.0.3 exsolve: 1.0.8 magic-string: 0.30.21 pathe: 2.0.3 source-map-js: 1.2.1 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) vue: 3.5.29(typescript@5.9.3) - vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2): + vite-plugin-vue-tracer@1.3.0(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.30(typescript@5.9.3)): dependencies: - esbuild: 0.27.0 - fdir: 6.5.0(picomatch@4.0.3) + estree-walker: 3.0.3 + exsolve: 1.0.8 + magic-string: 0.30.21 + pathe: 2.0.3 + source-map-js: 1.2.1 + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vue: 3.5.30(typescript@5.9.3) + + vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2): + dependencies: + lightningcss: 1.32.0 picomatch: 4.0.3 - postcss: 8.5.6 - rollup: 4.53.3 + postcss: 8.5.8 + rolldown: 1.0.0-rc.11 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 25.3.3 + '@types/node': 25.5.0 + esbuild: 0.27.3 fsevents: 2.3.3 jiti: 2.6.1 - sass: 1.97.3 + sass: 1.98.0 terser: 5.44.1 tsx: 4.21.0 yaml: 2.8.2 - vitepress-plugin-group-icons@1.7.1(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): + vitepress-plugin-group-icons@1.7.1(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): dependencies: '@iconify-json/logos': 1.2.10 '@iconify-json/vscode-icons': 1.2.44 '@iconify/utils': 3.1.0 optionalDependencies: - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) - vitepress@2.0.0-alpha.16(@types/node@25.3.3)(change-case@5.4.4)(fuse.js@7.1.0)(jiti@2.6.1)(oxc-minify@0.112.0)(postcss@8.5.6)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2): + vitepress@2.0.0-alpha.17(@types/node@25.5.0)(axios@1.13.6)(change-case@5.4.4)(esbuild@0.27.3)(fuse.js@7.1.0)(jiti@2.6.1)(oxc-minify@0.117.0)(postcss@8.5.8)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2): dependencies: '@docsearch/css': 4.6.0 '@docsearch/js': 4.6.0 @@ -17714,32 +18520,33 @@ snapshots: '@shikijs/transformers': 3.23.0 '@shikijs/types': 3.23.0 '@types/markdown-it': 14.1.2 - '@vitejs/plugin-vue': 6.0.4(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)) + '@vitejs/plugin-vue': 6.0.4(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.29(typescript@5.9.3)) '@vue/devtools-api': 8.0.5 '@vue/shared': 3.5.29 '@vueuse/core': 14.2.1(vue@3.5.29(typescript@5.9.3)) - '@vueuse/integrations': 14.2.1(change-case@5.4.4)(focus-trap@7.8.0)(fuse.js@7.1.0)(vue@3.5.29(typescript@5.9.3)) - focus-trap: 7.8.0 + '@vueuse/integrations': 14.2.1(axios@1.13.6)(change-case@5.4.4)(focus-trap@8.0.1)(fuse.js@7.1.0)(vue@3.5.29(typescript@5.9.3)) + focus-trap: 8.0.1 mark.js: 8.11.1 minisearch: 7.2.0 shiki: 3.23.0 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) vue: 3.5.29(typescript@5.9.3) optionalDependencies: - oxc-minify: 0.112.0 - postcss: 8.5.6 + oxc-minify: 0.117.0 + postcss: 8.5.8 transitivePeerDependencies: - '@types/node' + - '@vitejs/devtools' - async-validator - axios - change-case - drauu + - esbuild - fuse.js - idb-keyval - jiti - jwt-decode - less - - lightningcss - nprogress - qrcode - sass @@ -17753,9 +18560,9 @@ snapshots: - universal-cookie - yaml - vitest-environment-nuxt@1.0.1(@vue/test-utils@2.4.6)(jsdom@28.1.0(@noble/hashes@1.8.0))(magicast@0.5.2)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.0.18(@types/node@25.3.3)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@1.8.0))(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): + vitest-environment-nuxt@1.0.1(@vue/test-utils@2.4.6)(jsdom@29.0.1(@noble/hashes@1.8.0))(magicast@0.5.2)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.1(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(jsdom@29.0.1(@noble/hashes@1.8.0))(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)): dependencies: - '@nuxt/test-utils': 4.0.0(@vue/test-utils@2.4.6)(jsdom@28.1.0(@noble/hashes@1.8.0))(magicast@0.5.2)(typescript@5.9.3)(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.0.18(@types/node@25.3.3)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@1.8.0))(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + '@nuxt/test-utils': 4.0.0(@vue/test-utils@2.4.6)(jsdom@29.0.1(@noble/hashes@1.8.0))(magicast@0.5.2)(typescript@5.9.3)(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.1(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(jsdom@29.0.1(@noble/hashes@1.8.0))(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) transitivePeerDependencies: - '@cucumber/cucumber' - '@jest/globals' @@ -17772,35 +18579,36 @@ snapshots: - vite - vitest - vitest@4.0.18(@types/node@25.3.3)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@1.8.0))(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2): + vitest@4.1.1(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(jsdom@29.0.1(@noble/hashes@1.8.0))(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2): dependencies: - '@vitest/expect': 4.0.18 - '@vitest/mocker': 4.0.18(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) - '@vitest/pretty-format': 4.0.18 - '@vitest/runner': 4.0.18 - '@vitest/snapshot': 4.0.18 - '@vitest/spy': 4.0.18 - '@vitest/utils': 4.0.18 - es-module-lexer: 1.7.0 - expect-type: 1.2.2 + '@vitest/expect': 4.1.1 + '@vitest/mocker': 4.1.1(vite@8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)) + '@vitest/pretty-format': 4.1.1 + '@vitest/runner': 4.1.1 + '@vitest/snapshot': 4.1.1 + '@vitest/spy': 4.1.1 + '@vitest/utils': 4.1.1 + es-module-lexer: 2.0.0 + expect-type: 1.3.0 magic-string: 0.30.21 obug: 2.1.1 pathe: 2.0.3 picomatch: 4.0.3 - std-env: 3.10.0 + std-env: 4.0.0 tinybench: 2.9.0 tinyexec: 1.0.2 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(sass@1.97.3)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.2(@types/node@25.5.0)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 25.3.3 - jsdom: 28.1.0(@noble/hashes@1.8.0) + '@types/node': 25.5.0 + jsdom: 29.0.1(@noble/hashes@1.8.0) transitivePeerDependencies: + - '@vitejs/devtools' + - esbuild - jiti - less - - lightningcss - msw - sass - sass-embedded @@ -17814,7 +18622,7 @@ snapshots: vue-about-me@1.4.0(typescript@5.9.3): dependencies: - sass: 1.97.3 + sass: 1.98.0 vue: 3.5.24(typescript@5.9.3) transitivePeerDependencies: - typescript @@ -17827,15 +18635,15 @@ snapshots: vue-devtools-stub@0.1.0: {} - vue-eslint-parser@10.4.0(eslint@10.0.2(jiti@2.6.1)): + vue-eslint-parser@10.4.0(eslint@10.1.0(jiti@2.6.1)): dependencies: debug: 4.4.3 - eslint: 10.0.2(jiti@2.6.1) - eslint-scope: 8.4.0 - eslint-visitor-keys: 4.2.1 - espree: 10.4.0 - esquery: 1.6.0 - semver: 7.7.3 + eslint: 10.1.0(jiti@2.6.1) + eslint-scope: 9.1.1 + eslint-visitor-keys: 5.0.1 + espree: 11.1.1 + esquery: 1.7.0 + semver: 7.7.4 transitivePeerDependencies: - supports-color @@ -17847,15 +18655,34 @@ snapshots: dependencies: vue: 3.5.29(typescript@5.9.3) - vue-router@4.6.4(vue@3.5.29(typescript@5.9.3)): + vue-router@5.0.4(@vue/compiler-sfc@3.5.30)(pinia@3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)))(vue@3.5.30(typescript@5.9.3)): dependencies: - '@vue/devtools-api': 6.6.4 - vue: 3.5.29(typescript@5.9.3) + '@babel/generator': 7.29.1 + '@vue-macros/common': 3.1.1(vue@3.5.30(typescript@5.9.3)) + '@vue/devtools-api': 8.1.1 + ast-walker-scope: 0.8.3 + chokidar: 5.0.0 + json5: 2.2.3 + local-pkg: 1.1.2 + magic-string: 0.30.21 + mlly: 1.8.2 + muggle-string: 0.4.1 + pathe: 2.0.3 + picomatch: 4.0.3 + scule: 1.3.0 + tinyglobby: 0.2.15 + unplugin: 3.0.0 + unplugin-utils: 0.3.1 + vue: 3.5.30(typescript@5.9.3) + yaml: 2.8.2 + optionalDependencies: + '@vue/compiler-sfc': 3.5.30 + pinia: 3.0.4(typescript@5.9.3)(vue@3.5.29(typescript@5.9.3)) - vue-tsc@3.2.5(typescript@5.9.3): + vue-tsc@3.2.6(typescript@5.9.3): dependencies: '@volar/typescript': 2.4.28 - '@vue/language-core': 3.2.5 + '@vue/language-core': 3.2.6 typescript: 5.9.3 vue-virtual-scroller@2.0.0-beta.8(vue@3.5.29(typescript@5.9.3)): @@ -17885,6 +18712,16 @@ snapshots: optionalDependencies: typescript: 5.9.3 + vue@3.5.30(typescript@5.9.3): + dependencies: + '@vue/compiler-dom': 3.5.30 + '@vue/compiler-sfc': 3.5.30 + '@vue/runtime-dom': 3.5.30 + '@vue/server-renderer': 3.5.30(vue@3.5.30(typescript@5.9.3)) + '@vue/shared': 3.5.30 + optionalDependencies: + typescript: 5.9.3 + w3c-xmlserializer@5.0.0: dependencies: xml-name-validator: 5.0.0 @@ -17903,7 +18740,7 @@ snapshots: whatwg-url@16.0.1(@noble/hashes@1.8.0): dependencies: - '@exodus/bytes': 1.14.1(@noble/hashes@1.8.0) + '@exodus/bytes': 1.15.0(@noble/hashes@1.8.0) tr46: 6.0.0 webidl-conversions: 8.0.1 transitivePeerDependencies: @@ -17965,9 +18802,9 @@ snapshots: dependencies: isexe: 2.0.0 - which@5.0.0: + which@6.0.1: dependencies: - isexe: 3.1.1 + isexe: 4.0.0 why-is-node-running@2.3.0: dependencies: @@ -18160,8 +18997,6 @@ snapshots: eslint-visitor-keys: 5.0.1 yaml: 2.8.2 - yaml@2.8.1: {} - yaml@2.8.2: {} yargs-parser@21.1.1: {} @@ -18201,6 +19036,14 @@ snapshots: '@poppinss/exception': 1.2.2 error-stack-parser-es: 1.0.5 + youch@4.1.0: + dependencies: + '@poppinss/colors': 4.1.6 + '@poppinss/dumper': 0.7.0 + '@speed-highlight/core': 1.2.15 + cookie-es: 2.0.0 + youch-core: 0.3.3 + youch@4.1.0-beta.13: dependencies: '@poppinss/colors': 4.1.5 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index a51d335..955d5dc 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,10 +1,11 @@ shellEmulator: true -trustPolicy: no-downgrade +# eslint-disable-next-line pnpm/yaml-enforce-settings +trustPolicy: accept packages: - docs - - scripts + - packages/* onlyBuiltDependencies: - '@parcel/watcher' diff --git a/scripts/config.ts b/scripts/config.ts deleted file mode 100644 index 47df53b..0000000 --- a/scripts/config.ts +++ /dev/null @@ -1,15 +0,0 @@ -import path, { dirname } from 'node:path' -import { fileURLToPath } from 'node:url' - -const __dirname = dirname(fileURLToPath(import.meta.url)) -const recipeCsvFile = path.resolve(__dirname, '../app/data/recipe.csv') -const recipeJsonFile = path.resolve(__dirname, '../app/data/recipe.json') -const incompatibleFoodsCsvFile = path.resolve(__dirname, '../app/data/incompatible-foods.csv') -const incompatibleFoodsJsonFile = path.resolve(__dirname, '../app/data/incompatible-foods.json') - -export const config = { - recipeCsvFile, - recipeJsonFile, - incompatibleFoodsCsvFile, - incompatibleFoodsJsonFile, -} diff --git a/scripts/convert.ts b/scripts/convert.ts deleted file mode 100644 index b8a6e0f..0000000 --- a/scripts/convert.ts +++ /dev/null @@ -1,112 +0,0 @@ -import type { IncompatibleRule, RecipeItem, Recipes } from '../app/types' -// convert csv to json -import fs from 'node:fs' -import consola from 'consola' - -import { config } from './config' - -function run() { - const csvData = fs.readFileSync(config.recipeCsvFile, 'utf-8') - const lines = csvData.split(/\r?\n/) - - const headers = 'name,stuff,bv,difficulty,tags,methods,tools,' - if (lines.length < 2) { - throw new Error('No data in csv file') - } - - if (lines[0]?.trim() !== headers) { - consola.warn(`Headers Changed: ${lines[0]}`) - return - } - - const recipeJson: Recipes = [] - const sep = '、' - - lines.slice(1).forEach((line) => { - if (line) { - const attrs = line.split(',') - if (attrs.length < 7) { - consola.warn(`Invalid line: ${line}`) - return - } - const stuff = attrs[1]?.trim().split(sep) || [] - recipeJson.push({ - name: attrs[0]?.trim() || '', - stuff, - // link: attrs[2].trim(), - // bv id - bv: attrs[2]?.trim().replace('https://www.bilibili.com/video/', ''), - difficulty: attrs[3] && attrs[3].trim() as RecipeItem['difficulty'], - tags: attrs[4] ? attrs[4].trim().split(sep) : [], - methods: attrs[5] ? (attrs[5].trim().split(sep)) as RecipeItem['methods'] : [], - tools: attrs[6] ? attrs[6].trim().split(sep) : [], - }) - } - }) - - fs.writeFileSync(config.recipeJsonFile, JSON.stringify(recipeJson)) - consola.success(`Generate file: ${config.recipeJsonFile}`) -} - -/** - * 转换食物相克数据 - */ -function convertIncompatibleFoods() { - consola.info('---') - consola.info('Convert Incompatible Foods Data...') - - try { - const csvData = fs.readFileSync(config.incompatibleFoodsCsvFile, 'utf-8') - const lines = csvData.split(/\r?\n/) - - const headers = 'foodA,foodB,reason' - if (lines.length < 2) { - throw new Error('No data in incompatible foods csv file') - } - - if (lines[0]?.trim() !== headers) { - consola.warn(`Headers Changed: ${lines[0]}`) - return - } - - const incompatibleRules: IncompatibleRule[] = [] - - lines.slice(1).forEach((line) => { - if (line.trim()) { - const attrs = line.split(',') - if (attrs.length < 3) { - consola.warn(`Invalid line: ${line}`) - return - } - - const foodA = attrs[0]?.trim() - const foodB = attrs[1]?.trim() - const reason = attrs[2]?.trim() - - if (!foodA || !foodB || !reason) { - consola.warn(`Missing required field(s) in line: ${line}`) - return - } - - incompatibleRules.push({ - foodA, - foodB, - reason, - }) - } - }) - - fs.writeFileSync(config.incompatibleFoodsJsonFile, JSON.stringify(incompatibleRules, null, 2)) - consola.success(`Generate file: ${config.incompatibleFoodsJsonFile}`) - } - catch (error) { - consola.error('Failed to convert incompatible foods data:', error) - } -} - -function main() { - run() - convertIncompatibleFoods() -} - -main() diff --git a/scripts/git.ts b/scripts/git.ts deleted file mode 100644 index 6c64b38..0000000 --- a/scripts/git.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { simpleGit } from 'simple-git' - -/** - * get git repo latest commit - */ -export async function getLatestCommit() { - const git = simpleGit() - - try { - const log = await git.log({ maxCount: 1 }) - return log.latest - } - catch (error) { - console.error('Error fetching latest commit:', error) - return null - } -} diff --git a/scripts/package.json b/scripts/package.json deleted file mode 100644 index 35c3a92..0000000 --- a/scripts/package.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "@cook/scripts", - "version": "0.0.1", - "scripts": { - "convert": "tsx convert.ts" - }, - "devDependencies": { - "simple-git": "^3.32.3", - "tsx": "^4.21.0" - } -} diff --git a/vitest.config.ts b/vitest.config.ts index 6b776b6..5f12f38 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -2,7 +2,7 @@ import { defineConfig } from 'vitest/config' export default defineConfig({ test: { - include: ['test/**/*.test.ts'], + include: ['test/**/*.test.ts', 'packages/**/src/**/*.test.ts'], environment: 'jsdom', server: { deps: { @@ -15,5 +15,18 @@ export default defineConfig({ alias: { '~': './', }, + + coverage: { + provider: 'v8', + reporter: ['text', 'json', 'html'], + include: ['app/**/*.{ts,vue}', 'packages/**/src/**/*.ts'], + exclude: [ + 'test/**', + '**/*.test.ts', + '**/*.d.ts', + '**/types.ts', + '**/*.config.ts', + ], + }, }, })