diff --git a/.eslintrc.json b/.eslintrc.json
deleted file mode 100644
index bffb357..0000000
--- a/.eslintrc.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "extends": "next/core-web-vitals"
-}
diff --git a/eslint.config.mjs b/eslint.config.mjs
new file mode 100644
index 0000000..f0e8a93
--- /dev/null
+++ b/eslint.config.mjs
@@ -0,0 +1,30 @@
+import { dirname } from "path";
+import { fileURLToPath } from "url";
+import { FlatCompat } from "@eslint/eslintrc";
+
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = dirname(__filename);
+
+const compat = new FlatCompat({
+ baseDirectory: __dirname,
+});
+
+const eslintConfig = [
+ ...compat.config({
+ extends: ["next/core-web-vitals", "next/typescript", "prettier"],
+ ignorePatterns: ["**/node_modules/**", "**/.next/**", "storage/**"],
+ rules: {
+ "react-refresh/only-export-components": "off", // Disabled the rule
+ "@typescript-eslint/no-unused-vars": [
+ "warn",
+ {
+ argsIgnorePattern: "^_|error",
+ varsIgnorePattern: "^_|error",
+ },
+ ],
+ "jsx-a11y/no-access-key": "off",
+ },
+ }),
+];
+
+export default eslintConfig;
diff --git a/package.json b/package.json
index 87ec535..052c5a6 100644
--- a/package.json
+++ b/package.json
@@ -9,7 +9,7 @@
"build": "next build",
"startNoSocket": "next start",
"start": "NODE_ENV=production node src/websocket.js",
- "lint": "tsc && next lint",
+ "lint": "eslint . --config eslint.config.mjs && tsc && next lint",
"test": "vitest"
},
"dependencies": {
@@ -23,6 +23,7 @@
"@trpc/server": "11.4.3",
"@trpc/tanstack-react-query": "^11.4.3",
"@types/ws": "^8.18.1",
+ "@typescript-eslint/parser": "^8.37.0",
"chokidar": "^4.0.3",
"dotenv": "^17.0.1",
"form-data": "^4.0.3",
@@ -37,8 +38,10 @@
"zod": "^3.25.75"
},
"devDependencies": {
+ "@eslint/eslintrc": "^3",
"@monaco-editor/loader": "^1.5.0",
"@monaco-editor/react": "^4.7.0",
+ "@next/eslint-plugin-next": "^15.3.5",
"@testing-library/dom": "^10.4.0",
"@testing-library/react": "^16.3.0",
"@types/node": "^24.0.10",
@@ -48,6 +51,8 @@
"axios": "^1.10.0",
"eslint": "^9.30.1",
"eslint-config-next": "^15.3.5",
+ "eslint-config-prettier": "^10.1.5",
+ "eslint-plugin-react-hooks": "^5.2.0",
"isomorphic-dompurify": "^2.26.0",
"marked": "^16.0.0",
"monaco-editor": "^0.52.2",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 3235de5..223bb6e 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -16,34 +16,37 @@ importers:
version: 4.1.11
'@tanstack/react-query':
specifier: ^5.81.5
- version: 5.81.5(react@19.1.0)
+ version: 5.83.0(react@19.1.0)
'@tanstack/react-query-devtools':
specifier: ^5.81.5
- version: 5.81.5(@tanstack/react-query@5.81.5(react@19.1.0))(react@19.1.0)
+ version: 5.83.0(@tanstack/react-query@5.83.0(react@19.1.0))(react@19.1.0)
'@trpc/client':
specifier: 11.4.3
version: 11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3)
'@trpc/next':
specifier: ^11.4.3
- version: 11.4.3(@tanstack/react-query@5.81.5(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/react-query@11.4.3(@tanstack/react-query@5.81.5(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(next@15.3.5(@babel/core@7.28.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)
+ version: 11.4.3(@tanstack/react-query@5.83.0(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/react-query@11.4.3(@tanstack/react-query@5.83.0(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(next@15.3.5(@babel/core@7.28.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)
'@trpc/react-query':
specifier: 11.4.3
- version: 11.4.3(@tanstack/react-query@5.81.5(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)
+ version: 11.4.3(@tanstack/react-query@5.83.0(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)
'@trpc/server':
specifier: 11.4.3
version: 11.4.3(typescript@5.8.3)
'@trpc/tanstack-react-query':
specifier: ^11.4.3
- version: 11.4.3(@tanstack/react-query@5.81.5(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)
+ version: 11.4.3(@tanstack/react-query@5.83.0(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)
'@types/ws':
specifier: ^8.18.1
version: 8.18.1
+ '@typescript-eslint/parser':
+ specifier: ^8.37.0
+ version: 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
chokidar:
specifier: ^4.0.3
version: 4.0.3
dotenv:
specifier: ^17.0.1
- version: 17.0.1
+ version: 17.2.0
form-data:
specifier: ^4.0.3
version: 4.0.3
@@ -52,7 +55,7 @@ importers:
version: 26.1.0
marked-katex-extension:
specifier: ^5.1.5
- version: 5.1.5(katex@0.16.20)(marked@16.0.0)
+ version: 5.1.5(katex@0.16.22)(marked@16.0.0)
next:
specifier: ^15.3.5
version: 15.3.5(@babel/core@7.28.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
@@ -73,14 +76,20 @@ importers:
version: 8.18.3
zod:
specifier: ^3.25.75
- version: 3.25.75
+ version: 3.25.76
devDependencies:
+ '@eslint/eslintrc':
+ specifier: ^3
+ version: 3.3.1
'@monaco-editor/loader':
specifier: ^1.5.0
version: 1.5.0
'@monaco-editor/react':
specifier: ^4.7.0
version: 4.7.0(monaco-editor@0.52.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
+ '@next/eslint-plugin-next':
+ specifier: ^15.3.5
+ version: 15.3.5
'@testing-library/dom':
specifier: ^10.4.0
version: 10.4.0
@@ -89,7 +98,7 @@ importers:
version: 16.3.0(@testing-library/dom@10.4.0)(@types/react-dom@19.1.6(@types/react@19.1.8))(@types/react@19.1.8)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
'@types/node':
specifier: ^24.0.10
- version: 24.0.10
+ version: 24.0.13
'@types/react':
specifier: ^19.1.8
version: 19.1.8
@@ -98,16 +107,22 @@ importers:
version: 19.1.6(@types/react@19.1.8)
'@vitejs/plugin-react':
specifier: ^4.6.0
- version: 4.6.0(vite@5.4.19(@types/node@24.0.10)(lightningcss@1.30.1))
+ version: 4.6.0(vite@7.0.4(@types/node@24.0.13)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0))
axios:
specifier: ^1.10.0
version: 1.10.0
eslint:
specifier: ^9.30.1
- version: 9.30.1(jiti@2.4.2)
+ version: 9.31.0(jiti@2.4.2)
eslint-config-next:
specifier: ^15.3.5
- version: 15.3.5(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3)
+ version: 15.3.5(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
+ eslint-config-prettier:
+ specifier: ^10.1.5
+ version: 10.1.5(eslint@9.31.0(jiti@2.4.2))
+ eslint-plugin-react-hooks:
+ specifier: ^5.2.0
+ version: 5.2.0(eslint@9.31.0(jiti@2.4.2))
isomorphic-dompurify:
specifier: ^2.26.0
version: 2.26.0
@@ -137,7 +152,7 @@ importers:
version: 5.8.3
vitest:
specifier: ^3.2.4
- version: 3.2.4(@types/node@24.0.10)(jsdom@26.1.0)(lightningcss@1.30.1)
+ version: 3.2.4(@types/node@24.0.13)(jiti@2.4.2)(jsdom@26.1.0)(lightningcss@1.30.1)(yaml@2.8.0)
yaml:
specifier: ^2.8.0
version: 2.8.0
@@ -238,8 +253,8 @@ packages:
resolution: {integrity: sha512-mGe7UK5wWyh0bKRfupsUchrQGqvDbZDbKJw+kcRGSmdHVYrv+ltd0pnpDTVpiTqnaBru9iEvA8pz8W46v0Amwg==}
engines: {node: '>=6.9.0'}
- '@babel/types@7.28.0':
- resolution: {integrity: sha512-jYnje+JyZG5YThjHiF28oT4SIZLnYOcSBb6+SDaFIyzDVSkXQmQQYclJ2R+YxcdmK0AX6x1E5OQNtuh3jHDrUg==}
+ '@babel/types@7.28.1':
+ resolution: {integrity: sha512-x0LvFTekgSX+83TI28Y9wYPUfzrnl2aT5+5QLnO6v7mSJYtEEevuDRN0F0uSHRk1G1IWZC43o00Y0xDDrpBGPQ==}
engines: {node: '>=6.9.0'}
'@csstools/color-helpers@5.0.2':
@@ -279,141 +294,159 @@ packages:
'@emnapi/wasi-threads@1.0.3':
resolution: {integrity: sha512-8K5IFFsQqF9wQNJptGbS6FNKgUTsSRYnTqNCG1vPP8jFdjSv18n2mQfJpkt2Oibo9iBEzcDnDxNwKTzC7svlJw==}
- '@esbuild/aix-ppc64@0.21.5':
- resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
- engines: {node: '>=12'}
+ '@esbuild/aix-ppc64@0.25.6':
+ resolution: {integrity: sha512-ShbM/3XxwuxjFiuVBHA+d3j5dyac0aEVVq1oluIDf71hUw0aRF59dV/efUsIwFnR6m8JNM2FjZOzmaZ8yG61kw==}
+ engines: {node: '>=18'}
cpu: [ppc64]
os: [aix]
- '@esbuild/android-arm64@0.21.5':
- resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==}
- engines: {node: '>=12'}
+ '@esbuild/android-arm64@0.25.6':
+ resolution: {integrity: sha512-hd5zdUarsK6strW+3Wxi5qWws+rJhCCbMiC9QZyzoxfk5uHRIE8T287giQxzVpEvCwuJ9Qjg6bEjcRJcgfLqoA==}
+ engines: {node: '>=18'}
cpu: [arm64]
os: [android]
- '@esbuild/android-arm@0.21.5':
- resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==}
- engines: {node: '>=12'}
+ '@esbuild/android-arm@0.25.6':
+ resolution: {integrity: sha512-S8ToEOVfg++AU/bHwdksHNnyLyVM+eMVAOf6yRKFitnwnbwwPNqKr3srzFRe7nzV69RQKb5DgchIX5pt3L53xg==}
+ engines: {node: '>=18'}
cpu: [arm]
os: [android]
- '@esbuild/android-x64@0.21.5':
- resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==}
- engines: {node: '>=12'}
+ '@esbuild/android-x64@0.25.6':
+ resolution: {integrity: sha512-0Z7KpHSr3VBIO9A/1wcT3NTy7EB4oNC4upJ5ye3R7taCc2GUdeynSLArnon5G8scPwaU866d3H4BCrE5xLW25A==}
+ engines: {node: '>=18'}
cpu: [x64]
os: [android]
- '@esbuild/darwin-arm64@0.21.5':
- resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==}
- engines: {node: '>=12'}
+ '@esbuild/darwin-arm64@0.25.6':
+ resolution: {integrity: sha512-FFCssz3XBavjxcFxKsGy2DYK5VSvJqa6y5HXljKzhRZ87LvEi13brPrf/wdyl/BbpbMKJNOr1Sd0jtW4Ge1pAA==}
+ engines: {node: '>=18'}
cpu: [arm64]
os: [darwin]
- '@esbuild/darwin-x64@0.21.5':
- resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==}
- engines: {node: '>=12'}
+ '@esbuild/darwin-x64@0.25.6':
+ resolution: {integrity: sha512-GfXs5kry/TkGM2vKqK2oyiLFygJRqKVhawu3+DOCk7OxLy/6jYkWXhlHwOoTb0WqGnWGAS7sooxbZowy+pK9Yg==}
+ engines: {node: '>=18'}
cpu: [x64]
os: [darwin]
- '@esbuild/freebsd-arm64@0.21.5':
- resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==}
- engines: {node: '>=12'}
+ '@esbuild/freebsd-arm64@0.25.6':
+ resolution: {integrity: sha512-aoLF2c3OvDn2XDTRvn8hN6DRzVVpDlj2B/F66clWd/FHLiHaG3aVZjxQX2DYphA5y/evbdGvC6Us13tvyt4pWg==}
+ engines: {node: '>=18'}
cpu: [arm64]
os: [freebsd]
- '@esbuild/freebsd-x64@0.21.5':
- resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==}
- engines: {node: '>=12'}
+ '@esbuild/freebsd-x64@0.25.6':
+ resolution: {integrity: sha512-2SkqTjTSo2dYi/jzFbU9Plt1vk0+nNg8YC8rOXXea+iA3hfNJWebKYPs3xnOUf9+ZWhKAaxnQNUf2X9LOpeiMQ==}
+ engines: {node: '>=18'}
cpu: [x64]
os: [freebsd]
- '@esbuild/linux-arm64@0.21.5':
- resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==}
- engines: {node: '>=12'}
+ '@esbuild/linux-arm64@0.25.6':
+ resolution: {integrity: sha512-b967hU0gqKd9Drsh/UuAm21Khpoh6mPBSgz8mKRq4P5mVK8bpA+hQzmm/ZwGVULSNBzKdZPQBRT3+WuVavcWsQ==}
+ engines: {node: '>=18'}
cpu: [arm64]
os: [linux]
- '@esbuild/linux-arm@0.21.5':
- resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==}
- engines: {node: '>=12'}
+ '@esbuild/linux-arm@0.25.6':
+ resolution: {integrity: sha512-SZHQlzvqv4Du5PrKE2faN0qlbsaW/3QQfUUc6yO2EjFcA83xnwm91UbEEVx4ApZ9Z5oG8Bxz4qPE+HFwtVcfyw==}
+ engines: {node: '>=18'}
cpu: [arm]
os: [linux]
- '@esbuild/linux-ia32@0.21.5':
- resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==}
- engines: {node: '>=12'}
+ '@esbuild/linux-ia32@0.25.6':
+ resolution: {integrity: sha512-aHWdQ2AAltRkLPOsKdi3xv0mZ8fUGPdlKEjIEhxCPm5yKEThcUjHpWB1idN74lfXGnZ5SULQSgtr5Qos5B0bPw==}
+ engines: {node: '>=18'}
cpu: [ia32]
os: [linux]
- '@esbuild/linux-loong64@0.21.5':
- resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==}
- engines: {node: '>=12'}
+ '@esbuild/linux-loong64@0.25.6':
+ resolution: {integrity: sha512-VgKCsHdXRSQ7E1+QXGdRPlQ/e08bN6WMQb27/TMfV+vPjjTImuT9PmLXupRlC90S1JeNNW5lzkAEO/McKeJ2yg==}
+ engines: {node: '>=18'}
cpu: [loong64]
os: [linux]
- '@esbuild/linux-mips64el@0.21.5':
- resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==}
- engines: {node: '>=12'}
+ '@esbuild/linux-mips64el@0.25.6':
+ resolution: {integrity: sha512-WViNlpivRKT9/py3kCmkHnn44GkGXVdXfdc4drNmRl15zVQ2+D2uFwdlGh6IuK5AAnGTo2qPB1Djppj+t78rzw==}
+ engines: {node: '>=18'}
cpu: [mips64el]
os: [linux]
- '@esbuild/linux-ppc64@0.21.5':
- resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==}
- engines: {node: '>=12'}
+ '@esbuild/linux-ppc64@0.25.6':
+ resolution: {integrity: sha512-wyYKZ9NTdmAMb5730I38lBqVu6cKl4ZfYXIs31Baf8aoOtB4xSGi3THmDYt4BTFHk7/EcVixkOV2uZfwU3Q2Jw==}
+ engines: {node: '>=18'}
cpu: [ppc64]
os: [linux]
- '@esbuild/linux-riscv64@0.21.5':
- resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==}
- engines: {node: '>=12'}
+ '@esbuild/linux-riscv64@0.25.6':
+ resolution: {integrity: sha512-KZh7bAGGcrinEj4qzilJ4hqTY3Dg2U82c8bv+e1xqNqZCrCyc+TL9AUEn5WGKDzm3CfC5RODE/qc96OcbIe33w==}
+ engines: {node: '>=18'}
cpu: [riscv64]
os: [linux]
- '@esbuild/linux-s390x@0.21.5':
- resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==}
- engines: {node: '>=12'}
+ '@esbuild/linux-s390x@0.25.6':
+ resolution: {integrity: sha512-9N1LsTwAuE9oj6lHMyyAM+ucxGiVnEqUdp4v7IaMmrwb06ZTEVCIs3oPPplVsnjPfyjmxwHxHMF8b6vzUVAUGw==}
+ engines: {node: '>=18'}
cpu: [s390x]
os: [linux]
- '@esbuild/linux-x64@0.21.5':
- resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==}
- engines: {node: '>=12'}
+ '@esbuild/linux-x64@0.25.6':
+ resolution: {integrity: sha512-A6bJB41b4lKFWRKNrWoP2LHsjVzNiaurf7wyj/XtFNTsnPuxwEBWHLty+ZE0dWBKuSK1fvKgrKaNjBS7qbFKig==}
+ engines: {node: '>=18'}
cpu: [x64]
os: [linux]
- '@esbuild/netbsd-x64@0.21.5':
- resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==}
- engines: {node: '>=12'}
+ '@esbuild/netbsd-arm64@0.25.6':
+ resolution: {integrity: sha512-IjA+DcwoVpjEvyxZddDqBY+uJ2Snc6duLpjmkXm/v4xuS3H+3FkLZlDm9ZsAbF9rsfP3zeA0/ArNDORZgrxR/Q==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [netbsd]
+
+ '@esbuild/netbsd-x64@0.25.6':
+ resolution: {integrity: sha512-dUXuZr5WenIDlMHdMkvDc1FAu4xdWixTCRgP7RQLBOkkGgwuuzaGSYcOpW4jFxzpzL1ejb8yF620UxAqnBrR9g==}
+ engines: {node: '>=18'}
cpu: [x64]
os: [netbsd]
- '@esbuild/openbsd-x64@0.21.5':
- resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==}
- engines: {node: '>=12'}
+ '@esbuild/openbsd-arm64@0.25.6':
+ resolution: {integrity: sha512-l8ZCvXP0tbTJ3iaqdNf3pjaOSd5ex/e6/omLIQCVBLmHTlfXW3zAxQ4fnDmPLOB1x9xrcSi/xtCWFwCZRIaEwg==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openbsd]
+
+ '@esbuild/openbsd-x64@0.25.6':
+ resolution: {integrity: sha512-hKrmDa0aOFOr71KQ/19JC7az1P0GWtCN1t2ahYAf4O007DHZt/dW8ym5+CUdJhQ/qkZmI1HAF8KkJbEFtCL7gw==}
+ engines: {node: '>=18'}
cpu: [x64]
os: [openbsd]
- '@esbuild/sunos-x64@0.21.5':
- resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==}
- engines: {node: '>=12'}
+ '@esbuild/openharmony-arm64@0.25.6':
+ resolution: {integrity: sha512-+SqBcAWoB1fYKmpWoQP4pGtx+pUUC//RNYhFdbcSA16617cchuryuhOCRpPsjCblKukAckWsV+aQ3UKT/RMPcA==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openharmony]
+
+ '@esbuild/sunos-x64@0.25.6':
+ resolution: {integrity: sha512-dyCGxv1/Br7MiSC42qinGL8KkG4kX0pEsdb0+TKhmJZgCUDBGmyo1/ArCjNGiOLiIAgdbWgmWgib4HoCi5t7kA==}
+ engines: {node: '>=18'}
cpu: [x64]
os: [sunos]
- '@esbuild/win32-arm64@0.21.5':
- resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==}
- engines: {node: '>=12'}
+ '@esbuild/win32-arm64@0.25.6':
+ resolution: {integrity: sha512-42QOgcZeZOvXfsCBJF5Afw73t4veOId//XD3i+/9gSkhSV6Gk3VPlWncctI+JcOyERv85FUo7RxuxGy+z8A43Q==}
+ engines: {node: '>=18'}
cpu: [arm64]
os: [win32]
- '@esbuild/win32-ia32@0.21.5':
- resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==}
- engines: {node: '>=12'}
+ '@esbuild/win32-ia32@0.25.6':
+ resolution: {integrity: sha512-4AWhgXmDuYN7rJI6ORB+uU9DHLq/erBbuMoAuB4VWJTu5KtCgcKYPynF0YI1VkBNuEfjNlLrFr9KZPJzrtLkrQ==}
+ engines: {node: '>=18'}
cpu: [ia32]
os: [win32]
- '@esbuild/win32-x64@0.21.5':
- resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==}
- engines: {node: '>=12'}
+ '@esbuild/win32-x64@0.25.6':
+ resolution: {integrity: sha512-NgJPHHbEpLQgDH2MjQu90pzW/5vvXIZ7KOnPyNBm92A6WgZ/7b6fJyUBjoumLqeOQQGqY2QjQxRo97ah4Sj0cA==}
+ engines: {node: '>=18'}
cpu: [x64]
os: [win32]
@@ -435,10 +468,6 @@ packages:
resolution: {integrity: sha512-ViuymvFmcJi04qdZeDc2whTHryouGcDlaxPqarTD0ZE10ISpxGUVZGZDx4w01upyIynL3iu6IXH2bS1NhclQMw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@eslint/core@0.14.0':
- resolution: {integrity: sha512-qIbV0/JZr7iSDjqAc60IqbLdsj9GDt16xQtWD+B78d/HAlvysGdZZ6rpJHGAc2T0FQx1X6thsSPdnoiGKdNtdg==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
-
'@eslint/core@0.15.1':
resolution: {integrity: sha512-bkOp+iumZCCbt1K1CmWf0R9pM5yKpDv+ZXtvSyQpudrI9kuFLp+bM2WOPXImuD/ceQuaa8f5pj93Y7zyECIGNA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -447,8 +476,8 @@ packages:
resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@eslint/js@9.30.1':
- resolution: {integrity: sha512-zXhuECFlyep42KZUhWjfvsmXGX39W8K8LFb8AWXM9gSV9dQB+MrJGLKvW6Zw0Ggnbpw0VHTtrhFXYe3Gym18jg==}
+ '@eslint/js@9.31.0':
+ resolution: {integrity: sha512-LOm5OVt7D4qiKCqoiPbA7LWmI+tbw1VbTUowBcUMgQSuM6poJufkFkYDcQpo5KfgD39TnNySV26QjOh7VFpSyw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/object-schema@2.1.6':
@@ -479,118 +508,124 @@ packages:
resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==}
engines: {node: '>=18.18'}
- '@img/sharp-darwin-arm64@0.34.2':
- resolution: {integrity: sha512-OfXHZPppddivUJnqyKoi5YVeHRkkNE2zUFT2gbpKxp/JZCFYEYubnMg+gOp6lWfasPrTS+KPosKqdI+ELYVDtg==}
+ '@img/sharp-darwin-arm64@0.34.3':
+ resolution: {integrity: sha512-ryFMfvxxpQRsgZJqBd4wsttYQbCxsJksrv9Lw/v798JcQ8+w84mBWuXwl+TT0WJ/WrYOLaYpwQXi3sA9nTIaIg==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm64]
os: [darwin]
- '@img/sharp-darwin-x64@0.34.2':
- resolution: {integrity: sha512-dYvWqmjU9VxqXmjEtjmvHnGqF8GrVjM2Epj9rJ6BUIXvk8slvNDJbhGFvIoXzkDhrJC2jUxNLz/GUjjvSzfw+g==}
+ '@img/sharp-darwin-x64@0.34.3':
+ resolution: {integrity: sha512-yHpJYynROAj12TA6qil58hmPmAwxKKC7reUqtGLzsOHfP7/rniNGTL8tjWX6L3CTV4+5P4ypcS7Pp+7OB+8ihA==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [x64]
os: [darwin]
- '@img/sharp-libvips-darwin-arm64@1.1.0':
- resolution: {integrity: sha512-HZ/JUmPwrJSoM4DIQPv/BfNh9yrOA8tlBbqbLz4JZ5uew2+o22Ik+tHQJcih7QJuSa0zo5coHTfD5J8inqj9DA==}
+ '@img/sharp-libvips-darwin-arm64@1.2.0':
+ resolution: {integrity: sha512-sBZmpwmxqwlqG9ueWFXtockhsxefaV6O84BMOrhtg/YqbTaRdqDE7hxraVE3y6gVM4eExmfzW4a8el9ArLeEiQ==}
cpu: [arm64]
os: [darwin]
- '@img/sharp-libvips-darwin-x64@1.1.0':
- resolution: {integrity: sha512-Xzc2ToEmHN+hfvsl9wja0RlnXEgpKNmftriQp6XzY/RaSfwD9th+MSh0WQKzUreLKKINb3afirxW7A0fz2YWuQ==}
+ '@img/sharp-libvips-darwin-x64@1.2.0':
+ resolution: {integrity: sha512-M64XVuL94OgiNHa5/m2YvEQI5q2cl9d/wk0qFTDVXcYzi43lxuiFTftMR1tOnFQovVXNZJ5TURSDK2pNe9Yzqg==}
cpu: [x64]
os: [darwin]
- '@img/sharp-libvips-linux-arm64@1.1.0':
- resolution: {integrity: sha512-IVfGJa7gjChDET1dK9SekxFFdflarnUB8PwW8aGwEoF3oAsSDuNUTYS+SKDOyOJxQyDC1aPFMuRYLoDInyV9Ew==}
+ '@img/sharp-libvips-linux-arm64@1.2.0':
+ resolution: {integrity: sha512-RXwd0CgG+uPRX5YYrkzKyalt2OJYRiJQ8ED/fi1tq9WQW2jsQIn0tqrlR5l5dr/rjqq6AHAxURhj2DVjyQWSOA==}
cpu: [arm64]
os: [linux]
- '@img/sharp-libvips-linux-arm@1.1.0':
- resolution: {integrity: sha512-s8BAd0lwUIvYCJyRdFqvsj+BJIpDBSxs6ivrOPm/R7piTs5UIwY5OjXrP2bqXC9/moGsyRa37eYWYCOGVXxVrA==}
+ '@img/sharp-libvips-linux-arm@1.2.0':
+ resolution: {integrity: sha512-mWd2uWvDtL/nvIzThLq3fr2nnGfyr/XMXlq8ZJ9WMR6PXijHlC3ksp0IpuhK6bougvQrchUAfzRLnbsen0Cqvw==}
cpu: [arm]
os: [linux]
- '@img/sharp-libvips-linux-ppc64@1.1.0':
- resolution: {integrity: sha512-tiXxFZFbhnkWE2LA8oQj7KYR+bWBkiV2nilRldT7bqoEZ4HiDOcePr9wVDAZPi/Id5fT1oY9iGnDq20cwUz8lQ==}
+ '@img/sharp-libvips-linux-ppc64@1.2.0':
+ resolution: {integrity: sha512-Xod/7KaDDHkYu2phxxfeEPXfVXFKx70EAFZ0qyUdOjCcxbjqyJOEUpDe6RIyaunGxT34Anf9ue/wuWOqBW2WcQ==}
cpu: [ppc64]
os: [linux]
- '@img/sharp-libvips-linux-s390x@1.1.0':
- resolution: {integrity: sha512-xukSwvhguw7COyzvmjydRb3x/09+21HykyapcZchiCUkTThEQEOMtBj9UhkaBRLuBrgLFzQ2wbxdeCCJW/jgJA==}
+ '@img/sharp-libvips-linux-s390x@1.2.0':
+ resolution: {integrity: sha512-eMKfzDxLGT8mnmPJTNMcjfO33fLiTDsrMlUVcp6b96ETbnJmd4uvZxVJSKPQfS+odwfVaGifhsB07J1LynFehw==}
cpu: [s390x]
os: [linux]
- '@img/sharp-libvips-linux-x64@1.1.0':
- resolution: {integrity: sha512-yRj2+reB8iMg9W5sULM3S74jVS7zqSzHG3Ol/twnAAkAhnGQnpjj6e4ayUz7V+FpKypwgs82xbRdYtchTTUB+Q==}
+ '@img/sharp-libvips-linux-x64@1.2.0':
+ resolution: {integrity: sha512-ZW3FPWIc7K1sH9E3nxIGB3y3dZkpJlMnkk7z5tu1nSkBoCgw2nSRTFHI5pB/3CQaJM0pdzMF3paf9ckKMSE9Tg==}
cpu: [x64]
os: [linux]
- '@img/sharp-libvips-linuxmusl-arm64@1.1.0':
- resolution: {integrity: sha512-jYZdG+whg0MDK+q2COKbYidaqW/WTz0cc1E+tMAusiDygrM4ypmSCjOJPmFTvHHJ8j/6cAGyeDWZOsK06tP33w==}
+ '@img/sharp-libvips-linuxmusl-arm64@1.2.0':
+ resolution: {integrity: sha512-UG+LqQJbf5VJ8NWJ5Z3tdIe/HXjuIdo4JeVNADXBFuG7z9zjoegpzzGIyV5zQKi4zaJjnAd2+g2nna8TZvuW9Q==}
cpu: [arm64]
os: [linux]
- '@img/sharp-libvips-linuxmusl-x64@1.1.0':
- resolution: {integrity: sha512-wK7SBdwrAiycjXdkPnGCPLjYb9lD4l6Ze2gSdAGVZrEL05AOUJESWU2lhlC+Ffn5/G+VKuSm6zzbQSzFX/P65A==}
+ '@img/sharp-libvips-linuxmusl-x64@1.2.0':
+ resolution: {integrity: sha512-SRYOLR7CXPgNze8akZwjoGBoN1ThNZoqpOgfnOxmWsklTGVfJiGJoC/Lod7aNMGA1jSsKWM1+HRX43OP6p9+6Q==}
cpu: [x64]
os: [linux]
- '@img/sharp-linux-arm64@0.34.2':
- resolution: {integrity: sha512-D8n8wgWmPDakc83LORcfJepdOSN6MvWNzzz2ux0MnIbOqdieRZwVYY32zxVx+IFUT8er5KPcyU3XXsn+GzG/0Q==}
+ '@img/sharp-linux-arm64@0.34.3':
+ resolution: {integrity: sha512-QdrKe3EvQrqwkDrtuTIjI0bu6YEJHTgEeqdzI3uWJOH6G1O8Nl1iEeVYRGdj1h5I21CqxSvQp1Yv7xeU3ZewbA==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm64]
os: [linux]
- '@img/sharp-linux-arm@0.34.2':
- resolution: {integrity: sha512-0DZzkvuEOqQUP9mo2kjjKNok5AmnOr1jB2XYjkaoNRwpAYMDzRmAqUIa1nRi58S2WswqSfPOWLNOr0FDT3H5RQ==}
+ '@img/sharp-linux-arm@0.34.3':
+ resolution: {integrity: sha512-oBK9l+h6KBN0i3dC8rYntLiVfW8D8wH+NPNT3O/WBHeW0OQWCjfWksLUaPidsrDKpJgXp3G3/hkmhptAW0I3+A==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm]
os: [linux]
- '@img/sharp-linux-s390x@0.34.2':
- resolution: {integrity: sha512-EGZ1xwhBI7dNISwxjChqBGELCWMGDvmxZXKjQRuqMrakhO8QoMgqCrdjnAqJq/CScxfRn+Bb7suXBElKQpPDiw==}
+ '@img/sharp-linux-ppc64@0.34.3':
+ resolution: {integrity: sha512-GLtbLQMCNC5nxuImPR2+RgrviwKwVql28FWZIW1zWruy6zLgA5/x2ZXk3mxj58X/tszVF69KK0Is83V8YgWhLA==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [ppc64]
+ os: [linux]
+
+ '@img/sharp-linux-s390x@0.34.3':
+ resolution: {integrity: sha512-3gahT+A6c4cdc2edhsLHmIOXMb17ltffJlxR0aC2VPZfwKoTGZec6u5GrFgdR7ciJSsHT27BD3TIuGcuRT0KmQ==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [s390x]
os: [linux]
- '@img/sharp-linux-x64@0.34.2':
- resolution: {integrity: sha512-sD7J+h5nFLMMmOXYH4DD9UtSNBD05tWSSdWAcEyzqW8Cn5UxXvsHAxmxSesYUsTOBmUnjtxghKDl15EvfqLFbQ==}
+ '@img/sharp-linux-x64@0.34.3':
+ resolution: {integrity: sha512-8kYso8d806ypnSq3/Ly0QEw90V5ZoHh10yH0HnrzOCr6DKAPI6QVHvwleqMkVQ0m+fc7EH8ah0BB0QPuWY6zJQ==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [x64]
os: [linux]
- '@img/sharp-linuxmusl-arm64@0.34.2':
- resolution: {integrity: sha512-NEE2vQ6wcxYav1/A22OOxoSOGiKnNmDzCYFOZ949xFmrWZOVII1Bp3NqVVpvj+3UeHMFyN5eP/V5hzViQ5CZNA==}
+ '@img/sharp-linuxmusl-arm64@0.34.3':
+ resolution: {integrity: sha512-vAjbHDlr4izEiXM1OTggpCcPg9tn4YriK5vAjowJsHwdBIdx0fYRsURkxLG2RLm9gyBq66gwtWI8Gx0/ov+JKQ==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm64]
os: [linux]
- '@img/sharp-linuxmusl-x64@0.34.2':
- resolution: {integrity: sha512-DOYMrDm5E6/8bm/yQLCWyuDJwUnlevR8xtF8bs+gjZ7cyUNYXiSf/E8Kp0Ss5xasIaXSHzb888V1BE4i1hFhAA==}
+ '@img/sharp-linuxmusl-x64@0.34.3':
+ resolution: {integrity: sha512-gCWUn9547K5bwvOn9l5XGAEjVTTRji4aPTqLzGXHvIr6bIDZKNTA34seMPgM0WmSf+RYBH411VavCejp3PkOeQ==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [x64]
os: [linux]
- '@img/sharp-wasm32@0.34.2':
- resolution: {integrity: sha512-/VI4mdlJ9zkaq53MbIG6rZY+QRN3MLbR6usYlgITEzi4Rpx5S6LFKsycOQjkOGmqTNmkIdLjEvooFKwww6OpdQ==}
+ '@img/sharp-wasm32@0.34.3':
+ resolution: {integrity: sha512-+CyRcpagHMGteySaWos8IbnXcHgfDn7pO2fiC2slJxvNq9gDipYBN42/RagzctVRKgxATmfqOSulgZv5e1RdMg==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [wasm32]
- '@img/sharp-win32-arm64@0.34.2':
- resolution: {integrity: sha512-cfP/r9FdS63VA5k0xiqaNaEoGxBg9k7uE+RQGzuK9fHt7jib4zAVVseR9LsE4gJcNWgT6APKMNnCcnyOtmSEUQ==}
+ '@img/sharp-win32-arm64@0.34.3':
+ resolution: {integrity: sha512-MjnHPnbqMXNC2UgeLJtX4XqoVHHlZNd+nPt1kRPmj63wURegwBhZlApELdtxM2OIZDRv/DFtLcNhVbd1z8GYXQ==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm64]
os: [win32]
- '@img/sharp-win32-ia32@0.34.2':
- resolution: {integrity: sha512-QLjGGvAbj0X/FXl8n1WbtQ6iVBpWU7JO94u/P2M4a8CFYsvQi4GW2mRy/JqkRx0qpBzaOdKJKw8uc930EX2AHw==}
+ '@img/sharp-win32-ia32@0.34.3':
+ resolution: {integrity: sha512-xuCdhH44WxuXgOM714hn4amodJMZl3OEvf0GVTm0BEyMeA2to+8HEdRPShH0SLYptJY1uBw+SCFP9WVQi1Q/cw==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [ia32]
os: [win32]
- '@img/sharp-win32-x64@0.34.2':
- resolution: {integrity: sha512-aUdT6zEYtDKCaxkofmmJDJYGCf0+pJg3eU9/oBuqvEeoB9dKI6ZLc/1iLJCTuJQDO4ptntAlkUmHgGjyuobZbw==}
+ '@img/sharp-win32-x64@0.34.3':
+ resolution: {integrity: sha512-OWwz05d++TxzLEv4VnsTz5CmZ6mI6S05sfQGEMrNrQcOEERbX46332IvE7pO/EUiw7jUrrS40z/M7kPyjfl04g==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [x64]
os: [win32]
@@ -622,8 +657,8 @@ packages:
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
- '@napi-rs/wasm-runtime@0.2.11':
- resolution: {integrity: sha512-9DPkXtvHydrcOsopiYpUgPHpmj0HWZKMUnL2dZqpvC42lsratuBG06V5ipyno0fUek5VlFsNQ+AcFATSrJXgMA==}
+ '@napi-rs/wasm-runtime@0.2.12':
+ resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==}
'@next/env@15.3.5':
resolution: {integrity: sha512-7g06v8BUVtN2njAX/r8gheoVffhiKFVt4nx74Tt6G4Hqw9HCLYQVx/GkH2qHvPtAHZaUNZ0VXAa0pQP6v1wk7g==}
@@ -698,103 +733,103 @@ packages:
'@rolldown/pluginutils@1.0.0-beta.19':
resolution: {integrity: sha512-3FL3mnMbPu0muGOCaKAhhFEYmqv9eTfPSJRJmANrCwtgK8VuxpsZDGK+m0LYAGoyO8+0j5uRe4PeyPDK1yA/hA==}
- '@rollup/rollup-android-arm-eabi@4.44.2':
- resolution: {integrity: sha512-g0dF8P1e2QYPOj1gu7s/3LVP6kze9A7m6x0BZ9iTdXK8N5c2V7cpBKHV3/9A4Zd8xxavdhK0t4PnqjkqVmUc9Q==}
+ '@rollup/rollup-android-arm-eabi@4.45.0':
+ resolution: {integrity: sha512-2o/FgACbji4tW1dzXOqAV15Eu7DdgbKsF2QKcxfG4xbh5iwU7yr5RRP5/U+0asQliSYv5M4o7BevlGIoSL0LXg==}
cpu: [arm]
os: [android]
- '@rollup/rollup-android-arm64@4.44.2':
- resolution: {integrity: sha512-Yt5MKrOosSbSaAK5Y4J+vSiID57sOvpBNBR6K7xAaQvk3MkcNVV0f9fE20T+41WYN8hDn6SGFlFrKudtx4EoxA==}
+ '@rollup/rollup-android-arm64@4.45.0':
+ resolution: {integrity: sha512-PSZ0SvMOjEAxwZeTx32eI/j5xSYtDCRxGu5k9zvzoY77xUNssZM+WV6HYBLROpY5CkXsbQjvz40fBb7WPwDqtQ==}
cpu: [arm64]
os: [android]
- '@rollup/rollup-darwin-arm64@4.44.2':
- resolution: {integrity: sha512-EsnFot9ZieM35YNA26nhbLTJBHD0jTwWpPwmRVDzjylQT6gkar+zenfb8mHxWpRrbn+WytRRjE0WKsfaxBkVUA==}
+ '@rollup/rollup-darwin-arm64@4.45.0':
+ resolution: {integrity: sha512-BA4yPIPssPB2aRAWzmqzQ3y2/KotkLyZukVB7j3psK/U3nVJdceo6qr9pLM2xN6iRP/wKfxEbOb1yrlZH6sYZg==}
cpu: [arm64]
os: [darwin]
- '@rollup/rollup-darwin-x64@4.44.2':
- resolution: {integrity: sha512-dv/t1t1RkCvJdWWxQ2lWOO+b7cMsVw5YFaS04oHpZRWehI1h0fV1gF4wgGCTyQHHjJDfbNpwOi6PXEafRBBezw==}
+ '@rollup/rollup-darwin-x64@4.45.0':
+ resolution: {integrity: sha512-Pr2o0lvTwsiG4HCr43Zy9xXrHspyMvsvEw4FwKYqhli4FuLE5FjcZzuQ4cfPe0iUFCvSQG6lACI0xj74FDZKRA==}
cpu: [x64]
os: [darwin]
- '@rollup/rollup-freebsd-arm64@4.44.2':
- resolution: {integrity: sha512-W4tt4BLorKND4qeHElxDoim0+BsprFTwb+vriVQnFFtT/P6v/xO5I99xvYnVzKWrK6j7Hb0yp3x7V5LUbaeOMg==}
+ '@rollup/rollup-freebsd-arm64@4.45.0':
+ resolution: {integrity: sha512-lYE8LkE5h4a/+6VnnLiL14zWMPnx6wNbDG23GcYFpRW1V9hYWHAw9lBZ6ZUIrOaoK7NliF1sdwYGiVmziUF4vA==}
cpu: [arm64]
os: [freebsd]
- '@rollup/rollup-freebsd-x64@4.44.2':
- resolution: {integrity: sha512-tdT1PHopokkuBVyHjvYehnIe20fxibxFCEhQP/96MDSOcyjM/shlTkZZLOufV3qO6/FQOSiJTBebhVc12JyPTA==}
+ '@rollup/rollup-freebsd-x64@4.45.0':
+ resolution: {integrity: sha512-PVQWZK9sbzpvqC9Q0GlehNNSVHR+4m7+wET+7FgSnKG3ci5nAMgGmr9mGBXzAuE5SvguCKJ6mHL6vq1JaJ/gvw==}
cpu: [x64]
os: [freebsd]
- '@rollup/rollup-linux-arm-gnueabihf@4.44.2':
- resolution: {integrity: sha512-+xmiDGGaSfIIOXMzkhJ++Oa0Gwvl9oXUeIiwarsdRXSe27HUIvjbSIpPxvnNsRebsNdUo7uAiQVgBD1hVriwSQ==}
+ '@rollup/rollup-linux-arm-gnueabihf@4.45.0':
+ resolution: {integrity: sha512-hLrmRl53prCcD+YXTfNvXd776HTxNh8wPAMllusQ+amcQmtgo3V5i/nkhPN6FakW+QVLoUUr2AsbtIRPFU3xIA==}
cpu: [arm]
os: [linux]
- '@rollup/rollup-linux-arm-musleabihf@4.44.2':
- resolution: {integrity: sha512-bDHvhzOfORk3wt8yxIra8N4k/N0MnKInCW5OGZaeDYa/hMrdPaJzo7CSkjKZqX4JFUWjUGm88lI6QJLCM7lDrA==}
+ '@rollup/rollup-linux-arm-musleabihf@4.45.0':
+ resolution: {integrity: sha512-XBKGSYcrkdiRRjl+8XvrUR3AosXU0NvF7VuqMsm7s5nRy+nt58ZMB19Jdp1RdqewLcaYnpk8zeVs/4MlLZEJxw==}
cpu: [arm]
os: [linux]
- '@rollup/rollup-linux-arm64-gnu@4.44.2':
- resolution: {integrity: sha512-NMsDEsDiYghTbeZWEGnNi4F0hSbGnsuOG+VnNvxkKg0IGDvFh7UVpM/14mnMwxRxUf9AdAVJgHPvKXf6FpMB7A==}
+ '@rollup/rollup-linux-arm64-gnu@4.45.0':
+ resolution: {integrity: sha512-fRvZZPUiBz7NztBE/2QnCS5AtqLVhXmUOPj9IHlfGEXkapgImf4W9+FSkL8cWqoAjozyUzqFmSc4zh2ooaeF6g==}
cpu: [arm64]
os: [linux]
- '@rollup/rollup-linux-arm64-musl@4.44.2':
- resolution: {integrity: sha512-lb5bxXnxXglVq+7imxykIp5xMq+idehfl+wOgiiix0191av84OqbjUED+PRC5OA8eFJYj5xAGcpAZ0pF2MnW+A==}
+ '@rollup/rollup-linux-arm64-musl@4.45.0':
+ resolution: {integrity: sha512-Btv2WRZOcUGi8XU80XwIvzTg4U6+l6D0V6sZTrZx214nrwxw5nAi8hysaXj/mctyClWgesyuxbeLylCBNauimg==}
cpu: [arm64]
os: [linux]
- '@rollup/rollup-linux-loongarch64-gnu@4.44.2':
- resolution: {integrity: sha512-Yl5Rdpf9pIc4GW1PmkUGHdMtbx0fBLE1//SxDmuf3X0dUC57+zMepow2LK0V21661cjXdTn8hO2tXDdAWAqE5g==}
+ '@rollup/rollup-linux-loongarch64-gnu@4.45.0':
+ resolution: {integrity: sha512-Li0emNnwtUZdLwHjQPBxn4VWztcrw/h7mgLyHiEI5Z0MhpeFGlzaiBHpSNVOMB/xucjXTTcO+dhv469Djr16KA==}
cpu: [loong64]
os: [linux]
- '@rollup/rollup-linux-powerpc64le-gnu@4.44.2':
- resolution: {integrity: sha512-03vUDH+w55s680YYryyr78jsO1RWU9ocRMaeV2vMniJJW/6HhoTBwyyiiTPVHNWLnhsnwcQ0oH3S9JSBEKuyqw==}
+ '@rollup/rollup-linux-powerpc64le-gnu@4.45.0':
+ resolution: {integrity: sha512-sB8+pfkYx2kvpDCfd63d5ScYT0Fz1LO6jIb2zLZvmK9ob2D8DeVqrmBDE0iDK8KlBVmsTNzrjr3G1xV4eUZhSw==}
cpu: [ppc64]
os: [linux]
- '@rollup/rollup-linux-riscv64-gnu@4.44.2':
- resolution: {integrity: sha512-iYtAqBg5eEMG4dEfVlkqo05xMOk6y/JXIToRca2bAWuqjrJYJlx/I7+Z+4hSrsWU8GdJDFPL4ktV3dy4yBSrzg==}
+ '@rollup/rollup-linux-riscv64-gnu@4.45.0':
+ resolution: {integrity: sha512-5GQ6PFhh7E6jQm70p1aW05G2cap5zMOvO0se5JMecHeAdj5ZhWEHbJ4hiKpfi1nnnEdTauDXxPgXae/mqjow9w==}
cpu: [riscv64]
os: [linux]
- '@rollup/rollup-linux-riscv64-musl@4.44.2':
- resolution: {integrity: sha512-e6vEbgaaqz2yEHqtkPXa28fFuBGmUJ0N2dOJK8YUfijejInt9gfCSA7YDdJ4nYlv67JfP3+PSWFX4IVw/xRIPg==}
+ '@rollup/rollup-linux-riscv64-musl@4.45.0':
+ resolution: {integrity: sha512-N/euLsBd1rekWcuduakTo/dJw6U6sBP3eUq+RXM9RNfPuWTvG2w/WObDkIvJ2KChy6oxZmOSC08Ak2OJA0UiAA==}
cpu: [riscv64]
os: [linux]
- '@rollup/rollup-linux-s390x-gnu@4.44.2':
- resolution: {integrity: sha512-evFOtkmVdY3udE+0QKrV5wBx7bKI0iHz5yEVx5WqDJkxp9YQefy4Mpx3RajIVcM6o7jxTvVd/qpC1IXUhGc1Mw==}
+ '@rollup/rollup-linux-s390x-gnu@4.45.0':
+ resolution: {integrity: sha512-2l9sA7d7QdikL0xQwNMO3xURBUNEWyHVHfAsHsUdq+E/pgLTUcCE+gih5PCdmyHmfTDeXUWVhqL0WZzg0nua3g==}
cpu: [s390x]
os: [linux]
- '@rollup/rollup-linux-x64-gnu@4.44.2':
- resolution: {integrity: sha512-/bXb0bEsWMyEkIsUL2Yt5nFB5naLAwyOWMEviQfQY1x3l5WsLKgvZf66TM7UTfED6erckUVUJQ/jJ1FSpm3pRQ==}
+ '@rollup/rollup-linux-x64-gnu@4.45.0':
+ resolution: {integrity: sha512-XZdD3fEEQcwG2KrJDdEQu7NrHonPxxaV0/w2HpvINBdcqebz1aL+0vM2WFJq4DeiAVT6F5SUQas65HY5JDqoPw==}
cpu: [x64]
os: [linux]
- '@rollup/rollup-linux-x64-musl@4.44.2':
- resolution: {integrity: sha512-3D3OB1vSSBXmkGEZR27uiMRNiwN08/RVAcBKwhUYPaiZ8bcvdeEwWPvbnXvvXHY+A/7xluzcN+kaiOFNiOZwWg==}
+ '@rollup/rollup-linux-x64-musl@4.45.0':
+ resolution: {integrity: sha512-7ayfgvtmmWgKWBkCGg5+xTQ0r5V1owVm67zTrsEY1008L5ro7mCyGYORomARt/OquB9KY7LpxVBZes+oSniAAQ==}
cpu: [x64]
os: [linux]
- '@rollup/rollup-win32-arm64-msvc@4.44.2':
- resolution: {integrity: sha512-VfU0fsMK+rwdK8mwODqYeM2hDrF2WiHaSmCBrS7gColkQft95/8tphyzv2EupVxn3iE0FI78wzffoULH1G+dkw==}
+ '@rollup/rollup-win32-arm64-msvc@4.45.0':
+ resolution: {integrity: sha512-B+IJgcBnE2bm93jEW5kHisqvPITs4ddLOROAcOc/diBgrEiQJJ6Qcjby75rFSmH5eMGrqJryUgJDhrfj942apQ==}
cpu: [arm64]
os: [win32]
- '@rollup/rollup-win32-ia32-msvc@4.44.2':
- resolution: {integrity: sha512-+qMUrkbUurpE6DVRjiJCNGZBGo9xM4Y0FXU5cjgudWqIBWbcLkjE3XprJUsOFgC6xjBClwVa9k6O3A7K3vxb5Q==}
+ '@rollup/rollup-win32-ia32-msvc@4.45.0':
+ resolution: {integrity: sha512-+CXwwG66g0/FpWOnP/v1HnrGVSOygK/osUbu3wPRy8ECXjoYKjRAyfxYpDQOfghC5qPJYLPH0oN4MCOjwgdMug==}
cpu: [ia32]
os: [win32]
- '@rollup/rollup-win32-x64-msvc@4.44.2':
- resolution: {integrity: sha512-3+QZROYfJ25PDcxFF66UEk8jGWigHJeecZILvkPkyQN7oc5BvFo4YEXFkOs154j3FTMp9mn9Ky8RCOwastduEA==}
+ '@rollup/rollup-win32-x64-msvc@4.45.0':
+ resolution: {integrity: sha512-SRf1cytG7wqcHVLrBc9VtPK4pU5wxiB/lNIkNmW2ApKXIg+RpqwHfsaEK+e7eH4A1BpI6BX/aBWXxZCIrJg3uA==}
cpu: [x64]
os: [win32]
@@ -901,20 +936,20 @@ packages:
'@tailwindcss/postcss@4.1.11':
resolution: {integrity: sha512-q/EAIIpF6WpLhKEuQSEVMZNMIY8KhWoAemZ9eylNAih9jxMGAYPPWBn3I9QL/2jZ+e7OEz/tZkX5HwbBR4HohA==}
- '@tanstack/query-core@5.81.5':
- resolution: {integrity: sha512-ZJOgCy/z2qpZXWaj/oxvodDx07XcQa9BF92c0oINjHkoqUPsmm3uG08HpTaviviZ/N9eP1f9CM7mKSEkIo7O1Q==}
+ '@tanstack/query-core@5.83.0':
+ resolution: {integrity: sha512-0M8dA+amXUkyz5cVUm/B+zSk3xkQAcuXuz5/Q/LveT4ots2rBpPTZOzd7yJa2Utsf8D2Upl5KyjhHRY+9lB/XA==}
'@tanstack/query-devtools@5.81.2':
resolution: {integrity: sha512-jCeJcDCwKfoyyBXjXe9+Lo8aTkavygHHsUHAlxQKKaDeyT0qyQNLKl7+UyqYH2dDF6UN/14873IPBHchcsU+Zg==}
- '@tanstack/react-query-devtools@5.81.5':
- resolution: {integrity: sha512-lCGMu4RX0uGnlrlLeSckBfnW/UV+KMlTBVqa97cwK7Z2ED5JKnZRSjNXwoma6sQBTJrcULvzgx2K6jEPvNUpDw==}
+ '@tanstack/react-query-devtools@5.83.0':
+ resolution: {integrity: sha512-yfp8Uqd3I1jgx8gl0lxbSSESu5y4MO2ThOPBnGNTYs0P+ZFu+E9g5IdOngyUGuo6Uz6Qa7p9TLdZEX3ntik2fQ==}
peerDependencies:
- '@tanstack/react-query': ^5.81.5
+ '@tanstack/react-query': ^5.83.0
react: ^18 || ^19
- '@tanstack/react-query@5.81.5':
- resolution: {integrity: sha512-lOf2KqRRiYWpQT86eeeftAGnjuTR35myTP8MXyvHa81VlomoAWNEd8x5vkcAfQefu0qtYCvyqLropFZqgI2EQw==}
+ '@tanstack/react-query@5.83.0':
+ resolution: {integrity: sha512-/XGYhZ3foc5H0VM2jLSD/NyBRIOK4q9kfeml4+0x2DlL6xVuAcVEW+hTlTapAmejObg0i3eNqhkr2dT+eciwoQ==}
peerDependencies:
react: ^18 || ^19
@@ -985,8 +1020,8 @@ packages:
react-dom: '>=18.2.0'
typescript: '>=5.7.2'
- '@tybys/wasm-util@0.9.0':
- resolution: {integrity: sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==}
+ '@tybys/wasm-util@0.10.0':
+ resolution: {integrity: sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ==}
'@types/aria-query@5.0.4':
resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==}
@@ -1021,8 +1056,8 @@ packages:
'@types/json5@0.0.29':
resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
- '@types/node@24.0.10':
- resolution: {integrity: sha512-ENHwaH+JIRTDIEEbDK6QSQntAYGtbvdDXnMXnZaZ6k13Du1dPMmprkEHIL7ok2Wl2aZevetwTAb5S+7yIF+enA==}
+ '@types/node@24.0.13':
+ resolution: {integrity: sha512-Qm9OYVOFHFYg3wJoTSrz80hoec5Lia/dPp84do3X7dZvLikQvM1YpmvTBEdIr/e+U8HTkFjLHLnl78K/qjf+jQ==}
'@types/react-dom@19.1.6':
resolution: {integrity: sha512-4hOiT/dwO8Ko0gV1m/TJZYk3y0KBnY9vzDh7W+DH17b2HFSOGgdj33dhihPeuy3l0q23+4e+hoXHV6hCC4dCXw==}
@@ -1046,8 +1081,8 @@ packages:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.9.0'
- '@typescript-eslint/parser@8.36.0':
- resolution: {integrity: sha512-FuYgkHwZLuPbZjQHzJXrtXreJdFMKl16BFYyRrLxDhWr6Qr7Kbcu2s1Yhu8tsiMXw1S0W1pjfFfYEt+R604s+Q==}
+ '@typescript-eslint/parser@8.37.0':
+ resolution: {integrity: sha512-kVIaQE9vrN9RLCQMQ3iyRlVJpTiDUY6woHGb30JDkfJErqrQEmtdWH3gV0PBAfGZgQXoqzXOO0T3K6ioApbbAA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
@@ -1059,16 +1094,32 @@ packages:
peerDependencies:
typescript: '>=4.8.4 <5.9.0'
+ '@typescript-eslint/project-service@8.37.0':
+ resolution: {integrity: sha512-BIUXYsbkl5A1aJDdYJCBAo8rCEbAvdquQ8AnLb6z5Lp1u3x5PNgSSx9A/zqYc++Xnr/0DVpls8iQ2cJs/izTXA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <5.9.0'
+
'@typescript-eslint/scope-manager@8.36.0':
resolution: {integrity: sha512-wCnapIKnDkN62fYtTGv2+RY8FlnBYA3tNm0fm91kc2BjPhV2vIjwwozJ7LToaLAyb1ca8BxrS7vT+Pvvf7RvqA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@typescript-eslint/scope-manager@8.37.0':
+ resolution: {integrity: sha512-0vGq0yiU1gbjKob2q691ybTg9JX6ShiVXAAfm2jGf3q0hdP6/BruaFjL/ManAR/lj05AvYCH+5bbVo0VtzmjOA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
'@typescript-eslint/tsconfig-utils@8.36.0':
resolution: {integrity: sha512-Nhh3TIEgN18mNbdXpd5Q8mSCBnrZQeY9V7Ca3dqYvNDStNIGRmJA6dmrIPMJ0kow3C7gcQbpsG2rPzy1Ks/AnA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '>=4.8.4 <5.9.0'
+ '@typescript-eslint/tsconfig-utils@8.37.0':
+ resolution: {integrity: sha512-1/YHvAVTimMM9mmlPvTec9NP4bobA1RkDbMydxG8omqwJJLEW/Iy2C4adsAESIXU3WGLXFHSZUU+C9EoFWl4Zg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <5.9.0'
+
'@typescript-eslint/type-utils@8.36.0':
resolution: {integrity: sha512-5aaGYG8cVDd6cxfk/ynpYzxBRZJk7w/ymto6uiyUFtdCozQIsQWh7M28/6r57Fwkbweng8qAzoMCPwSJfWlmsg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -1080,12 +1131,22 @@ packages:
resolution: {integrity: sha512-xGms6l5cTJKQPZOKM75Dl9yBfNdGeLRsIyufewnxT4vZTrjC0ImQT4fj8QmtJK84F58uSh5HVBSANwcfiXxABQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@typescript-eslint/types@8.37.0':
+ resolution: {integrity: sha512-ax0nv7PUF9NOVPs+lmQ7yIE7IQmAf8LGcXbMvHX5Gm+YJUYNAl340XkGnrimxZ0elXyoQJuN5sbg6C4evKA4SQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
'@typescript-eslint/typescript-estree@8.36.0':
resolution: {integrity: sha512-JaS8bDVrfVJX4av0jLpe4ye0BpAaUW7+tnS4Y4ETa3q7NoZgzYbN9zDQTJ8kPb5fQ4n0hliAt9tA4Pfs2zA2Hg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '>=4.8.4 <5.9.0'
+ '@typescript-eslint/typescript-estree@8.37.0':
+ resolution: {integrity: sha512-zuWDMDuzMRbQOM+bHyU4/slw27bAUEcKSKKs3hcv2aNnc/tvE/h7w60dwVw8vnal2Pub6RT1T7BI8tFZ1fE+yg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <5.9.0'
+
'@typescript-eslint/utils@8.36.0':
resolution: {integrity: sha512-VOqmHu42aEMT+P2qYjylw6zP/3E/HvptRwdn/PZxyV27KhZg2IOszXod4NcXisWzPAGSS4trE/g4moNj6XmH2g==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -1097,98 +1158,102 @@ packages:
resolution: {integrity: sha512-vZrhV2lRPWDuGoxcmrzRZyxAggPL+qp3WzUrlZD+slFueDiYHxeBa34dUXPuC0RmGKzl4lS5kFJYvKCq9cnNDA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@unrs/resolver-binding-android-arm-eabi@1.11.0':
- resolution: {integrity: sha512-LRw5BW29sYj9NsQC6QoqeLVQhEa+BwVINYyMlcve+6stwdBsSt5UB7zw4UZB4+4PNqIVilHoMaPWCb/KhABHQw==}
+ '@typescript-eslint/visitor-keys@8.37.0':
+ resolution: {integrity: sha512-YzfhzcTnZVPiLfP/oeKtDp2evwvHLMe0LOy7oe+hb9KKIumLNohYS9Hgp1ifwpu42YWxhZE8yieggz6JpqO/1w==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@unrs/resolver-binding-android-arm-eabi@1.11.1':
+ resolution: {integrity: sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==}
cpu: [arm]
os: [android]
- '@unrs/resolver-binding-android-arm64@1.11.0':
- resolution: {integrity: sha512-zYX8D2zcWCAHqghA8tPjbp7LwjVXbIZP++mpU/Mrf5jUVlk3BWIxkeB8yYzZi5GpFSlqMcRZQxQqbMI0c2lASQ==}
+ '@unrs/resolver-binding-android-arm64@1.11.1':
+ resolution: {integrity: sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==}
cpu: [arm64]
os: [android]
- '@unrs/resolver-binding-darwin-arm64@1.11.0':
- resolution: {integrity: sha512-YsYOT049hevAY/lTYD77GhRs885EXPeAfExG5KenqMJ417nYLS2N/kpRpYbABhFZBVQn+2uRPasTe4ypmYoo3w==}
+ '@unrs/resolver-binding-darwin-arm64@1.11.1':
+ resolution: {integrity: sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==}
cpu: [arm64]
os: [darwin]
- '@unrs/resolver-binding-darwin-x64@1.11.0':
- resolution: {integrity: sha512-PSjvk3OZf1aZImdGY5xj9ClFG3bC4gnSSYWrt+id0UAv+GwwVldhpMFjAga8SpMo2T1GjV9UKwM+QCsQCQmtdA==}
+ '@unrs/resolver-binding-darwin-x64@1.11.1':
+ resolution: {integrity: sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==}
cpu: [x64]
os: [darwin]
- '@unrs/resolver-binding-freebsd-x64@1.11.0':
- resolution: {integrity: sha512-KC/iFaEN/wsTVYnHClyHh5RSYA9PpuGfqkFua45r4sweXpC0KHZ+BYY7ikfcGPt5w1lMpR1gneFzuqWLQxsRKg==}
+ '@unrs/resolver-binding-freebsd-x64@1.11.1':
+ resolution: {integrity: sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==}
cpu: [x64]
os: [freebsd]
- '@unrs/resolver-binding-linux-arm-gnueabihf@1.11.0':
- resolution: {integrity: sha512-CDh/0v8uot43cB4yKtDL9CVY8pbPnMV0dHyQCE4lFz6PW/+9tS0i9eqP5a91PAqEBVMqH1ycu+k8rP6wQU846w==}
+ '@unrs/resolver-binding-linux-arm-gnueabihf@1.11.1':
+ resolution: {integrity: sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==}
cpu: [arm]
os: [linux]
- '@unrs/resolver-binding-linux-arm-musleabihf@1.11.0':
- resolution: {integrity: sha512-+TE7epATDSnvwr3L/hNHX3wQ8KQYB+jSDTdywycg3qDqvavRP8/HX9qdq/rMcnaRDn4EOtallb3vL/5wCWGCkw==}
+ '@unrs/resolver-binding-linux-arm-musleabihf@1.11.1':
+ resolution: {integrity: sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==}
cpu: [arm]
os: [linux]
- '@unrs/resolver-binding-linux-arm64-gnu@1.11.0':
- resolution: {integrity: sha512-VBAYGg3VahofpQ+L4k/ZO8TSICIbUKKTaMYOWHWfuYBFqPbSkArZZLezw3xd27fQkxX4BaLGb/RKnW0dH9Y/UA==}
+ '@unrs/resolver-binding-linux-arm64-gnu@1.11.1':
+ resolution: {integrity: sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==}
cpu: [arm64]
os: [linux]
- '@unrs/resolver-binding-linux-arm64-musl@1.11.0':
- resolution: {integrity: sha512-9IgGFUUb02J1hqdRAHXpZHIeUHRrbnGo6vrRbz0fREH7g+rzQy53/IBSyadZ/LG5iqMxukriNPu4hEMUn+uWEg==}
+ '@unrs/resolver-binding-linux-arm64-musl@1.11.1':
+ resolution: {integrity: sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==}
cpu: [arm64]
os: [linux]
- '@unrs/resolver-binding-linux-ppc64-gnu@1.11.0':
- resolution: {integrity: sha512-LR4iQ/LPjMfivpL2bQ9kmm3UnTas3U+umcCnq/CV7HAkukVdHxrDD1wwx74MIWbbgzQTLPYY7Ur2MnnvkYJCBQ==}
+ '@unrs/resolver-binding-linux-ppc64-gnu@1.11.1':
+ resolution: {integrity: sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==}
cpu: [ppc64]
os: [linux]
- '@unrs/resolver-binding-linux-riscv64-gnu@1.11.0':
- resolution: {integrity: sha512-HCupFQwMrRhrOg7YHrobbB5ADg0Q8RNiuefqMHVsdhEy9lLyXm/CxsCXeLJdrg27NAPsCaMDtdlm8Z2X8x91Tg==}
+ '@unrs/resolver-binding-linux-riscv64-gnu@1.11.1':
+ resolution: {integrity: sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==}
cpu: [riscv64]
os: [linux]
- '@unrs/resolver-binding-linux-riscv64-musl@1.11.0':
- resolution: {integrity: sha512-Ckxy76A5xgjWa4FNrzcKul5qFMWgP5JSQ5YKd0XakmWOddPLSkQT+uAvUpQNnFGNbgKzv90DyQlxPDYPQ4nd6A==}
+ '@unrs/resolver-binding-linux-riscv64-musl@1.11.1':
+ resolution: {integrity: sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==}
cpu: [riscv64]
os: [linux]
- '@unrs/resolver-binding-linux-s390x-gnu@1.11.0':
- resolution: {integrity: sha512-HfO0PUCCRte2pMJmVyxPI+eqT7KuV3Fnvn2RPvMe5mOzb2BJKf4/Vth8sSt9cerQboMaTVpbxyYjjLBWIuI5BQ==}
+ '@unrs/resolver-binding-linux-s390x-gnu@1.11.1':
+ resolution: {integrity: sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==}
cpu: [s390x]
os: [linux]
- '@unrs/resolver-binding-linux-x64-gnu@1.11.0':
- resolution: {integrity: sha512-9PZdjP7tLOEjpXHS6+B/RNqtfVUyDEmaViPOuSqcbomLdkJnalt5RKQ1tr2m16+qAufV0aDkfhXtoO7DQos/jg==}
+ '@unrs/resolver-binding-linux-x64-gnu@1.11.1':
+ resolution: {integrity: sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==}
cpu: [x64]
os: [linux]
- '@unrs/resolver-binding-linux-x64-musl@1.11.0':
- resolution: {integrity: sha512-qkE99ieiSKMnFJY/EfyGKVtNra52/k+lVF/PbO4EL5nU6AdvG4XhtJ+WHojAJP7ID9BNIra/yd75EHndewNRfA==}
+ '@unrs/resolver-binding-linux-x64-musl@1.11.1':
+ resolution: {integrity: sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==}
cpu: [x64]
os: [linux]
- '@unrs/resolver-binding-wasm32-wasi@1.11.0':
- resolution: {integrity: sha512-MjXek8UL9tIX34gymvQLecz2hMaQzOlaqYJJBomwm1gsvK2F7hF+YqJJ2tRyBDTv9EZJGMt4KlKkSD/gZWCOiw==}
+ '@unrs/resolver-binding-wasm32-wasi@1.11.1':
+ resolution: {integrity: sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==}
engines: {node: '>=14.0.0'}
cpu: [wasm32]
- '@unrs/resolver-binding-win32-arm64-msvc@1.11.0':
- resolution: {integrity: sha512-9LT6zIGO7CHybiQSh7DnQGwFMZvVr0kUjah6qQfkH2ghucxPV6e71sUXJdSM4Ba0MaGE6DC/NwWf7mJmc3DAng==}
+ '@unrs/resolver-binding-win32-arm64-msvc@1.11.1':
+ resolution: {integrity: sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==}
cpu: [arm64]
os: [win32]
- '@unrs/resolver-binding-win32-ia32-msvc@1.11.0':
- resolution: {integrity: sha512-HYchBYOZ7WN266VjoGm20xFv5EonG/ODURRgwl9EZT7Bq1nLEs6VKJddzfFdXEAho0wfFlt8L/xIiE29Pmy1RA==}
+ '@unrs/resolver-binding-win32-ia32-msvc@1.11.1':
+ resolution: {integrity: sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==}
cpu: [ia32]
os: [win32]
- '@unrs/resolver-binding-win32-x64-msvc@1.11.0':
- resolution: {integrity: sha512-+oLKLHw3I1UQo4MeHfoLYF+e6YBa8p5vYUw3Rgt7IDzCs+57vIZqQlIo62NDpYM0VG6BjWOwnzBczMvbtH8hag==}
+ '@unrs/resolver-binding-win32-x64-msvc@1.11.1':
+ resolution: {integrity: sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==}
cpu: [x64]
os: [win32]
@@ -1380,9 +1445,9 @@ packages:
caniuse-lite@1.0.30001727:
resolution: {integrity: sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q==}
- chai@5.2.0:
- resolution: {integrity: sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==}
- engines: {node: '>=12'}
+ chai@5.2.1:
+ resolution: {integrity: sha512-5nFxhUrX0PqtyogoYOA8IPswy5sZFTOsBFl/9bNsmDLgsxYTzSZQJDPppDnZPTQbzSEm0hqGjWPzRemQCYbD6A==}
+ engines: {node: '>=18'}
chalk@4.1.2:
resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
@@ -1539,16 +1604,16 @@ packages:
dompurify@3.2.6:
resolution: {integrity: sha512-/2GogDQlohXPZe6D6NOgQvXLPSYBqIWMnZ8zzOhn09REE4eyAzb+Hed3jhoM9OkuaJ8P6ZGTTVWQKAi8ieIzfQ==}
- dotenv@17.0.1:
- resolution: {integrity: sha512-GLjkduuAL7IMJg/ZnOPm9AnWKJ82mSE2tzXLaJ/6hD6DhwGfZaXG77oB8qbReyiczNxnbxQKyh0OE5mXq0bAHA==}
+ dotenv@17.2.0:
+ resolution: {integrity: sha512-Q4sgBT60gzd0BB0lSyYD3xM4YxrXA9y4uBDof1JNYGzOXrQdQ6yX+7XIAqoFOGQFOTK1D3Hts5OllpxMDZFONQ==}
engines: {node: '>=12'}
dunder-proto@1.0.1:
resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}
engines: {node: '>= 0.4'}
- electron-to-chromium@1.5.179:
- resolution: {integrity: sha512-UWKi/EbBopgfFsc5k61wFpV7WrnnSlSzW/e2XcBmS6qKYTivZlLtoll5/rdqRTxGglGHkmkW0j0pFNJG10EUIQ==}
+ electron-to-chromium@1.5.182:
+ resolution: {integrity: sha512-Lv65Btwv9W4J9pyODI6EWpdnhfvrve/us5h1WspW8B2Fb0366REPtY3hX7ounk1CkV/TBjWCEvCBBbYbmV0qCA==}
emoji-regex@9.2.2:
resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
@@ -1607,9 +1672,9 @@ packages:
resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==}
engines: {node: '>= 0.4'}
- esbuild@0.21.5:
- resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==}
- engines: {node: '>=12'}
+ esbuild@0.25.6:
+ resolution: {integrity: sha512-GVuzuUwtdsghE3ocJ9Bs8PNoF13HNQ5TXbEi2AhvVb8xU1Iwt9Fos9FEamfoee+u/TOsn7GUWc04lz46n2bbTg==}
+ engines: {node: '>=18'}
hasBin: true
escalade@3.2.0:
@@ -1629,6 +1694,12 @@ packages:
typescript:
optional: true
+ eslint-config-prettier@10.1.5:
+ resolution: {integrity: sha512-zc1UmCpNltmVY34vuLRV61r1K27sWuX39E+uyUnY8xS2Bex88VV9cugG+UZbRSRGtGyFboj+D8JODyme1plMpw==}
+ hasBin: true
+ peerDependencies:
+ eslint: '>=7.0.0'
+
eslint-import-resolver-node@0.3.9:
resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
@@ -1706,8 +1777,8 @@ packages:
resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- eslint@9.30.1:
- resolution: {integrity: sha512-zmxXPNMOXmwm9E0yQLi5uqXHs7uq2UIiqEKo3Gq+3fwo1XrJ+hijAZImyF7hclW3E6oHz43Yk3RP8at6OTKflQ==}
+ eslint@9.31.0:
+ resolution: {integrity: sha512-QldCVh/ztyKJJZLr4jXNUByx3gR+TDYZCRXEktiZoUR3PGy4qCmSbkxcIle8GEwGpb5JBZazlaJ/CxLidXdEbQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
hasBin: true
peerDependencies:
@@ -2112,8 +2183,8 @@ packages:
resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==}
engines: {node: '>=4.0'}
- katex@0.16.20:
- resolution: {integrity: sha512-jjuLaMGD/7P8jUTpdKhA9IoqnH+yMFB3sdAFtq5QdAqeP2PjiSbnC3EaguKPNtv6dXXanHxp1ckwvF4a86LBig==}
+ katex@0.16.22:
+ resolution: {integrity: sha512-XCHRdUw4lf3SKBaJe4EvgqIuWwkPSo9XoeO8GjQW94Bp7TWv9hNhzZjZ+OH9yf1UmLygb7DIT5GSFQiyt16zYg==}
hasBin: true
keyv@4.5.4:
@@ -2505,8 +2576,8 @@ packages:
resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==}
engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
- rollup@4.44.2:
- resolution: {integrity: sha512-PVoapzTwSEcelaWGth3uR66u7ZRo6qhPHc0f2uRO9fX6XDVNrIiGYS0Pj9+R8yIIYSD/mCx2b16Ws9itljKSPg==}
+ rollup@4.45.0:
+ resolution: {integrity: sha512-WLjEcJRIo7i3WDDgOIJqVI2d+lAC3EwvOGy+Xfq6hs+GQuAA4Di/H72xmXkOhrIWFg2PFYSKZYfH0f4vfKXN4A==}
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
hasBin: true
@@ -2559,8 +2630,8 @@ packages:
resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==}
engines: {node: '>= 0.4'}
- sharp@0.34.2:
- resolution: {integrity: sha512-lszvBmB9QURERtyKT2bNmsgxXK0ShJrL/fvqlonCo7e6xBF8nT8xU6pW+PMIbLsz0RxQk3rgH9kd8UmvOzlMJg==}
+ sharp@0.34.3:
+ resolution: {integrity: sha512-eX2IQ6nFohW4DbvHIOLRB3MHFpYqaqvXd3Tp5e/T/dSH83fxaNJQRvDMhASmkNTsNTVF2/OOopzRCt7xokgPfg==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
shebang-command@2.0.0:
@@ -2790,8 +2861,8 @@ packages:
undici-types@7.8.0:
resolution: {integrity: sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==}
- unrs-resolver@1.11.0:
- resolution: {integrity: sha512-uw3hCGO/RdAEAb4zgJ3C/v6KIAFFOtBoxR86b2Ejc5TnH7HrhTWJR2o0A9ullC3eWMegKQCw/arQ/JivywQzkg==}
+ unrs-resolver@1.11.1:
+ resolution: {integrity: sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==}
update-browserslist-db@1.1.3:
resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==}
@@ -2811,22 +2882,27 @@ packages:
engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
hasBin: true
- vite@5.4.19:
- resolution: {integrity: sha512-qO3aKv3HoQC8QKiNSTuUM1l9o/XX3+c+VTgLHbJWHZGeTPVAg2XwazI9UWzoxjIJCGCV2zU60uqMzjeLZuULqA==}
- engines: {node: ^18.0.0 || >=20.0.0}
+ vite@7.0.4:
+ resolution: {integrity: sha512-SkaSguuS7nnmV7mfJ8l81JGBFV7Gvzp8IzgE8A8t23+AxuNX61Q5H1Tpz5efduSN7NHC8nQXD3sKQKZAu5mNEA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
peerDependencies:
- '@types/node': ^18.0.0 || >=20.0.0
- less: '*'
+ '@types/node': ^20.19.0 || >=22.12.0
+ jiti: '>=1.21.0'
+ less: ^4.0.0
lightningcss: ^1.21.0
- sass: '*'
- sass-embedded: '*'
- stylus: '*'
- sugarss: '*'
- terser: ^5.4.0
+ sass: ^1.70.0
+ sass-embedded: ^1.70.0
+ stylus: '>=0.54.8'
+ sugarss: ^5.0.0
+ terser: ^5.16.0
+ tsx: ^4.8.1
+ yaml: ^2.4.2
peerDependenciesMeta:
'@types/node':
optional: true
+ jiti:
+ optional: true
less:
optional: true
lightningcss:
@@ -2841,6 +2917,10 @@ packages:
optional: true
terser:
optional: true
+ tsx:
+ optional: true
+ yaml:
+ optional: true
vitest@3.2.4:
resolution: {integrity: sha512-LUCP5ev3GURDysTWiP47wRRUpLKMOfPh+yKTx3kVIEiu5KOMeqzpnYNsKyOoVrULivR8tLcks4+lga33Whn90A==}
@@ -2971,8 +3051,8 @@ packages:
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
engines: {node: '>=10'}
- zod@3.25.75:
- resolution: {integrity: sha512-OhpzAmVzabPOL6C3A3gpAifqr9MqihV/Msx3gor2b2kviCgcb+HM9SEOpMWwwNp9MRunWnhtAKUoo0AHhjyPPg==}
+ zod@3.25.76:
+ resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==}
snapshots:
@@ -3010,7 +3090,7 @@ snapshots:
'@babel/parser': 7.28.0
'@babel/template': 7.27.2
'@babel/traverse': 7.28.0
- '@babel/types': 7.28.0
+ '@babel/types': 7.28.1
convert-source-map: 2.0.0
debug: 4.4.1
gensync: 1.0.0-beta.2
@@ -3022,7 +3102,7 @@ snapshots:
'@babel/generator@7.28.0':
dependencies:
'@babel/parser': 7.28.0
- '@babel/types': 7.28.0
+ '@babel/types': 7.28.1
'@jridgewell/gen-mapping': 0.3.12
'@jridgewell/trace-mapping': 0.3.29
jsesc: 3.1.0
@@ -3040,7 +3120,7 @@ snapshots:
'@babel/helper-module-imports@7.27.1':
dependencies:
'@babel/traverse': 7.28.0
- '@babel/types': 7.28.0
+ '@babel/types': 7.28.1
transitivePeerDependencies:
- supports-color
@@ -3064,11 +3144,11 @@ snapshots:
'@babel/helpers@7.27.6':
dependencies:
'@babel/template': 7.27.2
- '@babel/types': 7.28.0
+ '@babel/types': 7.28.1
'@babel/parser@7.28.0':
dependencies:
- '@babel/types': 7.28.0
+ '@babel/types': 7.28.1
'@babel/plugin-transform-react-jsx-self@7.27.1(@babel/core@7.28.0)':
dependencies:
@@ -3086,7 +3166,7 @@ snapshots:
dependencies:
'@babel/code-frame': 7.27.1
'@babel/parser': 7.28.0
- '@babel/types': 7.28.0
+ '@babel/types': 7.28.1
'@babel/traverse@7.28.0':
dependencies:
@@ -3095,12 +3175,12 @@ snapshots:
'@babel/helper-globals': 7.28.0
'@babel/parser': 7.28.0
'@babel/template': 7.27.2
- '@babel/types': 7.28.0
+ '@babel/types': 7.28.1
debug: 4.4.1
transitivePeerDependencies:
- supports-color
- '@babel/types@7.28.0':
+ '@babel/types@7.28.1':
dependencies:
'@babel/helper-string-parser': 7.27.1
'@babel/helper-validator-identifier': 7.27.1
@@ -3141,78 +3221,87 @@ snapshots:
tslib: 2.8.1
optional: true
- '@esbuild/aix-ppc64@0.21.5':
+ '@esbuild/aix-ppc64@0.25.6':
optional: true
- '@esbuild/android-arm64@0.21.5':
+ '@esbuild/android-arm64@0.25.6':
optional: true
- '@esbuild/android-arm@0.21.5':
+ '@esbuild/android-arm@0.25.6':
optional: true
- '@esbuild/android-x64@0.21.5':
+ '@esbuild/android-x64@0.25.6':
optional: true
- '@esbuild/darwin-arm64@0.21.5':
+ '@esbuild/darwin-arm64@0.25.6':
optional: true
- '@esbuild/darwin-x64@0.21.5':
+ '@esbuild/darwin-x64@0.25.6':
optional: true
- '@esbuild/freebsd-arm64@0.21.5':
+ '@esbuild/freebsd-arm64@0.25.6':
optional: true
- '@esbuild/freebsd-x64@0.21.5':
+ '@esbuild/freebsd-x64@0.25.6':
optional: true
- '@esbuild/linux-arm64@0.21.5':
+ '@esbuild/linux-arm64@0.25.6':
optional: true
- '@esbuild/linux-arm@0.21.5':
+ '@esbuild/linux-arm@0.25.6':
optional: true
- '@esbuild/linux-ia32@0.21.5':
+ '@esbuild/linux-ia32@0.25.6':
optional: true
- '@esbuild/linux-loong64@0.21.5':
+ '@esbuild/linux-loong64@0.25.6':
optional: true
- '@esbuild/linux-mips64el@0.21.5':
+ '@esbuild/linux-mips64el@0.25.6':
optional: true
- '@esbuild/linux-ppc64@0.21.5':
+ '@esbuild/linux-ppc64@0.25.6':
optional: true
- '@esbuild/linux-riscv64@0.21.5':
+ '@esbuild/linux-riscv64@0.25.6':
optional: true
- '@esbuild/linux-s390x@0.21.5':
+ '@esbuild/linux-s390x@0.25.6':
optional: true
- '@esbuild/linux-x64@0.21.5':
+ '@esbuild/linux-x64@0.25.6':
optional: true
- '@esbuild/netbsd-x64@0.21.5':
+ '@esbuild/netbsd-arm64@0.25.6':
optional: true
- '@esbuild/openbsd-x64@0.21.5':
+ '@esbuild/netbsd-x64@0.25.6':
optional: true
- '@esbuild/sunos-x64@0.21.5':
+ '@esbuild/openbsd-arm64@0.25.6':
optional: true
- '@esbuild/win32-arm64@0.21.5':
+ '@esbuild/openbsd-x64@0.25.6':
optional: true
- '@esbuild/win32-ia32@0.21.5':
+ '@esbuild/openharmony-arm64@0.25.6':
optional: true
- '@esbuild/win32-x64@0.21.5':
+ '@esbuild/sunos-x64@0.25.6':
optional: true
- '@eslint-community/eslint-utils@4.7.0(eslint@9.30.1(jiti@2.4.2))':
+ '@esbuild/win32-arm64@0.25.6':
+ optional: true
+
+ '@esbuild/win32-ia32@0.25.6':
+ optional: true
+
+ '@esbuild/win32-x64@0.25.6':
+ optional: true
+
+ '@eslint-community/eslint-utils@4.7.0(eslint@9.31.0(jiti@2.4.2))':
dependencies:
- eslint: 9.30.1(jiti@2.4.2)
+ eslint: 9.31.0(jiti@2.4.2)
eslint-visitor-keys: 3.4.3
'@eslint-community/regexpp@4.12.1': {}
@@ -3227,10 +3316,6 @@ snapshots:
'@eslint/config-helpers@0.3.0': {}
- '@eslint/core@0.14.0':
- dependencies:
- '@types/json-schema': 7.0.15
-
'@eslint/core@0.15.1':
dependencies:
'@types/json-schema': 7.0.15
@@ -3249,7 +3334,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@eslint/js@9.30.1': {}
+ '@eslint/js@9.31.0': {}
'@eslint/object-schema@2.1.6': {}
@@ -3271,85 +3356,90 @@ snapshots:
'@humanwhocodes/retry@0.4.3': {}
- '@img/sharp-darwin-arm64@0.34.2':
+ '@img/sharp-darwin-arm64@0.34.3':
optionalDependencies:
- '@img/sharp-libvips-darwin-arm64': 1.1.0
+ '@img/sharp-libvips-darwin-arm64': 1.2.0
optional: true
- '@img/sharp-darwin-x64@0.34.2':
+ '@img/sharp-darwin-x64@0.34.3':
optionalDependencies:
- '@img/sharp-libvips-darwin-x64': 1.1.0
+ '@img/sharp-libvips-darwin-x64': 1.2.0
optional: true
- '@img/sharp-libvips-darwin-arm64@1.1.0':
+ '@img/sharp-libvips-darwin-arm64@1.2.0':
optional: true
- '@img/sharp-libvips-darwin-x64@1.1.0':
+ '@img/sharp-libvips-darwin-x64@1.2.0':
optional: true
- '@img/sharp-libvips-linux-arm64@1.1.0':
+ '@img/sharp-libvips-linux-arm64@1.2.0':
optional: true
- '@img/sharp-libvips-linux-arm@1.1.0':
+ '@img/sharp-libvips-linux-arm@1.2.0':
optional: true
- '@img/sharp-libvips-linux-ppc64@1.1.0':
+ '@img/sharp-libvips-linux-ppc64@1.2.0':
optional: true
- '@img/sharp-libvips-linux-s390x@1.1.0':
+ '@img/sharp-libvips-linux-s390x@1.2.0':
optional: true
- '@img/sharp-libvips-linux-x64@1.1.0':
+ '@img/sharp-libvips-linux-x64@1.2.0':
optional: true
- '@img/sharp-libvips-linuxmusl-arm64@1.1.0':
+ '@img/sharp-libvips-linuxmusl-arm64@1.2.0':
optional: true
- '@img/sharp-libvips-linuxmusl-x64@1.1.0':
+ '@img/sharp-libvips-linuxmusl-x64@1.2.0':
optional: true
- '@img/sharp-linux-arm64@0.34.2':
+ '@img/sharp-linux-arm64@0.34.3':
optionalDependencies:
- '@img/sharp-libvips-linux-arm64': 1.1.0
+ '@img/sharp-libvips-linux-arm64': 1.2.0
optional: true
- '@img/sharp-linux-arm@0.34.2':
+ '@img/sharp-linux-arm@0.34.3':
optionalDependencies:
- '@img/sharp-libvips-linux-arm': 1.1.0
+ '@img/sharp-libvips-linux-arm': 1.2.0
optional: true
- '@img/sharp-linux-s390x@0.34.2':
+ '@img/sharp-linux-ppc64@0.34.3':
optionalDependencies:
- '@img/sharp-libvips-linux-s390x': 1.1.0
+ '@img/sharp-libvips-linux-ppc64': 1.2.0
optional: true
- '@img/sharp-linux-x64@0.34.2':
+ '@img/sharp-linux-s390x@0.34.3':
optionalDependencies:
- '@img/sharp-libvips-linux-x64': 1.1.0
+ '@img/sharp-libvips-linux-s390x': 1.2.0
optional: true
- '@img/sharp-linuxmusl-arm64@0.34.2':
+ '@img/sharp-linux-x64@0.34.3':
optionalDependencies:
- '@img/sharp-libvips-linuxmusl-arm64': 1.1.0
+ '@img/sharp-libvips-linux-x64': 1.2.0
optional: true
- '@img/sharp-linuxmusl-x64@0.34.2':
+ '@img/sharp-linuxmusl-arm64@0.34.3':
optionalDependencies:
- '@img/sharp-libvips-linuxmusl-x64': 1.1.0
+ '@img/sharp-libvips-linuxmusl-arm64': 1.2.0
optional: true
- '@img/sharp-wasm32@0.34.2':
+ '@img/sharp-linuxmusl-x64@0.34.3':
+ optionalDependencies:
+ '@img/sharp-libvips-linuxmusl-x64': 1.2.0
+ optional: true
+
+ '@img/sharp-wasm32@0.34.3':
dependencies:
'@emnapi/runtime': 1.4.4
optional: true
- '@img/sharp-win32-arm64@0.34.2':
+ '@img/sharp-win32-arm64@0.34.3':
optional: true
- '@img/sharp-win32-ia32@0.34.2':
+ '@img/sharp-win32-ia32@0.34.3':
optional: true
- '@img/sharp-win32-x64@0.34.2':
+ '@img/sharp-win32-x64@0.34.3':
optional: true
'@isaacs/fs-minipass@4.0.1':
@@ -3381,11 +3471,11 @@ snapshots:
react: 19.1.0
react-dom: 19.1.0(react@19.1.0)
- '@napi-rs/wasm-runtime@0.2.11':
+ '@napi-rs/wasm-runtime@0.2.12':
dependencies:
'@emnapi/core': 1.4.4
'@emnapi/runtime': 1.4.4
- '@tybys/wasm-util': 0.9.0
+ '@tybys/wasm-util': 0.10.0
optional: true
'@next/env@15.3.5': {}
@@ -3434,64 +3524,64 @@ snapshots:
'@rolldown/pluginutils@1.0.0-beta.19': {}
- '@rollup/rollup-android-arm-eabi@4.44.2':
+ '@rollup/rollup-android-arm-eabi@4.45.0':
optional: true
- '@rollup/rollup-android-arm64@4.44.2':
+ '@rollup/rollup-android-arm64@4.45.0':
optional: true
- '@rollup/rollup-darwin-arm64@4.44.2':
+ '@rollup/rollup-darwin-arm64@4.45.0':
optional: true
- '@rollup/rollup-darwin-x64@4.44.2':
+ '@rollup/rollup-darwin-x64@4.45.0':
optional: true
- '@rollup/rollup-freebsd-arm64@4.44.2':
+ '@rollup/rollup-freebsd-arm64@4.45.0':
optional: true
- '@rollup/rollup-freebsd-x64@4.44.2':
+ '@rollup/rollup-freebsd-x64@4.45.0':
optional: true
- '@rollup/rollup-linux-arm-gnueabihf@4.44.2':
+ '@rollup/rollup-linux-arm-gnueabihf@4.45.0':
optional: true
- '@rollup/rollup-linux-arm-musleabihf@4.44.2':
+ '@rollup/rollup-linux-arm-musleabihf@4.45.0':
optional: true
- '@rollup/rollup-linux-arm64-gnu@4.44.2':
+ '@rollup/rollup-linux-arm64-gnu@4.45.0':
optional: true
- '@rollup/rollup-linux-arm64-musl@4.44.2':
+ '@rollup/rollup-linux-arm64-musl@4.45.0':
optional: true
- '@rollup/rollup-linux-loongarch64-gnu@4.44.2':
+ '@rollup/rollup-linux-loongarch64-gnu@4.45.0':
optional: true
- '@rollup/rollup-linux-powerpc64le-gnu@4.44.2':
+ '@rollup/rollup-linux-powerpc64le-gnu@4.45.0':
optional: true
- '@rollup/rollup-linux-riscv64-gnu@4.44.2':
+ '@rollup/rollup-linux-riscv64-gnu@4.45.0':
optional: true
- '@rollup/rollup-linux-riscv64-musl@4.44.2':
+ '@rollup/rollup-linux-riscv64-musl@4.45.0':
optional: true
- '@rollup/rollup-linux-s390x-gnu@4.44.2':
+ '@rollup/rollup-linux-s390x-gnu@4.45.0':
optional: true
- '@rollup/rollup-linux-x64-gnu@4.44.2':
+ '@rollup/rollup-linux-x64-gnu@4.45.0':
optional: true
- '@rollup/rollup-linux-x64-musl@4.44.2':
+ '@rollup/rollup-linux-x64-musl@4.45.0':
optional: true
- '@rollup/rollup-win32-arm64-msvc@4.44.2':
+ '@rollup/rollup-win32-arm64-msvc@4.45.0':
optional: true
- '@rollup/rollup-win32-ia32-msvc@4.44.2':
+ '@rollup/rollup-win32-ia32-msvc@4.45.0':
optional: true
- '@rollup/rollup-win32-x64-msvc@4.44.2':
+ '@rollup/rollup-win32-x64-msvc@4.45.0':
optional: true
'@rtsao/scc@1.1.0': {}
@@ -3578,19 +3668,19 @@ snapshots:
postcss: 8.5.6
tailwindcss: 4.1.11
- '@tanstack/query-core@5.81.5': {}
+ '@tanstack/query-core@5.83.0': {}
'@tanstack/query-devtools@5.81.2': {}
- '@tanstack/react-query-devtools@5.81.5(@tanstack/react-query@5.81.5(react@19.1.0))(react@19.1.0)':
+ '@tanstack/react-query-devtools@5.83.0(@tanstack/react-query@5.83.0(react@19.1.0))(react@19.1.0)':
dependencies:
'@tanstack/query-devtools': 5.81.2
- '@tanstack/react-query': 5.81.5(react@19.1.0)
+ '@tanstack/react-query': 5.83.0(react@19.1.0)
react: 19.1.0
- '@tanstack/react-query@5.81.5(react@19.1.0)':
+ '@tanstack/react-query@5.83.0(react@19.1.0)':
dependencies:
- '@tanstack/query-core': 5.81.5
+ '@tanstack/query-core': 5.83.0
react: 19.1.0
'@testing-library/dom@10.4.0':
@@ -3619,7 +3709,7 @@ snapshots:
'@trpc/server': 11.4.3(typescript@5.8.3)
typescript: 5.8.3
- '@trpc/next@11.4.3(@tanstack/react-query@5.81.5(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/react-query@11.4.3(@tanstack/react-query@5.81.5(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(next@15.3.5(@babel/core@7.28.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)':
+ '@trpc/next@11.4.3(@tanstack/react-query@5.83.0(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/react-query@11.4.3(@tanstack/react-query@5.83.0(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(next@15.3.5(@babel/core@7.28.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)':
dependencies:
'@trpc/client': 11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3)
'@trpc/server': 11.4.3(typescript@5.8.3)
@@ -3628,12 +3718,12 @@ snapshots:
react-dom: 19.1.0(react@19.1.0)
typescript: 5.8.3
optionalDependencies:
- '@tanstack/react-query': 5.81.5(react@19.1.0)
- '@trpc/react-query': 11.4.3(@tanstack/react-query@5.81.5(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)
+ '@tanstack/react-query': 5.83.0(react@19.1.0)
+ '@trpc/react-query': 11.4.3(@tanstack/react-query@5.83.0(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)
- '@trpc/react-query@11.4.3(@tanstack/react-query@5.81.5(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)':
+ '@trpc/react-query@11.4.3(@tanstack/react-query@5.83.0(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)':
dependencies:
- '@tanstack/react-query': 5.81.5(react@19.1.0)
+ '@tanstack/react-query': 5.83.0(react@19.1.0)
'@trpc/client': 11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3)
'@trpc/server': 11.4.3(typescript@5.8.3)
react: 19.1.0
@@ -3644,16 +3734,16 @@ snapshots:
dependencies:
typescript: 5.8.3
- '@trpc/tanstack-react-query@11.4.3(@tanstack/react-query@5.81.5(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)':
+ '@trpc/tanstack-react-query@11.4.3(@tanstack/react-query@5.83.0(react@19.1.0))(@trpc/client@11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3))(@trpc/server@11.4.3(typescript@5.8.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)':
dependencies:
- '@tanstack/react-query': 5.81.5(react@19.1.0)
+ '@tanstack/react-query': 5.83.0(react@19.1.0)
'@trpc/client': 11.4.3(@trpc/server@11.4.3(typescript@5.8.3))(typescript@5.8.3)
'@trpc/server': 11.4.3(typescript@5.8.3)
react: 19.1.0
react-dom: 19.1.0(react@19.1.0)
typescript: 5.8.3
- '@tybys/wasm-util@0.9.0':
+ '@tybys/wasm-util@0.10.0':
dependencies:
tslib: 2.8.1
optional: true
@@ -3663,23 +3753,23 @@ snapshots:
'@types/babel__core@7.20.5':
dependencies:
'@babel/parser': 7.28.0
- '@babel/types': 7.28.0
+ '@babel/types': 7.28.1
'@types/babel__generator': 7.27.0
'@types/babel__template': 7.4.4
'@types/babel__traverse': 7.20.7
'@types/babel__generator@7.27.0':
dependencies:
- '@babel/types': 7.28.0
+ '@babel/types': 7.28.1
'@types/babel__template@7.4.4':
dependencies:
'@babel/parser': 7.28.0
- '@babel/types': 7.28.0
+ '@babel/types': 7.28.1
'@types/babel__traverse@7.20.7':
dependencies:
- '@babel/types': 7.28.0
+ '@babel/types': 7.28.1
'@types/chai@5.2.2':
dependencies:
@@ -3687,7 +3777,7 @@ snapshots:
'@types/cors@2.8.19':
dependencies:
- '@types/node': 24.0.10
+ '@types/node': 24.0.13
'@types/deep-eql@4.0.2': {}
@@ -3697,7 +3787,7 @@ snapshots:
'@types/json5@0.0.29': {}
- '@types/node@24.0.10':
+ '@types/node@24.0.13':
dependencies:
undici-types: 7.8.0
@@ -3714,17 +3804,17 @@ snapshots:
'@types/ws@8.18.1':
dependencies:
- '@types/node': 24.0.10
+ '@types/node': 24.0.13
- '@typescript-eslint/eslint-plugin@8.36.0(@typescript-eslint/parser@8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3))(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3)':
+ '@typescript-eslint/eslint-plugin@8.36.0(@typescript-eslint/parser@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)':
dependencies:
'@eslint-community/regexpp': 4.12.1
- '@typescript-eslint/parser': 8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3)
+ '@typescript-eslint/parser': 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
'@typescript-eslint/scope-manager': 8.36.0
- '@typescript-eslint/type-utils': 8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3)
- '@typescript-eslint/utils': 8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3)
+ '@typescript-eslint/type-utils': 8.36.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
+ '@typescript-eslint/utils': 8.36.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
'@typescript-eslint/visitor-keys': 8.36.0
- eslint: 9.30.1(jiti@2.4.2)
+ eslint: 9.31.0(jiti@2.4.2)
graphemer: 1.4.0
ignore: 7.0.5
natural-compare: 1.4.0
@@ -3733,14 +3823,14 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/parser@8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3)':
+ '@typescript-eslint/parser@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)':
dependencies:
- '@typescript-eslint/scope-manager': 8.36.0
- '@typescript-eslint/types': 8.36.0
- '@typescript-eslint/typescript-estree': 8.36.0(typescript@5.8.3)
- '@typescript-eslint/visitor-keys': 8.36.0
+ '@typescript-eslint/scope-manager': 8.37.0
+ '@typescript-eslint/types': 8.37.0
+ '@typescript-eslint/typescript-estree': 8.37.0(typescript@5.8.3)
+ '@typescript-eslint/visitor-keys': 8.37.0
debug: 4.4.1
- eslint: 9.30.1(jiti@2.4.2)
+ eslint: 9.31.0(jiti@2.4.2)
typescript: 5.8.3
transitivePeerDependencies:
- supports-color
@@ -3754,21 +3844,39 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ '@typescript-eslint/project-service@8.37.0(typescript@5.8.3)':
+ dependencies:
+ '@typescript-eslint/tsconfig-utils': 8.37.0(typescript@5.8.3)
+ '@typescript-eslint/types': 8.37.0
+ debug: 4.4.1
+ typescript: 5.8.3
+ transitivePeerDependencies:
+ - supports-color
+
'@typescript-eslint/scope-manager@8.36.0':
dependencies:
'@typescript-eslint/types': 8.36.0
'@typescript-eslint/visitor-keys': 8.36.0
+ '@typescript-eslint/scope-manager@8.37.0':
+ dependencies:
+ '@typescript-eslint/types': 8.37.0
+ '@typescript-eslint/visitor-keys': 8.37.0
+
'@typescript-eslint/tsconfig-utils@8.36.0(typescript@5.8.3)':
dependencies:
typescript: 5.8.3
- '@typescript-eslint/type-utils@8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3)':
+ '@typescript-eslint/tsconfig-utils@8.37.0(typescript@5.8.3)':
+ dependencies:
+ typescript: 5.8.3
+
+ '@typescript-eslint/type-utils@8.36.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)':
dependencies:
'@typescript-eslint/typescript-estree': 8.36.0(typescript@5.8.3)
- '@typescript-eslint/utils': 8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3)
+ '@typescript-eslint/utils': 8.36.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
debug: 4.4.1
- eslint: 9.30.1(jiti@2.4.2)
+ eslint: 9.31.0(jiti@2.4.2)
ts-api-utils: 2.1.0(typescript@5.8.3)
typescript: 5.8.3
transitivePeerDependencies:
@@ -3776,6 +3884,8 @@ snapshots:
'@typescript-eslint/types@8.36.0': {}
+ '@typescript-eslint/types@8.37.0': {}
+
'@typescript-eslint/typescript-estree@8.36.0(typescript@5.8.3)':
dependencies:
'@typescript-eslint/project-service': 8.36.0(typescript@5.8.3)
@@ -3792,13 +3902,29 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/utils@8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3)':
+ '@typescript-eslint/typescript-estree@8.37.0(typescript@5.8.3)':
dependencies:
- '@eslint-community/eslint-utils': 4.7.0(eslint@9.30.1(jiti@2.4.2))
+ '@typescript-eslint/project-service': 8.37.0(typescript@5.8.3)
+ '@typescript-eslint/tsconfig-utils': 8.37.0(typescript@5.8.3)
+ '@typescript-eslint/types': 8.37.0
+ '@typescript-eslint/visitor-keys': 8.37.0
+ debug: 4.4.1
+ fast-glob: 3.3.3
+ is-glob: 4.0.3
+ minimatch: 9.0.5
+ semver: 7.7.2
+ ts-api-utils: 2.1.0(typescript@5.8.3)
+ typescript: 5.8.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/utils@8.36.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)':
+ dependencies:
+ '@eslint-community/eslint-utils': 4.7.0(eslint@9.31.0(jiti@2.4.2))
'@typescript-eslint/scope-manager': 8.36.0
'@typescript-eslint/types': 8.36.0
'@typescript-eslint/typescript-estree': 8.36.0(typescript@5.8.3)
- eslint: 9.30.1(jiti@2.4.2)
+ eslint: 9.31.0(jiti@2.4.2)
typescript: 5.8.3
transitivePeerDependencies:
- supports-color
@@ -3808,66 +3934,71 @@ snapshots:
'@typescript-eslint/types': 8.36.0
eslint-visitor-keys: 4.2.1
- '@unrs/resolver-binding-android-arm-eabi@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-android-arm64@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-darwin-arm64@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-darwin-x64@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-freebsd-x64@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-linux-arm-gnueabihf@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-linux-arm-musleabihf@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-linux-arm64-gnu@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-linux-arm64-musl@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-linux-ppc64-gnu@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-linux-riscv64-gnu@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-linux-riscv64-musl@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-linux-s390x-gnu@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-linux-x64-gnu@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-linux-x64-musl@1.11.0':
- optional: true
-
- '@unrs/resolver-binding-wasm32-wasi@1.11.0':
+ '@typescript-eslint/visitor-keys@8.37.0':
dependencies:
- '@napi-rs/wasm-runtime': 0.2.11
+ '@typescript-eslint/types': 8.37.0
+ eslint-visitor-keys: 4.2.1
+
+ '@unrs/resolver-binding-android-arm-eabi@1.11.1':
optional: true
- '@unrs/resolver-binding-win32-arm64-msvc@1.11.0':
+ '@unrs/resolver-binding-android-arm64@1.11.1':
optional: true
- '@unrs/resolver-binding-win32-ia32-msvc@1.11.0':
+ '@unrs/resolver-binding-darwin-arm64@1.11.1':
optional: true
- '@unrs/resolver-binding-win32-x64-msvc@1.11.0':
+ '@unrs/resolver-binding-darwin-x64@1.11.1':
optional: true
- '@vitejs/plugin-react@4.6.0(vite@5.4.19(@types/node@24.0.10)(lightningcss@1.30.1))':
+ '@unrs/resolver-binding-freebsd-x64@1.11.1':
+ optional: true
+
+ '@unrs/resolver-binding-linux-arm-gnueabihf@1.11.1':
+ optional: true
+
+ '@unrs/resolver-binding-linux-arm-musleabihf@1.11.1':
+ optional: true
+
+ '@unrs/resolver-binding-linux-arm64-gnu@1.11.1':
+ optional: true
+
+ '@unrs/resolver-binding-linux-arm64-musl@1.11.1':
+ optional: true
+
+ '@unrs/resolver-binding-linux-ppc64-gnu@1.11.1':
+ optional: true
+
+ '@unrs/resolver-binding-linux-riscv64-gnu@1.11.1':
+ optional: true
+
+ '@unrs/resolver-binding-linux-riscv64-musl@1.11.1':
+ optional: true
+
+ '@unrs/resolver-binding-linux-s390x-gnu@1.11.1':
+ optional: true
+
+ '@unrs/resolver-binding-linux-x64-gnu@1.11.1':
+ optional: true
+
+ '@unrs/resolver-binding-linux-x64-musl@1.11.1':
+ optional: true
+
+ '@unrs/resolver-binding-wasm32-wasi@1.11.1':
+ dependencies:
+ '@napi-rs/wasm-runtime': 0.2.12
+ optional: true
+
+ '@unrs/resolver-binding-win32-arm64-msvc@1.11.1':
+ optional: true
+
+ '@unrs/resolver-binding-win32-ia32-msvc@1.11.1':
+ optional: true
+
+ '@unrs/resolver-binding-win32-x64-msvc@1.11.1':
+ optional: true
+
+ '@vitejs/plugin-react@4.6.0(vite@7.0.4(@types/node@24.0.13)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0))':
dependencies:
'@babel/core': 7.28.0
'@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.28.0)
@@ -3875,7 +4006,7 @@ snapshots:
'@rolldown/pluginutils': 1.0.0-beta.19
'@types/babel__core': 7.20.5
react-refresh: 0.17.0
- vite: 5.4.19(@types/node@24.0.10)(lightningcss@1.30.1)
+ vite: 7.0.4(@types/node@24.0.13)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)
transitivePeerDependencies:
- supports-color
@@ -3884,16 +4015,16 @@ snapshots:
'@types/chai': 5.2.2
'@vitest/spy': 3.2.4
'@vitest/utils': 3.2.4
- chai: 5.2.0
+ chai: 5.2.1
tinyrainbow: 2.0.0
- '@vitest/mocker@3.2.4(vite@5.4.19(@types/node@24.0.10)(lightningcss@1.30.1))':
+ '@vitest/mocker@3.2.4(vite@7.0.4(@types/node@24.0.13)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0))':
dependencies:
'@vitest/spy': 3.2.4
estree-walker: 3.0.3
magic-string: 0.30.17
optionalDependencies:
- vite: 5.4.19(@types/node@24.0.10)(lightningcss@1.30.1)
+ vite: 7.0.4(@types/node@24.0.13)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)
'@vitest/pretty-format@3.2.4':
dependencies:
@@ -4068,7 +4199,7 @@ snapshots:
browserslist@4.25.1:
dependencies:
caniuse-lite: 1.0.30001727
- electron-to-chromium: 1.5.179
+ electron-to-chromium: 1.5.182
node-releases: 2.0.19
update-browserslist-db: 1.1.3(browserslist@4.25.1)
@@ -4099,7 +4230,7 @@ snapshots:
caniuse-lite@1.0.30001727: {}
- chai@5.2.0:
+ chai@5.2.1:
dependencies:
assertion-error: 2.0.1
check-error: 2.1.1
@@ -4245,7 +4376,7 @@ snapshots:
optionalDependencies:
'@types/trusted-types': 2.0.7
- dotenv@17.0.1: {}
+ dotenv@17.2.0: {}
dunder-proto@1.0.1:
dependencies:
@@ -4253,7 +4384,7 @@ snapshots:
es-errors: 1.3.0
gopd: 1.2.0
- electron-to-chromium@1.5.179: {}
+ electron-to-chromium@1.5.182: {}
emoji-regex@9.2.2: {}
@@ -4274,7 +4405,7 @@ snapshots:
engine.io@6.6.4:
dependencies:
'@types/cors': 2.8.19
- '@types/node': 24.0.10
+ '@types/node': 24.0.13
accepts: 1.3.8
base64id: 2.0.0
cookie: 0.7.2
@@ -4397,49 +4528,52 @@ snapshots:
is-date-object: 1.1.0
is-symbol: 1.1.1
- esbuild@0.21.5:
+ esbuild@0.25.6:
optionalDependencies:
- '@esbuild/aix-ppc64': 0.21.5
- '@esbuild/android-arm': 0.21.5
- '@esbuild/android-arm64': 0.21.5
- '@esbuild/android-x64': 0.21.5
- '@esbuild/darwin-arm64': 0.21.5
- '@esbuild/darwin-x64': 0.21.5
- '@esbuild/freebsd-arm64': 0.21.5
- '@esbuild/freebsd-x64': 0.21.5
- '@esbuild/linux-arm': 0.21.5
- '@esbuild/linux-arm64': 0.21.5
- '@esbuild/linux-ia32': 0.21.5
- '@esbuild/linux-loong64': 0.21.5
- '@esbuild/linux-mips64el': 0.21.5
- '@esbuild/linux-ppc64': 0.21.5
- '@esbuild/linux-riscv64': 0.21.5
- '@esbuild/linux-s390x': 0.21.5
- '@esbuild/linux-x64': 0.21.5
- '@esbuild/netbsd-x64': 0.21.5
- '@esbuild/openbsd-x64': 0.21.5
- '@esbuild/sunos-x64': 0.21.5
- '@esbuild/win32-arm64': 0.21.5
- '@esbuild/win32-ia32': 0.21.5
- '@esbuild/win32-x64': 0.21.5
+ '@esbuild/aix-ppc64': 0.25.6
+ '@esbuild/android-arm': 0.25.6
+ '@esbuild/android-arm64': 0.25.6
+ '@esbuild/android-x64': 0.25.6
+ '@esbuild/darwin-arm64': 0.25.6
+ '@esbuild/darwin-x64': 0.25.6
+ '@esbuild/freebsd-arm64': 0.25.6
+ '@esbuild/freebsd-x64': 0.25.6
+ '@esbuild/linux-arm': 0.25.6
+ '@esbuild/linux-arm64': 0.25.6
+ '@esbuild/linux-ia32': 0.25.6
+ '@esbuild/linux-loong64': 0.25.6
+ '@esbuild/linux-mips64el': 0.25.6
+ '@esbuild/linux-ppc64': 0.25.6
+ '@esbuild/linux-riscv64': 0.25.6
+ '@esbuild/linux-s390x': 0.25.6
+ '@esbuild/linux-x64': 0.25.6
+ '@esbuild/netbsd-arm64': 0.25.6
+ '@esbuild/netbsd-x64': 0.25.6
+ '@esbuild/openbsd-arm64': 0.25.6
+ '@esbuild/openbsd-x64': 0.25.6
+ '@esbuild/openharmony-arm64': 0.25.6
+ '@esbuild/sunos-x64': 0.25.6
+ '@esbuild/win32-arm64': 0.25.6
+ '@esbuild/win32-ia32': 0.25.6
+ '@esbuild/win32-x64': 0.25.6
escalade@3.2.0: {}
escape-string-regexp@4.0.0: {}
- eslint-config-next@15.3.5(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3):
+ eslint-config-next@15.3.5(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3):
dependencies:
'@next/eslint-plugin-next': 15.3.5
'@rushstack/eslint-patch': 1.12.0
- '@typescript-eslint/eslint-plugin': 8.36.0(@typescript-eslint/parser@8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3))(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3)
- '@typescript-eslint/parser': 8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3)
- eslint: 9.30.1(jiti@2.4.2)
+ '@typescript-eslint/eslint-plugin': 8.36.0(@typescript-eslint/parser@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
+ '@typescript-eslint/parser': 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
+ eslint: 9.31.0(jiti@2.4.2)
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.30.1(jiti@2.4.2))
- eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.30.1(jiti@2.4.2))
- eslint-plugin-jsx-a11y: 6.10.2(eslint@9.30.1(jiti@2.4.2))
- eslint-plugin-react: 7.37.5(eslint@9.30.1(jiti@2.4.2))
- eslint-plugin-react-hooks: 5.2.0(eslint@9.30.1(jiti@2.4.2))
+ eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.31.0(jiti@2.4.2))
+ eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.31.0(jiti@2.4.2))
+ eslint-plugin-jsx-a11y: 6.10.2(eslint@9.31.0(jiti@2.4.2))
+ eslint-plugin-react: 7.37.5(eslint@9.31.0(jiti@2.4.2))
+ eslint-plugin-react-hooks: 5.2.0(eslint@9.31.0(jiti@2.4.2))
optionalDependencies:
typescript: 5.8.3
transitivePeerDependencies:
@@ -4447,6 +4581,10 @@ snapshots:
- eslint-plugin-import-x
- supports-color
+ eslint-config-prettier@10.1.5(eslint@9.31.0(jiti@2.4.2)):
+ dependencies:
+ eslint: 9.31.0(jiti@2.4.2)
+
eslint-import-resolver-node@0.3.9:
dependencies:
debug: 3.2.7
@@ -4455,33 +4593,33 @@ snapshots:
transitivePeerDependencies:
- supports-color
- eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0)(eslint@9.30.1(jiti@2.4.2)):
+ eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0)(eslint@9.31.0(jiti@2.4.2)):
dependencies:
'@nolyfill/is-core-module': 1.0.39
debug: 4.4.1
- eslint: 9.30.1(jiti@2.4.2)
+ eslint: 9.31.0(jiti@2.4.2)
get-tsconfig: 4.10.1
is-bun-module: 2.0.0
stable-hash: 0.0.5
tinyglobby: 0.2.14
- unrs-resolver: 1.11.0
+ unrs-resolver: 1.11.1
optionalDependencies:
- eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.30.1(jiti@2.4.2))
+ eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.31.0(jiti@2.4.2))
transitivePeerDependencies:
- supports-color
- eslint-module-utils@2.12.1(@typescript-eslint/parser@8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.30.1(jiti@2.4.2)):
+ eslint-module-utils@2.12.1(@typescript-eslint/parser@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.31.0(jiti@2.4.2)):
dependencies:
debug: 3.2.7
optionalDependencies:
- '@typescript-eslint/parser': 8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3)
- eslint: 9.30.1(jiti@2.4.2)
+ '@typescript-eslint/parser': 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
+ eslint: 9.31.0(jiti@2.4.2)
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.30.1(jiti@2.4.2))
+ eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.31.0(jiti@2.4.2))
transitivePeerDependencies:
- supports-color
- eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.30.1(jiti@2.4.2)):
+ eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.31.0(jiti@2.4.2)):
dependencies:
'@rtsao/scc': 1.1.0
array-includes: 3.1.9
@@ -4490,9 +4628,9 @@ snapshots:
array.prototype.flatmap: 1.3.3
debug: 3.2.7
doctrine: 2.1.0
- eslint: 9.30.1(jiti@2.4.2)
+ eslint: 9.31.0(jiti@2.4.2)
eslint-import-resolver-node: 0.3.9
- eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.30.1(jiti@2.4.2))
+ eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.31.0(jiti@2.4.2))
hasown: 2.0.2
is-core-module: 2.16.1
is-glob: 4.0.3
@@ -4504,13 +4642,13 @@ snapshots:
string.prototype.trimend: 1.0.9
tsconfig-paths: 3.15.0
optionalDependencies:
- '@typescript-eslint/parser': 8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.8.3)
+ '@typescript-eslint/parser': 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
transitivePeerDependencies:
- eslint-import-resolver-typescript
- eslint-import-resolver-webpack
- supports-color
- eslint-plugin-jsx-a11y@6.10.2(eslint@9.30.1(jiti@2.4.2)):
+ eslint-plugin-jsx-a11y@6.10.2(eslint@9.31.0(jiti@2.4.2)):
dependencies:
aria-query: 5.3.2
array-includes: 3.1.9
@@ -4520,7 +4658,7 @@ snapshots:
axobject-query: 4.1.0
damerau-levenshtein: 1.0.8
emoji-regex: 9.2.2
- eslint: 9.30.1(jiti@2.4.2)
+ eslint: 9.31.0(jiti@2.4.2)
hasown: 2.0.2
jsx-ast-utils: 3.3.5
language-tags: 1.0.9
@@ -4529,11 +4667,11 @@ snapshots:
safe-regex-test: 1.1.0
string.prototype.includes: 2.0.1
- eslint-plugin-react-hooks@5.2.0(eslint@9.30.1(jiti@2.4.2)):
+ eslint-plugin-react-hooks@5.2.0(eslint@9.31.0(jiti@2.4.2)):
dependencies:
- eslint: 9.30.1(jiti@2.4.2)
+ eslint: 9.31.0(jiti@2.4.2)
- eslint-plugin-react@7.37.5(eslint@9.30.1(jiti@2.4.2)):
+ eslint-plugin-react@7.37.5(eslint@9.31.0(jiti@2.4.2)):
dependencies:
array-includes: 3.1.9
array.prototype.findlast: 1.2.5
@@ -4541,7 +4679,7 @@ snapshots:
array.prototype.tosorted: 1.1.4
doctrine: 2.1.0
es-iterator-helpers: 1.2.1
- eslint: 9.30.1(jiti@2.4.2)
+ eslint: 9.31.0(jiti@2.4.2)
estraverse: 5.3.0
hasown: 2.0.2
jsx-ast-utils: 3.3.5
@@ -4564,15 +4702,15 @@ snapshots:
eslint-visitor-keys@4.2.1: {}
- eslint@9.30.1(jiti@2.4.2):
+ eslint@9.31.0(jiti@2.4.2):
dependencies:
- '@eslint-community/eslint-utils': 4.7.0(eslint@9.30.1(jiti@2.4.2))
+ '@eslint-community/eslint-utils': 4.7.0(eslint@9.31.0(jiti@2.4.2))
'@eslint-community/regexpp': 4.12.1
'@eslint/config-array': 0.21.0
'@eslint/config-helpers': 0.3.0
- '@eslint/core': 0.14.0
+ '@eslint/core': 0.15.1
'@eslint/eslintrc': 3.3.1
- '@eslint/js': 9.30.1
+ '@eslint/js': 9.31.0
'@eslint/plugin-kit': 0.3.3
'@humanfs/node': 0.16.6
'@humanwhocodes/module-importer': 1.0.1
@@ -5025,7 +5163,7 @@ snapshots:
object.assign: 4.1.7
object.values: 1.2.1
- katex@0.16.20:
+ katex@0.16.22:
dependencies:
commander: 8.3.0
@@ -5113,9 +5251,9 @@ snapshots:
dependencies:
'@jridgewell/sourcemap-codec': 1.5.4
- marked-katex-extension@5.1.5(katex@0.16.20)(marked@16.0.0):
+ marked-katex-extension@5.1.5(katex@0.16.22)(marked@16.0.0):
dependencies:
- katex: 0.16.20
+ katex: 0.16.22
marked: 16.0.0
marked@16.0.0: {}
@@ -5185,7 +5323,7 @@ snapshots:
'@next/swc-linux-x64-musl': 15.3.5
'@next/swc-win32-arm64-msvc': 15.3.5
'@next/swc-win32-x64-msvc': 15.3.5
- sharp: 0.34.2
+ sharp: 0.34.3
transitivePeerDependencies:
- '@babel/core'
- babel-plugin-macros
@@ -5382,30 +5520,30 @@ snapshots:
reusify@1.1.0: {}
- rollup@4.44.2:
+ rollup@4.45.0:
dependencies:
'@types/estree': 1.0.8
optionalDependencies:
- '@rollup/rollup-android-arm-eabi': 4.44.2
- '@rollup/rollup-android-arm64': 4.44.2
- '@rollup/rollup-darwin-arm64': 4.44.2
- '@rollup/rollup-darwin-x64': 4.44.2
- '@rollup/rollup-freebsd-arm64': 4.44.2
- '@rollup/rollup-freebsd-x64': 4.44.2
- '@rollup/rollup-linux-arm-gnueabihf': 4.44.2
- '@rollup/rollup-linux-arm-musleabihf': 4.44.2
- '@rollup/rollup-linux-arm64-gnu': 4.44.2
- '@rollup/rollup-linux-arm64-musl': 4.44.2
- '@rollup/rollup-linux-loongarch64-gnu': 4.44.2
- '@rollup/rollup-linux-powerpc64le-gnu': 4.44.2
- '@rollup/rollup-linux-riscv64-gnu': 4.44.2
- '@rollup/rollup-linux-riscv64-musl': 4.44.2
- '@rollup/rollup-linux-s390x-gnu': 4.44.2
- '@rollup/rollup-linux-x64-gnu': 4.44.2
- '@rollup/rollup-linux-x64-musl': 4.44.2
- '@rollup/rollup-win32-arm64-msvc': 4.44.2
- '@rollup/rollup-win32-ia32-msvc': 4.44.2
- '@rollup/rollup-win32-x64-msvc': 4.44.2
+ '@rollup/rollup-android-arm-eabi': 4.45.0
+ '@rollup/rollup-android-arm64': 4.45.0
+ '@rollup/rollup-darwin-arm64': 4.45.0
+ '@rollup/rollup-darwin-x64': 4.45.0
+ '@rollup/rollup-freebsd-arm64': 4.45.0
+ '@rollup/rollup-freebsd-x64': 4.45.0
+ '@rollup/rollup-linux-arm-gnueabihf': 4.45.0
+ '@rollup/rollup-linux-arm-musleabihf': 4.45.0
+ '@rollup/rollup-linux-arm64-gnu': 4.45.0
+ '@rollup/rollup-linux-arm64-musl': 4.45.0
+ '@rollup/rollup-linux-loongarch64-gnu': 4.45.0
+ '@rollup/rollup-linux-powerpc64le-gnu': 4.45.0
+ '@rollup/rollup-linux-riscv64-gnu': 4.45.0
+ '@rollup/rollup-linux-riscv64-musl': 4.45.0
+ '@rollup/rollup-linux-s390x-gnu': 4.45.0
+ '@rollup/rollup-linux-x64-gnu': 4.45.0
+ '@rollup/rollup-linux-x64-musl': 4.45.0
+ '@rollup/rollup-win32-arm64-msvc': 4.45.0
+ '@rollup/rollup-win32-ia32-msvc': 4.45.0
+ '@rollup/rollup-win32-x64-msvc': 4.45.0
fsevents: 2.3.3
rrweb-cssom@0.8.0: {}
@@ -5467,33 +5605,34 @@ snapshots:
es-errors: 1.3.0
es-object-atoms: 1.1.1
- sharp@0.34.2:
+ sharp@0.34.3:
dependencies:
color: 4.2.3
detect-libc: 2.0.4
semver: 7.7.2
optionalDependencies:
- '@img/sharp-darwin-arm64': 0.34.2
- '@img/sharp-darwin-x64': 0.34.2
- '@img/sharp-libvips-darwin-arm64': 1.1.0
- '@img/sharp-libvips-darwin-x64': 1.1.0
- '@img/sharp-libvips-linux-arm': 1.1.0
- '@img/sharp-libvips-linux-arm64': 1.1.0
- '@img/sharp-libvips-linux-ppc64': 1.1.0
- '@img/sharp-libvips-linux-s390x': 1.1.0
- '@img/sharp-libvips-linux-x64': 1.1.0
- '@img/sharp-libvips-linuxmusl-arm64': 1.1.0
- '@img/sharp-libvips-linuxmusl-x64': 1.1.0
- '@img/sharp-linux-arm': 0.34.2
- '@img/sharp-linux-arm64': 0.34.2
- '@img/sharp-linux-s390x': 0.34.2
- '@img/sharp-linux-x64': 0.34.2
- '@img/sharp-linuxmusl-arm64': 0.34.2
- '@img/sharp-linuxmusl-x64': 0.34.2
- '@img/sharp-wasm32': 0.34.2
- '@img/sharp-win32-arm64': 0.34.2
- '@img/sharp-win32-ia32': 0.34.2
- '@img/sharp-win32-x64': 0.34.2
+ '@img/sharp-darwin-arm64': 0.34.3
+ '@img/sharp-darwin-x64': 0.34.3
+ '@img/sharp-libvips-darwin-arm64': 1.2.0
+ '@img/sharp-libvips-darwin-x64': 1.2.0
+ '@img/sharp-libvips-linux-arm': 1.2.0
+ '@img/sharp-libvips-linux-arm64': 1.2.0
+ '@img/sharp-libvips-linux-ppc64': 1.2.0
+ '@img/sharp-libvips-linux-s390x': 1.2.0
+ '@img/sharp-libvips-linux-x64': 1.2.0
+ '@img/sharp-libvips-linuxmusl-arm64': 1.2.0
+ '@img/sharp-libvips-linuxmusl-x64': 1.2.0
+ '@img/sharp-linux-arm': 0.34.3
+ '@img/sharp-linux-arm64': 0.34.3
+ '@img/sharp-linux-ppc64': 0.34.3
+ '@img/sharp-linux-s390x': 0.34.3
+ '@img/sharp-linux-x64': 0.34.3
+ '@img/sharp-linuxmusl-arm64': 0.34.3
+ '@img/sharp-linuxmusl-x64': 0.34.3
+ '@img/sharp-wasm32': 0.34.3
+ '@img/sharp-win32-arm64': 0.34.3
+ '@img/sharp-win32-ia32': 0.34.3
+ '@img/sharp-win32-x64': 0.34.3
optional: true
shebang-command@2.0.0:
@@ -5779,29 +5918,29 @@ snapshots:
undici-types@7.8.0: {}
- unrs-resolver@1.11.0:
+ unrs-resolver@1.11.1:
dependencies:
napi-postinstall: 0.3.0
optionalDependencies:
- '@unrs/resolver-binding-android-arm-eabi': 1.11.0
- '@unrs/resolver-binding-android-arm64': 1.11.0
- '@unrs/resolver-binding-darwin-arm64': 1.11.0
- '@unrs/resolver-binding-darwin-x64': 1.11.0
- '@unrs/resolver-binding-freebsd-x64': 1.11.0
- '@unrs/resolver-binding-linux-arm-gnueabihf': 1.11.0
- '@unrs/resolver-binding-linux-arm-musleabihf': 1.11.0
- '@unrs/resolver-binding-linux-arm64-gnu': 1.11.0
- '@unrs/resolver-binding-linux-arm64-musl': 1.11.0
- '@unrs/resolver-binding-linux-ppc64-gnu': 1.11.0
- '@unrs/resolver-binding-linux-riscv64-gnu': 1.11.0
- '@unrs/resolver-binding-linux-riscv64-musl': 1.11.0
- '@unrs/resolver-binding-linux-s390x-gnu': 1.11.0
- '@unrs/resolver-binding-linux-x64-gnu': 1.11.0
- '@unrs/resolver-binding-linux-x64-musl': 1.11.0
- '@unrs/resolver-binding-wasm32-wasi': 1.11.0
- '@unrs/resolver-binding-win32-arm64-msvc': 1.11.0
- '@unrs/resolver-binding-win32-ia32-msvc': 1.11.0
- '@unrs/resolver-binding-win32-x64-msvc': 1.11.0
+ '@unrs/resolver-binding-android-arm-eabi': 1.11.1
+ '@unrs/resolver-binding-android-arm64': 1.11.1
+ '@unrs/resolver-binding-darwin-arm64': 1.11.1
+ '@unrs/resolver-binding-darwin-x64': 1.11.1
+ '@unrs/resolver-binding-freebsd-x64': 1.11.1
+ '@unrs/resolver-binding-linux-arm-gnueabihf': 1.11.1
+ '@unrs/resolver-binding-linux-arm-musleabihf': 1.11.1
+ '@unrs/resolver-binding-linux-arm64-gnu': 1.11.1
+ '@unrs/resolver-binding-linux-arm64-musl': 1.11.1
+ '@unrs/resolver-binding-linux-ppc64-gnu': 1.11.1
+ '@unrs/resolver-binding-linux-riscv64-gnu': 1.11.1
+ '@unrs/resolver-binding-linux-riscv64-musl': 1.11.1
+ '@unrs/resolver-binding-linux-s390x-gnu': 1.11.1
+ '@unrs/resolver-binding-linux-x64-gnu': 1.11.1
+ '@unrs/resolver-binding-linux-x64-musl': 1.11.1
+ '@unrs/resolver-binding-wasm32-wasi': 1.11.1
+ '@unrs/resolver-binding-win32-arm64-msvc': 1.11.1
+ '@unrs/resolver-binding-win32-ia32-msvc': 1.11.1
+ '@unrs/resolver-binding-win32-x64-msvc': 1.11.1
update-browserslist-db@1.1.3(browserslist@4.25.1):
dependencies:
@@ -5815,15 +5954,16 @@ snapshots:
vary@1.1.2: {}
- vite-node@3.2.4(@types/node@24.0.10)(lightningcss@1.30.1):
+ vite-node@3.2.4(@types/node@24.0.13)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0):
dependencies:
cac: 6.7.14
debug: 4.4.1
es-module-lexer: 1.7.0
pathe: 2.0.3
- vite: 5.4.19(@types/node@24.0.10)(lightningcss@1.30.1)
+ vite: 7.0.4(@types/node@24.0.13)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)
transitivePeerDependencies:
- '@types/node'
+ - jiti
- less
- lightningcss
- sass
@@ -5832,28 +5972,35 @@ snapshots:
- sugarss
- supports-color
- terser
+ - tsx
+ - yaml
- vite@5.4.19(@types/node@24.0.10)(lightningcss@1.30.1):
+ vite@7.0.4(@types/node@24.0.13)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0):
dependencies:
- esbuild: 0.21.5
+ esbuild: 0.25.6
+ fdir: 6.4.6(picomatch@4.0.2)
+ picomatch: 4.0.2
postcss: 8.5.6
- rollup: 4.44.2
+ rollup: 4.45.0
+ tinyglobby: 0.2.14
optionalDependencies:
- '@types/node': 24.0.10
+ '@types/node': 24.0.13
fsevents: 2.3.3
+ jiti: 2.4.2
lightningcss: 1.30.1
+ yaml: 2.8.0
- vitest@3.2.4(@types/node@24.0.10)(jsdom@26.1.0)(lightningcss@1.30.1):
+ vitest@3.2.4(@types/node@24.0.13)(jiti@2.4.2)(jsdom@26.1.0)(lightningcss@1.30.1)(yaml@2.8.0):
dependencies:
'@types/chai': 5.2.2
'@vitest/expect': 3.2.4
- '@vitest/mocker': 3.2.4(vite@5.4.19(@types/node@24.0.10)(lightningcss@1.30.1))
+ '@vitest/mocker': 3.2.4(vite@7.0.4(@types/node@24.0.13)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0))
'@vitest/pretty-format': 3.2.4
'@vitest/runner': 3.2.4
'@vitest/snapshot': 3.2.4
'@vitest/spy': 3.2.4
'@vitest/utils': 3.2.4
- chai: 5.2.0
+ chai: 5.2.1
debug: 4.4.1
expect-type: 1.2.2
magic-string: 0.30.17
@@ -5865,13 +6012,14 @@ snapshots:
tinyglobby: 0.2.14
tinypool: 1.1.1
tinyrainbow: 2.0.0
- vite: 5.4.19(@types/node@24.0.10)(lightningcss@1.30.1)
- vite-node: 3.2.4(@types/node@24.0.10)(lightningcss@1.30.1)
+ vite: 7.0.4(@types/node@24.0.13)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)
+ vite-node: 3.2.4(@types/node@24.0.13)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)
why-is-node-running: 2.3.0
optionalDependencies:
- '@types/node': 24.0.10
+ '@types/node': 24.0.13
jsdom: 26.1.0
transitivePeerDependencies:
+ - jiti
- less
- lightningcss
- msw
@@ -5881,6 +6029,8 @@ snapshots:
- sugarss
- supports-color
- terser
+ - tsx
+ - yaml
w3c-xmlserializer@5.0.0:
dependencies:
@@ -5969,4 +6119,4 @@ snapshots:
yocto-queue@0.1.0: {}
- zod@3.25.75: {}
+ zod@3.25.76: {}
diff --git a/postcss.config.mjs b/postcss.config.mjs
index a943082..c7bcb4b 100644
--- a/postcss.config.mjs
+++ b/postcss.config.mjs
@@ -1,7 +1,5 @@
-/** @type {import('postcss-load-config').Config} */
const config = {
- plugins: { "@tailwindcss/postcss": {},
- },
+ plugins: ["@tailwindcss/postcss"],
};
export default config;
diff --git a/src/app/CourseList.tsx b/src/app/CourseList.tsx
index aab5ee9..7aec5fd 100644
--- a/src/app/CourseList.tsx
+++ b/src/app/CourseList.tsx
@@ -34,11 +34,11 @@ function getTermName(startDate: string) {
}
export default function CourseList() {
- const [allSettings] = useLocalCoursesSettingsQuery();
+ const { data: allSettings } = useLocalCoursesSettingsQuery();
const coursesByStartDate = groupByStartDate(allSettings);
- const sortedDates = Object.keys(coursesByStartDate).sort()
+ const sortedDates = Object.keys(coursesByStartDate).sort();
return (
diff --git a/src/app/MyToaster.tsx b/src/app/MyToaster.tsx
index 9038a29..fb58d3e 100644
--- a/src/app/MyToaster.tsx
+++ b/src/app/MyToaster.tsx
@@ -1,10 +1,8 @@
"use client";
import React from "react";
-import { Toaster, ToastBar, useToaster } from "react-hot-toast";
+import { Toaster } from "react-hot-toast";
export const MyToaster = () => {
- const { toasts, handlers } = useToaster({ duration: Infinity });
- const { startPause, endPause } = handlers;
return (
//
diff --git a/src/app/api/canvas/[...rest]/route.ts b/src/app/api/canvas/[...rest]/route.ts
index 083efd4..353c4ca 100644
--- a/src/app/api/canvas/[...rest]/route.ts
+++ b/src/app/api/canvas/[...rest]/route.ts
@@ -17,9 +17,10 @@ const getUrl = (params: { rest: string[] }, req: NextRequest) => {
appendQueryParams(url, req);
- return url;``
+ return url;
};
+// eslint-disable-next-line @typescript-eslint/no-explicit-any
const proxyResponseHeaders = (response: any) => {
const headers = new Headers();
Object.entries(response.headers).forEach(([key, value]) => {
@@ -39,6 +40,7 @@ export async function GET(
const response = await axiosClient.get(url.toString());
const headers = proxyResponseHeaders(response);
return NextResponse.json(response.data, { headers });
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
} catch (error: any) {
console.log("canvas get error", error, error?.message);
return NextResponse.json(
@@ -61,6 +63,7 @@ export async function POST(
const headers = proxyResponseHeaders(response);
return new NextResponse(JSON.stringify(response.data), { headers });
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
} catch (error: any) {
if (isAxiosError(error)) {
console.log(url.toString(), body);
@@ -89,6 +92,7 @@ export async function PUT(
const headers = proxyResponseHeaders(response);
return new NextResponse(JSON.stringify(response.data), { headers });
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
} catch (error: any) {
if (isAxiosError(error)) {
console.log(url.toString(), body);
@@ -123,6 +127,7 @@ export async function DELETE(
const headers = proxyResponseHeaders(response);
return new NextResponse(JSON.stringify(response.data), { headers });
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
} catch (error: any) {
return new NextResponse(
JSON.stringify({
diff --git a/src/app/course/[courseName]/CourseNavigation.tsx b/src/app/course/[courseName]/CourseNavigation.tsx
index e421aff..8914da7 100644
--- a/src/app/course/[courseName]/CourseNavigation.tsx
+++ b/src/app/course/[courseName]/CourseNavigation.tsx
@@ -22,7 +22,7 @@ import { useQueryClient } from "@tanstack/react-query";
import Link from "next/link";
export function CourseNavigation() {
- const [settings] = useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
const queryClient = useQueryClient();
const canvasAssignmentsQuery = useCanvasAssignmentsQuery();
diff --git a/src/app/course/[courseName]/CourseSettingsLink.tsx b/src/app/course/[courseName]/CourseSettingsLink.tsx
index c18d319..453480c 100644
--- a/src/app/course/[courseName]/CourseSettingsLink.tsx
+++ b/src/app/course/[courseName]/CourseSettingsLink.tsx
@@ -7,7 +7,7 @@ import { getCourseSettingsUrl } from "@/services/urlUtils";
export default function CourseSettingsLink() {
const { courseName } = useCourseContext();
- const [settings] = useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
return (
{settings.name}
diff --git a/src/app/course/[courseName]/calendar/CalendarMonth.tsx b/src/app/course/[courseName]/calendar/CalendarMonth.tsx
index e2e08da..866ac01 100644
--- a/src/app/course/[courseName]/calendar/CalendarMonth.tsx
+++ b/src/app/course/[courseName]/calendar/CalendarMonth.tsx
@@ -11,7 +11,7 @@ import DownChevron from "@/components/icons/DownChevron";
export const CalendarMonth = ({ month }: { month: CalendarMonthModel }) => {
// const weekInMilliseconds = 604_800_000;
const four_days_in_milliseconds = 345_600_000;
- const [settings] = useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
const startDate = getDateFromStringOrThrow(
settings.startDate,
"week calculation start date"
@@ -50,7 +50,9 @@ export const CalendarMonth = ({ month }: { month: CalendarMonthModel }) => {
role="button"
>
{monthName}
-
{isExpanded ? : }
+
+ {isExpanded ? : }
+
)}
diff --git a/src/app/course/[courseName]/calendar/CalendarWeek.tsx b/src/app/course/[courseName]/calendar/CalendarWeek.tsx
index 0cc0ecd..29a2cd3 100644
--- a/src/app/course/[courseName]/calendar/CalendarWeek.tsx
+++ b/src/app/course/[courseName]/calendar/CalendarWeek.tsx
@@ -11,7 +11,7 @@ export function CalendarWeek({
week: string[]; //date strings
monthNumber: number;
}) {
- const [settings]= useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
const startDate = getDateFromStringOrThrow(
settings.startDate,
"week calculation start date"
diff --git a/src/app/course/[courseName]/calendar/CourseCalendar.tsx b/src/app/course/[courseName]/calendar/CourseCalendar.tsx
index c12a67f..5a230b1 100644
--- a/src/app/course/[courseName]/calendar/CourseCalendar.tsx
+++ b/src/app/course/[courseName]/calendar/CourseCalendar.tsx
@@ -5,10 +5,9 @@ import { CalendarMonth } from "./CalendarMonth";
import { useLocalCourseSettingsQuery } from "@/hooks/localCourse/localCoursesHooks";
import { useEffect, useMemo, useRef } from "react";
import CalendarItemsContextProvider from "../context/CalendarItemsContextProvider";
-import { SuspenseAndErrorHandling } from "@/components/SuspenseAndErrorHandling";
export default function CourseCalendar() {
- const [settings] = useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
const startDateTime = useMemo(
() => getDateFromStringOrThrow(settings.startDate, "course start date"),
diff --git a/src/app/course/[courseName]/calendar/day/Day.tsx b/src/app/course/[courseName]/calendar/day/Day.tsx
index 8cf2161..bd2dcc6 100644
--- a/src/app/course/[courseName]/calendar/day/Day.tsx
+++ b/src/app/course/[courseName]/calendar/day/Day.tsx
@@ -19,7 +19,7 @@ export default function Day({ day, month }: { day: string; month: number }) {
getDateOnlyMarkdownString(new Date()) ===
getDateOnlyMarkdownString(dayAsDate);
- const [settings] = useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
const { itemDropOnDay } = useDraggingContext();
const { todaysAssignments, todaysQuizzes, todaysPages } = useTodaysItems(day);
diff --git a/src/app/course/[courseName]/calendar/day/DayTitle.tsx b/src/app/course/[courseName]/calendar/day/DayTitle.tsx
index 0c7a7ef..cabf522 100644
--- a/src/app/course/[courseName]/calendar/day/DayTitle.tsx
+++ b/src/app/course/[courseName]/calendar/day/DayTitle.tsx
@@ -13,7 +13,7 @@ import { useRef, useState } from "react";
export function DayTitle({ day, dayAsDate }: { day: string; dayAsDate: Date }) {
const { courseName } = useCourseContext();
- const [weeks] = useLecturesSuspenseQuery();
+ const { data: weeks } = useLecturesSuspenseQuery();
const { setIsDragging } = useDragStyleContext();
const todaysLecture = getLectureForDay(weeks, dayAsDate);
const modal = useModal();
diff --git a/src/app/course/[courseName]/calendar/day/getStatus.tsx b/src/app/course/[courseName]/calendar/day/getStatus.tsx
index 2b984e6..7fbaf8f 100644
--- a/src/app/course/[courseName]/calendar/day/getStatus.tsx
+++ b/src/app/course/[courseName]/calendar/day/getStatus.tsx
@@ -35,7 +35,6 @@ export const getStatus = ({
if (type === "page") {
const canvasPage = canvasItem as CanvasPage;
- const page = item as LocalCoursePage;
if (!canvasPage.published)
return { status: "incomplete", message: "canvas page not published" };
diff --git a/src/app/course/[courseName]/calendar/day/useTodaysItems.tsx b/src/app/course/[courseName]/calendar/day/useTodaysItems.tsx
index 0f2c2a6..bba42b9 100644
--- a/src/app/course/[courseName]/calendar/day/useTodaysItems.tsx
+++ b/src/app/course/[courseName]/calendar/day/useTodaysItems.tsx
@@ -15,7 +15,7 @@ import { getStatus } from "./getStatus";
import { useLocalCourseSettingsQuery } from "@/hooks/localCourse/localCoursesHooks";
export function useTodaysItems(day: string) {
- const [settings] = useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
const dayAsDate = getDateFromStringOrThrow(
day,
"calculating same month in day items"
diff --git a/src/app/course/[courseName]/context/drag/useItemDropOnDay.ts b/src/app/course/[courseName]/context/drag/useItemDropOnDay.ts
index a50adf6..061bfe3 100644
--- a/src/app/course/[courseName]/context/drag/useItemDropOnDay.ts
+++ b/src/app/course/[courseName]/context/drag/useItemDropOnDay.ts
@@ -35,10 +35,9 @@ export function useItemDropOnDay({
setIsLoading: Dispatch
>;
modal: { isOpen: boolean; openModal: () => void; closeModal: () => void };
}) {
- const [settings] = useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
const { courseName } = useCourseContext();
- // const { data: weeks } = useLecturesByWeekQuery();
- const [weeks] = useLecturesSuspenseQuery();
+ const { data: weeks } = useLecturesSuspenseQuery();
const updateQuizMutation = useUpdateQuizMutation();
const updateLectureMutation = useLectureUpdateMutation();
const updateAssignmentMutation = useUpdateAssignmentMutation();
@@ -72,7 +71,7 @@ export function useItemDropOnDay({
return dayAsDate;
}
function updateLecture(dayAsDate: Date) {
- const { dueAt, ...lecture } = itemBeingDragged.item as Lecture & {
+ const { dueAt: _, ...lecture } = itemBeingDragged.item as Lecture & {
dueAt: string;
};
console.log("dropped lecture on day");
diff --git a/src/app/course/[courseName]/lecture/[lectureDay]/EditLecture.tsx b/src/app/course/[courseName]/lecture/[lectureDay]/EditLecture.tsx
index d06622c..3061e53 100644
--- a/src/app/course/[courseName]/lecture/[lectureDay]/EditLecture.tsx
+++ b/src/app/course/[courseName]/lecture/[lectureDay]/EditLecture.tsx
@@ -19,9 +19,12 @@ import { useAuthoritativeUpdates } from "../../utils/useAuthoritativeUpdates";
export default function EditLecture({ lectureDay }: { lectureDay: string }) {
const { courseName } = useCourseContext();
- const [settings] = useLocalCourseSettingsQuery();
- const [weeks, { dataUpdatedAt: serverDataUpdatedAt, isFetching }] =
- useLecturesSuspenseQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
+ const {
+ data: weeks,
+ dataUpdatedAt: serverDataUpdatedAt,
+ isFetching,
+ } = useLecturesSuspenseQuery();
const updateLecture = useLectureUpdateMutation();
const lecture = weeks
@@ -63,6 +66,7 @@ export default function EditLecture({ lectureDay }: { lectureDay: string }) {
}
}
setError("");
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
} catch (e: any) {
setError(e.toString());
}
diff --git a/src/app/course/[courseName]/lecture/[lectureDay]/EditLectureTitle.tsx b/src/app/course/[courseName]/lecture/[lectureDay]/EditLectureTitle.tsx
index b6d482a..dc0286e 100644
--- a/src/app/course/[courseName]/lecture/[lectureDay]/EditLectureTitle.tsx
+++ b/src/app/course/[courseName]/lecture/[lectureDay]/EditLectureTitle.tsx
@@ -11,7 +11,7 @@ export default function EditLectureTitle({
}: {
lectureDay: string;
}) {
- const [settings] = useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
const { courseName } = useCourseContext();
const lectureDate = getDateFromString(lectureDay);
const lectureWeekName = getLectureWeekName(settings.startDate, lectureDay);
diff --git a/src/app/course/[courseName]/lecture/[lectureDay]/LectureButtons.tsx b/src/app/course/[courseName]/lecture/[lectureDay]/LectureButtons.tsx
index be7b046..5438ecc 100644
--- a/src/app/course/[courseName]/lecture/[lectureDay]/LectureButtons.tsx
+++ b/src/app/course/[courseName]/lecture/[lectureDay]/LectureButtons.tsx
@@ -12,7 +12,7 @@ import Link from "next/link";
export default function LectureButtons({ lectureDay }: { lectureDay: string }) {
const { courseName } = useCourseContext();
- const [settings] = useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
const router = useRouter();
const [isLoading, setIsLoading] = useState(false);
const modal = useModal();
diff --git a/src/app/course/[courseName]/lecture/[lectureDay]/LecturePreview.tsx b/src/app/course/[courseName]/lecture/[lectureDay]/LecturePreview.tsx
index 7874662..76c14cf 100644
--- a/src/app/course/[courseName]/lecture/[lectureDay]/LecturePreview.tsx
+++ b/src/app/course/[courseName]/lecture/[lectureDay]/LecturePreview.tsx
@@ -1,11 +1,7 @@
import MarkdownDisplay from "@/components/MarkdownDisplay";
-import { SuspenseAndErrorHandling } from "@/components/SuspenseAndErrorHandling";
-import { useLocalCourseSettingsQuery } from "@/hooks/localCourse/localCoursesHooks";
import { Lecture } from "@/models/local/lecture";
-import { markdownToHTMLSafe } from "@/services/htmlMarkdownUtils";
export default function LecturePreview({ lecture }: { lecture: Lecture }) {
- const [settings] = useLocalCourseSettingsQuery();
return (
<>
diff --git a/src/app/course/[courseName]/lecture/[lectureDay]/layout.tsx b/src/app/course/[courseName]/lecture/[lectureDay]/layout.tsx
index 956bc1f..52f6931 100644
--- a/src/app/course/[courseName]/lecture/[lectureDay]/layout.tsx
+++ b/src/app/course/[courseName]/lecture/[lectureDay]/layout.tsx
@@ -23,7 +23,7 @@ export default async function LectureLayout({
children: React.ReactNode;
params: Promise<{ courseName: string; lectureDay: string }>;
}) {
- const { courseName, lectureDay } = await params;
+ const { courseName } = await params;
const decodedCourseName = decodeURIComponent(courseName);
if (courseName.includes(".js.map")) {
console.log("cannot load course that is .js.map " + decodedCourseName);
diff --git a/src/app/course/[courseName]/lecture/[lectureDay]/preview/LecturePreviewPage.tsx b/src/app/course/[courseName]/lecture/[lectureDay]/preview/LecturePreviewPage.tsx
index 456ddd3..d21b7b8 100644
--- a/src/app/course/[courseName]/lecture/[lectureDay]/preview/LecturePreviewPage.tsx
+++ b/src/app/course/[courseName]/lecture/[lectureDay]/preview/LecturePreviewPage.tsx
@@ -12,7 +12,7 @@ export default function LecturePreviewPage({
lectureDay: string;
}) {
const { courseName } = useCourseContext();
- const [weeks] = useLecturesSuspenseQuery();
+ const { data: weeks } = useLecturesSuspenseQuery();
const lecture = weeks
.flatMap(({ lectures }) => lectures.map((lecture) => lecture))
.find((l) => l.date === lectureDay);
diff --git a/src/app/course/[courseName]/modules/ExpandableModule.tsx b/src/app/course/[courseName]/modules/ExpandableModule.tsx
index 6a0256b..a9277e4 100644
--- a/src/app/course/[courseName]/modules/ExpandableModule.tsx
+++ b/src/app/course/[courseName]/modules/ExpandableModule.tsx
@@ -32,15 +32,15 @@ export default function ExpandableModule({
}) {
const { itemDropOnModule } = useDraggingContext();
const { courseName } = useCourseContext();
- const [assignmentNames] = useAssignmentNamesQuery(moduleName);
+ const { data: assignmentNames } = useAssignmentNamesQuery(moduleName);
const [assignments] = trpc.useSuspenseQueries((t) =>
assignmentNames.map((assignmentName) =>
t.assignment.getAssignment({ courseName, moduleName, assignmentName })
)
);
- const [quizzes] = useQuizzesQueries(moduleName);
- const [pages] = usePagesQueries(moduleName);
+ const { data: quizzes } = useQuizzesQueries(moduleName);
+ const { data: pages } = usePagesQueries(moduleName);
const modal = useModal();
const moduleItems: {
diff --git a/src/app/course/[courseName]/modules/ModuleList.tsx b/src/app/course/[courseName]/modules/ModuleList.tsx
index f3ed202..f7b7c15 100644
--- a/src/app/course/[courseName]/modules/ModuleList.tsx
+++ b/src/app/course/[courseName]/modules/ModuleList.tsx
@@ -4,7 +4,7 @@ import ExpandableModule from "./ExpandableModule";
import CreateModule from "./CreateModule";
export default function ModuleList() {
- const [moduleNames] = useModuleNamesQuery();
+ const { data: moduleNames } = useModuleNamesQuery();
return (
{moduleNames.map((m) => (
diff --git a/src/app/course/[courseName]/modules/NewItemForm.tsx b/src/app/course/[courseName]/modules/NewItemForm.tsx
index 1cf05de..247c768 100644
--- a/src/app/course/[courseName]/modules/NewItemForm.tsx
+++ b/src/app/course/[courseName]/modules/NewItemForm.tsx
@@ -27,9 +27,9 @@ export default function NewItemForm({
creationDate?: string;
onCreate?: () => void;
}) {
- const [settings] = useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
const { courseName } = useCourseContext();
- const [modules] = useModuleNamesQuery();
+ const { data: modules } = useModuleNamesQuery();
const [type, setType] = useState<"Assignment" | "Quiz" | "Page">(
"Assignment"
);
diff --git a/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/AssignmentFooterButtons.tsx b/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/AssignmentFooterButtons.tsx
index ceb3a09..b3f5417 100644
--- a/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/AssignmentFooterButtons.tsx
+++ b/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/AssignmentFooterButtons.tsx
@@ -29,10 +29,10 @@ export function AssignmentFooterButtons({
}) {
const router = useRouter();
const { courseName } = useCourseContext();
- const [settings] = useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
const { data: canvasAssignments, isFetching: canvasIsFetching } =
useCanvasAssignmentsQuery();
- const [assignment, { isFetching }] = useAssignmentQuery(
+ const { data: assignment, isFetching } = useAssignmentQuery(
moduleName,
assignmentName
);
diff --git a/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/AssignmentPreview.tsx b/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/AssignmentPreview.tsx
index a0338fe..38a7b04 100644
--- a/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/AssignmentPreview.tsx
+++ b/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/AssignmentPreview.tsx
@@ -1,11 +1,7 @@
-import ClientOnly from "@/components/ClientOnly";
import MarkdownDisplay from "@/components/MarkdownDisplay";
-import { SuspenseAndErrorHandling } from "@/components/SuspenseAndErrorHandling";
-import { useLocalCourseSettingsQuery } from "@/hooks/localCourse/localCoursesHooks";
import { LocalAssignment } from "@/models/local/assignment/localAssignment";
import { rubricItemIsExtraCredit } from "@/models/local/assignment/rubricItem";
import { assignmentPoints } from "@/models/local/assignment/utils/assignmentPointsUtils";
-import { markdownToHTMLSafe } from "@/services/htmlMarkdownUtils";
import React, { Fragment } from "react";
export default function AssignmentPreview({
@@ -13,8 +9,7 @@ export default function AssignmentPreview({
}: {
assignment: LocalAssignment;
}) {
- const [settings] = useLocalCourseSettingsQuery();
- const totalPoints = assignmentPoints(assignment.rubric)
+ const totalPoints = assignmentPoints(assignment.rubric);
const extraPoints = assignment.rubric.reduce(
(sum, cur) => (rubricItemIsExtraCredit(cur) ? sum + cur.points : sum),
0
diff --git a/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/EditAssignment.tsx b/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/EditAssignment.tsx
index ee7a8b1..ac7e7a5 100644
--- a/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/EditAssignment.tsx
+++ b/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/EditAssignment.tsx
@@ -31,11 +31,12 @@ export default function EditAssignment({
}) {
const router = useRouter();
const { courseName } = useCourseContext();
- const [settings] = useLocalCourseSettingsQuery();
- const [
- assignment,
- { dataUpdatedAt: serverDataUpdatedAt, isFetching: assignmentIsFetching },
- ] = useAssignmentQuery(moduleName, assignmentName);
+ const { data: settings } = useLocalCourseSettingsQuery();
+ const {
+ data: assignment,
+ dataUpdatedAt: serverDataUpdatedAt,
+ isFetching: assignmentIsFetching,
+ } = useAssignmentQuery(moduleName, assignmentName);
const updateAssignment = useUpdateAssignmentMutation();
const { isPending: imageUpdateIsPending } =
useUpdateImageSettingsForAssignment({ moduleName, assignmentName });
@@ -94,6 +95,7 @@ export default function EditAssignment({
}
}
setError("");
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
} catch (e: any) {
setError(e.toString());
}
diff --git a/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/UpdateAssignmentName.tsx b/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/UpdateAssignmentName.tsx
index f9d52de..fb326c3 100644
--- a/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/UpdateAssignmentName.tsx
+++ b/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/UpdateAssignmentName.tsx
@@ -20,11 +20,11 @@ export function UpdateAssignmentName({
const modal = useModal();
const { courseName } = useCourseContext();
const router = useRouter();
- const [assignment] = useAssignmentQuery(moduleName, assignmentName);
+ const { data: assignment } = useAssignmentQuery(moduleName, assignmentName);
const updateAssignment = useUpdateAssignmentMutation();
const [name, setName] = useState(assignment.name);
const [isLoading, setIsLoading] = useState(false);
-
+
return (
{
const delay = 500;
@@ -85,6 +86,7 @@ export default function EditPage({
}
}
setError("");
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
} catch (e: any) {
setError(e.toString());
}
diff --git a/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/EditPageButtons.tsx b/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/EditPageButtons.tsx
index 9541443..e65d017 100644
--- a/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/EditPageButtons.tsx
+++ b/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/EditPageButtons.tsx
@@ -27,8 +27,8 @@ export default function EditPageButtons({
}) {
const router = useRouter();
const { courseName } = useCourseContext();
- const [settings] = useLocalCourseSettingsQuery();
- const [page] = usePageQuery(moduleName, pageName);
+ const { data: settings } = useLocalCourseSettingsQuery();
+ const { data: page } = usePageQuery(moduleName, pageName);
const { data: canvasPages } = useCanvasPagesQuery();
const createPageInCanvas = useCreateCanvasPageMutation();
const updatePageInCanvas = useUpdateCanvasPageMutation();
diff --git a/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/PagePreview.tsx b/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/PagePreview.tsx
index f06b679..a0bed9d 100644
--- a/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/PagePreview.tsx
+++ b/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/PagePreview.tsx
@@ -1,7 +1,5 @@
import MarkdownDisplay from "@/components/MarkdownDisplay";
-import { useLocalCourseSettingsQuery } from "@/hooks/localCourse/localCoursesHooks";
import { LocalCoursePage } from "@/models/local/page/localCoursePage";
-import { markdownToHTMLSafe } from "@/services/htmlMarkdownUtils";
import React from "react";
export default function PagePreview({ page }: { page: LocalCoursePage }) {
diff --git a/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/UpdatePageName.tsx b/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/UpdatePageName.tsx
index 7d7deb4..15239ec 100644
--- a/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/UpdatePageName.tsx
+++ b/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/UpdatePageName.tsx
@@ -2,7 +2,10 @@ import { useCourseContext } from "@/app/course/[courseName]/context/courseContex
import TextInput from "@/components/form/TextInput";
import Modal, { useModal } from "@/components/Modal";
import { Spinner } from "@/components/Spinner";
-import { usePageQuery, useUpdatePageMutation } from "@/hooks/localCourse/pageHooks";
+import {
+ usePageQuery,
+ useUpdatePageMutation,
+} from "@/hooks/localCourse/pageHooks";
import { getModuleItemUrl } from "@/services/urlUtils";
import { useRouter } from "next/navigation";
import { useState } from "react";
@@ -17,11 +20,11 @@ export function UpdatePageName({
const modal = useModal();
const { courseName } = useCourseContext();
const router = useRouter();
- const [page] = usePageQuery(moduleName, pageName);
+ const { data: page } = usePageQuery(moduleName, pageName);
const updatePage = useUpdatePageMutation();
const [name, setName] = useState(page.name);
const [isLoading, setIsLoading] = useState(false);
-
+
return (
-
+
{isLoading && }
diff --git a/src/app/course/[courseName]/modules/[moduleName]/quiz/[quizName]/EditQuiz.tsx b/src/app/course/[courseName]/modules/[moduleName]/quiz/[quizName]/EditQuiz.tsx
index cd87b2d..5a98876 100644
--- a/src/app/course/[courseName]/modules/[moduleName]/quiz/[quizName]/EditQuiz.tsx
+++ b/src/app/course/[courseName]/modules/[moduleName]/quiz/[quizName]/EditQuiz.tsx
@@ -75,10 +75,13 @@ export default function EditQuiz({
moduleName: string;
}) {
const router = useRouter();
- const [settings] = useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
const { courseName } = useCourseContext();
- const [quiz, { dataUpdatedAt: serverDataUpdatedAt, isFetching }] =
- useQuizQuery(moduleName, quizName);
+ const {
+ data: quiz,
+ dataUpdatedAt: serverDataUpdatedAt,
+ isFetching,
+ } = useQuizQuery(moduleName, quizName);
const updateQuizMutation = useUpdateQuizMutation();
const { clientIsAuthoritative, text, textUpdate, monacoKey } =
useAuthoritativeUpdates({
@@ -122,6 +125,7 @@ export default function EditQuiz({
}
}
setError("");
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
} catch (e: any) {
setError(e.toString());
}
diff --git a/src/app/course/[courseName]/modules/[moduleName]/quiz/[quizName]/QuizButton.tsx b/src/app/course/[courseName]/modules/[moduleName]/quiz/[quizName]/QuizButton.tsx
index 3b1a756..2f3bb66 100644
--- a/src/app/course/[courseName]/modules/[moduleName]/quiz/[quizName]/QuizButton.tsx
+++ b/src/app/course/[courseName]/modules/[moduleName]/quiz/[quizName]/QuizButton.tsx
@@ -27,10 +27,10 @@ export function QuizButtons({
}) {
const router = useRouter();
const { courseName } = useCourseContext();
- const [settings] = useLocalCourseSettingsQuery();
+ const { data: settings } = useLocalCourseSettingsQuery();
const { data: canvasQuizzes } = useCanvasQuizzesQuery();
- const [quiz] = useQuizQuery(moduleName, quizName);
+ const { data: quiz } = useQuizQuery(moduleName, quizName);
const addToCanvas = useAddQuizToCanvasMutation();
const deleteFromCanvas = useDeleteQuizFromCanvasMutation();
const deleteLocal = useDeleteQuizMutation();
@@ -90,7 +90,11 @@ export function QuizButtons({