From 73e4ff4bee8318518deb75d2cfd686e9b044a2f2 Mon Sep 17 00:00:00 2001
From: Hashory <89839285+Hashory@users.noreply.github.com>
Date: Sun, 12 Apr 2026 01:09:05 +0900
Subject: [PATCH 1/2] Migrate UI to static SvelteKit with Oxc tooling
---
.github/dependabot.yml | 15 +
.github/workflows/ci.yml | 37 +
.gitignore | 3 +
.oxfmtrc.json | 19 +
.oxlintrc.json | 10 +
README.md | 2 +
biome.json | 64 --
index.html | 146 ---
package.json | 41 +-
pnpm-lock.yaml | 1693 +++++++++++++++++++----------
src/app.html | 11 +
src/core.test.ts | 51 +-
src/core.ts | 20 +-
src/main.ts | 137 ---
src/routes/+layout.svelte | 26 +
src/routes/+layout.ts | 2 +
src/routes/+page.svelte | 574 ++++++++++
src/routes/robots.txt/+server.ts | 10 +
src/routes/sitemap.xml/+server.ts | 13 +
src/style.css | 326 ------
svelte.config.js | 14 +
tsconfig.json | 27 +-
vite.config.ts | 19 +-
23 files changed, 1917 insertions(+), 1343 deletions(-)
create mode 100644 .github/dependabot.yml
create mode 100644 .github/workflows/ci.yml
create mode 100644 .oxfmtrc.json
create mode 100644 .oxlintrc.json
delete mode 100644 biome.json
delete mode 100644 index.html
create mode 100644 src/app.html
delete mode 100644 src/main.ts
create mode 100644 src/routes/+layout.svelte
create mode 100644 src/routes/+layout.ts
create mode 100644 src/routes/+page.svelte
create mode 100644 src/routes/robots.txt/+server.ts
create mode 100644 src/routes/sitemap.xml/+server.ts
delete mode 100644 src/style.css
create mode 100644 svelte.config.js
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
new file mode 100644
index 0000000..184530f
--- /dev/null
+++ b/.github/dependabot.yml
@@ -0,0 +1,15 @@
+version: 2
+updates:
+ - package-ecosystem: "npm"
+ directory: "/"
+ schedule:
+ interval: "weekly"
+ groups:
+ npm-dependencies:
+ patterns:
+ - "*"
+
+ - package-ecosystem: "github-actions"
+ directory: "/"
+ schedule:
+ interval: "weekly"
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..6daacb0
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,37 @@
+name: CI
+
+on:
+ pull_request:
+ push:
+ branches:
+ - main
+
+jobs:
+ checks:
+ runs-on: ubuntu-slim
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v6
+
+ - name: Setup pnpm
+ uses: pnpm/action-setup@v4
+ with:
+ version: 10.33.0
+
+ - name: Setup Node.js
+ uses: actions/setup-node@v6
+ with:
+ node-version: 22
+ cache: pnpm
+
+ - name: Install dependencies
+ run: pnpm install --frozen-lockfile
+
+ - name: Check formatting
+ run: pnpm run format:check
+
+ - name: Lint
+ run: pnpm run lint
+
+ - name: Typecheck
+ run: pnpm run check
diff --git a/.gitignore b/.gitignore
index a547bf3..850edbf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,7 @@
# Logs
logs
*.log
+vite-preview*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
@@ -8,6 +9,8 @@ pnpm-debug.log*
lerna-debug.log*
node_modules
+.svelte-kit
+build
dist
dist-ssr
*.local
diff --git a/.oxfmtrc.json b/.oxfmtrc.json
new file mode 100644
index 0000000..929860e
--- /dev/null
+++ b/.oxfmtrc.json
@@ -0,0 +1,19 @@
+{
+ "$schema": "./node_modules/oxfmt/configuration_schema.json",
+ "useTabs": true,
+ "singleQuote": false,
+ "sortImports": {
+ "groups": [
+ "type-import",
+ ["value-builtin", "value-external"],
+ "type-internal",
+ "value-internal",
+ ["type-parent", "type-sibling", "type-index"],
+ ["value-parent", "value-sibling", "value-index"],
+ "unknown"
+ ]
+ },
+ "sortPackageJson": {
+ "sortScripts": true
+ }
+}
diff --git a/.oxlintrc.json b/.oxlintrc.json
new file mode 100644
index 0000000..2124dae
--- /dev/null
+++ b/.oxlintrc.json
@@ -0,0 +1,10 @@
+{
+ "$schema": "./node_modules/oxlint/configuration_schema.json",
+ "env": {
+ "browser": true,
+ "es2024": true,
+ "node": true
+ },
+ "ignorePatterns": ["build/**", ".svelte-kit/**"],
+ "plugins": ["import", "typescript", "vitest"]
+}
diff --git a/README.md b/README.md
index a41ad27..9ba1322 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,9 @@
[A4toA3 - PDF変換ツール](https://a4toa3.hashory.app/)
## 概要
+
A4toA3は、A4サイズのPDFの2ページ分を1枚のA3用紙に並べて配置した新しいPDFを作成するツールです。
## ライセンス
+
このプロジェクトは [MITライセンス](LICENSE) のもとで公開されています。
diff --git a/biome.json b/biome.json
deleted file mode 100644
index 5fb4128..0000000
--- a/biome.json
+++ /dev/null
@@ -1,64 +0,0 @@
-{
- "$schema": "https://biomejs.dev/schemas/2.0.6/schema.json",
- "vcs": {
- "enabled": false,
- "clientKind": "git",
- "useIgnoreFile": false
- },
- "files": {
- "ignoreUnknown": false,
- "includes": ["**"]
- },
- "formatter": {
- "enabled": true,
- "indentStyle": "tab"
- },
- "assist": {
- "actions": {
- "source": {
- "organizeImports": "on"
- }
- }
- },
- "linter": {
- "enabled": true,
- "rules": {
- "style": {
- "useLiteralEnumMembers": "error",
- "useNodejsImportProtocol": "error",
- "useAsConstAssertion": "error",
- "useEnumInitializers": "error",
- "useSelfClosingElements": "error",
- "useConst": "error",
- "useSingleVarDeclarator": "error",
- "noUnusedTemplateLiteral": "error",
- "useNumberNamespace": "error",
- "noInferrableTypes": "error",
- "useExponentiationOperator": "error",
- "useTemplate": "error",
- "noParameterAssign": "error",
- "noNonNullAssertion": "error",
- "useDefaultParameterLast": "error",
- "useImportType": "error",
- "useExportType": "error",
- "noUselessElse": "error",
- "useShorthandFunctionType": "error"
- }
- }
- },
- "javascript": {
- "formatter": {
- "quoteStyle": "double"
- }
- },
- "html": {
- "formatter": {
- "enabled": true
- }
- },
- "css": {
- "formatter": {
- "enabled": true
- }
- }
-}
diff --git a/index.html b/index.html
deleted file mode 100644
index 9f10aa0..0000000
--- a/index.html
+++ /dev/null
@@ -1,146 +0,0 @@
-
-
-
-
-
- A4toA3 - PDF変換
-
-
-
-
-
-
A4 to A3
-
- このツールは、A4サイズのPDFの2ページ分を、1枚のA3用紙に並べて配置した新しいPDFを作成します。
-
- ※PDFファイルは外部サーバー等に送信されず、このブラウザ内だけで処理されます。
-
-
-
-
💡 コンビニ印刷のヒント
-
A3サイズは、A4サイズを2枚並べたサイズです。
-
- コンビニのマルチコピー機では、A4用紙2枚を印刷するよりも、A3用紙1枚を印刷する方が料金が安くなる場合が多いです。
-
- ※2025年4月現在
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/package.json b/package.json
index 6fb90d2..6b92226 100644
--- a/package.json
+++ b/package.json
@@ -3,22 +3,37 @@
"version": "1.0.0",
"type": "module",
"scripts": {
- "dev": "vite",
- "build": "tsc && vite build",
+ "build": "svelte-kit sync && vite build",
+ "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
+ "dev": "vite dev",
+ "format": "oxfmt --write .",
+ "format:check": "oxfmt --check .",
+ "lint": "oxlint .",
+ "prepare": "svelte-kit sync",
"preview": "vite preview",
- "biome": "biome check --write"
- },
- "devDependencies": {
- "@biomejs/biome": "^2.0.6",
- "@types/node": "^24.0.10",
- "tsx": "^4.21.0",
- "typescript": "~5.7.2",
- "vite": "^6.3.1",
- "vite-plugin-sitemap": "^0.8.2",
- "vitest": "^4.0.15"
+ "test": "vitest run"
},
"dependencies": {
"pdf-lib": "^1.17.1",
"ts-custom-error": "^3.3.1"
- }
+ },
+ "devDependencies": {
+ "@sveltejs/adapter-static": "^3.0.10",
+ "@sveltejs/kit": "^2.57.1",
+ "@sveltejs/vite-plugin-svelte": "^7.0.0",
+ "@types/node": "^25.6.0",
+ "oxfmt": "^0.44.0",
+ "oxlint": "^1.59.0",
+ "svelte": "^5.55.3",
+ "svelte-check": "^4.4.6",
+ "tsx": "^4.21.0",
+ "typescript": "^6.0.2",
+ "vite": "^8.0.8",
+ "vitest": "^4.1.4"
+ },
+ "engines": {
+ "node": ">=22",
+ "pnpm": ">=10.33.0"
+ },
+ "packageManager": "pnpm@10.33.0"
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index ad79cc3..f928865 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -15,88 +15,53 @@ importers:
specifier: ^3.3.1
version: 3.3.1
devDependencies:
- '@biomejs/biome':
- specifier: ^2.0.6
- version: 2.0.6
+ '@sveltejs/adapter-static':
+ specifier: ^3.0.10
+ version: 3.0.10(@sveltejs/kit@2.57.1(@sveltejs/vite-plugin-svelte@7.0.0(svelte@5.55.3)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)))(svelte@5.55.3)(typescript@6.0.2)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)))
+ '@sveltejs/kit':
+ specifier: ^2.57.1
+ version: 2.57.1(@sveltejs/vite-plugin-svelte@7.0.0(svelte@5.55.3)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)))(svelte@5.55.3)(typescript@6.0.2)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0))
+ '@sveltejs/vite-plugin-svelte':
+ specifier: ^7.0.0
+ version: 7.0.0(svelte@5.55.3)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0))
'@types/node':
- specifier: ^24.0.10
- version: 24.0.10
+ specifier: ^25.6.0
+ version: 25.6.0
+ oxfmt:
+ specifier: ^0.44.0
+ version: 0.44.0
+ oxlint:
+ specifier: ^1.59.0
+ version: 1.59.0
+ svelte:
+ specifier: ^5.55.3
+ version: 5.55.3
+ svelte-check:
+ specifier: ^4.4.6
+ version: 4.4.6(picomatch@4.0.4)(svelte@5.55.3)(typescript@6.0.2)
tsx:
specifier: ^4.21.0
version: 4.21.0
typescript:
- specifier: ~5.7.2
- version: 5.7.3
+ specifier: ^6.0.2
+ version: 6.0.2
vite:
- specifier: ^6.3.1
- version: 6.3.1(@types/node@24.0.10)(tsx@4.21.0)
- vite-plugin-sitemap:
- specifier: ^0.8.2
- version: 0.8.2
+ specifier: ^8.0.8
+ version: 8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)
vitest:
- specifier: ^4.0.15
- version: 4.0.15(@types/node@24.0.10)(tsx@4.21.0)
+ specifier: ^4.1.4
+ version: 4.1.4(@types/node@25.6.0)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0))
packages:
- '@biomejs/biome@2.0.6':
- resolution: {integrity: sha512-RRP+9cdh5qwe2t0gORwXaa27oTOiQRQvrFf49x2PA1tnpsyU7FIHX4ZOFMtBC4QNtyWsN7Dqkf5EDbg4X+9iqA==}
- engines: {node: '>=14.21.3'}
- hasBin: true
-
- '@biomejs/cli-darwin-arm64@2.0.6':
- resolution: {integrity: sha512-AzdiNNjNzsE6LfqWyBvcL29uWoIuZUkndu+wwlXW13EKcBHbbKjNQEZIJKYDc6IL+p7bmWGx3v9ZtcRyIoIz5A==}
- engines: {node: '>=14.21.3'}
- cpu: [arm64]
- os: [darwin]
+ '@emnapi/core@1.9.2':
+ resolution: {integrity: sha512-UC+ZhH3XtczQYfOlu3lNEkdW/p4dsJ1r/bP7H8+rhao3TTTMO1ATq/4DdIi23XuGoFY+Cz0JmCbdVl0hz9jZcA==}
- '@biomejs/cli-darwin-x64@2.0.6':
- resolution: {integrity: sha512-wJjjP4E7bO4WJmiQaLnsdXMa516dbtC6542qeRkyJg0MqMXP0fvs4gdsHhZ7p9XWTAmGIjZHFKXdsjBvKGIJJQ==}
- engines: {node: '>=14.21.3'}
- cpu: [x64]
- os: [darwin]
+ '@emnapi/runtime@1.9.2':
+ resolution: {integrity: sha512-3U4+MIWHImeyu1wnmVygh5WlgfYDtyf0k8AbLhMFxOipihf6nrWC4syIm/SwEeec0mNSafiiNnMJwbza/Is6Lw==}
- '@biomejs/cli-linux-arm64-musl@2.0.6':
- resolution: {integrity: sha512-CVPEMlin3bW49sBqLBg2x016Pws7eUXA27XYDFlEtponD0luYjg2zQaMJ2nOqlkKG9fqzzkamdYxHdMDc2gZFw==}
- engines: {node: '>=14.21.3'}
- cpu: [arm64]
- os: [linux]
-
- '@biomejs/cli-linux-arm64@2.0.6':
- resolution: {integrity: sha512-ZSVf6TYo5rNMUHIW1tww+rs/krol7U5A1Is/yzWyHVZguuB0lBnIodqyFuwCNqG9aJGyk7xIMS8HG0qGUPz0SA==}
- engines: {node: '>=14.21.3'}
- cpu: [arm64]
- os: [linux]
-
- '@biomejs/cli-linux-x64-musl@2.0.6':
- resolution: {integrity: sha512-mKHE/e954hR/hSnAcJSjkf4xGqZc/53Kh39HVW1EgO5iFi0JutTN07TSjEMg616julRtfSNJi0KNyxvc30Y4rQ==}
- engines: {node: '>=14.21.3'}
- cpu: [x64]
- os: [linux]
-
- '@biomejs/cli-linux-x64@2.0.6':
- resolution: {integrity: sha512-geM1MkHTV1Kh2Cs/Xzot9BOF3WBacihw6bkEmxkz4nSga8B9/hWy5BDiOG3gHDGIBa8WxT0nzsJs2f/hPqQIQw==}
- engines: {node: '>=14.21.3'}
- cpu: [x64]
- os: [linux]
-
- '@biomejs/cli-win32-arm64@2.0.6':
- resolution: {integrity: sha512-290V4oSFoKaprKE1zkYVsDfAdn0An5DowZ+GIABgjoq1ndhvNxkJcpxPsiYtT7slbVe3xmlT0ncdfOsN7KruzA==}
- engines: {node: '>=14.21.3'}
- cpu: [arm64]
- os: [win32]
-
- '@biomejs/cli-win32-x64@2.0.6':
- resolution: {integrity: sha512-bfM1Bce0d69Ao7pjTjUS+AWSZ02+5UHdiAP85Th8e9yV5xzw6JrHXbL5YWlcEKQ84FIZMdDc7ncuti1wd2sdbw==}
- engines: {node: '>=14.21.3'}
- cpu: [x64]
- os: [win32]
-
- '@esbuild/aix-ppc64@0.25.2':
- resolution: {integrity: sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==}
- engines: {node: '>=18'}
- cpu: [ppc64]
- os: [aix]
+ '@emnapi/wasi-threads@1.2.1':
+ resolution: {integrity: sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==}
'@esbuild/aix-ppc64@0.27.1':
resolution: {integrity: sha512-HHB50pdsBX6k47S4u5g/CaLjqS3qwaOVE5ILsq64jyzgMhLuCuZ8rGzM9yhsAjfjkbgUPMzZEPa7DAp7yz6vuA==}
@@ -104,240 +69,120 @@ packages:
cpu: [ppc64]
os: [aix]
- '@esbuild/android-arm64@0.25.2':
- resolution: {integrity: sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==}
- engines: {node: '>=18'}
- cpu: [arm64]
- os: [android]
-
'@esbuild/android-arm64@0.27.1':
resolution: {integrity: sha512-45fuKmAJpxnQWixOGCrS+ro4Uvb4Re9+UTieUY2f8AEc+t7d4AaZ6eUJ3Hva7dtrxAAWHtlEFsXFMAgNnGU9uQ==}
engines: {node: '>=18'}
cpu: [arm64]
os: [android]
- '@esbuild/android-arm@0.25.2':
- resolution: {integrity: sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA==}
- engines: {node: '>=18'}
- cpu: [arm]
- os: [android]
-
'@esbuild/android-arm@0.27.1':
resolution: {integrity: sha512-kFqa6/UcaTbGm/NncN9kzVOODjhZW8e+FRdSeypWe6j33gzclHtwlANs26JrupOntlcWmB0u8+8HZo8s7thHvg==}
engines: {node: '>=18'}
cpu: [arm]
os: [android]
- '@esbuild/android-x64@0.25.2':
- resolution: {integrity: sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg==}
- engines: {node: '>=18'}
- cpu: [x64]
- os: [android]
-
'@esbuild/android-x64@0.27.1':
resolution: {integrity: sha512-LBEpOz0BsgMEeHgenf5aqmn/lLNTFXVfoWMUox8CtWWYK9X4jmQzWjoGoNb8lmAYml/tQ/Ysvm8q7szu7BoxRQ==}
engines: {node: '>=18'}
cpu: [x64]
os: [android]
- '@esbuild/darwin-arm64@0.25.2':
- resolution: {integrity: sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==}
- engines: {node: '>=18'}
- cpu: [arm64]
- os: [darwin]
-
'@esbuild/darwin-arm64@0.27.1':
resolution: {integrity: sha512-veg7fL8eMSCVKL7IW4pxb54QERtedFDfY/ASrumK/SbFsXnRazxY4YykN/THYqFnFwJ0aVjiUrVG2PwcdAEqQQ==}
engines: {node: '>=18'}
cpu: [arm64]
os: [darwin]
- '@esbuild/darwin-x64@0.25.2':
- resolution: {integrity: sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA==}
- engines: {node: '>=18'}
- cpu: [x64]
- os: [darwin]
-
'@esbuild/darwin-x64@0.27.1':
resolution: {integrity: sha512-+3ELd+nTzhfWb07Vol7EZ+5PTbJ/u74nC6iv4/lwIU99Ip5uuY6QoIf0Hn4m2HoV0qcnRivN3KSqc+FyCHjoVQ==}
engines: {node: '>=18'}
cpu: [x64]
os: [darwin]
- '@esbuild/freebsd-arm64@0.25.2':
- resolution: {integrity: sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==}
- engines: {node: '>=18'}
- cpu: [arm64]
- os: [freebsd]
-
'@esbuild/freebsd-arm64@0.27.1':
resolution: {integrity: sha512-/8Rfgns4XD9XOSXlzUDepG8PX+AVWHliYlUkFI3K3GB6tqbdjYqdhcb4BKRd7C0BhZSoaCxhv8kTcBrcZWP+xg==}
engines: {node: '>=18'}
cpu: [arm64]
os: [freebsd]
- '@esbuild/freebsd-x64@0.25.2':
- resolution: {integrity: sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ==}
- engines: {node: '>=18'}
- cpu: [x64]
- os: [freebsd]
-
'@esbuild/freebsd-x64@0.27.1':
resolution: {integrity: sha512-GITpD8dK9C+r+5yRT/UKVT36h/DQLOHdwGVwwoHidlnA168oD3uxA878XloXebK4Ul3gDBBIvEdL7go9gCUFzQ==}
engines: {node: '>=18'}
cpu: [x64]
os: [freebsd]
- '@esbuild/linux-arm64@0.25.2':
- resolution: {integrity: sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==}
- engines: {node: '>=18'}
- cpu: [arm64]
- os: [linux]
-
'@esbuild/linux-arm64@0.27.1':
resolution: {integrity: sha512-W9//kCrh/6in9rWIBdKaMtuTTzNj6jSeG/haWBADqLLa9P8O5YSRDzgD5y9QBok4AYlzS6ARHifAb75V6G670Q==}
engines: {node: '>=18'}
cpu: [arm64]
os: [linux]
- '@esbuild/linux-arm@0.25.2':
- resolution: {integrity: sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g==}
- engines: {node: '>=18'}
- cpu: [arm]
- os: [linux]
-
'@esbuild/linux-arm@0.27.1':
resolution: {integrity: sha512-ieMID0JRZY/ZeCrsFQ3Y3NlHNCqIhTprJfDgSB3/lv5jJZ8FX3hqPyXWhe+gvS5ARMBJ242PM+VNz/ctNj//eA==}
engines: {node: '>=18'}
cpu: [arm]
os: [linux]
- '@esbuild/linux-ia32@0.25.2':
- resolution: {integrity: sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ==}
- engines: {node: '>=18'}
- cpu: [ia32]
- os: [linux]
-
'@esbuild/linux-ia32@0.27.1':
resolution: {integrity: sha512-VIUV4z8GD8rtSVMfAj1aXFahsi/+tcoXXNYmXgzISL+KB381vbSTNdeZHHHIYqFyXcoEhu9n5cT+05tRv13rlw==}
engines: {node: '>=18'}
cpu: [ia32]
os: [linux]
- '@esbuild/linux-loong64@0.25.2':
- resolution: {integrity: sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w==}
- engines: {node: '>=18'}
- cpu: [loong64]
- os: [linux]
-
'@esbuild/linux-loong64@0.27.1':
resolution: {integrity: sha512-l4rfiiJRN7sTNI//ff65zJ9z8U+k6zcCg0LALU5iEWzY+a1mVZ8iWC1k5EsNKThZ7XCQ6YWtsZ8EWYm7r1UEsg==}
engines: {node: '>=18'}
cpu: [loong64]
os: [linux]
- '@esbuild/linux-mips64el@0.25.2':
- resolution: {integrity: sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q==}
- engines: {node: '>=18'}
- cpu: [mips64el]
- os: [linux]
-
'@esbuild/linux-mips64el@0.27.1':
resolution: {integrity: sha512-U0bEuAOLvO/DWFdygTHWY8C067FXz+UbzKgxYhXC0fDieFa0kDIra1FAhsAARRJbvEyso8aAqvPdNxzWuStBnA==}
engines: {node: '>=18'}
cpu: [mips64el]
os: [linux]
- '@esbuild/linux-ppc64@0.25.2':
- resolution: {integrity: sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g==}
- engines: {node: '>=18'}
- cpu: [ppc64]
- os: [linux]
-
'@esbuild/linux-ppc64@0.27.1':
resolution: {integrity: sha512-NzdQ/Xwu6vPSf/GkdmRNsOfIeSGnh7muundsWItmBsVpMoNPVpM61qNzAVY3pZ1glzzAxLR40UyYM23eaDDbYQ==}
engines: {node: '>=18'}
cpu: [ppc64]
os: [linux]
- '@esbuild/linux-riscv64@0.25.2':
- resolution: {integrity: sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw==}
- engines: {node: '>=18'}
- cpu: [riscv64]
- os: [linux]
-
'@esbuild/linux-riscv64@0.27.1':
resolution: {integrity: sha512-7zlw8p3IApcsN7mFw0O1Z1PyEk6PlKMu18roImfl3iQHTnr/yAfYv6s4hXPidbDoI2Q0pW+5xeoM4eTCC0UdrQ==}
engines: {node: '>=18'}
cpu: [riscv64]
os: [linux]
- '@esbuild/linux-s390x@0.25.2':
- resolution: {integrity: sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q==}
- engines: {node: '>=18'}
- cpu: [s390x]
- os: [linux]
-
'@esbuild/linux-s390x@0.27.1':
resolution: {integrity: sha512-cGj5wli+G+nkVQdZo3+7FDKC25Uh4ZVwOAK6A06Hsvgr8WqBBuOy/1s+PUEd/6Je+vjfm6stX0kmib5b/O2Ykw==}
engines: {node: '>=18'}
cpu: [s390x]
os: [linux]
- '@esbuild/linux-x64@0.25.2':
- resolution: {integrity: sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg==}
- engines: {node: '>=18'}
- cpu: [x64]
- os: [linux]
-
'@esbuild/linux-x64@0.27.1':
resolution: {integrity: sha512-z3H/HYI9MM0HTv3hQZ81f+AKb+yEoCRlUby1F80vbQ5XdzEMyY/9iNlAmhqiBKw4MJXwfgsh7ERGEOhrM1niMA==}
engines: {node: '>=18'}
cpu: [x64]
os: [linux]
- '@esbuild/netbsd-arm64@0.25.2':
- resolution: {integrity: sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==}
- engines: {node: '>=18'}
- cpu: [arm64]
- os: [netbsd]
-
'@esbuild/netbsd-arm64@0.27.1':
resolution: {integrity: sha512-wzC24DxAvk8Em01YmVXyjl96Mr+ecTPyOuADAvjGg+fyBpGmxmcr2E5ttf7Im8D0sXZihpxzO1isus8MdjMCXQ==}
engines: {node: '>=18'}
cpu: [arm64]
os: [netbsd]
- '@esbuild/netbsd-x64@0.25.2':
- resolution: {integrity: sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg==}
- engines: {node: '>=18'}
- cpu: [x64]
- os: [netbsd]
-
'@esbuild/netbsd-x64@0.27.1':
resolution: {integrity: sha512-1YQ8ybGi2yIXswu6eNzJsrYIGFpnlzEWRl6iR5gMgmsrR0FcNoV1m9k9sc3PuP5rUBLshOZylc9nqSgymI+TYg==}
engines: {node: '>=18'}
cpu: [x64]
os: [netbsd]
- '@esbuild/openbsd-arm64@0.25.2':
- resolution: {integrity: sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==}
- engines: {node: '>=18'}
- cpu: [arm64]
- os: [openbsd]
-
'@esbuild/openbsd-arm64@0.27.1':
resolution: {integrity: sha512-5Z+DzLCrq5wmU7RDaMDe2DVXMRm2tTDvX2KU14JJVBN2CT/qov7XVix85QoJqHltpvAOZUAc3ndU56HSMWrv8g==}
engines: {node: '>=18'}
cpu: [arm64]
os: [openbsd]
- '@esbuild/openbsd-x64@0.25.2':
- resolution: {integrity: sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw==}
- engines: {node: '>=18'}
- cpu: [x64]
- os: [openbsd]
-
'@esbuild/openbsd-x64@0.27.1':
resolution: {integrity: sha512-Q73ENzIdPF5jap4wqLtsfh8YbYSZ8Q0wnxplOlZUOyZy7B4ZKW8DXGWgTCZmF8VWD7Tciwv5F4NsRf6vYlZtqg==}
engines: {node: '>=18'}
@@ -350,228 +195,561 @@ packages:
cpu: [arm64]
os: [openharmony]
- '@esbuild/sunos-x64@0.25.2':
- resolution: {integrity: sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==}
- engines: {node: '>=18'}
- cpu: [x64]
- os: [sunos]
-
'@esbuild/sunos-x64@0.27.1':
resolution: {integrity: sha512-IPUW+y4VIjuDVn+OMzHc5FV4GubIwPnsz6ubkvN8cuhEqH81NovB53IUlrlBkPMEPxvNnf79MGBoz8rZ2iW8HA==}
engines: {node: '>=18'}
cpu: [x64]
os: [sunos]
- '@esbuild/win32-arm64@0.25.2':
- resolution: {integrity: sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==}
- engines: {node: '>=18'}
- cpu: [arm64]
- os: [win32]
-
'@esbuild/win32-arm64@0.27.1':
resolution: {integrity: sha512-RIVRWiljWA6CdVu8zkWcRmGP7iRRIIwvhDKem8UMBjPql2TXM5PkDVvvrzMtj1V+WFPB4K7zkIGM7VzRtFkjdg==}
engines: {node: '>=18'}
cpu: [arm64]
os: [win32]
- '@esbuild/win32-ia32@0.25.2':
- resolution: {integrity: sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg==}
- engines: {node: '>=18'}
- cpu: [ia32]
- os: [win32]
-
'@esbuild/win32-ia32@0.27.1':
resolution: {integrity: sha512-2BR5M8CPbptC1AK5JbJT1fWrHLvejwZidKx3UMSF0ecHMa+smhi16drIrCEggkgviBwLYd5nwrFLSl5Kho96RQ==}
engines: {node: '>=18'}
cpu: [ia32]
os: [win32]
- '@esbuild/win32-x64@0.25.2':
- resolution: {integrity: sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA==}
- engines: {node: '>=18'}
- cpu: [x64]
- os: [win32]
-
'@esbuild/win32-x64@0.27.1':
resolution: {integrity: sha512-d5X6RMYv6taIymSk8JBP+nxv8DQAMY6A51GPgusqLdK9wBz5wWIXy1KjTck6HnjE9hqJzJRdk+1p/t5soSbCtw==}
engines: {node: '>=18'}
cpu: [x64]
os: [win32]
+ '@jridgewell/gen-mapping@0.3.13':
+ resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
+
+ '@jridgewell/remapping@2.3.5':
+ resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==}
+
+ '@jridgewell/resolve-uri@3.1.2':
+ resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
+ engines: {node: '>=6.0.0'}
+
'@jridgewell/sourcemap-codec@1.5.5':
resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
- '@pdf-lib/standard-fonts@1.0.0':
- resolution: {integrity: sha512-hU30BK9IUN/su0Mn9VdlVKsWBS6GyhVfqjwl1FjZN4TxP6cCw0jP2w7V3Hf5uX7M0AZJ16vey9yE0ny7Sa59ZA==}
+ '@jridgewell/trace-mapping@0.3.31':
+ resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
- '@pdf-lib/upng@1.0.1':
- resolution: {integrity: sha512-dQK2FUMQtowVP00mtIksrlZhdFXQZPC+taih1q4CvPZ5vqdxR/LKBaFg0oAfzd1GlHZXXSPdQfzQnt+ViGvEIQ==}
+ '@napi-rs/wasm-runtime@1.1.3':
+ resolution: {integrity: sha512-xK9sGVbJWYb08+mTJt3/YV24WxvxpXcXtP6B172paPZ+Ts69Re9dAr7lKwJoeIx8OoeuimEiRZ7umkiUVClmmQ==}
+ peerDependencies:
+ '@emnapi/core': ^1.7.1
+ '@emnapi/runtime': ^1.7.1
- '@rollup/rollup-android-arm-eabi@4.40.0':
- resolution: {integrity: sha512-+Fbls/diZ0RDerhE8kyC6hjADCXA1K4yVNlH0EYfd2XjyH0UGgzaQ8MlT0pCXAThfxv3QUAczHaL+qSv1E4/Cg==}
+ '@oxc-project/types@0.124.0':
+ resolution: {integrity: sha512-VBFWMTBvHxS11Z5Lvlr3IWgrwhMTXV+Md+EQF0Xf60+wAdsGFTBx7X7K/hP4pi8N7dcm1RvcHwDxZ16Qx8keUg==}
+
+ '@oxfmt/binding-android-arm-eabi@0.44.0':
+ resolution: {integrity: sha512-5UvghMd9SA/yvKTWCAxMAPXS1d2i054UeOf4iFjZjfayTwCINcC3oaSXjtbZfCaEpxgJod7XiOjTtby5yEv/BQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [android]
- '@rollup/rollup-android-arm64@4.40.0':
- resolution: {integrity: sha512-PPA6aEEsTPRz+/4xxAmaoWDqh67N7wFbgFUJGMnanCFs0TV99M0M8QhhaSCks+n6EbQoFvLQgYOGXxlMGQe/6w==}
+ '@oxfmt/binding-android-arm64@0.44.0':
+ resolution: {integrity: sha512-IVudM1BWfvrYO++Khtzr8q9n5Rxu7msUvoFMqzGJVdX7HfUXUDHwaH2zHZNB58svx2J56pmCUzophyaPFkcG/A==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [android]
- '@rollup/rollup-darwin-arm64@4.40.0':
- resolution: {integrity: sha512-GwYOcOakYHdfnjjKwqpTGgn5a6cUX7+Ra2HeNj/GdXvO2VJOOXCiYYlRFU4CubFM67EhbmzLOmACKEfvp3J1kQ==}
+ '@oxfmt/binding-darwin-arm64@0.44.0':
+ resolution: {integrity: sha512-eWCLAIKAHfx88EqEP1Ga2yz7qVcqDU5lemn4xck+07bH182hDdprOHjbogyk0In1Djys3T0/pO2JepFnRJ41Mg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [darwin]
- '@rollup/rollup-darwin-x64@4.40.0':
- resolution: {integrity: sha512-CoLEGJ+2eheqD9KBSxmma6ld01czS52Iw0e2qMZNpPDlf7Z9mj8xmMemxEucinev4LgHalDPczMyxzbq+Q+EtA==}
+ '@oxfmt/binding-darwin-x64@0.44.0':
+ resolution: {integrity: sha512-eHTBznHLM49++dwz07MblQ2cOXyIgeedmE3Wgy4ptUESj38/qYZyRi1MPwC9olQJWssMeY6WI3UZ7YmU5ggvyQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [darwin]
- '@rollup/rollup-freebsd-arm64@4.40.0':
- resolution: {integrity: sha512-r7yGiS4HN/kibvESzmrOB/PxKMhPTlz+FcGvoUIKYoTyGd5toHp48g1uZy1o1xQvybwwpqpe010JrcGG2s5nkg==}
- cpu: [arm64]
- os: [freebsd]
-
- '@rollup/rollup-freebsd-x64@4.40.0':
- resolution: {integrity: sha512-mVDxzlf0oLzV3oZOr0SMJ0lSDd3xC4CmnWJ8Val8isp9jRGl5Dq//LLDSPFrasS7pSm6m5xAcKaw3sHXhBjoRw==}
+ '@oxfmt/binding-freebsd-x64@0.44.0':
+ resolution: {integrity: sha512-jLMmbj0u0Ft43QpkUVr/0v1ZfQCGWAvU+WznEHcN3wZC/q6ox7XeSJtk9P36CCpiDSUf3sGnzbIuG1KdEMEDJQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [freebsd]
- '@rollup/rollup-linux-arm-gnueabihf@4.40.0':
- resolution: {integrity: sha512-y/qUMOpJxBMy8xCXD++jeu8t7kzjlOCkoxxajL58G62PJGBZVl/Gwpm7JK9+YvlB701rcQTzjUZ1JgUoPTnoQA==}
+ '@oxfmt/binding-linux-arm-gnueabihf@0.44.0':
+ resolution: {integrity: sha512-n+A/u/ByK1qV8FVGOwyaSpw5NPNl0qlZfgTBqHeGIqr8Qzq1tyWZ4lAaxPoe5mZqE3w88vn3+jZtMxriHPE7tg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
- '@rollup/rollup-linux-arm-musleabihf@4.40.0':
- resolution: {integrity: sha512-GoCsPibtVdJFPv/BOIvBKO/XmwZLwaNWdyD8TKlXuqp0veo2sHE+A/vpMQ5iSArRUz/uaoj4h5S6Pn0+PdhRjg==}
+ '@oxfmt/binding-linux-arm-musleabihf@0.44.0':
+ resolution: {integrity: sha512-5eax+FkxyCqAi3Rw0mrZFr7+KTt/XweFsbALR+B5ljWBLBl8nHe4ADrUnb1gLEfQCJLl+Ca5FIVD4xEt95AwIw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
- '@rollup/rollup-linux-arm64-gnu@4.40.0':
- resolution: {integrity: sha512-L5ZLphTjjAD9leJzSLI7rr8fNqJMlGDKlazW2tX4IUF9P7R5TMQPElpH82Q7eNIDQnQlAyiNVfRPfP2vM5Avvg==}
+ '@oxfmt/binding-linux-arm64-gnu@0.44.0':
+ resolution: {integrity: sha512-58l8JaHxSGOmOMOG2CIrNsnkRJAj0YcHQCmvNACniOa/vd1iRHhlPajczegzS5jwMENlqgreyiTR9iNlke8qCw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
+ libc: [glibc]
- '@rollup/rollup-linux-arm64-musl@4.40.0':
- resolution: {integrity: sha512-ATZvCRGCDtv1Y4gpDIXsS+wfFeFuLwVxyUBSLawjgXK2tRE6fnsQEkE4csQQYWlBlsFztRzCnBvWVfcae/1qxQ==}
+ '@oxfmt/binding-linux-arm64-musl@0.44.0':
+ resolution: {integrity: sha512-AlObQIXyVRZ96LbtVljtFq0JqH5B92NU+BQeDFrXWBUWlCKAM0wF5GLfIhCLT5kQ3Sl+U0YjRJ7Alqj5hGQaCg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
+ libc: [musl]
- '@rollup/rollup-linux-loongarch64-gnu@4.40.0':
- resolution: {integrity: sha512-wG9e2XtIhd++QugU5MD9i7OnpaVb08ji3P1y/hNbxrQ3sYEelKJOq1UJ5dXczeo6Hj2rfDEL5GdtkMSVLa/AOg==}
- cpu: [loong64]
+ '@oxfmt/binding-linux-ppc64-gnu@0.44.0':
+ resolution: {integrity: sha512-YcFE8/q/BbrCiIiM5piwbkA6GwJc5QqhMQp2yDrqQ2fuVkZ7CInb1aIijZ/k8EXc72qXMSwKpVlBv1w/MsGO/A==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [ppc64]
+ os: [linux]
+ libc: [glibc]
+
+ '@oxfmt/binding-linux-riscv64-gnu@0.44.0':
+ resolution: {integrity: sha512-eOdzs6RqkRzuqNHUX5C8ISN5xfGh4xDww8OEd9YAmc3OWN8oAe5bmlIqQ+rrHLpv58/0BuU48bxkhnIGjA/ATQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [riscv64]
+ os: [linux]
+ libc: [glibc]
+
+ '@oxfmt/binding-linux-riscv64-musl@0.44.0':
+ resolution: {integrity: sha512-YBgNTxntD/QvlFUfgvh8bEdwOhXiquX8gaofZJAwYa/Xp1S1DQrFVZEeck7GFktr24DztsSp8N8WtWCBwxs0Hw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [riscv64]
+ os: [linux]
+ libc: [musl]
+
+ '@oxfmt/binding-linux-s390x-gnu@0.44.0':
+ resolution: {integrity: sha512-GLIh1R6WHWshl/i4QQDNgj0WtT25aRO4HNUWEoitxiywyRdhTFmFEYT2rXlcl9U6/26vhmOqG5cRlMLG3ocaIA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [s390x]
+ os: [linux]
+ libc: [glibc]
+
+ '@oxfmt/binding-linux-x64-gnu@0.44.0':
+ resolution: {integrity: sha512-gZOpgTlOsLcLfAF9qgpTr7FIIFSKnQN3hDf/0JvQ4CIwMY7h+eilNjxq/CorqvYcEOu+LRt1W4ZS7KccEHLOdA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [linux]
+ libc: [glibc]
+
+ '@oxfmt/binding-linux-x64-musl@0.44.0':
+ resolution: {integrity: sha512-1CyS9JTB+pCUFYFI6pkQGGZaT/AY5gnhHVrQQLhFba6idP9AzVYm1xbdWfywoldTYvjxQJV6x4SuduCIfP3W+A==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [linux]
+ libc: [musl]
+
+ '@oxfmt/binding-openharmony-arm64@0.44.0':
+ resolution: {integrity: sha512-bmEv70Ak6jLr1xotCbF5TxIKjsmQaiX+jFRtnGtfA03tJPf6VG3cKh96S21boAt3JZc+Vjx8PYcDuLj39vM2Pw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [openharmony]
+
+ '@oxfmt/binding-win32-arm64-msvc@0.44.0':
+ resolution: {integrity: sha512-yWzB+oCpSnP/dmw85eFLAT5o35Ve5pkGS2uF/UCISpIwDqf1xa7OpmtomiqY/Vzg8VyvMbuf6vroF2khF/+1Vg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [win32]
+
+ '@oxfmt/binding-win32-ia32-msvc@0.44.0':
+ resolution: {integrity: sha512-TcWpo18xEIE3AmIG2kpr3kz5IEhQgnx0lazl2+8L+3eTopOAUevQcmlr4nhguImNWz0OMeOZrYZOhJNCf16nlQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [ia32]
+ os: [win32]
+
+ '@oxfmt/binding-win32-x64-msvc@0.44.0':
+ resolution: {integrity: sha512-oj8aLkPJZppIM4CMQNsyir9ybM1Xw/CfGPTSsTnzpVGyljgfbdP0EVUlURiGM0BDrmw5psQ6ArmGCcUY/yABaQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [win32]
+
+ '@oxlint/binding-android-arm-eabi@1.59.0':
+ resolution: {integrity: sha512-etYDw/UaEv936AQUd/CRMBVd+e+XuuU6wC+VzOv1STvsTyZenLChepLWqLtnyTTp4YMlM22ypzogDDwqYxv5cg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm]
+ os: [android]
+
+ '@oxlint/binding-android-arm64@1.59.0':
+ resolution: {integrity: sha512-TgLc7XVLKH2a4h8j3vn1MDjfK33i9MY60f/bKhRGWyVzbk5LCZ4X01VZG7iHrMmi5vYbAp8//Ponigx03CLsdw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [android]
+
+ '@oxlint/binding-darwin-arm64@1.59.0':
+ resolution: {integrity: sha512-DXyFPf5ZKldMLloRHx/B9fsxsiTQomaw7cmEW3YIJko2HgCh+GUhp9gGYwHrqlLJPsEe3dYj9JebjX92D3j3AA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@oxlint/binding-darwin-x64@1.59.0':
+ resolution: {integrity: sha512-LgvrsdgVLX1qWqIEmNsSmMXJhpAWdtUQ0M+oR0CySwi+9IHWyOGuIL8w8+u/kbZNMyZr4WUyYB5i0+D+AKgkLg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [darwin]
+
+ '@oxlint/binding-freebsd-x64@1.59.0':
+ resolution: {integrity: sha512-bOJhqX/ny4hrFuTPlyk8foSRx/vLRpxJh0jOOKN2NWW6FScXHPAA5rQbrwdQPcgGB5V8Ua51RS03fke8ssBcug==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@oxlint/binding-linux-arm-gnueabihf@1.59.0':
+ resolution: {integrity: sha512-vVUXxYMF9trXCsz4m9H6U0IjehosVHxBzVgJUxly1uz4W1PdDyicaBnpC0KRXsHYretLVe+uS9pJy8iM57Kujw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm]
os: [linux]
- '@rollup/rollup-linux-powerpc64le-gnu@4.40.0':
- resolution: {integrity: sha512-vgXfWmj0f3jAUvC7TZSU/m/cOE558ILWDzS7jBhiCAFpY2WEBn5jqgbqvmzlMjtp8KlLcBlXVD2mkTSEQE6Ixw==}
+ '@oxlint/binding-linux-arm-musleabihf@1.59.0':
+ resolution: {integrity: sha512-TULQW8YBPGRWg5yZpFPL54HLOnJ3/HiX6VenDPi6YfxB/jlItwSMFh3/hCeSNbh+DAMaE1Py0j5MOaivHkI/9Q==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm]
+ os: [linux]
+
+ '@oxlint/binding-linux-arm64-gnu@1.59.0':
+ resolution: {integrity: sha512-Gt54Y4eqSgYJ90xipm24xeyaPV854706o/kiT8oZvUt3VDY7qqxdqyGqchMaujd87ib+/MXvnl9WkK8Cc1BExg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [linux]
+ libc: [glibc]
+
+ '@oxlint/binding-linux-arm64-musl@1.59.0':
+ resolution: {integrity: sha512-3CtsKp7NFB3OfqQzbuAecrY7GIZeiv7AD+xutU4tefVQzlfmTI7/ygWLrvkzsDEjTlMq41rYHxgsn6Yh8tybmA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [linux]
+ libc: [musl]
+
+ '@oxlint/binding-linux-ppc64-gnu@1.59.0':
+ resolution: {integrity: sha512-K0diOpT3ncDmOfl9I1HuvpEsAuTxkts0VYwIv/w6Xiy9CdwyPBVX88Ga9l8VlGgMrwBMnSY4xIvVlVY/fkQk7Q==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [ppc64]
os: [linux]
+ libc: [glibc]
- '@rollup/rollup-linux-riscv64-gnu@4.40.0':
- resolution: {integrity: sha512-uJkYTugqtPZBS3Z136arevt/FsKTF/J9dEMTX/cwR7lsAW4bShzI2R0pJVw+hcBTWF4dxVckYh72Hk3/hWNKvA==}
+ '@oxlint/binding-linux-riscv64-gnu@1.59.0':
+ resolution: {integrity: sha512-xAU7+QDU6kTJJ7mJLOGgo7oOjtAtkKyFZ0Yjdb5cEo3DiCCPFLvyr08rWiQh6evZ7RiUTf+o65NY/bqttzJiQQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [riscv64]
os: [linux]
+ libc: [glibc]
- '@rollup/rollup-linux-riscv64-musl@4.40.0':
- resolution: {integrity: sha512-rKmSj6EXQRnhSkE22+WvrqOqRtk733x3p5sWpZilhmjnkHkpeCgWsFFo0dGnUGeA+OZjRl3+VYq+HyCOEuwcxQ==}
+ '@oxlint/binding-linux-riscv64-musl@1.59.0':
+ resolution: {integrity: sha512-KUmZmKlTTyauOnvUNVxK7G40sSSx0+w5l1UhaGsC6KPpOYHenx2oqJTnabmpLJicok7IC+3Y6fXAUOMyexaeJQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [riscv64]
os: [linux]
+ libc: [musl]
- '@rollup/rollup-linux-s390x-gnu@4.40.0':
- resolution: {integrity: sha512-SpnYlAfKPOoVsQqmTFJ0usx0z84bzGOS9anAC0AZ3rdSo3snecihbhFTlJZ8XMwzqAcodjFU4+/SM311dqE5Sw==}
+ '@oxlint/binding-linux-s390x-gnu@1.59.0':
+ resolution: {integrity: sha512-4usRxC8gS0PGdkHnRmwJt/4zrQNZyk6vL0trCxwZSsAKM+OxhB8nKiR+mhjdBbl8lbMh2gc3bZpNN/ik8c4c2A==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [s390x]
os: [linux]
+ libc: [glibc]
- '@rollup/rollup-linux-x64-gnu@4.40.0':
- resolution: {integrity: sha512-RcDGMtqF9EFN8i2RYN2W+64CdHruJ5rPqrlYw+cgM3uOVPSsnAQps7cpjXe9be/yDp8UC7VLoCoKC8J3Kn2FkQ==}
+ '@oxlint/binding-linux-x64-gnu@1.59.0':
+ resolution: {integrity: sha512-s/rNE2gDmbwAOOP493xk2X7M8LZfI1LJFSSW1+yanz3vuQCFPiHkx4GY+O1HuLUDtkzGlhtMrIcxxzyYLv308w==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
+ libc: [glibc]
- '@rollup/rollup-linux-x64-musl@4.40.0':
- resolution: {integrity: sha512-HZvjpiUmSNx5zFgwtQAV1GaGazT2RWvqeDi0hV+AtC8unqqDSsaFjPxfsO6qPtKRRg25SisACWnJ37Yio8ttaw==}
+ '@oxlint/binding-linux-x64-musl@1.59.0':
+ resolution: {integrity: sha512-+yYj1udJa2UvvIUmEm0IcKgc0UlPMgz0nsSTvkPL2y6n0uU5LgIHSwVu4AHhrve6j9BpVSoRksnz8c9QcvITJA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
+ libc: [musl]
+
+ '@oxlint/binding-openharmony-arm64@1.59.0':
+ resolution: {integrity: sha512-bUplUb48LYsB3hHlQXP2ZMOenpieWoOyppLAnnAhuPag3MGPnt+7caxE3w/Vl9wpQsTA3gzLntQi9rxWrs7Xqg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [openharmony]
- '@rollup/rollup-win32-arm64-msvc@4.40.0':
- resolution: {integrity: sha512-UtZQQI5k/b8d7d3i9AZmA/t+Q4tk3hOC0tMOMSq2GlMYOfxbesxG4mJSeDp0EHs30N9bsfwUvs3zF4v/RzOeTQ==}
+ '@oxlint/binding-win32-arm64-msvc@1.59.0':
+ resolution: {integrity: sha512-/HLsLuz42rWl7h7ePdmMTpHm2HIDmPtcEMYgm5BBEHiEiuNOrzMaUpd2z7UnNni5LGN9obJy2YoAYBLXQwazrA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [win32]
- '@rollup/rollup-win32-ia32-msvc@4.40.0':
- resolution: {integrity: sha512-+m03kvI2f5syIqHXCZLPVYplP8pQch9JHyXKZ3AGMKlg8dCyr2PKHjwRLiW53LTrN/Nc3EqHOKxUxzoSPdKddA==}
+ '@oxlint/binding-win32-ia32-msvc@1.59.0':
+ resolution: {integrity: sha512-rUPy+JnanpPwV/aJCPnxAD1fW50+XPI0VkWr7f0vEbqcdsS8NpB24Rw6RsS7SdpFv8Dw+8ugCwao5nCFbqOUSg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [ia32]
os: [win32]
- '@rollup/rollup-win32-x64-msvc@4.40.0':
- resolution: {integrity: sha512-lpPE1cLfP5oPzVjKMx10pgBmKELQnFJXHgvtHCtuJWOv8MxqdEIMNtgHgBFf7Ea2/7EuVwa9fodWUfXAlXZLZQ==}
+ '@oxlint/binding-win32-x64-msvc@1.59.0':
+ resolution: {integrity: sha512-xkE7puteDS/vUyRngLXW0t8WgdWoS/tfxXjhP/P7SMqPDx+hs44SpssO3h3qmTqECYEuXBUPzcAw5257Ka+ofA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [win32]
+ '@pdf-lib/standard-fonts@1.0.0':
+ resolution: {integrity: sha512-hU30BK9IUN/su0Mn9VdlVKsWBS6GyhVfqjwl1FjZN4TxP6cCw0jP2w7V3Hf5uX7M0AZJ16vey9yE0ny7Sa59ZA==}
+
+ '@pdf-lib/upng@1.0.1':
+ resolution: {integrity: sha512-dQK2FUMQtowVP00mtIksrlZhdFXQZPC+taih1q4CvPZ5vqdxR/LKBaFg0oAfzd1GlHZXXSPdQfzQnt+ViGvEIQ==}
+
+ '@polka/url@1.0.0-next.29':
+ resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==}
+
+ '@rolldown/binding-android-arm64@1.0.0-rc.15':
+ resolution: {integrity: sha512-YYe6aWruPZDtHNpwu7+qAHEMbQ/yRl6atqb/AhznLTnD3UY99Q1jE7ihLSahNWkF4EqRPVC4SiR4O0UkLK02tA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [android]
+
+ '@rolldown/binding-darwin-arm64@1.0.0-rc.15':
+ resolution: {integrity: sha512-oArR/ig8wNTPYsXL+Mzhs0oxhxfuHRfG7Ikw7jXsw8mYOtk71W0OkF2VEVh699pdmzjPQsTjlD1JIOoHkLP1Fg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@rolldown/binding-darwin-x64@1.0.0-rc.15':
+ resolution: {integrity: sha512-YzeVqOqjPYvUbJSWJ4EDL8ahbmsIXQpgL3JVipmN+MX0XnXMeWomLN3Fb+nwCmP/jfyqte5I3XRSm7OfQrbyxw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [darwin]
+
+ '@rolldown/binding-freebsd-x64@1.0.0-rc.15':
+ resolution: {integrity: sha512-9Erhx956jeQ0nNTyif1+QWAXDRD38ZNjr//bSHrt6wDwB+QkAfl2q6Mn1k6OBPerznjRmbM10lgRb1Pli4xZPw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.15':
+ resolution: {integrity: sha512-cVwk0w8QbZJGTnP/AHQBs5yNwmpgGYStL88t4UIaqcvYJWBfS0s3oqVLZPwsPU6M0zlW4GqjP0Zq5MnAGwFeGA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm]
+ os: [linux]
+
+ '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.15':
+ resolution: {integrity: sha512-eBZ/u8iAK9SoHGanqe/jrPnY0JvBN6iXbVOsbO38mbz+ZJsaobExAm1Iu+rxa4S1l2FjG0qEZn4Rc6X8n+9M+w==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rolldown/binding-linux-arm64-musl@1.0.0-rc.15':
+ resolution: {integrity: sha512-ZvRYMGrAklV9PEkgt4LQM6MjQX2P58HPAuecwYObY2DhS2t35R0I810bKi0wmaYORt6m/2Sm+Z+nFgb0WhXNcQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [linux]
+ libc: [musl]
+
+ '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.15':
+ resolution: {integrity: sha512-VDpgGBzgfg5hLg+uBpCLoFG5kVvEyafmfxGUV0UHLcL5irxAK7PKNeC2MwClgk6ZAiNhmo9FLhRYgvMmedLtnQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [ppc64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.15':
+ resolution: {integrity: sha512-y1uXY3qQWCzcPgRJATPSOUP4tCemh4uBdY7e3EZbVwCJTY3gLJWnQABgeUetvED+bt1FQ01OeZwvhLS2bpNrAQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [s390x]
+ os: [linux]
+ libc: [glibc]
+
+ '@rolldown/binding-linux-x64-gnu@1.0.0-rc.15':
+ resolution: {integrity: sha512-023bTPBod7J3Y/4fzAN6QtpkSABR0rigtrwaP+qSEabUh5zf6ELr9Nc7GujaROuPY3uwdSIXWrvhn1KxOvurWA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rolldown/binding-linux-x64-musl@1.0.0-rc.15':
+ resolution: {integrity: sha512-witB2O0/hU4CgfOOKUoeFgQ4GktPi1eEbAhaLAIpgD6+ZnhcPkUtPsoKKHRzmOoWPZue46IThdSgdo4XneOLYw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [linux]
+ libc: [musl]
+
+ '@rolldown/binding-openharmony-arm64@1.0.0-rc.15':
+ resolution: {integrity: sha512-UCL68NJ0Ud5zRipXZE9dF5PmirzJE4E4BCIOOssEnM7wLDsxjc6Qb0sGDxTNRTP53I6MZpygyCpY8Aa8sPfKPg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [openharmony]
+
+ '@rolldown/binding-wasm32-wasi@1.0.0-rc.15':
+ resolution: {integrity: sha512-ApLruZq/ig+nhaE7OJm4lDjayUnOHVUa77zGeqnqZ9pn0ovdVbbNPerVibLXDmWeUZXjIYIT8V3xkT58Rm9u5Q==}
+ engines: {node: '>=14.0.0'}
+ cpu: [wasm32]
+
+ '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.15':
+ resolution: {integrity: sha512-KmoUoU7HnN+Si5YWJigfTws1jz1bKBYDQKdbLspz0UaqjjFkddHsqorgiW1mxcAj88lYUE6NC/zJNwT+SloqtA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [win32]
+
+ '@rolldown/binding-win32-x64-msvc@1.0.0-rc.15':
+ resolution: {integrity: sha512-3P2A8L+x75qavWLe/Dll3EYBJLQmtkJN8rfh+U/eR3MqMgL/h98PhYI+JFfXuDPgPeCB7iZAKiqii5vqOvnA0g==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [win32]
+
+ '@rolldown/pluginutils@1.0.0-rc.15':
+ resolution: {integrity: sha512-UromN0peaE53IaBRe9W7CjrZgXl90fqGpK+mIZbA3qSTeYqg3pqpROBdIPvOG3F5ereDHNwoHBI2e50n1BDr1g==}
+
'@standard-schema/spec@1.0.0':
resolution: {integrity: sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==}
+ '@standard-schema/spec@1.1.0':
+ resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==}
+
+ '@sveltejs/acorn-typescript@1.0.9':
+ resolution: {integrity: sha512-lVJX6qEgs/4DOcRTpo56tmKzVPtoWAaVbL4hfO7t7NVwl9AAXzQR6cihesW1BmNMPl+bK6dreu2sOKBP2Q9CIA==}
+ peerDependencies:
+ acorn: ^8.9.0
+
+ '@sveltejs/adapter-static@3.0.10':
+ resolution: {integrity: sha512-7D9lYFWJmB7zxZyTE/qxjksvMqzMuYrrsyh1f4AlZqeZeACPRySjbC3aFiY55wb1tWUaKOQG9PVbm74JcN2Iew==}
+ peerDependencies:
+ '@sveltejs/kit': ^2.0.0
+
+ '@sveltejs/kit@2.57.1':
+ resolution: {integrity: sha512-VRdSbB96cI1EnRh09CqmnQqP/YJvET5buj8S6k7CxaJqBJD4bw4fRKDjcarAj/eX9k2eHifQfDH8NtOh+ZxxPw==}
+ engines: {node: '>=18.13'}
+ hasBin: true
+ peerDependencies:
+ '@opentelemetry/api': ^1.0.0
+ '@sveltejs/vite-plugin-svelte': ^3.0.0 || ^4.0.0-next.1 || ^5.0.0 || ^6.0.0-next.0 || ^7.0.0
+ svelte: ^4.0.0 || ^5.0.0-next.0
+ typescript: ^5.3.3 || ^6.0.0
+ vite: ^5.0.3 || ^6.0.0 || ^7.0.0-beta.0 || ^8.0.0
+ peerDependenciesMeta:
+ '@opentelemetry/api':
+ optional: true
+ typescript:
+ optional: true
+
+ '@sveltejs/vite-plugin-svelte@7.0.0':
+ resolution: {integrity: sha512-ILXmxC7HAsnkK2eslgPetrqqW1BKSL7LktsFgqzNj83MaivMGZzluWq32m25j2mDOjmSKX7GGWahePhuEs7P/g==}
+ engines: {node: ^20.19 || ^22.12 || >=24}
+ peerDependencies:
+ svelte: ^5.46.4
+ vite: ^8.0.0-beta.7 || ^8.0.0
+
+ '@tybys/wasm-util@0.10.1':
+ resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==}
+
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
+ '@types/cookie@0.6.0':
+ resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==}
+
'@types/deep-eql@4.0.2':
resolution: {integrity: sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==}
'@types/estree@1.0.7':
resolution: {integrity: sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==}
- '@types/node@24.0.10':
- resolution: {integrity: sha512-ENHwaH+JIRTDIEEbDK6QSQntAYGtbvdDXnMXnZaZ6k13Du1dPMmprkEHIL7ok2Wl2aZevetwTAb5S+7yIF+enA==}
+ '@types/node@25.6.0':
+ resolution: {integrity: sha512-+qIYRKdNYJwY3vRCZMdJbPLJAtGjQBudzZzdzwQYkEPQd+PJGixUL5QfvCLDaULoLv+RhT3LDkwEfKaAkgSmNQ==}
+
+ '@types/trusted-types@2.0.7':
+ resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==}
- '@vitest/expect@4.0.15':
- resolution: {integrity: sha512-Gfyva9/GxPAWXIWjyGDli9O+waHDC0Q0jaLdFP1qPAUUfo1FEXPXUfUkp3eZA0sSq340vPycSyOlYUeM15Ft1w==}
+ '@vitest/expect@4.1.4':
+ resolution: {integrity: sha512-iPBpra+VDuXmBFI3FMKHSFXp3Gx5HfmSCE8X67Dn+bwephCnQCaB7qWK2ldHa+8ncN8hJU8VTMcxjPpyMkUjww==}
- '@vitest/mocker@4.0.15':
- resolution: {integrity: sha512-CZ28GLfOEIFkvCFngN8Sfx5h+Se0zN+h4B7yOsPVCcgtiO7t5jt9xQh2E1UkFep+eb9fjyMfuC5gBypwb07fvQ==}
+ '@vitest/mocker@4.1.4':
+ resolution: {integrity: sha512-R9HTZBhW6yCSGbGQnDnH3QHfJxokKN4KB+Yvk9Q1le7eQNYwiCyKxmLmurSpFy6BzJanSLuEUDrD+j97Q+ZLPg==}
peerDependencies:
msw: ^2.4.9
- vite: ^6.0.0 || ^7.0.0-0
+ vite: ^6.0.0 || ^7.0.0 || ^8.0.0
peerDependenciesMeta:
msw:
optional: true
vite:
optional: true
- '@vitest/pretty-format@4.0.15':
- resolution: {integrity: sha512-SWdqR8vEv83WtZcrfLNqlqeQXlQLh2iilO1Wk1gv4eiHKjEzvgHb2OVc3mIPyhZE6F+CtfYjNlDJwP5MN6Km7A==}
+ '@vitest/pretty-format@4.1.4':
+ resolution: {integrity: sha512-ddmDHU0gjEUyEVLxtZa7xamrpIefdEETu3nZjWtHeZX4QxqJ7tRxSteHVXJOcr8jhiLoGAhkK4WJ3WqBpjx42A==}
+
+ '@vitest/runner@4.1.4':
+ resolution: {integrity: sha512-xTp7VZ5aXP5ZJrn15UtJUWlx6qXLnGtF6jNxHepdPHpMfz/aVPx+htHtgcAL2mDXJgKhpoo2e9/hVJsIeFbytQ==}
- '@vitest/runner@4.0.15':
- resolution: {integrity: sha512-+A+yMY8dGixUhHmNdPUxOh0la6uVzun86vAbuMT3hIDxMrAOmn5ILBHm8ajrqHE0t8R9T1dGnde1A5DTnmi3qw==}
+ '@vitest/snapshot@4.1.4':
+ resolution: {integrity: sha512-MCjCFgaS8aZz+m5nTcEcgk/xhWv0rEH4Yl53PPlMXOZ1/Ka2VcZU6CJ+MgYCZbcJvzGhQRjVrGQNZqkGPttIKw==}
- '@vitest/snapshot@4.0.15':
- resolution: {integrity: sha512-A7Ob8EdFZJIBjLjeO0DZF4lqR6U7Ydi5/5LIZ0xcI+23lYlsYJAfGn8PrIWTYdZQRNnSRlzhg0zyGu37mVdy5g==}
+ '@vitest/spy@4.1.4':
+ resolution: {integrity: sha512-XxNdAsKW7C+FLydqFJLb5KhJtl3PGCMmYwFRfhvIgxJvLSXhhVI1zM8f1qD3Zg7RCjTSzDVyct6sghs9UEgBEQ==}
- '@vitest/spy@4.0.15':
- resolution: {integrity: sha512-+EIjOJmnY6mIfdXtE/bnozKEvTC4Uczg19yeZ2vtCz5Yyb0QQ31QWVQ8hswJ3Ysx/K2EqaNsVanjr//2+P3FHw==}
+ '@vitest/utils@4.1.4':
+ resolution: {integrity: sha512-13QMT+eysM5uVGa1rG4kegGYNp6cnQcsTc67ELFbhNLQO+vgsygtYJx2khvdt4gVQqSSpC/KT5FZZxUpP3Oatw==}
+
+ acorn@8.16.0:
+ resolution: {integrity: sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==}
+ engines: {node: '>=0.4.0'}
+ hasBin: true
- '@vitest/utils@4.0.15':
- resolution: {integrity: sha512-HXjPW2w5dxhTD0dLwtYHDnelK3j8sR8cWIaLxr22evTyY6q8pRCjZSmhRWVjBaOVXChQd6AwMzi9pucorXCPZA==}
+ aria-query@5.3.1:
+ resolution: {integrity: sha512-Z/ZeOgVl7bcSYZ/u/rh0fOpvEpq//LZmdbkXyc7syVzjPAhfOa9ebsdTSjEBDU4vs5nC98Kfduj1uFo0qyET3g==}
+ engines: {node: '>= 0.4'}
assertion-error@2.0.1:
resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}
engines: {node: '>=12'}
- chai@6.2.1:
- resolution: {integrity: sha512-p4Z49OGG5W/WBCPSS/dH3jQ73kD6tiMmUM+bckNK6Jr5JHMG3k9bg/BvKR8lKmtVBKmOiuVaV2ws8s9oSbwysg==}
+ axobject-query@4.1.0:
+ resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
+ engines: {node: '>= 0.4'}
+
+ chai@6.2.2:
+ resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==}
engines: {node: '>=18'}
- es-module-lexer@1.7.0:
- resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==}
+ chokidar@4.0.3:
+ resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==}
+ engines: {node: '>= 14.16.0'}
- esbuild@0.25.2:
- resolution: {integrity: sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==}
- engines: {node: '>=18'}
- hasBin: true
+ clsx@2.1.1:
+ resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==}
+ engines: {node: '>=6'}
+
+ convert-source-map@2.0.0:
+ resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
+
+ cookie@0.6.0:
+ resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==}
+ engines: {node: '>= 0.6'}
+
+ deepmerge@4.3.1:
+ resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
+ engines: {node: '>=0.10.0'}
+
+ detect-libc@2.1.2:
+ resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==}
+ engines: {node: '>=8'}
+
+ devalue@5.7.1:
+ resolution: {integrity: sha512-MUbZ586EgQqdRnC4yDrlod3BEdyvE4TapGYHMW2CiaW+KkkFmWEFqBUaLltEZCGi0iFXCEjRF0OjF0DV2QHjOA==}
+
+ es-module-lexer@2.0.0:
+ resolution: {integrity: sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw==}
esbuild@0.27.1:
resolution: {integrity: sha512-yY35KZckJJuVVPXpvjgxiCuVEJT67F6zDeVTv4rizyPrfGBUpZQsvmxnN+C371c2esD/hNMjj4tpBhuueLN7aA==}
engines: {node: '>=18'}
hasBin: true
+ esm-env@1.2.2:
+ resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==}
+
+ esrap@2.2.5:
+ resolution: {integrity: sha512-/yLB1538mag+dn0wsePTe8C0rDIjUOaJpMs2McodSzmM2msWcZsBSdRtg6HOBt0A/r82BN+Md3pgwSc/uWt2Ig==}
+ peerDependencies:
+ '@typescript-eslint/types': ^8.2.0
+ peerDependenciesMeta:
+ '@typescript-eslint/types':
+ optional: true
+
estree-walker@3.0.3:
resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
@@ -579,34 +757,118 @@ packages:
resolution: {integrity: sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==}
engines: {node: '>=12.0.0'}
- fdir@6.4.3:
- resolution: {integrity: sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==}
+ fdir@6.5.0:
+ resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
+ engines: {node: '>=12.0.0'}
peerDependencies:
picomatch: ^3 || ^4
peerDependenciesMeta:
picomatch:
optional: true
- fdir@6.5.0:
- resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
- engines: {node: '>=12.0.0'}
- peerDependencies:
- picomatch: ^3 || ^4
- peerDependenciesMeta:
- picomatch:
- optional: true
+ fsevents@2.3.3:
+ resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ os: [darwin]
+
+ get-tsconfig@4.13.0:
+ resolution: {integrity: sha512-1VKTZJCwBrvbd+Wn3AOgQP/2Av+TfTCOlE4AcRJE72W1ksZXbAx8PPBR9RzgTeSPzlPMHrbANMH3LbltH73wxQ==}
+
+ is-reference@3.0.3:
+ resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==}
+
+ kleur@4.1.5:
+ resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
+ engines: {node: '>=6'}
+
+ lightningcss-android-arm64@1.32.0:
+ resolution: {integrity: sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm64]
+ os: [android]
+
+ lightningcss-darwin-arm64@1.32.0:
+ resolution: {integrity: sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm64]
+ os: [darwin]
+
+ lightningcss-darwin-x64@1.32.0:
+ resolution: {integrity: sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [darwin]
+
+ lightningcss-freebsd-x64@1.32.0:
+ resolution: {integrity: sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [freebsd]
+
+ lightningcss-linux-arm-gnueabihf@1.32.0:
+ resolution: {integrity: sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm]
+ os: [linux]
+
+ lightningcss-linux-arm64-gnu@1.32.0:
+ resolution: {integrity: sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm64]
+ os: [linux]
+ libc: [glibc]
+
+ lightningcss-linux-arm64-musl@1.32.0:
+ resolution: {integrity: sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm64]
+ os: [linux]
+ libc: [musl]
+
+ lightningcss-linux-x64-gnu@1.32.0:
+ resolution: {integrity: sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [linux]
+ libc: [glibc]
+
+ lightningcss-linux-x64-musl@1.32.0:
+ resolution: {integrity: sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [linux]
+ libc: [musl]
+
+ lightningcss-win32-arm64-msvc@1.32.0:
+ resolution: {integrity: sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm64]
+ os: [win32]
- fsevents@2.3.3:
- resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
- engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
- os: [darwin]
+ lightningcss-win32-x64-msvc@1.32.0:
+ resolution: {integrity: sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [win32]
- get-tsconfig@4.13.0:
- resolution: {integrity: sha512-1VKTZJCwBrvbd+Wn3AOgQP/2Av+TfTCOlE4AcRJE72W1ksZXbAx8PPBR9RzgTeSPzlPMHrbANMH3LbltH73wxQ==}
+ lightningcss@1.32.0:
+ resolution: {integrity: sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==}
+ engines: {node: '>= 12.0.0'}
+
+ locate-character@3.0.0:
+ resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==}
magic-string@0.30.21:
resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==}
+ mri@1.2.0:
+ resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
+ engines: {node: '>=4'}
+
+ mrmime@2.0.1:
+ resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==}
+ engines: {node: '>=10'}
+
nanoid@3.3.11:
resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==}
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
@@ -615,6 +877,21 @@ packages:
obug@2.1.1:
resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==}
+ oxfmt@0.44.0:
+ resolution: {integrity: sha512-lnncqvHewyRvaqdrnntVIrZV2tEddz8lbvPsQzG/zlkfvgZkwy0HP1p/2u1aCDToeg1jb9zBpbJdfkV73Itw+w==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ hasBin: true
+
+ oxlint@1.59.0:
+ resolution: {integrity: sha512-0xBLeGGjP4vD9pygRo8iuOkOzEU1MqOnfiOl7KYezL/QvWL8NUg6n03zXc7ZVqltiOpUxBk2zgHI3PnRIEdAvw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ hasBin: true
+ peerDependencies:
+ oxlint-tsgolint: '>=0.18.0'
+ peerDependenciesMeta:
+ oxlint-tsgolint:
+ optional: true
+
pako@1.0.11:
resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==}
@@ -627,29 +904,44 @@ packages:
picocolors@1.1.1:
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
- picomatch@4.0.2:
- resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==}
- engines: {node: '>=12'}
-
picomatch@4.0.3:
resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==}
engines: {node: '>=12'}
- postcss@8.5.3:
- resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==}
+ picomatch@4.0.4:
+ resolution: {integrity: sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==}
+ engines: {node: '>=12'}
+
+ postcss@8.5.9:
+ resolution: {integrity: sha512-7a70Nsot+EMX9fFU3064K/kdHWZqGVY+BADLyXc8Dfv+mTLLVl6JzJpPaCZ2kQL9gIJvKXSLMHhqdRRjwQeFtw==}
engines: {node: ^10 || ^12 || >=14}
+ readdirp@4.1.2:
+ resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==}
+ engines: {node: '>= 14.18.0'}
+
resolve-pkg-maps@1.0.0:
resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
- rollup@4.40.0:
- resolution: {integrity: sha512-Noe455xmA96nnqH5piFtLobsGbCij7Tu+tb3c1vYjNbTkfzGqXqQXG3wJaYXkRZuQ0vEYN4bhwg7QnIrqB5B+w==}
- engines: {node: '>=18.0.0', npm: '>=8.0.0'}
+ rolldown@1.0.0-rc.15:
+ resolution: {integrity: sha512-Ff31guA5zT6WjnGp0SXw76X6hzGRk/OQq2hE+1lcDe+lJdHSgnSX6nK3erbONHyCbpSj9a9E+uX/OvytZoWp2g==}
+ engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
+ sade@1.8.1:
+ resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==}
+ engines: {node: '>=6'}
+
+ set-cookie-parser@3.1.0:
+ resolution: {integrity: sha512-kjnC1DXBHcxaOaOXBHBeRtltsDG2nUiUni+jP92M9gYdW12rsmx92UsfpH7o5tDRs7I1ZZPSQJQGv3UaRfCiuw==}
+
siginfo@2.0.0:
resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}
+ sirv@3.0.2:
+ resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==}
+ engines: {node: '>=18'}
+
source-map-js@1.2.1:
resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
engines: {node: '>=0.10.0'}
@@ -657,8 +949,20 @@ packages:
stackback@0.0.2:
resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
- std-env@3.10.0:
- resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==}
+ std-env@4.0.0:
+ resolution: {integrity: sha512-zUMPtQ/HBY3/50VbpkupYHbRroTRZJPRLvreamgErJVys0ceuzMkD44J/QjqhHjOzK42GQ3QZIeFG1OYfOtKqQ==}
+
+ svelte-check@4.4.6:
+ resolution: {integrity: sha512-kP1zG81EWaFe9ZyTv4ZXv44Csi6Pkdpb7S3oj6m+K2ec/IcDg/a8LsFsnVLqm2nxtkSwsd5xPj/qFkTBgXHXjg==}
+ engines: {node: '>= 18.0.0'}
+ hasBin: true
+ peerDependencies:
+ svelte: ^4.0.0 || ^5.0.0-next.0
+ typescript: '>=5.0.0'
+
+ svelte@5.55.3:
+ resolution: {integrity: sha512-dS1N+i3bA1v+c4UDb750MlN5vCO82G6vxh8HeTsPsTdJ1BLsN1zxSyDlIdBBqUjqZ/BxEwM8UrFf98aaoVnZFQ==}
+ engines: {node: '>=18'}
tinybench@2.9.0:
resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==}
@@ -667,18 +971,22 @@ packages:
resolution: {integrity: sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==}
engines: {node: '>=18'}
- tinyglobby@0.2.12:
- resolution: {integrity: sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==}
- engines: {node: '>=12.0.0'}
-
tinyglobby@0.2.15:
resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==}
engines: {node: '>=12.0.0'}
- tinyrainbow@3.0.3:
- resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==}
+ tinypool@2.1.0:
+ resolution: {integrity: sha512-Pugqs6M0m7Lv1I7FtxN4aoyToKg1C4tu+/381vH35y8oENM/Ai7f7C4StcoK4/+BSw9ebcS8jRiVrORFKCALLw==}
+ engines: {node: ^20.0.0 || >=22.0.0}
+
+ tinyrainbow@3.1.0:
+ resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==}
engines: {node: '>=14.0.0'}
+ totalist@3.0.1:
+ resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==}
+ engines: {node: '>=6'}
+
ts-custom-error@3.3.1:
resolution: {integrity: sha512-5OX1tzOjxWEgsr/YEUWSuPrQ00deKLh6D7OTWcvNHm12/7QPyRh8SYpyWvA4IZv8H/+GQWQEh/kwo95Q9OVW1A==}
engines: {node: '>=14.0.0'}
@@ -686,47 +994,50 @@ packages:
tslib@1.14.1:
resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
+ tslib@2.8.1:
+ resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
+
tsx@4.21.0:
resolution: {integrity: sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==}
engines: {node: '>=18.0.0'}
hasBin: true
- typescript@5.7.3:
- resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==}
+ typescript@6.0.2:
+ resolution: {integrity: sha512-bGdAIrZ0wiGDo5l8c++HWtbaNCWTS4UTv7RaTH/ThVIgjkveJt83m74bBHMJkuCbslY8ixgLBVZJIOiQlQTjfQ==}
engines: {node: '>=14.17'}
hasBin: true
- undici-types@7.8.0:
- resolution: {integrity: sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==}
+ undici-types@7.19.2:
+ resolution: {integrity: sha512-qYVnV5OEm2AW8cJMCpdV20CDyaN3g0AjDlOGf1OW4iaDEx8MwdtChUp4zu4H0VP3nDRF/8RKWH+IPp9uW0YGZg==}
- vite-plugin-sitemap@0.8.2:
- resolution: {integrity: sha512-bqIw6NVOXg6je81lzX8Lm0vjf8/QSAp8di8fYQzZ3ZdVicOm8+6idBGALJiy1R1FiXNIK8rgORO6HBqXyHW+iQ==}
-
- vite@6.3.1:
- resolution: {integrity: sha512-kkzzkqtMESYklo96HKKPE5KKLkC1amlsqt+RjFMlX2AvbRB/0wghap19NdBxxwGZ+h/C6DLCrcEphPIItlGrRQ==}
- engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
+ vite@8.0.8:
+ resolution: {integrity: sha512-dbU7/iLVa8KZALJyLOBOQ88nOXtNG8vxKuOT4I2mD+Ya70KPceF4IAmDsmU0h1Qsn5bPrvsY9HJstCRh3hG6Uw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
peerDependencies:
- '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0
+ '@types/node': ^20.19.0 || >=22.12.0
+ '@vitejs/devtools': ^0.1.0
+ esbuild: ^0.27.0 || ^0.28.0
jiti: '>=1.21.0'
- less: '*'
- lightningcss: ^1.21.0
- sass: '*'
- sass-embedded: '*'
- stylus: '*'
- sugarss: '*'
+ less: ^4.0.0
+ sass: ^1.70.0
+ sass-embedded: ^1.70.0
+ stylus: '>=0.54.8'
+ sugarss: ^5.0.0
terser: ^5.16.0
tsx: ^4.8.1
yaml: ^2.4.2
peerDependenciesMeta:
'@types/node':
optional: true
+ '@vitejs/devtools':
+ optional: true
+ esbuild:
+ optional: true
jiti:
optional: true
less:
optional: true
- lightningcss:
- optional: true
sass:
optional: true
sass-embedded:
@@ -742,20 +1053,31 @@ packages:
yaml:
optional: true
- vitest@4.0.15:
- resolution: {integrity: sha512-n1RxDp8UJm6N0IbJLQo+yzLZ2sQCDyl1o0LeugbPWf8+8Fttp29GghsQBjYJVmWq3gBFfe9Hs1spR44vovn2wA==}
+ vitefu@1.1.3:
+ resolution: {integrity: sha512-ub4okH7Z5KLjb6hDyjqrGXqWtWvoYdU3IGm/NorpgHncKoLTCfRIbvlhBm7r0YstIaQRYlp4yEbFqDcKSzXSSg==}
+ peerDependencies:
+ vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0
+ peerDependenciesMeta:
+ vite:
+ optional: true
+
+ vitest@4.1.4:
+ resolution: {integrity: sha512-tFuJqTxKb8AvfyqMfnavXdzfy3h3sWZRWwfluGbkeR7n0HUev+FmNgZ8SDrRBTVrVCjgH5cA21qGbCffMNtWvg==}
engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0}
hasBin: true
peerDependencies:
'@edge-runtime/vm': '*'
'@opentelemetry/api': ^1.9.0
'@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0
- '@vitest/browser-playwright': 4.0.15
- '@vitest/browser-preview': 4.0.15
- '@vitest/browser-webdriverio': 4.0.15
- '@vitest/ui': 4.0.15
+ '@vitest/browser-playwright': 4.1.4
+ '@vitest/browser-preview': 4.1.4
+ '@vitest/browser-webdriverio': 4.1.4
+ '@vitest/coverage-istanbul': 4.1.4
+ '@vitest/coverage-v8': 4.1.4
+ '@vitest/ui': 4.1.4
happy-dom: '*'
jsdom: '*'
+ vite: ^6.0.0 || ^7.0.0 || ^8.0.0
peerDependenciesMeta:
'@edge-runtime/vm':
optional: true
@@ -769,6 +1091,10 @@ packages:
optional: true
'@vitest/browser-webdriverio':
optional: true
+ '@vitest/coverage-istanbul':
+ optional: true
+ '@vitest/coverage-v8':
+ optional: true
'@vitest/ui':
optional: true
happy-dom:
@@ -781,353 +1107,439 @@ packages:
engines: {node: '>=8'}
hasBin: true
+ zimmerframe@1.1.4:
+ resolution: {integrity: sha512-B58NGBEoc8Y9MWWCQGl/gq9xBCe4IiKM0a2x7GZdQKOW5Exr8S1W24J6OgM1njK8xCRGvAJIL/MxXHf6SkmQKQ==}
+
snapshots:
- '@biomejs/biome@2.0.6':
- optionalDependencies:
- '@biomejs/cli-darwin-arm64': 2.0.6
- '@biomejs/cli-darwin-x64': 2.0.6
- '@biomejs/cli-linux-arm64': 2.0.6
- '@biomejs/cli-linux-arm64-musl': 2.0.6
- '@biomejs/cli-linux-x64': 2.0.6
- '@biomejs/cli-linux-x64-musl': 2.0.6
- '@biomejs/cli-win32-arm64': 2.0.6
- '@biomejs/cli-win32-x64': 2.0.6
+ '@emnapi/core@1.9.2':
+ dependencies:
+ '@emnapi/wasi-threads': 1.2.1
+ tslib: 2.8.1
+ optional: true
- '@biomejs/cli-darwin-arm64@2.0.6':
+ '@emnapi/runtime@1.9.2':
+ dependencies:
+ tslib: 2.8.1
optional: true
- '@biomejs/cli-darwin-x64@2.0.6':
+ '@emnapi/wasi-threads@1.2.1':
+ dependencies:
+ tslib: 2.8.1
optional: true
- '@biomejs/cli-linux-arm64-musl@2.0.6':
+ '@esbuild/aix-ppc64@0.27.1':
optional: true
- '@biomejs/cli-linux-arm64@2.0.6':
+ '@esbuild/android-arm64@0.27.1':
optional: true
- '@biomejs/cli-linux-x64-musl@2.0.6':
+ '@esbuild/android-arm@0.27.1':
optional: true
- '@biomejs/cli-linux-x64@2.0.6':
+ '@esbuild/android-x64@0.27.1':
optional: true
- '@biomejs/cli-win32-arm64@2.0.6':
+ '@esbuild/darwin-arm64@0.27.1':
optional: true
- '@biomejs/cli-win32-x64@2.0.6':
+ '@esbuild/darwin-x64@0.27.1':
optional: true
- '@esbuild/aix-ppc64@0.25.2':
+ '@esbuild/freebsd-arm64@0.27.1':
optional: true
- '@esbuild/aix-ppc64@0.27.1':
+ '@esbuild/freebsd-x64@0.27.1':
optional: true
- '@esbuild/android-arm64@0.25.2':
+ '@esbuild/linux-arm64@0.27.1':
optional: true
- '@esbuild/android-arm64@0.27.1':
+ '@esbuild/linux-arm@0.27.1':
optional: true
- '@esbuild/android-arm@0.25.2':
+ '@esbuild/linux-ia32@0.27.1':
optional: true
- '@esbuild/android-arm@0.27.1':
+ '@esbuild/linux-loong64@0.27.1':
optional: true
- '@esbuild/android-x64@0.25.2':
+ '@esbuild/linux-mips64el@0.27.1':
optional: true
- '@esbuild/android-x64@0.27.1':
+ '@esbuild/linux-ppc64@0.27.1':
optional: true
- '@esbuild/darwin-arm64@0.25.2':
+ '@esbuild/linux-riscv64@0.27.1':
optional: true
- '@esbuild/darwin-arm64@0.27.1':
+ '@esbuild/linux-s390x@0.27.1':
optional: true
- '@esbuild/darwin-x64@0.25.2':
+ '@esbuild/linux-x64@0.27.1':
optional: true
- '@esbuild/darwin-x64@0.27.1':
+ '@esbuild/netbsd-arm64@0.27.1':
optional: true
- '@esbuild/freebsd-arm64@0.25.2':
+ '@esbuild/netbsd-x64@0.27.1':
optional: true
- '@esbuild/freebsd-arm64@0.27.1':
+ '@esbuild/openbsd-arm64@0.27.1':
optional: true
- '@esbuild/freebsd-x64@0.25.2':
+ '@esbuild/openbsd-x64@0.27.1':
optional: true
- '@esbuild/freebsd-x64@0.27.1':
+ '@esbuild/openharmony-arm64@0.27.1':
optional: true
- '@esbuild/linux-arm64@0.25.2':
+ '@esbuild/sunos-x64@0.27.1':
optional: true
- '@esbuild/linux-arm64@0.27.1':
+ '@esbuild/win32-arm64@0.27.1':
optional: true
- '@esbuild/linux-arm@0.25.2':
+ '@esbuild/win32-ia32@0.27.1':
optional: true
- '@esbuild/linux-arm@0.27.1':
+ '@esbuild/win32-x64@0.27.1':
optional: true
- '@esbuild/linux-ia32@0.25.2':
+ '@jridgewell/gen-mapping@0.3.13':
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.5.5
+ '@jridgewell/trace-mapping': 0.3.31
+
+ '@jridgewell/remapping@2.3.5':
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
+
+ '@jridgewell/resolve-uri@3.1.2': {}
+
+ '@jridgewell/sourcemap-codec@1.5.5': {}
+
+ '@jridgewell/trace-mapping@0.3.31':
+ dependencies:
+ '@jridgewell/resolve-uri': 3.1.2
+ '@jridgewell/sourcemap-codec': 1.5.5
+
+ '@napi-rs/wasm-runtime@1.1.3(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)':
+ dependencies:
+ '@emnapi/core': 1.9.2
+ '@emnapi/runtime': 1.9.2
+ '@tybys/wasm-util': 0.10.1
optional: true
- '@esbuild/linux-ia32@0.27.1':
+ '@oxc-project/types@0.124.0': {}
+
+ '@oxfmt/binding-android-arm-eabi@0.44.0':
optional: true
- '@esbuild/linux-loong64@0.25.2':
+ '@oxfmt/binding-android-arm64@0.44.0':
optional: true
- '@esbuild/linux-loong64@0.27.1':
+ '@oxfmt/binding-darwin-arm64@0.44.0':
optional: true
- '@esbuild/linux-mips64el@0.25.2':
+ '@oxfmt/binding-darwin-x64@0.44.0':
optional: true
- '@esbuild/linux-mips64el@0.27.1':
+ '@oxfmt/binding-freebsd-x64@0.44.0':
optional: true
- '@esbuild/linux-ppc64@0.25.2':
+ '@oxfmt/binding-linux-arm-gnueabihf@0.44.0':
optional: true
- '@esbuild/linux-ppc64@0.27.1':
+ '@oxfmt/binding-linux-arm-musleabihf@0.44.0':
optional: true
- '@esbuild/linux-riscv64@0.25.2':
+ '@oxfmt/binding-linux-arm64-gnu@0.44.0':
optional: true
- '@esbuild/linux-riscv64@0.27.1':
+ '@oxfmt/binding-linux-arm64-musl@0.44.0':
optional: true
- '@esbuild/linux-s390x@0.25.2':
+ '@oxfmt/binding-linux-ppc64-gnu@0.44.0':
optional: true
- '@esbuild/linux-s390x@0.27.1':
+ '@oxfmt/binding-linux-riscv64-gnu@0.44.0':
optional: true
- '@esbuild/linux-x64@0.25.2':
+ '@oxfmt/binding-linux-riscv64-musl@0.44.0':
optional: true
- '@esbuild/linux-x64@0.27.1':
+ '@oxfmt/binding-linux-s390x-gnu@0.44.0':
optional: true
- '@esbuild/netbsd-arm64@0.25.2':
+ '@oxfmt/binding-linux-x64-gnu@0.44.0':
optional: true
- '@esbuild/netbsd-arm64@0.27.1':
+ '@oxfmt/binding-linux-x64-musl@0.44.0':
optional: true
- '@esbuild/netbsd-x64@0.25.2':
+ '@oxfmt/binding-openharmony-arm64@0.44.0':
optional: true
- '@esbuild/netbsd-x64@0.27.1':
+ '@oxfmt/binding-win32-arm64-msvc@0.44.0':
optional: true
- '@esbuild/openbsd-arm64@0.25.2':
+ '@oxfmt/binding-win32-ia32-msvc@0.44.0':
optional: true
- '@esbuild/openbsd-arm64@0.27.1':
+ '@oxfmt/binding-win32-x64-msvc@0.44.0':
optional: true
- '@esbuild/openbsd-x64@0.25.2':
+ '@oxlint/binding-android-arm-eabi@1.59.0':
optional: true
- '@esbuild/openbsd-x64@0.27.1':
+ '@oxlint/binding-android-arm64@1.59.0':
optional: true
- '@esbuild/openharmony-arm64@0.27.1':
+ '@oxlint/binding-darwin-arm64@1.59.0':
optional: true
- '@esbuild/sunos-x64@0.25.2':
+ '@oxlint/binding-darwin-x64@1.59.0':
optional: true
- '@esbuild/sunos-x64@0.27.1':
+ '@oxlint/binding-freebsd-x64@1.59.0':
optional: true
- '@esbuild/win32-arm64@0.25.2':
+ '@oxlint/binding-linux-arm-gnueabihf@1.59.0':
optional: true
- '@esbuild/win32-arm64@0.27.1':
+ '@oxlint/binding-linux-arm-musleabihf@1.59.0':
optional: true
- '@esbuild/win32-ia32@0.25.2':
+ '@oxlint/binding-linux-arm64-gnu@1.59.0':
optional: true
- '@esbuild/win32-ia32@0.27.1':
+ '@oxlint/binding-linux-arm64-musl@1.59.0':
optional: true
- '@esbuild/win32-x64@0.25.2':
+ '@oxlint/binding-linux-ppc64-gnu@1.59.0':
optional: true
- '@esbuild/win32-x64@0.27.1':
+ '@oxlint/binding-linux-riscv64-gnu@1.59.0':
optional: true
- '@jridgewell/sourcemap-codec@1.5.5': {}
+ '@oxlint/binding-linux-riscv64-musl@1.59.0':
+ optional: true
- '@pdf-lib/standard-fonts@1.0.0':
- dependencies:
- pako: 1.0.11
+ '@oxlint/binding-linux-s390x-gnu@1.59.0':
+ optional: true
- '@pdf-lib/upng@1.0.1':
- dependencies:
- pako: 1.0.11
+ '@oxlint/binding-linux-x64-gnu@1.59.0':
+ optional: true
- '@rollup/rollup-android-arm-eabi@4.40.0':
+ '@oxlint/binding-linux-x64-musl@1.59.0':
optional: true
- '@rollup/rollup-android-arm64@4.40.0':
+ '@oxlint/binding-openharmony-arm64@1.59.0':
optional: true
- '@rollup/rollup-darwin-arm64@4.40.0':
+ '@oxlint/binding-win32-arm64-msvc@1.59.0':
optional: true
- '@rollup/rollup-darwin-x64@4.40.0':
+ '@oxlint/binding-win32-ia32-msvc@1.59.0':
optional: true
- '@rollup/rollup-freebsd-arm64@4.40.0':
+ '@oxlint/binding-win32-x64-msvc@1.59.0':
optional: true
- '@rollup/rollup-freebsd-x64@4.40.0':
+ '@pdf-lib/standard-fonts@1.0.0':
+ dependencies:
+ pako: 1.0.11
+
+ '@pdf-lib/upng@1.0.1':
+ dependencies:
+ pako: 1.0.11
+
+ '@polka/url@1.0.0-next.29': {}
+
+ '@rolldown/binding-android-arm64@1.0.0-rc.15':
optional: true
- '@rollup/rollup-linux-arm-gnueabihf@4.40.0':
+ '@rolldown/binding-darwin-arm64@1.0.0-rc.15':
optional: true
- '@rollup/rollup-linux-arm-musleabihf@4.40.0':
+ '@rolldown/binding-darwin-x64@1.0.0-rc.15':
optional: true
- '@rollup/rollup-linux-arm64-gnu@4.40.0':
+ '@rolldown/binding-freebsd-x64@1.0.0-rc.15':
optional: true
- '@rollup/rollup-linux-arm64-musl@4.40.0':
+ '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.15':
optional: true
- '@rollup/rollup-linux-loongarch64-gnu@4.40.0':
+ '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.15':
optional: true
- '@rollup/rollup-linux-powerpc64le-gnu@4.40.0':
+ '@rolldown/binding-linux-arm64-musl@1.0.0-rc.15':
optional: true
- '@rollup/rollup-linux-riscv64-gnu@4.40.0':
+ '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.15':
optional: true
- '@rollup/rollup-linux-riscv64-musl@4.40.0':
+ '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.15':
optional: true
- '@rollup/rollup-linux-s390x-gnu@4.40.0':
+ '@rolldown/binding-linux-x64-gnu@1.0.0-rc.15':
optional: true
- '@rollup/rollup-linux-x64-gnu@4.40.0':
+ '@rolldown/binding-linux-x64-musl@1.0.0-rc.15':
optional: true
- '@rollup/rollup-linux-x64-musl@4.40.0':
+ '@rolldown/binding-openharmony-arm64@1.0.0-rc.15':
optional: true
- '@rollup/rollup-win32-arm64-msvc@4.40.0':
+ '@rolldown/binding-wasm32-wasi@1.0.0-rc.15':
+ dependencies:
+ '@emnapi/core': 1.9.2
+ '@emnapi/runtime': 1.9.2
+ '@napi-rs/wasm-runtime': 1.1.3(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)
optional: true
- '@rollup/rollup-win32-ia32-msvc@4.40.0':
+ '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.15':
optional: true
- '@rollup/rollup-win32-x64-msvc@4.40.0':
+ '@rolldown/binding-win32-x64-msvc@1.0.0-rc.15':
optional: true
+ '@rolldown/pluginutils@1.0.0-rc.15': {}
+
'@standard-schema/spec@1.0.0': {}
+ '@standard-schema/spec@1.1.0': {}
+
+ '@sveltejs/acorn-typescript@1.0.9(acorn@8.16.0)':
+ dependencies:
+ acorn: 8.16.0
+
+ '@sveltejs/adapter-static@3.0.10(@sveltejs/kit@2.57.1(@sveltejs/vite-plugin-svelte@7.0.0(svelte@5.55.3)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)))(svelte@5.55.3)(typescript@6.0.2)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)))':
+ dependencies:
+ '@sveltejs/kit': 2.57.1(@sveltejs/vite-plugin-svelte@7.0.0(svelte@5.55.3)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)))(svelte@5.55.3)(typescript@6.0.2)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0))
+
+ '@sveltejs/kit@2.57.1(@sveltejs/vite-plugin-svelte@7.0.0(svelte@5.55.3)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)))(svelte@5.55.3)(typescript@6.0.2)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0))':
+ dependencies:
+ '@standard-schema/spec': 1.0.0
+ '@sveltejs/acorn-typescript': 1.0.9(acorn@8.16.0)
+ '@sveltejs/vite-plugin-svelte': 7.0.0(svelte@5.55.3)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0))
+ '@types/cookie': 0.6.0
+ acorn: 8.16.0
+ cookie: 0.6.0
+ devalue: 5.7.1
+ esm-env: 1.2.2
+ kleur: 4.1.5
+ magic-string: 0.30.21
+ mrmime: 2.0.1
+ set-cookie-parser: 3.1.0
+ sirv: 3.0.2
+ svelte: 5.55.3
+ vite: 8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)
+ optionalDependencies:
+ typescript: 6.0.2
+
+ '@sveltejs/vite-plugin-svelte@7.0.0(svelte@5.55.3)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0))':
+ dependencies:
+ deepmerge: 4.3.1
+ magic-string: 0.30.21
+ obug: 2.1.1
+ svelte: 5.55.3
+ vite: 8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)
+ vitefu: 1.1.3(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0))
+
+ '@tybys/wasm-util@0.10.1':
+ dependencies:
+ tslib: 2.8.1
+ optional: true
+
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
assertion-error: 2.0.1
+ '@types/cookie@0.6.0': {}
+
'@types/deep-eql@4.0.2': {}
'@types/estree@1.0.7': {}
- '@types/node@24.0.10':
+ '@types/node@25.6.0':
dependencies:
- undici-types: 7.8.0
+ undici-types: 7.19.2
+
+ '@types/trusted-types@2.0.7': {}
- '@vitest/expect@4.0.15':
+ '@vitest/expect@4.1.4':
dependencies:
- '@standard-schema/spec': 1.0.0
+ '@standard-schema/spec': 1.1.0
'@types/chai': 5.2.3
- '@vitest/spy': 4.0.15
- '@vitest/utils': 4.0.15
- chai: 6.2.1
- tinyrainbow: 3.0.3
+ '@vitest/spy': 4.1.4
+ '@vitest/utils': 4.1.4
+ chai: 6.2.2
+ tinyrainbow: 3.1.0
- '@vitest/mocker@4.0.15(vite@6.3.1(@types/node@24.0.10)(tsx@4.21.0))':
+ '@vitest/mocker@4.1.4(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0))':
dependencies:
- '@vitest/spy': 4.0.15
+ '@vitest/spy': 4.1.4
estree-walker: 3.0.3
magic-string: 0.30.21
optionalDependencies:
- vite: 6.3.1(@types/node@24.0.10)(tsx@4.21.0)
+ vite: 8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)
- '@vitest/pretty-format@4.0.15':
+ '@vitest/pretty-format@4.1.4':
dependencies:
- tinyrainbow: 3.0.3
+ tinyrainbow: 3.1.0
- '@vitest/runner@4.0.15':
+ '@vitest/runner@4.1.4':
dependencies:
- '@vitest/utils': 4.0.15
+ '@vitest/utils': 4.1.4
pathe: 2.0.3
- '@vitest/snapshot@4.0.15':
+ '@vitest/snapshot@4.1.4':
dependencies:
- '@vitest/pretty-format': 4.0.15
+ '@vitest/pretty-format': 4.1.4
+ '@vitest/utils': 4.1.4
magic-string: 0.30.21
pathe: 2.0.3
- '@vitest/spy@4.0.15': {}
+ '@vitest/spy@4.1.4': {}
- '@vitest/utils@4.0.15':
+ '@vitest/utils@4.1.4':
dependencies:
- '@vitest/pretty-format': 4.0.15
- tinyrainbow: 3.0.3
+ '@vitest/pretty-format': 4.1.4
+ convert-source-map: 2.0.0
+ tinyrainbow: 3.1.0
+
+ acorn@8.16.0: {}
+
+ aria-query@5.3.1: {}
assertion-error@2.0.1: {}
- chai@6.2.1: {}
+ axobject-query@4.1.0: {}
- es-module-lexer@1.7.0: {}
+ chai@6.2.2: {}
- esbuild@0.25.2:
- optionalDependencies:
- '@esbuild/aix-ppc64': 0.25.2
- '@esbuild/android-arm': 0.25.2
- '@esbuild/android-arm64': 0.25.2
- '@esbuild/android-x64': 0.25.2
- '@esbuild/darwin-arm64': 0.25.2
- '@esbuild/darwin-x64': 0.25.2
- '@esbuild/freebsd-arm64': 0.25.2
- '@esbuild/freebsd-x64': 0.25.2
- '@esbuild/linux-arm': 0.25.2
- '@esbuild/linux-arm64': 0.25.2
- '@esbuild/linux-ia32': 0.25.2
- '@esbuild/linux-loong64': 0.25.2
- '@esbuild/linux-mips64el': 0.25.2
- '@esbuild/linux-ppc64': 0.25.2
- '@esbuild/linux-riscv64': 0.25.2
- '@esbuild/linux-s390x': 0.25.2
- '@esbuild/linux-x64': 0.25.2
- '@esbuild/netbsd-arm64': 0.25.2
- '@esbuild/netbsd-x64': 0.25.2
- '@esbuild/openbsd-arm64': 0.25.2
- '@esbuild/openbsd-x64': 0.25.2
- '@esbuild/sunos-x64': 0.25.2
- '@esbuild/win32-arm64': 0.25.2
- '@esbuild/win32-ia32': 0.25.2
- '@esbuild/win32-x64': 0.25.2
+ chokidar@4.0.3:
+ dependencies:
+ readdirp: 4.1.2
+
+ clsx@2.1.1: {}
+
+ convert-source-map@2.0.0: {}
+
+ cookie@0.6.0: {}
+
+ deepmerge@4.3.1: {}
+
+ detect-libc@2.1.2: {}
+
+ devalue@5.7.1: {}
+
+ es-module-lexer@2.0.0: {}
esbuild@0.27.1:
optionalDependencies:
@@ -1158,19 +1570,21 @@ snapshots:
'@esbuild/win32-ia32': 0.27.1
'@esbuild/win32-x64': 0.27.1
+ esm-env@1.2.2: {}
+
+ esrap@2.2.5:
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.5.5
+
estree-walker@3.0.3:
dependencies:
'@types/estree': 1.0.7
expect-type@1.3.0: {}
- fdir@6.4.3(picomatch@4.0.2):
- optionalDependencies:
- picomatch: 4.0.2
-
- fdir@6.5.0(picomatch@4.0.3):
+ fdir@6.5.0(picomatch@4.0.4):
optionalDependencies:
- picomatch: 4.0.3
+ picomatch: 4.0.4
fsevents@2.3.3:
optional: true
@@ -1179,14 +1593,121 @@ snapshots:
dependencies:
resolve-pkg-maps: 1.0.0
+ is-reference@3.0.3:
+ dependencies:
+ '@types/estree': 1.0.7
+
+ kleur@4.1.5: {}
+
+ lightningcss-android-arm64@1.32.0:
+ optional: true
+
+ lightningcss-darwin-arm64@1.32.0:
+ optional: true
+
+ lightningcss-darwin-x64@1.32.0:
+ optional: true
+
+ lightningcss-freebsd-x64@1.32.0:
+ optional: true
+
+ lightningcss-linux-arm-gnueabihf@1.32.0:
+ optional: true
+
+ lightningcss-linux-arm64-gnu@1.32.0:
+ optional: true
+
+ lightningcss-linux-arm64-musl@1.32.0:
+ optional: true
+
+ lightningcss-linux-x64-gnu@1.32.0:
+ optional: true
+
+ lightningcss-linux-x64-musl@1.32.0:
+ optional: true
+
+ lightningcss-win32-arm64-msvc@1.32.0:
+ optional: true
+
+ lightningcss-win32-x64-msvc@1.32.0:
+ optional: true
+
+ lightningcss@1.32.0:
+ dependencies:
+ detect-libc: 2.1.2
+ optionalDependencies:
+ lightningcss-android-arm64: 1.32.0
+ lightningcss-darwin-arm64: 1.32.0
+ lightningcss-darwin-x64: 1.32.0
+ lightningcss-freebsd-x64: 1.32.0
+ lightningcss-linux-arm-gnueabihf: 1.32.0
+ lightningcss-linux-arm64-gnu: 1.32.0
+ lightningcss-linux-arm64-musl: 1.32.0
+ lightningcss-linux-x64-gnu: 1.32.0
+ lightningcss-linux-x64-musl: 1.32.0
+ lightningcss-win32-arm64-msvc: 1.32.0
+ lightningcss-win32-x64-msvc: 1.32.0
+
+ locate-character@3.0.0: {}
+
magic-string@0.30.21:
dependencies:
'@jridgewell/sourcemap-codec': 1.5.5
+ mri@1.2.0: {}
+
+ mrmime@2.0.1: {}
+
nanoid@3.3.11: {}
obug@2.1.1: {}
+ oxfmt@0.44.0:
+ dependencies:
+ tinypool: 2.1.0
+ optionalDependencies:
+ '@oxfmt/binding-android-arm-eabi': 0.44.0
+ '@oxfmt/binding-android-arm64': 0.44.0
+ '@oxfmt/binding-darwin-arm64': 0.44.0
+ '@oxfmt/binding-darwin-x64': 0.44.0
+ '@oxfmt/binding-freebsd-x64': 0.44.0
+ '@oxfmt/binding-linux-arm-gnueabihf': 0.44.0
+ '@oxfmt/binding-linux-arm-musleabihf': 0.44.0
+ '@oxfmt/binding-linux-arm64-gnu': 0.44.0
+ '@oxfmt/binding-linux-arm64-musl': 0.44.0
+ '@oxfmt/binding-linux-ppc64-gnu': 0.44.0
+ '@oxfmt/binding-linux-riscv64-gnu': 0.44.0
+ '@oxfmt/binding-linux-riscv64-musl': 0.44.0
+ '@oxfmt/binding-linux-s390x-gnu': 0.44.0
+ '@oxfmt/binding-linux-x64-gnu': 0.44.0
+ '@oxfmt/binding-linux-x64-musl': 0.44.0
+ '@oxfmt/binding-openharmony-arm64': 0.44.0
+ '@oxfmt/binding-win32-arm64-msvc': 0.44.0
+ '@oxfmt/binding-win32-ia32-msvc': 0.44.0
+ '@oxfmt/binding-win32-x64-msvc': 0.44.0
+
+ oxlint@1.59.0:
+ optionalDependencies:
+ '@oxlint/binding-android-arm-eabi': 1.59.0
+ '@oxlint/binding-android-arm64': 1.59.0
+ '@oxlint/binding-darwin-arm64': 1.59.0
+ '@oxlint/binding-darwin-x64': 1.59.0
+ '@oxlint/binding-freebsd-x64': 1.59.0
+ '@oxlint/binding-linux-arm-gnueabihf': 1.59.0
+ '@oxlint/binding-linux-arm-musleabihf': 1.59.0
+ '@oxlint/binding-linux-arm64-gnu': 1.59.0
+ '@oxlint/binding-linux-arm64-musl': 1.59.0
+ '@oxlint/binding-linux-ppc64-gnu': 1.59.0
+ '@oxlint/binding-linux-riscv64-gnu': 1.59.0
+ '@oxlint/binding-linux-riscv64-musl': 1.59.0
+ '@oxlint/binding-linux-s390x-gnu': 1.59.0
+ '@oxlint/binding-linux-x64-gnu': 1.59.0
+ '@oxlint/binding-linux-x64-musl': 1.59.0
+ '@oxlint/binding-openharmony-arm64': 1.59.0
+ '@oxlint/binding-win32-arm64-msvc': 1.59.0
+ '@oxlint/binding-win32-ia32-msvc': 1.59.0
+ '@oxlint/binding-win32-x64-msvc': 1.59.0
+
pako@1.0.11: {}
pathe@2.0.3: {}
@@ -1200,72 +1721,116 @@ snapshots:
picocolors@1.1.1: {}
- picomatch@4.0.2: {}
-
picomatch@4.0.3: {}
- postcss@8.5.3:
+ picomatch@4.0.4: {}
+
+ postcss@8.5.9:
dependencies:
nanoid: 3.3.11
picocolors: 1.1.1
source-map-js: 1.2.1
+ readdirp@4.1.2: {}
+
resolve-pkg-maps@1.0.0: {}
- rollup@4.40.0:
+ rolldown@1.0.0-rc.15:
dependencies:
- '@types/estree': 1.0.7
+ '@oxc-project/types': 0.124.0
+ '@rolldown/pluginutils': 1.0.0-rc.15
optionalDependencies:
- '@rollup/rollup-android-arm-eabi': 4.40.0
- '@rollup/rollup-android-arm64': 4.40.0
- '@rollup/rollup-darwin-arm64': 4.40.0
- '@rollup/rollup-darwin-x64': 4.40.0
- '@rollup/rollup-freebsd-arm64': 4.40.0
- '@rollup/rollup-freebsd-x64': 4.40.0
- '@rollup/rollup-linux-arm-gnueabihf': 4.40.0
- '@rollup/rollup-linux-arm-musleabihf': 4.40.0
- '@rollup/rollup-linux-arm64-gnu': 4.40.0
- '@rollup/rollup-linux-arm64-musl': 4.40.0
- '@rollup/rollup-linux-loongarch64-gnu': 4.40.0
- '@rollup/rollup-linux-powerpc64le-gnu': 4.40.0
- '@rollup/rollup-linux-riscv64-gnu': 4.40.0
- '@rollup/rollup-linux-riscv64-musl': 4.40.0
- '@rollup/rollup-linux-s390x-gnu': 4.40.0
- '@rollup/rollup-linux-x64-gnu': 4.40.0
- '@rollup/rollup-linux-x64-musl': 4.40.0
- '@rollup/rollup-win32-arm64-msvc': 4.40.0
- '@rollup/rollup-win32-ia32-msvc': 4.40.0
- '@rollup/rollup-win32-x64-msvc': 4.40.0
- fsevents: 2.3.3
+ '@rolldown/binding-android-arm64': 1.0.0-rc.15
+ '@rolldown/binding-darwin-arm64': 1.0.0-rc.15
+ '@rolldown/binding-darwin-x64': 1.0.0-rc.15
+ '@rolldown/binding-freebsd-x64': 1.0.0-rc.15
+ '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-rc.15
+ '@rolldown/binding-linux-arm64-gnu': 1.0.0-rc.15
+ '@rolldown/binding-linux-arm64-musl': 1.0.0-rc.15
+ '@rolldown/binding-linux-ppc64-gnu': 1.0.0-rc.15
+ '@rolldown/binding-linux-s390x-gnu': 1.0.0-rc.15
+ '@rolldown/binding-linux-x64-gnu': 1.0.0-rc.15
+ '@rolldown/binding-linux-x64-musl': 1.0.0-rc.15
+ '@rolldown/binding-openharmony-arm64': 1.0.0-rc.15
+ '@rolldown/binding-wasm32-wasi': 1.0.0-rc.15
+ '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.15
+ '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.15
+
+ sade@1.8.1:
+ dependencies:
+ mri: 1.2.0
+
+ set-cookie-parser@3.1.0: {}
siginfo@2.0.0: {}
+ sirv@3.0.2:
+ dependencies:
+ '@polka/url': 1.0.0-next.29
+ mrmime: 2.0.1
+ totalist: 3.0.1
+
source-map-js@1.2.1: {}
stackback@0.0.2: {}
- std-env@3.10.0: {}
+ std-env@4.0.0: {}
+
+ svelte-check@4.4.6(picomatch@4.0.4)(svelte@5.55.3)(typescript@6.0.2):
+ dependencies:
+ '@jridgewell/trace-mapping': 0.3.31
+ chokidar: 4.0.3
+ fdir: 6.5.0(picomatch@4.0.4)
+ picocolors: 1.1.1
+ sade: 1.8.1
+ svelte: 5.55.3
+ typescript: 6.0.2
+ transitivePeerDependencies:
+ - picomatch
+
+ svelte@5.55.3:
+ dependencies:
+ '@jridgewell/remapping': 2.3.5
+ '@jridgewell/sourcemap-codec': 1.5.5
+ '@sveltejs/acorn-typescript': 1.0.9(acorn@8.16.0)
+ '@types/estree': 1.0.7
+ '@types/trusted-types': 2.0.7
+ acorn: 8.16.0
+ aria-query: 5.3.1
+ axobject-query: 4.1.0
+ clsx: 2.1.1
+ devalue: 5.7.1
+ esm-env: 1.2.2
+ esrap: 2.2.5
+ is-reference: 3.0.3
+ locate-character: 3.0.0
+ magic-string: 0.30.21
+ zimmerframe: 1.1.4
+ transitivePeerDependencies:
+ - '@typescript-eslint/types'
tinybench@2.9.0: {}
tinyexec@1.0.2: {}
- tinyglobby@0.2.12:
- dependencies:
- fdir: 6.4.3(picomatch@4.0.2)
- picomatch: 4.0.2
-
tinyglobby@0.2.15:
dependencies:
- fdir: 6.5.0(picomatch@4.0.3)
- picomatch: 4.0.3
+ fdir: 6.5.0(picomatch@4.0.4)
+ picomatch: 4.0.4
+
+ tinypool@2.1.0: {}
+
+ tinyrainbow@3.1.0: {}
- tinyrainbow@3.0.3: {}
+ totalist@3.0.1: {}
ts-custom-error@3.3.1: {}
tslib@1.14.1: {}
+ tslib@2.8.1:
+ optional: true
+
tsx@4.21.0:
dependencies:
esbuild: 0.27.1
@@ -1273,63 +1838,57 @@ snapshots:
optionalDependencies:
fsevents: 2.3.3
- typescript@5.7.3: {}
+ typescript@6.0.2: {}
- undici-types@7.8.0: {}
+ undici-types@7.19.2: {}
- vite-plugin-sitemap@0.8.2: {}
-
- vite@6.3.1(@types/node@24.0.10)(tsx@4.21.0):
+ vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0):
dependencies:
- esbuild: 0.25.2
- fdir: 6.4.3(picomatch@4.0.2)
- picomatch: 4.0.2
- postcss: 8.5.3
- rollup: 4.40.0
- tinyglobby: 0.2.12
+ lightningcss: 1.32.0
+ picomatch: 4.0.4
+ postcss: 8.5.9
+ rolldown: 1.0.0-rc.15
+ tinyglobby: 0.2.15
optionalDependencies:
- '@types/node': 24.0.10
+ '@types/node': 25.6.0
+ esbuild: 0.27.1
fsevents: 2.3.3
tsx: 4.21.0
- vitest@4.0.15(@types/node@24.0.10)(tsx@4.21.0):
+ vitefu@1.1.3(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)):
+ optionalDependencies:
+ vite: 8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)
+
+ vitest@4.1.4(@types/node@25.6.0)(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)):
dependencies:
- '@vitest/expect': 4.0.15
- '@vitest/mocker': 4.0.15(vite@6.3.1(@types/node@24.0.10)(tsx@4.21.0))
- '@vitest/pretty-format': 4.0.15
- '@vitest/runner': 4.0.15
- '@vitest/snapshot': 4.0.15
- '@vitest/spy': 4.0.15
- '@vitest/utils': 4.0.15
- es-module-lexer: 1.7.0
+ '@vitest/expect': 4.1.4
+ '@vitest/mocker': 4.1.4(vite@8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0))
+ '@vitest/pretty-format': 4.1.4
+ '@vitest/runner': 4.1.4
+ '@vitest/snapshot': 4.1.4
+ '@vitest/spy': 4.1.4
+ '@vitest/utils': 4.1.4
+ es-module-lexer: 2.0.0
expect-type: 1.3.0
magic-string: 0.30.21
obug: 2.1.1
pathe: 2.0.3
picomatch: 4.0.3
- std-env: 3.10.0
+ std-env: 4.0.0
tinybench: 2.9.0
tinyexec: 1.0.2
tinyglobby: 0.2.15
- tinyrainbow: 3.0.3
- vite: 6.3.1(@types/node@24.0.10)(tsx@4.21.0)
+ tinyrainbow: 3.1.0
+ vite: 8.0.8(@types/node@25.6.0)(esbuild@0.27.1)(tsx@4.21.0)
why-is-node-running: 2.3.0
optionalDependencies:
- '@types/node': 24.0.10
+ '@types/node': 25.6.0
transitivePeerDependencies:
- - jiti
- - less
- - lightningcss
- msw
- - sass
- - sass-embedded
- - stylus
- - sugarss
- - terser
- - tsx
- - yaml
why-is-node-running@2.3.0:
dependencies:
siginfo: 2.0.0
stackback: 0.0.2
+
+ zimmerframe@1.1.4: {}
diff --git a/src/app.html b/src/app.html
new file mode 100644
index 0000000..10477a8
--- /dev/null
+++ b/src/app.html
@@ -0,0 +1,11 @@
+
+
+
+
+
+ %sveltekit.head%
+
+
+ %sveltekit.body%
+
+
diff --git a/src/core.test.ts b/src/core.test.ts
index 98c9669..e672292 100644
--- a/src/core.test.ts
+++ b/src/core.test.ts
@@ -1,5 +1,6 @@
import { PageSizes, PDFDocument } from "pdf-lib";
import { describe, expect, it, vi } from "vitest";
+
import {
ConvertA4toA3MismatchedOrientationError,
ConvertA4toA3NoPagesError,
@@ -31,18 +32,14 @@ describe("convertA4toA3", () => {
const loadSpy = vi.spyOn(PDFDocument, "load").mockResolvedValue(mockDoc);
const pdfBytes = new Uint8Array([]);
- await expect(convertA4toA3(pdfBytes, "single")).rejects.toThrow(
- ConvertA4toA3NoPagesError,
- );
+ await expect(convertA4toA3(pdfBytes, "single")).rejects.toThrow(ConvertA4toA3NoPagesError);
loadSpy.mockRestore();
});
it("should throw ConvertA4toA3NotA4SizeError if the PDF is not A4 size", async () => {
const pdfBytes = await createDummyPdf(1, PageSizes.A3[0], PageSizes.A3[1]);
- await expect(convertA4toA3(pdfBytes, "single")).rejects.toThrow(
- ConvertA4toA3NotA4SizeError,
- );
+ await expect(convertA4toA3(pdfBytes, "single")).rejects.toThrow(ConvertA4toA3NotA4SizeError);
});
it("should throw ConvertA4toA3MismatchedOrientationError if pages have different orientations", async () => {
@@ -58,11 +55,7 @@ describe("convertA4toA3", () => {
describe("Mode: single", () => {
it("should convert A4 portrait pages to A3 landscape pages correctly", async () => {
- const pdfBytes = await createDummyPdf(
- 2,
- PageSizes.A4[0],
- PageSizes.A4[1],
- );
+ const pdfBytes = await createDummyPdf(2, PageSizes.A4[0], PageSizes.A4[1]);
const resultBytes = await convertA4toA3(pdfBytes, "single");
const resultPdf = await PDFDocument.load(resultBytes);
const pages = resultPdf.getPages();
@@ -79,11 +72,7 @@ describe("convertA4toA3", () => {
});
it("should convert A4 landscape pages to A3 portrait pages correctly", async () => {
- const pdfBytes = await createDummyPdf(
- 2,
- PageSizes.A4[1],
- PageSizes.A4[0],
- );
+ const pdfBytes = await createDummyPdf(2, PageSizes.A4[1], PageSizes.A4[0]);
const resultBytes = await convertA4toA3(pdfBytes, "single");
const resultPdf = await PDFDocument.load(resultBytes);
const pages = resultPdf.getPages();
@@ -96,11 +85,7 @@ describe("convertA4toA3", () => {
});
it("should handle odd number of pages correctly in single mode", async () => {
- const pdfBytes = await createDummyPdf(
- 3,
- PageSizes.A4[0],
- PageSizes.A4[1],
- );
+ const pdfBytes = await createDummyPdf(3, PageSizes.A4[0], PageSizes.A4[1]);
const resultBytes = await convertA4toA3(pdfBytes, "single");
const resultPdf = await PDFDocument.load(resultBytes);
const pages = resultPdf.getPages();
@@ -112,11 +97,7 @@ describe("convertA4toA3", () => {
describe("Mode: double-long", () => {
it("should process double-long mode correctly (Portrait)", async () => {
// 4 pages -> 1 sheet (front and back) -> 2 A3 pages
- const pdfBytes = await createDummyPdf(
- 4,
- PageSizes.A4[0],
- PageSizes.A4[1],
- );
+ const pdfBytes = await createDummyPdf(4, PageSizes.A4[0], PageSizes.A4[1]);
const resultBytes = await convertA4toA3(pdfBytes, "double-long");
const resultPdf = await PDFDocument.load(resultBytes);
const pages = resultPdf.getPages();
@@ -125,11 +106,7 @@ describe("convertA4toA3", () => {
});
it("should process double-long mode correctly (Landscape)", async () => {
- const pdfBytes = await createDummyPdf(
- 4,
- PageSizes.A4[1],
- PageSizes.A4[0],
- );
+ const pdfBytes = await createDummyPdf(4, PageSizes.A4[1], PageSizes.A4[0]);
const resultBytes = await convertA4toA3(pdfBytes, "double-long");
const resultPdf = await PDFDocument.load(resultBytes);
const pages = resultPdf.getPages();
@@ -140,11 +117,7 @@ describe("convertA4toA3", () => {
describe("Mode: double-short", () => {
it("should process double-short mode correctly (Portrait)", async () => {
- const pdfBytes = await createDummyPdf(
- 4,
- PageSizes.A4[0],
- PageSizes.A4[1],
- );
+ const pdfBytes = await createDummyPdf(4, PageSizes.A4[0], PageSizes.A4[1]);
const resultBytes = await convertA4toA3(pdfBytes, "double-short");
const resultPdf = await PDFDocument.load(resultBytes);
const pages = resultPdf.getPages();
@@ -153,11 +126,7 @@ describe("convertA4toA3", () => {
});
it("should process double-short mode correctly (Landscape)", async () => {
- const pdfBytes = await createDummyPdf(
- 4,
- PageSizes.A4[1],
- PageSizes.A4[0],
- );
+ const pdfBytes = await createDummyPdf(4, PageSizes.A4[1], PageSizes.A4[0]);
const resultBytes = await convertA4toA3(pdfBytes, "double-short");
const resultPdf = await PDFDocument.load(resultBytes);
const pages = resultPdf.getPages();
diff --git a/src/core.ts b/src/core.ts
index 6091247..ea07b24 100644
--- a/src/core.ts
+++ b/src/core.ts
@@ -1,10 +1,4 @@
-import {
- degrees,
- PageSizes,
- PDFDocument,
- type PDFPage,
- type Rotation,
-} from "pdf-lib";
+import { degrees, PageSizes, PDFDocument, type PDFPage, type Rotation } from "pdf-lib";
import { CustomError } from "ts-custom-error";
/**
@@ -51,11 +45,9 @@ export async function convertA4toA3(
for (const page of a4Pages) {
const { width, height } = page.getSize();
const isA4Portrait =
- Math.abs(width - A4_WIDTH) < TOLERANCE &&
- Math.abs(height - A4_HEIGHT) < TOLERANCE;
+ Math.abs(width - A4_WIDTH) < TOLERANCE && Math.abs(height - A4_HEIGHT) < TOLERANCE;
const isA4Landscape =
- Math.abs(width - A4_HEIGHT) < TOLERANCE &&
- Math.abs(height - A4_WIDTH) < TOLERANCE;
+ Math.abs(width - A4_HEIGHT) < TOLERANCE && Math.abs(height - A4_WIDTH) < TOLERANCE;
if (!isA4Portrait && !isA4Landscape) {
throw new ConvertA4toA3NotA4SizeError("The PDF is not A4 size.");
@@ -150,8 +142,7 @@ export async function convertA4toA3(
if (i + 3 < pageCount) await draw(back, a4Pages[i + 3], "right"); // p4
} else {
await draw(back, a4Pages[i + 1], "right", "rot180"); // p2
- if (i + 3 < pageCount)
- await draw(back, a4Pages[i + 3], "left", "rot180"); // p4
+ if (i + 3 < pageCount) await draw(back, a4Pages[i + 3], "left", "rot180"); // p4
}
}
}
@@ -168,8 +159,7 @@ export async function convertA4toA3(
const back = a3PdfDoc.addPage(a3PageSize);
if (isPortrait) {
await draw(back, a4Pages[i + 1], "left", "rot180"); // p2
- if (i + 3 < pageCount)
- await draw(back, a4Pages[i + 3], "right", "rot180"); // p4
+ if (i + 3 < pageCount) await draw(back, a4Pages[i + 3], "right", "rot180"); // p4
} else {
await draw(back, a4Pages[i + 1], "left"); // p2
if (i + 3 < pageCount) await draw(back, a4Pages[i + 3], "right"); // p4
diff --git a/src/main.ts b/src/main.ts
deleted file mode 100644
index f39741c..0000000
--- a/src/main.ts
+++ /dev/null
@@ -1,137 +0,0 @@
-import {
- ConvertA4toA3MismatchedOrientationError,
- ConvertA4toA3NoPagesError,
- ConvertA4toA3NotA4SizeError,
- convertA4toA3,
-} from "./core";
-
-const pdfFileInput = document.getElementById("pdfFile") as HTMLInputElement;
-const convertButton = document.getElementById(
- "convertButton",
-) as HTMLButtonElement;
-const statusDiv = document.getElementById("status") as HTMLDivElement;
-const downloadLinkContainer = document.getElementById(
- "downloadLinkContainer",
-) as HTMLDivElement;
-const loader = document.getElementById("loader") as HTMLDivElement;
-const buttonText = document.getElementById("buttonText") as HTMLSpanElement;
-
-let selectedFile: File | null = null;
-
-pdfFileInput.addEventListener("change", (event) => {
- const file = (event.target as HTMLInputElement).files?.[0] ?? null;
- selectedFile = file;
- if (selectedFile && selectedFile.type === "application/pdf") {
- convertButton.disabled = false;
- statusDiv.textContent = "";
- statusDiv.className = "status";
- downloadLinkContainer.innerHTML = "";
- } else {
- convertButton.disabled = true;
- selectedFile = null;
- statusDiv.textContent = "PDFファイルを選択してください。";
- statusDiv.className = "status text-red-600";
- downloadLinkContainer.innerHTML = "";
- }
-});
-
-convertButton.addEventListener("click", async () => {
- if (!selectedFile) {
- statusDiv.textContent = "まずPDFファイルを選択してください。";
- statusDiv.className = "status text-red-600";
- return;
- }
-
- convertButton.disabled = true;
- loader.style.display = "block";
- buttonText.textContent = "変換中...";
- statusDiv.textContent = "PDFを読み込んでいます...";
- statusDiv.className = "status";
- downloadLinkContainer.innerHTML = "";
-
- try {
- const fileReader = new FileReader();
- fileReader.readAsArrayBuffer(selectedFile);
-
- fileReader.onload = async (event) => {
- const pdfBytes = (event.target as FileReader).result as ArrayBuffer;
-
- try {
- statusDiv.textContent = "A4 PDFを処理中...";
-
- // 印刷モード取得
- const modeRadio = document.querySelector(
- 'input[name="print-setting"]:checked',
- );
- const mode = (modeRadio?.value ?? "single") as
- | "single"
- | "double-long"
- | "double-short";
-
- statusDiv.textContent = "A3 PDFを作成中...";
- const a3PdfBytes = await convertA4toA3(pdfBytes, mode);
-
- const blob = new Blob([a3PdfBytes], { type: "application/pdf" });
- const url = URL.createObjectURL(blob);
- const link = document.createElement("a");
- link.href = url;
- const originalFilename =
- selectedFile?.name.replace(/\.pdf$/i, "") ?? "unknown";
- link.download = `${originalFilename}_A3_2up.pdf`;
- link.textContent = "変換されたA3 PDFをダウンロード";
- link.className = "";
- downloadLinkContainer.innerHTML = "";
- downloadLinkContainer.appendChild(link);
-
- statusDiv.textContent = "変換が完了しました!";
- statusDiv.className = "status text-green-600";
-
- link.addEventListener("click", () => {
- setTimeout(() => URL.revokeObjectURL(url), 100);
- });
- } catch (err: unknown) {
- console.error("PDF処理エラー:", err);
- if (err instanceof ConvertA4toA3NoPagesError) {
- statusDiv.textContent = "PDFにページがありません。";
- } else if (err instanceof ConvertA4toA3NotA4SizeError) {
- statusDiv.textContent =
- "A4サイズ以外のページが含まれています。A4サイズのみ対応しています。";
- } else if (err instanceof ConvertA4toA3MismatchedOrientationError) {
- statusDiv.textContent =
- "ページの向きが一致しません。すべてのページが同じ向きである必要があります。";
- } else {
- statusDiv.textContent =
- "エラーが発生しました: " +
- (typeof err === "object" && err !== null && "message" in err
- ? (err as { message?: string }).message
- : String(err));
- }
- statusDiv.className = "status text-red-600";
- } finally {
- convertButton.disabled = false;
- loader.style.display = "none";
- buttonText.textContent = "変換してA3 PDFを作成";
- }
- };
-
- fileReader.onerror = (err) => {
- console.error("ファイル読み込みエラー:", err);
- statusDiv.textContent = "ファイルの読み込み中にエラーが発生しました。";
- statusDiv.className = "status text-red-600";
- convertButton.disabled = false;
- loader.style.display = "none";
- buttonText.textContent = "変換してA3 PDFを作成";
- };
- } catch (err: unknown) {
- console.error("予期せぬエラー:", err);
- statusDiv.textContent =
- "予期せぬエラーが発生しました: " +
- (typeof err === "object" && err !== null && "message" in err
- ? (err as { message?: string }).message
- : String(err));
- statusDiv.className = "status text-red-600";
- convertButton.disabled = false;
- loader.style.display = "none";
- buttonText.textContent = "変換してA3 PDFを作成";
- }
-});
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte
new file mode 100644
index 0000000..a87e789
--- /dev/null
+++ b/src/routes/+layout.svelte
@@ -0,0 +1,26 @@
+
+
+{@render children()}
+
+
diff --git a/src/routes/+layout.ts b/src/routes/+layout.ts
new file mode 100644
index 0000000..e325c17
--- /dev/null
+++ b/src/routes/+layout.ts
@@ -0,0 +1,2 @@
+export const prerender = true;
+export const trailingSlash = "always";
diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte
new file mode 100644
index 0000000..ac5981e
--- /dev/null
+++ b/src/routes/+page.svelte
@@ -0,0 +1,574 @@
+
+
+
+ A4toA3 - PDF変換
+
+
+
+
+ A4 to A3
+
+ このツールは、A4サイズのPDFの2ページ分を、1枚のA3用紙に並べて配置した新しいPDFを作成します。
+
+ ※PDFファイルは外部サーバー等に送信されず、このブラウザ内だけで処理されます。
+
+
+
+
コンビニ印刷のヒント
+
A3サイズは、A4サイズを2枚並べたサイズです。
+
+ コンビニのマルチコピー機では、A4用紙2枚を印刷するよりも、A3用紙1枚を印刷する方が料金が安くなる場合が多いです。
+
+ ※2025年4月現在
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {statusMessage}
+
+
+ {#if downloadUrl}
+
+ {/if}
+
+
+
diff --git a/src/routes/robots.txt/+server.ts b/src/routes/robots.txt/+server.ts
new file mode 100644
index 0000000..1b04de7
--- /dev/null
+++ b/src/routes/robots.txt/+server.ts
@@ -0,0 +1,10 @@
+const siteUrl = process.env.VITE_SITE_URL || "https://a4toa3.pages.dev";
+
+export const prerender = true;
+
+export const GET = () =>
+ new Response(`User-agent: *\nAllow: /\nSitemap: ${siteUrl}/sitemap.xml\n`, {
+ headers: {
+ "content-type": "text/plain; charset=utf-8",
+ },
+ });
diff --git a/src/routes/sitemap.xml/+server.ts b/src/routes/sitemap.xml/+server.ts
new file mode 100644
index 0000000..1b9a806
--- /dev/null
+++ b/src/routes/sitemap.xml/+server.ts
@@ -0,0 +1,13 @@
+const siteUrl = process.env.VITE_SITE_URL || "https://a4toa3.pages.dev";
+
+export const prerender = true;
+
+export const GET = () =>
+ new Response(
+ `\n\n\t\n\t\t${siteUrl}/\n\t\n\n`,
+ {
+ headers: {
+ "content-type": "application/xml; charset=utf-8",
+ },
+ },
+ );
diff --git a/src/style.css b/src/style.css
deleted file mode 100644
index ddad424..0000000
--- a/src/style.css
+++ /dev/null
@@ -1,326 +0,0 @@
-body {
- font-family: sans-serif;
- background: #f3f4f6;
- min-height: 100vh;
- margin: 0;
- padding: 0;
- display: flex;
- align-items: center;
- justify-content: center;
- word-break: auto-phrase;
-}
-
-/* --- Description/Privacy Note --- */
-.description {
- margin-bottom: 1.2rem;
- padding: 0.75rem 1rem;
- font-size: 0.98rem;
- text-align: center;
- color: #334155;
-}
-
-.privacy-note {
- display: block;
- margin-top: 0.5em;
- font-size: 0.92em;
- color: #2563eb;
- text-align: center;
-}
-
-/* --- GitHub Link Top Style --- */
-.github-link-top {
- display: flex;
- justify-content: center;
- margin-bottom: 1.1rem;
-}
-
-.github-link {
- display: inline-flex;
- align-items: center;
- gap: 0.5em;
- background: #f3f4f6;
- border: 1px solid #d1d5db;
- border-radius: 0.5em;
- padding: 0.35em 0.9em 0.35em 0.7em;
- color: #24292f;
- font-weight: 500;
- font-size: 0.98rem;
- text-decoration: none;
- transition:
- background 0.18s,
- border 0.18s,
- color 0.18s;
- box-shadow: 0 1px 4px rgba(30, 64, 175, 0.04);
-}
-
-.github-link:hover {
- background: #e0e7ef;
- border-color: #2563eb;
- color: #2563eb;
-}
-
-.github-icon {
- width: 20px;
- height: 20px;
- vertical-align: middle;
- margin-right: 0.2em;
-}
-
-.container {
- background: #fff;
- padding: 2rem;
- border-radius: 0.75rem;
- box-shadow: 0 2px 16px rgba(0, 0, 0, 0.08);
- width: 100%;
- max-width: 32rem;
-}
-
-@media (max-width: 600px) {
- body {
- display: block;
- padding: 0;
- }
- .container {
- padding: 1.2rem 0.7rem;
- border-radius: 0;
- box-shadow: none;
- }
-}
-
-.title {
- font-size: 1.5rem;
- font-weight: bold;
- margin-bottom: 1.5rem;
- text-align: center;
- color: #1f2937;
-}
-
-.hint-box {
- margin-bottom: 1.5rem;
- padding: 1rem;
- background: #eff6ff;
- border: 1px solid #bfdbfe;
- border-radius: 0.5rem;
- font-size: 0.95rem;
- color: #1e40af;
-}
-
-.hint-title {
- font-weight: 600;
- margin-bottom: 0.5rem;
-}
-
-.description {
- margin-bottom: 1.2rem;
- padding: 0.75rem 1rem;
- font-size: 0.98rem;
- text-align: center;
- color: #334155;
-}
-
-.form-group {
- margin-bottom: 1.25rem;
-}
-
-.label {
- display: block;
- font-size: 0.97rem;
- font-weight: 500;
- color: #374151;
- margin-bottom: 0.5rem;
-}
-
-.file-input {
- display: block;
- width: 100%;
- max-width: 100%;
- box-sizing: border-box;
- font-size: 0.97rem;
- color: #374151;
- border: 1px solid #d1d5db;
- border-radius: 0.375rem;
- padding: 0.5rem;
- background: #f9fafb;
- cursor: pointer;
- transition:
- border-color 0.2s,
- box-shadow 0.2s;
-}
-
-.file-input:focus {
- outline: none;
- border-color: #2563eb;
- box-shadow: 0 0 0 2px #bfdbfe;
-}
-
-.file-input::-webkit-file-upload-button {
- margin-right: 1rem;
- padding: 0.5em 1em;
- border: none;
- border-radius: 0.375rem;
- background: #eff6ff;
- color: #2563eb;
- font-weight: 600;
- font-size: 0.97rem;
- cursor: pointer;
- transition: background 0.2s;
-}
-
-.file-input:hover::-webkit-file-upload-button,
-.file-input:focus::-webkit-file-upload-button {
- background: #dbeafe;
-}
-
-.file-input::file-selector-button {
- margin-right: 1rem;
- padding: 0.5em 1em;
- border: none;
- border-radius: 0.375rem;
- background: #eff6ff;
- color: #2563eb;
- font-weight: 600;
- font-size: 0.97rem;
- cursor: pointer;
- transition: background 0.2s;
-}
-
-.file-input:hover::file-selector-button,
-.file-input:focus::file-selector-button {
- background: #dbeafe;
-}
-
-.radio-group {
- display: flex;
- flex-direction: column;
- gap: 0.5rem;
-}
-
-.radio-item {
- display: flex;
- align-items: center;
- gap: 0.5rem;
- font-size: 0.97rem;
-}
-
-.note {
- margin-top: 0.5rem;
- font-size: 0.85rem;
- color: #45474f;
-}
-
-.convert-btn {
- width: 100%;
- background: #2563eb;
- color: #fff;
- font-weight: bold;
- padding: 0.75rem 1rem;
- border: none;
- border-radius: 0.5rem;
- font-size: 1rem;
- cursor: pointer;
- display: flex;
- align-items: center;
- justify-content: center;
- transition: background 0.2s;
- gap: 0.5rem;
-}
-
-.convert-btn:disabled {
- opacity: 0.5;
- cursor: not-allowed;
-}
-
-.convert-btn:not(:disabled):hover {
- background: #1d4ed8;
-}
-
-.loader {
- border: 4px solid #f3f3f3;
- border-top: 4px solid #3498db;
- border-radius: 50%;
- width: 24px;
- height: 24px;
- animation: spin 1s linear infinite;
- display: none;
- margin-right: 8px;
-}
-
-@keyframes spin {
- 0% {
- transform: rotate(0deg);
- }
- 100% {
- transform: rotate(360deg);
- }
-}
-
-.status {
- margin-top: 1rem;
- font-size: 0.97rem;
- text-align: center;
- min-height: 1.5em;
-}
-
-.status.text-red-600 {
- color: #dc2626;
-}
-
-.status.text-green-600 {
- color: #16a34a;
-}
-
-.download-link {
- margin-top: 1rem;
- text-align: center;
-}
-
-.download-link a {
- display: inline-block;
- background: #16a34a;
- color: #fff;
- font-weight: bold;
- padding: 0.75rem 1.5rem;
- border-radius: 0.5rem;
- text-decoration: none;
- transition: background 0.2s;
-}
-
-.download-link a:hover {
- background: #15803d;
-}
-
-.table-scroll {
- width: 100%;
- overflow-x: auto;
-}
-
-.price-table {
- min-width: 540px;
- width: 100%;
- border-collapse: collapse;
- margin: 1rem 0 0.5rem 0;
- font-size: 0.95rem;
- background: #f8fafc;
- border-radius: 0.4rem;
- overflow: hidden;
- box-shadow: 0 1px 4px rgba(30, 64, 175, 0.04);
-}
-.price-table th,
-.price-table td {
- border: 1px solid #dbeafe;
- padding: 0.5em 0.7em;
- text-align: left;
- vertical-align: middle;
-}
-.price-table th {
- background: #e0e7ef;
- color: #1e293b;
- font-weight: 600;
-}
-.price-table tr:nth-child(even) td {
- background: #f1f5f9;
-}
-.price-table td {
- color: #334155;
- line-height: 1.5;
-}
diff --git a/svelte.config.js b/svelte.config.js
new file mode 100644
index 0000000..4988bb8
--- /dev/null
+++ b/svelte.config.js
@@ -0,0 +1,14 @@
+import adapter from "@sveltejs/adapter-static";
+
+/** @type {import("@sveltejs/kit").Config} */
+const config = {
+ kit: {
+ adapter: adapter({
+ assets: "build",
+ pages: "build",
+ strict: true,
+ }),
+ },
+};
+
+export default config;
diff --git a/tsconfig.json b/tsconfig.json
index 1aeeb8b..4c8c9ab 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -1,24 +1,13 @@
{
+ "extends": "./.svelte-kit/tsconfig.json",
"compilerOptions": {
- "target": "ES2020",
- "useDefineForClassFields": true,
- "module": "ESNext",
- "lib": ["ES2020", "DOM", "DOM.Iterable"],
- "skipLibCheck": true,
-
- /* Bundler mode */
- "moduleResolution": "bundler",
- "allowImportingTsExtensions": true,
- "isolatedModules": true,
- "moduleDetection": "force",
- "noEmit": true,
-
- /* Linting */
- "strict": true,
+ "esModuleInterop": true,
+ "forceConsistentCasingInFileNames": true,
+ "noFallthroughCasesInSwitch": true,
+ "noUncheckedSideEffectImports": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
- "noFallthroughCasesInSwitch": true,
- "noUncheckedSideEffectImports": true
- },
- "include": ["src"]
+ "skipLibCheck": true,
+ "strict": true
+ }
}
diff --git a/vite.config.ts b/vite.config.ts
index 5b843a5..6b9eb5d 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -1,17 +1,6 @@
-import { defineConfig, loadEnv } from "vite";
-import sitemap from "vite-plugin-sitemap";
+import { sveltekit } from "@sveltejs/kit/vite";
+import { defineConfig } from "vite";
-export default defineConfig(({ mode }) => {
- const env = loadEnv(mode, process.cwd());
- const siteUrl = env.VITE_SITE_URL || "https://a4toa3.pages.dev";
- return {
- plugins: [
- sitemap({
- hostname: siteUrl,
- dynamicRoutes: ["/"],
- readable: true,
- outDir: "dist",
- }),
- ],
- };
+export default defineConfig({
+ plugins: [sveltekit()],
});
From cd9ffed23d076d63e648c99d62d8f6f6b75e9c9e Mon Sep 17 00:00:00 2001
From: Hashory <89839285+Hashory@users.noreply.github.com>
Date: Sun, 12 Apr 2026 02:06:40 +0900
Subject: [PATCH 2/2] Update package.json
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---
package.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/package.json b/package.json
index 6b92226..eb99b33 100644
--- a/package.json
+++ b/package.json
@@ -32,7 +32,7 @@
"vitest": "^4.1.4"
},
"engines": {
- "node": ">=22",
+ "node": ">=22.12.0",
"pnpm": ">=10.33.0"
},
"packageManager": "pnpm@10.33.0"