From 1ae69f53f747c355e355e9b11f181b426bf9a0b1 Mon Sep 17 00:00:00 2001 From: dyzulk <66510723+dyzulk@users.noreply.github.com> Date: Fri, 16 Jan 2026 12:04:21 +0700 Subject: [PATCH] Setup VitePress documentation site --- .gitattributes | 12 + .github/workflows/deploy-docs.yml | 55 + DOCKER_README.md | 3 + README.md | 26 +- docs/.vitepress/config.mts | 63 + docs/INSTALLATION.md | 17 +- docs/guide/docker.md | 77 + docs/guide/installation.md | 140 ++ docs/index.md | 39 + docs/public/CNAME | 1 + docs/public/logo.png | Bin 0 -> 69864 bytes package-lock.json | 2415 ++++++++++++++++++++++++++++- package.json | 10 +- 13 files changed, 2842 insertions(+), 16 deletions(-) create mode 100644 .gitattributes create mode 100644 .github/workflows/deploy-docs.yml create mode 100644 docs/.vitepress/config.mts create mode 100644 docs/guide/docker.md create mode 100644 docs/guide/installation.md create mode 100644 docs/index.md create mode 100644 docs/public/CNAME create mode 100644 docs/public/logo.png diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9ed8796 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,12 @@ +# Exclude development and documentation files from Composer/Git Archive +/docs export-ignore +/.github export-ignore +/docker export-ignore +/.gitattributes export-ignore +/.gitignore export-ignore +/.dockerignore export-ignore +/.env.example export-ignore +/deploy_package.tar.gz export-ignore +/DOCKER_README.md export-ignore +/phpstan.neon export-ignore +/phpunit.xml export-ignore diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml new file mode 100644 index 0000000..14d2dee --- /dev/null +++ b/.github/workflows/deploy-docs.yml @@ -0,0 +1,55 @@ +name: Deploy Documentation + +on: + push: + branches: [ main ] + paths: + - 'docs/**' + - '.github/workflows/deploy-docs.yml' + +permissions: + contents: read + pages: write + id-token: write + +concurrency: + group: pages + cancel-in-progress: false + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 // fetch all history for lastUpdated + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: npm + + - name: Install Dependencies + run: npm ci + + - name: Build with VitePress + run: npm run docs:build + + - name: Upload artifact + 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 + name: Deploy + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/DOCKER_README.md b/DOCKER_README.md index d371fd6..a1deb65 100644 --- a/DOCKER_README.md +++ b/DOCKER_README.md @@ -29,6 +29,9 @@ docker run -d \ Open your browser and navigate to `http://localhost:8080`. +**Initial Setup:** +If this is your first run, you will be redirected to the **Web Installer**. Follow the on-screen instructions to create the database and admin account. + ## 🛠ïļ Docker Compose For a more permanent setup, use `docker-compose.yml`: diff --git a/README.md b/README.md index 72cbbfc..35895ca 100644 --- a/README.md +++ b/README.md @@ -28,29 +28,37 @@ MIVO is a complete rewrite of the legendary **Mikhmon v3**, re-engineered with a ### Quick Start -1. **Clone the Repository** +1. **Install via Composer** ```bash - git clone https://github.com/dyzulk/mivo.git + composer create-project dyzulk/mivo cd mivo ``` + > **Alternative (Docker):** + > ```bash + > docker pull dyzulk/mivo + > ``` + > *See [INSTALLATION.md](docs/INSTALLATION.md) for more tags.* + 2. **Setup Environment** ```bash cp .env.example .env ``` -3. **Install & Generate Key** - ```bash - php mivo install - ``` - *This will create the database, run migrations, generate your secure `APP_KEY`, and set up the admin account.* - -4. **Run Development Server** +3. **Run Development Server** ```bash php mivo serve ``` Access the app at `http://localhost:8000`. +4. **Install Application** + * **Option A: CLI (Recommended)** + ```bash + php mivo install + ``` + * **Option B: Web Installer** + Open `http://localhost:8000/install` in your browser and follow the instructions. + ## 📂 Structure * `app/` - Core application logic (Controllers, Models, Views). diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts new file mode 100644 index 0000000..093d17c --- /dev/null +++ b/docs/.vitepress/config.mts @@ -0,0 +1,63 @@ +import { defineConfig } from 'vitepress' + +export default defineConfig({ + title: "MIVO", + description: "Modern Mikrotik Voucher Management System", + lang: 'en-US', + cleanUrls: true, + lastUpdated: true, + + head: [ + ['link', { rel: 'icon', href: '/logo.png' }] + ], + + themeConfig: { + logo: '/logo.png', + siteTitle: 'MIVO', + + nav: [ + { text: 'Home', link: '/' }, + { text: 'Guide', link: '/guide/installation' }, + { text: 'Docker', link: '/guide/docker' }, + { text: 'GitHub', link: 'https://github.com/dyzulk/mivo' } + ], + + sidebar: [ + { + text: 'Introduction', + items: [ + { text: 'What is MIVO?', link: '/' }, + { text: 'Installation', link: '/guide/installation' } + ] + }, + { + text: 'Deployment', + items: [ + { text: 'Docker Guide', link: '/guide/docker' }, + { text: 'Manual Installation', link: '/guide/installation#manual-installation' }, + { text: 'PaaS / Cloud', link: '/guide/installation#paas-cloud-railway-render-heroku' } + ] + }, + { + text: 'Support', + items: [ + { text: 'Contribution', link: 'https://github.com/dyzulk/mivo/blob/main/CONTRIBUTING.md' }, + { text: 'Donate', link: 'https://sociabuzz.com/dyzulkdev/tribe' } + ] + } + ], + + socialLinks: [ + { icon: 'github', link: 'https://github.com/dyzulk/mivo' } + ], + + footer: { + message: 'Released under the MIT License.', + copyright: 'Copyright ÂĐ 2026 DyzulkDev' + }, + + search: { + provider: 'local' + } + } +}) diff --git a/docs/INSTALLATION.md b/docs/INSTALLATION.md index 7bf63f4..e34d0a8 100644 --- a/docs/INSTALLATION.md +++ b/docs/INSTALLATION.md @@ -16,8 +16,15 @@ The easiest way to run MIVO. ```bash docker-compose up -d --build ``` -2. **Access** Go to `http://localhost:8080` + +2. **Manual Pull (Alternative)** + If you prefer to pull the image manually: + ```bash + docker pull dyzulk/mivo:latest # Stable + docker pull dyzulk/mivo:v1.0.0 # Specific Version + docker pull dyzulk/mivo:edge # Bleeding Edge + ``` *Note: The database is persisted in `app/Database` via volumes.* @@ -121,5 +128,9 @@ Most shared hosting uses Apache or OpenLiteSpeed, which is fully compatible. ## ðŸ“Ĩ Post-Installation After setting up the server: -1. Copy `.env.example` to `.env`. -2. Run `php mivo install` OR access `/install` in your browser. +1. Copy `.env.example` to `.env` (if not already done). +2. **Install Application** + * **Option A: CLI** + Run `php mivo install` in your terminal. + * **Option B: Web Installer** + Open `http://your-domain.com/install` in your browser. diff --git a/docs/guide/docker.md b/docs/guide/docker.md new file mode 100644 index 0000000..11784e3 --- /dev/null +++ b/docs/guide/docker.md @@ -0,0 +1,77 @@ +--- +title: Docker Guide +--- + +# Docker Guide + +This Docker image is built on **Alpine Linux** and **Nginx**, optimized for high performance and low resource usage. + +## 🚀 Quick Start + +Run MIVO in a single command: + +```bash +docker run -d \ + --name mivo \ + -p 8080:80 \ + -e APP_KEY=base64:YOUR_GENERATED_KEY \ + -e APP_ENV=production \ + -v mivo_data:/var/www/html/app/Database \ + -v mivo_config:/var/www/html/.env \ + dyzulk/mivo:latest +``` + +Open your browser and navigate to `http://localhost:8080`. + +**Initial Setup:** +If this is your first run, you will be redirected to the **Web Installer**. Follow the on-screen instructions to create the database and admin account. + +## 🛠ïļ Docker Compose + +For a more permanent setup, use `docker-compose.yml`: + +```yaml +services: + mivo: + image: dyzulk/mivo:latest + container_name: mivo + restart: unless-stopped + ports: + - "8080:80" + environment: + - APP_ENV=production + - TZ=Asia/Jakarta + volumes: + - ./mivo-data:/var/www/html/app/Database +``` + +## ðŸ“Ķ Tags + +- `latest`: Stable release (recommended). +- `edge`: Bleeding edge build from the `main` branch. +- `v1.x.x`: Specific released versions. + +## 🔧 Environment Variables + +| Variable | Description | Default | +| :--- | :--- | :--- | +| `APP_ENV` | Application environment (`production` or `local`). | `production` | +| `APP_DEBUG` | Enable debug mode (`true` or `false`). | `false` | +| `APP_KEY` | 32-character random string (base64). Auto-generated on first install if not provided. | | +| `TZ` | Timezone for the container. | `UTC` | + +## 📂 Volumes + +Persist your data by mounting these paths: + +- `/var/www/html/app/Database`: Stores the SQLite database and session files. **(Critical)** +- `/var/www/html/public/assets/img/logos`: Stores uploaded custom logos. + +## ðŸĪ Support the Project + +If you find MIVO useful, please consider supporting its development. Your contribution helps keep the project alive! + +[![SociaBuzz Tribe](https://img.shields.io/badge/SociaBuzz-Tribe-green?style=for-the-badge&logo=sociabuzz&logoColor=white)](https://sociabuzz.com/dyzulkdev/tribe) + +--- +*Created with âĪïļ by DyzulkDev* diff --git a/docs/guide/installation.md b/docs/guide/installation.md new file mode 100644 index 0000000..00de0ce --- /dev/null +++ b/docs/guide/installation.md @@ -0,0 +1,140 @@ +--- +title: Installation Guide +--- + +# Installation Guide + +This guide covers installation on various platforms. MIVO is designed to be lightweight and runs on almost any PHP-capable server. + +## 📋 General Requirements +* **PHP**: 8.0 or higher +* **Extensions**: `sqlite3`, `openssl`, `mbstring`, `json` +* **Database**: SQLite (File based, no server needed) + +--- + +## 🐋 Docker (Recommended) +The easiest way to run MIVO. + +1. **Build & Run** + ```bash + docker-compose up -d --build + ``` + Go to `http://localhost:8080` + +2. **Manual Pull (Alternative)** + If you prefer to pull the image manually: + ```bash + docker pull dyzulk/mivo:latest # Stable + docker pull dyzulk/mivo:v1.0.0 # Specific Version + docker pull dyzulk/mivo:edge # Bleeding Edge + ``` + +*Note: The database is persisted in `app/Database` via volumes.* + +--- + +## ðŸŠķ Apache / OpenLiteSpeed +1. **Document Root**: Set your web server's document root to the `public/` folder. +2. **Rewrite Rules**: Ensure `mod_rewrite` is enabled. MIVO includes a `.htaccess` file in `public/` that handles URL routing automatically. +3. **Permissions**: Ensure the web server user (e.g., `www-data`) has **write** access to: + * `app/Database/` (directory and file) + * `app/Config/` (if using installer) + * `.env` file + +--- + +## ðŸŸĒ Nginx +Nginx does not read `.htaccess`. Use this configuration block in your `server` block: + +```nginx +server { + listen 80; + server_name your-domain.com; + root /path/to/mivo/public; + index index.php; + + location / { + try_files $uri $uri/ /index.php?$query_string; + } + + location ~ \.php$ { + include snippets/fastcgi-php.conf; + fastcgi_pass unix:/run/php/php8.2-fpm.sock; # Adjust version + } + + location ~ /\.ht { + deny all; + } +} +``` + +--- + +## 🊟 IIS (Windows) +1. **Document Root**: Point the site to the `public/` folder. +2. **Web Config**: A `web.config` file has been provided in `public/` to handle URL Rewriting. +3. **Requirements**: Ensure **URL Rewrite Module 2.0** is installed on IIS. + +--- + +## ðŸ“ą STB / Android (Awebserver / Termux) + +### Awebserver +1. Copy the MIVO files to `/htdocs`. +2. Point the document root to `public` if supported, or access via `http://localhost:8080/public`. +3. Ensure PHP version is compatible. + +### Termux +1. Install PHP: `pkg install php` +2. Navigate to MIVO directory: `cd mivo` +3. Use the built-in server: + ```bash + php mivo serve --host=0.0.0.0 --port=8080 + ``` +4. Access via browser. + +--- + + +--- + +## 🌐 Shared Hosting (cPanel / DirectAdmin) +Most shared hosting uses Apache or OpenLiteSpeed, which is fully compatible. + +1. **Upload Files**: Upload the MIVO files to `public_html/mivo` (or a subdomain folder). +2. **Point Domain**: + * **Recommended**: Go to "Domains" or "Subdomains" in cPanel and set the **Document Root** to point strictly to the `public/` folder (e.g., `public_html/mivo/public`). + * **Alternative**: If you cannot change Document Root, you can move contents of `public/` to the root `public_html` and move `app/`, `routes/`, etc. one level up (not recommended for security). +3. **PHP Version**: Select PHP 8.0+ in "Select PHP Version" menu. +4. **Extensions**: Ensure `sqlite3` and `fileinfo` are checked. + +--- + +## 🎛ïļ aaPanel (VPS) +1. **Create Website**: Add site -> PHP-8.x. +2. **Site Directory**: + * Set **Running Directory** (bukan Site Directory) to `/public`. + * Uncheck "Anti-XSS" (sometimes blocks config saving). +3. **URL Rewrite**: Select `thinkphp` or `laravel` template (compatible) OR just use the Nginx config provided above. +4. **Permissions**: Chown `www` user to the site directory. + +--- + +## ☁ïļ PaaS Cloud (Railway / Render / Heroku) +**WARNING**: MIVO uses SQLite (File Database). Most PaaS cloud have **Ephemeral Filesytem** (Reset on restart). + +* **Requirement**: You MUST mount a **Persistent Volume/Disk**. +* **Mount Path**: Mount your volume to `/var/www/html/app/Database` (or wherever you put MIVO). +* **Docker**: Use the Docker deployment method, it works natively on these platforms. + +--- + +## ðŸ“Ĩ Post-Installation +After setting up the server: +1. Copy `.env.example` to `.env` (if not already done). +2. **Install Application** + * **Option A: CLI** + Run `php mivo install` in your terminal. + * **Option B: Web Installer** + Open `http://your-domain.com/install` in your browser. diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..921b03f --- /dev/null +++ b/docs/index.md @@ -0,0 +1,39 @@ +--- +layout: home + +hero: + name: "MIVO" + text: "Mikrotik Voucher Management" + tagline: Modern, Lightweight, and Efficient. Built for low-end devices with premium UX. + image: + src: /logo.png + alt: MIVO Logo + actions: + - theme: brand + text: Get Started + link: /guide/installation + - theme: alt + text: Docker Image + link: /guide/docker + +features: + - title: Lightweight Core + details: Built on a custom minimal MVC framework (~50KB core) optimized for STB/Android. + - title: Modern UI/UX + details: Fresh Glassmorphism design system using TailwindCSS and Alpine.js. + - title: Docker Ready + details: Official Alpine-based image (~50MB) with Nginx and Supervisor. + - title: Secure + details: Environment-based config (.env), encrypted credentials, and secure sessions. +--- + +## Why MIVO? + +MIVO is a complete rewrite of the legendary **Mikhmon v3**, re-engineered to solve common performance issues on low-end hardware. + +### Key Highlights + +- **⚡ Blazing Fast**: No heavy frameworks like Laravel. Pure PHP 8.0+ performance. +- **ðŸ“ą Mobile First**: Fully responsive design that feels like a native app. +- **🔌 API First**: Built-in REST API with CORS support for 3rd party integrations. +- **🛠ïļ Developer Friendly**: Clean architecture, CLI tools (`php mivo`), and easy extension. diff --git a/docs/public/CNAME b/docs/public/CNAME new file mode 100644 index 0000000..3608717 --- /dev/null +++ b/docs/public/CNAME @@ -0,0 +1 @@ +docs.mivo.dyzulk.com diff --git a/docs/public/logo.png b/docs/public/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..1a3bdde665c456f4c2fa98358a861329ef9bf459 GIT binary patch literal 69864 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 14.0.0" + } + }, + "node_modules/@algolia/autocomplete-core": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.17.7.tgz", + "integrity": "sha512-BjiPOW6ks90UKl7TwMv7oNQMnzU+t/wk9mgIDi6b1tXpUek7MW0lbNOUHpvam9pe3lVCf4xPFT+lK7s+e+fs7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/autocomplete-plugin-algolia-insights": "1.17.7", + "@algolia/autocomplete-shared": "1.17.7" + } + }, + "node_modules/@algolia/autocomplete-plugin-algolia-insights": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.17.7.tgz", + "integrity": "sha512-Jca5Ude6yUOuyzjnz57og7Et3aXjbwCSDf/8onLHSQgw1qW3ALl9mrMWaXb5FmPVkV3EtkD2F/+NkT6VHyPu9A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/autocomplete-shared": "1.17.7" + }, + "peerDependencies": { + "search-insights": ">= 1 < 3" + } + }, + "node_modules/@algolia/autocomplete-preset-algolia": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.17.7.tgz", + "integrity": "sha512-ggOQ950+nwbWROq2MOCIL71RE0DdQZsceqrg32UqnhDz8FlO9rL8ONHNsI2R1MH0tkgVIDKI/D0sMiUchsFdWA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/autocomplete-shared": "1.17.7" + }, + "peerDependencies": { + "@algolia/client-search": ">= 4.9.1 < 6", + "algoliasearch": ">= 4.9.1 < 6" + } + }, + "node_modules/@algolia/autocomplete-shared": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.17.7.tgz", + "integrity": "sha512-o/1Vurr42U/qskRSuhBH+VKxMvkkUVTLU6WZQr+L5lGZZLYWyhdzWjW0iGXY7EkwRTjBqvN2EsR81yCTGV/kmg==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@algolia/client-search": ">= 4.9.1 < 6", + "algoliasearch": ">= 4.9.1 < 6" + } + }, + "node_modules/@algolia/client-abtesting": { + "version": "5.46.3", + "resolved": "https://registry.npmjs.org/@algolia/client-abtesting/-/client-abtesting-5.46.3.tgz", + "integrity": "sha512-i2C8sBcl3EKXuCd5nlGohW+pZ9pY3P3JKJ2OYqsbCPg6wURiR32hNDiDvDq7/dqJ7KWWwC2snxJhokZzGlckgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.46.3", + "@algolia/requester-browser-xhr": "5.46.3", + "@algolia/requester-fetch": "5.46.3", + "@algolia/requester-node-http": "5.46.3" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/client-analytics": { + "version": "5.46.3", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-5.46.3.tgz", + "integrity": "sha512-uFmD7m3LOym1SAURHeiqupHT9jui+9HK0lAiIvm077gXEscOM5KKXM4rg/ICzQ3UDHLZEA0Lb5TglWsXnieE6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.46.3", + "@algolia/requester-browser-xhr": "5.46.3", + "@algolia/requester-fetch": "5.46.3", + "@algolia/requester-node-http": "5.46.3" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/client-common": { + "version": "5.46.3", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-5.46.3.tgz", + "integrity": "sha512-SN+yK840nXa+2+mF72hrDfGd8+B7eBjF8TK/8KoRMdjlAkO/P3o3vtpjKRKI/Sk4L8kYYkB/avW8l+cwR+O1Ew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/client-insights": { + "version": "5.46.3", + "resolved": "https://registry.npmjs.org/@algolia/client-insights/-/client-insights-5.46.3.tgz", + "integrity": "sha512-5ic1liG0VucNPi6gKCWh5bEUGWQfyEmVeXiNKS+rOSppg7B7nKH0PEEJOFXBbHmgK5aPfNNZINiKcyUoH4XsFA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.46.3", + "@algolia/requester-browser-xhr": "5.46.3", + "@algolia/requester-fetch": "5.46.3", + "@algolia/requester-node-http": "5.46.3" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/client-personalization": { + "version": "5.46.3", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-5.46.3.tgz", + "integrity": "sha512-f4HNitgTip8tntKgluYBTc1LWSOkbNCdxZvRA3rRBZnEAYSvLe7jpE+AxRep6RY+prSWwMtyeCFhA/F1Um+TuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.46.3", + "@algolia/requester-browser-xhr": "5.46.3", + "@algolia/requester-fetch": "5.46.3", + "@algolia/requester-node-http": "5.46.3" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/client-query-suggestions": { + "version": "5.46.3", + "resolved": "https://registry.npmjs.org/@algolia/client-query-suggestions/-/client-query-suggestions-5.46.3.tgz", + "integrity": "sha512-/AaVqah2aYyJj7Cazu5QRkgcV3HF3lkBJo5TRkgqQ26xR4iHNRbLF2YsWJfJpJEFghlTF2HOCh7IgzaUCnM+8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.46.3", + "@algolia/requester-browser-xhr": "5.46.3", + "@algolia/requester-fetch": "5.46.3", + "@algolia/requester-node-http": "5.46.3" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/client-search": { + "version": "5.46.3", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.46.3.tgz", + "integrity": "sha512-hfpCIukPuwkrlwsYfJEWdU5R5bduBHEq2uuPcqmgPgNq5MSjmiNIzRuzxGZZgiBKcre6gZT00DR7G1AFn//wiQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.46.3", + "@algolia/requester-browser-xhr": "5.46.3", + "@algolia/requester-fetch": "5.46.3", + "@algolia/requester-node-http": "5.46.3" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/ingestion": { + "version": "1.46.3", + "resolved": "https://registry.npmjs.org/@algolia/ingestion/-/ingestion-1.46.3.tgz", + "integrity": "sha512-ChVzNkCzAVxKozTnTgPWCG69WQLjzW7X6OqD91zUh8U38ZhPEX/t3qGhXs+M9ZNaHcJ7xToMB3jywNwONhpLGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.46.3", + "@algolia/requester-browser-xhr": "5.46.3", + "@algolia/requester-fetch": "5.46.3", + "@algolia/requester-node-http": "5.46.3" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/monitoring": { + "version": "1.46.3", + "resolved": "https://registry.npmjs.org/@algolia/monitoring/-/monitoring-1.46.3.tgz", + "integrity": "sha512-MZa+Z5iPmVMxVAQ0aq4HpGsja5utSLEMcOuY01X8D46vvMrSPkP8DnlDFtu1PgJ0RwyIGqqx7v+ClFo6iRJ6bA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.46.3", + "@algolia/requester-browser-xhr": "5.46.3", + "@algolia/requester-fetch": "5.46.3", + "@algolia/requester-node-http": "5.46.3" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/recommend": { + "version": "5.46.3", + "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-5.46.3.tgz", + "integrity": "sha512-cr3atJRJBKgAKZl/Oxo4sig6Se0+ukbyIOOluPV5H+ZAXVcxuMoXQgwQ1M5UHPnCnEsZ4uBXhBmilRgUQpUegw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.46.3", + "@algolia/requester-browser-xhr": "5.46.3", + "@algolia/requester-fetch": "5.46.3", + "@algolia/requester-node-http": "5.46.3" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/requester-browser-xhr": { + "version": "5.46.3", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.46.3.tgz", + "integrity": "sha512-/Ku9GImJf2SKoRM2S3e03MjCVaWJCP5olih4k54DRhNDdmxBkd3nsWuUXvDElY3Ucw/arBYGs5SYz79SoS5APw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.46.3" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/requester-fetch": { + "version": "5.46.3", + "resolved": "https://registry.npmjs.org/@algolia/requester-fetch/-/requester-fetch-5.46.3.tgz", + "integrity": "sha512-Uw+SPy/zpfwbH1AxQaeOWvWVzPEcO0XbtLbbSz0HPcEIiBGWyfa9LUCxD5UferbDjrSQNVimmzl3FaWi4u8Ykw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.46.3" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/requester-node-http": { + "version": "5.46.3", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-5.46.3.tgz", + "integrity": "sha512-4No9iTjr1GZ0JWsFbQJj9aZBnmKyY1sTxOoEud9+SGe3U6iAulF0A0lI4cWi/F/Gcfg8V3jkaddcqSQKDnE45w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.46.3" + }, + "engines": { + "node": ">= 14.0.0" } }, "node_modules/@alloc/quick-lru": { @@ -33,6 +293,515 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.6.tgz", + "integrity": "sha512-TeR9zWR18BvbfPmGbLampPMW+uW1NZnJlRuuHso8i87QZNq2JRF9i6RgxRqtEq+wQGsS19NNTWr2duhnE49mfQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.6" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/types": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.6.tgz", + "integrity": "sha512-0ZrskXVEHSWIqZM/sQZ4EV3jZJXRkio/WCxaqKZP1g//CEWEPSfeZFcms4XeKBCHU0ZKnIkdJeU/kF+eRp5lBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@docsearch/css": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.8.2.tgz", + "integrity": "sha512-y05ayQFyUmCXze79+56v/4HpycYF3uFqB78pLPrSV5ZKAlDuIAAJNhaRi8tTdRNXh05yxX/TyNnzD6LwSM89vQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@docsearch/js": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.8.2.tgz", + "integrity": "sha512-Q5wY66qHn0SwA7Taa0aDbHiJvaFJLOJyHmooQ7y8hlwwQLQ/5WwCcoX0g7ii04Qi2DJlHsd0XXzJ8Ypw9+9YmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@docsearch/react": "3.8.2", + "preact": "^10.0.0" + } + }, + "node_modules/@docsearch/react": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.8.2.tgz", + "integrity": "sha512-xCRrJQlTt8N9GU0DG4ptwHRkfnSnD/YpdeaXe02iKfqs97TkZJv60yE+1eq/tjPcVnTW8dP5qLP7itifFVV5eg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/autocomplete-core": "1.17.7", + "@algolia/autocomplete-preset-algolia": "1.17.7", + "@docsearch/css": "3.8.2", + "algoliasearch": "^5.14.2" + }, + "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 + } + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@iconify-json/simple-icons": { + "version": "1.2.66", + "resolved": "https://registry.npmjs.org/@iconify-json/simple-icons/-/simple-icons-1.2.66.tgz", + "integrity": "sha512-D1OnnXwiQXFkVMw5M+Bt8mPsXeMkQyGmMdrmN7lsQlKMUkfLOp6JWhnUJ92po51WXT046aF/zzqSmkKqg08p4Q==", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "@iconify/types": "*" + } + }, + "node_modules/@iconify/types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz", + "integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==", + "dev": true, + "license": "MIT" + }, "node_modules/@jridgewell/gen-mapping": { "version": "0.3.13", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", @@ -116,6 +885,807 @@ "node": ">= 8" } }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.55.1.tgz", + "integrity": "sha512-9R0DM/ykwfGIlNu6+2U09ga0WXeZ9MRC2Ter8jnz8415VbuIykVuc6bhdrbORFZANDmTDvq26mJrEVTl8TdnDg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.55.1.tgz", + "integrity": "sha512-eFZCb1YUqhTysgW3sj/55du5cG57S7UTNtdMjCW7LwVcj3dTTcowCsC8p7uBdzKsZYa8J7IDE8lhMI+HX1vQvg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.55.1.tgz", + "integrity": "sha512-p3grE2PHcQm2e8PSGZdzIhCKbMCw/xi9XvMPErPhwO17vxtvCN5FEA2mSLgmKlCjHGMQTP6phuQTYWUnKewwGg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.55.1.tgz", + "integrity": "sha512-rDUjG25C9qoTm+e02Esi+aqTKSBYwVTaoS1wxcN47/Luqef57Vgp96xNANwt5npq9GDxsH7kXxNkJVEsWEOEaQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.55.1.tgz", + "integrity": "sha512-+JiU7Jbp5cdxekIgdte0jfcu5oqw4GCKr6i3PJTlXTCU5H5Fvtkpbs4XJHRmWNXF+hKmn4v7ogI5OQPaupJgOg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.55.1.tgz", + "integrity": "sha512-V5xC1tOVWtLLmr3YUk2f6EJK4qksksOYiz/TCsFHu/R+woubcLWdC9nZQmwjOAbmExBIVKsm1/wKmEy4z4u4Bw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.55.1.tgz", + "integrity": "sha512-Rn3n+FUk2J5VWx+ywrG/HGPTD9jXNbicRtTM11e/uorplArnXZYsVifnPPqNNP5BsO3roI4n8332ukpY/zN7rQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.55.1.tgz", + "integrity": "sha512-grPNWydeKtc1aEdrJDWk4opD7nFtQbMmV7769hiAaYyUKCT1faPRm2av8CX1YJsZ4TLAZcg9gTR1KvEzoLjXkg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.55.1.tgz", + "integrity": "sha512-a59mwd1k6x8tXKcUxSyISiquLwB5pX+fJW9TkWU46lCqD/GRDe9uDN31jrMmVP3feI3mhAdvcCClhV8V5MhJFQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.55.1.tgz", + "integrity": "sha512-puS1MEgWX5GsHSoiAsF0TYrpomdvkaXm0CofIMG5uVkP6IBV+ZO9xhC5YEN49nsgYo1DuuMquF9+7EDBVYu4uA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.55.1.tgz", + "integrity": "sha512-r3Wv40in+lTsULSb6nnoudVbARdOwb2u5fpeoOAZjFLznp6tDU8kd+GTHmJoqZ9lt6/Sys33KdIHUaQihFcu7g==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.55.1.tgz", + "integrity": "sha512-MR8c0+UxAlB22Fq4R+aQSPBayvYa3+9DrwG/i1TKQXFYEaoW3B5b/rkSRIypcZDdWjWnpcvxbNaAJDcSbJU3Lw==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.55.1.tgz", + "integrity": "sha512-3KhoECe1BRlSYpMTeVrD4sh2Pw2xgt4jzNSZIIPLFEsnQn9gAnZagW9+VqDqAHgm1Xc77LzJOo2LdigS5qZ+gw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.55.1.tgz", + "integrity": "sha512-ziR1OuZx0vdYZZ30vueNZTg73alF59DicYrPViG0NEgDVN8/Jl87zkAPu4u6VjZST2llgEUjaiNl9JM6HH1Vdw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.55.1.tgz", + "integrity": "sha512-uW0Y12ih2XJRERZ4jAfKamTyIHVMPQnTZcQjme2HMVDAHY4amf5u414OqNYC+x+LzRdRcnIG1YodLrrtA8xsxw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.55.1.tgz", + "integrity": "sha512-u9yZ0jUkOED1BFrqu3BwMQoixvGHGZ+JhJNkNKY/hyoEgOwlqKb62qu+7UjbPSHYjiVy8kKJHvXKv5coH4wDeg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.55.1.tgz", + "integrity": "sha512-/0PenBCmqM4ZUd0190j7J0UsQ/1nsi735iPRakO8iPciE7BQ495Y6msPzaOmvx0/pn+eJVVlZrNrSh4WSYLxNg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.55.1.tgz", + "integrity": "sha512-a8G4wiQxQG2BAvo+gU6XrReRRqj+pLS2NGXKm8io19goR+K8lw269eTrPkSdDTALwMmJp4th2Uh0D8J9bEV1vg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.55.1.tgz", + "integrity": "sha512-bD+zjpFrMpP/hqkfEcnjXWHMw5BIghGisOKPj+2NaNDuVT+8Ds4mPf3XcPHuat1tz89WRL+1wbcxKY3WSbiT7w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.55.1.tgz", + "integrity": "sha512-eLXw0dOiqE4QmvikfQ6yjgkg/xDM+MdU9YJuP4ySTibXU0oAvnEWXt7UDJmD4UkYialMfOGFPJnIHSe/kdzPxg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.55.1.tgz", + "integrity": "sha512-xzm44KgEP11te3S2HCSyYf5zIzWmx3n8HDCc7EE59+lTcswEWNpvMLfd9uJvVX8LCg9QWG67Xt75AuHn4vgsXw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.55.1.tgz", + "integrity": "sha512-yR6Bl3tMC/gBok5cz/Qi0xYnVbIxGx5Fcf/ca0eB6/6JwOY+SRUcJfI0OpeTpPls7f194as62thCt/2BjxYN8g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.55.1.tgz", + "integrity": "sha512-3fZBidchE0eY0oFZBnekYCfg+5wAB0mbpCBuofh5mZuzIU/4jIVkbESmd2dOsFNS78b53CYv3OAtwqkZZmU5nA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.55.1.tgz", + "integrity": "sha512-xGGY5pXj69IxKb4yv/POoocPy/qmEGhimy/FoTpTSVju3FYXUQQMFCaZZXJVidsmGxRioZAwpThl/4zX41gRKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.55.1.tgz", + "integrity": "sha512-SPEpaL6DX4rmcXtnhdrQYgzQ5W2uW3SCJch88lB2zImhJRhIIK44fkUrgIV/Q8yUNfw5oyZ5vkeQsZLhCb06lw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@shikijs/core": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-2.5.0.tgz", + "integrity": "sha512-uu/8RExTKtavlpH7XqnVYBrfBkUc20ngXiX9NSrBhOVZYv/7XQRKUyhtkeflY5QsxC0GbJThCerruZfsUaSldg==", + "dev": true, + "license": "MIT", + "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.4" + } + }, + "node_modules/@shikijs/engine-javascript": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-2.5.0.tgz", + "integrity": "sha512-VjnOpnQf8WuCEZtNUdjjwGUbtAVKuZkVQ/5cHy/tojVVRIRtlWMYVjyWhxOmIq05AlSOv72z7hRNRGVBgQOl0w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "2.5.0", + "@shikijs/vscode-textmate": "^10.0.2", + "oniguruma-to-es": "^3.1.0" + } + }, + "node_modules/@shikijs/engine-oniguruma": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-2.5.0.tgz", + "integrity": "sha512-pGd1wRATzbo/uatrCIILlAdFVKdxImWJGQ5rFiB5VZi2ve5xj3Ax9jny8QvkaV93btQEwR/rSz5ERFpC5mKNIw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "2.5.0", + "@shikijs/vscode-textmate": "^10.0.2" + } + }, + "node_modules/@shikijs/langs": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-2.5.0.tgz", + "integrity": "sha512-Qfrrt5OsNH5R+5tJ/3uYBBZv3SuGmnRPejV9IlIbFH3HTGLDlkqgHymAlzklVmKBjAaVmkPkyikAV/sQ1wSL+w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "2.5.0" + } + }, + "node_modules/@shikijs/themes": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-2.5.0.tgz", + "integrity": "sha512-wGrk+R8tJnO0VMzmUExHR+QdSaPUl/NKs+a4cQQRWyoc3YFbUzuLEi/KWK1hj+8BfHRKm2jNhhJck1dfstJpiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "2.5.0" + } + }, + "node_modules/@shikijs/transformers": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-2.5.0.tgz", + "integrity": "sha512-SI494W5X60CaUwgi8u4q4m4s3YAFSxln3tzNjOSYqq54wlVgz0/NbbXEb3mdLbqMBztcmS7bVTaEd2w0qMmfeg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/core": "2.5.0", + "@shikijs/types": "2.5.0" + } + }, + "node_modules/@shikijs/types": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-2.5.0.tgz", + "integrity": "sha512-ygl5yhxki9ZLNuNpPitBWvcy9fsSKKaRuO4BAlMyagszQidxcpLAr0qiW/q43DtSIDxO6hEbtYLiFZNXO/hdGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4" + } + }, + "node_modules/@shikijs/vscode-textmate": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz", + "integrity": "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/linkify-it": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/markdown-it": { + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.2.tgz", + "integrity": "sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/linkify-it": "^5", + "@types/mdurl": "^2" + } + }, + "node_modules/@types/mdast": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", + "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/mdurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/web-bluetooth": { + "version": "0.0.21", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.21.tgz", + "integrity": "sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "dev": true, + "license": "ISC" + }, + "node_modules/@vitejs/plugin-vue": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.2.4.tgz", + "integrity": "sha512-7Yx/SXSOcQq5HiiV3orevHUFn+pmMB4cgbEkDYgnkUWb0WfeQ/wa2yFv6D5ICiCQOVpjA7vYDXrC7AGO8yjDHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.5.26", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.26.tgz", + "integrity": "sha512-vXyI5GMfuoBCnv5ucIT7jhHKl55Y477yxP6fc4eUswjP8FG3FFVFd41eNDArR+Uk3QKn2Z85NavjaxLxOC19/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.28.5", + "@vue/shared": "3.5.26", + "entities": "^7.0.0", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.5.26", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.26.tgz", + "integrity": "sha512-y1Tcd3eXs834QjswshSilCBnKGeQjQXB6PqFn/1nxcQw4pmG42G8lwz+FZPAZAby6gZeHSt/8LMPfZ4Rb+Bd/A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/compiler-core": "3.5.26", + "@vue/shared": "3.5.26" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.5.26", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.26.tgz", + "integrity": "sha512-egp69qDTSEZcf4bGOSsprUr4xI73wfrY5oRs6GSgXFTiHrWj4Y3X5Ydtip9QMqiCMCPVwLglB9GBxXtTadJ3mA==", + "dev": true, + "license": "MIT", + "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", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.21", + "postcss": "^8.5.6", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.5.26", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.26.tgz", + "integrity": "sha512-lZT9/Y0nSIRUPVvapFJEVDbEXruZh2IYHMk2zTtEgJSlP5gVOqeWXH54xDKAaFS4rTnDeDBQUYDtxKyoW9FwDw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.26", + "@vue/shared": "3.5.26" + } + }, + "node_modules/@vue/devtools-api": { + "version": "7.7.9", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-7.7.9.tgz", + "integrity": "sha512-kIE8wvwlcZ6TJTbNeU2HQNtaxLx3a84aotTITUuL/4bzfPxzajGBOoqjMhwZJ8L9qFYDU/lAYMEEm11dnZOD6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/devtools-kit": "^7.7.9" + } + }, + "node_modules/@vue/devtools-kit": { + "version": "7.7.9", + "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.7.9.tgz", + "integrity": "sha512-PyQ6odHSgiDVd4hnTP+aDk2X4gl2HmLDfiyEnn3/oV+ckFDuswRs4IbBT7vacMuGdwY/XemxBoh302ctbsptuA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/devtools-shared": "^7.7.9", + "birpc": "^2.3.0", + "hookable": "^5.5.3", + "mitt": "^3.0.1", + "perfect-debounce": "^1.0.0", + "speakingurl": "^14.0.1", + "superjson": "^2.2.2" + } + }, + "node_modules/@vue/devtools-shared": { + "version": "7.7.9", + "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.7.9.tgz", + "integrity": "sha512-iWAb0v2WYf0QWmxCGy0seZNDPdO3Sp5+u78ORnyeonS6MT4PC7VPrryX2BpMJrwlDeaZ6BD4vP4XKjK0SZqaeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "rfdc": "^1.4.1" + } + }, + "node_modules/@vue/reactivity": { + "version": "3.5.26", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.26.tgz", + "integrity": "sha512-9EnYB1/DIiUYYnzlnUBgwU32NNvLp/nhxLXeWRhHUEeWNTn1ECxX8aGO7RTXeX6PPcxe3LLuNBFoJbV4QZ+CFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/shared": "3.5.26" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.5.26", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.26.tgz", + "integrity": "sha512-xJWM9KH1kd201w5DvMDOwDHYhrdPTrAatn56oB/LRG4plEQeZRQLw0Bpwih9KYoqmzaxF0OKSn6swzYi84e1/Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.26", + "@vue/shared": "3.5.26" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.5.26", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.26.tgz", + "integrity": "sha512-XLLd/+4sPC2ZkN/6+V4O4gjJu6kSDbHAChvsyWgm1oGbdSO3efvGYnm25yCjtFm/K7rrSDvSfPDgN1pHgS4VNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.26", + "@vue/runtime-core": "3.5.26", + "@vue/shared": "3.5.26", + "csstype": "^3.2.3" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.5.26", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.26.tgz", + "integrity": "sha512-TYKLXmrwWKSodyVuO1WAubucd+1XlLg4set0YoV+Hu8Lo79mp/YMwWV5mC5FgtsDxX3qo1ONrxFaTP1OQgy1uA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/compiler-ssr": "3.5.26", + "@vue/shared": "3.5.26" + }, + "peerDependencies": { + "vue": "3.5.26" + } + }, + "node_modules/@vue/shared": { + "version": "3.5.26", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.26.tgz", + "integrity": "sha512-7Z6/y3uFI5PRoKeorTOSXKcDj0MSasfNNltcslbFrPpcw6aXRUALq4IfJlaTRspiWIUOEZbrpM+iQGmCOiWe4A==", + "dev": true, + "license": "MIT" + }, + "node_modules/@vueuse/core": { + "version": "12.8.2", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-12.8.2.tgz", + "integrity": "sha512-HbvCmZdzAu3VGi/pWYm5Ut+Kd9mn1ZHnn4L5G8kOQTPs/IwIAmJoBrmYk2ckLArgMXZj0AW3n5CAejLUO+PhdQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/web-bluetooth": "^0.0.21", + "@vueuse/metadata": "12.8.2", + "@vueuse/shared": "12.8.2", + "vue": "^3.5.13" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/integrations": { + "version": "12.8.2", + "resolved": "https://registry.npmjs.org/@vueuse/integrations/-/integrations-12.8.2.tgz", + "integrity": "sha512-fbGYivgK5uBTRt7p5F3zy6VrETlV9RtZjBqd1/HxGdjdckBgBM4ugP8LHpjolqTj14TXTxSK1ZfgPbHYyGuH7g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vueuse/core": "12.8.2", + "@vueuse/shared": "12.8.2", + "vue": "^3.5.13" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "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 + } + } + }, + "node_modules/@vueuse/metadata": { + "version": "12.8.2", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-12.8.2.tgz", + "integrity": "sha512-rAyLGEuoBJ/Il5AmFHiziCPdQzRt88VxR+Y/A/QhJ1EWtWqPBBAxTAFaSkviwEuOEZNtW8pvkPgoCZQ+HxqW1A==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared": { + "version": "12.8.2", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-12.8.2.tgz", + "integrity": "sha512-dznP38YzxZoNloI0qpEfpkms8knDtaoQ6Y/sfS0L7Yki4zh40LFHEhur0odJC6xTHG5dxWVPiUWBXn+wCG2s5w==", + "dev": true, + "license": "MIT", + "dependencies": { + "vue": "^3.5.13" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/algoliasearch": { + "version": "5.46.3", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-5.46.3.tgz", + "integrity": "sha512-n/NdPglzmkcNYZfIT3Fo8pnDR/lKiK1kZ1Yaa315UoLyHymADhWw15+bzN5gBxrCA8KyeNu0JJD6mLtTov43lQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/abtesting": "1.12.3", + "@algolia/client-abtesting": "5.46.3", + "@algolia/client-analytics": "5.46.3", + "@algolia/client-common": "5.46.3", + "@algolia/client-insights": "5.46.3", + "@algolia/client-personalization": "5.46.3", + "@algolia/client-query-suggestions": "5.46.3", + "@algolia/client-search": "5.46.3", + "@algolia/ingestion": "1.46.3", + "@algolia/monitoring": "1.46.3", + "@algolia/recommend": "5.46.3", + "@algolia/requester-browser-xhr": "5.46.3", + "@algolia/requester-fetch": "5.46.3", + "@algolia/requester-node-http": "5.46.3" + }, + "engines": { + "node": ">= 14.0.0" + } + }, "node_modules/any-promise": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", @@ -204,6 +1774,16 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/birpc": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/birpc/-/birpc-2.9.0.tgz", + "integrity": "sha512-KrayHS5pBi69Xi9JmvoqrIgYGDkD6mcSe/i6YKi3w5kekCLzrX4+nawcXqrj2tIp50Kw/mT/s3p+GVK0A0sKxw==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, "node_modules/braces": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", @@ -282,6 +1862,39 @@ ], "license": "CC-BY-4.0" }, + "node_modules/ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-html4": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", + "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", + "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/chart.js": { "version": "4.5.1", "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.5.1.tgz", @@ -332,6 +1945,17 @@ "node": ">= 6" } }, + "node_modules/comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/commander": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", @@ -342,6 +1966,22 @@ "node": ">= 6" } }, + "node_modules/copy-anything": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-4.0.5.tgz", + "integrity": "sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-what": "^5.2.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, "node_modules/cssesc": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", @@ -355,6 +1995,37 @@ "node": ">=4" } }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "dev": true, + "license": "MIT", + "dependencies": { + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/didyoumean": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", @@ -376,6 +2047,65 @@ "dev": true, "license": "ISC" }, + "node_modules/emoji-regex-xs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex-xs/-/emoji-regex-xs-1.0.0.tgz", + "integrity": "sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==", + "dev": true, + "license": "MIT" + }, + "node_modules/entities": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.0.tgz", + "integrity": "sha512-FDWG5cmEYf2Z00IkYRhbFrwIwvdFKH07uV8dvNy0omp/Qb1xcyCWp2UDtcwJF4QZZvk0sLudP6/hAu42TaqVhQ==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "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" + } + }, "node_modules/escalade": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", @@ -386,6 +2116,13 @@ "node": ">=6" } }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, + "license": "MIT" + }, "node_modules/fast-glob": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", @@ -445,6 +2182,16 @@ "integrity": "sha512-kd+MNXviFIg5hijH766tt+3x76ele1AXlo4zDdCxIvqWZhKt4T83bOtxUOOMlTx/EcFdUMH5yvQgYlFh1EqqFg==", "license": "MIT" }, + "node_modules/focus-trap": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.8.0.tgz", + "integrity": "sha512-/yNdlIkpWbM0ptxno3ONTuf+2g318kh2ez3KSeZN5dZ8YC6AAmgeWz+GasYYiBJPFaYcSAPeu4GfhUaChzIJXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "tabbable": "^6.4.0" + } + }, "node_modules/fraction.js": { "version": "5.3.4", "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-5.3.4.tgz", @@ -510,6 +2257,62 @@ "node": ">= 0.4" } }, + "node_modules/hast-util-to-html": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.5.tgz", + "integrity": "sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-whitespace": "^3.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "stringify-entities": "^4.0.0", + "zwitch": "^2.0.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-whitespace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", + "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hookable": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz", + "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/html-void-elements": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", + "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/is-binary-path": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", @@ -572,6 +2375,19 @@ "node": ">=0.12.0" } }, + "node_modules/is-what": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-5.5.0.tgz", + "integrity": "sha512-oG7cgbmg5kLYae2N5IVd3jm2s+vldjxJzK1pcu9LfpGuQ93MQSzo0okvRna+7y5ifrD+20FE8FvjusyGaz14fw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, "node_modules/jiti": { "version": "1.21.7", "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.7.tgz", @@ -608,6 +2424,45 @@ "integrity": "sha512-k1Fb8ZMnRQovWRlea7Jr0b9UKA29IM7/cu79+mJrhVohvA2YC/Ti3Sk+G+h/SIu3IlrKT4RAbWMHUBBQd1O6XA==", "license": "ISC" }, + "node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/mark.js": { + "version": "8.11.1", + "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", + "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/mdast-util-to-hast": { + "version": "13.2.1", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.1.tgz", + "integrity": "sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -618,6 +2473,100 @@ "node": ">= 8" } }, + "node_modules/micromark-util-character": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", + "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-encode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", + "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", + "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-symbol": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", + "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-types": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz", + "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, "node_modules/micromatch": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", @@ -632,6 +2581,20 @@ "node": ">=8.6" } }, + "node_modules/minisearch": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/minisearch/-/minisearch-7.2.0.tgz", + "integrity": "sha512-dqT2XBYUOZOiC5t2HRnwADjhNS2cecp9u+TJRiJ1Qp/f5qjkeT5APcGPjHw+bz89Ms8Jp+cG4AlE+QZ/QnDglg==", + "dev": true, + "license": "MIT" + }, + "node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", + "dev": true, + "license": "MIT" + }, "node_modules/mz": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", @@ -700,6 +2663,18 @@ "node": ">= 6" } }, + "node_modules/oniguruma-to-es": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-3.1.1.tgz", + "integrity": "sha512-bUH8SDvPkH3ho3dvwJwfonjlQ4R80vjyvrU8YpxuROddv55vAEJrTuCuCVUhhsHbtlD9tGGbaNApGQckXhS8iQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex-xs": "^1.0.0", + "regex": "^6.0.1", + "regex-recursion": "^6.0.2" + } + }, "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", @@ -707,6 +2682,13 @@ "dev": true, "license": "MIT" }, + "node_modules/perfect-debounce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz", + "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==", + "dev": true, + "license": "MIT" + }, "node_modules/picocolors": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", @@ -903,6 +2885,28 @@ "dev": true, "license": "MIT" }, + "node_modules/preact": { + "version": "10.28.2", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.28.2.tgz", + "integrity": "sha512-lbteaWGzGHdlIuiJ0l2Jq454m6kcpI1zNje6d8MlGAFlYvP2GO4ibnat7P74Esfz4sPTdM6UxtTwh/d3pwM9JA==", + "dev": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/preact" + } + }, + "node_modules/property-information": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-7.1.0.tgz", + "integrity": "sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/qrious": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/qrious/-/qrious-4.0.2.tgz", @@ -953,6 +2957,33 @@ "node": ">=8.10.0" } }, + "node_modules/regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/regex/-/regex-6.1.0.tgz", + "integrity": "sha512-6VwtthbV4o/7+OaAF9I5L5V3llLEsoPyq9P1JVXkedTP33c7MfCG0/5NOPcSJn0TzXcG9YUrR0gQSWioew3LDg==", + "dev": true, + "license": "MIT", + "dependencies": { + "regex-utilities": "^2.3.0" + } + }, + "node_modules/regex-recursion": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-6.0.2.tgz", + "integrity": "sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==", + "dev": true, + "license": "MIT", + "dependencies": { + "regex-utilities": "^2.3.0" + } + }, + "node_modules/regex-utilities": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/regex-utilities/-/regex-utilities-2.3.0.tgz", + "integrity": "sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==", + "dev": true, + "license": "MIT" + }, "node_modules/resolve": { "version": "1.22.11", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", @@ -985,6 +3016,58 @@ "node": ">=0.10.0" } }, + "node_modules/rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", + "dev": true, + "license": "MIT" + }, + "node_modules/rollup": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.55.1.tgz", + "integrity": "sha512-wDv/Ht1BNHB4upNbK74s9usvl7hObDnvVzknxqY/E/O3X6rW1U1rV1aENEfJ54eFZDTNo7zv1f5N4edCluH7+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.8" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.55.1", + "@rollup/rollup-android-arm64": "4.55.1", + "@rollup/rollup-darwin-arm64": "4.55.1", + "@rollup/rollup-darwin-x64": "4.55.1", + "@rollup/rollup-freebsd-arm64": "4.55.1", + "@rollup/rollup-freebsd-x64": "4.55.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.55.1", + "@rollup/rollup-linux-arm-musleabihf": "4.55.1", + "@rollup/rollup-linux-arm64-gnu": "4.55.1", + "@rollup/rollup-linux-arm64-musl": "4.55.1", + "@rollup/rollup-linux-loong64-gnu": "4.55.1", + "@rollup/rollup-linux-loong64-musl": "4.55.1", + "@rollup/rollup-linux-ppc64-gnu": "4.55.1", + "@rollup/rollup-linux-ppc64-musl": "4.55.1", + "@rollup/rollup-linux-riscv64-gnu": "4.55.1", + "@rollup/rollup-linux-riscv64-musl": "4.55.1", + "@rollup/rollup-linux-s390x-gnu": "4.55.1", + "@rollup/rollup-linux-x64-gnu": "4.55.1", + "@rollup/rollup-linux-x64-musl": "4.55.1", + "@rollup/rollup-openbsd-x64": "4.55.1", + "@rollup/rollup-openharmony-arm64": "4.55.1", + "@rollup/rollup-win32-arm64-msvc": "4.55.1", + "@rollup/rollup-win32-ia32-msvc": "4.55.1", + "@rollup/rollup-win32-x64-gnu": "4.55.1", + "@rollup/rollup-win32-x64-msvc": "4.55.1", + "fsevents": "~2.3.2" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -1009,6 +3092,31 @@ "queue-microtask": "^1.2.2" } }, + "node_modules/search-insights": { + "version": "2.17.3", + "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-2.17.3.tgz", + "integrity": "sha512-RQPdCYTa8A68uM2jwxoY842xDhvx3E5LFL1LxvxCNMev4o5mLuokczhzjAgGwUZBAmOKZknArSxLKmXtIi2AxQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/shiki": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-2.5.0.tgz", + "integrity": "sha512-mI//trrsaiCIPsja5CNfsyNOqgAZUb6VpJA+340toL42UpzQlXpwRV9nch69X6gaUxrr9kaOOa6e3y3uAkGFxQ==", + "dev": true, + "license": "MIT", + "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" + } + }, "node_modules/source-map-js": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", @@ -1019,6 +3127,42 @@ "node": ">=0.10.0" } }, + "node_modules/space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/speakingurl": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz", + "integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stringify-entities": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", + "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", + "dev": true, + "license": "MIT", + "dependencies": { + "character-entities-html4": "^2.0.0", + "character-entities-legacy": "^3.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/sucrase": { "version": "3.35.1", "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.1.tgz", @@ -1042,6 +3186,19 @@ "node": ">=16 || 14 >=14.17" } }, + "node_modules/superjson": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.6.tgz", + "integrity": "sha512-H+ue8Zo4vJmV2nRjpx86P35lzwDT3nItnIsocgumgr0hHMQ+ZGq5vrERg9kJBo5AWGmxZDhzDo+WVIJqkB0cGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "copy-anything": "^4" + }, + "engines": { + "node": ">=16" + } + }, "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", @@ -1055,6 +3212,13 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/tabbable": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.4.0.tgz", + "integrity": "sha512-05PUHKSNE8ou2dwIxTngl4EzcnsCDZGJ/iCLtDflR/SHB/ny14rXc+qU5P4mG9JkusiV7EivzY9Mhm55AzAvCg==", + "dev": true, + "license": "MIT" + }, "node_modules/tailwindcss": { "version": "3.4.17", "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.17.tgz", @@ -1177,6 +3341,17 @@ "node": ">=8.0" } }, + "node_modules/trim-lines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", + "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/ts-interface-checker": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", @@ -1184,6 +3359,79 @@ "dev": true, "license": "Apache-2.0" }, + "node_modules/unist-util-is": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.1.tgz", + "integrity": "sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.2.tgz", + "integrity": "sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/update-browserslist-db": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", @@ -1222,6 +3470,160 @@ "dev": true, "license": "MIT" }, + "node_modules/vfile": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.3.tgz", + "integrity": "sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vite": { + "version": "5.4.21", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz", + "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "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 + } + } + }, + "node_modules/vitepress": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.6.4.tgz", + "integrity": "sha512-+2ym1/+0VVrbhNyRoFFesVvBvHAVMZMK0rw60E3X/5349M1GuVdKeazuksqopEdvkKwKGs21Q729jX81/bkBJg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@docsearch/css": "3.8.2", + "@docsearch/js": "3.8.2", + "@iconify-json/simple-icons": "^1.2.21", + "@shikijs/core": "^2.1.0", + "@shikijs/transformers": "^2.1.0", + "@shikijs/types": "^2.1.0", + "@types/markdown-it": "^14.1.2", + "@vitejs/plugin-vue": "^5.2.1", + "@vue/devtools-api": "^7.7.0", + "@vue/shared": "^3.5.13", + "@vueuse/core": "^12.4.0", + "@vueuse/integrations": "^12.4.0", + "focus-trap": "^7.6.4", + "mark.js": "8.11.1", + "minisearch": "^7.1.1", + "shiki": "^2.1.0", + "vite": "^5.4.14", + "vue": "^3.5.13" + }, + "bin": { + "vitepress": "bin/vitepress.js" + }, + "peerDependencies": { + "markdown-it-mathjax3": "^4", + "postcss": "^8" + }, + "peerDependenciesMeta": { + "markdown-it-mathjax3": { + "optional": true + }, + "postcss": { + "optional": true + } + } + }, + "node_modules/vue": { + "version": "3.5.26", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.26.tgz", + "integrity": "sha512-SJ/NTccVyAoNUJmkM9KUqPcYlY+u8OVL1X5EW9RIs3ch5H2uERxyyIUI4MRxVCSOiEcupX9xNGde1tL9ZKpimA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.26", + "@vue/compiler-sfc": "3.5.26", + "@vue/runtime-dom": "3.5.26", + "@vue/server-renderer": "3.5.26", + "@vue/shared": "3.5.26" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "node_modules/yaml": { "version": "2.8.2", "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.2.tgz", @@ -1237,6 +3639,17 @@ "funding": { "url": "https://github.com/sponsors/eemeli" } + }, + "node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } } } } diff --git a/package.json b/package.json index 3d6ba20..39578a9 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,9 @@ "test": "echo \"Error: no test specified\" && exit 1", "build": "npx tailwindcss -i ./src/input.css -o ./public/assets/css/styles.css", "watch": "npx tailwindcss -i ./src/input.css -o ./public/assets/css/styles.css --watch", - "dev": "npx tailwindcss -i ./src/input.css -o ./public/assets/css/styles.css --watch" + "docs:dev": "vitepress dev docs", + "docs:build": "vitepress build docs", + "docs:preview": "vitepress preview docs" }, "keywords": [], "author": "", @@ -22,6 +24,8 @@ "devDependencies": { "autoprefixer": "^10.4.23", "postcss": "^8.5.6", - "tailwindcss": "^3.4.17" + "tailwindcss": "^3.4.17", + "vitepress": "^1.0.0-rc.31", + "vue": "^3.4.0" } -} +} \ No newline at end of file