From 89aeca776dd4150a4fe15d66fae45d0938058178 Mon Sep 17 00:00:00 2001 From: Harshit Singh Date: Thu, 1 Oct 2026 03:29:12 +0000 Subject: [PATCH 1/2] Add new formats, usability features, offline PWA and landing pages Compression - Target-size presets (WhatsApp, Discord, Email, Forms, 100 KB) with KB/MB units - Before/after comparison slider for images - WebP and AVIF output (AVIF via jSquash in a worker), resize by longest side - HEIC/HEIF input (heic-to), animated GIF compression (gifsicle) - PDF "keep text selectable" mode that only re-compresses embedded images; the rasterizing mode is now "smallest size"; both run in a worker with a main-thread fallback, and pdf.js fonts/cMaps/wasm are served from /pdfjs - Video: MP4/WebM(VP8)/GIF output, resolution, remove audio, per-file trim - Keep-metadata toggle; rows say when location/camera data was removed Usability - Cancel per file, paste files, drop folders, warn before leaving mid-run - Settings remembered between visits, batch summary, per-file level - Share button (Web Share API), dark mode with system/light/dark toggle - Title no longer reloads the page PWA and privacy - Service worker: offline app shell, cached chunks and FFmpeg core, Android share target - Self-hosted Nunito Sans and image-compression worker (no Google Fonts or jsdelivr); "0 bytes uploaded" indicator - COEP credentialless instead of require-corp Growth - Static landing pages per use case with their own title, description, canonical URL and presets; sitemap.xml, robots.txt, og:image, icons - Optional Cloudflare Web Analytics via CF_ANALYTICS_TOKEN at build time Claude-Session: https://claude.ai/code/session_011UUBS4XF57trCnZcGwBu35 --- index.html | 50 +- package-lock.json | 8365 +++++++++++++++++++++------- package.json | 10 + public/_headers | 5 +- public/favicon.svg | 5 + public/icons/apple-touch-icon.png | Bin 0 -> 2328 bytes public/icons/icon-192.png | Bin 0 -> 3724 bytes public/icons/icon-512.png | Bin 0 -> 11513 bytes public/icons/icon-maskable-512.png | Bin 0 -> 7498 bytes public/og-image.png | Bin 0 -> 241878 bytes scripts/generate-images.mjs | 42 + src/App.tsx | 524 +- src/components/BatchSummary.tsx | 45 + src/components/CompareModal.tsx | 106 + src/components/FileRow.tsx | 302 +- src/components/PrivacyBadge.tsx | 24 + src/components/SettingsPanel.tsx | 332 ++ src/components/ThemeToggle.tsx | 19 + src/hooks/useSettings.ts | 68 + src/hooks/useTheme.ts | 42 + src/index.css | 37 +- src/lib/abort.ts | 52 + src/lib/avif.worker.ts | 38 + src/lib/compress.ts | 113 +- src/lib/gif.ts | 39 + src/lib/image.ts | 85 +- src/lib/landing.ts | 114 + src/lib/media.ts | 180 +- src/lib/pdf-core.ts | 284 + src/lib/pdf.ts | 119 +- src/lib/pdf.worker-job.ts | 22 + src/lib/settings.test.ts | 24 +- src/lib/settings.ts | 185 +- src/lib/share-target.ts | 20 + src/lib/storage.ts | 17 + src/main.tsx | 1 + src/sw.ts | 98 + src/types/modules.d.ts | 17 + src/types/vite-env.d.ts | 1 + vite.config.ts | 259 +- worker/index.ts | 6 + wrangler.toml | 5 +- 42 files changed, 9132 insertions(+), 2523 deletions(-) create mode 100644 public/favicon.svg create mode 100644 public/icons/apple-touch-icon.png create mode 100644 public/icons/icon-192.png create mode 100644 public/icons/icon-512.png create mode 100644 public/icons/icon-maskable-512.png create mode 100644 public/og-image.png create mode 100644 scripts/generate-images.mjs create mode 100644 src/components/BatchSummary.tsx create mode 100644 src/components/CompareModal.tsx create mode 100644 src/components/PrivacyBadge.tsx create mode 100644 src/components/SettingsPanel.tsx create mode 100644 src/components/ThemeToggle.tsx create mode 100644 src/hooks/useSettings.ts create mode 100644 src/hooks/useTheme.ts create mode 100644 src/lib/abort.ts create mode 100644 src/lib/avif.worker.ts create mode 100644 src/lib/gif.ts create mode 100644 src/lib/landing.ts create mode 100644 src/lib/pdf-core.ts create mode 100644 src/lib/pdf.worker-job.ts create mode 100644 src/lib/share-target.ts create mode 100644 src/lib/storage.ts create mode 100644 src/sw.ts create mode 100644 src/types/modules.d.ts create mode 100644 src/types/vite-env.d.ts diff --git a/index.html b/index.html index 6f5943b..5b45a34 100644 --- a/index.html +++ b/index.html @@ -3,40 +3,50 @@ - - Compressly – Premium File Compression for Creators - - - + + __PAGE_TITLE__ + - + + - - + + - - + + + + + - - - + + + + - + + - - - - + + -
+ +
__PAGE_CONTENT__
- diff --git a/package-lock.json b/package-lock.json index 0543b02..ba3aa5f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,11 @@ "dependencies": { "@ffmpeg/ffmpeg": "^0.12.15", "@ffmpeg/util": "^0.12.2", + "@fontsource-variable/nunito-sans": "^5.3.0", + "@jsquash/avif": "^2.1.1", "browser-image-compression": "^2.0.2", + "gifsicle-wasm-browser": "^1.5.19", + "heic-to": "^1.5.2", "jszip": "^3.10.1", "lucide-react": "^0.546.0", "motion": "^12.23.24", @@ -27,10 +31,33 @@ "tailwindcss": "^4.1.14", "typescript": "~5.8.2", "vite": "^6.4.3", + "vite-plugin-pwa": "^1.3.0", "vitest": "^3.2.7", + "workbox-cacheable-response": "^7.4.1", + "workbox-expiration": "^7.4.1", + "workbox-precaching": "^7.4.1", + "workbox-routing": "^7.4.1", + "workbox-strategies": "^7.4.1", "wrangler": "^4.139.0" } }, + "node_modules/@apideck/better-ajv-errors": { + "version": "0.3.7", + "resolved": "https://registry.npmjs.org/@apideck/better-ajv-errors/-/better-ajv-errors-0.3.7.tgz", + "integrity": "sha512-TajUJwGWbDwkCx/CZi7tRE8PVB7simCvKJfHUsSdvps+aTM/PDPP4gkLmKnc+x3CE//y9i/nj74GqdL/hwk7Iw==", + "dev": true, + "license": "MIT", + "dependencies": { + "jsonpointer": "^5.0.1", + "leven": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "ajv": ">=8" + } + }, "node_modules/@babel/code-frame": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.7.tgz", @@ -104,6 +131,19 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.29.7.tgz", + "integrity": "sha512-OoK6239jHPuSQOoS0kfTVKn0b/rVTk0seKq4Gd2UMLtmOVLjDC0ki3e+c90Trqv2gMfvJFqkiljrr568+qddiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-compilation-targets": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.29.7.tgz", @@ -121,6 +161,63 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.29.7.tgz", + "integrity": "sha512-IY3ZD9Tmooqr3TUhc3DUWxiuo8xx1DWLhd5M7hQ+ZWJamqM2BbalrBJb2MisSLoYorOj75U03qULCxQTY9r3hg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "@babel/helper-member-expression-to-functions": "^7.29.7", + "@babel/helper-optimise-call-expression": "^7.29.7", + "@babel/helper-replace-supers": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7", + "@babel/traverse": "^7.29.7", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.29.7.tgz", + "integrity": "sha512-907Uymvqgg1dwUA+7IGwFAOSYzQOuzPXKNJ1yxzwPffzkYFg2q2eHi1fIOs6sXkG9NbIUMunnUlkYsfRFNvomg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "regexpu-core": "^6.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.8.tgz", + "integrity": "sha512-47UwBLPpQi1NoWzLuHNjRoHlYXMwIJoBf7MFou6viC/sIHWYygpvr0B6IAyh5sBdA2nr2LPIRww8lfaUVQINBA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", + "debug": "^4.4.3", + "lodash.debounce": "^4.0.8", + "resolve": "^1.22.11" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, "node_modules/@babel/helper-globals": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", @@ -131,6 +228,20 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.29.7.tgz", + "integrity": "sha512-j+7JYmk1JYDtACIGj0QJqqWZjoUpMoEikQGADMaHgCMCSDqd2+P32rfcibUNrGOMWrlzK1WJBdxrB3JJQZwWtg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-module-imports": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz", @@ -163,6 +274,19 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.29.7.tgz", + "integrity": "sha512-+kmGVjcT9RGYzoDwdwEqEvGgKe3BYq+O1iGzjFubaNgZHwYHP6lsF2Yghf4kEuv9BV7tYDZ913aBW9am6YKong==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-plugin-utils": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.29.7.tgz", @@ -173,6 +297,56 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.29.7.tgz", + "integrity": "sha512-16AMiW26DbXWBbr3B8wNozKM0ydMLB892vaOaJW/fPJdnT8vJk5sdkQcU/isqUxyCE0cEoa8wZOcbgDuC4b6Og==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "@babel/helper-wrap-function": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.29.7.tgz", + "integrity": "sha512-atfGXWSeCiF4DnKZIfmJfQRkSw9b9gNNXR1kqKjbhG4pGYCOnkp8OcTB8E3NXjBu8NpheSnOeNKz8KT7UNFTmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.29.7", + "@babel/helper-optimise-call-expression": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.29.7.tgz", + "integrity": "sha512-brcMGQaVzIeUb+6/bs1Av0f8YuNNjKY2JyvfRCsFuFsdKccEQ5Ges2y74D74NZ1Rz8lKJ9ksJkfqwQFJ/iNEyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, "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", @@ -203,6 +377,21 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.29.7.tgz", + "integrity": "sha512-iES0Skag9ERIF68aXadpO6dbXa03mNWK3sEqJaMnLNs/eC3l0lkImdfoy6Y09/SfkpawdAB4RjQ7PVA7TcVGdw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.29.7", + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helpers": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.7.tgz", @@ -233,26 +422,27 @@ "node": ">=6.0.0" } }, - "node_modules/@babel/plugin-transform-react-jsx-self": { + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.29.7.tgz", - "integrity": "sha512-TL0hMc9xzy86VD31nUiwzd5otRAcyEPcsegCxolO0PvcXuH1v0kECe/UIznYFihpkvU5wg/jk4v0TTEFfm53fw==", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.29.7.tgz", + "integrity": "sha512-j8SrR0zLZrRsC09DlszEx8FpMiwukKffYXMK0d5LmOglO7vGG6sz/BR/20yHqWH+Lnn31JTt2PE3hIWNgM2J6w==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/traverse": "^7.29.7" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-transform-react-jsx-source": { + "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.29.7.tgz", - "integrity": "sha512-06IyK09H3wi4cGbhDBwp5gUGo0IKtnYa8tyTiephirPCK6fbobVGiXMMI5zLQ4aKEYP3wZ3ArU44o+8KMrSG/Q==", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.29.7.tgz", + "integrity": "sha512-r8j8escF+U2FUHo0KOhPUdMzUO+jp9fInva6+ACVAF3Y97Ev+5iNZwiqTghmzNeWwDkOPlYuTcfb1vDaoZKmAQ==", "dev": true, "license": "MIT", "dependencies": { @@ -262,1040 +452,1250 @@ "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/template": { + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", - "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.29.7.tgz", + "integrity": "sha512-GE1TFSiuFeGsCxmYXZl8HwoPrVlwe4rHPFE8weieGKZqnDORK+Ar3vgWMgW+AOxQ6/2TgLSKx9p6W7O4rC6qgQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.29.7", - "@babel/parser": "^7.29.7", - "@babel/types": "^7.29.7" + "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/traverse": { - "version": "7.29.8", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.8.tgz", - "integrity": "sha512-I5z7H3bf/41ktsNVLtpN0wAa336HkqIHQ5BuPLEhTkt1jVSyZpeNKIzTgEWmlxjdg81R0IgUCcaE+Ok3NvrfZg==", + "node_modules/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/-/plugin-bugfix-safari-rest-destructuring-rhs-array-7.29.7.tgz", + "integrity": "sha512-oBNVCvnO5tND+xSopWvV8WNGfpTfgP4Zr/YXXSj8zfmcPktp5Ku/aZlsIowgSD4fjmgHn6sGmB9APVsU5zOdhA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.29.7", - "@babel/generator": "^7.29.8", - "@babel/helper-globals": "^7.29.7", - "@babel/parser": "^7.29.8", - "@babel/template": "^7.29.7", - "@babel/types": "^7.29.8", - "debug": "^4.3.1" + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/types": { - "version": "7.29.8", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.8.tgz", - "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.29.7.tgz", + "integrity": "sha512-QQt9qKHZ2sg/kivaLr7lnQr8HVrQDdBNSfCsTjiDxRuX/K5ORyKq+Bu8Xr0cDE3Dfkv0cw28Ve0EKyKMvulkOw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.29.7", - "@babel/helper-validator-identifier": "^7.29.7" + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7", + "@babel/plugin-transform-optional-chaining": "^7.29.7" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" } }, - "node_modules/@cloudflare/kv-asset-handler": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@cloudflare/kv-asset-handler/-/kv-asset-handler-0.5.0.tgz", - "integrity": "sha512-jxQYkj8dSIzc0cD6cMMNdOc1UVjqSqu8BZdor5s8cGjW2I8BjODt/kWPVdY+u9zj3ms75Q5qaZgnxUad83+eAg==", + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.29.7.tgz", + "integrity": "sha512-pn6QacGLgvCcwc+syUhKE/qSjV2D1IHDB84RNxWYSt1mW3K/SCtjinZ2p0cETJxAWBjPy3K/1lHwG5BjjPxNlw==", "dev": true, - "license": "MIT OR Apache-2.0", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, "engines": { - "node": ">=22.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@cloudflare/unenv-preset": { - "version": "2.16.2", - "resolved": "https://registry.npmjs.org/@cloudflare/unenv-preset/-/unenv-preset-2.16.2.tgz", - "integrity": "sha512-JBP1+Z7ZSNG/d4mRP+y8VC5dka3tZVMLEZRvS+rzQ4DGV1EoxRFQckcJTTkXbHSQiTj0DtNI01Zwb/V2fX0mvQ==", + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", "dev": true, - "license": "MIT OR Apache-2.0", - "peerDependencies": { - "unenv": "2.0.0-rc.24", - "workerd": ">1.20260305.0 <2.0.0-0" + "license": "MIT", + "engines": { + "node": ">=6.9.0" }, - "peerDependenciesMeta": { - "workerd": { - "optional": true - } + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@cloudflare/workerd-darwin-64": { - "version": "1.20260923.1", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20260923.1.tgz", - "integrity": "sha512-sFMyHjABspfVxAf9bmcRdYWm3rO5Vrmhb3fLboMB5Lt+Eo+X1Fj4n/3hgMYmXb6P+zW+cjWjZdH1ilE+Ad5kDw==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.29.7.tgz", + "integrity": "sha512-/An1OCBN93thpBAGyfsK2pcf0jvju1SAtKkL2Ny++B5Sy6sqgzXDQH1cZxWbF96Wuk+bn41MDA9bLd4VVAw6rw==", "dev": true, - "license": "Apache-2.0", - "optional": true, - "os": [ - "darwin" - ], + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=16" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@cloudflare/workerd-darwin-arm64": { - "version": "1.20260923.1", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20260923.1.tgz", - "integrity": "sha512-t/O1jcuag+JO5VnFblf20B960FU/WSmn/n2Lcy021cBUhWnhApO9yx1VjJ7I4KhS09yXLgC2shHTzB9EnbSQpg==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.29.7.tgz", + "integrity": "sha512-zGYcYfq/WmZ4V+kBIXQon9dSSc8ircGZqw9ZaNhhGj9nZkeBu1jHLBDQqYYi5WA9uawvA2sIMbry2nCFhf5Djg==", "dev": true, - "license": "Apache-2.0", - "optional": true, - "os": [ - "darwin" - ], + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=16" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@cloudflare/workerd-linux-64": { - "version": "1.20260923.1", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20260923.1.tgz", - "integrity": "sha512-6X9fp5vFBJG0BXrjOcB4yqyqZRtZ/Jx4KRAmEp5FPxuNUbf3n6ogzZvD2s0YS+DC2zNKb0gd1lIiOye7AaGnvA==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", "dev": true, - "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, "engines": { - "node": ">=16" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@cloudflare/workerd-linux-arm64": { - "version": "1.20260923.1", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20260923.1.tgz", - "integrity": "sha512-esOXfxhDp2YPjZmMrO3OLa/9qAfa/uXQGwFGDyUWNF3aXkwE8fc6oauZS01UDk8YwuYlxsyjLQIKjJOrzJ2N+g==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.29.7.tgz", + "integrity": "sha512-N7zArUXWzAMzm+/N0uPBeVB3Fam5lMxtUwMmDK5f/IBBS7a7p1qeUoxd/6CckXoxUdgsntq1Dh8xNW06maZbDQ==", "dev": true, - "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=16" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@cloudflare/workerd-windows-64": { - "version": "1.20260923.1", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20260923.1.tgz", - "integrity": "sha512-Hlda2apkBcRtPQD4NnEZiEqKLIhR7au+8skF+tBHBa1jsX1/GfuYEdIR0HJ6He1qkSNkxD/Y0VXo+TNgUc1EUg==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.29.7.tgz", + "integrity": "sha512-d98gXZkgswvkyohMBABkhm3GeXhYj8psWfwQ2C7gtfrKGTykQa/iOIi+JJhwMjPlZ6Vm2XN+DCf3Es1EoG4ZLA==", "dev": true, - "license": "Apache-2.0", - "optional": true, - "os": [ - "win32" - ], + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-remap-async-to-generator": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, "engines": { - "node": ">=16" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.29.7.tgz", + "integrity": "sha512-pcUb2SS+RMo9TWVBwKGI5ShtoG7R+zBsFmCKDa6fe8c+hPr3XJlZgoE5j6i8W7gDjhyvy+85vmYexanvXh3d1w==", "dev": true, "license": "MIT", "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" + "@babel/helper-module-imports": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-remap-async-to-generator": "^7.29.7" }, "engines": { - "node": ">=12" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.29.7.tgz", + "integrity": "sha512-cUSmjh72N+rN4PrkFlN1dJwNCwjVp5d38/CQrEsFggkD10UiFlBFgdH3tv5dNsLuHY+3S8db2xCHjhZcv5WgvA==", "dev": true, "license": "MIT", "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@emnapi/runtime": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.11.3.tgz", - "integrity": "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA==", + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.29.7.tgz", + "integrity": "sha512-ONyr4+AZhKh8yKWInVxU9AXA9EbsyeLcL6V0dJy6M2/62vuvpGm29zzuymbTpdc451GEpDIdAyPLP3r+P61yKQ==", "dev": true, "license": "MIT", - "optional": true, "dependencies": { - "tslib": "^2.4.0" + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", - "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", - "cpu": [ - "ppc64" - ], + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.29.7.tgz", + "integrity": "sha512-GtcpjFvanPfzNQi3eTitsCqtRRmmqzpy/A+yhTR1HaZo1Ly3EA8ZXxlPyHdR8/IuRMYc3E4wdGBewB2QKQjAaA==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "aix" - ], + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/android-arm": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", - "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", - "cpu": [ - "arm" - ], + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.29.7.tgz", + "integrity": "sha512-kibJgmEdX2iMwsHY2tSZNDgj8PwIlCQz7FK9KuGKO8zsuoUwSEhoNnNVp/emKWrbY4HeO6kkXfdMqRKKKXBm2A==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "android" - ], + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" } }, - "node_modules/@esbuild/android-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", - "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-classes": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.29.7.tgz", + "integrity": "sha512-qV0OGGBVacduzQHE649JyCneOFI/maT+YKsO+K4Yi3xv2wTPNjM/W2o2gdzMwEAZz7fXNTHAe0NcSg30bIN69g==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "android" - ], + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-replace-supers": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/android-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", - "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.29.7.tgz", + "integrity": "sha512-RK7/IyU5phpuCdBAuig5VkzG/EnbDaui5SQGdU9BFrHdV+mV4cUjLMQ9lJDjLNtWHsqtiefpGZUXQP2BiTYMsA==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "android" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/template": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", - "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.29.7.tgz", + "integrity": "sha512-iPX8aD6H9zV5s7ZsqTdNocPN/MGQ5sSMnElKrktxjJRMnB2jN/1p2+R7GkfD6CAYoVFqy5A4XnSIUeGgJzIWpg==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", - "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.29.7.tgz", + "integrity": "sha512-3qc18hsD2RdZiyJNDNc7HQpv6xbncwh8FYtxNFFzclSyh/trPD9KkVR9BDECUjDLvb7yJVF15GfYUuC+LMkkiQ==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", - "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.29.7.tgz", + "integrity": "sha512-6IvRRriEMqnBwD6chtxdLpMYCHWEzN+oL5cyQtjykya19UgzbmKhxmhZgKC/LHxS2nYr9Q/qYPZ5Lr6jOL9+yQ==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", - "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.29.7.tgz", + "integrity": "sha512-2wiIyo2BjtgU7HufSeDnL9L2O7zr8jmhFKuSr65VpRkUiRKRNpb0mdlk56+XPPKoIrfHqzbMuglDvZun0RISsA==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@esbuild/linux-arm": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", - "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", - "cpu": [ - "arm" - ], + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.29.7.tgz", + "integrity": "sha512-giOlEm/EFjfjr+te9NsdjkUo2v4f8rS/SXPumRVHAtbNcyNlvtREkU1dZzaIDclNpnaVhlCqRdFKhJBjBikzLg==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", - "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-explicit-resource-management": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.29.7.tgz", + "integrity": "sha512-Rstj7coNz8sE+7Ju7ihpHLI564lsK5pUpNNlvptCIC/16E/S5hbl6n3kESPKdNRmqEWlpn5xpS5Q2dvXBsySLw==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/plugin-transform-destructuring": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", - "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", - "cpu": [ - "ia32" - ], + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.29.7.tgz", + "integrity": "sha512-zFpMOTLZBdW5LfObqcSbL6kefg4R4eLdmvS0wbN9M6D5Mym/sKm9toOoWyVOa+xDjvCnuWcHls2YonXwHvH3CQ==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", - "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", - "cpu": [ - "loong64" - ], + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.29.7.tgz", + "integrity": "sha512-24B2nOy2TeJSMheqwPD4DDQOV/elLSIlKxjZt4i05H5AgdPdWR3n18HnNrcJ+j76WJd9gbwb9jPjNYUy6RautA==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", - "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", - "cpu": [ - "mips64el" - ], + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.29.7.tgz", + "integrity": "sha512-zeSIHh0+E1Um1WJRXCFlHQYu2ieJNdivLLjlBEp+dIBu3S51n+SZZmIXjxnItw6pz56Cn+KvK68BIBVsxq2JiQ==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", - "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", - "cpu": [ - "ppc64" - ], + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.29.7.tgz", + "integrity": "sha512-otRWaHXE6fbAGkePvaj/kvs3HsqXfPhlnzwSOlnFgbqCPMd975dW+4wZ00WFBt+/YlBGcJwNrARQTOJOb4ZrIg==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", - "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", - "cpu": [ - "riscv64" - ], + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.29.7.tgz", + "integrity": "sha512-RRnE2+eon1rJAq8MnoF1b5kTpY1vU88twHcvcKMrsqP/jxIRqDVs9iJB5fqPuqyeFAW0wJo4MlUIPpQCq/aRsg==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", - "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", - "cpu": [ - "s390x" - ], + "node_modules/@babel/plugin-transform-literals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.29.7.tgz", + "integrity": "sha512-DZ/oLP21ZuWx1vKqnoNv6/tvEK48AQOBRai40CX9dTjGluvT/YZCyY3rryDtyUqCEoyNroy5KKPwX2iQCiRvyw==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/linux-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", - "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.29.7.tgz", + "integrity": "sha512-A0H91hh6W8MFRkp5TqJmMr39jzGD1A1E1Ysiv2O06Sfbhkapm+XyIzxWCEh5kqwOZ1/8QZ0dY3SeQ7XBqfJd5Q==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/netbsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", - "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.29.7.tgz", + "integrity": "sha512-hl1kwFZCCiDyfH25Xmco9jTrkPgnS9pmOzSG7W5I4SaGbLeqKv417hcU2RKmaxoPEgsoJh7ZPOrnPGq99bHoUg==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", - "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.29.7.tgz", + "integrity": "sha512-fxtQoH3m5ywUSIfaH0FGCzWu4McsYon5bD3K4XnskC7f+OyQMj7rsOMi4NvvmJ83WwBAg4UCe+ov4VZlqEvyew==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], + "dependencies": { + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/openbsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", - "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.29.7.tgz", + "integrity": "sha512-j0vCldybPC5b5dwCQOJ21uKtHzt7hxLygJTg9eF1ScfaikEDNfzn94XoW5Fi+seBR0nCyL23xaBFFkq7dTM8XQ==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], + "dependencies": { + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", - "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.29.8.tgz", + "integrity": "sha512-6iSnEK0zlkLKU4heofK/AdmRD4e2SHVpJMtrwnTCzhnaM98ria4rTrOXBBi45BTTYnJtO8txnPsX4fChYXkmeA==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], + "dependencies": { + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7", + "@babel/traverse": "^7.29.8" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/openharmony-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", - "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.29.7.tgz", + "integrity": "sha512-B4UkaTK3QpgCwJnrxKfMPKdo92CN7OKXAlpAAnM3UPu0Q0lCCk57ylA9AJbRy2v8dDKOPAAWcoR6CMyeoHwRCA==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "openharmony" - ], + "dependencies": { + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", - "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.29.7.tgz", + "integrity": "sha512-vuFoLwr4qnv2xbZ16SQd6uPcH5FNrLHhk/Jzo++0XJFcaDsr4gjJVg6j398oMHiC+83k/GiBzviwF5KBJkPUtQ==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", - "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.29.7.tgz", + "integrity": "sha512-fEo41GmsOUhOBlw8ioo6zvjX5Xc2Lqkzlyfqbpsk3eB6TReV18uhxZ0esfEokVbY2+PVJAQHNKxER6lGrzNd3A==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", - "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", - "cpu": [ - "ia32" - ], + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.29.7.tgz", + "integrity": "sha512-idmp1dFaekP9GbcMvG24Kvw2BfhFZjHnNJCkV4WuIY4PskJzwI3f1N5OdgYke38T7rftO6ERulFRn2cFeZwRkg==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@esbuild/win32-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", - "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.29.7.tgz", + "integrity": "sha512-zR7fv/z14OjgHl4AgRtkDBvBMhIzCxqV/qN/2BCRC7LjFwvuzjYe7gDWxC4Wl/SNsLM6SE1IWvRPYMgSJaUvNw==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@ffmpeg/ffmpeg": { - "version": "0.12.15", - "resolved": "https://registry.npmjs.org/@ffmpeg/ffmpeg/-/ffmpeg-0.12.15.tgz", - "integrity": "sha512-1C8Obr4GsN3xw+/1Ww6PFM84wSQAGsdoTuTWPOj2OizsRDLT4CXTaVjPhkw6ARyDus1B9X/L2LiXHqYYsGnRFw==", + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.29.7.tgz", + "integrity": "sha512-Ld98jn4c0smUywL57m7SgsHq3OpThOa6LqZJif3G6jYOovPleoFhVrBJ1WegRApSFB2wu4+RelAj9AC9G08Z4A==", + "dev": true, "license": "MIT", "dependencies": { - "@ffmpeg/types": "^0.12.4" + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/plugin-transform-destructuring": "^7.29.7", + "@babel/plugin-transform-parameters": "^7.29.7", + "@babel/traverse": "^7.29.7" }, "engines": { - "node": ">=18.x" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@ffmpeg/types": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/@ffmpeg/types/-/types-0.12.4.tgz", - "integrity": "sha512-k9vJQNBGTxE5AhYDtOYR5rO5fKsspbg51gbcwtbkw2lCdoIILzklulcjJfIDwrtn7XhDeF2M+THwJ2FGrLeV6A==", + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.29.7.tgz", + "integrity": "sha512-Ea/diGcw0twB5IlZPO5sgET6fJsLJqPABqTuFWIR+iMPGPZJkATEIWx0wa+aEQ5UY1CBQyP/gkAiLEqn1vBiQA==", + "dev": true, "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-replace-supers": "^7.29.7" + }, "engines": { - "node": ">=16.x" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@ffmpeg/util": { - "version": "0.12.2", - "resolved": "https://registry.npmjs.org/@ffmpeg/util/-/util-0.12.2.tgz", - "integrity": "sha512-ouyoW+4JB7WxjeZ2y6KpRvB+dLp7Cp4ro8z0HIVpZVCM7AwFlHa0c4R8Y/a4M3wMqATpYKhC7lSFHQ0T11MEDw==", + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.29.7.tgz", + "integrity": "sha512-sLsyndxK2VwX6yNUOakMb7Sh553ZTe/vVM1XJ+9Z5aW1ytsc8xOIwmyk05NNjN60vkc5/KqoTH6hB4V41LJhng==", + "dev": true, "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=18.x" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "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==", + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.29.7.tgz", + "integrity": "sha512-6GM1dhvK3gNODkXcEcMCOLEDCLSoZ/sBbro2Ax8HURyasQ4NshagQixkRFdh5niI6E4gmA/jYI/4aT7rRos3ZQ==", "dev": true, "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" + }, "engines": { - "node": ">=18" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-darwin-arm64": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.35.4.tgz", - "integrity": "sha512-Uhfl4V4lhP2nbUVF9+hyH1+luj86f1gUFeo8ALYxFoULoU+G87D43BfeMP8XHsk9boxAnCY/bf2EHwhA7MuGsA==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.29.7.tgz", + "integrity": "sha512-ZDOBqV/qLYJI0YElr8DcENEyARsFQeESqWXH6gZlghYXuPPjvweuDhP4VyEi4BlUBlLRFZVjxoZDMjxhLW766g==", "dev": true, - "license": "Apache-2.0", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=20.9.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" }, - "funding": { - "url": "https://opencollective.com/libvips" + "engines": { + "node": ">=6.9.0" }, - "optionalDependencies": { - "@img/sharp-libvips-darwin-arm64": "1.3.3" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-darwin-x64": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.35.4.tgz", - "integrity": "sha512-hWniXY3bG5qKpkKrAwPe4y+VTPmf086YQAnkxWh7uA1YrlRouWGa0M0Mxj3ZjnXFkv7/TD1bTy9lGUK26vRvWw==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.29.7.tgz", + "integrity": "sha512-/6Rz4DK1ETDEM/bWHsPHcaEe7ZaT1EqSXjtSP/L0DijOYuaUhiRiOKcwpZ8P7zR4xXEHc2ITdiCgBm9Tpyv9ug==", "dev": true, - "license": "Apache-2.0", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=20.9.0" + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" }, - "funding": { - "url": "https://opencollective.com/libvips" + "engines": { + "node": ">=6.9.0" }, - "optionalDependencies": { - "@img/sharp-libvips-darwin-x64": "1.3.3" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-freebsd-wasm32": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-freebsd-wasm32/-/sharp-freebsd-wasm32-0.35.4.tgz", - "integrity": "sha512-lIsKw/BU+kjB4eZjxrYrZmwOJYi3Ajrv66iAlBmUPyKc3HpnloevB1g3wxGD9P/5BbQ1brBGl65VRRrCvQDEqA==", + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.29.7.tgz", + "integrity": "sha512-+BNo06dnrzdNNqCm1X6YUaVv0DKk8Q+JYcoZfOkLhYWNCXzlwTSRq8zGWayT1csjcpNXV9CQTBRRbmTLZac5cA==", "dev": true, - "license": "Apache-2.0", - "optional": true, - "os": [ - "freebsd" - ], + "license": "MIT", "dependencies": { - "@img/sharp-wasm32": "0.35.4" + "@babel/helper-annotate-as-pure": "^7.29.7", + "@babel/helper-create-class-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { - "node": ">=20.9.0" + "node": ">=6.9.0" }, - "funding": { - "url": "https://opencollective.com/libvips" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-libvips-darwin-arm64": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.3.3.tgz", - "integrity": "sha512-suTBPTDGrI9WodccaDdwZItTSaBYASlBk1NSfElSHrUfzu3szG6lvIF58+WiFvnfzuK8ZBFS5zE00PxqxnRiPg==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.29.7.tgz", + "integrity": "sha512-bOMRLQuI0A5ZqHq3OWJ89/rXpJ/NJrbVhXiP4zwPGMs6kpcVsuTUNjwoE30K0Qm3mf48a/TnRYYD6vPNqcg6jA==", "dev": true, - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "darwin" - ], - "funding": { - "url": "https://opencollective.com/libvips" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-libvips-darwin-x64": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.3.3.tgz", - "integrity": "sha512-FVJZ5mITMobmXIz/hPDTw0EintTW5H3WfrxwLqEqjiIihlu+hVRyGrFQ60xl0Lxn7Bt3zdpevPaQi0HEzqz9fw==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.29.7.tgz", + "integrity": "sha512-TL0hMc9xzy86VD31nUiwzd5otRAcyEPcsegCxolO0PvcXuH1v0kECe/UIznYFihpkvU5wg/jk4v0TTEFfm53fw==", "dev": true, - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "darwin" - ], - "funding": { - "url": "https://opencollective.com/libvips" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-libvips-linux-arm": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.3.3.tgz", - "integrity": "sha512-3rbU4vqXXc3hY/OiXdl52xZvT0F1yEngWfvqudtPJg/KkyiaQw2DRsFrNzpmLvfavbwOq3qXn36GP8obHRULQA==", - "cpu": [ - "arm" - ], + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.29.7.tgz", + "integrity": "sha512-06IyK09H3wi4cGbhDBwp5gUGo0IKtnYa8tyTiephirPCK6fbobVGiXMMI5zLQ4aKEYP3wZ3ArU44o+8KMrSG/Q==", "dev": true, - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-libvips-linux-arm64": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.3.3.tgz", - "integrity": "sha512-0DaL0A6Xu6sQSQFwe4iVCrKWU2cCTItnRsYsCdxAMm9NF6twAA9BKnoqy4hqz4+azQ0JHuA26qiUKsf1XJ/v5A==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.29.8.tgz", + "integrity": "sha512-0UpIXPtdDtMXfnV2OJAVMLpj3H/92vmkA6lpSRakmycJvj3VUy6Xs1dM8tXRugupykr5WB+LpiVl0J8LMVg2mg==", "dev": true, - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-libvips-linux-ppc64": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.3.3.tgz", - "integrity": "sha512-cdn1OvUBwsXhbC0zSzJnNzf5MZ/mTrobawDvNXBTxe8VtqKAm0sRuEY2Evzovb/w9JMk4TvRxqt1mekSuJz64w==", - "cpu": [ - "ppc64" - ], + "node_modules/@babel/plugin-transform-regexp-modifiers": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.29.7.tgz", + "integrity": "sha512-mB5Fs0VWrJ42ZCmc8114v60qetdaUVNkj9PmSZRmanCZM3S9hm0CFRLjRmYIsuXav14l2jvZ+4T8iiCGnhj3nQ==", "dev": true, - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@img/sharp-libvips-linux-riscv64": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.3.3.tgz", - "integrity": "sha512-HjPVx7yKz+0lqdhDlTw1tt90wamBoxhiXpvl1XZpJLiHH4RCJ5yDTqH+VlYPv2fwFs89JFw4c1IexYOcQUi4IQ==", - "cpu": [ - "riscv64" - ], + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.29.7.tgz", + "integrity": "sha512-5+YhdpVgmfSmwZyLMftfaiffLRMHjzIRHFHHLdibcSyJm2pasMrKHrO3Ptrt2DRshjvpgjEJJ1zVW14WPq/6QA==", "dev": true, - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-libvips-linux-s390x": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.3.3.tgz", - "integrity": "sha512-neWLh+3yCNThxnfy3c4BbVBeGgt9aftno+XbT56iK28RgeDs3UOFWviLWlUu0bArYVYJaFDK+RRohbicUNCm8Q==", - "cpu": [ - "s390x" - ], + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.29.7.tgz", + "integrity": "sha512-I+WYbGBAiCn7nA6xBrlgPH+MB7HWb4u8pv5S0Pv7OtwNvIFvCCb24YlttKEeUFVurfBCEaOTnuhlqsb7f0Z5Dg==", "dev": true, - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-libvips-linux-x64": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.3.3.tgz", - "integrity": "sha512-4vKmvAst9nrowcqquKFAyZJUDolUaIp8uRiN0mWFguJ1IplC9/pitXtlnnlU4aa/eJw3J7i67V+pwUL+wZGdsA==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-transform-spread": { + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.29.8.tgz", + "integrity": "sha512-4S9ksMGVWUshvgK0mKfvZky7leuG5/uoFVwMpAomJ8bMoDJiNHRVmc1EglwW/CmGVSqqWpEbXm9FmbRit22qoA==", "dev": true, - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-libvips-linuxmusl-arm64": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.3.3.tgz", - "integrity": "sha512-Y9kQaLMuNoB0bPYOOdcZMaseNrFpPodIWWMrx+CZyydf2xn68j9WYc6sWWRrDwNkzCQjKYfc68L7jKjGlHMibw==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.29.7.tgz", + "integrity": "sha512-BCHzNYJGe9l7EpwwDBN/ztlL2NYFFq8hp9ddjtUEM9f2O7S7kKV/lL6Fwo7IF7NSkYhPK2vO+86nIGltA90MsA==", "dev": true, - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-libvips-linuxmusl-x64": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.3.3.tgz", - "integrity": "sha512-fj8Mv0HHfD1Rr+4I68+3agJynxDWtBFgicTbSOb9Bke6pIwzGcJ+RX/yHjmiEGFMCavY/dxvem7MyNaJF+wDiw==", - "cpu": [ - "x64" - ], + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.29.7.tgz", + "integrity": "sha512-NCSEJ4sLFU2gqAub45HYh4fus2yQ36rr6ei6vpU7NdoJqCpxvEG8E6eJpscGyXP3VHD2Ny+fSXr04k1hoUrFqA==", "dev": true, - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-linux-arm": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.35.4.tgz", - "integrity": "sha512-7OAS8gI0EReKGVN2HssHlM6umJgxF5VI3xN0p9FA91p/YO+ou5hiNghLdZ5BEHztwaaK5+bLKRf8x/o2L2nk9A==", - "cpu": [ - "arm" - ], + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.29.7.tgz", + "integrity": "sha512-223mNGoTkBiTEWFoK+Q6Go3tueMRclO8vxxxxquNCYuNI4jWOofFKJRRDu6SDrB8Sgo1UEGW9T4GAQ8ZyRso1A==", "dev": true, - "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=20.9.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" }, - "funding": { - "url": "https://opencollective.com/libvips" + "engines": { + "node": ">=6.9.0" }, - "optionalDependencies": { - "@img/sharp-libvips-linux-arm": "1.3.3" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-linux-arm64": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.35.4.tgz", - "integrity": "sha512-De4jpEnAU8Hd5oT0j1G3uL4ZvTuipVMn7YC6vPaJhy6/7EwEae0SVAoBrUMYQbkLGDm85taVWwuPc1a44LTzCQ==", - "cpu": [ - "arm64" - ], + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.29.7.tgz", + "integrity": "sha512-jCfXxSjf94lf4E0hKE0AByxF6F3/pVFqRdUUNkDJhsY0m1ZKjnN6ZYyMeHNpzflxb/0q5b7t3p+BE+SLF1WOtA==", "dev": true, - "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=20.9.0" + "node": ">=6.9.0" }, - "funding": { - "url": "https://opencollective.com/libvips" + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.29.7.tgz", + "integrity": "sha512-OgZ+zoAJgZLUCunsTRQ5LAjOywDv5zzZ2/hQ5aMw1pGXyY2rtE8/chXYUmu3AlVHKpm10KEdG9aMwbI/K76ZGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" }, - "optionalDependencies": { - "@img/sharp-libvips-linux-arm64": "1.3.3" + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@img/sharp-linux-ppc64": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.35.4.tgz", - "integrity": "sha512-2oYZJeIl4kCcMGk4ouZVjnkCtFrpQFlNEtJ6GbxzhHQchwH0NH/qEb9ykmOl29dqwMq+JhFdZn+1ak2FKhI9fQ==", - "cpu": [ - "ppc64" - ], + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.29.7.tgz", + "integrity": "sha512-7D/x/23/d/3VqZ0QA+LGbZMlGwZjztBygSWWWsfTPoQ1oQ6Q1P6Mr3d0kk42XabyUVw+fha3LqdRsFqeKqvCyA==", "dev": true, - "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, "engines": { - "node": ">=20.9.0" + "node": ">=6.9.0" }, - "funding": { - "url": "https://opencollective.com/libvips" + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.29.7.tgz", + "integrity": "sha512-BLOhLht9DOJwIxlmp91wHvkXv1lguuHS3/FwUO8HL1H0u8s4hR1gASVFyilu9iGtcTRYqjTZmlsFFeQletntEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" }, - "optionalDependencies": { - "@img/sharp-libvips-linux-ppc64": "1.3.3" + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@img/sharp-linux-riscv64": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.35.4.tgz", - "integrity": "sha512-cPbNChoRURAWdebDIHSenxRpgEdy7JkPydSnUxRm9VvKD7m0/xVaR/8Fzlu81pk5nHEvHH87UZUA7cTtwnbJSA==", + "node_modules/@babel/preset-env": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.29.7.tgz", + "integrity": "sha512-GYzX36n1nsciIb0uyH0GHwxwtNwPQIcpxSeiVLDtG/B7jB5xXgchnmL1f/jCX5o+pwnaDBtO60ONSJhEBJfxYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.29.7", + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-validator-option": "^7.29.7", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.29.7", + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.29.7", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.29.7", + "@babel/plugin-bugfix-safari-rest-destructuring-rhs-array": "^7.29.7", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.29.7", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.29.7", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-import-assertions": "^7.29.7", + "@babel/plugin-syntax-import-attributes": "^7.29.7", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.29.7", + "@babel/plugin-transform-async-generator-functions": "^7.29.7", + "@babel/plugin-transform-async-to-generator": "^7.29.7", + "@babel/plugin-transform-block-scoped-functions": "^7.29.7", + "@babel/plugin-transform-block-scoping": "^7.29.7", + "@babel/plugin-transform-class-properties": "^7.29.7", + "@babel/plugin-transform-class-static-block": "^7.29.7", + "@babel/plugin-transform-classes": "^7.29.7", + "@babel/plugin-transform-computed-properties": "^7.29.7", + "@babel/plugin-transform-destructuring": "^7.29.7", + "@babel/plugin-transform-dotall-regex": "^7.29.7", + "@babel/plugin-transform-duplicate-keys": "^7.29.7", + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.29.7", + "@babel/plugin-transform-dynamic-import": "^7.29.7", + "@babel/plugin-transform-explicit-resource-management": "^7.29.7", + "@babel/plugin-transform-exponentiation-operator": "^7.29.7", + "@babel/plugin-transform-export-namespace-from": "^7.29.7", + "@babel/plugin-transform-for-of": "^7.29.7", + "@babel/plugin-transform-function-name": "^7.29.7", + "@babel/plugin-transform-json-strings": "^7.29.7", + "@babel/plugin-transform-literals": "^7.29.7", + "@babel/plugin-transform-logical-assignment-operators": "^7.29.7", + "@babel/plugin-transform-member-expression-literals": "^7.29.7", + "@babel/plugin-transform-modules-amd": "^7.29.7", + "@babel/plugin-transform-modules-commonjs": "^7.29.7", + "@babel/plugin-transform-modules-systemjs": "^7.29.7", + "@babel/plugin-transform-modules-umd": "^7.29.7", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.29.7", + "@babel/plugin-transform-new-target": "^7.29.7", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.29.7", + "@babel/plugin-transform-numeric-separator": "^7.29.7", + "@babel/plugin-transform-object-rest-spread": "^7.29.7", + "@babel/plugin-transform-object-super": "^7.29.7", + "@babel/plugin-transform-optional-catch-binding": "^7.29.7", + "@babel/plugin-transform-optional-chaining": "^7.29.7", + "@babel/plugin-transform-parameters": "^7.29.7", + "@babel/plugin-transform-private-methods": "^7.29.7", + "@babel/plugin-transform-private-property-in-object": "^7.29.7", + "@babel/plugin-transform-property-literals": "^7.29.7", + "@babel/plugin-transform-regenerator": "^7.29.7", + "@babel/plugin-transform-regexp-modifiers": "^7.29.7", + "@babel/plugin-transform-reserved-words": "^7.29.7", + "@babel/plugin-transform-shorthand-properties": "^7.29.7", + "@babel/plugin-transform-spread": "^7.29.7", + "@babel/plugin-transform-sticky-regex": "^7.29.7", + "@babel/plugin-transform-template-literals": "^7.29.7", + "@babel/plugin-transform-typeof-symbol": "^7.29.7", + "@babel/plugin-transform-unicode-escapes": "^7.29.7", + "@babel/plugin-transform-unicode-property-regex": "^7.29.7", + "@babel/plugin-transform-unicode-regex": "^7.29.7", + "@babel/plugin-transform-unicode-sets-regex": "^7.29.7", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.15", + "babel-plugin-polyfill-corejs3": "^0.14.0", + "babel-plugin-polyfill-regenerator": "^0.6.6", + "core-js-compat": "^3.48.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.7.tgz", + "integrity": "sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.8.tgz", + "integrity": "sha512-I5z7H3bf/41ktsNVLtpN0wAa336HkqIHQ5BuPLEhTkt1jVSyZpeNKIzTgEWmlxjdg81R0IgUCcaE+Ok3NvrfZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.8", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.8", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.8", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@cloudflare/kv-asset-handler": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@cloudflare/kv-asset-handler/-/kv-asset-handler-0.5.0.tgz", + "integrity": "sha512-jxQYkj8dSIzc0cD6cMMNdOc1UVjqSqu8BZdor5s8cGjW2I8BjODt/kWPVdY+u9zj3ms75Q5qaZgnxUad83+eAg==", + "dev": true, + "license": "MIT OR Apache-2.0", + "engines": { + "node": ">=22.0.0" + } + }, + "node_modules/@cloudflare/unenv-preset": { + "version": "2.16.2", + "resolved": "https://registry.npmjs.org/@cloudflare/unenv-preset/-/unenv-preset-2.16.2.tgz", + "integrity": "sha512-JBP1+Z7ZSNG/d4mRP+y8VC5dka3tZVMLEZRvS+rzQ4DGV1EoxRFQckcJTTkXbHSQiTj0DtNI01Zwb/V2fX0mvQ==", + "dev": true, + "license": "MIT OR Apache-2.0", + "peerDependencies": { + "unenv": "2.0.0-rc.24", + "workerd": ">1.20260305.0 <2.0.0-0" + }, + "peerDependenciesMeta": { + "workerd": { + "optional": true + } + } + }, + "node_modules/@cloudflare/workerd-darwin-64": { + "version": "1.20260923.1", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20260923.1.tgz", + "integrity": "sha512-sFMyHjABspfVxAf9bmcRdYWm3rO5Vrmhb3fLboMB5Lt+Eo+X1Fj4n/3hgMYmXb6P+zW+cjWjZdH1ilE+Ad5kDw==", "cpu": [ - "riscv64" + "x64" ], "dev": true, "license": "Apache-2.0", "optional": true, "os": [ - "linux" + "darwin" ], "engines": { - "node": ">=20.9.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-riscv64": "1.3.3" + "node": ">=16" } }, - "node_modules/@img/sharp-linux-s390x": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.35.4.tgz", - "integrity": "sha512-RY0JFY8Fd6RonCBtHz+DvadaPkXDSI1AUn6yWL9TipqkZ1vY8w8evqdgyDFnkm4/K1ve1TvZiaePP5oSd4+WVQ==", + "node_modules/@cloudflare/workerd-darwin-arm64": { + "version": "1.20260923.1", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20260923.1.tgz", + "integrity": "sha512-t/O1jcuag+JO5VnFblf20B960FU/WSmn/n2Lcy021cBUhWnhApO9yx1VjJ7I4KhS09yXLgC2shHTzB9EnbSQpg==", "cpu": [ - "s390x" + "arm64" ], "dev": true, "license": "Apache-2.0", "optional": true, "os": [ - "linux" + "darwin" ], "engines": { - "node": ">=20.9.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-s390x": "1.3.3" + "node": ">=16" } }, - "node_modules/@img/sharp-linux-x64": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.35.4.tgz", - "integrity": "sha512-9qvvEAuk8k89TfWUoX2htWjbAMX8p+NxCppjpcg5k6xMsjhBQPTsoIh36h9Qde4WRuGpJeYnOjdosDn/cnv+OA==", + "node_modules/@cloudflare/workerd-linux-64": { + "version": "1.20260923.1", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20260923.1.tgz", + "integrity": "sha512-6X9fp5vFBJG0BXrjOcB4yqyqZRtZ/Jx4KRAmEp5FPxuNUbf3n6ogzZvD2s0YS+DC2zNKb0gd1lIiOye7AaGnvA==", "cpu": [ "x64" ], @@ -1306,19 +1706,13 @@ "linux" ], "engines": { - "node": ">=20.9.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-x64": "1.3.3" + "node": ">=16" } }, - "node_modules/@img/sharp-linuxmusl-arm64": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.35.4.tgz", - "integrity": "sha512-KB5jxpfWQTr0nc3xdHtWChdbifHrBGsd2SM62Eyxrl8afikm+f5qGBU75SJIZBT/S1MC8XyacdlXBMSWq6OURA==", + "node_modules/@cloudflare/workerd-linux-arm64": { + "version": "1.20260923.1", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20260923.1.tgz", + "integrity": "sha512-esOXfxhDp2YPjZmMrO3OLa/9qAfa/uXQGwFGDyUWNF3aXkwE8fc6oauZS01UDk8YwuYlxsyjLQIKjJOrzJ2N+g==", "cpu": [ "arm64" ], @@ -1329,19 +1723,13 @@ "linux" ], "engines": { - "node": ">=20.9.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-arm64": "1.3.3" + "node": ">=16" } }, - "node_modules/@img/sharp-linuxmusl-x64": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.35.4.tgz", - "integrity": "sha512-f+eZJZIQNEEd26RPSW+76chwOf1XtA2Y/O+5ocVyLliHkeih3e+jhLVBdNTd2rS3IbNXK8+ug93Vf5ZXtF5Lxg==", + "node_modules/@cloudflare/workerd-windows-64": { + "version": "1.20260923.1", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20260923.1.tgz", + "integrity": "sha512-Hlda2apkBcRtPQD4NnEZiEqKLIhR7au+8skF+tBHBa1jsX1/GfuYEdIR0HJ6He1qkSNkxD/Y0VXo+TNgUc1EUg==", "cpu": [ "x64" ], @@ -1349,421 +1737,308 @@ "license": "Apache-2.0", "optional": true, "os": [ - "linux" + "win32" ], "engines": { - "node": ">=20.9.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-x64": "1.3.3" + "node": ">=16" } }, - "node_modules/@img/sharp-wasm32": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.35.4.tgz", - "integrity": "sha512-zQnl4Kwp7Q6NHsENtU2T/00Zi+w3AQNwz3+UaTyVBy2FpXrzXzGjndpK61onhZjRtRpQXxCTeqw19bVyXOh7jA==", + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", "dev": true, - "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT", - "optional": true, + "license": "MIT", "dependencies": { - "@emnapi/runtime": "^1.11.3" + "@jridgewell/trace-mapping": "0.3.9" }, "engines": { - "node": ">=20.9.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=12" } }, - "node_modules/@img/sharp-webcontainers-wasm32": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-webcontainers-wasm32/-/sharp-webcontainers-wasm32-0.35.4.tgz", - "integrity": "sha512-ESfNkywmCfPNyaZjxooddJQiQ+l/nTpGEOGthxiLnIHXC/CmcBixnfwUleX9mCz9ovrUUvKMap/pm8RYbzfwaA==", - "cpu": [ - "wasm32" - ], + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", "dev": true, - "license": "Apache-2.0", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.11.3.tgz", + "integrity": "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA==", + "dev": true, + "license": "MIT", "optional": true, "dependencies": { - "@img/sharp-wasm32": "0.35.4" - }, - "engines": { - "node": ">=20.9.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "tslib": "^2.4.0" } }, - "node_modules/@img/sharp-win32-arm64": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.35.4.tgz", - "integrity": "sha512-iNdlBX9gLVvqe2I3uIJSIKTq6wckP/DYxZtcqxm09x5Gi24DnFBmPAWZmr60ZyYMG0xlzo6goG3670ar+RXvRw==", + "node_modules/@esbuild/aix-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", + "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", "cpu": [ - "arm64" + "ppc64" ], "dev": true, - "license": "Apache-2.0 AND LGPL-3.0-or-later", + "license": "MIT", "optional": true, "os": [ - "win32" + "aix" ], "engines": { - "node": ">=20.9.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18" } }, - "node_modules/@img/sharp-win32-ia32": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.35.4.tgz", - "integrity": "sha512-kqRsbaa5CS6KHlpxnN7WhE6vAAugXyZButpRdvDWetlv6Qv4N9WTcrWzF7tXfB9T7MsoadqdI8hmwLq6UlLvtw==", + "node_modules/@esbuild/android-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", + "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", "cpu": [ - "ia32" + "arm" ], "dev": true, - "license": "Apache-2.0 AND LGPL-3.0-or-later", + "license": "MIT", "optional": true, "os": [ - "win32" + "android" ], "engines": { - "node": "^20.9.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18" } }, - "node_modules/@img/sharp-win32-x64": { - "version": "0.35.4", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.35.4.tgz", - "integrity": "sha512-XtmnYhBcrORsJ4XJngyzr/EWP0hRZLAZRFaApdKuviyqF78+ylxh2y06ZmtULAMOnObJ3ucpN0AcwSWnMowTRg==", + "node_modules/@esbuild/android-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", + "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", "cpu": [ - "x64" + "arm64" ], "dev": true, - "license": "Apache-2.0 AND LGPL-3.0-or-later", + "license": "MIT", "optional": true, "os": [ - "win32" + "android" ], "engines": { - "node": ">=20.9.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==", - "dev": true, - "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==", - "dev": true, - "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==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.0.0" + "node": ">=18" } }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.6.0.tgz", - "integrity": "sha512-T7jf+5zgsZHwNJ4lvQ7/aezbyk0nNX+zJVWpmHA7VYsEx7a7qr5Rg5IbtJFqkgze5Y2sruq1RUY8Q837Od7iFw==", - "dev": true, - "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==", + "node_modules/@esbuild/android-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", + "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@napi-rs/canvas": { - "version": "0.1.96", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.96.tgz", - "integrity": "sha512-6NNmNxvoJKeucVjxaaRUt3La2i5jShgiAbaY3G/72s1Vp3U06XPrAIxkAjBxpDcamEn/t+WJ4OOlGmvILo4/Ew==", - "license": "MIT", "optional": true, - "workspaces": [ - "e2e/*" + "os": [ + "android" ], "engines": { - "node": ">= 10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" - }, - "optionalDependencies": { - "@napi-rs/canvas-android-arm64": "0.1.96", - "@napi-rs/canvas-darwin-arm64": "0.1.96", - "@napi-rs/canvas-darwin-x64": "0.1.96", - "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.96", - "@napi-rs/canvas-linux-arm64-gnu": "0.1.96", - "@napi-rs/canvas-linux-arm64-musl": "0.1.96", - "@napi-rs/canvas-linux-riscv64-gnu": "0.1.96", - "@napi-rs/canvas-linux-x64-gnu": "0.1.96", - "@napi-rs/canvas-linux-x64-musl": "0.1.96", - "@napi-rs/canvas-win32-arm64-msvc": "0.1.96", - "@napi-rs/canvas-win32-x64-msvc": "0.1.96" + "node": ">=18" } }, - "node_modules/@napi-rs/canvas-android-arm64": { - "version": "0.1.96", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.96.tgz", - "integrity": "sha512-ew1sPrN3dGdZ3L4FoohPfnjq0f9/Jk7o+wP7HkQZokcXgIUD6FIyICEWGhMYzv53j63wUcPvZeAwgewX58/egg==", + "node_modules/@esbuild/darwin-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", + "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ - "android" + "darwin" ], "engines": { - "node": ">= 10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" + "node": ">=18" } }, - "node_modules/@napi-rs/canvas-darwin-arm64": { - "version": "0.1.96", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.96.tgz", - "integrity": "sha512-Q/wOXZ5PzTqpdmA5eUOcegCf4Go/zz3aZ5DlzSeDpOjFmfwMKh8EzLAoweQ+mJVagcHQyzoJhaTEnrO68TNyNg==", + "node_modules/@esbuild/darwin-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", + "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", "cpu": [ - "arm64" + "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ "darwin" ], "engines": { - "node": ">= 10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" + "node": ">=18" } }, - "node_modules/@napi-rs/canvas-darwin-x64": { - "version": "0.1.96", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.96.tgz", - "integrity": "sha512-UrXiQz28tQEvGM1qvyptewOAfmUrrd5+wvi6Rzjj2VprZI8iZ2KIvBD2lTTG1bVF95AbeDeG7PJA0D9sLKaOFA==", + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", + "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", "cpu": [ - "x64" + "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ - "darwin" + "freebsd" ], "engines": { - "node": ">= 10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" + "node": ">=18" } }, - "node_modules/@napi-rs/canvas-linux-arm-gnueabihf": { - "version": "0.1.96", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.96.tgz", - "integrity": "sha512-I90ODxweD8aEP6XKU/NU+biso95MwCtQ2F46dUvhec1HesFi0tq/tAJkYic/1aBSiO/1kGKmSeD1B0duOHhEHQ==", + "node_modules/@esbuild/freebsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", + "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", "cpu": [ - "arm" + "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ - "linux" + "freebsd" ], "engines": { - "node": ">= 10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" + "node": ">=18" } }, - "node_modules/@napi-rs/canvas-linux-arm64-gnu": { - "version": "0.1.96", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.96.tgz", - "integrity": "sha512-Dx/0+RFV++w3PcRy+4xNXkghhXjA5d0Mw1bs95emn5Llinp1vihMaA6WJt3oYv2LAHc36+gnrhIBsPhUyI2SGw==", + "node_modules/@esbuild/linux-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", + "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", "cpu": [ - "arm64" + "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">= 10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" + "node": ">=18" } }, - "node_modules/@napi-rs/canvas-linux-arm64-musl": { - "version": "0.1.96", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.96.tgz", - "integrity": "sha512-UvOi7fii3IE2KDfEfhh8m+LpzSRvhGK7o1eho99M2M0HTik11k3GX+2qgVx9EtujN3/bhFFS1kSO3+vPMaJ0Mg==", + "node_modules/@esbuild/linux-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", + "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">= 10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" + "node": ">=18" } }, - "node_modules/@napi-rs/canvas-linux-riscv64-gnu": { - "version": "0.1.96", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.96.tgz", - "integrity": "sha512-MBSukhGCQ5nRtf9NbFYWOU080yqkZU1PbuH4o1ROvB4CbPl12fchDR35tU83Wz8gWIM9JTn99lBn9DenPIv7Ig==", + "node_modules/@esbuild/linux-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", + "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", "cpu": [ - "riscv64" + "ia32" ], + "dev": true, "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">= 10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" + "node": ">=18" } }, - "node_modules/@napi-rs/canvas-linux-x64-gnu": { - "version": "0.1.96", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.96.tgz", - "integrity": "sha512-I/ccu2SstyKiV3HIeVzyBIWfrJo8cN7+MSQZPnabewWV6hfJ2nY7Df2WqOHmobBRUw84uGR6zfQHsUEio/m5Vg==", + "node_modules/@esbuild/linux-loong64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", + "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", "cpu": [ - "x64" + "loong64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">= 10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" + "node": ">=18" } }, - "node_modules/@napi-rs/canvas-linux-x64-musl": { - "version": "0.1.96", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.96.tgz", - "integrity": "sha512-H3uov7qnTl73GDT4h52lAqpJPsl1tIUyNPWJyhQ6gHakohNqqRq3uf80+NEpzcytKGEOENP1wX3yGwZxhjiWEQ==", + "node_modules/@esbuild/linux-mips64el": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", + "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", "cpu": [ - "x64" + "mips64el" ], + "dev": true, "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">= 10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" + "node": ">=18" } }, - "node_modules/@napi-rs/canvas-win32-arm64-msvc": { - "version": "0.1.96", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-arm64-msvc/-/canvas-win32-arm64-msvc-0.1.96.tgz", - "integrity": "sha512-ATp6Y+djOjYtkfV/VRH7CZ8I1MEtkUQBmKUbuWw5zWEHHqfL0cEcInE4Cxgx7zkNAhEdBbnH8HMVrqNp+/gwxA==", + "node_modules/@esbuild/linux-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", + "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", "cpu": [ - "arm64" + "ppc64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ - "win32" + "linux" ], "engines": { - "node": ">= 10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" + "node": ">=18" } }, - "node_modules/@napi-rs/canvas-win32-x64-msvc": { - "version": "0.1.96", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.96.tgz", - "integrity": "sha512-UYGdTltVd+Z8mcIuoqGmAXXUvwH5CLf2M6mIB5B0/JmX5J041jETjqtSYl7gN+aj3k1by/SG6sS0hAwCqyK7zw==", + "node_modules/@esbuild/linux-riscv64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", + "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", "cpu": [ - "x64" + "riscv64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ - "win32" + "linux" ], "engines": { - "node": ">= 10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" + "node": ">=18" } }, - "node_modules/@napi-rs/lzma-linux-x64-gnu": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/@napi-rs/lzma-linux-x64-gnu/-/lzma-linux-x64-gnu-1.5.1.tgz", - "integrity": "sha512-oTXEIha4SsuXdTA4Iyskj0kpdx2yVXdhd75c2v3xGrHFfVMsbhTPZU/nMPL4sWKo4pBHm3aucLaqGlF696dTyQ==", + "node_modules/@esbuild/linux-s390x": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", + "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", "cpu": [ - "x64" + "s390x" ], "dev": true, "license": "MIT", @@ -1772,81 +2047,64 @@ "linux" ], "engines": { - "node": "^22.20 || ^24.12 || >=25" - } - }, - "node_modules/@pdf-lib/standard-fonts": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@pdf-lib/standard-fonts/-/standard-fonts-1.0.0.tgz", - "integrity": "sha512-hU30BK9IUN/su0Mn9VdlVKsWBS6GyhVfqjwl1FjZN4TxP6cCw0jP2w7V3Hf5uX7M0AZJ16vey9yE0ny7Sa59ZA==", - "license": "MIT", - "dependencies": { - "pako": "^1.0.6" - } - }, - "node_modules/@pdf-lib/upng": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@pdf-lib/upng/-/upng-1.0.1.tgz", - "integrity": "sha512-dQK2FUMQtowVP00mtIksrlZhdFXQZPC+taih1q4CvPZ5vqdxR/LKBaFg0oAfzd1GlHZXXSPdQfzQnt+ViGvEIQ==", - "license": "MIT", - "dependencies": { - "pako": "^1.0.10" + "node": ">=18" } }, - "node_modules/@poppinss/colors": { - "version": "4.1.6", - "resolved": "https://registry.npmjs.org/@poppinss/colors/-/colors-4.1.6.tgz", - "integrity": "sha512-H9xkIdFswbS8n1d6vmRd8+c10t2Qe+rZITbbDHHkQixH5+2x1FDGmi/0K+WgWiqQFKPSlIYB7jlH6Kpfn6Fleg==", + "node_modules/@esbuild/linux-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", + "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", - "dependencies": { - "kleur": "^4.1.5" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "node_modules/@poppinss/dumper": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/@poppinss/dumper/-/dumper-0.6.5.tgz", - "integrity": "sha512-NBdYIb90J7LfOI32dOewKI1r7wnkiH6m920puQ3qHUeZkxNkQiFnXVWoE6YtFSv6QOiPPf7ys6i+HWWecDz7sw==", + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", + "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@poppinss/colors": "^4.1.5", - "@sindresorhus/is": "^7.0.2", - "supports-color": "^10.0.0" + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" } }, - "node_modules/@poppinss/exception": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@poppinss/exception/-/exception-1.2.3.tgz", - "integrity": "sha512-dCED+QRChTVatE9ibtoaxc+WkdzOSjYTKi/+uacHWIsfodVfpsueo3+DKpgU5Px8qXjgmXkSvhXvSCz3fnP9lw==", - "dev": true, - "license": "MIT" - }, - "node_modules/@rolldown/pluginutils": { - "version": "1.0.0-rc.3", - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.3.tgz", - "integrity": "sha512-eybk3TjzzzV97Dlj5c+XrBFW57eTNhzod66y9HrBlzJ6NsCrWCp/2kaPS3K9wJmurBC0Tdw4yPjXKZqlznim3Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.63.5.tgz", - "integrity": "sha512-J25QJU+B78T4FhhBsNpLJyVWOi31mwtpcMwywHmOKH65Q9IWGA81gPj+dnwlhU8wktVriYE+tFAaQgrnJRzAZg==", + "node_modules/@esbuild/netbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", + "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", "cpu": [ - "arm" + "x64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "android" - ] + "netbsd" + ], + "engines": { + "node": ">=18" + } }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.63.5.tgz", - "integrity": "sha512-LDopB3zuZM5Ux9TT2luNEBJW/tYbGU2g1d+VpKk6I+gSKDb+/7sYE6M225gRQt4RbMX6MSwMsVR/phdjVUgRLg==", + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", + "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", "cpu": [ "arm64" ], @@ -1854,41 +2112,33 @@ "license": "MIT", "optional": true, "os": [ - "android" - ] + "openbsd" + ], + "engines": { + "node": ">=18" + } }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.63.5.tgz", - "integrity": "sha512-wlJEERGfeuHeBavCL2qVnNacOK43NDoZM4sjkeRPymd04OAE9T1zBqDJgmZ+CIsPTYKwdzpUC8vmOw84dwY4Tg==", + "node_modules/@esbuild/openbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", + "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", "cpu": [ - "arm64" + "x64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.63.5.tgz", - "integrity": "sha512-4nJJGg5jbo2wwPP4JP+LfEBA3bvP8rU9CLuhp7jWvq9sxEyhjQFTFdrqi+/dHEin/pd8jpT0vcehIpnZtmEdcQ==", - "cpu": [ - "x64" + "openbsd" ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] + "engines": { + "node": ">=18" + } }, - "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.63.5.tgz", - "integrity": "sha512-DrZbyCDF1hneuO6jRbvZ2D7+PIBM6yIwYnJpg2vIk58T+wuFpiaGZrfUr59lDWw45bg+IrpTGLPiNi/Fk4w3Cg==", + "node_modules/@esbuild/openharmony-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", + "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", "cpu": [ "arm64" ], @@ -1896,13 +2146,16 @@ "license": "MIT", "optional": true, "os": [ - "freebsd" - ] + "openharmony" + ], + "engines": { + "node": ">=18" + } }, - "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.63.5.tgz", - "integrity": "sha512-gqfUVMJMB3mehqywxp6hTBFfgtMQykZY19+cfiaYP0toIJLb/1DZRJHVkQQGP13W4TAwfZDWeg1qBcheTRioXQ==", + "node_modules/@esbuild/sunos-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", + "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", "cpu": [ "x64" ], @@ -1910,1333 +2163,4022 @@ "license": "MIT", "optional": true, "os": [ - "freebsd" - ] + "sunos" + ], + "engines": { + "node": ">=18" + } }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.63.5.tgz", - "integrity": "sha512-CFmhpvAwzSaWMlN3VN7UtmoTihlZNzoP0juQib5TQRnYUyDV8dXeWOp29sobWAT6gXl/hQgAClLlEiYozQG3OQ==", + "node_modules/@esbuild/win32-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", + "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", "cpu": [ - "arm" + "arm64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "linux" - ] + "win32" + ], + "engines": { + "node": ">=18" + } }, - "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.63.5.tgz", - "integrity": "sha512-Uc9H8eXCOayV6JLTH5bXKMId6qbhNHa818/BgYjm4jrlq3vZquC9cqyvHBw17xy5Mnj5f+I3gFK5JcEf3hSqrw==", + "node_modules/@esbuild/win32-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", + "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", "cpu": [ - "arm" + "ia32" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "linux" - ] + "win32" + ], + "engines": { + "node": ">=18" + } }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.63.5.tgz", - "integrity": "sha512-VcPr/szv/1BFw112Kt//fxulXt/JPqzzidU84iW68L2DdjnOO8QFUv2zTSYBEPHD6movBD4z+bbr5y60GYM7Jw==", + "node_modules/@esbuild/win32-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", + "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", "cpu": [ - "arm64" + "x64" ], "dev": true, "license": "MIT", "optional": true, "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.63.5.tgz", - "integrity": "sha512-BnxtJ5/91BrIHYIkGrmjz/lbMhqEHt1dPFqIxIFR+jPn0xVc/oUSCtIT089zfp5ufwGDlYz2UC+Fe1SRBpYFbQ==", - "cpu": [ - "arm64" + "win32" ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@ffmpeg/ffmpeg": { + "version": "0.12.15", + "resolved": "https://registry.npmjs.org/@ffmpeg/ffmpeg/-/ffmpeg-0.12.15.tgz", + "integrity": "sha512-1C8Obr4GsN3xw+/1Ww6PFM84wSQAGsdoTuTWPOj2OizsRDLT4CXTaVjPhkw6ARyDus1B9X/L2LiXHqYYsGnRFw==", + "license": "MIT", + "dependencies": { + "@ffmpeg/types": "^0.12.4" + }, + "engines": { + "node": ">=18.x" + } + }, + "node_modules/@ffmpeg/types": { + "version": "0.12.4", + "resolved": "https://registry.npmjs.org/@ffmpeg/types/-/types-0.12.4.tgz", + "integrity": "sha512-k9vJQNBGTxE5AhYDtOYR5rO5fKsspbg51gbcwtbkw2lCdoIILzklulcjJfIDwrtn7XhDeF2M+THwJ2FGrLeV6A==", + "license": "MIT", + "engines": { + "node": ">=16.x" + } + }, + "node_modules/@ffmpeg/util": { + "version": "0.12.2", + "resolved": "https://registry.npmjs.org/@ffmpeg/util/-/util-0.12.2.tgz", + "integrity": "sha512-ouyoW+4JB7WxjeZ2y6KpRvB+dLp7Cp4ro8z0HIVpZVCM7AwFlHa0c4R8Y/a4M3wMqATpYKhC7lSFHQ0T11MEDw==", + "license": "MIT", + "engines": { + "node": ">=18.x" + } + }, + "node_modules/@fontsource-variable/nunito-sans": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@fontsource-variable/nunito-sans/-/nunito-sans-5.3.0.tgz", + "integrity": "sha512-Vk1PSfckNDwgw2yGcsvJP3o/0zEW8Rp6KzbD8Ql/6iRHQshnhhAjt+cSIfAUyp5vQuSlleGHFW2LfYaaex0diw==", + "license": "OFL-1.1", + "funding": { + "url": "https://github.com/sponsors/ayuhito" + } + }, + "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==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ] + "engines": { + "node": ">=18" + } }, - "node_modules/@rollup/rollup-linux-loong64-gnu": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.63.5.tgz", - "integrity": "sha512-LrYcHZwF+fAMNKHYTOQ5osWM4AZF7YF6D+XtsjDyEvljtt11twc+zHVXBLNEjxVSUnKYsOhvVz4Z213eW02COQ==", + "node_modules/@img/sharp-darwin-arm64": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.35.4.tgz", + "integrity": "sha512-Uhfl4V4lhP2nbUVF9+hyH1+luj86f1gUFeo8ALYxFoULoU+G87D43BfeMP8XHsk9boxAnCY/bf2EHwhA7MuGsA==", "cpu": [ - "loong64" + "arm64" ], "dev": true, - "license": "MIT", + "license": "Apache-2.0", "optional": true, "os": [ - "linux" - ] + "darwin" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-arm64": "1.3.3" + } }, - "node_modules/@rollup/rollup-linux-loong64-musl": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.63.5.tgz", - "integrity": "sha512-nj7QKQePAAUpCpJHtg0pR0W/b92A9NO17JS3BAQmHDn/yhmkir2p8llrKY9TOhleKIaSzy1JhxS3T9FVld6coA==", + "node_modules/@img/sharp-darwin-x64": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.35.4.tgz", + "integrity": "sha512-hWniXY3bG5qKpkKrAwPe4y+VTPmf086YQAnkxWh7uA1YrlRouWGa0M0Mxj3ZjnXFkv7/TD1bTy9lGUK26vRvWw==", "cpu": [ - "loong64" + "x64" ], "dev": true, - "license": "MIT", + "license": "Apache-2.0", "optional": true, "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-ppc64-gnu": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.63.5.tgz", - "integrity": "sha512-5ylkX6dWMeBKge9nTU+Rxfb+ZfaCIJ9lRqIFaK0eAMcWp7OJbYnLveLgXmm0VrvuLKb8qIK+mHyH0qu88RM+iA==", - "cpu": [ - "ppc64" + "darwin" ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-x64": "1.3.3" + } + }, + "node_modules/@img/sharp-freebsd-wasm32": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-freebsd-wasm32/-/sharp-freebsd-wasm32-0.35.4.tgz", + "integrity": "sha512-lIsKw/BU+kjB4eZjxrYrZmwOJYi3Ajrv66iAlBmUPyKc3HpnloevB1g3wxGD9P/5BbQ1brBGl65VRRrCvQDEqA==", "dev": true, - "license": "MIT", + "license": "Apache-2.0", "optional": true, "os": [ - "linux" - ] + "freebsd" + ], + "dependencies": { + "@img/sharp-wasm32": "0.35.4" + }, + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } }, - "node_modules/@rollup/rollup-linux-ppc64-musl": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.63.5.tgz", - "integrity": "sha512-oHK4ZHYFDKjZviK34I+NwgfbGxgI7ztrNxj2hPTSSNFgeq1a/lEd7dHV2fdGAuTH4Iym3RHJg+vAbWaWG4B7Zg==", + "node_modules/@img/sharp-libvips-darwin-arm64": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.3.3.tgz", + "integrity": "sha512-suTBPTDGrI9WodccaDdwZItTSaBYASlBk1NSfElSHrUfzu3szG6lvIF58+WiFvnfzuK8ZBFS5zE00PxqxnRiPg==", "cpu": [ - "ppc64" + "arm64" ], "dev": true, - "license": "MIT", + "license": "LGPL-3.0-or-later", "optional": true, "os": [ - "linux" - ] + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.63.5.tgz", - "integrity": "sha512-UcetmHZ6XOXuUByiKZyQmb55ZPr0LABr3Ec/HB9wKZn6CEAFWZkE+hsJErJ9hbPBC7nI0dKuELx7CoV6IM7TMg==", + "node_modules/@img/sharp-libvips-darwin-x64": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.3.3.tgz", + "integrity": "sha512-FVJZ5mITMobmXIz/hPDTw0EintTW5H3WfrxwLqEqjiIihlu+hVRyGrFQ60xl0Lxn7Bt3zdpevPaQi0HEzqz9fw==", "cpu": [ - "riscv64" + "x64" ], "dev": true, - "license": "MIT", + "license": "LGPL-3.0-or-later", "optional": true, "os": [ - "linux" - ] + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } }, - "node_modules/@rollup/rollup-linux-riscv64-musl": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.63.5.tgz", - "integrity": "sha512-C5CmDPQBtvjVo8cgQsBs+w6WB0JLkiixhgi6hVLV11hERWdn/p0XcPU2OUcZzac9BPOFq7SbaHFa8r3SWEysCQ==", + "node_modules/@img/sharp-libvips-linux-arm": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.3.3.tgz", + "integrity": "sha512-3rbU4vqXXc3hY/OiXdl52xZvT0F1yEngWfvqudtPJg/KkyiaQw2DRsFrNzpmLvfavbwOq3qXn36GP8obHRULQA==", + "cpu": [ + "arm" + ], + "dev": true, + "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.3.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.3.3.tgz", + "integrity": "sha512-0DaL0A6Xu6sQSQFwe4iVCrKWU2cCTItnRsYsCdxAMm9NF6twAA9BKnoqy4hqz4+azQ0JHuA26qiUKsf1XJ/v5A==", + "cpu": [ + "arm64" + ], + "dev": true, + "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.3.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.3.3.tgz", + "integrity": "sha512-cdn1OvUBwsXhbC0zSzJnNzf5MZ/mTrobawDvNXBTxe8VtqKAm0sRuEY2Evzovb/w9JMk4TvRxqt1mekSuJz64w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "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.3.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.3.3.tgz", + "integrity": "sha512-HjPVx7yKz+0lqdhDlTw1tt90wamBoxhiXpvl1XZpJLiHH4RCJ5yDTqH+VlYPv2fwFs89JFw4c1IexYOcQUi4IQ==", "cpu": [ "riscv64" ], "dev": true, - "license": "MIT", + "license": "LGPL-3.0-or-later", "optional": true, "os": [ "linux" - ] + ], + "funding": { + "url": "https://opencollective.com/libvips" + } }, - "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.63.5.tgz", - "integrity": "sha512-lHVQHJFKsuuxLMi3MQO9XVL8Tje3JR82CzB+QDKC5NWBcsIWuwsn9uIM5e3lBhI+fF1/s63qnyYqsg65+8rV/w==", + "node_modules/@img/sharp-libvips-linux-s390x": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.3.3.tgz", + "integrity": "sha512-neWLh+3yCNThxnfy3c4BbVBeGgt9aftno+XbT56iK28RgeDs3UOFWviLWlUu0bArYVYJaFDK+RRohbicUNCm8Q==", "cpu": [ "s390x" ], "dev": true, - "license": "MIT", + "license": "LGPL-3.0-or-later", "optional": true, "os": [ "linux" - ] + ], + "funding": { + "url": "https://opencollective.com/libvips" + } }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.63.5.tgz", - "integrity": "sha512-3W9bTFcQNJn71cSJVM9RKIiZOy8DO/XLDii8Uv/Pm6WKqDRj7JV3ZfuXIEfyuy5LXpIzAbB/1M4Ukp9GKNa7nA==", + "node_modules/@img/sharp-libvips-linux-x64": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.3.3.tgz", + "integrity": "sha512-4vKmvAst9nrowcqquKFAyZJUDolUaIp8uRiN0mWFguJ1IplC9/pitXtlnnlU4aa/eJw3J7i67V+pwUL+wZGdsA==", + "cpu": [ + "x64" + ], + "dev": true, + "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.3.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.3.3.tgz", + "integrity": "sha512-Y9kQaLMuNoB0bPYOOdcZMaseNrFpPodIWWMrx+CZyydf2xn68j9WYc6sWWRrDwNkzCQjKYfc68L7jKjGlHMibw==", + "cpu": [ + "arm64" + ], + "dev": true, + "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.3.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.3.3.tgz", + "integrity": "sha512-fj8Mv0HHfD1Rr+4I68+3agJynxDWtBFgicTbSOb9Bke6pIwzGcJ+RX/yHjmiEGFMCavY/dxvem7MyNaJF+wDiw==", "cpu": [ "x64" ], "dev": true, + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-linux-arm": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.35.4.tgz", + "integrity": "sha512-7OAS8gI0EReKGVN2HssHlM6umJgxF5VI3xN0p9FA91p/YO+ou5hiNghLdZ5BEHztwaaK5+bLKRf8x/o2L2nk9A==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm": "1.3.3" + } + }, + "node_modules/@img/sharp-linux-arm64": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.35.4.tgz", + "integrity": "sha512-De4jpEnAU8Hd5oT0j1G3uL4ZvTuipVMn7YC6vPaJhy6/7EwEae0SVAoBrUMYQbkLGDm85taVWwuPc1a44LTzCQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm64": "1.3.3" + } + }, + "node_modules/@img/sharp-linux-ppc64": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.35.4.tgz", + "integrity": "sha512-2oYZJeIl4kCcMGk4ouZVjnkCtFrpQFlNEtJ6GbxzhHQchwH0NH/qEb9ykmOl29dqwMq+JhFdZn+1ak2FKhI9fQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-ppc64": "1.3.3" + } + }, + "node_modules/@img/sharp-linux-riscv64": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.35.4.tgz", + "integrity": "sha512-cPbNChoRURAWdebDIHSenxRpgEdy7JkPydSnUxRm9VvKD7m0/xVaR/8Fzlu81pk5nHEvHH87UZUA7cTtwnbJSA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-riscv64": "1.3.3" + } + }, + "node_modules/@img/sharp-linux-s390x": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.35.4.tgz", + "integrity": "sha512-RY0JFY8Fd6RonCBtHz+DvadaPkXDSI1AUn6yWL9TipqkZ1vY8w8evqdgyDFnkm4/K1ve1TvZiaePP5oSd4+WVQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-s390x": "1.3.3" + } + }, + "node_modules/@img/sharp-linux-x64": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.35.4.tgz", + "integrity": "sha512-9qvvEAuk8k89TfWUoX2htWjbAMX8p+NxCppjpcg5k6xMsjhBQPTsoIh36h9Qde4WRuGpJeYnOjdosDn/cnv+OA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-x64": "1.3.3" + } + }, + "node_modules/@img/sharp-linuxmusl-arm64": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.35.4.tgz", + "integrity": "sha512-KB5jxpfWQTr0nc3xdHtWChdbifHrBGsd2SM62Eyxrl8afikm+f5qGBU75SJIZBT/S1MC8XyacdlXBMSWq6OURA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-arm64": "1.3.3" + } + }, + "node_modules/@img/sharp-linuxmusl-x64": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.35.4.tgz", + "integrity": "sha512-f+eZJZIQNEEd26RPSW+76chwOf1XtA2Y/O+5ocVyLliHkeih3e+jhLVBdNTd2rS3IbNXK8+ug93Vf5ZXtF5Lxg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-x64": "1.3.3" + } + }, + "node_modules/@img/sharp-wasm32": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.35.4.tgz", + "integrity": "sha512-zQnl4Kwp7Q6NHsENtU2T/00Zi+w3AQNwz3+UaTyVBy2FpXrzXzGjndpK61onhZjRtRpQXxCTeqw19bVyXOh7jA==", + "dev": true, + "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT", + "optional": true, + "dependencies": { + "@emnapi/runtime": "^1.11.3" + }, + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-webcontainers-wasm32": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-webcontainers-wasm32/-/sharp-webcontainers-wasm32-0.35.4.tgz", + "integrity": "sha512-ESfNkywmCfPNyaZjxooddJQiQ+l/nTpGEOGthxiLnIHXC/CmcBixnfwUleX9mCz9ovrUUvKMap/pm8RYbzfwaA==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@img/sharp-wasm32": "0.35.4" + }, + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-arm64": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.35.4.tgz", + "integrity": "sha512-iNdlBX9gLVvqe2I3uIJSIKTq6wckP/DYxZtcqxm09x5Gi24DnFBmPAWZmr60ZyYMG0xlzo6goG3670ar+RXvRw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-ia32": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.35.4.tgz", + "integrity": "sha512-kqRsbaa5CS6KHlpxnN7WhE6vAAugXyZButpRdvDWetlv6Qv4N9WTcrWzF7tXfB9T7MsoadqdI8hmwLq6UlLvtw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-x64": { + "version": "0.35.4", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.35.4.tgz", + "integrity": "sha512-XtmnYhBcrORsJ4XJngyzr/EWP0hRZLAZRFaApdKuviyqF78+ylxh2y06ZmtULAMOnObJ3ucpN0AcwSWnMowTRg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@isaacs/cliui": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-9.0.0.tgz", + "integrity": "sha512-AokJm4tuBHillT+FpMtxQ60n8ObyXBatq7jD2/JA9dxbDDokKQm8KMht5ibGzLVU9IJDIKK4TPKgMHEYMn3lMg==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "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==", + "dev": true, + "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==", + "dev": true, + "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==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.11", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.11.tgz", + "integrity": "sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.6.0.tgz", + "integrity": "sha512-T7jf+5zgsZHwNJ4lvQ7/aezbyk0nNX+zJVWpmHA7VYsEx7a7qr5Rg5IbtJFqkgze5Y2sruq1RUY8Q837Od7iFw==", + "dev": true, + "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==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@jsquash/avif": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@jsquash/avif/-/avif-2.1.1.tgz", + "integrity": "sha512-LMRxd0fMgfCLtobDh0/sFYJMMiRJTNYSEEWvRDKXlAeZ08t3gI5V+1thIT0XjXJ+SVG7Zug9B0XPyx0Ti5VRNA==", + "license": "Apache-2.0", + "dependencies": { + "wasm-feature-detect": "^1.2.11" + } + }, + "node_modules/@napi-rs/canvas": { + "version": "0.1.96", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.96.tgz", + "integrity": "sha512-6NNmNxvoJKeucVjxaaRUt3La2i5jShgiAbaY3G/72s1Vp3U06XPrAIxkAjBxpDcamEn/t+WJ4OOlGmvILo4/Ew==", + "license": "MIT", + "optional": true, + "workspaces": [ + "e2e/*" + ], + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + }, + "optionalDependencies": { + "@napi-rs/canvas-android-arm64": "0.1.96", + "@napi-rs/canvas-darwin-arm64": "0.1.96", + "@napi-rs/canvas-darwin-x64": "0.1.96", + "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.96", + "@napi-rs/canvas-linux-arm64-gnu": "0.1.96", + "@napi-rs/canvas-linux-arm64-musl": "0.1.96", + "@napi-rs/canvas-linux-riscv64-gnu": "0.1.96", + "@napi-rs/canvas-linux-x64-gnu": "0.1.96", + "@napi-rs/canvas-linux-x64-musl": "0.1.96", + "@napi-rs/canvas-win32-arm64-msvc": "0.1.96", + "@napi-rs/canvas-win32-x64-msvc": "0.1.96" + } + }, + "node_modules/@napi-rs/canvas-android-arm64": { + "version": "0.1.96", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.96.tgz", + "integrity": "sha512-ew1sPrN3dGdZ3L4FoohPfnjq0f9/Jk7o+wP7HkQZokcXgIUD6FIyICEWGhMYzv53j63wUcPvZeAwgewX58/egg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@napi-rs/canvas-darwin-arm64": { + "version": "0.1.96", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.96.tgz", + "integrity": "sha512-Q/wOXZ5PzTqpdmA5eUOcegCf4Go/zz3aZ5DlzSeDpOjFmfwMKh8EzLAoweQ+mJVagcHQyzoJhaTEnrO68TNyNg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@napi-rs/canvas-darwin-x64": { + "version": "0.1.96", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.96.tgz", + "integrity": "sha512-UrXiQz28tQEvGM1qvyptewOAfmUrrd5+wvi6Rzjj2VprZI8iZ2KIvBD2lTTG1bVF95AbeDeG7PJA0D9sLKaOFA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@napi-rs/canvas-linux-arm-gnueabihf": { + "version": "0.1.96", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.96.tgz", + "integrity": "sha512-I90ODxweD8aEP6XKU/NU+biso95MwCtQ2F46dUvhec1HesFi0tq/tAJkYic/1aBSiO/1kGKmSeD1B0duOHhEHQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@napi-rs/canvas-linux-arm64-gnu": { + "version": "0.1.96", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.96.tgz", + "integrity": "sha512-Dx/0+RFV++w3PcRy+4xNXkghhXjA5d0Mw1bs95emn5Llinp1vihMaA6WJt3oYv2LAHc36+gnrhIBsPhUyI2SGw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@napi-rs/canvas-linux-arm64-musl": { + "version": "0.1.96", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.96.tgz", + "integrity": "sha512-UvOi7fii3IE2KDfEfhh8m+LpzSRvhGK7o1eho99M2M0HTik11k3GX+2qgVx9EtujN3/bhFFS1kSO3+vPMaJ0Mg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@napi-rs/canvas-linux-riscv64-gnu": { + "version": "0.1.96", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.96.tgz", + "integrity": "sha512-MBSukhGCQ5nRtf9NbFYWOU080yqkZU1PbuH4o1ROvB4CbPl12fchDR35tU83Wz8gWIM9JTn99lBn9DenPIv7Ig==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@napi-rs/canvas-linux-x64-gnu": { + "version": "0.1.96", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.96.tgz", + "integrity": "sha512-I/ccu2SstyKiV3HIeVzyBIWfrJo8cN7+MSQZPnabewWV6hfJ2nY7Df2WqOHmobBRUw84uGR6zfQHsUEio/m5Vg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@napi-rs/canvas-linux-x64-musl": { + "version": "0.1.96", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.96.tgz", + "integrity": "sha512-H3uov7qnTl73GDT4h52lAqpJPsl1tIUyNPWJyhQ6gHakohNqqRq3uf80+NEpzcytKGEOENP1wX3yGwZxhjiWEQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@napi-rs/canvas-win32-arm64-msvc": { + "version": "0.1.96", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-arm64-msvc/-/canvas-win32-arm64-msvc-0.1.96.tgz", + "integrity": "sha512-ATp6Y+djOjYtkfV/VRH7CZ8I1MEtkUQBmKUbuWw5zWEHHqfL0cEcInE4Cxgx7zkNAhEdBbnH8HMVrqNp+/gwxA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@napi-rs/canvas-win32-x64-msvc": { + "version": "0.1.96", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.96.tgz", + "integrity": "sha512-UYGdTltVd+Z8mcIuoqGmAXXUvwH5CLf2M6mIB5B0/JmX5J041jETjqtSYl7gN+aj3k1by/SG6sS0hAwCqyK7zw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@napi-rs/lzma-linux-x64-gnu": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@napi-rs/lzma-linux-x64-gnu/-/lzma-linux-x64-gnu-1.5.1.tgz", + "integrity": "sha512-oTXEIha4SsuXdTA4Iyskj0kpdx2yVXdhd75c2v3xGrHFfVMsbhTPZU/nMPL4sWKo4pBHm3aucLaqGlF696dTyQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^22.20 || ^24.12 || >=25" + } + }, + "node_modules/@pdf-lib/standard-fonts": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@pdf-lib/standard-fonts/-/standard-fonts-1.0.0.tgz", + "integrity": "sha512-hU30BK9IUN/su0Mn9VdlVKsWBS6GyhVfqjwl1FjZN4TxP6cCw0jP2w7V3Hf5uX7M0AZJ16vey9yE0ny7Sa59ZA==", + "license": "MIT", + "dependencies": { + "pako": "^1.0.6" + } + }, + "node_modules/@pdf-lib/upng": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@pdf-lib/upng/-/upng-1.0.1.tgz", + "integrity": "sha512-dQK2FUMQtowVP00mtIksrlZhdFXQZPC+taih1q4CvPZ5vqdxR/LKBaFg0oAfzd1GlHZXXSPdQfzQnt+ViGvEIQ==", + "license": "MIT", + "dependencies": { + "pako": "^1.0.10" + } + }, + "node_modules/@poppinss/colors": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@poppinss/colors/-/colors-4.1.6.tgz", + "integrity": "sha512-H9xkIdFswbS8n1d6vmRd8+c10t2Qe+rZITbbDHHkQixH5+2x1FDGmi/0K+WgWiqQFKPSlIYB7jlH6Kpfn6Fleg==", + "dev": true, + "license": "MIT", + "dependencies": { + "kleur": "^4.1.5" + } + }, + "node_modules/@poppinss/dumper": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@poppinss/dumper/-/dumper-0.6.5.tgz", + "integrity": "sha512-NBdYIb90J7LfOI32dOewKI1r7wnkiH6m920puQ3qHUeZkxNkQiFnXVWoE6YtFSv6QOiPPf7ys6i+HWWecDz7sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@poppinss/colors": "^4.1.5", + "@sindresorhus/is": "^7.0.2", + "supports-color": "^10.0.0" + } + }, + "node_modules/@poppinss/exception": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@poppinss/exception/-/exception-1.2.3.tgz", + "integrity": "sha512-dCED+QRChTVatE9ibtoaxc+WkdzOSjYTKi/+uacHWIsfodVfpsueo3+DKpgU5Px8qXjgmXkSvhXvSCz3fnP9lw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.3.tgz", + "integrity": "sha512-eybk3TjzzzV97Dlj5c+XrBFW57eTNhzod66y9HrBlzJ6NsCrWCp/2kaPS3K9wJmurBC0Tdw4yPjXKZqlznim3Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/plugin-babel": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-6.1.0.tgz", + "integrity": "sha512-dFZNuFD2YRcoomP4oYf+DvQNSUA9ih+A3vUqopQx5EdtPGo3WBnQcI/S8pwpz91UsGfL0HsMSOlaMld8HrbubA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@rollup/pluginutils": "^5.0.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "@types/babel__core": "^7.1.9", + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "@types/babel__core": { + "optional": true + }, + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "16.0.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-16.0.3.tgz", + "integrity": "sha512-lUYM3UBGuM93CnMPG1YocWu7X802BrNF3jW2zny5gQyLQgRFJhV1Sq0Zi74+dh/6NBx1DxFC4b4GXg9wUCG5Qg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.78.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-replace": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-6.0.3.tgz", + "integrity": "sha512-J4RZarRvQAm5IF0/LwUUg+obsm+xZhYnbMXmXROyoSE1ATJe3oXSb9L5MMppdxP2ylNSjv6zFBwKYjcKMucVfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "magic-string": "^0.30.3" + }, + "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/plugin-terser": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-terser/-/plugin-terser-1.0.0.tgz", + "integrity": "sha512-FnCxhTBx6bMOYQrar6C8h3scPt8/JwIzw3+AJ2K++6guogH5fYaIFia+zZuhqv0eo1RN7W1Pz630SyvLbDjhtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "serialize-javascript": "^7.0.3", + "smob": "^1.0.0", + "terser": "^5.17.4" + }, + "engines": { + "node": ">=20.0.0" + }, + "peerDependencies": { + "rollup": "^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "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==", + "dev": true, + "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/pluginutils/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.63.5.tgz", + "integrity": "sha512-J25QJU+B78T4FhhBsNpLJyVWOi31mwtpcMwywHmOKH65Q9IWGA81gPj+dnwlhU8wktVriYE+tFAaQgrnJRzAZg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.63.5.tgz", + "integrity": "sha512-LDopB3zuZM5Ux9TT2luNEBJW/tYbGU2g1d+VpKk6I+gSKDb+/7sYE6M225gRQt4RbMX6MSwMsVR/phdjVUgRLg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.63.5.tgz", + "integrity": "sha512-wlJEERGfeuHeBavCL2qVnNacOK43NDoZM4sjkeRPymd04OAE9T1zBqDJgmZ+CIsPTYKwdzpUC8vmOw84dwY4Tg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.63.5.tgz", + "integrity": "sha512-4nJJGg5jbo2wwPP4JP+LfEBA3bvP8rU9CLuhp7jWvq9sxEyhjQFTFdrqi+/dHEin/pd8jpT0vcehIpnZtmEdcQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.63.5.tgz", + "integrity": "sha512-DrZbyCDF1hneuO6jRbvZ2D7+PIBM6yIwYnJpg2vIk58T+wuFpiaGZrfUr59lDWw45bg+IrpTGLPiNi/Fk4w3Cg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.63.5.tgz", + "integrity": "sha512-gqfUVMJMB3mehqywxp6hTBFfgtMQykZY19+cfiaYP0toIJLb/1DZRJHVkQQGP13W4TAwfZDWeg1qBcheTRioXQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.63.5.tgz", + "integrity": "sha512-CFmhpvAwzSaWMlN3VN7UtmoTihlZNzoP0juQib5TQRnYUyDV8dXeWOp29sobWAT6gXl/hQgAClLlEiYozQG3OQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.63.5.tgz", + "integrity": "sha512-Uc9H8eXCOayV6JLTH5bXKMId6qbhNHa818/BgYjm4jrlq3vZquC9cqyvHBw17xy5Mnj5f+I3gFK5JcEf3hSqrw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.63.5.tgz", + "integrity": "sha512-VcPr/szv/1BFw112Kt//fxulXt/JPqzzidU84iW68L2DdjnOO8QFUv2zTSYBEPHD6movBD4z+bbr5y60GYM7Jw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.63.5.tgz", + "integrity": "sha512-BnxtJ5/91BrIHYIkGrmjz/lbMhqEHt1dPFqIxIFR+jPn0xVc/oUSCtIT089zfp5ufwGDlYz2UC+Fe1SRBpYFbQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.63.5.tgz", + "integrity": "sha512-LrYcHZwF+fAMNKHYTOQ5osWM4AZF7YF6D+XtsjDyEvljtt11twc+zHVXBLNEjxVSUnKYsOhvVz4Z213eW02COQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.63.5.tgz", + "integrity": "sha512-nj7QKQePAAUpCpJHtg0pR0W/b92A9NO17JS3BAQmHDn/yhmkir2p8llrKY9TOhleKIaSzy1JhxS3T9FVld6coA==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.63.5.tgz", + "integrity": "sha512-5ylkX6dWMeBKge9nTU+Rxfb+ZfaCIJ9lRqIFaK0eAMcWp7OJbYnLveLgXmm0VrvuLKb8qIK+mHyH0qu88RM+iA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.63.5.tgz", + "integrity": "sha512-oHK4ZHYFDKjZviK34I+NwgfbGxgI7ztrNxj2hPTSSNFgeq1a/lEd7dHV2fdGAuTH4Iym3RHJg+vAbWaWG4B7Zg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.63.5.tgz", + "integrity": "sha512-UcetmHZ6XOXuUByiKZyQmb55ZPr0LABr3Ec/HB9wKZn6CEAFWZkE+hsJErJ9hbPBC7nI0dKuELx7CoV6IM7TMg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.63.5.tgz", + "integrity": "sha512-C5CmDPQBtvjVo8cgQsBs+w6WB0JLkiixhgi6hVLV11hERWdn/p0XcPU2OUcZzac9BPOFq7SbaHFa8r3SWEysCQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.63.5.tgz", + "integrity": "sha512-lHVQHJFKsuuxLMi3MQO9XVL8Tje3JR82CzB+QDKC5NWBcsIWuwsn9uIM5e3lBhI+fF1/s63qnyYqsg65+8rV/w==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.63.5.tgz", + "integrity": "sha512-3W9bTFcQNJn71cSJVM9RKIiZOy8DO/XLDii8Uv/Pm6WKqDRj7JV3ZfuXIEfyuy5LXpIzAbB/1M4Ukp9GKNa7nA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.63.5.tgz", + "integrity": "sha512-VDC7rRJlee/scpki96GZ27Omf6yU87s1YXwVTpjE5841faVlDYYT565rgfmoR1U0sqL7z5ivQSDjcsF6VRXyBA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.63.5.tgz", + "integrity": "sha512-z86Ok2p4pTdv5xqCKZsTooO7yBEiaJR/HzU3Wx8RmWsPoLppnMKROhJusQob8B3IE1ghC343kUW9rC2r+Wf3ig==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.63.5.tgz", + "integrity": "sha512-IzQmj+xXwQFGhMAMKMQVXkMwMZN3TqkJgAE0nSsqvVwWWciP4AIPMmWRqOQ2GfX7TUDZr+xqGFcBS36CRPGw0g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.63.5.tgz", + "integrity": "sha512-F6qpTaPc9bwBH85kjy0/BLmLSW1uv7AoOXCoRIkg2arlgCYlWYcAbiMkvZuAcaWk9TpCRG//okznLAqLGshkMw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.63.5.tgz", + "integrity": "sha512-igoDsTFhhwECBeGbUuLeIk7t8Y1apa+cs6mDWpx2EZ0ch7oEQgzHbFUXN9euoHekCAQzXdXApAGkV6jznS7tWw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.63.5.tgz", + "integrity": "sha512-U3teMeMbXFmaM5D+OTJpsOXd+wV/qftIeYF9kBKL4v73641qyJmoXFtA28DQLsnmlyayEsTe72xpLHrArq6vHw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.63.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.63.5.tgz", + "integrity": "sha512-ypfC34F3RKXvCXBglGqGMsUSMKlgwd1HX9AOAlx9RoZZ6GaI42YHVeKpzg3JG+wpBUJYTG+NNZhqbDWL8tBZkw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@sindresorhus/is": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-7.2.0.tgz", + "integrity": "sha512-P1Cz1dWaFfR4IR+U13mqqiGsLFf1KbayybWwdd2vfctdV6hDpUkgCY0nKOLLTMSoRd/jJNjtbqzf13K8DCCXQw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@speed-highlight/core": { + "version": "1.2.24", + "resolved": "https://registry.npmjs.org/@speed-highlight/core/-/core-1.2.24.tgz", + "integrity": "sha512-qeW2e1l78afw8VhRPfPQ1Gjj+KU5XFQ/OFV5ti6eTa9bruO7mJyZtA4vw0ofqmA3tKCkROE9xLk3VZoeRc98nw==", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/@tailwindcss/node": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.3.3.tgz", + "integrity": "sha512-/T8IKEsf9VTU6tLjgC7+sv2mOPtQxzE2jMw7u4Tt40Tx+QSZxpzh95/H6cMKoja9XuW7iMdLJYBB0o9G1CaAgg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "enhanced-resolve": "^5.24.1", + "jiti": "^2.7.0", + "lightningcss": "1.32.0", + "magic-string": "^0.30.21", + "source-map-js": "^1.2.1", + "tailwindcss": "4.3.3" + } + }, + "node_modules/@tailwindcss/oxide": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.3.3.tgz", + "integrity": "sha512-krXjAikiaFSPaK/FkAQT5UTx3VormQaiZ5hBFlJZ9UFQGB/rwg1MZIhHAG9smMQRTdyJxP6Qt5MwMtdyU5FWrA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 20" + }, + "optionalDependencies": { + "@tailwindcss/oxide-android-arm64": "4.3.3", + "@tailwindcss/oxide-darwin-arm64": "4.3.3", + "@tailwindcss/oxide-darwin-x64": "4.3.3", + "@tailwindcss/oxide-freebsd-x64": "4.3.3", + "@tailwindcss/oxide-linux-arm-gnueabihf": "4.3.3", + "@tailwindcss/oxide-linux-arm64-gnu": "4.3.3", + "@tailwindcss/oxide-linux-arm64-musl": "4.3.3", + "@tailwindcss/oxide-linux-x64-gnu": "4.3.3", + "@tailwindcss/oxide-linux-x64-musl": "4.3.3", + "@tailwindcss/oxide-wasm32-wasi": "4.3.3", + "@tailwindcss/oxide-win32-arm64-msvc": "4.3.3", + "@tailwindcss/oxide-win32-x64-msvc": "4.3.3" + } + }, + "node_modules/@tailwindcss/oxide-android-arm64": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.3.3.tgz", + "integrity": "sha512-Y85A2gmPSkl5Ve5qR86GL4HT509cFqQh1aes9p3sSkyTPwt0Pppf3GkwGe4JPACcRYjgJIEhQgM6dBClnr0NYw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-darwin-arm64": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.3.3.tgz", + "integrity": "sha512-BiaWatpBcERQFDlOjRDpIVXuFK5PJez5SA4JMg6VYZdBYU+qKfV/vqjcIs+IYmtitf1xYQZTwXvU/8y4lfZUGw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-darwin-x64": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.3.3.tgz", + "integrity": "sha512-fAeUqfV5ndhxRwai8cXGzdLvul9utWOmeTkv69unv4ZXixjn61Z+p9lCWdwOwA3TYboG3BwdVuN/RDjhBRl0mw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-freebsd-x64": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.3.3.tgz", + "integrity": "sha512-iyf5bV6+wnAlflVeEy7R25dupxTNECZN5QMI0qNT6eT+EgaGdZcKhGkr5SdoaWiLJ3spLqIY9VCeSGrwmtg4kw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.3.3.tgz", + "integrity": "sha512-aAYUprJAJQWWbRrPvtjdroZ56Md+JM8pMiopS6xGEwDfLhqj+2ver2p4nU4Mb3CRqcMmNBjo8KkUgcxhkzVQGQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.3.3.tgz", + "integrity": "sha512-nDxldcEENOxZRzC2uu9jrutZdAAQtb+8WWDCSnWL1zvBk1+FN+x6MtDViPB5AJMfttVCUhehGWus3XBPgatM/w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-musl": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.3.3.tgz", + "integrity": "sha512-Md44bD6veX/PC5iyF8cDVnw4HBIANZepRZZ7a8DQOvkfo5WUBwcp6iAuCUz23u+4SUkhJlD3eL7hNdW8ezd/kA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-gnu": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.3.3.tgz", + "integrity": "sha512-tx7us1muwOKAKWao2v/GaafFeQboE6aj88vC6ziN2NCGcRm8gWUhwjzg+YdVB1e4boAtdtma4L43onunI6NS4w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-musl": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.3.3.tgz", + "integrity": "sha512-SJxX60smvHgasZoBy11dX6YRjXJFovwWBoedhbQPOBzgFWBHGB+TVPWB9BxzR7TTxU8FQZAI2AyiNCMzFm8Img==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.3.3.tgz", + "integrity": "sha512-jx1+rPhY/5Ympkktd656HBWEBLxP7dH06losBLjjf5vgCODXvi9KhtftWcMIwTFIDqBr7cRnQkdLnAG+IOlGvQ==", + "bundleDependencies": [ + "@napi-rs/wasm-runtime", + "@emnapi/core", + "@emnapi/runtime", + "@tybys/wasm-util", + "@emnapi/wasi-threads", + "tslib" + ], + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.11.1", + "@emnapi/runtime": "^1.11.1", + "@emnapi/wasi-threads": "^1.2.2", + "@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.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.3.3.tgz", + "integrity": "sha512-3rc292Ca2ceK6Ulcc/bAVnTs/3nDtoPhyEKlgPv+yQJQi/JS/AMJlqzxvlDacL1nekbrcf6bTqp/jV4qgnPxNQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-win32-x64-msvc": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.3.3.tgz", + "integrity": "sha512-yJ0pwIVc/nYeGoV02WtsN8KYyLQv7kyI2wDnkezyJlGGjkd4QLwDGAwl47YpPJeuI0M0ObaXGSPjvWDPeTPggw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/vite": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/vite/-/vite-4.3.3.tgz", + "integrity": "sha512-yYU8cogLeSh/ms2jh8Fj7jaba/EWa7Ja6GoUqYZaraEuCI5YS6ms6ObZgjjedm+jm6XZjdNRWBpPP6Z86oOxcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@tailwindcss/node": "4.3.3", + "@tailwindcss/oxide": "4.3.3", + "tailwindcss": "4.3.3" + }, + "peerDependencies": { + "vite": "^5.2.0 || ^6 || ^7 || ^8" + } + }, + "node_modules/@trickfilm400/rollup-plugin-off-main-thread": { + "version": "3.0.0-pre1", + "resolved": "https://registry.npmjs.org/@trickfilm400/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-3.0.0-pre1.tgz", + "integrity": "sha512-/67zpWDBLV+oYAEL682s1ktXL0HgqX76f6gaVGkGnVZlBbm1zd0v4Bz8MFF2GGhoX9rvfq3KSQHubFHwa6w6/Q==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "ejs": "^3.1.10", + "json5": "^2.2.3", + "magic-string": "^0.30.21", + "string.prototype.matchall": "^4.0.12" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", + "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.2" + } + }, + "node_modules/@types/chai": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.2.3.tgz", + "integrity": "sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/deep-eql": "*", + "assertion-error": "^2.0.1" + } + }, + "node_modules/@types/deep-eql": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz", + "integrity": "sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==", + "dev": true, + "license": "MIT" + }, + "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==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "22.19.15", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.15.tgz", + "integrity": "sha512-F0R/h2+dsy5wJAUe3tAU6oqa2qbWY5TpNfL/RGmo1y38hiyO1w3x2jPtt76wmuaJI4DQnOBu21cNXQ2STIUUWg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/trusted-types": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@vitejs/plugin-react": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-5.2.0.tgz", + "integrity": "sha512-YmKkfhOAi3wsB1PhJq5Scj3GXMn3WvtQ/JC0xoopuHoXSdmtdStOpFrYaT1kie2YgFBcIe64ROzMYRjCrYOdYw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.29.0", + "@babel/plugin-transform-react-jsx-self": "^7.27.1", + "@babel/plugin-transform-react-jsx-source": "^7.27.1", + "@rolldown/pluginutils": "1.0.0-rc.3", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.18.0" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@vitest/expect": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.2.7.tgz", + "integrity": "sha512-E8eBXaKibuvH2pSZErOjdVb5vF4PbKYcrnluBTYxEk1l/VhhwZg1kZQsdtjq+CsF5CFydf2Rdkz7jDHKSisi3w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/chai": "^5.2.2", + "@vitest/spy": "3.2.7", + "@vitest/utils": "3.2.7", + "chai": "^5.2.0", + "tinyrainbow": "^2.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/mocker": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.2.7.tgz", + "integrity": "sha512-Trr0hYO9CM3Wj6ksWHRhK9IZpIY6wTMO5u/MqXurMxT57sWBaOPEtP3Oq60ihZuh5JsiagKfz95OcxdEP6dBrA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/spy": "3.2.7", + "estree-walker": "^3.0.3", + "magic-string": "^0.30.17" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "msw": "^2.4.9", + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0" + }, + "peerDependenciesMeta": { + "msw": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@vitest/pretty-format": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.2.7.tgz", + "integrity": "sha512-KUHlwqVu0sRlhCdyPdQ/wBoTfRahjUky1MubOmYw9fWfIZy1gNoHpuaaQBPAaMaVYdQYHJLurzj8ECCj5OwTqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "tinyrainbow": "^2.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/runner": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.2.7.tgz", + "integrity": "sha512-sB9y4ovltoQP+WaUPwmSxO9WIg9Ig694Di5PalVPsYHklAdE027mehpWF2SQSVq+k6sFgaivbTjTJwZLSHbedA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/utils": "3.2.7", + "pathe": "^2.0.3", + "strip-literal": "^3.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/snapshot": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.2.7.tgz", + "integrity": "sha512-7C+MwShwtBSI5Buwoyg3s/iY1eHL9PKAf+O1wVh/TdnjXUtkoL/9YQtre90i4MtNXM6edP1wJ2zOBpfCyhIS7g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/pretty-format": "3.2.7", + "magic-string": "^0.30.17", + "pathe": "^2.0.3" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/spy": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.2.7.tgz", + "integrity": "sha512-Q2eQGI6d2L/hBtZ0qNuKcAGid68XK6cv1xsoaIma6PaJhHPoqcEJhYpXZ/5myCMqkNgtP6UKuBhbc0nHKnrkuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "tinyspy": "^4.0.3" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/utils": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.2.7.tgz", + "integrity": "sha512-x6BDOd7dyo3PFLY3I9/HJ25X/6OurhGXk2/B9gOZNPF7XDVjeBK4k01lQE5uvDpbuheErh91qYuE1E2OEjK3Rw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/pretty-format": "3.2.7", + "loupe": "^3.1.4", + "tinyrainbow": "^2.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/acorn": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.18.0.tgz", + "integrity": "sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "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/array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/assertion-error": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", + "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + } + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "dev": true, + "license": "MIT" + }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.17", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.17.tgz", + "integrity": "sha512-aTyf30K/rqAsNwN76zYrdtx8obu0E4KoUME29B1xj+B3WxgvWkp943vYQ+z8Mv3lw9xHXMHpvSPOBxzAkIa94w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.28.6", + "@babel/helper-define-polyfill-provider": "^0.6.8", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.14.2.tgz", + "integrity": "sha512-coWpDLJ410R781Npmn/SIBZEsAetR4xVi0SxLMXPaMO4lSf1MwnkGYMtkFxew0Dn8B3/CpbpYxN0JCgg8mn67g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.8", + "core-js-compat": "^3.48.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.8.tgz", + "integrity": "sha512-M762rNHfSF1EV3SLtnCJXFoQbbIIz0OyRwnCmV0KPC7qosSfCO0QLTSuJX3ayAebubhE6oYBAYPrBA5ljowaZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.8" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/balanced-match": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz", + "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "18 || 20 || >=22" + } + }, + "node_modules/baseline-browser-mapping": { + "version": "2.11.26", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.26.tgz", + "integrity": "sha512-GLQdD3y6UF8iVuMJl5fHgE4jdn/ua7n+toKfLgNlg3BqQtOZjpy68T8Tup8/wGWZCDlm7KMg7tPb4MPn7oN0TQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/blake3-wasm": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/blake3-wasm/-/blake3-wasm-2.1.5.tgz", + "integrity": "sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==", + "dev": true, + "license": "MIT" + }, + "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/brace-expansion": { + "version": "5.0.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.12.tgz", + "integrity": "sha512-YovQ3rzhaLMIrDjNDMkNS01tea93qhEhG5xy8f6+R0l+dw3Ki+5sCoIoI942iuLZTHWogWktgwVDhU09iNEimQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^4.0.2" + }, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/browser-image-compression": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/browser-image-compression/-/browser-image-compression-2.0.2.tgz", + "integrity": "sha512-pBLlQyUf6yB8SmmngrcOw3EoS4RpQ1BcylI3T9Yqn7+4nrQTXJD4sJDe5ODnJdrvNMaio5OicFo75rDyJD2Ucw==", + "license": "MIT", + "dependencies": { + "uzip": "0.20201231.0" + } + }, + "node_modules/browserslist": { + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.29.1.tgz", + "integrity": "sha512-AUdjuRyCNGUYtqpqfTmWyM4fXay8yIQhmLnvYe/THMGfT9B/34X7xQd3ifKxwyNPPpowVBjLb+64BN9Rn1mizw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.11.25", + "caniuse-lite": "^1.0.30001810", + "electron-to-chromium": "^1.5.438", + "node-releases": "^2.0.57", + "update-browserslist-db": "^1.3.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.9.tgz", + "integrity": "sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "get-intrinsic": "^1.3.0", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001812", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001812.tgz", + "integrity": "sha512-qN+QNNBr93TCmFrmte0bBCjSDMuRvt78VlHT99qIGPszm4QsqCX8lnyWUFkHi8B7ZBAPq8SH+UqyXNy/odMdng==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chai": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.3.3.tgz", + "integrity": "sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "assertion-error": "^2.0.1", + "check-error": "^2.1.1", + "deep-eql": "^5.0.1", + "loupe": "^3.1.0", + "pathval": "^2.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/check-error": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.3.tgz", + "integrity": "sha512-PAJdDJusoxnwm1VwW07VWwUN1sl7smmC3OKggvndJFadxxDRyFJBX/ggnu/KE4kQAB7a3Dp8f/YXC1FlUprWmA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 16" + } + }, + "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-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cookie": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.1.1.tgz", + "integrity": "sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/core-js-compat": { + "version": "3.50.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.50.0.tgz", + "integrity": "sha512-XGpFGbMLHwSt74YLTKho7Ib242qi6O8MSX+sRokV4oz7iKXvQWGYZthjIhjRGMxjzVkAubBO512dKGYcefmX3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "browserslist": "^4.28.7" + }, + "engines": { + "node": ">=6.4.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/css-select": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-6.0.0.tgz", + "integrity": "sha512-rZZVSLle8v0+EY8QAkDWrKhpgt6SA5OtHsgBnsj6ZaLb5dmDVOWUDtQitd9ydxxvEjhewNudS6eTVU7uOyzvXw==", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^7.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.2.2", + "nth-check": "^2.1.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": "7.0.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-7.0.0.tgz", + "integrity": "sha512-wD5oz5xibMOPHzy13CyGmogB3phdvcDaB5t0W/Nr5Z2O/agcB8YwOz6e2Lsp10pNDzBoDO9nVa3RGs/2BttpHQ==", + "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", - "optional": true, - "os": [ - "linux" - ] + "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/@rollup/rollup-linux-x64-musl": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.63.5.tgz", - "integrity": "sha512-VDC7rRJlee/scpki96GZ27Omf6yU87s1YXwVTpjE5841faVlDYYT565rgfmoR1U0sqL7z5ivQSDjcsF6VRXyBA==", - "cpu": [ - "x64" - ], + "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/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ] + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/@rollup/rollup-openbsd-x64": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.63.5.tgz", - "integrity": "sha512-z86Ok2p4pTdv5xqCKZsTooO7yBEiaJR/HzU3Wx8RmWsPoLppnMKROhJusQob8B3IE1ghC343kUW9rC2r+Wf3ig==", - "cpu": [ - "x64" - ], + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ] + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" + } }, - "node_modules/@rollup/rollup-openharmony-arm64": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.63.5.tgz", - "integrity": "sha512-IzQmj+xXwQFGhMAMKMQVXkMwMZN3TqkJgAE0nSsqvVwWWciP4AIPMmWRqOQ2GfX7TUDZr+xqGFcBS36CRPGw0g==", - "cpu": [ - "arm64" - ], + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "openharmony" - ] + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.63.5.tgz", - "integrity": "sha512-F6qpTaPc9bwBH85kjy0/BLmLSW1uv7AoOXCoRIkg2arlgCYlWYcAbiMkvZuAcaWk9TpCRG//okznLAqLGshkMw==", - "cpu": [ - "arm64" - ], + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ] + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.63.5.tgz", - "integrity": "sha512-igoDsTFhhwECBeGbUuLeIk7t8Y1apa+cs6mDWpx2EZ0ch7oEQgzHbFUXN9euoHekCAQzXdXApAGkV6jznS7tWw==", - "cpu": [ - "ia32" - ], + "node_modules/deep-eql": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz", + "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ] + "engines": { + "node": ">=6" + } }, - "node_modules/@rollup/rollup-win32-x64-gnu": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.63.5.tgz", - "integrity": "sha512-U3teMeMbXFmaM5D+OTJpsOXd+wV/qftIeYF9kBKL4v73641qyJmoXFtA28DQLsnmlyayEsTe72xpLHrArq6vHw==", - "cpu": [ - "x64" - ], + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ] + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.63.5", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.63.5.tgz", - "integrity": "sha512-ypfC34F3RKXvCXBglGqGMsUSMKlgwd1HX9AOAlx9RoZZ6GaI42YHVeKpzg3JG+wpBUJYTG+NNZhqbDWL8tBZkw==", - "cpu": [ - "x64" - ], + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ] + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/@sindresorhus/is": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-7.2.0.tgz", - "integrity": "sha512-P1Cz1dWaFfR4IR+U13mqqiGsLFf1KbayybWwdd2vfctdV6hDpUkgCY0nKOLLTMSoRd/jJNjtbqzf13K8DCCXQw==", + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dev": true, "license": "MIT", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, "engines": { - "node": ">=18" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@speed-highlight/core": { - "version": "1.2.24", - "resolved": "https://registry.npmjs.org/@speed-highlight/core/-/core-1.2.24.tgz", - "integrity": "sha512-qeW2e1l78afw8VhRPfPQ1Gjj+KU5XFQ/OFV5ti6eTa9bruO7mJyZtA4vw0ofqmA3tKCkROE9xLk3VZoeRc98nw==", + "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==", "dev": true, - "license": "CC0-1.0" + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } }, - "node_modules/@tailwindcss/node": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.3.3.tgz", - "integrity": "sha512-/T8IKEsf9VTU6tLjgC7+sv2mOPtQxzE2jMw7u4Tt40Tx+QSZxpzh95/H6cMKoja9XuW7iMdLJYBB0o9G1CaAgg==", - "dev": true, + "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": { - "@jridgewell/remapping": "^2.3.5", - "enhanced-resolve": "^5.24.1", - "jiti": "^2.7.0", - "lightningcss": "1.32.0", - "magic-string": "^0.30.21", - "source-map-js": "^1.2.1", - "tailwindcss": "4.3.3" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, - "node_modules/@tailwindcss/oxide": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.3.3.tgz", - "integrity": "sha512-krXjAikiaFSPaK/FkAQT5UTx3VormQaiZ5hBFlJZ9UFQGB/rwg1MZIhHAG9smMQRTdyJxP6Qt5MwMtdyU5FWrA==", - "dev": true, - "license": "MIT", + "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": ">= 20" + "node": ">= 4" }, - "optionalDependencies": { - "@tailwindcss/oxide-android-arm64": "4.3.3", - "@tailwindcss/oxide-darwin-arm64": "4.3.3", - "@tailwindcss/oxide-darwin-x64": "4.3.3", - "@tailwindcss/oxide-freebsd-x64": "4.3.3", - "@tailwindcss/oxide-linux-arm-gnueabihf": "4.3.3", - "@tailwindcss/oxide-linux-arm64-gnu": "4.3.3", - "@tailwindcss/oxide-linux-arm64-musl": "4.3.3", - "@tailwindcss/oxide-linux-x64-gnu": "4.3.3", - "@tailwindcss/oxide-linux-x64-musl": "4.3.3", - "@tailwindcss/oxide-wasm32-wasi": "4.3.3", - "@tailwindcss/oxide-win32-arm64-msvc": "4.3.3", - "@tailwindcss/oxide-win32-x64-msvc": "4.3.3" + "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/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" } }, - "node_modules/@tailwindcss/oxide-android-arm64": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.3.3.tgz", - "integrity": "sha512-Y85A2gmPSkl5Ve5qR86GL4HT509cFqQh1aes9p3sSkyTPwt0Pppf3GkwGe4JPACcRYjgJIEhQgM6dBClnr0NYw==", - "cpu": [ - "arm64" - ], + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], + "license": "Apache-2.0", + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, "engines": { - "node": ">= 20" + "node": ">=0.10.0" } }, - "node_modules/@tailwindcss/oxide-darwin-arm64": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.3.3.tgz", - "integrity": "sha512-BiaWatpBcERQFDlOjRDpIVXuFK5PJez5SA4JMg6VYZdBYU+qKfV/vqjcIs+IYmtitf1xYQZTwXvU/8y4lfZUGw==", - "cpu": [ - "arm64" - ], + "node_modules/electron-to-chromium": { + "version": "1.5.438", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.438.tgz", + "integrity": "sha512-AN9xMU1hJiT65LkCUPL1DZm5TCbOPb2Qsm5pYwFLEXp6/qj9SdT4yMiqs7Qqstwvkn1zF7l36SRGt+s6XcJ0FA==", + "dev": true, + "license": "ISC" + }, + "node_modules/enhanced-resolve": { + "version": "5.25.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.25.1.tgz", + "integrity": "sha512-nGXts5znJzmWPu+mIE9izCOzdg63oJca2mDzGWWTth7sr4aCToKcoyFVBQwN75Ij5Pf6p510EwkTqViTRzDV+w==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.3.3" + }, "engines": { - "node": ">= 20" + "node": ">=10.13.0" } }, - "node_modules/@tailwindcss/oxide-darwin-x64": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.3.3.tgz", - "integrity": "sha512-fAeUqfV5ndhxRwai8cXGzdLvul9utWOmeTkv69unv4ZXixjn61Z+p9lCWdwOwA3TYboG3BwdVuN/RDjhBRl0mw==", - "cpu": [ - "x64" - ], + "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/error-stack-parser-es": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/error-stack-parser-es/-/error-stack-parser-es-1.0.5.tgz", + "integrity": "sha512-5qucVt2XcuGMcEGgWI7i+yZpmpByQ8J1lHhcL7PwqCwu9FPP3VUXzT4ltHe5i2z9dePwEHcDVOAfSnHsOlCXRA==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 20" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@tailwindcss/oxide-freebsd-x64": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.3.3.tgz", - "integrity": "sha512-iyf5bV6+wnAlflVeEy7R25dupxTNECZN5QMI0qNT6eT+EgaGdZcKhGkr5SdoaWiLJ3spLqIY9VCeSGrwmtg4kw==", - "cpu": [ - "x64" - ], + "node_modules/es-abstract": { + "version": "1.24.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.2.tgz", + "integrity": "sha512-2FpH9Q5i2RRwyEP1AylXe6nYLR5OhaJTZwmlcP0dL/+JCbgg7yyEo/sEK6HeGZRf3dFpWwThaRHVApXSkW3xeg==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 20" + "dependencies": { + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.3.3.tgz", - "integrity": "sha512-aAYUprJAJQWWbRrPvtjdroZ56Md+JM8pMiopS6xGEwDfLhqj+2ver2p4nU4Mb3CRqcMmNBjo8KkUgcxhkzVQGQ==", - "cpu": [ - "arm" - ], + "node_modules/es-abstract-get": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-abstract-get/-/es-abstract-get-1.0.0.tgz", + "integrity": "sha512-6PMWXpdhshVvFp+FoWYs1EvG1Nj0tvk0dZM+XcK0xMEM1czRVcP6ohqPWHy6qPagSpC8j4+p89WXlT+xXJs/fg==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.2", + "is-callable": "^1.2.7", + "object-inspect": "^1.13.4" + }, "engines": { - "node": ">= 20" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.3.3.tgz", - "integrity": "sha512-nDxldcEENOxZRzC2uu9jrutZdAAQtb+8WWDCSnWL1zvBk1+FN+x6MtDViPB5AJMfttVCUhehGWus3XBPgatM/w==", - "cpu": [ - "arm64" - ], + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], "engines": { - "node": ">= 20" + "node": ">= 0.4" } }, - "node_modules/@tailwindcss/oxide-linux-arm64-musl": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.3.3.tgz", - "integrity": "sha512-Md44bD6veX/PC5iyF8cDVnw4HBIANZepRZZ7a8DQOvkfo5WUBwcp6iAuCUz23u+4SUkhJlD3eL7hNdW8ezd/kA==", - "cpu": [ - "arm64" - ], + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], "engines": { - "node": ">= 20" + "node": ">= 0.4" } }, - "node_modules/@tailwindcss/oxide-linux-x64-gnu": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.3.3.tgz", - "integrity": "sha512-tx7us1muwOKAKWao2v/GaafFeQboE6aj88vC6ziN2NCGcRm8gWUhwjzg+YdVB1e4boAtdtma4L43onunI6NS4w==", - "cpu": [ - "x64" - ], + "node_modules/es-module-lexer": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", + "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", + "dev": true, + "license": "MIT" + }, + "node_modules/es-object-atoms": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz", + "integrity": "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "es-errors": "^1.3.0" + }, "engines": { - "node": ">= 20" + "node": ">= 0.4" } }, - "node_modules/@tailwindcss/oxide-linux-x64-musl": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.3.3.tgz", - "integrity": "sha512-SJxX60smvHgasZoBy11dX6YRjXJFovwWBoedhbQPOBzgFWBHGB+TVPWB9BxzR7TTxU8FQZAI2AyiNCMzFm8Img==", - "cpu": [ - "x64" - ], + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, "engines": { - "node": ">= 20" + "node": ">= 0.4" } }, - "node_modules/@tailwindcss/oxide-wasm32-wasi": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.3.3.tgz", - "integrity": "sha512-jx1+rPhY/5Ympkktd656HBWEBLxP7dH06losBLjjf5vgCODXvi9KhtftWcMIwTFIDqBr7cRnQkdLnAG+IOlGvQ==", - "bundleDependencies": [ - "@napi-rs/wasm-runtime", - "@emnapi/core", - "@emnapi/runtime", - "@tybys/wasm-util", - "@emnapi/wasi-threads", - "tslib" - ], - "cpu": [ - "wasm32" - ], + "node_modules/es-to-primitive": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.4.tgz", + "integrity": "sha512-yPDz7wqpg1/mmHLmS3tcfTfbw5f1eryXvyghYBffGdERwe+mV7ZcWzTR8LR17Kvqt3qfPurjlonmnq3MKXIOXw==", "dev": true, "license": "MIT", - "optional": true, "dependencies": { - "@emnapi/core": "^1.11.1", - "@emnapi/runtime": "^1.11.1", - "@emnapi/wasi-threads": "^1.2.2", - "@napi-rs/wasm-runtime": "^1.1.4", - "@tybys/wasm-util": "^0.10.2", - "tslib": "^2.8.1" + "es-abstract-get": "^1.0.0", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "is-callable": "^1.2.7", + "is-date-object": "^1.1.0", + "is-symbol": "^1.1.1" }, "engines": { - "node": ">=14.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.3.3.tgz", - "integrity": "sha512-3rc292Ca2ceK6Ulcc/bAVnTs/3nDtoPhyEKlgPv+yQJQi/JS/AMJlqzxvlDacL1nekbrcf6bTqp/jV4qgnPxNQ==", - "cpu": [ - "arm64" - ], + "node_modules/esbuild": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz", + "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", "dev": true, + "hasInstallScript": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ], + "bin": { + "esbuild": "bin/esbuild" + }, "engines": { - "node": ">= 20" + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.12", + "@esbuild/android-arm": "0.25.12", + "@esbuild/android-arm64": "0.25.12", + "@esbuild/android-x64": "0.25.12", + "@esbuild/darwin-arm64": "0.25.12", + "@esbuild/darwin-x64": "0.25.12", + "@esbuild/freebsd-arm64": "0.25.12", + "@esbuild/freebsd-x64": "0.25.12", + "@esbuild/linux-arm": "0.25.12", + "@esbuild/linux-arm64": "0.25.12", + "@esbuild/linux-ia32": "0.25.12", + "@esbuild/linux-loong64": "0.25.12", + "@esbuild/linux-mips64el": "0.25.12", + "@esbuild/linux-ppc64": "0.25.12", + "@esbuild/linux-riscv64": "0.25.12", + "@esbuild/linux-s390x": "0.25.12", + "@esbuild/linux-x64": "0.25.12", + "@esbuild/netbsd-arm64": "0.25.12", + "@esbuild/netbsd-x64": "0.25.12", + "@esbuild/openbsd-arm64": "0.25.12", + "@esbuild/openbsd-x64": "0.25.12", + "@esbuild/openharmony-arm64": "0.25.12", + "@esbuild/sunos-x64": "0.25.12", + "@esbuild/win32-arm64": "0.25.12", + "@esbuild/win32-ia32": "0.25.12", + "@esbuild/win32-x64": "0.25.12" } }, - "node_modules/@tailwindcss/oxide-win32-x64-msvc": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.3.3.tgz", - "integrity": "sha512-yJ0pwIVc/nYeGoV02WtsN8KYyLQv7kyI2wDnkezyJlGGjkd4QLwDGAwl47YpPJeuI0M0ObaXGSPjvWDPeTPggw==", - "cpu": [ - "x64" - ], + "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", - "optional": true, - "os": [ - "win32" - ], "engines": { - "node": ">= 20" + "node": ">=6" } }, - "node_modules/@tailwindcss/vite": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/vite/-/vite-4.3.3.tgz", - "integrity": "sha512-yYU8cogLeSh/ms2jh8Fj7jaba/EWa7Ja6GoUqYZaraEuCI5YS6ms6ObZgjjedm+jm6XZjdNRWBpPP6Z86oOxcw==", + "node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", "dev": true, "license": "MIT", "dependencies": { - "@tailwindcss/node": "4.3.3", - "@tailwindcss/oxide": "4.3.3", - "tailwindcss": "4.3.3" - }, - "peerDependencies": { - "vite": "^5.2.0 || ^6 || ^7 || ^8" + "@types/estree": "^1.0.0" } }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" } }, - "node_modules/@types/babel__generator": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", - "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "node_modules/eta": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eta/-/eta-4.6.0.tgz", + "integrity": "sha512-lW6is4T1NFOYnmqGZIfvixqj7A7sSvScF+DN8EK6K58xI5MZ5UvYe0GjopxOXQtZvUn4eDdVuZ8XSoYWTMEKwA==", "dev": true, "license": "MIT", - "dependencies": { - "@babel/types": "^7.0.0" + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/bgub/eta?sponsor=1" } }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "node_modules/expect-type": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.4.0.tgz", + "integrity": "sha512-KfYbmpRm0VbLjEvVa9yGwCi9GI34xvi7A/HXYWQO65CSD2u3MczUJSuwXKFIxlGsgBQizV9q5J9NHj4VG0n+pA==", "dev": true, - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" + "license": "Apache-2.0", + "engines": { + "node": ">=12.0.0" } }, - "node_modules/@types/babel__traverse": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", - "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", + "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", - "dependencies": { - "@babel/types": "^7.28.2" - } + "license": "MIT" }, - "node_modules/@types/chai": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.2.3.tgz", - "integrity": "sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==", + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-uri": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.8.tgz", + "integrity": "sha512-GZMtZUTNRpOVIECoXwLNZS5xUGE+mVNbTB8h/7Rwh2TFWcBQiPzTgyZi05BF9UMZKkLJv8XBRJTlU7zg8+ZfMg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", "dev": true, "license": "MIT", - "dependencies": { - "@types/deep-eql": "*", - "assertion-error": "^2.0.1" + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } } }, - "node_modules/@types/deep-eql": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz", - "integrity": "sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==", + "node_modules/filelist": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.6.tgz", + "integrity": "sha512-5giy2PkLYY1cP39p17Ech+2xlpTRL9HLspOfEgm0L6CwBXBTgsK5ou0JtzYuepxkaQ/tvhCFIJ5uXo0OrM2DxA==", "dev": true, - "license": "MIT" + "license": "Apache-2.0", + "dependencies": { + "minimatch": "^5.0.1" + } }, - "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==", + "node_modules/filelist/node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true, "license": "MIT" }, - "node_modules/@types/node": { - "version": "22.19.15", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.15.tgz", - "integrity": "sha512-F0R/h2+dsy5wJAUe3tAU6oqa2qbWY5TpNfL/RGmo1y38hiyO1w3x2jPtt76wmuaJI4DQnOBu21cNXQ2STIUUWg==", + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.7.tgz", + "integrity": "sha512-uZbew1NqdmPDTMJ8ah1y+b+9QEJrfkXFk3RcTQw3X0jW/xRUvFKsg1CfQdSYGdTbXZWExtU3J3ccxtnfw1Fi0g==", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "balanced-match": "^1.0.0" } }, - "node_modules/@vitejs/plugin-react": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-5.2.0.tgz", - "integrity": "sha512-YmKkfhOAi3wsB1PhJq5Scj3GXMn3WvtQ/JC0xoopuHoXSdmtdStOpFrYaT1kie2YgFBcIe64ROzMYRjCrYOdYw==", + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.9", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.9.tgz", + "integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "@babel/core": "^7.29.0", - "@babel/plugin-transform-react-jsx-self": "^7.27.1", - "@babel/plugin-transform-react-jsx-source": "^7.27.1", - "@rolldown/pluginutils": "1.0.0-rc.3", - "@types/babel__core": "^7.20.5", - "react-refresh": "^0.18.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "^20.19.0 || >=22.12.0" - }, - "peerDependencies": { - "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" + "node": ">=10" } }, - "node_modules/@vitest/expect": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.2.7.tgz", - "integrity": "sha512-E8eBXaKibuvH2pSZErOjdVb5vF4PbKYcrnluBTYxEk1l/VhhwZg1kZQsdtjq+CsF5CFydf2Rdkz7jDHKSisi3w==", + "node_modules/for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", "dev": true, "license": "MIT", "dependencies": { - "@types/chai": "^5.2.2", - "@vitest/spy": "3.2.7", - "@vitest/utils": "3.2.7", - "chai": "^5.2.0", - "tinyrainbow": "^2.0.0" + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" }, "funding": { - "url": "https://opencollective.com/vitest" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@vitest/mocker": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.2.7.tgz", - "integrity": "sha512-Trr0hYO9CM3Wj6ksWHRhK9IZpIY6wTMO5u/MqXurMxT57sWBaOPEtP3Oq60ihZuh5JsiagKfz95OcxdEP6dBrA==", + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "@vitest/spy": "3.2.7", - "estree-walker": "^3.0.3", - "magic-string": "^0.30.17" + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" }, "funding": { - "url": "https://opencollective.com/vitest" + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/framer-motion": { + "version": "12.35.1", + "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-12.35.1.tgz", + "integrity": "sha512-rL8cLrjYZNShZqKV3U0Qj6Y5WDiZXYEM5giiTLfEqsIZxtspzMDCkKmrO5po76jWfvOg04+Vk+sfBvTD0iMmLw==", + "license": "MIT", + "dependencies": { + "motion-dom": "^12.35.1", + "motion-utils": "^12.29.2", + "tslib": "^2.4.0" }, "peerDependencies": { - "msw": "^2.4.9", - "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0" + "@emotion/is-prop-valid": "*", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" }, "peerDependenciesMeta": { - "msw": { + "@emotion/is-prop-valid": { "optional": true }, - "vite": { + "react": { + "optional": true + }, + "react-dom": { "optional": true } } }, - "node_modules/@vitest/pretty-format": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.2.7.tgz", - "integrity": "sha512-KUHlwqVu0sRlhCdyPdQ/wBoTfRahjUky1MubOmYw9fWfIZy1gNoHpuaaQBPAaMaVYdQYHJLurzj8ECCj5OwTqA==", + "node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", "dev": true, "license": "MIT", "dependencies": { - "tinyrainbow": "^2.0.0" + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" }, - "funding": { - "url": "https://opencollective.com/vitest" + "engines": { + "node": ">=10" } }, - "node_modules/@vitest/runner": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.2.7.tgz", - "integrity": "sha512-sB9y4ovltoQP+WaUPwmSxO9WIg9Ig694Di5PalVPsYHklAdE027mehpWF2SQSVq+k6sFgaivbTjTJwZLSHbedA==", + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, + "hasInstallScript": true, "license": "MIT", - "dependencies": { - "@vitest/utils": "3.2.7", - "pathe": "^2.0.3", - "strip-literal": "^3.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/@vitest/snapshot": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.2.7.tgz", - "integrity": "sha512-7C+MwShwtBSI5Buwoyg3s/iY1eHL9PKAf+O1wVh/TdnjXUtkoL/9YQtre90i4MtNXM6edP1wJ2zOBpfCyhIS7g==", + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", "dev": true, "license": "MIT", - "dependencies": { - "@vitest/pretty-format": "3.2.7", - "magic-string": "^0.30.17", - "pathe": "^2.0.3" - }, "funding": { - "url": "https://opencollective.com/vitest" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@vitest/spy": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.2.7.tgz", - "integrity": "sha512-Q2eQGI6d2L/hBtZ0qNuKcAGid68XK6cv1xsoaIma6PaJhHPoqcEJhYpXZ/5myCMqkNgtP6UKuBhbc0nHKnrkuQ==", + "node_modules/function.prototype.name": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.2.0.tgz", + "integrity": "sha512-jObKIik1P2QjPHP5nz5BaOtUlfgS0fWo8IUByNXkM+o+02sJOi94em77GwJKQSJ3gfPHdgzLNrHc1uokV4P/ew==", "dev": true, "license": "MIT", "dependencies": { - "tinyspy": "^4.0.3" + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2", + "hasown": "^2.0.4", + "is-callable": "^1.2.7", + "is-document.all": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { - "url": "https://opencollective.com/vitest" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@vitest/utils": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.2.7.tgz", - "integrity": "sha512-x6BDOd7dyo3PFLY3I9/HJ25X/6OurhGXk2/B9gOZNPF7XDVjeBK4k01lQE5uvDpbuheErh91qYuE1E2OEjK3Rw==", + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, "license": "MIT", - "dependencies": { - "@vitest/pretty-format": "3.2.7", - "loupe": "^3.1.4", - "tinyrainbow": "^2.0.0" - }, "funding": { - "url": "https://opencollective.com/vitest" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/assertion-error": { + "node_modules/generator-function": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", - "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", + "resolved": "https://registry.npmjs.org/generator-function/-/generator-function-2.0.1.tgz", + "integrity": "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, "license": "MIT", "engines": { - "node": ">=12" + "node": ">=6.9.0" } }, - "node_modules/baseline-browser-mapping": { - "version": "2.11.26", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.26.tgz", - "integrity": "sha512-GLQdD3y6UF8iVuMJl5fHgE4jdn/ua7n+toKfLgNlg3BqQtOZjpy68T8Tup8/wGWZCDlm7KMg7tPb4MPn7oN0TQ==", + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", "dev": true, - "license": "Apache-2.0", - "bin": { - "baseline-browser-mapping": "dist/cli.cjs" + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, "engines": { - "node": ">=6.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/blake3-wasm": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/blake3-wasm/-/blake3-wasm-2.1.5.tgz", - "integrity": "sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==", + "node_modules/get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", "dev": true, - "license": "MIT" - }, - "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/browser-image-compression": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/browser-image-compression/-/browser-image-compression-2.0.2.tgz", - "integrity": "sha512-pBLlQyUf6yB8SmmngrcOw3EoS4RpQ1BcylI3T9Yqn7+4nrQTXJD4sJDe5ODnJdrvNMaio5OicFo75rDyJD2Ucw==", + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, "license": "MIT", "dependencies": { - "uzip": "0.20201231.0" + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" } }, - "node_modules/browserslist": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.29.1.tgz", - "integrity": "sha512-AUdjuRyCNGUYtqpqfTmWyM4fXay8yIQhmLnvYe/THMGfT9B/34X7xQd3ifKxwyNPPpowVBjLb+64BN9Rn1mizw==", + "node_modules/get-symbol-description": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "license": "MIT", "dependencies": { - "baseline-browser-mapping": "^2.11.25", - "caniuse-lite": "^1.0.30001810", - "electron-to-chromium": "^1.5.438", - "node-releases": "^2.0.57", - "update-browserslist-db": "^1.3.3" - }, - "bin": { - "browserslist": "cli.js" + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" }, "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/cac": { - "version": "6.7.14", - "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", - "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", - "dev": true, + "node_modules/gifsicle-wasm-browser": { + "version": "1.5.19", + "resolved": "https://registry.npmjs.org/gifsicle-wasm-browser/-/gifsicle-wasm-browser-1.5.19.tgz", + "integrity": "sha512-f2j2QXvryrxake2DdeAaI96LfZ8adb62UUs9C2eNuQiTDiysh9aBPmyw1Q8fHe+x+is+RHXDEXvVQSELONwmhw==", "license": "MIT", "engines": { - "node": ">=8" + "node": "*" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001812", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001812.tgz", - "integrity": "sha512-qN+QNNBr93TCmFrmte0bBCjSDMuRvt78VlHT99qIGPszm4QsqCX8lnyWUFkHi8B7ZBAPq8SH+UqyXNy/odMdng==", + "node_modules/glob": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.1.0.tgz", + "integrity": "sha512-vuNwKSaKiqm7g0THUBu2x7ckSs3XJLXE+2ssL7/MfTGPLLcrJQ/4Uq1CjPTtO5cCIiRxqvN6Twy1qOwhL0Xjcw==", + "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "CC-BY-4.0" + "license": "BlueOak-1.0.0", + "dependencies": { + "foreground-child": "^3.3.1", + "jackspeak": "^4.1.1", + "minimatch": "^10.1.1", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^2.0.0" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, - "node_modules/chai": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/chai/-/chai-5.3.3.tgz", - "integrity": "sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==", + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dev": true, "license": "MIT", "dependencies": { - "assertion-error": "^2.0.1", - "check-error": "^2.1.1", - "deep-eql": "^5.0.1", - "loupe": "^3.1.0", - "pathval": "^2.0.0" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" }, "engines": { - "node": ">=18" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/check-error": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.3.tgz", - "integrity": "sha512-PAJdDJusoxnwm1VwW07VWwUN1sl7smmC3OKggvndJFadxxDRyFJBX/ggnu/KE4kQAB7a3Dp8f/YXC1FlUprWmA==", + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", "dev": true, "license": "MIT", "engines": { - "node": ">= 16" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/commander": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", - "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", + "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==", + "dev": true, + "license": "ISC" + }, + "node_modules/has-bigints": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "dev": true, "license": "MIT", "engines": { - "node": ">=16" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dev": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/cookie": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.1.1.tgz", - "integrity": "sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==", + "node_modules/has-proto": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", "dev": true, "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.0" + }, "engines": { - "node": ">=18" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/express" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "license": "MIT" + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/css-select": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-6.0.0.tgz", - "integrity": "sha512-rZZVSLle8v0+EY8QAkDWrKhpgt6SA5OtHsgBnsj6ZaLb5dmDVOWUDtQitd9ydxxvEjhewNudS6eTVU7uOyzvXw==", - "license": "BSD-2-Clause", + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "license": "MIT", "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^7.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.2.2", - "nth-check": "^2.1.1" + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/fb55" + "url": "https://github.com/sponsors/ljharb" } }, - "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==", + "node_modules/hasown": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz", + "integrity": "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==", + "dev": true, "license": "MIT", "dependencies": { - "mdn-data": "2.27.1", - "source-map-js": "^1.2.1" + "function-bind": "^1.1.2" }, "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + "node": ">= 0.4" } }, - "node_modules/css-what": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-7.0.0.tgz", - "integrity": "sha512-wD5oz5xibMOPHzy13CyGmogB3phdvcDaB5t0W/Nr5Z2O/agcB8YwOz6e2Lsp10pNDzBoDO9nVa3RGs/2BttpHQ==", - "license": "BSD-2-Clause", - "engines": { - "node": ">= 6" + "node_modules/heic-to": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/heic-to/-/heic-to-1.5.2.tgz", + "integrity": "sha512-8Fns+lZHAWmz5U5IUxDeXKwIf3foBoKNPLxxFY4B0MkLjNuomEIHCoDbDE+x/llFK3NCEO1cu4+n3iUKY+Svmw==", + "license": "LGPL-3.0" + }, + "node_modules/idb": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/idb/-/idb-7.1.1.tgz", + "integrity": "sha512-gchesWBzyvGHRO9W8tzUWFDycow5gwjvFKfyV9FF32Y7F50yZMp7mP+T2mJIWFx49zicqyC4uefHM17o6xKIVQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", + "license": "MIT" + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/internal-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" }, - "funding": { - "url": "https://github.com/sponsors/fb55" + "engines": { + "node": ">= 0.4" } }, - "node_modules/csso": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", - "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", + "node_modules/is-array-buffer": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "dev": true, "license": "MIT", "dependencies": { - "css-tree": "~2.2.0" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" }, "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", - "npm": ">=7.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==", + "node_modules/is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, "license": "MIT", "dependencies": { - "mdn-data": "2.0.28", - "source-map-js": "^1.0.1" + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" }, "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", - "npm": ">=7.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==", + "node_modules/is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", "dev": true, "license": "MIT", "dependencies": { - "ms": "^2.1.3" + "has-bigints": "^1.0.2" }, "engines": { - "node": ">=6.0" + "node": ">= 0.4" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/deep-eql": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz", - "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==", + "node_modules/is-boolean-object": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", "dev": true, "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==", + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, - "license": "Apache-2.0", + "license": "MIT", "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==", + "node_modules/is-core-module": { + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.17.0.tgz", + "integrity": "sha512-J/vG0zBCbIKOQFfufSwyXdMrsohyJIUNkrnmo6WZGzoM7tr/lsbfW5b2BvisL6zsyMzK9UxV9L6c7AoFbyXHOA==", + "dev": true, "license": "MIT", "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" + "hasown": "^2.0.4" + }, + "engines": { + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "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", + "node_modules/is-data-view": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, + "license": "MIT", "dependencies": { - "domelementtype": "^2.3.0" + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" }, "engines": { - "node": ">= 4" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "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", + "node_modules/is-date-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "dev": true, + "license": "MIT", "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/electron-to-chromium": { - "version": "1.5.438", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.438.tgz", - "integrity": "sha512-AN9xMU1hJiT65LkCUPL1DZm5TCbOPb2Qsm5pYwFLEXp6/qj9SdT4yMiqs7Qqstwvkn1zF7l36SRGt+s6XcJ0FA==", + "node_modules/is-document.all": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-document.all/-/is-document.all-1.0.0.tgz", + "integrity": "sha512-+XSoyS05OdBbhFuELhgTCpFNHkpBOJqtsZfUFFpe5QTw+9Sjbh8zitxhQkYAo6wV7e1Vb8cAPvpCk9jGam/82g==", "dev": true, - "license": "ISC" + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/enhanced-resolve": { - "version": "5.25.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.25.1.tgz", - "integrity": "sha512-nGXts5znJzmWPu+mIE9izCOzdg63oJca2mDzGWWTth7sr4aCToKcoyFVBQwN75Ij5Pf6p510EwkTqViTRzDV+w==", + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", "dev": true, "license": "MIT", "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.3.3" + "call-bound": "^1.0.3" }, "engines": { - "node": ">=10.13.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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", + "node_modules/is-generator-function": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.2.tgz", + "integrity": "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.4", + "generator-function": "^2.0.0", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, "engines": { - "node": ">=0.12" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/error-stack-parser-es": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/error-stack-parser-es/-/error-stack-parser-es-1.0.5.tgz", - "integrity": "sha512-5qucVt2XcuGMcEGgWI7i+yZpmpByQ8J1lHhcL7PwqCwu9FPP3VUXzT4ltHe5i2z9dePwEHcDVOAfSnHsOlCXRA==", + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", "dev": true, "license": "MIT", + "engines": { + "node": ">= 0.4" + }, "funding": { - "url": "https://github.com/sponsors/antfu" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es-module-lexer": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", - "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", "dev": true, "license": "MIT" }, - "node_modules/esbuild": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz", - "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", "dev": true, - "hasInstallScript": true, "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, "engines": { - "node": ">=18" + "node": ">= 0.4" }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.25.12", - "@esbuild/android-arm": "0.25.12", - "@esbuild/android-arm64": "0.25.12", - "@esbuild/android-x64": "0.25.12", - "@esbuild/darwin-arm64": "0.25.12", - "@esbuild/darwin-x64": "0.25.12", - "@esbuild/freebsd-arm64": "0.25.12", - "@esbuild/freebsd-x64": "0.25.12", - "@esbuild/linux-arm": "0.25.12", - "@esbuild/linux-arm64": "0.25.12", - "@esbuild/linux-ia32": "0.25.12", - "@esbuild/linux-loong64": "0.25.12", - "@esbuild/linux-mips64el": "0.25.12", - "@esbuild/linux-ppc64": "0.25.12", - "@esbuild/linux-riscv64": "0.25.12", - "@esbuild/linux-s390x": "0.25.12", - "@esbuild/linux-x64": "0.25.12", - "@esbuild/netbsd-arm64": "0.25.12", - "@esbuild/netbsd-x64": "0.25.12", - "@esbuild/openbsd-arm64": "0.25.12", - "@esbuild/openbsd-x64": "0.25.12", - "@esbuild/openharmony-arm64": "0.25.12", - "@esbuild/sunos-x64": "0.25.12", - "@esbuild/win32-arm64": "0.25.12", - "@esbuild/win32-ia32": "0.25.12", - "@esbuild/win32-x64": "0.25.12" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", "dev": true, "license": "MIT", "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/estree-walker": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", - "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "node_modules/is-regex": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", "dev": true, "license": "MIT", "dependencies": { - "@types/estree": "^1.0.0" + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/expect-type": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.4.0.tgz", - "integrity": "sha512-KfYbmpRm0VbLjEvVa9yGwCi9GI34xvi7A/HXYWQO65CSD2u3MczUJSuwXKFIxlGsgBQizV9q5J9NHj4VG0n+pA==", + "node_modules/is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", "dev": true, - "license": "Apache-2.0", + "license": "MIT", "engines": { - "node": ">=12.0.0" + "node": ">=0.10.0" } }, - "node_modules/fdir": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", - "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", "dev": true, "license": "MIT", "engines": { - "node": ">=12.0.0" + "node": ">= 0.4" }, - "peerDependencies": { - "picomatch": "^3 || ^4" + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/framer-motion": { - "version": "12.35.1", - "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-12.35.1.tgz", - "integrity": "sha512-rL8cLrjYZNShZqKV3U0Qj6Y5WDiZXYEM5giiTLfEqsIZxtspzMDCkKmrO5po76jWfvOg04+Vk+sfBvTD0iMmLw==", + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "dev": true, "license": "MIT", "dependencies": { - "motion-dom": "^12.35.1", - "motion-utils": "^12.29.2", - "tslib": "^2.4.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, - "peerDependencies": { - "@emotion/is-prop-valid": "*", - "react": "^18.0.0 || ^19.0.0", - "react-dom": "^18.0.0 || ^19.0.0" + "engines": { + "node": ">= 0.4" }, - "peerDependenciesMeta": { - "@emotion/is-prop-valid": { - "optional": true - }, - "react": { - "optional": true - }, - "react-dom": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "node_modules/is-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", "dev": true, - "hasInstallScript": true, "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "which-typed-array": "^1.1.16" + }, "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", "dev": true, "license": "MIT", "engines": { - "node": ">=6.9.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==", + "node_modules/is-weakref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", "dev": true, - "license": "ISC" - }, - "node_modules/immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", - "license": "MIT" + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/inherits": { + "node_modules/is-weakset": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "license": "ISC" + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/isarray": { "version": "1.0.0", @@ -3244,6 +6186,47 @@ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "license": "MIT" }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/jackspeak": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.2.3.tgz", + "integrity": "sha512-ykkVRwrYvFm1nb2AJfKKYPr0emF6IiXDYUaFx4Zn9ZuIH7MrzEZ3sD5RlqGXNRpHtvUHJyOnCEFxOlNDtGo7wg==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^9.0.0" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/jake": { + "version": "10.9.4", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.4.tgz", + "integrity": "sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "async": "^3.2.6", + "filelist": "^1.0.4", + "picocolors": "^1.1.1" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/jiti": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.7.0.tgz", @@ -3274,6 +6257,13 @@ "node": ">=6" } }, + "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/json5": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", @@ -3287,6 +6277,29 @@ "node": ">=6" } }, + "node_modules/jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonpointer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz", + "integrity": "sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/jszip": { "version": "3.10.1", "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", @@ -3339,6 +6352,16 @@ "node": ">=6" } }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/lie": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", @@ -3609,6 +6632,13 @@ "url": "https://opencollective.com/parcel" } }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true, + "license": "MIT" + }, "node_modules/loupe": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.2.1.tgz", @@ -3645,6 +6675,16 @@ "@jridgewell/sourcemap-codec": "^1.5.5" } }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/mdn-data": { "version": "2.27.1", "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.27.1.tgz", @@ -3669,6 +6709,32 @@ "node": ">=22.0.0" } }, + "node_modules/minimatch": { + "version": "10.2.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.6.tgz", + "integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "brace-expansion": "^5.0.8" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minipass": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", + "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, "node_modules/motion": { "version": "12.35.1", "resolved": "https://registry.npmjs.org/motion/-/motion-12.35.1.tgz", @@ -3765,12 +6831,126 @@ "url": "https://github.com/fb55/nth-check?sponsor=1" } }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/own-keys": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.2.tgz", + "integrity": "sha512-19YVAg7T+WTrxggPukVq7DjTv6+PJ867TmhCvBsYwmbFCsZd344rq2Ld1p0wo8f8Qrrhgp82c6FJRqdXWtSEhg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.4", + "get-intrinsic": "^1.3.0", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true, + "license": "BlueOak-1.0.0" + }, "node_modules/pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", "license": "(MIT AND Zlib)" }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/path-scurry": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.2.tgz", + "integrity": "sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "11.5.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.3.tgz", + "integrity": "sha512-U4N8FgzmWxc8k1VH8Kr6lQg18U7Fjvby6wXHVRX/ZZ7IwWbRMgrRbP0Wrb5q5NVinryp4SQampHKdvtecItxUg==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": "20 || >=22" + } + }, "node_modules/path-to-regexp": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", @@ -3845,6 +7025,16 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/postcss": { "version": "8.5.28", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.28.tgz", @@ -3874,6 +7064,19 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/pretty-bytes": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-6.1.1.tgz", + "integrity": "sha512-mQUvGU6aUFQ+rNvTIAcZuWGRT9a6f6Yrg9bHs4ImKF+HZCEK+plBvnAZYSIQztknZF2qnzNtr6F8s0+IuptdlQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -3901,14 +7104,148 @@ "react": "^19.2.4" } }, - "node_modules/react-refresh": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.18.0.tgz", - "integrity": "sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw==", + "node_modules/react-refresh": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.18.0.tgz", + "integrity": "sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true, + "license": "MIT" + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.3.0.tgz", + "integrity": "sha512-9ns8odR8e9q3otKeHj3DE80jZYKg6zVeZKE+zQmRKXFoVUcuiTGeO6iusDhPRoIQQPVPRvH+SfBhrTud4eczuw==", + "dev": true, + "license": "MIT", + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpu-core": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.5.2.tgz", + "integrity": "sha512-zkmVH92DlzjSFc4xKGZp/2BXIFrDIdBQBC8gUXKCsMgKYb1bkCkxfSuoW1werDjaTEMTbULkHtKFHe1L+Abnaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.3.0", + "regjsgen": "^0.8.0", + "regjsparser": "^0.13.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.2.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/regjsparser": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.13.3.tgz", + "integrity": "sha512-ycwFAS14Jw4mppvmK4GR/J6u3WpWpjkEApehuHtLc/8VpPNpDMbQ4WjqwplXifGeyKOzHSFLmSPqzksDQE2Sfg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "jsesc": "~3.1.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "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": { + "version": "1.22.12", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.12.tgz", + "integrity": "sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==", "dev": true, "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/rollup": { @@ -3957,6 +7294,75 @@ "fsevents": "~2.3.2" } }, + "node_modules/safe-array-concat": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.4.tgz", + "integrity": "sha512-wtZlHyOje6OZTGqAoaDKxFkgRtkF9CnHAVnCHKfuj200wAgL+bSJhdsCD2l0Qx/2ekEXjPWcyKkfGb5CPboslg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "get-intrinsic": "^1.3.0", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-array-concat/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-push-apply/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/sax": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/sax/-/sax-1.6.1.tgz", @@ -3982,6 +7388,65 @@ "semver": "bin/semver.js" } }, + "node_modules/serialize-javascript": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-7.1.2.tgz", + "integrity": "sha512-GL2BWwVa6JydKO6l/ljVgjAZF4QJ3S7dWDWi53s5GZT8PJzD2fNxi67HANQGKAqPrwEpL5ba7gUBGi0Ls/sEoQ==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", @@ -4051,6 +7516,105 @@ "node": ">=10" } }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz", + "integrity": "sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.4", + "side-channel-list": "^1.0.1", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz", + "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/siginfo": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", @@ -4058,6 +7622,39 @@ "dev": true, "license": "ISC" }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/smob": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/smob/-/smob-1.6.2.tgz", + "integrity": "sha512-RQsvleCbF8cVHEv+xuDGaA4pOizFqJ0GgjtMSRo6oP8pnN7WsigHgVGey6aILRBKv4W2YOMHLqbKdnB6hpB9fw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/source-map": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0.tgz", + "integrity": "sha512-d8EqvL+k/SOXCreS/SUzg2ciyHqBBLcN/yuRjFsbvVhHTE2pgei7oAhmPM7kWFbkX6OSMQfUq4KbkF3au9lhYQ==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">= 12" + } + }, "node_modules/source-map-js": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", @@ -4067,6 +7664,27 @@ "node": ">=0.10.0" } }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/stackback": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", @@ -4081,6 +7699,133 @@ "dev": true, "license": "MIT" }, + "node_modules/stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.1.0.tgz", + "integrity": "sha512-tHNHTxInrYLCga9O9YGxWA3G9/nnzQw8UGAyqGx3Ar1pSTTzIuM4woFSq4SowkXCjJIwq5sIiQvEfRI9tCH1qQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.2", + "get-intrinsic": "^1.3.0", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "regexp.prototype.flags": "^1.5.4", + "set-function-name": "^2.0.2", + "side-channel": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.11.tgz", + "integrity": "sha512-PwvK7BU+CMTJGYQCTZb5RWXIML92lftJLhQz1tBzgKiqGxJaMlBAa48POXaNAC2s4y8jr3EFqrkF9+44neS46w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.2", + "es-object-atoms": "^1.1.2", + "has-property-descriptors": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.10.tgz", + "integrity": "sha512-2+3aDAOmPTmuFwjDnmJG2ctEkQKVki7vOSqaxkv42Mowj1V6PnvuwFCRrR5lChUux1TBskPjfkeTOhqczDMxTw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-comments/-/strip-comments-2.0.1.tgz", + "integrity": "sha512-ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, "node_modules/strip-literal": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-3.1.0.tgz", @@ -4114,6 +7859,19 @@ "url": "https://github.com/chalk/supports-color?sponsor=1" } }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/svgo": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/svgo/-/svgo-4.1.0.tgz", @@ -4155,11 +7913,66 @@ "engines": { "node": ">=6" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tempy": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tempy/-/tempy-0.6.0.tgz", + "integrity": "sha512-G13vtMYPT/J8A4X2SjdtBTphZlrp1gKv6hZiOjw14RCWg6GbHuQBGtjlx75xLbYV/wEc0D7G5K4rxKP/cXk8Bw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-stream": "^2.0.0", + "temp-dir": "^2.0.0", + "type-fest": "^0.16.0", + "unique-string": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/terser": { + "version": "5.51.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.51.2.tgz", + "integrity": "sha512-bWnjSNscmuI+GJze6ZupnHP8G/cTcsJF+bXCeQknk2SHQsgbNJnLrqiH9jZ2W4STPVXH2mDKKRX3iwPhc9Cn/Q==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.15.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" } }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true, + "license": "MIT" + }, "node_modules/tinybench": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz", @@ -4227,6 +8040,96 @@ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "license": "0BSD" }, + "node_modules/type-fest": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.16.0.tgz", + "integrity": "sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.5.tgz", + "integrity": "sha512-0FHJvLPqZ7KJzp17O13jfsAjsqazgrxBu2zEK95PmUz8lv2+GjRuxUInCr2Rk9Dms3ihN21zJ929ZO43yJ95QQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.9", + "for-each": "^0.3.5", + "gopd": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.8.tgz", + "integrity": "sha512-phPGCwqr2+Qo0fwniCE8e4pKnGu/yFb5nD5Y8bf0EEeiI5GklnACYA9GFy/DrAeRrKHXvHn+1SUsOWgJp6RO+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.9", + "for-each": "^0.3.5", + "gopd": "^1.2.0", + "is-typed-array": "^1.1.15", + "possible-typed-array-names": "^1.1.0", + "reflect.getprototypeof": "^1.0.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/typescript": { "version": "5.8.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", @@ -4241,6 +8144,25 @@ "node": ">=14.17" } }, + "node_modules/unbox-primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/undici": { "version": "7.29.0", "resolved": "https://registry.npmjs.org/undici/-/undici-7.29.0.tgz", @@ -4268,6 +8190,84 @@ "pathe": "^2.0.3" } }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", + "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.1.tgz", + "integrity": "sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.2.0.tgz", + "integrity": "sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dev": true, + "license": "MIT", + "dependencies": { + "crypto-random-string": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/upath": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4", + "yarn": "*" + } + }, "node_modules/update-browserslist-db": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.3.3.tgz", @@ -4409,6 +8409,37 @@ "url": "https://opencollective.com/vitest" } }, + "node_modules/vite-plugin-pwa": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/vite-plugin-pwa/-/vite-plugin-pwa-1.3.0.tgz", + "integrity": "sha512-c5kMgN+ITrOtHXp8PAtk2uOIEea6XjP/unCGxOWWBzQ6qa65qj/awHg0wf+QF9E/2u9vh86LqxPwzEPNbM2r5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.3.6", + "pretty-bytes": "^6.1.1", + "tinyglobby": "^0.2.10", + "workbox-build": "^7.4.1", + "workbox-window": "^7.4.1" + }, + "engines": { + "node": ">=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vite-pwa/assets-generator": "^1.0.0", + "vite": "^3.1.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "workbox-build": "^7.4.1", + "workbox-window": "^7.4.1" + }, + "peerDependenciesMeta": { + "@vite-pwa/assets-generator": { + "optional": true + } + } + }, "node_modules/vitest": { "version": "3.2.7", "resolved": "https://registry.npmjs.org/vitest/-/vitest-3.2.7.tgz", @@ -4482,6 +8513,124 @@ } } }, + "node_modules/wasm-feature-detect": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/wasm-feature-detect/-/wasm-feature-detect-1.9.0.tgz", + "integrity": "sha512-zonE+xlIIYtxPy++L24ow0hAD8CICb4+FgPyROd3buyXIqsJvUEDkBgfCCoXOd1Hu3DUr0GOfnPIdcGV+YpNaA==", + "license": "Apache-2.0" + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.24", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.24.tgz", + "integrity": "sha512-wk4Mf4pR5mRP7eYuuTBCIQ9d0ud2Fv2jRLQpfgnRjbOxAFHmjKFValgTpitVKzJJS8ajnYQV2Du1SZ8j6b/EUQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/why-is-node-running": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz", @@ -4499,6 +8648,226 @@ "node": ">=8" } }, + "node_modules/workbox-background-sync": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-background-sync/-/workbox-background-sync-7.4.1.tgz", + "integrity": "sha512-HhT7KE8tOWDm02wRNshXUnUPofMlhenF2DBdUnDPOubhizzPeItkYTmAB6td1Z2cjYPa98vzEiPLEuzn5hN66g==", + "dev": true, + "license": "MIT", + "dependencies": { + "idb": "^7.0.1", + "workbox-core": "7.4.1" + } + }, + "node_modules/workbox-broadcast-update": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-broadcast-update/-/workbox-broadcast-update-7.4.1.tgz", + "integrity": "sha512-uAlgslKLvbQY+suirIdnBCSYrcgBhjp81Nj4l1lj/Jmj0MJO2CJERnCJjT0GFVwmReV0N+zs78K6gqd5gr9/+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "workbox-core": "7.4.1" + } + }, + "node_modules/workbox-build": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-build/-/workbox-build-7.4.1.tgz", + "integrity": "sha512-SDhxIvEAde9Gy/5w4Yo1Jh/M49Z0qE3q0oteyE8zGq0DScxFqVBcCtIXFuLtmtxRQZCMbf0prco4VyEu3KBQuw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@apideck/better-ajv-errors": "^0.3.1", + "@babel/core": "^7.24.4", + "@babel/preset-env": "^7.11.0", + "@babel/runtime": "^7.11.2", + "@rollup/plugin-babel": "^6.1.0", + "@rollup/plugin-node-resolve": "^16.0.3", + "@rollup/plugin-replace": "^6.0.3", + "@rollup/plugin-terser": "^1.0.0", + "@trickfilm400/rollup-plugin-off-main-thread": "^3.0.0-pre1", + "ajv": "^8.6.0", + "common-tags": "^1.8.0", + "eta": "^4.5.1", + "fast-json-stable-stringify": "^2.1.0", + "fs-extra": "^9.0.1", + "glob": "^11.0.1", + "pretty-bytes": "^5.3.0", + "rollup": "^4.53.3", + "source-map": "^0.8.0-beta.0", + "stringify-object": "^3.3.0", + "strip-comments": "^2.0.1", + "tempy": "^0.6.0", + "upath": "^1.2.0", + "workbox-background-sync": "7.4.1", + "workbox-broadcast-update": "7.4.1", + "workbox-cacheable-response": "7.4.1", + "workbox-core": "7.4.1", + "workbox-expiration": "7.4.1", + "workbox-google-analytics": "7.4.1", + "workbox-navigation-preload": "7.4.1", + "workbox-precaching": "7.4.1", + "workbox-range-requests": "7.4.1", + "workbox-recipes": "7.4.1", + "workbox-routing": "7.4.1", + "workbox-strategies": "7.4.1", + "workbox-streams": "7.4.1", + "workbox-sw": "7.4.1", + "workbox-window": "7.4.1" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/workbox-build/node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/workbox-cacheable-response": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-cacheable-response/-/workbox-cacheable-response-7.4.1.tgz", + "integrity": "sha512-8xaFoJdDc2OjrlbbL3gEeBO1WKcMwRqwLRupgqahYXu75yXajPLuwrbXMrIGZuWYXrQwk0xDjOxZ/ujCy/oJYw==", + "dev": true, + "license": "MIT", + "dependencies": { + "workbox-core": "7.4.1" + } + }, + "node_modules/workbox-core": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-core/-/workbox-core-7.4.1.tgz", + "integrity": "sha512-DT+vu46eh/2vRsSHTY4Xmc32Z1rr9PRlQUXr1Dx30ZuXRWwOsvZgGgcwxcasubQLQmbTNYZjv44LkBAQ4tT5tQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/workbox-expiration": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-expiration/-/workbox-expiration-7.4.1.tgz", + "integrity": "sha512-lRKUF7b+OGbeXkQk1s6MHXOa3d7Xxf7Of31W6c6hCfipfIyrtdWZ89stq21AHZMaoG7VNFoHply4Ox+rU31TWg==", + "dev": true, + "license": "MIT", + "dependencies": { + "idb": "^7.0.1", + "workbox-core": "7.4.1" + } + }, + "node_modules/workbox-google-analytics": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-google-analytics/-/workbox-google-analytics-7.4.1.tgz", + "integrity": "sha512-Mks1JwLEt++ZAkF6sS1OpSh9RtAMIsiDgRpK+codiHGIPXeaUOgi4cPc3GFadUl8V5QPeypEk8Oxgl3HlwVzHw==", + "dev": true, + "license": "MIT", + "dependencies": { + "workbox-background-sync": "7.4.1", + "workbox-core": "7.4.1", + "workbox-routing": "7.4.1", + "workbox-strategies": "7.4.1" + } + }, + "node_modules/workbox-navigation-preload": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-navigation-preload/-/workbox-navigation-preload-7.4.1.tgz", + "integrity": "sha512-C4KVsjPcYKJOhr631AxR9XoG2rLF3QiTk5aMv36MXOjtWvm8axwNFAtKUPGsWUwLXXAMgYM1En7fsvndaXeXRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "workbox-core": "7.4.1" + } + }, + "node_modules/workbox-precaching": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-precaching/-/workbox-precaching-7.4.1.tgz", + "integrity": "sha512-cdr/9qByww7yzEp7zg/qI4ukUrrNjQLgN+ONQRpjy/VqGQXwkgHwr00KksGJK8v0VifwDXBb8a4cWNZH71jn3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "workbox-core": "7.4.1", + "workbox-routing": "7.4.1", + "workbox-strategies": "7.4.1" + } + }, + "node_modules/workbox-range-requests": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-range-requests/-/workbox-range-requests-7.4.1.tgz", + "integrity": "sha512-7i2oxAUE82gHdAJBCAQ04JzNOdRPqzuOzGfoUyJpFSmeqBNYGPrAH8GPoPjUQTfp+NycwrD2H68VtuF8qxv0vQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "workbox-core": "7.4.1" + } + }, + "node_modules/workbox-recipes": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-recipes/-/workbox-recipes-7.4.1.tgz", + "integrity": "sha512-gnbVfmV4/TtmQaM4x9AtuXhcdstJsep3XMVeztOrQVPT+R6+6DeBjGTCQ7fFCXm+4GEHUA5VEBTyi5+4gWGeog==", + "dev": true, + "license": "MIT", + "dependencies": { + "workbox-cacheable-response": "7.4.1", + "workbox-core": "7.4.1", + "workbox-expiration": "7.4.1", + "workbox-precaching": "7.4.1", + "workbox-routing": "7.4.1", + "workbox-strategies": "7.4.1" + } + }, + "node_modules/workbox-routing": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-routing/-/workbox-routing-7.4.1.tgz", + "integrity": "sha512-yubJGErZOusuidAenaL5ypfhQOa7urxP/f8E0ws7FPb4039RiWXUWBAyUkmUoOL/BcQGen3h0J8872d51IYxtA==", + "dev": true, + "license": "MIT", + "dependencies": { + "workbox-core": "7.4.1" + } + }, + "node_modules/workbox-strategies": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-strategies/-/workbox-strategies-7.4.1.tgz", + "integrity": "sha512-GZxpaw9NbmOelj7667uZ2kpk5BFpOGbO4X0qjwh5ls8XQ8C+Lha5LQchTiUzsTFSS+NlUpftYAyOVXvQUrcqOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "workbox-core": "7.4.1" + } + }, + "node_modules/workbox-streams": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-streams/-/workbox-streams-7.4.1.tgz", + "integrity": "sha512-HWWtraKUbJknd9kgqGcpQ3G114HOPYvqs8HaJMDs2ebLNAimDkVDaWfAXE6Ybl+m8U6KsCE6pWyLYuigWmnAXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "workbox-core": "7.4.1", + "workbox-routing": "7.4.1" + } + }, + "node_modules/workbox-sw": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-sw/-/workbox-sw-7.4.1.tgz", + "integrity": "sha512-fez5f2DUlDJWTFYkCWQpY10N8gtztd849NswCbVFk0QlcSM4HT5A8x4g4ii650yem4I8tHY0R7JZahwp3ltIPw==", + "dev": true, + "license": "MIT" + }, + "node_modules/workbox-window": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-window/-/workbox-window-7.4.1.tgz", + "integrity": "sha512-notZDH2u8VXaqyuD7xaqIfEFi6SRM4SUSd7ewe9PDsVqADuepxX2ZMY3uvuZGxzY5ZOsGC/vD3A/3smFtJt4/A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/trusted-types": "^2.0.2", + "workbox-core": "7.4.1" + } + }, "node_modules/workerd": { "version": "1.20260923.1", "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20260923.1.tgz", diff --git a/package.json b/package.json index 7b94e8f..e0e5480 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,11 @@ "dependencies": { "@ffmpeg/ffmpeg": "^0.12.15", "@ffmpeg/util": "^0.12.2", + "@fontsource-variable/nunito-sans": "^5.3.0", + "@jsquash/avif": "^2.1.1", "browser-image-compression": "^2.0.2", + "gifsicle-wasm-browser": "^1.5.19", + "heic-to": "^1.5.2", "jszip": "^3.10.1", "lucide-react": "^0.546.0", "motion": "^12.23.24", @@ -31,7 +35,13 @@ "tailwindcss": "^4.1.14", "typescript": "~5.8.2", "vite": "^6.4.3", + "vite-plugin-pwa": "^1.3.0", "vitest": "^3.2.7", + "workbox-cacheable-response": "^7.4.1", + "workbox-expiration": "^7.4.1", + "workbox-precaching": "^7.4.1", + "workbox-routing": "^7.4.1", + "workbox-strategies": "^7.4.1", "wrangler": "^4.139.0" } } diff --git a/public/_headers b/public/_headers index 2887510..e1c0925 100644 --- a/public/_headers +++ b/public/_headers @@ -1,6 +1,9 @@ /* Cross-Origin-Opener-Policy: same-origin - Cross-Origin-Embedder-Policy: require-corp + Cross-Origin-Embedder-Policy: credentialless /assets/* Cache-Control: public, max-age=31536000, immutable + +/sw.js + Cache-Control: no-cache diff --git a/public/favicon.svg b/public/favicon.svg new file mode 100644 index 0000000..fb19d6e --- /dev/null +++ b/public/favicon.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/public/icons/apple-touch-icon.png b/public/icons/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..de6ef52f0ddf625c93b5eb0cd07acb13317e13cf GIT binary patch literal 2328 zcmaKuc{CJ`7RN`MiR=-YY+1@oh}2Mz5_tF*BB7jDB{KBs5{{Qmg;aqm6n-oNg-_kQj-;Rf80k4KUR008j8jPxz{ zW9=^k9@zKQl>{UJ0Q?Bkzh?a)XW2z09U@={saw9b4 z>E~yb(w`MAMP+O}Man2^`Ey}IrS<0FWe%F1>rq&F;WH-`I{D68sNjvV5Xa8Ho8Ya7 zVW?Tirup@$=fQmB3EWio(&JeSn^Oguck*1xVdn;rM@Lh`1s3HWQqu(i2bln|HZBPE zpgoZLr69knET}~f`Y;9!;QhUT5#lGmul8ja>-LP5#l&cRoe&>aQjO?4x#1ANijm%I~DN^<_%BEn`2=B z_xtK#r)pl^h7Ky4&W=2wQN1?Y#(zm#h>}RBqVrn6KSZLsxJs`7tp|hjx8(V66DMPy zrt8&$>}OZ=^{jasM1Qs0d8a!nKUOHm&PwN8Tu%NUPRLD~w;eaF+ za9fC`C?%piC3^8icIVEeA-gzZlf=Y9vwxuwLQS9~95qcIy9kks$?D98SUUWySughs z-&k+c!qQ!8C@gK8#<NtMq?9Mz+*3Gz zCwkhyY#NWk>)NditQ|Xy=xe{X@CiJ*(oxZib2bN^Bo(>xhC(gt!zady^I5%h($_zY z-cA3X1+I8rftb%Cw+ov+)D;xa@={hda?V+w4~1ZKp}E&HH1oIo?qO&_ZAux?!?#IVRv zmp!H98~l#Y&DE%$fYP%7EGVO?X=gdywO2L5$;!zjqG$%_+#G?-eWDH&;RxtwaK zS!~qZ?7=i)yGn(AY_IJLxQoJwDa{cRperbqvX}4dZ}!zyH9_$Wf|LacW-%Ox7|x_@`TnV1 zTdBwyPSyN**y)M&FkZQ7zJVt8pr^HM6o0wK1IWIr(weleDwnHT4_ z(~0th2F|m=on4=aMbwD4VX5fQp}0|=mlxWjg47Ba!qIIGj$8+PXc))L;G)5rKw^w?Qc4i2?(dN^y97sB$0}{K|H!{w--{@OWVWl=H~f4a zs12#ic3&>3CdJc9e(Gewj;ZqZOIGd#S|f2}9;8LS(|CznM5am3^;}L_+LyF9D#Z$p zhq{unPnv3UBBkR?sLnp^HN`cxVaevUMgiKSv7M_gF^x=noqvYX|3pLh5deV02^1-n g+1EEmehHg{0HHImdT*H*TKgFQ%mA+cLeDk&FJ+E#A^-pY literal 0 HcmV?d00001 diff --git a/public/icons/icon-192.png b/public/icons/icon-192.png new file mode 100644 index 0000000000000000000000000000000000000000..1d60c0782ec4891b599b85f3a93a0b330a3d60f6 GIT binary patch literal 3724 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 literal 0 HcmV?d00001 diff --git a/public/icons/icon-512.png b/public/icons/icon-512.png new file mode 100644 index 0000000000000000000000000000000000000000..464b55cfa685a03de06b0120cfd2bfabde86af59 GIT binary patch literal 11513 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 literal 0 HcmV?d00001 diff --git a/public/og-image.png b/public/og-image.png new file mode 100644 index 0000000000000000000000000000000000000000..2736c9d84e6f138d569fc4da1f7b4fe68c1a4dba GIT binary patch literal 241878 zcmYJ4Wn2^N_x}kgX{NM5Udt)PZz&H#pcxaU-RrJ5;)n(9zvUcMa(pFdF=G ze{b*K|2*IUPxiWYUFV$7d7sZhRo^O;-(|dugM&l<@`d6%9GpAlI5>D7#CW&=X@0mv zii1Oi^HNbx1D3YaV7ucn8%uXwRO?Ln?3j)5VMsoAOe9;5*^7{0?UbEoauFn*XSflr zFP-c(sDVNUbJ^`|{2meVbIL3lHN~(CD{d@BR9LhT6O;(E4;y zp`T{a#KI*!cy#|VqwxLy&&>7n50=Vnu$YIDX$( zE-G{!Q*iu_Q5eeI9b>?bp_9FqPDK~ZO7^xUFBO2N_b*c zLrl~qwApIDoN4)aRIRt*X}?zK^^*;??V-){HC-^AA&Roe;irLZTKNM(PmGAsWkcYp zp>XDtB0jCUbA_qQWr5dVdu9AQkdlI3N9a zVeztY1P(XsLM1{=Ml|EkuRHRe3@fcuWW0X_*3{MqXY|s+muf1koFrB2M;UbazV?5; zNlG^9Vdp=PEV&=GE0iX>kg6ur!J3mBh{nBSFI5n7@nynvP`bK1C_OkhQaD)_=olo? z*ZW`C!A??9tcOr@v*QIWO;tgSR?cV%vM(>8G#H{x{lEaK`B2~yfVf- z28fJKxN199-C~y=Yr`D9PkOzsG9J?;q`Je6UindaddZBtgY)HQ`y(?_Rs9qWEBSz| z^3$8o#Y)HTjWvw*DYm^H*uwOBeE+(~|JC<5{oNOGiWBZHc(gb+M}uC(&llIe8S)uf zP;59(v?Bg{#ag#lyl=FQFCeyoqJ2a|JeO7FL*&OhuapZE=hsz;Ez#xCj9O%-QG}}J-4&9+ z=`lG9MNl@`bH@Gk8~m!D!eQ-PtrD^rdtoHszwye+PMai!llnUvtQ zPA?X%!S6Tb53bmLo2iYyCcjHXi|c^QC3 zDvxRx0u?1{yaEQ{G7EBC(hON!kNvro=mxl!34-#4Pc7VyJ6ZFdXFeoSkrX4PP8n3o zACxz^Zck(rH9Y$75KsBTnUL>n5cP5!l*!u)lGsVvk%y_Ay+8D#TY7uDx-n-vL7RWlUIE`Gtq$nVpoteF8C~JBM(>n^!l@1yPxVBl_vAcVG zmo$E8!N}!^`Kb5C2f^0pu3pwcVF~MQd#E^XNnV-2@8yD1OHFecoTPQdbb2-5^aC}@ z@8lu@gVYaZ);L=U%{uoByyQ_{VD{a)`^E=I6H#YfVoQ5+XBozQ>oX!Nz1{>WlN0B+ z3ens6)}k9^+3BnpeZo;;Y%&_Ph#CxLjVn-x1ZlF+KwxtZUA^kphQk%c=R;M}CcC-r zx`ujjsedj>1v>m&lhuAT2{E?KL^rCE73g-o8sqEMRJqEeVbvq|whmWVE8%`f;kw8j zi8uq>e`j6$w#%>q2h$yuVAmUY4V$0N8o*wlG+oU)SQ8|wtfSy0ecSF0eU5%*6MyWy zxRu{EV%`rA9U{lTO@Z8bFIwBw`*^NmAa;j88MJQL(TS8$2sYRkk_R$%$Xp)`BVBzx zA2!=oO1aBS@)AZ!>bA=@N#kxmvg7`TrKoge+aLRqBOUU}o93oz#K%ucCSjL-c_Dg1DFo@3V3~sS4_ZjJ*aVgTTUxn3{i7)08pjnn zc<+6(n}#P@GS4X`YKZkZ0kD3DgNRA;t@yKwv$mJ|8#!ZX3rdir+^F-AK%U5oowL_} z^v*?1T!FluzTW4}Qk9u1g)&z<53TFUCASL~wtj(wCr@-U zqK{?NAo*v@^NrG1BQ&0H`3E;)GP@*oT>!T&{!NeEsx#AH4E|Z)NUe76^;o@GaY z>r5+m`13YmpRCesZq`rn<`!Dfv@fh1mhs(7=5v!R5uxs*eva@+KU}N+mFrC?=(hiB z_HLgWP;FB>K1kx{)8;Qd5Q;TNX^r1H@)HmQrIi@WOn+ieo_S!;N! zDQLMSV_5&|PH8@HjEBEh!U*0YDxm~QuI9K!e*@|_&Tq%0yW9#I*rxqjbT(cFrXPHnT?URd+pY#4r zKbvyb$2p(=`L;8hg=WR?;m;lr{dBE*Nk zWxRFb7SLl~xlTjEux`YW$dWKf%lQh6zN5PY*?m22{(l9LKZFU{InuQ$w5FNHKIh^a zRLgOuL6mgh0(x~7ZtU!Wm>MVddiuVXoJGcX>{7S$dA!MOTjbL>36lq>3aUI#JV1Mo zAes&0eb`F3@v~7{W10KZBw1?VrVpYXUK=^hp${+T_ywPokK%fcTN+7ke@^Kk?_;zk zTA*^;&P`mmBmFu8u*1U|AW)IBdU3|%fTxZkSeR{w%UlVt8raOjkEqQ-uDSLXV7$(^k z$OqB@u2Io}g|r<&rfXyp5yX=7hOxmrk{sYTU3k-FAp6=CEySkGYQ=J!yj@N1 z=*;W7l-{t(0430FZ^U4E^%ZB#(XZ_f)yC5stB|izT>YK?J7D*5-3UI1VqxP$_1Lw) z&q{j!5RX(0*8Xvjdv^$eMSiQ!m&4Lyj^FCy#357+e9boM67Fq*nfN zdao@|j10hf#Rh!$6QlV!J>mDsdu_sK`}%oP=gedGcSH6U)p~cQilb(K zqgtu%<;d(M13VyEApadZ($6fvFJ4e8jhQn>+9s7PlmLbo8)?uq z2+Ol_9H-Kr^;Kk6Fqc>hSMjM@-P$l;jSc#9UBbTs$rVuOmMiMx-uS_&yF3)lzz?-% zC^P5{-`ZPAgiI=+>A~{K-*B|RxrIh;=>e}8*O>Atc`pyKkQ#wU1N&`KpL3a)UtSxP zjCvQ>xBtGVjGanN5%&3^JVYiz%J-A^yW^}=@ZkB#g9XZj7Y#n(WiFNkhL4nXqOgWf zor`Z^9sKyQ^IwXfMarxxnt+g9$M`S;zGz|S5vKi{{(9CoIwwWRGT$DU{J-6++DGqq zpcQS3@j$mp7x_nX>R0Vo&J**?gsk285QCMXF>;z4SIU*s=D932!q_^w4h~mDdnc$d z(s8|#n#018%ZhQ3h1kZdU(qt?6)m`S3tw$pd1+e7*ANb}8sWz0-QPDjm834+hJ`zR zN;3s3yQQO~JB!V9$A7dAmsI`YwHM`%*(UXRMr$1p2MJMi*qAkMAq zv-$oLlx>Ch{5kHf%)^DMmZJ;VjnB9y3(gMkR(yU^qeZjwc#U+g@6{BMwNU(b1Iq@r z=YDtk@yV0zC`zPV1oqdZ45v}(&DEeTmlNkUt{?LQ_qgj7_5H|(FjKioH6`aXM@XB0 zHOF~%Zwr+dZ+m6-V&qWb8PnYS=-g6&;KX1lrmmEU`TauU?_*KNB0mu=sb5ta?}NgQ z+hLfDxC`I(`Z5MxJ?vPxr^LyF4ucgie^2`UHau`24O%A0Ni)4NE&--KLBhDYJ3 zPWOB9b&Y7RR3@LReen_|A2MbyaAinH7j!-g=e}4-^QLaU$CKf^0Bsq8Jza;y!R@L=Vw1>tg(Bs(+Y`Zm)cZu59U{dPwFaJ=#6m z49ZT*5p)JZHl*fv8eKy7fG=LC>PhY}TQB1vvXRk$CxXm(f0kbEUfn|)c7Jf2Fv`2W znX;42#gH|;O+x-u`}WZ_KcCM!0(K3pLlGIj#^1TdniSVeJ31|K3mq8G5ANd1k4 zT8B+wa(yCAE7Hr!#rI2a!|!Uo;u1$8>(1(u{f`pAdb|ei`@PIKAd`WY7qE5$%!;uA zM1B-6w(+sHRbxamcb=ia(KQZje#aNG4TWzz+P3kRLF{S3XJu`z0G1&hLqA3S2!oun z(%Swv+C2@=TtY|p!Z1f!?SPR*YJzbhJ!_K%N`k}}LV_nsvj27a%va|j>{pHGwU9)b zYo)RD4jDNiG5Weju(a61s|}H5Qf&F$+8O81A1(PZH4nBavr877FK0ZdX13%xr4OEV zCB1*8W3YlRV)Y>K#_r{UQbEF>y2KcJ3a&E8p3Z}7XcQ?^PnP;XPvzYLJ5tL@E!i{B zK~lZE1 zf}L1KW~?zTNTE@CsP(NrValU_RpjkWe(D-8d~^0SuLWcp{`O>!&DEE&?DZ;o%fE=q zbDOaC%v>BdY8HwhE;eycF)&M$tWs!4<65I0o;BwC>z_4$WO}V_`StE2f$dX9R1O7I zKkiylpUxga4G|!==)9+W{e))UHcbPoJ;^MsZ{3|+$x@J*M4qx%clafkH-p~%v>Lp4 z_Thztl$rj~0vA^p7Wr{?83%(*m;`qKjF!`Z?X8!%1h;9nLr59wudLDadx$%FFf=n& zQG4iMI5@yGUl7(24je1;VDrHKqEb5KT&GKkr=ERnkhAc=q0L2F%iWhvBF!;AR>dL+ zp3EosG9Ql0!y{^+7=jV3?L ziIe-jv6l7bc}(+PMUaLs12LiO$BgokoFPnil&(~=J$!uG?61%YJ>)EAz-bXbZX+pn zKg!%frrQ$OhOTrP7H^o+GIMgNmY)~hQlsso&x@yg?e#%!XSDV1J5g?$uAnMO*?rQ3 z+LsmR<0Odp=;`tows1$?%x7ia*968P6f0_<7SyAHE!TZ3Q!2!Yo=*RjPgs?L4YePc#Aaw;YitSR64HRp`gL3+0A)SudD$Bu0I|_KfhG9@o z==5>W(=g_42|vRC^hVusbJ|-I^ayCUDZAipakj0QKiEpPkvy#pe^#m(MrAIz>mH^GQ+~X_wGI zukgHW!ej~EgATTdnhfDIOqigLVckz2Cl_Is^`B>8rPbdBLH>{lzjd%6r`R6RpZQkc zY-3J4bV)~|Y_{rt(95dU#F){FY592 zti@mfnN1suQY{&$q$L1cgU$ZY2z$+N?x+6qa?EeQixx&mIXap4U%ZWK`HSMr!Uy|Xat4c4P{ccTMC@6^ z@Ll#?@3dm$!!VyWbMw%WtSX(rjO^FurIgj1hhTX-n+vqaspedt`spF3^qjW#PAO=V z9?7IY9Oc#a!&0Ti@I;5FqNuE}#G{fpZ5yBKt~x?U?J*PTc0QwTCn_e4YsD_ew+}p*4B|?q`Mg#WI4>c}rlwa5`ia$qB22RZ`JFA2%u*S$E`F?mT(_{f+aq1^4#}4+gNN9U1&Kt_e3eQ2PVEK3d~OUIBhw!h z3mQ9l4QbqXmIvHX84VL7|BJ(uK2qRwJTc-(?G5At{Db{d>hSd+Ez}FIgo5ObI)i%+ z#Li?{V0VJP6f)f_s8{^rAb|0f3~j#s@-Jq|`Zvet*a)9EQGF1?=^Dlp>n6J|sBLtv z1a*y}4Bsygd=~T0XKi}oa%^(%NnbdSP8-7E!S>pHl|aES@ze`$D2>W#{YYELfk)tbv)okxsTvE}yb^i;{A9cpQ4- zx3i7^e3FFv@f!5QB+`T}w+$`WoR~sW#RJNU_Abuq|xpj}}Jb$A&Xbgca4l!z%UXmI7J& z5;B+RJu8>zK<1M=$@^VP^m<)O(g!rB#lVdr^L+76yQeVGkl!1ilRf9;g-Pb**_5Gx zv|8WPEfSHK?@)1l!WC`j13w@(fCREt29uwepE~d}C3KbW?PJd<8T&R%CTYGyQa}DO zbA|E3z#}({BxFYrg?`1VZ_RGq^p}jG{146AumK!o(p0SLb8Po+sdYZ=Y`Xp=AXy}! zUM}iV%)q!gbCUd>*2&og$|?G+VNT1X-P#tOP-CE$P%qby_RatyC4Oi|VFD0^lMZ2O zZzZY$H+-k}_qi5^1p8l9qq^=}eYvbOcKGK&ri~pUrBl_<%?zyf3lhJ;_1^3-3Q3AX zLc*YAjE|(!7fmA_Kj(!C!8&O#B9k1c0TCgr)Rdi&PvRM1fBnP<)FLu&Phxqx(kYyIrOW;*8W@w!nD;Lr~V2LHRJ(UT^q6ha1vyPzBvDWYn3 z{9iQ?{yMF*2xet&jHF_U-@?z3J3Tmzg(AF39Iao|u3Spps=XY-w35TG;enLl$(l<> zy~|4gnmv25Sn;(NOcD0Io0Xmod-k`ViK+c0GS~SvV;v@c&Ayr=o|)u7wW7eYe`trx z8&5(c1T4JOB@siudjmXyCjve@R#Y)qdAdcXAR7IPl;U*$?v>!x&%h@&NtSq+D+;c6 zG?a^fleMvrRJvp`Y3@l%WKuJOymDkWd6*lbYrJ00pU!oK3(d8}R~c;Jia;C9XCaHK zaBszqatHYgiI>yQu{=%3iW;oFjZ_s|YQkBcg_&0~8Z&yWb{N3U^z4RwFxK^? zp$M;`{+9v9-=yRN$B&?hd(#WQ38NB>c<2|j6&uKal04E>ac_QI7yhYlTtMw~c9zDi z1t!<45nhs6(|f=E9;p7HL;x;7fu0as=sZ{2c33=dECzxKz#N~E!UQH!nc#iQSlNqL z@*JIeZ7x1PaAht#Kn2-cav9FUp_YxY@YbnVX-6L=QS{>6Q<>=I7MEd%tB1Ru%v5!OOK5J|fu^ihY_!fKJGb~W?x>dq-SH^5Dfp*g?qs%VLmz1SvvXKWHEH6;ZVU1x)e!Qo7 zldh4|n`9Umy}stB4c(_l!P_ZpK`f4zu~y>i_~yHvlGzr%>k$Z+b&{we_zXS2 zCgjCB9b${b*6d>#kPLRcX96%8Qoi_ zF%8|SAi7;F@F>wQUoeIHNc)=Zoz}II}4pGNC2^1&J%bp4gXf$QP zu6WrsQ!?H#ds@v5WnV&1GWVRV@fP#dBYi(sh#G&{pIzE%`t|W`vPo`Z)o3BH4s>mYV=ORGY<`OEbZT)Hoin3|sP|5(6S73fQ>!(E(Pt$hDjK#;S#t|3xT@k>){eo}53RSm87|;R@LKJ>5fCO|+xglhG zu)h`$K4hc-eO50#pok>0<&VlCwRq+TjToq6GeKfV7*jZk%1xh2jH~~t(xb51nO>F> zjZP9Voe83kgEzjmJ#J?9s7+FI{iUE$BcA~xqP5HF6wlaNcZ)^XTF0=24$8mPq4lkl zPtj06={Ua$cZa=`K-1CGvCF;~sF9fSrH!Epk2N6)-qC#v8SN!4r%fU34hs%2xd2iWX4dCN{`PjoHR8 zS)(F_h*MoFC(hA7FH+I?LT=;HV~}GW4t$1aJE8ay`|l3ow>tYFhw)V-y~z)l`_g(ev!JL18c&tzpJaX%5{s7$Zcou%mf_1hIh73nlN zw^h&(y6l_E%UMm|CEQH^YXWo{&|ndYeo!~Sm2k3B)R_oIu^cV@96a^+36^$~8n__3t{Ws3UcWWDEggfAIGr#)b0971p|wuz!F@5< zopTLxP5039_a@EacRHQ73D@aWT@gtYb>u|#`~p!#rT5cxnQJZCpKxyfa!^fHN*g0m z8puUW%yF#Nd#};feD{IODbIwI$-%G_k_twd0-^<847ybv+xFjqLX%>!q(Nc+=`1*2 z5-@JqBm7GAPy!-e=p}y-v^+4$GdM0S!pbsV?>O(HnpUe z*7Q5|iqb{z934Ds#2Hji2Z{4k{tj^a6={OE&C~jJVA}W-#>B~&2kRptbt-3c3*Zle z;TzYu9X3CN8YsU0!EIu-X*DaK`kBKVh1UfWne%xtcqsvtXreg1SC;ATTyH;NY-o(Q z6VY0Ai-xskjFN#!9J*281mKzd>| zn{Kb2SSvj~r>|8k?;SSX4W#HCl(>L1VYqw-W?Z;%D+Lm%)B5>efA7$#hcwdV_=?4) zlyGt`Yc1gD74^Gf;rCiC2jXSI?Y8qvpkA5xPmXF6|h>yvW#$w{FQ#EI9v1aZd zt54f0ZCPE(!7=s(Ly5a?F2#$&U=fbH6ww!NOa%^NPq`B5_uwE?-NgDifKgF9fbfyU z+zMIp=2!Q-c0XB{fa(y~0Km@J6D|XORF614$`Vd^Y!S3gL({ouD=z70ah3C+Xz-Qy zya^}DKea}2n%_V6O%sXw>q&tQN>MhiC|`SqmseLtDNKK9&$I4NTxs{D`iADRltF`N z1{Iu@;%3*_hk{j)cj{Ug?4Hmh`0m!Vgf#qhtp3!!UU`?L{ej|3? z%Y%>pBrAw%)iL``mdx?cvGb7q5LrwVBZa5?XMBrgZQRl>7$86H5ltEo8nGiotoPl%|qa&vg$C%64;gH*PIG?oB>9@uU`0SZtC+I7iET?7XN{!e-eyVNd`z99A&c%g{5zW|Gl_R= z?Y~R`m1jm~N(BkIqe$2jmIfPOfkY!914JF*R1<`mE&;*)qBSvfF`aO0e%IIShBWxQ+s(?p~Q+9F*gylPrx=BtVNCB}YL=(=`#lnra$E@`V@nb$!Ms zZ#jB(rF&Qv^b58rA5`rVm9R=%*}1-~^{9~U;m_C2+I&aBUd*O%M5~^x*NGVl1YJ`- zC={5r>zWA)94sk<2f@wh{zD)?4?nIDt`K6=7T_Rqs>nO0M(Ith2ZihuuZ0rxQ@|U5 zLTUMxz3>rC*+V8|!WAL@(66d zfOZt~2_oAs18efPNT?59oKa(%gMgrmCvbTke&N|)McOoGeSiy=_1?Df8Hd5|v8vFA z6U=rG^C2|ecUx3N!Dtd9b*CtH3g34M z`X^KG+n47wEuMAhY~iOnbGip!ZZ|H}-BIU7zaNZVBY4yM*zv1K{f=OHE`J-Kki{&h zWY>>P#uAIP4ZZd;Z3EE4`Wkyf&vj$dEz_nEYmLTk#&IyCa*FqnC5&!2sy1DNxhq1z z$?&8vqw6|T`Dy0#!>s^X{28+mDx0S81_ELCg}>EUy7yC8e4QM)FSrYrs68h*^iBwq z1}H=$rJF;t0`T6IWe7pXZ7*0=_T0KXD%`kE4#q}gb}lE?BP_2^i^`RB_Lw|j|I+m zo~mULQFf`n6^zt)k}P;s-AZrkmfO$ubSJZ}jnBJ_ubU!*i;3B3=I_$z^c8Io6{E>n zix|-tQa8U_OH0UDHzG7C;%$WDeGN)n^Ah1Zd&@(T-<&dwn3(ys_w#hS`l?F^O?mpS zdI~~~ev&N>9FhbCytG)5y*LfP)ft?@IjoGhL{3wnOwyW43w?d*#icO>O$bMvYNH{eTGpQ zOecipS1dYykx8sh?m-?O^83uhCHoh%exZms@`>*s7x>)`INTATlk&Pzr^AmEAoHs@ zU9c^qjCKyUdzTdh82hY9v&fj~&+$NJLB53H+~Vn_1fYg{VMZIIxF(LKYb+@eUw1AK8n`sF0K};M0@&yv^h5dFZ*m_cXAM zeHyHFHzmIaggxI!%uV@R)5%FTV6o?p5Zw?Uo~$|u zfVd%wZpIP~e1|G-9$dkjYAw>sEJIP!}25<#^Rm z`IOah#0ifbr3fv9=!!@B-*I+3Sxzp+9ymS-OZALU(SO9i!OiD z#(61uPBGGZ3M5xA^gm7izrq|~?!hA-SK@Ai91d3SfE?965vl%K z@-_9e_Z<*qAVQ@Y$68+urYKW^#z&|)4JY7m*D0na#z7IG#%`S?1Y+D12_xcS<9ZxG zImjA*%W04FxaKWKFr6K2qO&q_TB3%5MEh^-`iF#+jRO8TW9(Wqo=dt;F$q~Q2L{Pv zD$F0ZMFN22FSzAqP^}&1!=K-(;2LRFPg-kF?k)VT9UqFZ)3rwFgXW)bBuxJ7^Bwhe zH_lQ@=C}0^Se`R*s7^3HfouTWUoVlgXe{BQc@WK#u_e!AO4D!GXHmaC1nfHHt=l~n z91EmL6nCEA!?Dlh(x7BN85*hyVNz6cd|@U`!0UNcY5Np8x<>`{_**j4|?dpA|?o_!@I;EcdGcE0~>+Ft9;_*(&C@KJxn z8;8m8U;g&h|4ZTD;5a&r>Sexm=-g82?T)lf$^;+-(x>kfRipuKBCX8In>@NrIoy5m z3WMCXRP%p4Ua6g1qW2T`Zy_HMC%qchxiTSMkH$5F3RT^k2AQ}a%4^011=ZT^HNSsU zhqMq`Ih8NrP-C58GCijsj+|>i?J~rs(R=&H8%ma<5aE-GLBSII637bK==huGGh-Mw=-t}=sd47WZ0(LSW9D?S?1A@Y$96^m8~4jSA3ozr z6^5>2z7U-4$51?fW$~wbFDToc2g=rm5xNw^>I|^62d^4Z9YJP9uEOp9f_-QFM~>wG zv4BbAYithaia1SgiRn)5cI-Z!7!YGlMOF9>2}e?Q;doBlMstMFVt z)e>NUq zG*c85)DTS_`VrwbOOgvKbcKQ*-l&Qt)whIt-r(kMlim04#kwkqb@HL!Ha2hTy)0yU zT|!ka$5!(uro!_z^F554F2rEQk_z+W>!AFf-u*Xg0UwQE6Lfo)?v%V^iPBGzO4lu?J^!#GkfVB){jP+ang3 znBT$=fcu2UQsrK*=M6kh#|85NIdu#v-(R(3V z)vTIcej%&y5p>tyH><>Gi3Ydm`snK|8bR*bM59?DDl+VN)4rTfU7g~q?LkbO;TYtU zOXvx+izk@_d}%>W2{1^Q`qy&`|AVw6UY9wh)h8lZ>?Hge{+Y4q9ngPf1!9jEY@TI0 z@aD?UiHaUFK~B+^CMUQ7wI1_WgL=*+ctz4DV0k4U^Q0cFGMsu-e9nliyLrW~Ki&FChU50O0MTc_IM-nU8P5$l%Pbp}5jgVb13|b<+K% z^!p0!Bx2n{@0CcLzx&@htKxhcjJK4^VrL(^AQmR}9oYqJ)WX$bMlYJ%f8p*>_U{ky z?Dz>Jf4%N?oA+(n$Znj#2&4u>pXP6o!7W$r=YiPWI>y9*9o)Jpfy_M0U!*%h*$!JI z(3t+w1h3YZGp^f3*C=9=`R=WSzO87DW?^pTlu`J_N`{qgL>XdtI~I6+ONjx8?^*yU zs;o&jEBQJPxd0LkA)=oZImd};{q65vY~Z380X6Q~+S{@|BEdY#N_+?D{{{Y>j zHF3-=ZlpBq zV$nx!Q~2aB`9#C^T@d=|OjqvEpcRH0Kly?ZBB#7QRnH(U^ZHS)u0~N!;gp^C3+W^2 z3!WSjU5kKs$?LJ+KX$-Ro*pXLWVk~RRs?DtmOSQHTef3o4278xS1YeRD&Y(dISs%; zntD&80!-Ac{^Hs8^*h%II@*GrvoMu@j@XrL0)XG#hOYGwOhBtj;$ufpef9jeKRLfT z8BK}l27|r(;eYGVPcDAK$va+D6$K=m7GY#~-c)spQ|#{9fB+_gI>k}=06B~HM6x{| zM`NilNRpKU4Q4w2(Lx~O^8nBIjvs%dIM`T>(?cbxMP+WuA+^3GmoJBze4T+XzH`Y4XuIR!QS@jVGweV{q=Ey~VBf-APMl(x`>NrE<+$!v+Mf zb1!*k0x&844}o51riCs1-6XjW;kQnsNzhUt?E-2B-qb~NQ2{BYJob`5ykm?Po&p33 zC|H+)mMuu}6E|E$JXVkIkS1L#=4;N`2e`L%WbfXo{|b$Ad$VWQ))-KBDzv&4ai-)SWMV<-*@q`Kl=q)5Bah+t z#du@q`D|W1dTd5WlNU$)sKcetHR#u+6f`KbMSa-NM^OB?PNzo=&yD65Vc9`A<2@+u zZ<@WC-kh$_fqbkm(ewH19xMv+xn})Zi9H@vCT?sE-af#D$SThU#N87ITfs4UxE^4ar*$#2GTiv`jta?9`l7HrI==sTa?f>Wv&mmrckRq?>wa)Q}S;$6!jzYd^tP&KO zzKmv@HH#F4W{fki{PHn5NK*MS>l$|2!sT>8KU+f~uw3G#O5-;r#1Iv?O(@d+h5pG> z#n_peWeOjAS+yNbts(Y9mE0Qsc%=KcC>&w^kv*c*j>(Dzbf+);xrM+AJ*QEydk}~} z#o0`G^x_^*y^Zjr-|?et~c#60Q|Ct0EFev`(34VV#_3frtlyJm8U$oy~h3)k!346=v zd-8erpli){MeJka#PmsTZiS$G=ux4E+$s%jA^S7Zw?m%#>b`7CKJ#NrQj-o{N!3!_ zjpn9*KGt4V$@4LR4Ak`&sdE`x|4P=^t18B43-m93Af27taZ^ZL*F19E#g#@VuR0nB zqwg8IAawtT_}M5*$!pWO2X_`E!jvLj{B+`;%En-3w4RNJIBv_ud9~t^ho$1DOcOQ) zV=vtn`E#=`$ESdNIjW=2f(WXAHP->*tpa;YAk%>0z^x9&X>Z~E+Kx-7nI&H%x5~n> zMK`Z%(0i8mwQIw{2)%;LREHAV`@htE!Qxw{%hylH{Av9(UY7WppXN8bSD$$t`Pff3 zbb9J^&KbP`npbxV`)fLd6a6O8ayr1s43f82$qCY|HurDGB%duVr%@xG%ZHv;HN^s# zck4LF9^JAol`lyo!q)i0eo?G;PSItj2b~8vI$MO$030;oryp`{ZQ6bHifgB4B_?ES zzAl$F?#r#QpHip-AP8$ON^&2Obkfs&-(>AGuo33+qfEa!PQu-Mak@-2S~8i|2r`iN zM&?y1q-+R-l*3O#$9rRuDNIx>)I*{8-ut)awLn+Ut*=ych!!#pVw)g(3d-Kyi?O4S zljJh7%ZTo86A6|!d?52^-#Xdo+EdY7v>U{3N@$Jh-I@NpE_f)%iq~2BXvS5VI6RI# zQm~v%qdQ4Mig9ktGi-(;LmI-sa=$r_5bfYoSoOAQ%v|? zcDGeemNHgJ5GTH;+GizR`hfN8w?y}& z)jGl$%JSA!g&X?fX~4h4_1{cZC@b~HcbL;ATGyT&2pO1JVx~Ho?_F}`(b^KlCw)!j z`$petc3p>eWU-3GI{uv+^Hw{^?%?d$;cZ^`9DIuwqG`W8hyNkF|01vatqY2$O+K!f zie@o{>P&nxFP!y5GZxoC^EphSi%1$c$$;0{j59bX@dwfOqs9Gp7gMm?`zo+T9pBY# zL92c`3pi)~d*c}o`f`&*XODW{6)nA)jr7{2+mw#-AN;gt@1D8MW-q#N^t=NQ*?QOZ zJ5L5xsm5#yVsV)y5Aqa7b}0EE@?pKS>QwOZ&rZxaf8<3*ii(Km-0jxkeJx%@!Yi0MNLT>~9OS!shRnvOhePrFE1gu;#pd)1v!G|2HzPHB zbw(js!RG2!B4cCqn;#;95Agt1o}|SEWgD+LLELu)cf=D!;zW!6Pda<`sW!(UdYNVZJ5lZFPJ;r{0uBZ8?E@Rvco~5Z`CM**A8_;sdID;iHsRu zwR7j{Ke;bh$+RinQu6k8{&2bVf*WQ;`@BrTsDQG?Z-2efPW9y7Y0SzxGlK*MAVIiW zj33Hn?P3)^F%bPjN5$8~hiEn&_jV$FqrG0p@csPD7E)I=2ICyjD&7zxcOYqaR8P@` zHrM;36Vc4YvM(Zjna4wzPr%N9RI3zK^uw{8ZHKLkdt~Rn$F#}GkWX{81#-M-Knw6P zqo3F8KPk%#C1+P|U$;njXnjGT8_#e^A@*YCY<-vRw7z|G>bbi9(rz)+F|JS-w9Ij= zeDyV!vhsV(jZ2j)+z_ic{p`)1*}@7tpKKZ1p9RamVXg3Zv2MUtTn$V%s&mAnRle6OR%wRK_hg&|kIh*WzpwuCz;X}m@OUfC(7Bl# z=U?#jA7A~2@t#ITsy=Lp&)=m`i{Bm{1b{Ri9{4RgM{CimIrdU*eTchOMHNfB4sx+z zY+A@$;rC0K!eQdlhalJ+C}Q)61{q%V?r=?1(FWuHBkC=~qTas0VF4)_q;cpDrDkZ5 z1_1>GX#}aEyE_Gj8d8CwK|nydLFpK}OS-$e;hEq6oO3_#=gsVEefL`HQ+ue^hvP<~ z3DY?s=o%5%@Rlak0hdsVbD`xbTC(c6c?t{={I&)Q9Y#mw!KzVnX-fT9u-^~M7bR)Z zng{7-IN&dqkti1&=6OK8%h#|i1;Z`^E06uk7YJfwsGhH4H;EmOSY8C8LcR%7I70C& zE@M2}dzc6@sw)`Hf=qq0a&3@SV5NL96{#A!Fa%nfLiHAG#wFuOf*$JAx*yhx|H85H z(j~<wyhf|hesuW!G|3ywrp5V$gaY!sJVXMT-G68@4CvCdz5v4Z3N^T96?{f~=c z_phDblsDyknymZW%;0hktVTRb9HGo4p}F-PbcIUST3Lw^)YCZoMJs1=M(VT)E~Mfe4YBjG1t;pUSZdIQkh(Su5)4ifl=mCdF^#c z@yULZQzXlTr`;ZQhwjgQtG~-O7cXE7nCX)vUnetu;Zb^D_PWY=GY#CE4l}7jEtT_Q zJybCrCkUsqYyaeWYM|lH=4JhgyXvicJI48Uj?KtwPk9|7-5%UIyjGj|AIK-L-nEuu zjY>oF@o6ro&zJ05Kw!w#+hbToOFKOg&r6f#diYh9gqdPG8r}GxF5H(9I<}~1UhPa{ z!8msKf`w>}-MCPa8f+60r&Xj|OX>A-V5riUm`}bwEe-*I$`kqGckHDeA>MzCSI#{~ zjMA*r=}h|v>>UiU>Swq1ihdO-u^ln!+3=Qt;#wEH+JnpXu(Lf@i=2IzWp+=)Ru;Yq zh^zqBoeMmIi~kCWBEQiCyQSEQO?-xYTH)Fa`>5MpRt$X_R&^Q=+QEyCC35tsD#BW) zRle#0uWA`B%oXkTif#y_!r%#L8sm*CVMTwMkm@0TxdI>#?>Qd5aBL!4{L1 zr^v3hfl;_ZdB2Zu6dw0@E(>P1&L)=efp&yOJt3tDi5HLR^{-}PaswDEOQax0p?<}@ zX|=*B&_(-YGCHRQDgOA@yGi-CqbehAzbPK&oQBPNl8Ki^f*mAZWhe;u2jQ3xj@t@wA){u1}fb1n4%-A%L@t`QC|lHn&3;@0 zhefr8mw2tUk0S_0=Rij&gCjJ-?;2*qL@*;2PCoX+`e-7tsx2NV=1Hm$#m4g%NS)xx z@D#u34R_~P_GEm25onk`K(I5ELY2y3SgFr2K{<4=CnSy3eXIgAC3-MItHK^Rf7=7R zHw{+^^QmI^9FfY7%}=zX1o!STXv~V*n^j%Dt@*w#r8=r8*UiGGXN21a(!WNjN~-24VjUl+Y- z(a^WV%2B7AhmR}^OBM%_B(#2Tm2y!?4u>_|cYggLV*~pkPki3rG)0dvmnC;ZzLfT^ihrQ9fJ5^d2`BLgB{_L$CK1qz0 zLy)F<0hysO78kJ@gElFvm8H! zg}-0N9^}Cd539I2{XIgD3MmwFiM;`BFd`n6ib7!Ec zn+Y>@q@?16uUSVWbAs>BE+dnc2^H1{&M!Lz8tIo<1-64K@z0;r_`O_W4nwOG->=Rz zXlg5U44F~!GM|pJQK8dvMDVSC^!{sAPdyD~X-q*&=hhq4^dT?}{T^raR7;egw#Y?S z^b-5M-YT}!rlI+sRAh5z!IkqX9?giCdmfhX%L@`S%hn!a{Xd^(^G!eC{JdTv|3;E| zM0FNLWZ!Z*_iuNuGtj3Ty=j~+^jUq7hYcRLa0`6&5C<4z)B?rxmFEpxDV%miR@VZS z9K*%l8xw^5LJ6rN{z)i1fDxr2qeo29x%Z1g{gACjNyAoR9izmy7nhKQ^rlW4??;9Y z)z0EYhZpSO^s4;6?^ni)bcpFYXmYd_YGw&Xu4mw1x~AI~T;vku9vj%=bKKHlRksp| zpc~RF;ZiK+_W8nbjaEVen$mwMT|_|l7>!*A|imBmnBJHFR|%RLVl zamj0F3l$%MrXgqy5Bz3nnoRgHp`pzxKIxkHikOWMvqC4H!lO@m=$HqTQ)nVjZt);J zLbOs`HNusOQ3+rjb+*Kc$NY5l2lj1Ub+p$ZH$_#wnB1a9z=QhRmZ882&yKoJh!KZn zjkQk?KtK%%NbV_W!HCdjU`y@-HEHEeU(z~< zM@WVQo?*j9s9!9`fYkC&{E!xjtNOOi>%b?!wN5ViJ`Ap1z;JyVvT+4*9uMFfOVCqC zU`}2Ps!QSWkzPK-p((gRatJ$Q==t6IGqHInra>E5lYdeD1rzsxKMxCu(rTW8YL>e<0g;5b@*|!kNZ=F->`!B7H(f z0oczp`aX^(TPl?H1r<7~LE?=%!f0#2brA?DrL|4qFw&2iq)gw0HVt=b%K z>ST?EIqPaz;^2=WNE-8|DWHPM<&w+T#=StvsHZ$={&omr&N-R^>U+ek`}xZdP%t}Q zwz(peDE0qF>mhun;C@LWg{YG#m&G#>b|PpMl( zrd6^g3ONMvtiL{bbu!&ACzS2?g?;7g>)6K?n8HLyjMUuMfh{i6Zl2+Jj#Onx#~n!| zeb+P&^L_p3H&B8vq<>ZtX8_%4jnoN`NV`)3@94w7$d0?NzD#t%`h%Ho`X(KY*>k}6 zZ^{hl1H+BlHYP!)>p(m{&2_LPW z#=Ff~8IfW;{JF3LzB?npIydU@iQPWNXgN{~$JT9pn@&EX_ ze$Eo^P}eQkQ=1~?yoj1I8UtzRYH`&P3O{>KO6RkVowxdMzW|9IN=HV2+;ONQyM)Q2 zeF>g=e^~G%CEQM% zg(BIRF{~EbyVUl=j4-G0v^Ld)rSciFC5tLGm_FUWGn|?JSA^=)J!r1x?%t-D93c5p zz!HO%8c&8}Lp2@kKowSMHy=o`St>b7SO=yMDArZ4gV>Mb zB)2kGc-mg$MWm%Vt)(N}NVXq|$N4S~om{9xrKkoKT` zEOrj7NNFWDB@6ww3kW?E$_ljG1*mlOG@)DJ&Nrxw2*jb@=ET=6| z#Jq<_F#qX}y3u>aY6J8FHOE+NSy}D{E7H=A|9~_olwdV`x)gb;TGZUOR8)Ioi@e)umEAZ z*1zJuFFR+&jW|b7nKlUH8ah3hU}iz;G}}PMMP>Y{wnix$0lQcJIjIM58>HKiAV;%` z#KHggL%XHHr`(z8rgX4A4c3KjSC}$_odjg~ITrLAXIqaQ)N#8W&MrV7DL<9A$d~yh zqLL7&mlj$fG-_z`9L&xfnm{`(yG+w>oj3znv#$9ZJR9U0Zjul9X4)gF zE~^a+Y2b(ZqD?4h<5eHGn$DUH5?yhC@|4gj@u@afN&2(yN=E-_=eC0SeqX5F?fERkQ3OGz6WVKL2mSq#zzlS!>&KkVcJbwCcV zzm30ZQoMPo);zv?Ts^&Y- zyqHDE7>1bZL}^WyE<*X9Bpam6ew;qaMC#RiIZ6V@GG{7U==puw!8SPS`%BP9;Hd=} zMhm}|f(tb3I0H{epj*y;cdzxEyoQOOzdL!C!mpDgPILjV>gA$5dY)RIHcvy+G^(wXM$k~e(JZQ5_g$b1YNSPtV} zv#KvKEU3K!cNbr^Ch{m!{cT*GPM|JJa6-iBs6nDkHn1UV1$-6U9DYnvSV*=CXOFun z&SO)(4Sf}x18EE!F5`WE;jr}(#sW~teEgtf_ypvEo&`I<3JsRpLrZ7zF~lm2G`1&0 z2G(@hL{&J1zwCp{w1l(?VIUsK%p5Q%_THtlz<{YQ_IrNdyW0qTGK91>-i`l)Id)1w$q{&<(i+ODb2 zqFUz;6kOu_>~iJiySd^ha(_z}&o57u^)tj3 zsxe13OO@i~`c-TTeeGzyz$NdgZ;W2O`<%bg`kS+ptn?zP?`57){KqjK{MmLE2^%AA zQIPU>qEsu9a+m_rgUT7q(voL0l586*PGPobh7|aV&V!rnvTm!x1I@j90NGd^aBiv3 za+s;l%!44$ZO6aTGJuk>e&L-f74ik6mNGu)3No7>Cu(J z^Q5|7z^2pa_!$0JZ5wWwo(tVh(E81iuF*o+o%l(F%UC`BW6Jaxn&h|2ylxRvGrN)$ z-b=FXbWbUAt*E7V9p1|0TJysA8|T+aW~03{A9&Kh3fW72UtfC{mna@nz)c>g!dBEG z+6WMDOAja}dJxKAQ)Yiwm}+O~!dGkC|Ek7yM~|%%ktuKV@$n7J^!>MlHk}#+#Q88W z((C=%!c$hTAJKAPmya)qkE9DV65M9L`CeFBcPDs79V(Xdorc>V?db*VUVilMmbd&wc( z#6^QglsB(|eXdYbR5Yt8(t_1fVpQp{}xE36Y0*#~Xu&- zX6F0l4H-;QLz)#qO{3*2Jfmh^kl*(DW4ECnhb!(%EFAYIxfDE!8{<$LWli4fY2fTY z^G97(W);mCPq!QVdMy(faNx~XZY=z->%~*RbPC^(oiZoZL8iGw=6_>8+Rp->fgY`8 z3^XUi_$OZ}uL0tYozI0Wu5KY|H!E&4r|XtI!2T5C{%Su8b>?^Gwsm3YL(|So=?U_D z?L6wa@|vCc?$@&u%X*ln!5?F>#m{~;X+s?<#Uj>&4eR1peJxzB( zYzle&n?wF1KO;A~pyO+wkyKjNeqUH)rslMWLm*x8E?|q`KJHaW*jeQe2=dIBppGw4 zhPo?7B7pUU)-Us2@S#Zp;-kf4n6n+|p+tNQWuJ@wWmn`X-n#VoaqwsO0)43>S@?uz zz3uv{RNj(aW`sSleqGX^Ek`c{zl#%CPpn}Hhl%VvpMl)aS!&LHA;vUu$zqn=Nq!Na zGSQD&4r6s#g4gl_4Q-t3C>oj^YGJ&Ct~1ui4-z9UXnabu|iZ4^81_|EpyZRrk)IG;M!us<2nah z^nssWE5%eMAijse$vTcEEl8U5BMZzc=Xy*XxNe(OcYZ%=&c)Fv+HpV@k_W|yN&d$# zv7WZQ65C7e(6{<{RAYFK*|AiH-Kp^@3*DF8GK!~Kj^CX2P>a)}1?c{Dx|7*oMwI|B z#Pq(^Z6*;iNvBk%bd-qC;(U0G`uTJykd;2xH*4{N5~ds769^3A6}?9h4c5C3if9$ zu(|EEmY9~Y7Epfwm|@7fR|GbCxR{IEA^`>cDFb;548B~mD{1nrfILXoy!v%P_)AQ* z4R-v|@4wZRi7WPz<5eU&jn)Q}6bDTgt9;sG-(3k%24Gh2IC#edlU0vUClfx^BN8ka za`jI@Ud}40B^@(u?UJZ?G@=c{kM8tRkBB^28WEP_(TH18A5&mUkp6zQ^zHbN> z_$?H<*F3$2lD6eRUrgbxM6xaD9-POw5`ShvzA^I1hLQ&W9&@g3Wb9`;hqtyf30LJV zlGMxeCw)z@O^Q>Z%F&MlAD1wh{Ha&3eTOESHlBKBoaqFZQP7eAJ13x;X*X{HhyQkm z9j-dF01lY1Oy=f$y>se1sGku)Tr+;Z>-5njErWXRI4GVE2b{3|$CnBTJ@ys6V_AJ# zEDE;guqg!dSmI<~{g8_@#q54{lU}VFLjUPG9TCr3HZmy2Ol*xltzyP>7BFcdm@F(e zhTnr#y}eV!gSERfZO0$I}bRlB9UPF@171p_#2w^c&3+J7dKE+qW6< zHYOy|FPLX_?$o}+#OSXLa^FQ`A^d}4$pay9*2*2^V0EVqL!L?o&6L zK!Lotuen{HHu|(s`3i;x4`GYe+Qnj`4C;*ZeJT$Lm+W`?FB2j5!*q;kt2#@J83hidjDB`($#p}@F^hgE}Yd-y(l zu*t`FuRf)ZKTXo3p(hpW8x-KVtjAF(uAj5Ej|dkKIrwHdh1cTWsvxUGP#I3z@6isX zH#4J+8TbZn_sKc+hARuHiY#A70F@3AJ{bk()Ns#>LKB!Mp6Bn)yg0h*=qN; z6(KX8Eb9RnPMI-r%Cwo_O46X}JDBWN_q2OM=lzA7jCT+2+fx27Q!6O5$O94g{&Hc0 zWIonoxGz;%9;9p!tPiwvZAkn-rVkHTX(YWZb|L-d{gp+r*fM7?)3Q;HQzyownkWCIPeDpE62~mty5LnV&7nsP|2|X4*;Z{ zCL@P-`T!4m|C7JLEpW5tq;%N(^0!U8uHU{B0GVRCgL&>|HSj+6z`{4M*Qs-EQYZ8b z$bVdJS8Tp)_-Orrk8nk6Ayd1J;%R-5aQD)l+xbmGPhq?B+fuK}M9Y@rIj4jM+bySw zAZ-4;ceHljTbr3zErPH^v{y(P2)@e$>@S%Gm?s3|Ftddv8%2c&A+XKp(O-?D>e?!6 zzE{x!1?M2Hk+F%_CzQ_J-*D=Rz>#GLuJz8HI-t~I37yD_$A1PX<56;{PXB(q3|vGj zzO)6MOaA^`?{$$mNE#q6B^L)i;fbT$e%X7 ztW|*fUY2srKJ#;yZfn!pG*VombPe#geWkGzr1p?+YYHZq8%^NuulN%alyxW7l9nYo z%3sfQydu%+jMquTOn(rT@o5(sR208yCA&Javw$?$5WEHCA5#EMR_<TL{WLoMhclE72ECTdb8@P^dP&!vP>-R9RM%rSy0#nl34 z=EJ%K}(ilGiDo8RJ$ju%hVu9-N1v^()V$Q(cq|z%Hw#3Gdq9nhv z)`^$8sASZF^X7QH4E{pS1xNKf%*1v!mK4@`TV?d`AJJvaT)F0+c5yVt%3S60O!7!r zC^C}j8vUAGTL;oG?Pp@%Y-JlG9e@;D4{)0yM&_*Rjz{%j%C$Hi;Ry=STyy$&5^)QI zVaMmx2^kk+F?3O9>MS*r+We&&Ht#eAf9OYA7ry$8slvsulJjx++_*TcDlW^}sN{9Y zqT#-YQE2ZDGAnEf&fEPKIQ`yo$gHFmKKV68H_eFm%k2JM{Uf1JE1~qaVlW*`ODOi9 znip3)b~}~g(5?WyJ#(1d0#9;M)BDQ-_T?U1Kh1rH_%X}l0L|TMQuA?JjL&f%m+$fD zMG(!+YRuDh%*vNAucbl0f9832+%{QsdJE`Ko{rUxb_lBQ5{X4iGx>^AL+~W38 zJ(!tK>|O6A!??)(GSb0?%*QXPj+U7*W&{1wkHwN4i5RpRmjt_8)#M*;Ez`wR+P@q0 zyGfw?C3Crx(r#JjVY`1&(PI&4cBQ!}_d5_&cj$8b9SjZ&oF`2#iItCrO+^=#QzmWzjC3^cYHtP zWgn4etU^s>-7$`MRYq7VuUq?1{VuO~SViV(Ild0-X>OkLo``lJ<5+N1$-+%b2pdSc z-4INgRauj)aToK>DLMmr6ArbrMs8d15;J1G5qX{N*64TdVT0`j^Kw5M!3+v+Omqrv zrbAg%nzYK`6b0>h@p4_;v8rwrJN}`D&URTGX5_;2!%qAD`I?B)=gG0kI#BH??_OGk zx#IdeG^kwj^#K`k+0AO;G~9Gh85CTNmQeM@re=l&W4J%_@y!2J;4yLOct-qw;rhIn z>oKHdo#y_|Z^Ph9>*?a3>-*+){BI~|13Qte)OaR`hB(H-?4I3B*L+)PxIw0`StZ7^ zozH&eA)3kmtu)l97y;rENc1d;RDA-H=Ujt7R#J{=d&FAxWXvsDA2%{iF_kmrm}o`V ze-rMPP1IyW?$%t~t=JQ%7Kb@m?U$^LP;2en21gs4;y&%gYYm9h zXAF(OL7(N~c+ln?3p}=Hz8%Jq1W)HRcKcR9LCf`Cw6ng|z45ohhxx1F0Cp20rWr%2 zS|6>)7MknFrE6XP2X~*Vry%9J`$~h;{-^AgBdx~-@x86A|C{JGh>~K++FNf_s98zW z)D6?dA%_-UNt>gqf3I1F__qpsN@DLrl#8 z0qvRg>A=5$m{f7b%hu_2u))?m|82$J@5W-kw}OX`7@SczWxr;ug%TnC!^x^Jzp1Gc z(z_{GUpsmTmf*dLlVtR{BBWyy*g|~E;X~+G>bPAD0%v3YVK8P_oE?$|%HnKlR?)@3r{(4b8QIf4BXuXv>qk@AZoE4|I={RqMy0mbIft%*RFlYu%O& z^M8aj8${pbr0NMGNvLV0o-f1oq&-5i?P(sQQ=6lOrTfy$lb9efA(sYrCw^BAZTEa` zIpqb1&s(UTUJHaZ-k-dR3@4BXx(>N`9CEcy#i$qoj~7rHCJNJtAHz-a#oQ@Z*NAeX zMORmNesw2Qb`!xC?YHEvIV#>UFpFxzi8#TgR2!(HbBz?7Cp~PXkI~z4TkN|$+g6_q zr4M<&l|QQaID|xz4(pwlr=*uiv(!+nITXBWs*Y{)*M!gZ{e@?8c=Yoe^}72Xxj$|_ zU6eiS#`vLgd}?0V^Pd&Jh@yZ}nY) zvA`Q`3xng#WF{!i z!v_wR+wvFKMJ0ZnnrgASO|%t5y$#jsGe$nm;6T7{Xz|%ew3e}TuSr} z0s4uj_%NH~Dm#-ELuAd23?Y8z%qh~1j;EW~(2gS1LrPoqIwm(AZYrcimKBJ^Yh~#T z1JHTKJF|5oKt3T9li*F3=w$iHP2lAF(U!xhPRYVNpVzML9mCc(^;Uze?r|)C9c=Y& zOsj|?He8gKsB^>wXzj6lwhqCg8$u$-*REY*M)Rf%!na+tZ$I-?P;JR?i7a&ZS|04k zP?J2Up&}l}PX)TKg;Ko#2vlyt#miiJFA6h6oMl3ZDzk)U!|ykjF2(Ot46bNg__h1w z`cJK&`k%J_Z>UO( z)7+iV+_|ks(v1`aR?36QYD$kBep zGP9vK?drV!fXtzUgo2?Xi@It;UYO4|6%CQeYAD~eP`bZUEZXmTiVF&a5v!GoWYBS} z<~!fQ{dc#JAsoU~JTB3ZO|s=lSZA(1^I6;xc9Ql*d-k%-moYPVzq?N#w2yK=9w=aR zjU#>_0S2;>Ir^WP=oy;=QgO$&!Y-7lT;=v#s)F6?zdU6QySpgMMgUsbz_=%G2 z{n$AIA{M%ZV`M=?#(bvW?AD>v8UD#O)K!lH_O{YSg~QteXT#%+9ORX*8(Ae;yH7jN zNXX2tEZ>yOw(5~n%Fi`#T<%psj@XWa;M;v>QW&m$8x_P=sfd>O>0v)NBF)Qzy z(xYrRGjjIvb8eH1+(ts<_xxUET7*C1xqOaq3?8f>ONKD)`|A9+jvlW34_eM{xE?|O zAV`bl>*Vc{<~{n-9`|>guK|L`%2W8vu*H~ZRcVi}M%O&9P(h+2kMOrwKtmnn_6Y+> zT|GfO#-|;<6T2h@YWPu5KKqpq2PiRNz z1<_eip7G5 zc9Ls*9@{oI>`{;pmkcpMZxmZ8HJ_0V0K@oQk-`GK3Vxdq=12>E`hjDO0r-x6JlH|E zqd{ku5mq5b>)f~*SOHZ@B$xW)-1nRG$z|YNQJbRx(r#Nor#{z3E>&oa71xxMVFpX~ zG;B9PR>#~^byZtZtoYg1(?r?b#S_`T)smYwjsID(N{SyI27vEkK2tvNo0I?uNgSn4 zI$=ulkY9PWI0J_Lp91rx_8N*8H3#cEPP>HkXRl23{}e%+7H^;XLwi2fj|+o74~sdW)nt z3|okogkdAPt#WjMZdN+XwSJ}KhI@G%DO&I@l&Yz>aNC@c$Pued$S!&N(&=0OGy8jv z7HSSIwx{EzrC17V0ig#qOJef&ucbn zg^1QnnoT=^I1XPr9*p@Bh=%P7{n&uQTR(s#o1+DN~;ktSb5HG3SX0dZvxn*2H3+$%IlAgcPB%HbraSOxGXOi3(T?F$BxZ!2I`E9s z*$4s08@}Kbh=JEYN1DE0{hUG9w#Etpv07t&!!ww`Czs7AqdRvspX0EfeF{9fy?i>U zd&H=2{OVI3;J@v>6!PEEAqlJdD-m?HTeL0U+Arww^@`~(;4A)EejUH$MUp%NB|yJbqQm95~g? zzeImQacr$cB<^3oiv4aZ>jl972j?rlLi`TOjK&Tb&WiS9MSJ64dExwF;uFHA(}9-p zwwQ~{zoEyuVzHz>Aa9EFC(*H*xe}@~mm|Yp7?EEP=w@ps=5UW95AK%rg6$!l2b?D&qV3f%f0sQ!n-HLYjYFqMvm7$*?>X-v`xM|VnHZtx% zR9nLJ85-udV(Q&sEa1fSXJrcpy@iSW7KUzWV9BM*o7=QqUbpUcf|oGr7WUq z#?Heq*Jfl<#$lj`Y|RokTb#tGC$8SQHnJ)#E1$GtDz*};BF8pIF4ZmJxh(D1|8yem z%76WN{eN4r{X_Z_(Z4rJfC=;%zn@;PT^mF?x6sBonGZ*A=)!k`sSU_@nR$fArO;J# z+9s6KivCdOF-<_sZmvsb2Owb1cCm6bHPaY0QJ?%CDkg%8j@=f%er&m*Sx>o271!>G z!8O9b3+(o??#cTiqi^U_J{O1T*6a{5nnqV5(TQI~6k2bLh-%^c44{ver)7ag9r@Yk z2NMm*^!Z86GhOzp8R;z`D3rmIF*WE+!+AjCiP|cKKqV^nMO{FblY))jbFE@N);it+ zyvJj_dy1#WmUANU8zK+gjjj80`)hB%LxabvmJ$E(ShIAhv=s5r2Q~eM>wZdkBflaMc{Kl&^md&BOV>VDKZgYQEVSk5Q#c+Cbe(ywr8!hXMu^Xe%7ty%X?C$L@rdG6;C z5Swxj&>T{3nD)9xL*sv7rRo$ul)Osiy}TWIH%$FK91NzQWKdOy7Ve?-#;xpU9uRjs z)PlTakbL}x$1ihTX{`5d=g#~F5LqKO677X^jP5O=&55a4fnA) z^U}3t_toQk%Vnzn?X>@=UZ#d#47+YuNFnR zA4*ycy8^U2hPZ;A7#Cm3!;`J)AiR~s`TW=nB+ycHS&F@}53K=Ulk_-cTiNhYmJUO} zd^EaQtDB16Su7E=t~DYdjn}xm4e(^G+_pFN@(tLJobZ9eD7SqZjs9-kAyZwB`VoGj zD5jmB@bLBeCVc+;`7hzj4`K?Dl#z$s=;Z-S_V3-r4_T z_}@LgrjLj(7$qnSCGR!e3lynFLV9^K!b@Pkkdfz4*<_vYriY2io zf9pMccP-sUgnDSa>~k&gp}pt}A0&8{1I>jK%m5iuj5JSV+UuO_tRBcLamH5`{K_u_ zpbey(ki1s4Y?h%O0$Ma?SYaLbus|lh60FUnH^m$P>rxod5TUDobf>#*k&`wbtn4KO ze-{m%-!-6eJK&@WIFiC9OK-*qyE*!KK>PTtRxjRzrF=w=q*vAdp8nwota-s~hW zY3~$NoyH`UBZY@g07s?0Vi8GUOl?fIHt{fZy!&ZwUVp~;pJ`)u$#vfM%iLS|un8prZ8Q}`SIwFQp zAUBideScSGO^~s7e=VeO+hk}-<(v2A;BPO$!H)|AGbTAfLhh0IQn|d z7yLEtjL;a1!-buYwv+O;sR5~@-D;00#`h+*c(CexIQP%2RCW#xvpC@DULhiPKFK z42vQ|-*k9)*1A%Jk}=r%Y$!7ZA8xMb*c=p2ryn-t-rD2f1_2uQcW5KRB&p!0t{YvI zDm6pZpIQOkvE8$WQ$%D_L1AsD`d8IB6K+;*J2KJ>wr#B-euk~U0~0xx3PaSj63cY< zjKW0)H?Y0H5w2TubEh9gV-omM&uLl<=2>s-V!vxOheE(JXJ_hV?|HjUb35<;u&(^b z_<1n^d5}wIp?59s|4$!$D$K+f?Dl3ju5TI3$>I5XV47h$1d9U_j37lfvjLSqTdWl9 zBa=m3zrTn1#p;_IE5aDQ#L0$|T3f-eaM0)qK+p2kC_iwGX6qB2rr}e0K{ta86(g7l z7(Vu-@O^4z4bGkqK*sGEij~*@oELQXpV{qaCQk+anrsGWWyOPWG3F$VB=t-1sfGkS zVKAl3Huxa2hsyM4m+TOHg*{?};ux@=?dxTUsF!9LXy?`d3ihvCwVDeoyVs(u=9~|7 zad()8lQ~~QU96#HNu(XN2$H>71+?QakpS|_gYF8$`wy`^@MmtMiI=dS^ zMXXn4-r4>8{fc>pled2|L_Wi48RslXt((i5yZRtS+z!M(!Q50~eewDSvhSWi$bw+u zqek2DtMX}$QHkJ~qpq)#+N9|~sR`gy8K(7p+yilwOAxEPOkghSm6YXmkRkFqk?uA}+ubM+Lg>;KE13D*!|v zN8O`w5q@U+X+Rm6)BGLm=I2;%()!(8Aewki33k%--Z`@tBwA@WUE2UZzAW3KQK9-8H{849XcKz%QiegCWHo? z^tSyz@JJy0W%z+Kc=R2)$wmN*sEbccvO=(HYewS7?f4?H%?>>A`-~y&#ay2wnj7gI ziK>4z6fu|J9~pDB%TXl49}O`US%LGg=fUY)Fd8>~daDi+^`8n|L! z#xckPBUK?;@C&M{Hee*Jv|@38RhtBuHCC}hI|#V-*&D#xO$^EJRwm0eQhr8MTz9sDOaMcfuW4R}a|bVv zs~YlSM4T9pE=J_HOKybYoV;uw4EIHnt-D8G?Ze&dDK4yq;j>H0$;zNjrT&Hr@x z@uci=TWbVaf;cojkIMJS;?REwM8*c_2)(?+^Kg8sJ{|%_&4DnWs1}A`UoNXj6s>5Q zZjK@qdj%7NTr8d<>}BTKgQ|-KJY_tUAlDbD@SF_9VEi3IX{0Y5cBXg})1C4_yEvLy0F!P z*9Kf6H}$>S3>G>_{+AFL+V4*>$l%>g8CTI2hn;g1Z>IUI1pZ(C zM;vjq|AciNup-Q`@)B?s*WMjBG1pW!2n>u(dA7$=baX!(ie);D=>8r0hFv+=g^F9Y z1O$6aPMm{j%m3yiE!cLe5U{jM7APM=MgbFI6Y-|wM=XdMW056)A&E+BX_rGqO=eL5an>=zd`>&n%kLlq87yzI&DcM@6*i+E|POL4d`Cmw6 znz0ZmZb@M3lL-mbzDIfK8-+RY_bX~z&s~%#^05SbFmcF$npKCQNl0=JIT`}r!Whny ziv$lp!|<({2LL~4h)R~g3UN(zS8fE+RIk6D-;Xofghq zLuUg==poCqZQQwMDCUlxY)}#00YoQkb_&zZU@+F)Z?z~imTs>gO@X*SPlzc63Atk- zfGpBvs79L!pxWe49#RD5p&*aESj~HL0T_zu1Z=t%bvWb$%yTyE<=*^71uh`REpRI^ zINU89cu8MN#T~f~j|00!cPz?pvCjxu)Zmgef(>PmB=6SfDRd)}#)se^RJ!av^%H@< zcM|qF205}&D0Af7B=fErWRiuN*RjSJ5@t|%hh3)VyQ56W~B30$s6UQY5XZ>Lr>I`E`4;?p0v5&^JX z=rmYIh^(J}-hVy^2=Oz`Fax^!Ug!^p$?zD3eg|SvVYlKLu~)qTON0Ag$8e_cd{WJL zF6xInrK9ZWa=LQ=|1tI5@oc}{`)v^`_DbwMN=d}tO3~UnjG76ti&A^X7ORxRRxQ=4 zT5YLSD^{$cHnpp$z1J_#_&nd=e|f+1-~GDJxzD-IbzSGK(_JQHp;ANHX0d4|jS97=4F!sA2ps{>9xL>z>N7>8JlCM7Rl$i0p zqF-v2?n+LMPly|-`Pybph49F7CI(lt_F*qK*g!WJGXs73<@e=R#TlQL;vMDqykN-( z7qKO5;7%}I{>)%5DeO%if^HyGxxw?2l5>DVpWkPwMmOn=-A3_jU_P)N7-h-oBBQuY z`-hGWm9{W)#)p8f-7LN&`fK{f`AbJ7A4Ol}>ZX%cJLFp_*^+Ss0?p5YY=$@aRf>?3;-fd8{rojrE(27 zPc*+bnmT3O?3r^@Y-KL~D-dI6hyY&R2%-pRet-Tw-)c^$zzS(&#iMcSSae-?APyA-flb2*Qv1}ZFd)g33m*mD$6&pNXIOxf0=7uO^l{6@(7Ezl{90F4O zhqg@2Bg@Lx#L|hbW+2h~6}YqC$^T@WS=|EFHI%WtgHdr539KmCq|dnPf{q)ORqHvQ zT?Or*aa9 zabdhDthDq_`HhYq|Cn$RjlQBuGI-`oNVYn~r3)rN04O!@3%nI08MZ_}_BK5HWL?NhhLxuSdrwtYZjMHRVTDROH!O12BZvmp zdGhzTCp%NjH;KF4Vwqrn9_DX;UH-c$q<++RtENE%I?UGZyJ{^87+`p^CXK(^t9?7*rF+}V5L-;OG2p--+tAIpWCPZvS$5nZ= zSNRoPx-|Sa)#&HcMVk*%ZS;Njg=WS>)Z|(TEtWwWS=>EFT`jr9WFd7Vi>5?$!Cu_- zz`(OFAjhdm-eu>>+17R611-W1pYG?r-eR!@IqZQGY(3&5Y^5F>78C)+L7Tgl)vh~c zsj}Z_PFxfL+i}6?$6;5Asz*x~{VZXdT`Fh)T_Rf`d5Xs;Cx2)%^$mV&Ea+fP8`yy6 zO=)#DZrce$F|XPKt%yp{lp>qipfX6{XFu#Mq%eR9DI5b>rsFYr!T_DHRVs*B(a8c0 zUUsaiNUdR;Zn5t>00Gm<5Z2$(m=wv!Ii|IVt4eUXBhP2F`Co^W_d~OkcxW-g#0JO- z7tjbj^c}>fvzLMX$Lnj_E;cRiputRUYb&^0>@Jk#dm|NL>PfEt_$eKVqSzd~&DVu5 zTA$OycqN$ow}s#2#bvs9M|zVYJ`nZ&)iTzQQ}-2z@fYlgNk@Se@_M4wcdYq=r!jx{ z&tG;;)pWam4dg>qw*K}``N{56BGY#Bek~>aIZG}JUtn>@TwN!yvsh^sN}bE*54HGV_4WfWxR(757d=b&{6l=63mUoE6X^)D z=^<%fB6l6=R$6uA>q{ERwzYD6s0S|R501bFl)KK^)=Bh{_u16bmT_}25l}9<&053T^wcW(KzT>uu4n$(K5f!5(@e+ zH{uzAQ@v;`sFav<`YL~9x=aZnC1^DFotG)Dym7t*7}|hWg!nE32|E-V6*Zu8?GsTz ze%5^sp)+YML|4xrv*)Cs>vqSTY*Tjf!o10+QYqoB_L)kZ>tEuCA&>chL2(VmYbrE1>gaW;(^kfhvc<%VcJLNHY%AtD>0n>U6{G1q9&dCO8WkV6^8>X*& z{O9=YY^Meb0$wZtClDFf0wrD)&3bN*!Dm(WT#>O0df^~F(8h85u3Z4DyB7|B>F;K; zYkLgM{6PF>u=C09&vv)6P8NEy=d1dpS9`@JP~^T?ujT6eRjJ)i>qi2rnM|~h)>C4X{0j7KV%t6Y&Xt>8s|%0wzOYrB-NnxFU!@i*7dt{>zhlF8 zXs&m+≤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
${svg.replace("`, + ); + await page.screenshot({ path: file, omitBackground: !padding }); +} + +await renderIcon(192, "public/icons/icon-192.png"); +await renderIcon(512, "public/icons/icon-512.png"); +// Maskable icons need the artwork inside the central 80% safe zone. +await renderIcon(512, "public/icons/icon-maskable-512.png", 52); +await renderIcon(180, "public/icons/apple-touch-icon.png", 14); + +await page.setViewportSize({ width: 1200, height: 630 }); +await page.setContent(` + +
+
+
+
${svg.replace(" +
Compressly
+
Shrink PDFs, images & videos. Nothing is uploaded.
+
+ ${["PDF", "JPG", "HEIC", "WebP", "MP4", "GIF"].map((t) => `${t}`).join("")} +
+
+ `); +await page.screenshot({ path: "public/og-image.png" }); +await browser.close(); +console.log("Generated icons and og-image.png"); diff --git a/src/App.tsx b/src/App.tsx index 0001610..6f9ffe1 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,33 +1,35 @@ import React, { useState, useCallback, useRef, useEffect, useMemo } from "react"; import { motion, AnimatePresence } from "motion/react"; -import { - UploadCloud, - Settings, - X, - Download, - ArrowRight, - Activity, - HardDrive, -} from "lucide-react"; +import { UploadCloud, X, Download, ArrowRight, Activity, HardDrive } from "lucide-react"; +import { BatchSummary, type Summary } from "./components/BatchSummary"; +import { CompareModal } from "./components/CompareModal"; import { FileRow, type FileItem } from "./components/FileRow"; import { FloatingBadges } from "./components/FloatingBadges"; +import { PrivacyBadge } from "./components/PrivacyBadge"; +import { SettingsPanel } from "./components/SettingsPanel"; +import { ThemeToggle } from "./components/ThemeToggle"; +import { useSettings } from "./hooks/useSettings"; +import { isAbortError } from "./lib/abort"; import { + ACCEPTED_TYPES, + canPreviewOriginal, compressFile, createZip, downloadBlob, + filesFromDataTransfer, getFileKind, } from "./lib/compress"; +import { getLandingPage } from "./lib/landing"; import { - type CompressionLevel, - type CompressionSettings, - LEVELS, + type FileOverrides, + applyOverrides, dedupeNames, estimateSavings, formatSize, getOutputName, isSettingsValid, - parseTargetMB, } from "./lib/settings"; +import { takeSharedFiles } from "./lib/share-target"; /** Files compressed in parallel. FFmpeg jobs are still serialized internally. */ const CONCURRENCY = 3; @@ -60,12 +62,17 @@ async function runPool( ); } +function outputFile(item: FileItem): File { + const blob = item.compressedBlob || item.file; + return new File([blob], getOutputName(item.file.name, blob.type), { type: blob.type }); +} + +const landing = getLandingPage(location.pathname); + export default function App() { const [files, setFiles] = useState([]); const [isDragging, setIsDragging] = useState(false); - const [compressionLevel, setCompressionLevel] = - useState("Medium"); - const [targetSize, setTargetSize] = useState(""); + const { stored, settings, update } = useSettings(landing?.preset); const fileInputRef = useRef(null); // Mirrors `files` so async handlers always see the latest list. @@ -76,12 +83,29 @@ export default function App() { const [totalFilesCompressed, setTotalFilesCompressed] = useState(0); const [totalDataSaved, setTotalDataSaved] = useState(0); // in bytes const [isSystemActive, setIsSystemActive] = useState(true); + const [processedBytes, setProcessedBytes] = useState(0); + const [summary, setSummary] = useState(null); + const [compare, setCompare] = useState<{ + id: string; + originalUrl: string | null; + compressedUrl: string; + } | null>(null); - const settings: CompressionSettings = useMemo( - () => ({ level: compressionLevel, targetBytes: parseTargetMB(targetSize) }), - [compressionLevel, targetSize], - ); const settingsValid = isSettingsValid(settings); + const isCompressing = files.some((f) => f.status === "compressing"); + const [canShareFiles] = useState(() => { + try { + return ( + typeof navigator.canShare === "function" && + navigator.canShare({ files: [new File([""], "test.txt", { type: "text/plain" })] }) + ); + } catch { + return false; + } + }); + + // One AbortController per file being compressed, for the cancel buttons. + const controllers = useRef(new Map()); // Progress events arrive many times per second; batch them into one // state update per animation frame. @@ -152,54 +176,102 @@ export default function App() { [], ); + // Closing the tab mid-compression would silently lose the work. + useEffect(() => { + if (!isCompressing) return; + const onBeforeUnload = (e: BeforeUnloadEvent) => { + e.preventDefault(); + e.returnValue = ""; + }; + window.addEventListener("beforeunload", onBeforeUnload); + return () => window.removeEventListener("beforeunload", onBeforeUnload); + }, [isCompressing]); + const addFiles = useCallback((newFiles: File[]) => { + if (newFiles.length === 0) return; const newItems: FileItem[] = newFiles.map((f) => { const kind = getFileKind(f); return { id: createId(), file: f, + kind, status: kind ? "idle" : "unsupported", progress: 0, originalSize: f.size, previewUrl: - kind === "image" || kind === "svg" || f.type.startsWith("video/") + canPreviewOriginal(f) || f.type.startsWith("video/") ? URL.createObjectURL(f) : undefined, }; }); setFiles((prev) => [...prev, ...newItems]); + setSummary(null); // Start downloading FFmpeg as soon as it's needed, not on page load. - if (newItems.some((item) => getFileKind(item.file) === "media")) { + if (newItems.some((item) => item.kind === "media")) { import("./lib/media") .then((m) => m.loadFFmpeg()) .catch((e) => console.error("Failed to load FFmpeg", e)); } - const pdfs = newItems.filter((item) => getFileKind(item.file) === "pdf"); + const setPreview = (id: string, url: string) => { + // The file may have been removed while the preview rendered. + if (!filesRef.current.some((f) => f.id === id)) { + URL.revokeObjectURL(url); + return; + } + setFiles((prev) => prev.map((f) => (f.id === id ? { ...f, previewUrl: url } : f))); + }; + + const pdfs = newItems.filter((item) => item.kind === "pdf"); if (pdfs.length > 0) { import("./lib/pdf").then(({ generatePdfThumbnail }) => pdfs.forEach(async (item) => { try { - const thumbUrl = await generatePdfThumbnail(item.file); - // The file may have been removed while the thumbnail rendered. - if (!filesRef.current.some((f) => f.id === item.id)) { - URL.revokeObjectURL(thumbUrl); - return; - } - setFiles((prev) => - prev.map((f) => - f.id === item.id ? { ...f, previewUrl: thumbUrl } : f, - ), - ); + setPreview(item.id, await generatePdfThumbnail(item.file)); } catch (error) { console.error("Error generating PDF thumbnail:", error); } }), ); } + + // Browsers other than Safari can't show HEIC, so convert a small preview. + const heics = newItems.filter((item) => item.kind === "image" && !canPreviewOriginal(item.file)); + if (heics.length > 0) { + import("./lib/image").then(({ heicToJpeg }) => + heics.forEach(async (item) => { + try { + const jpeg = await heicToJpeg(item.file, 0.6); + setPreview(item.id, URL.createObjectURL(jpeg)); + } catch (error) { + console.error("Error generating HEIC preview:", error); + } + }), + ); + } }, []); + // Files shared to the installed app from another app (Android share sheet). + useEffect(() => { + const params = new URLSearchParams(location.search); + if (!params.has("shared")) return; + history.replaceState(null, "", location.pathname); + takeSharedFiles().then(addFiles).catch(console.error); + }, [addFiles]); + + // Paste files or screenshots with Ctrl+V / Cmd+V. + useEffect(() => { + const onPaste = (e: ClipboardEvent) => { + const pasted = Array.from(e.clipboardData?.files ?? []); + if (pasted.length === 0) return; + e.preventDefault(); + addFiles(pasted); + }; + window.addEventListener("paste", onPaste); + return () => window.removeEventListener("paste", onPaste); + }, [addFiles]); + const handleDragOver = useCallback((e: React.DragEvent) => { e.preventDefault(); setIsDragging(true); @@ -216,9 +288,8 @@ export default function App() { (e: React.DragEvent) => { e.preventDefault(); setIsDragging(false); - if (e.dataTransfer.files && e.dataTransfer.files.length > 0) { - addFiles(Array.from(e.dataTransfer.files)); - } + // Must start synchronously: the DataTransfer is cleared after the event. + filesFromDataTransfer(e.dataTransfer).then(addFiles).catch(console.error); }, [addFiles], ); @@ -234,7 +305,12 @@ export default function App() { [addFiles], ); + const cancelFile = useCallback((id: string) => { + controllers.current.get(id)?.abort(); + }, []); + const removeFile = useCallback((id: string) => { + controllers.current.get(id)?.abort(); setFiles((prev) => { const fileToRemove = prev.find((f) => f.id === id); if (fileToRemove?.previewUrl) { @@ -247,8 +323,48 @@ export default function App() { const downloadFile = useCallback((id: string) => { const item = filesRef.current.find((f) => f.id === id); if (!item) return; - const blob = item.compressedBlob || item.file; - downloadBlob(blob, getOutputName(item.file.name, blob.type)); + const file = outputFile(item); + downloadBlob(file, file.name); + }, []); + + const shareFile = useCallback((id: string) => { + const item = filesRef.current.find((f) => f.id === id); + if (!item) return; + navigator.share({ files: [outputFile(item)] }).catch((error) => { + // AbortError just means the user closed the share sheet. + if (error?.name !== "AbortError") console.error("Share failed", error); + }); + }, []); + + const setOverrides = useCallback((id: string, overrides: FileOverrides) => { + setFiles((prev) => prev.map((f) => (f.id === id ? { ...f, overrides } : f))); + }, []); + + const openCompare = useCallback(async (id: string) => { + const item = filesRef.current.find((f) => f.id === id); + if (!item?.compressedBlob) return; + let originalUrl: string | null = null; + if (canPreviewOriginal(item.file)) { + originalUrl = URL.createObjectURL(item.file); + } else { + try { + const { heicToJpeg } = await import("./lib/image"); + originalUrl = URL.createObjectURL(await heicToJpeg(item.file, 0.95)); + } catch { + originalUrl = null; + } + } + setCompare({ id, originalUrl, compressedUrl: URL.createObjectURL(item.compressedBlob) }); + }, []); + + const closeCompare = useCallback(() => { + setCompare((current) => { + if (current) { + if (current.originalUrl) URL.revokeObjectURL(current.originalUrl); + URL.revokeObjectURL(current.compressedUrl); + } + return null; + }); }, []); const handleCompression = async (scope: CompressionScope = "all") => { @@ -257,6 +373,7 @@ export default function App() { if (selected.length === 0) return; const ids = new Set(selected.map((f) => f.id)); + setSummary(null); setFiles((prev) => prev.map((f) => ids.has(f.id) @@ -267,22 +384,32 @@ export default function App() { compressedSize: undefined, compressedBlob: undefined, keptOriginal: false, + metadataRemoved: false, } : f, ), ); + const startedAt = performance.now(); let filesCount = 0; let bytesSaved = 0; + let processed = 0; + let originalBytes = 0; + let failed = 0; await runPool(selected, CONCURRENCY, async (fileItem: FileItem) => { + const controller = new AbortController(); + controllers.current.set(fileItem.id, controller); try { - const { blob, keptOriginal } = await compressFile( + const { blob, keptOriginal, metadataRemoved } = await compressFile( fileItem.file, fileItem.id, - settings, + applyOverrides(settings, fileItem.overrides), + fileItem.overrides, (progress) => setProgress(fileItem.id, progress), + controller.signal, ); + if (controller.signal.aborted) throw new DOMException("", "AbortError"); pendingProgress.current.delete(fileItem.id); setFiles((prev) => prev.map((f) => @@ -294,25 +421,47 @@ export default function App() { compressedSize: blob.size, compressedBlob: blob, keptOriginal, + metadataRemoved, } : f, ), ); + processed += 1; + originalBytes += fileItem.originalSize; if (!keptOriginal) { filesCount += 1; - bytesSaved += fileItem.originalSize - blob.size; + bytesSaved += Math.max(0, fileItem.originalSize - blob.size); } } catch (error) { - console.error("Compression error:", error); pendingProgress.current.delete(fileItem.id); + const cancelled = isAbortError(error) || controller.signal.aborted; + if (!cancelled) { + console.error("Compression error:", error); + failed += 1; + } setFiles((prev) => prev.map((f) => - f.id === fileItem.id ? { ...f, status: "error" } : f, + f.id === fileItem.id + ? { ...f, status: cancelled ? "idle" : "error", progress: 0 } + : f, ), ); + } finally { + controllers.current.delete(fileItem.id); } }); + setProcessedBytes((prev) => prev + originalBytes); + if (processed + failed > 0) { + setSummary({ + files: processed, + failed, + originalBytes, + savedBytes: bytesSaved, + seconds: (performance.now() - startedAt) / 1000, + }); + } + if (filesCount > 0) { setTotalFilesCompressed((prev) => prev + filesCount); setTotalDataSaved((prev) => prev + bytesSaved); @@ -329,19 +478,17 @@ export default function App() { const doneFiles = files.filter((f) => f.status === "done"); if (doneFiles.length === 0) return; - const blobs = doneFiles.map((f) => f.compressedBlob || f.file); - const names = dedupeNames( - doneFiles.map((f, i) => getOutputName(f.file.name, blobs[i].type)), - ); - const zip = await createZip( - names.map((name, i) => ({ name, blob: blobs[i] })), - ); + const outputs = doneFiles.map(outputFile); + const names = dedupeNames(outputs.map((f) => f.name)); + const zip = await createZip(names.map((name, i) => ({ name, blob: outputs[i] }))); downloadBlob(zip, `compressly_${Date.now()}.zip`); }; const clearQueue = () => { + controllers.current.forEach((controller) => controller.abort()); files.forEach((f) => f.previewUrl && URL.revokeObjectURL(f.previewUrl)); setFiles([]); + setSummary(null); }; const compressible = files.filter((f) => f.status !== "unsupported"); @@ -350,22 +497,71 @@ export default function App() { compressible.every((f) => f.status === "compressing") || !settingsValid; + const kinds = useMemo( + () => ({ + image: files.some((f) => f.kind === "image" || f.kind === "gif"), + pdf: files.some((f) => f.kind === "pdf"), + video: files.some((f) => f.kind === "media" && f.file.type.startsWith("video/")), + }), + [files], + ); + const estimate = useMemo( () => estimateSavings( - files - .filter((f) => isInScope(f, "all")) - .map((f) => f.originalSize), + files.filter((f) => isInScope(f, "all")).map((f) => f.originalSize), settings, ), [files, settings], ); + const compareItem = compare && files.find((f) => f.id === compare.id); + + const handleTitleClick = () => { + if (landing) location.href = "/"; + else window.scrollTo({ top: 0, behavior: "smooth" }); + }; + + const actionButtons = + files.some((f) => f.status === "idle") && files.some((f) => f.status === "done") ? ( +
+ + +
+ ) : ( + + ); + return (
{/* Decorative Background Elements (gradients instead of costly blur filters) */} -
-
+
+
+ + {/* Subtle Decorative Icons */} @@ -376,10 +572,23 @@ export default function App() { window.location.reload()} - className="text-6xl md:text-7xl font-display font-bold text-primary-dark mb-6 tracking-tight cursor-pointer hover:opacity-80 transition-opacity" + className={`${landing ? "text-4xl md:text-5xl" : "text-6xl md:text-7xl"} font-display font-bold text-primary-dark mb-6 tracking-tight`} > - Compressly + {landing ? ( + <> + + {landing.heading} + + ) : ( + + )} - Shrink your files, keep the magic. Premium compression for creators - who care about quality. + {landing + ? landing.intro + : "Shrink your files, keep the magic. Premium compression for creators who care about quality."} @@ -399,7 +609,7 @@ export default function App() { initial={{ opacity: 0, scale: 0.95 }} animate={{ opacity: 1, scale: 1 }} transition={{ delay: 0.2 }} - className={`relative border-2 border-dashed rounded-[2rem] p-12 flex flex-col items-center justify-center text-center transition-all duration-300 bg-surface/30 backdrop-blur-xl shadow-2xl + className={`relative border-2 border-dashed rounded-[2rem] p-8 sm:p-12 flex flex-col items-center justify-center text-center transition-all duration-300 bg-surface/30 backdrop-blur-xl shadow-2xl ${isDragging ? "border-primary bg-primary/5 scale-[1.02]" : "border-border hover:border-primary/50 hover:bg-surface/50"}`} onDragOver={handleDragOver} onDragLeave={handleDragLeave} @@ -411,28 +621,30 @@ export default function App() { className="hidden" ref={fileInputRef} onChange={handleFileInput} - accept="image/jpeg,image/png,image/webp,image/bmp,image/svg+xml,video/*,audio/*,application/pdf" + accept={ACCEPTED_TYPES} />
- +

Drop your files here

-

- Supports PDF, JPG, PNG, WebP, SVG, MP4, MP3 and more +

+ PDF, JPG, PNG, HEIC, WebP, GIF, SVG, MP4, MP3 and more +

+

+ Drop whole folders, or paste with Ctrl+V

+ + {/* Settings & File List */} {files.length > 0 && ( @@ -442,138 +654,16 @@ export default function App() { exit={{ opacity: 0, height: 0 }} className="flex flex-col gap-6" > - {/* Settings Panel */} -
-
- -

- Compression Settings -

-
+ -
-
-
- -
- {LEVELS.map((level) => ( - - ))} -
-
- - - {compressionLevel === "Custom" && ( - - - setTargetSize(e.target.value)} - placeholder="e.g. 5" - aria-invalid={!settingsValid} - aria-describedby="target-size-hint" - className="w-full h-12 bg-bg border border-border rounded-2xl px-4 text-sm focus:outline-none focus:border-primary focus:ring-1 focus:ring-primary transition-all text-text" - /> - {!settingsValid && ( -

- Enter a target size greater than 0. -

- )} -
- )} -
-
- - {estimate && ( - -
- - Estimated savings: -
-
- - {formatSize(estimate.saved)} - - ({estimate.percentage}%) -
-
- )} - -
- {files.some((f) => f.status === "idle") && - files.some((f) => f.status === "done") ? ( -
- - -
- ) : ( - - )} -
-
-
+ {summary && setSummary(null)} />} {/* File List */}
@@ -585,14 +675,14 @@ export default function App() { {files.some((f) => f.status === "done") && ( )} @@ -603,8 +693,13 @@ export default function App() { ))} @@ -615,6 +710,17 @@ export default function App() {
+ {compare && compareItem && ( + + )} + {/* How it Works Section */}

@@ -625,7 +731,7 @@ export default function App() {
-
+
1

@@ -637,7 +743,7 @@ export default function App() {

-
+
2

@@ -649,7 +755,7 @@ export default function App() {

-
+
3

@@ -715,14 +821,14 @@ export default function App() {
{isSystemActive ? "Systems Active" : "Systems Offline"} diff --git a/src/components/BatchSummary.tsx b/src/components/BatchSummary.tsx new file mode 100644 index 0000000..46ed553 --- /dev/null +++ b/src/components/BatchSummary.tsx @@ -0,0 +1,45 @@ +import { CheckCircle, X } from "lucide-react"; +import { formatSize } from "../lib/settings"; + +export interface Summary { + files: number; + failed: number; + originalBytes: number; + savedBytes: number; + seconds: number; +} + +export function BatchSummary({ summary, onClose }: { summary: Summary; onClose: () => void }) { + const percent = + summary.originalBytes > 0 ? Math.round((summary.savedBytes / summary.originalBytes) * 100) : 0; + return ( +
+ +

+ {summary.savedBytes > 0 ? ( + <> + Saved {formatSize(summary.savedBytes)} ({percent}%) across{" "} + {summary.files} {summary.files === 1 ? "file" : "files"} + + ) : ( + <> + Processed {summary.files} {summary.files === 1 ? "file" : "files"} + + )}{" "} + in {summary.seconds < 1 ? "under a second" : `${Math.round(summary.seconds)}s`}. + {summary.failed > 0 && ( + + {" "} + {summary.failed} {summary.failed === 1 ? "file" : "files"} failed. + + )} +

+ +
+ ); +} diff --git a/src/components/CompareModal.tsx b/src/components/CompareModal.tsx new file mode 100644 index 0000000..1b3d65b --- /dev/null +++ b/src/components/CompareModal.tsx @@ -0,0 +1,106 @@ +import { useEffect, useRef, useState } from "react"; +import { X } from "lucide-react"; +import { formatSize } from "../lib/settings"; + +interface CompareModalProps { + name: string; + originalUrl: string | null; + compressedUrl: string; + originalSize: number; + compressedSize: number; + onClose: () => void; +} + +/** Before/after slider: the compressed image is revealed from the left. */ +export function CompareModal({ + name, + originalUrl, + compressedUrl, + originalSize, + compressedSize, + onClose, +}: CompareModalProps) { + const [position, setPosition] = useState(50); + const dialogRef = useRef(null); + + useEffect(() => { + const onKey = (e: KeyboardEvent) => e.key === "Escape" && onClose(); + document.addEventListener("keydown", onKey); + dialogRef.current?.focus(); + return () => document.removeEventListener("keydown", onKey); + }, [onClose]); + + return ( +
+
e.stopPropagation()} + > +
+

{name}

+ +
+
+ {originalUrl ? ( + <> + Original + Compressed +
+ + Compressed · {formatSize(compressedSize)} + + + Original · {formatSize(originalSize)} + + + ) : ( + Compressed + )} +
+ {originalUrl && ( +
+ setPosition(Number(e.target.value))} + className="w-full accent-[var(--color-primary)]" + aria-label="Comparison position" + /> +
+ )} +
+
+ ); +} diff --git a/src/components/FileRow.tsx b/src/components/FileRow.tsx index e8c6068..acc47bc 100644 --- a/src/components/FileRow.tsx +++ b/src/components/FileRow.tsx @@ -1,152 +1,286 @@ -import { memo } from "react"; +import { memo, useState } from "react"; import { motion } from "motion/react"; import { + Columns2, Download, File, FileText, Image as ImageIcon, + MapPinOff, Music, + Share2, + SlidersHorizontal, + Square, Video, X, } from "lucide-react"; -import { formatSize } from "../lib/settings"; +import type { FileKind } from "../lib/compress"; +import { type FileOverrides, PRESET_LEVELS, formatSize } from "../lib/settings"; export interface FileItem { id: string; file: File; + kind: FileKind | null; status: "idle" | "compressing" | "done" | "error" | "unsupported"; progress: number; originalSize: number; compressedSize?: number; keptOriginal?: boolean; + metadataRemoved?: boolean; previewUrl?: string; compressedBlob?: Blob; + overrides?: FileOverrides; } function getFileIcon(type: string) { - if (type.startsWith("image/")) - return ; - if (type.startsWith("video/")) - return

nvUufY5#cPiEF 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 literal 0 HcmV?d00001 diff --git a/scripts/generate-images.mjs b/scripts/generate-images.mjs new file mode 100644 index 0000000..3eaa603 --- /dev/null +++ b/scripts/generate-images.mjs @@ -0,0 +1,42 @@ +// Renders the PWA icons and the social preview image (public/og-image.png). +// Run with: node scripts/generate-images.mjs +import { chromium } from "@playwright/test"; +import fs from "node:fs"; + +const svg = fs.readFileSync("public/favicon.svg", "utf8"); +const browser = await chromium.launch(); +const page = await browser.newPage(); + +async function renderIcon(size, file, padding = 0) { + await page.setViewportSize({ width: size, height: size }); + const inner = size - padding * 2; + await page.setContent( + `` + + `