diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml
new file mode 100644
index 0000000..fe5bd3f
--- /dev/null
+++ b/.github/workflows/deploy-docs.yml
@@ -0,0 +1,55 @@
+name: Deploy Docs
+
+on:
+ push:
+ branches: [main]
+ paths:
+ - 'docs/**'
+ - '.github/workflows/deploy-docs.yml'
+ workflow_dispatch:
+
+permissions:
+ contents: read
+ pages: write
+ id-token: write
+
+concurrency:
+ group: pages
+ cancel-in-progress: false
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+
+ - uses: pnpm/action-setup@v4
+
+ - uses: actions/setup-node@v4
+ with:
+ node-version: 20
+ cache: pnpm
+
+ - run: pnpm install
+
+ - name: Build docs
+ run: pnpm docs:build
+
+ - uses: actions/configure-pages@v4
+
+ - uses: actions/upload-pages-artifact@v3
+ with:
+ path: docs/.vitepress/dist
+
+ deploy:
+ environment:
+ name: github-pages
+ url: ${{ steps.deployment.outputs.page_url }}
+ needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - name: Deploy to GitHub Pages
+ id: deployment
+ uses: actions/deploy-pages@v4
diff --git a/.gitignore b/.gitignore
index f539639..1846f89 100644
--- a/.gitignore
+++ b/.gitignore
@@ -49,8 +49,11 @@ ceshi/
# Local spec workflows (OpenSpec 本地数据)
.spec-workflow/
openspec/
-docs/
AGENTS.md
+
+# VitePress build output
+docs/.vitepress/dist/
+docs/.vitepress/cache/
WINDOWS_FIX.md
# Temp verification/notes
diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts
new file mode 100644
index 0000000..9fb6fc5
--- /dev/null
+++ b/docs/.vitepress/config.mts
@@ -0,0 +1,126 @@
+import { defineConfig } from 'vitepress'
+
+export default defineConfig({
+ title: 'CCG',
+ description: 'Claude + Codex + Gemini 多模型协作开发系统',
+
+ base: '/ccg-workflow/',
+ lastUpdated: true,
+ cleanUrls: true,
+
+ head: [
+ ['link', { rel: 'icon', type: 'image/svg+xml', href: '/ccg-workflow/logo.svg' }],
+ ],
+
+ locales: {
+ root: {
+ label: '简体中文',
+ lang: 'zh-CN',
+ themeConfig: {
+ nav: [
+ { text: '指南', link: '/guide/getting-started' },
+ { text: '命令', link: '/guide/commands' },
+ {
+ text: '更多',
+ items: [
+ { text: '工作流', link: '/guide/workflows' },
+ { text: 'MCP 配置', link: '/guide/mcp' },
+ { text: '配置', link: '/guide/configuration' },
+ ],
+ },
+ ],
+ sidebar: [
+ {
+ text: '入门',
+ items: [
+ { text: '快速开始', link: '/guide/getting-started' },
+ { text: '命令参考', link: '/guide/commands' },
+ ],
+ },
+ {
+ text: '进阶',
+ items: [
+ { text: '工作流指南', link: '/guide/workflows' },
+ { text: 'MCP 配置', link: '/guide/mcp' },
+ { text: '配置说明', link: '/guide/configuration' },
+ ],
+ },
+ ],
+ editLink: {
+ pattern: 'https://github.com/fengshao1227/ccg-workflow/edit/main/docs/:path',
+ text: '在 GitHub 上编辑此页',
+ },
+ footer: {
+ message: '基于 MIT 许可发布',
+ copyright: 'Copyright © 2025-present CCG Contributors',
+ },
+ docFooter: {
+ prev: '上一页',
+ next: '下一页',
+ },
+ outline: {
+ label: '页面导航',
+ },
+ lastUpdated: {
+ text: '最后更新于',
+ },
+ returnToTopLabel: '回到顶部',
+ sidebarMenuLabel: '菜单',
+ darkModeSwitchLabel: '主题',
+ },
+ },
+ en: {
+ label: 'English',
+ lang: 'en',
+ description: 'Claude + Codex + Gemini Multi-Model Collaboration System',
+ themeConfig: {
+ nav: [
+ { text: 'Guide', link: '/en/guide/getting-started' },
+ { text: 'Commands', link: '/en/guide/commands' },
+ {
+ text: 'More',
+ items: [
+ { text: 'Workflows', link: '/en/guide/workflows' },
+ { text: 'MCP Config', link: '/en/guide/mcp' },
+ { text: 'Configuration', link: '/en/guide/configuration' },
+ ],
+ },
+ ],
+ sidebar: [
+ {
+ text: 'Getting Started',
+ items: [
+ { text: 'Quick Start', link: '/en/guide/getting-started' },
+ { text: 'Command Reference', link: '/en/guide/commands' },
+ ],
+ },
+ {
+ text: 'Advanced',
+ items: [
+ { text: 'Workflow Guide', link: '/en/guide/workflows' },
+ { text: 'MCP Configuration', link: '/en/guide/mcp' },
+ { text: 'Configuration', link: '/en/guide/configuration' },
+ ],
+ },
+ ],
+ editLink: {
+ pattern: 'https://github.com/fengshao1227/ccg-workflow/edit/main/docs/:path',
+ text: 'Edit this page on GitHub',
+ },
+ footer: {
+ message: 'Released under the MIT License',
+ copyright: 'Copyright © 2025-present CCG Contributors',
+ },
+ },
+ },
+ },
+
+ themeConfig: {
+ socialLinks: [
+ { icon: 'github', link: 'https://github.com/fengshao1227/ccg-workflow' },
+ ],
+ search: {
+ provider: 'local',
+ },
+ },
+})
diff --git a/docs/en/guide/commands.md b/docs/en/guide/commands.md
new file mode 100644
index 0000000..b909c40
--- /dev/null
+++ b/docs/en/guide/commands.md
@@ -0,0 +1,158 @@
+# Command Reference
+
+CCG provides 28 slash commands covering the full development lifecycle. All commands are accessed via `/ccg:*`.
+
+## Development Workflow
+
+| Command | Description | Model |
+|---------|-------------|-------|
+| `/ccg:workflow` | Full 6-phase workflow (research → ideate → plan → execute → optimize → review) | Codex + Gemini |
+| `/ccg:plan` | Multi-model collaborative planning (Phase 1-2) | Codex + Gemini |
+| `/ccg:execute` | Multi-model collaborative execution (Phase 3-5) | Codex + Gemini + Claude |
+| `/ccg:codex-exec` | Codex full execution (plan → code → review) | Codex + multi-model review |
+| `/ccg:feat` | Smart feature development | Auto-routed |
+| `/ccg:frontend` | Frontend tasks (fast mode) | Gemini |
+| `/ccg:backend` | Backend tasks (fast mode) | Codex |
+
+### Usage Examples
+
+```bash
+# Full workflow
+/ccg:workflow implement user authentication
+
+# Planning only (no execution)
+/ccg:plan implement user authentication
+
+# Frontend fast mode
+/ccg:frontend optimize login page responsive layout
+```
+
+## Analysis & Quality
+
+| Command | Description | Model |
+|---------|-------------|-------|
+| `/ccg:analyze` | Technical analysis | Codex + Gemini |
+| `/ccg:debug` | Problem diagnosis + fix | Codex + Gemini |
+| `/ccg:optimize` | Performance optimization | Codex + Gemini |
+| `/ccg:test` | Test generation | Auto-routed |
+| `/ccg:review` | Code review (auto git diff) | Codex + Gemini |
+| `/ccg:enhance` | Prompt enhancement | Built-in |
+
+### Usage Examples
+
+```bash
+# No args — auto-review recent changes
+/ccg:review
+
+# Analyze a specific module
+/ccg:analyze src/auth/ security
+
+# Generate tests
+/ccg:test src/utils/validator.ts
+```
+
+## OPSX Spec-Driven
+
+Integrates [OPSX](https://github.com/fission-ai/opsx) architecture to turn requirements into constraints.
+
+| Command | Description |
+|---------|-------------|
+| `/ccg:spec-init` | Initialize OPSX environment |
+| `/ccg:spec-research` | Requirements → Constraints |
+| `/ccg:spec-plan` | Constraints → Zero-decision plan |
+| `/ccg:spec-impl` | Execute plan + archive |
+| `/ccg:spec-review` | Dual-model cross-review |
+
+### Usage Examples
+
+```bash
+/ccg:spec-init
+/ccg:spec-research implement user auth
+/ccg:spec-plan
+/ccg:spec-impl
+/ccg:spec-review
+```
+
+::: tip
+You can `/clear` between phases — state is persisted in the `openspec/` directory.
+:::
+
+## Agent Teams (v1.7.60+)
+
+Leverage Claude Code Agent Teams to spawn multiple Builder teammates for parallel coding.
+
+| Command | Description |
+|---------|-------------|
+| `/ccg:team-research` | Requirements → constraints (parallel exploration) |
+| `/ccg:team-plan` | Constraints → parallel implementation plan |
+| `/ccg:team-exec` | Spawn Builder teammates for parallel coding |
+| `/ccg:team-review` | Dual-model cross-review |
+
+::: warning Prerequisite
+Enable Agent Teams in `settings.json`:
+
+```json
+{
+ "env": {
+ "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
+ }
+}
+```
+:::
+
+### Usage Examples
+
+```bash
+/ccg:team-research implement kanban API
+# /clear
+/ccg:team-plan kanban-api
+# /clear
+/ccg:team-exec
+# /clear
+/ccg:team-review
+```
+
+## Git Tools
+
+| Command | Description |
+|---------|-------------|
+| `/ccg:commit` | Smart commit (conventional commit format) |
+| `/ccg:rollback` | Interactive rollback |
+| `/ccg:clean-branches` | Clean merged branches |
+| `/ccg:worktree` | Worktree management |
+
+### Usage Examples
+
+```bash
+# Smart commit (auto-analyze diff)
+/ccg:commit
+
+# Interactive rollback
+/ccg:rollback
+
+# Clean merged branches (dry-run by default)
+/ccg:clean-branches
+```
+
+## Project Setup
+
+| Command | Description |
+|---------|-------------|
+| `/ccg:init` | Initialize project CLAUDE.md |
+| `/ccg:context` | Project context management (.context/ init, log, compress, history) |
+
+### Usage Examples
+
+```bash
+# Initialize project AI context
+/ccg:init
+
+# Initialize .context directory
+/ccg:context init
+
+# Log a decision
+/ccg:context log "Chose PostgreSQL for JSONB support"
+
+# View context history
+/ccg:context history
+```
diff --git a/docs/en/guide/configuration.md b/docs/en/guide/configuration.md
new file mode 100644
index 0000000..a57b91b
--- /dev/null
+++ b/docs/en/guide/configuration.md
@@ -0,0 +1,93 @@
+# Configuration
+
+## Directory Structure
+
+CCG installation layout:
+
+```
+~/.claude/
+├── commands/ccg/ # 28 slash commands
+├── agents/ccg/ # 4 sub-agents
+├── skills/ccg/ # Quality gates + multi-agent orchestration
+├── bin/codeagent-wrapper
+└── .ccg/
+ ├── config.toml # CCG configuration
+ └── prompts/
+ ├── codex/ # 6 Codex expert prompts
+ └── gemini/ # 7 Gemini expert prompts
+```
+
+## Environment Variables
+
+Configure in `~/.claude/settings.json` under `"env"`:
+
+| Variable | Description | Default | When to change |
+|----------|-------------|---------|----------------|
+| `CODEAGENT_POST_MESSAGE_DELAY` | Wait after Codex completion (sec) | `5` | Set to `1` if Codex process hangs |
+| `CODEX_TIMEOUT` | Wrapper execution timeout (sec) | `7200` | Increase for very long tasks |
+| `BASH_DEFAULT_TIMEOUT_MS` | Claude Code Bash timeout (ms) | `120000` | Increase if commands time out |
+| `BASH_MAX_TIMEOUT_MS` | Claude Code Bash max timeout (ms) | `600000` | Increase for long builds |
+
+::: details Example settings.json
+
+```json
+{
+ "env": {
+ "CODEAGENT_POST_MESSAGE_DELAY": "1",
+ "CODEX_TIMEOUT": "7200",
+ "BASH_DEFAULT_TIMEOUT_MS": "600000",
+ "BASH_MAX_TIMEOUT_MS": "3600000"
+ }
+}
+```
+:::
+
+## Fixed Configuration
+
+Since v1.7.0, the following are no longer customizable:
+
+| Setting | Fixed Value | Reason |
+|---------|------------|--------|
+| Frontend model | Gemini | Best at UI/CSS/components |
+| Backend model | Codex | Best at logic/algorithms/debugging |
+| Collaboration mode | smart | Best practice |
+| Command count | 28 | All installed |
+
+## Utilities
+
+```bash
+npx ccg-workflow menu # Select "Tools"
+```
+
+- **ccusage** — Claude Code usage analytics
+- **CCometixLine** — Status bar tool (Git + usage tracking)
+
+## FAQ
+
+### Codex CLI 0.80.0 process does not exit
+
+In `--json` mode, Codex does not automatically exit after output completion.
+
+**Fix**: Set `CODEAGENT_POST_MESSAGE_DELAY=1`.
+
+### Node 18 throws SyntaxError
+
+CCG depends on `ora@9.x`, which requires Node >= 20.
+
+**Fix**: Upgrade to Node 20+.
+
+### MCP tools not working
+
+**Fix**: Run `npx ccg-workflow diagnose-mcp` to check configuration.
+
+### Agent Teams commands unavailable
+
+**Fix**: Add to `settings.json`:
+
+```json
+{
+ "env": {
+ "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
+ }
+}
+```
diff --git a/docs/en/guide/getting-started.md b/docs/en/guide/getting-started.md
new file mode 100644
index 0000000..ba1eb85
--- /dev/null
+++ b/docs/en/guide/getting-started.md
@@ -0,0 +1,103 @@
+# Getting Started
+
+## Architecture
+
+```
+Claude Code (Orchestrator)
+ │
+ ┌───┴───┐
+ ↓ ↓
+Codex Gemini
+(Backend) (Frontend)
+ │ │
+ └───┬───┘
+ ↓
+ Unified Patch
+```
+
+External models have no write access — they only return patches, which Claude reviews before applying.
+
+## Prerequisites
+
+| Dependency | Required | Notes |
+|------------|----------|-------|
+| **Node.js 20+** | Yes | `ora@9.x` requires Node >= 20 |
+| **Claude Code CLI** | Yes | [Install guide](#install-claude-code) |
+| **jq** | Yes | Used for auto-authorization hook |
+| **Codex CLI** | No | Enables backend routing |
+| **Gemini CLI** | No | Enables frontend routing |
+
+## Installation
+
+```bash
+npx ccg-workflow
+```
+
+On first run, CCG prompts you to select a language (English / Chinese). This preference is saved for all future sessions.
+
+### Install jq
+
+::: code-group
+
+```bash [macOS]
+brew install jq
+```
+
+```bash [Debian / Ubuntu]
+sudo apt install jq
+```
+
+```bash [RHEL / CentOS]
+sudo yum install jq
+```
+
+```bash [Windows]
+choco install jq
+# or
+scoop install jq
+```
+
+:::
+
+### Install Claude Code
+
+```bash
+npx ccg-workflow menu # Select "Install Claude Code"
+```
+
+Supports: npm, homebrew, curl, powershell, cmd.
+
+## Verify Installation
+
+After installation, type in Claude Code:
+
+```
+/ccg:workflow hello
+```
+
+If you see multi-model collaboration output, the installation is successful.
+
+## Update
+
+```bash
+# npx users
+npx ccg-workflow@latest
+
+# npm global users
+npm install -g ccg-workflow@latest
+```
+
+## Uninstall
+
+```bash
+npx ccg-workflow # Select "Uninstall"
+
+# npm global users need this extra step
+npm uninstall -g ccg-workflow
+```
+
+## Next Steps
+
+- [Command Reference](/en/guide/commands) — See all 28 commands
+- [Workflow Guide](/en/guide/workflows) — Learn the three main workflows
+- [MCP Configuration](/en/guide/mcp) — Enhance code retrieval
diff --git a/docs/en/guide/mcp.md b/docs/en/guide/mcp.md
new file mode 100644
index 0000000..34ea026
--- /dev/null
+++ b/docs/en/guide/mcp.md
@@ -0,0 +1,88 @@
+# MCP Configuration
+
+MCP (Model Context Protocol) tools enhance Claude Code's code retrieval and search capabilities. CCG supports multiple MCP providers.
+
+## Setup
+
+```bash
+npx ccg-workflow menu # Select "Configure MCP"
+```
+
+## Code Retrieval (choose one)
+
+### ace-tool (Recommended)
+
+Code search service based on Augment Code, providing semantic retrieval via `search_context`.
+
+- **Pros**: High search quality, good context understanding
+- **Note**: Requires Augment Code account or third-party proxy
+- [Official](https://augmentcode.com/) | [Third-party proxy](https://acemcp.heroman.wtf/)
+
+### fast-context (Recommended)
+
+AI-powered code search based on Windsurf Fast Context, no full-repo indexing required.
+
+- **Pros**: No indexing needed, fast search
+- **Note**: Requires Windsurf account
+- Supports optional API Key and `FC_INCLUDE_SNIPPETS` mode
+
+### ContextWeaver (Alternative)
+
+Local hybrid search engine combining Embedding + Rerank.
+
+- **Pros**: Fully local, works offline
+- **Note**: Requires SiliconFlow API Key (free)
+
+## Optional Tools
+
+| Tool | Description | Requires API Key |
+|------|-------------|-----------------|
+| **Context7** | Latest library documentation | No (auto-installed) |
+| **Playwright** | Browser automation / testing | No |
+| **DeepWiki** | Knowledge base queries | No |
+| **Exa** | Search engine | Yes |
+
+## MCP Sync
+
+CCG automatically syncs MCP configuration to Codex and Gemini:
+
+- **Codex sync**: `~/.codex/config.toml` — Codex can use MCP search when running `/ccg:codex-exec`
+- **Gemini sync**: `~/.gemini/settings.json` — Gemini can use the same MCP tools
+
+Synced MCP server IDs: `grok-search`, `context7`, `ace-tool`, `contextweaver`, `fast-context`
+
+## Auto-Authorization Hook
+
+CCG automatically installs a Hook to authorize `codeagent-wrapper` commands (requires [jq](https://jqlang.github.io/jq/)).
+
+::: details Manual setup (for versions before v1.7.71)
+
+Add to `~/.claude/settings.json`:
+
+```json
+{
+ "hooks": {
+ "PreToolUse": [
+ {
+ "matcher": "Bash",
+ "hooks": [
+ {
+ "type": "command",
+ "command": "jq -r '.tool_input.command' 2>/dev/null | grep -q 'codeagent-wrapper' && echo '{\"hookSpecificOutput\": {\"hookEventName\": \"PreToolUse\", \"permissionDecision\": \"allow\", \"permissionDecisionReason\": \"codeagent-wrapper auto-approved\"}}' || true",
+ "timeout": 1
+ }
+ ]
+ }
+ ]
+ }
+}
+```
+:::
+
+## Diagnostics
+
+If MCP tools aren't working, run the diagnostic command:
+
+```bash
+npx ccg-workflow diagnose-mcp
+```
diff --git a/docs/en/guide/workflows.md b/docs/en/guide/workflows.md
new file mode 100644
index 0000000..69eec97
--- /dev/null
+++ b/docs/en/guide/workflows.md
@@ -0,0 +1,123 @@
+# Workflow Guide
+
+CCG provides three main workflows for different scenarios.
+
+## Planning & Execution Separation
+
+The most basic workflow: plan first, execute later, with human review in between.
+
+```bash
+# 1. Generate implementation plan
+/ccg:plan implement user authentication
+
+# 2. Review the plan (editable)
+# Plan saved to .claude/plan/user-auth.md
+
+# 3a. Execute (Claude refactors) — fine-grained control
+/ccg:execute .claude/plan/user-auth.md
+
+# 3b. Execute (Codex does everything) — efficient, low Claude token usage
+/ccg:codex-exec .claude/plan/user-auth.md
+```
+
+### execute vs codex-exec
+
+| Dimension | `/ccg:execute` | `/ccg:codex-exec` |
+|-----------|---------------|-------------------|
+| Executor | Claude-led + Codex/Gemini assist | Codex handles everything |
+| Token cost | Higher (Claude processes each step) | Very low (Claude only reviews) |
+| Best for | Complex tasks needing fine control | Clear, independently executable tasks |
+| MCP search | Claude executes | Codex executes (needs MCP sync) |
+
+## OPSX Spec-Driven Workflow
+
+Integrates [OPSX](https://github.com/fission-ai/opsx) to turn requirements into constraints. Best for scenarios needing **strict control**.
+
+```bash
+/ccg:spec-init # Initialize OPSX environment
+/ccg:spec-research implement user auth # Research → constraints
+/ccg:spec-plan # Parallel analysis → zero-decision plan
+/ccg:spec-impl # Execute the plan
+/ccg:spec-review # Independent review (anytime)
+```
+
+### Key Features
+
+- **Constraint-driven**: Requirements become verifiable constraints, not vague descriptions
+- **Zero-decision plan**: Execution requires no decisions — all decisions made during planning
+- **Persistent state**: State stored in `openspec/` directory, `/clear` between phases to free context
+
+::: tip
+`/ccg:spec-*` commands internally call `/opsx:*`. If using OPSX directly, use `/opsx:*` commands.
+:::
+
+## Agent Teams Parallel Workflow
+
+Leverage Claude Code Agent Teams to spawn multiple Builder teammates for parallel coding. Best for tasks **decomposable into 3+ independent modules**.
+
+```bash
+/ccg:team-research implement kanban API # 1. Requirements → constraints
+# /clear
+/ccg:team-plan kanban-api # 2. Plan → parallel tasks
+# /clear
+/ccg:team-exec # 3. Builders code in parallel
+# /clear
+/ccg:team-review # 4. Dual-model cross-review
+```
+
+### vs Traditional Workflow
+
+| Dimension | Traditional | Agent Teams |
+|-----------|------------|-------------|
+| Context | Continuous conversation | `/clear` between steps |
+| State passing | Conversation context | Files (.claude/plan/) |
+| Parallelism | Sequential | Multiple Builders in parallel |
+| Best for | General tasks | 3+ independent modules |
+
+### Workflow Diagram
+
+```
+team-research team-plan team-exec team-review
+ │ │ │ │
+ Analyze Plan & split Builder 1 ──┐ Codex review
+ │ │ Builder 2 ──┤ │
+ Constraints Parallel plan Builder 3 ──┘ Gemini review
+ │ │ │ │
+ ↓ ↓ ↓ ↓
+ constraints.md plan/*.md Code output Review report
+```
+
+## Full 6-Phase Workflow
+
+`/ccg:workflow` is the most complete workflow with 6 phases:
+
+1. **Research** — Analyze requirements, understand context
+2. **Ideate** — Propose solutions
+3. **Plan** — Create implementation plan (Codex + Gemini parallel analysis)
+4. **Execute** — Implement the plan (model routing: frontend → Gemini, backend → Codex)
+5. **Optimize** — Performance optimization and code quality
+6. **Review** — Multi-model cross-review
+
+```bash
+/ccg:workflow implement a complete user auth system with registration, login, and JWT tokens
+```
+
+::: info
+For large tasks, consider using `/ccg:plan` + `/ccg:execute` for step-by-step execution with plan review in between.
+:::
+
+## Workflow Selection Guide
+
+```
+Receive task
+ │
+ ├─ Simple / clear? ──────────→ /ccg:frontend or /ccg:backend
+ │
+ ├─ Needs planning? ──────────→ /ccg:plan + /ccg:execute
+ │
+ ├─ Needs strict constraints? ─→ /ccg:spec-* series
+ │
+ ├─ Decomposable into 3+ modules? → /ccg:team-* series
+ │
+ └─ Full end-to-end? ─────────→ /ccg:workflow
+```
diff --git a/docs/en/index.md b/docs/en/index.md
new file mode 100644
index 0000000..dd63456
--- /dev/null
+++ b/docs/en/index.md
@@ -0,0 +1,41 @@
+---
+layout: home
+
+hero:
+ name: CCG
+ text: Claude + Codex + Gemini
+ tagline: Multi-Model Collaboration System — Claude orchestrates, Codex handles backend, Gemini handles frontend
+ image:
+ src: /logo.svg
+ alt: CCG
+ actions:
+ - theme: brand
+ text: Get Started
+ link: /en/guide/getting-started
+ - theme: alt
+ text: Commands
+ link: /en/guide/commands
+ - theme: alt
+ text: GitHub
+ link: https://github.com/fengshao1227/ccg-workflow
+
+features:
+ - icon: 🔀
+ title: Zero-Config Model Routing
+ details: Frontend tasks automatically go to Gemini, backend tasks to Codex. No manual switching.
+ - icon: 🔒
+ title: Security by Design
+ details: External models have no write access. They return patches; Claude reviews before applying.
+ - icon: 🛠️
+ title: 28 Slash Commands
+ details: From planning to execution, git workflow to code review, all accessible via /ccg:*.
+ - icon: 📐
+ title: Spec-Driven Development
+ details: Integrates OPSX to turn vague requirements into verifiable constraints, eliminating AI improvisation.
+ - icon: 👥
+ title: Agent Teams Parallel
+ details: Spawn multiple Builder teammates for parallel coding. Ideal for tasks with 3+ independent modules.
+ - icon: 📦
+ title: One-Line Install
+ details: npx ccg-workflow — supports macOS, Linux, and Windows.
+---
diff --git a/docs/guide/commands.md b/docs/guide/commands.md
new file mode 100644
index 0000000..377b98c
--- /dev/null
+++ b/docs/guide/commands.md
@@ -0,0 +1,158 @@
+# 命令参考
+
+CCG 提供 28 个斜杠命令,覆盖开发全流程。所有命令通过 `/ccg:*` 访问。
+
+## 开发工作流
+
+| 命令 | 说明 | 模型 |
+|------|------|------|
+| `/ccg:workflow` | 6 阶段完整工作流(研究→构思→计划→执行→优化→评审) | Codex + Gemini |
+| `/ccg:plan` | 多模型协作规划(Phase 1-2) | Codex + Gemini |
+| `/ccg:execute` | 多模型协作执行(Phase 3-5) | Codex + Gemini + Claude |
+| `/ccg:codex-exec` | Codex 全权执行(计划 → 代码 → 审核) | Codex + 多模型审核 |
+| `/ccg:feat` | 智能功能开发 | 自动路由 |
+| `/ccg:frontend` | 前端任务(快速模式) | Gemini |
+| `/ccg:backend` | 后端任务(快速模式) | Codex |
+
+### 使用示例
+
+```bash
+# 完整工作流
+/ccg:workflow 实现用户认证功能
+
+# 只做规划(不执行)
+/ccg:plan 实现用户认证功能
+
+# 前端快速模式
+/ccg:frontend 优化登录页面的响应式布局
+```
+
+## 分析与质量
+
+| 命令 | 说明 | 模型 |
+|------|------|------|
+| `/ccg:analyze` | 技术分析 | Codex + Gemini |
+| `/ccg:debug` | 问题诊断 + 修复 | Codex + Gemini |
+| `/ccg:optimize` | 性能优化 | Codex + Gemini |
+| `/ccg:test` | 测试生成 | 自动路由 |
+| `/ccg:review` | 代码审查(自动 git diff) | Codex + Gemini |
+| `/ccg:enhance` | Prompt 增强 | 内置 |
+
+### 使用示例
+
+```bash
+# 无参数自动审查最近改动
+/ccg:review
+
+# 分析特定模块
+/ccg:analyze src/auth/ 的安全性
+
+# 生成测试
+/ccg:test src/utils/validator.ts
+```
+
+## OPSX 规范驱动
+
+集成 [OPSX](https://github.com/fission-ai/opsx) 架构,把需求变成约束。
+
+| 命令 | 说明 |
+|------|------|
+| `/ccg:spec-init` | 初始化 OPSX 环境 |
+| `/ccg:spec-research` | 需求 → 约束集 |
+| `/ccg:spec-plan` | 约束 → 零决策计划 |
+| `/ccg:spec-impl` | 按计划执行 + 归档 |
+| `/ccg:spec-review` | 双模型交叉审查 |
+
+### 使用示例
+
+```bash
+/ccg:spec-init
+/ccg:spec-research 实现用户认证
+/ccg:spec-plan
+/ccg:spec-impl
+/ccg:spec-review
+```
+
+::: tip
+每阶段之间可 `/clear`,状态存在 `openspec/` 目录,不怕上下文爆。
+:::
+
+## Agent Teams(v1.7.60+)
+
+利用 Claude Code Agent Teams 实验特性,spawn 多个 Builder teammates 并行写代码。
+
+| 命令 | 说明 |
+|------|------|
+| `/ccg:team-research` | 需求 → 约束集(并行探索) |
+| `/ccg:team-plan` | 约束 → 并行实施计划 |
+| `/ccg:team-exec` | spawn Builder teammates 并行写代码 |
+| `/ccg:team-review` | 双模型交叉审查 |
+
+::: warning 前置条件
+需在 `settings.json` 中启用实验特性:
+
+```json
+{
+ "env": {
+ "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
+ }
+}
+```
+:::
+
+### 使用示例
+
+```bash
+/ccg:team-research 实现实时协作看板 API
+# /clear
+/ccg:team-plan kanban-api
+# /clear
+/ccg:team-exec
+# /clear
+/ccg:team-review
+```
+
+## Git 工具
+
+| 命令 | 说明 |
+|------|------|
+| `/ccg:commit` | 智能提交(conventional commit 格式) |
+| `/ccg:rollback` | 交互式回滚 |
+| `/ccg:clean-branches` | 清理已合并分支 |
+| `/ccg:worktree` | Worktree 管理 |
+
+### 使用示例
+
+```bash
+# 智能提交(自动分析 diff)
+/ccg:commit
+
+# 交互式回滚
+/ccg:rollback
+
+# 清理已合并分支(默认 dry-run)
+/ccg:clean-branches
+```
+
+## 项目管理
+
+| 命令 | 说明 |
+|------|------|
+| `/ccg:init` | 初始化项目 CLAUDE.md |
+| `/ccg:context` | 项目上下文管理(.context 初始化/日志/压缩/历史) |
+
+### 使用示例
+
+```bash
+# 初始化项目 AI 上下文
+/ccg:init
+
+# 初始化 .context 目录
+/ccg:context init
+
+# 记录决策日志
+/ccg:context log "选择 PostgreSQL 因为需要 JSONB 支持"
+
+# 查看上下文历史
+/ccg:context history
+```
diff --git a/docs/guide/configuration.md b/docs/guide/configuration.md
new file mode 100644
index 0000000..79d591a
--- /dev/null
+++ b/docs/guide/configuration.md
@@ -0,0 +1,93 @@
+# 配置说明
+
+## 目录结构
+
+CCG 安装后的文件布局:
+
+```
+~/.claude/
+├── commands/ccg/ # 28 个斜杠命令
+├── agents/ccg/ # 4 个子智能体
+├── skills/ccg/ # 质量关卡 + 多 Agent 协同
+├── bin/codeagent-wrapper
+└── .ccg/
+ ├── config.toml # CCG 配置
+ └── prompts/
+ ├── codex/ # 6 个 Codex 专家提示词
+ └── gemini/ # 7 个 Gemini 专家提示词
+```
+
+## 环境变量
+
+在 `~/.claude/settings.json` 的 `"env"` 中配置:
+
+| 变量 | 说明 | 默认值 | 何时修改 |
+|------|------|--------|----------|
+| `CODEAGENT_POST_MESSAGE_DELAY` | Codex 完成后等待时间(秒) | `5` | Codex 进程挂起时设为 `1` |
+| `CODEX_TIMEOUT` | wrapper 执行超时(秒) | `7200` | 超长任务时增大 |
+| `BASH_DEFAULT_TIMEOUT_MS` | Claude Code Bash 超时(毫秒) | `120000` | 命令超时时增大 |
+| `BASH_MAX_TIMEOUT_MS` | Claude Code Bash 最大超时(毫秒) | `600000` | 长时间构建时增大 |
+
+::: details settings.json 示例
+
+```json
+{
+ "env": {
+ "CODEAGENT_POST_MESSAGE_DELAY": "1",
+ "CODEX_TIMEOUT": "7200",
+ "BASH_DEFAULT_TIMEOUT_MS": "600000",
+ "BASH_MAX_TIMEOUT_MS": "3600000"
+ }
+}
+```
+:::
+
+## 固定配置
+
+v1.7.0 起,以下配置不再支持自定义:
+
+| 项目 | 固定值 | 原因 |
+|------|--------|------|
+| 前端模型 | Gemini | 擅长 UI/CSS/组件 |
+| 后端模型 | Codex | 擅长逻辑/算法/调试 |
+| 协作模式 | smart | 最佳实践 |
+| 命令数量 | 28 个 | 全部安装 |
+
+## 实用工具
+
+```bash
+npx ccg-workflow menu # 选择「实用工具」
+```
+
+- **ccusage** — Claude Code 用量分析
+- **CCometixLine** — 状态栏工具(Git + 用量跟踪)
+
+## 常见问题
+
+### Codex CLI 0.80.0 进程不退出
+
+`--json` 模式下 Codex 完成输出后进程不会自动退出。
+
+**解决**:将 `CODEAGENT_POST_MESSAGE_DELAY` 设为 `1`。
+
+### Node 18 报 SyntaxError
+
+CCG 依赖 `ora@9.x`,要求 Node >= 20。
+
+**解决**:升级到 Node 20+。
+
+### MCP 工具不生效
+
+**解决**:运行 `npx ccg-workflow diagnose-mcp` 检查配置。
+
+### Agent Teams 命令不可用
+
+**解决**:在 `settings.json` 中添加:
+
+```json
+{
+ "env": {
+ "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
+ }
+}
+```
diff --git a/docs/guide/getting-started.md b/docs/guide/getting-started.md
new file mode 100644
index 0000000..399d55b
--- /dev/null
+++ b/docs/guide/getting-started.md
@@ -0,0 +1,103 @@
+# 快速开始
+
+## 架构概览
+
+```
+Claude Code (编排)
+ │
+ ┌───┴───┐
+ ↓ ↓
+Codex Gemini
+(后端) (前端)
+ │ │
+ └───┬───┘
+ ↓
+ Unified Patch
+```
+
+外部模型无写入权限,仅返回 Patch,由 Claude 审核后应用。
+
+## 前置条件
+
+| 依赖 | 必需 | 说明 |
+|------|------|------|
+| **Node.js 20+** | 是 | `ora@9.x` 要求 Node >= 20 |
+| **Claude Code CLI** | 是 | [安装方法](#安装-claude-code) |
+| **jq** | 是 | 用于自动授权 Hook |
+| **Codex CLI** | 否 | 启用后端路由 |
+| **Gemini CLI** | 否 | 启用前端路由 |
+
+## 安装
+
+```bash
+npx ccg-workflow
+```
+
+首次运行会提示选择语言(简体中文 / English),选择后自动保存。
+
+### 安装 jq
+
+::: code-group
+
+```bash [macOS]
+brew install jq
+```
+
+```bash [Debian / Ubuntu]
+sudo apt install jq
+```
+
+```bash [RHEL / CentOS]
+sudo yum install jq
+```
+
+```bash [Windows]
+choco install jq
+# 或
+scoop install jq
+```
+
+:::
+
+### 安装 Claude Code
+
+```bash
+npx ccg-workflow menu # 选择「安装 Claude Code」
+```
+
+支持:npm、homebrew、curl、powershell、cmd。
+
+## 验证安装
+
+安装完成后,在 Claude Code 中输入:
+
+```
+/ccg:workflow 你好
+```
+
+如果看到多模型协作输出,说明安装成功。
+
+## 更新
+
+```bash
+# npx 用户
+npx ccg-workflow@latest
+
+# npm 全局用户
+npm install -g ccg-workflow@latest
+```
+
+## 卸载
+
+```bash
+npx ccg-workflow # 选择「卸载工作流」
+
+# npm 全局用户需额外执行
+npm uninstall -g ccg-workflow
+```
+
+## 下一步
+
+- [命令参考](/guide/commands) — 查看全部 28 个命令
+- [工作流指南](/guide/workflows) — 学习三种主要工作流
+- [MCP 配置](/guide/mcp) — 增强代码检索能力
diff --git a/docs/guide/mcp.md b/docs/guide/mcp.md
new file mode 100644
index 0000000..107c671
--- /dev/null
+++ b/docs/guide/mcp.md
@@ -0,0 +1,88 @@
+# MCP 配置
+
+MCP(Model Context Protocol)工具可以增强 Claude Code 的代码检索和搜索能力。CCG 支持多个 MCP 提供者。
+
+## 配置方式
+
+```bash
+npx ccg-workflow menu # 选择「配置 MCP」
+```
+
+## 代码检索(多选一)
+
+### ace-tool(推荐)
+
+基于 Augment Code 的代码搜索服务,通过 `search_context` 提供语义检索。
+
+- **优势**:搜索质量高、上下文理解好
+- **注意**:需要 Augment Code 账号或第三方中转
+- [官方](https://augmentcode.com/) | [第三方中转](https://acemcp.heroman.wtf/)
+
+### fast-context(推荐)
+
+基于 Windsurf Fast Context 的 AI 驱动代码搜索,无需全量索引。
+
+- **优势**:无需索引、搜索速度快
+- **注意**:需要 Windsurf 账号
+- 支持可选 API Key 和 `FC_INCLUDE_SNIPPETS` 模式
+
+### ContextWeaver(备选)
+
+本地混合搜索引擎,结合 Embedding + Rerank。
+
+- **优势**:完全本地运行、可离线使用
+- **注意**:需要硅基流动 API Key(免费)
+
+## 辅助工具(可选)
+
+| 工具 | 说明 | 需要 API Key |
+|------|------|-------------|
+| **Context7** | 获取最新库文档 | 否(自动安装) |
+| **Playwright** | 浏览器自动化 / 测试 | 否 |
+| **DeepWiki** | 知识库查询 | 否 |
+| **Exa** | 搜索引擎 | 是 |
+
+## MCP 同步
+
+CCG 会自动将 MCP 配置同步到 Codex 和 Gemini:
+
+- **Codex 同步**:`~/.codex/config.toml` — 执行 `/ccg:codex-exec` 时 Codex 可直接使用 MCP 搜索
+- **Gemini 同步**:`~/.gemini/settings.json` — Gemini 可使用相同的 MCP 工具
+
+同步的 MCP 服务器 ID:`grok-search`、`context7`、`ace-tool`、`contextweaver`、`fast-context`
+
+## 自动授权 Hook
+
+CCG 安装时自动写入 Hook,授权 `codeagent-wrapper` 命令(需要 [jq](https://jqlang.github.io/jq/))。
+
+::: details 手动配置(v1.7.71 之前的版本)
+
+在 `~/.claude/settings.json` 中添加:
+
+```json
+{
+ "hooks": {
+ "PreToolUse": [
+ {
+ "matcher": "Bash",
+ "hooks": [
+ {
+ "type": "command",
+ "command": "jq -r '.tool_input.command' 2>/dev/null | grep -q 'codeagent-wrapper' && echo '{\"hookSpecificOutput\": {\"hookEventName\": \"PreToolUse\", \"permissionDecision\": \"allow\", \"permissionDecisionReason\": \"codeagent-wrapper auto-approved\"}}' || true",
+ "timeout": 1
+ }
+ ]
+ }
+ ]
+ }
+}
+```
+:::
+
+## 诊断
+
+如果 MCP 工具不工作,运行诊断命令:
+
+```bash
+npx ccg-workflow diagnose-mcp
+```
diff --git a/docs/guide/workflows.md b/docs/guide/workflows.md
new file mode 100644
index 0000000..a5ae1b3
--- /dev/null
+++ b/docs/guide/workflows.md
@@ -0,0 +1,123 @@
+# 工作流指南
+
+CCG 提供三种主要工作流,适用于不同场景。
+
+## 规划与执行分离
+
+最基础的工作流:先规划,再执行,中间可以人工审查和修改计划。
+
+```bash
+# 1. 生成实施计划
+/ccg:plan 实现用户认证功能
+
+# 2. 审查计划(可修改)
+# 计划保存至 .claude/plan/user-auth.md
+
+# 3a. 执行计划(Claude 重构)— 精细控制
+/ccg:execute .claude/plan/user-auth.md
+
+# 3b. 执行计划(Codex 全权)— 高效执行,Claude token 极低
+/ccg:codex-exec .claude/plan/user-auth.md
+```
+
+### 选择 execute 还是 codex-exec?
+
+| 维度 | `/ccg:execute` | `/ccg:codex-exec` |
+|------|---------------|-------------------|
+| 执行者 | Claude 主导 + Codex/Gemini 辅助 | Codex 全权执行 |
+| Token 消耗 | 较高(Claude 处理每一步) | 极低(Claude 只审核) |
+| 适用场景 | 需要精细控制的复杂任务 | 明确的、可独立执行的任务 |
+| MCP 搜索 | Claude 执行 | Codex 执行(需同步 MCP) |
+
+## OPSX 规范驱动工作流
+
+集成 [OPSX](https://github.com/fission-ai/opsx) 架构,把需求变成约束,让 AI 没法自由发挥。适合需要**严格控制**的场景。
+
+```bash
+/ccg:spec-init # 初始化 OPSX 环境
+/ccg:spec-research 实现用户认证 # 研究需求 → 输出约束集
+/ccg:spec-plan # 并行分析 → 零决策计划
+/ccg:spec-impl # 按计划执行
+/ccg:spec-review # 独立审查(随时可用)
+```
+
+### 工作流特点
+
+- **约束驱动**:需求不再是模糊描述,而是可验证的约束条件
+- **零决策计划**:执行阶段不需要做任何决策,所有决策在规划阶段完成
+- **状态持久化**:状态存在 `openspec/` 目录,每阶段可 `/clear` 释放上下文
+
+::: tip
+`/ccg:spec-*` 命令内部调用 `/opsx:*`。如果你直接使用 OPSX,请使用 `/opsx:*` 命令。
+:::
+
+## Agent Teams 并行工作流
+
+利用 Claude Code Agent Teams 实验特性,spawn 多个 Builder teammates 并行写代码。适合**可拆分为 3+ 独立模块**的任务。
+
+```bash
+/ccg:team-research 实现实时协作看板 API # 1. 需求 → 约束集
+# /clear
+/ccg:team-plan kanban-api # 2. 规划 → 并行计划
+# /clear
+/ccg:team-exec # 3. Builder 并行写代码
+# /clear
+/ccg:team-review # 4. 双模型交叉审查
+```
+
+### vs 传统工作流
+
+| 维度 | 传统工作流 | Agent Teams |
+|------|-----------|-------------|
+| 上下文 | 连续对话 | 每步 `/clear` 隔离 |
+| 状态传递 | 对话上下文 | 文件(.claude/plan/) |
+| 并行度 | 串行 | 多 Builder 并行 |
+| 适用场景 | 通用 | 3+ 独立模块 |
+
+### 工作流图
+
+```
+team-research team-plan team-exec team-review
+ │ │ │ │
+ 需求分析 规划拆分 Builder 1 ──┐ Codex 审查
+ │ │ Builder 2 ──┤ │
+ 约束输出 并行计划 Builder 3 ──┘ Gemini 审查
+ │ │ │ │
+ ↓ ↓ ↓ ↓
+ constraints.md plan/*.md 代码产出 审查报告
+```
+
+## 完整 6 阶段工作流
+
+`/ccg:workflow` 是最完整的工作流,包含 6 个阶段:
+
+1. **研究** — 分析需求,理解上下文
+2. **构思** — 提出解决方案
+3. **计划** — 制定实施计划(Codex + Gemini 并行分析)
+4. **执行** — 按计划实施(模型路由:前端 → Gemini,后端 → Codex)
+5. **优化** — 性能优化和代码质量
+6. **评审** — 多模型交叉审查
+
+```bash
+/ccg:workflow 实现完整的用户认证系统,包含注册、登录、JWT 令牌
+```
+
+::: info
+对于大型任务,建议使用 `/ccg:plan` + `/ccg:execute` 分步执行,以便中间审查计划。
+:::
+
+## 工作流选择指南
+
+```
+收到任务
+ │
+ ├─ 简单/明确? ────────────→ /ccg:frontend 或 /ccg:backend
+ │
+ ├─ 需要规划? ─────────────→ /ccg:plan + /ccg:execute
+ │
+ ├─ 需要严格约束? ─────────→ /ccg:spec-* 系列
+ │
+ ├─ 可拆分 3+ 模块? ──────→ /ccg:team-* 系列
+ │
+ └─ 完整端到端? ───────────→ /ccg:workflow
+```
diff --git a/docs/index.md b/docs/index.md
new file mode 100644
index 0000000..5bd4747
--- /dev/null
+++ b/docs/index.md
@@ -0,0 +1,62 @@
+---
+layout: home
+
+hero:
+ name: CCG
+ text: Claude + Codex + Gemini
+ tagline: 多模型协作开发系统 — Claude 编排,Codex 后端,Gemini 前端
+ image:
+ src: /logo.svg
+ alt: CCG
+ actions:
+ - theme: brand
+ text: 快速开始
+ link: /guide/getting-started
+ - theme: alt
+ text: 命令参考
+ link: /guide/commands
+ - theme: alt
+ text: GitHub
+ link: https://github.com/fengshao1227/ccg-workflow
+
+features:
+ - icon: 🔀
+ title: 零配置模型路由
+ details: 前端任务自动走 Gemini,后端任务自动走 Codex,无需手动切换模型。
+ - icon: 🔒
+ title: 安全设计
+ details: 外部模型无写入权限,仅返回 Patch,由 Claude 审核后应用。
+ - icon: 🛠️
+ title: 28 个斜杠命令
+ details: 从规划到执行、Git 工作流到代码审查,通过 /ccg:* 一站式访问。
+ - icon: 📐
+ title: 规范驱动开发
+ details: 集成 OPSX,将模糊需求变成可验证约束,让 AI 没法自由发挥。
+ - icon: 👥
+ title: Agent Teams 并行
+ details: spawn 多个 Builder teammates 并行写代码,适合 3+ 独立模块的任务。
+ - icon: 📦
+ title: 一键安装
+ details: npx ccg-workflow 一行命令,支持 macOS、Linux、Windows 三平台。
+---
+
+
diff --git a/docs/public/logo.svg b/docs/public/logo.svg
new file mode 100644
index 0000000..35b28f6
--- /dev/null
+++ b/docs/public/logo.svg
@@ -0,0 +1,12 @@
+
diff --git a/package.json b/package.json
index b9408fe..d76fd4d 100644
--- a/package.json
+++ b/package.json
@@ -77,7 +77,10 @@
"prepublishOnly": "pnpm build",
"test": "vitest run",
"lint": "eslint",
- "lint:fix": "eslint --fix"
+ "lint:fix": "eslint --fix",
+ "docs:dev": "vitepress dev docs",
+ "docs:build": "vitepress build docs",
+ "docs:preview": "vitepress preview docs"
},
"dependencies": {
"ansis": "^4.1.0",
@@ -90,6 +93,9 @@
"pathe": "^2.0.3",
"smol-toml": "^1.4.2"
},
+ "pnpm": {
+ "onlyBuiltDependencies": ["esbuild"]
+ },
"devDependencies": {
"@antfu/eslint-config": "^5.4.1",
"@types/fs-extra": "^11.0.4",
@@ -98,6 +104,7 @@
"tsx": "^4.20.5",
"typescript": "^5.9.2",
"unbuild": "^3.6.1",
+ "vitepress": "^1.6.4",
"vitest": "^3.1.1"
}
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 96b9d54..97c9b2f 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -38,7 +38,7 @@ importers:
devDependencies:
'@antfu/eslint-config':
specifier: ^5.4.1
- version: 5.4.1(@vue/compiler-sfc@3.5.26)(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.19.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 5.4.1(@vue/compiler-sfc@3.5.30)(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.19.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.2))
'@types/fs-extra':
specifier: ^11.0.4
version: 11.0.4
@@ -56,13 +56,92 @@ importers:
version: 5.9.3
unbuild:
specifier: ^3.6.1
- version: 3.6.1(typescript@5.9.3)
+ version: 3.6.1(typescript@5.9.3)(vue@3.5.30(typescript@5.9.3))
+ vitepress:
+ specifier: ^1.6.4
+ version: 1.6.4(@algolia/client-search@5.49.2)(@types/node@22.19.3)(change-case@5.4.4)(postcss@8.5.6)(search-insights@2.17.3)(typescript@5.9.3)
vitest:
specifier: ^3.1.1
version: 3.2.4(@types/debug@4.1.12)(@types/node@22.19.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.2)
packages:
+ '@algolia/abtesting@1.15.2':
+ resolution: {integrity: sha512-rF7vRVE61E0QORw8e2NNdnttcl3jmFMWS9B4hhdga12COe+lMa26bQLfcBn/Nbp9/AF/8gXdaRCPsVns3CnjsA==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/autocomplete-core@1.17.7':
+ resolution: {integrity: sha512-BjiPOW6ks90UKl7TwMv7oNQMnzU+t/wk9mgIDi6b1tXpUek7MW0lbNOUHpvam9pe3lVCf4xPFT+lK7s+e+fs7Q==}
+
+ '@algolia/autocomplete-plugin-algolia-insights@1.17.7':
+ resolution: {integrity: sha512-Jca5Ude6yUOuyzjnz57og7Et3aXjbwCSDf/8onLHSQgw1qW3ALl9mrMWaXb5FmPVkV3EtkD2F/+NkT6VHyPu9A==}
+ peerDependencies:
+ search-insights: '>= 1 < 3'
+
+ '@algolia/autocomplete-preset-algolia@1.17.7':
+ resolution: {integrity: sha512-ggOQ950+nwbWROq2MOCIL71RE0DdQZsceqrg32UqnhDz8FlO9rL8ONHNsI2R1MH0tkgVIDKI/D0sMiUchsFdWA==}
+ peerDependencies:
+ '@algolia/client-search': '>= 4.9.1 < 6'
+ algoliasearch: '>= 4.9.1 < 6'
+
+ '@algolia/autocomplete-shared@1.17.7':
+ resolution: {integrity: sha512-o/1Vurr42U/qskRSuhBH+VKxMvkkUVTLU6WZQr+L5lGZZLYWyhdzWjW0iGXY7EkwRTjBqvN2EsR81yCTGV/kmg==}
+ peerDependencies:
+ '@algolia/client-search': '>= 4.9.1 < 6'
+ algoliasearch: '>= 4.9.1 < 6'
+
+ '@algolia/client-abtesting@5.49.2':
+ resolution: {integrity: sha512-XyvKCm0RRmovMI/ChaAVjTwpZhXdbgt3iZofK914HeEHLqD1MUFFVLz7M0+Ou7F56UkHXwRbpHwb9xBDNopprQ==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/client-analytics@5.49.2':
+ resolution: {integrity: sha512-jq/3qvtmj3NijZlhq7A1B0Cl41GfaBpjJxcwukGsYds6aMSCWrEAJ9pUqw/C9B3hAmILYKl7Ljz3N9SFvekD3Q==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/client-common@5.49.2':
+ resolution: {integrity: sha512-bn0biLequn3epobCfjUqCxlIlurLr4RHu7RaE4trgN+RDcUq6HCVC3/yqq1hwbNYpVtulnTOJzcaxYlSr1fnuw==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/client-insights@5.49.2':
+ resolution: {integrity: sha512-z14wfFs1T3eeYbCArC8pvntAWsPo9f6hnUGoj8IoRUJTwgJiiySECkm8bmmV47/x0oGHfsVn3kBdjMX0yq0sNA==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/client-personalization@5.49.2':
+ resolution: {integrity: sha512-GpRf7yuuAX93+Qt0JGEJZwgtL0MFdjFO9n7dn8s2pA9mTjzl0Sc5+uTk1VPbIAuf7xhCP9Mve+URGb6J+EYxgA==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/client-query-suggestions@5.49.2':
+ resolution: {integrity: sha512-HZwApmNkp0DiAjZcLYdQLddcG4Agb88OkojiAHGgcm5DVXobT5uSZ9lmyrbw/tmQBJwgu2CNw4zTyXoIB7YbPA==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/client-search@5.49.2':
+ resolution: {integrity: sha512-y1IOpG6OSmTpGg/CT0YBb/EAhR2nsC18QWp9Jy8HO9iGySpcwaTvs5kHa17daP3BMTwWyaX9/1tDTDQshZzXdg==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/ingestion@1.49.2':
+ resolution: {integrity: sha512-YYJRjaZ2bqk923HxE4um7j/Cm3/xoSkF2HC2ZweOF8cXL3sqnlndSUYmCaxHFjNPWLaSHk2IfssX6J/tdKTULw==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/monitoring@1.49.2':
+ resolution: {integrity: sha512-9WgH+Dha39EQQyGKCHlGYnxW/7W19DIrEbCEbnzwAMpGAv1yTWCHMPXHxYa+LcL3eCp2V/5idD1zHNlIKmHRHg==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/recommend@5.49.2':
+ resolution: {integrity: sha512-K7Gp5u+JtVYgaVpBxF5rGiM+Ia8SsMdcAJMTDV93rwh00DKNllC19o1g+PwrDjDvyXNrnTEbofzbTs2GLfFyKA==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/requester-browser-xhr@5.49.2':
+ resolution: {integrity: sha512-3UhYCcWX6fbtN8ABcxZlhaQEwXFh3CsFtARyyadQShHMPe3mJV9Wel4FpJTa+seugRkbezFz0tt6aPTZSYTBuA==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/requester-fetch@5.49.2':
+ resolution: {integrity: sha512-G94VKSGbsr+WjsDDOBe5QDQ82QYgxvpxRGJfCHZBnYKYsy/jv9qGIDb93biza+LJWizQBUtDj7bZzp3QZyzhPQ==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/requester-node-http@5.49.2':
+ resolution: {integrity: sha512-UuihBGHafG/ENsrcTGAn5rsOffrCIRuHMOsD85fZGLEY92ate+BMTUqxz60dv5zerh8ZumN4bRm8eW2z9L11jA==}
+ engines: {node: '>= 14.0.0'}
+
'@antfu/eslint-config@5.4.1':
resolution: {integrity: sha512-x7BiNkxJRlXXs8tIvg0CgMuNo5IZVWkGLMJotCtCtzWUHW78Pmm8PvtXhvLBbTc8683GGBK616MMztWLh4RNjA==}
hasBin: true
@@ -133,8 +212,8 @@ packages:
resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==}
engines: {node: '>=6.9.0'}
- '@babel/parser@7.28.5':
- resolution: {integrity: sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==}
+ '@babel/parser@7.29.0':
+ resolution: {integrity: sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==}
engines: {node: '>=6.0.0'}
hasBin: true
@@ -142,8 +221,8 @@ packages:
resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==}
engines: {node: '>=6.9.0'}
- '@babel/types@7.28.5':
- resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==}
+ '@babel/types@7.29.0':
+ resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==}
engines: {node: '>=6.9.0'}
'@clack/core@0.5.0':
@@ -152,6 +231,29 @@ packages:
'@clack/prompts@0.11.0':
resolution: {integrity: sha512-pMN5FcrEw9hUkZA4f+zLlzivQSeQf5dRGJjSUbvVYDLvpKCdQx5OaknvKzgbtXOizhP+SJJJjqEbOe55uKKfAw==}
+ '@docsearch/css@3.8.2':
+ resolution: {integrity: sha512-y05ayQFyUmCXze79+56v/4HpycYF3uFqB78pLPrSV5ZKAlDuIAAJNhaRi8tTdRNXh05yxX/TyNnzD6LwSM89vQ==}
+
+ '@docsearch/js@3.8.2':
+ resolution: {integrity: sha512-Q5wY66qHn0SwA7Taa0aDbHiJvaFJLOJyHmooQ7y8hlwwQLQ/5WwCcoX0g7ii04Qi2DJlHsd0XXzJ8Ypw9+9YmQ==}
+
+ '@docsearch/react@3.8.2':
+ resolution: {integrity: sha512-xCRrJQlTt8N9GU0DG4ptwHRkfnSnD/YpdeaXe02iKfqs97TkZJv60yE+1eq/tjPcVnTW8dP5qLP7itifFVV5eg==}
+ peerDependencies:
+ '@types/react': '>= 16.8.0 < 19.0.0'
+ react: '>= 16.8.0 < 19.0.0'
+ react-dom: '>= 16.8.0 < 19.0.0'
+ search-insights: '>= 1 < 3'
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ react:
+ optional: true
+ react-dom:
+ optional: true
+ search-insights:
+ optional: true
+
'@es-joy/jsdoccomment@0.58.0':
resolution: {integrity: sha512-smMc5pDht/UVsCD3hhw/a/e/p8m0RdRYiluXToVfd+d4yaQQh7nn9bACjkk6nXJvat7EWPAxuFkMEFfrxeGa3Q==}
engines: {node: '>=20.11.0'}
@@ -160,6 +262,12 @@ packages:
resolution: {integrity: sha512-rQkU5u8hNAq2NVRzHnIUUvR6arbO0b6AOlvpTNS48CkiKSn/xtNfOzBK23JE4SiW89DgvU7GtxLVgV4Vn2HBAw==}
engines: {node: '>=20.11.0'}
+ '@esbuild/aix-ppc64@0.21.5':
+ resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [aix]
+
'@esbuild/aix-ppc64@0.25.12':
resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==}
engines: {node: '>=18'}
@@ -172,6 +280,12 @@ packages:
cpu: [ppc64]
os: [aix]
+ '@esbuild/android-arm64@0.21.5':
+ resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [android]
+
'@esbuild/android-arm64@0.25.12':
resolution: {integrity: sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==}
engines: {node: '>=18'}
@@ -184,6 +298,12 @@ packages:
cpu: [arm64]
os: [android]
+ '@esbuild/android-arm@0.21.5':
+ resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [android]
+
'@esbuild/android-arm@0.25.12':
resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==}
engines: {node: '>=18'}
@@ -196,6 +316,12 @@ packages:
cpu: [arm]
os: [android]
+ '@esbuild/android-x64@0.21.5':
+ resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [android]
+
'@esbuild/android-x64@0.25.12':
resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==}
engines: {node: '>=18'}
@@ -208,6 +334,12 @@ packages:
cpu: [x64]
os: [android]
+ '@esbuild/darwin-arm64@0.21.5':
+ resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [darwin]
+
'@esbuild/darwin-arm64@0.25.12':
resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==}
engines: {node: '>=18'}
@@ -220,6 +352,12 @@ packages:
cpu: [arm64]
os: [darwin]
+ '@esbuild/darwin-x64@0.21.5':
+ resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [darwin]
+
'@esbuild/darwin-x64@0.25.12':
resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==}
engines: {node: '>=18'}
@@ -232,6 +370,12 @@ packages:
cpu: [x64]
os: [darwin]
+ '@esbuild/freebsd-arm64@0.21.5':
+ resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [freebsd]
+
'@esbuild/freebsd-arm64@0.25.12':
resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==}
engines: {node: '>=18'}
@@ -244,6 +388,12 @@ packages:
cpu: [arm64]
os: [freebsd]
+ '@esbuild/freebsd-x64@0.21.5':
+ resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [freebsd]
+
'@esbuild/freebsd-x64@0.25.12':
resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==}
engines: {node: '>=18'}
@@ -256,6 +406,12 @@ packages:
cpu: [x64]
os: [freebsd]
+ '@esbuild/linux-arm64@0.21.5':
+ resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [linux]
+
'@esbuild/linux-arm64@0.25.12':
resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==}
engines: {node: '>=18'}
@@ -268,6 +424,12 @@ packages:
cpu: [arm64]
os: [linux]
+ '@esbuild/linux-arm@0.21.5':
+ resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [linux]
+
'@esbuild/linux-arm@0.25.12':
resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==}
engines: {node: '>=18'}
@@ -280,6 +442,12 @@ packages:
cpu: [arm]
os: [linux]
+ '@esbuild/linux-ia32@0.21.5':
+ resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [linux]
+
'@esbuild/linux-ia32@0.25.12':
resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==}
engines: {node: '>=18'}
@@ -292,6 +460,12 @@ packages:
cpu: [ia32]
os: [linux]
+ '@esbuild/linux-loong64@0.21.5':
+ resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==}
+ engines: {node: '>=12'}
+ cpu: [loong64]
+ os: [linux]
+
'@esbuild/linux-loong64@0.25.12':
resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==}
engines: {node: '>=18'}
@@ -304,6 +478,12 @@ packages:
cpu: [loong64]
os: [linux]
+ '@esbuild/linux-mips64el@0.21.5':
+ resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==}
+ engines: {node: '>=12'}
+ cpu: [mips64el]
+ os: [linux]
+
'@esbuild/linux-mips64el@0.25.12':
resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==}
engines: {node: '>=18'}
@@ -316,6 +496,12 @@ packages:
cpu: [mips64el]
os: [linux]
+ '@esbuild/linux-ppc64@0.21.5':
+ resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==}
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [linux]
+
'@esbuild/linux-ppc64@0.25.12':
resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==}
engines: {node: '>=18'}
@@ -328,6 +514,12 @@ packages:
cpu: [ppc64]
os: [linux]
+ '@esbuild/linux-riscv64@0.21.5':
+ resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==}
+ engines: {node: '>=12'}
+ cpu: [riscv64]
+ os: [linux]
+
'@esbuild/linux-riscv64@0.25.12':
resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==}
engines: {node: '>=18'}
@@ -340,6 +532,12 @@ packages:
cpu: [riscv64]
os: [linux]
+ '@esbuild/linux-s390x@0.21.5':
+ resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==}
+ engines: {node: '>=12'}
+ cpu: [s390x]
+ os: [linux]
+
'@esbuild/linux-s390x@0.25.12':
resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==}
engines: {node: '>=18'}
@@ -352,6 +550,12 @@ packages:
cpu: [s390x]
os: [linux]
+ '@esbuild/linux-x64@0.21.5':
+ resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [linux]
+
'@esbuild/linux-x64@0.25.12':
resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==}
engines: {node: '>=18'}
@@ -376,6 +580,12 @@ packages:
cpu: [arm64]
os: [netbsd]
+ '@esbuild/netbsd-x64@0.21.5':
+ resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [netbsd]
+
'@esbuild/netbsd-x64@0.25.12':
resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==}
engines: {node: '>=18'}
@@ -400,6 +610,12 @@ packages:
cpu: [arm64]
os: [openbsd]
+ '@esbuild/openbsd-x64@0.21.5':
+ resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [openbsd]
+
'@esbuild/openbsd-x64@0.25.12':
resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==}
engines: {node: '>=18'}
@@ -424,6 +640,12 @@ packages:
cpu: [arm64]
os: [openharmony]
+ '@esbuild/sunos-x64@0.21.5':
+ resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [sunos]
+
'@esbuild/sunos-x64@0.25.12':
resolution: {integrity: sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==}
engines: {node: '>=18'}
@@ -436,6 +658,12 @@ packages:
cpu: [x64]
os: [sunos]
+ '@esbuild/win32-arm64@0.21.5':
+ resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [win32]
+
'@esbuild/win32-arm64@0.25.12':
resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==}
engines: {node: '>=18'}
@@ -448,6 +676,12 @@ packages:
cpu: [arm64]
os: [win32]
+ '@esbuild/win32-ia32@0.21.5':
+ resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [win32]
+
'@esbuild/win32-ia32@0.25.12':
resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==}
engines: {node: '>=18'}
@@ -460,6 +694,12 @@ packages:
cpu: [ia32]
os: [win32]
+ '@esbuild/win32-x64@0.21.5':
+ resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [win32]
+
'@esbuild/win32-x64@0.25.12':
resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==}
engines: {node: '>=18'}
@@ -553,6 +793,12 @@ packages:
resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==}
engines: {node: '>=18.18'}
+ '@iconify-json/simple-icons@1.2.73':
+ resolution: {integrity: sha512-nQZTwul4c2zBqH/aLP4zMOiElj93T6HawbrP+sFQKpxmBdS5x1duCK3cAnkj6dntHz84EYkzaQRM83V2pj4qxA==}
+
+ '@iconify/types@2.0.0':
+ resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
+
'@inquirer/ansi@1.0.2':
resolution: {integrity: sha512-S8qNSZiYzFd0wAcyG5AXCvUHC5Sr7xpZ9wZ2py9XR88jUz8wooStVx5M6dRzczbBWjic9NP7+rY0Xi7qqK/aMQ==}
engines: {node: '>=18'}
@@ -858,6 +1104,30 @@ packages:
cpu: [x64]
os: [win32]
+ '@shikijs/core@2.5.0':
+ resolution: {integrity: sha512-uu/8RExTKtavlpH7XqnVYBrfBkUc20ngXiX9NSrBhOVZYv/7XQRKUyhtkeflY5QsxC0GbJThCerruZfsUaSldg==}
+
+ '@shikijs/engine-javascript@2.5.0':
+ resolution: {integrity: sha512-VjnOpnQf8WuCEZtNUdjjwGUbtAVKuZkVQ/5cHy/tojVVRIRtlWMYVjyWhxOmIq05AlSOv72z7hRNRGVBgQOl0w==}
+
+ '@shikijs/engine-oniguruma@2.5.0':
+ resolution: {integrity: sha512-pGd1wRATzbo/uatrCIILlAdFVKdxImWJGQ5rFiB5VZi2ve5xj3Ax9jny8QvkaV93btQEwR/rSz5ERFpC5mKNIw==}
+
+ '@shikijs/langs@2.5.0':
+ resolution: {integrity: sha512-Qfrrt5OsNH5R+5tJ/3uYBBZv3SuGmnRPejV9IlIbFH3HTGLDlkqgHymAlzklVmKBjAaVmkPkyikAV/sQ1wSL+w==}
+
+ '@shikijs/themes@2.5.0':
+ resolution: {integrity: sha512-wGrk+R8tJnO0VMzmUExHR+QdSaPUl/NKs+a4cQQRWyoc3YFbUzuLEi/KWK1hj+8BfHRKm2jNhhJck1dfstJpiw==}
+
+ '@shikijs/transformers@2.5.0':
+ resolution: {integrity: sha512-SI494W5X60CaUwgi8u4q4m4s3YAFSxln3tzNjOSYqq54wlVgz0/NbbXEb3mdLbqMBztcmS7bVTaEd2w0qMmfeg==}
+
+ '@shikijs/types@2.5.0':
+ resolution: {integrity: sha512-ygl5yhxki9ZLNuNpPitBWvcy9fsSKKaRuO4BAlMyagszQidxcpLAr0qiW/q43DtSIDxO6hEbtYLiFZNXO/hdGw==}
+
+ '@shikijs/vscode-textmate@10.0.2':
+ resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==}
+
'@stylistic/eslint-plugin@5.6.1':
resolution: {integrity: sha512-JCs+MqoXfXrRPGbGmho/zGS/jMcn3ieKl/A8YImqib76C8kjgZwq5uUFzc30lJkMvcchuRn6/v8IApLxli3Jyw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -879,15 +1149,27 @@ packages:
'@types/fs-extra@11.0.4':
resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==}
+ '@types/hast@3.0.4':
+ resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==}
+
'@types/json-schema@7.0.15':
resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
'@types/jsonfile@6.1.4':
resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==}
+ '@types/linkify-it@5.0.0':
+ resolution: {integrity: sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==}
+
+ '@types/markdown-it@14.1.2':
+ resolution: {integrity: sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==}
+
'@types/mdast@4.0.4':
resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==}
+ '@types/mdurl@2.0.0':
+ resolution: {integrity: sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==}
+
'@types/ms@2.1.0':
resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==}
@@ -900,6 +1182,9 @@ packages:
'@types/unist@3.0.3':
resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==}
+ '@types/web-bluetooth@0.0.21':
+ resolution: {integrity: sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==}
+
'@typescript-eslint/eslint-plugin@8.51.0':
resolution: {integrity: sha512-XtssGWJvypyM2ytBnSnKtHYOGT+4ZwTnBVl36TA4nRO2f4PRNGz5/1OszHzcZCvcBMh+qb7I06uoCmLTRdR9og==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -959,6 +1244,16 @@ packages:
resolution: {integrity: sha512-mM/JRQOzhVN1ykejrvwnBRV3+7yTKK8tVANVN3o1O0t0v7o+jqdVu9crPy5Y9dov15TJk/FTIgoUGHrTOVL3Zg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@ungap/structured-clone@1.3.0':
+ resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==}
+
+ '@vitejs/plugin-vue@5.2.4':
+ resolution: {integrity: sha512-7Yx/SXSOcQq5HiiV3orevHUFn+pmMB4cgbEkDYgnkUWb0WfeQ/wa2yFv6D5ICiCQOVpjA7vYDXrC7AGO8yjDHA==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ peerDependencies:
+ vite: ^5.0.0 || ^6.0.0
+ vue: ^3.2.25
+
'@vitest/eslint-plugin@1.6.5':
resolution: {integrity: sha512-+wKYGmvXQJjq58qBx/AwiZr5bFfMiWBdgHViSQoFW/+wl5MQhJeOGP/3HM7GO7W1+AoiW9Gcyy2Hdwcao4LnfQ==}
engines: {node: '>=18'}
@@ -1001,21 +1296,97 @@ packages:
'@vitest/utils@3.2.4':
resolution: {integrity: sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==}
- '@vue/compiler-core@3.5.26':
- resolution: {integrity: sha512-vXyI5GMfuoBCnv5ucIT7jhHKl55Y477yxP6fc4eUswjP8FG3FFVFd41eNDArR+Uk3QKn2Z85NavjaxLxOC19/w==}
+ '@vue/compiler-core@3.5.30':
+ resolution: {integrity: sha512-s3DfdZkcu/qExZ+td75015ljzHc6vE+30cFMGRPROYjqkroYI5NV2X1yAMX9UeyBNWB9MxCfPcsjpLS11nzkkw==}
- '@vue/compiler-dom@3.5.26':
- resolution: {integrity: sha512-y1Tcd3eXs834QjswshSilCBnKGeQjQXB6PqFn/1nxcQw4pmG42G8lwz+FZPAZAby6gZeHSt/8LMPfZ4Rb+Bd/A==}
+ '@vue/compiler-dom@3.5.30':
+ resolution: {integrity: sha512-eCFYESUEVYHhiMuK4SQTldO3RYxyMR/UQL4KdGD1Yrkfdx4m/HYuZ9jSfPdA+nWJY34VWndiYdW/wZXyiPEB9g==}
- '@vue/compiler-sfc@3.5.26':
- resolution: {integrity: sha512-egp69qDTSEZcf4bGOSsprUr4xI73wfrY5oRs6GSgXFTiHrWj4Y3X5Ydtip9QMqiCMCPVwLglB9GBxXtTadJ3mA==}
+ '@vue/compiler-sfc@3.5.30':
+ resolution: {integrity: sha512-LqmFPDn89dtU9vI3wHJnwaV6GfTRD87AjWpTWpyrdVOObVtjIuSeZr181z5C4PmVx/V3j2p+0f7edFKGRMpQ5A==}
- '@vue/compiler-ssr@3.5.26':
- resolution: {integrity: sha512-lZT9/Y0nSIRUPVvapFJEVDbEXruZh2IYHMk2zTtEgJSlP5gVOqeWXH54xDKAaFS4rTnDeDBQUYDtxKyoW9FwDw==}
+ '@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==}
+
+ '@vue/devtools-kit@7.7.9':
+ resolution: {integrity: sha512-PyQ6odHSgiDVd4hnTP+aDk2X4gl2HmLDfiyEnn3/oV+ckFDuswRs4IbBT7vacMuGdwY/XemxBoh302ctbsptuA==}
+
+ '@vue/devtools-shared@7.7.9':
+ resolution: {integrity: sha512-iWAb0v2WYf0QWmxCGy0seZNDPdO3Sp5+u78ORnyeonS6MT4PC7VPrryX2BpMJrwlDeaZ6BD4vP4XKjK0SZqaeA==}
+
+ '@vue/reactivity@3.5.30':
+ resolution: {integrity: sha512-179YNgKATuwj9gB+66snskRDOitDiuOZqkYia7mHKJaidOMo/WJxHKF8DuGc4V4XbYTJANlfEKb0yxTQotnx4Q==}
+
+ '@vue/runtime-core@3.5.30':
+ resolution: {integrity: sha512-e0Z+8PQsUTdwV8TtEsLzUM7SzC7lQwYKePydb7K2ZnmS6jjND+WJXkmmfh/swYzRyfP1EY3fpdesyYoymCzYfg==}
+
+ '@vue/runtime-dom@3.5.30':
+ resolution: {integrity: sha512-2UIGakjU4WSQ0T4iwDEW0W7vQj6n7AFn7taqZ9Cvm0Q/RA2FFOziLESrDL4GmtI1wV3jXg5nMoJSYO66egDUBw==}
+
+ '@vue/server-renderer@3.5.30':
+ resolution: {integrity: sha512-v+R34icapydRwbZRD0sXwtHqrQJv38JuMB4JxbOxd8NEpGLny7cncMp53W9UH/zo4j8eDHjQ1dEJXwzFQknjtQ==}
+ peerDependencies:
+ vue: 3.5.30
'@vue/shared@3.5.26':
resolution: {integrity: sha512-7Z6/y3uFI5PRoKeorTOSXKcDj0MSasfNNltcslbFrPpcw6aXRUALq4IfJlaTRspiWIUOEZbrpM+iQGmCOiWe4A==}
+ '@vue/shared@3.5.30':
+ resolution: {integrity: sha512-YXgQ7JjaO18NeK2K9VTbDHaFy62WrObMa6XERNfNOkAhD1F1oDSf3ZJ7K6GqabZ0BvSDHajp8qfS5Sa2I9n8uQ==}
+
+ '@vueuse/core@12.8.2':
+ resolution: {integrity: sha512-HbvCmZdzAu3VGi/pWYm5Ut+Kd9mn1ZHnn4L5G8kOQTPs/IwIAmJoBrmYk2ckLArgMXZj0AW3n5CAejLUO+PhdQ==}
+
+ '@vueuse/integrations@12.8.2':
+ resolution: {integrity: sha512-fbGYivgK5uBTRt7p5F3zy6VrETlV9RtZjBqd1/HxGdjdckBgBM4ugP8LHpjolqTj14TXTxSK1ZfgPbHYyGuH7g==}
+ peerDependencies:
+ async-validator: ^4
+ axios: ^1
+ change-case: ^5
+ drauu: ^0.4
+ focus-trap: ^7
+ fuse.js: ^7
+ idb-keyval: ^6
+ jwt-decode: ^4
+ nprogress: ^0.2
+ qrcode: ^1.5
+ sortablejs: ^1
+ universal-cookie: ^7
+ peerDependenciesMeta:
+ async-validator:
+ optional: true
+ axios:
+ optional: true
+ change-case:
+ optional: true
+ drauu:
+ optional: true
+ focus-trap:
+ optional: true
+ fuse.js:
+ optional: true
+ idb-keyval:
+ optional: true
+ jwt-decode:
+ optional: true
+ nprogress:
+ optional: true
+ qrcode:
+ optional: true
+ sortablejs:
+ optional: true
+ universal-cookie:
+ optional: true
+
+ '@vueuse/metadata@12.8.2':
+ resolution: {integrity: sha512-rAyLGEuoBJ/Il5AmFHiziCPdQzRt88VxR+Y/A/QhJ1EWtWqPBBAxTAFaSkviwEuOEZNtW8pvkPgoCZQ+HxqW1A==}
+
+ '@vueuse/shared@12.8.2':
+ resolution: {integrity: sha512-dznP38YzxZoNloI0qpEfpkms8knDtaoQ6Y/sfS0L7Yki4zh40LFHEhur0odJC6xTHG5dxWVPiUWBXn+wCG2s5w==}
+
acorn-jsx@5.3.2:
resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
peerDependencies:
@@ -1029,6 +1400,10 @@ packages:
ajv@6.12.6:
resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
+ algoliasearch@5.49.2:
+ resolution: {integrity: sha512-1K0wtDaRONwfhL4h8bbJ9qTjmY6rhGgRvvagXkMBsAOMNr+3Q2SffHECh9DIuNVrMA1JwA0zCwhyepgBZVakng==}
+ engines: {node: '>= 14.0.0'}
+
ansi-regex@5.0.1:
resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
engines: {node: '>=8'}
@@ -1070,6 +1445,9 @@ packages:
resolution: {integrity: sha512-Sg0xJUNDU1sJNGdfGWhVHX0kkZ+HWcvmVymJbj6NSgZZmW/8S9Y2HQ5euytnIgakgxN6papOAWiwDo1ctFDcoQ==}
hasBin: true
+ birpc@2.9.0:
+ resolution: {integrity: sha512-KrayHS5pBi69Xi9JmvoqrIgYGDkD6mcSe/i6YKi3w5kekCLzrX4+nawcXqrj2tIp50Kw/mT/s3p+GVK0A0sKxw==}
+
boolbase@1.0.0:
resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
@@ -1120,6 +1498,12 @@ packages:
change-case@5.4.4:
resolution: {integrity: sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==}
+ character-entities-html4@2.1.0:
+ resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==}
+
+ character-entities-legacy@3.0.0:
+ resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==}
+
character-entities@2.0.2:
resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==}
@@ -1163,6 +1547,9 @@ packages:
colord@2.9.3:
resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
+ comma-separated-tokens@2.0.3:
+ resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
+
commander@11.1.0:
resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==}
engines: {node: '>=16'}
@@ -1187,6 +1574,10 @@ packages:
resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==}
engines: {node: ^14.18.0 || >=16.10.0}
+ copy-anything@4.0.5:
+ resolution: {integrity: sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==}
+ engines: {node: '>=18'}
+
core-js-compat@3.47.0:
resolution: {integrity: sha512-IGfuznZ/n7Kp9+nypamBhvwdwLsW6KC8IOaURw2doAK5e98AG3acVLdh0woOnEqCfUtS+Vu882JE4k/DAm3ItQ==}
@@ -1242,6 +1633,9 @@ packages:
resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==}
engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'}
+ csstype@3.2.3:
+ resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==}
+
debug@4.4.3:
resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==}
engines: {node: '>=6.0'}
@@ -1295,6 +1689,9 @@ packages:
electron-to-chromium@1.5.267:
resolution: {integrity: sha512-0Drusm6MVRXSOJpGbaSVgcQsuB4hEkMpHXaVstcPmhu5LIedxs1xNK/nIxmQIU/RPC0+1/o0AVZfBTkTNJOdUw==}
+ emoji-regex-xs@1.0.0:
+ resolution: {integrity: sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==}
+
emoji-regex@8.0.0:
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
@@ -1310,13 +1707,18 @@ packages:
resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
engines: {node: '>=0.12'}
- entities@7.0.0:
- resolution: {integrity: sha512-FDWG5cmEYf2Z00IkYRhbFrwIwvdFKH07uV8dvNy0omp/Qb1xcyCWp2UDtcwJF4QZZvk0sLudP6/hAu42TaqVhQ==}
+ entities@7.0.1:
+ resolution: {integrity: sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==}
engines: {node: '>=0.12'}
es-module-lexer@1.7.0:
resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==}
+ esbuild@0.21.5:
+ resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==}
+ engines: {node: '>=12'}
+ hasBin: true
+
esbuild@0.25.12:
resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==}
engines: {node: '>=18'}
@@ -1593,6 +1995,9 @@ packages:
flatted@3.3.3:
resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==}
+ focus-trap@7.8.0:
+ resolution: {integrity: sha512-/yNdlIkpWbM0ptxno3ONTuf+2g318kh2ez3KSeZN5dZ8YC6AAmgeWz+GasYYiBJPFaYcSAPeu4GfhUaChzIJXA==}
+
format@0.2.2:
resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==}
engines: {node: '>=0.4.x'}
@@ -1655,9 +2060,18 @@ packages:
resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
engines: {node: '>= 0.4'}
+ hast-util-to-html@9.0.5:
+ resolution: {integrity: sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==}
+
+ hast-util-whitespace@3.0.0:
+ resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==}
+
hookable@5.5.3:
resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==}
+ html-void-elements@3.0.0:
+ resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==}
+
i18next-fs-backend@2.6.1:
resolution: {integrity: sha512-eYWTX7QT7kJ0sZyCPK6x1q+R63zvNKv2D6UdbMf15A8vNb2ZLyw4NNNZxPFwXlIv/U+oUtg8SakW6ZgJZcoqHQ==}
@@ -1736,6 +2150,10 @@ packages:
resolution: {integrity: sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==}
engines: {node: '>=18'}
+ is-what@5.5.0:
+ resolution: {integrity: sha512-oG7cgbmg5kLYae2N5IVd3jm2s+vldjxJzK1pcu9LfpGuQ93MQSzo0okvRna+7y5ifrD+20FE8FvjusyGaz14fw==}
+ engines: {node: '>=18'}
+
isexe@2.0.0:
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
@@ -1842,6 +2260,9 @@ packages:
magic-string@0.30.21:
resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==}
+ mark.js@8.11.1:
+ resolution: {integrity: sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==}
+
markdown-table@3.0.4:
resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==}
@@ -1875,6 +2296,9 @@ packages:
mdast-util-phrasing@4.1.0:
resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==}
+ mdast-util-to-hast@13.2.1:
+ resolution: {integrity: sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==}
+
mdast-util-to-markdown@2.1.2:
resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==}
@@ -1985,6 +2409,12 @@ packages:
resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
engines: {node: '>=16 || 14 >=14.17'}
+ minisearch@7.2.0:
+ resolution: {integrity: sha512-dqT2XBYUOZOiC5t2HRnwADjhNS2cecp9u+TJRiJ1Qp/f5qjkeT5APcGPjHw+bz89Ms8Jp+cG4AlE+QZ/QnDglg==}
+
+ mitt@3.0.1:
+ resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==}
+
mkdist@2.4.1:
resolution: {integrity: sha512-Ezk0gi04GJBkqMfsksICU5Rjoemc4biIekwgrONWVPor2EO/N9nBgN6MZXAf7Yw4mDDhrNyKbdETaHNevfumKg==}
hasBin: true
@@ -2041,6 +2471,9 @@ packages:
resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==}
engines: {node: '>=18'}
+ oniguruma-to-es@3.1.1:
+ resolution: {integrity: sha512-bUH8SDvPkH3ho3dvwJwfonjlQ4R80vjyvrU8YpxuROddv55vAEJrTuCuCVUhhsHbtlD9tGGbaNApGQckXhS8iQ==}
+
optionator@0.9.4:
resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
engines: {node: '>= 0.8.0'}
@@ -2092,6 +2525,9 @@ packages:
resolution: {integrity: sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==}
engines: {node: '>= 14.16'}
+ perfect-debounce@1.0.0:
+ resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==}
+
picocolors@1.1.1:
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
@@ -2291,6 +2727,13 @@ 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}
+
+ preact@10.29.0:
+ resolution: {integrity: sha512-wSAGyk2bYR1c7t3SZ3jHcM6xy0lcBcDel6lODcs9ME6Th++Dx2KU+6D3HD8wMMKGA8Wpw7OMd3/4RGzYRpzwRg==}
+
prelude-ls@1.2.1:
resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
engines: {node: '>= 0.8.0'}
@@ -2299,6 +2742,9 @@ packages:
resolution: {integrity: sha512-nODzvTiYVRGRqAOvE84Vk5JDPyyxsVk0/fbA/bq7RqlnhksGpset09XTxbpvLTIjoaF7K8Z8DG8yHtKGTPSYRw==}
engines: {node: '>=20'}
+ property-information@7.1.0:
+ resolution: {integrity: sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==}
+
punycode@2.3.1:
resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
engines: {node: '>=6'}
@@ -2310,6 +2756,15 @@ packages:
resolution: {integrity: sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==}
engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+ regex-recursion@6.0.2:
+ resolution: {integrity: sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==}
+
+ regex-utilities@2.3.0:
+ resolution: {integrity: sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==}
+
+ regex@6.1.0:
+ resolution: {integrity: sha512-6VwtthbV4o/7+OaAF9I5L5V3llLEsoPyq9P1JVXkedTP33c7MfCG0/5NOPcSJn0TzXcG9YUrR0gQSWioew3LDg==}
+
regexp-ast-analysis@0.7.1:
resolution: {integrity: sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==}
engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
@@ -2338,6 +2793,9 @@ packages:
resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==}
engines: {node: '>=18'}
+ rfdc@1.4.1:
+ resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==}
+
rollup-plugin-dts@6.3.0:
resolution: {integrity: sha512-d0UrqxYd8KyZ6i3M2Nx7WOMy708qsV/7fTHMHxCMCBOAe3V/U7OMPu5GkX8hC+cmkHhzGnfeYongl1IgiooddA==}
engines: {node: '>=16'}
@@ -2370,6 +2828,9 @@ packages:
scule@1.3.0:
resolution: {integrity: sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==}
+ search-insights@2.17.3:
+ resolution: {integrity: sha512-RQPdCYTa8A68uM2jwxoY842xDhvx3E5LFL1LxvxCNMev4o5mLuokczhzjAgGwUZBAmOKZknArSxLKmXtIi2AxQ==}
+
semver@7.7.3:
resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==}
engines: {node: '>=10'}
@@ -2383,6 +2844,9 @@ packages:
resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
engines: {node: '>=8'}
+ shiki@2.5.0:
+ resolution: {integrity: sha512-mI//trrsaiCIPsja5CNfsyNOqgAZUb6VpJA+340toL42UpzQlXpwRV9nch69X6gaUxrr9kaOOa6e3y3uAkGFxQ==}
+
siginfo@2.0.0:
resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}
@@ -2401,6 +2865,9 @@ packages:
resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
engines: {node: '>=0.10.0'}
+ space-separated-tokens@2.0.2:
+ resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==}
+
spdx-exceptions@2.5.0:
resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==}
@@ -2410,6 +2877,10 @@ packages:
spdx-license-ids@3.0.22:
resolution: {integrity: sha512-4PRT4nh1EImPbt2jASOKHX7PB7I+e4IWNLvkKFDxNhJlfjbYlleYQh285Z/3mPTHSAK/AvdMmw5BNNuYH8ShgQ==}
+ speakingurl@14.0.1:
+ resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==}
+ engines: {node: '>=0.10.0'}
+
stackback@0.0.2:
resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
@@ -2428,6 +2899,9 @@ packages:
resolution: {integrity: sha512-Kxl3KJGb/gxkaUMOjRsQ8IrXiGW75O4E3RPjFIINOVH8AMl2SQ/yWdTzWwF3FevIX9LcMAjJW+GRwAlAbTSXdg==}
engines: {node: '>=20'}
+ stringify-entities@4.0.4:
+ resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==}
+
strip-ansi@6.0.1:
resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
engines: {node: '>=8'}
@@ -2453,6 +2927,10 @@ packages:
peerDependencies:
postcss: ^8.4.32
+ superjson@2.2.6:
+ resolution: {integrity: sha512-H+ue8Zo4vJmV2nRjpx86P35lzwDT3nItnIsocgumgr0hHMQ+ZGq5vrERg9kJBo5AWGmxZDhzDo+WVIJqkB0cGA==}
+ engines: {node: '>=16'}
+
supports-color@7.2.0:
resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
engines: {node: '>=8'}
@@ -2470,6 +2948,9 @@ packages:
resolution: {integrity: sha512-MeQTA1r0litLUf0Rp/iisCaL8761lKAZHaimlbGK4j0HysC4PLfqygQj9srcs0m2RdtDYnF8UuYyKpbjHYp7Jw==}
engines: {node: ^14.18.0 || >=16.0.0}
+ tabbable@6.4.0:
+ resolution: {integrity: sha512-05PUHKSNE8ou2dwIxTngl4EzcnsCDZGJ/iCLtDflR/SHB/ny14rXc+qU5P4mG9JkusiV7EivzY9Mhm55AzAvCg==}
+
tapable@2.3.0:
resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==}
engines: {node: '>=6'}
@@ -2504,6 +2985,9 @@ packages:
resolution: {integrity: sha512-9mjy3frhioGIVGcwamlVlUyJ9x+WHw/TXiz9R4YOlmsIuBN43r9Dp8HZ35SF9EKjHrn3BUZj04CF+YqZ2oJ+7w==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ trim-lines@3.0.1:
+ resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==}
+
ts-api-utils@2.4.0:
resolution: {integrity: sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==}
engines: {node: '>=18.12'}
@@ -2554,6 +3038,9 @@ packages:
unist-util-is@6.0.1:
resolution: {integrity: sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==}
+ unist-util-position@5.0.0:
+ resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==}
+
unist-util-stringify-position@4.0.0:
resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==}
@@ -2583,11 +3070,48 @@ packages:
util-deprecate@1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+ vfile-message@4.0.3:
+ resolution: {integrity: sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==}
+
+ vfile@6.0.3:
+ resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==}
+
vite-node@3.2.4:
resolution: {integrity: sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg==}
engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
hasBin: true
+ vite@5.4.21:
+ resolution: {integrity: sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ hasBin: true
+ peerDependencies:
+ '@types/node': ^18.0.0 || >=20.0.0
+ less: '*'
+ lightningcss: ^1.21.0
+ sass: '*'
+ sass-embedded: '*'
+ stylus: '*'
+ sugarss: '*'
+ terser: ^5.4.0
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
+ less:
+ optional: true
+ lightningcss:
+ optional: true
+ sass:
+ optional: true
+ sass-embedded:
+ optional: true
+ stylus:
+ optional: true
+ sugarss:
+ optional: true
+ terser:
+ optional: true
+
vite@7.3.1:
resolution: {integrity: sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==}
engines: {node: ^20.19.0 || >=22.12.0}
@@ -2628,6 +3152,18 @@ packages:
yaml:
optional: true
+ vitepress@1.6.4:
+ resolution: {integrity: sha512-+2ym1/+0VVrbhNyRoFFesVvBvHAVMZMK0rw60E3X/5349M1GuVdKeazuksqopEdvkKwKGs21Q729jX81/bkBJg==}
+ hasBin: true
+ peerDependencies:
+ markdown-it-mathjax3: ^4
+ postcss: ^8
+ peerDependenciesMeta:
+ markdown-it-mathjax3:
+ optional: true
+ postcss:
+ optional: true
+
vitest@3.2.4:
resolution: {integrity: sha512-LUCP5ev3GURDysTWiP47wRRUpLKMOfPh+yKTx3kVIEiu5KOMeqzpnYNsKyOoVrULivR8tLcks4+lga33Whn90A==}
engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
@@ -2662,6 +3198,14 @@ packages:
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
+ vue@3.5.30:
+ resolution: {integrity: sha512-hTHLc6VNZyzzEH/l7PFGjpcTvUgiaPK5mdLkbjrTeWSRcEfxFrv56g/XckIYlE9ckuobsdwqd5mk2g1sBkMewg==}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
engines: {node: '>= 8'}
@@ -2710,7 +3254,119 @@ packages:
snapshots:
- '@antfu/eslint-config@5.4.1(@vue/compiler-sfc@3.5.26)(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.19.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@algolia/abtesting@1.15.2':
+ dependencies:
+ '@algolia/client-common': 5.49.2
+ '@algolia/requester-browser-xhr': 5.49.2
+ '@algolia/requester-fetch': 5.49.2
+ '@algolia/requester-node-http': 5.49.2
+
+ '@algolia/autocomplete-core@1.17.7(@algolia/client-search@5.49.2)(algoliasearch@5.49.2)(search-insights@2.17.3)':
+ dependencies:
+ '@algolia/autocomplete-plugin-algolia-insights': 1.17.7(@algolia/client-search@5.49.2)(algoliasearch@5.49.2)(search-insights@2.17.3)
+ '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.49.2)(algoliasearch@5.49.2)
+ transitivePeerDependencies:
+ - '@algolia/client-search'
+ - algoliasearch
+ - search-insights
+
+ '@algolia/autocomplete-plugin-algolia-insights@1.17.7(@algolia/client-search@5.49.2)(algoliasearch@5.49.2)(search-insights@2.17.3)':
+ dependencies:
+ '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.49.2)(algoliasearch@5.49.2)
+ search-insights: 2.17.3
+ transitivePeerDependencies:
+ - '@algolia/client-search'
+ - algoliasearch
+
+ '@algolia/autocomplete-preset-algolia@1.17.7(@algolia/client-search@5.49.2)(algoliasearch@5.49.2)':
+ dependencies:
+ '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.49.2)(algoliasearch@5.49.2)
+ '@algolia/client-search': 5.49.2
+ algoliasearch: 5.49.2
+
+ '@algolia/autocomplete-shared@1.17.7(@algolia/client-search@5.49.2)(algoliasearch@5.49.2)':
+ dependencies:
+ '@algolia/client-search': 5.49.2
+ algoliasearch: 5.49.2
+
+ '@algolia/client-abtesting@5.49.2':
+ dependencies:
+ '@algolia/client-common': 5.49.2
+ '@algolia/requester-browser-xhr': 5.49.2
+ '@algolia/requester-fetch': 5.49.2
+ '@algolia/requester-node-http': 5.49.2
+
+ '@algolia/client-analytics@5.49.2':
+ dependencies:
+ '@algolia/client-common': 5.49.2
+ '@algolia/requester-browser-xhr': 5.49.2
+ '@algolia/requester-fetch': 5.49.2
+ '@algolia/requester-node-http': 5.49.2
+
+ '@algolia/client-common@5.49.2': {}
+
+ '@algolia/client-insights@5.49.2':
+ dependencies:
+ '@algolia/client-common': 5.49.2
+ '@algolia/requester-browser-xhr': 5.49.2
+ '@algolia/requester-fetch': 5.49.2
+ '@algolia/requester-node-http': 5.49.2
+
+ '@algolia/client-personalization@5.49.2':
+ dependencies:
+ '@algolia/client-common': 5.49.2
+ '@algolia/requester-browser-xhr': 5.49.2
+ '@algolia/requester-fetch': 5.49.2
+ '@algolia/requester-node-http': 5.49.2
+
+ '@algolia/client-query-suggestions@5.49.2':
+ dependencies:
+ '@algolia/client-common': 5.49.2
+ '@algolia/requester-browser-xhr': 5.49.2
+ '@algolia/requester-fetch': 5.49.2
+ '@algolia/requester-node-http': 5.49.2
+
+ '@algolia/client-search@5.49.2':
+ dependencies:
+ '@algolia/client-common': 5.49.2
+ '@algolia/requester-browser-xhr': 5.49.2
+ '@algolia/requester-fetch': 5.49.2
+ '@algolia/requester-node-http': 5.49.2
+
+ '@algolia/ingestion@1.49.2':
+ dependencies:
+ '@algolia/client-common': 5.49.2
+ '@algolia/requester-browser-xhr': 5.49.2
+ '@algolia/requester-fetch': 5.49.2
+ '@algolia/requester-node-http': 5.49.2
+
+ '@algolia/monitoring@1.49.2':
+ dependencies:
+ '@algolia/client-common': 5.49.2
+ '@algolia/requester-browser-xhr': 5.49.2
+ '@algolia/requester-fetch': 5.49.2
+ '@algolia/requester-node-http': 5.49.2
+
+ '@algolia/recommend@5.49.2':
+ dependencies:
+ '@algolia/client-common': 5.49.2
+ '@algolia/requester-browser-xhr': 5.49.2
+ '@algolia/requester-fetch': 5.49.2
+ '@algolia/requester-node-http': 5.49.2
+
+ '@algolia/requester-browser-xhr@5.49.2':
+ dependencies:
+ '@algolia/client-common': 5.49.2
+
+ '@algolia/requester-fetch@5.49.2':
+ dependencies:
+ '@algolia/client-common': 5.49.2
+
+ '@algolia/requester-node-http@5.49.2':
+ dependencies:
+ '@algolia/client-common': 5.49.2
+
+ '@antfu/eslint-config@5.4.1(@vue/compiler-sfc@3.5.30)(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.19.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.2))':
dependencies:
'@antfu/install-pkg': 1.1.0
'@clack/prompts': 0.11.0
@@ -2741,7 +3397,7 @@ snapshots:
eslint-plugin-unused-imports: 4.3.0(@typescript-eslint/eslint-plugin@8.51.0(@typescript-eslint/parser@8.51.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))
eslint-plugin-vue: 10.6.2(@stylistic/eslint-plugin@5.6.1(eslint@9.39.2(jiti@2.6.1)))(@typescript-eslint/parser@8.51.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.2.0(eslint@9.39.2(jiti@2.6.1)))
eslint-plugin-yml: 1.19.1(eslint@9.39.2(jiti@2.6.1))
- eslint-processor-vue-blocks: 2.0.0(@vue/compiler-sfc@3.5.26)(eslint@9.39.2(jiti@2.6.1))
+ eslint-processor-vue-blocks: 2.0.0(@vue/compiler-sfc@3.5.30)(eslint@9.39.2(jiti@2.6.1))
globals: 16.5.0
jsonc-eslint-parser: 2.4.2
local-pkg: 1.1.2
@@ -2772,13 +3428,13 @@ snapshots:
'@babel/helper-validator-identifier@7.28.5': {}
- '@babel/parser@7.28.5':
+ '@babel/parser@7.29.0':
dependencies:
- '@babel/types': 7.28.5
+ '@babel/types': 7.29.0
'@babel/runtime@7.28.4': {}
- '@babel/types@7.28.5':
+ '@babel/types@7.29.0':
dependencies:
'@babel/helper-string-parser': 7.27.1
'@babel/helper-validator-identifier': 7.28.5
@@ -2794,6 +3450,30 @@ snapshots:
picocolors: 1.1.1
sisteransi: 1.0.5
+ '@docsearch/css@3.8.2': {}
+
+ '@docsearch/js@3.8.2(@algolia/client-search@5.49.2)(search-insights@2.17.3)':
+ dependencies:
+ '@docsearch/react': 3.8.2(@algolia/client-search@5.49.2)(search-insights@2.17.3)
+ preact: 10.29.0
+ transitivePeerDependencies:
+ - '@algolia/client-search'
+ - '@types/react'
+ - react
+ - react-dom
+ - search-insights
+
+ '@docsearch/react@3.8.2(@algolia/client-search@5.49.2)(search-insights@2.17.3)':
+ dependencies:
+ '@algolia/autocomplete-core': 1.17.7(@algolia/client-search@5.49.2)(algoliasearch@5.49.2)(search-insights@2.17.3)
+ '@algolia/autocomplete-preset-algolia': 1.17.7(@algolia/client-search@5.49.2)(algoliasearch@5.49.2)
+ '@docsearch/css': 3.8.2
+ algoliasearch: 5.49.2
+ optionalDependencies:
+ search-insights: 2.17.3
+ transitivePeerDependencies:
+ - '@algolia/client-search'
+
'@es-joy/jsdoccomment@0.58.0':
dependencies:
'@types/estree': 1.0.8
@@ -2810,102 +3490,153 @@ snapshots:
esquery: 1.7.0
jsdoc-type-pratt-parser: 7.0.0
+ '@esbuild/aix-ppc64@0.21.5':
+ optional: true
+
'@esbuild/aix-ppc64@0.25.12':
optional: true
'@esbuild/aix-ppc64@0.27.2':
optional: true
+ '@esbuild/android-arm64@0.21.5':
+ optional: true
+
'@esbuild/android-arm64@0.25.12':
optional: true
'@esbuild/android-arm64@0.27.2':
optional: true
+ '@esbuild/android-arm@0.21.5':
+ optional: true
+
'@esbuild/android-arm@0.25.12':
optional: true
'@esbuild/android-arm@0.27.2':
optional: true
+ '@esbuild/android-x64@0.21.5':
+ optional: true
+
'@esbuild/android-x64@0.25.12':
optional: true
'@esbuild/android-x64@0.27.2':
optional: true
+ '@esbuild/darwin-arm64@0.21.5':
+ optional: true
+
'@esbuild/darwin-arm64@0.25.12':
optional: true
'@esbuild/darwin-arm64@0.27.2':
optional: true
+ '@esbuild/darwin-x64@0.21.5':
+ optional: true
+
'@esbuild/darwin-x64@0.25.12':
optional: true
'@esbuild/darwin-x64@0.27.2':
optional: true
+ '@esbuild/freebsd-arm64@0.21.5':
+ optional: true
+
'@esbuild/freebsd-arm64@0.25.12':
optional: true
'@esbuild/freebsd-arm64@0.27.2':
optional: true
+ '@esbuild/freebsd-x64@0.21.5':
+ optional: true
+
'@esbuild/freebsd-x64@0.25.12':
optional: true
'@esbuild/freebsd-x64@0.27.2':
optional: true
+ '@esbuild/linux-arm64@0.21.5':
+ optional: true
+
'@esbuild/linux-arm64@0.25.12':
optional: true
'@esbuild/linux-arm64@0.27.2':
optional: true
+ '@esbuild/linux-arm@0.21.5':
+ optional: true
+
'@esbuild/linux-arm@0.25.12':
optional: true
'@esbuild/linux-arm@0.27.2':
optional: true
+ '@esbuild/linux-ia32@0.21.5':
+ optional: true
+
'@esbuild/linux-ia32@0.25.12':
optional: true
'@esbuild/linux-ia32@0.27.2':
optional: true
+ '@esbuild/linux-loong64@0.21.5':
+ optional: true
+
'@esbuild/linux-loong64@0.25.12':
optional: true
'@esbuild/linux-loong64@0.27.2':
optional: true
+ '@esbuild/linux-mips64el@0.21.5':
+ optional: true
+
'@esbuild/linux-mips64el@0.25.12':
optional: true
'@esbuild/linux-mips64el@0.27.2':
optional: true
+ '@esbuild/linux-ppc64@0.21.5':
+ optional: true
+
'@esbuild/linux-ppc64@0.25.12':
optional: true
'@esbuild/linux-ppc64@0.27.2':
optional: true
+ '@esbuild/linux-riscv64@0.21.5':
+ optional: true
+
'@esbuild/linux-riscv64@0.25.12':
optional: true
'@esbuild/linux-riscv64@0.27.2':
optional: true
+ '@esbuild/linux-s390x@0.21.5':
+ optional: true
+
'@esbuild/linux-s390x@0.25.12':
optional: true
'@esbuild/linux-s390x@0.27.2':
optional: true
+ '@esbuild/linux-x64@0.21.5':
+ optional: true
+
'@esbuild/linux-x64@0.25.12':
optional: true
@@ -2918,6 +3649,9 @@ snapshots:
'@esbuild/netbsd-arm64@0.27.2':
optional: true
+ '@esbuild/netbsd-x64@0.21.5':
+ optional: true
+
'@esbuild/netbsd-x64@0.25.12':
optional: true
@@ -2930,6 +3664,9 @@ snapshots:
'@esbuild/openbsd-arm64@0.27.2':
optional: true
+ '@esbuild/openbsd-x64@0.21.5':
+ optional: true
+
'@esbuild/openbsd-x64@0.25.12':
optional: true
@@ -2942,24 +3679,36 @@ snapshots:
'@esbuild/openharmony-arm64@0.27.2':
optional: true
+ '@esbuild/sunos-x64@0.21.5':
+ optional: true
+
'@esbuild/sunos-x64@0.25.12':
optional: true
'@esbuild/sunos-x64@0.27.2':
optional: true
+ '@esbuild/win32-arm64@0.21.5':
+ optional: true
+
'@esbuild/win32-arm64@0.25.12':
optional: true
'@esbuild/win32-arm64@0.27.2':
optional: true
+ '@esbuild/win32-ia32@0.21.5':
+ optional: true
+
'@esbuild/win32-ia32@0.25.12':
optional: true
'@esbuild/win32-ia32@0.27.2':
optional: true
+ '@esbuild/win32-x64@0.21.5':
+ optional: true
+
'@esbuild/win32-x64@0.25.12':
optional: true
@@ -3058,6 +3807,12 @@ snapshots:
'@humanwhocodes/retry@0.4.3': {}
+ '@iconify-json/simple-icons@1.2.73':
+ dependencies:
+ '@iconify/types': 2.0.0
+
+ '@iconify/types@2.0.0': {}
+
'@inquirer/ansi@1.0.2': {}
'@inquirer/checkbox@4.3.2(@types/node@22.19.3)':
@@ -3300,6 +4055,46 @@ snapshots:
'@rollup/rollup-win32-x64-msvc@4.54.0':
optional: true
+ '@shikijs/core@2.5.0':
+ dependencies:
+ '@shikijs/engine-javascript': 2.5.0
+ '@shikijs/engine-oniguruma': 2.5.0
+ '@shikijs/types': 2.5.0
+ '@shikijs/vscode-textmate': 10.0.2
+ '@types/hast': 3.0.4
+ hast-util-to-html: 9.0.5
+
+ '@shikijs/engine-javascript@2.5.0':
+ dependencies:
+ '@shikijs/types': 2.5.0
+ '@shikijs/vscode-textmate': 10.0.2
+ oniguruma-to-es: 3.1.1
+
+ '@shikijs/engine-oniguruma@2.5.0':
+ dependencies:
+ '@shikijs/types': 2.5.0
+ '@shikijs/vscode-textmate': 10.0.2
+
+ '@shikijs/langs@2.5.0':
+ dependencies:
+ '@shikijs/types': 2.5.0
+
+ '@shikijs/themes@2.5.0':
+ dependencies:
+ '@shikijs/types': 2.5.0
+
+ '@shikijs/transformers@2.5.0':
+ dependencies:
+ '@shikijs/core': 2.5.0
+ '@shikijs/types': 2.5.0
+
+ '@shikijs/types@2.5.0':
+ dependencies:
+ '@shikijs/vscode-textmate': 10.0.2
+ '@types/hast': 3.0.4
+
+ '@shikijs/vscode-textmate@10.0.2': {}
+
'@stylistic/eslint-plugin@5.6.1(eslint@9.39.2(jiti@2.6.1))':
dependencies:
'@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1))
@@ -3328,16 +4123,29 @@ snapshots:
'@types/jsonfile': 6.1.4
'@types/node': 22.19.3
+ '@types/hast@3.0.4':
+ dependencies:
+ '@types/unist': 3.0.3
+
'@types/json-schema@7.0.15': {}
'@types/jsonfile@6.1.4':
dependencies:
'@types/node': 22.19.3
+ '@types/linkify-it@5.0.0': {}
+
+ '@types/markdown-it@14.1.2':
+ dependencies:
+ '@types/linkify-it': 5.0.0
+ '@types/mdurl': 2.0.0
+
'@types/mdast@4.0.4':
dependencies:
'@types/unist': 3.0.3
+ '@types/mdurl@2.0.0': {}
+
'@types/ms@2.1.0': {}
'@types/node@22.19.3':
@@ -3348,6 +4156,8 @@ snapshots:
'@types/unist@3.0.3': {}
+ '@types/web-bluetooth@0.0.21': {}
+
'@typescript-eslint/eslint-plugin@8.51.0(@typescript-eslint/parser@8.51.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@eslint-community/regexpp': 4.12.2
@@ -3439,6 +4249,13 @@ snapshots:
'@typescript-eslint/types': 8.51.0
eslint-visitor-keys: 4.2.1
+ '@ungap/structured-clone@1.3.0': {}
+
+ '@vitejs/plugin-vue@5.2.4(vite@5.4.21(@types/node@22.19.3))(vue@3.5.30(typescript@5.9.3))':
+ dependencies:
+ vite: 5.4.21(@types/node@22.19.3)
+ vue: 3.5.30(typescript@5.9.3)
+
'@vitest/eslint-plugin@1.6.5(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.19.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.2))':
dependencies:
'@typescript-eslint/scope-manager': 8.51.0
@@ -3492,38 +4309,108 @@ snapshots:
loupe: 3.2.1
tinyrainbow: 2.0.0
- '@vue/compiler-core@3.5.26':
+ '@vue/compiler-core@3.5.30':
dependencies:
- '@babel/parser': 7.28.5
- '@vue/shared': 3.5.26
- entities: 7.0.0
+ '@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.26':
+ '@vue/compiler-dom@3.5.30':
dependencies:
- '@vue/compiler-core': 3.5.26
- '@vue/shared': 3.5.26
+ '@vue/compiler-core': 3.5.30
+ '@vue/shared': 3.5.30
- '@vue/compiler-sfc@3.5.26':
+ '@vue/compiler-sfc@3.5.30':
dependencies:
- '@babel/parser': 7.28.5
- '@vue/compiler-core': 3.5.26
- '@vue/compiler-dom': 3.5.26
- '@vue/compiler-ssr': 3.5.26
- '@vue/shared': 3.5.26
+ '@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.6
+ postcss: 8.5.8
source-map-js: 1.2.1
- '@vue/compiler-ssr@3.5.26':
+ '@vue/compiler-ssr@3.5.30':
dependencies:
- '@vue/compiler-dom': 3.5.26
- '@vue/shared': 3.5.26
+ '@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-kit@7.7.9':
+ dependencies:
+ '@vue/devtools-shared': 7.7.9
+ birpc: 2.9.0
+ hookable: 5.5.3
+ mitt: 3.0.1
+ perfect-debounce: 1.0.0
+ speakingurl: 14.0.1
+ superjson: 2.2.6
+
+ '@vue/devtools-shared@7.7.9':
+ dependencies:
+ rfdc: 1.4.1
+
+ '@vue/reactivity@3.5.30':
+ dependencies:
+ '@vue/shared': 3.5.30
+
+ '@vue/runtime-core@3.5.30':
+ dependencies:
+ '@vue/reactivity': 3.5.30
+ '@vue/shared': 3.5.30
+
+ '@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.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.26': {}
+ '@vue/shared@3.5.30': {}
+
+ '@vueuse/core@12.8.2(typescript@5.9.3)':
+ dependencies:
+ '@types/web-bluetooth': 0.0.21
+ '@vueuse/metadata': 12.8.2
+ '@vueuse/shared': 12.8.2(typescript@5.9.3)
+ vue: 3.5.30(typescript@5.9.3)
+ transitivePeerDependencies:
+ - typescript
+
+ '@vueuse/integrations@12.8.2(change-case@5.4.4)(focus-trap@7.8.0)(typescript@5.9.3)':
+ dependencies:
+ '@vueuse/core': 12.8.2(typescript@5.9.3)
+ '@vueuse/shared': 12.8.2(typescript@5.9.3)
+ vue: 3.5.30(typescript@5.9.3)
+ optionalDependencies:
+ change-case: 5.4.4
+ focus-trap: 7.8.0
+ transitivePeerDependencies:
+ - typescript
+
+ '@vueuse/metadata@12.8.2': {}
+
+ '@vueuse/shared@12.8.2(typescript@5.9.3)':
+ dependencies:
+ vue: 3.5.30(typescript@5.9.3)
+ transitivePeerDependencies:
+ - typescript
+
acorn-jsx@5.3.2(acorn@8.15.0):
dependencies:
acorn: 8.15.0
@@ -3537,6 +4424,23 @@ snapshots:
json-schema-traverse: 0.4.1
uri-js: 4.4.1
+ algoliasearch@5.49.2:
+ dependencies:
+ '@algolia/abtesting': 1.15.2
+ '@algolia/client-abtesting': 5.49.2
+ '@algolia/client-analytics': 5.49.2
+ '@algolia/client-common': 5.49.2
+ '@algolia/client-insights': 5.49.2
+ '@algolia/client-personalization': 5.49.2
+ '@algolia/client-query-suggestions': 5.49.2
+ '@algolia/client-search': 5.49.2
+ '@algolia/ingestion': 1.49.2
+ '@algolia/monitoring': 1.49.2
+ '@algolia/recommend': 5.49.2
+ '@algolia/requester-browser-xhr': 5.49.2
+ '@algolia/requester-fetch': 5.49.2
+ '@algolia/requester-node-http': 5.49.2
+
ansi-regex@5.0.1: {}
ansi-regex@6.2.2: {}
@@ -3566,6 +4470,8 @@ snapshots:
baseline-browser-mapping@2.9.11: {}
+ birpc@2.9.0: {}
+
boolbase@1.0.0: {}
brace-expansion@1.1.12:
@@ -3619,6 +4525,10 @@ snapshots:
change-case@5.4.4: {}
+ character-entities-html4@2.1.0: {}
+
+ character-entities-legacy@3.0.0: {}
+
character-entities@2.0.2: {}
chardet@2.1.1: {}
@@ -3651,6 +4561,8 @@ snapshots:
colord@2.9.3: {}
+ comma-separated-tokens@2.0.3: {}
+
commander@11.1.0: {}
comment-parser@1.4.1: {}
@@ -3665,6 +4577,10 @@ snapshots:
consola@3.4.2: {}
+ copy-anything@4.0.5:
+ dependencies:
+ is-what: 5.5.0
+
core-js-compat@3.47.0:
dependencies:
browserslist: 4.28.1
@@ -3749,6 +4665,8 @@ snapshots:
dependencies:
css-tree: 2.2.1
+ csstype@3.2.3: {}
+
debug@4.4.3:
dependencies:
ms: 2.1.3
@@ -3793,6 +4711,8 @@ snapshots:
electron-to-chromium@1.5.267: {}
+ emoji-regex-xs@1.0.0: {}
+
emoji-regex@8.0.0: {}
empathic@2.0.0: {}
@@ -3804,10 +4724,36 @@ snapshots:
entities@4.5.0: {}
- entities@7.0.0: {}
+ entities@7.0.1: {}
es-module-lexer@1.7.0: {}
+ esbuild@0.21.5:
+ optionalDependencies:
+ '@esbuild/aix-ppc64': 0.21.5
+ '@esbuild/android-arm': 0.21.5
+ '@esbuild/android-arm64': 0.21.5
+ '@esbuild/android-x64': 0.21.5
+ '@esbuild/darwin-arm64': 0.21.5
+ '@esbuild/darwin-x64': 0.21.5
+ '@esbuild/freebsd-arm64': 0.21.5
+ '@esbuild/freebsd-x64': 0.21.5
+ '@esbuild/linux-arm': 0.21.5
+ '@esbuild/linux-arm64': 0.21.5
+ '@esbuild/linux-ia32': 0.21.5
+ '@esbuild/linux-loong64': 0.21.5
+ '@esbuild/linux-mips64el': 0.21.5
+ '@esbuild/linux-ppc64': 0.21.5
+ '@esbuild/linux-riscv64': 0.21.5
+ '@esbuild/linux-s390x': 0.21.5
+ '@esbuild/linux-x64': 0.21.5
+ '@esbuild/netbsd-x64': 0.21.5
+ '@esbuild/openbsd-x64': 0.21.5
+ '@esbuild/sunos-x64': 0.21.5
+ '@esbuild/win32-arm64': 0.21.5
+ '@esbuild/win32-ia32': 0.21.5
+ '@esbuild/win32-x64': 0.21.5
+
esbuild@0.25.12:
optionalDependencies:
'@esbuild/aix-ppc64': 0.25.12
@@ -4070,9 +5016,9 @@ snapshots:
transitivePeerDependencies:
- supports-color
- eslint-processor-vue-blocks@2.0.0(@vue/compiler-sfc@3.5.26)(eslint@9.39.2(jiti@2.6.1)):
+ eslint-processor-vue-blocks@2.0.0(@vue/compiler-sfc@3.5.30)(eslint@9.39.2(jiti@2.6.1)):
dependencies:
- '@vue/compiler-sfc': 3.5.26
+ '@vue/compiler-sfc': 3.5.30
eslint: 9.39.2(jiti@2.6.1)
eslint-scope@8.4.0:
@@ -4197,6 +5143,10 @@ snapshots:
flatted@3.3.3: {}
+ focus-trap@7.8.0:
+ dependencies:
+ tabbable: 6.4.0
+
format@0.2.2: {}
fraction.js@5.3.4: {}
@@ -4242,8 +5192,28 @@ snapshots:
dependencies:
function-bind: 1.1.2
+ hast-util-to-html@9.0.5:
+ dependencies:
+ '@types/hast': 3.0.4
+ '@types/unist': 3.0.3
+ ccount: 2.0.1
+ comma-separated-tokens: 2.0.3
+ hast-util-whitespace: 3.0.0
+ html-void-elements: 3.0.0
+ mdast-util-to-hast: 13.2.1
+ property-information: 7.1.0
+ space-separated-tokens: 2.0.2
+ stringify-entities: 4.0.4
+ zwitch: 2.0.4
+
+ hast-util-whitespace@3.0.0:
+ dependencies:
+ '@types/hast': 3.0.4
+
hookable@5.5.3: {}
+ html-void-elements@3.0.0: {}
+
i18next-fs-backend@2.6.1: {}
i18next@25.7.3(typescript@5.9.3):
@@ -4307,6 +5277,8 @@ snapshots:
is-unicode-supported@2.1.0: {}
+ is-what@5.5.0: {}
+
isexe@2.0.0: {}
jiti@1.21.7: {}
@@ -4395,6 +5367,8 @@ snapshots:
dependencies:
'@jridgewell/sourcemap-codec': 1.5.5
+ mark.js@8.11.1: {}
+
markdown-table@3.0.4: {}
mdast-util-find-and-replace@3.0.2:
@@ -4494,6 +5468,18 @@ snapshots:
'@types/mdast': 4.0.4
unist-util-is: 6.0.1
+ mdast-util-to-hast@13.2.1:
+ dependencies:
+ '@types/hast': 3.0.4
+ '@types/mdast': 4.0.4
+ '@ungap/structured-clone': 1.3.0
+ devlop: 1.1.0
+ micromark-util-sanitize-uri: 2.0.1
+ trim-lines: 3.0.1
+ unist-util-position: 5.0.0
+ unist-util-visit: 5.0.0
+ vfile: 6.0.3
+
mdast-util-to-markdown@2.1.2:
dependencies:
'@types/mdast': 4.0.4
@@ -4722,7 +5708,11 @@ snapshots:
dependencies:
brace-expansion: 2.0.2
- mkdist@2.4.1(typescript@5.9.3):
+ minisearch@7.2.0: {}
+
+ mitt@3.0.1: {}
+
+ mkdist@2.4.1(typescript@5.9.3)(vue@3.5.30(typescript@5.9.3)):
dependencies:
autoprefixer: 10.4.23(postcss@8.5.6)
citty: 0.1.6
@@ -4739,6 +5729,7 @@ snapshots:
tinyglobby: 0.2.15
optionalDependencies:
typescript: 5.9.3
+ vue: 3.5.30(typescript@5.9.3)
mlly@1.8.0:
dependencies:
@@ -4771,6 +5762,12 @@ snapshots:
dependencies:
mimic-function: 5.0.1
+ oniguruma-to-es@3.1.1:
+ dependencies:
+ emoji-regex-xs: 1.0.0
+ regex: 6.1.0
+ regex-recursion: 6.0.2
+
optionator@0.9.4:
dependencies:
deep-is: 0.1.4
@@ -4824,6 +5821,8 @@ snapshots:
pathval@2.0.1: {}
+ perfect-debounce@1.0.0: {}
+
picocolors@1.1.1: {}
picomatch@4.0.3: {}
@@ -5013,10 +6012,20 @@ 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
+
+ preact@10.29.0: {}
+
prelude-ls@1.2.1: {}
pretty-bytes@7.1.0: {}
+ property-information@7.1.0: {}
+
punycode@2.3.1: {}
quansync@0.2.11: {}
@@ -5025,6 +6034,16 @@ snapshots:
dependencies:
'@eslint-community/regexpp': 4.12.2
+ regex-recursion@6.0.2:
+ dependencies:
+ regex-utilities: 2.3.0
+
+ regex-utilities@2.3.0: {}
+
+ regex@6.1.0:
+ dependencies:
+ regex-utilities: 2.3.0
+
regexp-ast-analysis@0.7.1:
dependencies:
'@eslint-community/regexpp': 4.12.2
@@ -5051,6 +6070,8 @@ snapshots:
onetime: 7.0.0
signal-exit: 4.1.0
+ rfdc@1.4.1: {}
+
rollup-plugin-dts@6.3.0(rollup@4.54.0)(typescript@5.9.3):
dependencies:
magic-string: 0.30.21
@@ -5105,6 +6126,8 @@ snapshots:
scule@1.3.0: {}
+ search-insights@2.17.3: {}
+
semver@7.7.3: {}
shebang-command@2.0.0:
@@ -5113,6 +6136,17 @@ snapshots:
shebang-regex@3.0.0: {}
+ shiki@2.5.0:
+ dependencies:
+ '@shikijs/core': 2.5.0
+ '@shikijs/engine-javascript': 2.5.0
+ '@shikijs/engine-oniguruma': 2.5.0
+ '@shikijs/langs': 2.5.0
+ '@shikijs/themes': 2.5.0
+ '@shikijs/types': 2.5.0
+ '@shikijs/vscode-textmate': 10.0.2
+ '@types/hast': 3.0.4
+
siginfo@2.0.0: {}
signal-exit@4.1.0: {}
@@ -5123,6 +6157,8 @@ snapshots:
source-map-js@1.2.1: {}
+ space-separated-tokens@2.0.2: {}
+
spdx-exceptions@2.5.0: {}
spdx-expression-parse@4.0.0:
@@ -5132,6 +6168,8 @@ snapshots:
spdx-license-ids@3.0.22: {}
+ speakingurl@14.0.1: {}
+
stackback@0.0.2: {}
std-env@3.10.0: {}
@@ -5149,6 +6187,11 @@ snapshots:
get-east-asian-width: 1.4.0
strip-ansi: 7.1.2
+ stringify-entities@4.0.4:
+ dependencies:
+ character-entities-html4: 2.1.0
+ character-entities-legacy: 3.0.0
+
strip-ansi@6.0.1:
dependencies:
ansi-regex: 5.0.1
@@ -5171,6 +6214,10 @@ snapshots:
postcss: 8.5.6
postcss-selector-parser: 7.1.1
+ superjson@2.2.6:
+ dependencies:
+ copy-anything: 4.0.5
+
supports-color@7.2.0:
dependencies:
has-flag: 4.0.0
@@ -5191,6 +6238,8 @@ snapshots:
dependencies:
'@pkgr/core': 0.2.9
+ tabbable@6.4.0: {}
+
tapable@2.3.0: {}
tinybench@2.9.0: {}
@@ -5214,6 +6263,8 @@ snapshots:
dependencies:
eslint-visitor-keys: 3.4.3
+ trim-lines@3.0.1: {}
+
ts-api-utils@2.4.0(typescript@5.9.3):
dependencies:
typescript: 5.9.3
@@ -5242,7 +6293,7 @@ snapshots:
ufo@1.6.1: {}
- unbuild@3.6.1(typescript@5.9.3):
+ unbuild@3.6.1(typescript@5.9.3)(vue@3.5.30(typescript@5.9.3)):
dependencies:
'@rollup/plugin-alias': 5.1.1(rollup@4.54.0)
'@rollup/plugin-commonjs': 28.0.9(rollup@4.54.0)
@@ -5258,7 +6309,7 @@ snapshots:
hookable: 5.5.3
jiti: 2.6.1
magic-string: 0.30.21
- mkdist: 2.4.1(typescript@5.9.3)
+ mkdist: 2.4.1(typescript@5.9.3)(vue@3.5.30(typescript@5.9.3))
mlly: 1.8.0
pathe: 2.0.3
pkg-types: 2.3.0
@@ -5282,6 +6333,10 @@ snapshots:
dependencies:
'@types/unist': 3.0.3
+ unist-util-position@5.0.0:
+ dependencies:
+ '@types/unist': 3.0.3
+
unist-util-stringify-position@4.0.0:
dependencies:
'@types/unist': 3.0.3
@@ -5319,6 +6374,16 @@ snapshots:
util-deprecate@1.0.2: {}
+ vfile-message@4.0.3:
+ dependencies:
+ '@types/unist': 3.0.3
+ unist-util-stringify-position: 4.0.0
+
+ vfile@6.0.3:
+ dependencies:
+ '@types/unist': 3.0.3
+ vfile-message: 4.0.3
+
vite-node@3.2.4(@types/node@22.19.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.2):
dependencies:
cac: 6.7.14
@@ -5340,6 +6405,15 @@ snapshots:
- tsx
- yaml
+ vite@5.4.21(@types/node@22.19.3):
+ dependencies:
+ esbuild: 0.21.5
+ postcss: 8.5.6
+ rollup: 4.54.0
+ optionalDependencies:
+ '@types/node': 22.19.3
+ fsevents: 2.3.3
+
vite@7.3.1(@types/node@22.19.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.2):
dependencies:
esbuild: 0.27.2
@@ -5355,6 +6429,55 @@ snapshots:
tsx: 4.21.0
yaml: 2.8.2
+ vitepress@1.6.4(@algolia/client-search@5.49.2)(@types/node@22.19.3)(change-case@5.4.4)(postcss@8.5.6)(search-insights@2.17.3)(typescript@5.9.3):
+ dependencies:
+ '@docsearch/css': 3.8.2
+ '@docsearch/js': 3.8.2(@algolia/client-search@5.49.2)(search-insights@2.17.3)
+ '@iconify-json/simple-icons': 1.2.73
+ '@shikijs/core': 2.5.0
+ '@shikijs/transformers': 2.5.0
+ '@shikijs/types': 2.5.0
+ '@types/markdown-it': 14.1.2
+ '@vitejs/plugin-vue': 5.2.4(vite@5.4.21(@types/node@22.19.3))(vue@3.5.30(typescript@5.9.3))
+ '@vue/devtools-api': 7.7.9
+ '@vue/shared': 3.5.26
+ '@vueuse/core': 12.8.2(typescript@5.9.3)
+ '@vueuse/integrations': 12.8.2(change-case@5.4.4)(focus-trap@7.8.0)(typescript@5.9.3)
+ focus-trap: 7.8.0
+ mark.js: 8.11.1
+ minisearch: 7.2.0
+ shiki: 2.5.0
+ vite: 5.4.21(@types/node@22.19.3)
+ vue: 3.5.30(typescript@5.9.3)
+ optionalDependencies:
+ postcss: 8.5.6
+ transitivePeerDependencies:
+ - '@algolia/client-search'
+ - '@types/node'
+ - '@types/react'
+ - async-validator
+ - axios
+ - change-case
+ - drauu
+ - fuse.js
+ - idb-keyval
+ - jwt-decode
+ - less
+ - lightningcss
+ - nprogress
+ - qrcode
+ - react
+ - react-dom
+ - sass
+ - sass-embedded
+ - search-insights
+ - sortablejs
+ - stylus
+ - sugarss
+ - terser
+ - typescript
+ - universal-cookie
+
vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.19.3)(jiti@2.6.1)(tsx@4.21.0)(yaml@2.8.2):
dependencies:
'@types/chai': 5.2.3
@@ -5409,6 +6532,16 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ 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
+
which@2.0.2:
dependencies:
isexe: 2.0.0