From 2d4b6ea0970afe8d02b1bb964805615e803166a1 Mon Sep 17 00:00:00 2001 From: Jonathon Wright Date: Wed, 17 Jun 2026 16:22:53 +1000 Subject: [PATCH] Initial portfolio site: Astro + Tailwind MVP Outcome-led hero, about, grouped skills, experience summary, featured projects + /projects index, static contact, SEO/OG, dark/light theme. Dockerfile + nginx config + build script for homelab deploy. --- .dockerignore | 9 + .gitignore | 24 + .vscode/extensions.json | 4 + .vscode/launch.json | 11 + Dockerfile | 27 + README.md | 53 + astro.config.mjs | 12 + nginx/default.conf | 55 + package-lock.json | 6355 +++++++++++++++++++++++++++ package.json | 26 + public/favicon.svg | 11 + public/og.png | Bin 0 -> 106487 bytes public/robots.txt | 4 + scripts/build-image.sh | 35 + scripts/gen-og.mjs | 54 + src/components/About.astro | 113 + src/components/BackgroundGrid.astro | 67 + src/components/Contact.astro | 77 + src/components/Footer.astro | 79 + src/components/Hero.astro | 93 + src/components/Nav.astro | 98 + src/components/ProjectCard.astro | 88 + src/components/Section.astro | 37 + src/components/SkillGroup.astro | 45 + src/components/ThemeToggle.astro | 77 + src/data/experience.ts | 33 + src/data/projects.ts | 82 + src/data/site.ts | 34 + src/data/skills.ts | 86 + src/data/socials.ts | 31 + src/layouts/Layout.astro | 100 + src/lib/assets.ts | 9 + src/pages/404.astro | 35 + src/pages/index.astro | 55 + src/pages/projects/index.astro | 30 + src/styles/global.css | 188 + src/styles/tokens.css | 90 + tsconfig.json | 5 + 38 files changed, 8232 insertions(+) create mode 100644 .dockerignore create mode 100644 .gitignore create mode 100644 .vscode/extensions.json create mode 100644 .vscode/launch.json create mode 100644 Dockerfile create mode 100644 README.md create mode 100644 astro.config.mjs create mode 100644 nginx/default.conf create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 public/favicon.svg create mode 100644 public/og.png create mode 100644 public/robots.txt create mode 100755 scripts/build-image.sh create mode 100644 scripts/gen-og.mjs create mode 100644 src/components/About.astro create mode 100644 src/components/BackgroundGrid.astro create mode 100644 src/components/Contact.astro create mode 100644 src/components/Footer.astro create mode 100644 src/components/Hero.astro create mode 100644 src/components/Nav.astro create mode 100644 src/components/ProjectCard.astro create mode 100644 src/components/Section.astro create mode 100644 src/components/SkillGroup.astro create mode 100644 src/components/ThemeToggle.astro create mode 100644 src/data/experience.ts create mode 100644 src/data/projects.ts create mode 100644 src/data/site.ts create mode 100644 src/data/skills.ts create mode 100644 src/data/socials.ts create mode 100644 src/layouts/Layout.astro create mode 100644 src/lib/assets.ts create mode 100644 src/pages/404.astro create mode 100644 src/pages/index.astro create mode 100644 src/pages/projects/index.astro create mode 100644 src/styles/global.css create mode 100644 src/styles/tokens.css create mode 100644 tsconfig.json diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..a43c58d --- /dev/null +++ b/.dockerignore @@ -0,0 +1,9 @@ +node_modules +dist +.astro +.git +.github +.gitea +.vscode +npm-debug.log* +*.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..16d54bb --- /dev/null +++ b/.gitignore @@ -0,0 +1,24 @@ +# build output +dist/ +# generated types +.astro/ + +# dependencies +node_modules/ + +# logs +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* + + +# environment variables +.env +.env.production + +# macOS-specific files +.DS_Store + +# jetbrains setting folder +.idea/ diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..22a1505 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,4 @@ +{ + "recommendations": ["astro-build.astro-vscode"], + "unwantedRecommendations": [] +} diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..d642209 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,11 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "command": "./node_modules/.bin/astro dev", + "name": "Development server", + "request": "launch", + "type": "node-terminal" + } + ] +} diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..b280b5f --- /dev/null +++ b/Dockerfile @@ -0,0 +1,27 @@ +# syntax=docker/dockerfile:1 +# Multi-stage: Debian build (Node; Chromium deps for Mermaid land in M3) → +# pinned nginx-unprivileged runtime serving the static dist/. + +# ---- build stage ---------------------------------------------------------- +FROM node:22-bookworm-slim AS build +WORKDIR /app + +# Install deps from the lockfile only first (better layer caching). +COPY package.json package-lock.json ./ +RUN npm ci + +# Build the static site. +COPY . . +RUN npm run build + +# ---- runtime stage -------------------------------------------------------- +# Same vetted digest used by the k8s Deployment. Renovate keeps it current. +FROM ghcr.io/nginx/nginx-unprivileged:1.28.0-alpine@sha256:c97ff0bf7cbae369953c6da1232ec14ad9f971d66360c5698db0856a4cd657a0 + +# Custom server config (security headers, caching, SPA-ish routing). +COPY nginx/default.conf /etc/nginx/conf.d/default.conf + +# The built site. +COPY --from=build /app/dist /usr/share/nginx/html + +EXPOSE 8080 diff --git a/README.md b/README.md new file mode 100644 index 0000000..b4a08a9 --- /dev/null +++ b/README.md @@ -0,0 +1,53 @@ +# bztmon-site + +The source for **[www.bztmon.com](https://www.bztmon.com)** — Jonathon Wright's +portfolio / résumé site. A fast, animated, security-hardened static site for a +platform / infrastructure engineer. + +> This repo is **public**. It lives on a self-hosted public Gitea (`git.bztmon.com`), +> isolated from the private homelab GitOps. **Never commit secrets** — the static +> site needs none. + +## Stack + +- **Astro** (static output) + **TypeScript** + **Tailwind v4** +- Zero JS by default; tiny islands for the theme toggle + scroll reveals +- Content & config are data-driven (`src/data/`) — adding a project never touches a component + +## Develop + +```bash +npm install +npm run dev # http://localhost:4321 +npm run check # astro check (types + diagnostics) +npm run build # static build → dist/ +npm run preview # serve the build locally +npm run gen:og # regenerate the social-preview image (public/og.png) +``` + +## Project layout + +``` +src/ + data/ site.ts, socials.ts, skills.ts, projects.ts, experience.ts + components/ Hero, Nav, ThemeToggle, ProjectCard, SkillGroup, ... + layouts/ Layout.astro (SEO/OG, theme bootstrap) + pages/ index.astro, projects/, 404.astro + styles/ tokens.css (theme), global.css + lib/ build-time helpers (cv detection) +scripts/ gen-og.mjs, build-image.sh +nginx/ default.conf (security headers, caching) baked into the image +Dockerfile Debian build stage → nginx-unprivileged runtime +``` + +## Content TODOs (Jonathon) + +- Drop a real CV at `public/cv.pdf` — the **Download CV** button appears automatically. +- Fill the `TODO(Jonathon)` markers in `src/data/experience.ts`, `projects.ts`, `socials.ts` + (employer names, dates, GitHub/LinkedIn handles). + +## Deploy + +Built into a container image, served by nginx-unprivileged on a homelab Kubernetes +cluster, exposed via Cloudflare Tunnel. The image is pinned by digest in the private +`home-ops` repo and rolled out by ArgoCD. See `scripts/build-image.sh`. diff --git a/astro.config.mjs b/astro.config.mjs new file mode 100644 index 0000000..0c443c4 --- /dev/null +++ b/astro.config.mjs @@ -0,0 +1,12 @@ +// @ts-check +import { defineConfig } from "astro/config"; + +import tailwindcss from "@tailwindcss/vite"; + +// https://astro.build/config +export default defineConfig({ + site: "https://www.bztmon.com", + vite: { + plugins: [tailwindcss()], + }, +}); diff --git a/nginx/default.conf b/nginx/default.conf new file mode 100644 index 0000000..0ff6677 --- /dev/null +++ b/nginx/default.conf @@ -0,0 +1,55 @@ +# nginx server config for the static site, baked into the image. +# Base image: nginxinc/nginx-unprivileged (runs as uid 101, listens on 8080). +# Read-only rootfs in k8s: /tmp and /var/cache/nginx are emptyDir mounts. + +server { + listen 8080; + server_name _; + root /usr/share/nginx/html; + index index.html; + + # Don't leak the nginx version. + server_tokens off; + + # ---- Security headers (origin) ------------------------------------------- + # These travel with the artifact. HSTS + HTTPS redirect are set at the + # Cloudflare edge (the tunnel terminates TLS), so they are NOT set here. + add_header X-Content-Type-Options "nosniff" always; + add_header Referrer-Policy "strict-origin-when-cross-origin" always; + add_header Permissions-Policy "camera=(), microphone=(), geolocation=(), interest-cohort=()" always; + + # ---- Content-Security-Policy --------------------------------------------- + # FILLED IN M4: Astro computes the inline script/style hashes at build; the + # final policy is emitted here as a header (a CSP can't set + # frame-ancestors). Until then, a conservative baseline: + add_header Content-Security-Policy "default-src 'self'; img-src 'self' data:; font-src 'self'; object-src 'none'; base-uri 'self'; form-action 'self'; frame-ancestors 'none'" always; + + # ---- Caching ------------------------------------------------------------- + # Astro emits content-hashed assets under /_astro/ — cache them hard. + location /_astro/ { + expires 1y; + add_header Cache-Control "public, immutable" always; + } + + # HTML is revalidated so deploys show up immediately. + location ~* \.html$ { + add_header Cache-Control "no-cache" always; + } + + # ---- Routing ------------------------------------------------------------- + location / { + try_files $uri $uri/ $uri.html =404; + } + + error_page 404 /404.html; + location = /404.html { + internal; + } + + # Compression + gzip on; + gzip_comp_level 6; + gzip_min_length 1024; + gzip_types text/plain text/css application/javascript application/json image/svg+xml application/xml application/rss+xml; + gzip_vary on; +} diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..9035fa0 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,6355 @@ +{ + "name": "bztmon-site", + "version": "0.0.1", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "bztmon-site", + "version": "0.0.1", + "dependencies": { + "@tailwindcss/vite": "^4.3.1", + "astro": "^6.4.7", + "tailwindcss": "^4.3.1" + }, + "devDependencies": { + "@astrojs/check": "^0.9.9", + "@types/node": "^25.9.3", + "typescript": "^6.0.3" + }, + "engines": { + "node": ">=22.12.0" + } + }, + "node_modules/@astrojs/check": { + "version": "0.9.9", + "resolved": "https://registry.npmjs.org/@astrojs/check/-/check-0.9.9.tgz", + "integrity": "sha512-A5UW8uIuErLWEoRQvzgXpO1gTjUFtK8r7nU2Z7GewAMxUb7bPvpk11qaKKgxqXlHJWlAvaaxy+Xg28A6bmQ1Tg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@astrojs/language-server": "^2.16.7", + "chokidar": "^4.0.3", + "kleur": "^4.1.5", + "yargs": "^17.7.2" + }, + "bin": { + "astro-check": "bin/astro-check.js" + }, + "peerDependencies": { + "typescript": "^5.0.0 || ^6.0.0" + } + }, + "node_modules/@astrojs/check/node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@astrojs/check/node_modules/readdirp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@astrojs/compiler": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@astrojs/compiler/-/compiler-4.0.0.tgz", + "integrity": "sha512-eouss7G8ygdZqHuke033VMcVw5HTZUu+PXd/h06DGDUg/jt5btPYPqh66ENWw/mU78rBrf/oeC4oqoBwMtDMNA==", + "license": "MIT" + }, + "node_modules/@astrojs/internal-helpers": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@astrojs/internal-helpers/-/internal-helpers-0.10.0.tgz", + "integrity": "sha512-Ry2R3VPeIN4uPCSA4xQc+e+vsJXkalKpEbDc07hV+a/o5Bs2N/s/uDcPJH/05L19DKh9tAy7e6JM3YZ6Cxfezw==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.4", + "@types/mdast": "^4.0.4", + "js-yaml": "^4.1.1", + "picomatch": "^4.0.4", + "retext-smartypants": "^6.2.0", + "shiki": "^4.0.2", + "smol-toml": "^1.6.0", + "unified": "^11.0.5" + } + }, + "node_modules/@astrojs/language-server": { + "version": "2.16.10", + "resolved": "https://registry.npmjs.org/@astrojs/language-server/-/language-server-2.16.10.tgz", + "integrity": "sha512-87VQ/5GSdHlRnUA+hGuerYyIGAj+9RbZmATyuKLEUePinUXhQ5YkRnRrHhOD9sSi5JOErLjrLkHnfZFEvGrV8w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@astrojs/compiler": "^2.13.1", + "@astrojs/yaml2ts": "^0.2.4", + "@jridgewell/sourcemap-codec": "^1.5.5", + "@volar/kit": "~2.4.28", + "@volar/language-core": "~2.4.28", + "@volar/language-server": "~2.4.28", + "@volar/language-service": "~2.4.28", + "muggle-string": "^0.4.1", + "tinyglobby": "^0.2.16", + "volar-service-css": "0.0.70", + "volar-service-emmet": "0.0.70", + "volar-service-html": "0.0.70", + "volar-service-prettier": "0.0.70", + "volar-service-typescript": "0.0.70", + "volar-service-typescript-twoslash-queries": "0.0.70", + "volar-service-yaml": "0.0.70", + "vscode-html-languageservice": "^5.6.2", + "vscode-uri": "^3.1.0" + }, + "bin": { + "astro-ls": "bin/nodeServer.js" + }, + "peerDependencies": { + "prettier": "^3.0.0", + "prettier-plugin-astro": ">=0.11.0" + }, + "peerDependenciesMeta": { + "prettier": { + "optional": true + }, + "prettier-plugin-astro": { + "optional": true + } + } + }, + "node_modules/@astrojs/language-server/node_modules/@astrojs/compiler": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/@astrojs/compiler/-/compiler-2.13.1.tgz", + "integrity": "sha512-f3FN83d2G/v32ipNClRKgYv30onQlMZX1vCeZMjPsMMPl1mDpmbl0+N5BYo4S/ofzqJyS5hvwacEo0CCVDn/Qg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@astrojs/markdown-remark": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@astrojs/markdown-remark/-/markdown-remark-7.2.0.tgz", + "integrity": "sha512-+YxmVQu1Bd+MFfSzjq1rOJvD9+nIOJzz5YIIhdIH01RrxRkKbyKoEgyIqP3yv51MhzMDgd79QaPv+kCVPT8vHw==", + "license": "MIT", + "dependencies": { + "@astrojs/internal-helpers": "0.10.0", + "@astrojs/prism": "4.0.2", + "github-slugger": "^2.0.0", + "hast-util-from-html": "^2.0.3", + "hast-util-to-text": "^4.0.2", + "mdast-util-definitions": "^6.0.0", + "rehype-raw": "^7.0.0", + "rehype-stringify": "^10.0.1", + "remark-gfm": "^4.0.1", + "remark-parse": "^11.0.0", + "remark-rehype": "^11.1.2", + "remark-smartypants": "^3.0.2", + "unified": "^11.0.5", + "unist-util-remove-position": "^5.0.0", + "unist-util-visit": "^5.1.0", + "unist-util-visit-parents": "^6.0.2", + "vfile": "^6.0.3" + } + }, + "node_modules/@astrojs/prism": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@astrojs/prism/-/prism-4.0.2.tgz", + "integrity": "sha512-KTivpmnz6lDsC6o9H4+DNm2SrE/GHzw8cNAvEJwAvUT+eoaEnn/4NtbDNfRRaxaJHdp15gf+tfHAWiXR4wB3BA==", + "license": "MIT", + "dependencies": { + "prismjs": "^1.30.0" + }, + "engines": { + "node": ">=22.12.0" + } + }, + "node_modules/@astrojs/telemetry": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@astrojs/telemetry/-/telemetry-3.3.2.tgz", + "integrity": "sha512-j8DNruA8ors99Al39RYZPJK4DC1bKkoNm93mAMuBhY9TCNC4R8n1q7ovFnJ5qhGh5Lsh7pa1gpQVpYpsJPeTHQ==", + "license": "MIT", + "dependencies": { + "ci-info": "^4.4.0", + "dset": "^3.1.4", + "is-docker": "^4.0.0", + "is-wsl": "^3.1.1", + "which-pm-runs": "^1.1.0" + }, + "engines": { + "node": "18.20.8 || ^20.3.0 || >=22.0.0" + } + }, + "node_modules/@astrojs/yaml2ts": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@astrojs/yaml2ts/-/yaml2ts-0.2.4.tgz", + "integrity": "sha512-8oddpOae35pJsXPQXhTkM0ypfKPskVsh2bCxRtbf7e+/Epw2nReakFYpLKjZMEr75CsoF203PMnCocpfz0s69A==", + "dev": true, + "license": "MIT", + "dependencies": { + "yaml": "^2.8.3" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz", + "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.7.tgz", + "integrity": "sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.7" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@capsizecss/unpack": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@capsizecss/unpack/-/unpack-4.0.1.tgz", + "integrity": "sha512-CuNiSqg7+e1cO/GjffyMOm5Tt2jUF9CWHHnvQ/UkqvtkGfHdgwEC0wpmq7fkN3gxwpRnrAN0WzO3vREKmNolMQ==", + "license": "MIT", + "dependencies": { + "fontkitten": "^1.0.3" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@clack/core": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@clack/core/-/core-1.4.1.tgz", + "integrity": "sha512-FILJa1gGKEFTGZAJE9RpVhrjKz3c3h4ar60dSv6cGuDqufQ84YEIS3GAGvZiN+H6yaLbbvTFNejjCC4tXpZEuw==", + "license": "MIT", + "dependencies": { + "fast-wrap-ansi": "^0.2.0", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 20.12.0" + } + }, + "node_modules/@clack/prompts": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@clack/prompts/-/prompts-1.5.1.tgz", + "integrity": "sha512-zccHj2z2oCCO4yrDiRSlFOxWerGqRiysP7a5jPK6uoI9URKAquwY42Dd/iUP8JWHxEzdRe4TlbvZCo8z1/mhrw==", + "license": "MIT", + "dependencies": { + "@clack/core": "1.4.1", + "fast-string-width": "^3.0.2", + "fast-wrap-ansi": "^0.2.0", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 20.12.0" + } + }, + "node_modules/@emmetio/abbreviation": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@emmetio/abbreviation/-/abbreviation-2.3.3.tgz", + "integrity": "sha512-mgv58UrU3rh4YgbE/TzgLQwJ3pFsHHhCLqY20aJq+9comytTXUDNGG/SMtSeMJdkpxgXSXunBGLD8Boka3JyVA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@emmetio/scanner": "^1.0.4" + } + }, + "node_modules/@emmetio/css-abbreviation": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/@emmetio/css-abbreviation/-/css-abbreviation-2.1.8.tgz", + "integrity": "sha512-s9yjhJ6saOO/uk1V74eifykk2CBYi01STTK3WlXWGOepyKa23ymJ053+DNQjpFcy1ingpaO7AxCcwLvHFY9tuw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@emmetio/scanner": "^1.0.4" + } + }, + "node_modules/@emmetio/css-parser": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@emmetio/css-parser/-/css-parser-0.4.1.tgz", + "integrity": "sha512-2bC6m0MV/voF4CTZiAbG5MWKbq5EBmDPKu9Sb7s7nVcEzNQlrZP6mFFFlIaISM8X6514H9shWMme1fCm8cWAfQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@emmetio/stream-reader": "^2.2.0", + "@emmetio/stream-reader-utils": "^0.1.0" + } + }, + "node_modules/@emmetio/html-matcher": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@emmetio/html-matcher/-/html-matcher-1.3.0.tgz", + "integrity": "sha512-NTbsvppE5eVyBMuyGfVu2CRrLvo7J4YHb6t9sBFLyY03WYhXET37qA4zOYUjBWFCRHO7pS1B9khERtY0f5JXPQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@emmetio/scanner": "^1.0.0" + } + }, + "node_modules/@emmetio/scanner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@emmetio/scanner/-/scanner-1.0.4.tgz", + "integrity": "sha512-IqRuJtQff7YHHBk4G8YZ45uB9BaAGcwQeVzgj/zj8/UdOhtQpEIupUhSk8dys6spFIWVZVeK20CzGEnqR5SbqA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@emmetio/stream-reader": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@emmetio/stream-reader/-/stream-reader-2.2.0.tgz", + "integrity": "sha512-fXVXEyFA5Yv3M3n8sUGT7+fvecGrZP4k6FnWWMSZVQf69kAq0LLpaBQLGcPR30m3zMmKYhECP4k/ZkzvhEW5kw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@emmetio/stream-reader-utils": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@emmetio/stream-reader-utils/-/stream-reader-utils-0.1.0.tgz", + "integrity": "sha512-ZsZ2I9Vzso3Ho/pjZFsmmZ++FWeEd/txqybHTm4OgaZzdS8V9V/YYWQwg5TC38Z7uLWUV1vavpLLbjJtKubR1A==", + "dev": true, + "license": "MIT" + }, + "node_modules/@emnapi/runtime": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.11.1.tgz", + "integrity": "sha512-vgj7R3y3Wgx24IQaGPA/R6YFXLHVMOZ0uVEyIQPaWs+rd1AzfEMXlAC22FYwO1XkKR6NPsq7mUandH8oIRdZFw==", + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.7.tgz", + "integrity": "sha512-EKX3Qwmhz1eMdEJokhALr0YiD0lhQNwDqkPYyPhiSwKrh7/4KRjQc04sZ8db+5DVVnZ1LmbNDI1uAMPEUBnQPg==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.7.tgz", + "integrity": "sha512-jbPXvB4Yj2yBV7HUfE2KHe4GJX51QplCN1pGbYjvsyCZbQmies29EoJbkEc+vYuU5o45AfQn37vZlyXy4YJ8RQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.7.tgz", + "integrity": "sha512-62dPZHpIXzvChfvfLJow3q5dDtiNMkwiRzPylSCfriLvZeq0a1bWChrGx/BbUbPwOrsWKMn8idSllklzBy+dgQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.7.tgz", + "integrity": "sha512-x5VpMODneVDb70PYV2VQOmIUUiBtY3D3mPBG8NxVk5CogneYhkR7MmM3yR/uMdITLrC1ml/NV1rj4bMJuy9MCg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.7.tgz", + "integrity": "sha512-5lckdqeuBPlKUwvoCXIgI2D9/ABmPq3Rdp7IfL70393YgaASt7tbju3Ac+ePVi3KDH6N2RqePfHnXkaDtY9fkw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.7.tgz", + "integrity": "sha512-rYnXrKcXuT7Z+WL5K980jVFdvVKhCHhUwid+dDYQpH+qu+TefcomiMAJpIiC2EM3Rjtq0sO3StMV/+3w3MyyqQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.7.tgz", + "integrity": "sha512-B48PqeCsEgOtzME2GbNM2roU29AMTuOIN91dsMO30t+Ydis3z/3Ngoj5hhnsOSSwNzS+6JppqWsuhTp6E82l2w==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.7.tgz", + "integrity": "sha512-jOBDK5XEjA4m5IJK3bpAQF9/Lelu/Z9ZcdhTRLf4cajlB+8VEhFFRjWgfy3M1O4rO2GQ/b2dLwCUGpiF/eATNQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.7.tgz", + "integrity": "sha512-RkT/YXYBTSULo3+af8Ib0ykH8u2MBh57o7q/DAs3lTJlyVQkgQvlrPTnjIzzRPQyavxtPtfg0EopvDyIt0j1rA==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.7.tgz", + "integrity": "sha512-RZPHBoxXuNnPQO9rvjh5jdkRmVizktkT7TCDkDmQ0W2SwHInKCAV95GRuvdSvA7w4VMwfCjUiPwDi0ZO6Nfe9A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.7.tgz", + "integrity": "sha512-GA48aKNkyQDbd3KtkplYWT102C5sn/EZTY4XROkxONgruHPU72l+gW+FfF8tf2cFjeHaRbWpOYa/uRBz/Xq1Pg==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.7.tgz", + "integrity": "sha512-a4POruNM2oWsD4WKvBSEKGIiWQF8fZOAsycHOt6JBpZ+JN2n2JH9WAv56SOyu9X5IqAjqSIPTaJkqN8F7XOQ5Q==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.7.tgz", + "integrity": "sha512-KabT5I6StirGfIz0FMgl1I+R1H73Gp0ofL9A3nG3i/cYFJzKHhouBV5VWK1CSgKvVaG4q1RNpCTR2LuTVB3fIw==", + "cpu": [ + "mips64el" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.7.tgz", + "integrity": "sha512-gRsL4x6wsGHGRqhtI+ifpN/vpOFTQtnbsupUF5R5YTAg+y/lKelYR1hXbnBdzDjGbMYjVJLJTd2OFmMewAgwlQ==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.7.tgz", + "integrity": "sha512-hL25LbxO1QOngGzu2U5xeXtxXcW+/GvMN3ejANqXkxZ/opySAZMrc+9LY/WyjAan41unrR3YrmtTsUpwT66InQ==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.7.tgz", + "integrity": "sha512-2k8go8Ycu1Kb46vEelhu1vqEP+UeRVj2zY1pSuPdgvbd5ykAw82Lrro28vXUrRmzEsUV0NzCf54yARIK8r0fdw==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.7.tgz", + "integrity": "sha512-hzznmADPt+OmsYzw1EE33ccA+HPdIqiCRq7cQeL1Jlq2gb1+OyWBkMCrYGBJ+sxVzve2ZJEVeePbLM2iEIZSxA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.7.tgz", + "integrity": "sha512-b6pqtrQdigZBwZxAn1UpazEisvwaIDvdbMbmrly7cDTMFnw/+3lVxxCTGOrkPVnsYIosJJXAsILG9XcQS+Yu6w==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.7.tgz", + "integrity": "sha512-OfatkLojr6U+WN5EDYuoQhtM+1xco+/6FSzJJnuWiUw5eVcicbyK3dq5EeV/QHT1uy6GoDhGbFpprUiHUYggrw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.7.tgz", + "integrity": "sha512-AFuojMQTxAz75Fo8idVcqoQWEHIXFRbOc1TrVcFSgCZtQfSdc1RXgB3tjOn/krRHENUB4j00bfGjyl2mJrU37A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.7.tgz", + "integrity": "sha512-+A1NJmfM8WNDv5CLVQYJ5PshuRm/4cI6WMZRg1by1GwPIQPCTs1GLEUHwiiQGT5zDdyLiRM/l1G0Pv54gvtKIg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openharmony-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.7.tgz", + "integrity": "sha512-+KrvYb/C8zA9CU/g0sR6w2RBw7IGc5J2BPnc3dYc5VJxHCSF1yNMxTV5LQ7GuKteQXZtspjFbiuW5/dOj7H4Yw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.7.tgz", + "integrity": "sha512-ikktIhFBzQNt/QDyOL580ti9+5mL/YZeUPKU2ivGtGjdTYoqz6jObj6nOMfhASpS4GU4Q/Clh1QtxWAvcYKamA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.7.tgz", + "integrity": "sha512-7yRhbHvPqSpRUV7Q20VuDwbjW5kIMwTHpptuUzV+AA46kiPze5Z7qgt6CLCK3pWFrHeNfDd1VKgyP4O+ng17CA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.7.tgz", + "integrity": "sha512-SmwKXe6VHIyZYbBLJrhOoCJRB/Z1tckzmgTLfFYOfpMAx63BJEaL9ExI8x7v0oAO3Zh6D/Oi1gVxEYr5oUCFhw==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.7.tgz", + "integrity": "sha512-56hiAJPhwQ1R4i+21FVF7V8kSD5zZTdHcVuRFMW0hn753vVfQN8xlx4uOPT4xoGH0Z/oVATuR82AiqSTDIpaHg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@img/colour": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.1.0.tgz", + "integrity": "sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/@img/sharp-darwin-arm64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.5.tgz", + "integrity": "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-arm64": "1.2.4" + } + }, + "node_modules/@img/sharp-darwin-x64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.5.tgz", + "integrity": "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-x64": "1.2.4" + } + }, + "node_modules/@img/sharp-libvips-darwin-arm64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.4.tgz", + "integrity": "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==", + "cpu": [ + "arm64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-darwin-x64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.4.tgz", + "integrity": "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==", + "cpu": [ + "x64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.4.tgz", + "integrity": "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==", + "cpu": [ + "arm" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.4.tgz", + "integrity": "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==", + "cpu": [ + "arm64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-ppc64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.4.tgz", + "integrity": "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==", + "cpu": [ + "ppc64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-riscv64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.2.4.tgz", + "integrity": "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==", + "cpu": [ + "riscv64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-s390x": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.4.tgz", + "integrity": "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==", + "cpu": [ + "s390x" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-x64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.4.tgz", + "integrity": "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==", + "cpu": [ + "x64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-arm64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.4.tgz", + "integrity": "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==", + "cpu": [ + "arm64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-x64": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.4.tgz", + "integrity": "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==", + "cpu": [ + "x64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-linux-arm": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.5.tgz", + "integrity": "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==", + "cpu": [ + "arm" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-arm64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.5.tgz", + "integrity": "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm64": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-ppc64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.5.tgz", + "integrity": "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==", + "cpu": [ + "ppc64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-ppc64": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-riscv64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.34.5.tgz", + "integrity": "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==", + "cpu": [ + "riscv64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-riscv64": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-s390x": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.5.tgz", + "integrity": "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==", + "cpu": [ + "s390x" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-s390x": "1.2.4" + } + }, + "node_modules/@img/sharp-linux-x64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.5.tgz", + "integrity": "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-x64": "1.2.4" + } + }, + "node_modules/@img/sharp-linuxmusl-arm64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.5.tgz", + "integrity": "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-arm64": "1.2.4" + } + }, + "node_modules/@img/sharp-linuxmusl-x64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.5.tgz", + "integrity": "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-x64": "1.2.4" + } + }, + "node_modules/@img/sharp-wasm32": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.5.tgz", + "integrity": "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==", + "cpu": [ + "wasm32" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT", + "optional": true, + "dependencies": { + "@emnapi/runtime": "^1.7.0" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-arm64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.5.tgz", + "integrity": "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-ia32": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.5.tgz", + "integrity": "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==", + "cpu": [ + "ia32" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-x64": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.5.tgz", + "integrity": "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@oslojs/encoding": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@oslojs/encoding/-/encoding-1.1.0.tgz", + "integrity": "sha512-70wQhgYmndg4GCPxPPxPGevRKqTIJ2Nh4OkiMWmDAVYsTQ+Ta7Sq+rPevXyXGdzr30/qZBnyOalCszoMxlyldQ==", + "license": "MIT" + }, + "node_modules/@rollup/pluginutils": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.4.0.tgz", + "integrity": "sha512-MfPp06CjRLfXQ3wY0R8vJDYBy/MvVcc9OulEfR0B8Iv9ko+GCNaRZ+EpJYFl27LhKsZK0o420sYCRHCjfCgeUg==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.62.0.tgz", + "integrity": "sha512-IPIQ55ythEHkfEd9jMEi32OQ7SxURsGA43JI22lj01OLZNt2NUbJX8YUHxkVWyQ6daHPNn0truF5nSj3DQp6YQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.62.0.tgz", + "integrity": "sha512-M6s9cr10MibETyo8JsOkq+Lo1+lU6hcvb1MApnUql5qte/5hMEgzlN8/ReIKNfRV8rrqX50W1BX9zoUhC192RA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.62.0.tgz", + "integrity": "sha512-BqCoMoIbn0keKys+dEAdBa70EtOwV1bEsQCUgU9FdiZmmMge/Zk7LlkYGqbrdHR+Frnt0E1FOanly+rlwvvQzw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.62.0.tgz", + "integrity": "sha512-SIMzST3VFNXDAbeIWDWiFCNM5qncUBDWaEV7NfE7oZbDt2mgfW4MvbKdbYiGOLoM32gbTv608UMd0XktEYSD7w==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.62.0.tgz", + "integrity": "sha512-ezjfSQMP7ArdUsbBwbQIfwAlhE84I2iVnzQNCFSveqV42q+BmKlzVpf7mxv5EchLcoWU4y6/heFzVg1F+hodUQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.62.0.tgz", + "integrity": "sha512-9+qTWGW9AZRhnUgwtTwzNwcPlL87ngkeN0LA+q1bADvmY9aNvWaF2TFW8BZgnQPYxpDI7+rMVLivcd4V737TAQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.62.0.tgz", + "integrity": "sha512-T1dMEQhXA/jkJ/jyMIw9IovK8bSUq7A8kLIlvZTb/6YIVsp2zLavr4F3oyllHWo7eIVJRyE5n3tUjQJEbE1IuQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.62.0.tgz", + "integrity": "sha512-2as0LgT7qQpyceQq6VUJYnumUMUrgGQCWIiDIN9DE0/tglsk6o66uCB4f3djRawAltvfCNLyZZrsqbPA6inCsA==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.62.0.tgz", + "integrity": "sha512-bVURMg+6eNN9C/yc0aVjooZcwTTtYF4YW3xta5pP0//r3o1V8gXEHXWCndj47w/HhwsFroZrFhR+6uQP5T0n0g==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.62.0.tgz", + "integrity": "sha512-Ful8pM/2yYI83PViWdFdpZhdI8HJ5qsXANe5atypbHDf+KIBBDsZsbyy8hbXnULVvW9NsTh5DHwbcBftyLTfiw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.62.0.tgz", + "integrity": "sha512-9Gp/DgrkzfUBmNPVTyPTvay+4xEP7M/clXpj3efXBcm6uTIVIgDg4rqUpqKXvLEuFRVuEpSAOkhgNeecvaZ4Cg==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.62.0.tgz", + "integrity": "sha512-m9tsJz54LUXkSYM8+8PG81B9IKK5r+2T0clMq4QrS16xFosufU7firBDAZEsDheDs7wTlP7h3++S7lMsU955HA==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.62.0.tgz", + "integrity": "sha512-3UvJ5PNVU16aJf6M3tFI24pWzAl2/ynfbyRN3ICyQajK1lSkrnVYNnLz3v04J32qKa0FczJc22zeToc0lr2A3w==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.62.0.tgz", + "integrity": "sha512-vRWUAbYLGHBZS6Q8Msb2sfnf1fvJf+47t8l/TwOerM2qArzy+IeNMTHrYLHXh95h8MoatPHI5hhSZNs+mGXKPg==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.62.0.tgz", + "integrity": "sha512-c00T5SYENHAt86cfW47URaP3Us5vLC/4QO7GYud1G5VNRffCwwCuBspwqYrriuJB+5m0WFzClCn9wed0FBjKvg==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.62.0.tgz", + "integrity": "sha512-krrCDilhXOwFkSkO3Wm9I/f9H0L92XHHwy2fwxjukxIbh0dem8gZqOW5Y8BsHrpJv5qwlRBV+Wl4ZFyRWhUpwg==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.62.0.tgz", + "integrity": "sha512-7pfYFSTc4/rUC/FtAI0Qp6QthDBCIi6/AuP1xYqFk5vanI6KnL5dWKP60OM/05LOsbwTmIcvr6eXC4CJuJ75IA==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.62.0.tgz", + "integrity": "sha512-7SDIalKeIpG0Ifogbbdn58HmSotYMlf23K3dCJEmiVd9Fg36Vmni82iPQec27N3wY4Bvbxftkxz6vSx9OcouTg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.62.0.tgz", + "integrity": "sha512-eRZevouTH2i1HeAVLqJuLnt256krQkGY0TN6WsTmsIhuzbh457HuWDMakKwmi0Cjadux983CoSr8Lim2QhUIFw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.62.0.tgz", + "integrity": "sha512-3oVS7FLGa4U1qcvao9ylGxrjXZyUQqR8UwxEcnUEyPX53O/C/mKDZegNXTdHCP+h3e6ta/f1EN38Yif1mmZHYg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.62.0.tgz", + "integrity": "sha512-yTB9TgfWj5wHe5QgktAgXTLLot1gvEjl1NiPPAUiCs4oPrIWFl5V4nC3GrkNdj9LaAU4s94nVrGbGOCqUpyWsg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.62.0.tgz", + "integrity": "sha512-5LOhoaesY3doG1c+ac/2JtgREpKoJr5bUHH8tKY0V8di7+uSV6BwLs2PlR0/yzefGOkR+wE7ZolZphHCsyG5Rw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.62.0.tgz", + "integrity": "sha512-yYkWHhmbhRTWTnWos5HC4GcPQfjlzzCNbM9e/+GXrLuaBXYA3qSDR9f0Vgufd5S8yX81U8jPKp7ZnAjZFMtRnw==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.62.0.tgz", + "integrity": "sha512-SoTb6lPg25xZlA2ibwQ++ahCCnH+FP0qmEuafMJ4gznZKOlXioKEAeJLgCrqjM98ACziXM9V1amFjICVL4IFoA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.62.0.tgz", + "integrity": "sha512-5L+T1fMX4RIEBoZzT0+sQ0PhTS36NULFmMXtl1TZo44TMAROIMHbZufSOjVWt/Y622BtxgxtaNOokbTDvfsrZA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@shikijs/core": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-4.2.0.tgz", + "integrity": "sha512-Hc87Ab1Ld/vEbZRCbwx344I5v+4RU8CVToUTRkqXL1+TjbuOp9U5Xa0M23V4GEWHxVn+yO5otb+HkQVm3ptWQQ==", + "license": "MIT", + "dependencies": { + "@shikijs/primitive": "4.2.0", + "@shikijs/types": "4.2.0", + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4", + "hast-util-to-html": "^9.0.5" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@shikijs/engine-javascript": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-4.2.0.tgz", + "integrity": "sha512-fjETeq1k5ffyXqRgS6+3hpvqseLalp1kjNfRbXpUgWR8FpZ1CmQfiNHovc5lncYjt/Vg5JK/WJEmLahjwMa0og==", + "license": "MIT", + "dependencies": { + "@shikijs/types": "4.2.0", + "@shikijs/vscode-textmate": "^10.0.2", + "oniguruma-to-es": "^4.3.6" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@shikijs/engine-oniguruma": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-4.2.0.tgz", + "integrity": "sha512-hTorK1dffPkpbMUk6Z+828PgRo7d07HbnizoP0hNPFjhxMHctj0Px/qoHeGMYafc6ju+u9iMldN4JbVzNQM++g==", + "license": "MIT", + "dependencies": { + "@shikijs/types": "4.2.0", + "@shikijs/vscode-textmate": "^10.0.2" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@shikijs/langs": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-4.2.0.tgz", + "integrity": "sha512-bwrVRlJ0wUhZxAbVdvBbv2TTC9yLsh4C/IO5Ofz0T8MQntgDvyVnkbjw9vi50r1kx7RCIJdnJnjZAwmAsXFLZQ==", + "license": "MIT", + "dependencies": { + "@shikijs/types": "4.2.0" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@shikijs/primitive": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@shikijs/primitive/-/primitive-4.2.0.tgz", + "integrity": "sha512-NOq+DtUkVBJtZMVXL5A0vI0Xk8nvDYaXetFHSJFlOqjDZIVhIPRYFdGkSoElDqNuegikcc3A76SNUa8dTqtAYA==", + "license": "MIT", + "dependencies": { + "@shikijs/types": "4.2.0", + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@shikijs/themes": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-4.2.0.tgz", + "integrity": "sha512-RX8IHYeLv8Cu2W6ruc3RxUqWn0IYCqSrMBzi/uRGAmfyDNOnNO5BF/Px7o97n4XTpmFTo5GbRaazuOWj+2ak2w==", + "license": "MIT", + "dependencies": { + "@shikijs/types": "4.2.0" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@shikijs/types": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-4.2.0.tgz", + "integrity": "sha512-VT/MKtlpOhEPZloSH3Pb9WCZEBDoQVMa9jedp5UAwmJOar1DVc9DRODAxmYPW9M93IK4ryuqRejFfmlvlVDemw==", + "license": "MIT", + "dependencies": { + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4" + }, + "engines": { + "node": ">=20" + } + }, + "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==", + "license": "MIT" + }, + "node_modules/@tailwindcss/node": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.3.1.tgz", + "integrity": "sha512-6NDaqRoAMSXD1mr/RXu0HBvNE9a2n5tHPsxu9XHLws8o4Twes5rBM2205SUUiJ9goAtadrN6xTGX0UDEwp/N4A==", + "license": "MIT", + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "enhanced-resolve": "5.21.6", + "jiti": "^2.7.0", + "lightningcss": "1.32.0", + "magic-string": "^0.30.21", + "source-map-js": "^1.2.1", + "tailwindcss": "4.3.1" + } + }, + "node_modules/@tailwindcss/oxide": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.3.1.tgz", + "integrity": "sha512-yVPyo8RNkabVr3O2EhHEE0Rewu7YKzc1DhIqfL46LKveFrmu9XbDazNOJY7/GRuvw1h6u3utWnR29H/p5JPlgA==", + "license": "MIT", + "engines": { + "node": ">= 20" + }, + "optionalDependencies": { + "@tailwindcss/oxide-android-arm64": "4.3.1", + "@tailwindcss/oxide-darwin-arm64": "4.3.1", + "@tailwindcss/oxide-darwin-x64": "4.3.1", + "@tailwindcss/oxide-freebsd-x64": "4.3.1", + "@tailwindcss/oxide-linux-arm-gnueabihf": "4.3.1", + "@tailwindcss/oxide-linux-arm64-gnu": "4.3.1", + "@tailwindcss/oxide-linux-arm64-musl": "4.3.1", + "@tailwindcss/oxide-linux-x64-gnu": "4.3.1", + "@tailwindcss/oxide-linux-x64-musl": "4.3.1", + "@tailwindcss/oxide-wasm32-wasi": "4.3.1", + "@tailwindcss/oxide-win32-arm64-msvc": "4.3.1", + "@tailwindcss/oxide-win32-x64-msvc": "4.3.1" + } + }, + "node_modules/@tailwindcss/oxide-android-arm64": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.3.1.tgz", + "integrity": "sha512-SVlyf61g374l5cHyg8x9kf5xmLcOaxvOTsbsqDnSsDJaKOEFZ7GCvi84VAVGpxojYOs1+3K6M0UjXfqPU8vmOQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-darwin-arm64": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.3.1.tgz", + "integrity": "sha512-hVnWLwv+e/l7c4WKyVtHVrIPvYdqWHjRB3MDIqARynzFtnQg85kmQEFCbV9Ja0VVx4xXTIiDWY60Y7iz/iNoDA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-darwin-x64": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.3.1.tgz", + "integrity": "sha512-Cf7abu0WVgbhU7ANgPUnSAvm7nCvMweusHb8FnaHlLfv/Caq4GYaEZg7ZImzzmjx4lIAfuS8q+eLIS7A7IzxIg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-freebsd-x64": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.3.1.tgz", + "integrity": "sha512-ZZqzX2Y+GXtXXfqSfpJhDm60OoZfvLHLCgm+J7NVqgHHJjG/m9ugZI77RwTsVd4fnBJuCFP6Ae6kTJb71UdS8g==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.3.1.tgz", + "integrity": "sha512-/Ah/xik0LaMYfv9DZ0S/t4pBlBNYOcqtRwusjgovHkvT8ixueWCLyJjsaF5kQIckjb4IT8Q6K6p/iPmZMixYgg==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.3.1.tgz", + "integrity": "sha512-gqdFoVJlw444GvpnheZLHmvTzSxI/cOUUh2KSNejQjTcYkW062SVD+En0rUgD+QV91bz1XGIGtt1HJd48xUGbQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-musl": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.3.1.tgz", + "integrity": "sha512-Bwv9KwOvE0VKa86xPFif9b9c3Y1NxOV1P0gLti/IYaWEsQYZXDlxfGEtA8mdDZ7SG3wyNXAWYT5SIn3giL57oA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-gnu": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.3.1.tgz", + "integrity": "sha512-Ymi8O8T15HYQdOUWUtTI6ldN0neHP85FC+Qz32xTcZ7iJXtem/x8ITev0o1e9e5rkqj4lONZfTRLvkmin1+tKg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-musl": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.3.1.tgz", + "integrity": "sha512-M+P/91qJ6uILLw4k2G93GMDRAXj61SMvFQYt39AqvUqYgExXpLL5aepfns7sj4HiAQeolirQF9E0lzRvdf4zPQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.3.1.tgz", + "integrity": "sha512-zsM8uOeqvVGHsAXsJxsT28ttosFahLJKCLOTUBqRAtKnVgGSRitds9T432QiT8b77Yga7JIBkulIRRlJPtYhRA==", + "bundleDependencies": [ + "@napi-rs/wasm-runtime", + "@emnapi/core", + "@emnapi/runtime", + "@tybys/wasm-util", + "@emnapi/wasi-threads", + "tslib" + ], + "cpu": [ + "wasm32" + ], + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.10.0", + "@emnapi/runtime": "^1.10.0", + "@emnapi/wasi-threads": "^1.2.1", + "@napi-rs/wasm-runtime": "^1.1.4", + "@tybys/wasm-util": "^0.10.2", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.3.1.tgz", + "integrity": "sha512-aiNvSq9BsVk8V513lDKlrCFAgf8qBMPZTpgEhInL+NwQqs97mYmupVMrPrgBBSL8Pv/0zXu9MrMF9rMun1ZeNg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-win32-x64-msvc": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.3.1.tgz", + "integrity": "sha512-xDEyu1rg290472FEGaKHnzyDyh5QH+AlWvsU5hMoMtPpzmKlRI0jaYKCgSHDYtaQWZOYbMaduSyCwFwY4n1HmA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/vite": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/vite/-/vite-4.3.1.tgz", + "integrity": "sha512-hItDHuIIlEV61R+faXu66s1K36aTurO/Qw0e45Vskz57gXl9pWOT6eg3zmcEui6CZXddbN7zd41bwmvag4JGwQ==", + "license": "MIT", + "dependencies": { + "@tailwindcss/node": "4.3.1", + "@tailwindcss/oxide": "4.3.1", + "tailwindcss": "4.3.1" + }, + "peerDependencies": { + "vite": "^5.2.0 || ^6 || ^7 || ^8" + } + }, + "node_modules/@types/debug": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.13.tgz", + "integrity": "sha512-KSVgmQmzMwPlmtljOomayoR89W4FynCAi3E8PPs7vmDVPe84hT+vGPKkJfThkmXs0x0jAaa9U8uW8bbfyS2fWw==", + "license": "MIT", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz", + "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==", + "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==", + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "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==", + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", + "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", + "license": "MIT" + }, + "node_modules/@types/nlcst": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/nlcst/-/nlcst-2.0.3.tgz", + "integrity": "sha512-vSYNSDe6Ix3q+6Z7ri9lyWqgGhJTmzRjZRqyq15N0Z/1/UnVsno9G/N40NBijoYx2seFDIl0+B2mgAb9mezUCA==", + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/node": { + "version": "25.9.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.9.3.tgz", + "integrity": "sha512-603BddQMv3pUcr4U2dhujk83N2tTDVr/34wII2B6bJy6g+8WD6yUb11jszNs0gdi4PesVWl7ABt8nYMVpnLUcg==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "undici-types": ">=7.24.0 <7.24.7" + } + }, + "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==", + "license": "MIT" + }, + "node_modules/@ungap/structured-clone": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.1.tgz", + "integrity": "sha512-mUFwbeTqrVgDQxFveS+df2yfap6iuP20NAKAsBt5jDEoOTDew+zwLAOilHCeQJOVSvmgCX4ogqIrA0mnyr08yQ==", + "license": "ISC" + }, + "node_modules/@volar/kit": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/kit/-/kit-2.4.28.tgz", + "integrity": "sha512-cKX4vK9dtZvDRaAzeoUdaAJEew6IdxHNCRrdp5Kvcl6zZOqb6jTOfk3kXkIkG3T7oTFXguEMt5+9ptyqYR84Pg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-service": "2.4.28", + "@volar/typescript": "2.4.28", + "typesafe-path": "^0.2.2", + "vscode-languageserver-textdocument": "^1.0.11", + "vscode-uri": "^3.0.8" + }, + "peerDependencies": { + "typescript": "*" + } + }, + "node_modules/@volar/language-core": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.28.tgz", + "integrity": "sha512-w4qhIJ8ZSitgLAkVay6AbcnC7gP3glYM3fYwKV3srj8m494E3xtrCv6E+bWviiK/8hs6e6t1ij1s2Endql7vzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/source-map": "2.4.28" + } + }, + "node_modules/@volar/language-server": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/language-server/-/language-server-2.4.28.tgz", + "integrity": "sha512-NqcLnE5gERKuS4PUFwlhMxf6vqYo7hXtbMFbViXcbVkbZ905AIVWhnSo0ZNBC2V127H1/2zP7RvVOVnyITFfBw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.28", + "@volar/language-service": "2.4.28", + "@volar/typescript": "2.4.28", + "path-browserify": "^1.0.1", + "request-light": "^0.7.0", + "vscode-languageserver": "^9.0.1", + "vscode-languageserver-protocol": "^3.17.5", + "vscode-languageserver-textdocument": "^1.0.11", + "vscode-uri": "^3.0.8" + } + }, + "node_modules/@volar/language-service": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/language-service/-/language-service-2.4.28.tgz", + "integrity": "sha512-Rh/wYCZJrI5vCwMk9xyw/Z+MsWxlJY1rmMZPsxUoJKfzIRjS/NF1NmnuEcrMbEVGja00aVpCsInJfixQTMdvLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.28", + "vscode-languageserver-protocol": "^3.17.5", + "vscode-languageserver-textdocument": "^1.0.11", + "vscode-uri": "^3.0.8" + } + }, + "node_modules/@volar/source-map": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.28.tgz", + "integrity": "sha512-yX2BDBqJkRXfKw8my8VarTyjv48QwxdJtvRgUpNE5erCsgEUdI2DsLbpa+rOQVAJYshY99szEcRDmyHbF10ggQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@volar/typescript": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.28.tgz", + "integrity": "sha512-Ja6yvWrbis2QtN4ClAKreeUZPVYMARDYZl9LMEv1iQ1QdepB6wn0jTRxA9MftYmYa4DQ4k/DaSZpFPUfxl8giw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.28", + "path-browserify": "^1.0.1", + "vscode-uri": "^3.0.8" + } + }, + "node_modules/@vscode/emmet-helper": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@vscode/emmet-helper/-/emmet-helper-2.11.0.tgz", + "integrity": "sha512-QLxjQR3imPZPQltfbWRnHU6JecWTF1QSWhx3GAKQpslx7y3Dp6sIIXhKjiUJ/BR9FX8PVthjr9PD6pNwOJfAzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "emmet": "^2.4.3", + "jsonc-parser": "^2.3.0", + "vscode-languageserver-textdocument": "^1.0.1", + "vscode-languageserver-types": "^3.15.1", + "vscode-uri": "^3.0.8" + } + }, + "node_modules/@vscode/emmet-helper/node_modules/jsonc-parser": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.3.1.tgz", + "integrity": "sha512-H8jvkz1O50L3dMZCsLqiuB2tA7muqbSg1AtGEkN0leAqGjsUzDJir3Zwr02BhqdcITPg3ei3mZ+HjMocAknhhg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@vscode/l10n": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/@vscode/l10n/-/l10n-0.0.18.tgz", + "integrity": "sha512-KYSIHVmslkaCDyw013pphY+d7x1qV8IZupYfeIfzNA+nsaWHbn5uPuQRvdRFsa9zFzGeudPuoGoZ1Op4jrJXIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/ajv": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-draft-04": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ajv-draft-04/-/ajv-draft-04-1.0.0.tgz", + "integrity": "sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "ajv": "^8.5.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/anymatch/node_modules/picomatch": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0" + }, + "node_modules/aria-query": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", + "license": "Apache-2.0", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array-iterate": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/array-iterate/-/array-iterate-2.0.1.tgz", + "integrity": "sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/astro": { + "version": "6.4.7", + "resolved": "https://registry.npmjs.org/astro/-/astro-6.4.7.tgz", + "integrity": "sha512-5vsXx0H52u23Jpshs9tM81D03Tb3Oh2Vt2Zo0bpqjXN+njkAWjFyGjTfmWJLAcrCQd9Q+iWB1eqfhR1sZJEaUA==", + "license": "MIT", + "dependencies": { + "@astrojs/compiler": "^4.0.0", + "@astrojs/internal-helpers": "0.10.0", + "@astrojs/markdown-remark": "7.2.0", + "@astrojs/telemetry": "3.3.2", + "@capsizecss/unpack": "^4.0.0", + "@clack/prompts": "^1.1.0", + "@oslojs/encoding": "^1.1.0", + "@rollup/pluginutils": "^5.3.0", + "aria-query": "^5.3.2", + "axobject-query": "^4.1.0", + "ci-info": "^4.4.0", + "clsx": "^2.1.1", + "common-ancestor-path": "^2.0.0", + "cookie": "^1.1.1", + "devalue": "^5.8.1", + "diff": "^8.0.3", + "dset": "^3.1.4", + "es-module-lexer": "^2.0.0", + "esbuild": "^0.27.3", + "flattie": "^1.1.1", + "fontace": "~0.4.1", + "get-tsconfig": "5.0.0-beta.4", + "github-slugger": "^2.0.0", + "html-escaper": "3.0.3", + "http-cache-semantics": "^4.2.0", + "js-yaml": "^4.1.1", + "jsonc-parser": "^3.3.1", + "magic-string": "^0.30.21", + "magicast": "^0.5.2", + "mrmime": "^2.0.1", + "neotraverse": "^0.6.18", + "obug": "^2.1.1", + "p-limit": "^7.3.0", + "p-queue": "^9.1.0", + "package-manager-detector": "^1.6.0", + "piccolore": "^0.1.3", + "picomatch": "^4.0.4", + "rehype": "^13.0.2", + "semver": "^7.7.4", + "shiki": "^4.0.2", + "smol-toml": "^1.6.0", + "svgo": "^4.0.1", + "tinyclip": "^0.1.12", + "tinyexec": "^1.0.4", + "tinyglobby": "^0.2.15", + "ultrahtml": "^1.6.0", + "unifont": "~0.7.4", + "unist-util-visit": "^5.1.0", + "unstorage": "^1.17.5", + "vfile": "^6.0.3", + "vite": "^7.3.2", + "vitefu": "^1.1.2", + "xxhash-wasm": "^1.1.0", + "yargs-parser": "^22.0.0", + "zod": "^4.3.6" + }, + "bin": { + "astro": "bin/astro.mjs" + }, + "engines": { + "node": ">=22.12.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/astrodotbuild" + }, + "optionalDependencies": { + "sharp": "^0.34.0" + } + }, + "node_modules/axobject-query": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", + "license": "Apache-2.0", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/bail": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", + "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "license": "ISC" + }, + "node_modules/ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", + "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "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==", + "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==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chokidar": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-5.0.0.tgz", + "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", + "license": "MIT", + "dependencies": { + "readdirp": "^5.0.0" + }, + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/ci-info": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.4.0.tgz", + "integrity": "sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "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==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/commander": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", + "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", + "license": "MIT", + "engines": { + "node": ">=16" + } + }, + "node_modules/common-ancestor-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-2.0.0.tgz", + "integrity": "sha512-dnN3ibLeoRf2HNC+OlCiNc5d2zxbLJXOtiZUudNFSXZrNSydxcCsSpRzXwfu7BBWCIfHPw+xTayeBvJCP/D8Ng==", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">= 18" + } + }, + "node_modules/cookie": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.1.1.tgz", + "integrity": "sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==", + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/cookie-es": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-1.2.3.tgz", + "integrity": "sha512-lXVyvUvrNXblMqzIRrxHb57UUVmqsSWlxqt3XIjCkUP0wDAf6uicO6KMbEgYrMNtEvWgWHwe42CKxPu9MYAnWw==", + "license": "MIT" + }, + "node_modules/crossws": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/crossws/-/crossws-0.3.5.tgz", + "integrity": "sha512-ojKiDvcmByhwa8YYqbQI/hg7MEU0NC03+pSdEq4ZUnZR9xXpwk7E43SMNGkn+JxJGPFtNvQ48+vV2p+P1ml5PA==", + "license": "MIT", + "dependencies": { + "uncrypto": "^0.1.3" + } + }, + "node_modules/css-select": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.2.2.tgz", + "integrity": "sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-tree": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.2.1.tgz", + "integrity": "sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA==", + "license": "MIT", + "dependencies": { + "mdn-data": "2.27.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + } + }, + "node_modules/css-what": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.2.2.tgz", + "integrity": "sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==", + "license": "BSD-2-Clause", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/csso": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", + "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", + "license": "MIT", + "dependencies": { + "css-tree": "~2.2.0" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/css-tree": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", + "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", + "license": "MIT", + "dependencies": { + "mdn-data": "2.0.28", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.28", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", + "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==", + "license": "CC0-1.0" + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decode-named-character-reference": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.3.0.tgz", + "integrity": "sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q==", + "license": "MIT", + "dependencies": { + "character-entities": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/defu": { + "version": "6.1.7", + "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.7.tgz", + "integrity": "sha512-7z22QmUWiQ/2d0KkdYmANbRUVABpZ9SNYyH5vx6PZ+nE5bcC0l7uFvEfHlyld/HcGBFTL536ClDt3DEcSlEJAQ==", + "license": "MIT" + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/destr": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/destr/-/destr-2.0.5.tgz", + "integrity": "sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==", + "license": "MIT" + }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/devalue": { + "version": "5.8.1", + "resolved": "https://registry.npmjs.org/devalue/-/devalue-5.8.1.tgz", + "integrity": "sha512-4CXDYRBGqN+57wVJkuXBYmpAVUSg3L6JAQa/DFqm238G73E1wuyc/JhGQJzN7vUf/CMphYau2zXbfWzDR5aTEw==", + "license": "MIT" + }, + "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==", + "license": "MIT", + "dependencies": { + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/diff": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/diff/-/diff-8.0.4.tgz", + "integrity": "sha512-DPi0FmjiSU5EvQV0++GFDOJ9ASQUVFh5kD+OzOnYdi7n3Wpm9hWWGfB/O2blfHcMVTL5WkQXSnRiK9makhrcnw==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "license": "MIT", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/dom-serializer/node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", + "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dset": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/dset/-/dset-3.1.4.tgz", + "integrity": "sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/emmet": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/emmet/-/emmet-2.4.11.tgz", + "integrity": "sha512-23QPJB3moh/U9sT4rQzGgeyyGIrcM+GH5uVYg2C6wZIxAIJq7Ng3QLT79tl8FUwDXhyq9SusfknOrofAKqvgyQ==", + "dev": true, + "license": "MIT", + "workspaces": [ + "./packages/scanner", + "./packages/abbreviation", + "./packages/css-abbreviation", + "./" + ], + "dependencies": { + "@emmetio/abbreviation": "^2.3.3", + "@emmetio/css-abbreviation": "^2.1.8" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/enhanced-resolve": { + "version": "5.21.6", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.21.6.tgz", + "integrity": "sha512-aNnGCvbJ/RIyWo1IuhNdVjnNF+EjH9wpzpNHt+ci/m9He9LJvUN8wrCcXjp9cWsGNAuvSpVFTx/vraAFQ8qGjQ==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.3.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/es-module-lexer": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-2.1.0.tgz", + "integrity": "sha512-n27zTYMjYu1aj4MjCWzSP7G9r75utsaoc8m61weK+W8JMBGGQybd43GstCXZ3WNmSFtGT9wi59qQTW6mhTR5LQ==", + "license": "MIT" + }, + "node_modules/esbuild": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.7.tgz", + "integrity": "sha512-IxpibTjyVnmrIQo5aqNpCgoACA/dTKLTlhMHihVHhdkxKyPO1uBBthumT0rdHmcsk9uMonIWS0m4FljWzILh3w==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.27.7", + "@esbuild/android-arm": "0.27.7", + "@esbuild/android-arm64": "0.27.7", + "@esbuild/android-x64": "0.27.7", + "@esbuild/darwin-arm64": "0.27.7", + "@esbuild/darwin-x64": "0.27.7", + "@esbuild/freebsd-arm64": "0.27.7", + "@esbuild/freebsd-x64": "0.27.7", + "@esbuild/linux-arm": "0.27.7", + "@esbuild/linux-arm64": "0.27.7", + "@esbuild/linux-ia32": "0.27.7", + "@esbuild/linux-loong64": "0.27.7", + "@esbuild/linux-mips64el": "0.27.7", + "@esbuild/linux-ppc64": "0.27.7", + "@esbuild/linux-riscv64": "0.27.7", + "@esbuild/linux-s390x": "0.27.7", + "@esbuild/linux-x64": "0.27.7", + "@esbuild/netbsd-arm64": "0.27.7", + "@esbuild/netbsd-x64": "0.27.7", + "@esbuild/openbsd-arm64": "0.27.7", + "@esbuild/openbsd-x64": "0.27.7", + "@esbuild/openharmony-arm64": "0.27.7", + "@esbuild/sunos-x64": "0.27.7", + "@esbuild/win32-arm64": "0.27.7", + "@esbuild/win32-ia32": "0.27.7", + "@esbuild/win32-x64": "0.27.7" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "license": "MIT" + }, + "node_modules/eventemitter3": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.4.tgz", + "integrity": "sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==", + "license": "MIT" + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "license": "MIT" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-string-truncated-width": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fast-string-truncated-width/-/fast-string-truncated-width-3.0.3.tgz", + "integrity": "sha512-0jjjIEL6+0jag3l2XWWizO64/aZVtpiGE3t0Zgqxv0DPuxiMjvB3M24fCyhZUO4KomJQPj3LTSUnDP3GpdwC0g==", + "license": "MIT" + }, + "node_modules/fast-string-width": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/fast-string-width/-/fast-string-width-3.0.2.tgz", + "integrity": "sha512-gX8LrtNEI5hq8DVUfRQMbr5lpaS4nMIWV+7XEbXk2b8kiQIizgnlr12B4dA3ZEx3308ze0O4Q1R+cHts8kyUJg==", + "license": "MIT", + "dependencies": { + "fast-string-truncated-width": "^3.0.2" + } + }, + "node_modules/fast-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.2.tgz", + "integrity": "sha512-rVjf7ArG3LTk+FS6Yw81V1DLuZl1bRbNrev6Tmd/9RaroeeRRJhAt7jg/6YFxbvAQXUCavSoZhPPj6oOx+5KjQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/fast-wrap-ansi": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/fast-wrap-ansi/-/fast-wrap-ansi-0.2.2.tgz", + "integrity": "sha512-7F2Fl+TjRSenLqlU3UjSH0iyqopqoZIu7eZVpEirP2g1GtWa2G/ecEmBdgz31+Mxr+ELclgg6sokpSFIQiZ02Q==", + "license": "MIT", + "dependencies": { + "fast-string-width": "^3.0.2" + } + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/flattie": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flattie/-/flattie-1.1.1.tgz", + "integrity": "sha512-9UbaD6XdAL97+k/n+N7JwX46K/M6Zc6KcFYskrYL8wbBV/Uyk0CTAMY0VT+qiK5PM7AIc9aTWYtq65U7T+aCNQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/fontace": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/fontace/-/fontace-0.4.1.tgz", + "integrity": "sha512-lDMvbAzSnHmbYMTEld5qdtvNH2/pWpICOqpean9IgC7vUbUJc3k+k5Dokp85CegamqQpFbXf0rAVkbzpyTA8aw==", + "license": "MIT", + "dependencies": { + "fontkitten": "^1.0.2" + } + }, + "node_modules/fontkitten": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fontkitten/-/fontkitten-1.0.3.tgz", + "integrity": "sha512-Wp1zXWPVUPBmfoa3Cqc9ctaKuzKAV6uLstRqlR56kSjplf5uAce+qeyYym7F+PHbGTk+tCEdkCW6RD7DX/gBZw==", + "license": "MIT", + "dependencies": { + "tiny-inflate": "^1.0.3" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-tsconfig": { + "version": "5.0.0-beta.4", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-5.0.0-beta.4.tgz", + "integrity": "sha512-7nF7C9fIPFEMHgEMEfgIlO9wDdZ8CyHw27rWciFZfHvHDReIiPhsYuzPRXsfvBCqFy1l8RRyyWV7QLM+ZhUJsQ==", + "license": "MIT", + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "engines": { + "node": ">=20.20.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/github-slugger": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz", + "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==", + "license": "ISC" + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" + }, + "node_modules/h3": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/h3/-/h3-1.15.11.tgz", + "integrity": "sha512-L3THSe2MPeBwgIZVSH5zLdBBU90TOxarvhK9d04IDY2AmVS8j2Jz2LIWtwsGOU3lu2I5jCN7FNvVfY2+XyF+mg==", + "license": "MIT", + "dependencies": { + "cookie-es": "^1.2.3", + "crossws": "^0.3.5", + "defu": "^6.1.6", + "destr": "^2.0.5", + "iron-webcrypto": "^1.2.1", + "node-mock-http": "^1.0.4", + "radix3": "^1.1.2", + "ufo": "^1.6.3", + "uncrypto": "^0.1.3" + } + }, + "node_modules/hast-util-from-html": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hast-util-from-html/-/hast-util-from-html-2.0.3.tgz", + "integrity": "sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "devlop": "^1.1.0", + "hast-util-from-parse5": "^8.0.0", + "parse5": "^7.0.0", + "vfile": "^6.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-from-parse5": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-8.0.3.tgz", + "integrity": "sha512-3kxEVkEKt0zvcZ3hCRYI8rqrgwtlIOFMWkbclACvjlDw8Li9S2hk/d51OI0nr/gIpdMHNepwgOKqZ/sy0Clpyg==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "devlop": "^1.0.0", + "hastscript": "^9.0.0", + "property-information": "^7.0.0", + "vfile": "^6.0.0", + "vfile-location": "^5.0.0", + "web-namespaces": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-is-element": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", + "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-parse-selector": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", + "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-raw": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.1.0.tgz", + "integrity": "sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "@ungap/structured-clone": "^1.0.0", + "hast-util-from-parse5": "^8.0.0", + "hast-util-to-parse5": "^8.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "parse5": "^7.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "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==", + "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-to-parse5": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-8.0.1.tgz", + "integrity": "sha512-MlWT6Pjt4CG9lFCjiz4BH7l9wmrMkfkJYCxFwKQic8+RTZgWPuWxwAfjJElsXkex7DJjfSJsQIt931ilUgmwdA==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-text": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.2.tgz", + "integrity": "sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "hast-util-is-element": "^3.0.0", + "unist-util-find-after": "^5.0.0" + }, + "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==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hastscript": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-9.0.1.tgz", + "integrity": "sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^4.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/html-escaper": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-3.0.3.tgz", + "integrity": "sha512-RuMffC89BOWQoY0WKGpIhn5gX3iI54O6nRA0yC124NYVtzjmFWBIiFd8M0x+ZdX0P9R4lADg1mgP8C7PxGOWuQ==", + "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==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==", + "license": "BSD-2-Clause" + }, + "node_modules/iron-webcrypto": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/iron-webcrypto/-/iron-webcrypto-1.2.1.tgz", + "integrity": "sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/brc-dd" + } + }, + "node_modules/is-docker": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-4.0.0.tgz", + "integrity": "sha512-LHE+wROyG/Y/0ZnbktRCoTix2c1RhgWaZraMZ8o1Q7zCh0VSrICJQO5oqIIISrcSBtrXv0o233w1IYwsWCjTzA==", + "license": "MIT", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-inside-container": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", + "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", + "license": "MIT", + "dependencies": { + "is-docker": "^3.0.0" + }, + "bin": { + "is-inside-container": "cli.js" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-inside-container/node_modules/is-docker": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", + "license": "MIT", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-wsl": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.1.tgz", + "integrity": "sha512-e6rvdUCiQCAuumZslxRJWR/Doq4VpPR82kqclvcS0efgt430SlGIk05vdCN58+VrzgtIcfNODjozVielycD4Sw==", + "license": "MIT", + "dependencies": { + "is-inside-container": "^1.0.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jiti": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.7.0.tgz", + "integrity": "sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==", + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/js-yaml": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.2.0.tgz", + "integrity": "sha512-ePWsvanv0DWuDRsW8dnt+R4jQ31SCRCQ7hhNcPXZPsoBZiemuZNYGf7adZdqX2D86j6rvKp3RpCxVTSb8WQlOw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT" + }, + "node_modules/jsonc-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz", + "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==", + "license": "MIT" + }, + "node_modules/kleur": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/lightningcss": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz", + "integrity": "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==", + "license": "MPL-2.0", + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-android-arm64": "1.32.0", + "lightningcss-darwin-arm64": "1.32.0", + "lightningcss-darwin-x64": "1.32.0", + "lightningcss-freebsd-x64": "1.32.0", + "lightningcss-linux-arm-gnueabihf": "1.32.0", + "lightningcss-linux-arm64-gnu": "1.32.0", + "lightningcss-linux-arm64-musl": "1.32.0", + "lightningcss-linux-x64-gnu": "1.32.0", + "lightningcss-linux-x64-musl": "1.32.0", + "lightningcss-win32-arm64-msvc": "1.32.0", + "lightningcss-win32-x64-msvc": "1.32.0" + } + }, + "node_modules/lightningcss-android-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz", + "integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz", + "integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz", + "integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-freebsd-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz", + "integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz", + "integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==", + "cpu": [ + "arm" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz", + "integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz", + "integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz", + "integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz", + "integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz", + "integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-x64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz", + "integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/longest-streak": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", + "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/lru-cache": { + "version": "11.5.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.1.tgz", + "integrity": "sha512-RPimw/7aMdv2oqRrxKwvZXcPfwBrn/JZ2xYcY9Hus/6LaS3VOAKVWKWgNLCFSiOm1ESXinjsDlidVU7JlnCN2A==", + "license": "BlueOak-1.0.0", + "engines": { + "node": "20 || >=22" + } + }, + "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==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/magicast": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.5.3.tgz", + "integrity": "sha512-pVKE4UdSQ7DvHzivsCIFx2BJn1mHG6KsyrFcaxFx6tONdneEuThrDx0Cj3AMg58KyN4pzYT+LHOotxDQDjNvkw==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.3", + "@babel/types": "^7.29.0", + "source-map-js": "^1.2.1" + } + }, + "node_modules/markdown-table": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.4.tgz", + "integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/mdast-util-definitions": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-6.0.0.tgz", + "integrity": "sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "unist-util-visit": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.2.tgz", + "integrity": "sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "escape-string-regexp": "^5.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/mdast-util-from-markdown": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.3.tgz", + "integrity": "sha512-W4mAWTvSlKvf8L6J+VN9yLSqQ9AOAAvHuoDAmPkz4dHf553m5gVj2ejadHJhoJmcmxEnOv6Pa8XJhpxE93kb8Q==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz", + "integrity": "sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==", + "license": "MIT", + "dependencies": { + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-gfm-autolink-literal": "^2.0.0", + "mdast-util-gfm-footnote": "^2.0.0", + "mdast-util-gfm-strikethrough": "^2.0.0", + "mdast-util-gfm-table": "^2.0.0", + "mdast-util-gfm-task-list-item": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-autolink-literal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz", + "integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "ccount": "^2.0.0", + "devlop": "^1.0.0", + "mdast-util-find-and-replace": "^3.0.0", + "micromark-util-character": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-footnote": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.1.0.tgz", + "integrity": "sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-strikethrough": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", + "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", + "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "markdown-table": "^3.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-task-list-item": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", + "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-phrasing": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", + "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "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==", + "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/mdast-util-to-markdown": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz", + "integrity": "sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "longest-streak": "^3.0.0", + "mdast-util-phrasing": "^4.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdn-data": { + "version": "2.27.1", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.27.1.tgz", + "integrity": "sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==", + "license": "CC0-1.0" + }, + "node_modules/micromark": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz", + "integrity": "sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz", + "integrity": "sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", + "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", + "license": "MIT", + "dependencies": { + "micromark-extension-gfm-autolink-literal": "^2.0.0", + "micromark-extension-gfm-footnote": "^2.0.0", + "micromark-extension-gfm-strikethrough": "^2.0.0", + "micromark-extension-gfm-table": "^2.0.0", + "micromark-extension-gfm-tagfilter": "^2.0.0", + "micromark-extension-gfm-task-list-item": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-autolink-literal": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz", + "integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==", + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-footnote": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz", + "integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==", + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-strikethrough": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", + "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-table": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.1.tgz", + "integrity": "sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==", + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-tagfilter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", + "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", + "license": "MIT", + "dependencies": { + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-task-list-item": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", + "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-factory-destination": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz", + "integrity": "sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==", + "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-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-label": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz", + "integrity": "sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-space": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz", + "integrity": "sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==", + "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-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz", + "integrity": "sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz", + "integrity": "sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "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==", + "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-chunked": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz", + "integrity": "sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==", + "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" + } + }, + "node_modules/micromark-util-classify-character": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz", + "integrity": "sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==", + "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-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-combine-extensions": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz", + "integrity": "sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz", + "integrity": "sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==", + "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" + } + }, + "node_modules/micromark-util-decode-string": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz", + "integrity": "sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-html-tag-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz", + "integrity": "sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz", + "integrity": "sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==", + "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" + } + }, + "node_modules/micromark-util-resolve-all": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz", + "integrity": "sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-types": "^2.0.0" + } + }, + "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==", + "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-subtokenize": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz", + "integrity": "sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^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==", + "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==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/mrmime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.1.tgz", + "integrity": "sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/muggle-string": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.4.1.tgz", + "integrity": "sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz", + "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/neotraverse": { + "version": "0.6.18", + "resolved": "https://registry.npmjs.org/neotraverse/-/neotraverse-0.6.18.tgz", + "integrity": "sha512-Z4SmBUweYa09+o6pG+eASabEpP6QkQ70yHj351pQoEXIs8uHbaU2DWVmzBANKgflPa47A50PtB2+NgRpQvr7vA==", + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/nlcst-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/nlcst-to-string/-/nlcst-to-string-4.0.0.tgz", + "integrity": "sha512-YKLBCcUYKAg0FNlOBT6aI91qFmSiFKiluk655WzPF+DDMA02qIyy8uiRqI8QXtcFpEvll12LpL5MXqEmAZ+dcA==", + "license": "MIT", + "dependencies": { + "@types/nlcst": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/node-fetch-native": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.6.7.tgz", + "integrity": "sha512-g9yhqoedzIUm0nTnTqAQvueMPVOuIY16bqgAJJC8XOOubYFNwz6IER9qs0Gq2Xd0+CecCKFjtdDTMA4u4xG06Q==", + "license": "MIT" + }, + "node_modules/node-mock-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/node-mock-http/-/node-mock-http-1.0.4.tgz", + "integrity": "sha512-8DY+kFsDkNXy1sJglUfuODx1/opAGJGyrTuFqEoN90oRc2Vk0ZbD4K2qmKXBBEhZQzdKHIVfEJpDU8Ak2NJEvQ==", + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/obug": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/obug/-/obug-2.1.3.tgz", + "integrity": "sha512-9miFgM2OFba7hB+pRgvtV84pYTBaoTHohvmIgiRt6dRIzbwEOIaNaP+dIlGs2fNFoB0SeISs0Jz5WFVRid6Xyg==", + "funding": [ + "https://github.com/sponsors/sxzz", + "https://opencollective.com/debug" + ], + "license": "MIT", + "engines": { + "node": ">=12.20.0" + } + }, + "node_modules/ofetch": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/ofetch/-/ofetch-1.5.1.tgz", + "integrity": "sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA==", + "license": "MIT", + "dependencies": { + "destr": "^2.0.5", + "node-fetch-native": "^1.6.7", + "ufo": "^1.6.1" + } + }, + "node_modules/ohash": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/ohash/-/ohash-2.0.11.tgz", + "integrity": "sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==", + "license": "MIT" + }, + "node_modules/oniguruma-parser": { + "version": "0.12.2", + "resolved": "https://registry.npmjs.org/oniguruma-parser/-/oniguruma-parser-0.12.2.tgz", + "integrity": "sha512-6HVa5oIrgMC6aA6WF6XyyqbhRPJrKR02L20+2+zpDtO5QAzGHAUGw5TKQvwi5vctNnRHkJYmjAhRVQF2EKdTQw==", + "license": "MIT" + }, + "node_modules/oniguruma-to-es": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-4.3.6.tgz", + "integrity": "sha512-csuQ9x3Yr0cEIs/Zgx/OEt9iBw9vqIunAPQkx19R/fiMq2oGVTgcMqO/V3Ybqefr1TBvosI6jU539ksaBULJyA==", + "license": "MIT", + "dependencies": { + "oniguruma-parser": "^0.12.2", + "regex": "^6.1.0", + "regex-recursion": "^6.0.2" + } + }, + "node_modules/p-limit": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-7.3.0.tgz", + "integrity": "sha512-7cIXg/Z0M5WZRblrsOla88S4wAK+zOQQWeBYfV3qJuJXMr+LnbYjaadrFaS0JILfEDPVqHyKnZ1Z/1d6J9VVUw==", + "license": "MIT", + "dependencies": { + "yocto-queue": "^1.2.1" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-queue": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-9.3.0.tgz", + "integrity": "sha512-7NED7xhQ74Ngp4JP/2e0VZHp7vSWfJfqeiR92jPgxsz6m0Se4P03YoTKa9dDXyZ3r6P616gUXttrB6nnHYKang==", + "license": "MIT", + "dependencies": { + "eventemitter3": "^5.0.4", + "p-timeout": "^7.0.0" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-timeout": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-7.0.1.tgz", + "integrity": "sha512-AxTM2wDGORHGEkPCt8yqxOTMgpfbEHqF51f/5fJCmwFC3C/zNcGT63SymH2ttOAaiIws2zVg4+izQCjrakcwHg==", + "license": "MIT", + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/package-manager-detector": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-1.6.0.tgz", + "integrity": "sha512-61A5ThoTiDG/C8s8UMZwSorAGwMJ0ERVGj2OjoW5pAalsNOg15+iQiPzrLJ4jhZ1HJzmC2PIHT2oEiH3R5fzNA==", + "license": "MIT" + }, + "node_modules/parse-latin": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse-latin/-/parse-latin-7.0.0.tgz", + "integrity": "sha512-mhHgobPPua5kZ98EF4HWiH167JWBfl4pvAIXXdbaVohtK7a6YBOy56kvhCqduqyo/f3yrHFWmqmiMg/BkBkYYQ==", + "license": "MIT", + "dependencies": { + "@types/nlcst": "^2.0.0", + "@types/unist": "^3.0.0", + "nlcst-to-string": "^4.0.0", + "unist-util-modify-children": "^4.0.0", + "unist-util-visit-children": "^3.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/parse5": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", + "license": "MIT", + "dependencies": { + "entities": "^6.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true, + "license": "MIT" + }, + "node_modules/piccolore": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/piccolore/-/piccolore-0.1.3.tgz", + "integrity": "sha512-o8bTeDWjE086iwKrROaDf31K0qC/BENdm15/uH9usSC/uZjJOKb2YGiVHfLY4GhwsERiPI1jmwI2XrA7ACOxVw==", + "license": "ISC" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.5.15", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.15.tgz", + "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.12", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/prettier": { + "version": "3.8.4", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.4.tgz", + "integrity": "sha512-N2MylSdi48+5N/6S5j+maeHbUSIzzZ5uOcX5Hm4QpV8Dkb1HFjfAKTKX6yNPJQD9AhcT3ifHNB66tWTTJDi11Q==", + "dev": true, + "license": "MIT", + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prismjs": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.30.0.tgz", + "integrity": "sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/property-information": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-7.2.0.tgz", + "integrity": "sha512-IAtzIB6sUiWaJYrX9smp3V46pBGbBeLFRGdh25kg1334VcBlD8HzhPeNIWQH9zhGmo2itIe25EHt9dQP7G5hmg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/radix3": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/radix3/-/radix3-1.1.2.tgz", + "integrity": "sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==", + "license": "MIT" + }, + "node_modules/readdirp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-5.0.0.tgz", + "integrity": "sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==", + "license": "MIT", + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/regex/-/regex-6.1.0.tgz", + "integrity": "sha512-6VwtthbV4o/7+OaAF9I5L5V3llLEsoPyq9P1JVXkedTP33c7MfCG0/5NOPcSJn0TzXcG9YUrR0gQSWioew3LDg==", + "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==", + "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==", + "license": "MIT" + }, + "node_modules/rehype": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/rehype/-/rehype-13.0.2.tgz", + "integrity": "sha512-j31mdaRFrwFRUIlxGeuPXXKWQxet52RBQRvCmzl5eCefn/KGbomK5GMHNMsOJf55fgo3qw5tST5neDuarDYR2A==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "rehype-parse": "^9.0.0", + "rehype-stringify": "^10.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-parse": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-9.0.1.tgz", + "integrity": "sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "hast-util-from-html": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-raw": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/rehype-raw/-/rehype-raw-7.0.0.tgz", + "integrity": "sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "hast-util-raw": "^9.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-stringify": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/rehype-stringify/-/rehype-stringify-10.0.1.tgz", + "integrity": "sha512-k9ecfXHmIPuFVI61B9DeLPN0qFHfawM6RsuX48hoqlaKSF61RskNjSm1lI8PhBEM0MRdLxVVm4WmTqJQccH9mA==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "hast-util-to-html": "^9.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-gfm": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-4.0.1.tgz", + "integrity": "sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-gfm": "^3.0.0", + "micromark-extension-gfm": "^3.0.0", + "remark-parse": "^11.0.0", + "remark-stringify": "^11.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", + "integrity": "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-rehype": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.2.tgz", + "integrity": "sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "mdast-util-to-hast": "^13.0.0", + "unified": "^11.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-smartypants": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/remark-smartypants/-/remark-smartypants-3.0.2.tgz", + "integrity": "sha512-ILTWeOriIluwEvPjv67v7Blgrcx+LZOkAUVtKI3putuhlZm84FnqDORNXPPm+HY3NdZOMhyDwZ1E+eZB/Df5dA==", + "license": "MIT", + "dependencies": { + "retext": "^9.0.0", + "retext-smartypants": "^6.0.0", + "unified": "^11.0.4", + "unist-util-visit": "^5.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/remark-stringify": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-11.0.0.tgz", + "integrity": "sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-to-markdown": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/request-light": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/request-light/-/request-light-0.7.0.tgz", + "integrity": "sha512-lMbBMrDoxgsyO+yB3sDcrDuX85yYt7sS8BfQd11jtbW/z5ZWgLZRcEGLsLoYw7I0WSUGQBs8CC8ScIxkTX1+6Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "license": "MIT", + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/retext": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/retext/-/retext-9.0.0.tgz", + "integrity": "sha512-sbMDcpHCNjvlheSgMfEcVrZko3cDzdbe1x/e7G66dFp0Ff7Mldvi2uv6JkJQzdRcvLYE8CA8Oe8siQx8ZOgTcA==", + "license": "MIT", + "dependencies": { + "@types/nlcst": "^2.0.0", + "retext-latin": "^4.0.0", + "retext-stringify": "^4.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/retext-latin": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/retext-latin/-/retext-latin-4.0.0.tgz", + "integrity": "sha512-hv9woG7Fy0M9IlRQloq/N6atV82NxLGveq+3H2WOi79dtIYWN8OaxogDm77f8YnVXJL2VD3bbqowu5E3EMhBYA==", + "license": "MIT", + "dependencies": { + "@types/nlcst": "^2.0.0", + "parse-latin": "^7.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/retext-smartypants": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/retext-smartypants/-/retext-smartypants-6.2.0.tgz", + "integrity": "sha512-kk0jOU7+zGv//kfjXEBjdIryL1Acl4i9XNkHxtM7Tm5lFiCog576fjNC9hjoR7LTKQ0DsPWy09JummSsH1uqfQ==", + "license": "MIT", + "dependencies": { + "@types/nlcst": "^2.0.0", + "nlcst-to-string": "^4.0.0", + "unist-util-visit": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/retext-stringify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/retext-stringify/-/retext-stringify-4.0.0.tgz", + "integrity": "sha512-rtfN/0o8kL1e+78+uxPTqu1Klt0yPzKuQ2BfWwwfgIUSayyzxpM1PJzkKt4V8803uB9qSy32MvI7Xep9khTpiA==", + "license": "MIT", + "dependencies": { + "@types/nlcst": "^2.0.0", + "nlcst-to-string": "^4.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rollup": { + "version": "4.62.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.62.0.tgz", + "integrity": "sha512-nc72Wgq62I7rtDV4izT5/aaS0zxy3kttkinf9586ApknY3jZO9NYsmtc24fUckA0X7Q2v+ML4a15pdUlV5V/jA==", + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.9" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.62.0", + "@rollup/rollup-android-arm64": "4.62.0", + "@rollup/rollup-darwin-arm64": "4.62.0", + "@rollup/rollup-darwin-x64": "4.62.0", + "@rollup/rollup-freebsd-arm64": "4.62.0", + "@rollup/rollup-freebsd-x64": "4.62.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.62.0", + "@rollup/rollup-linux-arm-musleabihf": "4.62.0", + "@rollup/rollup-linux-arm64-gnu": "4.62.0", + "@rollup/rollup-linux-arm64-musl": "4.62.0", + "@rollup/rollup-linux-loong64-gnu": "4.62.0", + "@rollup/rollup-linux-loong64-musl": "4.62.0", + "@rollup/rollup-linux-ppc64-gnu": "4.62.0", + "@rollup/rollup-linux-ppc64-musl": "4.62.0", + "@rollup/rollup-linux-riscv64-gnu": "4.62.0", + "@rollup/rollup-linux-riscv64-musl": "4.62.0", + "@rollup/rollup-linux-s390x-gnu": "4.62.0", + "@rollup/rollup-linux-x64-gnu": "4.62.0", + "@rollup/rollup-linux-x64-musl": "4.62.0", + "@rollup/rollup-openbsd-x64": "4.62.0", + "@rollup/rollup-openharmony-arm64": "4.62.0", + "@rollup/rollup-win32-arm64-msvc": "4.62.0", + "@rollup/rollup-win32-ia32-msvc": "4.62.0", + "@rollup/rollup-win32-x64-gnu": "4.62.0", + "@rollup/rollup-win32-x64-msvc": "4.62.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/sax": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.6.0.tgz", + "integrity": "sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA==", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=11.0.0" + } + }, + "node_modules/semver": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.4.tgz", + "integrity": "sha512-rUCObTnP32Q08R2uuIrt7r9PlEonuTmtuXYcW6s5kjdlj3xbnwe+21yXptAUYcMAABLkYYTtnmzb3w3EDZfueA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/sharp": { + "version": "0.34.5", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.5.tgz", + "integrity": "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==", + "hasInstallScript": true, + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@img/colour": "^1.0.0", + "detect-libc": "^2.1.2", + "semver": "^7.7.3" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-darwin-arm64": "0.34.5", + "@img/sharp-darwin-x64": "0.34.5", + "@img/sharp-libvips-darwin-arm64": "1.2.4", + "@img/sharp-libvips-darwin-x64": "1.2.4", + "@img/sharp-libvips-linux-arm": "1.2.4", + "@img/sharp-libvips-linux-arm64": "1.2.4", + "@img/sharp-libvips-linux-ppc64": "1.2.4", + "@img/sharp-libvips-linux-riscv64": "1.2.4", + "@img/sharp-libvips-linux-s390x": "1.2.4", + "@img/sharp-libvips-linux-x64": "1.2.4", + "@img/sharp-libvips-linuxmusl-arm64": "1.2.4", + "@img/sharp-libvips-linuxmusl-x64": "1.2.4", + "@img/sharp-linux-arm": "0.34.5", + "@img/sharp-linux-arm64": "0.34.5", + "@img/sharp-linux-ppc64": "0.34.5", + "@img/sharp-linux-riscv64": "0.34.5", + "@img/sharp-linux-s390x": "0.34.5", + "@img/sharp-linux-x64": "0.34.5", + "@img/sharp-linuxmusl-arm64": "0.34.5", + "@img/sharp-linuxmusl-x64": "0.34.5", + "@img/sharp-wasm32": "0.34.5", + "@img/sharp-win32-arm64": "0.34.5", + "@img/sharp-win32-ia32": "0.34.5", + "@img/sharp-win32-x64": "0.34.5" + } + }, + "node_modules/shiki": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-4.2.0.tgz", + "integrity": "sha512-hjNax6o/ylDy9lefQEaSDtzaT3iVNtZ3WmpQnbuQNoG4xvnSKf2kSKbihZVO4JRG1TTMejs7CmNRYlWgAL66pQ==", + "license": "MIT", + "dependencies": { + "@shikijs/core": "4.2.0", + "@shikijs/engine-javascript": "4.2.0", + "@shikijs/engine-oniguruma": "4.2.0", + "@shikijs/langs": "4.2.0", + "@shikijs/themes": "4.2.0", + "@shikijs/types": "4.2.0", + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "license": "MIT" + }, + "node_modules/smol-toml": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.6.1.tgz", + "integrity": "sha512-dWUG8F5sIIARXih1DTaQAX4SsiTXhInKf1buxdY9DIg4ZYPZK5nGM1VRIYmEbDbsHt7USo99xSLFu5Q1IqTmsg==", + "license": "BSD-3-Clause", + "engines": { + "node": ">= 18" + }, + "funding": { + "url": "https://github.com/sponsors/cyyynthia" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "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==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "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==", + "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/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/svgo": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-4.0.1.tgz", + "integrity": "sha512-XDpWUOPC6FEibaLzjfe0ucaV0YrOjYotGJO1WpF0Zd+n6ZGEQUsSugaoLq9QkEZtAfQIxT42UChcssDVPP3+/w==", + "license": "MIT", + "dependencies": { + "commander": "^11.1.0", + "css-select": "^5.1.0", + "css-tree": "^3.0.1", + "css-what": "^6.1.0", + "csso": "^5.0.5", + "picocolors": "^1.1.1", + "sax": "^1.5.0" + }, + "bin": { + "svgo": "bin/svgo.js" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/svgo" + } + }, + "node_modules/tailwindcss": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.3.1.tgz", + "integrity": "sha512-hk+TB1m+K8CYNrP6rjQaq/Y+4Zylwpa87mLYBKCunwnnQ9p+fHb7kmSfGqyEJoxF/O6CDyABWVFEafNSYKll+Q==", + "license": "MIT" + }, + "node_modules/tapable": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.3.tgz", + "integrity": "sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==", + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/tiny-inflate": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", + "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==", + "license": "MIT" + }, + "node_modules/tinyclip": { + "version": "0.1.14", + "resolved": "https://registry.npmjs.org/tinyclip/-/tinyclip-0.1.14.tgz", + "integrity": "sha512-F1oWdz8tjT17qe1d5JgDK6z03WGOhYYAN0lK3/D/fzNiy93xswLLEw7pk+3g05onhAy6Bsc6PLNUGhdgVjemMQ==", + "license": "MIT", + "engines": { + "node": "^16.14.0 || >= 17.3.0" + } + }, + "node_modules/tinyexec": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.2.4.tgz", + "integrity": "sha512-SHf/r48b7vOrjve9PxJo3MN5v5yuyjHvdUcrQffT3WXMUfnGmHDVbC4k3sHJaJTgZCwpUplIaAo5ANtMyp3YHg==", + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz", + "integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==", + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "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==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/trough": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz", + "integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD", + "optional": true + }, + "node_modules/typesafe-path": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/typesafe-path/-/typesafe-path-0.2.2.tgz", + "integrity": "sha512-OJabfkAg1WLZSqJAJ0Z6Sdt3utnbzr/jh+NAHoyWHJe8CMSy79Gm085094M9nvTPy22KzTVn5Zq5mbapCI/hPA==", + "dev": true, + "license": "MIT" + }, + "node_modules/typescript": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typescript-auto-import-cache": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/typescript-auto-import-cache/-/typescript-auto-import-cache-0.3.6.tgz", + "integrity": "sha512-RpuHXrknHdVdK7wv/8ug3Fr0WNsNi5l5aB8MYYuXhq2UH5lnEB1htJ1smhtD5VeCsGr2p8mUDtd83LCQDFVgjQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.3.8" + } + }, + "node_modules/ufo": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.4.tgz", + "integrity": "sha512-JFNbkD1Svwe0KvGi8GOeLcP4kAWQ609twvCdcHxq1oSL8svv39ZuSvajcD8B+5D0eL4+s1Is2D/O6KN3qcTeRA==", + "license": "MIT" + }, + "node_modules/ultrahtml": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ultrahtml/-/ultrahtml-1.6.0.tgz", + "integrity": "sha512-R9fBn90VTJrqqLDwyMph+HGne8eqY1iPfYhPzZrvKpIfwkWZbcYlfpsb8B9dTvBfpy1/hqAD7Wi8EKfP9e8zdw==", + "license": "MIT" + }, + "node_modules/uncrypto": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/uncrypto/-/uncrypto-0.1.3.tgz", + "integrity": "sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==", + "license": "MIT" + }, + "node_modules/undici-types": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.24.6.tgz", + "integrity": "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/unified": { + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", + "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "bail": "^2.0.0", + "devlop": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unifont": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/unifont/-/unifont-0.7.4.tgz", + "integrity": "sha512-oHeis4/xl42HUIeHuNZRGEvxj5AaIKR+bHPNegRq5LV1gdc3jundpONbjglKpihmJf+dswygdMJn3eftGIMemg==", + "license": "MIT", + "dependencies": { + "css-tree": "^3.1.0", + "ofetch": "^1.5.1", + "ohash": "^2.0.11" + } + }, + "node_modules/unist-util-find-after": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz", + "integrity": "sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "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==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-modify-children": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-modify-children/-/unist-util-modify-children-4.0.0.tgz", + "integrity": "sha512-+tdN5fGNddvsQdIzUF3Xx82CU9sMM+fA0dLgR9vOmT0oPT2jH+P1nd5lSqfCfXAw+93NhcXNY2qqvTUtE4cQkw==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "array-iterate": "^2.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==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-remove-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-5.0.0.tgz", + "integrity": "sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-visit": "^5.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==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.1.0.tgz", + "integrity": "sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg==", + "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-children": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit-children/-/unist-util-visit-children-3.0.0.tgz", + "integrity": "sha512-RgmdTfSBOg04sdPcpTSD1jzoNBjt9a80/ZCzp5cI9n1qPzLZWF9YdvWGN2zmTumP1HWhXKdUWexjy/Wy/lJ7tA==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.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==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unstorage": { + "version": "1.17.5", + "resolved": "https://registry.npmjs.org/unstorage/-/unstorage-1.17.5.tgz", + "integrity": "sha512-0i3iqvRfx29hkNntHyQvJTpf5W9dQ9ZadSoRU8+xVlhVtT7jAX57fazYO9EHvcRCfBCyi5YRya7XCDOsbTgkPg==", + "license": "MIT", + "dependencies": { + "anymatch": "^3.1.3", + "chokidar": "^5.0.0", + "destr": "^2.0.5", + "h3": "^1.15.10", + "lru-cache": "^11.2.7", + "node-fetch-native": "^1.6.7", + "ofetch": "^1.5.1", + "ufo": "^1.6.3" + }, + "peerDependencies": { + "@azure/app-configuration": "^1.8.0", + "@azure/cosmos": "^4.2.0", + "@azure/data-tables": "^13.3.0", + "@azure/identity": "^4.6.0", + "@azure/keyvault-secrets": "^4.9.0", + "@azure/storage-blob": "^12.26.0", + "@capacitor/preferences": "^6 || ^7 || ^8", + "@deno/kv": ">=0.9.0", + "@netlify/blobs": "^6.5.0 || ^7.0.0 || ^8.1.0 || ^9.0.0 || ^10.0.0", + "@planetscale/database": "^1.19.0", + "@upstash/redis": "^1.34.3", + "@vercel/blob": ">=0.27.1", + "@vercel/functions": "^2.2.12 || ^3.0.0", + "@vercel/kv": "^1 || ^2 || ^3", + "aws4fetch": "^1.0.20", + "db0": ">=0.2.1", + "idb-keyval": "^6.2.1", + "ioredis": "^5.4.2", + "uploadthing": "^7.4.4" + }, + "peerDependenciesMeta": { + "@azure/app-configuration": { + "optional": true + }, + "@azure/cosmos": { + "optional": true + }, + "@azure/data-tables": { + "optional": true + }, + "@azure/identity": { + "optional": true + }, + "@azure/keyvault-secrets": { + "optional": true + }, + "@azure/storage-blob": { + "optional": true + }, + "@capacitor/preferences": { + "optional": true + }, + "@deno/kv": { + "optional": true + }, + "@netlify/blobs": { + "optional": true + }, + "@planetscale/database": { + "optional": true + }, + "@upstash/redis": { + "optional": true + }, + "@vercel/blob": { + "optional": true + }, + "@vercel/functions": { + "optional": true + }, + "@vercel/kv": { + "optional": true + }, + "aws4fetch": { + "optional": true + }, + "db0": { + "optional": true + }, + "idb-keyval": { + "optional": true + }, + "ioredis": { + "optional": true + }, + "uploadthing": { + "optional": true + } + } + }, + "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==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-location": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-5.0.3.tgz", + "integrity": "sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "vfile": "^6.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==", + "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": "7.3.5", + "resolved": "https://registry.npmjs.org/vite/-/vite-7.3.5.tgz", + "integrity": "sha512-KuOaNhcnGFN2zIPGA7wRmzF+lJA1sea7rHq17aiJ++9lzY1WWG6Jpwqwe1KNbRVPIqHmr8GLYx7jbrQcN/7/ww==", + "license": "MIT", + "dependencies": { + "esbuild": "^0.27.0", + "fdir": "^6.5.0", + "picomatch": "^4.0.3", + "postcss": "^8.5.6", + "rollup": "^4.43.0", + "tinyglobby": "^0.2.15" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^20.19.0 || >=22.12.0", + "jiti": ">=1.21.0", + "less": "^4.0.0", + "lightningcss": "^1.21.0", + "sass": "^1.70.0", + "sass-embedded": "^1.70.0", + "stylus": ">=0.54.8", + "sugarss": "^5.0.0", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/vitefu": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/vitefu/-/vitefu-1.1.3.tgz", + "integrity": "sha512-ub4okH7Z5KLjb6hDyjqrGXqWtWvoYdU3IGm/NorpgHncKoLTCfRIbvlhBm7r0YstIaQRYlp4yEbFqDcKSzXSSg==", + "license": "MIT", + "workspaces": [ + "tests/deps/*", + "tests/projects/*", + "tests/projects/workspace/packages/*" + ], + "peerDependencies": { + "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "vite": { + "optional": true + } + } + }, + "node_modules/volar-service-css": { + "version": "0.0.70", + "resolved": "https://registry.npmjs.org/volar-service-css/-/volar-service-css-0.0.70.tgz", + "integrity": "sha512-K1qyOvBpE3rzdAv3e4/6Rv5yizrYPy5R/ne3IWCAzLBuMO4qBMV3kSqWzj6KUVe6S0AnN6wxF7cRkiaKfYMYJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "vscode-css-languageservice": "^6.3.0", + "vscode-languageserver-textdocument": "^1.0.11", + "vscode-uri": "^3.0.8" + }, + "peerDependencies": { + "@volar/language-service": "~2.4.0" + }, + "peerDependenciesMeta": { + "@volar/language-service": { + "optional": true + } + } + }, + "node_modules/volar-service-emmet": { + "version": "0.0.70", + "resolved": "https://registry.npmjs.org/volar-service-emmet/-/volar-service-emmet-0.0.70.tgz", + "integrity": "sha512-xi5bC4m/VyE3zy/n2CXspKeDZs3qA41tHLTw275/7dNWM/RqE2z3BnDICQybHIVp/6G1iOQj5c1qXMgQC08TNg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@emmetio/css-parser": "^0.4.1", + "@emmetio/html-matcher": "^1.3.0", + "@vscode/emmet-helper": "^2.9.3", + "vscode-uri": "^3.0.8" + }, + "peerDependencies": { + "@volar/language-service": "~2.4.0" + }, + "peerDependenciesMeta": { + "@volar/language-service": { + "optional": true + } + } + }, + "node_modules/volar-service-html": { + "version": "0.0.70", + "resolved": "https://registry.npmjs.org/volar-service-html/-/volar-service-html-0.0.70.tgz", + "integrity": "sha512-eR6vCgMdmYAo4n+gcT7DSyBQbwB8S3HZZvSagTf0sxNaD4WppMCFfpqWnkrlGStPKMZvMiejRRVmqsX9dYcTvQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "vscode-html-languageservice": "^5.3.0", + "vscode-languageserver-textdocument": "^1.0.11", + "vscode-uri": "^3.0.8" + }, + "peerDependencies": { + "@volar/language-service": "~2.4.0" + }, + "peerDependenciesMeta": { + "@volar/language-service": { + "optional": true + } + } + }, + "node_modules/volar-service-prettier": { + "version": "0.0.70", + "resolved": "https://registry.npmjs.org/volar-service-prettier/-/volar-service-prettier-0.0.70.tgz", + "integrity": "sha512-Z6BCFSpGVCd8BPAsZ785Kce1BGlWd5ODqmqZGVuB14MJvrR4+CYz6cDy4F+igmE1gMifqfvMhdgT8Aud4M5ngg==", + "dev": true, + "license": "MIT", + "dependencies": { + "vscode-uri": "^3.0.8" + }, + "peerDependencies": { + "@volar/language-service": "~2.4.0", + "prettier": "^2.2 || ^3.0" + }, + "peerDependenciesMeta": { + "@volar/language-service": { + "optional": true + }, + "prettier": { + "optional": true + } + } + }, + "node_modules/volar-service-typescript": { + "version": "0.0.70", + "resolved": "https://registry.npmjs.org/volar-service-typescript/-/volar-service-typescript-0.0.70.tgz", + "integrity": "sha512-l46Bx4cokkUedTd74ojO5H/zqHZJ8SUuyZ0IB8JN4jfRqUM3bQFBHoOwlZCyZmOeO0A3RQNkMnFclxO4c++gsg==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-browserify": "^1.0.1", + "semver": "^7.6.2", + "typescript-auto-import-cache": "^0.3.5", + "vscode-languageserver-textdocument": "^1.0.11", + "vscode-nls": "^5.2.0", + "vscode-uri": "^3.0.8" + }, + "peerDependencies": { + "@volar/language-service": "~2.4.0" + }, + "peerDependenciesMeta": { + "@volar/language-service": { + "optional": true + } + } + }, + "node_modules/volar-service-typescript-twoslash-queries": { + "version": "0.0.70", + "resolved": "https://registry.npmjs.org/volar-service-typescript-twoslash-queries/-/volar-service-typescript-twoslash-queries-0.0.70.tgz", + "integrity": "sha512-IdD13Z9N2Bu8EM6CM0fDV1E69olEYGHDU25X51YXmq8Y0CmJ2LNj6gOiBJgpS5JGUqFzECVhMNBW7R0sPdRTMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "vscode-uri": "^3.0.8" + }, + "peerDependencies": { + "@volar/language-service": "~2.4.0" + }, + "peerDependenciesMeta": { + "@volar/language-service": { + "optional": true + } + } + }, + "node_modules/volar-service-yaml": { + "version": "0.0.70", + "resolved": "https://registry.npmjs.org/volar-service-yaml/-/volar-service-yaml-0.0.70.tgz", + "integrity": "sha512-0c8bXDBeoATF9F6iPIlOuYTuZAC4c+yi0siQo920u7eiBJk8oQmUmg9cDUbR4+Gl++bvGP4plj3fErbJuPqdcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "vscode-uri": "^3.0.8", + "yaml-language-server": "~1.20.0" + }, + "peerDependencies": { + "@volar/language-service": "~2.4.0" + }, + "peerDependenciesMeta": { + "@volar/language-service": { + "optional": true + } + } + }, + "node_modules/vscode-css-languageservice": { + "version": "6.3.10", + "resolved": "https://registry.npmjs.org/vscode-css-languageservice/-/vscode-css-languageservice-6.3.10.tgz", + "integrity": "sha512-eq5N9Er3fC4vA9zd9EFhyBG90wtCCuXgRSpAndaOgXMh1Wgep5lBgRIeDgjZBW9pa+332yC9+49cZMW8jcL3MA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vscode/l10n": "^0.0.18", + "vscode-languageserver-textdocument": "^1.0.12", + "vscode-languageserver-types": "3.17.5", + "vscode-uri": "^3.1.0" + } + }, + "node_modules/vscode-css-languageservice/node_modules/vscode-languageserver-types": { + "version": "3.17.5", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.5.tgz", + "integrity": "sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==", + "dev": true, + "license": "MIT" + }, + "node_modules/vscode-html-languageservice": { + "version": "5.6.2", + "resolved": "https://registry.npmjs.org/vscode-html-languageservice/-/vscode-html-languageservice-5.6.2.tgz", + "integrity": "sha512-ulCrSnFnfQ16YzvwnYUgEbUEl/ZG7u2eV27YhvLObSHKkb8fw1Z9cgsnUwjTEeDIdJDoTDTDpxuhQwoenoLNMg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vscode/l10n": "^0.0.18", + "vscode-languageserver-textdocument": "^1.0.12", + "vscode-languageserver-types": "^3.17.5", + "vscode-uri": "^3.1.0" + } + }, + "node_modules/vscode-json-languageservice": { + "version": "4.1.8", + "resolved": "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-4.1.8.tgz", + "integrity": "sha512-0vSpg6Xd9hfV+eZAaYN63xVVMOTmJ4GgHxXnkLCh+9RsQBkWKIghzLhW2B9ebfG+LQQg8uLtsQ2aUKjTgE+QOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "jsonc-parser": "^3.0.0", + "vscode-languageserver-textdocument": "^1.0.1", + "vscode-languageserver-types": "^3.16.0", + "vscode-nls": "^5.0.0", + "vscode-uri": "^3.0.2" + }, + "engines": { + "npm": ">=7.0.0" + } + }, + "node_modules/vscode-jsonrpc": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-9.0.0.tgz", + "integrity": "sha512-+VvMmQPJhtvJ+8O+zu2JKIRiLxXF8NW7krWgyMGeOHrp4Cn23T5hc0v2LknNeopDOB70wghHAds7mKtcZ0I4Sg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/vscode-languageserver": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-9.0.1.tgz", + "integrity": "sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g==", + "dev": true, + "license": "MIT", + "dependencies": { + "vscode-languageserver-protocol": "3.17.5" + }, + "bin": { + "installServerIntoExtension": "bin/installServerIntoExtension" + } + }, + "node_modules/vscode-languageserver-protocol": { + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.18.0.tgz", + "integrity": "sha512-Zdz+kJ12Iz6tc11xfZyEo501bBATHXrCjmMfnaR3pMnf1CoqZBKIynba3P+/bi9VEdrMbNtAVKYpKhbODvqy+Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "vscode-jsonrpc": "9.0.0", + "vscode-languageserver-types": "3.18.0" + } + }, + "node_modules/vscode-languageserver-textdocument": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.12.tgz", + "integrity": "sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==", + "dev": true, + "license": "MIT" + }, + "node_modules/vscode-languageserver-types": { + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.18.0.tgz", + "integrity": "sha512-8TsGPNMIMiiBdkORgRSvLjuiEIiAFtO+KssmYWxQ+uSVvlf7RjK8YKCOjPzZ+YA04jXEV7+7LvkSmHkhpNS99g==", + "dev": true, + "license": "MIT" + }, + "node_modules/vscode-languageserver/node_modules/vscode-jsonrpc": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-8.2.0.tgz", + "integrity": "sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/vscode-languageserver/node_modules/vscode-languageserver-protocol": { + "version": "3.17.5", + "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.5.tgz", + "integrity": "sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==", + "dev": true, + "license": "MIT", + "dependencies": { + "vscode-jsonrpc": "8.2.0", + "vscode-languageserver-types": "3.17.5" + } + }, + "node_modules/vscode-languageserver/node_modules/vscode-languageserver-types": { + "version": "3.17.5", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.5.tgz", + "integrity": "sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==", + "dev": true, + "license": "MIT" + }, + "node_modules/vscode-nls": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/vscode-nls/-/vscode-nls-5.2.0.tgz", + "integrity": "sha512-RAaHx7B14ZU04EU31pT+rKz2/zSl7xMsfIZuo8pd+KZO6PXtQmpevpq3vxvWNcrGbdmhM/rr5Uw5Mz+NBfhVng==", + "dev": true, + "license": "MIT" + }, + "node_modules/vscode-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.1.0.tgz", + "integrity": "sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/web-namespaces": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", + "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/which-pm-runs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.1.0.tgz", + "integrity": "sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/xxhash-wasm": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xxhash-wasm/-/xxhash-wasm-1.1.0.tgz", + "integrity": "sha512-147y/6YNh+tlp6nd/2pWq38i9h6mz/EuQ6njIrmW8D1BS5nCqs0P6DG+m6zTGnNz5I+uhZ0SHxBs9BsPrwcKDA==", + "license": "MIT" + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yaml": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.9.0.tgz", + "integrity": "sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==", + "devOptional": true, + "license": "ISC", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" + }, + "funding": { + "url": "https://github.com/sponsors/eemeli" + } + }, + "node_modules/yaml-language-server": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/yaml-language-server/-/yaml-language-server-1.20.0.tgz", + "integrity": "sha512-qhjK/bzSRZ6HtTvgeFvjNPJGWdZ0+x5NREV/9XZWFjIGezew2b4r5JPy66IfOhd5OA7KeFwk1JfmEbnTvev0cA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vscode/l10n": "^0.0.18", + "ajv": "^8.17.1", + "ajv-draft-04": "^1.0.0", + "prettier": "^3.5.0", + "request-light": "^0.5.7", + "vscode-json-languageservice": "4.1.8", + "vscode-languageserver": "^9.0.0", + "vscode-languageserver-textdocument": "^1.0.1", + "vscode-languageserver-types": "^3.16.0", + "vscode-uri": "^3.0.2", + "yaml": "2.7.1" + }, + "bin": { + "yaml-language-server": "bin/yaml-language-server" + } + }, + "node_modules/yaml-language-server/node_modules/request-light": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/request-light/-/request-light-0.5.8.tgz", + "integrity": "sha512-3Zjgh+8b5fhRJBQZoy+zbVKpAQGLyka0MPgW3zruTF4dFFJ8Fqcfu9YsAvi/rvdcaTeWG3MkbZv4WKxAn/84Lg==", + "dev": true, + "license": "MIT" + }, + "node_modules/yaml-language-server/node_modules/yaml": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.1.tgz", + "integrity": "sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==", + "dev": true, + "license": "ISC", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "22.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-22.0.0.tgz", + "integrity": "sha512-rwu/ClNdSMpkSrUb+d6BRsSkLUq1fmfsY6TOpYzTwvwkg1/NRG85KBy3kq++A8LKQwX6lsu+aWad+2khvuXrqw==", + "license": "ISC", + "engines": { + "node": "^20.19.0 || ^22.12.0 || >=23" + } + }, + "node_modules/yargs/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yocto-queue": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.2.tgz", + "integrity": "sha512-4LCcse/U2MHZ63HAJVE+v71o7yOdIe4cZ70Wpf8D/IyjDKYQLV5GD46B+hSTjJsvV5PztjvHoU580EftxjDZFQ==", + "license": "MIT", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zod": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.3.tgz", + "integrity": "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "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==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..43003d9 --- /dev/null +++ b/package.json @@ -0,0 +1,26 @@ +{ + "name": "bztmon-site", + "type": "module", + "version": "0.0.1", + "engines": { + "node": ">=22.12.0" + }, + "scripts": { + "dev": "astro dev", + "build": "astro build", + "preview": "astro preview", + "check": "astro check", + "gen:og": "node scripts/gen-og.mjs", + "astro": "astro" + }, + "dependencies": { + "@tailwindcss/vite": "^4.3.1", + "astro": "^6.4.7", + "tailwindcss": "^4.3.1" + }, + "devDependencies": { + "@astrojs/check": "^0.9.9", + "@types/node": "^25.9.3", + "typescript": "^6.0.3" + } +} diff --git a/public/favicon.svg b/public/favicon.svg new file mode 100644 index 0000000..166ff48 --- /dev/null +++ b/public/favicon.svg @@ -0,0 +1,11 @@ + + + + jw + + + + + diff --git a/public/og.png b/public/og.png new file mode 100644 index 0000000000000000000000000000000000000000..578171744e4c372f367620d7f1fc3cd2df24bc2f GIT binary patch literal 106487 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 B&_pr-tAyIKcn#xE5G78Y~)W|KzikoZ~5~Pnu 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%0Aa)gCDh`(#rL{((dL~^8I`i zNq%K%XB*hpUR8_2e%d^oMsHMlZ9VGS;6lM{zHduh-@ez|5jbZA^$P8*nG=#6`Q%S( zNXv}Z{QT*U8r&M%dyMdFffavJwxOEtZIY4ibnw3Xplzu4xkwg{(0HA;rG3V)Z!=fK zJU~3~fEB}Q(a}uu6;b!BmxmL;y!N2~2txX(9YhAmzOq)CQ z9(wz7_D#U(*_Ai54UALVYf{?REESEyE^xf7jJgQVwAL19YgS`(&1G$l1(KZGOH3#T zj?e-}e$9}Y*y;8xb+}K_P(04sjh)%ODd}TT0xLZ2k~SJw^tQW%9&?-eu%GkVy0+E( z!idfpD^VYq)qMj8X5xGb8_}>`aAaUu?{|OY>=(W_N_Uk#WJQPG%Y5oz&u{DPl$Jc~ zwDo_i=8?AL@U{EgW!LhdGBPD}rt$XDhtdrF70<>WnU2NAT(;A#M)KCNU0iv!`u&00W6~8H zL|gGy#*LGD=yz)4FV@Qwo~C~7#9m)*M7fZ}+Y$GDo$Z_(X)?zN{&j_~nrKAdN?8yy zGPJWpRM`rloXK4{`^b^20ud&swjWz!5wzQpSX&AQBB4@JLOKcO6u;fF2vpQJTNfW(bF~b7W&e##Ld9w-g^E8! zAV0WW9yy>5*(!jP1&loEawz>qS@}W~4UJ7$-?@&a=XpW;Rt4M4xXqJCXE=@k1VP7dri+abnb7D$lxl1^^l~cSTI#Z z7`?gpbkUawFZYEl+9PB!wr%Ru_+rQFfj={pq^?(r=-&2W!{`#utla?MMn|m&8kjZJ zuM*eYcwx$-0$Jj+AyLy-oR1dOpLj`S{;~h2BljXe9J1)F@HSbUWH|%AP>-6cUrcW= zGJJ_>EI!A5qaQOE~yusffL#v5$r7SU4A?Q5HtMzwHZmV00(UtIq zCIC}TdwA^HVPJ3vE>mN`q4pj2M)ie3&v)sCLTc4YdjXqD#-ezv|BcYp{m``Wz2Qmh zeT#r)r$Ps*hR09xKMTU1ObM8Z%{9jeWXJ)Q7QM4Jo7ZWIFliTIbk1ov(?76$7 z|CYq;PmgosW)o)H;^0vVs%=c9{Z#=RB+;m^KW}e<=ab=w5+S}AMi`V2x&TTu~OVj%5p-n>ztOV7Bvg!oG4iCJfUN5nT+uL z`uP%q9aD4QVpdahxOzx6D*v;Gy>_EE&~Ju1bau)rr#fzo>}xEY%6G{uOjFqwiGk81;)+_we|YEdGkId9aW6(+J9I~%*qk5R1Wk6}tj=1c@x0{uX*n#)lj>y?aI*_Tl| zIIgN2dG4{Nvt{z6_qf;&!P*CGMW!PymJ*Js&3E|`#I6U3KE4nvv%0T6Nwy*_} zaMm;GJV={>p%a}503_b9tTG#QN1^7q+YadL5ttiuF@x;o%Fv=|6U29{V3yXWM(^}W zVXZ5Z2}_|^zndgK?U^BM@BF2zpN)OQ541c%O*YK*9?HjN7CI30=^eDhaJUR2iZ>Ii z0U{wf5c~~VpA=5n7xZ|Ly;wLD&M-gt5ZpZ>395Y;zR!pYcOXfeWTNMzK$kR&F^qs| zy@)Acq0}r_ZR_JqBvdHDd^lbB?aB+SG13)_=cB}cWi}++ht$K)^#*v;s#pWFcxaUA zkE{o*eB%yN?{-y^5;M%0*lj@(aot@(78ES&!HoJE4%b?4M_T!Y&$jdCla9ad_5c>K zWW-oT>^uwqAks(^ht>STT(2VdM>W-4)DIS))idY;5Gh;D2$wu&F?WC0WUH(Z+p7k) zzAbQ0^CRJ5k`j6N))DMXgqmI-58s->`BH^r>l@sF%z_jM#=ZUekHiz%W}+YsFvqUX zO&b)ogjxZ%S}u<|<$Ow+r3*1pHSDhX@N2h1P}bv|-CJL`)tzbY(Kg?s#=x!UbU!H} zuw!CcML@fZvWu!cTe9@A_hk#vn8N2*A6YS^*F^0x-!lBgvTq1-NZU|QA1#F|bPPde zy~@k4T-ocNdGJ!uyVJ+M#Fta{(#ZCJ)i_NxU!zF(wnlvPvz+nr_`rGUtepUG@t1Ds zr#qfK=P@cJ)@)7Di8X7s8A#J64R(D7CAb6yV|1j-`A9C69 zgv*p}y~NJRJN&u%4{*gPdRk^eF1yGcN>+jiv;Gu0Zu5KAyh*h*v1KmCDzyB0%xctr z^i1mas6e%f@Ndvop*J3ck<{89f%yxeVb&VopM_+d@{`cLT1M!FRF_quM=0de>=Wp`1NavR!(F* z`v&*kmFr6${P>bRfA$z$v;gBG?^K_v%xQ~3`_orM5Z^N|@NTOvu~54NpK1X3i!cei zq|TGC`gktj$}xd^fc19mjU;HR`j>r+fRG-4luOwWs)cExu1L4)G-xjhffvpCO$C6c zP&Mh zIpgKoQFdk!XmZE-N#mM8fDReMoA8}s?=`NulKAIA}3;!6w|Ab{G#pZV}HNHOiE$za)oJi_7=rjoNT?>Y!3T!`} ze7mL)s{Kz?=gx9L08TIuSnQv^`TyZhe+l(ki7XO?d8TsV|N6*_0OW7ay9b`_jyeJS zv-BF}TSdSBogQ75r^x?c1pf&`|No33RN-G(fLE^lKiAoRX@37Z82$eU@W1Fa|3`rT zO$C?+DpM>Z`DC|bAD@c&KOno-_9yReIPeeP{tGc)Cx=NDp0K}pgkRlpY3=j(HXc#+ z;J^QXayx`Z3;h#%{{_BzBQycvUmNTHM{EC!T1!6U4JtWObs;xq8DM@4^zQ1G--NyT EH^A`Mj{pDw literal 0 HcmV?d00001 diff --git a/public/robots.txt b/public/robots.txt new file mode 100644 index 0000000..8572d21 --- /dev/null +++ b/public/robots.txt @@ -0,0 +1,4 @@ +User-agent: * +Allow: / + +Sitemap: https://www.bztmon.com/sitemap-index.xml diff --git a/scripts/build-image.sh b/scripts/build-image.sh new file mode 100755 index 0000000..96bf613 --- /dev/null +++ b/scripts/build-image.sh @@ -0,0 +1,35 @@ +#!/usr/bin/env bash +# Build + push the site image to the public Gitea registry using rootless buildah. +# Bootstrap path for M1-M4 (before the Gitea Actions runner exists in M5). +# +# Usage: scripts/build-image.sh [push] +# (no arg) -> build only +# push -> build then push, and print the pushed digest to pin in home-ops +# +# Requires: buildah (rootless) on the host, and `buildah login` to the registry +# for the push step (anonymous pull, authenticated push). +set -euo pipefail + +REGISTRY="${REGISTRY:-git.bztmon.com}" +IMAGE="${IMAGE:-jwrong96/bztmon-site}" +REF="${REGISTRY}/${IMAGE}" + +cd "$(dirname "$0")/.." + +# Tag with the short git sha when available, else 'dev'. +TAG="$(git rev-parse --short HEAD 2>/dev/null || echo dev)" + +echo ">> building ${REF}:${TAG}" +buildah build --layers -t "${REF}:${TAG}" -t "${REF}:latest" . + +if [[ "${1:-}" == "push" ]]; then + echo ">> pushing ${REF}:${TAG}" + buildah push --digestfile /tmp/bztmon-site.digest "${REF}:${TAG}" + buildah push "${REF}:latest" + DIGEST="$(cat /tmp/bztmon-site.digest)" + echo + echo ">> pin this in home-ops kubernetes/apps/bztmon-site/bztmon-site.yaml:" + echo " image: ${REF}:${TAG}@${DIGEST}" +else + echo ">> built (not pushed). Re-run with: scripts/build-image.sh push" +fi diff --git a/scripts/gen-og.mjs b/scripts/gen-og.mjs new file mode 100644 index 0000000..3c58fa0 --- /dev/null +++ b/scripts/gen-og.mjs @@ -0,0 +1,54 @@ +// Generate the social preview image (public/og.png, 1200x630) from an inline SVG. +// Run: node scripts/gen-og.mjs (also wired into `npm run build` via prebuild). +// Self-hosted asset → no third-party OG service, nothing external at runtime. +import sharp from "sharp"; +import { fileURLToPath } from "node:url"; + +const out = fileURLToPath(new URL("../public/og.png", import.meta.url)); + +const W = 1200; +const H = 630; + +const svg = ` + + + + + + + + + + + + + + + + + + + + + ~/ INFRASTRUCTURE ENGINEER + + Jonathon Wright + + + Secure Kubernetes platforms · automated fleets + + + · GPU-backed edge systems + + + + Talos · Kubernetes · GitOps · Ansible · Edge AI + + www.bztmon.com +`; + +await sharp(Buffer.from(svg)).png().toFile(out); +console.log("wrote", out); diff --git a/src/components/About.astro b/src/components/About.astro new file mode 100644 index 0000000..e2eaf10 --- /dev/null +++ b/src/components/About.astro @@ -0,0 +1,113 @@ +--- +import { site } from "../data/site"; +import { experience } from "../data/experience"; +import { cvAvailable } from "../lib/assets"; +--- + +
+ + +
    + { + experience.map((role) => ( +
  1. +
    +

    {role.title}

    + {role.period} +
    +

    {role.org}

    +

    {role.summary}

    + {role.highlights.length > 0 && ( +
      + {role.highlights.map((h) => ( +
    • {h}
    • + ))} +
    + )} +
  2. + )) + } +
+
+ + diff --git a/src/components/BackgroundGrid.astro b/src/components/BackgroundGrid.astro new file mode 100644 index 0000000..0a95276 --- /dev/null +++ b/src/components/BackgroundGrid.astro @@ -0,0 +1,67 @@ +--- +// Cheap, CSS-only topology motif: a faint grid + slow-drifting accent glows. +// No canvas, no WebGL, no JS. Fully disabled under prefers-reduced-motion. +--- + + + + diff --git a/src/components/Contact.astro b/src/components/Contact.astro new file mode 100644 index 0000000..d109010 --- /dev/null +++ b/src/components/Contact.astro @@ -0,0 +1,77 @@ +--- +import { site } from "../data/site"; +import { socials } from "../data/socials"; +--- + +
+
+

+ Open to conversations about platform engineering, edge infrastructure, and + GPU/AI systems. The fastest way to reach me is email. +

+ + {site.email} + +
+ + +
+ + diff --git a/src/components/Footer.astro b/src/components/Footer.astro new file mode 100644 index 0000000..f32ed4a --- /dev/null +++ b/src/components/Footer.astro @@ -0,0 +1,79 @@ +--- +import { site } from "../data/site"; +import { socials } from "../data/socials"; +const year = 2026; // build-stamped; bump via the build, not a runtime Date() +--- + +
+ + +
+ + diff --git a/src/components/Hero.astro b/src/components/Hero.astro new file mode 100644 index 0000000..a692a96 --- /dev/null +++ b/src/components/Hero.astro @@ -0,0 +1,93 @@ +--- +import BackgroundGrid from "./BackgroundGrid.astro"; +import { site } from "../data/site"; +import { cvAvailable } from "../lib/assets"; +--- + +
+ +
+

{site.role}

+ +

+ {site.name} +

+ +

{site.positioning}

+ +
    + {site.tagline.map((t) =>
  • {t}
  • )} +
+ +
+ View Projects + {cvAvailable && ( + + Download CV + + )} + Contact +
+
+
+ + diff --git a/src/components/Nav.astro b/src/components/Nav.astro new file mode 100644 index 0000000..26be3e3 --- /dev/null +++ b/src/components/Nav.astro @@ -0,0 +1,98 @@ +--- +import ThemeToggle from "./ThemeToggle.astro"; +import { site } from "../data/site"; + +const links = [ + { label: "About", href: "/#about" }, + { label: "Skills", href: "/#skills" }, + { label: "Projects", href: "/#projects" }, + { label: "Contact", href: "/#contact" }, +]; +--- + + + + diff --git a/src/components/ProjectCard.astro b/src/components/ProjectCard.astro new file mode 100644 index 0000000..b28ec24 --- /dev/null +++ b/src/components/ProjectCard.astro @@ -0,0 +1,88 @@ +--- +import type { Project } from "../data/projects"; +interface Props { + project: Project; +} +const { project } = Astro.props; +const href = project.hasCaseStudy ? `/projects/${project.slug}` : undefined; +const Tag = href ? "a" : "article"; +--- + + +
+

{project.title}

+ {href && } +
+ +

{project.outcome}

+

{project.summary}

+ +
    + {project.stack.map((s) =>
  • {s}
  • )} +
+ +

+ {project.role}·{project.period} +

+
+ + diff --git a/src/components/Section.astro b/src/components/Section.astro new file mode 100644 index 0000000..dbf1038 --- /dev/null +++ b/src/components/Section.astro @@ -0,0 +1,37 @@ +--- +interface Props { + id: string; + eyebrow: string; + title: string; + /** Monospace index like "01" shown beside the eyebrow. */ + index?: string; +} +const { id, eyebrow, title, index } = Astro.props; +--- + +
+
+
+

+ {index && {index}}{eyebrow} +

+

{title}

+
+ +
+
+ + diff --git a/src/components/SkillGroup.astro b/src/components/SkillGroup.astro new file mode 100644 index 0000000..c2126cb --- /dev/null +++ b/src/components/SkillGroup.astro @@ -0,0 +1,45 @@ +--- +import type { SkillGroup } from "../data/skills"; +interface Props { + group: SkillGroup; +} +const { group } = Astro.props; +--- + +
+

{group.title}

+

{group.blurb}

+
    + {group.items.map((item) =>
  • {item}
  • )} +
+
+ + diff --git a/src/components/ThemeToggle.astro b/src/components/ThemeToggle.astro new file mode 100644 index 0000000..ec3cd49 --- /dev/null +++ b/src/components/ThemeToggle.astro @@ -0,0 +1,77 @@ +--- +// Light/dark toggle. The pre-paint script in Layout sets the initial theme; +// this just flips + persists it. +--- + + + + + + diff --git a/src/data/experience.ts b/src/data/experience.ts new file mode 100644 index 0000000..c5668b5 --- /dev/null +++ b/src/data/experience.ts @@ -0,0 +1,33 @@ +// Short experience summary for the About section (M1). +// A fuller, dated timeline lands in M2. +// TODO(Jonathon): fill employer names, exact titles, and dates. + +export type Role = { + title: string; + org: string; + period: string; + summary: string; + highlights: string[]; +}; + +export const experience: Role[] = [ + { + title: "Platform / Infrastructure Engineer", + org: "TODO: Employer", // TODO(Jonathon) + period: "TODO: dates", // TODO(Jonathon) + summary: + "Operate and automate a fleet of GPU-backed edge Kubernetes clusters running computer-vision workloads, plus the IaC pipelines that deploy them.", + highlights: [ + "Hardened GPU readiness and egress networking across the edge fleet", + "Built Ansible/AWX automation for repeatable cluster bring-up", + "Owned observability and network policy for the platform", + ], + }, + { + title: "TODO: Previous role", + org: "TODO: Employer", // TODO(Jonathon) + period: "TODO: dates", // TODO(Jonathon) + summary: "TODO(Jonathon): one or two lines on a previous role.", + highlights: [], + }, +]; diff --git a/src/data/projects.ts b/src/data/projects.ts new file mode 100644 index 0000000..f4ad0ae --- /dev/null +++ b/src/data/projects.ts @@ -0,0 +1,82 @@ +// Featured project cards for the homepage + the basic /projects index (M1). +// In M2 these become full case-study Content Collections at src/content/projects/. +// Keep `slug` stable so the M2 migration keeps the same URLs. + +export type Project = { + slug: string; + title: string; + // One-line "so what" outcome — the most important field. + outcome: string; + summary: string; + role: string; + period: string; + stack: string[]; + featured: boolean; + // Set true in M2 when /projects/[slug] case studies exist. + hasCaseStudy?: boolean; +}; + +export const projects: Project[] = [ + { + slug: "edge-gpu-inference-platform", + title: "Edge Kubernetes / GPU Inference Platform", + outcome: + "Made GPU computer-vision reliable across a fleet of store-edge clusters — no more inference pods racing the GPU at boot.", + summary: + "A fleet of single-purpose edge Kubernetes clusters running GPU-accelerated computer-vision workloads. Hardened the GPU readiness path (init-gated so pods never schedule before the device plugin is up) and corrected the egress NAT path so inference results reached upstream services reliably.", + role: "Platform / Infrastructure Engineer", + period: "Recent", // TODO(Jonathon): dates + stack: ["OpenShift", "NVIDIA GPU Operator", "Multus", "SNAT / egress", "GPU device plugin"], + featured: true, + }, + { + slug: "cv-compliance-verifier", + title: "Computer-Vision Compliance Verifier", + outcome: + "Turned a manual visual check into a containerized GPU workload emitting a structured pass/fail verdict.", + summary: + "A YOLO-based vision tool packaged as a containerized workload on GPU edge nodes. Runs an inference pipeline against a defined scene and emits a structured, machine-readable verdict — replacing a manual, subjective check with a repeatable one.", + role: "Platform / Infrastructure Engineer", + period: "Recent", // TODO(Jonathon): dates + stack: ["YOLO", "Containers", "GPU nodes", "Kubernetes", "Structured output"], + featured: true, + }, + { + slug: "self-hosted-agent-infra", + title: "Self-Hosted AI Agent Infrastructure", + outcome: + "Ran a private, channel-connected AI agent on my own hardware — no third-party platform holding the data or the keys.", + summary: + "A self-hosted agent on a GPU workstation with a Signal-based sibling agent, built on a skill/context-loading framework. Local LLM inference, scoped tool access, and a credential model where the agent never holds a downstream secret directly.", + role: "Builder", + period: "Ongoing", + stack: ["Local LLM (llama.cpp)", "Agent framework", "Skills/tooling", "Signal channel", "RTX 5080"], + featured: true, + }, + { + slug: "homelab-platform", + title: "Homelab Platform", + outcome: + "A production-grade homelab: GitOps from bare metal to apps, with the same rigor I'd apply at work.", + summary: + "Proxmox with PCIe passthrough (GPU/SATA) underneath single-node Talos clusters, all driven by ArgoCD GitOps. Split-horizon DNS, SSO, observability, NAS-backed restic backups, and local LLM inference on a Blackwell GPU — the platform that hosts this very site.", + role: "Owner / Operator", + period: "Ongoing", + stack: ["Proxmox", "Talos", "ArgoCD", "Cilium", "Cloudflare Tunnel", "Prometheus"], + featured: false, + }, + { + slug: "iac-fleet-automation", + title: "IaC Automation for Fleet Deployments", + outcome: + "Stood up identical edge clusters from code — GPU stack, networking, and secrets templated, not hand-configured.", + summary: + "Ansible/AWX playbooks for fleet deployment: GPU operator install, CNI and templated network attachments, container image pre-pull, and secrets delivered via Vault — so a new edge site comes up the same way every time.", + role: "Automation Engineer", + period: "Recent", // TODO(Jonathon): dates + stack: ["Ansible", "AWX", "Vault", "Multus", "GPU Operator"], + featured: false, + }, +]; + +export const featuredProjects = projects.filter((p) => p.featured); diff --git a/src/data/site.ts b/src/data/site.ts new file mode 100644 index 0000000..90a5b1b --- /dev/null +++ b/src/data/site.ts @@ -0,0 +1,34 @@ +// Central site config — single source of truth for identity + metadata. +// Edit here, not in components. + +export const site = { + name: "Jonathon Wright", + // Short handle used in the mono "logo". + handle: "jwright", + role: "Infrastructure Engineer", + // Outcome-led positioning (hero headline). + positioning: + "Building secure Kubernetes platforms, automated infrastructure fleets and GPU-backed edge systems.", + // Supporting capability line under the headline. + tagline: [ + "Talos Linux", + "Kubernetes", + "GitOps", + "Ansible", + "Observability", + "Edge AI", + ], + // One-paragraph elevator pitch for the About section. + bio: "I design and run platforms that have to keep working when no one is watching — fleets of GPU-backed Kubernetes clusters at the edge, the IaC pipelines that deploy them, and the observability and network policy that keep them honest. I care about reliability you can reason about, security that's the default rather than a bolt-on, and automation that removes the manual step entirely instead of documenting it.", + + // Canonical URL (used for OG/sitemap/RSS). + url: "https://www.bztmon.com", + // Contact. + email: "jonny.wright225@gmail.com", + // Set when a real CV is dropped at public/cv.pdf — the button is hidden until then. + // Detection is automatic (see Layout/Hero); this is just an override if ever needed. + ogImage: "/og.png", + locale: "en", +} as const; + +export type Site = typeof site; diff --git a/src/data/skills.ts b/src/data/skills.ts new file mode 100644 index 0000000..608e552 --- /dev/null +++ b/src/data/skills.ts @@ -0,0 +1,86 @@ +// Grouped capability matrix — NO percentage bars / ratings / logo walls. +// Driven entirely by this file; the Skills section renders whatever is here. + +export type SkillGroup = { + title: string; + // Short framing line for the group. + blurb: string; + items: string[]; +}; + +export const skills: SkillGroup[] = [ + { + title: "Platform Engineering", + blurb: "Kubernetes platforms designed to be reasoned about and recovered.", + items: [ + "Kubernetes", + "Talos Linux", + "OpenShift", + "ArgoCD / GitOps", + "Helm & Kustomize", + "Cilium / flannel", + "Gateway API & Ingress", + ], + }, + { + title: "Infrastructure Automation", + blurb: "Removing the manual step entirely, not documenting it.", + items: [ + "Ansible", + "AWX", + "GitOps pipelines", + "Renovate", + "Image pre-pull & templating", + "Reproducible cluster bring-up", + ], + }, + { + title: "Linux & Systems", + blurb: "From the hypervisor up to the workload.", + items: [ + "Debian / RHEL", + "systemd", + "Proxmox / KVM", + "PCIe / GPU passthrough", + "LVM & block storage", + "restic / SMB backup", + "Bash & PowerShell", + ], + }, + { + title: "Networking & Security", + blurb: "Default-deny, least-privilege, and a small attack surface.", + items: [ + "Split-horizon DNS", + "Cloudflare Tunnel", + "Reverse proxy (Traefik / nginx)", + "NetworkPolicies", + "OIDC / SSO (Authentik)", + "Secrets (Vault / Infisical / ESO)", + "TLS & cert-manager", + ], + }, + { + title: "Observability", + blurb: "Knowing the system is healthy, not just the pods.", + items: [ + "Prometheus", + "Grafana", + "Alertmanager", + "node-exporter / kube-state-metrics", + "ServiceMonitors", + ], + }, + { + title: "AI & GPU Infrastructure", + blurb: "Serving vision and language models on real hardware.", + items: [ + "NVIDIA GPU Operator", + "Multus / SR-IOV", + "YOLO / computer-vision inference", + "Local LLM serving (llama.cpp)", + "Agent frameworks & tooling", + "Hardware-isolated workloads (Kata)", + ], + }, +]; diff --git a/src/data/socials.ts b/src/data/socials.ts new file mode 100644 index 0000000..b5fadbf --- /dev/null +++ b/src/data/socials.ts @@ -0,0 +1,31 @@ +// Social / contact links. `mailto` is built from site.email. +// TODO(Jonathon): confirm GitHub + LinkedIn handles (placeholders below). + +export type Social = { + label: string; + href: string; + // Inline SVG path data (24x24 viewBox) so we ship zero icon-font / external requests. + icon: string; + // External link gets rel=noopener; mailto does not. + external?: boolean; +}; + +export const socials: Social[] = [ + { + label: "GitHub", + href: "https://github.com/jwrong96", // TODO(Jonathon): confirm public GitHub handle + external: true, + icon: "M12 .5A11.5 11.5 0 0 0 .5 12a11.5 11.5 0 0 0 7.86 10.92c.58.1.79-.25.79-.56v-2c-3.2.7-3.88-1.37-3.88-1.37-.53-1.34-1.3-1.7-1.3-1.7-1.06-.72.08-.71.08-.71 1.17.08 1.78 1.2 1.78 1.2 1.04 1.79 2.73 1.27 3.4.97.1-.76.41-1.27.74-1.56-2.55-.29-5.24-1.28-5.24-5.7 0-1.26.45-2.29 1.19-3.1-.12-.29-.52-1.46.11-3.05 0 0 .97-.31 3.18 1.18a11 11 0 0 1 5.8 0c2.2-1.5 3.17-1.18 3.17-1.18.63 1.59.24 2.76.12 3.05.74.81 1.18 1.84 1.18 3.1 0 4.43-2.69 5.4-5.25 5.69.42.36.8 1.08.8 2.18v3.23c0 .31.21.67.8.56A11.5 11.5 0 0 0 23.5 12 11.5 11.5 0 0 0 12 .5Z", + }, + { + label: "LinkedIn", + href: "https://www.linkedin.com/in/jonathon-wright", // TODO(Jonathon): confirm LinkedIn URL + external: true, + icon: "M20.45 20.45h-3.56v-5.57c0-1.33-.02-3.04-1.85-3.04-1.85 0-2.14 1.45-2.14 2.94v5.67H9.35V9h3.41v1.56h.05c.48-.9 1.64-1.85 3.37-1.85 3.6 0 4.27 2.37 4.27 5.46v6.28ZM5.34 7.43a2.07 2.07 0 1 1 0-4.14 2.07 2.07 0 0 1 0 4.14ZM7.12 20.45H3.55V9h3.57v11.45ZM22.22 0H1.77C.8 0 0 .78 0 1.74v20.51C0 23.22.8 24 1.77 24h20.45c.98 0 1.78-.78 1.78-1.75V1.74C24 .78 23.2 0 22.22 0Z", + }, + { + label: "Email", + href: "mailto:jonny.wright225@gmail.com", + icon: "M2 4h20c.55 0 1 .45 1 1v14c0 .55-.45 1-1 1H2c-.55 0-1-.45-1-1V5c0-.55.45-1 1-1Zm1.4 2 8.6 6 8.6-6H3.4ZM21 7.87l-8.43 5.9a1 1 0 0 1-1.14 0L3 7.87V18h18V7.87Z", + }, +]; diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro new file mode 100644 index 0000000..3aa82ea --- /dev/null +++ b/src/layouts/Layout.astro @@ -0,0 +1,100 @@ +--- +import "../styles/global.css"; +import Nav from "../components/Nav.astro"; +import Footer from "../components/Footer.astro"; +import { site } from "../data/site"; + +interface Props { + title?: string; + description?: string; + /** Path to the page, e.g. "/projects" — used for canonical + OG url. */ + path?: string; +} + +const { + title, + description = site.positioning, + path = "/", +} = Astro.props; + +const pageTitle = title ? `${title} — ${site.name}` : `${site.name} · ${site.role}`; +const canonical = new URL(path, site.url).href; +const ogImage = new URL(site.ogImage, site.url).href; +--- + + + + + + + + + + {pageTitle} + + + + + + + + + + + + + + + + + + + + + + + + +