From ce7773d711f8ec1428db2383a2d7c9996e8aa394 Mon Sep 17 00:00:00 2001
From: Alen Zubic <alen.zubic@relaymonkey.com>
Date: Fri, 13 Sep 2024 14:24:57 +0000
Subject: [PATCH] fix: update dependencies in husky

---
 .husky/commit-msg |   5 +-
 .husky/pre-commit |   3 +-
 package.json      |  19 +-
 pnpm-lock.yaml    | 726 ++++++++++++++++++++++++++++++++--------------
 turbo.json        |   2 +-
 5 files changed, 526 insertions(+), 229 deletions(-)

diff --git a/.husky/commit-msg b/.husky/commit-msg
index e8511eaea..cf3a2e551 100755
--- a/.husky/commit-msg
+++ b/.husky/commit-msg
@@ -1,4 +1,3 @@
-#!/bin/sh
-. "$(dirname "$0")/_/husky.sh"
+#!/usr/bin/env sh
 
-npx --no-install commitlint --edit $1
+pnpm dlx commitlint --edit $1
diff --git a/.husky/pre-commit b/.husky/pre-commit
index aaefaffe8..4bb4369ed 100755
--- a/.husky/pre-commit
+++ b/.husky/pre-commit
@@ -1,4 +1,3 @@
 #!/usr/bin/env sh
-. "$(dirname -- "$0")/_/husky.sh"
 
-pnpm push
+pnpm push
\ No newline at end of file
diff --git a/package.json b/package.json
index ed78a5878..8191ed01a 100644
--- a/package.json
+++ b/package.json
@@ -2,6 +2,7 @@
   "name": "graphpolaris-monorepo",
   "version": "0.0.0",
   "private": true,
+  "packageManager": "pnpm@9.9.0",
   "workspaces": [
     "apps/*",
     "libs/*"
@@ -20,18 +21,18 @@
     "type": "turbo run type",
     "push": "turbo run --parallel lint test type --no-daemon",
     "format": "prettier --write \"**/*.{ts,tsx,md,js}\"",
-    "prepare": "husky install"
+    "prepare": "husky"
   },
   "devDependencies": {
-    "@commitlint/cli": "^19.1.0",
-    "@commitlint/config-angular": "^19.1.0",
-    "@commitlint/config-conventional": "^19.1.0",
-    "@import-meta-env/cli": "^0.6.8",
+    "@commitlint/cli": "^19.4.1",
+    "@commitlint/config-angular": "^19.4.1",
+    "@commitlint/config-conventional": "^19.4.1",
+    "@import-meta-env/cli": "^0.7.0",
     "eslint-config-custom": "workspace:*",
-    "husky": "^9.0.11",
-    "prettier": "^3.2.5",
-    "turbo": "^1.12.5",
-    "vitest": "^1.3.1"
+    "husky": "^9.1.5",
+    "prettier": "^3.3.3",
+    "turbo": "^2.1.1",
+    "vitest": "^2.0.5"
   },
   "engines": {
     "node": ">=14.0.0"
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index ff56160bd..58f63ae1a 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -13,32 +13,32 @@ importers:
         version: 1.4.1
     devDependencies:
       '@commitlint/cli':
-        specifier: ^19.1.0
-        version: 19.1.0(@types/node@20.11.27)(typescript@5.4.2)
+        specifier: ^19.4.1
+        version: 19.4.1(@types/node@20.11.27)(typescript@5.4.2)
       '@commitlint/config-angular':
-        specifier: ^19.1.0
-        version: 19.1.0
+        specifier: ^19.4.1
+        version: 19.4.1
       '@commitlint/config-conventional':
-        specifier: ^19.1.0
-        version: 19.1.0
+        specifier: ^19.4.1
+        version: 19.4.1
       '@import-meta-env/cli':
-        specifier: ^0.6.8
-        version: 0.6.8(@import-meta-env/unplugin@0.5.1)(dotenv@16.4.5)
+        specifier: ^0.7.0
+        version: 0.7.0
       eslint-config-custom:
         specifier: workspace:*
         version: link:libs/workspace/eslint-config-custom
       husky:
-        specifier: ^9.0.11
-        version: 9.0.11
+        specifier: ^9.1.5
+        version: 9.1.5
       prettier:
-        specifier: ^3.2.5
-        version: 3.2.5
+        specifier: ^3.3.3
+        version: 3.3.3
       turbo:
-        specifier: ^1.12.5
-        version: 1.12.5
+        specifier: ^2.1.1
+        version: 2.1.1
       vitest:
-        specifier: ^1.3.1
-        version: 1.3.1(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2)
+        specifier: ^2.0.5
+        version: 2.0.5(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2)
 
   apps/docs:
     dependencies:
@@ -127,7 +127,7 @@ importers:
         version: 0.5.1(@import-meta-env/cli@0.6.8)(dotenv@16.4.5)
       '@tailwindcss/typography':
         specifier: ^0.5.10
-        version: 0.5.10(tailwindcss@3.4.1(ts-node@10.9.2(@types/node@20.11.27)(typescript@5.4.2)))
+        version: 0.5.10(tailwindcss@3.4.1(ts-node@10.9.2(@swc/core@1.4.2(@swc/helpers@0.5.2))(@types/node@20.11.27)(typescript@5.4.2)))
       '@testing-library/react':
         specifier: 14.2.1
         version: 14.2.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0)
@@ -187,7 +187,7 @@ importers:
         version: 3.7.3(@types/node@20.11.27)(rollup@4.13.0)(typescript@5.4.2)(vite@5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2))
       vite-plugin-sass-dts:
         specifier: ^1.3.17
-        version: 1.3.17(postcss@8.4.35)(prettier@3.2.5)(sass@1.72.0)(vite@5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2))
+        version: 1.3.17(postcss@8.4.35)(prettier@3.3.3)(sass@1.72.0)(vite@5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2))
       vitest:
         specifier: ^1.3.1
         version: 1.3.1(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2)
@@ -199,7 +199,7 @@ importers:
         version: 1.1.2
       '@tailwindcss/typography':
         specifier: ^0.5.10
-        version: 0.5.10(tailwindcss@3.4.1(ts-node@10.9.2(@types/node@20.11.27)(typescript@5.4.2)))
+        version: 0.5.10(tailwindcss@3.4.1(ts-node@10.9.2(@swc/core@1.4.2(@swc/helpers@0.5.2))(@types/node@20.11.27)(typescript@5.4.2)))
       daisyui:
         specifier: ^4.7.3
         version: 4.7.3(postcss@8.4.35)
@@ -214,7 +214,7 @@ importers:
     dependencies:
       '@deck.gl-community/editable-layers':
         specifier: 9.0.0-alpha.1
-        version: 9.0.0-alpha.1(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/geo-layers@9.0.20(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@luma.gl/constants@9.0.15)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))(@math.gl/core@4.0.1)
+        version: 9.0.0-alpha.1(b4l4gv425uhlcoxekxkrwx7qmy)
       '@deck.gl/core':
         specifier: ^9.0.12
         version: 9.0.20
@@ -329,9 +329,6 @@ importers:
       pixi.js:
         specifier: ^7.4.2
         version: 7.4.2
-      react-color:
-        specifier: ^2.19.3
-        version: 2.19.3(react@18.2.0)
       react-cookie:
         specifier: ^7.1.0
         version: 7.1.0(react@18.2.0)
@@ -417,9 +414,6 @@ importers:
       '@types/react':
         specifier: ^18.2.65
         version: 18.2.65
-      '@types/react-color':
-        specifier: ^3.0.12
-        version: 3.0.12
       '@types/react-dom':
         specifier: ^18.2.22
         version: 18.2.22
@@ -572,7 +566,7 @@ importers:
     dependencies:
       '@deck.gl-community/editable-layers':
         specifier: 9.0.0-alpha.1
-        version: 9.0.0-alpha.1(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/geo-layers@9.0.20(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@luma.gl/constants@9.0.15)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))(@math.gl/core@4.0.1)
+        version: 9.0.0-alpha.1(b4l4gv425uhlcoxekxkrwx7qmy)
       '@deck.gl/core':
         specifier: ^9.0.12
         version: 9.0.20
@@ -590,7 +584,7 @@ importers:
         version: 8.0.6(react-dom@18.2.0(react@18.2.0))(react@18.2.0)
       '@storybook/test':
         specifier: ^8.0.6
-        version: 8.0.6(vitest@1.3.1(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))
+        version: 8.0.6(vitest@2.0.5(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))
       '@storybook/theming':
         specifier: ^8.0.6
         version: 8.0.6(react-dom@18.2.0(react@18.2.0))(react@18.2.0)
@@ -615,7 +609,7 @@ importers:
         version: 8.0.6(@types/react@18.2.65)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)
       '@storybook/addon-interactions':
         specifier: ^8.0.6
-        version: 8.0.6(vitest@1.3.1(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))
+        version: 8.0.6(vitest@2.0.5(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))
       '@storybook/addon-links':
         specifier: ^8.0.6
         version: 8.0.6(react@18.2.0)
@@ -624,7 +618,7 @@ importers:
         version: 8.0.6(@types/react@18.2.65)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)
       '@storybook/preset-scss':
         specifier: ^1.0.3
-        version: 1.0.3(css-loader@6.10.0(webpack@5.90.3(esbuild@0.19.12)))(sass-loader@14.1.1(sass@1.72.0)(webpack@5.90.3(esbuild@0.19.12)))(style-loader@3.3.4(webpack@5.90.3(esbuild@0.19.12)))
+        version: 1.0.3(css-loader@6.10.0(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)))(sass-loader@14.1.1(sass@1.72.0)(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)))(style-loader@3.3.4(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)))
       '@storybook/react':
         specifier: ^8.0.6
         version: 8.0.6(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.4.2)
@@ -672,7 +666,7 @@ importers:
         version: 1.72.0
       sass-loader:
         specifier: ^14.1.1
-        version: 14.1.1(sass@1.72.0)(webpack@5.90.3(esbuild@0.19.12))
+        version: 14.1.1(sass@1.72.0)(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12))
       storybook:
         specifier: ^8.0.6
         version: 8.0.6(@babel/preset-env@7.24.0(@babel/core@7.24.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)
@@ -687,7 +681,7 @@ importers:
         version: 5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2)
       vite-plugin-sass-dts:
         specifier: ^1.3.17
-        version: 1.3.17(postcss@8.4.35)(prettier@3.2.5)(sass@1.72.0)(vite@5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2))
+        version: 1.3.17(postcss@8.4.35)(prettier@3.3.3)(sass@1.72.0)(vite@5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2))
       vite-tsconfig-paths:
         specifier: ^4.3.2
         version: 4.3.2(typescript@5.4.2)(vite@5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2))
@@ -733,6 +727,10 @@ packages:
     resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==}
     engines: {node: '>=6.0.0'}
 
+  '@ampproject/remapping@2.3.0':
+    resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
+    engines: {node: '>=6.0.0'}
+
   '@antfu/install-pkg@0.1.1':
     resolution: {integrity: sha512-LyB/8+bSfa0DFGC06zpCEfs89/XoWZwws5ygEa5D+Xsm3OfI+aXQ86VgVG7Acyef+rSZ5HE7J8rrxzrQeM3PjQ==}
 
@@ -1390,8 +1388,8 @@ packages:
     resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
     engines: {node: '>=0.1.90'}
 
-  '@commitlint/cli@19.1.0':
-    resolution: {integrity: sha512-SYGm8HGbVzrlSYeB6oo6pG1Ec6bOMJcDsXgNGa4vgZQsPj6nJkcbTWlIRmtmIk0tHi0d5sCljGuQ+g/0NCPv7w==}
+  '@commitlint/cli@19.4.1':
+    resolution: {integrity: sha512-EerFVII3ZcnhXsDT9VePyIdCJoh3jEzygN1L37MjQXgPfGS6fJTWL/KHClVMod1d8w94lFC3l4Vh/y5ysVAz2A==}
     engines: {node: '>=v18'}
     hasBin: true
 
@@ -1399,12 +1397,12 @@ packages:
     resolution: {integrity: sha512-eLjt7vSArP62kpDmmIZNdIBjPzbqY8jss6mVOcSDm4t1KfDw4UmPrtPh/7zcIL3GI5uf/7W8d2s3K0qisf9C+g==}
     engines: {node: '>=v18'}
 
-  '@commitlint/config-angular@19.1.0':
-    resolution: {integrity: sha512-qZyG9FHjPoG+VaHxH1OruWI8cmWWRe00sAS73jXAhACimT74k4Dex5jI2cKFcXSH8Ebh1yGwxfjzSgup5O0ykA==}
+  '@commitlint/config-angular@19.4.1':
+    resolution: {integrity: sha512-428f4bCmt/kxfdB4OPuCE7UViRyCx7HyJwrGgzrwjkewmhg/fgZ7b+WtV3G5yVB7aK3vMQCbwUZVTXzASlh7Kg==}
     engines: {node: '>=v18'}
 
-  '@commitlint/config-conventional@19.1.0':
-    resolution: {integrity: sha512-KIKD2xrp6Uuk+dcZVj3++MlzIr/Su6zLE8crEDQCZNvWHNQSeeGbzOlNtsR32TUy6H3JbP7nWgduAHCaiGQ6EA==}
+  '@commitlint/config-conventional@19.4.1':
+    resolution: {integrity: sha512-D5S5T7ilI5roybWGc8X35OBlRXLAwuTseH1ro0XgqkOWrhZU8yOwBOslrNmSDlTXhXLq8cnfhQyC42qaUCzlXA==}
     engines: {node: '>=v18'}
 
   '@commitlint/config-validator@19.0.3':
@@ -1419,20 +1417,20 @@ packages:
     resolution: {integrity: sha512-mtsdpY1qyWgAO/iOK0L6gSGeR7GFcdW7tIjcNFxcWkfLDF5qVbPHKuGATFqRMsxcO8OUKNj0+3WOHB7EHm4Jdw==}
     engines: {node: '>=v18'}
 
-  '@commitlint/format@19.0.3':
-    resolution: {integrity: sha512-QjjyGyoiVWzx1f5xOteKHNLFyhyweVifMgopozSgx1fGNrGV8+wp7k6n1t6StHdJ6maQJ+UUtO2TcEiBFRyR6Q==}
+  '@commitlint/format@19.3.0':
+    resolution: {integrity: sha512-luguk5/aF68HiF4H23ACAfk8qS8AHxl4LLN5oxPc24H+2+JRPsNr1OS3Gaea0CrH7PKhArBMKBz5RX9sA5NtTg==}
     engines: {node: '>=v18'}
 
-  '@commitlint/is-ignored@19.0.3':
-    resolution: {integrity: sha512-MqDrxJaRSVSzCbPsV6iOKG/Lt52Y+PVwFVexqImmYYFhe51iVJjK2hRhOG2jUAGiUHk4jpdFr0cZPzcBkSzXDQ==}
+  '@commitlint/is-ignored@19.2.2':
+    resolution: {integrity: sha512-eNX54oXMVxncORywF4ZPFtJoBm3Tvp111tg1xf4zWXGfhBPKpfKG6R+G3G4v5CPlRROXpAOpQ3HMhA9n1Tck1g==}
     engines: {node: '>=v18'}
 
-  '@commitlint/lint@19.1.0':
-    resolution: {integrity: sha512-ESjaBmL/9cxm+eePyEr6SFlBUIYlYpI80n+Ltm7IA3MAcrmiP05UMhJdAD66sO8jvo8O4xdGn/1Mt2G5VzfZKw==}
+  '@commitlint/lint@19.4.1':
+    resolution: {integrity: sha512-Ws4YVAZ0jACTv6VThumITC1I5AG0UyXMGua3qcf55JmXIXm/ejfaVKykrqx7RyZOACKVAs8uDRIsEsi87JZ3+Q==}
     engines: {node: '>=v18'}
 
-  '@commitlint/load@19.1.0':
-    resolution: {integrity: sha512-rWqnvNDpeshX8JfUC/qjpDkQB78qF+4uHcJmIRJMwvlj6zWce08SP/TPKN3GlNKgXhAawwcAPxXL9qOTTdiOBA==}
+  '@commitlint/load@19.4.0':
+    resolution: {integrity: sha512-I4lCWaEZYQJ1y+Y+gdvbGAx9pYPavqZAZ3/7/8BpWh+QjscAn8AjsUpLV2PycBsEx7gupq5gM4BViV9xwTIJuw==}
     engines: {node: '>=v18'}
 
   '@commitlint/message@19.0.0':
@@ -1443,16 +1441,16 @@ packages:
     resolution: {integrity: sha512-Il+tNyOb8VDxN3P6XoBBwWJtKKGzHlitEuXA5BP6ir/3loWlsSqDr5aecl6hZcC/spjq4pHqNh0qPlfeWu38QA==}
     engines: {node: '>=v18'}
 
-  '@commitlint/read@19.0.3':
-    resolution: {integrity: sha512-b5AflTyAXkUx5qKw4TkjjcOccXZHql3JqMi522knTQktq2AubKXFz60Sws+K4FsefwPws6fGz9mqiI/NvsvxFA==}
+  '@commitlint/read@19.4.0':
+    resolution: {integrity: sha512-r95jLOEZzKDakXtnQub+zR3xjdnrl2XzerPwm7ch1/cc5JGq04tyaNpa6ty0CRCWdVrk4CZHhqHozb8yZwy2+g==}
     engines: {node: '>=v18'}
 
   '@commitlint/resolve-extends@19.1.0':
     resolution: {integrity: sha512-z2riI+8G3CET5CPgXJPlzftH+RiWYLMYv4C9tSLdLXdr6pBNimSKukYP9MS27ejmscqCTVA4almdLh0ODD2KYg==}
     engines: {node: '>=v18'}
 
-  '@commitlint/rules@19.0.3':
-    resolution: {integrity: sha512-TspKb9VB6svklxNCKKwxhELn7qhtY1rFF8ls58DcFd0F97XoG07xugPjjbVnLqmMkRjZDbDIwBKt9bddOfLaPw==}
+  '@commitlint/rules@19.4.1':
+    resolution: {integrity: sha512-AgctfzAONoVxmxOXRyxXIq7xEPrd7lK/60h2egp9bgGUMZK9v0+YqLOA+TH+KqCa63ZoCr8owP2YxoSSu7IgnQ==}
     engines: {node: '>=v18'}
 
   '@commitlint/to-lines@19.0.0':
@@ -1866,6 +1864,7 @@ packages:
   '@humanwhocodes/config-array@0.11.14':
     resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==}
     engines: {node: '>=10.10.0'}
+    deprecated: Use @eslint/config-array instead
 
   '@humanwhocodes/module-importer@1.0.1':
     resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
@@ -1873,6 +1872,7 @@ packages:
 
   '@humanwhocodes/object-schema@2.0.2':
     resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==}
+    deprecated: Use @eslint/object-schema instead
 
   '@iconify/json@2.2.192':
     resolution: {integrity: sha512-q03tWoVKoMRaTEUDOPWc8geSsKkMe+3D/kK4UZ7F7P3NYwr4h+GN/yT3+5Z68lnD0ajDmTuswfMKOi1DbVnEnw==}
@@ -1886,11 +1886,6 @@ packages:
   '@iconify/utils@2.1.22':
     resolution: {integrity: sha512-6UHVzTVXmvO8uS6xFF+L/QTSpTzA/JZxtgU+KYGFyDYMEObZ1bu/b5l+zNJjHy+0leWjHI+C0pXlzGvv3oXZMA==}
 
-  '@icons/material@0.2.4':
-    resolution: {integrity: sha512-QPcGmICAPbGLGb6F/yNf/KzKqvFx8z5qx3D1yFqVAjoFmXK35EgyW+cJ57Te3CNsmzblwtzakLGFqHPqrfb4Tw==}
-    peerDependencies:
-      react: '*'
-
   '@import-meta-env/cli@0.6.8':
     resolution: {integrity: sha512-Lunsmlj02yVtI5drlhNwIUFAQ0wsIUYIrz0Nm5jbvmYvyEUsxC8Qotnf3gXTfvM9Yuutvuc2+dx4uXpa3DajTg==}
     engines: {node: '>= 14'}
@@ -1908,6 +1903,22 @@ packages:
       '@import-meta-env/unplugin':
         optional: true
 
+  '@import-meta-env/cli@0.7.0':
+    resolution: {integrity: sha512-2ARV8ZSqdB3Oh9MYyh2JlGVV16IjqlXfmyRbp2Fng8geONWh5SGPZwXLFjsqj4z1LN5KYfdDgL6dSz9PV+CxWQ==}
+    engines: {node: '>= 14'}
+    hasBin: true
+    peerDependencies:
+      '@import-meta-env/babel': ^0.5.0
+      '@import-meta-env/swc': ^0.4.5
+      '@import-meta-env/unplugin': ^0.6.0
+    peerDependenciesMeta:
+      '@import-meta-env/babel':
+        optional: true
+      '@import-meta-env/swc':
+        optional: true
+      '@import-meta-env/unplugin':
+        optional: true
+
   '@import-meta-env/unplugin@0.5.1':
     resolution: {integrity: sha512-2pn+eYha02TY+iJ8WAlGr9SnOx0o+OvddO6lzU9hBxkogWlU9Q1dI/9thacnjL9alOA3R2qGZPd79kaiYtw81A==}
     engines: {node: '>= 14'}
@@ -1961,6 +1972,9 @@ packages:
   '@jridgewell/sourcemap-codec@1.4.15':
     resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
 
+  '@jridgewell/sourcemap-codec@1.5.0':
+    resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==}
+
   '@jridgewell/trace-mapping@0.3.23':
     resolution: {integrity: sha512-9/4foRoUKp8s96tSkh8DlAAc5A0Ty8vLXld+l9gjKKY6ckwI8G15f0hskGmuLZu78ZlGa1vtsfOa+lnB4vG6Jg==}
 
@@ -3416,9 +3430,6 @@ packages:
   '@types/range-parser@1.2.7':
     resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==}
 
-  '@types/react-color@3.0.12':
-    resolution: {integrity: sha512-pr3uKE3lSvf7GFo1Rn2K3QktiZQFFrSgSGJ/3iMvSOYWt2pPAJ97rVdVfhWxYJZ8prAEXzoP2XX//3qGSQgu7Q==}
-
   '@types/react-dom@18.2.22':
     resolution: {integrity: sha512-fHkBXPeNtfvri6gdsMYyW+dW7RXFo6Ad09nLFK0VQWR7yGLai/Cyvyj696gbwYvBnhGtevUG9cET0pmUbMtoPQ==}
 
@@ -3431,9 +3442,6 @@ packages:
   '@types/react@18.2.65':
     resolution: {integrity: sha512-98TsY0aW4jqx/3RqsUXwMDZSWR1Z4CUlJNue8ueS2/wcxZOsz4xmW1X8ieaWVRHcmmQM3R8xVA4XWB3dJnWwDQ==}
 
-  '@types/reactcss@1.2.11':
-    resolution: {integrity: sha512-0fFy0ubuPlhksId8r9V8nsLcxBAPQnn15g/ERAElgE9L6rOquMj2CapsxqfyBuHlkp0/ndEUVnkYI7MkTtkGpw==}
-
   '@types/resolve@1.20.6':
     resolution: {integrity: sha512-A4STmOXPhMUtHH+S6ymgE2GiBSMqf4oTvcQZMcHzokuTLVYzXTB8ttjcgxOVaAp2lGwEdzZ0J+cRbbeevQj1UQ==}
 
@@ -3628,18 +3636,36 @@ packages:
   '@vitest/expect@1.3.1':
     resolution: {integrity: sha512-xofQFwIzfdmLLlHa6ag0dPV8YsnKOCP1KdAeVVh34vSjN2dcUiXYCD9htu/9eM7t8Xln4v03U9HLxLpPlsXdZw==}
 
+  '@vitest/expect@2.0.5':
+    resolution: {integrity: sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==}
+
+  '@vitest/pretty-format@2.0.5':
+    resolution: {integrity: sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==}
+
   '@vitest/runner@1.3.1':
     resolution: {integrity: sha512-5FzF9c3jG/z5bgCnjr8j9LNq/9OxV2uEBAITOXfoe3rdZJTdO7jzThth7FXv/6b+kdY65tpRQB7WaKhNZwX+Kg==}
 
+  '@vitest/runner@2.0.5':
+    resolution: {integrity: sha512-TfRfZa6Bkk9ky4tW0z20WKXFEwwvWhRY+84CnSEtq4+3ZvDlJyY32oNTJtM7AW9ihW90tX/1Q78cb6FjoAs+ig==}
+
   '@vitest/snapshot@1.3.1':
     resolution: {integrity: sha512-EF++BZbt6RZmOlE3SuTPu/NfwBF6q4ABS37HHXzs2LUVPBLx2QoY/K0fKpRChSo8eLiuxcbCVfqKgx/dplCDuQ==}
 
+  '@vitest/snapshot@2.0.5':
+    resolution: {integrity: sha512-SgCPUeDFLaM0mIUHfaArq8fD2WbaXG/zVXjRupthYfYGzc8ztbFbu6dUNOblBG7XLMR1kEhS/DNnfCZ2IhdDew==}
+
   '@vitest/spy@1.3.1':
     resolution: {integrity: sha512-xAcW+S099ylC9VLU7eZfdT9myV67Nor9w9zhf0mGCYJSO+zM2839tOeROTdikOi/8Qeusffvxb/MyBSOja1Uig==}
 
+  '@vitest/spy@2.0.5':
+    resolution: {integrity: sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==}
+
   '@vitest/utils@1.3.1':
     resolution: {integrity: sha512-d3Waie/299qqRyHTm2DjADeTaNdNSVsnwHPWrs20JMpjh6eiVq7ggggweO8rc4arhf6rRkWuHKwvxGvejUXZZQ==}
 
+  '@vitest/utils@2.0.5':
+    resolution: {integrity: sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==}
+
   '@volar/language-core@1.11.1':
     resolution: {integrity: sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==}
 
@@ -3909,6 +3935,10 @@ packages:
   assertion-error@1.1.0:
     resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==}
 
+  assertion-error@2.0.1:
+    resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}
+    engines: {node: '>=12'}
+
   ast-types-flow@0.0.8:
     resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==}
 
@@ -4101,6 +4131,10 @@ packages:
     resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==}
     engines: {node: '>=4'}
 
+  chai@5.1.1:
+    resolution: {integrity: sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==}
+    engines: {node: '>=12'}
+
   chalk@2.4.2:
     resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
     engines: {node: '>=4'}
@@ -4123,6 +4157,10 @@ packages:
   check-error@1.0.3:
     resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==}
 
+  check-error@2.1.1:
+    resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==}
+    engines: {node: '>= 16'}
+
   chokidar@3.6.0:
     resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
     engines: {node: '>= 8.10.0'}
@@ -4221,6 +4259,10 @@ packages:
     resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==}
     engines: {node: '>=16'}
 
+  commander@12.1.0:
+    resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==}
+    engines: {node: '>=18'}
+
   commander@2.20.3:
     resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
 
@@ -4336,8 +4378,8 @@ packages:
     resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==}
     engines: {node: '>=10'}
 
-  cosmiconfig@8.3.6:
-    resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==}
+  cosmiconfig@9.0.0:
+    resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==}
     engines: {node: '>=14'}
     peerDependencies:
       typescript: '>=4.9.5'
@@ -4634,6 +4676,15 @@ packages:
       supports-color:
         optional: true
 
+  debug@4.3.7:
+    resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==}
+    engines: {node: '>=6.0'}
+    peerDependencies:
+      supports-color: '*'
+    peerDependenciesMeta:
+      supports-color:
+        optional: true
+
   decimal.js@10.4.3:
     resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==}
 
@@ -4658,6 +4709,10 @@ packages:
     resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==}
     engines: {node: '>=6'}
 
+  deep-eql@5.0.2:
+    resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==}
+    engines: {node: '>=6'}
+
   deep-equal@2.2.3:
     resolution: {integrity: sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==}
     engines: {node: '>= 0.4'}
@@ -4836,6 +4891,10 @@ packages:
     resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
     engines: {node: '>=0.12'}
 
+  env-paths@2.2.1:
+    resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==}
+    engines: {node: '>=6'}
+
   envinfo@7.11.1:
     resolution: {integrity: sha512-8PiZgZNIB4q/Lw4AhOvAfB/ityHAd2bli3lESSWmWSzSsl5dKpy5N1d1Rfkd2teq/g9xN90lc6o98DOjMeYHpg==}
     engines: {node: '>=4'}
@@ -5343,8 +5402,14 @@ packages:
     engines: {node: '>=16 || 14 >=14.17'}
     hasBin: true
 
+  glob@11.0.0:
+    resolution: {integrity: sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==}
+    engines: {node: 20 || >=22}
+    hasBin: true
+
   glob@7.2.3:
     resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
+    deprecated: Glob versions prior to v9 are no longer supported
 
   global-directory@4.0.1:
     resolution: {integrity: sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==}
@@ -5567,8 +5632,8 @@ packages:
     resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==}
     engines: {node: '>=16.17.0'}
 
-  husky@9.0.11:
-    resolution: {integrity: sha512-AB6lFlbwwyIqMdHYhwPe+kjOC3Oc5P3nThEoW/AaO2BX3vJDjWPFxYLxokUZOo6RNX20He3AaT8sESs9NJcmEw==}
+  husky@9.1.5:
+    resolution: {integrity: sha512-rowAVRUBfI0b4+niA4SJMhfQwc107VLkBUgEYYAOQAbqDCnra1nYh83hF/MDmhYs9t9n1E3DuKOrs2LYNC+0Ag==}
     engines: {node: '>=18'}
     hasBin: true
 
@@ -5631,6 +5696,7 @@ packages:
 
   inflight@1.0.6:
     resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
+    deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
 
   inherits@2.0.4:
     resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
@@ -5862,6 +5928,10 @@ packages:
     resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==}
     engines: {node: '>=14'}
 
+  jackspeak@4.0.1:
+    resolution: {integrity: sha512-cub8rahkh0Q/bw1+GxP7aeSe29hHHn2V4m29nnDlvCdlgU+3UGxkZp7Z53jLUdpX3jdTO0nJZUDl3xvbWc2Xog==}
+    engines: {node: 20 || >=22}
+
   jake@10.8.7:
     resolution: {integrity: sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w==}
     engines: {node: '>=10'}
@@ -6137,10 +6207,17 @@ packages:
   loupe@2.3.7:
     resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==}
 
+  loupe@3.1.1:
+    resolution: {integrity: sha512-edNu/8D5MKVfGVFRhFf8aAxiTM6Wumfz5XsaatSxlD3w4R1d/WEKUTydCdPGbl9K7QG/Ca3GnDV2sIKIpXRQcw==}
+
   lru-cache@10.2.0:
     resolution: {integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==}
     engines: {node: 14 || >=16.14}
 
+  lru-cache@11.0.1:
+    resolution: {integrity: sha512-CgeuL5uom6j/ZVrg7G/+1IXqRY8JXX4Hghfy5YE0EhoYQWvndP1kufu58cmZLNIDKnRhZrXfdS9urVWx98AipQ==}
+    engines: {node: 20 || >=22}
+
   lru-cache@5.1.1:
     resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
 
@@ -6166,6 +6243,9 @@ packages:
     resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==}
     engines: {node: '>=12'}
 
+  magic-string@0.30.11:
+    resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==}
+
   magic-string@0.30.7:
     resolution: {integrity: sha512-8vBuFF/I/+OSLRmdf2wwFCJCz+nSn0m6DPvGH1fS/KiQoSaR+sETbov0eIk9KhEKy8CYqIkIAnbohxT/4H0kuA==}
     engines: {node: '>=12'}
@@ -6195,9 +6275,6 @@ packages:
     engines: {node: '>= 18'}
     hasBin: true
 
-  material-colors@1.2.6:
-    resolution: {integrity: sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg==}
-
   md5@2.3.0:
     resolution: {integrity: sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==}
 
@@ -6258,6 +6335,10 @@ packages:
     resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
     engines: {node: '>=4'}
 
+  minimatch@10.0.1:
+    resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==}
+    engines: {node: 20 || >=22}
+
   minimatch@3.1.2:
     resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
 
@@ -6284,6 +6365,10 @@ packages:
     resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==}
     engines: {node: '>=16 || 14 >=14.17'}
 
+  minipass@7.1.2:
+    resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
+    engines: {node: '>=16 || 14 >=14.17'}
+
   minizlib@2.1.2:
     resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==}
     engines: {node: '>= 8'}
@@ -6613,6 +6698,9 @@ packages:
     resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
     engines: {node: '>=6'}
 
+  package-json-from-dist@1.0.0:
+    resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==}
+
   pako@0.2.9:
     resolution: {integrity: sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==}
 
@@ -6671,6 +6759,10 @@ packages:
     resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==}
     engines: {node: '>=16 || 14 >=14.17'}
 
+  path-scurry@2.0.0:
+    resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==}
+    engines: {node: 20 || >=22}
+
   path-to-regexp@0.1.7:
     resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==}
 
@@ -6687,6 +6779,10 @@ packages:
   pathval@1.1.1:
     resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==}
 
+  pathval@2.0.0:
+    resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==}
+    engines: {node: '>= 14.16'}
+
   pbf@3.2.1:
     resolution: {integrity: sha512-ClrV7pNOn7rtmoQVF4TS1vyU0WhYRnP92fzbfF75jAIwpnzdJXf8iTd4CMEqO4yUenH6NDqLiwjqlh6QgZzgLQ==}
     hasBin: true
@@ -6700,6 +6796,9 @@ packages:
   picocolors@1.0.0:
     resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
 
+  picocolors@1.0.1:
+    resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==}
+
   picomatch@2.3.1:
     resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
     engines: {node: '>=8.6'}
@@ -6877,6 +6976,11 @@ packages:
     engines: {node: '>=14'}
     hasBin: true
 
+  prettier@3.3.3:
+    resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==}
+    engines: {node: '>=14'}
+    hasBin: true
+
   pretty-format@27.5.1:
     resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==}
     engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
@@ -6983,11 +7087,6 @@ packages:
   react-base16-styling@0.6.0:
     resolution: {integrity: sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==}
 
-  react-color@2.19.3:
-    resolution: {integrity: sha512-LEeGE/ZzNLIsFWa1TMe8y5VYqr7bibneWmvJwm1pCn/eNmrabWDh659JSPn9BuaMpEfU83WTOJfnCcjDZwNQTA==}
-    peerDependencies:
-      react: '*'
-
   react-colorful@5.6.1:
     resolution: {integrity: sha512-1exovf0uGTGyq5mXQT0zgQ80uvj2PCwvF8zY1RN9/vbJVSjSo3fsB/4L3ObbF7u70NduSiK4xu4Y6q1MHoUGEw==}
     peerDependencies:
@@ -7134,11 +7233,6 @@ packages:
     resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==}
     engines: {node: '>=0.10.0'}
 
-  reactcss@1.2.3:
-    resolution: {integrity: sha512-KiwVUcFu1RErkI97ywr8nvx8dNOpT03rbnma0SSalTYjkrPYaEajR4a/MRt6DZ46K6arDRbWMNHF+xH7G7n/8A==}
-    peerDependencies:
-      react: '*'
-
   reactflow@11.10.4:
     resolution: {integrity: sha512-0CApYhtYicXEDg/x2kvUHiUk26Qur8lAtTtiSlptNKuyEuGti6P1y5cS32YGaUoDMoCqkm/m+jcKkfMOvSCVRA==}
     peerDependencies:
@@ -7284,10 +7378,12 @@ packages:
 
   rimraf@2.6.3:
     resolution: {integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==}
+    deprecated: Rimraf versions prior to v4 are no longer supported
     hasBin: true
 
   rimraf@3.0.2:
     resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
+    deprecated: Rimraf versions prior to v4 are no longer supported
     hasBin: true
 
   robust-predicates@3.0.2:
@@ -7781,17 +7877,29 @@ packages:
   tinybench@2.6.0:
     resolution: {integrity: sha512-N8hW3PG/3aOoZAN5V/NSAEDz0ZixDSSt5b/a05iqtpgfLWMSVuCo7w0k2vVvEjdrIoeGqZzweX2WlyioNIHchA==}
 
-  tinycolor2@1.6.0:
-    resolution: {integrity: sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==}
+  tinybench@2.9.0:
+    resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==}
 
   tinypool@0.8.2:
     resolution: {integrity: sha512-SUszKYe5wgsxnNOVlBYO6IC+8VGWdVGZWAqUxp3UErNBtptZvWbwyUOyzNL59zigz2rCA92QiL3wvG+JDSdJdQ==}
     engines: {node: '>=14.0.0'}
 
+  tinypool@1.0.1:
+    resolution: {integrity: sha512-URZYihUbRPcGv95En+sz6MfghfIc2OJ1sv/RmhWZLouPY0/8Vo80viwPvg3dlaS9fuq7fQMEfgRRK7BBZThBEA==}
+    engines: {node: ^18.0.0 || >=20.0.0}
+
+  tinyrainbow@1.2.0:
+    resolution: {integrity: sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==}
+    engines: {node: '>=14.0.0'}
+
   tinyspy@2.2.1:
     resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==}
     engines: {node: '>=14.0.0'}
 
+  tinyspy@3.0.2:
+    resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==}
+    engines: {node: '>=14.0.0'}
+
   to-fast-properties@2.0.0:
     resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
     engines: {node: '>=4'}
@@ -7877,38 +7985,38 @@ packages:
   tslib@2.6.2:
     resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
 
-  turbo-darwin-64@1.12.5:
-    resolution: {integrity: sha512-0GZ8reftwNQgIQLHkHjHEXTc/Z1NJm+YjsrBP+qhM/7yIZ3TEy9gJhuogDt2U0xIWwFgisTyzbtU7xNaQydtoA==}
+  turbo-darwin-64@2.1.1:
+    resolution: {integrity: sha512-aYNuJpZlCoi0Htd79fl/2DywpewGKijdXeOfg9KzNuPVKzSMYlAXuAlNGh0MKjiOcyqxQGL7Mq9LFhwA0VpDpQ==}
     cpu: [x64]
     os: [darwin]
 
-  turbo-darwin-arm64@1.12.5:
-    resolution: {integrity: sha512-8WpOLNNzvH6kohQOjihD+gaWL+ZFNfjvBwhOF0rjEzvW+YR3Pa7KjhulrjWyeN2yMFqAPubTbZIGOz1EVXLuQA==}
+  turbo-darwin-arm64@2.1.1:
+    resolution: {integrity: sha512-tifJKD8yHY48rHXPMcM8o1jI/Jk2KCaXiNjTKvvy9Zsim61BZksNVLelIbrRoCGwAN6PUBZO2lGU5iL/TQJ5Pw==}
     cpu: [arm64]
     os: [darwin]
 
-  turbo-linux-64@1.12.5:
-    resolution: {integrity: sha512-INit73+bNUpwqGZCxgXCR3I+cQsdkQ3/LkfkgSOibkpg+oGqxJRzeXw3sp990d7SCoE8QOcs3iw+PtiFX/LDAA==}
+  turbo-linux-64@2.1.1:
+    resolution: {integrity: sha512-Js6d/bSQe9DuV9c7ITXYpsU/ADzFHABdz1UIHa7Oqjj9VOEbFeA9WpAn0c+mdJrVD+IXJFbbDZUjN7VYssmtcg==}
     cpu: [x64]
     os: [linux]
 
-  turbo-linux-arm64@1.12.5:
-    resolution: {integrity: sha512-6lkRBvxtI/GQdGtaAec9LvVQUoRw6nXFp0kM+Eu+5PbZqq7yn6cMkgDJLI08zdeui36yXhone8XGI8pHg8bpUQ==}
+  turbo-linux-arm64@2.1.1:
+    resolution: {integrity: sha512-LidzTCq0yvQ+N8w8Qub9FmhQ/mmEIeoqFi7DSupekEV2EjvE9jw/zYc9Pk67X+g7dHVfgOnvVzmrjChdxpFePw==}
     cpu: [arm64]
     os: [linux]
 
-  turbo-windows-64@1.12.5:
-    resolution: {integrity: sha512-gQYbOhZg5Ww0bQ/bC0w/4W6yQRwBumUUnkB+QPo15VznwxZe2a7bo6JM+9Xy9dKLa/kn+p7zTqme4OEp6M3/Yg==}
+  turbo-windows-64@2.1.1:
+    resolution: {integrity: sha512-GKc9ZywKwy4xLDhwXd6H07yzl0TB52HjXMrFLyHGhCVnf/w0oq4sLJv2sjbvuarPjsyx4xnCBJ3m3oyL2XmFtA==}
     cpu: [x64]
     os: [win32]
 
-  turbo-windows-arm64@1.12.5:
-    resolution: {integrity: sha512-auvhZ9FrhnvQ4mgBlY9O68MT4dIfprYGvd2uPICba/mHUZZvVy5SGgbHJ0KbMwaJfnnFoPgLJO6M+3N2gDprKw==}
+  turbo-windows-arm64@2.1.1:
+    resolution: {integrity: sha512-oFKkMj11KKUv3xSK9/fhAEQTxLUp1Ol1EOktwc32+SFtEU0uls7kosAz0b+qe8k3pJGEMFdDPdqoEjyJidbxtQ==}
     cpu: [arm64]
     os: [win32]
 
-  turbo@1.12.5:
-    resolution: {integrity: sha512-FATU5EnhrYG8RvQJYFJnDd18DpccDjyvd53hggw9T9JEg9BhWtIEoeaKtBjYbpXwOVrJQMDdXcIB4f2nD3QPPg==}
+  turbo@2.1.1:
+    resolution: {integrity: sha512-u9gUDkmR9dFS8b5kAYqIETK4OnzsS4l2ragJ0+soSMHh6VEeNHjTfSjk1tKxCqLyziCrPogadxP680J+v6yGHw==}
     hasBin: true
 
   turf-jsts@1.2.3:
@@ -8179,6 +8287,11 @@ packages:
     engines: {node: ^18.0.0 || >=20.0.0}
     hasBin: true
 
+  vite-node@2.0.5:
+    resolution: {integrity: sha512-LdsW4pxj0Ot69FAoXZ1yTnA9bjGohr2yNBU7QKRxpz8ITSkhuDl6h3zS/tvgz4qrNjeRnvrWeXQ8ZF7Um4W00Q==}
+    engines: {node: ^18.0.0 || >=20.0.0}
+    hasBin: true
+
   vite-plugin-dts@3.7.3:
     resolution: {integrity: sha512-26eTlBYdpjRLWCsTJebM8vkCieE+p9gP3raf+ecDnzzK5E3FG6VE1wcy55OkRpfWWVlVvKkYFe6uvRHYWx7Nog==}
     engines: {node: ^14.18.0 || >=16.0.0}
@@ -8259,6 +8372,31 @@ packages:
       jsdom:
         optional: true
 
+  vitest@2.0.5:
+    resolution: {integrity: sha512-8GUxONfauuIdeSl5f9GTgVEpg5BTOlplET4WEDaeY2QBiN8wSm68vxN/tb5z405OwppfoCavnwXafiaYBC/xOA==}
+    engines: {node: ^18.0.0 || >=20.0.0}
+    hasBin: true
+    peerDependencies:
+      '@edge-runtime/vm': '*'
+      '@types/node': ^18.0.0 || >=20.0.0
+      '@vitest/browser': 2.0.5
+      '@vitest/ui': 2.0.5
+      happy-dom: '*'
+      jsdom: '*'
+    peerDependenciesMeta:
+      '@edge-runtime/vm':
+        optional: true
+      '@types/node':
+        optional: true
+      '@vitest/browser':
+        optional: true
+      '@vitest/ui':
+        optional: true
+      happy-dom:
+        optional: true
+      jsdom:
+        optional: true
+
   vue-template-compiler@2.7.16:
     resolution: {integrity: sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==}
 
@@ -8353,6 +8491,11 @@ packages:
     engines: {node: '>=8'}
     hasBin: true
 
+  why-is-node-running@2.3.0:
+    resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==}
+    engines: {node: '>=8'}
+    hasBin: true
+
   wordwrap@1.0.0:
     resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==}
 
@@ -8473,6 +8616,11 @@ snapshots:
       '@jridgewell/gen-mapping': 0.3.4
       '@jridgewell/trace-mapping': 0.3.23
 
+  '@ampproject/remapping@2.3.0':
+    dependencies:
+      '@jridgewell/gen-mapping': 0.3.5
+      '@jridgewell/trace-mapping': 0.3.25
+
   '@antfu/install-pkg@0.1.1':
     dependencies:
       execa: 5.1.1
@@ -9274,12 +9422,12 @@ snapshots:
   '@colors/colors@1.5.0':
     optional: true
 
-  '@commitlint/cli@19.1.0(@types/node@20.11.27)(typescript@5.4.2)':
+  '@commitlint/cli@19.4.1(@types/node@20.11.27)(typescript@5.4.2)':
     dependencies:
-      '@commitlint/format': 19.0.3
-      '@commitlint/lint': 19.1.0
-      '@commitlint/load': 19.1.0(@types/node@20.11.27)(typescript@5.4.2)
-      '@commitlint/read': 19.0.3
+      '@commitlint/format': 19.3.0
+      '@commitlint/lint': 19.4.1
+      '@commitlint/load': 19.4.0(@types/node@20.11.27)(typescript@5.4.2)
+      '@commitlint/read': 19.4.0
       '@commitlint/types': 19.0.3
       execa: 8.0.1
       yargs: 17.7.2
@@ -9289,11 +9437,11 @@ snapshots:
 
   '@commitlint/config-angular-type-enum@19.1.0': {}
 
-  '@commitlint/config-angular@19.1.0':
+  '@commitlint/config-angular@19.4.1':
     dependencies:
       '@commitlint/config-angular-type-enum': 19.1.0
 
-  '@commitlint/config-conventional@19.1.0':
+  '@commitlint/config-conventional@19.4.1':
     dependencies:
       '@commitlint/types': 19.0.3
       conventional-changelog-conventionalcommits: 7.0.2
@@ -9314,32 +9462,32 @@ snapshots:
 
   '@commitlint/execute-rule@19.0.0': {}
 
-  '@commitlint/format@19.0.3':
+  '@commitlint/format@19.3.0':
     dependencies:
       '@commitlint/types': 19.0.3
       chalk: 5.3.0
 
-  '@commitlint/is-ignored@19.0.3':
+  '@commitlint/is-ignored@19.2.2':
     dependencies:
       '@commitlint/types': 19.0.3
       semver: 7.6.0
 
-  '@commitlint/lint@19.1.0':
+  '@commitlint/lint@19.4.1':
     dependencies:
-      '@commitlint/is-ignored': 19.0.3
+      '@commitlint/is-ignored': 19.2.2
       '@commitlint/parse': 19.0.3
-      '@commitlint/rules': 19.0.3
+      '@commitlint/rules': 19.4.1
       '@commitlint/types': 19.0.3
 
-  '@commitlint/load@19.1.0(@types/node@20.11.27)(typescript@5.4.2)':
+  '@commitlint/load@19.4.0(@types/node@20.11.27)(typescript@5.4.2)':
     dependencies:
       '@commitlint/config-validator': 19.0.3
       '@commitlint/execute-rule': 19.0.0
       '@commitlint/resolve-extends': 19.1.0
       '@commitlint/types': 19.0.3
       chalk: 5.3.0
-      cosmiconfig: 8.3.6(typescript@5.4.2)
-      cosmiconfig-typescript-loader: 5.0.0(@types/node@20.11.27)(cosmiconfig@8.3.6(typescript@5.4.2))(typescript@5.4.2)
+      cosmiconfig: 9.0.0(typescript@5.4.2)
+      cosmiconfig-typescript-loader: 5.0.0(@types/node@20.11.27)(cosmiconfig@9.0.0(typescript@5.4.2))(typescript@5.4.2)
       lodash.isplainobject: 4.0.6
       lodash.merge: 4.6.2
       lodash.uniq: 4.5.0
@@ -9355,10 +9503,11 @@ snapshots:
       conventional-changelog-angular: 7.0.0
       conventional-commits-parser: 5.0.0
 
-  '@commitlint/read@19.0.3':
+  '@commitlint/read@19.4.0':
     dependencies:
       '@commitlint/top-level': 19.0.0
       '@commitlint/types': 19.0.3
+      execa: 8.0.1
       git-raw-commits: 4.0.0
       minimist: 1.2.8
 
@@ -9371,7 +9520,7 @@ snapshots:
       lodash.mergewith: 4.6.2
       resolve-from: 5.0.0
 
-  '@commitlint/rules@19.0.3':
+  '@commitlint/rules@19.4.1':
     dependencies:
       '@commitlint/ensure': 19.0.3
       '@commitlint/message': 19.0.0
@@ -9402,11 +9551,11 @@ snapshots:
     dependencies:
       postcss-selector-parser: 6.0.16
 
-  ? '@deck.gl-community/editable-layers@9.0.0-alpha.1(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/geo-layers@9.0.20(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@luma.gl/constants@9.0.15)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))(@math.gl/core@4.0.1)'
-  : dependencies:
+  '@deck.gl-community/editable-layers@9.0.0-alpha.1(b4l4gv425uhlcoxekxkrwx7qmy)':
+    dependencies:
       '@deck.gl/core': 9.0.20
       '@deck.gl/extensions': 9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
-      '@deck.gl/geo-layers': 9.0.20(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.20(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
+      '@deck.gl/geo-layers': 9.0.20(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
       '@deck.gl/layers': 9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
       '@deck.gl/mesh-layers': 9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
       '@luma.gl/constants': 9.0.15
@@ -9469,12 +9618,12 @@ snapshots:
       '@luma.gl/engine': 9.0.15(@luma.gl/core@9.0.15)
       esri-loader: 3.7.0
 
-  ? '@deck.gl/carto@9.0.20(@deck.gl/aggregation-layers@9.0.20(@deck.gl/core@9.0.20)(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.20(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/geo-layers@9.0.20(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)'
-  : dependencies:
+  '@deck.gl/carto@9.0.20(vc5e7nfjmaf6hcpkj35bs3uuym)':
+    dependencies:
       '@deck.gl/aggregation-layers': 9.0.20(@deck.gl/core@9.0.20)(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
       '@deck.gl/core': 9.0.20
       '@deck.gl/extensions': 9.0.20(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
-      '@deck.gl/geo-layers': 9.0.20(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.20(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
+      '@deck.gl/geo-layers': 9.0.20(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
       '@deck.gl/layers': 9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
       '@loaders.gl/core': 4.2.2
       '@loaders.gl/gis': 4.2.2(@loaders.gl/core@4.2.2)
@@ -9536,10 +9685,10 @@ snapshots:
       '@luma.gl/shadertools': 9.0.15(@luma.gl/core@9.0.15)
       '@math.gl/core': 4.0.1
 
-  '@deck.gl/geo-layers@9.0.20(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.20(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))':
+  '@deck.gl/geo-layers@9.0.20(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))':
     dependencies:
       '@deck.gl/core': 9.0.20
-      '@deck.gl/extensions': 9.0.20(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
+      '@deck.gl/extensions': 9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
       '@deck.gl/layers': 9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
       '@deck.gl/mesh-layers': 9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
       '@loaders.gl/3d-tiles': 4.2.2(@loaders.gl/core@4.2.2)
@@ -9895,10 +10044,6 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  '@icons/material@0.2.4(react@18.2.0)':
-    dependencies:
-      react: 18.2.0
-
   '@import-meta-env/cli@0.6.8(@import-meta-env/unplugin@0.5.1)(dotenv@16.4.5)':
     dependencies:
       commander: 11.1.0
@@ -9909,6 +10054,14 @@ snapshots:
     optionalDependencies:
       '@import-meta-env/unplugin': 0.5.1(@import-meta-env/cli@0.6.8)(dotenv@16.4.5)
 
+  '@import-meta-env/cli@0.7.0':
+    dependencies:
+      commander: 12.1.0
+      dotenv: 16.4.5
+      glob: 11.0.0
+      picocolors: 1.0.1
+      serialize-javascript: 6.0.2
+
   '@import-meta-env/unplugin@0.5.1(@import-meta-env/cli@0.6.8)(dotenv@16.4.5)':
     dependencies:
       dotenv: 16.4.5
@@ -9967,6 +10120,8 @@ snapshots:
 
   '@jridgewell/sourcemap-codec@1.4.15': {}
 
+  '@jridgewell/sourcemap-codec@1.5.0': {}
+
   '@jridgewell/trace-mapping@0.3.23':
     dependencies:
       '@jridgewell/resolve-uri': 3.1.2
@@ -10860,11 +11015,11 @@ snapshots:
     dependencies:
       '@storybook/global': 5.0.0
 
-  '@storybook/addon-interactions@8.0.6(vitest@1.3.1(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))':
+  '@storybook/addon-interactions@8.0.6(vitest@2.0.5(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))':
     dependencies:
       '@storybook/global': 5.0.0
       '@storybook/instrumenter': 8.0.6
-      '@storybook/test': 8.0.6(vitest@1.3.1(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))
+      '@storybook/test': 8.0.6(vitest@2.0.5(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))
       '@storybook/types': 8.0.6
       polished: 4.3.1
       ts-dedent: 2.2.0
@@ -11017,7 +11172,7 @@ snapshots:
       jscodeshift: 0.15.2(@babel/preset-env@7.24.0(@babel/core@7.24.0))
       leven: 3.1.0
       ora: 5.4.1
-      prettier: 3.2.5
+      prettier: 3.3.3
       prompts: 2.4.2
       read-pkg-up: 7.0.1
       semver: 7.6.0
@@ -11052,7 +11207,7 @@ snapshots:
       globby: 11.1.0
       jscodeshift: 0.15.2(@babel/preset-env@7.24.0(@babel/core@7.24.0))
       lodash: 4.17.21
-      prettier: 3.2.5
+      prettier: 3.3.3
       recast: 0.23.6
       tiny-invariant: 1.3.3
     transitivePeerDependencies:
@@ -11247,18 +11402,18 @@ snapshots:
 
   '@storybook/node-logger@8.0.6': {}
 
+  '@storybook/preset-scss@1.0.3(css-loader@6.10.0(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)))(sass-loader@14.1.1(sass@1.72.0)(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)))(style-loader@3.3.4(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)))':
+    dependencies:
+      css-loader: 6.10.0(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12))
+      sass-loader: 14.1.1(sass@1.72.0)(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12))
+      style-loader: 3.3.4(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12))
+
   '@storybook/preset-scss@1.0.3(css-loader@6.10.0(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))))(sass-loader@14.1.1(sass@1.72.0)(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))))(style-loader@3.3.4(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))))':
     dependencies:
       css-loader: 6.10.0(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2)))
       sass-loader: 14.1.1(sass@1.72.0)(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2)))
       style-loader: 3.3.4(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2)))
 
-  '@storybook/preset-scss@1.0.3(css-loader@6.10.0(webpack@5.90.3(esbuild@0.19.12)))(sass-loader@14.1.1(sass@1.72.0)(webpack@5.90.3(esbuild@0.19.12)))(style-loader@3.3.4(webpack@5.90.3(esbuild@0.19.12)))':
-    dependencies:
-      css-loader: 6.10.0(webpack@5.90.3(esbuild@0.19.12))
-      sass-loader: 14.1.1(sass@1.72.0)(webpack@5.90.3(esbuild@0.19.12))
-      style-loader: 3.3.4(webpack@5.90.3(esbuild@0.19.12))
-
   '@storybook/preview-api@8.0.6':
     dependencies:
       '@storybook/channels': 8.0.6
@@ -11357,14 +11512,14 @@ snapshots:
       - encoding
       - supports-color
 
-  '@storybook/test@8.0.6(vitest@1.3.1(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))':
+  '@storybook/test@8.0.6(vitest@2.0.5(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))':
     dependencies:
       '@storybook/client-logger': 8.0.6
       '@storybook/core-events': 8.0.6
       '@storybook/instrumenter': 8.0.6
       '@storybook/preview-api': 8.0.6
       '@testing-library/dom': 9.3.4
-      '@testing-library/jest-dom': 6.4.2(vitest@1.3.1(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))
+      '@testing-library/jest-dom': 6.4.2(vitest@2.0.5(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))
       '@testing-library/user-event': 14.5.2(@testing-library/dom@9.3.4)
       '@vitest/expect': 1.3.1
       '@vitest/spy': 1.3.1
@@ -11448,7 +11603,7 @@ snapshots:
 
   '@swc/types@0.1.5': {}
 
-  '@tailwindcss/typography@0.5.10(tailwindcss@3.4.1(ts-node@10.9.2(@types/node@20.11.27)(typescript@5.4.2)))':
+  '@tailwindcss/typography@0.5.10(tailwindcss@3.4.1(ts-node@10.9.2(@swc/core@1.4.2(@swc/helpers@0.5.2))(@types/node@20.11.27)(typescript@5.4.2)))':
     dependencies:
       lodash.castarray: 4.4.0
       lodash.isplainobject: 4.0.6
@@ -11467,7 +11622,7 @@ snapshots:
       lz-string: 1.5.0
       pretty-format: 27.5.1
 
-  '@testing-library/jest-dom@6.4.2(vitest@1.3.1(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))':
+  '@testing-library/jest-dom@6.4.2(vitest@2.0.5(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2))':
     dependencies:
       '@adobe/css-tools': 4.3.3
       '@babel/runtime': 7.24.0
@@ -11478,7 +11633,7 @@ snapshots:
       lodash: 4.17.21
       redent: 3.0.0
     optionalDependencies:
-      vitest: 1.3.1(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2)
+      vitest: 2.0.5(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2)
 
   '@testing-library/react@14.2.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0)':
     dependencies:
@@ -12070,11 +12225,6 @@ snapshots:
 
   '@types/range-parser@1.2.7': {}
 
-  '@types/react-color@3.0.12':
-    dependencies:
-      '@types/react': 18.2.65
-      '@types/reactcss': 1.2.11
-
   '@types/react-dom@18.2.22':
     dependencies:
       '@types/react': 18.2.65
@@ -12093,10 +12243,6 @@ snapshots:
       '@types/scheduler': 0.16.8
       csstype: 3.1.3
 
-  '@types/reactcss@1.2.11':
-    dependencies:
-      '@types/react': 18.2.65
-
   '@types/resolve@1.20.6': {}
 
   '@types/scheduler@0.16.8': {}
@@ -12399,22 +12545,48 @@ snapshots:
       '@vitest/utils': 1.3.1
       chai: 4.4.1
 
+  '@vitest/expect@2.0.5':
+    dependencies:
+      '@vitest/spy': 2.0.5
+      '@vitest/utils': 2.0.5
+      chai: 5.1.1
+      tinyrainbow: 1.2.0
+
+  '@vitest/pretty-format@2.0.5':
+    dependencies:
+      tinyrainbow: 1.2.0
+
   '@vitest/runner@1.3.1':
     dependencies:
       '@vitest/utils': 1.3.1
       p-limit: 5.0.0
       pathe: 1.1.2
 
+  '@vitest/runner@2.0.5':
+    dependencies:
+      '@vitest/utils': 2.0.5
+      pathe: 1.1.2
+
   '@vitest/snapshot@1.3.1':
     dependencies:
       magic-string: 0.30.7
       pathe: 1.1.2
       pretty-format: 29.7.0
 
+  '@vitest/snapshot@2.0.5':
+    dependencies:
+      '@vitest/pretty-format': 2.0.5
+      magic-string: 0.30.11
+      pathe: 1.1.2
+
   '@vitest/spy@1.3.1':
     dependencies:
       tinyspy: 2.2.1
 
+  '@vitest/spy@2.0.5':
+    dependencies:
+      tinyspy: 3.0.2
+
   '@vitest/utils@1.3.1':
     dependencies:
       diff-sequences: 29.6.3
@@ -12422,6 +12594,13 @@ snapshots:
       loupe: 2.3.7
       pretty-format: 29.7.0
 
+  '@vitest/utils@2.0.5':
+    dependencies:
+      '@vitest/pretty-format': 2.0.5
+      estree-walker: 3.0.3
+      loupe: 3.1.1
+      tinyrainbow: 1.2.0
+
   '@volar/language-core@1.11.1':
     dependencies:
       '@volar/source-map': 1.11.1
@@ -12599,7 +12778,7 @@ snapshots:
 
   agent-base@7.1.0:
     dependencies:
-      debug: 4.3.4
+      debug: 4.3.7
     transitivePeerDependencies:
       - supports-color
 
@@ -12764,6 +12943,8 @@ snapshots:
 
   assertion-error@1.1.0: {}
 
+  assertion-error@2.0.1: {}
+
   ast-types-flow@0.0.8: {}
 
   ast-types@0.16.1:
@@ -12982,6 +13163,14 @@ snapshots:
       pathval: 1.1.1
       type-detect: 4.0.8
 
+  chai@5.1.1:
+    dependencies:
+      assertion-error: 2.0.1
+      check-error: 2.1.1
+      deep-eql: 5.0.2
+      loupe: 3.1.1
+      pathval: 2.0.0
+
   chalk@2.4.2:
     dependencies:
       ansi-styles: 3.2.1
@@ -13006,6 +13195,8 @@ snapshots:
     dependencies:
       get-func-name: 2.0.2
 
+  check-error@2.1.1: {}
+
   chokidar@3.6.0:
     dependencies:
       anymatch: 3.1.3
@@ -13098,6 +13289,8 @@ snapshots:
 
   commander@11.1.0: {}
 
+  commander@12.1.0: {}
+
   commander@2.20.3: {}
 
   commander@4.1.1: {}
@@ -13193,10 +13386,10 @@ snapshots:
     dependencies:
       layout-base: 2.0.1
 
-  cosmiconfig-typescript-loader@5.0.0(@types/node@20.11.27)(cosmiconfig@8.3.6(typescript@5.4.2))(typescript@5.4.2):
+  cosmiconfig-typescript-loader@5.0.0(@types/node@20.11.27)(cosmiconfig@9.0.0(typescript@5.4.2))(typescript@5.4.2):
     dependencies:
       '@types/node': 20.11.27
-      cosmiconfig: 8.3.6(typescript@5.4.2)
+      cosmiconfig: 9.0.0(typescript@5.4.2)
       jiti: 1.21.0
       typescript: 5.4.2
 
@@ -13208,12 +13401,12 @@ snapshots:
       path-type: 4.0.0
       yaml: 1.10.2
 
-  cosmiconfig@8.3.6(typescript@5.4.2):
+  cosmiconfig@9.0.0(typescript@5.4.2):
     dependencies:
+      env-paths: 2.2.1
       import-fresh: 3.3.0
       js-yaml: 4.1.0
       parse-json: 5.2.0
-      path-type: 4.0.0
     optionalDependencies:
       typescript: 5.4.2
 
@@ -13241,7 +13434,7 @@ snapshots:
     dependencies:
       utrie: 1.0.2
 
-  css-loader@6.10.0(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))):
+  css-loader@6.10.0(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)):
     dependencies:
       icss-utils: 5.1.0(postcss@8.4.35)
       postcss: 8.4.35
@@ -13252,9 +13445,9 @@ snapshots:
       postcss-value-parser: 4.2.0
       semver: 7.6.0
     optionalDependencies:
-      webpack: 5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))
+      webpack: 5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)
 
-  css-loader@6.10.0(webpack@5.90.3(esbuild@0.19.12)):
+  css-loader@6.10.0(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))):
     dependencies:
       icss-utils: 5.1.0(postcss@8.4.35)
       postcss: 8.4.35
@@ -13265,7 +13458,7 @@ snapshots:
       postcss-value-parser: 4.2.0
       semver: 7.6.0
     optionalDependencies:
-      webpack: 5.90.3(esbuild@0.19.12)
+      webpack: 5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))
 
   css-selector-tokenizer@0.8.0:
     dependencies:
@@ -13531,16 +13724,20 @@ snapshots:
     dependencies:
       ms: 2.1.2
 
+  debug@4.3.7:
+    dependencies:
+      ms: 2.1.3
+
   decimal.js@10.4.3: {}
 
   deck.gl@9.0.20(@arcgis/core@4.30.2)(react-dom@18.2.0(react@18.2.0))(react@18.2.0):
     dependencies:
       '@deck.gl/aggregation-layers': 9.0.20(@deck.gl/core@9.0.20)(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
       '@deck.gl/arcgis': 9.0.20(@arcgis/core@4.30.2)(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
-      '@deck.gl/carto': 9.0.20(@deck.gl/aggregation-layers@9.0.20(@deck.gl/core@9.0.20)(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.20(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/geo-layers@9.0.20(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)
+      '@deck.gl/carto': 9.0.20(vc5e7nfjmaf6hcpkj35bs3uuym)
       '@deck.gl/core': 9.0.20
       '@deck.gl/extensions': 9.0.20(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
-      '@deck.gl/geo-layers': 9.0.20(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.20(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
+      '@deck.gl/geo-layers': 9.0.20(@deck.gl/core@9.0.20)(@deck.gl/extensions@9.0.24(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@deck.gl/mesh-layers@9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15)))(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
       '@deck.gl/google-maps': 9.0.20(@deck.gl/core@9.0.20)(@luma.gl/core@9.0.15)
       '@deck.gl/json': 9.0.20(@deck.gl/core@9.0.20)
       '@deck.gl/layers': 9.0.20(@deck.gl/core@9.0.20)(@loaders.gl/core@4.2.2)(@luma.gl/core@9.0.15)(@luma.gl/engine@9.0.15(@luma.gl/core@9.0.15))
@@ -13562,6 +13759,8 @@ snapshots:
     dependencies:
       type-detect: 4.0.8
 
+  deep-eql@5.0.2: {}
+
   deep-equal@2.2.3:
     dependencies:
       array-buffer-byte-length: 1.0.1
@@ -13736,6 +13935,8 @@ snapshots:
 
   entities@4.5.0: {}
 
+  env-paths@2.2.1: {}
+
   envinfo@7.11.1: {}
 
   error-ex@1.3.2:
@@ -13946,7 +14147,7 @@ snapshots:
       '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.2)
       eslint: 8.57.0
       eslint-import-resolver-node: 0.3.9
-      eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
+      eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(eslint@8.57.0))(eslint@8.57.0)
       eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
       eslint-plugin-jsx-a11y: 6.8.0(eslint@8.57.0)
       eslint-plugin-react: 7.34.0(eslint@8.57.0)
@@ -13974,12 +14175,12 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0):
+  eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(eslint@8.57.0))(eslint@8.57.0):
     dependencies:
       debug: 4.3.4
       enhanced-resolve: 5.16.0
       eslint: 8.57.0
-      eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0)
+      eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
       eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
       fast-glob: 3.3.2
       get-tsconfig: 4.7.3
@@ -13991,14 +14192,14 @@ snapshots:
       - eslint-import-resolver-webpack
       - supports-color
 
-  eslint-module-utils@2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0):
+  eslint-module-utils@2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0):
     dependencies:
       debug: 3.2.7
     optionalDependencies:
       '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.2)
       eslint: 8.57.0
       eslint-import-resolver-node: 0.3.9
-      eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
+      eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(eslint@8.57.0))(eslint@8.57.0)
     transitivePeerDependencies:
       - supports-color
 
@@ -14022,7 +14223,7 @@ snapshots:
       doctrine: 2.1.0
       eslint: 8.57.0
       eslint-import-resolver-node: 0.3.9
-      eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0)
+      eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
       hasown: 2.0.1
       is-core-module: 2.13.1
       is-glob: 4.0.3
@@ -14566,6 +14767,15 @@ snapshots:
       minipass: 7.0.4
       path-scurry: 1.10.1
 
+  glob@11.0.0:
+    dependencies:
+      foreground-child: 3.1.1
+      jackspeak: 4.0.1
+      minimatch: 10.0.1
+      minipass: 7.1.2
+      package-json-from-dist: 1.0.0
+      path-scurry: 2.0.0
+
   glob@7.2.3:
     dependencies:
       fs.realpath: 1.0.0
@@ -14795,14 +15005,14 @@ snapshots:
   http-proxy-agent@7.0.2:
     dependencies:
       agent-base: 7.1.0
-      debug: 4.3.4
+      debug: 4.3.7
     transitivePeerDependencies:
       - supports-color
 
   https-proxy-agent@7.0.4:
     dependencies:
       agent-base: 7.1.0
-      debug: 4.3.4
+      debug: 4.3.7
     transitivePeerDependencies:
       - supports-color
 
@@ -14810,7 +15020,7 @@ snapshots:
 
   human-signals@5.0.0: {}
 
-  husky@9.0.11: {}
+  husky@9.1.5: {}
 
   iconv-lite@0.4.24:
     dependencies:
@@ -15048,6 +15258,12 @@ snapshots:
     optionalDependencies:
       '@pkgjs/parseargs': 0.11.0
 
+  jackspeak@4.0.1:
+    dependencies:
+      '@isaacs/cliui': 8.0.2
+    optionalDependencies:
+      '@pkgjs/parseargs': 0.11.0
+
   jake@10.8.7:
     dependencies:
       async: 3.2.5
@@ -15338,8 +15554,14 @@ snapshots:
     dependencies:
       get-func-name: 2.0.2
 
+  loupe@3.1.1:
+    dependencies:
+      get-func-name: 2.0.2
+
   lru-cache@10.2.0: {}
 
+  lru-cache@11.0.1: {}
+
   lru-cache@5.1.1:
     dependencies:
       yallist: 3.1.1
@@ -15361,6 +15583,10 @@ snapshots:
     dependencies:
       '@jridgewell/sourcemap-codec': 1.4.15
 
+  magic-string@0.30.11:
+    dependencies:
+      '@jridgewell/sourcemap-codec': 1.5.0
+
   magic-string@0.30.7:
     dependencies:
       '@jridgewell/sourcemap-codec': 1.4.15
@@ -15384,8 +15610,6 @@ snapshots:
 
   marked@12.0.2: {}
 
-  material-colors@1.2.6: {}
-
   md5@2.3.0:
     dependencies:
       charenc: 0.0.2
@@ -15429,6 +15653,10 @@ snapshots:
 
   min-indent@1.0.1: {}
 
+  minimatch@10.0.1:
+    dependencies:
+      brace-expansion: 2.0.1
+
   minimatch@3.1.2:
     dependencies:
       brace-expansion: 1.1.11
@@ -15451,6 +15679,8 @@ snapshots:
 
   minipass@7.0.4: {}
 
+  minipass@7.1.2: {}
+
   minizlib@2.1.2:
     dependencies:
       minipass: 3.3.6
@@ -15720,6 +15950,8 @@ snapshots:
 
   p-try@2.2.0: {}
 
+  package-json-from-dist@1.0.0: {}
+
   pako@0.2.9: {}
 
   pako@1.0.11: {}
@@ -15766,6 +15998,11 @@ snapshots:
       lru-cache: 10.2.0
       minipass: 7.0.4
 
+  path-scurry@2.0.0:
+    dependencies:
+      lru-cache: 11.0.1
+      minipass: 7.1.2
+
   path-to-regexp@0.1.7: {}
 
   path-type@4.0.0: {}
@@ -15778,6 +16015,8 @@ snapshots:
 
   pathval@1.1.1: {}
 
+  pathval@2.0.0: {}
+
   pbf@3.2.1:
     dependencies:
       ieee754: 1.2.1
@@ -15794,6 +16033,8 @@ snapshots:
 
   picocolors@1.0.0: {}
 
+  picocolors@1.0.1: {}
+
   picomatch@2.3.1: {}
 
   pify@2.3.0: {}
@@ -15981,6 +16222,8 @@ snapshots:
 
   prettier@3.2.5: {}
 
+  prettier@3.3.3: {}
+
   pretty-format@27.5.1:
     dependencies:
       ansi-regex: 5.0.1
@@ -16096,17 +16339,6 @@ snapshots:
       lodash.flow: 3.5.0
       pure-color: 1.3.0
 
-  react-color@2.19.3(react@18.2.0):
-    dependencies:
-      '@icons/material': 0.2.4(react@18.2.0)
-      lodash: 4.17.21
-      lodash-es: 4.17.21
-      material-colors: 1.2.6
-      prop-types: 15.8.1
-      react: 18.2.0
-      reactcss: 1.2.3(react@18.2.0)
-      tinycolor2: 1.6.0
-
   react-colorful@5.6.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0):
     dependencies:
       react: 18.2.0
@@ -16290,11 +16522,6 @@ snapshots:
     dependencies:
       loose-envify: 1.4.0
 
-  reactcss@1.2.3(react@18.2.0):
-    dependencies:
-      lodash: 4.17.21
-      react: 18.2.0
-
   reactflow@11.10.4(@types/react@18.2.65)(immer@10.0.4)(react-dom@18.2.0(react@18.2.0))(react@18.2.0):
     dependencies:
       '@reactflow/background': 11.3.9(@types/react@18.2.65)(immer@10.0.4)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)
@@ -16548,19 +16775,19 @@ snapshots:
 
   safer-buffer@2.1.2: {}
 
-  sass-loader@14.1.1(sass@1.72.0)(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))):
+  sass-loader@14.1.1(sass@1.72.0)(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)):
     dependencies:
       neo-async: 2.6.2
     optionalDependencies:
       sass: 1.72.0
-      webpack: 5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))
+      webpack: 5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)
 
-  sass-loader@14.1.1(sass@1.72.0)(webpack@5.90.3(esbuild@0.19.12)):
+  sass-loader@14.1.1(sass@1.72.0)(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))):
     dependencies:
       neo-async: 2.6.2
     optionalDependencies:
       sass: 1.72.0
-      webpack: 5.90.3(esbuild@0.19.12)
+      webpack: 5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))
 
   sass@1.72.0:
     dependencies:
@@ -16855,13 +17082,13 @@ snapshots:
 
   strnum@1.0.5: {}
 
-  style-loader@3.3.4(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))):
+  style-loader@3.3.4(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)):
     dependencies:
-      webpack: 5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))
+      webpack: 5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)
 
-  style-loader@3.3.4(webpack@5.90.3(esbuild@0.19.12)):
+  style-loader@3.3.4(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))):
     dependencies:
-      webpack: 5.90.3(esbuild@0.19.12)
+      webpack: 5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))
 
   styled-components@6.1.8(react-dom@18.2.0(react@18.2.0))(react@18.2.0):
     dependencies:
@@ -16994,27 +17221,28 @@ snapshots:
       type-fest: 0.16.0
       unique-string: 2.0.0
 
-  terser-webpack-plugin@5.3.10(@swc/core@1.4.2(@swc/helpers@0.5.2))(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))):
+  terser-webpack-plugin@5.3.10(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)):
     dependencies:
       '@jridgewell/trace-mapping': 0.3.25
       jest-worker: 27.5.1
       schema-utils: 3.3.0
       serialize-javascript: 6.0.2
       terser: 5.29.2
-      webpack: 5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))
+      webpack: 5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)
     optionalDependencies:
       '@swc/core': 1.4.2(@swc/helpers@0.5.2)
+      esbuild: 0.19.12
 
-  terser-webpack-plugin@5.3.10(esbuild@0.19.12)(webpack@5.90.3(esbuild@0.19.12)):
+  terser-webpack-plugin@5.3.10(@swc/core@1.4.2(@swc/helpers@0.5.2))(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))):
     dependencies:
       '@jridgewell/trace-mapping': 0.3.25
       jest-worker: 27.5.1
       schema-utils: 3.3.0
       serialize-javascript: 6.0.2
       terser: 5.29.2
-      webpack: 5.90.3(esbuild@0.19.12)
+      webpack: 5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))
     optionalDependencies:
-      esbuild: 0.19.12
+      '@swc/core': 1.4.2(@swc/helpers@0.5.2)
 
   terser@5.29.2:
     dependencies:
@@ -17059,12 +17287,18 @@ snapshots:
 
   tinybench@2.6.0: {}
 
-  tinycolor2@1.6.0: {}
+  tinybench@2.9.0: {}
 
   tinypool@0.8.2: {}
 
+  tinypool@1.0.1: {}
+
+  tinyrainbow@1.2.0: {}
+
   tinyspy@2.2.1: {}
 
+  tinyspy@3.0.2: {}
+
   to-fast-properties@2.0.0: {}
 
   to-regex-range@5.0.1:
@@ -17149,32 +17383,32 @@ snapshots:
 
   tslib@2.6.2: {}
 
-  turbo-darwin-64@1.12.5:
+  turbo-darwin-64@2.1.1:
     optional: true
 
-  turbo-darwin-arm64@1.12.5:
+  turbo-darwin-arm64@2.1.1:
     optional: true
 
-  turbo-linux-64@1.12.5:
+  turbo-linux-64@2.1.1:
     optional: true
 
-  turbo-linux-arm64@1.12.5:
+  turbo-linux-arm64@2.1.1:
     optional: true
 
-  turbo-windows-64@1.12.5:
+  turbo-windows-64@2.1.1:
     optional: true
 
-  turbo-windows-arm64@1.12.5:
+  turbo-windows-arm64@2.1.1:
     optional: true
 
-  turbo@1.12.5:
+  turbo@2.1.1:
     optionalDependencies:
-      turbo-darwin-64: 1.12.5
-      turbo-darwin-arm64: 1.12.5
-      turbo-linux-64: 1.12.5
-      turbo-linux-arm64: 1.12.5
-      turbo-windows-64: 1.12.5
-      turbo-windows-arm64: 1.12.5
+      turbo-darwin-64: 2.1.1
+      turbo-darwin-arm64: 2.1.1
+      turbo-linux-64: 2.1.1
+      turbo-linux-arm64: 2.1.1
+      turbo-windows-64: 2.1.1
+      turbo-windows-arm64: 2.1.1
 
   turf-jsts@1.2.3: {}
 
@@ -17428,6 +17662,23 @@ snapshots:
       - supports-color
       - terser
 
+  vite-node@2.0.5(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2):
+    dependencies:
+      cac: 6.7.14
+      debug: 4.3.7
+      pathe: 1.1.2
+      tinyrainbow: 1.2.0
+      vite: 5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2)
+    transitivePeerDependencies:
+      - '@types/node'
+      - less
+      - lightningcss
+      - sass
+      - stylus
+      - sugarss
+      - supports-color
+      - terser
+
   vite-plugin-dts@3.7.3(@types/node@20.11.27)(rollup@4.13.0)(typescript@5.4.2)(vite@5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2)):
     dependencies:
       '@microsoft/api-extractor': 7.39.0(@types/node@20.11.27)
@@ -17452,6 +17703,14 @@ snapshots:
       sass: 1.72.0
       vite: 5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2)
 
+  vite-plugin-sass-dts@1.3.17(postcss@8.4.35)(prettier@3.3.3)(sass@1.72.0)(vite@5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2)):
+    dependencies:
+      postcss: 8.4.35
+      postcss-js: 4.0.1(postcss@8.4.35)
+      prettier: 3.3.3
+      sass: 1.72.0
+      vite: 5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2)
+
   vite-tsconfig-paths@4.3.2(typescript@5.4.2)(vite@5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2)):
     dependencies:
       debug: 4.3.4
@@ -17509,6 +17768,40 @@ snapshots:
       - supports-color
       - terser
 
+  vitest@2.0.5(@types/node@20.11.27)(happy-dom@13.8.4)(jsdom@24.0.0)(sass@1.72.0)(terser@5.29.2):
+    dependencies:
+      '@ampproject/remapping': 2.3.0
+      '@vitest/expect': 2.0.5
+      '@vitest/pretty-format': 2.0.5
+      '@vitest/runner': 2.0.5
+      '@vitest/snapshot': 2.0.5
+      '@vitest/spy': 2.0.5
+      '@vitest/utils': 2.0.5
+      chai: 5.1.1
+      debug: 4.3.7
+      execa: 8.0.1
+      magic-string: 0.30.11
+      pathe: 1.1.2
+      std-env: 3.7.0
+      tinybench: 2.9.0
+      tinypool: 1.0.1
+      tinyrainbow: 1.2.0
+      vite: 5.1.6(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2)
+      vite-node: 2.0.5(@types/node@20.11.27)(sass@1.72.0)(terser@5.29.2)
+      why-is-node-running: 2.3.0
+    optionalDependencies:
+      '@types/node': 20.11.27
+      happy-dom: 13.8.4
+      jsdom: 24.0.0
+    transitivePeerDependencies:
+      - less
+      - lightningcss
+      - sass
+      - stylus
+      - sugarss
+      - supports-color
+      - terser
+
   vue-template-compiler@2.7.16:
     dependencies:
       de-indent: 1.0.2
@@ -17575,7 +17868,7 @@ snapshots:
       - esbuild
       - uglify-js
 
-  webpack@5.90.3(esbuild@0.19.12):
+  webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12):
     dependencies:
       '@types/eslint-scope': 3.7.7
       '@types/estree': 1.0.5
@@ -17598,7 +17891,7 @@ snapshots:
       neo-async: 2.6.2
       schema-utils: 3.3.0
       tapable: 2.2.1
-      terser-webpack-plugin: 5.3.10(esbuild@0.19.12)(webpack@5.90.3(esbuild@0.19.12))
+      terser-webpack-plugin: 5.3.10(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12)(webpack@5.90.3(@swc/core@1.4.2(@swc/helpers@0.5.2))(esbuild@0.19.12))
       watchpack: 2.4.1
       webpack-sources: 3.2.3
     transitivePeerDependencies:
@@ -17679,6 +17972,11 @@ snapshots:
       siginfo: 2.0.0
       stackback: 0.0.2
 
+  why-is-node-running@2.3.0:
+    dependencies:
+      siginfo: 2.0.0
+      stackback: 0.0.2
+
   wordwrap@1.0.0: {}
 
   wrap-ansi@7.0.0:
diff --git a/turbo.json b/turbo.json
index 05cfc6f1e..1fe47618f 100644
--- a/turbo.json
+++ b/turbo.json
@@ -1,7 +1,7 @@
 {
   "$schema": "https://turbo.build/schema.json",
   "globalDependencies": ["**/.env*", "tsconfig.json", ".eslintrc.js", ".eslintignore", ".prettierrc.yaml"],
-  "pipeline": {
+  "tasks": {
     "build-env": {
       "dependsOn": ["^build-env"],
       "outputs": ["dist/**"]
-- 
GitLab