@crapthings/run3d 0.2.6 → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -6,7 +6,7 @@ As models like GPT-6 Astra grow more capable at building 3D experiences, the dis
6
6
 
7
7
  ## Usage
8
8
 
9
- Requires Node.js `>=22.22.0` and pnpm.
9
+ Requires Node.js `>=24` and pnpm.
10
10
 
11
11
  ```bash
12
12
  npx @crapthings/run3d my-project
@@ -42,6 +42,7 @@ Drag to orbit the scene, scroll to zoom, and right-drag to pan. Edit `src/Scenes
42
42
  - [Navcat](https://github.com/isaac-mason/navcat) — builds and queries navmeshes in pure JavaScript, with Three.js helpers.
43
43
  - [FastNoiseLite](https://github.com/Auburn/FastNoiseLite) — generates procedural 2D and 3D noise.
44
44
  - [Three Hex Tiling](https://github.com/Ameobea/three-hex-tiling) — reduces visible repetition in tiled textures.
45
+ - [TSL Hex Tiling](https://github.com/crapthings/tsl-hex-tiling) — reduces texture repetition with Three.js TSL for WebGPU and WebGL 2.
45
46
 
46
47
  ### Data and state
47
48
 
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "0.2.6",
6
+ "version": "0.2.7",
7
7
  "description": "From idea to interactive 3D prototype in one command. A JavaScript starter with Vite, React Three Fiber, and tools for creative experimentation.",
8
8
  "type": "module",
9
9
  "bin": {
@@ -12,6 +12,7 @@
12
12
  "files": [
13
13
  "bin",
14
14
  "template/AGENTS.md",
15
+ "template/docs",
15
16
  "template/gitignore",
16
17
  "template/index.html",
17
18
  "template/jsconfig.json",
@@ -23,7 +24,7 @@
23
24
  "template/vite.config.js"
24
25
  ],
25
26
  "engines": {
26
- "node": ">=22.22.0"
27
+ "node": ">=24"
27
28
  },
28
29
  "scripts": {
29
30
  "lint": "standard \"bin/**/*.js\" \"scripts/**/*.js\" \"test/**/*.js\" \"template/src/**/*.{js,jsx}\" template/vite.config.js",
@@ -1,8 +1,16 @@
1
1
  # Rules
2
2
 
3
- ## Commands
3
+ ## Architectural Geometry
4
+
5
+ - Use geometric unions or equivalent cleanup at wall intersections and floor/ceiling junctions to remove overlapping coplanar and internal faces, producing a closed shell that avoids Z-fighting; merging meshes alone is insufficient.
6
+
7
+ ## Scene Lighting
8
+
9
+ - Avoid ambient lighting by default. Only add ambient lighting (such as `AmbientLight` or `HemisphereLight`) when explicitly requested by the user.
4
10
 
5
- - Only run `pnpm build`, `pnpm lint`, or `pnpm test` when explicitly requested by the user, and never run `pnpm dev`.
11
+ ## Texture Maps
12
+
13
+ - Reduce visible texture repetition with hex tiling: use `three-hex-tiling` for `MeshStandardMaterial` and `MeshPhysicalMaterial` with `WebGLRenderer`, and `tsl-hex-tiling` for TSL node materials with `WebGPURenderer` (including its WebGL 2 fallback).
6
14
 
7
15
  ## Code Style
8
16
 
@@ -10,11 +18,12 @@
10
18
  - Explain each top-level declaration's purpose in a one-sentence comment; split it if one sentence cannot explain it clearly.
11
19
  - Avoid overengineering: question whether each solution or abstraction is needed for current requirements before implementing it.
12
20
  - Write component styles inline with Tailwind utilities in `className`, using arbitrary values when needed; use CSS files only for global setup or styles Tailwind cannot express.
21
+ - Use Zustand for shared state and actions; avoid prop drilling.
13
22
 
14
- ## Scene Lighting
23
+ ## UI Components
15
24
 
16
- - Avoid ambient lighting by default. Only add ambient lighting (such as `AmbientLight` or `HemisphereLight`) when explicitly requested by the user.
25
+ - For menus, dialogs, popovers, tabs, and form controls, consult [docs/headless-ui.md](docs/headless-ui.md) and its official Headless UI links before implementation.
17
26
 
18
- ## Texture Maps
27
+ ## Commands
19
28
 
20
- - When using texture maps, process them with the installed `three-hex-tiling` package to reduce visible texture repetition instead of relying on basic repeating UV tiling alone.
29
+ - Run `pnpm build/lint/test` only on explicit user request; never run `pnpm dev`.
@@ -0,0 +1,35 @@
1
+ # Headless UI
2
+
3
+ Use the installed `@headlessui/react` package for accessible, unstyled React components. Style them with Tailwind CSS. Read the linked official documentation for component composition, keyboard behavior, and API details before implementing a matching interface.
4
+
5
+ ## Component guide
6
+
7
+ | Interface | Component and official documentation |
8
+ | --- | --- |
9
+ | Action menu | [Menu](https://headlessui.com/react/menu) |
10
+ | Modal, confirmation, or modal drawer | [Dialog](https://headlessui.com/react/dialog) |
11
+ | Floating panel with interactive content | [Popover](https://headlessui.com/react/popover) |
12
+ | Collapsible section | [Disclosure](https://headlessui.com/react/disclosure) |
13
+ | Tabbed panels | [Tabs](https://headlessui.com/react/tabs) |
14
+ | Searchable selection | [Combobox](https://headlessui.com/react/combobox) |
15
+ | Custom selection list | [Listbox](https://headlessui.com/react/listbox) |
16
+ | Native selection control | [Select](https://headlessui.com/react/select) |
17
+ | Mutually exclusive choices | [Radio Group](https://headlessui.com/react/radio-group) |
18
+ | Checked or mixed state | [Checkbox](https://headlessui.com/react/checkbox) |
19
+ | On/off toggle | [Switch](https://headlessui.com/react/switch) |
20
+ | Text entry | [Input](https://headlessui.com/react/input), [Textarea](https://headlessui.com/react/textarea) |
21
+ | Form grouping and labels | [Fieldset](https://headlessui.com/react/fieldset) |
22
+ | Button states | [Button](https://headlessui.com/react/button) |
23
+ | Enter/leave animation | [Transition](https://headlessui.com/react/transition) |
24
+
25
+ ## Implementation
26
+
27
+ - Import named components from `@headlessui/react` and follow each page's component structure.
28
+ - Use `Menu` for actions, `Listbox` for choosing values, and `Combobox` for searchable choices.
29
+ - Provide accessible labels and visible focus states. Style supported states through documented `data-*` attributes or render props.
30
+ - For dialogs, supply `open`, `onClose`, and a `DialogTitle`. Let Headless UI manage focus trapping and dismissal; follow the [Dialog guide](https://headlessui.com/react/dialog) for backdrops, portals, and initial focus.
31
+ - Use the documented `anchor` API for supported floating panels. See [Popover positioning](https://headlessui.com/react/popover#positioning-the-panel).
32
+ - Keep shared values and actions in Zustand; read them where needed. Let Headless UI manage internal interaction state when external control is unnecessary.
33
+ - When rendering custom elements with `as`, forward the props and ref required by Headless UI. See [Menu custom elements](https://headlessui.com/react/menu#rendering-as-different-elements).
34
+
35
+ These links target the official React documentation. Verify APIs against the installed package when documentation and package versions differ.
@@ -3,9 +3,9 @@
3
3
  "private": true,
4
4
  "version": "0.0.0",
5
5
  "type": "module",
6
- "packageManager": "pnpm@12.8.1",
6
+ "packageManager": "pnpm@12.14.0",
7
7
  "engines": {
8
- "node": ">=22.22.0"
8
+ "node": ">=24"
9
9
  },
10
10
  "scripts": {
11
11
  "dev": "vite",
@@ -17,8 +17,8 @@
17
17
  "@gsap/react": "^2.1.2",
18
18
  "@headlessui/react": "^2.2.10",
19
19
  "@react-three/drei": "^10.7.9",
20
- "@react-three/fiber": "^9.8.1",
21
- "@react-three/postprocessing": "^3.1.3",
20
+ "@react-three/fiber": "^9.8.2",
21
+ "@react-three/postprocessing": "^3.2.0",
22
22
  "@react-three/rapier": "^2.2.0",
23
23
  "@recast-navigation/three": "^0.43.1",
24
24
  "d3": "^7.9.0",
@@ -41,9 +41,9 @@
41
41
  },
42
42
  "devDependencies": {
43
43
  "@tailwindcss/vite": "^4.3.3",
44
- "@vitejs/plugin-react": "^6.1.1",
44
+ "@vitejs/plugin-react": "^6.1.2",
45
45
  "r3f-perf": "^7.2.3",
46
46
  "tailwindcss": "^4.3.3",
47
- "vite": "^8.3.1"
47
+ "vite": "^8.3.4"
48
48
  }
49
49
  }
@@ -7,153 +7,153 @@ importers:
7
7
  configDependencies: {}
8
8
  packageManagerDependencies:
9
9
  pnpm:
10
- specifier: 12.8.1
11
- version: 12.8.1
10
+ specifier: 12.14.0
11
+ version: 12.14.0
12
12
 
13
13
  packages:
14
14
 
15
- '@pnpm/exe.android-arm64@12.8.1':
16
- resolution: {integrity: sha512-siDxcidfz5eM6L2tJfik+i2bbUEw8UC7MZ3Yl2HYdRmqbdhHGAOQACtOOu6QVW4Jul4/w5wVKm+wM8ACtgh1Pg==}
15
+ '@pnpm/exe.android-arm64@12.14.0':
16
+ resolution: {integrity: sha512-+iSh7x21C3A2hqc+Z0ZmbKTcn6YNlzrXM142PsnQH/dLj0DYxFzoBvc6XAnL/yfQ5nnH2ebBiRj/zVxr61fZbQ==}
17
17
  cpu: [arm64]
18
18
  os: [android]
19
19
 
20
- '@pnpm/exe.android-x64@12.8.1':
21
- resolution: {integrity: sha512-0F/uqPRc3aN4vLHsa0f+6fTtmsigFQ9/yxEU43fionF//pNHEd5e97b3w/nKIgqYMCUQCJphmBRMA9Q8/wlo9Q==}
20
+ '@pnpm/exe.android-x64@12.14.0':
21
+ resolution: {integrity: sha512-qT+0LqEr2wBVaxcG2T8cX/R8SSRz2Rvpp8nRR4fh8tnGUZRch87gFmsHUAoSQh7w6j1h0qTjrA384j4xi8frvw==}
22
22
  cpu: [x64]
23
23
  os: [android]
24
24
 
25
- '@pnpm/exe.darwin-arm64@12.8.1':
26
- resolution: {integrity: sha512-/rwavvMQJsl2RIxOHBnDF+4Gk+fhQFAY4M3PQZoKskJOEnaJcygG9p1xby6wcQcbS4d9dIubv09CQhufTgfmpw==}
25
+ '@pnpm/exe.darwin-arm64@12.14.0':
26
+ resolution: {integrity: sha512-tnrdUB8ecJoehuKKqi1YHCBVl61xtJ9XVGcx5EviC6fWO4DeGI8GtXrjvJxDBM3nuVjJeWistgsUp/N142x4sw==}
27
27
  cpu: [arm64]
28
28
  os: [darwin]
29
29
 
30
- '@pnpm/exe.darwin-x64@12.8.1':
31
- resolution: {integrity: sha512-htYt2gN7zqJKLhC99Ft6EUiO7myjZAZXfmGCTJUL1v+o7vE9hZdE1+fAkk4Oj1ZHNRti6b2woOxEkRkAusi8OQ==}
30
+ '@pnpm/exe.darwin-x64@12.14.0':
31
+ resolution: {integrity: sha512-vlBfGkruqQRsEHTW43cPwpYd7QlbIJ//cvpAdb3bVXkI8SgTPoXhCnc05m+ZNiPrrEkBsX/t7KHw9aXpkzPm3Q==}
32
32
  cpu: [x64]
33
33
  os: [darwin]
34
34
 
35
- '@pnpm/exe.freebsd-x64@12.8.1':
36
- resolution: {integrity: sha512-PB5BULNgytxvExoOXUUeseS/DcpPENs+cg3iA6xHHeaLT4ctEGKSGXEbuj7USeqvo8JBpAx039hivnbzGqDwnA==}
35
+ '@pnpm/exe.freebsd-x64@12.14.0':
36
+ resolution: {integrity: sha512-Qg5rxBrGYl6Tfso+EyygPf84fY1Fzy55E/0or+iuYKtnf0vc0MlHJfVIlT7pBukMRntQHRik7hUi0Z4s7AlJsw==}
37
37
  cpu: [x64]
38
38
  os: [freebsd]
39
39
 
40
- '@pnpm/exe.linux-arm64-musl@12.8.1':
41
- resolution: {integrity: sha512-kKeyC/ArjrgdciQRBrOL0j9HtOI4gDRgoyP+eJ1CQKyadpKlf/DhDDyspXe07R3B9KagTVLUF2nlt6Dr5quFIg==}
40
+ '@pnpm/exe.linux-arm64-musl@12.14.0':
41
+ resolution: {integrity: sha512-DRIe4yQkXBGA/PhVJdzlbnllxBdAtnMMvTVLLcGpsK5FvJz9kxD2Hyxtn68ovmNkVX06f6p45cQwfm3wx2jn1A==}
42
42
  cpu: [arm64]
43
43
  os: [linux]
44
44
  libc: [musl]
45
45
 
46
- '@pnpm/exe.linux-arm64@12.8.1':
47
- resolution: {integrity: sha512-q4s9a9X2O3N9aeUFooW24orNrxvu20+jyVUFR5RanPCqOKKPBrgs2iywMkBBx1aXkkzdWT54/mfz8Be8sJlWEw==}
46
+ '@pnpm/exe.linux-arm64@12.14.0':
47
+ resolution: {integrity: sha512-7joGShZ44Nk3WpNU+60JoOPjCXlgxhJAq11S2UiVtwCUDgTer1yTPPfxGW8pxaD6046actYLIYDbZNlubHWs0A==}
48
48
  cpu: [arm64]
49
49
  os: [linux]
50
50
  libc: [glibc]
51
51
 
52
- '@pnpm/exe.linux-ppc64@12.8.1':
53
- resolution: {integrity: sha512-F7XSjKJthwCh/L6abZiMpAfo2Cm61SZIT3e4dfgiIjESndlWaXCnfLKngSgZ/SEMsdmHT6dud3+kWIB3tw0/xQ==}
52
+ '@pnpm/exe.linux-ppc64@12.14.0':
53
+ resolution: {integrity: sha512-gSoryn7ySdXd//gjgf3MvvA8ZerJayaSbuMZMtAWq4vb2/wlVEgpl0Kvqt54y58TRj533Qjq2txKgnxd4JyoAQ==}
54
54
  cpu: [ppc64]
55
55
  os: [linux]
56
56
  libc: [glibc]
57
57
 
58
- '@pnpm/exe.linux-riscv64@12.8.1':
59
- resolution: {integrity: sha512-z1ecpIK/ZY08Unk69KWWE9867oaKUytGUjrHnBoGFAAhsK+q+0cfvBH+f5fWobJ7FX97leMlLO+gkJolddM45Q==}
58
+ '@pnpm/exe.linux-riscv64@12.14.0':
59
+ resolution: {integrity: sha512-EMjew1H9WqQ7pL+tYqCPwiuB+0PeCiJRV7fyWeuFw0wwYUajFBjcaPO3IGAVu9sdmJDU+e+HYv/Zey6aKae0Vw==}
60
60
  cpu: [riscv64]
61
61
  os: [linux]
62
62
  libc: [glibc]
63
63
 
64
- '@pnpm/exe.linux-s390x@12.8.1':
65
- resolution: {integrity: sha512-KU6tnrBfu4uKXTq6N5qJwSm8FSrs9Wc8b5AUEsHK9bRXwNdsZ1/lRxG1++X29SKRW9OSNuDSjxASv5mAvGo1gA==}
64
+ '@pnpm/exe.linux-s390x@12.14.0':
65
+ resolution: {integrity: sha512-shYOj/SFoXD35fHe0pWr2JofwSXulC0BnEIXLj2QokDi0EF//AfKsui35yKIkTEl+s2VJybc3PO4iJNhKIj5Qw==}
66
66
  cpu: [s390x]
67
67
  os: [linux]
68
68
  libc: [glibc]
69
69
 
70
- '@pnpm/exe.linux-x64-musl@12.8.1':
71
- resolution: {integrity: sha512-eUE8BWJkDr2tJb/yrk0yVnszlmNqFarVxUlqiZ9BAkct28Nq/5g2H0tvMDmPA7fAQW3STNj+omJPPRVT+4s5sQ==}
70
+ '@pnpm/exe.linux-x64-musl@12.14.0':
71
+ resolution: {integrity: sha512-btZiZ2Ot0llKK1ndSfA5i3IRX7/S0VrmzseNH/BJ4c+Cady+S81H6vvU1zByggHMyqQhC8OgxO5PiIY7D9bH0Q==}
72
72
  cpu: [x64]
73
73
  os: [linux]
74
74
  libc: [musl]
75
75
 
76
- '@pnpm/exe.linux-x64@12.8.1':
77
- resolution: {integrity: sha512-8bDZ0lZlCdi2rvnFul7EYgcC7zKeWSe76y8JV2oXobaS8p9i9d6PSf6LgLtTM0fI7R9Oh4eLCbveXyNDMmvZ+g==}
76
+ '@pnpm/exe.linux-x64@12.14.0':
77
+ resolution: {integrity: sha512-F6K8e/jWxiuEYJaQtRRUG9ynBSTEHa+t7Lf86MKuOO5UA7WVVMbi+oB8nY6iKW++ncWS2yG6T9faXZGxqNsfoQ==}
78
78
  cpu: [x64]
79
79
  os: [linux]
80
80
  libc: [glibc]
81
81
 
82
- '@pnpm/exe.win32-arm64@12.8.1':
83
- resolution: {integrity: sha512-MsT0dlrRxnCRCHCaosNbhWpEiAFnFuMEu3KuDJDU41BXgTwiINxU8goloUSUDejWZUqKaUqNC/qUTihl9nFtqg==}
82
+ '@pnpm/exe.win32-arm64@12.14.0':
83
+ resolution: {integrity: sha512-DOjlkVB6TtTKeAAe0hNZXn5S7YqESmo1Z6SGbR4BZNQ4isRg31XVHjX2RFTbY8gnZq68IwzyLmPqlEjMmYxofg==}
84
84
  cpu: [arm64]
85
85
  os: [win32]
86
86
 
87
- '@pnpm/exe.win32-x64@12.8.1':
88
- resolution: {integrity: sha512-SWtPe0PsbTTk//gJND10tMdOfCYjrkq5+qV49hzVhY7xz2iJ339Rc+xwASlcvbwTfrvH39YNqpKYibD+CRGLwA==}
87
+ '@pnpm/exe.win32-x64@12.14.0':
88
+ resolution: {integrity: sha512-/LSX6mew/sLf08XqcjemuklNKf1K/Ftpgj4//hK/HKzI2dKbmxDB27a/2OaQ5a0O3/3OFzlssXDziZsi+yVBwQ==}
89
89
  cpu: [x64]
90
90
  os: [win32]
91
91
 
92
- pnpm@12.8.1:
93
- resolution: {integrity: sha512-9kupB1B/XOr+BsjTjmBS0BeURFgOwSed3Vv8EctIqoomRLZlmOB+dh2oSHKp/FfV+QK4f6SdAkGY1VhhKqu+RQ==}
92
+ pnpm@12.14.0:
93
+ resolution: {integrity: sha512-wYum2HmT09Fky16JSPMrLAbuhUSH4GzY2GeBNC+z5btGNDZwNHEehoArqpw3vqkGzhkprQjXCITJfYAd8TOJpg==}
94
94
  engines: {node: '>=18.*'}
95
95
  hasBin: true
96
96
 
97
97
  snapshots:
98
98
 
99
- '@pnpm/exe.android-arm64@12.8.1':
99
+ '@pnpm/exe.android-arm64@12.14.0':
100
100
  optional: true
101
101
 
102
- '@pnpm/exe.android-x64@12.8.1':
102
+ '@pnpm/exe.android-x64@12.14.0':
103
103
  optional: true
104
104
 
105
- '@pnpm/exe.darwin-arm64@12.8.1':
105
+ '@pnpm/exe.darwin-arm64@12.14.0':
106
106
  optional: true
107
107
 
108
- '@pnpm/exe.darwin-x64@12.8.1':
108
+ '@pnpm/exe.darwin-x64@12.14.0':
109
109
  optional: true
110
110
 
111
- '@pnpm/exe.freebsd-x64@12.8.1':
111
+ '@pnpm/exe.freebsd-x64@12.14.0':
112
112
  optional: true
113
113
 
114
- '@pnpm/exe.linux-arm64-musl@12.8.1':
114
+ '@pnpm/exe.linux-arm64-musl@12.14.0':
115
115
  optional: true
116
116
 
117
- '@pnpm/exe.linux-arm64@12.8.1':
117
+ '@pnpm/exe.linux-arm64@12.14.0':
118
118
  optional: true
119
119
 
120
- '@pnpm/exe.linux-ppc64@12.8.1':
120
+ '@pnpm/exe.linux-ppc64@12.14.0':
121
121
  optional: true
122
122
 
123
- '@pnpm/exe.linux-riscv64@12.8.1':
123
+ '@pnpm/exe.linux-riscv64@12.14.0':
124
124
  optional: true
125
125
 
126
- '@pnpm/exe.linux-s390x@12.8.1':
126
+ '@pnpm/exe.linux-s390x@12.14.0':
127
127
  optional: true
128
128
 
129
- '@pnpm/exe.linux-x64-musl@12.8.1':
129
+ '@pnpm/exe.linux-x64-musl@12.14.0':
130
130
  optional: true
131
131
 
132
- '@pnpm/exe.linux-x64@12.8.1':
132
+ '@pnpm/exe.linux-x64@12.14.0':
133
133
  optional: true
134
134
 
135
- '@pnpm/exe.win32-arm64@12.8.1':
135
+ '@pnpm/exe.win32-arm64@12.14.0':
136
136
  optional: true
137
137
 
138
- '@pnpm/exe.win32-x64@12.8.1':
138
+ '@pnpm/exe.win32-x64@12.14.0':
139
139
  optional: true
140
140
 
141
- pnpm@12.8.1:
141
+ pnpm@12.14.0:
142
142
  optionalDependencies:
143
- '@pnpm/exe.android-arm64': 12.8.1
144
- '@pnpm/exe.android-x64': 12.8.1
145
- '@pnpm/exe.darwin-arm64': 12.8.1
146
- '@pnpm/exe.darwin-x64': 12.8.1
147
- '@pnpm/exe.freebsd-x64': 12.8.1
148
- '@pnpm/exe.linux-arm64': 12.8.1
149
- '@pnpm/exe.linux-arm64-musl': 12.8.1
150
- '@pnpm/exe.linux-ppc64': 12.8.1
151
- '@pnpm/exe.linux-riscv64': 12.8.1
152
- '@pnpm/exe.linux-s390x': 12.8.1
153
- '@pnpm/exe.linux-x64': 12.8.1
154
- '@pnpm/exe.linux-x64-musl': 12.8.1
155
- '@pnpm/exe.win32-arm64': 12.8.1
156
- '@pnpm/exe.win32-x64': 12.8.1
143
+ '@pnpm/exe.android-arm64': 12.14.0
144
+ '@pnpm/exe.android-x64': 12.14.0
145
+ '@pnpm/exe.darwin-arm64': 12.14.0
146
+ '@pnpm/exe.darwin-x64': 12.14.0
147
+ '@pnpm/exe.freebsd-x64': 12.14.0
148
+ '@pnpm/exe.linux-arm64': 12.14.0
149
+ '@pnpm/exe.linux-arm64-musl': 12.14.0
150
+ '@pnpm/exe.linux-ppc64': 12.14.0
151
+ '@pnpm/exe.linux-riscv64': 12.14.0
152
+ '@pnpm/exe.linux-s390x': 12.14.0
153
+ '@pnpm/exe.linux-x64': 12.14.0
154
+ '@pnpm/exe.linux-x64-musl': 12.14.0
155
+ '@pnpm/exe.win32-arm64': 12.14.0
156
+ '@pnpm/exe.win32-x64': 12.14.0
157
157
 
158
158
  ---
159
159
  lockfileVersion: '9.0'
@@ -177,16 +177,16 @@ importers:
177
177
  version: 2.2.10(react-dom@19.2.8(react@19.2.8))(react@19.2.8)
178
178
  '@react-three/drei':
179
179
  specifier: ^10.7.9
180
- version: 10.7.9(@react-three/fiber@9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/react@19.3.0)(@types/three@0.186.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
180
+ version: 10.7.9(@react-three/fiber@9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/react@19.3.0)(@types/three@0.186.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
181
181
  '@react-three/fiber':
182
- specifier: ^9.8.1
183
- version: 9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
182
+ specifier: ^9.8.2
183
+ version: 9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
184
184
  '@react-three/postprocessing':
185
- specifier: ^3.1.3
186
- version: 3.1.3(@react-three/fiber@9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/three@0.186.0)(postprocessing@6.39.5(three@0.186.1))(react@19.2.8)(three@0.186.1)
185
+ specifier: ^3.2.0
186
+ version: 3.2.0(@react-three/fiber@9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/three@0.186.0)(postprocessing@6.39.5(three@0.186.1))(react@19.2.8)(three@0.186.1)
187
187
  '@react-three/rapier':
188
188
  specifier: ^2.2.0
189
- version: 2.2.0(@react-three/fiber@9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(react@19.2.8)(three@0.186.1)
189
+ version: 2.2.0(@react-three/fiber@9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(react@19.2.8)(three@0.186.1)
190
190
  '@recast-navigation/three':
191
191
  specifier: ^0.43.1
192
192
  version: 0.43.1(@types/three@0.186.0)(three@0.186.1)
@@ -244,19 +244,19 @@ importers:
244
244
  devDependencies:
245
245
  '@tailwindcss/vite':
246
246
  specifier: ^4.3.3
247
- version: 4.3.3(vite@8.3.1(jiti@2.7.0))
247
+ version: 4.3.3(vite@8.3.4(jiti@2.7.0))
248
248
  '@vitejs/plugin-react':
249
- specifier: ^6.1.1
250
- version: 6.1.1(vite@8.3.1(jiti@2.7.0))
249
+ specifier: ^6.1.2
250
+ version: 6.1.2(vite@8.3.4(jiti@2.7.0))
251
251
  r3f-perf:
252
252
  specifier: ^7.2.3
253
- version: 7.2.3(@react-three/fiber@9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/react@19.3.0)(@types/three@0.186.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)(use-sync-external-store@1.7.0(react@19.2.8))
253
+ version: 7.2.3(@react-three/fiber@9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/react@19.3.0)(@types/three@0.186.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)(use-sync-external-store@1.7.0(react@19.2.8))
254
254
  tailwindcss:
255
255
  specifier: ^4.3.3
256
256
  version: 4.3.3
257
257
  vite:
258
- specifier: ^8.3.1
259
- version: 8.3.1(jiti@2.7.0)
258
+ specifier: ^8.3.4
259
+ version: 8.3.4(jiti@2.7.0)
260
260
 
261
261
  packages:
262
262
 
@@ -349,8 +349,8 @@ packages:
349
349
  peerDependencies:
350
350
  three: '>= 0.159.0'
351
351
 
352
- '@oxc-project/types@0.151.0':
353
- resolution: {integrity: sha512-J1yXrIlNDZVzE3ada310xeAw7nH8yCAyLPuUIsjKatFPmfn5bS1oW+cM+QsGOtVWd5nhSpbwZWx/rue+r5Z+PA==}
352
+ '@oxc-project/types@0.154.0':
353
+ resolution: {integrity: sha512-KYOUGQFlLWR+s4QMV2Q9ko38TZm7EdO87Qm7rvZLqk/webse/cDjtyxKhg/47l0byCbs/k46LT8qc4PKjAikzA==}
354
354
 
355
355
  '@radix-ui/react-icons@1.3.2':
356
356
  resolution: {integrity: sha512-fyQIhGDhzfc9pK2kH6Pl9c4BDJGfMkPqkyIgYDthyNYoNg3wVhoJMMh19WS4Up/1KMPFVpNsT2q3WmXn2N1m6g==}
@@ -419,8 +419,8 @@ packages:
419
419
  react-dom:
420
420
  optional: true
421
421
 
422
- '@react-three/fiber@9.8.1':
423
- resolution: {integrity: sha512-GbNP4r6F/gpclFKkLGHzXcuwFWAzLyKsmrQGcDuwK3wQnwLH6F1TfGtEYjHy8OQoGsajwT19B9jtVLLjjfH09w==}
422
+ '@react-three/fiber@9.8.2':
423
+ resolution: {integrity: sha512-6s0ejw0bT1myQ/aLLugcil8/zBmNnnHw/AISWF1yfDLOxfX3yYaTS+0IkpJITEnm/SSMLtxje6CJDt0i5Wu1Sw==}
424
424
  peerDependencies:
425
425
  expo: '>=43.0'
426
426
  expo-asset: '>=8.4'
@@ -444,8 +444,8 @@ packages:
444
444
  react-native:
445
445
  optional: true
446
446
 
447
- '@react-three/postprocessing@3.1.3':
448
- resolution: {integrity: sha512-LhCTSC+nli1agIIIgrhJalvJcdSy7/DOXG5EDGxKVlVsrqUxMPYlMnRN/QqgSAjGPKmnnuiEmpVQtOkTKwiidw==}
447
+ '@react-three/postprocessing@3.2.0':
448
+ resolution: {integrity: sha512-VSwaG1cimKOF3d4LWtR5BumcI4k1B+CJ8HfbeJ7msuEgtZiOnkNBGyLfRQtai3evrup+9QNRbNIIZ4UsuyEh9A==}
449
449
  peerDependencies:
450
450
  '@react-three/fiber': '>=9.7.0'
451
451
  postprocessing: ^6.36.0
@@ -482,98 +482,98 @@ packages:
482
482
  '@remix-run/route-pattern@0.22.1':
483
483
  resolution: {integrity: sha512-czdGJWh09Lapvcqt7Vb09KlrU2PhRJ8xQaI+AItTuD9aDJ5MAgxnS38lnys6Ll+6RJEqPiaUqTwIQhVLwFvv+w==}
484
484
 
485
- '@rolldown/binding-android-arm-eabi@1.2.11':
486
- resolution: {integrity: sha512-A5kXfGKvKWWZE0TtPrfsvT+q4Y5d1QG8gGUzpYjGydM+fARM9MuX90PrXYXe0XbsDVgyxxNzHo6giCj90bsFNw==}
485
+ '@rolldown/binding-android-arm-eabi@1.2.14':
486
+ resolution: {integrity: sha512-aWR+XKH9+rW7m5fWq/5360J3mHycrx/o6xZM2DQFdJnTMdyP7/WzxPjhtLbVWdKo2y612/4U1bWqb3HQhiF7vg==}
487
487
  engines: {node: ^20.19.0 || >=22.12.0}
488
488
  cpu: [arm]
489
489
  os: [android]
490
490
 
491
- '@rolldown/binding-android-arm64@1.2.11':
492
- resolution: {integrity: sha512-z6cTycz+iJ4PVkuL4HHW4DfTfoeU/2nqYYuSOrTmH7yHK5Y0LCOnA03V4ZNxavyVaU1oOqUgIg2klN/s+USGOA==}
491
+ '@rolldown/binding-android-arm64@1.2.14':
492
+ resolution: {integrity: sha512-QiVxHofl6A8lQU7WAtOUY4QMVZXohxwz7WJJoeh8NBEUyKfIkMRKhYyq8az/1RypNiIXzNTtiS6KwHz0erxYRQ==}
493
493
  engines: {node: ^20.19.0 || >=22.12.0}
494
494
  cpu: [arm64]
495
495
  os: [android]
496
496
 
497
- '@rolldown/binding-darwin-arm64@1.2.11':
498
- resolution: {integrity: sha512-jShvqNtP6vDC6/A5JOAzbVV+DkgHqhl/ScVCJEbt+TUY6QYz7YnXcrg3sLtFBniro0f/Ld50ZwCWA6f7KYD1nQ==}
497
+ '@rolldown/binding-darwin-arm64@1.2.14':
498
+ resolution: {integrity: sha512-lTQOzHuBIooh3jIr5XINQkjPGEuGy+Dsy0meXDr6Sjty0b99kYgGh4uBC/8mJX1T0kC8d6S0aPP1Y+bHkh6aBw==}
499
499
  engines: {node: ^20.19.0 || >=22.12.0}
500
500
  cpu: [arm64]
501
501
  os: [darwin]
502
502
 
503
- '@rolldown/binding-darwin-x64@1.2.11':
504
- resolution: {integrity: sha512-f2i2xiNWq1Z1l2++q2fuhZRdLAT3aqxD6vRNm1RAxpUoBcdqNB3C0s1Bt+K+PbEx2F5F4gQp6hqKkphCY/xF9w==}
503
+ '@rolldown/binding-darwin-x64@1.2.14':
504
+ resolution: {integrity: sha512-hyMKEGatjmBYCs/Q4sbIcL/GqpFEqsX3wc+HYVQ/85A4rxc1o7rPm4DUI4GV4k/h0ITddwFSGpqQunI14GXjTA==}
505
505
  engines: {node: ^20.19.0 || >=22.12.0}
506
506
  cpu: [x64]
507
507
  os: [darwin]
508
508
 
509
- '@rolldown/binding-freebsd-x64@1.2.11':
510
- resolution: {integrity: sha512-4Ir5FSOKIAMr4r0kExpt1s3bMgzJU3rA45AYOHtQpls0oNeqcYBKrWMlckrYH4KCfGLfkfn1tN1dmZPMVsdXow==}
509
+ '@rolldown/binding-freebsd-x64@1.2.14':
510
+ resolution: {integrity: sha512-u371GbXoVXrEgP20PwzoGNOdAOqAMhzo19JzzY+V4YmmnC+DTOoqdbMu+O+54emM59Mik/UdrtWgcuEDKWRPKA==}
511
511
  engines: {node: ^20.19.0 || >=22.12.0}
512
512
  cpu: [x64]
513
513
  os: [freebsd]
514
514
 
515
- '@rolldown/binding-linux-arm-gnueabihf@1.2.11':
516
- resolution: {integrity: sha512-/gnRDM+39BROzAN/k1OZjDPnDMcZxB/0EUxKjONO5yVkNEvlsoMDrxGNKgZi/ttFriS2gwlDNzB65pvNbFOXIQ==}
515
+ '@rolldown/binding-linux-arm-gnueabihf@1.2.14':
516
+ resolution: {integrity: sha512-BqwKsdZQf6EqVWr8fv2MrDYzAvOZ7+NYFSJESRGs87fkseEhs0TU9TXgRJTkZoRRkxTizyEg1LKUXfU3/78uqg==}
517
517
  engines: {node: ^20.19.0 || >=22.12.0}
518
518
  cpu: [arm]
519
519
  os: [linux]
520
520
 
521
- '@rolldown/binding-linux-arm64-gnu@1.2.11':
522
- resolution: {integrity: sha512-PFaK8HwvAHbaKbBcDNQihjMKYvFnA5hiENx/l5tphTDz1E0WFp32l0A7aq7lyUwGsRw/xSrNIy/gIK4thrSCrw==}
521
+ '@rolldown/binding-linux-arm64-gnu@1.2.14':
522
+ resolution: {integrity: sha512-SD9kY8M009x/7s57Z1dgUVlP5+uYBgKQK0Tkr1WIWngrtUJmRCW1RJFMY7QDla2khXhmg2i5Io7MUjcmZNZ/KQ==}
523
523
  engines: {node: ^20.19.0 || >=22.12.0}
524
524
  cpu: [arm64]
525
525
  os: [linux]
526
526
  libc: [glibc]
527
527
 
528
- '@rolldown/binding-linux-arm64-musl@1.2.11':
529
- resolution: {integrity: sha512-AskzJUIKRLPxkruR1wLKewGbOw+EYfU/9lOrBFj4AFrEA8hPpKFnODWNu2WLaNs0QNkEb9QIJufmVZZIL/bJlg==}
528
+ '@rolldown/binding-linux-arm64-musl@1.2.14':
529
+ resolution: {integrity: sha512-BJ2CL19M6uuWesMgnqJzgxoI+N+eV7b0A9O9vLV42y+gitC41fNa8KElau1tHVzuLWX5GzEuxMPhAO0tQXQMkg==}
530
530
  engines: {node: ^20.19.0 || >=22.12.0}
531
531
  cpu: [arm64]
532
532
  os: [linux]
533
533
  libc: [musl]
534
534
 
535
- '@rolldown/binding-linux-ppc64-gnu@1.2.11':
536
- resolution: {integrity: sha512-qlUGAheh2yh8afH7QBgx0PrRHN85hKnNd78x8MeMhXivuevgd8vgf6/CstOzmNKY/lLTHvNTrPy98cLnAugzJw==}
535
+ '@rolldown/binding-linux-ppc64-gnu@1.2.14':
536
+ resolution: {integrity: sha512-4+Kl8daPV8NDHaD7mfCcc1pRM+Qg7ab8DyMm5FG5WoZgv4h2i3KFN1CybYBNbQqmuYm7ftJLvmMI1eHYJ22S/Q==}
537
537
  engines: {node: ^20.19.0 || >=22.12.0}
538
538
  cpu: [ppc64]
539
539
  os: [linux]
540
540
  libc: [glibc]
541
541
 
542
- '@rolldown/binding-linux-s390x-gnu@1.2.11':
543
- resolution: {integrity: sha512-secpEad+0vCbSfn8upFySkDskv+bGPk3THSDS9Y89yc4rb4kzqHp8Dmyd9BkQW4SnhNXBZCl/6CrO//hZahNJQ==}
542
+ '@rolldown/binding-linux-s390x-gnu@1.2.14':
543
+ resolution: {integrity: sha512-V/h8ePq1fKDrmtFMz6xcCN3DKvuvMRrwwD1q0PkBeeo4DpK64biaKvqWGVxqCeYKqeRk7gE7/iKPxLCn08O97A==}
544
544
  engines: {node: ^20.19.0 || >=22.12.0}
545
545
  cpu: [s390x]
546
546
  os: [linux]
547
547
  libc: [glibc]
548
548
 
549
- '@rolldown/binding-linux-x64-gnu@1.2.11':
550
- resolution: {integrity: sha512-mOVBT3dPpkWm8XBWPmU4bf+U6dYDLeMo/9ojUmis4N0L5uu10qra5vOyngZ7/PSdoE4G9KvRt4bloRxNjLas7A==}
549
+ '@rolldown/binding-linux-x64-gnu@1.2.14':
550
+ resolution: {integrity: sha512-WxalXzgrLVpKC93xfpaJ3gCXUWzeCr+FRCbDVD2mUAy4L6Vo3lNVz0epUEUpxPWJkLNYUwM4OSIikv36OJ9mLg==}
551
551
  engines: {node: ^20.19.0 || >=22.12.0}
552
552
  cpu: [x64]
553
553
  os: [linux]
554
554
  libc: [glibc]
555
555
 
556
- '@rolldown/binding-linux-x64-musl@1.2.11':
557
- resolution: {integrity: sha512-Is78i9A8Ui4SqcxUwFJ9uMmjDn58IbVTjFWYdQestFEgeuEmHMLGNriXnVJKkwG2YiZjw8cP0zCTyDMdDGtOOg==}
556
+ '@rolldown/binding-linux-x64-musl@1.2.14':
557
+ resolution: {integrity: sha512-3G3tnAmTpdk9jO3GQtyHXqeFD2SlecfTws/Y3M2mmj9nMBwwuLT4kur8sZKeu7ENUHSpVO3cIsm5A52LEWWwlg==}
558
558
  engines: {node: ^20.19.0 || >=22.12.0}
559
559
  cpu: [x64]
560
560
  os: [linux]
561
561
  libc: [musl]
562
562
 
563
- '@rolldown/binding-openharmony-arm64@1.2.11':
564
- resolution: {integrity: sha512-dUCXneZ87INUMyQ0D+C0HrEBNUPNXHaPmU5GTjyKTJEiussw9Kaj5Ln8UztPe4epV/ffvgNBEadksdYhmW6xJA==}
563
+ '@rolldown/binding-openharmony-arm64@1.2.14':
564
+ resolution: {integrity: sha512-qyr5XiNGxm2ytx17vvtcJ9nXn6v1gENETi503bJx3OGwZ1tSonj7BosxbMa/xeAfSl5iS9X6KjEWYXLu6v1L7Q==}
565
565
  engines: {node: ^20.19.0 || >=22.12.0}
566
566
  cpu: [arm64]
567
567
  os: [openharmony]
568
568
 
569
- '@rolldown/binding-win32-arm64-msvc@1.2.11':
570
- resolution: {integrity: sha512-jByxb6qfd+bH1xUd0qnfFnb17i9sWBPY2tOavJ0l3tdr3OTu+Kvtm8cd/JV5nFt657b1VqGltxg9olOEfofXWw==}
569
+ '@rolldown/binding-win32-arm64-msvc@1.2.14':
570
+ resolution: {integrity: sha512-oA4o5o0S2yB199YyYXDzKUv1Z56Rc+mgOjwm7Z/vJ9Z8igiDPYvoOuDyo6g7AK/ZaF09nPhDKVnGBcYHO11GXA==}
571
571
  engines: {node: ^20.19.0 || >=22.12.0}
572
572
  cpu: [arm64]
573
573
  os: [win32]
574
574
 
575
- '@rolldown/binding-win32-x64-msvc@1.2.11':
576
- resolution: {integrity: sha512-/PzKqzAJ03i19oy2ItPvyvaVjOjBCNnfaJs8yvUdGBKmiESgnrJSQ2awd81QzFbbnAmu7YO9ZnJrDCb9VSJPRA==}
575
+ '@rolldown/binding-win32-x64-msvc@1.2.14':
576
+ resolution: {integrity: sha512-9mE94bf2GZUaR/fUSXCMpBoWkctu421Mi0ORpm4zqfbkjKep7RxzPFa5etcGs5h+2KApoWBOA/hAJa/7saGgEQ==}
577
577
  engines: {node: ^20.19.0 || >=22.12.0}
578
578
  cpu: [x64]
579
579
  os: [win32]
@@ -734,13 +734,13 @@ packages:
734
734
  react:
735
735
  optional: true
736
736
 
737
- '@vitejs/plugin-react@6.1.1':
738
- resolution: {integrity: sha512-yxLaQV9gkhS8ezJqCM6+ndU7mDY6gqAg75NQ+0IjwEI8IYOmQCgkRwHKVSfWXW076DsqMo0Dk+0FK1U+M5RgFw==}
737
+ '@vitejs/plugin-react@6.1.2':
738
+ resolution: {integrity: sha512-fhJNGUdscQa4HkI0xFxwonWyhnVReCPDbXI7FH7jmzpnVCrFQI7PRrhWecO263610vOrs9tr2Y4xcf8uAdFxbw==}
739
739
  engines: {node: ^20.19.0 || >=22.12.0}
740
740
  peerDependencies:
741
741
  '@rolldown/plugin-babel': ^0.1.7 || ^0.2.0
742
742
  babel-plugin-react-compiler: ^1.0.0
743
- oxc-transform-react: ^0.145.0
743
+ oxc-transform-react: ^0.152.0
744
744
  vite: ^8.0.0
745
745
  peerDependenciesMeta:
746
746
  '@rolldown/plugin-babel':
@@ -1248,8 +1248,8 @@ packages:
1248
1248
  postprocessing: '>=6.30.0'
1249
1249
  three: '>=0.137'
1250
1250
 
1251
- nanoid@3.3.19:
1252
- resolution: {integrity: sha512-Y2tUNy4ouw6tq5oDSKeQYGOyhkUBhNOcGV/02KC+6kd9eDGqdZd++mjMiIDilrBYvjEnCYvVtsuHCuP+okSfug==}
1251
+ nanoid@3.3.20:
1252
+ resolution: {integrity: sha512-uKdg2G3GNCKQn9byYOpxbGqrT2fGO5KRt5J/8b3pok8rT6qxGWF6hxMyJiEYtAf+FVyYuD9hRaDqX5uPFYJ4ZQ==}
1253
1253
  engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
1254
1254
  hasBin: true
1255
1255
 
@@ -1285,8 +1285,8 @@ packages:
1285
1285
  resolution: {integrity: sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==}
1286
1286
  engines: {node: '>=12'}
1287
1287
 
1288
- postcss@8.5.28:
1289
- resolution: {integrity: sha512-RRuzqDtt5Y9h3quz5hWhK+TPnsmVs6WwSU6LkJMeY4HstUEDuYTG8UJSdawMRzmzAtV+KEoG8N3Qg2qLy5vM/A==}
1288
+ postcss@8.5.30:
1289
+ resolution: {integrity: sha512-zkd+e9S1AQHhmaBKye9zlFHWjOwVgqXl1q3ECYy8561K7qxR2cREf/STLskulBFd78k6AOFeA+ff1TtEzk9bAA==}
1290
1290
  engines: {node: ^10 || ^12 || >=14}
1291
1291
 
1292
1292
  postprocessing@6.39.5:
@@ -1382,8 +1382,8 @@ packages:
1382
1382
  robust-predicates@3.0.3:
1383
1383
  resolution: {integrity: sha512-NS3levdsRIUOmiJ8FZWCP7LG3QpJyrs/TE0Zpf1yvZu8cAJJ6QMW92H1c7kWpdIHo8RvmLxN/o2JXTKHp74lUA==}
1384
1384
 
1385
- rolldown@1.2.11:
1386
- resolution: {integrity: sha512-qpSwIyz0jHQq5qXBTNxFmE6664rJ7O+4TvPFOiOaBSrz8IOHc1koKKSqTM2H6u1UG1+TveuC6vaDHKXFOvb1Kw==}
1385
+ rolldown@1.2.14:
1386
+ resolution: {integrity: sha512-eTBTTqMR6uHKLgcUqpJP8ntzDI6V4LYA8negAMBEI7gkgVvOdrx6VsvS2Ym+83KhOPdLCHWJu0w7UQFJZhHKNw==}
1387
1387
  engines: {node: ^20.19.0 || >=22.12.0}
1388
1388
  hasBin: true
1389
1389
 
@@ -1411,6 +1411,10 @@ packages:
1411
1411
  resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
1412
1412
  engines: {node: '>=0.10.0'}
1413
1413
 
1414
+ source-map-js@1.2.2:
1415
+ resolution: {integrity: sha512-KGj/8Y43x35aZVDtt+J4mK1hoLGHULMYfSkODJNQjNDC3oW1PqPoxMwo0pLUsWM/UEGzON/NxeHywEfNXNP3Vw==}
1416
+ engines: {node: '>=0.10.0'}
1417
+
1414
1418
  source-map@0.6.1:
1415
1419
  resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
1416
1420
  engines: {node: '>=0.10.0'}
@@ -1500,8 +1504,8 @@ packages:
1500
1504
  resolution: {integrity: sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==}
1501
1505
  engines: {node: '>= 4'}
1502
1506
 
1503
- vite@8.3.1:
1504
- resolution: {integrity: sha512-/bvH9E9tmCXRGp2uXY3WbOldqpTwFkbha/8ANaEQ6VkxhH60KyqLwgZq6lG2y+4uT55x9+9eUHMpQ7uGnOCKjA==}
1507
+ vite@8.3.4:
1508
+ resolution: {integrity: sha512-IftLE8phJhdNRIGNEV4JCCvfNScoZQVfcXaN8TQropWGJtOHcu+iAB9pHcuGvmEb/kddw0LBe/jS8ztdC6xdiQ==}
1505
1509
  engines: {node: ^20.19.0 || >=22.12.0}
1506
1510
  hasBin: true
1507
1511
  peerDependencies:
@@ -1688,7 +1692,7 @@ snapshots:
1688
1692
  promise-worker-transferable: 1.0.4
1689
1693
  three: 0.186.1
1690
1694
 
1691
- '@oxc-project/types@0.151.0': {}
1695
+ '@oxc-project/types@0.154.0': {}
1692
1696
 
1693
1697
  '@radix-ui/react-icons@1.3.2(react@19.2.8)':
1694
1698
  dependencies:
@@ -1730,24 +1734,24 @@ snapshots:
1730
1734
  '@react-spring/types': 9.7.5
1731
1735
  react: 19.2.8
1732
1736
 
1733
- '@react-spring/three@9.7.5(@react-three/fiber@9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(react@19.2.8)(three@0.186.1)':
1737
+ '@react-spring/three@9.7.5(@react-three/fiber@9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(react@19.2.8)(three@0.186.1)':
1734
1738
  dependencies:
1735
1739
  '@react-spring/animated': 9.7.5(react@19.2.8)
1736
1740
  '@react-spring/core': 9.7.5(react@19.2.8)
1737
1741
  '@react-spring/shared': 9.7.5(react@19.2.8)
1738
1742
  '@react-spring/types': 9.7.5
1739
- '@react-three/fiber': 9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
1743
+ '@react-three/fiber': 9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
1740
1744
  react: 19.2.8
1741
1745
  three: 0.186.1
1742
1746
 
1743
1747
  '@react-spring/types@9.7.5': {}
1744
1748
 
1745
- '@react-three/drei@10.7.9(@react-three/fiber@9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/react@19.3.0)(@types/three@0.186.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)':
1749
+ '@react-three/drei@10.7.9(@react-three/fiber@9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/react@19.3.0)(@types/three@0.186.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)':
1746
1750
  dependencies:
1747
1751
  '@babel/runtime': 7.29.7
1748
1752
  '@mediapipe/tasks-vision': 0.10.17
1749
1753
  '@monogrid/gainmap-js': 3.4.0(three@0.186.1)
1750
- '@react-three/fiber': 9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
1754
+ '@react-three/fiber': 9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
1751
1755
  '@use-gesture/react': 10.3.1(react@19.2.8)
1752
1756
  camera-controls: 3.1.2(three@0.186.1)
1753
1757
  cross-env: 7.0.3
@@ -1775,13 +1779,13 @@ snapshots:
1775
1779
  - '@types/three'
1776
1780
  - immer
1777
1781
 
1778
- '@react-three/drei@9.122.0(@react-three/fiber@9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/react@19.3.0)(@types/three@0.186.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)(use-sync-external-store@1.7.0(react@19.2.8))':
1782
+ '@react-three/drei@9.122.0(@react-three/fiber@9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/react@19.3.0)(@types/three@0.186.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)(use-sync-external-store@1.7.0(react@19.2.8))':
1779
1783
  dependencies:
1780
1784
  '@babel/runtime': 7.29.7
1781
1785
  '@mediapipe/tasks-vision': 0.10.17
1782
1786
  '@monogrid/gainmap-js': 3.4.0(three@0.186.1)
1783
- '@react-spring/three': 9.7.5(@react-three/fiber@9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(react@19.2.8)(three@0.186.1)
1784
- '@react-three/fiber': 9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
1787
+ '@react-spring/three': 9.7.5(@react-three/fiber@9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(react@19.2.8)(three@0.186.1)
1788
+ '@react-three/fiber': 9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
1785
1789
  '@use-gesture/react': 10.3.1(react@19.2.8)
1786
1790
  camera-controls: 2.10.1(three@0.186.1)
1787
1791
  cross-env: 7.0.3
@@ -1810,7 +1814,7 @@ snapshots:
1810
1814
  - immer
1811
1815
  - use-sync-external-store
1812
1816
 
1813
- '@react-three/fiber@9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)':
1817
+ '@react-three/fiber@9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)':
1814
1818
  dependencies:
1815
1819
  '@babel/runtime': 7.29.7
1816
1820
  '@types/webxr': 0.5.24
@@ -1830,9 +1834,9 @@ snapshots:
1830
1834
  - '@types/react'
1831
1835
  - immer
1832
1836
 
1833
- '@react-three/postprocessing@3.1.3(@react-three/fiber@9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/three@0.186.0)(postprocessing@6.39.5(three@0.186.1))(react@19.2.8)(three@0.186.1)':
1837
+ '@react-three/postprocessing@3.2.0(@react-three/fiber@9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/three@0.186.0)(postprocessing@6.39.5(three@0.186.1))(react@19.2.8)(three@0.186.1)':
1834
1838
  dependencies:
1835
- '@react-three/fiber': 9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
1839
+ '@react-three/fiber': 9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
1836
1840
  maath: 0.10.8(@types/three@0.186.0)(three@0.186.1)
1837
1841
  n8ao: 2.0.1(postprocessing@6.39.5(three@0.186.1))(three@0.186.1)
1838
1842
  postprocessing: 6.39.5(three@0.186.1)
@@ -1841,10 +1845,10 @@ snapshots:
1841
1845
  transitivePeerDependencies:
1842
1846
  - '@types/three'
1843
1847
 
1844
- '@react-three/rapier@2.2.0(@react-three/fiber@9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(react@19.2.8)(three@0.186.1)':
1848
+ '@react-three/rapier@2.2.0(@react-three/fiber@9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(react@19.2.8)(three@0.186.1)':
1845
1849
  dependencies:
1846
1850
  '@dimforge/rapier3d-compat': 0.19.2
1847
- '@react-three/fiber': 9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
1851
+ '@react-three/fiber': 9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
1848
1852
  react: 19.2.8
1849
1853
  suspend-react: 0.1.3(react@19.2.8)
1850
1854
  three: 0.186.1
@@ -1874,49 +1878,49 @@ snapshots:
1874
1878
 
1875
1879
  '@remix-run/route-pattern@0.22.1': {}
1876
1880
 
1877
- '@rolldown/binding-android-arm-eabi@1.2.11':
1881
+ '@rolldown/binding-android-arm-eabi@1.2.14':
1878
1882
  optional: true
1879
1883
 
1880
- '@rolldown/binding-android-arm64@1.2.11':
1884
+ '@rolldown/binding-android-arm64@1.2.14':
1881
1885
  optional: true
1882
1886
 
1883
- '@rolldown/binding-darwin-arm64@1.2.11':
1887
+ '@rolldown/binding-darwin-arm64@1.2.14':
1884
1888
  optional: true
1885
1889
 
1886
- '@rolldown/binding-darwin-x64@1.2.11':
1890
+ '@rolldown/binding-darwin-x64@1.2.14':
1887
1891
  optional: true
1888
1892
 
1889
- '@rolldown/binding-freebsd-x64@1.2.11':
1893
+ '@rolldown/binding-freebsd-x64@1.2.14':
1890
1894
  optional: true
1891
1895
 
1892
- '@rolldown/binding-linux-arm-gnueabihf@1.2.11':
1896
+ '@rolldown/binding-linux-arm-gnueabihf@1.2.14':
1893
1897
  optional: true
1894
1898
 
1895
- '@rolldown/binding-linux-arm64-gnu@1.2.11':
1899
+ '@rolldown/binding-linux-arm64-gnu@1.2.14':
1896
1900
  optional: true
1897
1901
 
1898
- '@rolldown/binding-linux-arm64-musl@1.2.11':
1902
+ '@rolldown/binding-linux-arm64-musl@1.2.14':
1899
1903
  optional: true
1900
1904
 
1901
- '@rolldown/binding-linux-ppc64-gnu@1.2.11':
1905
+ '@rolldown/binding-linux-ppc64-gnu@1.2.14':
1902
1906
  optional: true
1903
1907
 
1904
- '@rolldown/binding-linux-s390x-gnu@1.2.11':
1908
+ '@rolldown/binding-linux-s390x-gnu@1.2.14':
1905
1909
  optional: true
1906
1910
 
1907
- '@rolldown/binding-linux-x64-gnu@1.2.11':
1911
+ '@rolldown/binding-linux-x64-gnu@1.2.14':
1908
1912
  optional: true
1909
1913
 
1910
- '@rolldown/binding-linux-x64-musl@1.2.11':
1914
+ '@rolldown/binding-linux-x64-musl@1.2.14':
1911
1915
  optional: true
1912
1916
 
1913
- '@rolldown/binding-openharmony-arm64@1.2.11':
1917
+ '@rolldown/binding-openharmony-arm64@1.2.14':
1914
1918
  optional: true
1915
1919
 
1916
- '@rolldown/binding-win32-arm64-msvc@1.2.11':
1920
+ '@rolldown/binding-win32-arm64-msvc@1.2.14':
1917
1921
  optional: true
1918
1922
 
1919
- '@rolldown/binding-win32-x64-msvc@1.2.11':
1923
+ '@rolldown/binding-win32-x64-msvc@1.2.14':
1920
1924
  optional: true
1921
1925
 
1922
1926
  '@rolldown/pluginutils@1.0.1': {}
@@ -1990,12 +1994,12 @@ snapshots:
1990
1994
  '@tailwindcss/oxide-win32-arm64-msvc': 4.3.3
1991
1995
  '@tailwindcss/oxide-win32-x64-msvc': 4.3.3
1992
1996
 
1993
- '@tailwindcss/vite@4.3.3(vite@8.3.1(jiti@2.7.0))':
1997
+ '@tailwindcss/vite@4.3.3(vite@8.3.4(jiti@2.7.0))':
1994
1998
  dependencies:
1995
1999
  '@tailwindcss/node': 4.3.3
1996
2000
  '@tailwindcss/oxide': 4.3.3
1997
2001
  tailwindcss: 4.3.3
1998
- vite: 8.3.1(jiti@2.7.0)
2002
+ vite: 8.3.4(jiti@2.7.0)
1999
2003
 
2000
2004
  '@tanstack/react-virtual@3.14.13(react-dom@19.2.8(react@19.2.8))(react@19.2.8)':
2001
2005
  dependencies:
@@ -2045,10 +2049,10 @@ snapshots:
2045
2049
  optionalDependencies:
2046
2050
  react: 19.2.8
2047
2051
 
2048
- '@vitejs/plugin-react@6.1.1(vite@8.3.1(jiti@2.7.0))':
2052
+ '@vitejs/plugin-react@6.1.2(vite@8.3.4(jiti@2.7.0))':
2049
2053
  dependencies:
2050
2054
  '@rolldown/pluginutils': 1.0.1
2051
- vite: 8.3.1(jiti@2.7.0)
2055
+ vite: 8.3.4(jiti@2.7.0)
2052
2056
 
2053
2057
  acorn-walk@8.3.5:
2054
2058
  dependencies:
@@ -2477,7 +2481,7 @@ snapshots:
2477
2481
  postprocessing: 6.39.5(three@0.186.1)
2478
2482
  three: 0.186.1
2479
2483
 
2480
- nanoid@3.3.19: {}
2484
+ nanoid@3.3.20: {}
2481
2485
 
2482
2486
  navcat@0.4.1(three@0.186.1):
2483
2487
  dependencies:
@@ -2513,11 +2517,11 @@ snapshots:
2513
2517
 
2514
2518
  picomatch@4.0.7: {}
2515
2519
 
2516
- postcss@8.5.28:
2520
+ postcss@8.5.30:
2517
2521
  dependencies:
2518
- nanoid: 3.3.19
2522
+ nanoid: 3.3.20
2519
2523
  picocolors: 1.1.1
2520
- source-map-js: 1.2.1
2524
+ source-map-js: 1.2.2
2521
2525
 
2522
2526
  postprocessing@6.39.5(three@0.186.1):
2523
2527
  dependencies:
@@ -2536,17 +2540,17 @@ snapshots:
2536
2540
  object-assign: 4.1.1
2537
2541
  react-is: 16.13.1
2538
2542
 
2539
- r3f-perf@7.2.3(@react-three/fiber@9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/react@19.3.0)(@types/three@0.186.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)(use-sync-external-store@1.7.0(react@19.2.8)):
2543
+ r3f-perf@7.2.3(@react-three/fiber@9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/react@19.3.0)(@types/three@0.186.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)(use-sync-external-store@1.7.0(react@19.2.8)):
2540
2544
  dependencies:
2541
2545
  '@radix-ui/react-icons': 1.3.2(react@19.2.8)
2542
- '@react-three/drei': 9.122.0(@react-three/fiber@9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/react@19.3.0)(@types/three@0.186.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)(use-sync-external-store@1.7.0(react@19.2.8))
2546
+ '@react-three/drei': 9.122.0(@react-three/fiber@9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1))(@types/react@19.3.0)(@types/three@0.186.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)(use-sync-external-store@1.7.0(react@19.2.8))
2543
2547
  '@stitches/react': 1.2.8(react@19.2.8)
2544
2548
  '@utsubo/events': 0.1.7(react@19.2.8)
2545
2549
  react: 19.2.8
2546
2550
  three: 0.186.1
2547
2551
  zustand: 4.5.7(@types/react@19.3.0)(react@19.2.8)
2548
2552
  optionalDependencies:
2549
- '@react-three/fiber': 9.8.1(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
2553
+ '@react-three/fiber': 9.8.2(@types/react@19.3.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(three@0.186.1)
2550
2554
  react-dom: 19.2.8(react@19.2.8)
2551
2555
  transitivePeerDependencies:
2552
2556
  - '@types/react'
@@ -2620,26 +2624,26 @@ snapshots:
2620
2624
 
2621
2625
  robust-predicates@3.0.3: {}
2622
2626
 
2623
- rolldown@1.2.11:
2627
+ rolldown@1.2.14:
2624
2628
  dependencies:
2625
- '@oxc-project/types': 0.151.0
2629
+ '@oxc-project/types': 0.154.0
2626
2630
  '@rolldown/pluginutils': 1.0.1
2627
2631
  optionalDependencies:
2628
- '@rolldown/binding-android-arm-eabi': 1.2.11
2629
- '@rolldown/binding-android-arm64': 1.2.11
2630
- '@rolldown/binding-darwin-arm64': 1.2.11
2631
- '@rolldown/binding-darwin-x64': 1.2.11
2632
- '@rolldown/binding-freebsd-x64': 1.2.11
2633
- '@rolldown/binding-linux-arm-gnueabihf': 1.2.11
2634
- '@rolldown/binding-linux-arm64-gnu': 1.2.11
2635
- '@rolldown/binding-linux-arm64-musl': 1.2.11
2636
- '@rolldown/binding-linux-ppc64-gnu': 1.2.11
2637
- '@rolldown/binding-linux-s390x-gnu': 1.2.11
2638
- '@rolldown/binding-linux-x64-gnu': 1.2.11
2639
- '@rolldown/binding-linux-x64-musl': 1.2.11
2640
- '@rolldown/binding-openharmony-arm64': 1.2.11
2641
- '@rolldown/binding-win32-arm64-msvc': 1.2.11
2642
- '@rolldown/binding-win32-x64-msvc': 1.2.11
2632
+ '@rolldown/binding-android-arm-eabi': 1.2.14
2633
+ '@rolldown/binding-android-arm64': 1.2.14
2634
+ '@rolldown/binding-darwin-arm64': 1.2.14
2635
+ '@rolldown/binding-darwin-x64': 1.2.14
2636
+ '@rolldown/binding-freebsd-x64': 1.2.14
2637
+ '@rolldown/binding-linux-arm-gnueabihf': 1.2.14
2638
+ '@rolldown/binding-linux-arm64-gnu': 1.2.14
2639
+ '@rolldown/binding-linux-arm64-musl': 1.2.14
2640
+ '@rolldown/binding-linux-ppc64-gnu': 1.2.14
2641
+ '@rolldown/binding-linux-s390x-gnu': 1.2.14
2642
+ '@rolldown/binding-linux-x64-gnu': 1.2.14
2643
+ '@rolldown/binding-linux-x64-musl': 1.2.14
2644
+ '@rolldown/binding-openharmony-arm64': 1.2.14
2645
+ '@rolldown/binding-win32-arm64-msvc': 1.2.14
2646
+ '@rolldown/binding-win32-x64-msvc': 1.2.14
2643
2647
 
2644
2648
  rw@1.3.3: {}
2645
2649
 
@@ -2657,6 +2661,8 @@ snapshots:
2657
2661
 
2658
2662
  source-map-js@1.2.1: {}
2659
2663
 
2664
+ source-map-js@1.2.2: {}
2665
+
2660
2666
  source-map@0.6.1:
2661
2667
  optional: true
2662
2668
 
@@ -2740,12 +2746,12 @@ snapshots:
2740
2746
 
2741
2747
  utility-types@3.11.0: {}
2742
2748
 
2743
- vite@8.3.1(jiti@2.7.0):
2749
+ vite@8.3.4(jiti@2.7.0):
2744
2750
  dependencies:
2745
2751
  lightningcss: 1.33.0
2746
2752
  picomatch: 4.0.7
2747
- postcss: 8.5.28
2748
- rolldown: 1.2.11
2753
+ postcss: 8.5.30
2754
+ rolldown: 1.2.14
2749
2755
  tinyglobby: 0.2.17
2750
2756
  optionalDependencies:
2751
2757
  fsevents: 2.3.3