From 330669176da422a197ee8eb08b3b1bfcf9a14360 Mon Sep 17 00:00:00 2001 From: Ivan Cacciari Date: Thu, 6 Aug 2026 08:36:47 +0200 Subject: [PATCH] Initial independent version of CrAPP --- .gitignore | 41 + ...ne-in-squadra-widget-in-home-2026-08-03.md | 31 + ...zione-dal-prototipo-al-cloud-2026-07-31.md | 58 + ...to-badge-nella-lista-squadra-2026-07-31.md | 23 + ...holder-livello-7-dal-profilo-2026-08-05.md | 11 + ...one-giocatore-al-primo-avvio-2026-07-31.md | 34 + ...ni-nel-calendario-promemoria-2026-07-31.md | 42 + .lovable/project.json | 5 + .prettierignore | 8 + .prettierrc | 6 + AGENTS.md | 10 + README.md | 118 + bun.lock | 1115 +++ bunfig.toml | 7 + components.json | 22 + docs/PORTABILITA.md | 37 + eslint.config.js | 40 + mem/features/cloud-efficienza.md | 14 + mem/features/portabilita.md | 16 + mem/index.md | 2 + package-lock.json | 7973 +++++++++++++++++ package.json | 91 + public/favicon.png | Bin 0 -> 6982 bytes public/icon-192.png | Bin 0 -> 39848 bytes public/icon-512.png | Bin 0 -> 214247 bytes public/manifest.webmanifest | 24 + public/push-sw.js | 46 + public/robots.txt | 14 + src/assets/crap-logo.png.asset.json | 11 + src/components/crapp/Avatar.tsx | 35 + src/components/crapp/BadgeDrawer.tsx | 152 + src/components/crapp/BottomNav.tsx | 30 + src/components/crapp/CelebrazioneBadge.tsx | 79 + src/components/crapp/CollezioneBadge.tsx | 249 + src/components/crapp/EventoCard.tsx | 150 + src/components/crapp/Pagelle.tsx | 122 + src/components/crapp/PromemoriaPalloni.tsx | 62 + src/components/crapp/RosaPresenze.tsx | 187 + src/components/crapp/ScoutEntry.tsx | 60 + src/components/crapp/SerieCard.tsx | 77 + src/components/crapp/SondaggioCacche.tsx | 78 + src/components/crapp/TurnoPalloni.tsx | 81 + src/components/crapp/VotazioneMvp.tsx | 100 + src/components/crapp/VotoSocial.tsx | 140 + src/components/crapp/ui-bits.tsx | 90 + src/components/motion/Barra.tsx | 25 + src/components/motion/Numero.tsx | 20 + src/components/motion/Reveal.tsx | 29 + src/components/ui/accordion.tsx | 51 + src/components/ui/alert-dialog.tsx | 115 + src/components/ui/alert.tsx | 49 + src/components/ui/aspect-ratio.tsx | 5 + src/components/ui/avatar.tsx | 47 + src/components/ui/badge.tsx | 32 + src/components/ui/breadcrumb.tsx | 101 + src/components/ui/button.tsx | 49 + src/components/ui/calendar.tsx | 177 + src/components/ui/card.tsx | 55 + src/components/ui/carousel.tsx | 240 + src/components/ui/chart.tsx | 331 + src/components/ui/checkbox.tsx | 26 + src/components/ui/collapsible.tsx | 11 + src/components/ui/command.tsx | 143 + src/components/ui/context-menu.tsx | 186 + src/components/ui/dialog.tsx | 104 + src/components/ui/drawer.tsx | 98 + src/components/ui/dropdown-menu.tsx | 187 + src/components/ui/form.tsx | 171 + src/components/ui/hover-card.tsx | 27 + src/components/ui/input-otp.tsx | 73 + src/components/ui/input.tsx | 22 + src/components/ui/label.tsx | 21 + src/components/ui/menubar.tsx | 228 + src/components/ui/navigation-menu.tsx | 120 + src/components/ui/pagination.tsx | 98 + src/components/ui/popover.tsx | 31 + src/components/ui/progress.tsx | 25 + src/components/ui/radio-group.tsx | 36 + src/components/ui/resizable.tsx | 37 + src/components/ui/scroll-area.tsx | 44 + src/components/ui/select.tsx | 152 + src/components/ui/separator.tsx | 24 + src/components/ui/sheet.tsx | 122 + src/components/ui/sidebar.tsx | 744 ++ src/components/ui/skeleton.tsx | 7 + src/components/ui/slider.tsx | 23 + src/components/ui/sonner.tsx | 23 + src/components/ui/switch.tsx | 27 + src/components/ui/table.tsx | 94 + src/components/ui/tabs.tsx | 53 + src/components/ui/textarea.tsx | 21 + src/components/ui/toggle-group.tsx | 57 + src/components/ui/toggle.tsx | 42 + src/components/ui/tooltip.tsx | 32 + src/hooks/use-mobile.tsx | 19 + src/integrations/lovable/index.ts | 38 + src/integrations/supabase/auth-attacher.ts | 15 + src/integrations/supabase/auth-middleware.ts | 109 + src/integrations/supabase/client.server.ts | 69 + src/integrations/supabase/client.ts | 68 + src/integrations/supabase/types.ts | 600 ++ src/lib/avatar-store.ts | 88 + src/lib/badge-social.ts | 159 + src/lib/badges.ts | 271 + src/lib/cacche.ts | 96 + src/lib/crapp-data.ts | 178 + src/lib/error-capture.ts | 81 + src/lib/error-page.ts | 30 + src/lib/eventi.server.ts | 11 + src/lib/eventi.ts | 187 + src/lib/infortuni.ts | 60 + src/lib/lovable-error-reporting.ts | 58 + src/lib/motion.ts | 93 + src/lib/mvp-voti.ts | 86 + src/lib/notifiche-smart.ts | 169 + src/lib/obiettivi.ts | 192 + src/lib/pagelle.ts | 97 + src/lib/palloni-core.ts | 85 + src/lib/palloni.ts | 57 + src/lib/presenze-mese.ts | 77 + src/lib/presenze.ts | 70 + src/lib/push-client.ts | 72 + src/lib/rosa.ts | 63 + src/lib/scout-export.ts | 46 + src/lib/scout-live.ts | 166 + src/lib/scout-stato.ts | 75 + src/lib/scout-store.ts | 179 + src/lib/serie.ts | 90 + src/lib/user-store.ts | 56 + src/lib/utils.ts | 6 + src/lib/webpush.server.ts | 77 + src/routeTree.gen.ts | 369 + src/router.tsx | 28 + src/routes/README.md | 21 + src/routes/__root.tsx | 177 + src/routes/allenamento.$id.tsx | 99 + src/routes/api/public/promemoria-palloni.ts | 59 + src/routes/api/public/push-config.ts | 12 + src/routes/api/public/push-messaggio.ts | 84 + src/routes/api/public/push-subscribe.ts | 46 + src/routes/api/public/sollecita-presenze.ts | 74 + src/routes/benvenuto.tsx | 66 + src/routes/calendario.tsx | 313 + src/routes/classifica.tsx | 104 + src/routes/eventi.tsx | 343 + src/routes/index.tsx | 189 + src/routes/partita.$id.tsx | 245 + src/routes/profilo.tsx | 218 + src/routes/scout.tsx | 506 ++ src/routes/squadra.tsx | 440 + src/server.ts | 61 + src/start.ts | 31 + src/styles.css | 334 + supabase/config.toml | 1 + ...5_d4d1b21a-9864-40c9-92d8-57eba3e98ee0.sql | 33 + ...8_e5983f0c-9f19-4d26-b86f-abf689a88179.sql | 2 + ...4_70d1d54a-ed41-4bf4-95d4-a5ed86440db7.sql | 14 + ...8_5c7c4a6e-6b74-40c3-95b5-3c337120f1f4.sql | 33 + ...8_64a0038f-96c4-4886-a88d-38957e58675f.sql | 161 + ...7_affa1c11-fa92-450f-9f00-02d87195a6d9.sql | 32 + ...0_a5152af0-b82c-485d-b11a-dc3f1e9513d6.sql | 25 + ...2_ea973122-c654-4b3f-a89c-5c4eab968424.sql | 16 + ...4_573f58de-a8dd-4eef-98f7-1dee5f9a3da7.sql | 91 + ...2_60636d77-015d-4deb-8d7d-34afc20503aa.sql | 4 + ...2_498c47cf-2375-4b59-b5a1-2f064c06c268.sql | 1 + tsconfig.json | 30 + vite.config.ts | 15 + 167 files changed, 24096 insertions(+) create mode 100644 .gitignore create mode 100644 .lovable/plan/obiettivi-di-squadra-sezione-in-squadra-widget-in-home-2026-08-03.md create mode 100644 .lovable/plan/rendere-crapp-operativa-migrazione-dal-prototipo-al-cloud-2026-07-31.md create mode 100644 .lovable/plan/ridimensionamento-badge-nella-lista-squadra-2026-07-31.md create mode 100644 .lovable/plan/rimuovere-placeholder-livello-7-dal-profilo-2026-08-05.md create mode 100644 .lovable/plan/selezione-giocatore-al-primo-avvio-2026-07-31.md create mode 100644 .lovable/plan/turno-palloni-nel-calendario-promemoria-2026-07-31.md create mode 100644 .lovable/project.json create mode 100644 .prettierignore create mode 100644 .prettierrc create mode 100644 AGENTS.md create mode 100644 README.md create mode 100644 bun.lock create mode 100644 bunfig.toml create mode 100644 components.json create mode 100644 docs/PORTABILITA.md create mode 100644 eslint.config.js create mode 100644 mem/features/cloud-efficienza.md create mode 100644 mem/features/portabilita.md create mode 100644 mem/index.md create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 public/favicon.png create mode 100644 public/icon-192.png create mode 100644 public/icon-512.png create mode 100644 public/manifest.webmanifest create mode 100644 public/push-sw.js create mode 100644 public/robots.txt create mode 100644 src/assets/crap-logo.png.asset.json create mode 100644 src/components/crapp/Avatar.tsx create mode 100644 src/components/crapp/BadgeDrawer.tsx create mode 100644 src/components/crapp/BottomNav.tsx create mode 100644 src/components/crapp/CelebrazioneBadge.tsx create mode 100644 src/components/crapp/CollezioneBadge.tsx create mode 100644 src/components/crapp/EventoCard.tsx create mode 100644 src/components/crapp/Pagelle.tsx create mode 100644 src/components/crapp/PromemoriaPalloni.tsx create mode 100644 src/components/crapp/RosaPresenze.tsx create mode 100644 src/components/crapp/ScoutEntry.tsx create mode 100644 src/components/crapp/SerieCard.tsx create mode 100644 src/components/crapp/SondaggioCacche.tsx create mode 100644 src/components/crapp/TurnoPalloni.tsx create mode 100644 src/components/crapp/VotazioneMvp.tsx create mode 100644 src/components/crapp/VotoSocial.tsx create mode 100644 src/components/crapp/ui-bits.tsx create mode 100644 src/components/motion/Barra.tsx create mode 100644 src/components/motion/Numero.tsx create mode 100644 src/components/motion/Reveal.tsx create mode 100644 src/components/ui/accordion.tsx create mode 100644 src/components/ui/alert-dialog.tsx create mode 100644 src/components/ui/alert.tsx create mode 100644 src/components/ui/aspect-ratio.tsx create mode 100644 src/components/ui/avatar.tsx create mode 100644 src/components/ui/badge.tsx create mode 100644 src/components/ui/breadcrumb.tsx create mode 100644 src/components/ui/button.tsx create mode 100644 src/components/ui/calendar.tsx create mode 100644 src/components/ui/card.tsx create mode 100644 src/components/ui/carousel.tsx create mode 100644 src/components/ui/chart.tsx create mode 100644 src/components/ui/checkbox.tsx create mode 100644 src/components/ui/collapsible.tsx create mode 100644 src/components/ui/command.tsx create mode 100644 src/components/ui/context-menu.tsx create mode 100644 src/components/ui/dialog.tsx create mode 100644 src/components/ui/drawer.tsx create mode 100644 src/components/ui/dropdown-menu.tsx create mode 100644 src/components/ui/form.tsx create mode 100644 src/components/ui/hover-card.tsx create mode 100644 src/components/ui/input-otp.tsx create mode 100644 src/components/ui/input.tsx create mode 100644 src/components/ui/label.tsx create mode 100644 src/components/ui/menubar.tsx create mode 100644 src/components/ui/navigation-menu.tsx create mode 100644 src/components/ui/pagination.tsx create mode 100644 src/components/ui/popover.tsx create mode 100644 src/components/ui/progress.tsx create mode 100644 src/components/ui/radio-group.tsx create mode 100644 src/components/ui/resizable.tsx create mode 100644 src/components/ui/scroll-area.tsx create mode 100644 src/components/ui/select.tsx create mode 100644 src/components/ui/separator.tsx create mode 100644 src/components/ui/sheet.tsx create mode 100644 src/components/ui/sidebar.tsx create mode 100644 src/components/ui/skeleton.tsx create mode 100644 src/components/ui/slider.tsx create mode 100644 src/components/ui/sonner.tsx create mode 100644 src/components/ui/switch.tsx create mode 100644 src/components/ui/table.tsx create mode 100644 src/components/ui/tabs.tsx create mode 100644 src/components/ui/textarea.tsx create mode 100644 src/components/ui/toggle-group.tsx create mode 100644 src/components/ui/toggle.tsx create mode 100644 src/components/ui/tooltip.tsx create mode 100644 src/hooks/use-mobile.tsx create mode 100644 src/integrations/lovable/index.ts create mode 100644 src/integrations/supabase/auth-attacher.ts create mode 100644 src/integrations/supabase/auth-middleware.ts create mode 100644 src/integrations/supabase/client.server.ts create mode 100644 src/integrations/supabase/client.ts create mode 100644 src/integrations/supabase/types.ts create mode 100644 src/lib/avatar-store.ts create mode 100644 src/lib/badge-social.ts create mode 100644 src/lib/badges.ts create mode 100644 src/lib/cacche.ts create mode 100644 src/lib/crapp-data.ts create mode 100644 src/lib/error-capture.ts create mode 100644 src/lib/error-page.ts create mode 100644 src/lib/eventi.server.ts create mode 100644 src/lib/eventi.ts create mode 100644 src/lib/infortuni.ts create mode 100644 src/lib/lovable-error-reporting.ts create mode 100644 src/lib/motion.ts create mode 100644 src/lib/mvp-voti.ts create mode 100644 src/lib/notifiche-smart.ts create mode 100644 src/lib/obiettivi.ts create mode 100644 src/lib/pagelle.ts create mode 100644 src/lib/palloni-core.ts create mode 100644 src/lib/palloni.ts create mode 100644 src/lib/presenze-mese.ts create mode 100644 src/lib/presenze.ts create mode 100644 src/lib/push-client.ts create mode 100644 src/lib/rosa.ts create mode 100644 src/lib/scout-export.ts create mode 100644 src/lib/scout-live.ts create mode 100644 src/lib/scout-stato.ts create mode 100644 src/lib/scout-store.ts create mode 100644 src/lib/serie.ts create mode 100644 src/lib/user-store.ts create mode 100644 src/lib/utils.ts create mode 100644 src/lib/webpush.server.ts create mode 100644 src/routeTree.gen.ts create mode 100644 src/router.tsx create mode 100644 src/routes/README.md create mode 100644 src/routes/__root.tsx create mode 100644 src/routes/allenamento.$id.tsx create mode 100644 src/routes/api/public/promemoria-palloni.ts create mode 100644 src/routes/api/public/push-config.ts create mode 100644 src/routes/api/public/push-messaggio.ts create mode 100644 src/routes/api/public/push-subscribe.ts create mode 100644 src/routes/api/public/sollecita-presenze.ts create mode 100644 src/routes/benvenuto.tsx create mode 100644 src/routes/calendario.tsx create mode 100644 src/routes/classifica.tsx create mode 100644 src/routes/eventi.tsx create mode 100644 src/routes/index.tsx create mode 100644 src/routes/partita.$id.tsx create mode 100644 src/routes/profilo.tsx create mode 100644 src/routes/scout.tsx create mode 100644 src/routes/squadra.tsx create mode 100644 src/server.ts create mode 100644 src/start.ts create mode 100644 src/styles.css create mode 100644 supabase/config.toml create mode 100644 supabase/migrations/20260731112945_d4d1b21a-9864-40c9-92d8-57eba3e98ee0.sql create mode 100644 supabase/migrations/20260731113438_e5983f0c-9f19-4d26-b86f-abf689a88179.sql create mode 100644 supabase/migrations/20260731122724_70d1d54a-ed41-4bf4-95d4-a5ed86440db7.sql create mode 100644 supabase/migrations/20260731131348_5c7c4a6e-6b74-40c3-95b5-3c337120f1f4.sql create mode 100644 supabase/migrations/20260731135328_64a0038f-96c4-4886-a88d-38957e58675f.sql create mode 100644 supabase/migrations/20260803140647_affa1c11-fa92-450f-9f00-02d87195a6d9.sql create mode 100644 supabase/migrations/20260803164440_a5152af0-b82c-485d-b11a-dc3f1e9513d6.sql create mode 100644 supabase/migrations/20260804073812_ea973122-c654-4b3f-a89c-5c4eab968424.sql create mode 100644 supabase/migrations/20260805070814_573f58de-a8dd-4eef-98f7-1dee5f9a3da7.sql create mode 100644 supabase/migrations/20260805083122_60636d77-015d-4deb-8d7d-34afc20503aa.sql create mode 100644 supabase/migrations/20260805083402_498c47cf-2375-4b59-b5a1-2f064c06c268.sql create mode 100644 tsconfig.json create mode 100644 vite.config.ts diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..702c652 --- /dev/null +++ b/.gitignore @@ -0,0 +1,41 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +.output +.vinxi +.tanstack/** +.nitro +*.local + +# Wrangler / Cloudflare +.wrangler/ +.dev.vars + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? + +# Environment variables +.env +.env.local +.env.development.local +.env.production.local + +# Optional +.vercel diff --git a/.lovable/plan/obiettivi-di-squadra-sezione-in-squadra-widget-in-home-2026-08-03.md b/.lovable/plan/obiettivi-di-squadra-sezione-in-squadra-widget-in-home-2026-08-03.md new file mode 100644 index 0000000..67b4fe6 --- /dev/null +++ b/.lovable/plan/obiettivi-di-squadra-sezione-in-squadra-widget-in-home-2026-08-03.md @@ -0,0 +1,31 @@ +# Obiettivi di squadra: sezione in Squadra + widget in home + +## Stato attuale + +Al momento c'è un solo "obiettivo di squadra" ed è hardcoded nella home (`src/routes/index.tsx`, riga 136): **"90% di presenze ad agosto"** con una barra finta all'82%. Non esiste uno schema dati né una sezione dedicata, e non è collegato a calendario, presenze o statistiche. Le voci "obiettivi" nelle descrizioni di Squadra e Profilo si riferiscono ai badge individuali, non a obiettivi di squadra. + +## Cosa faccio + +1. **Modello dati locale** in `src/lib/crapp-data.ts` + - Nuovo tipo `ObiettivoSquadra`: id, titolo, descrizione, target, valore attuale, unità, scadenza (opzionale), icona. + - Array `obiettiviSquadra` con gli obiettivi demo della stagione. +2. **Sezione "Obiettivi di squadra" dentro la scheda Squadra** (`src/routes/squadra.tsx`) + - Nuova sezione con la lista completa degli obiettivi: barra di progresso, percentuale, stato (in corso / completato). + - Ordinati con gli obiettivi in corso in cima e i completati in fondo. + - Nessuna nuova rotta e nessuna modifica al bottom nav. +3. **Widget home dinamico** (`src/routes/index.tsx`) + - Sostituisce l'obiettivo hardcoded: mostra sempre il primo obiettivo in corso preso dalla lista. + - Progresso calcolato dai dati reali dove possibile (es. presenze derivate dagli eventi). +4. **Obiettivi demo iniziali** + - 90% di presenze ad agosto (collegato agli eventi di agosto). + - 70% di risposte entro 24h nel prossimo mese. + - Prima vittoria del campionato (collegato allo storico match). + - 5 vittorie in campionato (collegato allo storico match). + - 10 vittorie in campionato (collegato allo storico match). + - 1 evento di squadra al mese (pizzata, ecc.). + +## Cosa non cambia + +- Resta un prototipo offline: i dati restano in `src/lib/crapp-data.ts`. +- I badge individuali restano come sono in `src/lib/badges.ts` e nella rosa di `src/routes/squadra.tsx`. +- Bottom nav e rotte invariate. \ No newline at end of file diff --git a/.lovable/plan/rendere-crapp-operativa-migrazione-dal-prototipo-al-cloud-2026-07-31.md b/.lovable/plan/rendere-crapp-operativa-migrazione-dal-prototipo-al-cloud-2026-07-31.md new file mode 100644 index 0000000..32e56ef --- /dev/null +++ b/.lovable/plan/rendere-crapp-operativa-migrazione-dal-prototipo-al-cloud-2026-07-31.md @@ -0,0 +1,58 @@ +# Rendere CrAPP operativa: migrazione dal prototipo al Cloud + +## Stato attuale + +L'app è un prototipo UI con alcune funzioni già collegate a Lovable Cloud: + +- Già sul Cloud: voti MVP (`mvp_voti`), iscrizioni push (`push_subscriptions`), sessioni scout (`scout_sessioni`), turni palloni (`turni_palloni`). +- Ancora in locale come dati demo: rosa giocatori, calendario eventi, storico partite, classifica CSI, statistiche individuali, presenze/assenze, badge. + +## Cosa serve per renderla operativa + +1. **Rosa e profili giocatori sul database** + - Creare tabella `profiles` (o `giocatori`) con nome, numero maglia, ruolo, data di nascita, foto profilo. + - Collegare ogni riga all'utente autenticato corrispondente. + - Rimuovere la rosa statica da `src/lib/crapp-data.ts` e caricarla dal backend. + +2. **Autenticazione reale** + - Sostituire la semplice selezione "Chi sei?" in `localStorage` con login email/password o OAuth (Google). + - Ogni giocatore accede con le proprie credenziali e vede solo i propri dati modificabili. + - Necessaria per garantire che uno scout o un voto MVP provenga davvero da quel giocatore. + +3. **Calendario eventi persistente** + - Tabella `eventi` con tipo, titolo, data, ora, luogo, avversario, casa/fuori. + - Tabella `presenze` (evento_id, giocatore_id, stato, aggiornato_il). + - I compleanni possono restare derivati dalla data di nascita dei giocatori. + +4. **Statistiche e badge dinamici** + - Tabella `statistiche` o `azioni_scout` (evento_id, giocatore_id, tipo azione, valore, creato_il). + - I badge vengono calcolati in tempo reale dalle statistiche accumulate, senza valori fissi in `crapp-data.ts`. + +5. **Scout live collegato ai dati reali** + - Le azioni registrate in `scout.tsx` devono scrivere sulle tabelle eventi/statistiche. + - Mantenere il lock di modifica singolo e l'attivazione solo il giorno della partita. + +6. **Classifica CSI** + - Tabella `classifica` aggiornata manualmente da un admin o importata dal sito CSI quando disponibile. + - Per ora nessuna API CSI ufficiale: si inserisce a mano o si copia/incolla. + +7. **Notifiche push definitive** + - Verificare che i cron job inviino correttamente i promemoria palloni. + - Aggiungere notifiche per conferma eventi, promemoria presenze, MVP votabile. + +8. **Ruoli e permessi** + - Definire chi può creare/modificare eventi (capitano/admin). + - Chi può fare scout (designato per partita). + - Chi può modificare i turni palloni (tutti, come da tua richiesta). + +## Cosa resta salvato nel Cloud + +Sì: tutto ciò che viene scritto sulle tabelle Lovable Cloud/Supabase resta salvato online e condiviso tra tutti i dispositivi. + +I dati demo in `src/lib/crapp-data.ts` invece no: sono file statici, quindi ogni aggiornamento dell'app li sovrascrive e ogni telefono li vede identici. + +## Decisioni da prendere insieme + +- Vuoi abilitare login email/password per ogni giocatore, o preferisci mantenere la selezione "Chi sei?" senza password per semplicità? +- Chi gestirà inserimento eventi e aggiornamento classifica: solo alcuni o tutta la squadra? +- Vuoi procedere per fasi (prima rosa + calendario + presenze, poi statistiche) o tutto insieme? diff --git a/.lovable/plan/ridimensionamento-badge-nella-lista-squadra-2026-07-31.md b/.lovable/plan/ridimensionamento-badge-nella-lista-squadra-2026-07-31.md new file mode 100644 index 0000000..8a6dc99 --- /dev/null +++ b/.lovable/plan/ridimensionamento-badge-nella-lista-squadra-2026-07-31.md @@ -0,0 +1,23 @@ +# Ridimensionamento badge nella lista squadra + +## Obiettivo +Rendere i badge accanto al nome del giocatore nella lista squadra più compatti e meno invasivi, mantenendo lo stile stilizzato (icone Lucide colorate per grado) e lasciando la scheda espansa con una dimensione leggibile. + +## Modifiche previste + +1. **Lista squadra (`src/routes/squadra.tsx`)** + - Ridurre le icone badge sbloccati mostrate accanto al nome da `h-4 w-4` (16px) a `h-3 w-3` (12px). + - Mantenere il massimo di 3 badge visibili e il contatore `+N` con testo ridotto a `text-[9px]` per armonizzare. + - Lasciare invariati avatar, nome, ruolo ed età. + +2. **Scheda giocatore espansa (`src/routes/squadra.tsx`)** + - Portare le icone badge dalla dimensione attuale a `h-4 w-4` (16px), leggibili ma non troppo grandi. + - Mantenere card, colori per grado (bronzo/argento/oro) e testi descrittivi. + +3. **Verifica** + - Controllare la preview su `/squadra` per confermare che i badge in lista siano discreti e la scheda espansa rimanga leggibile. + - Eseguire build per assicurarsi che non ci siano errori di tipo o stile. + +## Cosa non cambia +- Colori dei gradi, soglie badge, logica di sblocco e votazione MVP. +- Layout generale della pagina e bottom navigation. diff --git a/.lovable/plan/rimuovere-placeholder-livello-7-dal-profilo-2026-08-05.md b/.lovable/plan/rimuovere-placeholder-livello-7-dal-profilo-2026-08-05.md new file mode 100644 index 0000000..57eb97d --- /dev/null +++ b/.lovable/plan/rimuovere-placeholder-livello-7-dal-profilo-2026-08-05.md @@ -0,0 +1,11 @@ +# Rimuovere placeholder "Livello 7" dal Profilo + +## Obiettivo +Eliminare il testo statico "Livello 7" dalla scheda profilo, dato che non è collegato a nessun calcolo reale e l'utente preferisce toglierlo per ora. + +## Modifica +- `src/routes/profilo.tsx`: rimuovere il paragrafo `

Livello 7

` (riga 116) e, se necessario, riallineare il layout circostante per evitare spazi vuoti strani. + +## Verifica +- Build senza errori. +- Preview della pagina Profilo: nessun riferimento a "Livello" visibile. diff --git a/.lovable/plan/selezione-giocatore-al-primo-avvio-2026-07-31.md b/.lovable/plan/selezione-giocatore-al-primo-avvio-2026-07-31.md new file mode 100644 index 0000000..b4c9036 --- /dev/null +++ b/.lovable/plan/selezione-giocatore-al-primo-avvio-2026-07-31.md @@ -0,0 +1,34 @@ +# Selezione giocatore al primo avvio + +Aggiungere un flusso di onboarding che chiede "Chi sei?" la prima volta che l'app viene aperta, memorizzando la scelta in `localStorage`. Il profilo e la home si aggiorneranno automaticamente in base al giocatore selezionato. + +## Cosa cambia + +1. **Nuovo store `src/lib/user-store.ts`** + - Persiste in `localStorage` l'`id` del giocatore scelto. + - Espone `useGiocatoreCorrente()` che restituisce il giocatore selezionato o `null`. + - Espone `impostaGiocatore(id)` e `resetGiocatore()`. + +2. **Nuova route `/benvenuto`** + - Schermata full-screen con logo, titolo "Benvenuto in CrAPP" e lista scrollabile della rosa. + - Ogni riga mostra iniziali, nome, ruolo e numero maglia. + - Al tap su un giocatore, lo store viene aggiornato e l'utente viene portato a `/`. + - Non mostra la bottom navigation. + +3. **Reindirizzamento condizionato in `__root.tsx`** + - Se non è ancora stato selezionato un giocatore, qualunque route apre `/benvenuto`. + - Dopo la scelta, l'app funziona normalmente. + +4. **Sostituzione di `giocatoreCorrente` con `useGiocatoreCorrente()`** + - Aggiornare `src/routes/index.tsx` per salutare il giocatore selezionato e mostrarne le statistiche rapide. + - Aggiornare `src/routes/profilo.tsx` per renderlo il profilo personale del giocatore scelto. + +5. **Cambio utente dalle impostazioni** + - In `src/routes/profilo.tsx`, aggiungere una voce "Cambia giocatore" che resetta la selezione e porta a `/benvenuto`. + +## Note tecniche + +- `localStorage` viene letto solo lato client, usando `useSyncExternalStore` per evitare mismatch di hydration. +- La rosa reale è già presente in `src/lib/crapp-data.ts` (`giocatori`). +- La costante esportata `giocatoreCorrente` verrà rimossa; i componenti consumeranno il nuovo hook. +- Nessun backend richiesto: resta un prototipo locale. diff --git a/.lovable/plan/turno-palloni-nel-calendario-promemoria-2026-07-31.md b/.lovable/plan/turno-palloni-nel-calendario-promemoria-2026-07-31.md new file mode 100644 index 0000000..24d635b --- /dev/null +++ b/.lovable/plan/turno-palloni-nel-calendario-promemoria-2026-07-31.md @@ -0,0 +1,42 @@ +# Turno palloni nel calendario + promemoria + +Aggiungere a ogni allenamento/partita un incaricato dei palloni, condiviso tra tutti, con rotazione automatica proposta dall'app e promemoria (in-app e push). + +## Cosa vedrà la squadra + +- **Riga "Palloni" su ogni evento** (allenamento e partita) nella card del calendario e in Home: avatar + nome dell'incaricato, oppure "Da assegnare". +- **Chiunque può cambiarlo**: tocco sulla riga, si apre la lista della rosa, si sceglie il nome. La modifica è immediata e visibile a tutti. +- **Proposta automatica a rotazione**: l'app suggerisce chi non ha ancora fatto il turno di recente (o è stato meno volte incaricato). Il suggerimento è solo una proposta: resta sempre modificabile. +- **Storico turni** nella scheda squadra/giocatore: quante volte ciascuno ha portato i palloni. +- **Due promemoria per l'incaricato**: + 1. il giorno stesso dell'evento in cui li deve **prendere** a fine allenamento/partita; + 2. il giorno dell'evento successivo, per ricordargli di **riportarli**. +- I promemoria arrivano come banner ben visibile in Home e, per chi attiva le notifiche, come notifica push sul telefono. + +## Impostazione tecnica + +**Backend (Lovable Cloud)** +- Attivazione di Lovable Cloud. +- Tabella `eventi` (spostando i dati demo attuali su database) o, in alternativa minima, tabella `turni_palloni` con `evento_id`, `giocatore_id`, `aggiornato_da`, `aggiornato_il`. Scelgo la seconda per limitare il refactor: gli eventi restano in `crapp-data.ts` finché non si passa a calendario dinamico. +- Tabella `push_subscriptions` (giocatore_id, endpoint, chiavi) per le notifiche. +- Grant espliciti + RLS: lettura e scrittura aperte a tutti gli utenti dell'app (nessun login previsto oggi → policy per `anon` limitate a queste tabelle, nessun dato personale sensibile). +- Server functions in `src/lib/palloni.functions.ts`: `getTurni`, `setTurno`, `suggerisciTurno`. + +**Frontend** +- Nuovo componente `TurnoPalloni` usato in `EventoCard` e in Home. +- Lettura via TanStack Query (`ensureQueryData` nel loader, `useSuspenseQuery` nel componente), invalidazione dopo la modifica. +- Banner promemoria in Home basato su data odierna + evento successivo, mostrato solo al giocatore selezionato in `user-store`. + +**Notifiche push** +- Service worker dedicato al messaging (separato dalla PWA esistente), chiavi VAPID salvate come secret. +- Schermata in Profilo: "Attiva notifiche palloni" con richiesta di permesso. +- Invio schedulato tramite un endpoint `src/routes/api/public/promemoria-palloni.ts` protetto da secret, richiamato una volta al giorno da un job pianificato (pg_cron). +- Nota: su iPhone le notifiche push funzionano solo se l'app è installata dalla schermata Home. + +## Ordine di lavoro + +1. Attivare Lovable Cloud e creare tabelle + policy. +2. Server functions + UI del turno palloni (assegnazione manuale condivisa). +3. Rotazione automatica suggerita + storico turni. +4. Banner promemoria in-app. +5. Notifiche push + job giornaliero. diff --git a/.lovable/project.json b/.lovable/project.json new file mode 100644 index 0000000..b41fc8c --- /dev/null +++ b/.lovable/project.json @@ -0,0 +1,5 @@ +{ + "schemaVersion": 1, + "template": "tanstack_start_ts_current", + "revision": "tanstack_start_ts_current-9e5645c506e5" +} diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..be49b26 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,8 @@ +node_modules +dist +.output +.vinxi +pnpm-lock.yaml +package-lock.json +bun.lock +routeTree.gen.ts diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..90abee2 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,6 @@ +{ + "printWidth": 100, + "semi": true, + "singleQuote": false, + "trailingComma": "all" +} diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..36eb109 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,10 @@ + +> [!IMPORTANT] +> This project is connected to [Lovable](https://lovable.dev). Avoid rewriting +> published git history — force pushing, or rebasing/amending/squashing commits +> that are already pushed — as it rewrites history on Lovable's side and the +> user will likely lose their project history. +> +> Commits you push to the connected branch sync back to Lovable and show up in +> the editor, so keep the branch in a working state. + diff --git a/README.md b/README.md new file mode 100644 index 0000000..6510c88 --- /dev/null +++ b/README.md @@ -0,0 +1,118 @@ +# CRAP Volley Hub + +CrAPP – App per CRAP Volley + +Vorrei sviluppare un’app mobile per la squadra di pallavolo CRAP Volley, con nome CrAPP, disponibile per Android e iOS. L’obiettivo è creare un’app semplice da usare, moderna, bella da vedere e più coinvolgente rispetto a SportEasy, includendo anche funzionalità normalmente a pagamento in altre app. + +Funzionalità principali + +Gestione presenze/assenze + +Partite + +Allenamenti + +Eventi extra + +Stati rapidi: presente, assente, forse, in ritardo, indisponibile, infortunato + +Statistiche giocatori + +Presenze totali + +Presenze consecutive + +Gol/punti o altre statistiche specifiche della pallavolo + +MVP, migliori performance, medie stagione + +Statistiche partite + +Risultati + +Formazioni + +Andamento set + +Storico match + +Campionato in tempo reale + +Visualizzazione classifica e risultati + +Dati presi direttamente dal sito del CSI + +Aggiornamento automatico o importazione periodica + +Calendario squadra + +Allenamenti + +Partite + +Promemoria + +Vista mensile e lista eventi + +Profilo giocatore + +Foto + +Ruolo + +Statistiche personali + +Badge e obiettivi + +Idea di stile + +Interfaccia sportiva, pulita e moderna + +Molto mobile-first + +Design divertente, energico e più “premium” + +Inserire in seguito il logo della squadra + +Possibile uso di badge, livelli, premi e mini-gamification per rendere l’app più piacevole da usare + +Extra che sarebbe bello aggiungere + +Notifiche push per convocazioni e cambi orario + +Chat o bacheca squadra + +Report automatici dopo le partite + +Sondaggi rapidi per disponibilità + +Sezione “Best of the match” + +Obiettivi di gruppo per presenza e continuità + +Obiettivo finale + +Realizzare una app che non sia solo utile per la gestione della squadra, ma anche piacevole, coinvolgente e bella da usare ogni giorno. + +This project was built with [Lovable](https://lovable.dev). + +**Live app**: https://volley-cronos-app.lovable.app + +## Build with Lovable + +Continue developing this project in the [Lovable editor](https://lovable.dev/projects/8d07b0e4-6bd2-4a17-9dd2-bb2cf13f9f7c). + +- **Ship faster**: describe what you want to build and Lovable handles the code. +- **Stay in sync**: every change made in Lovable is committed straight to this repository. +- **Full ownership**: this code is yours. Push to `main` on GitHub and your changes sync back into Lovable, ready for your next prompt. + +## Development + +Prefer working locally? You need Node.js and npm — [install with nvm](https://github.com/nvm-sh/nvm#installing-and-updating). + +```sh +git clone +cd +npm i +npm run dev +``` diff --git a/bun.lock b/bun.lock new file mode 100644 index 0000000..56a4290 --- /dev/null +++ b/bun.lock @@ -0,0 +1,1115 @@ +{ + "lockfileVersion": 1, + "configVersion": 1, + "workspaces": { + "": { + "name": "tanstack_start_ts", + "dependencies": { + "@hookform/resolvers": "^5.2.2", + "@lovable.dev/cloud-auth-js": "^1.1.2", + "@radix-ui/react-accordion": "^1.2.12", + "@radix-ui/react-alert-dialog": "^1.1.15", + "@radix-ui/react-aspect-ratio": "^1.1.8", + "@radix-ui/react-avatar": "^1.1.11", + "@radix-ui/react-checkbox": "^1.3.3", + "@radix-ui/react-collapsible": "^1.1.12", + "@radix-ui/react-context-menu": "^2.2.16", + "@radix-ui/react-dialog": "^1.1.15", + "@radix-ui/react-dropdown-menu": "^2.1.16", + "@radix-ui/react-hover-card": "^1.1.15", + "@radix-ui/react-label": "^2.1.8", + "@radix-ui/react-menubar": "^1.1.16", + "@radix-ui/react-navigation-menu": "^1.2.14", + "@radix-ui/react-popover": "^1.1.15", + "@radix-ui/react-progress": "^1.1.8", + "@radix-ui/react-radio-group": "^1.3.8", + "@radix-ui/react-scroll-area": "^1.2.10", + "@radix-ui/react-select": "^2.2.6", + "@radix-ui/react-separator": "^1.1.8", + "@radix-ui/react-slider": "^1.3.6", + "@radix-ui/react-slot": "^1.2.4", + "@radix-ui/react-switch": "^1.2.6", + "@radix-ui/react-tabs": "^1.1.13", + "@radix-ui/react-toggle": "^1.1.10", + "@radix-ui/react-toggle-group": "^1.1.11", + "@radix-ui/react-tooltip": "^1.2.8", + "@supabase/supabase-js": "^2.111.0", + "@tailwindcss/vite": "^4.2.1", + "@tanstack/react-query": "^5.101.1", + "@tanstack/react-router": "^1.170.18", + "@tanstack/react-start": "^1.168.32", + "@tanstack/router-plugin": "^1.168.23", + "canvas-confetti": "^1.9.4", + "class-variance-authority": "^0.7.1", + "clsx": "^2.1.1", + "cmdk": "^1.1.1", + "date-fns": "^4.1.0", + "embla-carousel-react": "^8.6.0", + "input-otp": "^1.4.2", + "lucide-react": "^0.575.0", + "react": "^19.2.0", + "react-day-picker": "^9.14.0", + "react-dom": "^19.2.0", + "react-hook-form": "^7.71.2", + "react-resizable-panels": "^4.6.5", + "recharts": "^2.15.4", + "sonner": "^2.0.7", + "tailwind-merge": "^3.5.0", + "tailwindcss": "^4.2.1", + "tw-animate-css": "^1.3.4", + "vaul": "^1.1.2", + "vite-tsconfig-paths": "^6.0.2", + "zod": "^3.24.2", + }, + "devDependencies": { + "@eslint/js": "^9.32.0", + "@lovable.dev/vite-tanstack-config": "2.8.5", + "@types/canvas-confetti": "^1.9.0", + "@types/node": "^22.16.5", + "@types/react": "^19.2.0", + "@types/react-dom": "^19.2.0", + "@vitejs/plugin-react": "^5.2.0", + "eslint": "^9.32.0", + "eslint-config-prettier": "^10.1.1", + "eslint-plugin-prettier": "^5.2.6", + "eslint-plugin-react-hooks": "^5.2.0", + "eslint-plugin-react-refresh": "^0.4.20", + "globals": "^15.15.0", + "nitro": "3.0.260603-beta", + "prettier": "^3.7.3", + "typescript": "^5.8.3", + "typescript-eslint": "^8.56.1", + "vite": "^8.1.5", + }, + }, + }, + "packages": { + "@babel/code-frame": ["@babel/code-frame@7.29.7", "", { "dependencies": { "@babel/helper-validator-identifier": "^7.29.7", "js-tokens": "^4.0.0", "picocolors": "^1.1.1" } }, "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw=="], + + "@babel/compat-data": ["@babel/compat-data@7.29.7", "", {}, "sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg=="], + + "@babel/core": ["@babel/core@7.29.7", "", { "dependencies": { "@babel/code-frame": "^7.29.7", "@babel/generator": "^7.29.7", "@babel/helper-compilation-targets": "^7.29.7", "@babel/helper-module-transforms": "^7.29.7", "@babel/helpers": "^7.29.7", "@babel/parser": "^7.29.7", "@babel/template": "^7.29.7", "@babel/traverse": "^7.29.7", "@babel/types": "^7.29.7", "@jridgewell/remapping": "^2.3.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", "json5": "^2.2.3", "semver": "^6.3.1" } }, "sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA=="], + + "@babel/generator": ["@babel/generator@7.29.7", "", { "dependencies": { "@babel/parser": "^7.29.7", "@babel/types": "^7.29.7", "@jridgewell/gen-mapping": "^0.3.12", "@jridgewell/trace-mapping": "^0.3.28", "jsesc": "^3.0.2" } }, "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ=="], + + "@babel/helper-compilation-targets": ["@babel/helper-compilation-targets@7.29.7", "", { "dependencies": { "@babel/compat-data": "^7.29.7", "@babel/helper-validator-option": "^7.29.7", "browserslist": "^4.24.0", "lru-cache": "^5.1.1", "semver": "^6.3.1" } }, "sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g=="], + + "@babel/helper-globals": ["@babel/helper-globals@7.29.7", "", {}, "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA=="], + + "@babel/helper-module-imports": ["@babel/helper-module-imports@7.29.7", "", { "dependencies": { "@babel/traverse": "^7.29.7", "@babel/types": "^7.29.7" } }, "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g=="], + + "@babel/helper-module-transforms": ["@babel/helper-module-transforms@7.29.7", "", { "dependencies": { "@babel/helper-module-imports": "^7.29.7", "@babel/helper-validator-identifier": "^7.29.7", "@babel/traverse": "^7.29.7" }, "peerDependencies": { "@babel/core": "^7.0.0" } }, "sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg=="], + + "@babel/helper-plugin-utils": ["@babel/helper-plugin-utils@7.29.7", "", {}, "sha512-G7sHYigPY17oO5SYWnfD/0MTBwVR781S/JI643e/JhUYgVgWE/61SoW3NH9KWUKyKq5LVh3npif99Wkt6j86Jw=="], + + "@babel/helper-string-parser": ["@babel/helper-string-parser@7.29.7", "", {}, "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw=="], + + "@babel/helper-validator-identifier": ["@babel/helper-validator-identifier@7.29.7", "", {}, "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg=="], + + "@babel/helper-validator-option": ["@babel/helper-validator-option@7.29.7", "", {}, "sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw=="], + + "@babel/helpers": ["@babel/helpers@7.29.7", "", { "dependencies": { "@babel/template": "^7.29.7", "@babel/types": "^7.29.7" } }, "sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg=="], + + "@babel/parser": ["@babel/parser@7.29.7", "", { "dependencies": { "@babel/types": "^7.29.7" }, "bin": "./bin/babel-parser.js" }, "sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg=="], + + "@babel/plugin-transform-react-jsx-self": ["@babel/plugin-transform-react-jsx-self@7.29.7", "", { "dependencies": { "@babel/helper-plugin-utils": "^7.29.7" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, "sha512-TL0hMc9xzy86VD31nUiwzd5otRAcyEPcsegCxolO0PvcXuH1v0kECe/UIznYFihpkvU5wg/jk4v0TTEFfm53fw=="], + + "@babel/plugin-transform-react-jsx-source": ["@babel/plugin-transform-react-jsx-source@7.29.7", "", { "dependencies": { "@babel/helper-plugin-utils": "^7.29.7" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, "sha512-06IyK09H3wi4cGbhDBwp5gUGo0IKtnYa8tyTiephirPCK6fbobVGiXMMI5zLQ4aKEYP3wZ3ArU44o+8KMrSG/Q=="], + + "@babel/runtime": ["@babel/runtime@7.29.7", "", {}, "sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw=="], + + "@babel/template": ["@babel/template@7.29.7", "", { "dependencies": { "@babel/code-frame": "^7.29.7", "@babel/parser": "^7.29.7", "@babel/types": "^7.29.7" } }, "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg=="], + + "@babel/traverse": ["@babel/traverse@7.29.7", "", { "dependencies": { "@babel/code-frame": "^7.29.7", "@babel/generator": "^7.29.7", "@babel/helper-globals": "^7.29.7", "@babel/parser": "^7.29.7", "@babel/template": "^7.29.7", "@babel/types": "^7.29.7", "debug": "^4.3.1" } }, "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw=="], + + "@babel/types": ["@babel/types@7.29.7", "", { "dependencies": { "@babel/helper-string-parser": "^7.29.7", "@babel/helper-validator-identifier": "^7.29.7" } }, "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA=="], + + "@date-fns/tz": ["@date-fns/tz@1.5.0", "", {}, "sha512-lwYN/vDPeNRULcepoE/LO2Pgx+7/RV+S9ARfbc9lr2DtGkOD7pAiruHvbR1RX3Qyf6ja47EWJDMsNK5vK08DJg=="], + + "@emnapi/core": ["@emnapi/core@1.11.2", "", { "dependencies": { "@emnapi/wasi-threads": "1.2.2", "tslib": "^2.4.0" } }, "sha512-TC8MkTuZUtcTSiFeuC0ksCh9QIJ5+F21MvZ4Wn4ORfYaFJ/0dsiudv5tVkejgwZlwQ39jL9WWDe2lz8x0WglOA=="], + + "@emnapi/runtime": ["@emnapi/runtime@1.11.2", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-kyOl3X0DuTiT1h2ft8r2fYO8JYtU9a9Xis/zBSiGArNaagCOWx90N1k2wxp18czFDH+OgcWGb5ZP/XMt3dcyPA=="], + + "@emnapi/wasi-threads": ["@emnapi/wasi-threads@1.2.2", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA=="], + + "@eslint-community/eslint-utils": ["@eslint-community/eslint-utils@4.10.1", "", { "dependencies": { "eslint-visitor-keys": "^3.4.3" }, "peerDependencies": { "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, "sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg=="], + + "@eslint-community/regexpp": ["@eslint-community/regexpp@4.12.2", "", {}, "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew=="], + + "@eslint/config-array": ["@eslint/config-array@0.21.2", "", { "dependencies": { "@eslint/object-schema": "^2.1.7", "debug": "^4.3.1", "minimatch": "^3.1.5" } }, "sha512-nJl2KGTlrf9GjLimgIru+V/mzgSK0ABCDQRvxw5BjURL7WfH5uoWmizbH7QB6MmnMBd8cIC9uceWnezL1VZWWw=="], + + "@eslint/config-helpers": ["@eslint/config-helpers@0.4.2", "", { "dependencies": { "@eslint/core": "^0.17.0" } }, "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw=="], + + "@eslint/core": ["@eslint/core@0.17.0", "", { "dependencies": { "@types/json-schema": "^7.0.15" } }, "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ=="], + + "@eslint/eslintrc": ["@eslint/eslintrc@3.3.6", "", { "dependencies": { "ajv": "^6.14.0", "debug": "^4.3.2", "espree": "^10.0.1", "globals": "^14.0.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.3.0", "minimatch": "^3.1.5", "strip-json-comments": "^3.1.1" } }, "sha512-l2Ul9PrHsPCKcEY/ac7VgFj9D80C7S68sOKc618SyHDPK36s1XcFebXY0iTzUVn4Yq+YbwvSnDmCz9yxjX+QrA=="], + + "@eslint/js": ["@eslint/js@9.39.5", "", {}, "sha512-QywQuszQh77pIXCsq998c8hbhSTI/azTty1Z6N53dmAudKHhy573j3yvRLsX2BSp8YpLtoCEG8E9DJe+8zUh4A=="], + + "@eslint/object-schema": ["@eslint/object-schema@2.1.7", "", {}, "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA=="], + + "@eslint/plugin-kit": ["@eslint/plugin-kit@0.4.1", "", { "dependencies": { "@eslint/core": "^0.17.0", "levn": "^0.4.1" } }, "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA=="], + + "@floating-ui/core": ["@floating-ui/core@1.8.0", "", { "dependencies": { "@floating-ui/utils": "^0.2.12" } }, "sha512-0CIZ5itps/8x7BG8dEIhs53BvCUH2PCoogtakwRTut+Arm58sJooJ0AuZhLw2HJYIR5cMLNPBSS728sPho2khQ=="], + + "@floating-ui/dom": ["@floating-ui/dom@1.8.0", "", { "dependencies": { "@floating-ui/core": "^1.8.0", "@floating-ui/utils": "^0.2.12" } }, "sha512-yXSrzeHZBTZadLOlfyhCkJHNeLJnHRnRInwdZ40L7ZiaAtrBwoYlsDrX3v5zB1Utk7CLfzcOVnVVWoXEky7Ceg=="], + + "@floating-ui/react-dom": ["@floating-ui/react-dom@2.1.9", "", { "dependencies": { "@floating-ui/dom": "^1.8.0" }, "peerDependencies": { "react": ">=16.8.0", "react-dom": ">=16.8.0" } }, "sha512-JDjEFGCpImxDCA7JJKviA0M9+RtmJdj0m/NVU5IMgBK+AmZouAQQ7/+2GLH0GXXY0YMw9oXPB8hKdbPYg5QLYg=="], + + "@floating-ui/utils": ["@floating-ui/utils@0.2.12", "", {}, "sha512-HpCo8tmWzLVad5s2d19EhAz5zqrrQ6s69qd6moPMQvkOuSwDT1YgRfWSVuc4ennqrgv3OHppiOGMQ7oC13yIww=="], + + "@hookform/resolvers": ["@hookform/resolvers@5.5.7", "", { "dependencies": { "@standard-schema/utils": "^0.3.0" }, "peerDependencies": { "@sinclair/typebox": ">=0.25.24", "@standard-schema/spec": "^1.0.0", "@typeschema/main": ">=0.13.7", "@vinejs/vine": "^2.0.0 || ^3.0.0", "ajv": "^8.12.0", "ajv-errors": "^3.0.0", "ajv-formats": "^2.1.1", "arktype": "^2.0.0", "ata-validator": "^0.7.0", "class-transformer": ">=0.4.0", "class-validator": ">=0.12.0", "computed-types": "^1.0.0", "effect": "^3.10.3", "fluentvalidation-ts": "^3.0.0", "fp-ts": "^2.7.0", "io-ts": "^2.0.0", "joi": "^17.0.0", "nope-validator": ">=0.12.0", "react-hook-form": "^7.55.0", "superstruct": ">=0.12.0", "typanion": "^3.3.2", "valibot": ">=0.31.0 || ^1.0.0-beta.4 || ^1.0.0-rc", "vest": ">=3.0.0", "yup": "^1.0.0", "zod": "^3.25.0 || ^4.0.0" }, "optionalPeers": ["@sinclair/typebox", "@standard-schema/spec", "@typeschema/main", "@vinejs/vine", "ajv", "ajv-errors", "ajv-formats", "arktype", "ata-validator", "class-transformer", "class-validator", "computed-types", "effect", "fluentvalidation-ts", "fp-ts", "io-ts", "joi", "nope-validator", "superstruct", "typanion", "valibot", "vest", "yup", "zod"] }, "sha512-CyPCYV8/KlXfEXLWj8HHHhVsR/IZ6Ckm3b/a4fWtO/lRnRK1huqncb8LlAWrmpPRsse5glF5aVuDRMHEr3UGag=="], + + "@humanfs/core": ["@humanfs/core@0.19.2", "", { "dependencies": { "@humanfs/types": "^0.15.0" } }, "sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA=="], + + "@humanfs/node": ["@humanfs/node@0.16.8", "", { "dependencies": { "@humanfs/core": "^0.19.2", "@humanfs/types": "^0.15.0", "@humanwhocodes/retry": "^0.4.0" } }, "sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ=="], + + "@humanfs/types": ["@humanfs/types@0.15.0", "", {}, "sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q=="], + + "@humanwhocodes/module-importer": ["@humanwhocodes/module-importer@1.0.1", "", {}, "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA=="], + + "@humanwhocodes/retry": ["@humanwhocodes/retry@0.4.3", "", {}, "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ=="], + + "@jridgewell/gen-mapping": ["@jridgewell/gen-mapping@0.3.13", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA=="], + + "@jridgewell/remapping": ["@jridgewell/remapping@2.3.5", "", { "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ=="], + + "@jridgewell/resolve-uri": ["@jridgewell/resolve-uri@3.1.2", "", {}, "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw=="], + + "@jridgewell/sourcemap-codec": ["@jridgewell/sourcemap-codec@1.5.5", "", {}, "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og=="], + + "@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.31", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw=="], + + "@lovable.dev/cloud-auth-js": ["@lovable.dev/cloud-auth-js@1.1.2", "https://europe-west4-npm.pkg.dev/lovable-core-prod/sandbox-npm-cache/@lovable.dev/cloud-auth-js/-/cloud-auth-js-1.1.2.tgz", {}, "sha512-xz8ocewsgwkp8giau272/eWWU3XrchCg5uba4yQPPYtevHTXaVU3sD+fO1JjyPBHacVcOcwhmgUiU9TKHt63cg=="], + + "@lovable.dev/vite-plugin-dev-server-bridge": ["@lovable.dev/vite-plugin-dev-server-bridge@1.2.1", "", { "peerDependencies": { "vite": ">=5.0.0 <9.0.0" } }, "sha512-JdADRwpEJA5t0ggXbd96dND23Wsp69Af9lVSV5m7MnMGxJZlPgqAqz7HUKcfJESfI5M5yFZOl9e0x76JMMDOAg=="], + + "@lovable.dev/vite-plugin-hmr-gate": ["@lovable.dev/vite-plugin-hmr-gate@1.3.5", "https://europe-west1-npm.pkg.dev/lovable-core-prod/sandbox-npm-cache/@lovable.dev/vite-plugin-hmr-gate/-/vite-plugin-hmr-gate-1.3.5.tgz", { "peerDependencies": { "vite": ">=5.0.0 <9.0.0" } }, "sha512-LxCj6JIbYRQ6peMm2aVn/bhHLkwZ5eZ4Cn6gmh7LfjaplqZHlA24nhCowgt6ZLfbckc4d8tSy0He7H8EiFEXag=="], + + "@lovable.dev/vite-tanstack-config": ["@lovable.dev/vite-tanstack-config@2.8.5", "https://europe-west1-npm.pkg.dev/lovable-core-prod/sandbox-npm-cache/@lovable.dev/vite-tanstack-config/-/vite-tanstack-config-2.8.5.tgz", { "dependencies": { "@lovable.dev/vite-plugin-dev-server-bridge": "^1.2.1", "@lovable.dev/vite-plugin-hmr-gate": "^1.3.4", "@tanstack/devtools-vite": "^0.8.1", "lightningcss": "^1.30.0" }, "peerDependencies": { "@tailwindcss/vite": ">=4.0.0", "@tanstack/react-start": ">=1.100.0", "@vitejs/plugin-react": ">=4.0.0", "nitro": ">=3.0.260603-beta", "vite": ">=5.0.0 <9.0.0", "vite-tsconfig-paths": ">=6.0.0" }, "optionalPeers": ["nitro"] }, "sha512-qPNxEXjvRsrbJHKgHxuLWpRW/gu2nIM+62qjTUCbCno5nRPMKyJQNsgjh48qjAkS6T0MRIkY/3BENNXeGsi5hw=="], + + "@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@1.2.0", "", { "dependencies": { "@tybys/wasm-util": "^0.10.3" }, "peerDependencies": { "@emnapi/core": "^2.0.0-alpha.3", "@emnapi/runtime": "^2.0.0-alpha.3" } }, "sha512-kDoONqMa+VnZ4vvvu/ZUurpJ4gkZU57e7g69qpNgWhYcZFPUHZM2CEMKm+cG6ufDVALbjMvfmMjFVqaK7uEMnA=="], + + "@oozcitak/dom": ["@oozcitak/dom@2.0.2", "", { "dependencies": { "@oozcitak/infra": "^2.0.2", "@oozcitak/url": "^3.0.0", "@oozcitak/util": "^10.0.0" } }, "sha512-GjpKhkSYC3Mj4+lfwEyI1dqnsKTgwGy48ytZEhm4A/xnH/8z9M3ZVXKr/YGQi3uCLs1AEBS+x5T2JPiueEDW8w=="], + + "@oozcitak/infra": ["@oozcitak/infra@2.0.2", "", { "dependencies": { "@oozcitak/util": "^10.0.0" } }, "sha512-2g+E7hoE2dgCz/APPOEK5s3rMhJvNxSMBrP+U+j1OWsIbtSpWxxlUjq1lU8RIsFJNYv7NMlnVsCuHcUzJW+8vA=="], + + "@oozcitak/url": ["@oozcitak/url@3.0.0", "", { "dependencies": { "@oozcitak/infra": "^2.0.2", "@oozcitak/util": "^10.0.0" } }, "sha512-ZKfET8Ak1wsLAiLWNfFkZc/BraDccuTJKR6svTYc7sVjbR+Iu0vtXdiDMY4o6jaFl5TW2TlS7jbLl4VovtAJWQ=="], + + "@oozcitak/util": ["@oozcitak/util@10.0.0", "", {}, "sha512-hAX0pT/73190NLqBPPWSdBVGtbY6VOhWYK3qqHqtXQ1gK7kS2yz4+ivsN07hpJ6I3aeMtKP6J6npsEKOAzuTLA=="], + + "@oxc-parser/binding-android-arm-eabi": ["@oxc-parser/binding-android-arm-eabi@0.120.0", "", { "os": "android", "cpu": "arm" }, "sha512-WU3qtINx802wOl8RxAF1v0VvmC2O4D9M8Sv486nLeQ7iPHVmncYZrtBhB4SYyX+XZxj2PNnCcN+PW21jHgiOxg=="], + + "@oxc-parser/binding-android-arm64": ["@oxc-parser/binding-android-arm64@0.120.0", "", { "os": "android", "cpu": "arm64" }, "sha512-SEf80EHdhlbjZEgzeWm0ZA/br4GKMenDW3QB/gtyeTV1gStvvZeFi40ioHDZvds2m4Z9J1bUAUL8yn1/+A6iGg=="], + + "@oxc-parser/binding-darwin-arm64": ["@oxc-parser/binding-darwin-arm64@0.120.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-xVrrbCai8R8CUIBu3CjryutQnEYhZqs1maIqDvtUCFZb8vY33H7uh9mHpL3a0JBIKoBUKjPH8+rzyAeXnS2d6A=="], + + "@oxc-parser/binding-darwin-x64": ["@oxc-parser/binding-darwin-x64@0.120.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-xyHBbnJ6mydnQUH7MAcafOkkrNzQC6T+LXgDH/3InEq2BWl/g424IMRiJVSpVqGjB+p2bd0h0WRR8iIwzjU7rw=="], + + "@oxc-parser/binding-freebsd-x64": ["@oxc-parser/binding-freebsd-x64@0.120.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-UMnVRllquXUYTeNfFKmxTTEdZ/ix1nLl0ducDzMSREoWYGVIHnOOxoKMWlCOvRr9Wk/HZqo2rh1jeumbPGPV9A=="], + + "@oxc-parser/binding-linux-arm-gnueabihf": ["@oxc-parser/binding-linux-arm-gnueabihf@0.120.0", "", { "os": "linux", "cpu": "arm" }, "sha512-tkvn2CQ7QdcsMnpfiX3fd3wA3EFsWKYlcQzq9cFw/xc89Al7W6Y4O0FgLVkVQpo0Tnq/qtE1XfkJOnRRA9S/NA=="], + + "@oxc-parser/binding-linux-arm-musleabihf": ["@oxc-parser/binding-linux-arm-musleabihf@0.120.0", "", { "os": "linux", "cpu": "arm" }, "sha512-WN5y135Ic42gQDk9grbwY9++fDhqf8knN6fnP+0WALlAUh4odY/BDK1nfTJRSfpJD9P3r1BwU0m3pW2DU89whQ=="], + + "@oxc-parser/binding-linux-arm64-gnu": ["@oxc-parser/binding-linux-arm64-gnu@0.120.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-1GgQBCcXvFMw99EPdMy+4NZ3aYyXsxjf9kbUUg8HuAy3ZBXzOry5KfFEzT9nqmgZI1cuetvApkiJBZLAPo8uaw=="], + + "@oxc-parser/binding-linux-arm64-musl": ["@oxc-parser/binding-linux-arm64-musl@0.120.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-gmMQ70gsPdDBgpcErvJEoWNBr7bJooSLlvOBVBSGfOzlP5NvJ3bFvnUeZZ9d+dPrqSngtonf7nyzWUTUj/U+lw=="], + + "@oxc-parser/binding-linux-ppc64-gnu": ["@oxc-parser/binding-linux-ppc64-gnu@0.120.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-T/kZuU0ajop0xhzVMwH5r3srC9Nqup5HaIo+3uFjIN5uPxa0LvSxC1ZqP4aQGJVW5G0z8/nCkjIfSMS91P/wzw=="], + + "@oxc-parser/binding-linux-riscv64-gnu": ["@oxc-parser/binding-linux-riscv64-gnu@0.120.0", "", { "os": "linux", "cpu": "none" }, "sha512-vn21KXLAXzaI3N5CZWlBr1iWeXLl9QFIMor7S1hUjUGTeUuWCoE6JZB040/ZNDwf+JXPX8Ao9KbmJq9FMC2iGw=="], + + "@oxc-parser/binding-linux-riscv64-musl": ["@oxc-parser/binding-linux-riscv64-musl@0.120.0", "", { "os": "linux", "cpu": "none" }, "sha512-SUbUxlar007LTGmSLGIC5x/WJvwhdX+PwNzFJ9f/nOzZOrCFbOT4ikt7pJIRg1tXVsEfzk5mWpGO1NFiSs4PIw=="], + + "@oxc-parser/binding-linux-s390x-gnu": ["@oxc-parser/binding-linux-s390x-gnu@0.120.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-hYiPJTxyfJY2+lMBFk3p2bo0R9GN+TtpPFlRqVchL1qvLG+pznstramHNvJlw9AjaoRUHwp9IKR7UZQnRPGjgQ=="], + + "@oxc-parser/binding-linux-x64-gnu": ["@oxc-parser/binding-linux-x64-gnu@0.120.0", "", { "os": "linux", "cpu": "x64" }, "sha512-q+5jSVZkprJCIy3dzJpApat0InJaoxQLsJuD6DkX8hrUS61z2lHQ1Fe9L2+TYbKHXCLWbL0zXe7ovkIdopBGMQ=="], + + "@oxc-parser/binding-linux-x64-musl": ["@oxc-parser/binding-linux-x64-musl@0.120.0", "", { "os": "linux", "cpu": "x64" }, "sha512-D9QDDZNnH24e7X4ftSa6ar/2hCavETfW3uk0zgcMIrZNy459O5deTbWrjGzZiVrSWigGtlQwzs2McBP0QsfV1w=="], + + "@oxc-parser/binding-openharmony-arm64": ["@oxc-parser/binding-openharmony-arm64@0.120.0", "", { "os": "none", "cpu": "arm64" }, "sha512-TBU8ZwOUWAOUWVfmI16CYWbvh4uQb9zHnGBHsw5Cp2JUVG044OIY1CSHODLifqzQIMTXvDvLzcL89GGdUIqNrA=="], + + "@oxc-parser/binding-wasm32-wasi": ["@oxc-parser/binding-wasm32-wasi@0.120.0", "", { "dependencies": { "@napi-rs/wasm-runtime": "^1.1.1" }, "cpu": "none" }, "sha512-WG/FOZgDJCpJnuF3ToG/K28rcOmSY7FmFmfBKYb2fmLyhDzPpUldFGV7/Fz4ru0Iz/v4KPmf8xVgO8N3lO4KHA=="], + + "@oxc-parser/binding-win32-arm64-msvc": ["@oxc-parser/binding-win32-arm64-msvc@0.120.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-1T0HKGcsz/BKo77t7+89L8Qvu4f9DoleKWHp3C5sJEcbCjDOLx3m9m722bWZTY+hANlUEs+yjlK+lBFsA+vrVQ=="], + + "@oxc-parser/binding-win32-ia32-msvc": ["@oxc-parser/binding-win32-ia32-msvc@0.120.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-L7vfLzbOXsjBXV0rv/6Y3Jd9BRjPeCivINZAqrSyAOZN3moCopDN+Psq9ZrGNZtJzP8946MtlRFZ0Als0wBCOw=="], + + "@oxc-parser/binding-win32-x64-msvc": ["@oxc-parser/binding-win32-x64-msvc@0.120.0", "", { "os": "win32", "cpu": "x64" }, "sha512-ys+upfqNtSu58huAhJMBKl3XCkGzyVFBlMlGPzHeFKgpFF/OdgNs1MMf8oaJIbgMH8ZxgGF7qfue39eJohmKIg=="], + + "@oxc-project/types": ["@oxc-project/types@0.140.0", "", {}, "sha512-h5LUOzGArYemnW1NMz/DuuQhBi96J6JL2Bk8zE4kvqxB5Sg3jxmCiH4uyOWHDkiKSt5vWlG4FIwCR/DbstcNRQ=="], + + "@pkgr/core": ["@pkgr/core@0.3.6", "", {}, "sha512-SEeaJLb3qBNF/OaXnaR1NmmBbFYk1zC0ZH/52fATcRPLFg/p791YrcyFFy44Bo9sLaGuSuLp5Q6axbb/O+v/RA=="], + + "@radix-ui/number": ["@radix-ui/number@1.1.3", "", {}, "sha512-Road2bidD0uu/1BGDOWNdPI06g0lIRy6IF9GZcIrDK2KGItfor8IQwQa+yM2ERgHM1MmHxaxpTzk0/Jp42lNfA=="], + + "@radix-ui/primitive": ["@radix-ui/primitive@1.1.7", "", {}, "sha512-rqWnm76nYT8HoNNqEjpgJ7Pw/DrBj5iBTrmEPo6HTX5+VJyBNOqTdv4g89G63HuR5g0AaENoAcH7Is5fF2kZ8Q=="], + + "@radix-ui/react-accordion": ["@radix-ui/react-accordion@1.2.20", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-collapsible": "1.1.20", "@radix-ui/react-collection": "1.1.15", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-direction": "1.1.4", "@radix-ui/react-id": "1.1.4", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-controllable-state": "1.2.6" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-jDhG9FvAEnlhnjrsINbNXcUa4G+L1KqSkJSunkbKEzFRcAb52jvM0PjPxPRvhe1HNc5F5yc0yzzWeeqlH4yBIg=="], + + "@radix-ui/react-alert-dialog": ["@radix-ui/react-alert-dialog@1.1.23", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-dialog": "1.1.23", "@radix-ui/react-primitive": "2.1.10" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-VAYOiQRqj3GPpYJE0I9J+X8Ip05cyVlNdKOFeiGS2Ou1HHGfpl0BxOyZm6nmVDyU+W+NF3/XLzmjHmVGydhwgA=="], + + "@radix-ui/react-arrow": ["@radix-ui/react-arrow@1.1.15", "", { "dependencies": { "@radix-ui/react-primitive": "2.1.10" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-v4zggRcjadnI+ClKDuijlQEW4tw3NoaeHc/PwpKnLoLLKNUG4InLegkstooLcRIUWCs+8L22dGURCVuFfOKfnA=="], + + "@radix-ui/react-aspect-ratio": ["@radix-ui/react-aspect-ratio@1.1.15", "", { "dependencies": { "@radix-ui/react-primitive": "2.1.10" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-fy+dyVR+90nelK8rqIznFlxzx7uPcGbhxH8Nfr2bHb4UfSe+e3hklOC0luK0hDwVwnRX7xTRySpsrQVeW+/oNQ=="], + + "@radix-ui/react-avatar": ["@radix-ui/react-avatar@1.2.6", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-callback-ref": "1.1.4", "@radix-ui/react-use-is-hydrated": "0.1.3", "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-4ULOTJ/mqy2hT9GlWa/MFHxHSvH3nJzHnZM1waNsc5Bonv7i70aNenghXmD97S6OJ81ekXONGGt4nT1r0PfEdA=="], + + "@radix-ui/react-checkbox": ["@radix-ui/react-checkbox@1.3.11", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-presence": "1.1.10", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-controllable-state": "1.2.6", "@radix-ui/react-use-size": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-Gnptr9pDDQxD3hgq2dtPbtrp/c2qH1mBwIzw3X/ivrMb2e1t0jMTi606fVEqFPaQR1ggXIVQWKj3P2WW9v7zGQ=="], + + "@radix-ui/react-collapsible": ["@radix-ui/react-collapsible@1.1.20", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-id": "1.1.4", "@radix-ui/react-presence": "1.1.10", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-controllable-state": "1.2.6", "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-mcGesGplBnzN2sbvJETzpCNfSMyPnb29q1GRLU+Ib7bJrpIG2ywmRoh2V5VbA2uNvKikKUlVbAPks7JDjz4A8Q=="], + + "@radix-ui/react-collection": ["@radix-ui/react-collection@1.1.15", "", { "dependencies": { "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-slot": "1.3.3" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-9W+B9NPF0NaaPh/1NJd3+KqsnlLqU9H7T2rvww+fp+T/evVXdNAyYcnfRQZFOjkR1ajQp3yORlqnI8soawLvNA=="], + + "@radix-ui/react-compose-refs": ["@radix-ui/react-compose-refs@1.1.5", "", { "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-+48PbAAbq3didjJxa+OaWY2ZwgAKsNiRGyeHKszblZMQ+kcpd9pAaT11cMkGEie0vsOi3QdeTE6d5Fe3Gn61kA=="], + + "@radix-ui/react-context": ["@radix-ui/react-context@1.2.2", "", { "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-RHCUGwKHDr0hDGg4X7ma4JG4/+12qxw8rkh5QKdDldlCvtja6nUx1Ef/8HVrJze81lEsgLQlqjzjGNHantgnQA=="], + + "@radix-ui/react-context-menu": ["@radix-ui/react-context-menu@2.3.7", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-menu": "2.1.24", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-controllable-state": "1.2.6" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-CtXP35dxaB5T3zXSd+E3uHe/QpXcpYnZmxp6OaIbfthtfW4wyb77M23BG+bwIJDtsMwEP/YssdsmNyZu7jhWew=="], + + "@radix-ui/react-dialog": ["@radix-ui/react-dialog@1.1.23", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-dismissable-layer": "1.1.19", "@radix-ui/react-focus-guards": "1.1.6", "@radix-ui/react-focus-scope": "1.1.16", "@radix-ui/react-id": "1.1.4", "@radix-ui/react-portal": "1.1.17", "@radix-ui/react-presence": "1.1.10", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-slot": "1.3.3", "@radix-ui/react-use-controllable-state": "1.2.6", "@radix-ui/react-use-layout-effect": "1.1.4", "aria-hidden": "^1.2.4", "react-remove-scroll": "^2.7.2" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-Ksw4WeROkO4rC9k/onilX/Ao2Cr1ku1unMNH+XSCcP4jSXYu7HDsg9n4ojMjVb22XpYjAQ9qfrFlVbru1vXDUA=="], + + "@radix-ui/react-direction": ["@radix-ui/react-direction@1.1.4", "", { "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-5pzg4FGQNpExhnhT2zlrP1wZFaYCd1K0nYWoFAdcYoYK868IEigqMX3B3f8yIoRlAhAeDWciLI6ZdCKHF9P4Vg=="], + + "@radix-ui/react-dismissable-layer": ["@radix-ui/react-dismissable-layer@1.1.19", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-callback-ref": "1.1.4", "@radix-ui/react-use-effect-event": "0.0.5" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-8g4pfOL9HoKKLWGiypT+dphVqjFfmcXO5GBnhsG6zI+lxAx/8feQpr+1LSN8Re3hiZ+XkLNS4O9ztK11/LzQ6w=="], + + "@radix-ui/react-dropdown-menu": ["@radix-ui/react-dropdown-menu@2.1.24", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-id": "1.1.4", "@radix-ui/react-menu": "2.1.24", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-controllable-state": "1.2.6" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-geq8l2rJkxvkXsT9RMgtUE3P8pITFpTsvYpbySi1IH4fZEABD/Gp85myayFgxk0ktljGMJnCbeFkyTusvSvv7g=="], + + "@radix-ui/react-focus-guards": ["@radix-ui/react-focus-guards@1.1.6", "", { "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-RNOJjfZMTyBM6xYmV3IVGXkPjIhcBAuv48POevAXwrGJhkWZ9p1rFoIS1JFooPuT193AZmRsCPhpoVJxx6OPoQ=="], + + "@radix-ui/react-focus-scope": ["@radix-ui/react-focus-scope@1.1.16", "", { "dependencies": { "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-callback-ref": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-wmRZ2WWLvmt6KHy2rNPOdPUjwq5xOHY02+m+udwJTn0aNIox/rkskAvJTyTLGhPK6KgrUjlJUJpgmx/+wFiFIQ=="], + + "@radix-ui/react-hover-card": ["@radix-ui/react-hover-card@1.1.23", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-dismissable-layer": "1.1.19", "@radix-ui/react-popper": "1.3.7", "@radix-ui/react-portal": "1.1.17", "@radix-ui/react-presence": "1.1.10", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-controllable-state": "1.2.6" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-H8qONfZd3ltrU3+jHCIgITbWo6e1iTKvP9DHdrvYbX48ooRM5FjEDTn16AMwdfuOGkWdZEhpl3PLL/Wk/AnHDQ=="], + + "@radix-ui/react-id": ["@radix-ui/react-id@1.1.4", "", { "dependencies": { "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-TMQp2llA+RYn7JcjnrMnz7wN4pcVttPZnRZo52PLQsoLVKzNlVwUeHmfePgTgRluXFvlD3GD5g5MOVVTJCO0qA=="], + + "@radix-ui/react-label": ["@radix-ui/react-label@2.1.15", "", { "dependencies": { "@radix-ui/react-primitive": "2.1.10" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-o/rdYEwZTTo5tjknnPeyQFU45kUC4i/XyeDPP+HGyi6XqpOP6Zf5Ya5vh/Yfe9Id5JiuWnnAx2XqIeD3UYZt0g=="], + + "@radix-ui/react-menu": ["@radix-ui/react-menu@2.1.24", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-collection": "1.1.15", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-direction": "1.1.4", "@radix-ui/react-dismissable-layer": "1.1.19", "@radix-ui/react-focus-guards": "1.1.6", "@radix-ui/react-focus-scope": "1.1.16", "@radix-ui/react-id": "1.1.4", "@radix-ui/react-popper": "1.3.7", "@radix-ui/react-portal": "1.1.17", "@radix-ui/react-presence": "1.1.10", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-roving-focus": "1.1.19", "@radix-ui/react-slot": "1.3.3", "@radix-ui/react-use-callback-ref": "1.1.4", "aria-hidden": "^1.2.4", "react-remove-scroll": "^2.7.2" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-uW7RVuU6Lp/ZtfeY4b3kL32zccgEWvPv1+cf17ubYzHa9cL8AHokmk36cG/XEiH/smbQvumnieXX9j/e9RqJWA=="], + + "@radix-ui/react-menubar": ["@radix-ui/react-menubar@1.1.24", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-collection": "1.1.15", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-direction": "1.1.4", "@radix-ui/react-id": "1.1.4", "@radix-ui/react-menu": "2.1.24", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-roving-focus": "1.1.19", "@radix-ui/react-use-controllable-state": "1.2.6" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-eeVs0vf7cuqXaM0qLQCPcufImiJNVBXdJDLu7ZGYl2732UH23Qat/foNGrr6vYV3/DdTsBqASoggUFgH14OcZA=="], + + "@radix-ui/react-navigation-menu": ["@radix-ui/react-navigation-menu@1.2.22", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-collection": "1.1.15", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-direction": "1.1.4", "@radix-ui/react-dismissable-layer": "1.1.19", "@radix-ui/react-id": "1.1.4", "@radix-ui/react-presence": "1.1.10", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-callback-ref": "1.1.4", "@radix-ui/react-use-controllable-state": "1.2.6", "@radix-ui/react-use-layout-effect": "1.1.4", "@radix-ui/react-use-previous": "1.1.4", "@radix-ui/react-visually-hidden": "1.2.11" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-ou7iLEJ+yrhQndkkA4U21XIdS/CS45F4iXIkTZcb6/Ne9EMsOuDudVmCwmDnfFZZ+y1FZqXRNSIgBy+YMvZVZg=="], + + "@radix-ui/react-popover": ["@radix-ui/react-popover@1.1.23", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-dismissable-layer": "1.1.19", "@radix-ui/react-focus-guards": "1.1.6", "@radix-ui/react-focus-scope": "1.1.16", "@radix-ui/react-id": "1.1.4", "@radix-ui/react-popper": "1.3.7", "@radix-ui/react-portal": "1.1.17", "@radix-ui/react-presence": "1.1.10", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-slot": "1.3.3", "@radix-ui/react-use-controllable-state": "1.2.6", "aria-hidden": "^1.2.4", "react-remove-scroll": "^2.7.2" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-mw58MrBlyHWFisTOYignD0vf/3gdcgAR+9of1s9G/38CbFiUwH1nCDkc0AUM9IrXFgN5Ue8n45j9WCgyM1sbiQ=="], + + "@radix-ui/react-popper": ["@radix-ui/react-popper@1.3.7", "", { "dependencies": { "@floating-ui/react-dom": "^2.0.0", "@radix-ui/react-arrow": "1.1.15", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-callback-ref": "1.1.4", "@radix-ui/react-use-layout-effect": "1.1.4", "@radix-ui/react-use-rect": "1.1.4", "@radix-ui/react-use-size": "1.1.4", "@radix-ui/rect": "1.1.3" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-UsJrrd7w4wuKKTdvd/DNERVlwSlUcyXzjhyDwBk+3aPOsCjOY6ZSbxuw8E6lZTjjfP8Cpd0J8VVkrYUWyGYXyg=="], + + "@radix-ui/react-portal": ["@radix-ui/react-portal@1.1.17", "", { "dependencies": { "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-vKQLcWypUnwZVvfV7UkGahH2g6ySe8M8R+zYBwPrv5byZ9QAW6cQVvNKo7GgmD+p8aYb6D9JBuvy8/WhOno2wQ=="], + + "@radix-ui/react-presence": ["@radix-ui/react-presence@1.1.10", "", { "dependencies": { "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-3wyzCQ6+ubRA+D4uv9m95JYLXxmOHp05qjrkjeA7uKHHtjpPggQzc6DAb0URl7j67oR0K2foO4ip27TiX037Bw=="], + + "@radix-ui/react-primitive": ["@radix-ui/react-primitive@2.1.10", "", { "dependencies": { "@radix-ui/react-slot": "1.3.3" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-MucOnzh6hR5mid6VpkbglRAMYMjKLqRnGBbjXkzjK52fuQDd1qbkx78a5P40mkcnVXJdEVxm26E9OPAiUq7nBg=="], + + "@radix-ui/react-progress": ["@radix-ui/react-progress@1.1.16", "", { "dependencies": { "@radix-ui/react-context": "1.2.2", "@radix-ui/react-primitive": "2.1.10" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-5XnomAsoZZCY+KNTxbIghpGqPruZvKFNlvcAljVAOdDRDsH4/OZQxhtwo5wdtoDM5R6MhJBb2sPnDuRFep3lzg=="], + + "@radix-ui/react-radio-group": ["@radix-ui/react-radio-group@1.4.7", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-direction": "1.1.4", "@radix-ui/react-presence": "1.1.10", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-roving-focus": "1.1.19", "@radix-ui/react-use-controllable-state": "1.2.6", "@radix-ui/react-use-size": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-cgYFEkntCxppHZgtSZ+7vh0wbZQ+IC7PPMw8DSnRG27B6kDd32/Zw0OJt7dGDigCoprMuWHjg2PvUn3PYvPFoQ=="], + + "@radix-ui/react-roving-focus": ["@radix-ui/react-roving-focus@1.1.19", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-collection": "1.1.15", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-direction": "1.1.4", "@radix-ui/react-id": "1.1.4", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-callback-ref": "1.1.4", "@radix-ui/react-use-controllable-state": "1.2.6", "@radix-ui/react-use-is-hydrated": "0.1.3", "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-V9jI6hDjT7l3jsCQD9bLNvDLM3tH/gdbOTp7Tefp3hbbgCGQoK7tUvrWiRlcoBHIZ809ElXwNQwVo0B98LuTXQ=="], + + "@radix-ui/react-scroll-area": ["@radix-ui/react-scroll-area@1.2.18", "", { "dependencies": { "@radix-ui/number": "1.1.3", "@radix-ui/primitive": "1.1.7", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-direction": "1.1.4", "@radix-ui/react-presence": "1.1.10", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-callback-ref": "1.1.4", "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-Zn5Cd171wxsO3Dfg8HaW6RifTb9CYTKQJHs/G4+LN1GfmJpaQMZQyQxMprVPHpaz7QY4l9BxK2JwQuzHsXC8nA=="], + + "@radix-ui/react-select": ["@radix-ui/react-select@2.3.7", "", { "dependencies": { "@radix-ui/number": "1.1.3", "@radix-ui/primitive": "1.1.7", "@radix-ui/react-collection": "1.1.15", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-direction": "1.1.4", "@radix-ui/react-dismissable-layer": "1.1.19", "@radix-ui/react-focus-guards": "1.1.6", "@radix-ui/react-focus-scope": "1.1.16", "@radix-ui/react-id": "1.1.4", "@radix-ui/react-popper": "1.3.7", "@radix-ui/react-portal": "1.1.17", "@radix-ui/react-presence": "1.1.10", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-slot": "1.3.3", "@radix-ui/react-use-callback-ref": "1.1.4", "@radix-ui/react-use-controllable-state": "1.2.6", "@radix-ui/react-use-layout-effect": "1.1.4", "@radix-ui/react-use-previous": "1.1.4", "@radix-ui/react-visually-hidden": "1.2.11", "aria-hidden": "^1.2.4", "react-remove-scroll": "^2.7.2" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-WFGImkmbzcfxeIwq/+4HvRN0pizBwbwQUED4I13ezQsDdfl38ZntN6TmR8XaSzPBqoCToe8rF75j6NPNDSzhbg=="], + + "@radix-ui/react-separator": ["@radix-ui/react-separator@1.1.15", "", { "dependencies": { "@radix-ui/react-primitive": "2.1.10" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-jOLO4lssEzWpoDu7G+Ze4VjwMRUBt291pnZD0gmalREZipnTX3wadQo7Fy48GCTfe14/YRN6rw/rOJqrE85Wxw=="], + + "@radix-ui/react-slider": ["@radix-ui/react-slider@1.4.7", "", { "dependencies": { "@radix-ui/number": "1.1.3", "@radix-ui/primitive": "1.1.7", "@radix-ui/react-collection": "1.1.15", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-direction": "1.1.4", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-controllable-state": "1.2.6", "@radix-ui/react-use-layout-effect": "1.1.4", "@radix-ui/react-use-previous": "1.1.4", "@radix-ui/react-use-size": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-mTSLf1GC/C0moWjTbvCM6Qn/gBjvlFt1azuWF2v7MN5C3Zq2U2J2lN3ZEYkpujuOU5Ro7A28wkviSxaKnG0BYg=="], + + "@radix-ui/react-slot": ["@radix-ui/react-slot@1.3.3", "", { "dependencies": { "@radix-ui/react-compose-refs": "1.1.5" }, "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-qx7oqnYbxnK9kYI9m317qmFmEgo6ywqWvbTogdj7cL9p3/yx4M48p7Rnw5z3H890cL/ow/EeWJsuTykeZVXP5Q=="], + + "@radix-ui/react-switch": ["@radix-ui/react-switch@1.3.7", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-controllable-state": "1.2.6", "@radix-ui/react-use-size": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-48tB/4dn2UVLBCYhTu9AuR63IHl73l/qLbLgxd86noTUor4/K4LFDAcYjK+isP5313qxaFpjPVogE7+Y0/V3Kw=="], + + "@radix-ui/react-tabs": ["@radix-ui/react-tabs@1.1.21", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-direction": "1.1.4", "@radix-ui/react-id": "1.1.4", "@radix-ui/react-presence": "1.1.10", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-roving-focus": "1.1.19", "@radix-ui/react-use-controllable-state": "1.2.6" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-UKxJlZid7FVtsk/WTxj4i4uSEgj2Au+KBbS7SQyTlzMhhn+86Cz3tISZdTa87bfEfcuvZezf2ZsxD4xuEKtkog=="], + + "@radix-ui/react-toggle": ["@radix-ui/react-toggle@1.1.18", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-use-controllable-state": "1.2.6" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-7lonPlKfSacd20GlOBx2ltuVKz9oqWYZz+oMQyOltw6t1y2nyftj2ZmwwUHYn49kqfDWcp8dNZm5NgV+5Z+mug=="], + + "@radix-ui/react-toggle-group": ["@radix-ui/react-toggle-group@1.1.19", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-direction": "1.1.4", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-roving-focus": "1.1.19", "@radix-ui/react-toggle": "1.1.18", "@radix-ui/react-use-controllable-state": "1.2.6" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-OtnwuSVjd1Ofi+AdnvhsjQdyuhCDwYs1w9RyB5BN/OavXOVQo42SYqQjwUnbPnaiPFBpQ9aX70dWeee+v2oBLA=="], + + "@radix-ui/react-tooltip": ["@radix-ui/react-tooltip@1.2.16", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-compose-refs": "1.1.5", "@radix-ui/react-context": "1.2.2", "@radix-ui/react-dismissable-layer": "1.1.19", "@radix-ui/react-id": "1.1.4", "@radix-ui/react-popper": "1.3.7", "@radix-ui/react-portal": "1.1.17", "@radix-ui/react-presence": "1.1.10", "@radix-ui/react-primitive": "2.1.10", "@radix-ui/react-slot": "1.3.3", "@radix-ui/react-use-controllable-state": "1.2.6", "@radix-ui/react-use-layout-effect": "1.1.4", "@radix-ui/react-visually-hidden": "1.2.11" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-6EamKFRRnlpdadndbZ6LMwycfwkwPte1B42hs6QA0gYhjaOKqW4PZ4pjaW9UrlDX5eVt/OjncE7BFTPL5nmZhg=="], + + "@radix-ui/react-use-callback-ref": ["@radix-ui/react-use-callback-ref@1.1.4", "", { "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-R6OUY2e2fA6Yn6s+VSx5KBV6Nx8LQEhu+cz7LCej18rQ1HLyg9PSC9jP/ZNx0o6FAIK9c0F1kHylzSxKsdlkrQ=="], + + "@radix-ui/react-use-controllable-state": ["@radix-ui/react-use-controllable-state@1.2.6", "", { "dependencies": { "@radix-ui/primitive": "1.1.7", "@radix-ui/react-use-effect-event": "0.0.5", "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-uEQJGT97ZA/TgP/Hydw47lHu+/vQj6z/0jA+WeTbK1o9Rx45GImjpD0tc3W5ad3D6XTSR6e1yEO0FvGq6WQfVQ=="], + + "@radix-ui/react-use-effect-event": ["@radix-ui/react-use-effect-event@0.0.5", "", { "dependencies": { "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-7cshFL8HGS/7HEiHH+9kL9HBwp2sa9yX18Knwek6KYWmXwM7pegMgta2AXMQKI+rq3JnfSj9x8wYqFMTdG1Jgg=="], + + "@radix-ui/react-use-is-hydrated": ["@radix-ui/react-use-is-hydrated@0.1.3", "", { "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-umO/aJ+82CpOnhDZUTbILCQf7kU/g0iv+oGs/Q8jw7IkhWBzaEP4sA268PhFAJTFetbwp3ICc6ktpI4TqtxcIw=="], + + "@radix-ui/react-use-layout-effect": ["@radix-ui/react-use-layout-effect@1.1.4", "", { "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-K20DkRkUwDnxEYMBPcg3Y6voLkEy5p5QQmszZgLngKKiC7dzBR/aEuK3w1qlx2JWDUNH6FluahYdgR3BP+QbYw=="], + + "@radix-ui/react-use-previous": ["@radix-ui/react-use-previous@1.1.4", "", { "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-XoSLhbRbqxFtgJoi2fNHA3C6pDlY34x508vUpUGoFZfvePfHXHbE1lC4FYFMnJWgiCRroSTw6fOsXQoVS9RwZg=="], + + "@radix-ui/react-use-rect": ["@radix-ui/react-use-rect@1.1.4", "", { "dependencies": { "@radix-ui/rect": "1.1.3" }, "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-cSOCh6JlkmfjLyNcLiu2nB4v+nm+dkZ+Q5KHWk/soo4U7ZLiEQFKHK9/YmtBHjfCEaU43IBKQOc4/uJmCaiCTQ=="], + + "@radix-ui/react-use-size": ["@radix-ui/react-use-size@1.1.4", "", { "dependencies": { "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-D3anSY15EJoxrihpsXI6SMrmmonnQtR2ni7arO+Lfdg3O95b9hNXxONk8jA5C8ANdF/h5HMAxejgs8PWJ6rlhw=="], + + "@radix-ui/react-visually-hidden": ["@radix-ui/react-visually-hidden@1.2.11", "", { "dependencies": { "@radix-ui/react-primitive": "2.1.10" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "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" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-NFS86RYYZb4/exihaESBGOpMJFz8MGLAfu3mOBSGByVnVPC9JPASfYubxd/8KbkQK0sYAv8lVQDEQukDX/qXvQ=="], + + "@radix-ui/rect": ["@radix-ui/rect@1.1.3", "", {}, "sha512-JtyZR+mqgBibTo8xea3B6ZRmzZiM/YeVBtUkas6zMuXjAlfIFIW2FgqeM9eLyvEaYX66vr6DJMK+4U6LV0KhNw=="], + + "@rolldown/binding-android-arm64": ["@rolldown/binding-android-arm64@1.2.0", "", { "os": "android", "cpu": "arm64" }, "sha512-9yB1l95IrJuNGDFdOYe79vdApdz6WWBCObE+rQ2LUliYUlcyFwSYIb2xb5/Ifw7dAtMy2ZqNyd8QTSOc7duAKw=="], + + "@rolldown/binding-darwin-arm64": ["@rolldown/binding-darwin-arm64@1.2.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-pexNaW9ACLUOaBITOpU6qVu4VrsOFIjTv6bzgu0YUATo4eUJx0V605PxwZfndpPOn0ilqGqvGQ0M8UW0IE24jg=="], + + "@rolldown/binding-darwin-x64": ["@rolldown/binding-darwin-x64@1.2.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-NqKYaq0355ZmNMG4QGpxtEDxsc7tGDhjhCm4PpE0cwnBW+5Il95LJyq414niEiaKLVjnVHBEjSo1wngKxJNiFw=="], + + "@rolldown/binding-freebsd-x64": ["@rolldown/binding-freebsd-x64@1.2.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-3vPoHzh6eBTz9IbB0/qZdSr0Qeks2echn+I4cHu2joV74VriPDdldswksEDzrl1mBB+oPRi+67+3Ib59paxIPQ=="], + + "@rolldown/binding-linux-arm-gnueabihf": ["@rolldown/binding-linux-arm-gnueabihf@1.2.0", "", { "os": "linux", "cpu": "arm" }, "sha512-E6NNefZ1bUVmKJq2tJkf45J4Zyczj7qm9rUT7NY+Xo2474Y13qWAwc2tvBt0BAVbmtXR1llkxXg0Ou1jbDf2SQ=="], + + "@rolldown/binding-linux-arm64-gnu": ["@rolldown/binding-linux-arm64-gnu@1.2.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-D+TgkdgM1vu+7/Fpf8+v0ARW+RXEP9Ccazgm8zQ4JFFd9Q7SrYQ2TakU5S5ihazQDgpKyAgZDOcIFsvoHmTZ8w=="], + + "@rolldown/binding-linux-arm64-musl": ["@rolldown/binding-linux-arm64-musl@1.2.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-wUqdwJBbAv0APN87GecstdMUtLjjNTs0hBALpxETD73mccFxdmt/XeizXDtN5RAlBwNKmI+Tg+blect2G+8IeQ=="], + + "@rolldown/binding-linux-ppc64-gnu": ["@rolldown/binding-linux-ppc64-gnu@1.2.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-9DtF35qR9/NrfhM4oxLplCzVVjE+KKm8Pjemi0i/sdhAWkUasjmSo8WTTubNJClhSHCfyk2yeyoXDQEDPtDAAw=="], + + "@rolldown/binding-linux-s390x-gnu": ["@rolldown/binding-linux-s390x-gnu@1.2.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-RzuHrBh8X8Hntd2N4VR02QGEciq/9JhcZoTpR/Cee6otRrlILGCf3cg2ygHuih+ZebUnWmMrDX6ITI85btO6rQ=="], + + "@rolldown/binding-linux-x64-gnu": ["@rolldown/binding-linux-x64-gnu@1.2.0", "", { "os": "linux", "cpu": "x64" }, "sha512-MK7L0018jjh1jR3mh21G2j1zAVcpscJBlPo2z19pRjv2XOYGRhaV4LyiD8HO6nCDdZln9IFgCMIV5yt4E3klGQ=="], + + "@rolldown/binding-linux-x64-musl": ["@rolldown/binding-linux-x64-musl@1.2.0", "", { "os": "linux", "cpu": "x64" }, "sha512-gyrxLQ9NfGb/9LoVnC4kb9miUghw1mghnkfYvNHSnVIXriabnfgGPUP4RLcJm87q3KgYz4FYUG8IDiWUT+CpSw=="], + + "@rolldown/binding-openharmony-arm64": ["@rolldown/binding-openharmony-arm64@1.2.0", "", { "os": "none", "cpu": "arm64" }, "sha512-/6VFMQGRmrhP77KXDC+StIxGzcNp5JOIyYtw0CQ8gPlzhpiIRucYfoM5FaFamHd5BJYIdH86yfP46l1p3WdrFA=="], + + "@rolldown/binding-wasm32-wasi": ["@rolldown/binding-wasm32-wasi@1.2.0", "", { "dependencies": { "@emnapi/core": "1.11.2", "@emnapi/runtime": "1.11.2", "@napi-rs/wasm-runtime": "^1.1.6" }, "cpu": "none" }, "sha512-rwdbUL465kisF24WEJLvP3JrEG6E5GRuIHt5wpMwHGERtHe4Wm2CIvtf5gTBgr2tGOHKh5NdKEAFS2VkOPE91g=="], + + "@rolldown/binding-win32-arm64-msvc": ["@rolldown/binding-win32-arm64-msvc@1.2.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-+5suHwRiKGmhwyUaNT8a5QbrBvLFh2DbO910TEmGRH1aSxwrCezodvGQnulv4uiWEIv1Kq4ypRsJ5+O+ry1DiA=="], + + "@rolldown/binding-win32-x64-msvc": ["@rolldown/binding-win32-x64-msvc@1.2.0", "", { "os": "win32", "cpu": "x64" }, "sha512-WfFv6/qGufotqBSBzBYwgpCkJBk8Nj7697LL9vTz/XWc67e0r3oewu8iMRwQj3AUL45GVD7wVsPjCsAAtW66Wg=="], + + "@rolldown/pluginutils": ["@rolldown/pluginutils@1.0.0-rc.3", "", {}, "sha512-eybk3TjzzzV97Dlj5c+XrBFW57eTNhzod66y9HrBlzJ6NsCrWCp/2kaPS3K9wJmurBC0Tdw4yPjXKZqlznim3Q=="], + + "@standard-schema/utils": ["@standard-schema/utils@0.3.0", "", {}, "sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g=="], + + "@supabase/auth-js": ["@supabase/auth-js@2.111.0", "https://europe-west1-npm.pkg.dev/lovable-core-prod/sandbox-npm-cache/@supabase/auth-js/-/auth-js-2.111.0.tgz", { "dependencies": { "tslib": "2.8.1" } }, "sha512-hbRLgyQZEX0SDyF4LYXpv94qOIQyFATfpT5SIs2V0SisHnisVRkYgiPQWzv80l4S2mO3qof78rmoH9j5zoFsYQ=="], + + "@supabase/functions-js": ["@supabase/functions-js@2.111.0", "https://europe-west1-npm.pkg.dev/lovable-core-prod/sandbox-npm-cache/@supabase/functions-js/-/functions-js-2.111.0.tgz", { "dependencies": { "tslib": "2.8.1" } }, "sha512-RW/OCsd6MO592zU8ifzP8/f8XzxxIdpb+Up5XaOtE26Fw+3zTp475WX7+GuuktiD1WF8pFUDe6khUPbMp77RCw=="], + + "@supabase/phoenix": ["@supabase/phoenix@0.4.5", "https://europe-west1-npm.pkg.dev/lovable-core-prod/sandbox-npm-cache/@supabase/phoenix/-/phoenix-0.4.5.tgz", {}, "sha512-aAn9H9ovVyeApKy11OWOrrOGq8DV68yWeH4ud2lN9fzn4aO8Zb5GLL9m1pUg9nLqIcT+ZDfAcsZe0E/nqdv2lw=="], + + "@supabase/postgrest-js": ["@supabase/postgrest-js@2.111.0", "https://europe-west1-npm.pkg.dev/lovable-core-prod/sandbox-npm-cache/@supabase/postgrest-js/-/postgrest-js-2.111.0.tgz", { "dependencies": { "tslib": "2.8.1" } }, "sha512-pcqeDsnWP0lx9GawduYxNZJHeuTm53O7L0SC8RF8tniV3GWIPY6me6OTdnwzdwNUmNy1dzUVtSyIfE6+OflzPQ=="], + + "@supabase/realtime-js": ["@supabase/realtime-js@2.111.0", "https://europe-west1-npm.pkg.dev/lovable-core-prod/sandbox-npm-cache/@supabase/realtime-js/-/realtime-js-2.111.0.tgz", { "dependencies": { "@supabase/phoenix": "0.4.5", "tslib": "2.8.1" } }, "sha512-6oRf/vZyRwg8f8GbFSJkrD2w4HAu/yTvyMViHXHS+H5hNJzdXCrUR7cP5oW7daT3YlRnzRPY9LcGSJKZAmfMSg=="], + + "@supabase/storage-js": ["@supabase/storage-js@2.111.0", "https://europe-west1-npm.pkg.dev/lovable-core-prod/sandbox-npm-cache/@supabase/storage-js/-/storage-js-2.111.0.tgz", { "dependencies": { "iceberg-js": "^0.8.1", "tslib": "2.8.1" } }, "sha512-UEViNmTzVOxE8dqUA81wls+n9xgmlvSFfhfwo6QxrO4kQOytCYyw3ciYFoi4XoD4Jl95NJ3jnndHN5iIudWzqw=="], + + "@supabase/supabase-js": ["@supabase/supabase-js@2.111.0", "https://europe-west1-npm.pkg.dev/lovable-core-prod/sandbox-npm-cache/@supabase/supabase-js/-/supabase-js-2.111.0.tgz", { "dependencies": { "@supabase/auth-js": "2.111.0", "@supabase/functions-js": "2.111.0", "@supabase/postgrest-js": "2.111.0", "@supabase/realtime-js": "2.111.0", "@supabase/storage-js": "2.111.0" } }, "sha512-9q0/AULthQnWeiDh1vGyjoJZbSY04bu6qHcWit70pqEYn5Kv/dkCPY62Ja1123jEnJbB9Vd2pjY7Kvk/lK3peA=="], + + "@tabby_ai/hijri-converter": ["@tabby_ai/hijri-converter@1.0.5", "", {}, "sha512-r5bClKrcIusDoo049dSL8CawnHR6mRdDwhlQuIgZRNty68q0x8k3Lf1BtPAMxRf/GgnHBnIO4ujd3+GQdLWzxQ=="], + + "@tailwindcss/node": ["@tailwindcss/node@4.3.3", "", { "dependencies": { "@jridgewell/remapping": "^2.3.5", "enhanced-resolve": "^5.24.1", "jiti": "^2.7.0", "lightningcss": "1.32.0", "magic-string": "^0.30.21", "source-map-js": "^1.2.1", "tailwindcss": "4.3.3" } }, "sha512-/T8IKEsf9VTU6tLjgC7+sv2mOPtQxzE2jMw7u4Tt40Tx+QSZxpzh95/H6cMKoja9XuW7iMdLJYBB0o9G1CaAgg=="], + + "@tailwindcss/oxide": ["@tailwindcss/oxide@4.3.3", "", { "optionalDependencies": { "@tailwindcss/oxide-android-arm64": "4.3.3", "@tailwindcss/oxide-darwin-arm64": "4.3.3", "@tailwindcss/oxide-darwin-x64": "4.3.3", "@tailwindcss/oxide-freebsd-x64": "4.3.3", "@tailwindcss/oxide-linux-arm-gnueabihf": "4.3.3", "@tailwindcss/oxide-linux-arm64-gnu": "4.3.3", "@tailwindcss/oxide-linux-arm64-musl": "4.3.3", "@tailwindcss/oxide-linux-x64-gnu": "4.3.3", "@tailwindcss/oxide-linux-x64-musl": "4.3.3", "@tailwindcss/oxide-wasm32-wasi": "4.3.3", "@tailwindcss/oxide-win32-arm64-msvc": "4.3.3", "@tailwindcss/oxide-win32-x64-msvc": "4.3.3" } }, "sha512-krXjAikiaFSPaK/FkAQT5UTx3VormQaiZ5hBFlJZ9UFQGB/rwg1MZIhHAG9smMQRTdyJxP6Qt5MwMtdyU5FWrA=="], + + "@tailwindcss/oxide-android-arm64": ["@tailwindcss/oxide-android-arm64@4.3.3", "", { "os": "android", "cpu": "arm64" }, "sha512-Y85A2gmPSkl5Ve5qR86GL4HT509cFqQh1aes9p3sSkyTPwt0Pppf3GkwGe4JPACcRYjgJIEhQgM6dBClnr0NYw=="], + + "@tailwindcss/oxide-darwin-arm64": ["@tailwindcss/oxide-darwin-arm64@4.3.3", "", { "os": "darwin", "cpu": "arm64" }, "sha512-BiaWatpBcERQFDlOjRDpIVXuFK5PJez5SA4JMg6VYZdBYU+qKfV/vqjcIs+IYmtitf1xYQZTwXvU/8y4lfZUGw=="], + + "@tailwindcss/oxide-darwin-x64": ["@tailwindcss/oxide-darwin-x64@4.3.3", "", { "os": "darwin", "cpu": "x64" }, "sha512-fAeUqfV5ndhxRwai8cXGzdLvul9utWOmeTkv69unv4ZXixjn61Z+p9lCWdwOwA3TYboG3BwdVuN/RDjhBRl0mw=="], + + "@tailwindcss/oxide-freebsd-x64": ["@tailwindcss/oxide-freebsd-x64@4.3.3", "", { "os": "freebsd", "cpu": "x64" }, "sha512-iyf5bV6+wnAlflVeEy7R25dupxTNECZN5QMI0qNT6eT+EgaGdZcKhGkr5SdoaWiLJ3spLqIY9VCeSGrwmtg4kw=="], + + "@tailwindcss/oxide-linux-arm-gnueabihf": ["@tailwindcss/oxide-linux-arm-gnueabihf@4.3.3", "", { "os": "linux", "cpu": "arm" }, "sha512-aAYUprJAJQWWbRrPvtjdroZ56Md+JM8pMiopS6xGEwDfLhqj+2ver2p4nU4Mb3CRqcMmNBjo8KkUgcxhkzVQGQ=="], + + "@tailwindcss/oxide-linux-arm64-gnu": ["@tailwindcss/oxide-linux-arm64-gnu@4.3.3", "", { "os": "linux", "cpu": "arm64" }, "sha512-nDxldcEENOxZRzC2uu9jrutZdAAQtb+8WWDCSnWL1zvBk1+FN+x6MtDViPB5AJMfttVCUhehGWus3XBPgatM/w=="], + + "@tailwindcss/oxide-linux-arm64-musl": ["@tailwindcss/oxide-linux-arm64-musl@4.3.3", "", { "os": "linux", "cpu": "arm64" }, "sha512-Md44bD6veX/PC5iyF8cDVnw4HBIANZepRZZ7a8DQOvkfo5WUBwcp6iAuCUz23u+4SUkhJlD3eL7hNdW8ezd/kA=="], + + "@tailwindcss/oxide-linux-x64-gnu": ["@tailwindcss/oxide-linux-x64-gnu@4.3.3", "", { "os": "linux", "cpu": "x64" }, "sha512-tx7us1muwOKAKWao2v/GaafFeQboE6aj88vC6ziN2NCGcRm8gWUhwjzg+YdVB1e4boAtdtma4L43onunI6NS4w=="], + + "@tailwindcss/oxide-linux-x64-musl": ["@tailwindcss/oxide-linux-x64-musl@4.3.3", "", { "os": "linux", "cpu": "x64" }, "sha512-SJxX60smvHgasZoBy11dX6YRjXJFovwWBoedhbQPOBzgFWBHGB+TVPWB9BxzR7TTxU8FQZAI2AyiNCMzFm8Img=="], + + "@tailwindcss/oxide-wasm32-wasi": ["@tailwindcss/oxide-wasm32-wasi@4.3.3", "", { "dependencies": { "@emnapi/core": "^1.11.1", "@emnapi/runtime": "^1.11.1", "@emnapi/wasi-threads": "^1.2.2", "@napi-rs/wasm-runtime": "^1.1.4", "@tybys/wasm-util": "^0.10.2", "tslib": "^2.8.1" }, "cpu": "none" }, "sha512-jx1+rPhY/5Ympkktd656HBWEBLxP7dH06losBLjjf5vgCODXvi9KhtftWcMIwTFIDqBr7cRnQkdLnAG+IOlGvQ=="], + + "@tailwindcss/oxide-win32-arm64-msvc": ["@tailwindcss/oxide-win32-arm64-msvc@4.3.3", "", { "os": "win32", "cpu": "arm64" }, "sha512-3rc292Ca2ceK6Ulcc/bAVnTs/3nDtoPhyEKlgPv+yQJQi/JS/AMJlqzxvlDacL1nekbrcf6bTqp/jV4qgnPxNQ=="], + + "@tailwindcss/oxide-win32-x64-msvc": ["@tailwindcss/oxide-win32-x64-msvc@4.3.3", "", { "os": "win32", "cpu": "x64" }, "sha512-yJ0pwIVc/nYeGoV02WtsN8KYyLQv7kyI2wDnkezyJlGGjkd4QLwDGAwl47YpPJeuI0M0ObaXGSPjvWDPeTPggw=="], + + "@tailwindcss/vite": ["@tailwindcss/vite@4.3.3", "", { "dependencies": { "@tailwindcss/node": "4.3.3", "@tailwindcss/oxide": "4.3.3", "tailwindcss": "4.3.3" }, "peerDependencies": { "vite": "^5.2.0 || ^6 || ^7 || ^8" } }, "sha512-yYU8cogLeSh/ms2jh8Fj7jaba/EWa7Ja6GoUqYZaraEuCI5YS6ms6ObZgjjedm+jm6XZjdNRWBpPP6Z86oOxcw=="], + + "@tanstack/devtools-bundler-core": ["@tanstack/devtools-bundler-core@0.1.1", "", { "dependencies": { "@tanstack/devtools-client": "0.0.8", "@tanstack/devtools-event-bus": "0.4.2", "chalk": "^5.6.2", "launch-editor": "^2.11.1", "magic-string": "^0.30.0", "oxc-parser": "^0.120.0", "picomatch": "^4.0.3" } }, "sha512-2kowecGXNi/FAnwmJKW3WDZ6XuacHDcz4JsMmx43E21G6ZFmoQFuOJCVuv2bFkQZIR1M7+FVLQF5bdS5MQY62Q=="], + + "@tanstack/devtools-client": ["@tanstack/devtools-client@0.0.8", "", { "dependencies": { "@tanstack/devtools-event-client": "^0.5.0" } }, "sha512-cG3iZkGWCwN330bLBKa8+9r4Of2AXNoz2zUqcsy/4XsD3105ghVBx78cGyvJj9fSclNomPxoqAnDGXXhg1WLvA=="], + + "@tanstack/devtools-event-bus": ["@tanstack/devtools-event-bus@0.4.2", "", { "dependencies": { "ws": "^8.18.3" } }, "sha512-2LHzhwBFlKHCcklsQrGe8TeyjHd4XAF8nuCO6wHmva5fePUkJUULbu6CsCNAlGlCi0KkEsMXZSvRdR4HgMq4yA=="], + + "@tanstack/devtools-event-client": ["@tanstack/devtools-event-client@0.5.0", "", { "bin": { "intent": "./bin/intent.js" } }, "sha512-H+OH3zC6Vhu/K0NaVfQKknEKawc/+2PT+D3SB3Ox0V8SiMlTo0abbmH2rH0721R2aNYbjdMXA1oENOd8E2UVoA=="], + + "@tanstack/devtools-vite": ["@tanstack/devtools-vite@0.8.3", "", { "dependencies": { "@tanstack/devtools-bundler-core": "0.1.1", "@tanstack/devtools-client": "0.0.8", "@tanstack/devtools-event-bus": "0.4.2", "chalk": "^5.6.2" }, "peerDependencies": { "vite": "^6.0.0 || ^7.0.0 || ^8.0.0" }, "bin": { "intent": "./bin/intent.js" } }, "sha512-MqqE4/rdQUG55Y8Zux1Jj1I2wIBHdqYgjAJzP1grMUtFqSZ2XIDB7BHEV9UW/vrbhK7ocl4yFgVaJWROv0zeDA=="], + + "@tanstack/history": ["@tanstack/history@1.162.0", "", {}, "sha512-79pf/RkhteYZTRgcR4F9kbk84P2N8rugQJswxfIqovlbRiT3yI7eBE+5QorIrZaOKktsgzRlXh1l/du/xpl4iA=="], + + "@tanstack/query-core": ["@tanstack/query-core@5.101.4", "", {}, "sha512-gNwcvOJcRbLWPOLG/2OBm+zM+Yv+MKsXKEOWC57USuZDEsI71hEErQsiEGx5wX9rzWWkfwM0fVSPoiIFSsxfiw=="], + + "@tanstack/react-query": ["@tanstack/react-query@5.101.4", "", { "dependencies": { "@tanstack/query-core": "5.101.4" }, "peerDependencies": { "react": "^18 || ^19" } }, "sha512-yRg2pfOCxIs4ZJW3XYYHU/WgtD04FHSnfHlpRT7h7pR77hwkdRG4wxbKe4aq6P0RvXUTBSQpQeadS1SUYUe+KA=="], + + "@tanstack/react-router": ["@tanstack/react-router@1.170.18", "", { "dependencies": { "@tanstack/history": "1.162.0", "@tanstack/react-store": "^0.9.3", "@tanstack/router-core": "1.171.15", "isbot": "^5.1.22" }, "peerDependencies": { "react": ">=18.0.0 || >=19.0.0", "react-dom": ">=18.0.0 || >=19.0.0" } }, "sha512-wpbGYZEp/fmz1q4bn7BD8VZ+/VZ7GBqSJv5V969pU+chP8y7dquWDmKTFMohvUegb9lg12m1uPVvD6kB2wORvQ=="], + + "@tanstack/react-start": ["@tanstack/react-start@1.168.32", "", { "dependencies": { "@tanstack/react-router": "1.170.18", "@tanstack/react-start-client": "1.168.16", "@tanstack/react-start-rsc": "0.1.31", "@tanstack/react-start-server": "1.167.22", "@tanstack/router-utils": "1.162.2", "@tanstack/start-client-core": "1.170.14", "@tanstack/start-plugin-core": "1.171.24", "@tanstack/start-server-core": "1.169.17", "pathe": "^2.0.3" }, "peerDependencies": { "@rsbuild/core": "^2.0.0", "react": ">=18.0.0 || >=19.0.0", "react-dom": ">=18.0.0 || >=19.0.0", "vite": ">=7.0.0" }, "optionalPeers": ["@rsbuild/core", "vite"] }, "sha512-y1WXHo+jPfHxiuuN1m+br06IcriiBQnEWryBdbKdEOS5vw2PmnOj+Cgf1/YcGOqtSougScWFeE2rL1FXWvsLLg=="], + + "@tanstack/react-start-client": ["@tanstack/react-start-client@1.168.16", "", { "dependencies": { "@tanstack/react-router": "1.170.18", "@tanstack/router-core": "1.171.15", "@tanstack/start-client-core": "1.170.14" }, "peerDependencies": { "react": ">=18.0.0 || >=19.0.0", "react-dom": ">=18.0.0 || >=19.0.0" } }, "sha512-1OfHgy0wpHwe2tlB3FxMeA+IMX6Il/QAMf+8UdXuimReIc2Lz3BkMLBL38k4GIxBguX9sI8EMLO5jlTZ4e1olw=="], + + "@tanstack/react-start-rsc": ["@tanstack/react-start-rsc@0.1.31", "", { "dependencies": { "@tanstack/react-router": "1.170.18", "@tanstack/router-core": "1.171.15", "@tanstack/router-utils": "1.162.2", "@tanstack/start-client-core": "1.170.14", "@tanstack/start-fn-stubs": "1.162.0", "@tanstack/start-plugin-core": "1.171.24", "@tanstack/start-server-core": "1.169.17", "@tanstack/start-storage-context": "1.167.17", "pathe": "^2.0.3" }, "peerDependencies": { "@rspack/core": ">=2.0.0-0", "@vitejs/plugin-rsc": ">=0.5.20", "react": ">=18.0.0 || >=19.0.0", "react-dom": ">=18.0.0 || >=19.0.0", "react-server-dom-rspack": ">=0.0.2" }, "optionalPeers": ["@rspack/core", "@vitejs/plugin-rsc", "react-server-dom-rspack"] }, "sha512-WxjkXYflq550vTNJpdPyMaPC+Vyh88L5wOL+SiDTjPMGne9ad7FZmoJxqfCFEv1e7HVKMH/mMoE8619TsTNVzQ=="], + + "@tanstack/react-start-server": ["@tanstack/react-start-server@1.167.22", "", { "dependencies": { "@tanstack/react-router": "1.170.18", "@tanstack/router-core": "1.171.15", "@tanstack/start-server-core": "1.169.17" }, "peerDependencies": { "react": ">=18.0.0 || >=19.0.0", "react-dom": ">=18.0.0 || >=19.0.0" } }, "sha512-eH2PeHuLfL3R5YzE9+y2FfcE4Ld1LNV2ZfrCNVPJMMJFt+9nXDaRHg9BsEmc+JkTAGzz3FKLyQEoWwpbG6Ehqg=="], + + "@tanstack/react-store": ["@tanstack/react-store@0.9.3", "", { "dependencies": { "@tanstack/store": "0.9.3", "use-sync-external-store": "^1.6.0" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-y2iHd/N9OkoQbFJLUX1T9vbc2O9tjH0pQRgTcx1/Nz4IlwLvkgpuglXUx+mXt0g5ZDFrEeDnONPqkbfxXJKwRg=="], + + "@tanstack/router-core": ["@tanstack/router-core@1.171.15", "", { "dependencies": { "@tanstack/history": "1.162.0", "cookie-es": "^3.0.0", "seroval": "^1.5.4", "seroval-plugins": "^1.5.4" } }, "sha512-IILCDcLaItMZQ2jEmCABHY1Nhjjn5XUvwpQp3e4Nmu+vfg0BgYFuu/QASz2SwE2ZNbVMrvt8X/wxa+Gg5aErxA=="], + + "@tanstack/router-generator": ["@tanstack/router-generator@1.167.21", "", { "dependencies": { "@babel/types": "^7.28.5", "@tanstack/router-core": "1.171.15", "@tanstack/router-utils": "1.162.2", "@tanstack/virtual-file-routes": "1.162.0", "jiti": "^2.7.0", "magic-string": "^0.30.21", "prettier": "^3.5.0", "zod": "^4.4.3" } }, "sha512-m3oXZyienj8owialdyoZ0txHQrnEx/Ra+D9kWtar5fC2cWZr5Pvxl86VY2mX5RRLC5QLKLeRGT1x4HV95wHVDQ=="], + + "@tanstack/router-plugin": ["@tanstack/router-plugin@1.168.23", "", { "dependencies": { "@babel/core": "^7.28.5", "@babel/template": "^7.27.2", "@babel/types": "^7.28.5", "@tanstack/router-core": "1.171.15", "@tanstack/router-generator": "1.167.21", "@tanstack/router-utils": "1.162.2", "chokidar": "^5.0.0", "unplugin": "^3.0.0", "zod": "^4.4.3" }, "peerDependencies": { "@rsbuild/core": ">=1.0.2 || ^2.0.0", "@tanstack/react-router": "^1.170.18", "vite": ">=5.0.0 || >=6.0.0 || >=7.0.0 || >=8.0.0", "vite-plugin-solid": "^2.11.10 || ^3.0.0-0", "webpack": ">=5.92.0" }, "optionalPeers": ["@rsbuild/core", "@tanstack/react-router", "vite", "vite-plugin-solid", "webpack"] }, "sha512-0+PIcvnaAimFwjoEIeV3h7LKjzC8zNnp7pH2UamdKwQ9QlY99WU9V0Xl0zbM0i9hrUa/mKgWPDAzELmPUu5fMA=="], + + "@tanstack/router-utils": ["@tanstack/router-utils@1.162.2", "", { "dependencies": { "@babel/generator": "^7.28.5", "@babel/parser": "^7.28.5", "@babel/types": "^7.28.5", "ansis": "^4.1.0", "babel-dead-code-elimination": "^1.0.12", "diff": "^8.0.2", "pathe": "^2.0.3", "tinyglobby": "^0.2.15" } }, "sha512-hTWqJtqIFFdvuCl8WXNyrodp2L9zo2G37xKRrcVmVRWpAB2h+U1LuRAfS4tsFTiWOIoE/B+WDVFB8JpoEdw6jQ=="], + + "@tanstack/start-client-core": ["@tanstack/start-client-core@1.170.14", "", { "dependencies": { "@tanstack/router-core": "1.171.15", "@tanstack/start-fn-stubs": "1.162.0", "@tanstack/start-storage-context": "1.167.17", "seroval": "^1.5.4" } }, "sha512-yasBgEIFSWysL4EiFIGwp638nCoXXKiTqkc48EP2oty4OyNsZPTC1yfJ82zjq2KGkTAYtIaeMl7otqqRl1n85Q=="], + + "@tanstack/start-fn-stubs": ["@tanstack/start-fn-stubs@1.162.0", "", {}, "sha512-QWfUZ3Yo923tdQn38LyKMU8rcTw69zc+T4dAvgTWV4O56SqFRsGfS0lSWIMhJRwXIx/bvdi7nTUBDdZtTHtpTQ=="], + + "@tanstack/start-plugin-core": ["@tanstack/start-plugin-core@1.171.24", "", { "dependencies": { "@babel/code-frame": "7.27.1", "@babel/core": "^7.28.5", "@babel/types": "^7.28.5", "@tanstack/router-core": "1.171.15", "@tanstack/router-generator": "1.167.21", "@tanstack/router-plugin": "1.168.23", "@tanstack/router-utils": "1.162.2", "@tanstack/start-server-core": "1.169.17", "exsolve": "^1.0.7", "lightningcss": "^1.32.0", "pathe": "^2.0.3", "picomatch": "^4.0.3", "seroval": "^1.5.4", "source-map": "^0.7.6", "srvx": "^0.11.9", "tinyglobby": "^0.2.15", "ufo": "^1.5.4", "vitefu": "^1.1.1", "xmlbuilder2": "^4.0.3", "zod": "^4.4.3" }, "peerDependencies": { "@rsbuild/core": "^2.0.0", "vite": ">=7.0.0" }, "optionalPeers": ["@rsbuild/core", "vite"] }, "sha512-l/tm+T0ntXHeIzr9kJDTJ2IDNZC0yFazjkvbEVeZsDOrJ8F+HiZmY+tXYqI5/nDYkwxY0DVQr+kGsTRVb6y2Jw=="], + + "@tanstack/start-server-core": ["@tanstack/start-server-core@1.169.17", "", { "dependencies": { "@tanstack/history": "1.162.0", "@tanstack/router-core": "1.171.15", "@tanstack/start-client-core": "1.170.14", "@tanstack/start-storage-context": "1.167.17", "fetchdts": "^0.1.6", "h3-v2": "npm:h3@2.0.1-rc.20", "seroval": "^1.5.4" } }, "sha512-u0N+PHJhMHnzfnlXYI9F+A/qweDe3E2X0mfkORPGIEkNQgvS548RA9fjwvixR2en5b848CfpEqUzwFhm/tQ40Q=="], + + "@tanstack/start-storage-context": ["@tanstack/start-storage-context@1.167.17", "", { "dependencies": { "@tanstack/router-core": "1.171.15" } }, "sha512-ntkDyGx0PE0opIlWNAMpkMb8qkjR4uyCUOfC0CiT0STM25+EcwPuwYNfDXXeVObMrTAPgsQ4yOj3xdY0Xr4ptw=="], + + "@tanstack/store": ["@tanstack/store@0.9.3", "", {}, "sha512-8reSzl/qGWGGVKhBoxXPMWzATSbZLZFWhwBAFO9NAyp0TxzfBP0mIrGb8CP8KrQTmvzXlR/vFPPUrHTLBGyFyw=="], + + "@tanstack/virtual-file-routes": ["@tanstack/virtual-file-routes@1.162.0", "", {}, "sha512-uhOeFyxLcU41HzvrxsGpiWdcMbScY1EDgbZ5K7DVRMYInbLYWAC0EA/kx9wXAoSM8q82bUG2hRl8+EAjE6XAbA=="], + + "@tybys/wasm-util": ["@tybys/wasm-util@0.10.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg=="], + + "@types/babel__core": ["@types/babel__core@7.20.5", "", { "dependencies": { "@babel/parser": "^7.20.7", "@babel/types": "^7.20.7", "@types/babel__generator": "*", "@types/babel__template": "*", "@types/babel__traverse": "*" } }, "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA=="], + + "@types/babel__generator": ["@types/babel__generator@7.27.0", "", { "dependencies": { "@babel/types": "^7.0.0" } }, "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg=="], + + "@types/babel__template": ["@types/babel__template@7.4.4", "", { "dependencies": { "@babel/parser": "^7.1.0", "@babel/types": "^7.0.0" } }, "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A=="], + + "@types/babel__traverse": ["@types/babel__traverse@7.28.0", "", { "dependencies": { "@babel/types": "^7.28.2" } }, "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q=="], + + "@types/canvas-confetti": ["@types/canvas-confetti@1.9.0", "https://europe-west1-npm.pkg.dev/lovable-core-prod/sandbox-npm-cache/@types/canvas-confetti/-/canvas-confetti-1.9.0.tgz", {}, "sha512-aBGj/dULrimR1XDZLtG9JwxX1b4HPRF6CX9Yfwh3NvstZEm1ZL7RBnel4keCPSqs1ANRu1u2Aoz9R+VmtjYuTg=="], + + "@types/d3-array": ["@types/d3-array@3.2.2", "", {}, "sha512-hOLWVbm7uRza0BYXpIIW5pxfrKe0W+D5lrFiAEYR+pb6w3N2SwSMaJbXdUfSEv+dT4MfHBLtn5js0LAWaO6otw=="], + + "@types/d3-color": ["@types/d3-color@3.1.3", "", {}, "sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A=="], + + "@types/d3-ease": ["@types/d3-ease@3.0.2", "", {}, "sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA=="], + + "@types/d3-interpolate": ["@types/d3-interpolate@3.0.4", "", { "dependencies": { "@types/d3-color": "*" } }, "sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA=="], + + "@types/d3-path": ["@types/d3-path@3.1.1", "", {}, "sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg=="], + + "@types/d3-scale": ["@types/d3-scale@4.0.9", "", { "dependencies": { "@types/d3-time": "*" } }, "sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw=="], + + "@types/d3-shape": ["@types/d3-shape@3.1.8", "", { "dependencies": { "@types/d3-path": "*" } }, "sha512-lae0iWfcDeR7qt7rA88BNiqdvPS5pFVPpo5OfjElwNaT2yyekbM0C9vK+yqBqEmHr6lDkRnYNoTBYlAgJa7a4w=="], + + "@types/d3-time": ["@types/d3-time@3.0.4", "", {}, "sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g=="], + + "@types/d3-timer": ["@types/d3-timer@3.0.2", "", {}, "sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw=="], + + "@types/estree": ["@types/estree@1.0.9", "", {}, "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg=="], + + "@types/json-schema": ["@types/json-schema@7.0.15", "", {}, "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA=="], + + "@types/node": ["@types/node@22.20.1", "", { "dependencies": { "undici-types": "~6.21.0" } }, "sha512-EANqOCF9QFyra+4pfxUcX9STKJpCLjMbObVzljIJomAWSnuSIEAvyzEU53GaajbXJEgdh0iEcPL+DGvpUd4k1Q=="], + + "@types/react": ["@types/react@19.2.17", "", { "dependencies": { "csstype": "^3.2.2" } }, "sha512-MXfmqaVPEVgkBT/aY0aGCkRWWtByiYQXo3xdQ8r5RzuFrPiRn8Gar2tQdXSUQ2GKV3bkXckek89V8wQBY2Q/Aw=="], + + "@types/react-dom": ["@types/react-dom@19.2.3", "", { "peerDependencies": { "@types/react": "^19.2.0" } }, "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ=="], + + "@typescript-eslint/eslint-plugin": ["@typescript-eslint/eslint-plugin@8.65.0", "", { "dependencies": { "@eslint-community/regexpp": "^4.12.2", "@typescript-eslint/scope-manager": "8.65.0", "@typescript-eslint/type-utils": "8.65.0", "@typescript-eslint/utils": "8.65.0", "@typescript-eslint/visitor-keys": "8.65.0", "ignore": "^7.0.5", "natural-compare": "^1.4.0", "ts-api-utils": "^2.5.0" }, "peerDependencies": { "@typescript-eslint/parser": "^8.65.0", "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", "typescript": ">=4.8.4 <6.1.0" } }, "sha512-IEgob78X12rHpUmtcwFsXhZdVGJtwTVP8FiCLZkR6GlYVrl2PcuB+KhCE5BlVC/eQpQnu8WXRtkHZuPar+gCRA=="], + + "@typescript-eslint/parser": ["@typescript-eslint/parser@8.65.0", "", { "dependencies": { "@typescript-eslint/scope-manager": "8.65.0", "@typescript-eslint/types": "8.65.0", "@typescript-eslint/typescript-estree": "8.65.0", "@typescript-eslint/visitor-keys": "8.65.0", "debug": "^4.4.3" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", "typescript": ">=4.8.4 <6.1.0" } }, "sha512-CZ4nMxWwgu1HEEFNkeaCptra9QCtkmKdgf3sWh1rl1trIhmxLilgTV4cwcbQ4wemnT4sWQN8CaKOmdYx+g2gMA=="], + + "@typescript-eslint/project-service": ["@typescript-eslint/project-service@8.65.0", "", { "dependencies": { "@typescript-eslint/tsconfig-utils": "^8.65.0", "@typescript-eslint/types": "^8.65.0", "debug": "^4.4.3" }, "peerDependencies": { "typescript": ">=4.8.4 <6.1.0" } }, "sha512-SxnPhbTsGahizDgbu7oqFH/xVtzIqMd/s+WtnSxNxJZJpLbdT5IPdzg8EZxO3+PoKahXmwJLeNQOpKJb3/bi7Q=="], + + "@typescript-eslint/scope-manager": ["@typescript-eslint/scope-manager@8.65.0", "", { "dependencies": { "@typescript-eslint/types": "8.65.0", "@typescript-eslint/visitor-keys": "8.65.0" } }, "sha512-Esbl8OSYiVxBokYgWPf7VVWg/BE798wXhimnn9ML9Pt5qoDf8bfQlgjlKXR/k98+AcNzlLKYrpCcrcuZ9DZLgg=="], + + "@typescript-eslint/tsconfig-utils": ["@typescript-eslint/tsconfig-utils@8.65.0", "", { "peerDependencies": { "typescript": ">=4.8.4 <6.1.0" } }, "sha512-j6GzGqCiRdA7Qhur2VVmKZAkBLfnHFQfx4TaJGL9RMveZqCo48jSHHO0DTgizEnGhtWnqmbtCUSrqSkdiY/0Hg=="], + + "@typescript-eslint/type-utils": ["@typescript-eslint/type-utils@8.65.0", "", { "dependencies": { "@typescript-eslint/types": "8.65.0", "@typescript-eslint/typescript-estree": "8.65.0", "@typescript-eslint/utils": "8.65.0", "debug": "^4.4.3", "ts-api-utils": "^2.5.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", "typescript": ">=4.8.4 <6.1.0" } }, "sha512-YjaZ7PRI5qY7ax2L3PbvX0rRyGtipAReCWs0mhhDBHjH/vl0g0BonaGXrKdKpMbIIsMIwDgbk/xzkBTyAltS5g=="], + + "@typescript-eslint/types": ["@typescript-eslint/types@8.65.0", "", {}, "sha512-JSSwWNy+H0E/01jJEM+hrX6N0OFDzFzeIhHFSAS01tlVaevpG8cFyYRPhS5yjGOvBUx3sqQHVMjCL1CAZZMxBg=="], + + "@typescript-eslint/typescript-estree": ["@typescript-eslint/typescript-estree@8.65.0", "", { "dependencies": { "@typescript-eslint/project-service": "8.65.0", "@typescript-eslint/tsconfig-utils": "8.65.0", "@typescript-eslint/types": "8.65.0", "@typescript-eslint/visitor-keys": "8.65.0", "debug": "^4.4.3", "minimatch": "^10.2.2", "semver": "^7.7.3", "tinyglobby": "^0.2.15", "ts-api-utils": "^2.5.0" }, "peerDependencies": { "typescript": ">=4.8.4 <6.1.0" } }, "sha512-JboAE2swaYt4tb1fHhHTABE2K+OLy09XfcTbhnk4Pw96f9dd2e9iYsJ28gBggHlo5z5x1rkyWvcPoTuNTd4oGg=="], + + "@typescript-eslint/utils": ["@typescript-eslint/utils@8.65.0", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.9.1", "@typescript-eslint/scope-manager": "8.65.0", "@typescript-eslint/types": "8.65.0", "@typescript-eslint/typescript-estree": "8.65.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", "typescript": ">=4.8.4 <6.1.0" } }, "sha512-gXiwIHsYreboxeJucHKPvgwl7dXt50mF8s1/c00cP/WoVTyWKFdtfhRWwZiXYFU5H2O8vVoSLNrexFZjYS/SGA=="], + + "@typescript-eslint/visitor-keys": ["@typescript-eslint/visitor-keys@8.65.0", "", { "dependencies": { "@typescript-eslint/types": "8.65.0", "eslint-visitor-keys": "^5.0.0" } }, "sha512-8C71BQkGjiMmXtop7pHVJu1l2NNShFdkCyD6a2ezzs5vU/L3LRtb69EtcteFwz0mYMPzIgOw0n6OV4VBUWZd7A=="], + + "@vitejs/plugin-react": ["@vitejs/plugin-react@5.2.0", "", { "dependencies": { "@babel/core": "^7.29.0", "@babel/plugin-transform-react-jsx-self": "^7.27.1", "@babel/plugin-transform-react-jsx-source": "^7.27.1", "@rolldown/pluginutils": "1.0.0-rc.3", "@types/babel__core": "^7.20.5", "react-refresh": "^0.18.0" }, "peerDependencies": { "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" } }, "sha512-YmKkfhOAi3wsB1PhJq5Scj3GXMn3WvtQ/JC0xoopuHoXSdmtdStOpFrYaT1kie2YgFBcIe64ROzMYRjCrYOdYw=="], + + "acorn": ["acorn@8.18.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ=="], + + "acorn-jsx": ["acorn-jsx@5.3.2", "", { "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ=="], + + "ajv": ["ajv@6.15.0", "", { "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" } }, "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw=="], + + "ansi-styles": ["ansi-styles@4.3.0", "", { "dependencies": { "color-convert": "^2.0.1" } }, "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="], + + "ansis": ["ansis@4.3.1", "", {}, "sha512-BJ8/l4R5LRE7hW9WdSuGYrLSHi2ynxeFpDFbH0K/CgNeY/tyhk+vO6TYxXC5r5CpUhNVX310xzPsN/H9lCdfOA=="], + + "argparse": ["argparse@2.0.1", "", {}, "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="], + + "aria-hidden": ["aria-hidden@1.2.6", "", { "dependencies": { "tslib": "^2.0.0" } }, "sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA=="], + + "babel-dead-code-elimination": ["babel-dead-code-elimination@1.0.12", "", { "dependencies": { "@babel/core": "^7.23.7", "@babel/parser": "^7.23.6", "@babel/traverse": "^7.23.7", "@babel/types": "^7.23.6" } }, "sha512-GERT7L2TiYcYDtYk1IpD+ASAYXjKbLTDPhBtYj7X1NuRMDTMtAx9kyBenub1Ev41lo91OHCKdmP+egTDmfQ7Ig=="], + + "balanced-match": ["balanced-match@1.0.2", "", {}, "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="], + + "baseline-browser-mapping": ["baseline-browser-mapping@2.11.4", "", { "bin": { "baseline-browser-mapping": "dist/cli.cjs" } }, "sha512-s4+sLr9mZ/CyqeRritFeYV/Zx73OAtmaHn6kkBS1XRoJn1hrg3xIDUcpicAEX68tkcIN0iBCgti31C8zxtkhsQ=="], + + "brace-expansion": ["brace-expansion@1.1.16", "", { "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw=="], + + "browserslist": ["browserslist@4.28.7", "", { "dependencies": { "baseline-browser-mapping": "^2.10.44", "caniuse-lite": "^1.0.30001806", "electron-to-chromium": "^1.5.393", "node-releases": "^2.0.51", "update-browserslist-db": "^1.2.3" }, "bin": { "browserslist": "cli.js" } }, "sha512-JxV13hNrFxqjOc8alRbq9dK1MM79NEXYpma2B2J4wAtpWS5zIEIKqWPGCl7N4o7Uc7B7itylh7SuDujATRyyTw=="], + + "callsites": ["callsites@3.1.0", "", {}, "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ=="], + + "caniuse-lite": ["caniuse-lite@1.0.30001806", "", {}, "sha512-72Cuvd95zbSYPKq6Fhg8eDJRlzgWDf7/mtoZv6Qe/DYNCEBdNxoA3+rZAU2ZhGCpZlns3EssFavaZomckT5Uuw=="], + + "canvas-confetti": ["canvas-confetti@1.9.4", "https://europe-west1-npm.pkg.dev/lovable-core-prod/sandbox-npm-cache/canvas-confetti/-/canvas-confetti-1.9.4.tgz", {}, "sha512-yxQbJkAVrFXWNbTUjPqjF7G+g6pDotOUHGbkZq2NELZUMDpiJ85rIEazVb8GTaAptNW2miJAXbs1BtioA251Pw=="], + + "chalk": ["chalk@4.1.2", "", { "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" } }, "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="], + + "chokidar": ["chokidar@5.0.0", "", { "dependencies": { "readdirp": "^5.0.0" } }, "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw=="], + + "class-variance-authority": ["class-variance-authority@0.7.1", "", { "dependencies": { "clsx": "^2.1.1" } }, "sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg=="], + + "clsx": ["clsx@2.1.1", "", {}, "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA=="], + + "cmdk": ["cmdk@1.1.1", "", { "dependencies": { "@radix-ui/react-compose-refs": "^1.1.1", "@radix-ui/react-dialog": "^1.1.6", "@radix-ui/react-id": "^1.1.0", "@radix-ui/react-primitive": "^2.0.2" }, "peerDependencies": { "react": "^18 || ^19 || ^19.0.0-rc", "react-dom": "^18 || ^19 || ^19.0.0-rc" } }, "sha512-Vsv7kFaXm+ptHDMZ7izaRsP70GgrW9NBNGswt9OZaVBLlE0SNpDq8eu/VGXyF9r7M0azK3Wy7OlYXsuyYLFzHg=="], + + "color-convert": ["color-convert@2.0.1", "", { "dependencies": { "color-name": "~1.1.4" } }, "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="], + + "color-name": ["color-name@1.1.4", "", {}, "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="], + + "concat-map": ["concat-map@0.0.1", "", {}, "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="], + + "consola": ["consola@3.4.2", "", {}, "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA=="], + + "convert-source-map": ["convert-source-map@2.0.0", "", {}, "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg=="], + + "cookie-es": ["cookie-es@3.1.1", "", {}, "sha512-UaXxwISYJPTr9hwQxMFYZ7kNhSXboMXP+Z3TRX6f1/NyaGPfuNUZOWP1pUEb75B2HjfklIYLVRfWiFZJyC6Npg=="], + + "cross-spawn": ["cross-spawn@7.0.6", "", { "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", "which": "^2.0.1" } }, "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA=="], + + "crossws": ["crossws@0.4.10", "", { "peerDependencies": { "srvx": ">=0.11.5" }, "optionalPeers": ["srvx"] }, "sha512-pz3oubH/dt12KjqsUB0IuXW4nwRDQ583iDsP4555Cpdqx0NoU7pGlWBcayyFI8f/l/idRpgjMEfwuOxSWJYlIA=="], + + "csstype": ["csstype@3.2.3", "", {}, "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ=="], + + "d3-array": ["d3-array@3.2.4", "", { "dependencies": { "internmap": "1 - 2" } }, "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg=="], + + "d3-color": ["d3-color@3.1.0", "", {}, "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA=="], + + "d3-ease": ["d3-ease@3.0.1", "", {}, "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w=="], + + "d3-format": ["d3-format@3.1.2", "", {}, "sha512-AJDdYOdnyRDV5b6ArilzCPPwc1ejkHcoyFarqlPqT7zRYjhavcT3uSrqcMvsgh2CgoPbK3RCwyHaVyxYcP2Arg=="], + + "d3-interpolate": ["d3-interpolate@3.0.1", "", { "dependencies": { "d3-color": "1 - 3" } }, "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g=="], + + "d3-path": ["d3-path@3.1.0", "", {}, "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ=="], + + "d3-scale": ["d3-scale@4.0.2", "", { "dependencies": { "d3-array": "2.10.0 - 3", "d3-format": "1 - 3", "d3-interpolate": "1.2.0 - 3", "d3-time": "2.1.1 - 3", "d3-time-format": "2 - 4" } }, "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ=="], + + "d3-shape": ["d3-shape@3.2.0", "", { "dependencies": { "d3-path": "^3.1.0" } }, "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA=="], + + "d3-time": ["d3-time@3.1.0", "", { "dependencies": { "d3-array": "2 - 3" } }, "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q=="], + + "d3-time-format": ["d3-time-format@4.1.0", "", { "dependencies": { "d3-time": "1 - 3" } }, "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg=="], + + "d3-timer": ["d3-timer@3.0.1", "", {}, "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA=="], + + "date-fns": ["date-fns@4.4.0", "", {}, "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w=="], + + "date-fns-jalali": ["date-fns-jalali@4.1.0-0", "", {}, "sha512-hTIP/z+t+qKwBDcmmsnmjWTduxCg+5KfdqWQvb2X/8C9+knYY6epN/pfxdDuyVlSVeFz0sM5eEfwIUQ70U4ckg=="], + + "db0": ["db0@0.3.4", "", { "peerDependencies": { "@electric-sql/pglite": "*", "@libsql/client": "*", "better-sqlite3": "*", "drizzle-orm": "*", "mysql2": "*", "sqlite3": "*" }, "optionalPeers": ["@electric-sql/pglite", "@libsql/client", "better-sqlite3", "drizzle-orm", "mysql2", "sqlite3"] }, "sha512-RiXXi4WaNzPTHEOu8UPQKMooIbqOEyqA1t7Z6MsdxSCeb8iUC9ko3LcmsLmeUt2SM5bctfArZKkRQggKZz7JNw=="], + + "debug": ["debug@4.4.3", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="], + + "decimal.js-light": ["decimal.js-light@2.5.1", "", {}, "sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg=="], + + "deep-is": ["deep-is@0.1.4", "", {}, "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ=="], + + "detect-libc": ["detect-libc@2.1.2", "", {}, "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ=="], + + "detect-node-es": ["detect-node-es@1.1.0", "", {}, "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ=="], + + "diff": ["diff@8.0.4", "", {}, "sha512-DPi0FmjiSU5EvQV0++GFDOJ9ASQUVFh5kD+OzOnYdi7n3Wpm9hWWGfB/O2blfHcMVTL5WkQXSnRiK9makhrcnw=="], + + "dom-helpers": ["dom-helpers@5.2.1", "", { "dependencies": { "@babel/runtime": "^7.8.7", "csstype": "^3.0.2" } }, "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA=="], + + "electron-to-chromium": ["electron-to-chromium@1.5.398", "", {}, "sha512-AsvhAxopJGh6museTDMIjn6JpDYOfgu4RLlygomt87MUwBUqTfd/1EiPtx10/LZE8xpTvkP2E9Gafq7lkLtodQ=="], + + "embla-carousel": ["embla-carousel@8.6.0", "", {}, "sha512-SjWyZBHJPbqxHOzckOfo8lHisEaJWmwd23XppYFYVh10bU66/Pn5tkVkbkCMZVdbUE5eTCI2nD8OyIP4Z+uwkA=="], + + "embla-carousel-react": ["embla-carousel-react@8.6.0", "", { "dependencies": { "embla-carousel": "8.6.0", "embla-carousel-reactive-utils": "8.6.0" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.1 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" } }, "sha512-0/PjqU7geVmo6F734pmPqpyHqiM99olvyecY7zdweCw+6tKEXnrE90pBiBbMMU8s5tICemzpQ3hi5EpxzGW+JA=="], + + "embla-carousel-reactive-utils": ["embla-carousel-reactive-utils@8.6.0", "", { "peerDependencies": { "embla-carousel": "8.6.0" } }, "sha512-fMVUDUEx0/uIEDM0Mz3dHznDhfX+znCCDCeIophYb1QGVM7YThSWX+wz11zlYwWFOr74b4QLGg0hrGPJeG2s4A=="], + + "enhanced-resolve": ["enhanced-resolve@5.24.4", "", { "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.3.3" } }, "sha512-GVoi+ICHocoOIU7qVVM48wOJziRsqrsyqlI0Ce0LdowRn6v3bcH2zUa9kp85ncx0nwIb9/HOCOLS3fdThDG/XQ=="], + + "env-runner": ["env-runner@0.1.16", "", { "dependencies": { "crossws": "^0.4.8", "exsolve": "^1.1.0", "httpxy": "^0.5.4", "srvx": "^0.11.19" }, "peerDependencies": { "@netlify/runtime": "^4.1.23", "@vercel/queue": ">=0.2.0", "miniflare": "^4.20260515.0", "wrangler": "^4.0.0" }, "optionalPeers": ["@netlify/runtime", "@vercel/queue", "miniflare", "wrangler"], "bin": { "env-runner": "dist/cli.mjs" } }, "sha512-2LRJM4P2KLX6J83QZZrMqvgCDt/D5ea7wPcI3yYiy5cG/9rX5QwdwZFx0D7ktWnjdRyZxYjttGGorb5nFqb1CA=="], + + "escalade": ["escalade@3.2.0", "", {}, "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA=="], + + "escape-string-regexp": ["escape-string-regexp@4.0.0", "", {}, "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="], + + "eslint": ["eslint@9.39.5", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.21.2", "@eslint/config-helpers": "^0.4.2", "@eslint/core": "^0.17.0", "@eslint/eslintrc": "^3.3.6", "@eslint/js": "9.39.5", "@eslint/plugin-kit": "^0.4.1", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.4.2", "@types/estree": "^1.0.6", "ajv": "^6.14.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.6", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", "eslint-scope": "^8.4.0", "eslint-visitor-keys": "^4.2.1", "espree": "^10.4.0", "esquery": "^1.5.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^8.0.0", "find-up": "^5.0.0", "glob-parent": "^6.0.2", "ignore": "^5.2.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "json-stable-stringify-without-jsonify": "^1.0.1", "lodash.merge": "^4.6.2", "minimatch": "^3.1.5", "natural-compare": "^1.4.0", "optionator": "^0.9.3" }, "peerDependencies": { "jiti": "*" }, "optionalPeers": ["jiti"], "bin": { "eslint": "bin/eslint.js" } }, "sha512-DgZS62aPLXKlnxILS/AYCoRvHaZeXceIzlXPkkGGzJWSow1aEk0lbTlxUSlyjC8jcaKxAdOnTDz+o1JFSBsyjw=="], + + "eslint-config-prettier": ["eslint-config-prettier@10.1.8", "", { "peerDependencies": { "eslint": ">=7.0.0" }, "bin": { "eslint-config-prettier": "bin/cli.js" } }, "sha512-82GZUjRS0p/jganf6q1rEO25VSoHH0hKPCTrgillPjdI/3bgBhAE1QzHrHTizjpRvy6pGAvKjDJtk2pF9NDq8w=="], + + "eslint-plugin-prettier": ["eslint-plugin-prettier@5.5.6", "", { "dependencies": { "prettier-linter-helpers": "^1.0.1", "synckit": "^0.11.13" }, "peerDependencies": { "@types/eslint": ">=8.0.0", "eslint": ">=8.0.0", "eslint-config-prettier": ">= 7.0.0 <10.0.0 || >=10.1.0", "prettier": ">=3.0.0" }, "optionalPeers": ["@types/eslint", "eslint-config-prettier"] }, "sha512-ifetmTcxWfz+4qRW3pH/ujdTq2jQIj59AxJMIN26K5avYgU8dxycUETQonWiW+wPrYXA0j3Try0l1CnwVQtDqQ=="], + + "eslint-plugin-react-hooks": ["eslint-plugin-react-hooks@5.2.0", "", { "peerDependencies": { "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" } }, "sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg=="], + + "eslint-plugin-react-refresh": ["eslint-plugin-react-refresh@0.4.26", "", { "peerDependencies": { "eslint": ">=8.40" } }, "sha512-1RETEylht2O6FM/MvgnyvT+8K21wLqDNg4qD51Zj3guhjt433XbnnkVttHMyaVyAFD03QSV4LPS5iE3VQmO7XQ=="], + + "eslint-scope": ["eslint-scope@8.4.0", "", { "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^5.2.0" } }, "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg=="], + + "eslint-visitor-keys": ["eslint-visitor-keys@4.2.1", "", {}, "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ=="], + + "espree": ["espree@10.4.0", "", { "dependencies": { "acorn": "^8.15.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^4.2.1" } }, "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ=="], + + "esquery": ["esquery@1.7.0", "", { "dependencies": { "estraverse": "^5.1.0" } }, "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g=="], + + "esrecurse": ["esrecurse@4.3.0", "", { "dependencies": { "estraverse": "^5.2.0" } }, "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag=="], + + "estraverse": ["estraverse@5.3.0", "", {}, "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA=="], + + "esutils": ["esutils@2.0.3", "", {}, "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g=="], + + "eventemitter3": ["eventemitter3@4.0.7", "", {}, "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw=="], + + "exsolve": ["exsolve@1.1.1", "", {}, "sha512-9U/jZUgjnSGyntRr6y5Muu1MJcwFl6kPu7k8qLF0IMNfLqvw0NZ4nnVDq0RVoZ0RvCyumib4Ez3KYrVfilrw+g=="], + + "fast-deep-equal": ["fast-deep-equal@3.1.3", "", {}, "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="], + + "fast-diff": ["fast-diff@1.3.0", "", {}, "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw=="], + + "fast-equals": ["fast-equals@5.4.1", "", {}, "sha512-DjlFSM5Pk9cGcL0q5QXl66eGzx0N6szNgaswwc5ZphlBohjTVJSnGgI+rJVOgOi65qUoQnDZN4nDqi33udtydQ=="], + + "fast-json-stable-stringify": ["fast-json-stable-stringify@2.1.0", "", {}, "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="], + + "fast-levenshtein": ["fast-levenshtein@2.0.6", "", {}, "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw=="], + + "fdir": ["fdir@6.5.0", "", { "peerDependencies": { "picomatch": "^3 || ^4" }, "optionalPeers": ["picomatch"] }, "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg=="], + + "fetchdts": ["fetchdts@0.1.7", "", {}, "sha512-YoZjBdafyLIop9lSxXVI33oLD5kN31q4Td+CasofLLYeLXRFeOsuOw0Uo+XNRi9PZlbfdlN2GmRtm4tCEQ9/KA=="], + + "file-entry-cache": ["file-entry-cache@8.0.0", "", { "dependencies": { "flat-cache": "^4.0.0" } }, "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ=="], + + "find-up": ["find-up@5.0.0", "", { "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" } }, "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng=="], + + "flat-cache": ["flat-cache@4.0.1", "", { "dependencies": { "flatted": "^3.2.9", "keyv": "^4.5.4" } }, "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw=="], + + "flatted": ["flatted@3.4.3", "", {}, "sha512-/zipXxyO6rGvuNGDiULY9MvEGSkb2gaG4GGH4ygMi0ZZzyMHdUZBmntJmx5x1G2VuPytCwGN4xsJP6cw+sK+vQ=="], + + "fsevents": ["fsevents@2.3.3", "", { "os": "darwin" }, "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw=="], + + "gensync": ["gensync@1.0.0-beta.2", "", {}, "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg=="], + + "get-nonce": ["get-nonce@1.0.1", "", {}, "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q=="], + + "glob-parent": ["glob-parent@6.0.2", "", { "dependencies": { "is-glob": "^4.0.3" } }, "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A=="], + + "globals": ["globals@15.15.0", "", {}, "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg=="], + + "globrex": ["globrex@0.1.2", "", {}, "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg=="], + + "graceful-fs": ["graceful-fs@4.2.11", "", {}, "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="], + + "h3": ["h3@2.0.1-rc.26", "", { "dependencies": { "rou3": "^0.9.1", "srvx": "^0.12.4" }, "peerDependencies": { "crossws": "^0.4.9" }, "optionalPeers": ["crossws"], "bin": { "h3": "bin/h3.mjs" } }, "sha512-GDxlvDsKxgjRvG5UBRJYyGJTMWLV30CJ4cV+e7QCTgftDHihrvio1fVPbNembhEr6J4WNm8IWy3fookgyTweLw=="], + + "h3-v2": ["h3@2.0.1-rc.20", "", { "dependencies": { "rou3": "^0.8.1", "srvx": "^0.11.13" }, "peerDependencies": { "crossws": "^0.4.1" }, "optionalPeers": ["crossws"], "bin": { "h3": "bin/h3.mjs" } }, "sha512-28ljodXuUp0fZovdiSRq4G9OgrxCztrJe5VdYzXAB7ueRvI7pIUqLU14Xi3XqdYJ/khXjfpUOOD2EQa6CmBgsg=="], + + "has-flag": ["has-flag@4.0.0", "", {}, "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="], + + "hookable": ["hookable@6.1.1", "", {}, "sha512-U9LYDy1CwhMCnprUfeAZWZGByVbhd54hwepegYTK7Pi5NvqEj63ifz5z+xukznehT7i6NIZRu89Ay1AZmRsLEQ=="], + + "httpxy": ["httpxy@0.5.5", "", {}, "sha512-uDjmnPyp1q4Sgzf3w+J/Fc6UqcCEj0x4Wjp7OqK5dGhNeDgpyrAmnS6ey8QWrX3SWDon2DMKf9sBa5X9+CVyMA=="], + + "iceberg-js": ["iceberg-js@0.8.1", "https://europe-west1-npm.pkg.dev/lovable-core-prod/sandbox-npm-cache/iceberg-js/-/iceberg-js-0.8.1.tgz", {}, "sha512-1dhVQZXhcHje7798IVM+xoo/1ZdVfzOMIc8/rgVSijRK38EDqOJoGula9N/8ZI5RD8QTxNQtK/Gozpr+qUqRRA=="], + + "ignore": ["ignore@5.3.2", "", {}, "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g=="], + + "import-fresh": ["import-fresh@3.3.1", "", { "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" } }, "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ=="], + + "imurmurhash": ["imurmurhash@0.1.4", "", {}, "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA=="], + + "input-otp": ["input-otp@1.4.2", "", { "peerDependencies": { "react": "^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc", "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc" } }, "sha512-l3jWwYNvrEa6NTCt7BECfCm48GvwuZzkoeG3gBL2w4CHeOXW3eKFmf9UNYkNfYc3mxMrthMnxjIE07MT0zLBQA=="], + + "internmap": ["internmap@2.0.3", "", {}, "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg=="], + + "is-extglob": ["is-extglob@2.1.1", "", {}, "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ=="], + + "is-glob": ["is-glob@4.0.3", "", { "dependencies": { "is-extglob": "^2.1.1" } }, "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg=="], + + "isbot": ["isbot@5.2.1", "", {}, "sha512-dJ+LpKyClQZ7NG+j3OensC/mAZkGpukE9YUrgPYvAZj2doVL0edfDgywTUh5CXa0o+nW9a1V9e5+CJTX8+SxRw=="], + + "isexe": ["isexe@2.0.0", "", {}, "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="], + + "jiti": ["jiti@2.7.0", "", { "bin": { "jiti": "lib/jiti-cli.mjs" } }, "sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ=="], + + "js-tokens": ["js-tokens@4.0.0", "", {}, "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="], + + "js-yaml": ["js-yaml@4.3.0", "", { "dependencies": { "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q=="], + + "jsesc": ["jsesc@3.1.0", "", { "bin": { "jsesc": "bin/jsesc" } }, "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA=="], + + "json-buffer": ["json-buffer@3.0.1", "", {}, "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ=="], + + "json-schema-traverse": ["json-schema-traverse@0.4.1", "", {}, "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="], + + "json-stable-stringify-without-jsonify": ["json-stable-stringify-without-jsonify@1.0.1", "", {}, "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw=="], + + "json5": ["json5@2.2.3", "", { "bin": { "json5": "lib/cli.js" } }, "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg=="], + + "keyv": ["keyv@4.5.4", "", { "dependencies": { "json-buffer": "3.0.1" } }, "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw=="], + + "launch-editor": ["launch-editor@2.14.1", "", { "dependencies": { "picocolors": "^1.1.1", "shell-quote": "^1.8.4" } }, "sha512-QWBrQsMpH7gPr965dsKD/3cKWiNoTjpATQf++Xq63N6sKRGMwlVXz41O1IZTMfZQgBctD/K5Zt06+/I6pP6+HA=="], + + "levn": ["levn@0.4.1", "", { "dependencies": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" } }, "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ=="], + + "lightningcss": ["lightningcss@1.33.0", "", { "dependencies": { "detect-libc": "^2.0.3" }, "optionalDependencies": { "lightningcss-android-arm64": "1.33.0", "lightningcss-darwin-arm64": "1.33.0", "lightningcss-darwin-x64": "1.33.0", "lightningcss-freebsd-x64": "1.33.0", "lightningcss-linux-arm-gnueabihf": "1.33.0", "lightningcss-linux-arm64-gnu": "1.33.0", "lightningcss-linux-arm64-musl": "1.33.0", "lightningcss-linux-x64-gnu": "1.33.0", "lightningcss-linux-x64-musl": "1.33.0", "lightningcss-win32-arm64-msvc": "1.33.0", "lightningcss-win32-x64-msvc": "1.33.0" } }, "sha512-WkUDrojuJs0xkgGf2udWxa3yGBRxPtxUkB79i6aCZLRgc7PM8fZe9TosfPDcvEpQZbuFASnHYmRLBLUbmLOIIA=="], + + "lightningcss-android-arm64": ["lightningcss-android-arm64@1.33.0", "", { "os": "android", "cpu": "arm64" }, "sha512-gEpRTalKdosp4Bb8qWtc2iOgE5SeIHlpS1up9bFq2wAyYhl1UdTObYiHe98zEM9SQvSoqQZ1IQD0JNpg3Ml5pg=="], + + "lightningcss-darwin-arm64": ["lightningcss-darwin-arm64@1.33.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-Sciaz8eenNTKn9b3t7+xr0ipTp9YxKQY4npwQ3mrRuL0BAVHBLyZxofhaKBAVtzmtRZ/zTyo0/to4B1uWG/Djg=="], + + "lightningcss-darwin-x64": ["lightningcss-darwin-x64@1.33.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-Z5UPAxzrjlWNNyGy6i65cJzzvgJ5D3T6wMvs+gWpY9d7qRhANrxqAp6LhxIgZhWEw18RfJTGcRxjuLIBr+m8XQ=="], + + "lightningcss-freebsd-x64": ["lightningcss-freebsd-x64@1.33.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-QQM/Ti/hQajJwCY+RiWuCZ9sdtI/XQk7nDK5vC8kkdwixezOlDgvDx7+RT+QjK6FcFT4MpsuoBnHIo/O3StRRg=="], + + "lightningcss-linux-arm-gnueabihf": ["lightningcss-linux-arm-gnueabihf@1.33.0", "", { "os": "linux", "cpu": "arm" }, "sha512-N7FVBe6iS24MlM6R/4RBTxGhQheZGs7tiQ9U32UtF75NzP5Q7xWPRqLBCKxlRQRk3rY1jCIPLzx7WzOhuUIRLQ=="], + + "lightningcss-linux-arm64-gnu": ["lightningcss-linux-arm64-gnu@1.33.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-j2v/itmy4HlNxlc6voKXYgBqNi0Ng2LShg4z7GufpEgs05P+2suBVyi9I6YHq5uoVFx9ETin3eCEhLVyXGQnKg=="], + + "lightningcss-linux-arm64-musl": ["lightningcss-linux-arm64-musl@1.33.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-yiO5ROMuYQgXbC60yjZU5CYSFZGKXL0HFATXt9mHJn1+zW55oCtMI9NfcVhYLMFDL7gV7oBPon/EmMMGg2OvtQ=="], + + "lightningcss-linux-x64-gnu": ["lightningcss-linux-x64-gnu@1.33.0", "", { "os": "linux", "cpu": "x64" }, "sha512-ar+Ju7LmcN0Jo4FpL4hpFybwNG9/3A/Br5KW2n2jyODg3MEZXaDYADdemoNS+BDNfMgKvylJLj4S5tyRActuAg=="], + + "lightningcss-linux-x64-musl": ["lightningcss-linux-x64-musl@1.33.0", "", { "os": "linux", "cpu": "x64" }, "sha512-RYiYbkokw0trfKqqzfF55lginwEPrD3OJDfTuJzFs1MK6iFnDenaz1fqLLtX4ITG3OktJQXOeTaw1awrBAlZPw=="], + + "lightningcss-win32-arm64-msvc": ["lightningcss-win32-arm64-msvc@1.33.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-1K+MPfLSFVpphzpdbfkhlWk6wBrTObBzS2T6db10PNOZgR9GoVsAWzwNyuhUYYbTp23j+4RrncfujZ4uAzXvwA=="], + + "lightningcss-win32-x64-msvc": ["lightningcss-win32-x64-msvc@1.33.0", "", { "os": "win32", "cpu": "x64" }, "sha512-OlEICDx/Xl0FqSp4bry8zFnCvGpig3Gl4gCquvYwHuqJKEC1+n9NgDniFvqHGmMv1ZkqDJrDqKKSykTDX+ehuA=="], + + "locate-path": ["locate-path@6.0.0", "", { "dependencies": { "p-locate": "^5.0.0" } }, "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw=="], + + "lodash": ["lodash@4.18.1", "", {}, "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q=="], + + "lodash.merge": ["lodash.merge@4.6.2", "", {}, "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="], + + "loose-envify": ["loose-envify@1.4.0", "", { "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" }, "bin": { "loose-envify": "cli.js" } }, "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q=="], + + "lru-cache": ["lru-cache@5.1.1", "", { "dependencies": { "yallist": "^3.0.2" } }, "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w=="], + + "lucide-react": ["lucide-react@0.575.0", "", { "peerDependencies": { "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-VuXgKZrk0uiDlWjGGXmKV6MSk9Yy4l10qgVvzGn2AWBx1Ylt0iBexKOAoA6I7JO3m+M9oeovJd3yYENfkUbOeg=="], + + "magic-string": ["magic-string@0.30.21", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.5" } }, "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ=="], + + "minimatch": ["minimatch@3.1.5", "", { "dependencies": { "brace-expansion": "^1.1.7" } }, "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w=="], + + "ms": ["ms@2.1.3", "", {}, "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="], + + "nanoid": ["nanoid@3.3.16", "", { "bin": { "nanoid": "bin/nanoid.cjs" } }, "sha512-bzlKTyNJ7+LdGIIwy8ijFpIqEQIvafahV7eYykJ8Cvh42EdJeODoJ6gUJXpQJvej1BddH8OqTXZNE/KfbWAu8Q=="], + + "natural-compare": ["natural-compare@1.4.0", "", {}, "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw=="], + + "nf3": ["nf3@0.3.23", "", {}, "sha512-RWVLAWozmVD3AaDmaU3qMGB3v+yNlH5d9qqStI4e/WLlNQVnJ4YErGDbYCIrGFyrHdbF6I6Baf0Ae6c7tFYmSg=="], + + "nitro": ["nitro@3.0.260603-beta", "", { "dependencies": { "consola": "^3.4.2", "crossws": "^0.4.5", "db0": "^0.3.4", "env-runner": "^0.1.9", "h3": "^2.0.1-rc.22", "hookable": "^6.1.1", "nf3": "^0.3.17", "ocache": "^0.1.4", "ofetch": "^2.0.0-alpha.3", "ohash": "^2.0.11", "rolldown": "^1.0.3", "srvx": "^0.11.16", "unenv": "^2.0.0-rc.24", "unstorage": "^2.0.0-alpha.7" }, "peerDependencies": { "@vercel/queue": "^0.2.0", "dotenv": "*", "giget": "*", "jiti": "^2.7.0", "rollup": "^4.60.4", "vite": "^7 || ^8", "xml2js": "^0.6.2", "zephyr-agent": "^0.2.0" }, "optionalPeers": ["@vercel/queue", "dotenv", "giget", "jiti", "rollup", "vite", "xml2js", "zephyr-agent"], "bin": { "nitro": "dist/cli/index.mjs" } }, "sha512-ffaSHK00a7YDlDizoEHwcxPwpQpdBRRA8k42ymTsRnfl3ipGeKgv4gnPr6DgmCNTo4tYVPK3bHBEv1gNhWpo/A=="], + + "node-releases": ["node-releases@2.0.51", "", {}, "sha512-wRNIrw4DmVLKQlbgOMdkMx27Wrpzes2hh5Jtbi2bjPd+4wJstWIqP5A+lscnqbm0xxmT5Bpg8Lec5ItEBwx6BQ=="], + + "object-assign": ["object-assign@4.1.1", "", {}, "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg=="], + + "ocache": ["ocache@0.1.5", "", { "dependencies": { "ohash": "^2.0.11" } }, "sha512-kNNnkkVQup/QDvmTz8Q84wc2ntiyoVHDxa6eHWKt5qdGAmFRBIxy83rxgCYEjW0x06UJ9E3P6VgM2yY4rOBH4w=="], + + "ofetch": ["ofetch@2.0.0-alpha.3", "", {}, "sha512-zpYTCs2byOuft65vI3z43Dd6iSdFbOZZLb9/d21aCpx2rGastVU9dOCv0lu4ykc1Ur1anAYjDi3SUvR0vq50JA=="], + + "ohash": ["ohash@2.0.11", "", {}, "sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ=="], + + "optionator": ["optionator@0.9.4", "", { "dependencies": { "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", "type-check": "^0.4.0", "word-wrap": "^1.2.5" } }, "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g=="], + + "oxc-parser": ["oxc-parser@0.120.0", "", { "dependencies": { "@oxc-project/types": "^0.120.0" }, "optionalDependencies": { "@oxc-parser/binding-android-arm-eabi": "0.120.0", "@oxc-parser/binding-android-arm64": "0.120.0", "@oxc-parser/binding-darwin-arm64": "0.120.0", "@oxc-parser/binding-darwin-x64": "0.120.0", "@oxc-parser/binding-freebsd-x64": "0.120.0", "@oxc-parser/binding-linux-arm-gnueabihf": "0.120.0", "@oxc-parser/binding-linux-arm-musleabihf": "0.120.0", "@oxc-parser/binding-linux-arm64-gnu": "0.120.0", "@oxc-parser/binding-linux-arm64-musl": "0.120.0", "@oxc-parser/binding-linux-ppc64-gnu": "0.120.0", "@oxc-parser/binding-linux-riscv64-gnu": "0.120.0", "@oxc-parser/binding-linux-riscv64-musl": "0.120.0", "@oxc-parser/binding-linux-s390x-gnu": "0.120.0", "@oxc-parser/binding-linux-x64-gnu": "0.120.0", "@oxc-parser/binding-linux-x64-musl": "0.120.0", "@oxc-parser/binding-openharmony-arm64": "0.120.0", "@oxc-parser/binding-wasm32-wasi": "0.120.0", "@oxc-parser/binding-win32-arm64-msvc": "0.120.0", "@oxc-parser/binding-win32-ia32-msvc": "0.120.0", "@oxc-parser/binding-win32-x64-msvc": "0.120.0" } }, "sha512-WyPWZlcIm+Fkte63FGfgFB8mAAk33aH9h5N9lphXVOHSXEBFFsmYdOBedVKly363aWABjZdaj/m9lBfEY4wt+w=="], + + "p-limit": ["p-limit@3.1.0", "", { "dependencies": { "yocto-queue": "^0.1.0" } }, "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ=="], + + "p-locate": ["p-locate@5.0.0", "", { "dependencies": { "p-limit": "^3.0.2" } }, "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw=="], + + "parent-module": ["parent-module@1.0.1", "", { "dependencies": { "callsites": "^3.0.0" } }, "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g=="], + + "path-exists": ["path-exists@4.0.0", "", {}, "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="], + + "path-key": ["path-key@3.1.1", "", {}, "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="], + + "pathe": ["pathe@2.0.3", "", {}, "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w=="], + + "picocolors": ["picocolors@1.1.1", "", {}, "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="], + + "picomatch": ["picomatch@4.0.5", "", {}, "sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A=="], + + "postcss": ["postcss@8.5.24", "", { "dependencies": { "nanoid": "^3.3.16", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" } }, "sha512-8RyVklq0owXUTa4xlpzu4l9AaVKIdQvAcOHZWaMh98HgySsUtxRVf/chRe3dsSLqb6i40BzGRzEUddRaI+9TSw=="], + + "prelude-ls": ["prelude-ls@1.2.1", "", {}, "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g=="], + + "prettier": ["prettier@3.9.6", "", { "bin": { "prettier": "bin/prettier.cjs" } }, "sha512-OpN0zzVdiaiAhxpuuj5efpIS4sY9j7bY6uR5mnj5yPzGkdkjNKSJeUThPb60Jw29QuAZgA4o+/iB49kFiaBX6g=="], + + "prettier-linter-helpers": ["prettier-linter-helpers@1.0.1", "", { "dependencies": { "fast-diff": "^1.1.2" } }, "sha512-SxToR7P8Y2lWmv/kTzVLC1t/GDI2WGjMwNhLLE9qtH8Q13C+aEmuRlzDst4Up4s0Wc8sF2M+J57iB3cMLqftfg=="], + + "prop-types": ["prop-types@15.8.1", "", { "dependencies": { "loose-envify": "^1.4.0", "object-assign": "^4.1.1", "react-is": "^16.13.1" } }, "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg=="], + + "punycode": ["punycode@2.3.1", "", {}, "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg=="], + + "react": ["react@19.2.8", "", {}, "sha512-PWaYA1L/q9u2u7xYQi+Y3L3Yfnie7XyLeaJICV1MGD6LprsBxcAqGjYyr0eY3p+QdsA+x/Irkt4Qif8D63+Sbw=="], + + "react-day-picker": ["react-day-picker@9.14.0", "", { "dependencies": { "@date-fns/tz": "^1.4.1", "@tabby_ai/hijri-converter": "1.0.5", "date-fns": "^4.1.0", "date-fns-jalali": "4.1.0-0" }, "peerDependencies": { "react": ">=16.8.0" } }, "sha512-tBaoDWjPwe0M5pGrum4H0SR6Lyk+BO9oHnp9JbKpGKW2mlraNPgP9BMfsg5pWpwrssARmeqk7YBl2oXutZTaHA=="], + + "react-dom": ["react-dom@19.2.8", "", { "dependencies": { "scheduler": "^0.27.0" }, "peerDependencies": { "react": "^19.2.8" } }, "sha512-rVprimfGBG3DR+Tq0IQG2DT5PxKth1WIGDmj5yPmlzr4YBe7uyE+Du4oVqTDXZSHGGGXRtTJEGSSePyQCMBglQ=="], + + "react-hook-form": ["react-hook-form@7.83.0", "", { "peerDependencies": { "react": "^16.8.0 || ^17 || ^18 || ^19" } }, "sha512-AXt8cMCmx5a7u4uvpb2uRFVrWQhllI4pV+LSykxIac/hjt44TnQkmX9BKuQi2i+LDC62esmiLpilkav+kjVf/A=="], + + "react-is": ["react-is@18.3.1", "", {}, "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg=="], + + "react-refresh": ["react-refresh@0.18.0", "", {}, "sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw=="], + + "react-remove-scroll": ["react-remove-scroll@2.7.2", "", { "dependencies": { "react-remove-scroll-bar": "^2.3.7", "react-style-singleton": "^2.2.3", "tslib": "^2.1.0", "use-callback-ref": "^1.3.3", "use-sidecar": "^1.1.3" }, "peerDependencies": { "@types/react": "*", "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q=="], + + "react-remove-scroll-bar": ["react-remove-scroll-bar@2.3.8", "", { "dependencies": { "react-style-singleton": "^2.2.2", "tslib": "^2.0.0" }, "peerDependencies": { "@types/react": "*", "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q=="], + + "react-resizable-panels": ["react-resizable-panels@4.12.2", "", { "peerDependencies": { "react": "^18.0.0 || ^19.0.0", "react-dom": "^18.0.0 || ^19.0.0" } }, "sha512-NwY5LCo4WrxVvDh0xoMML6EMLPONP/8ckKcIdpnojxexoatZdjLiRqLJQjQK5CPkd4SYiB/2M5BVrjZBQtOO7Q=="], + + "react-smooth": ["react-smooth@4.0.4", "", { "dependencies": { "fast-equals": "^5.0.1", "prop-types": "^15.8.1", "react-transition-group": "^4.4.5" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-gnGKTpYwqL0Iii09gHobNolvX4Kiq4PKx6eWBCYYix+8cdw+cGo3do906l1NBPKkSWx1DghC1dlWG9L2uGd61Q=="], + + "react-style-singleton": ["react-style-singleton@2.2.3", "", { "dependencies": { "get-nonce": "^1.0.0", "tslib": "^2.0.0" }, "peerDependencies": { "@types/react": "*", "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ=="], + + "react-transition-group": ["react-transition-group@4.4.5", "", { "dependencies": { "@babel/runtime": "^7.5.5", "dom-helpers": "^5.0.1", "loose-envify": "^1.4.0", "prop-types": "^15.6.2" }, "peerDependencies": { "react": ">=16.6.0", "react-dom": ">=16.6.0" } }, "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g=="], + + "readdirp": ["readdirp@5.0.0", "", {}, "sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ=="], + + "recharts": ["recharts@2.15.4", "", { "dependencies": { "clsx": "^2.0.0", "eventemitter3": "^4.0.1", "lodash": "^4.17.21", "react-is": "^18.3.1", "react-smooth": "^4.0.4", "recharts-scale": "^0.4.4", "tiny-invariant": "^1.3.1", "victory-vendor": "^36.6.8" }, "peerDependencies": { "react": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-UT/q6fwS3c1dHbXv2uFgYJ9BMFHu3fwnd7AYZaEQhXuYQ4hgsxLvsUXzGdKeZrW5xopzDCvuA2N41WJ88I7zIw=="], + + "recharts-scale": ["recharts-scale@0.4.5", "", { "dependencies": { "decimal.js-light": "^2.4.1" } }, "sha512-kivNFO+0OcUNu7jQquLXAxz1FIwZj8nrj+YkOKc5694NbjCvcT6aSZiIzNzd2Kul4o4rTto8QVR9lMNtxD4G1w=="], + + "resolve-from": ["resolve-from@4.0.0", "", {}, "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g=="], + + "rolldown": ["rolldown@1.2.0", "", { "dependencies": { "@oxc-project/types": "=0.140.0", "@rolldown/pluginutils": "^1.0.0" }, "optionalDependencies": { "@rolldown/binding-android-arm64": "1.2.0", "@rolldown/binding-darwin-arm64": "1.2.0", "@rolldown/binding-darwin-x64": "1.2.0", "@rolldown/binding-freebsd-x64": "1.2.0", "@rolldown/binding-linux-arm-gnueabihf": "1.2.0", "@rolldown/binding-linux-arm64-gnu": "1.2.0", "@rolldown/binding-linux-arm64-musl": "1.2.0", "@rolldown/binding-linux-ppc64-gnu": "1.2.0", "@rolldown/binding-linux-s390x-gnu": "1.2.0", "@rolldown/binding-linux-x64-gnu": "1.2.0", "@rolldown/binding-linux-x64-musl": "1.2.0", "@rolldown/binding-openharmony-arm64": "1.2.0", "@rolldown/binding-wasm32-wasi": "1.2.0", "@rolldown/binding-win32-arm64-msvc": "1.2.0", "@rolldown/binding-win32-x64-msvc": "1.2.0" }, "bin": { "rolldown": "./bin/cli.mjs" } }, "sha512-u7tgm5l4Yw1iTqUL4EcYOAt7fFvCgQMLeidrnD4GALlC6aOznCjezYajgxeyKw27u0Q5N7fwgCzjVyPIWzwuBA=="], + + "rou3": ["rou3@0.9.1", "", {}, "sha512-z/sSmzvtwMDDnxsPVhfWMuG6F6mbmhFDXoVqLmMfbpDD9qfV3GDmSQpf0+W296/ZDIpW2wcMmBfpVFzcnOi/nA=="], + + "scheduler": ["scheduler@0.27.0", "", {}, "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q=="], + + "semver": ["semver@6.3.1", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="], + + "seroval": ["seroval@1.5.6", "", {}, "sha512-rVQVWjjSvlINzaQPZH5JFqsqEsIWdTxY3iJZCnTL/5gQbXIRooVZKI60tVCkOVfzcRPejboxO2t0P89dg5mQaA=="], + + "seroval-plugins": ["seroval-plugins@1.5.6", "", { "peerDependencies": { "seroval": "^1.0" } }, "sha512-HXuLAX2pu/UByPpaeo/TaMfvMIi+1QqIoPJYCcAtU8QkVNwgR6MPlGuCQTErV1JwraaMbYaWVIBX7mppzGLATQ=="], + + "shebang-command": ["shebang-command@2.0.0", "", { "dependencies": { "shebang-regex": "^3.0.0" } }, "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA=="], + + "shebang-regex": ["shebang-regex@3.0.0", "", {}, "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="], + + "shell-quote": ["shell-quote@1.10.0", "", {}, "sha512-w1aiOKwKuRgtwAReIIj89puqg+I7GvX4IbLrvmhXbzQsj1+Zwi4VO3+fa6ZF91TWSjIxoEkKnMeHcLEODK5ZXA=="], + + "sonner": ["sonner@2.0.7", "", { "peerDependencies": { "react": "^18.0.0 || ^19.0.0 || ^19.0.0-rc", "react-dom": "^18.0.0 || ^19.0.0 || ^19.0.0-rc" } }, "sha512-W6ZN4p58k8aDKA4XPcx2hpIQXBRAgyiWVkYhT7CvK6D3iAu7xjvVyhQHg2/iaKJZ1XVJ4r7XuwGL+WGEK37i9w=="], + + "source-map": ["source-map@0.7.6", "", {}, "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ=="], + + "source-map-js": ["source-map-js@1.2.1", "", {}, "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA=="], + + "srvx": ["srvx@0.11.22", "", { "bin": { "srvx": "bin/srvx.mjs" } }, "sha512-LqZxxBDMKuMAZzFzJnDCkFOrs9MZQZr0LvHiO/SuSZVdQaXD7xQ5UWTUxheJrQPve1qk9MG2B/yttUvJxw8egQ=="], + + "strip-json-comments": ["strip-json-comments@3.1.1", "", {}, "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig=="], + + "supports-color": ["supports-color@7.2.0", "", { "dependencies": { "has-flag": "^4.0.0" } }, "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw=="], + + "synckit": ["synckit@0.11.13", "", { "dependencies": { "@pkgr/core": "^0.3.6" } }, "sha512-eNRKgb3z66Yp3D2CixVujOUvXLFUTij/zVnV8KRyvFdQwpz7I5DS8UfRkTeLzb64u+dkzDSdelE24izu+zSSUg=="], + + "tailwind-merge": ["tailwind-merge@3.6.0", "", {}, "sha512-uxL7qAVQriqRQPAyK3pj66VqskWqoZ37PW94jwOTwNfq/z9oyu1V+eqrZqtR2+fCiXdYOZe/Modt8GtvqNzu+w=="], + + "tailwindcss": ["tailwindcss@4.3.3", "", {}, "sha512-gOhV3P7ufE62QDGg1zVaTgCR+EtPv92k2nIhVcVKcLmxT1sUBsQGhnZj175j+MqRt4zLF7ic+sCYjfhxMxj7YQ=="], + + "tapable": ["tapable@2.3.3", "", {}, "sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A=="], + + "tiny-invariant": ["tiny-invariant@1.3.3", "", {}, "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg=="], + + "tinyglobby": ["tinyglobby@0.2.17", "", { "dependencies": { "fdir": "^6.5.0", "picomatch": "^4.0.4" } }, "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g=="], + + "ts-api-utils": ["ts-api-utils@2.5.0", "", { "peerDependencies": { "typescript": ">=4.8.4" } }, "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA=="], + + "tsconfck": ["tsconfck@3.1.6", "", { "peerDependencies": { "typescript": "^5.0.0" }, "optionalPeers": ["typescript"], "bin": { "tsconfck": "bin/tsconfck.js" } }, "sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w=="], + + "tslib": ["tslib@2.8.1", "", {}, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], + + "tw-animate-css": ["tw-animate-css@1.4.0", "", {}, "sha512-7bziOlRqH0hJx80h/3mbicLW7o8qLsH5+RaLR2t+OHM3D0JlWGODQKQ4cxbK7WlvmUxpcj6Kgu6EKqjrGFe3QQ=="], + + "type-check": ["type-check@0.4.0", "", { "dependencies": { "prelude-ls": "^1.2.1" } }, "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew=="], + + "typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="], + + "typescript-eslint": ["typescript-eslint@8.65.0", "", { "dependencies": { "@typescript-eslint/eslint-plugin": "8.65.0", "@typescript-eslint/parser": "8.65.0", "@typescript-eslint/typescript-estree": "8.65.0", "@typescript-eslint/utils": "8.65.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", "typescript": ">=4.8.4 <6.1.0" } }, "sha512-/ggrHAwyjENDusvyxbuqxAC2dTnZg/Z8F+fgQtYIz+L6n/9HfSlEZcFGV/NsMNa6CkGk0xUjUAFwC0vHOflvIA=="], + + "ufo": ["ufo@1.6.4", "", {}, "sha512-JFNbkD1Svwe0KvGi8GOeLcP4kAWQ609twvCdcHxq1oSL8svv39ZuSvajcD8B+5D0eL4+s1Is2D/O6KN3qcTeRA=="], + + "undici-types": ["undici-types@6.21.0", "", {}, "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ=="], + + "unenv": ["unenv@2.0.0-rc.24", "", { "dependencies": { "pathe": "^2.0.3" } }, "sha512-i7qRCmY42zmCwnYlh9H2SvLEypEFGye5iRmEMKjcGi7zk9UquigRjFtTLz0TYqr0ZGLZhaMHl/foy1bZR+Cwlw=="], + + "unplugin": ["unplugin@3.3.0", "", { "dependencies": { "@jridgewell/remapping": "^2.3.5", "picomatch": "^4.0.4", "webpack-virtual-modules": "^0.6.2" }, "peerDependencies": { "@farmfe/core": "*", "@rspack/core": "*", "bun-types-no-globals": "*", "esbuild": "*", "rolldown": "*", "rollup": "*", "unloader": "*", "vite": "*", "webpack": "*" }, "optionalPeers": ["@farmfe/core", "@rspack/core", "bun-types-no-globals", "esbuild", "rolldown", "rollup", "unloader", "vite", "webpack"] }, "sha512-qa66K+crbfyE6JK10GjvbJeRrOsuC/JpbnHctfyp/i4oBTxWOzJfRZyDiOk1PtErMFRu8JhsU/wPvOdBNWe5Rg=="], + + "unstorage": ["unstorage@2.0.0-alpha.7", "", { "peerDependencies": { "@azure/app-configuration": "^1.11.0", "@azure/cosmos": "^4.9.1", "@azure/data-tables": "^13.3.2", "@azure/identity": "^4.13.0", "@azure/keyvault-secrets": "^4.10.0", "@azure/storage-blob": "^12.31.0", "@capacitor/preferences": "^6 || ^7 || ^8", "@deno/kv": ">=0.13.0", "@netlify/blobs": "^6.5.0 || ^7.0.0 || ^8.1.0 || ^9.0.0 || ^10.0.0", "@planetscale/database": "^1.19.0", "@upstash/redis": "^1.36.2", "@vercel/blob": ">=0.27.3", "@vercel/functions": "^2.2.12 || ^3.0.0", "@vercel/kv": "^1.0.1", "aws4fetch": "^1.0.20", "chokidar": "^4 || ^5", "db0": ">=0.3.4", "idb-keyval": "^6.2.2", "ioredis": "^5.9.3", "lru-cache": "^11.2.6", "mongodb": "^6 || ^7", "ofetch": "*", "uploadthing": "^7.7.4" }, "optionalPeers": ["@azure/app-configuration", "@azure/cosmos", "@azure/data-tables", "@azure/identity", "@azure/keyvault-secrets", "@azure/storage-blob", "@capacitor/preferences", "@deno/kv", "@netlify/blobs", "@planetscale/database", "@upstash/redis", "@vercel/blob", "@vercel/functions", "@vercel/kv", "aws4fetch", "chokidar", "db0", "idb-keyval", "ioredis", "lru-cache", "mongodb", "ofetch", "uploadthing"] }, "sha512-ELPztchk2zgFJnakyodVY3vJWGW9jy//keJ32IOJVGUMyaPydwcA1FtVvWqT0TNRch9H+cMNEGllfVFfScImog=="], + + "update-browserslist-db": ["update-browserslist-db@1.2.3", "", { "dependencies": { "escalade": "^3.2.0", "picocolors": "^1.1.1" }, "peerDependencies": { "browserslist": ">= 4.21.0" }, "bin": { "update-browserslist-db": "cli.js" } }, "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w=="], + + "uri-js": ["uri-js@4.4.1", "", { "dependencies": { "punycode": "^2.1.0" } }, "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg=="], + + "use-callback-ref": ["use-callback-ref@1.3.3", "", { "dependencies": { "tslib": "^2.0.0" }, "peerDependencies": { "@types/react": "*", "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg=="], + + "use-sidecar": ["use-sidecar@1.1.3", "", { "dependencies": { "detect-node-es": "^1.1.0", "tslib": "^2.0.0" }, "peerDependencies": { "@types/react": "*", "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ=="], + + "use-sync-external-store": ["use-sync-external-store@1.6.0", "", { "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w=="], + + "vaul": ["vaul@1.1.2", "", { "dependencies": { "@radix-ui/react-dialog": "^1.1.1" }, "peerDependencies": { "react": "^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc", "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc" } }, "sha512-ZFkClGpWyI2WUQjdLJ/BaGuV6AVQiJ3uELGk3OYtP+B6yCO7Cmn9vPFXVJkRaGkOJu3m8bQMgtyzNHixULceQA=="], + + "victory-vendor": ["victory-vendor@36.9.2", "", { "dependencies": { "@types/d3-array": "^3.0.3", "@types/d3-ease": "^3.0.0", "@types/d3-interpolate": "^3.0.1", "@types/d3-scale": "^4.0.2", "@types/d3-shape": "^3.1.0", "@types/d3-time": "^3.0.0", "@types/d3-timer": "^3.0.0", "d3-array": "^3.1.6", "d3-ease": "^3.0.1", "d3-interpolate": "^3.0.1", "d3-scale": "^4.0.2", "d3-shape": "^3.1.0", "d3-time": "^3.0.0", "d3-timer": "^3.0.1" } }, "sha512-PnpQQMuxlwYdocC8fIJqVXvkeViHYzotI+NJrCuav0ZYFoq912ZHBk3mCeuj+5/VpodOjPe1z0Fk2ihgzlXqjQ=="], + + "vite": ["vite@8.1.5", "", { "dependencies": { "lightningcss": "^1.32.0", "picomatch": "^4.0.5", "postcss": "^8.5.17", "rolldown": "~1.1.5", "tinyglobby": "^0.2.17" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "@vitejs/devtools": "^0.3.0", "esbuild": "^0.27.0 || ^0.28.0", "jiti": ">=1.21.0", "less": "^4.0.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "@vitejs/devtools", "esbuild", "jiti", "less", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-7ULLwsCdYx/nRyrpiEwvqb5TFHrMVZyBt+rg/OAXT7rgj/z+DtTDyKFeLAdDkubDVDKD8jOsndmy7m55XcfUsw=="], + + "vite-tsconfig-paths": ["vite-tsconfig-paths@6.1.1", "", { "dependencies": { "debug": "^4.1.1", "globrex": "^0.1.2", "tsconfck": "^3.0.3" }, "peerDependencies": { "vite": "*" } }, "sha512-2cihq7zliibCCZ8P9cKJrQBkfgdvcFkOOc3Y02o3GWUDLgqjWsZudaoiuOwO/gzTzy17cS5F7ZPo4bsnS4DGkg=="], + + "vitefu": ["vitefu@1.1.3", "", { "peerDependencies": { "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" }, "optionalPeers": ["vite"] }, "sha512-ub4okH7Z5KLjb6hDyjqrGXqWtWvoYdU3IGm/NorpgHncKoLTCfRIbvlhBm7r0YstIaQRYlp4yEbFqDcKSzXSSg=="], + + "webpack-virtual-modules": ["webpack-virtual-modules@0.6.2", "", {}, "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ=="], + + "which": ["which@2.0.2", "", { "dependencies": { "isexe": "^2.0.0" }, "bin": { "node-which": "./bin/node-which" } }, "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA=="], + + "word-wrap": ["word-wrap@1.2.5", "", {}, "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA=="], + + "ws": ["ws@8.21.1", "", { "peerDependencies": { "bufferutil": "^4.0.1", "utf-8-validate": ">=5.0.2" }, "optionalPeers": ["bufferutil", "utf-8-validate"] }, "sha512-+0NTnW77fFN/DjQi6k/Sq/Yvk4Sgajw7urW8V+asjXnRgDs9gyGkdb7EzgfhA4goXsRIZKE28fzIXBHEzhuiWw=="], + + "xmlbuilder2": ["xmlbuilder2@4.0.3", "", { "dependencies": { "@oozcitak/dom": "^2.0.2", "@oozcitak/infra": "^2.0.2", "@oozcitak/util": "^10.0.0", "js-yaml": "^4.1.1" } }, "sha512-bx8Q1STctnNaaDymWnkfQLKofs0mGNN7rLLapJlGuV3VlvegD7Ls4ggMjE3aUSWItCCzU0PEv45lI87iSigiCA=="], + + "yallist": ["yallist@3.1.1", "", {}, "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="], + + "yocto-queue": ["yocto-queue@0.1.0", "", {}, "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q=="], + + "zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="], + + "@eslint-community/eslint-utils/eslint-visitor-keys": ["eslint-visitor-keys@3.4.3", "", {}, "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag=="], + + "@eslint/eslintrc/globals": ["globals@14.0.0", "", {}, "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ=="], + + "@tailwindcss/node/lightningcss": ["lightningcss@1.32.0", "", { "dependencies": { "detect-libc": "^2.0.3" }, "optionalDependencies": { "lightningcss-android-arm64": "1.32.0", "lightningcss-darwin-arm64": "1.32.0", "lightningcss-darwin-x64": "1.32.0", "lightningcss-freebsd-x64": "1.32.0", "lightningcss-linux-arm-gnueabihf": "1.32.0", "lightningcss-linux-arm64-gnu": "1.32.0", "lightningcss-linux-arm64-musl": "1.32.0", "lightningcss-linux-x64-gnu": "1.32.0", "lightningcss-linux-x64-musl": "1.32.0", "lightningcss-win32-arm64-msvc": "1.32.0", "lightningcss-win32-x64-msvc": "1.32.0" } }, "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ=="], + + "@tailwindcss/oxide-wasm32-wasi/@emnapi/core": ["@emnapi/core@1.11.2", "", { "dependencies": { "@emnapi/wasi-threads": "1.2.2", "tslib": "^2.4.0" }, "bundled": true }, "sha512-TC8MkTuZUtcTSiFeuC0ksCh9QIJ5+F21MvZ4Wn4ORfYaFJ/0dsiudv5tVkejgwZlwQ39jL9WWDe2lz8x0WglOA=="], + + "@tailwindcss/oxide-wasm32-wasi/@emnapi/runtime": ["@emnapi/runtime@1.11.2", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-kyOl3X0DuTiT1h2ft8r2fYO8JYtU9a9Xis/zBSiGArNaagCOWx90N1k2wxp18czFDH+OgcWGb5ZP/XMt3dcyPA=="], + + "@tailwindcss/oxide-wasm32-wasi/@emnapi/wasi-threads": ["@emnapi/wasi-threads@1.2.2", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA=="], + + "@tailwindcss/oxide-wasm32-wasi/@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@1.2.0", "", { "dependencies": { "@tybys/wasm-util": "^0.10.3" }, "peerDependencies": { "@emnapi/core": "^2.0.0-alpha.3", "@emnapi/runtime": "^2.0.0-alpha.3" }, "bundled": true }, "sha512-kDoONqMa+VnZ4vvvu/ZUurpJ4gkZU57e7g69qpNgWhYcZFPUHZM2CEMKm+cG6ufDVALbjMvfmMjFVqaK7uEMnA=="], + + "@tailwindcss/oxide-wasm32-wasi/@tybys/wasm-util": ["@tybys/wasm-util@0.10.3", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg=="], + + "@tailwindcss/oxide-wasm32-wasi/tslib": ["tslib@2.8.1", "", { "bundled": true }, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], + + "@tanstack/devtools-bundler-core/chalk": ["chalk@5.6.2", "", {}, "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA=="], + + "@tanstack/devtools-vite/chalk": ["chalk@5.6.2", "", {}, "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA=="], + + "@tanstack/router-generator/zod": ["zod@4.4.3", "", {}, "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ=="], + + "@tanstack/router-plugin/zod": ["zod@4.4.3", "", {}, "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ=="], + + "@tanstack/start-plugin-core/@babel/code-frame": ["@babel/code-frame@7.27.1", "", { "dependencies": { "@babel/helper-validator-identifier": "^7.27.1", "js-tokens": "^4.0.0", "picocolors": "^1.1.1" } }, "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg=="], + + "@tanstack/start-plugin-core/zod": ["zod@4.4.3", "", {}, "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ=="], + + "@typescript-eslint/eslint-plugin/ignore": ["ignore@7.0.6", "", {}, "sha512-BAg6QkE8W+TuQLrrw0Ugr7HegXduRuuj8/ti2kSOc+jz1dmx8/WNcjr6XGnq5YpDWxFwwaavqD0+jIUOKelTsw=="], + + "@typescript-eslint/typescript-estree/minimatch": ["minimatch@10.2.6", "", { "dependencies": { "brace-expansion": "^5.0.8" } }, "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A=="], + + "@typescript-eslint/typescript-estree/semver": ["semver@7.8.5", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA=="], + + "@typescript-eslint/visitor-keys/eslint-visitor-keys": ["eslint-visitor-keys@5.0.1", "", {}, "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA=="], + + "h3/srvx": ["srvx@0.12.4", "", { "bin": { "srvx": "bin/srvx.mjs" } }, "sha512-RixzFlMn3dvzDTpKIAXhXrqL4cy6vScNCP0VVwgVbUBU94o+DiXLsFnAZetbyKAEnK6Ox3hzHXWGsyv/Iibv7g=="], + + "h3-v2/rou3": ["rou3@0.8.1", "", {}, "sha512-ePa+XGk00/3HuCqrEnK3LxJW7I0SdNg6EFzKUJG73hMAdDcOUC/i/aSz7LSDwLrGr33kal/rqOGydzwl6U7zBA=="], + + "oxc-parser/@oxc-project/types": ["@oxc-project/types@0.120.0", "", {}, "sha512-k1YNu55DuvAip/MGE1FTsIuU3FUCn6v/ujG9V7Nq5Df/kX2CWb13hhwD0lmJGMGqE+bE1MXvv9SZVnMzEXlWcg=="], + + "prop-types/react-is": ["react-is@16.13.1", "", {}, "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="], + + "rolldown/@rolldown/pluginutils": ["@rolldown/pluginutils@1.0.1", "", {}, "sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw=="], + + "vite/rolldown": ["rolldown@1.1.5", "", { "dependencies": { "@oxc-project/types": "=0.139.0", "@rolldown/pluginutils": "^1.0.0" }, "optionalDependencies": { "@rolldown/binding-android-arm64": "1.1.5", "@rolldown/binding-darwin-arm64": "1.1.5", "@rolldown/binding-darwin-x64": "1.1.5", "@rolldown/binding-freebsd-x64": "1.1.5", "@rolldown/binding-linux-arm-gnueabihf": "1.1.5", "@rolldown/binding-linux-arm64-gnu": "1.1.5", "@rolldown/binding-linux-arm64-musl": "1.1.5", "@rolldown/binding-linux-ppc64-gnu": "1.1.5", "@rolldown/binding-linux-s390x-gnu": "1.1.5", "@rolldown/binding-linux-x64-gnu": "1.1.5", "@rolldown/binding-linux-x64-musl": "1.1.5", "@rolldown/binding-openharmony-arm64": "1.1.5", "@rolldown/binding-wasm32-wasi": "1.1.5", "@rolldown/binding-win32-arm64-msvc": "1.1.5", "@rolldown/binding-win32-x64-msvc": "1.1.5" }, "bin": { "rolldown": "./bin/cli.mjs" } }, "sha512-t9z29cJjXf/vxQ8dyhCSpt6H6aSwHTk8cT5I3iy6SMXuFpk5mB6PL6XfC8PCwrPTx93udwKUm9HRteAlTGBLiA=="], + + "@tailwindcss/node/lightningcss/lightningcss-android-arm64": ["lightningcss-android-arm64@1.32.0", "", { "os": "android", "cpu": "arm64" }, "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg=="], + + "@tailwindcss/node/lightningcss/lightningcss-darwin-arm64": ["lightningcss-darwin-arm64@1.32.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ=="], + + "@tailwindcss/node/lightningcss/lightningcss-darwin-x64": ["lightningcss-darwin-x64@1.32.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w=="], + + "@tailwindcss/node/lightningcss/lightningcss-freebsd-x64": ["lightningcss-freebsd-x64@1.32.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig=="], + + "@tailwindcss/node/lightningcss/lightningcss-linux-arm-gnueabihf": ["lightningcss-linux-arm-gnueabihf@1.32.0", "", { "os": "linux", "cpu": "arm" }, "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw=="], + + "@tailwindcss/node/lightningcss/lightningcss-linux-arm64-gnu": ["lightningcss-linux-arm64-gnu@1.32.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ=="], + + "@tailwindcss/node/lightningcss/lightningcss-linux-arm64-musl": ["lightningcss-linux-arm64-musl@1.32.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg=="], + + "@tailwindcss/node/lightningcss/lightningcss-linux-x64-gnu": ["lightningcss-linux-x64-gnu@1.32.0", "", { "os": "linux", "cpu": "x64" }, "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA=="], + + "@tailwindcss/node/lightningcss/lightningcss-linux-x64-musl": ["lightningcss-linux-x64-musl@1.32.0", "", { "os": "linux", "cpu": "x64" }, "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg=="], + + "@tailwindcss/node/lightningcss/lightningcss-win32-arm64-msvc": ["lightningcss-win32-arm64-msvc@1.32.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw=="], + + "@tailwindcss/node/lightningcss/lightningcss-win32-x64-msvc": ["lightningcss-win32-x64-msvc@1.32.0", "", { "os": "win32", "cpu": "x64" }, "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q=="], + + "@typescript-eslint/typescript-estree/minimatch/brace-expansion": ["brace-expansion@5.0.8", "", { "dependencies": { "balanced-match": "^4.0.2" } }, "sha512-JZyDyq3D4AUifKTPOB7DELf6XsB3WdPuNxCtob1vFXPsSXhdAiHBWJ/tJ8HAc9aH84BK+5JFZLNkJKx3G9kzQg=="], + + "vite/rolldown/@oxc-project/types": ["@oxc-project/types@0.139.0", "", {}, "sha512-r9gHphtCs+1M7J0pw6Sn/hh/Wpa/iQrOOkrNAlVLF/gHq+/CJmHIWKKUUhdWjcD6CIa8idarspCsASiXCXvFUw=="], + + "vite/rolldown/@rolldown/binding-android-arm64": ["@rolldown/binding-android-arm64@1.1.5", "", { "os": "android", "cpu": "arm64" }, "sha512-lZg8fqIv2v7FF237bwMgzGZEJvGL79/s5knJ/i6FmsGF4XXlzccZ4jb+TrFIxtSSxFtIpdsgrPZeMk1I9AFcyQ=="], + + "vite/rolldown/@rolldown/binding-darwin-arm64": ["@rolldown/binding-darwin-arm64@1.1.5", "", { "os": "darwin", "cpu": "arm64" }, "sha512-51Bnx9pNiMRKSUNtBfySkNJ9vMU9Hh3I1ozDd6gyPPYzaXCfnptUcEZxXGYFn+ul2dtcMUiqGR1Yai2K10uoTw=="], + + "vite/rolldown/@rolldown/binding-darwin-x64": ["@rolldown/binding-darwin-x64@1.1.5", "", { "os": "darwin", "cpu": "x64" }, "sha512-Tm+gbfC0aHu1tBA/JvKQh32S0K6YgCHkiAF4/W6xX0K0RmNuc94VeK419dJoE65R5aRxmo+noZQSWrAMF6yb6g=="], + + "vite/rolldown/@rolldown/binding-freebsd-x64": ["@rolldown/binding-freebsd-x64@1.1.5", "", { "os": "freebsd", "cpu": "x64" }, "sha512-JMzDKCCXq93YccG5gz3hvOs1oXRKAf0XYpfOS88e+wZrC8Iugj6j68867vrYZkvpDDpKn/KoKORThmchMpF6TA=="], + + "vite/rolldown/@rolldown/binding-linux-arm-gnueabihf": ["@rolldown/binding-linux-arm-gnueabihf@1.1.5", "", { "os": "linux", "cpu": "arm" }, "sha512-uML21j2K5TfPGutKxub+M+nLjZIrWjXQ5Grx4lCe/nimTj9B4L63zHpjXLl4y0L3mcm2htEQIb06oCG/szerNw=="], + + "vite/rolldown/@rolldown/binding-linux-arm64-gnu": ["@rolldown/binding-linux-arm64-gnu@1.1.5", "", { "os": "linux", "cpu": "arm64" }, "sha512-navSiuTMogvnQoZoM/v+l3ZWo50/NTwSHSzheABx/RCnmUPaKwq9qSo4Br2OYRs21+Fz8uFqITZM3H4opOB0/Q=="], + + "vite/rolldown/@rolldown/binding-linux-arm64-musl": ["@rolldown/binding-linux-arm64-musl@1.1.5", "", { "os": "linux", "cpu": "arm64" }, "sha512-lAryqH7IteztmCXQXk0etKj4wBQ7Gx5S6LjKhsgp9zb8I5bsuvU/2llH1hDQcjsFeqIsovMVN339/8pUDDBXxA=="], + + "vite/rolldown/@rolldown/binding-linux-ppc64-gnu": ["@rolldown/binding-linux-ppc64-gnu@1.1.5", "", { "os": "linux", "cpu": "ppc64" }, "sha512-fsK/sNBnxzBlL4O1JNrZakVQxPspqpED5dLtNsZS9oOKmtSpdNIzxH2kkol5HYTWJN47sE20ztMJPxfZ89qGOg=="], + + "vite/rolldown/@rolldown/binding-linux-s390x-gnu": ["@rolldown/binding-linux-s390x-gnu@1.1.5", "", { "os": "linux", "cpu": "s390x" }, "sha512-gLYb4BIadlfTOYT5gO503n8zQjXflgzpD0FcyKh0Mzx3rqCZKnHoJWV9xe1KXUJ5lx2JfcSHr/mhzS0PC/McAA=="], + + "vite/rolldown/@rolldown/binding-linux-x64-gnu": ["@rolldown/binding-linux-x64-gnu@1.1.5", "", { "os": "linux", "cpu": "x64" }, "sha512-FjcpEKUyJygHgs1o50VYNvkt5+7Le/VEdYt0AkRpkL33MnyQfwr8l5mXwMmfmTbyMPr5vJLC+8/Gd9gXnwU1QQ=="], + + "vite/rolldown/@rolldown/binding-linux-x64-musl": ["@rolldown/binding-linux-x64-musl@1.1.5", "", { "os": "linux", "cpu": "x64" }, "sha512-Me+PfPI2TMeOQk0gYWfLQZtTktrmzbr8cDboqX83XKc7UrgAi55gF+2dUkWdxd19n55Essp2yeca+O9N5rBxHg=="], + + "vite/rolldown/@rolldown/binding-openharmony-arm64": ["@rolldown/binding-openharmony-arm64@1.1.5", "", { "os": "none", "cpu": "arm64" }, "sha512-yc5WrLzXks6zCQfn9Oxr8pORKyl/pF+QjHmW/Qx3qu0oyrrNC+y2JLTU1E2rcWYAmzlnqngWXHQjy51VzW70Vw=="], + + "vite/rolldown/@rolldown/binding-wasm32-wasi": ["@rolldown/binding-wasm32-wasi@1.1.5", "", { "dependencies": { "@emnapi/core": "1.11.1", "@emnapi/runtime": "1.11.1", "@napi-rs/wasm-runtime": "^1.1.6" }, "cpu": "none" }, "sha512-VbQGPX2b4r48TAMIM2cjgluIM1HYutm4pcTEJsle7iEP7sB1dFqtPLBVbdLAZCxy1txCcPxf4QFf4v8uvltPqA=="], + + "vite/rolldown/@rolldown/binding-win32-arm64-msvc": ["@rolldown/binding-win32-arm64-msvc@1.1.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-gHv82k63z4qpV5+Q1y/12KrK0ltWBukVDI8nZcbT7Tt/ZlOIVwppazneq0F93oDxTo3IgAMEDIoQh3E2n6mVsw=="], + + "vite/rolldown/@rolldown/binding-win32-x64-msvc": ["@rolldown/binding-win32-x64-msvc@1.1.5", "", { "os": "win32", "cpu": "x64" }, "sha512-tTZuDBPw85tEN5PQi1pnEBzDy0Z49HtScLAbD5t6hyeU92A95pRWaSMw1GZZi/RwgSgUIl0xrSlXIT/9QzvYSA=="], + + "vite/rolldown/@rolldown/pluginutils": ["@rolldown/pluginutils@1.0.1", "", {}, "sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw=="], + + "@typescript-eslint/typescript-estree/minimatch/brace-expansion/balanced-match": ["balanced-match@4.0.4", "", {}, "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA=="], + + "vite/rolldown/@rolldown/binding-wasm32-wasi/@emnapi/core": ["@emnapi/core@1.11.1", "", { "dependencies": { "@emnapi/wasi-threads": "1.2.2", "tslib": "^2.4.0" } }, "sha512-RSvbQmHzdKzNsLYa/wHrbc3KN4sYLKAdPZxqiM2HATqv/SBk2/ENSHpvXGaLOMcsAyz0poEGqkmmKYG3OWiJEQ=="], + + "vite/rolldown/@rolldown/binding-wasm32-wasi/@emnapi/runtime": ["@emnapi/runtime@1.11.1", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-vgj7R3y3Wgx24IQaGPA/R6YFXLHVMOZ0uVEyIQPaWs+rd1AzfEMXlAC22FYwO1XkKR6NPsq7mUandH8oIRdZFw=="], + } +} diff --git a/bunfig.toml b/bunfig.toml new file mode 100644 index 0000000..c23b2df --- /dev/null +++ b/bunfig.toml @@ -0,0 +1,7 @@ +[install] +saveTextLockfile = true +# 24h supply-chain guard: skip package versions published less than a day ago. +minimumReleaseAge = 86400 +# Each entry bypasses the 24h guard for one package — confirm with the user +# before adding any. +minimumReleaseAgeExcludes = ["@lovable.dev/vite-tanstack-config", "@lovable.dev/mcp-js", "@lovable.dev/vite-plugin-dev-server-bridge", "@lovable.dev/vite-plugin-hmr-gate", "@lovable.dev/email-js", "@lovable.dev/webhooks-js"] diff --git a/components.json b/components.json new file mode 100644 index 0000000..f0817a8 --- /dev/null +++ b/components.json @@ -0,0 +1,22 @@ +{ + "$schema": "https://ui.shadcn.com/schema.json", + "style": "new-york", + "rsc": false, + "tsx": true, + "tailwind": { + "css": "src/styles.css", + "baseColor": "slate", + "cssVariables": true, + "prefix": "" + }, + "iconLibrary": "lucide", + "rtl": false, + "aliases": { + "components": "@/components", + "utils": "@/lib/utils", + "ui": "@/components/ui", + "lib": "@/lib", + "hooks": "@/hooks" + }, + "registries": {} +} diff --git a/docs/PORTABILITA.md b/docs/PORTABILITA.md new file mode 100644 index 0000000..961e5d2 --- /dev/null +++ b/docs/PORTABILITA.md @@ -0,0 +1,37 @@ +# Portabilità di CrAPP + +Regola di progetto: l'app deve poter girare su un **normale server Node.js + PostgreSQL**, +senza dipendere da servizi esclusivi di Lovable Cloud. + +## Stato attuale + +| Componente | Portabile? | Note | +|---|---|---| +| Frontend (React + TanStack Start/Router) | Sì | Build Vite standard, deploy su qualsiasi host Node. | +| Server functions / route API (`src/routes/api/*`) | Sì | API HTTP standard, nessuna edge function proprietaria. | +| Database | Sì | PostgreSQL puro; lo schema sta nelle migrazioni SQL. | +| Client dati (`@supabase/supabase-js`) | Sì | Supabase è open source e self-hostable; in alternativa si sostituisce il solo livello dati (`src/lib/*.ts`). | +| Web Push (`src/lib/webpush.server.ts`) | Sì | VAPID implementato con Web Crypto, disponibile in Node 18+. | +| Auth | Sì | GoTrue self-hosted oppure qualsiasi provider OIDC. | +| `src/integrations/lovable/*` | Opzionale | Login social gestito da Lovable: **non importato da nessuna schermata**, rimovibile senza impatti. | +| `@lovable.dev/vite-tanstack-config` | Solo build | Preset Vite; sostituibile con una config Vite/TanStack esplicita. | + +## Regole da rispettare nelle prossime modifiche + +1. Nessun accesso al database dai componenti: solo attraverso i moduli in `src/lib/*.ts` + (`palloni.ts`, `mvp-voti.ts`, ...), così il backend è sostituibile in un solo punto. +2. Nessun uso di funzionalità proprietarie (edge functions Lovable, auth Lovable + come unico metodo di login, storage proprietario). +3. Configurazione solo via variabili d'ambiente standard + (`DATABASE_URL` / `SUPABASE_URL` + chiavi, `VAPID_*`), mai valori hardcoded. +4. SQL standard PostgreSQL nelle migrazioni: niente estensioni esclusive del provider. +5. Job pianificati richiamabili via semplice HTTP POST (es. `/api/public/promemoria-palloni`), + così funzionano con cron di sistema, pg_cron o qualsiasi scheduler. + +## Migrazione su server proprio (sintesi) + +1. `bun run build` (o `npm run build`) → avvio del server Node generato. +2. PostgreSQL proprio + applicazione delle migrazioni in `supabase/migrations`. +3. Impostare le variabili d'ambiente (database, chiavi API, `VAPID_*`). +4. Se non si usa Supabase self-hosted: riscrivere solo i moduli dati in `src/lib/` + con un client Postgres (es. `postgres`/`pg`) dentro server functions. diff --git a/eslint.config.js b/eslint.config.js new file mode 100644 index 0000000..be4075b --- /dev/null +++ b/eslint.config.js @@ -0,0 +1,40 @@ +import js from "@eslint/js"; +import eslintPluginPrettier from "eslint-plugin-prettier/recommended"; +import globals from "globals"; +import reactHooks from "eslint-plugin-react-hooks"; +import reactRefresh from "eslint-plugin-react-refresh"; +import tseslint from "typescript-eslint"; + +export default tseslint.config( + { ignores: ["dist", ".output", ".vinxi"] }, + { + extends: [js.configs.recommended, ...tseslint.configs.recommended], + files: ["**/*.{ts,tsx}"], + languageOptions: { + ecmaVersion: 2020, + globals: globals.browser, + }, + plugins: { + "react-hooks": reactHooks, + "react-refresh": reactRefresh, + }, + rules: { + ...reactHooks.configs.recommended.rules, + "no-restricted-imports": [ + "error", + { + paths: [ + { + name: "server-only", + message: + "TanStack Start does not use the Next.js `server-only` package. Rename the module to `*.server.ts` or mark it with `@tanstack/react-start/server-only`.", + }, + ], + }, + ], + "react-refresh/only-export-components": ["warn", { allowConstantExport: true }], + "@typescript-eslint/no-unused-vars": "off", + }, + }, + eslintPluginPrettier, +); diff --git a/mem/features/cloud-efficienza.md b/mem/features/cloud-efficienza.md new file mode 100644 index 0000000..a33330d --- /dev/null +++ b/mem/features/cloud-efficienza.md @@ -0,0 +1,14 @@ +--- +name: Efficienza Cloud +description: Regole per minimizzare query, traffico e invocazioni Cloud (piano 20 crediti/mese, 17 utenti) +type: feature +--- +- Nessun polling (`refetchInterval`) verso il database; sincronizzazione locale via BroadcastChannel/storage dove possibile. +- QueryClient globale: staleTime 5 min, gcTime 30 min, refetchOnWindowFocus/Mount/Reconnect disattivati, retry 1. +- Dopo una mutazione aggiornare la cache con `setQueryData`, non `invalidateQueries` (evita riletture). +- Scout live: scrive solo l'utente che segna; gli altri leggono dati già salvati. +- Statistiche, badge e classifiche: "write once, read many" — calcolate e salvate una volta a fine partita, mai ricalcolate a ogni apertura pagina. +- Dati CSI: sincronizzazione periodica server-side salvata su tabella locale; l'app legge solo dal database interno. +- Push solo per eventi importanti: convocazioni, promemoria allenamento/partita, turno palloni, esito finale. +- Niente foto/video/chat o funzionalità pesanti. +- Schema target: team_id, eventi, presenze, azioni_scout, statistiche_aggregate, classifica_csi, notifiche, con indici sui campi di filtro/relazione. diff --git a/mem/features/portabilita.md b/mem/features/portabilita.md new file mode 100644 index 0000000..6819684 --- /dev/null +++ b/mem/features/portabilita.md @@ -0,0 +1,16 @@ +--- +name: Portabilità su Node.js + PostgreSQL +description: Vincolo di architettura — l'app deve girare su un normale server Node.js con PostgreSQL, senza servizi esclusivi Lovable Cloud +type: constraint +--- +L'app deve restare completamente portabile: ogni funzionalità deve poter girare su un normale server Node.js con PostgreSQL. + +Regole: +- Accesso ai dati solo tramite i moduli in `src/lib/*.ts`; i componenti non parlano mai direttamente col database. +- Vietato usare funzionalità proprietarie Lovable/Supabase non self-hostable (edge functions proprietarie, auth Lovable come unico login, storage proprietario). `src/integrations/lovable/*` resta opzionale e non importato. +- SQL standard PostgreSQL nelle migrazioni; niente estensioni esclusive del provider. +- Configurazione solo via variabili d'ambiente standard; niente valori hardcoded. +- Job pianificati sempre richiamabili con un semplice HTTP POST, così funzionano con qualsiasi scheduler. +- Web push implementato con Web Crypto (compatibile Node 18+), non con SDK proprietari. + +Dettaglio e guida di migrazione: `docs/PORTABILITA.md`. diff --git a/mem/index.md b/mem/index.md new file mode 100644 index 0000000..9def87e --- /dev/null +++ b/mem/index.md @@ -0,0 +1,2 @@ +- [Efficienza Cloud](mem://features/cloud-efficienza) — Regole anti-consumo: niente polling, cache lunga, aggregati precalcolati, sync CSI server-side +- [Portabilità](mem://features/portabilita) — L'app deve girare su Node.js + PostgreSQL standard, nessun servizio esclusivo Lovable Cloud diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..73dcfb1 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,7973 @@ +{ + "name": "tanstack_start_ts", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "tanstack_start_ts", + "dependencies": { + "@hookform/resolvers": "^5.2.2", + "@lovable.dev/cloud-auth-js": "^1.1.2", + "@radix-ui/react-accordion": "^1.2.12", + "@radix-ui/react-alert-dialog": "^1.1.15", + "@radix-ui/react-aspect-ratio": "^1.1.8", + "@radix-ui/react-avatar": "^1.1.11", + "@radix-ui/react-checkbox": "^1.3.3", + "@radix-ui/react-collapsible": "^1.1.12", + "@radix-ui/react-context-menu": "^2.2.16", + "@radix-ui/react-dialog": "^1.1.15", + "@radix-ui/react-dropdown-menu": "^2.1.16", + "@radix-ui/react-hover-card": "^1.1.15", + "@radix-ui/react-label": "^2.1.8", + "@radix-ui/react-menubar": "^1.1.16", + "@radix-ui/react-navigation-menu": "^1.2.14", + "@radix-ui/react-popover": "^1.1.15", + "@radix-ui/react-progress": "^1.1.8", + "@radix-ui/react-radio-group": "^1.3.8", + "@radix-ui/react-scroll-area": "^1.2.10", + "@radix-ui/react-select": "^2.2.6", + "@radix-ui/react-separator": "^1.1.8", + "@radix-ui/react-slider": "^1.3.6", + "@radix-ui/react-slot": "^1.2.4", + "@radix-ui/react-switch": "^1.2.6", + "@radix-ui/react-tabs": "^1.1.13", + "@radix-ui/react-toggle": "^1.1.10", + "@radix-ui/react-toggle-group": "^1.1.11", + "@radix-ui/react-tooltip": "^1.2.8", + "@supabase/supabase-js": "^2.111.0", + "@tailwindcss/vite": "^4.2.1", + "@tanstack/react-query": "^5.101.1", + "@tanstack/react-router": "^1.170.18", + "@tanstack/react-start": "^1.168.32", + "@tanstack/router-plugin": "^1.168.23", + "canvas-confetti": "^1.9.4", + "class-variance-authority": "^0.7.1", + "clsx": "^2.1.1", + "cmdk": "^1.1.1", + "date-fns": "^4.1.0", + "embla-carousel-react": "^8.6.0", + "input-otp": "^1.4.2", + "lucide-react": "^0.575.0", + "react": "^19.2.0", + "react-day-picker": "^9.14.0", + "react-dom": "^19.2.0", + "react-hook-form": "^7.71.2", + "react-resizable-panels": "^4.6.5", + "recharts": "^2.15.4", + "sonner": "^2.0.7", + "tailwind-merge": "^3.5.0", + "tailwindcss": "^4.2.1", + "tw-animate-css": "^1.3.4", + "vaul": "^1.1.2", + "vite-tsconfig-paths": "^6.0.2", + "zod": "^3.24.2" + }, + "devDependencies": { + "@eslint/js": "^9.32.0", + "@lovable.dev/vite-tanstack-config": "2.8.5", + "@types/canvas-confetti": "^1.9.0", + "@types/node": "^22.16.5", + "@types/react": "^19.2.0", + "@types/react-dom": "^19.2.0", + "@vitejs/plugin-react": "^5.2.0", + "eslint": "^9.32.0", + "eslint-config-prettier": "^10.1.1", + "eslint-plugin-prettier": "^5.2.6", + "eslint-plugin-react-hooks": "^5.2.0", + "eslint-plugin-react-refresh": "^0.4.20", + "globals": "^15.15.0", + "nitro": "3.0.260603-beta", + "prettier": "^3.7.3", + "typescript": "^5.8.3", + "typescript-eslint": "^8.56.1", + "vite": "^8.1.5" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.7.tgz", + "integrity": "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.29.7", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.7.tgz", + "integrity": "sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.7.tgz", + "integrity": "sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helpers": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.29.7.tgz", + "integrity": "sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g==", + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.29.7", + "@babel/helper-validator-option": "^7.29.7", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz", + "integrity": "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==", + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz", + "integrity": "sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.29.7.tgz", + "integrity": "sha512-G7sHYigPY17oO5SYWnfD/0MTBwVR781S/JI643e/JhUYgVgWE/61SoW3NH9KWUKyKq5LVh3npif99Wkt6j86Jw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz", + "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz", + "integrity": "sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.7.tgz", + "integrity": "sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg==", + "license": "MIT", + "dependencies": { + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.7.tgz", + "integrity": "sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.7" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.29.7.tgz", + "integrity": "sha512-TL0hMc9xzy86VD31nUiwzd5otRAcyEPcsegCxolO0PvcXuH1v0kECe/UIznYFihpkvU5wg/jk4v0TTEFfm53fw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.29.7.tgz", + "integrity": "sha512-06IyK09H3wi4cGbhDBwp5gUGo0IKtnYa8tyTiephirPCK6fbobVGiXMMI5zLQ4aKEYP3wZ3ArU44o+8KMrSG/Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.7.tgz", + "integrity": "sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@date-fns/tz": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@date-fns/tz/-/tz-1.5.0.tgz", + "integrity": "sha512-lwYN/vDPeNRULcepoE/LO2Pgx+7/RV+S9ARfbc9lr2DtGkOD7pAiruHvbR1RX3Qyf6ja47EWJDMsNK5vK08DJg==", + "license": "MIT" + }, + "node_modules/@emnapi/core": { + "version": "2.0.0-alpha.3", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-2.0.0-alpha.3.tgz", + "integrity": "sha512-AZypUeJ/yByuxyS7BlSNRDOMLMlROYtjYdIAuBmJssVz1UJDSeYxLrdizhXCFYhedC5bqd/ASy8EuNXbVVXp9g==", + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "2.0.1", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "2.0.0-alpha.3", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-2.0.0-alpha.3.tgz", + "integrity": "sha512-hFPAhMUjJD9BSyCANEISPOogeXC9Zo9ZQl7L6vKnaVsMkCtzznaW/naYypeyl0Gv5rYfWYsZbpixTMpjDJzQeA==", + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-2.0.1.tgz", + "integrity": "sha512-9DsSk+o5NBX0CCJT8s0EROGSGxjR/tKu6aBTaVyq+SjAEQH4XcdcRxPBRzsBLizTTJ49MJjF+jgu3qnO9GLQcQ==", + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.10.1.tgz", + "integrity": "sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.21.2", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.2.tgz", + "integrity": "sha512-nJl2KGTlrf9GjLimgIru+V/mzgSK0ABCDQRvxw5BjURL7WfH5uoWmizbH7QB6MmnMBd8cIC9uceWnezL1VZWWw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^2.1.7", + "debug": "^4.3.1", + "minimatch": "^3.1.5" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", + "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", + "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.6.tgz", + "integrity": "sha512-l2Ul9PrHsPCKcEY/ac7VgFj9D80C7S68sOKc618SyHDPK36s1XcFebXY0iTzUVn4Yq+YbwvSnDmCz9yxjX+QrA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.14.0", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.3.0", + "minimatch": "^3.1.5", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/ajv": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@eslint/js": { + "version": "9.39.5", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.5.tgz", + "integrity": "sha512-QywQuszQh77pIXCsq998c8hbhSTI/azTty1Z6N53dmAudKHhy573j3yvRLsX2BSp8YpLtoCEG8E9DJe+8zUh4A==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", + "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", + "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.8.0.tgz", + "integrity": "sha512-0CIZ5itps/8x7BG8dEIhs53BvCUH2PCoogtakwRTut+Arm58sJooJ0AuZhLw2HJYIR5cMLNPBSS728sPho2khQ==", + "license": "MIT", + "dependencies": { + "@floating-ui/utils": "^0.2.12" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.8.0.tgz", + "integrity": "sha512-yXSrzeHZBTZadLOlfyhCkJHNeLJnHRnRInwdZ40L7ZiaAtrBwoYlsDrX3v5zB1Utk7CLfzcOVnVVWoXEky7Ceg==", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.8.0", + "@floating-ui/utils": "^0.2.12" + } + }, + "node_modules/@floating-ui/react-dom": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.9.tgz", + "integrity": "sha512-JDjEFGCpImxDCA7JJKviA0M9+RtmJdj0m/NVU5IMgBK+AmZouAQQ7/+2GLH0GXXY0YMw9oXPB8hKdbPYg5QLYg==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "^1.8.0" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.12.tgz", + "integrity": "sha512-HpCo8tmWzLVad5s2d19EhAz5zqrrQ6s69qd6moPMQvkOuSwDT1YgRfWSVuc4ennqrgv3OHppiOGMQ7oC13yIww==", + "license": "MIT" + }, + "node_modules/@hookform/resolvers": { + "version": "5.5.7", + "resolved": "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-5.5.7.tgz", + "integrity": "sha512-CyPCYV8/KlXfEXLWj8HHHhVsR/IZ6Ckm3b/a4fWtO/lRnRK1huqncb8LlAWrmpPRsse5glF5aVuDRMHEr3UGag==", + "license": "MIT", + "dependencies": { + "@standard-schema/utils": "^0.3.0" + }, + "peerDependencies": { + "@sinclair/typebox": ">=0.25.24", + "@standard-schema/spec": "^1.0.0", + "@typeschema/main": ">=0.13.7", + "@vinejs/vine": "^2.0.0 || ^3.0.0", + "ajv": "^8.12.0", + "ajv-errors": "^3.0.0", + "ajv-formats": "^2.1.1", + "arktype": "^2.0.0", + "ata-validator": "^0.7.0", + "class-transformer": ">=0.4.0", + "class-validator": ">=0.12.0", + "computed-types": "^1.0.0", + "effect": "^3.10.3", + "fluentvalidation-ts": "^3.0.0", + "fp-ts": "^2.7.0", + "io-ts": "^2.0.0", + "joi": "^17.0.0", + "nope-validator": ">=0.12.0", + "react-hook-form": "^7.55.0", + "superstruct": ">=0.12.0", + "typanion": "^3.3.2", + "valibot": ">=0.31.0 || ^1.0.0-beta.4 || ^1.0.0-rc", + "vest": ">=3.0.0", + "yup": "^1.0.0", + "zod": "^3.25.0 || ^4.0.0" + }, + "peerDependenciesMeta": { + "@sinclair/typebox": { + "optional": true + }, + "@standard-schema/spec": { + "optional": true + }, + "@typeschema/main": { + "optional": true + }, + "@vinejs/vine": { + "optional": true + }, + "ajv": { + "optional": true + }, + "ajv-errors": { + "optional": true + }, + "ajv-formats": { + "optional": true + }, + "arktype": { + "optional": true + }, + "ata-validator": { + "optional": true + }, + "class-transformer": { + "optional": true + }, + "class-validator": { + "optional": true + }, + "computed-types": { + "optional": true + }, + "effect": { + "optional": true + }, + "fluentvalidation-ts": { + "optional": true + }, + "fp-ts": { + "optional": true + }, + "io-ts": { + "optional": true + }, + "joi": { + "optional": true + }, + "nope-validator": { + "optional": true + }, + "superstruct": { + "optional": true + }, + "typanion": { + "optional": true + }, + "valibot": { + "optional": true + }, + "vest": { + "optional": true + }, + "yup": { + "optional": true + }, + "zod": { + "optional": true + } + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.2.tgz", + "integrity": "sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/types": "^0.15.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.8", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.8.tgz", + "integrity": "sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.2", + "@humanfs/types": "^0.15.0", + "@humanwhocodes/retry": "^0.4.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/types": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@humanfs/types/-/types-0.15.0.tgz", + "integrity": "sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@lovable.dev/cloud-auth-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@lovable.dev/cloud-auth-js/-/cloud-auth-js-1.1.2.tgz", + "integrity": "sha512-xz8ocewsgwkp8giau272/eWWU3XrchCg5uba4yQPPYtevHTXaVU3sD+fO1JjyPBHacVcOcwhmgUiU9TKHt63cg==", + "license": "MIT" + }, + "node_modules/@lovable.dev/vite-plugin-dev-server-bridge": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@lovable.dev/vite-plugin-dev-server-bridge/-/vite-plugin-dev-server-bridge-1.2.1.tgz", + "integrity": "sha512-JdADRwpEJA5t0ggXbd96dND23Wsp69Af9lVSV5m7MnMGxJZlPgqAqz7HUKcfJESfI5M5yFZOl9e0x76JMMDOAg==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "vite": ">=5.0.0 <9.0.0" + }, + "peerDependenciesMeta": { + "vite": { + "optional": false + } + } + }, + "node_modules/@lovable.dev/vite-plugin-hmr-gate": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/@lovable.dev/vite-plugin-hmr-gate/-/vite-plugin-hmr-gate-1.3.6.tgz", + "integrity": "sha512-m2M1fru2JFPxj5LkJQfoirXt0sqbxfKsuf6fMQ3s6vR2Yge4AsyOiCPTxMy6z5EKCXfsH9Tk2HmKbxslcSpATg==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "vite": ">=5.0.0 <9.0.0" + }, + "peerDependenciesMeta": { + "vite": { + "optional": false + } + } + }, + "node_modules/@lovable.dev/vite-tanstack-config": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/@lovable.dev/vite-tanstack-config/-/vite-tanstack-config-2.8.5.tgz", + "integrity": "sha512-qPNxEXjvRsrbJHKgHxuLWpRW/gu2nIM+62qjTUCbCno5nRPMKyJQNsgjh48qjAkS6T0MRIkY/3BENNXeGsi5hw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@lovable.dev/vite-plugin-dev-server-bridge": "^1.2.1", + "@lovable.dev/vite-plugin-hmr-gate": "^1.3.4", + "@tanstack/devtools-vite": "^0.8.1", + "lightningcss": "^1.30.0" + }, + "peerDependencies": { + "@tailwindcss/vite": ">=4.0.0", + "@tanstack/react-start": ">=1.100.0", + "@vitejs/plugin-react": ">=4.0.0", + "nitro": ">=3.0.260603-beta", + "vite": ">=5.0.0 <9.0.0", + "vite-tsconfig-paths": ">=6.0.0" + }, + "peerDependenciesMeta": { + "nitro": { + "optional": true + } + } + }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.2.2.tgz", + "integrity": "sha512-JfB4kuJQjaoHuCTseIINHtHWeJnvgEcxjwA5t/Y00ZgaOO1Crz3fjT/p8kT28zA/Caz7oiUMn3d6H2yOVCVwuw==", + "license": "MIT", + "optional": true, + "dependencies": { + "@tybys/wasm-util": "^0.10.3" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=23.5.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + }, + "peerDependencies": { + "@emnapi/core": "^1.7.1 || ^2.0.0-alpha.3", + "@emnapi/runtime": "^1.7.1 || ^2.0.0-alpha.3" + } + }, + "node_modules/@oozcitak/dom": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@oozcitak/dom/-/dom-2.0.2.tgz", + "integrity": "sha512-GjpKhkSYC3Mj4+lfwEyI1dqnsKTgwGy48ytZEhm4A/xnH/8z9M3ZVXKr/YGQi3uCLs1AEBS+x5T2JPiueEDW8w==", + "license": "MIT", + "dependencies": { + "@oozcitak/infra": "^2.0.2", + "@oozcitak/url": "^3.0.0", + "@oozcitak/util": "^10.0.0" + }, + "engines": { + "node": ">=20.0" + } + }, + "node_modules/@oozcitak/infra": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@oozcitak/infra/-/infra-2.0.2.tgz", + "integrity": "sha512-2g+E7hoE2dgCz/APPOEK5s3rMhJvNxSMBrP+U+j1OWsIbtSpWxxlUjq1lU8RIsFJNYv7NMlnVsCuHcUzJW+8vA==", + "license": "MIT", + "dependencies": { + "@oozcitak/util": "^10.0.0" + }, + "engines": { + "node": ">=20.0" + } + }, + "node_modules/@oozcitak/url": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@oozcitak/url/-/url-3.0.0.tgz", + "integrity": "sha512-ZKfET8Ak1wsLAiLWNfFkZc/BraDccuTJKR6svTYc7sVjbR+Iu0vtXdiDMY4o6jaFl5TW2TlS7jbLl4VovtAJWQ==", + "license": "MIT", + "dependencies": { + "@oozcitak/infra": "^2.0.2", + "@oozcitak/util": "^10.0.0" + }, + "engines": { + "node": ">=20.0" + } + }, + "node_modules/@oozcitak/util": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/@oozcitak/util/-/util-10.0.0.tgz", + "integrity": "sha512-hAX0pT/73190NLqBPPWSdBVGtbY6VOhWYK3qqHqtXQ1gK7kS2yz4+ivsN07hpJ6I3aeMtKP6J6npsEKOAzuTLA==", + "license": "MIT", + "engines": { + "node": ">=20.0" + } + }, + "node_modules/@oxc-parser/binding-android-arm-eabi": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-android-arm-eabi/-/binding-android-arm-eabi-0.120.0.tgz", + "integrity": "sha512-WU3qtINx802wOl8RxAF1v0VvmC2O4D9M8Sv486nLeQ7iPHVmncYZrtBhB4SYyX+XZxj2PNnCcN+PW21jHgiOxg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-android-arm64": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-android-arm64/-/binding-android-arm64-0.120.0.tgz", + "integrity": "sha512-SEf80EHdhlbjZEgzeWm0ZA/br4GKMenDW3QB/gtyeTV1gStvvZeFi40ioHDZvds2m4Z9J1bUAUL8yn1/+A6iGg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-darwin-arm64": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-arm64/-/binding-darwin-arm64-0.120.0.tgz", + "integrity": "sha512-xVrrbCai8R8CUIBu3CjryutQnEYhZqs1maIqDvtUCFZb8vY33H7uh9mHpL3a0JBIKoBUKjPH8+rzyAeXnS2d6A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-darwin-x64": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-x64/-/binding-darwin-x64-0.120.0.tgz", + "integrity": "sha512-xyHBbnJ6mydnQUH7MAcafOkkrNzQC6T+LXgDH/3InEq2BWl/g424IMRiJVSpVqGjB+p2bd0h0WRR8iIwzjU7rw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-freebsd-x64": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-freebsd-x64/-/binding-freebsd-x64-0.120.0.tgz", + "integrity": "sha512-UMnVRllquXUYTeNfFKmxTTEdZ/ix1nLl0ducDzMSREoWYGVIHnOOxoKMWlCOvRr9Wk/HZqo2rh1jeumbPGPV9A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-arm-gnueabihf": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.120.0.tgz", + "integrity": "sha512-tkvn2CQ7QdcsMnpfiX3fd3wA3EFsWKYlcQzq9cFw/xc89Al7W6Y4O0FgLVkVQpo0Tnq/qtE1XfkJOnRRA9S/NA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-arm-musleabihf": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.120.0.tgz", + "integrity": "sha512-WN5y135Ic42gQDk9grbwY9++fDhqf8knN6fnP+0WALlAUh4odY/BDK1nfTJRSfpJD9P3r1BwU0m3pW2DU89whQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-arm64-gnu": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.120.0.tgz", + "integrity": "sha512-1GgQBCcXvFMw99EPdMy+4NZ3aYyXsxjf9kbUUg8HuAy3ZBXzOry5KfFEzT9nqmgZI1cuetvApkiJBZLAPo8uaw==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-arm64-musl": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.120.0.tgz", + "integrity": "sha512-gmMQ70gsPdDBgpcErvJEoWNBr7bJooSLlvOBVBSGfOzlP5NvJ3bFvnUeZZ9d+dPrqSngtonf7nyzWUTUj/U+lw==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-ppc64-gnu": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-0.120.0.tgz", + "integrity": "sha512-T/kZuU0ajop0xhzVMwH5r3srC9Nqup5HaIo+3uFjIN5uPxa0LvSxC1ZqP4aQGJVW5G0z8/nCkjIfSMS91P/wzw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-riscv64-gnu": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.120.0.tgz", + "integrity": "sha512-vn21KXLAXzaI3N5CZWlBr1iWeXLl9QFIMor7S1hUjUGTeUuWCoE6JZB040/ZNDwf+JXPX8Ao9KbmJq9FMC2iGw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-riscv64-musl": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-0.120.0.tgz", + "integrity": "sha512-SUbUxlar007LTGmSLGIC5x/WJvwhdX+PwNzFJ9f/nOzZOrCFbOT4ikt7pJIRg1tXVsEfzk5mWpGO1NFiSs4PIw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-s390x-gnu": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.120.0.tgz", + "integrity": "sha512-hYiPJTxyfJY2+lMBFk3p2bo0R9GN+TtpPFlRqVchL1qvLG+pznstramHNvJlw9AjaoRUHwp9IKR7UZQnRPGjgQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-x64-gnu": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.120.0.tgz", + "integrity": "sha512-q+5jSVZkprJCIy3dzJpApat0InJaoxQLsJuD6DkX8hrUS61z2lHQ1Fe9L2+TYbKHXCLWbL0zXe7ovkIdopBGMQ==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-x64-musl": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-musl/-/binding-linux-x64-musl-0.120.0.tgz", + "integrity": "sha512-D9QDDZNnH24e7X4ftSa6ar/2hCavETfW3uk0zgcMIrZNy459O5deTbWrjGzZiVrSWigGtlQwzs2McBP0QsfV1w==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-openharmony-arm64": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-openharmony-arm64/-/binding-openharmony-arm64-0.120.0.tgz", + "integrity": "sha512-TBU8ZwOUWAOUWVfmI16CYWbvh4uQb9zHnGBHsw5Cp2JUVG044OIY1CSHODLifqzQIMTXvDvLzcL89GGdUIqNrA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-wasm32-wasi": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-wasm32-wasi/-/binding-wasm32-wasi-0.120.0.tgz", + "integrity": "sha512-WG/FOZgDJCpJnuF3ToG/K28rcOmSY7FmFmfBKYb2fmLyhDzPpUldFGV7/Fz4ru0Iz/v4KPmf8xVgO8N3lO4KHA==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^1.1.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@oxc-parser/binding-win32-arm64-msvc": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.120.0.tgz", + "integrity": "sha512-1T0HKGcsz/BKo77t7+89L8Qvu4f9DoleKWHp3C5sJEcbCjDOLx3m9m722bWZTY+hANlUEs+yjlK+lBFsA+vrVQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-win32-ia32-msvc": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-0.120.0.tgz", + "integrity": "sha512-L7vfLzbOXsjBXV0rv/6Y3Jd9BRjPeCivINZAqrSyAOZN3moCopDN+Psq9ZrGNZtJzP8946MtlRFZ0Als0wBCOw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-win32-x64-msvc": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.120.0.tgz", + "integrity": "sha512-ys+upfqNtSu58huAhJMBKl3XCkGzyVFBlMlGPzHeFKgpFF/OdgNs1MMf8oaJIbgMH8ZxgGF7qfue39eJohmKIg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-project/types": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.120.0.tgz", + "integrity": "sha512-k1YNu55DuvAip/MGE1FTsIuU3FUCn6v/ujG9V7Nq5Df/kX2CWb13hhwD0lmJGMGqE+bE1MXvv9SZVnMzEXlWcg==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/Boshen" + } + }, + "node_modules/@pkgr/core": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.3.6.tgz", + "integrity": "sha512-SEeaJLb3qBNF/OaXnaR1NmmBbFYk1zC0ZH/52fATcRPLFg/p791YrcyFFy44Bo9sLaGuSuLp5Q6axbb/O+v/RA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/pkgr" + } + }, + "node_modules/@radix-ui/number": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.3.tgz", + "integrity": "sha512-Road2bidD0uu/1BGDOWNdPI06g0lIRy6IF9GZcIrDK2KGItfor8IQwQa+yM2ERgHM1MmHxaxpTzk0/Jp42lNfA==", + "license": "MIT" + }, + "node_modules/@radix-ui/primitive": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.7.tgz", + "integrity": "sha512-rqWnm76nYT8HoNNqEjpgJ7Pw/DrBj5iBTrmEPo6HTX5+VJyBNOqTdv4g89G63HuR5g0AaENoAcH7Is5fF2kZ8Q==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-accordion": { + "version": "1.2.20", + "resolved": "https://registry.npmjs.org/@radix-ui/react-accordion/-/react-accordion-1.2.20.tgz", + "integrity": "sha512-jDhG9FvAEnlhnjrsINbNXcUa4G+L1KqSkJSunkbKEzFRcAb52jvM0PjPxPRvhe1HNc5F5yc0yzzWeeqlH4yBIg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-collapsible": "1.1.20", + "@radix-ui/react-collection": "1.1.15", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-direction": "1.1.4", + "@radix-ui/react-id": "1.1.4", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-controllable-state": "1.2.6" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog": { + "version": "1.1.23", + "resolved": "https://registry.npmjs.org/@radix-ui/react-alert-dialog/-/react-alert-dialog-1.1.23.tgz", + "integrity": "sha512-VAYOiQRqj3GPpYJE0I9J+X8Ip05cyVlNdKOFeiGS2Ou1HHGfpl0BxOyZm6nmVDyU+W+NF3/XLzmjHmVGydhwgA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-dialog": "1.1.23", + "@radix-ui/react-primitive": "2.1.10" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-arrow": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.15.tgz", + "integrity": "sha512-v4zggRcjadnI+ClKDuijlQEW4tw3NoaeHc/PwpKnLoLLKNUG4InLegkstooLcRIUWCs+8L22dGURCVuFfOKfnA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.10" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-aspect-ratio": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-aspect-ratio/-/react-aspect-ratio-1.1.15.tgz", + "integrity": "sha512-fy+dyVR+90nelK8rqIznFlxzx7uPcGbhxH8Nfr2bHb4UfSe+e3hklOC0luK0hDwVwnRX7xTRySpsrQVeW+/oNQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.10" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-avatar/-/react-avatar-1.2.6.tgz", + "integrity": "sha512-4ULOTJ/mqy2hT9GlWa/MFHxHSvH3nJzHnZM1waNsc5Bonv7i70aNenghXmD97S6OJ81ekXONGGt4nT1r0PfEdA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-callback-ref": "1.1.4", + "@radix-ui/react-use-is-hydrated": "0.1.3", + "@radix-ui/react-use-layout-effect": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-checkbox/-/react-checkbox-1.3.11.tgz", + "integrity": "sha512-Gnptr9pDDQxD3hgq2dtPbtrp/c2qH1mBwIzw3X/ivrMb2e1t0jMTi606fVEqFPaQR1ggXIVQWKj3P2WW9v7zGQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-presence": "1.1.10", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-controllable-state": "1.2.6", + "@radix-ui/react-use-size": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible": { + "version": "1.1.20", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collapsible/-/react-collapsible-1.1.20.tgz", + "integrity": "sha512-mcGesGplBnzN2sbvJETzpCNfSMyPnb29q1GRLU+Ib7bJrpIG2ywmRoh2V5VbA2uNvKikKUlVbAPks7JDjz4A8Q==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-id": "1.1.4", + "@radix-ui/react-presence": "1.1.10", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-controllable-state": "1.2.6", + "@radix-ui/react-use-layout-effect": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.15.tgz", + "integrity": "sha512-9W+B9NPF0NaaPh/1NJd3+KqsnlLqU9H7T2rvww+fp+T/evVXdNAyYcnfRQZFOjkR1ajQp3yORlqnI8soawLvNA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-slot": "1.3.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.5.tgz", + "integrity": "sha512-+48PbAAbq3didjJxa+OaWY2ZwgAKsNiRGyeHKszblZMQ+kcpd9pAaT11cMkGEie0vsOi3QdeTE6d5Fe3Gn61kA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.2.2.tgz", + "integrity": "sha512-RHCUGwKHDr0hDGg4X7ma4JG4/+12qxw8rkh5QKdDldlCvtja6nUx1Ef/8HVrJze81lEsgLQlqjzjGNHantgnQA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context-menu/-/react-context-menu-2.3.7.tgz", + "integrity": "sha512-CtXP35dxaB5T3zXSd+E3uHe/QpXcpYnZmxp6OaIbfthtfW4wyb77M23BG+bwIJDtsMwEP/YssdsmNyZu7jhWew==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-menu": "2.1.24", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-controllable-state": "1.2.6" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog": { + "version": "1.1.23", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.23.tgz", + "integrity": "sha512-Ksw4WeROkO4rC9k/onilX/Ao2Cr1ku1unMNH+XSCcP4jSXYu7HDsg9n4ojMjVb22XpYjAQ9qfrFlVbru1vXDUA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-dismissable-layer": "1.1.19", + "@radix-ui/react-focus-guards": "1.1.6", + "@radix-ui/react-focus-scope": "1.1.16", + "@radix-ui/react-id": "1.1.4", + "@radix-ui/react-portal": "1.1.17", + "@radix-ui/react-presence": "1.1.10", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-slot": "1.3.3", + "@radix-ui/react-use-controllable-state": "1.2.6", + "@radix-ui/react-use-layout-effect": "1.1.4", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.7.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-direction": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.4.tgz", + "integrity": "sha512-5pzg4FGQNpExhnhT2zlrP1wZFaYCd1K0nYWoFAdcYoYK868IEigqMX3B3f8yIoRlAhAeDWciLI6ZdCKHF9P4Vg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer": { + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.19.tgz", + "integrity": "sha512-8g4pfOL9HoKKLWGiypT+dphVqjFfmcXO5GBnhsG6zI+lxAx/8feQpr+1LSN8Re3hiZ+XkLNS4O9ztK11/LzQ6w==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-callback-ref": "1.1.4", + "@radix-ui/react-use-effect-event": "0.0.5" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dropdown-menu/-/react-dropdown-menu-2.1.24.tgz", + "integrity": "sha512-geq8l2rJkxvkXsT9RMgtUE3P8pITFpTsvYpbySi1IH4fZEABD/Gp85myayFgxk0ktljGMJnCbeFkyTusvSvv7g==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-id": "1.1.4", + "@radix-ui/react-menu": "2.1.24", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-controllable-state": "1.2.6" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-guards": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.6.tgz", + "integrity": "sha512-RNOJjfZMTyBM6xYmV3IVGXkPjIhcBAuv48POevAXwrGJhkWZ9p1rFoIS1JFooPuT193AZmRsCPhpoVJxx6OPoQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope": { + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.16.tgz", + "integrity": "sha512-wmRZ2WWLvmt6KHy2rNPOdPUjwq5xOHY02+m+udwJTn0aNIox/rkskAvJTyTLGhPK6KgrUjlJUJpgmx/+wFiFIQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-callback-ref": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card": { + "version": "1.1.23", + "resolved": "https://registry.npmjs.org/@radix-ui/react-hover-card/-/react-hover-card-1.1.23.tgz", + "integrity": "sha512-H8qONfZd3ltrU3+jHCIgITbWo6e1iTKvP9DHdrvYbX48ooRM5FjEDTn16AMwdfuOGkWdZEhpl3PLL/Wk/AnHDQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-dismissable-layer": "1.1.19", + "@radix-ui/react-popper": "1.3.7", + "@radix-ui/react-portal": "1.1.17", + "@radix-ui/react-presence": "1.1.10", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-controllable-state": "1.2.6" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-id": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.4.tgz", + "integrity": "sha512-TMQp2llA+RYn7JcjnrMnz7wN4pcVttPZnRZo52PLQsoLVKzNlVwUeHmfePgTgRluXFvlD3GD5g5MOVVTJCO0qA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-label": { + "version": "2.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-label/-/react-label-2.1.15.tgz", + "integrity": "sha512-o/rdYEwZTTo5tjknnPeyQFU45kUC4i/XyeDPP+HGyi6XqpOP6Zf5Ya5vh/Yfe9Id5JiuWnnAx2XqIeD3UYZt0g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.10" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-2.1.24.tgz", + "integrity": "sha512-uW7RVuU6Lp/ZtfeY4b3kL32zccgEWvPv1+cf17ubYzHa9cL8AHokmk36cG/XEiH/smbQvumnieXX9j/e9RqJWA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-collection": "1.1.15", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-direction": "1.1.4", + "@radix-ui/react-dismissable-layer": "1.1.19", + "@radix-ui/react-focus-guards": "1.1.6", + "@radix-ui/react-focus-scope": "1.1.16", + "@radix-ui/react-id": "1.1.4", + "@radix-ui/react-popper": "1.3.7", + "@radix-ui/react-portal": "1.1.17", + "@radix-ui/react-presence": "1.1.10", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-roving-focus": "1.1.19", + "@radix-ui/react-slot": "1.3.3", + "@radix-ui/react-use-callback-ref": "1.1.4", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.7.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar": { + "version": "1.1.24", + "resolved": "https://registry.npmjs.org/@radix-ui/react-menubar/-/react-menubar-1.1.24.tgz", + "integrity": "sha512-eeVs0vf7cuqXaM0qLQCPcufImiJNVBXdJDLu7ZGYl2732UH23Qat/foNGrr6vYV3/DdTsBqASoggUFgH14OcZA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-collection": "1.1.15", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-direction": "1.1.4", + "@radix-ui/react-id": "1.1.4", + "@radix-ui/react-menu": "2.1.24", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-roving-focus": "1.1.19", + "@radix-ui/react-use-controllable-state": "1.2.6" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu": { + "version": "1.2.22", + "resolved": "https://registry.npmjs.org/@radix-ui/react-navigation-menu/-/react-navigation-menu-1.2.22.tgz", + "integrity": "sha512-ou7iLEJ+yrhQndkkA4U21XIdS/CS45F4iXIkTZcb6/Ne9EMsOuDudVmCwmDnfFZZ+y1FZqXRNSIgBy+YMvZVZg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-collection": "1.1.15", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-direction": "1.1.4", + "@radix-ui/react-dismissable-layer": "1.1.19", + "@radix-ui/react-id": "1.1.4", + "@radix-ui/react-presence": "1.1.10", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-callback-ref": "1.1.4", + "@radix-ui/react-use-controllable-state": "1.2.6", + "@radix-ui/react-use-layout-effect": "1.1.4", + "@radix-ui/react-use-previous": "1.1.4", + "@radix-ui/react-visually-hidden": "1.2.11" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover": { + "version": "1.1.23", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.23.tgz", + "integrity": "sha512-mw58MrBlyHWFisTOYignD0vf/3gdcgAR+9of1s9G/38CbFiUwH1nCDkc0AUM9IrXFgN5Ue8n45j9WCgyM1sbiQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-dismissable-layer": "1.1.19", + "@radix-ui/react-focus-guards": "1.1.6", + "@radix-ui/react-focus-scope": "1.1.16", + "@radix-ui/react-id": "1.1.4", + "@radix-ui/react-popper": "1.3.7", + "@radix-ui/react-portal": "1.1.17", + "@radix-ui/react-presence": "1.1.10", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-slot": "1.3.3", + "@radix-ui/react-use-controllable-state": "1.2.6", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.7.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.3.7.tgz", + "integrity": "sha512-UsJrrd7w4wuKKTdvd/DNERVlwSlUcyXzjhyDwBk+3aPOsCjOY6ZSbxuw8E6lZTjjfP8Cpd0J8VVkrYUWyGYXyg==", + "license": "MIT", + "dependencies": { + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.1.15", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-callback-ref": "1.1.4", + "@radix-ui/react-use-layout-effect": "1.1.4", + "@radix-ui/react-use-rect": "1.1.4", + "@radix-ui/react-use-size": "1.1.4", + "@radix-ui/rect": "1.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal": { + "version": "1.1.17", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.17.tgz", + "integrity": "sha512-vKQLcWypUnwZVvfV7UkGahH2g6ySe8M8R+zYBwPrv5byZ9QAW6cQVvNKo7GgmD+p8aYb6D9JBuvy8/WhOno2wQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-layout-effect": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-presence": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.10.tgz", + "integrity": "sha512-3wyzCQ6+ubRA+D4uv9m95JYLXxmOHp05qjrkjeA7uKHHtjpPggQzc6DAb0URl7j67oR0K2foO4ip27TiX037Bw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-primitive": { + "version": "2.1.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.10.tgz", + "integrity": "sha512-MucOnzh6hR5mid6VpkbglRAMYMjKLqRnGBbjXkzjK52fuQDd1qbkx78a5P40mkcnVXJdEVxm26E9OPAiUq7nBg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.3.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress": { + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-progress/-/react-progress-1.1.16.tgz", + "integrity": "sha512-5XnomAsoZZCY+KNTxbIghpGqPruZvKFNlvcAljVAOdDRDsH4/OZQxhtwo5wdtoDM5R6MhJBb2sPnDuRFep3lzg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-primitive": "2.1.10" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group": { + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-radio-group/-/react-radio-group-1.4.7.tgz", + "integrity": "sha512-cgYFEkntCxppHZgtSZ+7vh0wbZQ+IC7PPMw8DSnRG27B6kDd32/Zw0OJt7dGDigCoprMuWHjg2PvUn3PYvPFoQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-direction": "1.1.4", + "@radix-ui/react-presence": "1.1.10", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-roving-focus": "1.1.19", + "@radix-ui/react-use-controllable-state": "1.2.6", + "@radix-ui/react-use-size": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus": { + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.19.tgz", + "integrity": "sha512-V9jI6hDjT7l3jsCQD9bLNvDLM3tH/gdbOTp7Tefp3hbbgCGQoK7tUvrWiRlcoBHIZ809ElXwNQwVo0B98LuTXQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-collection": "1.1.15", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-direction": "1.1.4", + "@radix-ui/react-id": "1.1.4", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-callback-ref": "1.1.4", + "@radix-ui/react-use-controllable-state": "1.2.6", + "@radix-ui/react-use-is-hydrated": "0.1.3", + "@radix-ui/react-use-layout-effect": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area": { + "version": "1.2.18", + "resolved": "https://registry.npmjs.org/@radix-ui/react-scroll-area/-/react-scroll-area-1.2.18.tgz", + "integrity": "sha512-Zn5Cd171wxsO3Dfg8HaW6RifTb9CYTKQJHs/G4+LN1GfmJpaQMZQyQxMprVPHpaz7QY4l9BxK2JwQuzHsXC8nA==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.3", + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-direction": "1.1.4", + "@radix-ui/react-presence": "1.1.10", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-callback-ref": "1.1.4", + "@radix-ui/react-use-layout-effect": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-select/-/react-select-2.3.7.tgz", + "integrity": "sha512-WFGImkmbzcfxeIwq/+4HvRN0pizBwbwQUED4I13ezQsDdfl38ZntN6TmR8XaSzPBqoCToe8rF75j6NPNDSzhbg==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.3", + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-collection": "1.1.15", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-direction": "1.1.4", + "@radix-ui/react-dismissable-layer": "1.1.19", + "@radix-ui/react-focus-guards": "1.1.6", + "@radix-ui/react-focus-scope": "1.1.16", + "@radix-ui/react-id": "1.1.4", + "@radix-ui/react-popper": "1.3.7", + "@radix-ui/react-portal": "1.1.17", + "@radix-ui/react-presence": "1.1.10", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-slot": "1.3.3", + "@radix-ui/react-use-callback-ref": "1.1.4", + "@radix-ui/react-use-controllable-state": "1.2.6", + "@radix-ui/react-use-layout-effect": "1.1.4", + "@radix-ui/react-use-previous": "1.1.4", + "@radix-ui/react-visually-hidden": "1.2.11", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.7.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-separator": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-separator/-/react-separator-1.1.15.tgz", + "integrity": "sha512-jOLO4lssEzWpoDu7G+Ze4VjwMRUBt291pnZD0gmalREZipnTX3wadQo7Fy48GCTfe14/YRN6rw/rOJqrE85Wxw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.10" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider": { + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slider/-/react-slider-1.4.7.tgz", + "integrity": "sha512-mTSLf1GC/C0moWjTbvCM6Qn/gBjvlFt1azuWF2v7MN5C3Zq2U2J2lN3ZEYkpujuOU5Ro7A28wkviSxaKnG0BYg==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.3", + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-collection": "1.1.15", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-direction": "1.1.4", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-controllable-state": "1.2.6", + "@radix-ui/react-use-layout-effect": "1.1.4", + "@radix-ui/react-use-previous": "1.1.4", + "@radix-ui/react-use-size": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slot": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.3.3.tgz", + "integrity": "sha512-qx7oqnYbxnK9kYI9m317qmFmEgo6ywqWvbTogdj7cL9p3/yx4M48p7Rnw5z3H890cL/ow/EeWJsuTykeZVXP5Q==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.5" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-switch/-/react-switch-1.3.7.tgz", + "integrity": "sha512-48tB/4dn2UVLBCYhTu9AuR63IHl73l/qLbLgxd86noTUor4/K4LFDAcYjK+isP5313qxaFpjPVogE7+Y0/V3Kw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-controllable-state": "1.2.6", + "@radix-ui/react-use-size": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs": { + "version": "1.1.21", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tabs/-/react-tabs-1.1.21.tgz", + "integrity": "sha512-UKxJlZid7FVtsk/WTxj4i4uSEgj2Au+KBbS7SQyTlzMhhn+86Cz3tISZdTa87bfEfcuvZezf2ZsxD4xuEKtkog==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-direction": "1.1.4", + "@radix-ui/react-id": "1.1.4", + "@radix-ui/react-presence": "1.1.10", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-roving-focus": "1.1.19", + "@radix-ui/react-use-controllable-state": "1.2.6" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle": { + "version": "1.1.18", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle/-/react-toggle-1.1.18.tgz", + "integrity": "sha512-7lonPlKfSacd20GlOBx2ltuVKz9oqWYZz+oMQyOltw6t1y2nyftj2ZmwwUHYn49kqfDWcp8dNZm5NgV+5Z+mug==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-controllable-state": "1.2.6" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group": { + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle-group/-/react-toggle-group-1.1.19.tgz", + "integrity": "sha512-OtnwuSVjd1Ofi+AdnvhsjQdyuhCDwYs1w9RyB5BN/OavXOVQo42SYqQjwUnbPnaiPFBpQ9aX70dWeee+v2oBLA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-direction": "1.1.4", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-roving-focus": "1.1.19", + "@radix-ui/react-toggle": "1.1.18", + "@radix-ui/react-use-controllable-state": "1.2.6" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip": { + "version": "1.2.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tooltip/-/react-tooltip-1.2.16.tgz", + "integrity": "sha512-6EamKFRRnlpdadndbZ6LMwycfwkwPte1B42hs6QA0gYhjaOKqW4PZ4pjaW9UrlDX5eVt/OjncE7BFTPL5nmZhg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-dismissable-layer": "1.1.19", + "@radix-ui/react-id": "1.1.4", + "@radix-ui/react-popper": "1.3.7", + "@radix-ui/react-portal": "1.1.17", + "@radix-ui/react-presence": "1.1.10", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-slot": "1.3.3", + "@radix-ui/react-use-controllable-state": "1.2.6", + "@radix-ui/react-use-layout-effect": "1.1.4", + "@radix-ui/react-visually-hidden": "1.2.11" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.4.tgz", + "integrity": "sha512-R6OUY2e2fA6Yn6s+VSx5KBV6Nx8LQEhu+cz7LCej18rQ1HLyg9PSC9jP/ZNx0o6FAIK9c0F1kHylzSxKsdlkrQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.2.6.tgz", + "integrity": "sha512-uEQJGT97ZA/TgP/Hydw47lHu+/vQj6z/0jA+WeTbK1o9Rx45GImjpD0tc3W5ad3D6XTSR6e1yEO0FvGq6WQfVQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-use-effect-event": "0.0.5", + "@radix-ui/react-use-layout-effect": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-effect-event": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-effect-event/-/react-use-effect-event-0.0.5.tgz", + "integrity": "sha512-7cshFL8HGS/7HEiHH+9kL9HBwp2sa9yX18Knwek6KYWmXwM7pegMgta2AXMQKI+rq3JnfSj9x8wYqFMTdG1Jgg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-is-hydrated": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-is-hydrated/-/react-use-is-hydrated-0.1.3.tgz", + "integrity": "sha512-umO/aJ+82CpOnhDZUTbILCQf7kU/g0iv+oGs/Q8jw7IkhWBzaEP4sA268PhFAJTFetbwp3ICc6ktpI4TqtxcIw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.4.tgz", + "integrity": "sha512-K20DkRkUwDnxEYMBPcg3Y6voLkEy5p5QQmszZgLngKKiC7dzBR/aEuK3w1qlx2JWDUNH6FluahYdgR3BP+QbYw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-previous": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-1.1.4.tgz", + "integrity": "sha512-XoSLhbRbqxFtgJoi2fNHA3C6pDlY34x508vUpUGoFZfvePfHXHbE1lC4FYFMnJWgiCRroSTw6fOsXQoVS9RwZg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-rect": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.4.tgz", + "integrity": "sha512-cSOCh6JlkmfjLyNcLiu2nB4v+nm+dkZ+Q5KHWk/soo4U7ZLiEQFKHK9/YmtBHjfCEaU43IBKQOc4/uJmCaiCTQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/rect": "1.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-size": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.4.tgz", + "integrity": "sha512-D3anSY15EJoxrihpsXI6SMrmmonnQtR2ni7arO+Lfdg3O95b9hNXxONk8jA5C8ANdF/h5HMAxejgs8PWJ6rlhw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.2.11.tgz", + "integrity": "sha512-NFS86RYYZb4/exihaESBGOpMJFz8MGLAfu3mOBSGByVnVPC9JPASfYubxd/8KbkQK0sYAv8lVQDEQukDX/qXvQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.10" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "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": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/rect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.3.tgz", + "integrity": "sha512-JtyZR+mqgBibTo8xea3B6ZRmzZiM/YeVBtUkas6zMuXjAlfIFIW2FgqeM9eLyvEaYX66vr6DJMK+4U6LV0KhNw==", + "license": "MIT" + }, + "node_modules/@rolldown/binding-android-arm64": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.2.1.tgz", + "integrity": "sha512-02hOeOSryYxVrOIphmLAsqnCJWxwlzFk+pEt/N/i6OgT3lShHO7xGCU5cpgchRDHboAEbSjzgGh+O/u1GswQmA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-arm64": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.2.1.tgz", + "integrity": "sha512-fMsTOnN0OjFm3CyppWPitKnc8UlliVARUULW6cfU6AIqjdtgmSFWSk9vecHzZduv/yMWIHDlRhM1e8Iff9uAfA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-x64": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.2.1.tgz", + "integrity": "sha512-1wjKdz/XLGKHaTNHjQveQ/B23TKx4ItAqm1JbyVuvNPc4Ze0Fb48s49TAd/2zcplPl8okE/UbTgmlVfwT7eFeQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-freebsd-x64": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.2.1.tgz", + "integrity": "sha512-Fa0jHR07E7YBN4vOEsbVf2briYNsuOowfLJaXULZM0ldMlaCaj2LJgLMbMe4iacRyZmvR8efFhgR9wKuGclQUg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm-gnueabihf": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.2.1.tgz", + "integrity": "sha512-pzkgu1SSHGgRRyRZ4fbmSgmajbVt+epaLP99NDjFft69v/ypfTi6swBMiVdh2EkQ0OSnHE1lZDM7DRGkyAzUpA==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-gnu": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.2.1.tgz", + "integrity": "sha512-QI5SEDY8cbiYWHx0VO4vIc3UlS6a32vXHjU8Qy/17adEmZIPuByJg13UEvo9c/UCiUkdcVWY83C+b+JrwnNyUg==", + "cpu": [ + "arm64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-musl": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.2.1.tgz", + "integrity": "sha512-Sm41FyCeXqmYcERoYOCbGIL5hNfd8w9LQ7Y61Bev48HkcjaJqV/iiVOaiDxjVTRMS+QKrZmD8cfPt4uMVnvM+A==", + "cpu": [ + "arm64" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-ppc64-gnu": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.2.1.tgz", + "integrity": "sha512-2x+WhXTGl9yJYPbltW/BSEPTVz9OIWQyER4N+gJEDWkkn904eRcBzELqh/Hf7K0w/ubGbKNMv0ZC+94QK/IFEg==", + "cpu": [ + "ppc64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-s390x-gnu": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.2.1.tgz", + "integrity": "sha512-eEjmQpuRQayHPWWnywaWHkFT3ToPbP3RYy42VVd/B9aBGDA+Ol25EIWHxKQST3IiWJjikCWUF7KtbfqwZrzVwQ==", + "cpu": [ + "s390x" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-gnu": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.2.1.tgz", + "integrity": "sha512-/Orga1fZYkLc/56jBICcHrKchl8Z2UKdDSr3LG9ToWO1lQ6a4Livk9Xz+9WN91zsz5QR3XQz2NNoSDEvP6qadw==", + "cpu": [ + "x64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-musl": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.2.1.tgz", + "integrity": "sha512-xxBJRL+0q0Kce7orznGWLuylHDY65vuARXZRpX+hPdv+DqK2c3NlCsVA98tlWzWNEE7yPqA/1NQ5nnCrj49Y5A==", + "cpu": [ + "x64" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-openharmony-arm64": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.2.1.tgz", + "integrity": "sha512-M6AdXIXw3s+/8XpKMzdGDEXGS1S7kwUsy+rcTIUIOx5Ge4nXKCtAFHFV9YKkXvGcC5WMoTjAteLzlsQROVI0Yw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-wasm32-wasi": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.2.1.tgz", + "integrity": "sha512-/TX0SoRGojHzSAHpfVBbavRVSazg5U3h3Y3VXfcc0cdugq6kxdqw8LPGFiPr+/7gE/60zRcsOY2Vi9b9eT0jww==", + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "2.0.0-alpha.3", + "@emnapi/runtime": "2.0.0-alpha.3", + "@napi-rs/wasm-runtime": "^1.2.0" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=23.5.0" + } + }, + "node_modules/@rolldown/binding-win32-arm64-msvc": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.2.1.tgz", + "integrity": "sha512-EvRrivJieyHG+AO9lleZWgq+g0+S7oV2C51yuqlcyU/R9net+sI4Pj0F+lUoP2bEr6TWX3SqFaaS0SzfLxSzkw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-win32-x64-msvc": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.2.1.tgz", + "integrity": "sha512-Z4eCmn5QJ/5+azF9knpLWKfVd9aidn0mAe9TpJgvBLId9Ax3t0+JVxBmT25Bv7NBbVW1TZyKjQjQReouMeH5UQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-rc.3", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.3.tgz", + "integrity": "sha512-eybk3TjzzzV97Dlj5c+XrBFW57eTNhzod66y9HrBlzJ6NsCrWCp/2kaPS3K9wJmurBC0Tdw4yPjXKZqlznim3Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/@standard-schema/utils": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@standard-schema/utils/-/utils-0.3.0.tgz", + "integrity": "sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g==", + "license": "MIT" + }, + "node_modules/@supabase/auth-js": { + "version": "2.111.0", + "resolved": "https://registry.npmjs.org/@supabase/auth-js/-/auth-js-2.111.0.tgz", + "integrity": "sha512-hbRLgyQZEX0SDyF4LYXpv94qOIQyFATfpT5SIs2V0SisHnisVRkYgiPQWzv80l4S2mO3qof78rmoH9j5zoFsYQ==", + "license": "MIT", + "dependencies": { + "tslib": "2.8.1" + }, + "engines": { + "node": ">=22.0.0" + } + }, + "node_modules/@supabase/functions-js": { + "version": "2.111.0", + "resolved": "https://registry.npmjs.org/@supabase/functions-js/-/functions-js-2.111.0.tgz", + "integrity": "sha512-RW/OCsd6MO592zU8ifzP8/f8XzxxIdpb+Up5XaOtE26Fw+3zTp475WX7+GuuktiD1WF8pFUDe6khUPbMp77RCw==", + "license": "MIT", + "dependencies": { + "tslib": "2.8.1" + }, + "engines": { + "node": ">=22.0.0" + } + }, + "node_modules/@supabase/phoenix": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/@supabase/phoenix/-/phoenix-0.4.5.tgz", + "integrity": "sha512-aAn9H9ovVyeApKy11OWOrrOGq8DV68yWeH4ud2lN9fzn4aO8Zb5GLL9m1pUg9nLqIcT+ZDfAcsZe0E/nqdv2lw==", + "license": "MIT" + }, + "node_modules/@supabase/postgrest-js": { + "version": "2.111.0", + "resolved": "https://registry.npmjs.org/@supabase/postgrest-js/-/postgrest-js-2.111.0.tgz", + "integrity": "sha512-pcqeDsnWP0lx9GawduYxNZJHeuTm53O7L0SC8RF8tniV3GWIPY6me6OTdnwzdwNUmNy1dzUVtSyIfE6+OflzPQ==", + "license": "MIT", + "dependencies": { + "tslib": "2.8.1" + }, + "engines": { + "node": ">=22.0.0" + } + }, + "node_modules/@supabase/realtime-js": { + "version": "2.111.0", + "resolved": "https://registry.npmjs.org/@supabase/realtime-js/-/realtime-js-2.111.0.tgz", + "integrity": "sha512-6oRf/vZyRwg8f8GbFSJkrD2w4HAu/yTvyMViHXHS+H5hNJzdXCrUR7cP5oW7daT3YlRnzRPY9LcGSJKZAmfMSg==", + "license": "MIT", + "dependencies": { + "@supabase/phoenix": "0.4.5", + "tslib": "2.8.1" + }, + "engines": { + "node": ">=22.0.0" + } + }, + "node_modules/@supabase/storage-js": { + "version": "2.111.0", + "resolved": "https://registry.npmjs.org/@supabase/storage-js/-/storage-js-2.111.0.tgz", + "integrity": "sha512-UEViNmTzVOxE8dqUA81wls+n9xgmlvSFfhfwo6QxrO4kQOytCYyw3ciYFoi4XoD4Jl95NJ3jnndHN5iIudWzqw==", + "license": "MIT", + "dependencies": { + "iceberg-js": "^0.8.1", + "tslib": "2.8.1" + }, + "engines": { + "node": ">=22.0.0" + } + }, + "node_modules/@supabase/supabase-js": { + "version": "2.111.0", + "resolved": "https://registry.npmjs.org/@supabase/supabase-js/-/supabase-js-2.111.0.tgz", + "integrity": "sha512-9q0/AULthQnWeiDh1vGyjoJZbSY04bu6qHcWit70pqEYn5Kv/dkCPY62Ja1123jEnJbB9Vd2pjY7Kvk/lK3peA==", + "license": "MIT", + "dependencies": { + "@supabase/auth-js": "2.111.0", + "@supabase/functions-js": "2.111.0", + "@supabase/postgrest-js": "2.111.0", + "@supabase/realtime-js": "2.111.0", + "@supabase/storage-js": "2.111.0" + }, + "engines": { + "node": ">=22.0.0" + } + }, + "node_modules/@tabby_ai/hijri-converter": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@tabby_ai/hijri-converter/-/hijri-converter-1.0.5.tgz", + "integrity": "sha512-r5bClKrcIusDoo049dSL8CawnHR6mRdDwhlQuIgZRNty68q0x8k3Lf1BtPAMxRf/GgnHBnIO4ujd3+GQdLWzxQ==", + "license": "MIT", + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@tailwindcss/node": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.3.3.tgz", + "integrity": "sha512-/T8IKEsf9VTU6tLjgC7+sv2mOPtQxzE2jMw7u4Tt40Tx+QSZxpzh95/H6cMKoja9XuW7iMdLJYBB0o9G1CaAgg==", + "license": "MIT", + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "enhanced-resolve": "^5.24.1", + "jiti": "^2.7.0", + "lightningcss": "1.32.0", + "magic-string": "^0.30.21", + "source-map-js": "^1.2.1", + "tailwindcss": "4.3.3" + } + }, + "node_modules/@tailwindcss/node/node_modules/lightningcss": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz", + "integrity": "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==", + "license": "MPL-2.0", + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-android-arm64": "1.32.0", + "lightningcss-darwin-arm64": "1.32.0", + "lightningcss-darwin-x64": "1.32.0", + "lightningcss-freebsd-x64": "1.32.0", + "lightningcss-linux-arm-gnueabihf": "1.32.0", + "lightningcss-linux-arm64-gnu": "1.32.0", + "lightningcss-linux-arm64-musl": "1.32.0", + "lightningcss-linux-x64-gnu": "1.32.0", + "lightningcss-linux-x64-musl": "1.32.0", + "lightningcss-win32-arm64-msvc": "1.32.0", + "lightningcss-win32-x64-msvc": "1.32.0" + } + }, + "node_modules/@tailwindcss/node/node_modules/lightningcss-android-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz", + "integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@tailwindcss/node/node_modules/lightningcss-darwin-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz", + "integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@tailwindcss/node/node_modules/lightningcss-darwin-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz", + "integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@tailwindcss/node/node_modules/lightningcss-freebsd-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz", + "integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@tailwindcss/node/node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz", + "integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==", + "cpu": [ + "arm" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@tailwindcss/node/node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz", + "integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==", + "cpu": [ + "arm64" + ], + "libc": [ + "glibc" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@tailwindcss/node/node_modules/lightningcss-linux-arm64-musl": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz", + "integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==", + "cpu": [ + "arm64" + ], + "libc": [ + "musl" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@tailwindcss/node/node_modules/lightningcss-linux-x64-gnu": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz", + "integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==", + "cpu": [ + "x64" + ], + "libc": [ + "glibc" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@tailwindcss/node/node_modules/lightningcss-linux-x64-musl": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz", + "integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==", + "cpu": [ + "x64" + ], + "libc": [ + "musl" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@tailwindcss/node/node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz", + "integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@tailwindcss/node/node_modules/lightningcss-win32-x64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz", + "integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@tailwindcss/oxide": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.3.3.tgz", + "integrity": "sha512-krXjAikiaFSPaK/FkAQT5UTx3VormQaiZ5hBFlJZ9UFQGB/rwg1MZIhHAG9smMQRTdyJxP6Qt5MwMtdyU5FWrA==", + "license": "MIT", + "engines": { + "node": ">= 20" + }, + "optionalDependencies": { + "@tailwindcss/oxide-android-arm64": "4.3.3", + "@tailwindcss/oxide-darwin-arm64": "4.3.3", + "@tailwindcss/oxide-darwin-x64": "4.3.3", + "@tailwindcss/oxide-freebsd-x64": "4.3.3", + "@tailwindcss/oxide-linux-arm-gnueabihf": "4.3.3", + "@tailwindcss/oxide-linux-arm64-gnu": "4.3.3", + "@tailwindcss/oxide-linux-arm64-musl": "4.3.3", + "@tailwindcss/oxide-linux-x64-gnu": "4.3.3", + "@tailwindcss/oxide-linux-x64-musl": "4.3.3", + "@tailwindcss/oxide-wasm32-wasi": "4.3.3", + "@tailwindcss/oxide-win32-arm64-msvc": "4.3.3", + "@tailwindcss/oxide-win32-x64-msvc": "4.3.3" + } + }, + "node_modules/@tailwindcss/oxide-android-arm64": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.3.3.tgz", + "integrity": "sha512-Y85A2gmPSkl5Ve5qR86GL4HT509cFqQh1aes9p3sSkyTPwt0Pppf3GkwGe4JPACcRYjgJIEhQgM6dBClnr0NYw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-darwin-arm64": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.3.3.tgz", + "integrity": "sha512-BiaWatpBcERQFDlOjRDpIVXuFK5PJez5SA4JMg6VYZdBYU+qKfV/vqjcIs+IYmtitf1xYQZTwXvU/8y4lfZUGw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-darwin-x64": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.3.3.tgz", + "integrity": "sha512-fAeUqfV5ndhxRwai8cXGzdLvul9utWOmeTkv69unv4ZXixjn61Z+p9lCWdwOwA3TYboG3BwdVuN/RDjhBRl0mw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-freebsd-x64": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.3.3.tgz", + "integrity": "sha512-iyf5bV6+wnAlflVeEy7R25dupxTNECZN5QMI0qNT6eT+EgaGdZcKhGkr5SdoaWiLJ3spLqIY9VCeSGrwmtg4kw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.3.3.tgz", + "integrity": "sha512-aAYUprJAJQWWbRrPvtjdroZ56Md+JM8pMiopS6xGEwDfLhqj+2ver2p4nU4Mb3CRqcMmNBjo8KkUgcxhkzVQGQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.3.3.tgz", + "integrity": "sha512-nDxldcEENOxZRzC2uu9jrutZdAAQtb+8WWDCSnWL1zvBk1+FN+x6MtDViPB5AJMfttVCUhehGWus3XBPgatM/w==", + "cpu": [ + "arm64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-musl": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.3.3.tgz", + "integrity": "sha512-Md44bD6veX/PC5iyF8cDVnw4HBIANZepRZZ7a8DQOvkfo5WUBwcp6iAuCUz23u+4SUkhJlD3eL7hNdW8ezd/kA==", + "cpu": [ + "arm64" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-gnu": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.3.3.tgz", + "integrity": "sha512-tx7us1muwOKAKWao2v/GaafFeQboE6aj88vC6ziN2NCGcRm8gWUhwjzg+YdVB1e4boAtdtma4L43onunI6NS4w==", + "cpu": [ + "x64" + ], + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-musl": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.3.3.tgz", + "integrity": "sha512-SJxX60smvHgasZoBy11dX6YRjXJFovwWBoedhbQPOBzgFWBHGB+TVPWB9BxzR7TTxU8FQZAI2AyiNCMzFm8Img==", + "cpu": [ + "x64" + ], + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.3.3.tgz", + "integrity": "sha512-jx1+rPhY/5Ympkktd656HBWEBLxP7dH06losBLjjf5vgCODXvi9KhtftWcMIwTFIDqBr7cRnQkdLnAG+IOlGvQ==", + "bundleDependencies": [ + "@napi-rs/wasm-runtime", + "@emnapi/core", + "@emnapi/runtime", + "@tybys/wasm-util", + "@emnapi/wasi-threads", + "tslib" + ], + "cpu": [ + "wasm32" + ], + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.11.1", + "@emnapi/runtime": "^1.11.1", + "@emnapi/wasi-threads": "^1.2.2", + "@napi-rs/wasm-runtime": "^1.1.4", + "@tybys/wasm-util": "^0.10.2", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@emnapi/core": { + "version": "1.11.1", + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.2.2", + "tslib": "^2.4.0" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@emnapi/runtime": { + "version": "1.11.1", + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@emnapi/wasi-threads": { + "version": "1.2.2", + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@napi-rs/wasm-runtime": { + "version": "1.1.4", + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@tybys/wasm-util": "^0.10.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + }, + "peerDependencies": { + "@emnapi/core": "^1.7.1", + "@emnapi/runtime": "^1.7.1" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@tybys/wasm-util": { + "version": "0.10.2", + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/tslib": { + "version": "2.8.1", + "inBundle": true, + "license": "0BSD", + "optional": true + }, + "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.3.3.tgz", + "integrity": "sha512-3rc292Ca2ceK6Ulcc/bAVnTs/3nDtoPhyEKlgPv+yQJQi/JS/AMJlqzxvlDacL1nekbrcf6bTqp/jV4qgnPxNQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/oxide-win32-x64-msvc": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.3.3.tgz", + "integrity": "sha512-yJ0pwIVc/nYeGoV02WtsN8KYyLQv7kyI2wDnkezyJlGGjkd4QLwDGAwl47YpPJeuI0M0ObaXGSPjvWDPeTPggw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 20" + } + }, + "node_modules/@tailwindcss/vite": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@tailwindcss/vite/-/vite-4.3.3.tgz", + "integrity": "sha512-yYU8cogLeSh/ms2jh8Fj7jaba/EWa7Ja6GoUqYZaraEuCI5YS6ms6ObZgjjedm+jm6XZjdNRWBpPP6Z86oOxcw==", + "license": "MIT", + "dependencies": { + "@tailwindcss/node": "4.3.3", + "@tailwindcss/oxide": "4.3.3", + "tailwindcss": "4.3.3" + }, + "peerDependencies": { + "vite": "^5.2.0 || ^6 || ^7 || ^8" + } + }, + "node_modules/@tanstack/devtools-bundler-core": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@tanstack/devtools-bundler-core/-/devtools-bundler-core-0.1.1.tgz", + "integrity": "sha512-2kowecGXNi/FAnwmJKW3WDZ6XuacHDcz4JsMmx43E21G6ZFmoQFuOJCVuv2bFkQZIR1M7+FVLQF5bdS5MQY62Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@tanstack/devtools-client": "0.0.8", + "@tanstack/devtools-event-bus": "0.4.2", + "chalk": "^5.6.2", + "launch-editor": "^2.11.1", + "magic-string": "^0.30.0", + "oxc-parser": "^0.120.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/devtools-client": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/@tanstack/devtools-client/-/devtools-client-0.0.8.tgz", + "integrity": "sha512-cG3iZkGWCwN330bLBKa8+9r4Of2AXNoz2zUqcsy/4XsD3105ghVBx78cGyvJj9fSclNomPxoqAnDGXXhg1WLvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@tanstack/devtools-event-client": "^0.5.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/devtools-event-bus": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@tanstack/devtools-event-bus/-/devtools-event-bus-0.4.2.tgz", + "integrity": "sha512-2LHzhwBFlKHCcklsQrGe8TeyjHd4XAF8nuCO6wHmva5fePUkJUULbu6CsCNAlGlCi0KkEsMXZSvRdR4HgMq4yA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ws": "^8.18.3" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/devtools-event-client": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@tanstack/devtools-event-client/-/devtools-event-client-0.5.0.tgz", + "integrity": "sha512-H+OH3zC6Vhu/K0NaVfQKknEKawc/+2PT+D3SB3Ox0V8SiMlTo0abbmH2rH0721R2aNYbjdMXA1oENOd8E2UVoA==", + "dev": true, + "license": "MIT", + "bin": { + "intent": "bin/intent.js" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/devtools-vite": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/@tanstack/devtools-vite/-/devtools-vite-0.8.3.tgz", + "integrity": "sha512-MqqE4/rdQUG55Y8Zux1Jj1I2wIBHdqYgjAJzP1grMUtFqSZ2XIDB7BHEV9UW/vrbhK7ocl4yFgVaJWROv0zeDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@tanstack/devtools-bundler-core": "0.1.1", + "@tanstack/devtools-client": "0.0.8", + "@tanstack/devtools-event-bus": "0.4.2", + "chalk": "^5.6.2" + }, + "bin": { + "intent": "bin/intent.js" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "vite": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@tanstack/history": { + "version": "1.162.0", + "resolved": "https://registry.npmjs.org/@tanstack/history/-/history-1.162.0.tgz", + "integrity": "sha512-79pf/RkhteYZTRgcR4F9kbk84P2N8rugQJswxfIqovlbRiT3yI7eBE+5QorIrZaOKktsgzRlXh1l/du/xpl4iA==", + "license": "MIT", + "engines": { + "node": ">=20.19" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/query-core": { + "version": "5.101.4", + "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.101.4.tgz", + "integrity": "sha512-gNwcvOJcRbLWPOLG/2OBm+zM+Yv+MKsXKEOWC57USuZDEsI71hEErQsiEGx5wX9rzWWkfwM0fVSPoiIFSsxfiw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/react-query": { + "version": "5.101.4", + "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.101.4.tgz", + "integrity": "sha512-yRg2pfOCxIs4ZJW3XYYHU/WgtD04FHSnfHlpRT7h7pR77hwkdRG4wxbKe4aq6P0RvXUTBSQpQeadS1SUYUe+KA==", + "license": "MIT", + "dependencies": { + "@tanstack/query-core": "5.101.4" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": "^18 || ^19" + } + }, + "node_modules/@tanstack/react-router": { + "version": "1.170.18", + "resolved": "https://registry.npmjs.org/@tanstack/react-router/-/react-router-1.170.18.tgz", + "integrity": "sha512-wpbGYZEp/fmz1q4bn7BD8VZ+/VZ7GBqSJv5V969pU+chP8y7dquWDmKTFMohvUegb9lg12m1uPVvD6kB2wORvQ==", + "license": "MIT", + "dependencies": { + "@tanstack/history": "1.162.0", + "@tanstack/react-store": "^0.9.3", + "@tanstack/router-core": "1.171.15", + "isbot": "^5.1.22" + }, + "engines": { + "node": ">=20.19" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": ">=18.0.0 || >=19.0.0", + "react-dom": ">=18.0.0 || >=19.0.0" + } + }, + "node_modules/@tanstack/react-start": { + "version": "1.168.34", + "resolved": "https://registry.npmjs.org/@tanstack/react-start/-/react-start-1.168.34.tgz", + "integrity": "sha512-W5MDbD4QlDZHtEXlqN6bJUz7SdsPv6tbNPCih1i72FZqgQlhaxN1BoeoB8H+nN8M4tXRkfJD7VW75FCdQyaQDw==", + "license": "MIT", + "dependencies": { + "@tanstack/react-router": "1.170.18", + "@tanstack/react-start-client": "1.168.16", + "@tanstack/react-start-rsc": "0.1.33", + "@tanstack/react-start-server": "1.167.22", + "@tanstack/router-utils": "1.162.2", + "@tanstack/start-client-core": "1.170.14", + "@tanstack/start-plugin-core": "1.171.25", + "@tanstack/start-server-core": "1.169.17", + "pathe": "^2.0.3" + }, + "engines": { + "node": ">=22.12.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "@rsbuild/core": "^2.0.0", + "react": ">=18.0.0 || >=19.0.0", + "react-dom": ">=18.0.0 || >=19.0.0", + "vite": ">=7.0.0" + }, + "peerDependenciesMeta": { + "@rsbuild/core": { + "optional": true + }, + "@vitejs/plugin-rsc": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@tanstack/react-start-client": { + "version": "1.168.16", + "resolved": "https://registry.npmjs.org/@tanstack/react-start-client/-/react-start-client-1.168.16.tgz", + "integrity": "sha512-1OfHgy0wpHwe2tlB3FxMeA+IMX6Il/QAMf+8UdXuimReIc2Lz3BkMLBL38k4GIxBguX9sI8EMLO5jlTZ4e1olw==", + "license": "MIT", + "dependencies": { + "@tanstack/react-router": "1.170.18", + "@tanstack/router-core": "1.171.15", + "@tanstack/start-client-core": "1.170.14" + }, + "engines": { + "node": ">=22.12.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": ">=18.0.0 || >=19.0.0", + "react-dom": ">=18.0.0 || >=19.0.0" + } + }, + "node_modules/@tanstack/react-start-rsc": { + "version": "0.1.33", + "resolved": "https://registry.npmjs.org/@tanstack/react-start-rsc/-/react-start-rsc-0.1.33.tgz", + "integrity": "sha512-G4e1xwi/InoQmIGgNQSozcWASw68/o3NpbTz+exosdMGRZzLBeUDbj0swEAajxHm6jDEOQ/reSeIcDkcEfhMfw==", + "license": "MIT", + "dependencies": { + "@tanstack/react-router": "1.170.18", + "@tanstack/router-core": "1.171.15", + "@tanstack/router-utils": "1.162.2", + "@tanstack/start-client-core": "1.170.14", + "@tanstack/start-fn-stubs": "1.162.0", + "@tanstack/start-plugin-core": "1.171.25", + "@tanstack/start-server-core": "1.169.17", + "@tanstack/start-storage-context": "1.167.17", + "pathe": "^2.0.3" + }, + "engines": { + "node": ">=22.12.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "@rspack/core": ">=2.0.0-0", + "@vitejs/plugin-rsc": ">=0.5.30", + "react": ">=18.0.0 || >=19.0.0", + "react-dom": ">=18.0.0 || >=19.0.0", + "react-server-dom-rspack": ">=0.0.2" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "@vitejs/plugin-rsc": { + "optional": true + }, + "react-server-dom-rspack": { + "optional": true + } + } + }, + "node_modules/@tanstack/react-start-server": { + "version": "1.167.22", + "resolved": "https://registry.npmjs.org/@tanstack/react-start-server/-/react-start-server-1.167.22.tgz", + "integrity": "sha512-eH2PeHuLfL3R5YzE9+y2FfcE4Ld1LNV2ZfrCNVPJMMJFt+9nXDaRHg9BsEmc+JkTAGzz3FKLyQEoWwpbG6Ehqg==", + "license": "MIT", + "dependencies": { + "@tanstack/react-router": "1.170.18", + "@tanstack/router-core": "1.171.15", + "@tanstack/start-server-core": "1.169.17" + }, + "engines": { + "node": ">=22.12.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": ">=18.0.0 || >=19.0.0", + "react-dom": ">=18.0.0 || >=19.0.0" + } + }, + "node_modules/@tanstack/react-store": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/@tanstack/react-store/-/react-store-0.9.3.tgz", + "integrity": "sha512-y2iHd/N9OkoQbFJLUX1T9vbc2O9tjH0pQRgTcx1/Nz4IlwLvkgpuglXUx+mXt0g5ZDFrEeDnONPqkbfxXJKwRg==", + "license": "MIT", + "dependencies": { + "@tanstack/store": "0.9.3", + "use-sync-external-store": "^1.6.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@tanstack/router-core": { + "version": "1.171.15", + "resolved": "https://registry.npmjs.org/@tanstack/router-core/-/router-core-1.171.15.tgz", + "integrity": "sha512-IILCDcLaItMZQ2jEmCABHY1Nhjjn5XUvwpQp3e4Nmu+vfg0BgYFuu/QASz2SwE2ZNbVMrvt8X/wxa+Gg5aErxA==", + "license": "MIT", + "dependencies": { + "@tanstack/history": "1.162.0", + "cookie-es": "^3.0.0", + "seroval": "^1.5.4", + "seroval-plugins": "^1.5.4" + }, + "engines": { + "node": ">=20.19" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/router-generator": { + "version": "1.167.21", + "resolved": "https://registry.npmjs.org/@tanstack/router-generator/-/router-generator-1.167.21.tgz", + "integrity": "sha512-m3oXZyienj8owialdyoZ0txHQrnEx/Ra+D9kWtar5fC2cWZr5Pvxl86VY2mX5RRLC5QLKLeRGT1x4HV95wHVDQ==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.5", + "@tanstack/router-core": "1.171.15", + "@tanstack/router-utils": "1.162.2", + "@tanstack/virtual-file-routes": "1.162.0", + "jiti": "^2.7.0", + "magic-string": "^0.30.21", + "prettier": "^3.5.0", + "zod": "^4.4.3" + }, + "engines": { + "node": ">=20.19" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/router-generator/node_modules/zod": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.3.tgz", + "integrity": "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/@tanstack/router-plugin": { + "version": "1.168.23", + "resolved": "https://registry.npmjs.org/@tanstack/router-plugin/-/router-plugin-1.168.23.tgz", + "integrity": "sha512-0+PIcvnaAimFwjoEIeV3h7LKjzC8zNnp7pH2UamdKwQ9QlY99WU9V0Xl0zbM0i9hrUa/mKgWPDAzELmPUu5fMA==", + "license": "MIT", + "dependencies": { + "@babel/core": "^7.28.5", + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.5", + "@tanstack/router-core": "1.171.15", + "@tanstack/router-generator": "1.167.21", + "@tanstack/router-utils": "1.162.2", + "chokidar": "^5.0.0", + "unplugin": "^3.0.0", + "zod": "^4.4.3" + }, + "engines": { + "node": ">=20.19" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "@rsbuild/core": ">=1.0.2 || ^2.0.0", + "@tanstack/react-router": "^1.170.18", + "vite": ">=5.0.0 || >=6.0.0 || >=7.0.0 || >=8.0.0", + "vite-plugin-solid": "^2.11.10 || ^3.0.0-0", + "webpack": ">=5.92.0" + }, + "peerDependenciesMeta": { + "@rsbuild/core": { + "optional": true + }, + "@tanstack/react-router": { + "optional": true + }, + "vite": { + "optional": true + }, + "vite-plugin-solid": { + "optional": true + }, + "webpack": { + "optional": true + } + } + }, + "node_modules/@tanstack/router-plugin/node_modules/zod": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.3.tgz", + "integrity": "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/@tanstack/router-utils": { + "version": "1.162.2", + "resolved": "https://registry.npmjs.org/@tanstack/router-utils/-/router-utils-1.162.2.tgz", + "integrity": "sha512-hTWqJtqIFFdvuCl8WXNyrodp2L9zo2G37xKRrcVmVRWpAB2h+U1LuRAfS4tsFTiWOIoE/B+WDVFB8JpoEdw6jQ==", + "license": "MIT", + "dependencies": { + "@babel/generator": "^7.28.5", + "@babel/parser": "^7.28.5", + "@babel/types": "^7.28.5", + "ansis": "^4.1.0", + "babel-dead-code-elimination": "^1.0.12", + "diff": "^8.0.2", + "pathe": "^2.0.3", + "tinyglobby": "^0.2.15" + }, + "engines": { + "node": ">=20.19" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/start-client-core": { + "version": "1.170.14", + "resolved": "https://registry.npmjs.org/@tanstack/start-client-core/-/start-client-core-1.170.14.tgz", + "integrity": "sha512-yasBgEIFSWysL4EiFIGwp638nCoXXKiTqkc48EP2oty4OyNsZPTC1yfJ82zjq2KGkTAYtIaeMl7otqqRl1n85Q==", + "license": "MIT", + "dependencies": { + "@tanstack/router-core": "1.171.15", + "@tanstack/start-fn-stubs": "1.162.0", + "@tanstack/start-storage-context": "1.167.17", + "seroval": "^1.5.4" + }, + "engines": { + "node": ">=22.12.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/start-fn-stubs": { + "version": "1.162.0", + "resolved": "https://registry.npmjs.org/@tanstack/start-fn-stubs/-/start-fn-stubs-1.162.0.tgz", + "integrity": "sha512-QWfUZ3Yo923tdQn38LyKMU8rcTw69zc+T4dAvgTWV4O56SqFRsGfS0lSWIMhJRwXIx/bvdi7nTUBDdZtTHtpTQ==", + "license": "MIT", + "engines": { + "node": ">=22.12.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/start-plugin-core": { + "version": "1.171.25", + "resolved": "https://registry.npmjs.org/@tanstack/start-plugin-core/-/start-plugin-core-1.171.25.tgz", + "integrity": "sha512-YmMye36vohfxau/MaVpltjkpJlf+wfUBoZp3S6Ue53mpAnsHr6El3XQDmcp1wS4kicZmyX1SNcobJpVZc+2dOQ==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "7.27.1", + "@babel/core": "^7.28.5", + "@babel/types": "^7.28.5", + "@tanstack/router-core": "1.171.15", + "@tanstack/router-generator": "1.167.21", + "@tanstack/router-plugin": "1.168.23", + "@tanstack/router-utils": "1.162.2", + "@tanstack/start-server-core": "1.169.17", + "exsolve": "^1.0.7", + "lightningcss": "^1.32.0", + "pathe": "^2.0.3", + "picomatch": "^4.0.3", + "seroval": "^1.5.4", + "source-map": "^0.7.6", + "srvx": "^0.11.9", + "tinyglobby": "^0.2.15", + "ufo": "^1.5.4", + "vitefu": "^1.1.1", + "xmlbuilder2": "^4.0.3", + "zod": "^4.4.3" + }, + "engines": { + "node": ">=22.12.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "@rsbuild/core": "^2.0.0", + "vite": ">=7.0.0" + }, + "peerDependenciesMeta": { + "@rsbuild/core": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@tanstack/start-plugin-core/node_modules/@babel/code-frame": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@tanstack/start-plugin-core/node_modules/zod": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.3.tgz", + "integrity": "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/@tanstack/start-server-core": { + "version": "1.169.17", + "resolved": "https://registry.npmjs.org/@tanstack/start-server-core/-/start-server-core-1.169.17.tgz", + "integrity": "sha512-u0N+PHJhMHnzfnlXYI9F+A/qweDe3E2X0mfkORPGIEkNQgvS548RA9fjwvixR2en5b848CfpEqUzwFhm/tQ40Q==", + "license": "MIT", + "dependencies": { + "@tanstack/history": "1.162.0", + "@tanstack/router-core": "1.171.15", + "@tanstack/start-client-core": "1.170.14", + "@tanstack/start-storage-context": "1.167.17", + "fetchdts": "^0.1.6", + "h3-v2": "npm:h3@2.0.1-rc.20", + "seroval": "^1.5.4" + }, + "engines": { + "node": ">=22.12.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/start-storage-context": { + "version": "1.167.17", + "resolved": "https://registry.npmjs.org/@tanstack/start-storage-context/-/start-storage-context-1.167.17.tgz", + "integrity": "sha512-ntkDyGx0PE0opIlWNAMpkMb8qkjR4uyCUOfC0CiT0STM25+EcwPuwYNfDXXeVObMrTAPgsQ4yOj3xdY0Xr4ptw==", + "license": "MIT", + "dependencies": { + "@tanstack/router-core": "1.171.15" + }, + "engines": { + "node": ">=22.12.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/store": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/@tanstack/store/-/store-0.9.3.tgz", + "integrity": "sha512-8reSzl/qGWGGVKhBoxXPMWzATSbZLZFWhwBAFO9NAyp0TxzfBP0mIrGb8CP8KrQTmvzXlR/vFPPUrHTLBGyFyw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/virtual-file-routes": { + "version": "1.162.0", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-file-routes/-/virtual-file-routes-1.162.0.tgz", + "integrity": "sha512-uhOeFyxLcU41HzvrxsGpiWdcMbScY1EDgbZ5K7DVRMYInbLYWAC0EA/kx9wXAoSM8q82bUG2hRl8+EAjE6XAbA==", + "license": "MIT", + "engines": { + "node": ">=20.19" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.3.tgz", + "integrity": "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==", + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", + "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.2" + } + }, + "node_modules/@types/canvas-confetti": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@types/canvas-confetti/-/canvas-confetti-1.9.0.tgz", + "integrity": "sha512-aBGj/dULrimR1XDZLtG9JwxX1b4HPRF6CX9Yfwh3NvstZEm1ZL7RBnel4keCPSqs1ANRu1u2Aoz9R+VmtjYuTg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/d3-array": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.2.2.tgz", + "integrity": "sha512-hOLWVbm7uRza0BYXpIIW5pxfrKe0W+D5lrFiAEYR+pb6w3N2SwSMaJbXdUfSEv+dT4MfHBLtn5js0LAWaO6otw==", + "license": "MIT" + }, + "node_modules/@types/d3-color": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.3.tgz", + "integrity": "sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==", + "license": "MIT" + }, + "node_modules/@types/d3-ease": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.2.tgz", + "integrity": "sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA==", + "license": "MIT" + }, + "node_modules/@types/d3-interpolate": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz", + "integrity": "sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA==", + "license": "MIT", + "dependencies": { + "@types/d3-color": "*" + } + }, + "node_modules/@types/d3-path": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.1.1.tgz", + "integrity": "sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg==", + "license": "MIT" + }, + "node_modules/@types/d3-scale": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.9.tgz", + "integrity": "sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw==", + "license": "MIT", + "dependencies": { + "@types/d3-time": "*" + } + }, + "node_modules/@types/d3-shape": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.8.tgz", + "integrity": "sha512-lae0iWfcDeR7qt7rA88BNiqdvPS5pFVPpo5OfjElwNaT2yyekbM0C9vK+yqBqEmHr6lDkRnYNoTBYlAgJa7a4w==", + "license": "MIT", + "dependencies": { + "@types/d3-path": "*" + } + }, + "node_modules/@types/d3-time": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.4.tgz", + "integrity": "sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g==", + "license": "MIT" + }, + "node_modules/@types/d3-timer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.2.tgz", + "integrity": "sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw==", + "license": "MIT" + }, + "node_modules/@types/estree": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz", + "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "22.20.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.20.1.tgz", + "integrity": "sha512-EANqOCF9QFyra+4pfxUcX9STKJpCLjMbObVzljIJomAWSnuSIEAvyzEU53GaajbXJEgdh0iEcPL+DGvpUd4k1Q==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/react": { + "version": "19.2.18", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.18.tgz", + "integrity": "sha512-AnzbBERsrLKtk2XSfTbYRLjQPdy116Sty4q+T+Bp3IC4l6jNBvreVPAHmpq9qhXQM7CXZPjLVmGMw9sy+hxQ3w==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "csstype": "^3.2.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.2.4", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.4.tgz", + "integrity": "sha512-Bsc+QHgp+P/F02XDzNCY9jnZNCUuLki36KT7VKrTXXLdHf+vHMNZnW1rVu5DNW/rCK+fya3DATySbLM4yhtKUw==", + "devOptional": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^19.2.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.65.0.tgz", + "integrity": "sha512-IEgob78X12rHpUmtcwFsXhZdVGJtwTVP8FiCLZkR6GlYVrl2PcuB+KhCE5BlVC/eQpQnu8WXRtkHZuPar+gCRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.12.2", + "@typescript-eslint/scope-manager": "8.65.0", + "@typescript-eslint/type-utils": "8.65.0", + "@typescript-eslint/utils": "8.65.0", + "@typescript-eslint/visitor-keys": "8.65.0", + "ignore": "^7.0.5", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.5.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.65.0", + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.6.tgz", + "integrity": "sha512-BAg6QkE8W+TuQLrrw0Ugr7HegXduRuuj8/ti2kSOc+jz1dmx8/WNcjr6XGnq5YpDWxFwwaavqD0+jIUOKelTsw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.65.0.tgz", + "integrity": "sha512-CZ4nMxWwgu1HEEFNkeaCptra9QCtkmKdgf3sWh1rl1trIhmxLilgTV4cwcbQ4wemnT4sWQN8CaKOmdYx+g2gMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/scope-manager": "8.65.0", + "@typescript-eslint/types": "8.65.0", + "@typescript-eslint/typescript-estree": "8.65.0", + "@typescript-eslint/visitor-keys": "8.65.0", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/project-service": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.65.0.tgz", + "integrity": "sha512-SxnPhbTsGahizDgbu7oqFH/xVtzIqMd/s+WtnSxNxJZJpLbdT5IPdzg8EZxO3+PoKahXmwJLeNQOpKJb3/bi7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.65.0", + "@typescript-eslint/types": "^8.65.0", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.65.0.tgz", + "integrity": "sha512-Esbl8OSYiVxBokYgWPf7VVWg/BE798wXhimnn9ML9Pt5qoDf8bfQlgjlKXR/k98+AcNzlLKYrpCcrcuZ9DZLgg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.65.0", + "@typescript-eslint/visitor-keys": "8.65.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.65.0.tgz", + "integrity": "sha512-j6GzGqCiRdA7Qhur2VVmKZAkBLfnHFQfx4TaJGL9RMveZqCo48jSHHO0DTgizEnGhtWnqmbtCUSrqSkdiY/0Hg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.65.0.tgz", + "integrity": "sha512-YjaZ7PRI5qY7ax2L3PbvX0rRyGtipAReCWs0mhhDBHjH/vl0g0BonaGXrKdKpMbIIsMIwDgbk/xzkBTyAltS5g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.65.0", + "@typescript-eslint/typescript-estree": "8.65.0", + "@typescript-eslint/utils": "8.65.0", + "debug": "^4.4.3", + "ts-api-utils": "^2.5.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.65.0.tgz", + "integrity": "sha512-JSSwWNy+H0E/01jJEM+hrX6N0OFDzFzeIhHFSAS01tlVaevpG8cFyYRPhS5yjGOvBUx3sqQHVMjCL1CAZZMxBg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.65.0.tgz", + "integrity": "sha512-JboAE2swaYt4tb1fHhHTABE2K+OLy09XfcTbhnk4Pw96f9dd2e9iYsJ28gBggHlo5z5x1rkyWvcPoTuNTd4oGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/project-service": "8.65.0", + "@typescript-eslint/tsconfig-utils": "8.65.0", + "@typescript-eslint/types": "8.65.0", + "@typescript-eslint/visitor-keys": "8.65.0", + "debug": "^4.4.3", + "minimatch": "^10.2.2", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.5.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/balanced-match": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz", + "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "18 || 20 || >=22" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz", + "integrity": "sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^4.0.2" + }, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "10.2.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.6.tgz", + "integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "brace-expansion": "^5.0.8" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.65.0.tgz", + "integrity": "sha512-gXiwIHsYreboxeJucHKPvgwl7dXt50mF8s1/c00cP/WoVTyWKFdtfhRWwZiXYFU5H2O8vVoSLNrexFZjYS/SGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.65.0", + "@typescript-eslint/types": "8.65.0", + "@typescript-eslint/typescript-estree": "8.65.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.65.0.tgz", + "integrity": "sha512-8C71BQkGjiMmXtop7pHVJu1l2NNShFdkCyD6a2ezzs5vU/L3LRtb69EtcteFwz0mYMPzIgOw0n6OV4VBUWZd7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.65.0", + "eslint-visitor-keys": "^5.0.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@vitejs/plugin-react": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-5.2.0.tgz", + "integrity": "sha512-YmKkfhOAi3wsB1PhJq5Scj3GXMn3WvtQ/JC0xoopuHoXSdmtdStOpFrYaT1kie2YgFBcIe64ROzMYRjCrYOdYw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.29.0", + "@babel/plugin-transform-react-jsx-self": "^7.27.1", + "@babel/plugin-transform-react-jsx-source": "^7.27.1", + "@rolldown/pluginutils": "1.0.0-rc.3", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.18.0" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.18.0.tgz", + "integrity": "sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ansis": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansis/-/ansis-4.3.1.tgz", + "integrity": "sha512-BJ8/l4R5LRE7hW9WdSuGYrLSHi2ynxeFpDFbH0K/CgNeY/tyhk+vO6TYxXC5r5CpUhNVX310xzPsN/H9lCdfOA==", + "license": "ISC", + "engines": { + "node": ">=14" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0" + }, + "node_modules/aria-hidden": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.6.tgz", + "integrity": "sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/babel-dead-code-elimination": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/babel-dead-code-elimination/-/babel-dead-code-elimination-1.0.12.tgz", + "integrity": "sha512-GERT7L2TiYcYDtYk1IpD+ASAYXjKbLTDPhBtYj7X1NuRMDTMtAx9kyBenub1Ev41lo91OHCKdmP+egTDmfQ7Ig==", + "license": "MIT", + "dependencies": { + "@babel/core": "^7.23.7", + "@babel/parser": "^7.23.6", + "@babel/traverse": "^7.23.7", + "@babel/types": "^7.23.6" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/baseline-browser-mapping": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.8.tgz", + "integrity": "sha512-zAgkquC2WYF0PIc6XbNYkA2uuxxFavzgmX61R+dHDUa558V8Ejf8ozTZFR6QzM24RWu4kBcRkhJ5kpz77j9fnQ==", + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.18", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.18.tgz", + "integrity": "sha512-Edep/X9fGqVNmzKBVsDYIOtD+z1tuezV70LBjdCst9Tqu76lsnvRiZ6oTic1n+/BIwX6QDGAO94PN4N2SADvtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/browserslist": { + "version": "4.28.7", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.7.tgz", + "integrity": "sha512-JxV13hNrFxqjOc8alRbq9dK1MM79NEXYpma2B2J4wAtpWS5zIEIKqWPGCl7N4o7Uc7B7itylh7SuDujATRyyTw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.10.44", + "caniuse-lite": "^1.0.30001806", + "electron-to-chromium": "^1.5.393", + "node-releases": "^2.0.51", + "update-browserslist-db": "^1.2.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001806", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001806.tgz", + "integrity": "sha512-72Cuvd95zbSYPKq6Fhg8eDJRlzgWDf7/mtoZv6Qe/DYNCEBdNxoA3+rZAU2ZhGCpZlns3EssFavaZomckT5Uuw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/canvas-confetti": { + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/canvas-confetti/-/canvas-confetti-1.9.4.tgz", + "integrity": "sha512-yxQbJkAVrFXWNbTUjPqjF7G+g6pDotOUHGbkZq2NELZUMDpiJ85rIEazVb8GTaAptNW2miJAXbs1BtioA251Pw==", + "license": "ISC", + "funding": { + "type": "donate", + "url": "https://www.paypal.me/kirilvatev" + } + }, + "node_modules/chalk": { + "version": "5.6.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz", + "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chokidar": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-5.0.0.tgz", + "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", + "license": "MIT", + "dependencies": { + "readdirp": "^5.0.0" + }, + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/class-variance-authority": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/class-variance-authority/-/class-variance-authority-0.7.1.tgz", + "integrity": "sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg==", + "license": "Apache-2.0", + "dependencies": { + "clsx": "^2.1.1" + }, + "funding": { + "url": "https://polar.sh/cva" + } + }, + "node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/cmdk": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/cmdk/-/cmdk-1.1.1.tgz", + "integrity": "sha512-Vsv7kFaXm+ptHDMZ7izaRsP70GgrW9NBNGswt9OZaVBLlE0SNpDq8eu/VGXyF9r7M0azK3Wy7OlYXsuyYLFzHg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "^1.1.1", + "@radix-ui/react-dialog": "^1.1.6", + "@radix-ui/react-id": "^1.1.0", + "@radix-ui/react-primitive": "^2.0.2" + }, + "peerDependencies": { + "react": "^18 || ^19 || ^19.0.0-rc", + "react-dom": "^18 || ^19 || ^19.0.0-rc" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/consola": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.4.2.tgz", + "integrity": "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "license": "MIT" + }, + "node_modules/cookie-es": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-3.1.1.tgz", + "integrity": "sha512-UaXxwISYJPTr9hwQxMFYZ7kNhSXboMXP+Z3TRX6f1/NyaGPfuNUZOWP1pUEb75B2HjfklIYLVRfWiFZJyC6Npg==", + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crossws": { + "version": "0.4.10", + "resolved": "https://registry.npmjs.org/crossws/-/crossws-0.4.10.tgz", + "integrity": "sha512-pz3oubH/dt12KjqsUB0IuXW4nwRDQ583iDsP4555Cpdqx0NoU7pGlWBcayyFI8f/l/idRpgjMEfwuOxSWJYlIA==", + "devOptional": true, + "license": "MIT", + "peerDependencies": { + "srvx": ">=0.11.5" + }, + "peerDependenciesMeta": { + "srvx": { + "optional": true + } + } + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "license": "MIT" + }, + "node_modules/d3-array": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", + "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", + "license": "ISC", + "dependencies": { + "internmap": "1 - 2" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-ease": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", + "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-format": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.2.tgz", + "integrity": "sha512-AJDdYOdnyRDV5b6ArilzCPPwc1ejkHcoyFarqlPqT7zRYjhavcT3uSrqcMvsgh2CgoPbK3RCwyHaVyxYcP2Arg==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "license": "ISC", + "dependencies": { + "d3-color": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", + "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-scale": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", + "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", + "license": "ISC", + "dependencies": { + "d3-array": "2.10.0 - 3", + "d3-format": "1 - 3", + "d3-interpolate": "1.2.0 - 3", + "d3-time": "2.1.1 - 3", + "d3-time-format": "2 - 4" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-shape": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", + "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==", + "license": "ISC", + "dependencies": { + "d3-path": "^3.1.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-time": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", + "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", + "license": "ISC", + "dependencies": { + "d3-array": "2 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-time-format": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", + "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", + "license": "ISC", + "dependencies": { + "d3-time": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-timer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", + "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/date-fns": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", + "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, + "node_modules/date-fns-jalali": { + "version": "4.1.0-0", + "resolved": "https://registry.npmjs.org/date-fns-jalali/-/date-fns-jalali-4.1.0-0.tgz", + "integrity": "sha512-hTIP/z+t+qKwBDcmmsnmjWTduxCg+5KfdqWQvb2X/8C9+knYY6epN/pfxdDuyVlSVeFz0sM5eEfwIUQ70U4ckg==", + "license": "MIT" + }, + "node_modules/db0": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/db0/-/db0-0.3.4.tgz", + "integrity": "sha512-RiXXi4WaNzPTHEOu8UPQKMooIbqOEyqA1t7Z6MsdxSCeb8iUC9ko3LcmsLmeUt2SM5bctfArZKkRQggKZz7JNw==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@electric-sql/pglite": "*", + "@libsql/client": "*", + "better-sqlite3": "*", + "drizzle-orm": "*", + "mysql2": "*", + "sqlite3": "*" + }, + "peerDependenciesMeta": { + "@electric-sql/pglite": { + "optional": true + }, + "@libsql/client": { + "optional": true + }, + "better-sqlite3": { + "optional": true + }, + "drizzle-orm": { + "optional": true + }, + "mysql2": { + "optional": true + }, + "sqlite3": { + "optional": true + } + } + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js-light": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.1.tgz", + "integrity": "sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==", + "license": "MIT" + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-node-es": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", + "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", + "license": "MIT" + }, + "node_modules/diff": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/diff/-/diff-8.0.4.tgz", + "integrity": "sha512-DPi0FmjiSU5EvQV0++GFDOJ9ASQUVFh5kD+OzOnYdi7n3Wpm9hWWGfB/O2blfHcMVTL5WkQXSnRiK9makhrcnw==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/dom-helpers": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", + "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.399", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.399.tgz", + "integrity": "sha512-lEcqhErbHjXRvd41rnWLpzbyU/IXfIYo7QwaFWmxGeLiLyY2TBCdHnWY88vB+p3ubnihRypDm66panXl7TylLA==", + "license": "ISC" + }, + "node_modules/embla-carousel": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/embla-carousel/-/embla-carousel-8.6.0.tgz", + "integrity": "sha512-SjWyZBHJPbqxHOzckOfo8lHisEaJWmwd23XppYFYVh10bU66/Pn5tkVkbkCMZVdbUE5eTCI2nD8OyIP4Z+uwkA==", + "license": "MIT" + }, + "node_modules/embla-carousel-react": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/embla-carousel-react/-/embla-carousel-react-8.6.0.tgz", + "integrity": "sha512-0/PjqU7geVmo6F734pmPqpyHqiM99olvyecY7zdweCw+6tKEXnrE90pBiBbMMU8s5tICemzpQ3hi5EpxzGW+JA==", + "license": "MIT", + "dependencies": { + "embla-carousel": "8.6.0", + "embla-carousel-reactive-utils": "8.6.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.1 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + } + }, + "node_modules/embla-carousel-reactive-utils": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/embla-carousel-reactive-utils/-/embla-carousel-reactive-utils-8.6.0.tgz", + "integrity": "sha512-fMVUDUEx0/uIEDM0Mz3dHznDhfX+znCCDCeIophYb1QGVM7YThSWX+wz11zlYwWFOr74b4QLGg0hrGPJeG2s4A==", + "license": "MIT", + "peerDependencies": { + "embla-carousel": "8.6.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.24.5", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.24.5.tgz", + "integrity": "sha512-L1l8TNvomm6UVW5B253AGxQagSQr+vGwhMlrrfRS2qmhx46AMpMVJKQYLvWYbysTMY8VoicOvzHzoHMbyzB+4A==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.3.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/env-runner": { + "version": "0.1.16", + "resolved": "https://registry.npmjs.org/env-runner/-/env-runner-0.1.16.tgz", + "integrity": "sha512-2LRJM4P2KLX6J83QZZrMqvgCDt/D5ea7wPcI3yYiy5cG/9rX5QwdwZFx0D7ktWnjdRyZxYjttGGorb5nFqb1CA==", + "dev": true, + "license": "MIT", + "dependencies": { + "crossws": "^0.4.8", + "exsolve": "^1.1.0", + "httpxy": "^0.5.4", + "srvx": "^0.11.19" + }, + "bin": { + "env-runner": "dist/cli.mjs" + }, + "peerDependencies": { + "@netlify/runtime": "^4.1.23", + "@vercel/queue": ">=0.2.0", + "miniflare": "^4.20260515.0", + "wrangler": "^4.0.0" + }, + "peerDependenciesMeta": { + "@netlify/runtime": { + "optional": true + }, + "@vercel/queue": { + "optional": true + }, + "miniflare": { + "optional": true + }, + "wrangler": { + "optional": true + } + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "9.39.5", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.5.tgz", + "integrity": "sha512-DgZS62aPLXKlnxILS/AYCoRvHaZeXceIzlXPkkGGzJWSow1aEk0lbTlxUSlyjC8jcaKxAdOnTDz+o1JFSBsyjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.8.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.21.2", + "@eslint/config-helpers": "^0.4.2", + "@eslint/core": "^0.17.0", + "@eslint/eslintrc": "^3.3.6", + "@eslint/js": "9.39.5", + "@eslint/plugin-kit": "^0.4.1", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "ajv": "^6.14.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.4.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.5", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-config-prettier": { + "version": "10.1.8", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.1.8.tgz", + "integrity": "sha512-82GZUjRS0p/jganf6q1rEO25VSoHH0hKPCTrgillPjdI/3bgBhAE1QzHrHTizjpRvy6pGAvKjDJtk2pF9NDq8w==", + "dev": true, + "license": "MIT", + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "funding": { + "url": "https://opencollective.com/eslint-config-prettier" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-plugin-prettier": { + "version": "5.5.6", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.5.6.tgz", + "integrity": "sha512-ifetmTcxWfz+4qRW3pH/ujdTq2jQIj59AxJMIN26K5avYgU8dxycUETQonWiW+wPrYXA0j3Try0l1CnwVQtDqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prettier-linter-helpers": "^1.0.1", + "synckit": "^0.11.13" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint-plugin-prettier" + }, + "peerDependencies": { + "@types/eslint": ">=8.0.0", + "eslint": ">=8.0.0", + "eslint-config-prettier": ">= 7.0.0 <10.0.0 || >=10.1.0", + "prettier": ">=3.0.0" + }, + "peerDependenciesMeta": { + "@types/eslint": { + "optional": true + }, + "eslint-config-prettier": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.2.0.tgz", + "integrity": "sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-react-refresh": { + "version": "0.4.26", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.26.tgz", + "integrity": "sha512-1RETEylht2O6FM/MvgnyvT+8K21wLqDNg4qD51Zj3guhjt433XbnnkVttHMyaVyAFD03QSV4LPS5iE3VQmO7XQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "eslint": ">=8.40" + } + }, + "node_modules/eslint-scope": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/ajv": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.15.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz", + "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "license": "MIT" + }, + "node_modules/exsolve": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.1.1.tgz", + "integrity": "sha512-9U/jZUgjnSGyntRr6y5Muu1MJcwFl6kPu7k8qLF0IMNfLqvw0NZ4nnVDq0RVoZ0RvCyumib4Ez3KYrVfilrw+g==", + "license": "MIT" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/fast-equals": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-5.4.1.tgz", + "integrity": "sha512-DjlFSM5Pk9cGcL0q5QXl66eGzx0N6szNgaswwc5ZphlBohjTVJSnGgI+rJVOgOi65qUoQnDZN4nDqi33udtydQ==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/fetchdts": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/fetchdts/-/fetchdts-0.1.7.tgz", + "integrity": "sha512-YoZjBdafyLIop9lSxXVI33oLD5kN31q4Td+CasofLLYeLXRFeOsuOw0Uo+XNRi9PZlbfdlN2GmRtm4tCEQ9/KA==", + "license": "MIT" + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.4.tgz", + "integrity": "sha512-5+ybhBZANEJxaH3X5evAFatUxLfEHSr7n6kYJ+1Qd0mUqr4eu9gIf6GDbWHf8RJijHrjjO8G+la14SlL2SeS1Q==", + "dev": true, + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-nonce": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", + "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "15.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globrex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", + "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==", + "license": "MIT" + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" + }, + "node_modules/h3": { + "version": "2.0.1-rc.26", + "resolved": "https://registry.npmjs.org/h3/-/h3-2.0.1-rc.26.tgz", + "integrity": "sha512-GDxlvDsKxgjRvG5UBRJYyGJTMWLV30CJ4cV+e7QCTgftDHihrvio1fVPbNembhEr6J4WNm8IWy3fookgyTweLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "rou3": "^0.9.1", + "srvx": "^0.12.4" + }, + "bin": { + "h3": "bin/h3.mjs" + }, + "engines": { + "node": ">=20.11.1" + }, + "peerDependencies": { + "crossws": "^0.4.9" + }, + "peerDependenciesMeta": { + "crossws": { + "optional": true + } + } + }, + "node_modules/h3-v2": { + "name": "h3", + "version": "2.0.1-rc.20", + "resolved": "https://registry.npmjs.org/h3/-/h3-2.0.1-rc.20.tgz", + "integrity": "sha512-28ljodXuUp0fZovdiSRq4G9OgrxCztrJe5VdYzXAB7ueRvI7pIUqLU14Xi3XqdYJ/khXjfpUOOD2EQa6CmBgsg==", + "license": "MIT", + "dependencies": { + "rou3": "^0.8.1", + "srvx": "^0.11.13" + }, + "bin": { + "h3": "bin/h3.mjs" + }, + "engines": { + "node": ">=20.11.1" + }, + "peerDependencies": { + "crossws": "^0.4.1" + }, + "peerDependenciesMeta": { + "crossws": { + "optional": true + } + } + }, + "node_modules/h3/node_modules/rou3": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/rou3/-/rou3-0.9.1.tgz", + "integrity": "sha512-z/sSmzvtwMDDnxsPVhfWMuG6F6mbmhFDXoVqLmMfbpDD9qfV3GDmSQpf0+W296/ZDIpW2wcMmBfpVFzcnOi/nA==", + "dev": true, + "license": "MIT" + }, + "node_modules/h3/node_modules/srvx": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/srvx/-/srvx-0.12.5.tgz", + "integrity": "sha512-IuvtDNQg5EIwv3c6dleyau7u8hCyGQ7D6+V/QM799Aud07z0wCUcurKLTRfyG33C8oUY+UWcVBFkfHMcbtmRLA==", + "dev": true, + "license": "MIT", + "bin": { + "srvx": "bin/srvx.mjs" + }, + "engines": { + "node": ">=20.16.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/hookable": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/hookable/-/hookable-6.1.1.tgz", + "integrity": "sha512-U9LYDy1CwhMCnprUfeAZWZGByVbhd54hwepegYTK7Pi5NvqEj63ifz5z+xukznehT7i6NIZRu89Ay1AZmRsLEQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/httpxy": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/httpxy/-/httpxy-0.5.5.tgz", + "integrity": "sha512-uDjmnPyp1q4Sgzf3w+J/Fc6UqcCEj0x4Wjp7OqK5dGhNeDgpyrAmnS6ey8QWrX3SWDon2DMKf9sBa5X9+CVyMA==", + "dev": true, + "license": "MIT" + }, + "node_modules/iceberg-js": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/iceberg-js/-/iceberg-js-0.8.1.tgz", + "integrity": "sha512-1dhVQZXhcHje7798IVM+xoo/1ZdVfzOMIc8/rgVSijRK38EDqOJoGula9N/8ZI5RD8QTxNQtK/Gozpr+qUqRRA==", + "license": "MIT", + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/input-otp": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/input-otp/-/input-otp-1.4.2.tgz", + "integrity": "sha512-l3jWwYNvrEa6NTCt7BECfCm48GvwuZzkoeG3gBL2w4CHeOXW3eKFmf9UNYkNfYc3mxMrthMnxjIE07MT0zLBQA==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc" + } + }, + "node_modules/internmap": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", + "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isbot": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/isbot/-/isbot-5.2.1.tgz", + "integrity": "sha512-dJ+LpKyClQZ7NG+j3OensC/mAZkGpukE9YUrgPYvAZj2doVL0edfDgywTUh5CXa0o+nW9a1V9e5+CJTX8+SxRw==", + "license": "Unlicense", + "engines": { + "node": ">=18" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/jiti": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.7.0.tgz", + "integrity": "sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==", + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz", + "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/launch-editor": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.14.1.tgz", + "integrity": "sha512-QWBrQsMpH7gPr965dsKD/3cKWiNoTjpATQf++Xq63N6sKRGMwlVXz41O1IZTMfZQgBctD/K5Zt06+/I6pP6+HA==", + "dev": true, + "license": "MIT", + "dependencies": { + "picocolors": "^1.1.1", + "shell-quote": "^1.8.4" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lightningcss": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.33.0.tgz", + "integrity": "sha512-WkUDrojuJs0xkgGf2udWxa3yGBRxPtxUkB79i6aCZLRgc7PM8fZe9TosfPDcvEpQZbuFASnHYmRLBLUbmLOIIA==", + "license": "MPL-2.0", + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-android-arm64": "1.33.0", + "lightningcss-darwin-arm64": "1.33.0", + "lightningcss-darwin-x64": "1.33.0", + "lightningcss-freebsd-x64": "1.33.0", + "lightningcss-linux-arm-gnueabihf": "1.33.0", + "lightningcss-linux-arm64-gnu": "1.33.0", + "lightningcss-linux-arm64-musl": "1.33.0", + "lightningcss-linux-x64-gnu": "1.33.0", + "lightningcss-linux-x64-musl": "1.33.0", + "lightningcss-win32-arm64-msvc": "1.33.0", + "lightningcss-win32-x64-msvc": "1.33.0" + } + }, + "node_modules/lightningcss-android-arm64": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.33.0.tgz", + "integrity": "sha512-gEpRTalKdosp4Bb8qWtc2iOgE5SeIHlpS1up9bFq2wAyYhl1UdTObYiHe98zEM9SQvSoqQZ1IQD0JNpg3Ml5pg==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.33.0.tgz", + "integrity": "sha512-Sciaz8eenNTKn9b3t7+xr0ipTp9YxKQY4npwQ3mrRuL0BAVHBLyZxofhaKBAVtzmtRZ/zTyo0/to4B1uWG/Djg==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.33.0.tgz", + "integrity": "sha512-Z5UPAxzrjlWNNyGy6i65cJzzvgJ5D3T6wMvs+gWpY9d7qRhANrxqAp6LhxIgZhWEw18RfJTGcRxjuLIBr+m8XQ==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-freebsd-x64": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.33.0.tgz", + "integrity": "sha512-QQM/Ti/hQajJwCY+RiWuCZ9sdtI/XQk7nDK5vC8kkdwixezOlDgvDx7+RT+QjK6FcFT4MpsuoBnHIo/O3StRRg==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.33.0.tgz", + "integrity": "sha512-N7FVBe6iS24MlM6R/4RBTxGhQheZGs7tiQ9U32UtF75NzP5Q7xWPRqLBCKxlRQRk3rY1jCIPLzx7WzOhuUIRLQ==", + "cpu": [ + "arm" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.33.0.tgz", + "integrity": "sha512-j2v/itmy4HlNxlc6voKXYgBqNi0Ng2LShg4z7GufpEgs05P+2suBVyi9I6YHq5uoVFx9ETin3eCEhLVyXGQnKg==", + "cpu": [ + "arm64" + ], + "libc": [ + "glibc" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.33.0.tgz", + "integrity": "sha512-yiO5ROMuYQgXbC60yjZU5CYSFZGKXL0HFATXt9mHJn1+zW55oCtMI9NfcVhYLMFDL7gV7oBPon/EmMMGg2OvtQ==", + "cpu": [ + "arm64" + ], + "libc": [ + "musl" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.33.0.tgz", + "integrity": "sha512-ar+Ju7LmcN0Jo4FpL4hpFybwNG9/3A/Br5KW2n2jyODg3MEZXaDYADdemoNS+BDNfMgKvylJLj4S5tyRActuAg==", + "cpu": [ + "x64" + ], + "libc": [ + "glibc" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.33.0.tgz", + "integrity": "sha512-RYiYbkokw0trfKqqzfF55lginwEPrD3OJDfTuJzFs1MK6iFnDenaz1fqLLtX4ITG3OktJQXOeTaw1awrBAlZPw==", + "cpu": [ + "x64" + ], + "libc": [ + "musl" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.33.0.tgz", + "integrity": "sha512-1K+MPfLSFVpphzpdbfkhlWk6wBrTObBzS2T6db10PNOZgR9GoVsAWzwNyuhUYYbTp23j+4RrncfujZ4uAzXvwA==", + "cpu": [ + "arm64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-x64-msvc": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.33.0.tgz", + "integrity": "sha512-OlEICDx/Xl0FqSp4bry8zFnCvGpig3Gl4gCquvYwHuqJKEC1+n9NgDniFvqHGmMv1ZkqDJrDqKKSykTDX+ehuA==", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz", + "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==", + "license": "MIT" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lucide-react": { + "version": "0.575.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.575.0.tgz", + "integrity": "sha512-VuXgKZrk0uiDlWjGGXmKV6MSk9Yy4l10qgVvzGn2AWBx1Ylt0iBexKOAoA6I7JO3m+M9oeovJd3yYENfkUbOeg==", + "license": "ISC", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/minimatch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.16", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.16.tgz", + "integrity": "sha512-bzlKTyNJ7+LdGIIwy8ijFpIqEQIvafahV7eYykJ8Cvh42EdJeODoJ6gUJXpQJvej1BddH8OqTXZNE/KfbWAu8Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/nf3": { + "version": "0.3.23", + "resolved": "https://registry.npmjs.org/nf3/-/nf3-0.3.23.tgz", + "integrity": "sha512-RWVLAWozmVD3AaDmaU3qMGB3v+yNlH5d9qqStI4e/WLlNQVnJ4YErGDbYCIrGFyrHdbF6I6Baf0Ae6c7tFYmSg==", + "dev": true, + "license": "MIT" + }, + "node_modules/nitro": { + "version": "3.0.260603-beta", + "resolved": "https://registry.npmjs.org/nitro/-/nitro-3.0.260603-beta.tgz", + "integrity": "sha512-ffaSHK00a7YDlDizoEHwcxPwpQpdBRRA8k42ymTsRnfl3ipGeKgv4gnPr6DgmCNTo4tYVPK3bHBEv1gNhWpo/A==", + "dev": true, + "license": "MIT", + "dependencies": { + "consola": "^3.4.2", + "crossws": "^0.4.5", + "db0": "^0.3.4", + "env-runner": "^0.1.9", + "h3": "^2.0.1-rc.22", + "hookable": "^6.1.1", + "nf3": "^0.3.17", + "ocache": "^0.1.4", + "ofetch": "^2.0.0-alpha.3", + "ohash": "^2.0.11", + "rolldown": "^1.0.3", + "srvx": "^0.11.16", + "unenv": "^2.0.0-rc.24", + "unstorage": "^2.0.0-alpha.7" + }, + "bin": { + "nitro": "dist/cli/index.mjs" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "peerDependencies": { + "@vercel/queue": "^0.2.0", + "dotenv": "*", + "giget": "*", + "jiti": "^2.7.0", + "rollup": "^4.60.4", + "vite": "^7 || ^8", + "xml2js": "^0.6.2", + "zephyr-agent": "^0.2.0" + }, + "peerDependenciesMeta": { + "@vercel/queue": { + "optional": true + }, + "dotenv": { + "optional": true + }, + "giget": { + "optional": true + }, + "jiti": { + "optional": true + }, + "rollup": { + "optional": true + }, + "vite": { + "optional": true + }, + "xml2js": { + "optional": true + }, + "zephyr-agent": { + "optional": true + } + } + }, + "node_modules/node-releases": { + "version": "2.0.51", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.51.tgz", + "integrity": "sha512-wRNIrw4DmVLKQlbgOMdkMx27Wrpzes2hh5Jtbi2bjPd+4wJstWIqP5A+lscnqbm0xxmT5Bpg8Lec5ItEBwx6BQ==", + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ocache": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/ocache/-/ocache-0.1.5.tgz", + "integrity": "sha512-kNNnkkVQup/QDvmTz8Q84wc2ntiyoVHDxa6eHWKt5qdGAmFRBIxy83rxgCYEjW0x06UJ9E3P6VgM2yY4rOBH4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "ohash": "^2.0.11" + } + }, + "node_modules/ofetch": { + "version": "2.0.0-alpha.3", + "resolved": "https://registry.npmjs.org/ofetch/-/ofetch-2.0.0-alpha.3.tgz", + "integrity": "sha512-zpYTCs2byOuft65vI3z43Dd6iSdFbOZZLb9/d21aCpx2rGastVU9dOCv0lu4ykc1Ur1anAYjDi3SUvR0vq50JA==", + "dev": true, + "license": "MIT" + }, + "node_modules/ohash": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/ohash/-/ohash-2.0.11.tgz", + "integrity": "sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/oxc-parser": { + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/oxc-parser/-/oxc-parser-0.120.0.tgz", + "integrity": "sha512-WyPWZlcIm+Fkte63FGfgFB8mAAk33aH9h5N9lphXVOHSXEBFFsmYdOBedVKly363aWABjZdaj/m9lBfEY4wt+w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@oxc-project/types": "^0.120.0" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "funding": { + "url": "https://github.com/sponsors/Boshen" + }, + "optionalDependencies": { + "@oxc-parser/binding-android-arm-eabi": "0.120.0", + "@oxc-parser/binding-android-arm64": "0.120.0", + "@oxc-parser/binding-darwin-arm64": "0.120.0", + "@oxc-parser/binding-darwin-x64": "0.120.0", + "@oxc-parser/binding-freebsd-x64": "0.120.0", + "@oxc-parser/binding-linux-arm-gnueabihf": "0.120.0", + "@oxc-parser/binding-linux-arm-musleabihf": "0.120.0", + "@oxc-parser/binding-linux-arm64-gnu": "0.120.0", + "@oxc-parser/binding-linux-arm64-musl": "0.120.0", + "@oxc-parser/binding-linux-ppc64-gnu": "0.120.0", + "@oxc-parser/binding-linux-riscv64-gnu": "0.120.0", + "@oxc-parser/binding-linux-riscv64-musl": "0.120.0", + "@oxc-parser/binding-linux-s390x-gnu": "0.120.0", + "@oxc-parser/binding-linux-x64-gnu": "0.120.0", + "@oxc-parser/binding-linux-x64-musl": "0.120.0", + "@oxc-parser/binding-openharmony-arm64": "0.120.0", + "@oxc-parser/binding-wasm32-wasi": "0.120.0", + "@oxc-parser/binding-win32-arm64-msvc": "0.120.0", + "@oxc-parser/binding-win32-ia32-msvc": "0.120.0", + "@oxc-parser/binding-win32-x64-msvc": "0.120.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/pathe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.5.tgz", + "integrity": "sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.5.25", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.25.tgz", + "integrity": "sha512-DTPx3RWSSnWyzLxQnlH0rJP+EW5ekl16ZU4/psbIhA0e53kJfdgaN5vKM+xP7yJtXVu+nfdVFmlgFDEKAe4Pyw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.16", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "3.9.6", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.9.6.tgz", + "integrity": "sha512-OpN0zzVdiaiAhxpuuj5efpIS4sY9j7bY6uR5mnj5yPzGkdkjNKSJeUThPb60Jw29QuAZgA4o+/iB49kFiaBX6g==", + "license": "MIT", + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prettier-linter-helpers": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.1.tgz", + "integrity": "sha512-SxToR7P8Y2lWmv/kTzVLC1t/GDI2WGjMwNhLLE9qtH8Q13C+aEmuRlzDst4Up4s0Wc8sF2M+J57iB3cMLqftfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/prop-types/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "license": "MIT" + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/react": { + "version": "19.2.8", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.8.tgz", + "integrity": "sha512-PWaYA1L/q9u2u7xYQi+Y3L3Yfnie7XyLeaJICV1MGD6LprsBxcAqGjYyr0eY3p+QdsA+x/Irkt4Qif8D63+Sbw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-day-picker": { + "version": "9.14.0", + "resolved": "https://registry.npmjs.org/react-day-picker/-/react-day-picker-9.14.0.tgz", + "integrity": "sha512-tBaoDWjPwe0M5pGrum4H0SR6Lyk+BO9oHnp9JbKpGKW2mlraNPgP9BMfsg5pWpwrssARmeqk7YBl2oXutZTaHA==", + "license": "MIT", + "dependencies": { + "@date-fns/tz": "^1.4.1", + "@tabby_ai/hijri-converter": "1.0.5", + "date-fns": "^4.1.0", + "date-fns-jalali": "4.1.0-0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "type": "individual", + "url": "https://github.com/sponsors/gpbl" + }, + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/react-dom": { + "version": "19.2.8", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.8.tgz", + "integrity": "sha512-rVprimfGBG3DR+Tq0IQG2DT5PxKth1WIGDmj5yPmlzr4YBe7uyE+Du4oVqTDXZSHGGGXRtTJEGSSePyQCMBglQ==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.27.0" + }, + "peerDependencies": { + "react": "^19.2.8" + } + }, + "node_modules/react-hook-form": { + "version": "7.83.0", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.83.0.tgz", + "integrity": "sha512-AXt8cMCmx5a7u4uvpb2uRFVrWQhllI4pV+LSykxIac/hjt44TnQkmX9BKuQi2i+LDC62esmiLpilkav+kjVf/A==", + "license": "MIT", + "engines": { + "node": ">=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/react-hook-form" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17 || ^18 || ^19" + } + }, + "node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "license": "MIT" + }, + "node_modules/react-refresh": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.18.0.tgz", + "integrity": "sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-remove-scroll": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.7.2.tgz", + "integrity": "sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q==", + "license": "MIT", + "dependencies": { + "react-remove-scroll-bar": "^2.3.7", + "react-style-singleton": "^2.2.3", + "tslib": "^2.1.0", + "use-callback-ref": "^1.3.3", + "use-sidecar": "^1.1.3" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-remove-scroll-bar": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz", + "integrity": "sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==", + "license": "MIT", + "dependencies": { + "react-style-singleton": "^2.2.2", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-resizable-panels": { + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/react-resizable-panels/-/react-resizable-panels-4.12.2.tgz", + "integrity": "sha512-NwY5LCo4WrxVvDh0xoMML6EMLPONP/8ckKcIdpnojxexoatZdjLiRqLJQjQK5CPkd4SYiB/2M5BVrjZBQtOO7Q==", + "license": "MIT", + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/react-smooth": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/react-smooth/-/react-smooth-4.0.4.tgz", + "integrity": "sha512-gnGKTpYwqL0Iii09gHobNolvX4Kiq4PKx6eWBCYYix+8cdw+cGo3do906l1NBPKkSWx1DghC1dlWG9L2uGd61Q==", + "license": "MIT", + "dependencies": { + "fast-equals": "^5.0.1", + "prop-types": "^15.8.1", + "react-transition-group": "^4.4.5" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/react-style-singleton": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz", + "integrity": "sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==", + "license": "MIT", + "dependencies": { + "get-nonce": "^1.0.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", + "license": "BSD-3-Clause", + "dependencies": { + "@babel/runtime": "^7.5.5", + "dom-helpers": "^5.0.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": ">=16.6.0", + "react-dom": ">=16.6.0" + } + }, + "node_modules/readdirp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-5.0.0.tgz", + "integrity": "sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==", + "license": "MIT", + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/recharts": { + "version": "2.15.4", + "resolved": "https://registry.npmjs.org/recharts/-/recharts-2.15.4.tgz", + "integrity": "sha512-UT/q6fwS3c1dHbXv2uFgYJ9BMFHu3fwnd7AYZaEQhXuYQ4hgsxLvsUXzGdKeZrW5xopzDCvuA2N41WJ88I7zIw==", + "deprecated": "1.x and 2.x branches are no longer active. Bump to Recharts v3 to receive latest features and bugfixes. See https://github.com/recharts/recharts/wiki/3.0-migration-guide", + "license": "MIT", + "dependencies": { + "clsx": "^2.0.0", + "eventemitter3": "^4.0.1", + "lodash": "^4.17.21", + "react-is": "^18.3.1", + "react-smooth": "^4.0.4", + "recharts-scale": "^0.4.4", + "tiny-invariant": "^1.3.1", + "victory-vendor": "^36.6.8" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/recharts-scale": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/recharts-scale/-/recharts-scale-0.4.5.tgz", + "integrity": "sha512-kivNFO+0OcUNu7jQquLXAxz1FIwZj8nrj+YkOKc5694NbjCvcT6aSZiIzNzd2Kul4o4rTto8QVR9lMNtxD4G1w==", + "license": "MIT", + "dependencies": { + "decimal.js-light": "^2.4.1" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/rolldown": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.2.1.tgz", + "integrity": "sha512-4FKJhg8d3OiyQOA6Q1Q0hoFFpW9/OoX+VsHzpECsdsIZoOArrAK90gl59YK/Z+gnDel45bgJZK03ozH/9bCqEw==", + "license": "MIT", + "dependencies": { + "@oxc-project/types": "=0.142.0", + "@rolldown/pluginutils": "^1.0.0" + }, + "bin": { + "rolldown": "bin/cli.mjs" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "optionalDependencies": { + "@rolldown/binding-android-arm64": "1.2.1", + "@rolldown/binding-darwin-arm64": "1.2.1", + "@rolldown/binding-darwin-x64": "1.2.1", + "@rolldown/binding-freebsd-x64": "1.2.1", + "@rolldown/binding-linux-arm-gnueabihf": "1.2.1", + "@rolldown/binding-linux-arm64-gnu": "1.2.1", + "@rolldown/binding-linux-arm64-musl": "1.2.1", + "@rolldown/binding-linux-ppc64-gnu": "1.2.1", + "@rolldown/binding-linux-s390x-gnu": "1.2.1", + "@rolldown/binding-linux-x64-gnu": "1.2.1", + "@rolldown/binding-linux-x64-musl": "1.2.1", + "@rolldown/binding-openharmony-arm64": "1.2.1", + "@rolldown/binding-wasm32-wasi": "1.2.1", + "@rolldown/binding-win32-arm64-msvc": "1.2.1", + "@rolldown/binding-win32-x64-msvc": "1.2.1" + } + }, + "node_modules/rolldown/node_modules/@oxc-project/types": { + "version": "0.142.0", + "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.142.0.tgz", + "integrity": "sha512-7W+2q5AKQVU36fkaryontrHn3YDt1RyUYXatw9i5H8ocYe2sPKSFB6eS8WNPeRKiN1qAWWZUPm7gwFzJGrccqQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/Boshen" + } + }, + "node_modules/rolldown/node_modules/@rolldown/pluginutils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.1.tgz", + "integrity": "sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==", + "license": "MIT" + }, + "node_modules/rou3": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/rou3/-/rou3-0.8.1.tgz", + "integrity": "sha512-ePa+XGk00/3HuCqrEnK3LxJW7I0SdNg6EFzKUJG73hMAdDcOUC/i/aSz7LSDwLrGr33kal/rqOGydzwl6U7zBA==", + "license": "MIT" + }, + "node_modules/scheduler": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", + "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==", + "license": "MIT" + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/seroval": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/seroval/-/seroval-1.6.0.tgz", + "integrity": "sha512-TBwwKfscTEgnBEWmYKKeCcmCGmrJi0LV6qNUY//WBA3MDesh/zfn+KOMq/ckpxM4gZ0ouAE706A1eenekM2sug==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/seroval-plugins": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/seroval-plugins/-/seroval-plugins-1.6.0.tgz", + "integrity": "sha512-CbR5DP5DPicpd9RwRUzka7hi4x1577eGFXJVBW409LXqqJNst99JSUTZ8CXcnskQX7laPOWpmzliq0gBZEGlrQ==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "seroval": "^1.0" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.10.0.tgz", + "integrity": "sha512-w1aiOKwKuRgtwAReIIj89puqg+I7GvX4IbLrvmhXbzQsj1+Zwi4VO3+fa6ZF91TWSjIxoEkKnMeHcLEODK5ZXA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/sonner": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/sonner/-/sonner-2.0.7.tgz", + "integrity": "sha512-W6ZN4p58k8aDKA4XPcx2hpIQXBRAgyiWVkYhT7CvK6D3iAu7xjvVyhQHg2/iaKJZ1XVJ4r7XuwGL+WGEK37i9w==", + "license": "MIT", + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0 || ^19.0.0-rc", + "react-dom": "^18.0.0 || ^19.0.0 || ^19.0.0-rc" + } + }, + "node_modules/source-map": { + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.6.tgz", + "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==", + "license": "BSD-3-Clause", + "engines": { + "node": ">= 12" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/srvx": { + "version": "0.11.22", + "resolved": "https://registry.npmjs.org/srvx/-/srvx-0.11.22.tgz", + "integrity": "sha512-LqZxxBDMKuMAZzFzJnDCkFOrs9MZQZr0LvHiO/SuSZVdQaXD7xQ5UWTUxheJrQPve1qk9MG2B/yttUvJxw8egQ==", + "license": "MIT", + "bin": { + "srvx": "bin/srvx.mjs" + }, + "engines": { + "node": ">=20.16.0" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/synckit": { + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.13.tgz", + "integrity": "sha512-eNRKgb3z66Yp3D2CixVujOUvXLFUTij/zVnV8KRyvFdQwpz7I5DS8UfRkTeLzb64u+dkzDSdelE24izu+zSSUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@pkgr/core": "^0.3.6" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/synckit" + } + }, + "node_modules/tailwind-merge": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-3.6.0.tgz", + "integrity": "sha512-uxL7qAVQriqRQPAyK3pj66VqskWqoZ37PW94jwOTwNfq/z9oyu1V+eqrZqtR2+fCiXdYOZe/Modt8GtvqNzu+w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/dcastil" + } + }, + "node_modules/tailwindcss": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.3.3.tgz", + "integrity": "sha512-gOhV3P7ufE62QDGg1zVaTgCR+EtPv92k2nIhVcVKcLmxT1sUBsQGhnZj175j+MqRt4zLF7ic+sCYjfhxMxj7YQ==", + "license": "MIT" + }, + "node_modules/tapable": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.3.tgz", + "integrity": "sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==", + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/tiny-invariant": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", + "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==", + "license": "MIT" + }, + "node_modules/tinyglobby": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz", + "integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==", + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/ts-api-utils": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz", + "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, + "node_modules/tsconfck": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/tsconfck/-/tsconfck-3.1.6.tgz", + "integrity": "sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w==", + "deprecated": "unmaintained", + "license": "MIT", + "bin": { + "tsconfck": "bin/tsconfck.js" + }, + "engines": { + "node": "^18 || >=20" + }, + "peerDependencies": { + "typescript": "^5.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/tw-animate-css": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/tw-animate-css/-/tw-animate-css-1.4.0.tgz", + "integrity": "sha512-7bziOlRqH0hJx80h/3mbicLW7o8qLsH5+RaLR2t+OHM3D0JlWGODQKQ4cxbK7WlvmUxpcj6Kgu6EKqjrGFe3QQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/Wombosvideo" + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "devOptional": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typescript-eslint": { + "version": "8.65.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.65.0.tgz", + "integrity": "sha512-/ggrHAwyjENDusvyxbuqxAC2dTnZg/Z8F+fgQtYIz+L6n/9HfSlEZcFGV/NsMNa6CkGk0xUjUAFwC0vHOflvIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/eslint-plugin": "8.65.0", + "@typescript-eslint/parser": "8.65.0", + "@typescript-eslint/typescript-estree": "8.65.0", + "@typescript-eslint/utils": "8.65.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/ufo": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.4.tgz", + "integrity": "sha512-JFNbkD1Svwe0KvGi8GOeLcP4kAWQ609twvCdcHxq1oSL8svv39ZuSvajcD8B+5D0eL4+s1Is2D/O6KN3qcTeRA==", + "license": "MIT" + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/unenv": { + "version": "2.0.0-rc.24", + "resolved": "https://registry.npmjs.org/unenv/-/unenv-2.0.0-rc.24.tgz", + "integrity": "sha512-i7qRCmY42zmCwnYlh9H2SvLEypEFGye5iRmEMKjcGi7zk9UquigRjFtTLz0TYqr0ZGLZhaMHl/foy1bZR+Cwlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "pathe": "^2.0.3" + } + }, + "node_modules/unplugin": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-3.3.0.tgz", + "integrity": "sha512-qa66K+crbfyE6JK10GjvbJeRrOsuC/JpbnHctfyp/i4oBTxWOzJfRZyDiOk1PtErMFRu8JhsU/wPvOdBNWe5Rg==", + "license": "MIT", + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "picomatch": "^4.0.4", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "peerDependencies": { + "@farmfe/core": "*", + "@rspack/core": "*", + "bun-types-no-globals": "*", + "esbuild": "*", + "rolldown": "*", + "rollup": "*", + "unloader": "*", + "vite": "*", + "webpack": "*" + }, + "peerDependenciesMeta": { + "@farmfe/core": { + "optional": true + }, + "@rspack/core": { + "optional": true + }, + "bun-types-no-globals": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "rolldown": { + "optional": true + }, + "rollup": { + "optional": true + }, + "unloader": { + "optional": true + }, + "vite": { + "optional": true + }, + "webpack": { + "optional": true + } + } + }, + "node_modules/unstorage": { + "version": "2.0.0-alpha.7", + "resolved": "https://registry.npmjs.org/unstorage/-/unstorage-2.0.0-alpha.7.tgz", + "integrity": "sha512-ELPztchk2zgFJnakyodVY3vJWGW9jy//keJ32IOJVGUMyaPydwcA1FtVvWqT0TNRch9H+cMNEGllfVFfScImog==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@azure/app-configuration": "^1.11.0", + "@azure/cosmos": "^4.9.1", + "@azure/data-tables": "^13.3.2", + "@azure/identity": "^4.13.0", + "@azure/keyvault-secrets": "^4.10.0", + "@azure/storage-blob": "^12.31.0", + "@capacitor/preferences": "^6 || ^7 || ^8", + "@deno/kv": ">=0.13.0", + "@netlify/blobs": "^6.5.0 || ^7.0.0 || ^8.1.0 || ^9.0.0 || ^10.0.0", + "@planetscale/database": "^1.19.0", + "@upstash/redis": "^1.36.2", + "@vercel/blob": ">=0.27.3", + "@vercel/functions": "^2.2.12 || ^3.0.0", + "@vercel/kv": "^1.0.1", + "aws4fetch": "^1.0.20", + "chokidar": "^4 || ^5", + "db0": ">=0.3.4", + "idb-keyval": "^6.2.2", + "ioredis": "^5.9.3", + "lru-cache": "^11.2.6", + "mongodb": "^6 || ^7", + "ofetch": "*", + "uploadthing": "^7.7.4" + }, + "peerDependenciesMeta": { + "@azure/app-configuration": { + "optional": true + }, + "@azure/cosmos": { + "optional": true + }, + "@azure/data-tables": { + "optional": true + }, + "@azure/identity": { + "optional": true + }, + "@azure/keyvault-secrets": { + "optional": true + }, + "@azure/storage-blob": { + "optional": true + }, + "@capacitor/preferences": { + "optional": true + }, + "@deno/kv": { + "optional": true + }, + "@netlify/blobs": { + "optional": true + }, + "@planetscale/database": { + "optional": true + }, + "@upstash/redis": { + "optional": true + }, + "@vercel/blob": { + "optional": true + }, + "@vercel/functions": { + "optional": true + }, + "@vercel/kv": { + "optional": true + }, + "aws4fetch": { + "optional": true + }, + "chokidar": { + "optional": true + }, + "db0": { + "optional": true + }, + "idb-keyval": { + "optional": true + }, + "ioredis": { + "optional": true + }, + "lru-cache": { + "optional": true + }, + "mongodb": { + "optional": true + }, + "ofetch": { + "optional": true + }, + "uploadthing": { + "optional": true + } + } + }, + "node_modules/update-browserslist-db": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/use-callback-ref": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.3.tgz", + "integrity": "sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sidecar": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.3.tgz", + "integrity": "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==", + "license": "MIT", + "dependencies": { + "detect-node-es": "^1.1.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sync-external-store": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz", + "integrity": "sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/vaul": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vaul/-/vaul-1.1.2.tgz", + "integrity": "sha512-ZFkClGpWyI2WUQjdLJ/BaGuV6AVQiJ3uELGk3OYtP+B6yCO7Cmn9vPFXVJkRaGkOJu3m8bQMgtyzNHixULceQA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-dialog": "^1.1.1" + }, + "peerDependencies": { + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc" + } + }, + "node_modules/victory-vendor": { + "version": "36.9.2", + "resolved": "https://registry.npmjs.org/victory-vendor/-/victory-vendor-36.9.2.tgz", + "integrity": "sha512-PnpQQMuxlwYdocC8fIJqVXvkeViHYzotI+NJrCuav0ZYFoq912ZHBk3mCeuj+5/VpodOjPe1z0Fk2ihgzlXqjQ==", + "license": "MIT AND ISC", + "dependencies": { + "@types/d3-array": "^3.0.3", + "@types/d3-ease": "^3.0.0", + "@types/d3-interpolate": "^3.0.1", + "@types/d3-scale": "^4.0.2", + "@types/d3-shape": "^3.1.0", + "@types/d3-time": "^3.0.0", + "@types/d3-timer": "^3.0.0", + "d3-array": "^3.1.6", + "d3-ease": "^3.0.1", + "d3-interpolate": "^3.0.1", + "d3-scale": "^4.0.2", + "d3-shape": "^3.1.0", + "d3-time": "^3.0.0", + "d3-timer": "^3.0.1" + } + }, + "node_modules/vite": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/vite/-/vite-8.2.0.tgz", + "integrity": "sha512-pn+CFpM0lwDeKwmOq1ZaBK/9sjorZcgqxki6MbY/jPEVd9vichIlmlD4HmQ5wdP5EgqQCFRaACBxMC7uEGc6lQ==", + "license": "MIT", + "dependencies": { + "lightningcss": "^1.33.0", + "picomatch": "^4.0.5", + "postcss": "^8.5.23", + "rolldown": "~1.2.0", + "tinyglobby": "^0.2.17" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^20.19.0 || >=22.12.0", + "@vitejs/devtools": "^0.4.0", + "esbuild": "^0.27.0 || ^0.28.0", + "jiti": ">=1.21.0", + "less": "^4.0.0", + "sass": "^1.70.0", + "sass-embedded": "^1.70.0", + "stylus": ">=0.54.8", + "sugarss": "^5.0.0", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "@vitejs/devtools": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/vite-tsconfig-paths": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-6.1.1.tgz", + "integrity": "sha512-2cihq7zliibCCZ8P9cKJrQBkfgdvcFkOOc3Y02o3GWUDLgqjWsZudaoiuOwO/gzTzy17cS5F7ZPo4bsnS4DGkg==", + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "globrex": "^0.1.2", + "tsconfck": "^3.0.3" + }, + "peerDependencies": { + "vite": "*" + } + }, + "node_modules/vitefu": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/vitefu/-/vitefu-1.1.3.tgz", + "integrity": "sha512-ub4okH7Z5KLjb6hDyjqrGXqWtWvoYdU3IGm/NorpgHncKoLTCfRIbvlhBm7r0YstIaQRYlp4yEbFqDcKSzXSSg==", + "license": "MIT", + "workspaces": [ + "tests/deps/*", + "tests/projects/*", + "tests/projects/workspace/packages/*" + ], + "peerDependencies": { + "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "vite": { + "optional": true + } + } + }, + "node_modules/webpack-virtual-modules": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz", + "integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==", + "license": "MIT" + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ws": { + "version": "8.21.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.1.tgz", + "integrity": "sha512-+0NTnW77fFN/DjQi6k/Sq/Yvk4Sgajw7urW8V+asjXnRgDs9gyGkdb7EzgfhA4goXsRIZKE28fzIXBHEzhuiWw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xmlbuilder2": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-4.0.3.tgz", + "integrity": "sha512-bx8Q1STctnNaaDymWnkfQLKofs0mGNN7rLLapJlGuV3VlvegD7Ls4ggMjE3aUSWItCCzU0PEv45lI87iSigiCA==", + "license": "MIT", + "dependencies": { + "@oozcitak/dom": "^2.0.2", + "@oozcitak/infra": "^2.0.2", + "@oozcitak/util": "^10.0.0", + "js-yaml": "^4.1.1" + }, + "engines": { + "node": ">=20.0" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "license": "ISC" + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zod": { + "version": "3.25.76", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", + "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..c328091 --- /dev/null +++ b/package.json @@ -0,0 +1,91 @@ +{ + "name": "tanstack_start_ts", + "private": true, + "sideEffects": false, + "type": "module", + "scripts": { + "dev": "vite dev", + "build": "vite build", + "build:dev": "vite build --mode development", + "preview": "vite preview", + "lint": "eslint .", + "format": "prettier --write ." + }, + "dependencies": { + "@hookform/resolvers": "^5.2.2", + "@lovable.dev/cloud-auth-js": "^1.1.2", + "@radix-ui/react-accordion": "^1.2.12", + "@radix-ui/react-alert-dialog": "^1.1.15", + "@radix-ui/react-aspect-ratio": "^1.1.8", + "@radix-ui/react-avatar": "^1.1.11", + "@radix-ui/react-checkbox": "^1.3.3", + "@radix-ui/react-collapsible": "^1.1.12", + "@radix-ui/react-context-menu": "^2.2.16", + "@radix-ui/react-dialog": "^1.1.15", + "@radix-ui/react-dropdown-menu": "^2.1.16", + "@radix-ui/react-hover-card": "^1.1.15", + "@radix-ui/react-label": "^2.1.8", + "@radix-ui/react-menubar": "^1.1.16", + "@radix-ui/react-navigation-menu": "^1.2.14", + "@radix-ui/react-popover": "^1.1.15", + "@radix-ui/react-progress": "^1.1.8", + "@radix-ui/react-radio-group": "^1.3.8", + "@radix-ui/react-scroll-area": "^1.2.10", + "@radix-ui/react-select": "^2.2.6", + "@radix-ui/react-separator": "^1.1.8", + "@radix-ui/react-slider": "^1.3.6", + "@radix-ui/react-slot": "^1.2.4", + "@radix-ui/react-switch": "^1.2.6", + "@radix-ui/react-tabs": "^1.1.13", + "@radix-ui/react-toggle": "^1.1.10", + "@radix-ui/react-toggle-group": "^1.1.11", + "@radix-ui/react-tooltip": "^1.2.8", + "@supabase/supabase-js": "^2.111.0", + "@tailwindcss/vite": "^4.2.1", + "@tanstack/react-query": "^5.101.1", + "@tanstack/react-router": "^1.170.18", + "@tanstack/react-start": "^1.168.32", + "@tanstack/router-plugin": "^1.168.23", + "canvas-confetti": "^1.9.4", + "class-variance-authority": "^0.7.1", + "clsx": "^2.1.1", + "cmdk": "^1.1.1", + "date-fns": "^4.1.0", + "embla-carousel-react": "^8.6.0", + "input-otp": "^1.4.2", + "lucide-react": "^0.575.0", + "react": "^19.2.0", + "react-day-picker": "^9.14.0", + "react-dom": "^19.2.0", + "react-hook-form": "^7.71.2", + "react-resizable-panels": "^4.6.5", + "recharts": "^2.15.4", + "sonner": "^2.0.7", + "tailwind-merge": "^3.5.0", + "tailwindcss": "^4.2.1", + "tw-animate-css": "^1.3.4", + "vaul": "^1.1.2", + "vite-tsconfig-paths": "^6.0.2", + "zod": "^3.24.2" + }, + "devDependencies": { + "@eslint/js": "^9.32.0", + "@lovable.dev/vite-tanstack-config": "2.8.5", + "@types/canvas-confetti": "^1.9.0", + "@types/node": "^22.16.5", + "@types/react": "^19.2.0", + "@types/react-dom": "^19.2.0", + "@vitejs/plugin-react": "^5.2.0", + "eslint": "^9.32.0", + "eslint-config-prettier": "^10.1.1", + "eslint-plugin-prettier": "^5.2.6", + "eslint-plugin-react-hooks": "^5.2.0", + "eslint-plugin-react-refresh": "^0.4.20", + "globals": "^15.15.0", + "nitro": "3.0.260603-beta", + "prettier": "^3.7.3", + "typescript": "^5.8.3", + "typescript-eslint": "^8.56.1", + "vite": "^8.1.5" + } +} diff --git a/public/favicon.png b/public/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..337c97b85926dcb2c8f842f23c97e65ed06af8a7 GIT binary patch literal 6982 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 literal 0 HcmV?d00001 diff --git a/public/icon-192.png b/public/icon-192.png new file mode 100644 index 0000000000000000000000000000000000000000..e90ff960793dd1523572158a777ead5d7fa55820 GIT binary patch literal 39848 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

Rat+-o3aj*{3p&SKJ;0q@GjBShtFTBQ;p zjybS1yPq%d3>*Xp$TpW4B1gmo%JzaSOoP8k;t}LU)5E>1v&fy88AE0&Eo!Vg5`M^4 zJEc>oQvYD-FWX#u@?h~IE2=o^2(2j-J9d({Am&(Q*_YBaT_1;I{dnL7D~m6pVr5(} zCn2PXD;zH#^8UIw8g-NB_ZKdr%1=j;V+monmbg@!tXereO&UG3)L;}WGB8GBqgj3g@S{lT@1#eX`w_NiosK_QbgXZi+(%Z*^Zw;tHT zk4&gG+YLOv=xIHYBHXC)W{nJ5f$bawnYLB%OGG58COGFv*&75lHLc7%)0Fw3*tCty zeeJ9@4&%_fM&m~QC6;E3=tq>KdVCjV>u8|>IWs15W~cdL=hDvolg<4yPB0^$Ve3@4 zuk9JkPy?c>YDy~i8YUe7Ccv2zGN#MeFc7;S^q#VC@?n>*+c-3P6U}gBC$xZ0#JwU5 zJvx>1fq${M`+~{Dr5f-@yxrPN27`ssWOP#1tD5O*H`&Rhg1iw_ocCRf?216Hkrs|> zO+5}JdlFOANDxPDaG&eiyW;fZVr8#%YMnPC^PQ2|HnY+#Eg&K=Z`?K(B}!oGMO<7APBPZ0rfF2_HC=nED=tuoOp-4;BB*)5 z*iWHjX?OZw-$c|*ct`LrU-CPnu1s5UR2N7*xXb%bHk;Q>>m81MV7Pp8=i6>GZ}=HL zfQ2)0L2^?z^L`8VChC|o-Is_OL+n*+UiVEW19CeaQCo3X-KM&JW5ILvNe05G<>^-hx_QoOHk$MJty02FFqr?vo`-(Pz2(ynH-dHwY0 zev|CG129bQb@PAM<3s^?G{l^gHCIhwIHy>F{IkWS=X5ovF&Rr)e#6zB_bZ7ib;Ht) zC!#XTj zS2F%$_0Sb&!lj{$F0-H=gbnCOK}Kp}Rtb*#K5?K3>zSQDSSnJ-jt+ru>{3mkvUC!c zRl==?bHy90z=Cltnq1Z^rHY(0Oid?hp0|O%rkj1s2LGTX~936r8k)dN_Elyde>dl8$ON9No3cvWS+SV)tDSX zU6+QQ)w(*1wQ*!YFeqFTh{#PR-KsW^E2|&u@2Fzx#_Q3$h>nx>e3@l9WrhSK19cgf zZE);}$V{Nd4D-dBFRtsRwd#|qmEEc1W`oEb8ZKU@-8)93>j;U0Q_-!xeTMVqA7{X~ zwBj=cDb+^{kLM@@ZEY|j$M@5D+D-00zfE;PU$VI^oNJX8wcu1 zli!#}C^Q%Dzb^`R+nH{0FaObF*^GcQrY01(jK>0i7;}kr=P9MRWth#pV;mTOz>F+Q z)d>@fp>SrD=@{SEzTAld@CZki(c**19$Co?PBgP zwz8?IHCgnP7t@&#Js6}hIfG|MW=h;j^n{*RVU7`|f=ve(dN&3CcaznVd~tqn;5Uw% zQ-;r-e`cCPpG`7jMinq-r!$&ZmSPzQe`;p?e=MsIPDYCsjGl60OAYn-I%uA*0ff>_V_DUzs=^JJh*ds3UE zreS_Uxf}<*ujzE(bo97#=-RqZ9Go*XMauqYVq%(g+=!Wkk%$z=-lvqj54QxquH87- z^`1qQPmQG5_`z*Uy?3>f_ic`EBkG)kfT6SPeZHLA{`?l7T$>?fz1hiyFUY2b4c41A zMR*2w0jCz#J<}!tq_OTKuoGmPMsrMA^P^Q=S1GyN?L1OVW_Wn1CH4lF~GzyEnQF(He;y4sg_+CZX5L8v3~fgqA%zd z!?r2SqU6Pn%@$Hyo&W}dvCGcE7NG{X1SK$WY1T26i74Y5mCUUveYI;l%m|Rj6*L#e zQE;j09HNU+`tGPXsP%6rjZCK#72O0dHKf9?N^>N2MZZ7Q6qtjt7X)%eDDqV`Sngt# z?E1b0;hxF*rp9xJ%RCtujsua1GBJTV5jPw9k|Qcq$EIVl0=%H!)Y`JTi@NnLUJ{n} zIJJ61R8zHZ^Kj|U$45R;*CS$ZfPzdc^Jc$&36ubWdb4HVWFJ&*E%1%8zKfAWE7*Bu z;afSV6}lrpBB;$E>exP3eH7M! zIem7kTQXDXhfTT|5gCY?g8Prf@_dUCoU6(rrWi$RR$4P!0=N&way|o_8$oA{PzN$2 z^fWQdd2h_)uA8qY_&8gv4;m*5z#|#6l{*a1pyn+k*r|}8A1*#MO)bUfg5&BY>UNQT zLh?y#1r0-yQfDAFam1WgY-Xf7o6Qn4h>4Oym?BzpEYv?xEdBZD&}FfEUfH`i^oFCc zH#LGlL7qWTX0nGm=RgsW+Dsi3FqgNcW-e>u18P#43W$99jTG-xRi>b1$NAjN(~UQ? zA@o_*@Qj#z*Acs;!GEz^eQY&Ymc~m=>;kw+u}R%Z@LsKNu4F(-%se?Ys41H%jG0wa zLF`m-$2carBrIamMi@I6Rc6$GVrCXqW(Fat5DZM7ofjsMbH%Ou*#qnZ1XU!RE!n?q8OR7`=)=x*?yOK&P1>h&x5|c*Ko@{>i{WZB z?uT#+`Gpu2AT~BOgFwaLnT4qH-le#!>TzsXO%M*0)fM%4W1fHr;GA3@wQ`?^Eg;p5 zYh~s*2$^XzA~8tjVa@NX?{W}O6$R9~F3k?Y=JH-R2CUd7w}p-gMoz$xOcN>1D#KzZ zh`45(*w&JQzl|HS69wQA4h0E;6l9tx?Kb(T{_tf~4JLhA+b-IHwa9eQgXyu?MGFKNSF&nA)JbEfOOPtF8T5tghJLEb7Fm}_Iwo6|8(T& zO?gtF;-CZwRI|=+UdMe~R%!$g9AT%?xz6v3DG;^nBD>TyAe=^iLG*^$om^GB)XEqW zlM;y<048Q2+r&4JB^M~BMx$3u%Ib<(-x$-}QWM!g^0n+*1%xhQMCa`$l7Ae6zOo_~3-fRGzT~+6->^?;FjUxxg zOngfzwEDc^plsWQQUv$O zsh9^ytl$8(S+@goz|Kt7bEd#)01~e+FMJT~-_+~lg7zdl&ilc5EYN7g@CG9`1$BnP zOikffX3ha^NuCUz!qigZvC=WKJIb*~K}Fbzi5tg@C^Vf7gcLLLAPE{_VDANHnqe4u%ROgr`DOEKrian= zTI}KAOdVXKNoVTLa71dxAn%+{V$9RPcc;m!rIV|{a`OEyPMx)7Z#C?EuT1{O_~=0( z5+_Gc%how_-G-TD&$luCRED#Q-YFtIO=D$lji_vv=S8 z2p(RXC;*Riu#q|g9OOBL|M~vPX`7>@bu5>!?fd_}cHol1;4Jb!Zh9(2Jev>{%-Puy zP?`xl!w69m8^8`QQy8=hn3PNZ+tQz|uk8mzb%}V7g;H(eKoklAAi3w07^SgejwWK- zTI{*P00u)z%kpR?i^(-a`wCm>q^Gt(Az4&*Uq^eV3Q#~*z6JYtgEJ(P72tVgZ?T;Q zSVFPx{c1aY0#!Y2ywSvp0Xfl{#5;DKw2s*s80^VJ6nP**rZZ-l!coD&M{ZaTr&@_t zToq$WAwbQuKenhebG(&CXbL-&8e=-IT#Q`fMK`zts4;{TZ({9rd-&m!6xS3)`A zJD8E=29(at-oHIj0E4dETl6)JHv-?$P1g+(d@}Sgj$>P&>v&nMa;QxePUpg7Ffd3J zt;(Z6a`E(G+m)v==ewDE?}#T4jNC#d1hfV$&NX}E>pd}t*w&d zkJ%tBV}VNVLvT&gK1fM2B4M*3^QnV{J-z<^jr9X!`&CuZIrPU)y;$6+eZ6_#6Q4G{mEK#))TN&ZY>BPDjw|E zb*7fho)mzoV>Km%V`8&WK_Bw*PuJGJj)Dk2b&u;;3+mNO2$3m>5h$6Mi4e?%nWc%w zf%;fP2@&LKI34#wj} zRi}>IE;HAPi1$bCbNY0vB|s`^-n(DNA60dB<<7m&-kA|=Mf?moGE|GsRMEw#16;$5 zgaN1-SRhhso6G{m1RUUUz_GR@A;KsV6$CdYrY>2ML*1Nd#GXtSLnuMLX=0-$(B`oE zbH=;Yk6aIog~`Zaafr9g+$W&$oShi3@Ys+6jACkD7{qGjrd$2o}xhG43voz?5^gJ&poY zZINZQKb)C;>DWV4IEXugzxg>GK{$xCsXc+;%Hsv#dlGZ88)6rO`)&u1KrYIrm#`9IFUO2T)G(1))p;Km)^Td)kZX4rfRv12p%^o^Q(c=amAzip0A$M` z8af3hCC~7n$gs=|;Yh4GH{Oy-K}Jcf;k(_ z;r{cF`(dW;PIB%@93Tl|s_y;>gSE%X);s^z2}hHYeIo;4=l0!YY|T9#0T}H*M4fCb zAPNE{5C8#4pmm!vcdSB?cedRCP>Reo2bpT%{^_W;Zf^7N=TCFV2q%M@!EplNxsMls z?@2gV;qJQ&Lhf*EE*);?`LXvPz?+dv_~^G%Wy2$XOdqK*j0`S-8HQhl;-FQ`esZ3o~!h_ z!c5_`!_OyC(o-BymtmD{6!<8odnRkk=9ez*i_;7@kW+_iBKUW_QXCFuU&`S>pNx9n%V%0T8*l~7Y6Zn zM{6Hz+x5r7Vej0K56cnne(&Gb#j<0;No4bBGFIF#3e_o!l-rHSYib*20L}nT&r#bk ziEUfz3lZ4Nz#N!Rv6C{J{2+c%Br4DbGIGu9FU0N z*2(gA??pOhkE`$CwNGF?UI4xq!9d|?0q40%7J(STAVzv3%a1Ocbk1nowO(J@|L$h; z(YC%i#^D{;_IsK8PsZ&U!>MKrQd=avwAI5tK#E#UD1F=~5gcDw;Eai((k*=t#=J=*%c* zT6t27%I5k6>}){l?joDB6@&%z#UHY`Wy`r1=KZlBSU6j77>Vx4+c%a4VB-Kckr{g+ zPC0whg-|htX>J8g>72AUwz&EcZhv$A$aQcH%(^q|ol|;Fc;cK}ZU#V|oEUI&Ut*kG z2F#kKkmK5B!vcap&kA9fjUB9EXi#Vl+z1UdM+kug1fs@m&|4TcvjxGXTFgjQ{|oJ8 z6Cm@%+|dcY_p#GRv4?-AxroA&;R)67(9-JR+4e}Y6ObP}LGL_?ilQ*{lv>?!w%|Fr zt?Rx%Tm*LdT|9@3&5y!2b!YULNfkLd2uR#1`A{p$<~_sd)q*hHKHW|wklg@r@2u2% z4ha&g!E9EWDlszA^BSV0Z`^%E0SUDypx0-s)PO-Hl}59HrJVnszmR z=G!63@V@y|s^Xwd>)CWgdi$6{QaDH(kT&e>A|Q2SH<}AU?{WHbFyN{HqA;^4961#T z&=i2qW1#84uN=f&6xn3bqX%^w#1C-nXHA}!p%yd_?_C(av)OvrZ2Mk-5M$=tEkXC@ zh!fr>r;Zi~13MEOmE+79SD8VW5umsrRA)%-B~}MqSh5e~2XgjvUSow`+&twH)K2UN45~#`Pl)q-F*P zz((n@-lhYQrC;`vYPNQlH;Zn^NyHpD$gF96XSiTHd^g?!=MYequ~j!Svq!bRoRHw; z#BHb9U@#;n4Af6$zIf@RUZ}phb*uo;P+}+(3?3a;5(KUimx;<<@%LTmEcs@g3{; z2=EV=mY%38l)Mw+5!$v|TtIArMV*|SNwW7dXQBIgcwnaI^SCP*Q~f`kk(6JjC(kj9-b9C!&iYPP*F6xNw%T7 zzvAUkJkU( z>Tir)N$`h7VZWtF&fm-2oB$S4n`5U|N{B!NW#^VaFy28q zcZ+%gb#%qLZCg#9k<0E*A%@T|dreNQKC*cvaQDvpMjXSUjKZ_jYSwSEcQppw3!~_i z;cXwj?07+M;ezD@H#C!v9KUDXJ7eO|L4XQiAr#x(Y}Dx@#nt;xzN4KzIMbBd?wsa3 ze|qP|4H7cQwTFQ#LtL`f821U^GM#BB>EmqQ+~Jyb0L+QtOdU8;Oiuz{R`p-oTfC^PO&d_~ z+!>p33(f8U;!cfP07VwSjo>!NfppNgE)58gI4moRw3f5yl0yr$!ljWY3WVB`3Tgw_ zDGgLh;vPad%RzZ2#oA(Zz1X`ao1d6X4l@!_*LP|tV|S?NkNBlwGs325Ncp*c}vq~+f0EP4yMK6 zeZ{z$9X79tNdl3VS#yxx#)9vOM_j{yTk8KiX8(DeAYx{9+a2LDQ2_QWEVen{I^CSW zwF7jiJ46W(f<6KS$#Y44B)6>XH?|&I)ij%!?ZF4l30m_RQY2m)3>h?OZY+Nw4p+wOa2sc}P?35BmoR}Qb+`dMV>fjP<a1M;#Gv?Z zYY#mD5(G6e%mma(MG@cY<;{CIS{Lqk281sOoO?RStqCfVuS>* zS+n4F%PsH(imO)F?6+I<7PT$--3%_Og?U44k98JVkVN#9a>d|Jh4*@ z(W0`b7*dK7@Gz>9b_;+Ich8zLu*`Pd;vS)9^Y`f=b;?AK5=1kA%jo70jkeUiVK6u< z3{a4<0Zu#o!tQ(Dxu`llMe1a0AN59ZXTwSKa2f^R2#!b?R8<*cozkRklu7X|b}&LP zf-bmTNc5c5lP~Nq9~o`F{m6Y^gKZHCg#fj{C|B9ZF=bRj-(Rjgv%mkVo5w#mK7PC- zi*z%I-S^t<1Bg4k76a^F0F`6kU}4k!_;k#3DgbtmKT+{`0r*}7!2>88oaW>G{qWbU z9C(IuHQSyn9J+Qg`;g`Hgnndk>7?!2O=j#7MX(S-Nqow=pM5d8KpOTD`4sBI{#WyC zMs#(xT+Y_Wi#rF4zdm~K%hd6T%^(CgB?0x|XGu8drc`GXfh4(6?A@yE*HUwFf7mx~ z$x0Unfn^69-q~VFHdL;}bYI}Zb>0s=IrhWsm{q;o^K{%{4!c$YeIwst_j3RP>WJ!x zfTtAw=T-fy;ipgAP#*`0!3!gXCZfjNIT#Qf!JXg<+>$5Lf{2Ki28 zFWtwoDEAj3|N(+zLkt8c0k9 z-SxJkLrLt$j9w##V4=-05W|_;NQFI&xi_Cn789rw#t0z*U}ksUEdaa4fQVGJJM!2cn{m)Qp?>A1 z`6TkJa+w*m!Wv4nFtB<%Ftg#{T5m>mepzpS)s8c;zO?V1j!xtD9>;9zr_(_y>bF#&Gg3F5b;AP0z(IC&0fo;V+A zfHKD%KB6Y=WMpRE{j+;K#t1-FRkeF$wUV0PSyZO=hAr&Tz^ z)y?MP+=mT|0Ki4M_3doV<67!bzQ3iq2n*QYBvj>uU$Gw0~o|` zANuq(!i!gyuIjITeRKQ$(KEB90E{qF!HIu_g4$&bN|S6eCurX^=3Q*3CPK{6XkMrH#Pjk$TdA)0KO+d z?v&W5P!ix7q4=S4b#ZjOEpSV3;rB7Cu!kC-2_A+ z1!{%}yBQgRQ3uQ*a4qWI5+S=XLW+y`SN*T$_A|3}GJopA!WED+>sDslt#Dlpt}Dv- z%{KqCuJ0!hq33AaHTc7FX#SX)|GN{N?1s~P`a*EwbxogJdvF_`01d1mD40m*J$rvR zN$%`}Iz69xVZg&}jh)_`&vBRC1hpG8K9)Wih}iIO9{*;md!nvu?IKbXMOP=fJwdl) z=&HirvjU( zG3Efkh{!{s>@cMqO%DLCC^6$=ywm2{>8syrO(24;D0U*=DZtO08G*iwB#0L`{Jx z#VDmMc!G(OogmQG;|1V*732|4z`4MWEgZabG~4v%=%D|OdiMF8Ul^;`Rx69!8w7Il z0dnmQ4hkkW0Hs*gMgw4KMgO7f54E!w50+1#O|wpB{o>OS-oA14fdDZVpD$gEKsHyL zULZbK%3?Ai5(nUUDudfxZ*ko(a;W7pTS=CjJBYrz8IuuOck#UFt`fJ6kEpi5*%lV- zX^!D`O2^$H1jSA^>C{VjC&K`2Wav50mh!dB%P-{OV4mJrw)ci`Pn5e;>uvpF!fH`i z@&atCV97!Ni_R@7=MrBuS3`-}m>@eVz~t6|h`dD3B!(Wz;4u3ax%t%g(REGFDF)9i zmrk!+=$3j){o%c3^`UzD?#<1c+_xAm(oIT$6QJMl?T606ej=iUWWlkVONVlBW(5o` zV7RjzIZPf~Z;tl>WJP56$8J6T@Jf6~G)m|ZstFIT)BRyg` zX0S<6PMCM0S^*gfXCO30jx+?$0iNFLeP1u0sYIjgrsN!PsIgOvNK|g_AKtOPJx16n zs?VjZmH~J$KT$Tqj~9UNMUW#ZwS*=2*Yt-^uBT{6wzT+h=m%$$3xPNGmd=}wTiUN4q`HQDkms!&Es>*#WUL6S~FQ(_3t zJ5G&qFy~;FgJc-H&qDPTOGkjGRfE;+A***1W{}R9($F!BHCd{JbEYi4W3d?+t&o?n znUvRSyV?DUMD8#mCucJ;>2!e-96%r(q;UDtAy)d+`uIaOK9X@X*%UY(_y_&{r%_XA zCL%=##qeO*(Nl1q4a+sU@j2z@8Jo4a3SpBTeKHIEqT0T3)mNggQSa0|_=0D!v{B+LSL;@~M)FiWIQ5b^#57R?tp@Ku8sKl8mL$xexHFxfi zGa#R{C}@ZK%G_mSX71ANZo*||Rc+h$+kZdIU3-U_LkJ?WcMiOFTuel^<9Dd4T`?dc z5$SdYT_xE4^Y4xtdd%2cgt~2xb-i?VF)!hnn$~?881$;+ZJXF6*b-eRHXrJ9HUsF`o*7~^L|ElxvZ>{%$w=C?t z+%>janPiF>O$?bxnWZ+$guYNeyFg|LN2K@Vc6)*OG)HZd?OyMJV(~XN9{i-`iYTZn z0kkWaVovU$5`IBZEToyaDlyn$vWepB)-Z6fguXcgHACIG)3pRSc{Wv8C}MUq3tKVX zu)Y42{$PLbCedwX*VnVefV;YZ=Ur2q+mL}A(LKhpVuI4wMn}HP@%Cn0fD)3>Uq$`g za^Xeb-Yk(@a%%x*7I>)?U{iv*M`9syHv_*80AecKyi8I?bB{QF>i(=2> zcQ<#7h_k^34gsLX%x><^;+;l-s~H&TZa`p(LE4nswq@qMpqjy8P*oKX9XxpO2~T*! zS!bO!91eGTHQg)rdcAJ0n{#g4c5fYjdss3B3=G1 z%Th$TdV`%oao7359_j$^RH<&B+`VYd8Gla%(cajt0UdEVIl1;2aGK4?_M1O3#NOiS zJ=4)zHkJ7ZRU8E5;4p|mIs_RBK!G^GlDDS;KUh_-FP08u+iaVoJ^5nJ_sncRaH03l zTprxejNh~Nz#S$T6x~zn#sImPk+~8wGpqI77lZ5@E*=|CH?t=a5A8y-gTS-<#q$?d z_fH$2ZZD!Rga)dPWh(k!)=5X2gu_yQaI^Sd9)Iw`Lwn-c{U;H(AhrsA_zcY z>lUi)@HS5v>!wWTYpa9|X())bR}}H(OXW#x$ILh*Bv58HAvO>20#bLG*cl*oqQKeR z;AEzzArvrVGv|;`vrh?_Wx?o7SiU_`_*h?CWAlT7Q}d7fiw zX-Pz`zWVAbue_3o&OiVBtFOL#b#;}9%ChYD```BaoXuu+U7Okc_uv1S&wS?a;lm#etb{No=VkH<~ZOeT}=$QWZ$6e7}P|8Dt@J*A78Jhm=kdTouhzYbF^B9m|*UK?d>7p$wm2+;ozxFIyl;# zG954Yrg8gVn=cQ&3s+B_DL#Dk{=drgF+w2I&UzFKfZclV1kZv>{Y;Xl?>mhIU)(-A z)22Y^dETGx@*poS`cIB=wszFamWqCxY(!0DCZeOBNfIXuRjCV$*SGfG(fV~}wScwL zjVI1@qIRf{7l7|>>@2u&j@wW7SD!SS&2p>5gCA)oUrgymvHydyKbUTsnTK*@R%<FW0}#N-Is+OvECN9>0mcji+?0$E$k-=I#aYQ6 z%@ct)^;b?AO&W41VyA)%B3E~Hn?e&AAWY1}9mr3_YFwj7Zh~Qvvv15SJO+^@;<|11s4*lKQ0(42g zYme-0%DcNb8<~-tLrj^8!5qb1+onyeW>WyYUT<}E^~EoF$r-1ge#RMRy!53n?e%)g z%gf*RTJx@ps&zw70`o4Hb`GK^qDQJ`b_{~~0>9Vm0ob>1-{qHIzI({__BMcf?z!h9 zANk0!W5?eA{`cQ~_uZ4pq+8TiRn_&5x*zur46w7~*=-PYhozLd&eh+SQsC~yJ0?gp z>zh57_;o9%clxp&&6X`9*Y zlIyBJ4&`u?e_(jhau|GRw)L*@+O2_`s(_}Xofs7dxSBg*0vF&U#d8;jmn>69xnjjmDuS`cJi-SbpN42|7ut<8(FpR8TUV#Zk-0arnk6%HfpTx zdCUk~ocbQcTXV}yr06pv*8*u{d4r@cZfv}`xAKIf+D@C^;L~KkxxIFjP?}}{3^oXm zh%lEcfe^^;ylQx+k+%&|j7~=JF!@*0lz1x3xVvplRX{zdjGT$j z<=8LE%9AmT)bE(hY5+c$QmNppz)FZ04wr`I@JrjrzBZe9L6)gB;_Qjp#U+!&OT+W4 z>I!9?3;>Nf5*`^#Jhev_M#!XHL`;Z zAnGQQ6ocj5)U!M_0E4B$dFP(<(wDyE;7KRH7|zf_?Q3k zU)FW~v5$T1^Pm6x7ryX?&wlo^v)ODqodT$;DumDt2CxGe+QkKR(*kBLio)GP2&($G zZU}aZa|i)&&)NeS>@?uTv3K>t!ZB&zb@=|T0VAP#-7~O*!Adq)BJ}x`d&T{7;MEID zPmyA|o_LyWW=$fwT3m-6pUxJ_-ddSIzIoq$j-po$BDN+?kx_F1)BuJDz}**sE2(@| zwZBizm)7q4*tAyQLJlujSh^ZGEzM%GG@h_aKmb^^jghkGIOnnFN_ZF-Hmm+;((G@J zJa`9Ci?}&ihtpLC5~B^k37P^wUI0#L5I`ihL)><;=w-^Ukn;6Z4(ln!^1cw>F<#pO z|LEfWi}HqL1BWRoAuo6kb229mRdN=qX*6PHTD>vyJ2wtrQ}i!kE}QMPj9*zC{MWVP zcOV8w=45-(E3R{OT_6Di*i*%p@59+`NKHQ7CJ53$vt1kkFn4dlzUQzZ|f*eQwM7ueyrzKG5K<0|9 z9W#ev2+^fa?L|eo*iMt=#&p#^BOHgVQqf0lqm!YZLt^U8=b6RW*s(~F6;tA&a|=sC z>{1x@G=+dPSUC*3N$pEHe`#y$Hn$BRLjV)FdFssi(p-|xbuL@91NJ2B(icu_bg4ha z*rm1($cUYhX}1GlW+jslJbOK>8}p(l&N$<&m%rlWmt1nm%U<@f<)!7l{hZxN?`{W) zcbe>E3MM7)!2HY|zZwMqQ#hD-E=JRhmf7IUVDAX8ZbHt1q2laB8~}0z2@ZCLbrLo^ zys)w?%d&jsD_{A_SH9BSx3;#v`qi&qd+oI!``E{>yY9Mfc+fS7c4x)A^M>vuU14D6 zZd;H|HD^n5vzY@!_|;|k(!t_E$XDCRyCy#`+t$G{oJQ<(tveX~ksP)YowUG=~Pr7^a z_#M;K33obabXGDYUot!e{G9&sS-sv?JN?+!_!dtW2YKOO;R=s~de)}tws=S$!3Duw zos^gqXo*Ww7lwi)9-P#_-oG>c*52r^5 zReZ)^sTfa0i=)HdA8xLFLEDHbA?HWDh56qdFr3{Ni7xIh=xCFOiRCz&`(ZcCnkoGJ zD5r5$op^U8bRDD)$wy>nojZpR7zk!V1$hRU5<-xb>`R2F^?Fa0>O7*8gto`yTbt&7 zv(wAo3lAK6@3Ds-AT@UDwBL085k=^ez)wWMx(#-cpysMPEm>6$8miVRLl^Ck&Ne>;i~t3MSln%IQ{U%<1?)P9f5XT39mejA zw@Ydvgn3@xnZfR*M0M%A1K7;!x;x;)3om@lYhLpMKkx&WTyjYO;6NY0*M#Y!oAh>x zvYQ(};zj5G=myD3@QzW|E%BWIsBzZ-ckA$`bNZ}tM|*P;Fn6*P4r8CQN#>AVH*zBi z^IxvhHpcGY*UUs@d3pI+&wAFgp7ktMJ%0T72R`tD_r33ZANtUTwzjqalx5ki_xHm2 z_YSCus8<#_=iH{8bGH%c%)mNnoFWtqH`O#rF`=uK{(V4gA76L*X?PcYL`|% zu(ftePMMjU$gQsq!Xo1|;OSAG9|wn|xKHaFrkhFdqy6Qpy;^A6)Q(^}jMdbV5cj|a z-Il~m1LZ=w0g8nKU-R@QlVhJ(+X7tJ$b&g@b^tuLHzn~hvL;P>Vy@K33&07Ej;{w3 z5IO7FiZ?ATUzQrF8?OeR4|w0^?4lT773`$#V?zC@DhV0sG$(iCASv?JbTll&vITGB zQh(_>s!Pp3JXkt;v}KCP!s?&bn;&f2F;lQcJKEM`ZJ7y(!095V8D~%=%BkJzg}cb_ zZkr&uD3r@dTjY7pK;#Zk2jXtcMKl)32F>!EjD6#2_MZSM|aIS{fq-mN6(IGAu z;=;Lu;gMna(d`YGxy+3s$%&jv*^x`w%X>@bq%1iVB-uGLb6Jk4UQ4s3SoS!=NZlhS zgEGk7+2-5emMmmb30W<$bw-fW-oj^)-myJd1Dq&zL{7J^pZ`79I^Lb}h7dX!Ww%t{ zoBihq7Um9h(=|-aJ@?$#yyi8pdey70y6URkC)Rb{Rgvx_-Jta`UvwAUpNR+_pwxln z!3^GYt$|y&fD|GoAs_)p9y$V<8Ib_&07K_85*-brn@+=>9^p&g{VrVtr(5Hvlse4M zfddEL{N^{m`OR-$UtfR!PIQ%^*XzX?JO1$QC)1rU=S)OJQFI5Slw7TY8Hk9pr);KL z07KAu{pHIS7H(TVev_uJ=K44~e+bQFVw6F~>@IK=x!n(3B=qdz%9XM(oQ?{lHrj2| z$pPxEP&&_rGW3@bxK0B7+;O02YDsN;%p6`{M8!#URhN z?@GtCclo$&#h6UbgzI|NpqvG)baDqbt2A59RZ2|V0s{dRLDXoP#xGVO4cYL%2-q2fI zq3LFsV_SmUm?pWFSZHP@nKd=R``Mg&n^o^-pI$%R_>tklC1d5b-dbG!pv?ZT9v^2o zJO#i#s^mxdp?2Xw1fJ6C?N15n;?@8ym$$UDhd`zIlVi0sO-^8P2GrT+t4Pn5g;L&K3hsWliw358QdC6l@})3UlQ z_@8cXZh(Q{zDtWG$6RpudltK^{#`!QZm(nSKVpn#*0o1gR#sm7+Sk7M&2PTunrjAw z0e}v_-<5~5Ecb#e@y#hz^90&e7BHCs?o6H1kE_QJc7>OB!yL(oSd1)oE|T3crb|HR z6boP-qY871$-|e~H>kqxPPw~fepk0vS6AQo#y7t4jcr!pb-u)gv24G0U1q)3b|VK{iU83n&gyuR@-9nq;K1ugl9{ zo^D^e_Q0K#>PY?UtA@z5pZ!9TC*^#3F8Da~pk( zc)S3d(4aY0HM#cOt|59=xwLP4eHL-gp!&`2F<4CvIHLO^AX7bx)Q9i@TFBE1Z-&ds#xLXNz7$ zi3=7gSh6&YwA~+mj^uYXHb178gkTIOc4fH2ozy`49WShUr#Ce@wyWXSdwjgftCSAS z^qgY2&z;pcFsTz5WH$sdO+R?;uI!P8|~J zdv*yBg%FCO=ze@mQDtV%Id@C`tFF50jct6S|Lx&D^|J&vLT?SScyTsbv8nE|U z#-rG|PSLv^kQk$dnQ6tsfpu$b^1$KSK7U=kHJ(l;=U@5clP|rf+J92Ns8aS8Zo;t> zZ-O~N!R*AX5~MTdb*Fi&Xy@g2-%^+8_u`s%JNwwd{sTDq)dgvhl9WNp0?3fRzJ4M2IVIYJM$hA8O7zx-&X{J6}f1m}n2}Te%Le5}# zx8q?WtvsFTcz)S`Nws{MPp8}4x3}K(%lp&hAmp+zJV{x#Sq!1aJf&$vPOZq`z)ehl zzJBa;xjq6^gps-I$JHK2XF90Vr9AE;Qxu2TxriImWXDtk|SbASQ{p;LZ6NfJf{odp_9K+CaF;jzk z(pIxAgdXP<3<5LoeIZYb4j?>H3TdV_6%Q<}{NCoV>#`vVIm5vj05UxWE2O(8Pa=AP zBkHV&p2HjR!>U^nqPCZ@oUARw1c9Iq1+g<__105m#1E_AyLS{yNA7I)vafPjVkxL) zmzD?XRduu2$J@yV*EVhkDFssTx%#J~v(be zX}`L+GbdiwSQ?12Mk#{DkjYeH2B}&E2ScW8Os;aYT7Ji50Vnw^IT7)pRyABOGmCw}|wcmD40%P#40>NNNXx_1ue|cm%YX36 zKlBgcV%ex#h;V0^z{rU*s1QKaRdbFi?2J;n+3cejZQtyDc73642&}3(=Mch`S6+GL zl~?}rfBw(k^Pczo_HY08CqMZ~cQ1;fC<^r*;rv~!D!@!kfrXJZxjH<#XF}~zL~!XJVmvSB#Ie8DwVbk>7?H~QdA#L zRtd9UEI)z^s#!M%eLO zJu%nw;|1Wv2CpXP&nTCMX~x+`3roM>jNaeW%3$@3#BiSL20whaU{6*O;H=O;#Y|EI zt7fEi8E(n-o!XYbrI0~t6bK$2N>FfMVj+$w$`Hxjv$44lCpL2jL5UMdbYCFLXzS=( z9Bv@_m^GgqZ5)G*fSM_qIoQaY)ZKMX3Zq5n*X>#}`oITn{=oZh{LBCThTr=2^5jFgBcC}r zL7@RUx&J{32CK`lS_J0xNppsSh3DkKxu?lv7NngIYNtqaBk>OVzqq*gmbbj+EpK_t z=RWtj-}Z0UR4x@Wp(%Y6v`c-OaxFA4pO$3bKAOip6n**G!VPD;{o1t zzeM~+gXQN)JVo2PXIpnF7DHU+{-p&EQ@h{HbK4Nw7*t_q8$se=`L?WoI^O!E*%q(} zoDIBiVQ>u(PHj=;c7bDPlWI%meeM-xtf{uF?q(sW#ZVOL4uy!Q7S3(TU}<55xYg(# zK|U$=zUl1nj)oR#h5_(Xf#>f#^FUGEIzD#ec=HxF70hWGMm%S&+lg|fd%OUAn?bvh zwb;QX?EKI-ygF2`kwLM&!6chi@y_X50^ZnLy26vRBafv84Y}!4p{_&$u&k-%K;&v3 zV)0$DmaXmaGDqk85=WsW_Q!Xjxxl~MQ1Wo2)m@a1+fw zkjFOx8aR+Z0Z@|6*7^<_$pLdFU==vG>Q9>y^^05KpKF_zaH?0=#O2;}268urhnl<% z+!A?WM(7|bBeE~nvx7x>L2x8m0I`Ix75?tc?PFj`1W@j}qdTIzJDD@&% zVvm?w*U1@=$2sRyPd)W#e&%O>^hba6Vz27WrwAZ08H0_9 zK!!olPf|3qS}h}LR`iTGOUu+Eodi6qh_5Zn^PR)Y?=Zd5Ijk%ur>)VXX!8CL7m^s2 zTdY&l5?Ck)73B+igNs$;Y{EHp65*{G+!G_&xFA*wGcGs= z%`He>YEUS$HcYJ$XIrH*iyW328KtV9mX>ZBtvx_6>cA1&cQ1k*==TpO-`9*jws!9k zc+Cjlpo~uF6fjoX0kNH!tM|KiWBlJZ2*ePFcWRU#7|unZ(x2>2?ammj}aN z-CVm9tZ*gwZixfg#r`o!(5=PTL0$XvB%(K$#U*V>PFi?K`jF#p%irJcznuAe;v!ja zZ>h};AQTkU^RBgqdNwyF&*ZJEICZX3OfDpuB$E$IBw?d)(f<7ht3u(eqs=h31%rc? z=cTEWZM#O~)kQyzx4pOW=gst!ngn=7wfLN9lBQywi>fgnIJaywZHFAqWERrE>QNm0 zk*1!-%S0Ewsp;R|0l91gqGzdI$~EdzTcJiqZp_aY{DAMc*{=z`I0ju51AF2YxT z`@i1u?|%7`vPW&BfRQ;{G-pETt^~l_)Sg=PAH4p?^5p#ouYP*nNvmZdk(>YeeMf)q z_n$D!^_{nEfA*6{ul<`_-ubTk-~Yh}ZvNWQ`|ns;UJ!!x7m27bbK;;5g2LIDoHB!; z9S$oKS~!D(bLVS~9kn=O&Z^n;!2Xk7^uiau?sczY=C6J2YopPq`>a&W-Mebp86E*{ zsv!t5xvMBSVj^Gg{KBgE@m}$gUa>T7Hk0M9iy>I( z)&1q`Gu}5FeZHBP;B3aL`@J6>t~`gr87YO?2%ZwOfh)0-WCc?QAOa;qf-0l&oZJ}! z#^4~ty-Yn82)k-Up&j(U9{7(o);`nJ?VN^aLRhV;m0r(s-bl@zv&k`_AySYc7|5Yc z-u3kuB#;y34*d8I;M)nGYl;9J#Lifp9OmR_C|=)RI)h7XHl&O$@NFq*AF{dh=CWSSSZU`Jp%wYF%YZ*zHeb+ zby`zdULW$8(#(JZz{N2L+L5JY4=@B4Q7;tH#ROx@Lat@+PEvJ05G$rSBL@n12K)Hd zXx7;+GqU+3zNGI$?9Mj3p3m;gbFcqNhwy2drfu5;2M+w)&;8s_{nSr&It^{xcAcWf z%=O=z{<_yt3wcb^D%t zrJKz>1r7x6c76_UM;`_i1R?8WJ-{yAK4T|>2%NL2shxk`dH?A@{imP%xu5&xU;gFa z_>JF~OeS;bIx`2%ZI?g?Aci2SYOIEnU0>Vp{Q$?4Gp|qDn^;3t#ZVpdbpPo1g(8=F zSTKWSBQGH>XpDF_(O*wD?$ovvx)^-6@s-1+vz^MVZ80;-+>v9LnK?O<CjhG3#V3y5^doDbSxL5q1dh(*B{ne;u&6~aDcjx*8ZIcSXT~ZL3 zxzs2j$FTKCZY@m~r01!~GuZ6oFT%u^!1avl6v|)01-*9l?q@(xV zcWBa9)HV043dQKI`=_I=!C=MB6R9B3_Ot*zXY<^6GKElB4mdy+)beO^>xQ+PZ}`I3 zfA@DUe*Np8{jdKeR(jcUfoQz@R!Ny12o5na_9WW*q|#iZ4VaG*5Wrw+n#SGFIOB|8 z`?X*Dsh|3(fAKH=#e3fK9srAri@Ru|-H*cHS;ByN-nQq7K66kmtZj~}#qH1^7>MJ8 z^_VOknjz;zbby)^gkO3F`tqUI4!B=&aMxHGwkcVEzo|*O&c$)4H(P zv@AcG?WozC7nV-TIW+Z-;0(DNl!OItm9U!zu!7jagOz`Dv~fj$7F@t12#@q3*_qj!^3Hk<7w8S%bpwI|!75r(8-nZS}3!Gc_pQicD)umj9FK=#s zVYHRdwW3JCnVj6OlJazG7hI2_f6H_<1uw&|9t`*ADK#dsw;3>WuN21IvKu+6#N3kf z?gp=!Kff0j+EJCAINTlNBh&3k1ZQ@DEIWT!HQWH8leX_>m=BxQ?);aCY;JA>c+;ES z^ozgvi)Wp67Jv@cSro;i@R8rWH%TB+2PNa{Kkg+99FVOi?rLC>o ze(hI}9zFj0cm5YgNk%zz8XE>sOQ24Q*}Lk;=>@jW|uRE{715lRMlQM8wfS?g8#Z zsT;LBxv7vS2^TS$W;G+?>=9wKxc|Dc{Jo9CU(RU;A!k=&c8vjJdN-C8!${HEy%uH@CAvjF+O~dP`#Ug_3`DYyFPSPYhnT z*R1Y{4tA(_##=&wN~`9Ju9p$LxVQ5BviF3h8P2wAu|!h3h*Jai5Hhkc1g@q;?41gY zvB2R@JMHWadNH5f!9WIg0ShFDIF;~_=i5_#ciTR_>c6?Syh5--uS5H%4<5fh+j>`} z94;_}vL7(Kpjte&9TSIJnQl*6fzvr&A-$qr-!6I&a+1OiWm_;JRWl?ZVd@)iad^;t z1#|&PPp75FX;FUM+Us>bVpdQ9t9=*O|6LN_bzFHA`aXn^QW}j$Pk!=~f8|$xr2}_1 zO%r3>g>~-5jQ+jN(;sU9FuxeTfd}9OA~rVxHg3HmVgf1~(}ILUIGXCyU;3hztF8u^ zPdT{;sU>!2Fm>sAXMh_yw43YqfA#B!K<2qK3nfQlURRrHT7oRb5So^tM0|d^aNVE$ z$#t)I_7!jZe^{d=V&nvOqSB3wNF79)z1smPQD<$SP9OvAG}JmGI?!#HI-c+gUhsk! zyx;}D^E1QT&s=RWzJU)A5W`{n=U!8>J`V8Q)>;`PIYXH(=R zC&|aE^27D?Z06@viKeYO>8uzsbCWY=i2595ZxAA7Ov&!xb~Cllua>HMmSQ|!F8tnT z^aX;8fDF(C0(&R+))I0ci*Aw)ZQpQtke^;y`40kQAcl103Bw*U&xNDGI;ki3J{X9U!C)qGku}SMSNy=`zxYe_)1GqJh&eDo?lHAz zAl>ob{}N5zX^C`wo*jcBHL+P#6%CO?WDlyTWrM)ot+O)LuC2NgyPjelUiK|-dCT?J zU;oy(zSYd8(`iu@1el`DSrSx94c+v>oLIpb7IoAXevw$o+Pc{d+Lm6699$G#fc=5u@ zn+~0KW^duvBM;p@nU3Lbh%vy*bfOkIkM97!&CpI71t!4I@zSDvWzk#OJPvqWEPSES z&D6eSu(CKEWkCSU$&`Z=LrM<-3hIQ$bJ92)^IOMoE#Ao!Y@9Qs|KlA0uhUQ5t#6-b_oB~|Qm2B?Y1qsH&8QdX@ zJL5$+A{TU`0Yuc*0V7v)Ar>l>yk%GOSsn%GCH~PEA6IcNDuDD~29oF+vJ)gO5WzL(Mo3DD+tA6>H zfBF3L&rd0JET`{5tLIz(0tm!uw6=NOjeT$fb0T*3*0{fT-qW7cG5UDgFu-n^nZdPM zaq|8m_PWJs0P4d>22E0OV;3cI$&PWa|Kfk~&zGL^q|5)&8{YM@f4K35&o44(x9GYG zzU_-&o@}g@C!faVOwNkTlt4X(k}6Wq@}KjHa_OY@odqts5+X$2+TSNqxz0a+0^jrJE!P2lT zCiOUrlp)?nc5mDEq&T=VNaN8tTnr0Y+urOENeD}dWfZDtnKH5vySEf#wp7586=30@ zAPZ7!&YBh^xVyS3d3LDfz7zwHK#%HlW_aSl{?lXmwRZf`wfnBmcEr%JsbQFNcwho2 zMPel2B*!)V!KDlPUG={0wU19Wj{!AE%?rR_N`|gc`}hpte_%K}j0EKHbC_P)Up;Fy zhRvMIBffau?7?R*FPu8FtZg~((ok@LyAXG)oNiGb!8O#GkFfSEJVAP`Zrh;vbUS(H zY_di%Sea=GgQC-9L^myq=BF5*5y}@|3w=+xDaxk?Yn1Ti}`aRtUiWuL72jJ!`lqS>m{v%6Z zw;Z@LmG)c~D^I)t0Z3Y}9a}(A0LlnlG&(-@(u;X zuFg1PaQZo8Z-yrwIP2W=ANa!OU1Y-Es0Xv6ZVi-xvb$1k4k?4NSUW7r8-DK(@Bh_b zn?kTPbGLUEB< z#`Ow>DY%B(^@wD03#uh{tlTX{IGclnNQ{x;)7&(!k)>hNoLhHtA*RR$3}$U&TZo}o zF5Qy-6XW$Sdb-(c3L;`;KpKU)OAXjqE-qcc_D6 z!BKKs2X*8V)Bt+C0Q?=}5iEPmU8n;%Kvt1nH|RgLorE+M^o~^fKiwWXyQC{~i1oB( zGzN!fF@JP=k`{Y$K!DozZA>2Z>=AhYhN}&C5vZrQ6q4G zt-`OV;w$?L*H~C>X4Xt3Tj@fmCKYeE!XUzAIT|Hb5=u^iMZnRW(V>V4-i>(Yuu{%& zA%jJ7BFavc5))6^a;FNQ=)05AIQZ6L?<;1%HW_`Tp0+?HGR#$byAfFmge(cZ2z_BO zI5$&kc@~E^wDnQgA>eh@aDR=@RJ7JM%bpLA^);(l<>IOdRw~sjvw)4%Tv7I`+$46U z;x37w8n+6-n>;7vIVgXJnxA{u>|L%Y%d-1%*WtEH>z#D-*4Eaup7pHX{LSAy|NQg2 z^3bUq?`Gt^{AVtANo3c5zo;*@ds6uroLA+63RM9o5QxRS1Xjpj8v5Ti*q?fK-*ofvbn^9f_9^vk=Ox%dDG+;W>|<>x zcgRE7-w_b}x5eWH;O`N8KX1~x;P~^){)^)axssl4mi2Nn|^hBulL8zAW@nrt86Uv{@NxFbx3fx zhk3s4-{JayZ(iPIc>g8=Wv6EROTY9>zwiscfSqA)Hy{2+`@`KQ?tO4??|v_X z>@iwKouj&X)DYktuzBq0gSXs#(f3~+vUZkOJ1Pu&b^tJttlfE6o=r)ZawkVgBlp#_ z&gl0C0BTSD@4M`*AAS+5>e^=3eE%1(&!?XZz?>rq4Asr|?gL7LfisjiB&aQ~b}6wU4{8~6o((0QTVVXqgSY?Z zw|(&s-+AcjtDgF%H$36>uTml>?ncps4wgW)y9{#|ci~{}(|UI4<(GZpGoSkD|LLcH z{nvk;nairwY(48+khqE! z0|Zwmb1=u25F`kNNizdOiMm@;&6psW8gdqkXbV{3R(4mv$2&^;i+bZTsoeq+D0J98 z7b90s19;!DPjDXSsbO&C(%_DE^HXcnn^In*>4uvChu~-R1_xqqYdUVUG538Wr!1}B z-%M_uO;1Qpd%OVrE%69_1={;CJM=8z_2u$e<5|wCv44BdZyK*ZqrY_Ob}r1F5Y#d= zNfdV$$sk6EuwdQT5-POTV1eX`faLMU!r-0l_@gOXhm&I%E6gj!A>hig_kw{uCG^i6 z`EWKPsDYF{7rs_4+~)a<_4-Ci*YuVz^|IGYRK%^b{6k4Gioo2|9wA+^Bh-bCR%+Ji zJa(QUO>hCq?C|8F8W+9W3i`OTf4;r;wPZDlh-7f19kn$w_#D|6oD5dMudI3(QYg~a zs28ude6Q&cc-F$8swWS+A=4`33@&+67cAsz@J677pa?7rxjj9WgSs)eNbgRTzZ#Dw zz$058U9$L&3c&8#yo34g`kU`PpeTy1t*ui}J@xHxfBOqw@Pd?*s+MK>-Mj<|=A@jN zJvH3JhkoO?4qWuai%^KwZoK1b{D|VweGd2Be0yqVp@;@|kPuH{hc3E+Ru*!0US9su z-+3E~euvnCHqYOhXjRm(f`lT~N7oO3=1Zp`dQRff5|TR=gY%zuIe-G;@Rx4xjZ&a6 zv#jhvxK23f>L>B)a;p}Y8REnQxEfdS*7yF!eSiG!D`GX(DHCZTy5_~q&LDOGtMWHB{ur`pi9K%K>%m<%B6Ouu0u zm$*gP@aAe6F0@-(RG+f={>gL;B4F}tYL(+O!qa=z^Qz^`JRHnxgVFIKMTfMAT86E{ z?veIWRbasrWW?B_jlRcM*>}s{CXz|j`(!=2TRWKaPWQ_F8@``!C%Wuk zmSu-N+~s!7?b<~EY;A45;uWv>!$17Pg@uK>uDc1rw`k%&O0IeLY8PCng{QH+|xhR&SIcT8AD9GD+oCwN9G~;;-@{iw|}+uOhh#IG9xf{MT88- z0`Aad<}960jyE~I_O-9Q{`%|R^rkm`{_~$-T3Tw`mdqM{tm)?S^06x@~ywDme?QyE6X_v8srY71Ni3``fQYHPaHNT}5wmxB1-#lzW!s3U^_4%hDs@s)Adn{3u(p%~nQ zT)1C_vOk(B)CeV{Gi&Uoz~&B+fCW%^8^TtQn{{?-uUhqN;G=QhUruNDBV>kIF5qW? zp4aRDKry_c#b7*ZtQIHd*s>DYv|rwde0SZ96=%lYi(~&}xHgTX2@{o04r1mGe#pG* z^RY|xdAI?+2SV-&lFk>MwJ^$t?cTzNqQ7%Z&^ijSpXqyG|_VTm$?f z@KqASY%&RaAJJE5vjTWYv2b>3Q51EWXj`9MErceu0)iXd2<#9g0?%9*SlqHWEL1lI zzIHO6c0~F4E6z)We_J(RZ%4k%{vm|D3;#}XAja6XZPPUW?4SL!fA{bH9e|WlHzD{& z#s9q@?4#zud)sb%kHjN~0gpJ9IfzRCRPnF>uU{R1;nQap1#(>)z#T%3+*3g?+ zKmOyQC;~A#S@7U>m24LL?h3#0(2@1t>dO|FOJmP%_8FyKBGjqxc( zwLj~uodwH>PxSo769-4uGF49*!W9c-qnrIjUNG|C)?pp(j2F>m{9Sd^!fi#O%% zYp0uAbfWVA;|1XF6%KX?JOF1oUbnn@%4C+2JQT;O;^y(@m2r65)EStNI}nK7O`M$E zfNW~s34U=7JSxlEb2Am3#Zpek4-JR!hkYb%&&YaaX9>Nyzx+a8cw*Ak$+XH-qh##h zA(^Bq-cHReT5rtK1w6Q#swK*0GjpRcgE%(GL@k0t3phlC9JXVW)sYO%I&qjilTT9; zQ)Y5D@i^cUH}CHq4(}}tk23#aV)e`+ z$z=9lUjF*BtS)@bD^i<72;bQH-+h%iJ#BkZ0Ay}N)=h;Wy#xCIu#u=GtDQp2k;%=o zIx?sv2P*+Lf8vv|nJvcHsI|mw+IQQxHTsK}{cxi#dF~zGTnKKii7<@u!KSXRdG7N0 z7n+%O&KT~1#xjg=`s&SZ`)_B5f~|E&A{K-R2*jmx0i)JKSUT;p%K-=pql2Nr2pR71 z!gF+|&Ka82h>2XB$Uz{3#TawWF~&doqd$7y^PcyUKlziHXfPOLBzG&t3w7hTUKM{l z9c>Qdiw+zd9$inCX2IRH$1KiML$)+i6(Se%rtWh=%wRORWoM3Irkc!)5Lq=6qC>OK zLU~NeuZQ-}C!^2h9DqZ>KH#$0dtqIQqZJRTT!SjoygIR&Gw26%a z0?f^rn8gdU2@GeVxjg{Qy)Wh1~qP)#AIQ_C1fEM%Wm#kD%R6E>v?nhPyA zo$$Kx+*aNBQJVoGW5emd<#D*sOxm2aSKjH<26%c^p6X+B)5cEYu$WWG>R>SsMn*J+ zlOjsF8Pwnf*eEFXZY%h&N24tQK_0^pgTCPl`#Z<3u4lL2-`gUKF>Y*ZTyn`JzyJHc z|D-29scZXmsL*fb&HJb`KYT6iIe0g}yBY0Fj~|oe>u}*9+oL~z%a1?s(ZBkMzj!xL zC}}h`W`4}Uhl7ZqDIHy#+X{n0Oy(Tpp|eg0z=7OTEGsy|97)6g2}sRdxPXqBXH+f*)dlD zFiU4g{1ZR%6Q`Yi`YT`YiqUx7UtMT&s?~d3#^gEhX0LenbTX3o>O%+n4;~)YZ770+ z*g2UiGY4)=leSeMW*RjuXD^r=$26zRQ06)(2TH|~#GzDcjIY?_6XRBxzCXrQ@+*78 z3v)QlX<;_1vbLU_P=vC`i4q_8rXf3TX+c`6n?^l@u&?URl$%zktq!9cDnwFS_J(yi z{PWS;U*u-SR2r0dZglz`$KwUy?+|H$-L7NDlhN09YaCGL zW|0IGTSib9Me$doIFkHdSgj{HQMSky}CDiekh-iWVo>^|2Me3*u+ zo#DH~VZ?;au!UJ69ZG2$_(;l;iX%dwnoY(4A(;hGk)ePR9Im@I1dmExPE@%+sW&`F z3T-x+rE$7(HtPe|a6vk1MV2raYWCa&=Y+tn0wm%Vxnwcn2iox=NFOpL*(~G}I=RtI zNOl+A4=2CxU;?n$#Ie(O*v-x&vazx8!WX{qz3+W*S(Y8S7vBKg`MbZ+qa1y`YZG<5 zfgLyIxqHoyuYibPQvdmz|L6PP^X^NZ_w=)#`%G1f!VF|4-t(*P*;Rmu)AnfXzWaut zj)zX&>&|H-EUNP&>r&;OU-n%;b0wSS)sdM6(`WpMD+rAsd<_OG!u*IZeiyxJgF5cj#OnG*%4V5D1<|IZuVeDRa7 zdig*8pXIcZVQp*Hy*1k1*)kju;ihh0^5PeN>Jy*%;eYu0JMOt}xV%rToe^m?rd(v} z@!)e?TcY~PlUENO+n|(ZLF&#z&MbR|kiln~#83h%K?y3HQ>)n{qlXCBzz&j{Y3hkm zdPZ5DM7@I+Pi617N;XYtmIQU6R>hoVG>R3IrlHFDy}^2`YfU}u_hU1wD7GHg(xj-W z{mHz^Mc`h)PgZ?ud;KF;&qNCC5EdsU`{VHf@V5p7?&J_chEM{|QGZJzXQok^>Qs~) zMR`{eW3GgmqcM{JXNH7Wd*`xbZl#MFmR>EPpc)J|rJ}9zaVdXPOH?(G*4m-5# z$L=^kIn7}j?mo8*?^+G+p^x;;fYYa=nxwAyCYs)>c6pFKCf>q(j(YlMulteq1Mk@% z`d9qePilYF)S{EI2Q@Htqp620in{_t(oV*kci*(k-XOxMux1KQWf=~f0rM=Bx3)j~ zOTV=8(1rj2Jrt{3QhWKo|Fs#5R-8g#eYhOMH%0}#9Y2obLM@cf9szQXP!lsZz zXI$~qKX%^hU%zs}McFl!;-pUGo!o7+`RQN$H>WjI=E1}`LPws`Y3E(`*8lB8Kl~F1 z!Aaah7&p3l@r5J{o>S-gqM}Z%BYH!qiW}bZXG_<9Xzkh$|K4A`>$0Eui7VdpBgM*r zq^@oT3mo9qNy~AdATc-TsaIe9m9Jg@%2&PWZ~o?Q`u%~b!pY1tQBB#){$EVTGtiH% z9_VcyKTat-dYYI-xG>9=*dn2X05Q86T$8i&AWAR~mU|KiAXn06)%2NCmL{cXv>aH~ zvoe8;WHzy!*<%pWA~~GNgr{{gb=!n(rP-3_k}LBVxMZf8w#!Th`is}2`q0*qPkCM! zz+GYfuoV4?$#0LxHw^|ll_n4(80I~-XI8yuR13YPjgS!ff1SrmMRk7TQ>!z3$ssb& zG0Y}5J~KXcQ7A6p7*wrk&nb$h_7_i|rE)q6IfHz}MI8p)Mezkp z-;-ihqIGsy(l`OKHb(zFG6 zBjNhCap0Ok|A0|x6x7*`+|`i?3X_ zRA)W88vwA8D?^mTf*2K*v=1Eq)c^T^od!O)9IW1Y*LDBvKl}Y>zT)Qp`nz#Di$UP+ zjNOQkLEiO*Jj9Sv9xg6kd+oKac*QHG(@Bhh0VYzQ2|N|=#p>(h(K{!{4=*gB@to7Z zNkq2UMx-@7F^DL-Pmw0jniNctr6lfwgL$DE&4OE>s4xqzhBl#Xt6@l=Wuz3#goF&;1A5!a;#%JKF_MNho|10{5Liq_@L)wgl>V* zNyT+(`-F%}JzfC5RX94i%`QDjbbqSw4=%5)jHf}JL;nWTV{Yg5s#uShbP8z+24v45 z3L;&LoZ(>0fJ?a^_}a&8hPmd(5Ct&tz_kX<#rrp>lnC5zorpm@@lur|VNb zmE_4>4QDOE2ngoUorw~&BQZEbO84kKmfo$fWr=-FO0q8H$5VS0aHbRGV#mxK*dKdj z+B%l6sy0pYAO6FC__zP|-*!mKzNUZt(5s_4b7s0{s;aA=dLBrluKwlx zU%UVE?~G@eN(3>~kcYLldgT7w{`w#GF(yV&2%Pb{s-Ae>sYm|Wd24=r;}}qL%)lJD znwr@6nI{1-#DE5hP$KW(0pRk#_)zoyRg-xhL*2IKz(%9E<0s$y&9{C2r7wNpyWh6X zC2k$CNgGj8RsuO&`x?NvzV)rwyyi9CZg;qjMA0}QM2BIBmO zQ$l-)-81G(wP+bftOYRP>{LprM6RU#-r37yv)Fc&)VPjw!1eF-Qgjkm) zi4<8LVzh>*vOHI@4h6ELrXrT@q2@3DjigkcAZR2638KSX_#1GWwE7{ys*0Tv^szW8tC%>%o z`TbF^FXr>|#+a(A27|$c7hd@8cfUJ?u+XqRx#s(wy{MeL=P+WA!jekq9MoDyck@?Y z`38LRq9dDQ8|KOtuYKi#XPwm-C1n*2q)I{xmB$nnFsvH`0HTnHp>2ytKuax0ldR?a zKfR;u4~(@CF&Y(8HHv)cQh31Nr&nE7cBY$TttueM?8DIfm1jKtV}JRY%fDVc@1#w! z4%T>yi=EqRP~Y(Be?trwh|J1J__H7W)yImp4=l3~i4GD)H&OB2Kl%gs_~4aSF9L!F z!`xB7_w$}pEMFSL&p%T!8j>KKo7LA|dGBXGyTUqK*G`3F?W*2#t0xrJTy^DzuYALm z@BG7Jy2q>o3Z8}{GfGMb#@MQ=MC9N9{ojB8_kX|J?IstgLK&ILQ76l)tbKK_dr@Zt zPfa-md^w@A0(MWOhL03{L0AeqStB1*ZJ11nfJh)VmW{P+7_7oEXsC>c5e-qIMkZ28 zal1I;Trpn8{akY~XN7`d1Vv-Whtd)4=Nc0g+1gdjsc%sEzpC}uYRr^uWC2Gakg{q+ zF~yb@qOu*x_(_akI)Eo022g`S!R7OSR|-6BPaB7 zVG2XWFq5jPkSb~PmO3O7{EPGPWqnVfudIQEKnyVuLx?1iDL@SBJ&fHe$R3rpOV27y z4zL!~%3K~|5u#0vw?ZXxZ5&{kop)xgX*P0*kSWcFqSLBTWghFPQ6*Telsb9wKnxwG z!rHzBZ#W`GVnaq5(Yib8dJfnz)MPY5yb;1WsO$V zFX2l=qC|$1&xDXNv5JQbfPu^Jlflxw(O?RoLEgNo>aS1ad!i)rq@g~TH^(EI{um<` z0QM8u|C`_Z<||(DimIv-860*2(*OBO!D(<3N>qR}vX-Q!`he(taMpxJ@B7lZFV~B| zeq`3%((iZo+3WPbct0r5)RD6=no2PwkHv94wxs}r0VL&_h=%!0a$+c`M+C6(!PVY} zhS-)c8{0*kIQYO~Vmz_{h%>Vm+9xTY1J*itX53J}73`K>CN(#3r3RmTR)|}w=!N32zuf6synAt)sb*xE; zm;@tYK%?^hM?UhA4}IuE{eC}$z@)YgHK8;XF{|?C_j;X6I$L|~R%whn6&L!bI}`^j z{a6pIsf&D&8D?|UY^Z!B1Ww=R??qfT_$LS5a0)fyOsl+OsT1qgG4p3abjJ~HWpRQ zvw3l^m3w2kwd}W*7Lm;oSe_6P)&IQtV&W>IlNEQuZxyw9QHh_`s%2cp1mi+P?d*DM zZY#?;%z*9aaT|7)K{0G?W{pmDPvF!>Ykc690m3@YR@T+Q&K=7zF;tcX#$+$^l-c{L{sG9es;g#eCF7bwr-C665K;yENkjetIOkIAzfhf#nMI_o>+gK$ zJ1=|L%gU-shU0(BbETjJnk6X1lPalIqPliXyW!evFF5s;eC0LET3H{m4vpvjNdKQ_WNi>ldmIKSP~{w*^f3V7Vrdc{ObrvyL6#hIB()|Z z2@vv)o0|Z`n}mJy(rQc|bMo^6=uCIb4L_Lxa|i|?;x0n5VmX?PC_+gEH1>b=p}$<# zn_-*eglL9%CL4RfAG{mD`s;6MN=e3&NIz=bT6*M*UkIpSJ4{mwqpaEBM}PP6?v+2> zqsS2@wZ3_qZ;9Hayml56vrr!4#>*?d{jcY}A@6Q&8q#gDK*Nry*jyda1TZQ`||{_4!;ANqPL zIVH{%15$4zNKDivE?eH7=vU?DLGP(51OL(i?0P66DriN->su2?l|AF@Kv~K5(ca)l z+nA_&mMVotWJVYi=GjW(kP24?P$5KXeB~vCacfzt0#N|vj6so55o&^pIx$v_<9y8K zO{J!)(@0FBQKBbkO#-4!IfDC)imlIEYg^gMjBkm9yF%qnwufmgm#hep8ElM~SZk1B zD{{I%IBsqnYhG6O8qFyZsw~Z@Z&#rip+O>?y2d@IAC?$k;x1`Nh6MluNEliG`#N_F zxF{tsLS|N~ZiGH3Z!GsENr(cDoJR{HZ`30~7@B*EMq}-YAC|MZHG4;KK|3zH($75v zl*8t)M1}a|lR$~te<3A9asxzEmgQ$Y^O>{HKD*!V7kR!rKk#$qVMhsjCCEInw~zv2 zgE$YHH&=e`3tv6!R~FrM|2}!cDBn>JR=o3VhrRv{K6*A*4V085TFfuyPA*FU$+JL8 z1ks_Il>ueF0e5>7rmbrq-gM>n77;3vK9dlYfM2{A02vz0Y})Xn>nDLMh76)G0*+aM zMUwz}{qFRA50Am9Mg^jw8jQu0X+o^T!epzy_Vo?l{obCgh(1IZW9_59+W!r&Ui!>u z)icvue(?RpKoyZG51?_6rHhU@90~(YVTvf*%nly7`=_7!rvuqpAB?gP8DqA_m>u)X zbrVb0)QBc?BJ8^dXW8s`zxR#b`x6!#Cd!o}GZyfjBp>kJ_rCX!|M-upav+%vLQaUN zGVGPi)<*N|{lTrEqCLq`ZC(u8?ML&*ZMA=R;CoCxqM4{YK&?}@UR4rviK>92q2Or1 z+A}g2s-D!9grHGGVhA?1lNlxhVlrS$4rImH+Smcnrr2vS?QI+|-|2U-he}P7vmo4q*GSFo;T-J}3Huy!~94yK0sM5WCga`?}^HY77ELUm2rn zb=a6Mj*TTVgys>1;3ZTsTFZNzM$h=lgiK;4RGGwbLc)|N&kYUjM9XvTK_Fp7L?bdT zX!;mMjKGQtX}^)LTim)Tt3Ow5{H}CoNsnkw9Bx`|K_q3OOq4_kY}pzjRgqyU13TFJ z`n?U1!mAP5V$e}6=Z5pafDE|^cSlvuCd>plb`4DU~5cV&M@E1iOy6jM~%5Xw`DBMGRf zI+J;Y2ZA+QV!c`FISGN3jbZ1=7$UOFh77CN7&283kyL}mnzV~J9V!jv*zU>p_-1Pn zpi(w1Pq0}Oad_4|X?*E8%$hBmr(^W|7$(PGaQw0lV15u1c)%eBQZayl#EIfq_}4ay zCEe*B!Ld^^9TWEP6-m`6SaJkXicqMgs*h)|B}y81q7s27xXC8geky3r#zPhAq7u|- zBF;oKs8~dmpf+(1L9HTJHpC!`f{gOo(dtInNVr@4wX>TxRN)Y0XSc?VBe-hLNsLM$ z2SFrKwVq<;h848~myb#x?S>efYfOIgo?h$t7- zJ7~R4)5gjKi3BLKMqY$)hN9`CXWs_j73rsS_q4|NQ4&;0$z+f~B>;*^Ym5wHpkOJJ zJijeelVqN)xvQ#fGrKJK)e4Z1`Vr3%Yuud-=yqjWW^ObZ81XKER3$<(W9MdP|J&Q% z`k@bfD5zLx861Xpmr#uhDR=ns^#Bn8r>0#nvFfPNH<9FtBC&U=z$TJo5x=|T?@gJ%?UcBel~Vk3EvSTWV$dPLpHH! z#p~a2`>nShZ5y-N3(AcUogumEvOBN3Yy#Mui#pWCfDo#Hux!tx&v-!)VP?N^tHj`$ zGszkVHinJBif2EK+T#wo>YD57>8;TeHfn?F4y4Yr=79$zNdV;TM}PP6xtnj?J8#*l z%t58Y){3A1M}OKp^e_N-eCykx-^sH=qOV9JTFak*3SdB0O*V@V4c2D&Uvcs3FI{-3 zYXt8Nj1YPT8$mC8_j|F&eoOb*Z{Js(@!(H>vJ5n>B(NZ4vs>=I{JSR|bMye(0z1SZ zaqof_NM^(s|KhLz_P&SLT=*Xsj?)C2P&h!9DU4r_H)_%9W6#qMI>VKL+fSd1Y zN*TW`{&lDS>2Cj#Iy}FX z{pw_KJjqnQ&OBMlEizRV!&?fvk9}oT8Pi2$);2n-qF$IwiOZuN%dI)4dk5WE)d$%I z)t;C<1kSE8cq9g82GLF`0IBjjY%jA48&ox(&}bgY#@3|)d1|Z!N8kk4%zUL_Rj5eR z5OfGq6ey8qh|FdKn+M97Bbu#6q5@f8WH$~vTY<<>5&}Pwb^n+{f8}%kh{+|W$(lTQp?Tat zVV>1vhd0hj4KYFeiNATidG2%Wue%MCvBby%!6K9Gmlcy)Q6hSBQ0rX#cIf`EdsV*o ze$uZPxci6KQ@1lkW?-~S!esh@Z;ho}TzB^>78uSH6o6V`mQK=`9f+7boBr8Pe)_S0 z*)MBp3;^{B>MK_mlS`P}1XTB5eRUhKQJ_+()Dx}4PB|G+V&fu6iCNK~{n3a1W=SY> zjY@Hj)UoXjs^-hjIr#PGg~}sT-Mj89fI3PmG5||lBW&8d5r9d1U!AYC%r6t>89r3? zKfd-KXP$Xxr`yT0JaO47OJK>7Z5CWOvo2q@=h8e|VR@X;vL>=_L_N!~k!6#4vqSQ5 z?9FggL&n*yQg@?Y#Q72~;N!rT5Rni>V~jCKR8c1OYy#N;5|M^-!$%u6%L@`=n{Ue8 z>bc%=t*MjRdrwq(JGhO$zGcJORo$5Zkt95q?$*P789hq#5Rp-Q$|*3@s4z?no~K<)48uHx3aKiHU=;|-e>AHND9V}OrIuW%U=N4r8MB7&qp*hK zbJ_JEHx&&t7gxYfa4cDau}f=3G?!3WsT{**dF=uCD1p>F_p{iW1^`xt-xc||LZM)T z$f6D4w0wN3>}BEu6*FsskM1TZTt6zm^)R=%t05A+5lf0!G@Q^HN zXZ-*|3px}=?Y>$d5>w2WUN8R|MB}f-@oM8tle-$EGyT{AMFp; z@3Hh%pZ+`DZ$K0;+kBzRU+2iurB?&Rk~6$rFpQ=Sqa04(=? z-2Yk6%%{eBu}>(j_|Qj}&P-1hx%l8oJ)x=UeD%HG{U6y^zIw=UC-$zo_CS*d@zHQ6 z#AQ!EuCZ)U4^pr-fkh+R{N{i8`|7G69-K8K48SNeqm_1A6R-N<`_XDT(dnCSUj41_ z?aw?QfiO5)l>oL=;{fuQ(0dHp#+W_AN+l&{Ywe|%UV6$Yr~K$gKN=q&4?d)ALgp#B z{Ps|OZOgisPc6av^=vPr(-0&|OHJ;aVHRI2 zl!w660AepBN~&tfrmpSWWHCy?%?BIy8?kd8%a-m;e{On?sAi2(bQn&gbg?|O8q>dY z0Kj}>4gs3_CY8hxDfSn0OTNHo@l7@*2Yj+{6}#3pGcVWckjGpjZ;kHr-F^?)BcU6u$-7*SZ(An#Yq_ zT81S->%m~7qF@r%%rJ#0>igELBHZZ_V2se#vEp0ZxxJ&?uV^wlQb!`RRMxTFS(V2Y z6Z>k&d>LRe!oavqhHo77XOX&02}2#@9nBlTs0geAg!uGEeuAJ`mX@@H&bsX0L3wm@ zY)L&}Mg?Rktuhpg1t*b3XoPl%Z>g)X%&Z6%$FQ!^xT@FL3}DDQH{a^|^D`litpBLt zOI5A4b8~YqdeMt6{qAJ|eDIW+5x+zvhk34^^vlV*KSmt%F?zg`?rWY4FL^38S}L(n zCa|P10%I&YTdiGv!$<%2zE6I7S-*2|HWq^yt!?fe>DL?g+xJ)g^&b~K^OSxqnKcVE z&vyTLR?Xp*V~F`dhyChzF8a!Ez3a|PF0V9+Zd#JZLwk4nG7$e)Fca*IY9RL{yeUm4>S#>Sg|@|=R!RAInP9+iRjfhVP$Kod+)vF zLw~bBXFgU=m6aLAgXkRjhkr12g`lE!@ENf+xsTouD}kU5aGzB*6v9m0 zvq`1X+}><_xxeN6K1>rlGniB65H{s}7_u-C`BX_?|Iz^fm@k^8BoG4*R2j_!UY0da zRV(#emqmjp2uy~dqJ|7a6SR(bTUDL_k(fR=L;4&csAEHvj#Q13$iDzpghYCk>c~*` zj7SiaMx3~b2MhZH^slb_8x_l$f3r1pGB@_BN?Z2>q?^-hW?X0(h%wH_I+E|^w9?Q` zqAM%^{JdS5;wNG7(<+SR?c6Z=n5%;@JNrOGyMgyZJ{f#Po|T=VXR`+k-4j9>)i8G! z{u5w8K`jtKZQ#sid+$NTq=BH0W}^?pCpO!5>y{{5ax_HASENLI(8N_r18dh?yQbVXDGyo@%BD1JmooOoqohCe+6u7LB`Zz z3}!dp_`NG9fNVewSZ~c1$nq19X-thlt5Eg&TQ=+iI0;bc1(n9c5idFo0-fFR;}8DD z{^+yXn$;?MU@k_^^1y29u*hbrMNcYk!9r9kH(H0B{2Ty9APgW?rdi!sM(&vrh!S8USUKyA<+u3W z7w0zqM73sQ!dbK)(LxBQ(}inFK8irL;UIoV2mRCyQYNTC6e8*3@ zVO&uY6M+$92uzMR(Jq6aBBNG(mHBKfC9)UAFxRiDfXFaqqC-L(W=g=mOf@5`%7_$5 zrQppbyCuX+``ue(wS@V#jn)fX;}G#hXJbSxnM=6U8rE(HjStv89X9~V+thl-k zH&(vMbXa42bBtH?`dff3RxPrY$dcixgFOG)pu3OD4^%QfRL*8XF;ZpopJ=r)iSB_6 zV!*D7PU$uY@c_fmB6iiBau!vHqxYQy7<<>Xszl`w1;zpp5oU&HLS{sjPNQ*y9}L7F zlTT%3xi+^~RhH~Qi^f2y??A!CFa`^($+lEX`nLp%f-peQt5Aef%hsTPA3S*HjbHlmsxSWs z?!NZ`Sjt=dSlb}E!NAea2Gxo)U-Ifte+GN)8LMEjObI|>m86ZhySJREA}}-)%%)al zvddq1%JLVT61&}Qze7wUYS}iHECmp1F{IHUBIe){IP5L2&+fTz{q?t0TeemlS59v^ z>lr7Z7>D>Rcie3Tm2*uOYGsxfdy5vg4>_i%xu^~0|ls2${s=ZW_RXoi&_w|V9+8-oxb~W7&CNyQyVcxRyS-IFGzJ7O#E5FeGqQS!ze}!m=>mvb%YV3s!9?= zO+@U8qH+GWhS?url+86(B7$d1*2@}GT#3pcG9IwOwp33pTKo9QAx3Q}lMS=ttCL$3 zlY>$u8fxYo=EWnSs>Gy{N+D(g_(x@L4`=rii$D*y;?13U09H=^6*`W^f#aICcr2wkusE2!Q`WONRhQBTJ1QGL>+iR zqAMGfv4Yx(#pnFbKSQjl^;yuD@X&oLKlPb?$%GgqamM-mzC8T=H=gp>@4x?|D}MUXzkl$So0gCnkK&X)pw?{) zhOTYTo=E{|e zjSVp>SP&g_U0D{-c-nEVeWi#*Hbj~zdLF~&zMyb2N(MUTs;WBs?6W`o;Say>eeavh zC#q0-qs^KkS!B%{`u%+yy{bdU1 z7aGIPr6h)(Kot@RtPl`GpP#i~D1{qr=n?198HF&5i5g-Co4}n!U~E?%9XV+Nld2M! zhsvh&4DzZ>iNuQp>IDJ_NyWw&#nvKQrT+TaE%!!U%I>sA<9OmD1(UOzBVv!mf+I31 z+Us5Med*lNnLDG|+7A@aMXtofD$vi$aPPn$!u*^(C-OIiY9nx{F-Ng+b>)eaDKO@u zE@eKFtkzv6S$YG6QCxZd2@C+a>QasZ%i!jFo6&4Uw7g>x2$%8lS z0Gn%IkP+*!X_XOE%{_&HOt5=U@4e>QOTUN2X-_g%}_d9EoAN1;9Iq2LMJ@SojU;f{IyVZde!&;3AASFz zMn3R0!zxfQtTm6;;p}(6otExV*B+Sz6j1?%ed1=0R1<#hd*6HAHP?Rol8f_+2G^bl z7UW^;EW3E?rlXcEIWlj=av&r_{z(qbta0jRK_47wAec0WWZHo zw6>=h*XG#x_>Y|b!px($L=Egn9Kj2`Q4kOk4g_Xk2r^IpJiq>_E$68c1o$uK0EWs{ zL;xEl3l&I&MiYsw7iXk;8tbcCjlE{)f>JQnN6|#E7)X_C0!SI6s-j7hNmYf(K#`!0 z1|*6^!W=~es6b?lidcwfU@~#Y5$&w7cWzB#ZZh>PbDOt%nPPrPyL}?JR#Z~N+Dge9 zRD)sC#(2*)F3$BkbDLI`gMEk&G7au`3Q~@?XPY<2{#{ZF@btWKq@jBhH}JErOV~V{zT)M(esk?8AWr z<{`7`AF{1lv(vE<`Lj@dJ&l=}nPtnCU2wq#00?A<@gNx@P+Ce|diY@npYl9>@B2&d znOlF)o$G=7$Cky+jURPT<9R0|&&e2*WqTj6f6-`0LBHFXUblA8ouhI<>o=4Suim=q z0iB(#JJStd5n1QB$O{{VY9GN$$Srz8_txdai_Ut>-~LtWn4{`YIWXG-pn?G~!9hWU z3|J`szTJjq^vSl*RSgZrl8NlF?hXKyw1S7g)nTK8At-}5DTZ2POio!9nqX^C5n*Cy zSXFt^lB3`F)}!C}*0_Gl%-s)MchwckPdY+2ufF;}zP>l?BB7Qu!P0|u^~~RRL%w3a zGSqz?G_x_gcn|SWElJcusS|@M+~LoAo&u)!MWcA=s*7*?r;i?Ib02GCP^cMz`$P?w zmsj6#{na-RuozgD7o`um7()m~$(Yquwe(f5J>;dY5?``&24G>Z3JEWOZH?N$x9i_d zEFb{B{FMt%JmJJu_utoO6ax*$D2TiwRl`Lw(uQF)N2+(Ho%2!Z2L$ZHx?hXyUlvl^o$M5$=W z;KZwIQgUZV6hxx%-SkctKm*tV#t@J>B11t;9T);O zHK|$?73*uiX=>4NzyG_>d*|EHn)H=-#t{*e7UV5x)RDfkv0YkY!G9Pv4Qy92UVw_( z=2S*%Wb@w{%8I2l7uc8ucqfR6Cn=UKTD<4tb6)s#KvB;A)|Wo_)6aeR?(bg0YgfBk z<)HnKIq#JM1x%p~&~0D(>cpToVO^~;811Xdiv1^#I*KA}#@gF@<$FJ{bWkD7DUb(h zri=`0@GCmd#96<@@jZ+Q0b=WG1L8kx5U<(2)}x3rh_`&&xYL9FMZWQKDh3-KWsaML(u^|2

`SWdVdov(*Z0hLQ*ljg9 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 self.skipWaiting()); +self.addEventListener("activate", (event) => event.waitUntil(self.clients.claim())); + +async function testoNotifica() { + try { + const sub = await self.registration.pushManager.getSubscription(); + if (!sub) return null; + const res = await fetch("/api/public/push-messaggio", { + method: "POST", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify({ endpoint: sub.endpoint }), + }); + if (!res.ok) return null; + return await res.json(); + } catch { + return null; + } +} + +self.addEventListener("push", (event) => { + event.waitUntil( + (async () => { + const dati = await testoNotifica(); + await self.registration.showNotification(dati?.title ?? "CrAPP · Turno palloni", { + body: dati?.body ?? "Controlla il turno palloni di oggi.", + icon: "/icon-192.png", + badge: "/icon-192.png", + tag: "turno-palloni", + }); + })(), + ); +}); + +self.addEventListener("notificationclick", (event) => { + event.notification.close(); + event.waitUntil( + self.clients.matchAll({ type: "window", includeUncontrolled: true }).then((clientList) => { + const aperto = clientList.find((c) => "focus" in c); + if (aperto) return aperto.focus(); + return self.clients.openWindow("/"); + }), + ); +}); \ No newline at end of file diff --git a/public/robots.txt b/public/robots.txt new file mode 100644 index 0000000..6018e70 --- /dev/null +++ b/public/robots.txt @@ -0,0 +1,14 @@ +User-agent: Googlebot +Allow: / + +User-agent: Bingbot +Allow: / + +User-agent: Twitterbot +Allow: / + +User-agent: facebookexternalhit +Allow: / + +User-agent: * +Allow: / diff --git a/src/assets/crap-logo.png.asset.json b/src/assets/crap-logo.png.asset.json new file mode 100644 index 0000000..16a395f --- /dev/null +++ b/src/assets/crap-logo.png.asset.json @@ -0,0 +1,11 @@ +{ + "version": 1, + "asset_id": "fa3ef67f-83f4-4bad-9244-f5bfbe4c3725", + "project_id": "8d07b0e4-6bd2-4a17-9dd2-bb2cf13f9f7c", + "url": "/__l5e/assets-v1/fa3ef67f-83f4-4bad-9244-f5bfbe4c3725/crap-logo.png", + "r2_key": "a/v1/8d07b0e4-6bd2-4a17-9dd2-bb2cf13f9f7c/fa3ef67f-83f4-4bad-9244-f5bfbe4c3725/crap-logo.png", + "original_filename": "crap-logo.png", + "size": 1172818, + "content_type": "image/png", + "created_at": "2026-07-31T11:46:53Z" +} diff --git a/src/components/crapp/Avatar.tsx b/src/components/crapp/Avatar.tsx new file mode 100644 index 0000000..a51370e --- /dev/null +++ b/src/components/crapp/Avatar.tsx @@ -0,0 +1,35 @@ +import { cn } from "@/lib/utils"; +import { useAvatar } from "@/lib/avatar-store"; + +export function Avatar({ + id, + fallback, + className, + alt, +}: { + id: string; + fallback: string; + className?: string; + alt?: string; +}) { + const src = useAvatar(id); + if (src) { + return ( + {alt + ); + } + return ( + + {fallback} + + ); +} diff --git a/src/components/crapp/BadgeDrawer.tsx b/src/components/crapp/BadgeDrawer.tsx new file mode 100644 index 0000000..e45f4b3 --- /dev/null +++ b/src/components/crapp/BadgeDrawer.tsx @@ -0,0 +1,152 @@ +import { useState, type ReactNode } from "react"; +import { cn } from "@/lib/utils"; +import type { BadgeDef, BadgeStato, Grado } from "@/lib/badges"; +import { gradoMeta, gradiOrdine, descrizioneSoglie } from "@/lib/badges"; +import { Barra } from "@/components/motion/Barra"; +import { + Drawer, + DrawerClose, + DrawerContent, + DrawerDescription, + DrawerFooter, + DrawerHeader, + DrawerTitle, + DrawerTrigger, +} from "@/components/ui/drawer"; + +function DettaglioBadge({ + def, + stato, +}: { + def: BadgeDef; + stato?: BadgeStato; +}) { + const Icon = def.icon; + const grado = stato?.grado ?? null; + const meta = grado ? gradoMeta[grado] : null; + const prossimo = stato?.prossimo ?? null; + + return ( +

+
+ + + +
+ {def.nome} + + {def.descrizione} + +
+
+ + {stato ? ( +
+
+

+ Stato attuale +

+ {grado ? ( + + {meta?.label} + + ) : ( + + In progresso + + )} +
+

+ {stato.valore} {def.unita} +

+ {stato.prossimaSoglia ? ( + <> + +

+ Mancano {stato.prossimaSoglia - stato.valore} {def.unita} per il{" "} + {gradoMeta[stato.prossimo as Grado].label.toLowerCase()} +

+ + ) : ( +

Hai raggiunto il livello massimo.

+ )} +
+ ) : null} + +
+

+ Soglie +

+
+ {gradiOrdine.map((g) => { + const gm = gradoMeta[g]; + const raggiunto = grado ? gradiOrdine.indexOf(grado) >= gradiOrdine.indexOf(g) : false; + return ( +
+

+ {gm.label} +

+

+ {def.soglie[g]} +

+

{def.unita}

+
+ ); + })} +
+
+ + {def.celebrazione ? ( +

+ “{def.celebrazione}” +

+ ) : null} +
+ ); +} + +/** Drawer cliccabile che mostra la descrizione e le soglie di un badge. */ +export function BadgeDrawer({ + def, + stato, + children, +}: { + def: BadgeDef; + stato?: BadgeStato; + children: ReactNode; +}) { + const [open, setOpen] = useState(false); + return ( + + {children} + + + {def.nome} + {def.descrizione} + + + + + + + + + + ); +} diff --git a/src/components/crapp/BottomNav.tsx b/src/components/crapp/BottomNav.tsx new file mode 100644 index 0000000..a1917e2 --- /dev/null +++ b/src/components/crapp/BottomNav.tsx @@ -0,0 +1,30 @@ +import { Link } from "@tanstack/react-router"; +import { CalendarDays, Home, Trophy, User, Users } from "lucide-react"; + +const items = [ + { to: "/", label: "Home", icon: Home }, + { to: "/calendario", label: "Calendario", icon: CalendarDays }, + { to: "/squadra", label: "Squadra", icon: Users }, + { to: "/classifica", label: "Classifica", icon: Trophy }, + { to: "/profilo", label: "Profilo", icon: User }, +] as const; + +export function BottomNav() { + return ( + + ); +} \ No newline at end of file diff --git a/src/components/crapp/CelebrazioneBadge.tsx b/src/components/crapp/CelebrazioneBadge.tsx new file mode 100644 index 0000000..0960d5a --- /dev/null +++ b/src/components/crapp/CelebrazioneBadge.tsx @@ -0,0 +1,79 @@ +import { useEffect } from "react"; +import { X } from "lucide-react"; +import { cn } from "@/lib/utils"; +import { useVotiSocial } from "@/lib/badge-social"; +import { useNotificheSmart } from "@/lib/notifiche-smart"; +import { useGiocatoreCorrente } from "@/lib/user-store"; +import { coriandoli, useMotoRidotto } from "@/lib/motion"; + +const toni: Record = { + badge: "ring-oro/50", + segreto: "ring-accent/60", + serie: "ring-accent/40", + squadra: "ring-info/50", + social: "ring-success/50", +}; + +/** Focus card celebrativa: compare una sola volta per traguardo. */ +export function CelebrazioneBadge() { + const io = useGiocatoreCorrente(); + const voti = useVotiSocial(); + const { notifica, restanti, chiudi } = useNotificheSmart(io, voti.data ?? []); + const ridotto = useMotoRidotto(); + const chiave = notifica?.id ?? notifica?.titolo ?? null; + const infermeria = notifica?.id === "segreto:s-infermeria"; + const ritardi = notifica?.id === "segreto:s-ritardi"; + + useEffect(() => { + if (!chiave) return; + void coriandoli(ridotto); + }, [chiave, ridotto]); + + if (!notifica) return null; + + return ( +
+
+
+ + {notifica.emoji} + +
+

+ {notifica.tono === "segreto" ? "Badge segreto sbloccato" : "Traguardo raggiunto"} +

+

{notifica.titolo}

+

{notifica.testo}

+
+ +
+ +
+
+ ); +} \ No newline at end of file diff --git a/src/components/crapp/CollezioneBadge.tsx b/src/components/crapp/CollezioneBadge.tsx new file mode 100644 index 0000000..9adb9d5 --- /dev/null +++ b/src/components/crapp/CollezioneBadge.tsx @@ -0,0 +1,249 @@ +import { useState, type ReactNode } from "react"; +import { cn } from "@/lib/utils"; +import type { Giocatore } from "@/lib/crapp-data"; +import { + collezioneBadge, + gradoMeta, + iconaSegreto as Lucchetto, + mancanoPer, + microcopyBadge, + prossimoTraguardo, + type BadgeStato, +} from "@/lib/badges"; +import { badgeSocialVinti, categorieSocial, type VotoSocial, type CategoriaSocial } from "@/lib/badge-social"; +import { Reveal } from "@/components/motion/Reveal"; +import { Barra } from "@/components/motion/Barra"; +import { Numero } from "@/components/motion/Numero"; +import { BadgeDrawer } from "@/components/crapp/BadgeDrawer"; +import { + Drawer, + DrawerClose, + DrawerContent, + DrawerDescription, + DrawerHeader, + DrawerTitle, + DrawerTrigger, +} from "@/components/ui/drawer"; + +function CardBadge({ b, opaco, indice = 0 }: { b: BadgeStato; opaco?: boolean; indice?: number }) { + const Icon = b.def.icon; + const meta = b.grado ? gradoMeta[b.grado] : null; + return ( + +
+ + {meta ? ( + {meta.label} + ) : null} +
+

{b.def.nome}

+

+ {b.valore} {b.def.unita} +

+ {b.prossimaSoglia ? ( + <> + +

{mancanoPer(b)}

+

{microcopyBadge(b)}

+ + ) : ( +

{microcopyBadge(b)}

+ )} +
+ ); +} + +function SocialDrawer({ + cat, + conteggio, + children, +}: { + cat: CategoriaSocial; + conteggio: number; + children: ReactNode; +}) { + const [open, setOpen] = useState(false); + return ( + + {children} + + + {cat.nome} + {cat.descrizione} + +
+
+ + {cat.emoji} + +
+ {cat.nome} + + {cat.descrizione} + +
+
+
+

Vinto

+

+ {conteggio}{" "} + + {conteggio === 1 ? "volta" : "volte"} + +

+
+
+
+ + + +
+
+
+ ); +} + +/** Sezione "Collezione badge": sbloccati, in progresso e segreti. */ +export function CollezioneBadge({ + g, + votiSocial = [], +}: { + g: Giocatore; + votiSocial?: VotoSocial[]; +}) { + const c = collezioneBadge(g); + const vicino = prossimoTraguardo(g); + const social = badgeSocialVinti(votiSocial, g.id); + const socialVinti = categorieSocial.filter((cat) => social[cat.id]); + const pct = Math.round((c.ottenuti / c.totali) * 100); + + return ( +
+
+
+
+

+ Collezione badge +

+

+ + /{c.totali} +

+
+

+ completata +

+
+ +
+ + {vicino ? ( +
+

+ Prossimo traguardo +

+

{vicino.def.nome}

+ +

+ {mancanoPer(vicino)} · {microcopyBadge(vicino)} +

+
+ ) : null} + + {c.sbloccati.length > 0 ? ( +
+

+ Sbloccati ({c.sbloccati.length}) +

+
+ {c.sbloccati.map((b, i) => ( + + + + ))} +
+
+ ) : null} + + {c.inProgresso.length > 0 ? ( +
+

+ In progresso ({c.inProgresso.length}) +

+
+ {c.inProgresso.map((b, i) => ( + + + + ))} +
+
+ ) : null} + + {socialVinti.length > 0 ? ( +
+

+ Votati dai compagni +

+
+ {socialVinti.map((cat) => ( + +
+

{cat.emoji}

+

{cat.nome}

+

+ Vinto {social[cat.id]} {social[cat.id] === 1 ? "volta" : "volte"} +

+
+
+ ))} +
+
+ ) : null} + +
+

+ Badge segreti +

+
+ {c.segreti.map((b) => { + const Icon = b.def.icon; + return ( + +
+ +

{b.def.nome}

+

+ {b.def.celebrazione ?? "Badge segreto sbloccato."} +

+
+
+ ); + })} + {Array.from({ length: c.nascosti }).map((_, i) => ( +
+ +

???

+

Badge segreto da scoprire

+
+ ))} +
+
+
+ ); +} \ No newline at end of file diff --git a/src/components/crapp/EventoCard.tsx b/src/components/crapp/EventoCard.tsx new file mode 100644 index 0000000..f583865 --- /dev/null +++ b/src/components/crapp/EventoCard.tsx @@ -0,0 +1,150 @@ +import { MapPin, Clock, Users, Cake, ArrowRight } from "lucide-react"; +import { Link } from "@tanstack/react-router"; +import { cn } from "@/lib/utils"; +import { formatData, giocatori, statoMeta, type Stato } from "@/lib/crapp-data"; +import type { Evento } from "@/lib/eventi"; +import { Barra } from "@/components/motion/Barra"; +import { usePresenzeEvento, useSalvaPresenza } from "@/lib/presenze"; +import { useGiocatoreCorrente } from "@/lib/user-store"; + +const tipoMeta = { + partita: { label: "Partita", className: "bg-accent text-accent-foreground" }, + allenamento: { label: "Allenamento", className: "bg-training text-training-foreground" }, + evento: { label: "Eventi", className: "bg-warning text-warning-foreground" }, + compleanno: { label: "Compleanno", className: "bg-success text-success-foreground" }, +} as const; + +const stati: Stato[] = ["presente", "forse", "ritardo", "assente", "infortunato"]; + +export function linkPerEvento(e: Evento) { + if (e.tipo === "partita") { + return { to: "/partita/$id", params: { id: e.id }, label: "Apri partita" }; + } + if (e.tipo === "allenamento") { + return { to: "/allenamento/$id", params: { id: e.id }, label: "Apri allenamento" }; + } + return undefined; +} + +export function EventoCard({ + evento, + linkTo, +}: { + evento: Evento; + linkTo?: { to: string; params: Record; label: string }; +}) { + const { risposte } = usePresenzeEvento(evento.id); + const salva = useSalvaPresenza(); + const io = useGiocatoreCorrente(); + const stato = io ? risposte[io.id] : undefined; + const presentiVeri = giocatori.filter( + (g) => risposte[g.id] === "presente" || risposte[g.id] === "ritardo", + ).length; + const tipo = + evento.tipo === "partita" && !evento.campionato + ? { label: "Amichevole", className: "bg-accent/70 text-accent-foreground" } + : tipoMeta[evento.tipo]; + const totale = giocatori.length; + const perc = Math.round((presentiVeri / totale) * 100); + const isCompleanno = evento.tipo === "compleanno"; + + if (isCompleanno) { + return ( +
+
+ +
+
+

{evento.titolo}

+

{evento.luogo}

+
+
+

{evento.data.slice(8, 10)}

+

+ {formatData(evento.data).split(" ")[2]?.slice(0, 3)} +

+
+
+ ); + } + + return ( +
+
+
+ + {tipo.label} + +

{evento.titolo}

+
+
+

{evento.data.slice(8, 10)}

+

+ {formatData(evento.data).split(" ")[2]?.slice(0, 3)} +

+
+
+ + {linkTo && ( +
+ + {linkTo.label} + +
+ )} + +
+ + {evento.ora} + + + + {evento.luogo} + + + {presentiVeri}/{totale} + +
+ + + + {io ? ( +
+ {stati.map((s) => { + const meta = statoMeta[s]; + const attivo = stato === s; + return ( + + ); + })} +
+ ) : null} +
+ ); +} \ No newline at end of file diff --git a/src/components/crapp/Pagelle.tsx b/src/components/crapp/Pagelle.tsx new file mode 100644 index 0000000..5ebfe43 --- /dev/null +++ b/src/components/crapp/Pagelle.tsx @@ -0,0 +1,122 @@ +import { useState } from "react"; +import { ClipboardCheck, Lock } from "lucide-react"; +import { toast } from "sonner"; +import { cn } from "@/lib/utils"; +import { Avatar } from "@/components/crapp/Avatar"; +import { giocatori } from "@/lib/crapp-data"; +import { useGiocatoreCorrente } from "@/lib/user-store"; +import { mieiVoti, pagellePartita, usePagelle, useVotaPagella } from "@/lib/pagelle"; + +const voti = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; + +/** Pagelle di fine partita: voto anonimo 1-10 a ciascun compagno. */ +export function Pagelle({ + matchId, + convocati = giocatori, + chiuse = false, +}: { + matchId: string; + convocati?: typeof giocatori; + chiuse?: boolean; +}) { + const io = useGiocatoreCorrente(); + const { voti: tutti, isPending } = usePagelle(); + const vota = useVotaPagella(); + const [apertoPer, setApertoPer] = useState(null); + + const medie = pagellePartita(tutti, matchId); + const miei = io ? mieiVoti(tutti, matchId, io.id) : {}; + const daVotare = convocati.filter((g) => g.id !== io?.id); + const fatti = daVotare.filter((g) => miei[g.id] !== undefined).length; + + async function invia(votatoId: string, voto: number) { + if (!io) return; + setApertoPer(null); + try { + await vota.mutateAsync({ match_id: matchId, votante_id: io.id, votato_id: votatoId, voto }); + toast.success("Voto registrato (resta anonimo)"); + } catch { + toast.error("Voto non riuscito, riprova"); + } + } + + return ( +
+
+

+ Pagelle anonime +

+ + {chiuse ? "Votazioni chiuse" : `${fatti}/${daVotare.length} votati`} + +
+

+ Dai un voto da 1 a 10 ai compagni: nessuno vedrà chi ha votato cosa, solo la media. +

+ + {isPending ? ( +

Carico le pagelle…

+ ) : ( +
+ {convocati.map((g) => { + const media = medie[g.id]; + const mio = miei[g.id]; + const sonoIo = g.id === io?.id; + const aperto = apertoPer === g.id; + return ( +
+
+ + + {g.nome} + + {media ? `Media ${media.media} · ${media.voti} voti` : "Nessun voto"} + + + {sonoIo ? ( + + Sei tu + + ) : chiuse ? ( + + ) : ( + + )} +
+ {aperto && !chiuse ? ( +
+ {voti.map((v) => ( + + ))} +
+ ) : null} +
+ ); + })} +
+ )} +
+ ); +} diff --git a/src/components/crapp/PromemoriaPalloni.tsx b/src/components/crapp/PromemoriaPalloni.tsx new file mode 100644 index 0000000..7cb2e4c --- /dev/null +++ b/src/components/crapp/PromemoriaPalloni.tsx @@ -0,0 +1,62 @@ +import { AlertCircle } from "lucide-react"; +import { formatData } from "@/lib/crapp-data"; +import { + eventiPalloni, + eventoPrecedente, + eventoSuccessivo, + oggiISO, +} from "@/lib/palloni-core"; +import { useTurniPalloni } from "@/lib/palloni"; +import { useEventi } from "@/lib/eventi"; +import { useGiocatoreCorrente } from "@/lib/user-store"; + +/** Avvisi per chi è di turno: prendere i palloni oggi, o riportarli oggi. */ +export function PromemoriaPalloni() { + const io = useGiocatoreCorrente(); + const { turni } = useTurniPalloni(); + const { eventi } = useEventi(); + if (!io) return null; + + const lista = eventiPalloni(eventi); + + const oggi = oggiISO(); + const messaggi: string[] = []; + + for (const evento of lista) { + if (evento.data !== oggi) continue; + + if (turni[evento.id] === io.id) { + const dopo = eventoSuccessivo(eventi, evento.id); + messaggi.push( + `Oggi tocca a te prendere i palloni a fine ${evento.tipo === "partita" ? "partita" : "allenamento"}` + + (dopo ? ` e riportarli il ${formatData(dopo.data)}.` : "."), + ); + } + + const prima = eventoPrecedente(eventi, evento.id); + if (prima && turni[prima.id] === io.id) { + messaggi.push("Ricordati di portare i palloni con te oggi: li hai presi tu la volta scorsa."); + } + } + + if (messaggi.length === 0) { + const prossimo = lista.find((e) => e.data >= oggi && turni[e.id] === io.id); + if (!prossimo) return null; + messaggi.push( + `Sei incaricato dei palloni per ${prossimo.titolo} (${formatData(prossimo.data)}).`, + ); + } + + return ( +
+

+ Turno palloni +

+ {messaggi.map((m) => ( +

+ {m} +

+ ))} +
+ ); +} \ No newline at end of file diff --git a/src/components/crapp/RosaPresenze.tsx b/src/components/crapp/RosaPresenze.tsx new file mode 100644 index 0000000..8836039 --- /dev/null +++ b/src/components/crapp/RosaPresenze.tsx @@ -0,0 +1,187 @@ +import { useState } from "react"; +import { BellRing, HelpCircle, Loader2 } from "lucide-react"; +import { toast } from "sonner"; +import { cn } from "@/lib/utils"; +import { Avatar } from "@/components/crapp/Avatar"; +import { Barra } from "@/components/motion/Barra"; +import { giocatori, isAdmin, statoMeta, type Stato } from "@/lib/crapp-data"; +import { usePresenzeEvento, useSalvaPresenza } from "@/lib/presenze"; +import { useGiocatoreCorrente } from "@/lib/user-store"; + +const ordine: Stato[] = ["presente", "ritardo", "forse", "infortunato", "assente"]; + +export function RosaPresenze({ eventoId }: { eventoId: string }) { + const { risposte, isPending } = usePresenzeEvento(eventoId); + const salva = useSalvaPresenza(); + const io = useGiocatoreCorrente(); + const [sollecito, setSollecito] = useState(false); + + const mancanti = giocatori.filter((g) => !risposte[g.id]); + const risposteN = giocatori.length - mancanti.length; + const perc = Math.round((risposteN / giocatori.length) * 100); + const daSollecitare = mancanti.length + giocatori.filter((g) => risposte[g.id] === "forse").length; + + async function sollecita() { + setSollecito(true); + try { + const res = await fetch("/api/public/sollecita-presenze", { + method: "POST", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify({ eventoId, da: io?.nome }), + }); + if (!res.ok) throw new Error(); + const dati = (await res.json()) as { inviate: number; destinatari: number }; + toast.success( + dati.inviate > 0 + ? `Sollecito inviato a ${dati.inviate} giocatori` + : `Nessuna notifica attiva tra i ${dati.destinatari} da sollecitare`, + ); + } catch { + toast.error("Non sono riuscito a inviare il sollecito"); + } finally { + setSollecito(false); + } + } + + return ( +
+
+
+

+ Hanno risposto {risposteN}/{giocatori.length} +

+ {perc}% +
+ + +
+ {ordine.map((s) => { + const n = giocatori.filter((g) => risposte[g.id] === s).length; + return ( + 0 ? statoMeta[s].className : "bg-secondary text-muted-foreground", + )} + > + {statoMeta[s].emoji} {n} + + ); + })} + + ❔ {mancanti.length} da rispondere + +
+ + {io ? ( +
+

+ La tua risposta +

+
+ {ordine.map((s) => { + const attivo = risposte[io.id] === s; + return ( + + ); + })} +
+
+ ) : null} + + {io && isAdmin(io.id) ? ( + + ) : null} +
+ + {isPending ? ( +

Carico le risposte…

+ ) : null} + + {ordine.map((s) => { + const lista = giocatori.filter((g) => risposte[g.id] === s); + if (lista.length === 0) return null; + return ( + + ); + })} + + {mancanti.length > 0 ? ( + + ) : null} +
+ ); +} + +function Gruppo({ + titolo, + n, + lista, + attenzione, +}: { + titolo: string; + n: number; + lista: typeof giocatori; + attenzione?: boolean; +}) { + return ( +
+

+ {titolo} · {n} + {attenzione ? : null} +

+
+ {lista.map((g) => ( +
+ + {g.nome} + {g.ruolo} +
+ ))} +
+
+ ); +} diff --git a/src/components/crapp/ScoutEntry.tsx b/src/components/crapp/ScoutEntry.tsx new file mode 100644 index 0000000..d3ef5c1 --- /dev/null +++ b/src/components/crapp/ScoutEntry.tsx @@ -0,0 +1,60 @@ +import { Link } from "@tanstack/react-router"; +import { ChevronRight, Lock, Radio } from "lucide-react"; +import { cn } from "@/lib/utils"; +import { sessioneScaduta, usePartitaDiOggi, useSessioneScout } from "@/lib/scout-live"; +import { useGiocatoreCorrente } from "@/lib/user-store"; +import { isAdmin } from "@/lib/crapp-data"; + +/** Accesso allo scout live: attivo solo il giorno della partita e se nessun altro lo sta usando. */ +export function ScoutEntry({ variante = "grande" }: { variante?: "grande" | "compatto" }) { + const { pronto, partita } = usePartitaDiOggi(); + const io = useGiocatoreCorrente(); + const { data: sessione } = useSessioneScout(partita?.id ?? null); + + // Strumento tecnico: solo i referenti/allenatori scoutizzano la partita. + const abilitato = !!io && isAdmin(io.id); + + const attiva = sessione && !sessioneScaduta(sessione) ? sessione : null; + const occupato = !!attiva && attiva.giocatore_id !== io?.id; + const disponibile = abilitato && pronto && !!partita && !occupato; + + const titolo = !abilitato ? "Scout live" : !partita ? "Scout live non attivo" : occupato ? "Scout occupato" : "Scout live"; + const sottotitolo = !abilitato ? "Riservato ad allenatori e referenti" : !partita + ? "Si attiva il giorno della partita" + : occupato + ? `In uso da ${attiva!.giocatore_nome}` + : "Segna punti, ace e muri in tempo reale"; + + const contenuto = ( + <> + {occupato ? : } + + {titolo} + {sottotitolo} + + {disponibile ? : null} + + ); + + const classi = cn( + "flex items-center gap-3 rounded-3xl p-4 shadow-card", + variante === "compatto" && "gap-2 rounded-2xl p-3", + disponibile + ? "bg-accent-grad text-accent-foreground shadow-pop" + : "bg-card text-muted-foreground", + ); + + if (!disponibile) { + return ( +
+ {contenuto} +
+ ); + } + + return ( + + {contenuto} + + ); +} diff --git a/src/components/crapp/SerieCard.tsx b/src/components/crapp/SerieCard.tsx new file mode 100644 index 0000000..92bde87 --- /dev/null +++ b/src/components/crapp/SerieCard.tsx @@ -0,0 +1,77 @@ +import { Flame } from "lucide-react"; +import { cn } from "@/lib/utils"; +import type { Giocatore } from "@/lib/crapp-data"; +import { serieGiocatore, serieMigliore } from "@/lib/serie"; +import { Barra } from "@/components/motion/Barra"; +import { Reveal } from "@/components/motion/Reveal"; + +/** Griglia completa delle serie di presenza (profilo). */ +export function SerieGriglia({ g }: { g: Giocatore }) { + const serie = serieGiocatore(g); + return ( +
+ {serie.map((s, i) => { + const Icon = s.def.icon; + const attiva = s.valore > 0; + return ( + +
+ + + +
+

{s.def.label}

+

{s.def.descrizione}

+
+ + + {s.valore} + +
+ +

+ {s.prossimo ? `${s.valore}/${s.prossimo} · ` : ""} + {s.messaggio} +

+
+ ); + })} +
+ ); +} + +/** Riepilogo compatto per la home. */ +export function SerieHome({ g }: { g: Giocatore }) { + const top = serieMigliore(g); + const Icon = top.def.icon; + return ( +
+
+ + + +
+

+ Serie {top.def.label.toLowerCase()}: {top.valore} +

+

{top.messaggio}

+
+
+
+ {serieGiocatore(g).map((s) => ( +
+

{s.valore}

+

+ {s.def.label} +

+
+ ))} +
+
+ ); +} \ No newline at end of file diff --git a/src/components/crapp/SondaggioCacche.tsx b/src/components/crapp/SondaggioCacche.tsx new file mode 100644 index 0000000..40cb9b1 --- /dev/null +++ b/src/components/crapp/SondaggioCacche.tsx @@ -0,0 +1,78 @@ +import { toast } from "sonner"; +import { cn } from "@/lib/utils"; +import { giocatori } from "@/lib/crapp-data"; +import { useGiocatoreCorrente } from "@/lib/user-store"; +import { mediaPartita, useCacche, useSalvaCacche } from "@/lib/cacche"; + +const opzioni = [0, 1, 2, 3, 4, 5]; + +/** Sondaggio goliardico pre-partita: quante cacche prima del fischio d'inizio. */ +export function SondaggioCacche({ eventoId }: { eventoId: string }) { + const io = useGiocatoreCorrente(); + const { righe } = useCacche(); + const salva = useSalvaCacche(); + + const dellaPartita = righe.filter((r) => r.evento_id === eventoId); + const mia = dellaPartita.find((r) => r.giocatore_id === io?.id); + const media = mediaPartita(righe, eventoId); + const classifica = [...dellaPartita] + .sort((a, b) => b.quantita - a.quantita) + .slice(0, 3) + .map((r) => ({ ...r, nome: giocatori.find((g) => g.id === r.giocatore_id)?.nome ?? "—" })); + + async function rispondi(quantita: number) { + if (!io) return; + try { + await salva.mutateAsync({ evento_id: eventoId, giocatore_id: io.id, quantita }); + toast.success("Risposta registrata 💩"); + } catch { + toast.error("Non sono riuscito a salvare la risposta"); + } + } + + return ( +
+
+

+ 💩 Sondaggio pre-partita +

+ + {dellaPartita.length} risposte + +
+

+ Quante cacche hai fatto prima di questa partita? Dato scientifico fondamentale. +

+ +
+ {opzioni.map((n) => ( + + ))} +
+ +
+ + Media squadra {media} + + {classifica.map((r, i) => ( + + {i === 0 ? "🥇" : i === 1 ? "🥈" : "🥉"} {r.nome} · {r.quantita} + + ))} +
+
+ ); +} diff --git a/src/components/crapp/TurnoPalloni.tsx b/src/components/crapp/TurnoPalloni.tsx new file mode 100644 index 0000000..e0a299e --- /dev/null +++ b/src/components/crapp/TurnoPalloni.tsx @@ -0,0 +1,81 @@ +import { useState } from "react"; +import { Check, CircleDot, Loader2, Pencil } from "lucide-react"; +import { toast } from "sonner"; +import { cn } from "@/lib/utils"; +import { Avatar } from "@/components/crapp/Avatar"; +import { giocatori } from "@/lib/crapp-data"; +import { useAssegnaTurno, useTurniPalloni } from "@/lib/palloni"; +import { useGiocatoreCorrente } from "@/lib/user-store"; + +export function TurnoPalloni({ eventoId }: { eventoId: string }) { + const [aperto, setAperto] = useState(false); + const { salvati, turni, isPending } = useTurniPalloni(); + const assegna = useAssegnaTurno(); + const io = useGiocatoreCorrente(); + + const id = turni[eventoId]; + const proposto = !salvati[eventoId]; + const giocatore = giocatori.find((g) => g.id === id); + + function scegli(giocatoreId: string) { + setAperto(false); + assegna.mutate( + { eventoId, giocatoreId, da: io?.nome ?? null }, + { + onSuccess: () => toast.success("Turno palloni aggiornato"), + onError: () => toast.error("Non sono riuscito a salvare il turno"), + }, + ); + } + + return ( +
+ + + {aperto ? ( +
+ {giocatori.map((g) => ( + + ))} +
+ ) : null} +
+ ); +} \ No newline at end of file diff --git a/src/components/crapp/VotazioneMvp.tsx b/src/components/crapp/VotazioneMvp.tsx new file mode 100644 index 0000000..a2ab299 --- /dev/null +++ b/src/components/crapp/VotazioneMvp.tsx @@ -0,0 +1,100 @@ +import { useState } from "react"; +import { Crown, Vote } from "lucide-react"; +import { toast } from "sonner"; +import { cn } from "@/lib/utils"; +import { giocatori } from "@/lib/crapp-data"; +import { useGiocatoreCorrente } from "@/lib/user-store"; +import { conteggioPartita, mioVoto, useVotaMvp, useVotiMvp, type VotoMvp } from "@/lib/mvp-voti"; + +/** Pannello di votazione MVP di una partita: un voto a testa, modificabile. */ +export function VotazioneMvp({ matchId }: { matchId: string }) { + const io = useGiocatoreCorrente(); + const voti = useVotiMvp(); + const vota = useVotaMvp(); + const [aperto, setAperto] = useState(false); + + const tutti: VotoMvp[] = voti.data ?? []; + const conteggio = conteggioPartita(tutti, matchId); + const mio = io ? mioVoto(tutti, matchId, io.id) : null; + const totale = conteggio.reduce((s, c) => s + c.voti, 0); + const testa = conteggio[0]; + const pareggio = conteggio.length > 1 && conteggio[1]!.voti === testa?.voti; + + async function invia(id: string, nome: string) { + if (!io) return; + try { + await vota.mutateAsync({ + match_id: matchId, + votante_id: io.id, + votato_id: id, + votato_nome: nome, + }); + setAperto(false); + toast.success(`Voto MVP registrato: ${nome}`); + } catch { + toast.error("Voto non riuscito, riprova"); + } + } + + return ( +
+
+

+ Voto MVP · {totale} {totale === 1 ? "voto" : "voti"} +

+ +
+ +

+ {testa && !pareggio ? ( + + {testa.nome} ({testa.voti}) + + ) : ( + + {totale === 0 ? "Nessun voto: MVP da eleggere" : "Parità: servono altri voti"} + + )} +

+ {mio ? ( +

Hai votato {mio.votato_nome}

+ ) : null} + + {aperto ? ( +
+ {giocatori.map((g) => ( + + ))} +
+ ) : conteggio.length > 0 ? ( +
+ {conteggio.map((c) => ( + + {c.nome} · {c.voti} + + ))} +
+ ) : null} +
+ ); +} \ No newline at end of file diff --git a/src/components/crapp/VotoSocial.tsx b/src/components/crapp/VotoSocial.tsx new file mode 100644 index 0000000..8ccbf64 --- /dev/null +++ b/src/components/crapp/VotoSocial.tsx @@ -0,0 +1,140 @@ +import { useState } from "react"; +import { Check, Crown, Sparkles } from "lucide-react"; +import { toast } from "sonner"; +import { cn } from "@/lib/utils"; +import { giocatori } from "@/lib/crapp-data"; +import { useGiocatoreCorrente } from "@/lib/user-store"; +import { + categorieSocial, + conteggioCategoria, + mioVotoSocial, + useVotaSocial, + useVotiSocial, + vincitoreCategoria, +} from "@/lib/badge-social"; + +/** Voto social post-partita: un compagno per categoria, veloce da mobile. */ +export function VotoSocial({ matchId }: { matchId: string }) { + const io = useGiocatoreCorrente(); + const voti = useVotiSocial(); + const vota = useVotaSocial(); + const [aperta, setAperta] = useState(null); + + const tutti = voti.data ?? []; + const fatti = io + ? categorieSocial.filter((c) => mioVotoSocial(tutti, matchId, c.id, io.id)).length + : 0; + + async function invia(categoria: string, id: string, nome: string) { + if (!io) return; + if (id === io.id) { + toast.error("Non puoi votare te stesso"); + return; + } + try { + await vota.mutateAsync({ + match_id: matchId, + categoria, + votante_id: io.id, + votato_id: id, + votato_nome: nome, + }); + setAperta(null); + toast.success(`Voto registrato: ${nome}`); + } catch { + toast.error("Voto non riuscito, riprova"); + } + } + + return ( +
+
+ + + Hai votato {fatti}/{categorieSocial.length} categorie · un solo voto per categoria + +
+ + {categorieSocial.map((cat) => { + const Icon = cat.icon; + const mio = io ? mioVotoSocial(tutti, matchId, cat.id, io.id) : null; + const vincitore = vincitoreCategoria(tutti, matchId, cat.id); + const conteggio = conteggioCategoria(tutti, matchId, cat.id); + const totale = conteggio.reduce((s, c) => s + c.voti, 0); + const isOpen = aperta === cat.id; + + return ( +
+ + + {isOpen ? ( +
+ {giocatori + .filter((g) => g.id !== io?.id) + .map((g) => ( + + ))} +
+ ) : ( +
+ {totale === 0 ? ( +

+ Nessun voto ancora: apri e scegli un compagno. +

+ ) : vincitore ? ( +

+ + + {vincitore.nome} · {vincitore.voti}{" "} + {vincitore.voti === 1 ? "voto" : "voti"} +

+ ) : ( +

+ Parità con {totale} voti: servono altri voti per assegnare il badge. +

+ )} +
+ )} +
+ ); + })} +
+ ); +} \ No newline at end of file diff --git a/src/components/crapp/ui-bits.tsx b/src/components/crapp/ui-bits.tsx new file mode 100644 index 0000000..c55d517 --- /dev/null +++ b/src/components/crapp/ui-bits.tsx @@ -0,0 +1,90 @@ +import type { ReactNode } from "react"; +import { cn } from "@/lib/utils"; +import { statoMeta, type Stato } from "@/lib/crapp-data"; +import { Reveal } from "@/components/motion/Reveal"; +import { Numero } from "@/components/motion/Numero"; + +export function TeamLogo({ className }: { className?: string }) { + return ( + CRAP Volley + ); +} + +export function PageHeader({ titolo, sottotitolo }: { titolo: string; sottotitolo?: string }) { + return ( +
+
+
+

{titolo}

+ {sottotitolo ? ( +

{sottotitolo}

+ ) : null} +
+ +
+
+ ); +} + +export function Section({ + titolo, + azione, + children, + indice = 0, +}: { + titolo: string; + azione?: ReactNode; + children: ReactNode; + indice?: number; +}) { + return ( + +
+

{titolo}

+ {azione} +
+ {children} +
+ ); +} + +export function StatoBadge({ stato, className }: { stato: Stato; className?: string }) { + const meta = statoMeta[stato]; + return ( + +{meta.label} + + ); +} + +export function StatTile({ + valore, + label, + hint, +}: { + valore: ReactNode; + label: string; + hint?: string; +}) { + return ( +
+

+ {typeof valore === "number" ? : valore} +

+

+ {label} +

+ {hint ?

{hint}

: null} +
+ ); +} \ No newline at end of file diff --git a/src/components/motion/Barra.tsx b/src/components/motion/Barra.tsx new file mode 100644 index 0000000..082f20e --- /dev/null +++ b/src/components/motion/Barra.tsx @@ -0,0 +1,25 @@ +import { cn } from "@/lib/utils"; +import { useRiempimento } from "@/lib/motion"; + +/** Barra di avanzamento che si riempie in ~700 ms all'apertura. */ +export function Barra({ + percentuale, + className, + trackClassName, + altezza = "h-2", +}: { + percentuale: number; + className?: string; + trackClassName?: string; + altezza?: string; +}) { + const larghezza = useRiempimento(Math.max(0, Math.min(100, Math.round(percentuale)))); + return ( +
+
+
+ ); +} \ No newline at end of file diff --git a/src/components/motion/Numero.tsx b/src/components/motion/Numero.tsx new file mode 100644 index 0000000..aed09bb --- /dev/null +++ b/src/components/motion/Numero.tsx @@ -0,0 +1,20 @@ +import { useConteggio } from "@/lib/motion"; + +/** Contatore animato per statistiche e percentuali. */ +export function Numero({ + valore, + durata = 700, + suffisso = "", +}: { + valore: number; + durata?: number; + suffisso?: string; +}) { + const n = useConteggio(valore, durata); + return ( + + {n} + {suffisso} + + ); +} \ No newline at end of file diff --git a/src/components/motion/Reveal.tsx b/src/components/motion/Reveal.tsx new file mode 100644 index 0000000..47d2211 --- /dev/null +++ b/src/components/motion/Reveal.tsx @@ -0,0 +1,29 @@ +import type { CSSProperties, ReactNode } from "react"; +import { cn } from "@/lib/utils"; + +/** + * Comparsa graduale con leggero slide dal basso (~300 ms). + * `indice` sfalsa l'animazione tra elementi vicini. + */ +export function Reveal({ + children, + indice = 0, + className, + style, + as: Tag = "div", +}: { + children: ReactNode; + indice?: number; + className?: string; + style?: CSSProperties; + as?: "div" | "section" | "li" | "article"; +}) { + return ( + + {children} + + ); +} \ No newline at end of file diff --git a/src/components/ui/accordion.tsx b/src/components/ui/accordion.tsx new file mode 100644 index 0000000..16ee900 --- /dev/null +++ b/src/components/ui/accordion.tsx @@ -0,0 +1,51 @@ +import * as React from "react"; +import * as AccordionPrimitive from "@radix-ui/react-accordion"; +import { ChevronDown } from "lucide-react"; + +import { cn } from "@/lib/utils"; + +const Accordion = AccordionPrimitive.Root; + +const AccordionItem = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AccordionItem.displayName = "AccordionItem"; + +const AccordionTrigger = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, children, ...props }, ref) => ( + + svg]:rotate-180", + className, + )} + {...props} + > + {children} + + + +)); +AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName; + +const AccordionContent = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, children, ...props }, ref) => ( + +
{children}
+
+)); +AccordionContent.displayName = AccordionPrimitive.Content.displayName; + +export { Accordion, AccordionItem, AccordionTrigger, AccordionContent }; diff --git a/src/components/ui/alert-dialog.tsx b/src/components/ui/alert-dialog.tsx new file mode 100644 index 0000000..072a665 --- /dev/null +++ b/src/components/ui/alert-dialog.tsx @@ -0,0 +1,115 @@ +import * as React from "react"; +import * as AlertDialogPrimitive from "@radix-ui/react-alert-dialog"; + +import { cn } from "@/lib/utils"; +import { buttonVariants } from "@/components/ui/button"; + +const AlertDialog = AlertDialogPrimitive.Root; + +const AlertDialogTrigger = AlertDialogPrimitive.Trigger; + +const AlertDialogPortal = AlertDialogPrimitive.Portal; + +const AlertDialogOverlay = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName; + +const AlertDialogContent = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + + + + +)); +AlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName; + +const AlertDialogHeader = ({ className, ...props }: React.HTMLAttributes) => ( +
+); +AlertDialogHeader.displayName = "AlertDialogHeader"; + +const AlertDialogFooter = ({ className, ...props }: React.HTMLAttributes) => ( +
+); +AlertDialogFooter.displayName = "AlertDialogFooter"; + +const AlertDialogTitle = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName; + +const AlertDialogDescription = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName; + +const AlertDialogAction = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName; + +const AlertDialogCancel = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName; + +export { + AlertDialog, + AlertDialogPortal, + AlertDialogOverlay, + AlertDialogTrigger, + AlertDialogContent, + AlertDialogHeader, + AlertDialogFooter, + AlertDialogTitle, + AlertDialogDescription, + AlertDialogAction, + AlertDialogCancel, +}; diff --git a/src/components/ui/alert.tsx b/src/components/ui/alert.tsx new file mode 100644 index 0000000..cd0a062 --- /dev/null +++ b/src/components/ui/alert.tsx @@ -0,0 +1,49 @@ +import * as React from "react"; +import { cva, type VariantProps } from "class-variance-authority"; + +import { cn } from "@/lib/utils"; + +const alertVariants = cva( + "relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7", + { + variants: { + variant: { + default: "bg-background text-foreground", + destructive: + "border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive", + }, + }, + defaultVariants: { + variant: "default", + }, + }, +); + +const Alert = React.forwardRef< + HTMLDivElement, + React.HTMLAttributes & VariantProps +>(({ className, variant, ...props }, ref) => ( +
+)); +Alert.displayName = "Alert"; + +const AlertTitle = React.forwardRef>( + ({ className, ...props }, ref) => ( +
+ ), +); +AlertTitle.displayName = "AlertTitle"; + +const AlertDescription = React.forwardRef< + HTMLParagraphElement, + React.HTMLAttributes +>(({ className, ...props }, ref) => ( +
+)); +AlertDescription.displayName = "AlertDescription"; + +export { Alert, AlertTitle, AlertDescription }; diff --git a/src/components/ui/aspect-ratio.tsx b/src/components/ui/aspect-ratio.tsx new file mode 100644 index 0000000..c9e6f4b --- /dev/null +++ b/src/components/ui/aspect-ratio.tsx @@ -0,0 +1,5 @@ +import * as AspectRatioPrimitive from "@radix-ui/react-aspect-ratio"; + +const AspectRatio = AspectRatioPrimitive.Root; + +export { AspectRatio }; diff --git a/src/components/ui/avatar.tsx b/src/components/ui/avatar.tsx new file mode 100644 index 0000000..7904926 --- /dev/null +++ b/src/components/ui/avatar.tsx @@ -0,0 +1,47 @@ +"use client"; + +import * as React from "react"; +import * as AvatarPrimitive from "@radix-ui/react-avatar"; + +import { cn } from "@/lib/utils"; + +const Avatar = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +Avatar.displayName = AvatarPrimitive.Root.displayName; + +const AvatarImage = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AvatarImage.displayName = AvatarPrimitive.Image.displayName; + +const AvatarFallback = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName; + +export { Avatar, AvatarImage, AvatarFallback }; diff --git a/src/components/ui/badge.tsx b/src/components/ui/badge.tsx new file mode 100644 index 0000000..3aabd17 --- /dev/null +++ b/src/components/ui/badge.tsx @@ -0,0 +1,32 @@ +import * as React from "react"; +import { cva, type VariantProps } from "class-variance-authority"; + +import { cn } from "@/lib/utils"; + +const badgeVariants = cva( + "inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2", + { + variants: { + variant: { + default: "border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80", + secondary: + "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80", + destructive: + "border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80", + outline: "text-foreground", + }, + }, + defaultVariants: { + variant: "default", + }, + }, +); + +export interface BadgeProps + extends React.HTMLAttributes, VariantProps {} + +function Badge({ className, variant, ...props }: BadgeProps) { + return
; +} + +export { Badge, badgeVariants }; diff --git a/src/components/ui/breadcrumb.tsx b/src/components/ui/breadcrumb.tsx new file mode 100644 index 0000000..94eb629 --- /dev/null +++ b/src/components/ui/breadcrumb.tsx @@ -0,0 +1,101 @@ +import * as React from "react"; +import { Slot } from "@radix-ui/react-slot"; +import { ChevronRight, MoreHorizontal } from "lucide-react"; + +import { cn } from "@/lib/utils"; + +const Breadcrumb = React.forwardRef< + HTMLElement, + React.ComponentPropsWithoutRef<"nav"> & { + separator?: React.ReactNode; + } +>(({ ...props }, ref) =>