diff --git a/frontend/app/(sidebar)/maps/page.tsx b/frontend/app/(sidebar)/maps/page.tsx index bb676f5..1968213 100644 --- a/frontend/app/(sidebar)/maps/page.tsx +++ b/frontend/app/(sidebar)/maps/page.tsx @@ -1,38 +1,32 @@ "use client"; -import { useState, useRef } from "react"; -import { Button } from "@/components/ui/button"; -import { Card, CardContent } from "@/components/ui/card"; -import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"; +import { AnalyticsPanel } from "@/components/map/analytics-panel"; +import MapWithSearch from "@/components/map/map-with-search"; +import { TopNavigation } from "@/components/navigation/top-navigation"; import { Badge } from "@/components/ui/badge"; +import { Button } from "@/components/ui/button"; import { Slider } from "@/components/ui/slider"; import { Switch } from "@/components/ui/switch"; +import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"; import { - MapPin, - Home, BarChart2, - Filter, - MessageCircle, - X, - Plus, - Minus, - Droplets, - Wind, - Sun, - LineChart, - Send, - Newspaper, - Building, - BedDouble, Bath, + BedDouble, + Building, + Droplets, + Filter, + Home, + MapPin, + MessageCircle, + Send, Star, - Clock, - RefreshCw, + Sun, + Wind, + X, } from "lucide-react"; import Link from "next/link"; -import { TopNavigation } from "@/components/navigation/top-navigation"; -import MapWithSearch from "@/components/map/map-with-search"; -import { AnalyticsPanel } from "@/components/map/analytics-panel"; +import { useRef, useState } from "react"; +import Draggable from "react-draggable"; export default function MapsPage() { const [showFilters, setShowFilters] = useState(false); @@ -46,6 +40,7 @@ export default function MapsPage() { const [messages, setMessages] = useState([ { role: "assistant", content: "Hi! How can I help you today?" }, ]); + const nodeRef = useRef(null); const handleSendMessage = () => { if (message.trim()) { @@ -75,7 +70,7 @@ export default function MapsPage() {
- {/* */} +
{/* Sample Property Markers */} @@ -291,7 +286,14 @@ export default function MapsPage() { )} {/* Analytics Panel */} - {showAnalytics && } + + {showAnalytics && ( + }> +
+ +
+
+ )} {/* Filters Panel */} {showFilters && ( diff --git a/frontend/app/globals.css b/frontend/app/globals.css index 7842096..0584543 100644 --- a/frontend/app/globals.css +++ b/frontend/app/globals.css @@ -1,6 +1,7 @@ @import "tailwindcss"; @plugin 'tailwindcss-animate'; +@plugin 'tailwind-scrollbar-hide'; @custom-variant dark (&:is(.dark *)); diff --git a/frontend/components/map/analytics-panel.tsx b/frontend/components/map/analytics-panel.tsx index 1153886..b51134e 100644 --- a/frontend/components/map/analytics-panel.tsx +++ b/frontend/components/map/analytics-panel.tsx @@ -1,34 +1,26 @@ +import { useModelState } from "@/store/model-store"; import { BarChart2, - RefreshCw, - X, - LineChart, - Droplets, - Wind, - Newspaper, Clock, - MessageCircle, + Droplets, + LineChart, Link, - ChevronsUpDown, + MessageCircle, + Newspaper, + RefreshCw, + Wind, + X, } from "lucide-react"; +import { useShallow } from "zustand/react/shallow"; import { Badge } from "../ui/badge"; import { Button } from "../ui/button"; import { Card, CardContent } from "../ui/card"; -import { useModelState } from "@/store/model-store"; -import { useShallow } from "zustand/react/shallow"; -import { - Collapsible, - CollapsibleContent, - CollapsibleTrigger, -} from "@/components/ui/collapsible"; -import { useState } from "react"; export function AnalyticsPanel({ setShowAnalytics, }: { setShowAnalytics: (show: boolean) => void; }) { - const [isOpen, setIsOpen] = useState(true); const { selectedModel, setSelectedModel } = useModelState( useShallow((state) => ({ selectedModel: state.selectedModel, @@ -37,184 +29,167 @@ export function AnalyticsPanel({ })) ); return ( - -
-

- @peduarte starred 3 repositories -

- - - -
- -
-
-
- - Analytics -
-
- - -
+
+
+
+
+ + Analytics
-
-
-

- Information in radius will be analyzed -

- - Using: {selectedModel} - -
- - - -
- - Area Price History -
-

10,000,000 Baht

-

- Overall Price History of this area -

- -
- {/* Simple line chart simulation */} -
-
-
-
-
-
-
-
-
-
-
-
- - - -
- - Price Prediction -
-

15,000,000 Baht

-

- The estimated price based on various factors. -

- -
- {/* Simple line chart simulation */} -
-
-
-
-
-
-
-
-
-
-
-
- -
- - -
- - Flood Factor - Moderate -
-
-
- - - -
- - Air Factor - Bad -
-
-
-
- - {/* Local News Section */} -
-

- - Local News -

-
- - -
- New BTS Extension Planned -
-

- The BTS Skytrain will be extended to cover more areas in - Sukhumvit by 2025. -

-
- - 2 days ago -
-
-
- - -
- Property Tax Changes -
-

- New property tax regulations will take effect next month - affecting luxury condominiums. -

-
- - 1 week ago -
-
-
-
-
- -
- - - - -
+
+ +
- - +
+ +
+
+

+ Information in radius will be analyzed +

+
+
+ + Using: {selectedModel} + +
+ + +
+ + Area Price History +
+

10,000,000 Baht

+

+ Overall Price History of this area +

+ +
+ {/* Simple line chart simulation */} +
+
+
+
+
+
+
+
+
+
+
+
+ + + +
+ + Price Prediction +
+

15,000,000 Baht

+

+ The estimated price based on various factors. +

+ +
+ {/* Simple line chart simulation */} +
+
+
+
+
+
+
+
+
+
+
+
+ +
+ + +
+ + Flood Factor + Moderate +
+
+
+ + + +
+ + Air Factor + Bad +
+
+
+
+ + {/* Local News Section */} +
+

+ + Local News +

+
+ + +
+ New BTS Extension Planned +
+

+ The BTS Skytrain will be extended to cover more areas in + Sukhumvit by 2025. +

+
+ + 2 days ago +
+
+
+ + +
Property Tax Changes
+

+ New property tax regulations will take effect next month + affecting luxury condominiums. +

+
+ + 1 week ago +
+
+
+
+
+ +
+ + + + +
+
+
); } diff --git a/frontend/package.json b/frontend/package.json index aa5d25f..c4e7964 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -54,12 +54,13 @@ "react": "19.0.0", "react-day-picker": "8.10.1", "react-dom": "19.0.0", + "react-draggable": "^4.4.6", "react-hook-form": "^7.54.1", "react-resizable-panels": "^2.1.7", "recharts": "^2.15.2", "sonner": "^1.7.1", "tailwind-merge": "^3.2.0", - "tailwindcss": "^4.1.3", + "tailwind-scrollbar-hide": "^2.0.0", "tailwindcss-animate": "^1.0.7", "vaul": "^0.9.6", "zod": "^3.24.1", @@ -101,7 +102,7 @@ "@types/react-dom": "19.0.4", "eslint": "^9", "eslint-config-next": "15.2.1", - "tailwindcss": "^4", + "tailwindcss": "^4.1.3", "typescript": "^5" }, "pnpm": { diff --git a/frontend/pnpm-lock.yaml b/frontend/pnpm-lock.yaml index de9f337..8725bdc 100644 --- a/frontend/pnpm-lock.yaml +++ b/frontend/pnpm-lock.yaml @@ -1,5 +1,9 @@ lockfileVersion: '6.0' +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + overrides: '@types/react': 19.0.10 '@types/react-dom': 19.0.4 @@ -140,6 +144,9 @@ dependencies: react-dom: specifier: 19.0.0 version: 19.0.0(react@19.0.0) + react-draggable: + specifier: ^4.4.6 + version: 4.4.6(react-dom@19.0.0)(react@19.0.0) react-hook-form: specifier: ^7.54.1 version: 7.54.1(react@19.0.0) @@ -155,9 +162,9 @@ dependencies: tailwind-merge: specifier: ^3.2.0 version: 3.2.0 - tailwindcss: - specifier: ^4.1.3 - version: 4.1.3 + tailwind-scrollbar-hide: + specifier: ^2.0.0 + version: 2.0.0(tailwindcss@4.1.3) tailwindcss-animate: specifier: ^1.0.7 version: 1.0.7(tailwindcss@4.1.3) @@ -187,6 +194,9 @@ devDependencies: eslint-config-next: specifier: 15.2.1 version: 15.2.1(eslint@9.0.0)(typescript@5.0.2) + tailwindcss: + specifier: ^4.1.3 + version: 4.1.3 typescript: specifier: ^5 version: 5.0.2 @@ -654,8 +664,8 @@ packages: /@radix-ui/react-accordion@1.2.3(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-RIQ15mrcvqIkDARJeERSuXSry2N8uYnxkdDetpfmalT/+0ntOXLkFOsh9iwlAsCv+qcmhZjbdJogIm6WBa6c4A==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -682,8 +692,8 @@ packages: /@radix-ui/react-alert-dialog@1.1.6(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-p4XnPqgej8sZAAReCAKgz1REYZEBLR8hU9Pg27wFnCWIMc8g1ccCs0FjBcy05V15VTu8pAePw/VDYeOm/uZ6yQ==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -707,8 +717,8 @@ packages: /@radix-ui/react-arrow@1.1.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-G+KcpzXHq24iH0uGG/pF8LyzpFJYGD4RfLjCIBfGdSLXvjLHST31RUiRVrupIBMvIppMgSzQ6l66iAxl03tdlg==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -727,8 +737,8 @@ packages: /@radix-ui/react-aspect-ratio@1.1.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-TaJxYoCpxJ7vfEkv2PTNox/6zzmpKXT6ewvCuf2tTOIVN45/Jahhlld29Yw4pciOXS2Xq91/rSGEdmEnUWZCqA==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -747,8 +757,8 @@ packages: /@radix-ui/react-avatar@1.1.3(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-Paen00T4P8L8gd9bNsRMw7Cbaz85oxiv+hzomsRZgFm2byltPFDtfcoqlWJ8GyZlIBWgLssJlzLCnKU0G0302g==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -770,8 +780,8 @@ packages: /@radix-ui/react-checkbox@1.1.4(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-wP0CPAHq+P5I4INKe3hJrIa1WoNqqrejzW+zoU0rOvo1b9gDEJJFl2rYfO1PYJUQCc2H1WZxIJmyv9BS8i5fLw==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -797,8 +807,8 @@ packages: /@radix-ui/react-collapsible@1.1.3(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-jFSerheto1X03MUC0g6R7LedNW9EEGWdg9W1+MlpkMLwGkgkbUXLPBH/KIuWKXUoeYRVY11llqbTBDzuLg7qrw==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -824,8 +834,8 @@ packages: /@radix-ui/react-collection@1.1.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-9z54IEKRxIa9VityapoEYMuByaG42iSy1ZXlY2KcuLSEtq8x4987/N6m15ppoMffgZX72gER2uHe1D9Y6Unlcw==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -847,7 +857,7 @@ packages: /@radix-ui/react-compose-refs@1.1.1(@types/react@19.0.10)(react@19.0.0): resolution: {integrity: sha512-Y9VzoRDSJtgFMUCoiZBDVo084VQ5hfpXxVE+NgkdNsjiDBByiImMZKKhxMwCbdHvhlENG6a833CbFkOQvTricw==} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -860,8 +870,8 @@ packages: /@radix-ui/react-context-menu@2.2.6(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-aUP99QZ3VU84NPsHeaFt4cQUNgJqFsLLOt/RbbWXszZ6MP0DpDyjkFZORr4RpAEx3sUBk+Kc8h13yGtC5Qw8dg==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -885,7 +895,7 @@ packages: /@radix-ui/react-context@1.1.1(@types/react@19.0.10)(react@19.0.0): resolution: {integrity: sha512-UASk9zi+crv9WteK/NU4PLvOoL3OuE6BWVKNF6hPRBtYBDXQ2u5iu3O59zUlJiTVvkyuycnqrztsHVJwcK9K+Q==} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -898,8 +908,8 @@ packages: /@radix-ui/react-dialog@1.1.6(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-/IVhJV5AceX620DUJ4uYVMymzsipdKBzo3edo+omeskCKGm9FRHM0ebIdbPnlQVJqyuHbuBltQUOG2mOTq2IYw==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -931,7 +941,7 @@ packages: /@radix-ui/react-direction@1.1.0(@types/react@19.0.10)(react@19.0.0): resolution: {integrity: sha512-BUuBvgThEiAXh2DWu93XsT+a3aWrGqolGlqqw5VU1kG7p/ZH2cuDlM1sRLNnY3QcBS69UIz2mcKhMxDsdewhjg==} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -944,8 +954,8 @@ packages: /@radix-ui/react-dismissable-layer@1.1.5(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-E4TywXY6UsXNRhFrECa5HAvE5/4BFcGyfTyK36gP+pAW1ed7UTK4vKwdr53gAJYwqbfCWC6ATvJa3J3R/9+Qrg==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -968,8 +978,8 @@ packages: /@radix-ui/react-dropdown-menu@2.1.6(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-no3X7V5fD487wab/ZYSHXq3H37u4NVeLDKI/Ks724X/eEFSSEFYZxWgsIlr1UBeEyDaM29HM5x9p1Nv8DuTYPA==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -994,7 +1004,7 @@ packages: /@radix-ui/react-focus-guards@1.1.1(@types/react@19.0.10)(react@19.0.0): resolution: {integrity: sha512-pSIwfrT1a6sIoDASCSpFwOasEwKTZWDw/iBdtnqKO7v6FeOzYJ7U53cPzYFVR3geGGXgVHaH+CdngrrAzqUGxg==} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -1007,8 +1017,8 @@ packages: /@radix-ui/react-focus-scope@1.1.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-zxwE80FCU7lcXUGWkdt6XpTTCKPitG1XKOwViTxHVKIJhZl9MvIl2dVHeZENCWD9+EdWv05wlaEkRXUykU27RA==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1029,8 +1039,8 @@ packages: /@radix-ui/react-hover-card@1.1.6(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-E4ozl35jq0VRlrdc4dhHrNSV0JqBb4Jy73WAhBEK7JoYnQ83ED5r0Rb/XdVKw89ReAJN38N492BAPBZQ57VmqQ==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1057,7 +1067,7 @@ packages: /@radix-ui/react-id@1.1.0(@types/react@19.0.10)(react@19.0.0): resolution: {integrity: sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -1071,8 +1081,8 @@ packages: /@radix-ui/react-label@2.1.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-zo1uGMTaNlHehDyFQcDZXRJhUPDuukcnHz0/jnrup0JA6qL+AFpAnty+7VKa9esuU5xTblAZzTGYJKSKaBxBhw==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1091,8 +1101,8 @@ packages: /@radix-ui/react-menu@2.1.6(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-tBBb5CXDJW3t2mo9WlO7r6GTmWV0F0uzHZVFmlRmYpiSK1CDU5IKojP1pm7oknpBOrFZx/YgBRW9oorPO2S/Lg==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1128,8 +1138,8 @@ packages: /@radix-ui/react-menubar@1.1.6(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-FHq7+3DlXwh/7FOM4i0G4bC4vPjiq89VEEvNF4VMLchGnaUuUbE5uKXMUCjdKaOghEEMeiKa5XCa2Pk4kteWmg==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1157,8 +1167,8 @@ packages: /@radix-ui/react-navigation-menu@1.2.5(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-myMHHQUZ3ZLTi8W381/Vu43Ia0NqakkQZ2vzynMmTUtQQ9kNkjzhOwkZC9TAM5R07OZUVIQyHC06f/9JZJpvvA==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1190,8 +1200,8 @@ packages: /@radix-ui/react-popover@1.1.6(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-NQouW0x4/GnkFJ/pRqsIS3rM/k97VzKnVb2jB7Gq7VEGPy5g7uNV1ykySFt7eWSp3i2uSGFwaJcvIRJBAHmmFg==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1224,8 +1234,8 @@ packages: /@radix-ui/react-popper@1.2.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-Rvqc3nOpwseCyj/rgjlJDYAgyfw7OC1tTkKn2ivhaMGcYt8FSBlahHOZak2i3QwkRXUXgGgzeEe2RuqeEHuHgA==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1253,8 +1263,8 @@ packages: /@radix-ui/react-portal@1.1.4(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-sn2O9k1rPFYVyKd5LAJfo96JlSGVFpa1fS6UuBJfrZadudiw5tAmru+n1x7aMRQ84qDM71Zh1+SzK5QwU0tJfA==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1274,8 +1284,8 @@ packages: /@radix-ui/react-presence@1.1.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-18TFr80t5EVgL9x1SwF/YGtfG+l0BS0PRAlCWBDoBEiDQjeKgnNZRVJp/oVBl24sr3Gbfwc/Qpj4OcWTQMsAEg==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1295,8 +1305,8 @@ packages: /@radix-ui/react-primitive@2.0.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-Ec/0d38EIuvDF+GZjcMU/Ze6MxntVJYO/fRlCPhCaVUyPY9WTalHJw54tp9sXeJo3tlShWpy41vQRgLRGOuz+w==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1315,8 +1325,8 @@ packages: /@radix-ui/react-progress@1.1.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-u1IgJFQ4zNAUTjGdDL5dcl/U8ntOR6jsnhxKb5RKp5Ozwl88xKR9EqRZOe/Mk8tnx0x5tNUe2F+MzsyjqMg0MA==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1336,8 +1346,8 @@ packages: /@radix-ui/react-radio-group@1.2.3(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-xtCsqt8Rp09FK50ItqEqTJ7Sxanz8EM8dnkVIhJrc/wkMMomSmXHvYbhv3E7Zx4oXh98aaLt9W679SUYXg4IDA==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1365,8 +1375,8 @@ packages: /@radix-ui/react-roving-focus@1.1.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-zgMQWkNO169GtGqRvYrzb0Zf8NhMHS2DuEB/TiEmVnpr5OqPU3i8lfbxaAmC2J/KYuIQxyoQQ6DxepyXp61/xw==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1393,8 +1403,8 @@ packages: /@radix-ui/react-scroll-area@1.2.3(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-l7+NNBfBYYJa9tNqVcP2AGvxdE3lmE6kFTBXdvHgUaZuy+4wGCL1Cl2AfaR7RKyimj7lZURGLwFO59k4eBnDJQ==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1421,8 +1431,8 @@ packages: /@radix-ui/react-select@2.1.6(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-T6ajELxRvTuAMWH0YmRJ1qez+x4/7Nq7QIx7zJ0VK3qaEWdnWpNbEDnmWldG1zBDwqrLy5aLMUWcoGirVj5kMg==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1461,8 +1471,8 @@ packages: /@radix-ui/react-separator@1.1.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-oZfHcaAp2Y6KFBX6I5P1u7CQoy4lheCGiYj+pGFrHy8E/VNRb5E39TkTr3JrV520csPBTZjkuKFdEsjS5EUNKQ==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1481,8 +1491,8 @@ packages: /@radix-ui/react-slider@1.2.3(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-nNrLAWLjGESnhqBqcCNW4w2nn7LxudyMzeB6VgdyAnFLC6kfQgnAjSL2v6UkQTnDctJBlxrmxfplWS4iYjdUTw==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1511,7 +1521,7 @@ packages: /@radix-ui/react-slot@1.1.2(@types/react@19.0.10)(react@19.0.0): resolution: {integrity: sha512-YAKxaiGsSQJ38VzKH86/BPRC4rh+b1Jpa+JneA5LRE7skmLPNAyeG8kPJj/oo4STLvlrs8vkf/iYyc3A5stYCQ==} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -1525,8 +1535,8 @@ packages: /@radix-ui/react-switch@1.1.3(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-1nc+vjEOQkJVsJtWPSiISGT6OKm4SiOdjMo+/icLxo2G4vxz1GntC5MzfL4v8ey9OEfw787QCD1y3mUv0NiFEQ==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1551,8 +1561,8 @@ packages: /@radix-ui/react-tabs@1.1.3(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-9mFyI30cuRDImbmFF6O2KUJdgEOsGh9Vmx9x/Dh9tOhL7BngmQPQfwW4aejKm5OHpfWIdmeV6ySyuxoOGjtNng==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1578,8 +1588,8 @@ packages: /@radix-ui/react-toast@1.2.6(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-gN4dpuIVKEgpLn1z5FhzT9mYRUitbfZq9XqN/7kkBMUgFTzTG8x/KszWJugJXHcwxckY8xcKDZPz7kG3o6DsUA==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1609,8 +1619,8 @@ packages: /@radix-ui/react-toggle-group@1.1.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-JBm6s6aVG/nwuY5eadhU2zDi/IwYS0sDM5ZWb4nymv/hn3hZdkw+gENn0LP4iY1yCd7+bgJaCwueMYJIU3vk4A==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1635,8 +1645,8 @@ packages: /@radix-ui/react-toggle@1.1.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-lntKchNWx3aCHuWKiDY+8WudiegQvBpDRAYL8dKLRvKEH8VOpl0XX6SSU/bUBqIRJbcTy4+MW06Wv8vgp10rzQ==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1657,8 +1667,8 @@ packages: /@radix-ui/react-tooltip@1.1.8(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-YAA2cu48EkJZdAMHC0dqo9kialOcRStbtiY4nJPaht7Ptrhcvpo+eDChaM6BIs8kL6a8Z5l5poiqLnXcNduOkA==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -1688,7 +1698,7 @@ packages: /@radix-ui/react-use-callback-ref@1.1.0(@types/react@19.0.10)(react@19.0.0): resolution: {integrity: sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -1701,7 +1711,7 @@ packages: /@radix-ui/react-use-controllable-state@1.1.0(@types/react@19.0.10)(react@19.0.0): resolution: {integrity: sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -1715,7 +1725,7 @@ packages: /@radix-ui/react-use-escape-keydown@1.1.0(@types/react@19.0.10)(react@19.0.0): resolution: {integrity: sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw==} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -1729,7 +1739,7 @@ packages: /@radix-ui/react-use-layout-effect@1.1.0(@types/react@19.0.10)(react@19.0.0): resolution: {integrity: sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -1742,7 +1752,7 @@ packages: /@radix-ui/react-use-previous@1.1.0(@types/react@19.0.10)(react@19.0.0): resolution: {integrity: sha512-Z/e78qg2YFnnXcW88A4JmTtm4ADckLno6F7OXotmkQfeuCVaKuYzqAATPhVzl3delXE7CxIV8shofPn3jPc5Og==} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -1755,7 +1765,7 @@ packages: /@radix-ui/react-use-rect@1.1.0(@types/react@19.0.10)(react@19.0.0): resolution: {integrity: sha512-0Fmkebhr6PiseyZlYAOtLS+nb7jLmpqTrJyv61Pe68MKYW6OWdRE2kI70TaYY27u7H0lajqM3hSMMLFq18Z7nQ==} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -1769,7 +1779,7 @@ packages: /@radix-ui/react-use-size@1.1.0(@types/react@19.0.10)(react@19.0.0): resolution: {integrity: sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -1783,8 +1793,8 @@ packages: /@radix-ui/react-visually-hidden@1.1.2(@types/react-dom@19.0.4)(@types/react@19.0.10)(react-dom@19.0.0)(react@19.0.0): resolution: {integrity: sha512-1SzA4ns2M1aRlvxErqhLHsBHoS5eI5UUcI2awAMgGUp4LoaoWOKYmvqDY2s/tltuPkh3Yk77YF/r3IRj+Amx4Q==} peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' + '@types/react': 19.0.10 + '@types/react-dom': 19.0.4 react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc peerDependenciesMeta: @@ -2022,7 +2032,7 @@ packages: /@types/react-dom@19.0.4(@types/react@19.0.10): resolution: {integrity: sha512-4fSQ8vWFkg+TGhePfUzVmat3eC14TXYSsiiDSLI0dVLsrm9gZFABjPy/Qu6TKgl1tq1Bu1yDsuQgY3A3DOjCcg==} peerDependencies: - '@types/react': ^19.0.0 + '@types/react': 19.0.10 dependencies: '@types/react': 19.0.10 dev: false @@ -2548,6 +2558,11 @@ packages: resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} dev: false + /clsx@1.2.1: + resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} + engines: {node: '>=6'} + dev: false + /clsx@2.1.1: resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} engines: {node: '>=6'} @@ -2581,6 +2596,7 @@ packages: /color-string@1.9.1: resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} + requiresBuild: true dependencies: color-name: 1.1.4 simple-swizzle: 0.2.2 @@ -2590,6 +2606,7 @@ packages: /color@4.2.3: resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} engines: {node: '>=12.5.0'} + requiresBuild: true dependencies: color-convert: 2.0.1 color-string: 1.9.1 @@ -3574,6 +3591,7 @@ packages: /is-arrayish@0.3.2: resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} + requiresBuild: true dev: false optional: true @@ -4297,6 +4315,18 @@ packages: scheduler: 0.25.0 dev: false + /react-draggable@4.4.6(react-dom@19.0.0)(react@19.0.0): + resolution: {integrity: sha512-LtY5Xw1zTPqHkVmtM3X8MUOxNDOUhv/khTgBgrUvwaS064bwVvxT+q5El0uUFNx5IEPKXuRejr7UqLwBIg5pdw==} + peerDependencies: + react: '>= 16.3.0' + react-dom: '>= 16.3.0' + dependencies: + clsx: 1.2.1 + prop-types: 15.8.1 + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) + dev: false + /react-hook-form@7.54.1(react@19.0.0): resolution: {integrity: sha512-PUNzFwQeQ5oHiiTUO7GO/EJXGEtuun2Y1A59rLnZBBj+vNEOWt/3ERTiG1/zt7dVeJEM+4vDX/7XQ/qanuvPMg==} engines: {node: '>=18.0.0'} @@ -4317,7 +4347,7 @@ packages: resolution: {integrity: sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==} engines: {node: '>=10'} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 peerDependenciesMeta: '@types/react': @@ -4333,7 +4363,7 @@ packages: resolution: {integrity: sha512-pnAi91oOk8g8ABQKGF5/M9qxmmOPxaAnopyTHYfqYEwJhyFrbbBtHuSgtKEoH0jpcxx5o3hXqH1mNd9/Oi+8iQ==} engines: {node: '>=10'} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -4375,7 +4405,7 @@ packages: resolution: {integrity: sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==} engines: {node: '>=10'} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -4658,6 +4688,7 @@ packages: /simple-swizzle@0.2.2: resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} + requiresBuild: true dependencies: is-arrayish: 0.3.2 dev: false @@ -4804,6 +4835,14 @@ packages: resolution: {integrity: sha512-FQT/OVqCD+7edmmJpsgCsY820RTD5AkBryuG5IUqR5YQZSdj5xlH5nLgH7YPths7WsLPSpSBNneJdM8aS8aeFA==} dev: false + /tailwind-scrollbar-hide@2.0.0(tailwindcss@4.1.3): + resolution: {integrity: sha512-lqiIutHliEiODwBRHy4G2+Tcayo2U7+3+4frBmoMETD72qtah+XhOk5XcPzC1nJvXhXUdfl2ajlMhUc2qC6CIg==} + peerDependencies: + tailwindcss: '>=3.0.0 || >= 4.0.0 || >= 4.0.0-beta.8 || >= 4.0.0-alpha.20' + dependencies: + tailwindcss: 4.1.3 + dev: false + /tailwindcss-animate@1.0.7(tailwindcss@4.1.3): resolution: {integrity: sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA==} peerDependencies: @@ -4818,7 +4857,6 @@ packages: /tailwindcss@4.1.3: resolution: {integrity: sha512-2Q+rw9vy1WFXu5cIxlvsabCwhU2qUwodGq03ODhLJ0jW4ek5BUtoCsnLB0qG+m8AHgEsSJcJGDSDe06FXlP74g==} - dev: false /tapable@2.2.1: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} @@ -4983,7 +5021,7 @@ packages: resolution: {integrity: sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==} engines: {node: '>=10'} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -4998,7 +5036,7 @@ packages: resolution: {integrity: sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==} engines: {node: '>=10'} peerDependencies: - '@types/react': '*' + '@types/react': 19.0.10 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc peerDependenciesMeta: '@types/react': @@ -5122,7 +5160,7 @@ packages: resolution: {integrity: sha512-14fwWQtU3pH4dE0dOpdMiWjddcH+QzKIgk1cl8epwSE7yag43k/AD/m4L6+K7DytAOr9gGBe3/EXj9g7cdostg==} engines: {node: '>=12.20.0'} peerDependencies: - '@types/react': '>=18.0.0' + '@types/react': 19.0.10 immer: '>=9.0.6' react: '>=18.0.0' use-sync-external-store: '>=1.2.0'