diff --git a/Makefile b/Makefile
index a2a0e91..0b5c740 100644
--- a/Makefile
+++ b/Makefile
@@ -5,20 +5,16 @@ scripts_dir := ./scripts
help:
@cat $(scripts_dir)/help.txt
-.PHONY: setup_compose
-setup_compose:
- $(scripts_dir)/setup_compose.sh
-
-.PHONY: build
-build: setup_compose
- $(compose) build
-
-.PHONY: setup_web
-setup_web: build
- $(scripts_dir)/setup_web.sh
+# Native
+.PHONY: dev
+dev:
+ @$(scripts_dir)/setup_native.sh
+ cd web && pnpm run dev
+# Docker Compose
.PHONY: up
-up: setup_web
+up:
+ @$(scripts_dir)/setup_compose.sh
$(compose) up -d
.PHONY: down
@@ -33,3 +29,4 @@ logs:
shell:
$(compose) run --rm web bash
+
diff --git a/README.md b/README.md
index 2db08c2..4dae5cd 100644
--- a/README.md
+++ b/README.md
@@ -4,13 +4,23 @@
## Run
+Choose your preferred development environment:
+
+### Native
+
+```bash
+make dev
+```
+
+### Docker Compose
+
```bash
-make
+make up
```
## Tech Stack
-- Docker Compose
- TypeScript
+- React
- Next.js
- MDX
diff --git a/scripts/help.txt b/scripts/help.txt
index 82b654d..d407bed 100644
--- a/scripts/help.txt
+++ b/scripts/help.txt
@@ -1,9 +1,13 @@
usage: make [command]
+
+General:
help: Show this help message
- up: Launch the project in detached mode
- setup_web: Prepare the web container for development
- build: Build the project using docker compose
- setup_compose: Run initial setup scripts for docker compose
- down: Take down the containers
- logs: Follow logs
+
+Native:
+ dev: Set up and start the development server natively
+
+Docker Compose:
+ up: Set up and start the development server in Docker
+ down: Stop the Docker containers
+ logs: Follow Docker container logs
shell: Open a bash shell in the web container
diff --git a/scripts/setup_compose.sh b/scripts/setup_compose.sh
index 8afa6cd..491f50d 100755
--- a/scripts/setup_compose.sh
+++ b/scripts/setup_compose.sh
@@ -1,6 +1,20 @@
-#!/bin/env bash
+#!/usr/bin/env bash
+
+set -e
+
+echo "Setting up docker compose environment..."
if [ ! -f compose.override.yaml ]; then
- echo "compose.override.yaml not found, creating from example"
+ echo "Creating compose.override.yaml..."
cp compose.override.example.yaml compose.override.yaml
fi
+
+echo "Building containers..."
+docker compose build
+
+if [ ! -d web/node_modules ]; then
+ echo "Installing dependencies in container..."
+ docker compose run --rm web pnpm install
+fi
+
+echo "Docker compose setup complete!"
diff --git a/scripts/setup_native.sh b/scripts/setup_native.sh
new file mode 100755
index 0000000..515b345
--- /dev/null
+++ b/scripts/setup_native.sh
@@ -0,0 +1,19 @@
+#!/usr/bin/env bash
+
+set -e
+
+echo "Setting up native environment..."
+
+cd web
+
+if ! command -v pnpm &> /dev/null; then
+ echo "Error: pnpm is not installed"
+ exit 1
+fi
+
+if [ ! -d node_modules ]; then
+ echo "Installing dependencies..."
+ pnpm install
+fi
+
+echo "Native setup complete!"
diff --git a/scripts/setup_web.sh b/scripts/setup_web.sh
deleted file mode 100755
index e93306c..0000000
--- a/scripts/setup_web.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/env bash
-
-if [ ! -d web/node_modules ]; then
- echo "node_modules not found, installing"
- docker compose run web pnpm install
-fi
diff --git a/web/next-env.d.ts b/web/next-env.d.ts
index 830fb59..c4b7818 100644
--- a/web/next-env.d.ts
+++ b/web/next-env.d.ts
@@ -1,6 +1,6 @@
///
///
-///
+import "./.next/dev/types/routes.d.ts";
// NOTE: This file should not be edited
// see https://nextjs.org/docs/app/api-reference/config/typescript for more information.
diff --git a/web/next.config.ts b/web/next.config.ts
index 9e96a7c..50b7a6b 100644
--- a/web/next.config.ts
+++ b/web/next.config.ts
@@ -2,6 +2,7 @@ import createMDX from "@next/mdx";
import type { NextConfig } from "next";
const nextConfig: NextConfig = {
+ cacheComponents: true,
experimental: {
// typedRoutes: true,
// mdxRs: true,
diff --git a/web/package.json b/web/package.json
index defbf7a..6f854bd 100644
--- a/web/package.json
+++ b/web/package.json
@@ -3,8 +3,8 @@
"version": "1.0.0",
"private": true,
"scripts": {
- "dev": "next dev --turbopack -p 4200",
- "build": "next build --turbopack",
+ "dev": "next dev -p 4200",
+ "build": "next build",
"start": "next start -p 4200",
"lint": "biome lint",
"lint:fix": "biome lint --write",
@@ -21,7 +21,7 @@
"@highlightjs/cdn-assets": "^11.11.1",
"@mdx-js/loader": "^3.1.1",
"@mdx-js/react": "^3.1.1",
- "@next/mdx": "^15.5.4",
+ "@next/mdx": "16.0.3",
"@radix-ui/react-accordion": "^1.2.12",
"@radix-ui/react-label": "^2.1.7",
"@radix-ui/react-radio-group": "^1.3.8",
@@ -35,19 +35,19 @@
"@types/mdx": "^2.0.13",
"@types/node": "^24.6.0",
"@types/papaparse": "^5.3.16",
- "@types/react": "^19.1.16",
- "@types/react-dom": "^19.1.9",
+ "@types/react": "19.2.5",
+ "@types/react-dom": "19.2.3",
"@types/three": "^0.180.0",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"katex": "^0.16.22",
"lucide-react": "^0.544.0",
- "next": "^15.5.4",
+ "next": "16.0.3",
"next-themes": "^0.4.6",
"papaparse": "^5.5.3",
"postcss": "^8.5.6",
- "react": "^19.1.1",
- "react-dom": "^19.1.1",
+ "react": "19.2.0",
+ "react-dom": "19.2.0",
"recharts": "^3.2.1",
"rehype-autolink-headings": "^7.1.0",
"rehype-highlight": "^7.0.2",
@@ -65,5 +65,15 @@
"devDependencies": {
"@biomejs/biome": "2.2.4"
},
- "packageManager": "pnpm@10.18.1+sha512.77a884a165cbba2d8d1c19e3b4880eee6d2fcabd0d879121e282196b80042351d5eb3ca0935fa599da1dc51265cc68816ad2bddd2a2de5ea9fdf92adbec7cd34"
+ "packageManager": "pnpm@10.18.1+sha512.77a884a165cbba2d8d1c19e3b4880eee6d2fcabd0d879121e282196b80042351d5eb3ca0935fa599da1dc51265cc68816ad2bddd2a2de5ea9fdf92adbec7cd34",
+ "pnpm": {
+ "overrides": {
+ "@types/react": "19.2.5",
+ "@types/react-dom": "19.2.3"
+ },
+ "onlyBuiltDependencies": [
+ "@tailwindcss/oxide",
+ "sharp"
+ ]
+ }
}
diff --git a/web/pnpm-lock.yaml b/web/pnpm-lock.yaml
index b343522..f6f6035 100644
--- a/web/pnpm-lock.yaml
+++ b/web/pnpm-lock.yaml
@@ -4,6 +4,10 @@ settings:
autoInstallPeers: true
excludeLinksFromLockfile: false
+overrides:
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3
+
importers:
.:
@@ -19,7 +23,7 @@ importers:
version: 7.0.1
'@fortawesome/react-fontawesome':
specifier: ^3.0.2
- version: 3.0.2(@fortawesome/fontawesome-svg-core@7.0.1)(react@19.1.1)
+ version: 3.0.2(@fortawesome/fontawesome-svg-core@7.0.1)(react@19.2.0)
'@highlightjs/cdn-assets':
specifier: ^11.11.1
version: 11.11.1
@@ -28,28 +32,28 @@ importers:
version: 3.1.1(webpack@5.91.0)
'@mdx-js/react':
specifier: ^3.1.1
- version: 3.1.1(@types/react@19.1.16)(react@19.1.1)
+ version: 3.1.1(@types/react@19.2.5)(react@19.2.0)
'@next/mdx':
- specifier: ^15.5.4
- version: 15.5.4(@mdx-js/loader@3.1.1(webpack@5.91.0))(@mdx-js/react@3.1.1(@types/react@19.1.16)(react@19.1.1))
+ specifier: 16.0.3
+ version: 16.0.3(@mdx-js/loader@3.1.1(webpack@5.91.0))(@mdx-js/react@3.1.1(@types/react@19.2.5)(react@19.2.0))
'@radix-ui/react-accordion':
specifier: ^1.2.12
- version: 1.2.12(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
+ version: 1.2.12(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
'@radix-ui/react-label':
specifier: ^2.1.7
- version: 2.1.7(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
+ version: 2.1.7(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
'@radix-ui/react-radio-group':
specifier: ^1.3.8
- version: 1.3.8(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
+ version: 1.3.8(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
'@radix-ui/react-slider':
specifier: ^1.3.6
- version: 1.3.6(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
+ version: 1.3.6(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
'@radix-ui/react-slot':
specifier: ^1.2.3
- version: 1.2.3(@types/react@19.1.16)(react@19.1.1)
+ version: 1.2.3(@types/react@19.2.5)(react@19.2.0)
'@react-three/fiber':
specifier: ^9.3.0
- version: 9.3.0(@types/react@19.1.16)(immer@10.1.3)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(three@0.180.0)
+ version: 9.3.0(@types/react@19.2.5)(immer@10.1.3)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(three@0.180.0)
'@tailwindcss/forms':
specifier: ^0.5.10
version: 0.5.10(tailwindcss@4.1.13)
@@ -61,7 +65,7 @@ importers:
version: 0.5.19(tailwindcss@4.1.13)
'@tanstack/react-query':
specifier: ^5.90.2
- version: 5.90.2(react@19.1.1)
+ version: 5.90.2(react@19.2.0)
'@types/mdx':
specifier: ^2.0.13
version: 2.0.13
@@ -72,11 +76,11 @@ importers:
specifier: ^5.3.16
version: 5.3.16
'@types/react':
- specifier: ^19.1.16
- version: 19.1.16
+ specifier: 19.2.5
+ version: 19.2.5
'@types/react-dom':
- specifier: ^19.1.9
- version: 19.1.9(@types/react@19.1.16)
+ specifier: 19.2.3
+ version: 19.2.3(@types/react@19.2.5)
'@types/three':
specifier: ^0.180.0
version: 0.180.0
@@ -91,13 +95,13 @@ importers:
version: 0.16.22
lucide-react:
specifier: ^0.544.0
- version: 0.544.0(react@19.1.1)
+ version: 0.544.0(react@19.2.0)
next:
- specifier: ^15.5.4
- version: 15.5.4(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
+ specifier: 16.0.3
+ version: 16.0.3(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
next-themes:
specifier: ^0.4.6
- version: 0.4.6(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
+ version: 0.4.6(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
papaparse:
specifier: ^5.5.3
version: 5.5.3
@@ -105,14 +109,14 @@ importers:
specifier: ^8.5.6
version: 8.5.6
react:
- specifier: ^19.1.1
- version: 19.1.1
+ specifier: 19.2.0
+ version: 19.2.0
react-dom:
- specifier: ^19.1.1
- version: 19.1.1(react@19.1.1)
+ specifier: 19.2.0
+ version: 19.2.0(react@19.2.0)
recharts:
specifier: ^3.2.1
- version: 3.2.1(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react-is@18.3.1)(react@19.1.1)(redux@5.0.1)
+ version: 3.2.1(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react-is@18.3.1)(react@19.2.0)(redux@5.0.1)
rehype-autolink-headings:
specifier: ^7.1.0
version: 7.1.0
@@ -413,14 +417,14 @@ packages:
'@mdx-js/react@3.1.1':
resolution: {integrity: sha512-f++rKLQgUVYDAtECQ6fn/is15GkEH9+nZPM3MS0RcxVqoTfawHvDlSCH7JbMhAM6uJ32v3eXLvLmLvjGu7PTQw==}
peerDependencies:
- '@types/react': '>=16'
+ '@types/react': 19.2.5
react: '>=16'
- '@next/env@15.5.4':
- resolution: {integrity: sha512-27SQhYp5QryzIT5uO8hq99C69eLQ7qkzkDPsk3N+GuS2XgOgoYEeOav7Pf8Tn4drECOVDsDg8oj+/DVy8qQL2A==}
+ '@next/env@16.0.3':
+ resolution: {integrity: sha512-IqgtY5Vwsm14mm/nmQaRMmywCU+yyMIYfk3/MHZ2ZTJvwVbBn3usZnjMi1GacrMVzVcAxJShTCpZlPs26EdEjQ==}
- '@next/mdx@15.5.4':
- resolution: {integrity: sha512-QUc14KkswCau2/Lul13t13v8QYRiEh3aeyUMUix5mK/Zd8c/J9NQuVvLGhxS7fxGPU+fOcv0GaXqZshkvNaX7A==}
+ '@next/mdx@16.0.3':
+ resolution: {integrity: sha512-uVl2JSEGAjBV+EVnpt1cZN88SK3lJ2n7Fc+iqTsgVx2g9+Y6ru+P6nuUgXd38OHPUIwzL6k2V1u4iV3kwuTySQ==}
peerDependencies:
'@mdx-js/loader': '>=0.15.0'
'@mdx-js/react': '>=0.15.0'
@@ -430,50 +434,50 @@ packages:
'@mdx-js/react':
optional: true
- '@next/swc-darwin-arm64@15.5.4':
- resolution: {integrity: sha512-nopqz+Ov6uvorej8ndRX6HlxCYWCO3AHLfKK2TYvxoSB2scETOcfm/HSS3piPqc3A+MUgyHoqE6je4wnkjfrOA==}
+ '@next/swc-darwin-arm64@16.0.3':
+ resolution: {integrity: sha512-MOnbd92+OByu0p6QBAzq1ahVWzF6nyfiH07dQDez4/Nku7G249NjxDVyEfVhz8WkLiOEU+KFVnqtgcsfP2nLXg==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [darwin]
- '@next/swc-darwin-x64@15.5.4':
- resolution: {integrity: sha512-QOTCFq8b09ghfjRJKfb68kU9k2K+2wsC4A67psOiMn849K9ZXgCSRQr0oVHfmKnoqCbEmQWG1f2h1T2vtJJ9mA==}
+ '@next/swc-darwin-x64@16.0.3':
+ resolution: {integrity: sha512-i70C4O1VmbTivYdRlk+5lj9xRc2BlK3oUikt3yJeHT1unL4LsNtN7UiOhVanFdc7vDAgZn1tV/9mQwMkWOJvHg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [darwin]
- '@next/swc-linux-arm64-gnu@15.5.4':
- resolution: {integrity: sha512-eRD5zkts6jS3VfE/J0Kt1VxdFqTnMc3QgO5lFE5GKN3KDI/uUpSyK3CjQHmfEkYR4wCOl0R0XrsjpxfWEA++XA==}
+ '@next/swc-linux-arm64-gnu@16.0.3':
+ resolution: {integrity: sha512-O88gCZ95sScwD00mn/AtalyCoykhhlokxH/wi1huFK+rmiP5LAYVs/i2ruk7xST6SuXN4NI5y4Xf5vepb2jf6A==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
- '@next/swc-linux-arm64-musl@15.5.4':
- resolution: {integrity: sha512-TOK7iTxmXFc45UrtKqWdZ1shfxuL4tnVAOuuJK4S88rX3oyVV4ZkLjtMT85wQkfBrOOvU55aLty+MV8xmcJR8A==}
+ '@next/swc-linux-arm64-musl@16.0.3':
+ resolution: {integrity: sha512-CEErFt78S/zYXzFIiv18iQCbRbLgBluS8z1TNDQoyPi8/Jr5qhR3e8XHAIxVxPBjDbEMITprqELVc5KTfFj0gg==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
- '@next/swc-linux-x64-gnu@15.5.4':
- resolution: {integrity: sha512-7HKolaj+481FSW/5lL0BcTkA4Ueam9SPYWyN/ib/WGAFZf0DGAN8frNpNZYFHtM4ZstrHZS3LY3vrwlIQfsiMA==}
+ '@next/swc-linux-x64-gnu@16.0.3':
+ resolution: {integrity: sha512-Tc3i+nwt6mQ+Dwzcri/WNDj56iWdycGVh5YwwklleClzPzz7UpfaMw1ci7bLl6GRYMXhWDBfe707EXNjKtiswQ==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
- '@next/swc-linux-x64-musl@15.5.4':
- resolution: {integrity: sha512-nlQQ6nfgN0nCO/KuyEUwwOdwQIGjOs4WNMjEUtpIQJPR2NUfmGpW2wkJln1d4nJ7oUzd1g4GivH5GoEPBgfsdw==}
+ '@next/swc-linux-x64-musl@16.0.3':
+ resolution: {integrity: sha512-zTh03Z/5PBBPdTurgEtr6nY0vI9KR9Ifp/jZCcHlODzwVOEKcKRBtQIGrkc7izFgOMuXDEJBmirwpGqdM/ZixA==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
- '@next/swc-win32-arm64-msvc@15.5.4':
- resolution: {integrity: sha512-PcR2bN7FlM32XM6eumklmyWLLbu2vs+D7nJX8OAIoWy69Kef8mfiN4e8TUv2KohprwifdpFKPzIP1njuCjD0YA==}
+ '@next/swc-win32-arm64-msvc@16.0.3':
+ resolution: {integrity: sha512-Jc1EHxtZovcJcg5zU43X3tuqzl/sS+CmLgjRP28ZT4vk869Ncm2NoF8qSTaL99gh6uOzgM99Shct06pSO6kA6g==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [win32]
- '@next/swc-win32-x64-msvc@15.5.4':
- resolution: {integrity: sha512-1ur2tSHZj8Px/KMAthmuI9FMp/YFusMMGoRNJaRZMOlSkgvLjzosSdQI0cJAKogdHl3qXUQKL9MGaYvKwA7DXg==}
+ '@next/swc-win32-x64-msvc@16.0.3':
+ resolution: {integrity: sha512-N7EJ6zbxgIYpI/sWNzpVKRMbfEGgsWuOIvzkML7wxAAZhPk1Msxuo/JDu1PKjWGrAoOLaZcIX5s+/pF5LIbBBg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [win32]
@@ -487,8 +491,8 @@ packages:
'@radix-ui/react-accordion@1.2.12':
resolution: {integrity: sha512-T4nygeh9YE9dLRPhAHSeOZi7HBXo+0kYIPJXayZfvWOWA0+n3dESrZbjfDPUABkUNym6Hd+f2IR113To8D2GPA==}
peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
@@ -500,8 +504,8 @@ packages:
'@radix-ui/react-collapsible@1.1.12':
resolution: {integrity: sha512-Uu+mSh4agx2ib1uIGPP4/CKNULyajb3p92LsVXmH2EHVMTfZWpll88XJ0j4W0z3f8NK1eYl1+Mf/szHPmcHzyA==}
peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
@@ -513,8 +517,8 @@ packages:
'@radix-ui/react-collection@1.1.7':
resolution: {integrity: sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==}
peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
@@ -526,7 +530,7 @@ packages:
'@radix-ui/react-compose-refs@1.1.2':
resolution: {integrity: sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==}
peerDependencies:
- '@types/react': '*'
+ '@types/react': 19.2.5
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
'@types/react':
@@ -535,7 +539,7 @@ packages:
'@radix-ui/react-context@1.1.2':
resolution: {integrity: sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==}
peerDependencies:
- '@types/react': '*'
+ '@types/react': 19.2.5
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
'@types/react':
@@ -544,7 +548,7 @@ packages:
'@radix-ui/react-direction@1.1.1':
resolution: {integrity: sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==}
peerDependencies:
- '@types/react': '*'
+ '@types/react': 19.2.5
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
'@types/react':
@@ -553,7 +557,7 @@ packages:
'@radix-ui/react-id@1.1.1':
resolution: {integrity: sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==}
peerDependencies:
- '@types/react': '*'
+ '@types/react': 19.2.5
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
'@types/react':
@@ -562,8 +566,8 @@ packages:
'@radix-ui/react-label@2.1.7':
resolution: {integrity: sha512-YT1GqPSL8kJn20djelMX7/cTRp/Y9w5IZHvfxQTVHrOqa2yMl7i/UfMqKRU5V7mEyKTrUVgJXhNQPVCG8PBLoQ==}
peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
@@ -575,8 +579,8 @@ packages:
'@radix-ui/react-presence@1.1.5':
resolution: {integrity: sha512-/jfEwNDdQVBCNvjkGit4h6pMOzq8bHkopq458dPt2lMjx+eBQUohZNG9A7DtO/O5ukSbxuaNGXMjHicgwy6rQQ==}
peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
@@ -588,8 +592,8 @@ packages:
'@radix-ui/react-primitive@2.1.3':
resolution: {integrity: sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==}
peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
@@ -601,8 +605,8 @@ packages:
'@radix-ui/react-radio-group@1.3.8':
resolution: {integrity: sha512-VBKYIYImA5zsxACdisNQ3BjCBfmbGH3kQlnFVqlWU4tXwjy7cGX8ta80BcrO+WJXIn5iBylEH3K6ZTlee//lgQ==}
peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
@@ -614,8 +618,8 @@ packages:
'@radix-ui/react-roving-focus@1.1.11':
resolution: {integrity: sha512-7A6S9jSgm/S+7MdtNDSb+IU859vQqJ/QAtcYQcfFC6W8RS4IxIZDldLR0xqCFZ6DCyrQLjLPsxtTNch5jVA4lA==}
peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
@@ -627,8 +631,8 @@ packages:
'@radix-ui/react-slider@1.3.6':
resolution: {integrity: sha512-JPYb1GuM1bxfjMRlNLE+BcmBC8onfCi60Blk7OBqi2MLTFdS+8401U4uFjnwkOr49BLmXxLC6JHkvAsx5OJvHw==}
peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
@@ -640,7 +644,7 @@ packages:
'@radix-ui/react-slot@1.2.3':
resolution: {integrity: sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==}
peerDependencies:
- '@types/react': '*'
+ '@types/react': 19.2.5
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
'@types/react':
@@ -649,7 +653,7 @@ packages:
'@radix-ui/react-use-callback-ref@1.1.1':
resolution: {integrity: sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==}
peerDependencies:
- '@types/react': '*'
+ '@types/react': 19.2.5
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
'@types/react':
@@ -658,7 +662,7 @@ packages:
'@radix-ui/react-use-controllable-state@1.2.2':
resolution: {integrity: sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==}
peerDependencies:
- '@types/react': '*'
+ '@types/react': 19.2.5
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
'@types/react':
@@ -667,7 +671,7 @@ packages:
'@radix-ui/react-use-effect-event@0.0.2':
resolution: {integrity: sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==}
peerDependencies:
- '@types/react': '*'
+ '@types/react': 19.2.5
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
'@types/react':
@@ -676,7 +680,7 @@ packages:
'@radix-ui/react-use-layout-effect@1.1.1':
resolution: {integrity: sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==}
peerDependencies:
- '@types/react': '*'
+ '@types/react': 19.2.5
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
'@types/react':
@@ -685,7 +689,7 @@ packages:
'@radix-ui/react-use-previous@1.1.1':
resolution: {integrity: sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==}
peerDependencies:
- '@types/react': '*'
+ '@types/react': 19.2.5
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
'@types/react':
@@ -694,7 +698,7 @@ packages:
'@radix-ui/react-use-size@1.1.1':
resolution: {integrity: sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==}
peerDependencies:
- '@types/react': '*'
+ '@types/react': 19.2.5
react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
peerDependenciesMeta:
'@types/react':
@@ -920,23 +924,23 @@ packages:
'@types/papaparse@5.3.16':
resolution: {integrity: sha512-T3VuKMC2H0lgsjI9buTB3uuKj3EMD2eap1MOuEQuBQ44EnDx/IkGhU6EwiTf9zG3za4SKlmwKAImdDKdNnCsXg==}
- '@types/react-dom@19.1.9':
- resolution: {integrity: sha512-qXRuZaOsAdXKFyOhRBg6Lqqc0yay13vN7KrIg4L7N4aaHN68ma9OK3NE1BoDFgFOTfM7zg+3/8+2n8rLUH3OKQ==}
+ '@types/react-dom@19.2.3':
+ resolution: {integrity: sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==}
peerDependencies:
- '@types/react': ^19.0.0
+ '@types/react': 19.2.5
'@types/react-reconciler@0.28.9':
resolution: {integrity: sha512-HHM3nxyUZ3zAylX8ZEyrDNd2XZOnQ0D5XfunJF5FLQnZbHHYq4UWvW1QfelQNXv1ICNkwYhfxjwfnqivYB6bFg==}
peerDependencies:
- '@types/react': '*'
+ '@types/react': 19.2.5
'@types/react-reconciler@0.32.1':
resolution: {integrity: sha512-RsqPttsBQ+6af0nATFXJJpemYQH7kL9+xLNm1z+0MjQFDKBZDM2R6SBrjdvRmHu9i9fM6povACj57Ft+pKRNOA==}
peerDependencies:
- '@types/react': '*'
+ '@types/react': 19.2.5
- '@types/react@19.1.16':
- resolution: {integrity: sha512-WBM/nDbEZmDUORKnh5i1bTnAz6vTohUf9b8esSMu+b24+srbaxa04UbJgWx78CVfNXA20sNu0odEIluZDFdCog==}
+ '@types/react@19.2.5':
+ resolution: {integrity: sha512-keKxkZMqnDicuvFoJbzrhbtdLSPhj/rZThDlKWCDbgXmUg0rEUFtRssDXKYmtXluZlIqiC5VqkCgRwzuyLHKHw==}
'@types/stats.js@0.17.4':
resolution: {integrity: sha512-jIBvWWShCvlBqBNIZt0KAshWpvSjhkwkEu4ZUcASoAvhmrgAUI2t1dXrjSL4xXVLB4FznPrIsX3nKXFl/Dt4vA==}
@@ -1648,9 +1652,9 @@ packages:
react: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc
react-dom: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc
- next@15.5.4:
- resolution: {integrity: sha512-xH4Yjhb82sFYQfY3vbkJfgSDgXvBB6a8xPs9i35k6oZJRoQRihZH+4s9Yo2qsWpzBmZ3lPXaJ2KPXLfkvW4LnA==}
- engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
+ next@16.0.3:
+ resolution: {integrity: sha512-Ka0/iNBblPFcIubTA1Jjh6gvwqfjrGq1Y2MTI5lbjeLIAfmC+p5bQmojpRZqgHHVu5cG4+qdIiwXiBSm/8lZ3w==}
+ engines: {node: '>=20.9.0'}
hasBin: true
peerDependencies:
'@opentelemetry/api': ^1.1.0
@@ -1706,10 +1710,10 @@ packages:
randombytes@2.1.0:
resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
- react-dom@19.1.1:
- resolution: {integrity: sha512-Dlq/5LAZgF0Gaz6yiqZCf6VCcZs1ghAJyrsu84Q/GT0gV+mCxbfmKNoGRKBYMJ8IEdGPqu49YWXD02GCknEDkw==}
+ react-dom@19.2.0:
+ resolution: {integrity: sha512-UlbRu4cAiGaIewkPyiRGJk0imDN2T3JjieT6spoL2UeSf5od4n5LB/mQ4ejmxhCFT1tYe8IvaFulzynWovsEFQ==}
peerDependencies:
- react: ^19.1.1
+ react: ^19.2.0
react-is@18.3.1:
resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==}
@@ -1723,7 +1727,7 @@ packages:
react-redux@9.2.0:
resolution: {integrity: sha512-ROY9fvHhwOD9ySfrF0wmvu//bKCQ6AeZZq1nJNtbDC+kk5DuSuNX/n6YWYF/SYy7bSba4D4FSz8DJeKY/S/r+g==}
peerDependencies:
- '@types/react': ^18.2.25 || ^19
+ '@types/react': 19.2.5
react: ^18.0 || ^19
redux: ^5.0.0
peerDependenciesMeta:
@@ -1741,8 +1745,8 @@ packages:
react-dom:
optional: true
- react@19.1.1:
- resolution: {integrity: sha512-w8nqGImo45dmMIfljjMwOGtbmC/mk4CMYhWIicdSflH91J9TyCyczcPFXJzrZ/ZXcgGRFeP6BU0BEJTw6tZdfQ==}
+ react@19.2.0:
+ resolution: {integrity: sha512-tmbWg6W31tQLeB5cdIBOicJDJRR2KzXsV7uSK9iNfLWQ5bIZfxuPEHp7M8wiHyHnn0DD1i7w3Zmin0FtkrwoCQ==}
engines: {node: '>=0.10.0'}
recharts@3.2.1:
@@ -1815,8 +1819,8 @@ packages:
scheduler@0.25.0:
resolution: {integrity: sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA==}
- scheduler@0.26.0:
- resolution: {integrity: sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==}
+ scheduler@0.27.0:
+ resolution: {integrity: sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==}
schema-utils@3.3.0:
resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==}
@@ -2038,7 +2042,7 @@ packages:
resolution: {integrity: sha512-gyPKpIaxY9XcO2vSMrLbiER7QMAMGOQZVRdJ6Zi782jkbzZygq5GI9nG8g+sMgitRtndwaBSl7uiqC49o1SSiw==}
engines: {node: '>=12.20.0'}
peerDependencies:
- '@types/react': '>=18.0.0'
+ '@types/react': 19.2.5
immer: '>=9.0.6'
react: '>=18.0.0'
use-sync-external-store: '>=1.2.0'
@@ -2117,10 +2121,10 @@ snapshots:
dependencies:
'@fortawesome/fontawesome-common-types': 7.0.1
- '@fortawesome/react-fontawesome@3.0.2(@fortawesome/fontawesome-svg-core@7.0.1)(react@19.1.1)':
+ '@fortawesome/react-fontawesome@3.0.2(@fortawesome/fontawesome-svg-core@7.0.1)(react@19.2.0)':
dependencies:
'@fortawesome/fontawesome-svg-core': 7.0.1
- react: 19.1.1
+ react: 19.2.0
'@highlightjs/cdn-assets@11.11.1': {}
@@ -2280,271 +2284,271 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@mdx-js/react@3.1.1(@types/react@19.1.16)(react@19.1.1)':
+ '@mdx-js/react@3.1.1(@types/react@19.2.5)(react@19.2.0)':
dependencies:
'@types/mdx': 2.0.13
- '@types/react': 19.1.16
- react: 19.1.1
+ '@types/react': 19.2.5
+ react: 19.2.0
- '@next/env@15.5.4': {}
+ '@next/env@16.0.3': {}
- '@next/mdx@15.5.4(@mdx-js/loader@3.1.1(webpack@5.91.0))(@mdx-js/react@3.1.1(@types/react@19.1.16)(react@19.1.1))':
+ '@next/mdx@16.0.3(@mdx-js/loader@3.1.1(webpack@5.91.0))(@mdx-js/react@3.1.1(@types/react@19.2.5)(react@19.2.0))':
dependencies:
source-map: 0.7.6
optionalDependencies:
'@mdx-js/loader': 3.1.1(webpack@5.91.0)
- '@mdx-js/react': 3.1.1(@types/react@19.1.16)(react@19.1.1)
+ '@mdx-js/react': 3.1.1(@types/react@19.2.5)(react@19.2.0)
- '@next/swc-darwin-arm64@15.5.4':
+ '@next/swc-darwin-arm64@16.0.3':
optional: true
- '@next/swc-darwin-x64@15.5.4':
+ '@next/swc-darwin-x64@16.0.3':
optional: true
- '@next/swc-linux-arm64-gnu@15.5.4':
+ '@next/swc-linux-arm64-gnu@16.0.3':
optional: true
- '@next/swc-linux-arm64-musl@15.5.4':
+ '@next/swc-linux-arm64-musl@16.0.3':
optional: true
- '@next/swc-linux-x64-gnu@15.5.4':
+ '@next/swc-linux-x64-gnu@16.0.3':
optional: true
- '@next/swc-linux-x64-musl@15.5.4':
+ '@next/swc-linux-x64-musl@16.0.3':
optional: true
- '@next/swc-win32-arm64-msvc@15.5.4':
+ '@next/swc-win32-arm64-msvc@16.0.3':
optional: true
- '@next/swc-win32-x64-msvc@15.5.4':
+ '@next/swc-win32-x64-msvc@16.0.3':
optional: true
'@radix-ui/number@1.1.1': {}
'@radix-ui/primitive@1.1.3': {}
- '@radix-ui/react-accordion@1.2.12(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)':
+ '@radix-ui/react-accordion@1.2.12(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
dependencies:
'@radix-ui/primitive': 1.1.3
- '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-context': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-direction': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-id': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-direction': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-id': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
optionalDependencies:
- '@types/react': 19.1.16
- '@types/react-dom': 19.1.9(@types/react@19.1.16)
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3(@types/react@19.2.5)
- '@radix-ui/react-collapsible@1.1.12(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)':
+ '@radix-ui/react-collapsible@1.1.12(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
dependencies:
'@radix-ui/primitive': 1.1.3
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-context': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-id': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-id': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
optionalDependencies:
- '@types/react': 19.1.16
- '@types/react-dom': 19.1.9(@types/react@19.1.16)
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3(@types/react@19.2.5)
- '@radix-ui/react-collection@1.1.7(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)':
+ '@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
dependencies:
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-context': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- '@radix-ui/react-slot': 1.2.3(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@radix-ui/react-slot': 1.2.3(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
optionalDependencies:
- '@types/react': 19.1.16
- '@types/react-dom': 19.1.9(@types/react@19.1.16)
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3(@types/react@19.2.5)
- '@radix-ui/react-compose-refs@1.1.2(@types/react@19.1.16)(react@19.1.1)':
+ '@radix-ui/react-compose-refs@1.1.2(@types/react@19.2.5)(react@19.2.0)':
dependencies:
- react: 19.1.1
+ react: 19.2.0
optionalDependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@radix-ui/react-context@1.1.2(@types/react@19.1.16)(react@19.1.1)':
+ '@radix-ui/react-context@1.1.2(@types/react@19.2.5)(react@19.2.0)':
dependencies:
- react: 19.1.1
+ react: 19.2.0
optionalDependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@radix-ui/react-direction@1.1.1(@types/react@19.1.16)(react@19.1.1)':
+ '@radix-ui/react-direction@1.1.1(@types/react@19.2.5)(react@19.2.0)':
dependencies:
- react: 19.1.1
+ react: 19.2.0
optionalDependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@radix-ui/react-id@1.1.1(@types/react@19.1.16)(react@19.1.1)':
+ '@radix-ui/react-id@1.1.1(@types/react@19.2.5)(react@19.2.0)':
dependencies:
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
optionalDependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@radix-ui/react-label@2.1.7(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)':
+ '@radix-ui/react-label@2.1.7(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
dependencies:
- '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
optionalDependencies:
- '@types/react': 19.1.16
- '@types/react-dom': 19.1.9(@types/react@19.1.16)
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3(@types/react@19.2.5)
- '@radix-ui/react-presence@1.1.5(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)':
+ '@radix-ui/react-presence@1.1.5(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
dependencies:
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
optionalDependencies:
- '@types/react': 19.1.16
- '@types/react-dom': 19.1.9(@types/react@19.1.16)
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3(@types/react@19.2.5)
- '@radix-ui/react-primitive@2.1.3(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)':
+ '@radix-ui/react-primitive@2.1.3(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
dependencies:
- '@radix-ui/react-slot': 1.2.3(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ '@radix-ui/react-slot': 1.2.3(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
optionalDependencies:
- '@types/react': 19.1.16
- '@types/react-dom': 19.1.9(@types/react@19.1.16)
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3(@types/react@19.2.5)
- '@radix-ui/react-radio-group@1.3.8(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)':
+ '@radix-ui/react-radio-group@1.3.8(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
dependencies:
'@radix-ui/primitive': 1.1.3
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-context': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-direction': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-use-previous': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-use-size': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-direction': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
optionalDependencies:
- '@types/react': 19.1.16
- '@types/react-dom': 19.1.9(@types/react@19.1.16)
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3(@types/react@19.2.5)
- '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)':
+ '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
dependencies:
'@radix-ui/primitive': 1.1.3
- '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-context': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-direction': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-id': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-direction': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-id': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
optionalDependencies:
- '@types/react': 19.1.16
- '@types/react-dom': 19.1.9(@types/react@19.1.16)
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3(@types/react@19.2.5)
- '@radix-ui/react-slider@1.3.6(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)':
+ '@radix-ui/react-slider@1.3.6(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
dependencies:
'@radix-ui/number': 1.1.1
'@radix-ui/primitive': 1.1.3
- '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-context': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-direction': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.16))(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
- '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-use-previous': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-use-size': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-direction': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.5))(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
optionalDependencies:
- '@types/react': 19.1.16
- '@types/react-dom': 19.1.9(@types/react@19.1.16)
+ '@types/react': 19.2.5
+ '@types/react-dom': 19.2.3(@types/react@19.2.5)
- '@radix-ui/react-slot@1.2.3(@types/react@19.1.16)(react@19.1.1)':
+ '@radix-ui/react-slot@1.2.3(@types/react@19.2.5)(react@19.2.0)':
dependencies:
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
optionalDependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@radix-ui/react-use-callback-ref@1.1.1(@types/react@19.1.16)(react@19.1.1)':
+ '@radix-ui/react-use-callback-ref@1.1.1(@types/react@19.2.5)(react@19.2.0)':
dependencies:
- react: 19.1.1
+ react: 19.2.0
optionalDependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@radix-ui/react-use-controllable-state@1.2.2(@types/react@19.1.16)(react@19.1.1)':
+ '@radix-ui/react-use-controllable-state@1.2.2(@types/react@19.2.5)(react@19.2.0)':
dependencies:
- '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.1.16)(react@19.1.1)
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
+ '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.5)(react@19.2.0)
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
optionalDependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@radix-ui/react-use-effect-event@0.0.2(@types/react@19.1.16)(react@19.1.1)':
+ '@radix-ui/react-use-effect-event@0.0.2(@types/react@19.2.5)(react@19.2.0)':
dependencies:
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
optionalDependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.1.16)(react@19.1.1)':
+ '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.2.5)(react@19.2.0)':
dependencies:
- react: 19.1.1
+ react: 19.2.0
optionalDependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@radix-ui/react-use-previous@1.1.1(@types/react@19.1.16)(react@19.1.1)':
+ '@radix-ui/react-use-previous@1.1.1(@types/react@19.2.5)(react@19.2.0)':
dependencies:
- react: 19.1.1
+ react: 19.2.0
optionalDependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@radix-ui/react-use-size@1.1.1(@types/react@19.1.16)(react@19.1.1)':
+ '@radix-ui/react-use-size@1.1.1(@types/react@19.2.5)(react@19.2.0)':
dependencies:
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
optionalDependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@react-three/fiber@9.3.0(@types/react@19.1.16)(immer@10.1.3)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(three@0.180.0)':
+ '@react-three/fiber@9.3.0(@types/react@19.2.5)(immer@10.1.3)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(three@0.180.0)':
dependencies:
'@babel/runtime': 7.28.4
- '@types/react-reconciler': 0.32.1(@types/react@19.1.16)
+ '@types/react-reconciler': 0.32.1(@types/react@19.2.5)
'@types/webxr': 0.5.24
base64-js: 1.5.1
buffer: 6.0.3
- its-fine: 2.0.0(@types/react@19.1.16)(react@19.1.1)
- react: 19.1.1
- react-reconciler: 0.31.0(react@19.1.1)
- react-use-measure: 2.1.7(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
+ its-fine: 2.0.0(@types/react@19.2.5)(react@19.2.0)
+ react: 19.2.0
+ react-reconciler: 0.31.0(react@19.2.0)
+ react-use-measure: 2.1.7(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
scheduler: 0.25.0
- suspend-react: 0.1.3(react@19.1.1)
+ suspend-react: 0.1.3(react@19.2.0)
three: 0.180.0
- use-sync-external-store: 1.5.0(react@19.1.1)
- zustand: 5.0.8(@types/react@19.1.16)(immer@10.1.3)(react@19.1.1)(use-sync-external-store@1.5.0(react@19.1.1))
+ use-sync-external-store: 1.5.0(react@19.2.0)
+ zustand: 5.0.8(@types/react@19.2.5)(immer@10.1.3)(react@19.2.0)(use-sync-external-store@1.5.0(react@19.2.0))
optionalDependencies:
- react-dom: 19.1.1(react@19.1.1)
+ react-dom: 19.2.0(react@19.2.0)
transitivePeerDependencies:
- '@types/react'
- immer
- '@reduxjs/toolkit@2.9.0(react-redux@9.2.0(@types/react@19.1.16)(react@19.1.1)(redux@5.0.1))(react@19.1.1)':
+ '@reduxjs/toolkit@2.9.0(react-redux@9.2.0(@types/react@19.2.5)(react@19.2.0)(redux@5.0.1))(react@19.2.0)':
dependencies:
'@standard-schema/spec': 1.0.0
'@standard-schema/utils': 0.3.0
@@ -2553,8 +2557,8 @@ snapshots:
redux-thunk: 3.1.0(redux@5.0.1)
reselect: 5.1.1
optionalDependencies:
- react: 19.1.1
- react-redux: 9.2.0(@types/react@19.1.16)(react@19.1.1)(redux@5.0.1)
+ react: 19.2.0
+ react-redux: 9.2.0(@types/react@19.2.5)(react@19.2.0)(redux@5.0.1)
'@standard-schema/spec@1.0.0': {}
@@ -2648,10 +2652,10 @@ snapshots:
'@tanstack/query-core@5.90.2': {}
- '@tanstack/react-query@5.90.2(react@19.1.1)':
+ '@tanstack/react-query@5.90.2(react@19.2.0)':
dependencies:
'@tanstack/query-core': 5.90.2
- react: 19.1.1
+ react: 19.2.0
'@tweenjs/tween.js@23.1.3': {}
@@ -2726,19 +2730,19 @@ snapshots:
dependencies:
'@types/node': 24.6.0
- '@types/react-dom@19.1.9(@types/react@19.1.16)':
+ '@types/react-dom@19.2.3(@types/react@19.2.5)':
dependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@types/react-reconciler@0.28.9(@types/react@19.1.16)':
+ '@types/react-reconciler@0.28.9(@types/react@19.2.5)':
dependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@types/react-reconciler@0.32.1(@types/react@19.1.16)':
+ '@types/react-reconciler@0.32.1(@types/react@19.2.5)':
dependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
- '@types/react@19.1.16':
+ '@types/react@19.2.5':
dependencies:
csstype: 3.1.3
@@ -3268,10 +3272,10 @@ snapshots:
is-plain-obj@4.1.0: {}
- its-fine@2.0.0(@types/react@19.1.16)(react@19.1.1):
+ its-fine@2.0.0(@types/react@19.2.5)(react@19.2.0):
dependencies:
- '@types/react-reconciler': 0.28.9(@types/react@19.1.16)
- react: 19.1.1
+ '@types/react-reconciler': 0.28.9(@types/react@19.2.5)
+ react: 19.2.0
transitivePeerDependencies:
- '@types/react'
@@ -3353,9 +3357,9 @@ snapshots:
devlop: 1.1.0
highlight.js: 11.11.1
- lucide-react@0.544.0(react@19.1.1):
+ lucide-react@0.544.0(react@19.2.0):
dependencies:
- react: 19.1.1
+ react: 19.2.0
magic-string@0.30.19:
dependencies:
@@ -3718,29 +3722,29 @@ snapshots:
neo-async@2.6.2:
optional: true
- next-themes@0.4.6(react-dom@19.1.1(react@19.1.1))(react@19.1.1):
+ next-themes@0.4.6(react-dom@19.2.0(react@19.2.0))(react@19.2.0):
dependencies:
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
- next@15.5.4(react-dom@19.1.1(react@19.1.1))(react@19.1.1):
+ next@16.0.3(react-dom@19.2.0(react@19.2.0))(react@19.2.0):
dependencies:
- '@next/env': 15.5.4
+ '@next/env': 16.0.3
'@swc/helpers': 0.5.15
caniuse-lite: 1.0.30001746
postcss: 8.4.31
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
- styled-jsx: 5.1.6(react@19.1.1)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ styled-jsx: 5.1.6(react@19.2.0)
optionalDependencies:
- '@next/swc-darwin-arm64': 15.5.4
- '@next/swc-darwin-x64': 15.5.4
- '@next/swc-linux-arm64-gnu': 15.5.4
- '@next/swc-linux-arm64-musl': 15.5.4
- '@next/swc-linux-x64-gnu': 15.5.4
- '@next/swc-linux-x64-musl': 15.5.4
- '@next/swc-win32-arm64-msvc': 15.5.4
- '@next/swc-win32-x64-msvc': 15.5.4
+ '@next/swc-darwin-arm64': 16.0.3
+ '@next/swc-darwin-x64': 16.0.3
+ '@next/swc-linux-arm64-gnu': 16.0.3
+ '@next/swc-linux-arm64-musl': 16.0.3
+ '@next/swc-linux-x64-gnu': 16.0.3
+ '@next/swc-linux-x64-musl': 16.0.3
+ '@next/swc-win32-arm64-msvc': 16.0.3
+ '@next/swc-win32-x64-msvc': 16.0.3
sharp: 0.34.4
transitivePeerDependencies:
- '@babel/core'
@@ -3794,50 +3798,50 @@ snapshots:
safe-buffer: 5.2.1
optional: true
- react-dom@19.1.1(react@19.1.1):
+ react-dom@19.2.0(react@19.2.0):
dependencies:
- react: 19.1.1
- scheduler: 0.26.0
+ react: 19.2.0
+ scheduler: 0.27.0
react-is@18.3.1: {}
- react-reconciler@0.31.0(react@19.1.1):
+ react-reconciler@0.31.0(react@19.2.0):
dependencies:
- react: 19.1.1
+ react: 19.2.0
scheduler: 0.25.0
- react-redux@9.2.0(@types/react@19.1.16)(react@19.1.1)(redux@5.0.1):
+ react-redux@9.2.0(@types/react@19.2.5)(react@19.2.0)(redux@5.0.1):
dependencies:
'@types/use-sync-external-store': 0.0.6
- react: 19.1.1
- use-sync-external-store: 1.5.0(react@19.1.1)
+ react: 19.2.0
+ use-sync-external-store: 1.5.0(react@19.2.0)
optionalDependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
redux: 5.0.1
- react-use-measure@2.1.7(react-dom@19.1.1(react@19.1.1))(react@19.1.1):
+ react-use-measure@2.1.7(react-dom@19.2.0(react@19.2.0))(react@19.2.0):
dependencies:
- react: 19.1.1
+ react: 19.2.0
optionalDependencies:
- react-dom: 19.1.1(react@19.1.1)
+ react-dom: 19.2.0(react@19.2.0)
- react@19.1.1: {}
+ react@19.2.0: {}
- recharts@3.2.1(@types/react@19.1.16)(react-dom@19.1.1(react@19.1.1))(react-is@18.3.1)(react@19.1.1)(redux@5.0.1):
+ recharts@3.2.1(@types/react@19.2.5)(react-dom@19.2.0(react@19.2.0))(react-is@18.3.1)(react@19.2.0)(redux@5.0.1):
dependencies:
- '@reduxjs/toolkit': 2.9.0(react-redux@9.2.0(@types/react@19.1.16)(react@19.1.1)(redux@5.0.1))(react@19.1.1)
+ '@reduxjs/toolkit': 2.9.0(react-redux@9.2.0(@types/react@19.2.5)(react@19.2.0)(redux@5.0.1))(react@19.2.0)
clsx: 2.1.1
decimal.js-light: 2.5.1
es-toolkit: 1.39.10
eventemitter3: 5.0.1
immer: 10.1.3
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
react-is: 18.3.1
- react-redux: 9.2.0(@types/react@19.1.16)(react@19.1.1)(redux@5.0.1)
+ react-redux: 9.2.0(@types/react@19.2.5)(react@19.2.0)(redux@5.0.1)
reselect: 5.1.1
tiny-invariant: 1.3.3
- use-sync-external-store: 1.5.0(react@19.1.1)
+ use-sync-external-store: 1.5.0(react@19.2.0)
victory-vendor: 37.3.6
transitivePeerDependencies:
- '@types/react'
@@ -3964,7 +3968,7 @@ snapshots:
scheduler@0.25.0: {}
- scheduler@0.26.0: {}
+ scheduler@0.27.0: {}
schema-utils@3.3.0:
dependencies:
@@ -4045,19 +4049,19 @@ snapshots:
dependencies:
inline-style-parser: 0.2.4
- styled-jsx@5.1.6(react@19.1.1):
+ styled-jsx@5.1.6(react@19.2.0):
dependencies:
client-only: 0.0.1
- react: 19.1.1
+ react: 19.2.0
supports-color@8.1.1:
dependencies:
has-flag: 4.0.0
optional: true
- suspend-react@0.1.3(react@19.1.1):
+ suspend-react@0.1.3(react@19.2.0):
dependencies:
- react: 19.1.1
+ react: 19.2.0
tailwind-merge@3.3.1: {}
@@ -4170,9 +4174,9 @@ snapshots:
punycode: 2.3.1
optional: true
- use-sync-external-store@1.5.0(react@19.1.1):
+ use-sync-external-store@1.5.0(react@19.2.0):
dependencies:
- react: 19.1.1
+ react: 19.2.0
util-deprecate@1.0.2: {}
@@ -4253,11 +4257,11 @@ snapshots:
yallist@5.0.0: {}
- zustand@5.0.8(@types/react@19.1.16)(immer@10.1.3)(react@19.1.1)(use-sync-external-store@1.5.0(react@19.1.1)):
+ zustand@5.0.8(@types/react@19.2.5)(immer@10.1.3)(react@19.2.0)(use-sync-external-store@1.5.0(react@19.2.0)):
optionalDependencies:
- '@types/react': 19.1.16
+ '@types/react': 19.2.5
immer: 10.1.3
- react: 19.1.1
- use-sync-external-store: 1.5.0(react@19.1.1)
+ react: 19.2.0
+ use-sync-external-store: 1.5.0(react@19.2.0)
zwitch@2.0.4: {}
diff --git a/web/src/app/layout.tsx b/web/src/app/layout.tsx
index 9aa3ef3..c031cde 100644
--- a/web/src/app/layout.tsx
+++ b/web/src/app/layout.tsx
@@ -49,11 +49,12 @@ export const viewport: Viewport = {
colorScheme: "dark",
};
-export default function RootLayout({
+export default async function RootLayout({
children,
}: {
children: React.ReactNode;
}) {
+ "use cache";
return (
{
+const Home = async () => {
+ "use cache";
return (
<>
diff --git a/web/src/app/posts/(posts)/layout.tsx b/web/src/app/posts/(posts)/layout.tsx
index 05eb8d7..607e786 100644
--- a/web/src/app/posts/(posts)/layout.tsx
+++ b/web/src/app/posts/(posts)/layout.tsx
@@ -1,7 +1,8 @@
import "katex/dist/katex.min.css";
import "@highlightjs/cdn-assets/styles/github-dark.min.css";
-const PostLayout = ({ children }: { children: React.ReactNode }) => {
+const PostLayout = async ({ children }: { children: React.ReactNode }) => {
+ "use cache";
return (
{
const { meta } = (await import(`@/posts/${name}.mdx`)) as {
diff --git a/web/tsconfig.json b/web/tsconfig.json
index 4178b8f..81159b3 100644
--- a/web/tsconfig.json
+++ b/web/tsconfig.json
@@ -12,7 +12,7 @@
"moduleResolution": "bundler",
"resolveJsonModule": true,
"isolatedModules": true,
- "jsx": "preserve",
+ "jsx": "react-jsx",
"incremental": true,
"plugins": [
{
@@ -32,7 +32,8 @@
"**/*.ts",
"**/*.tsx",
".next/types/**/*.ts",
- "tailwind.config.ts"
+ "tailwind.config.ts",
+ ".next/dev/types/**/*.ts"
],
"exclude": ["node_modules"]
}