From 3a24ebcfcbdd17c64bf46a38387c5f957906ef1d Mon Sep 17 00:00:00 2001 From: Daniel K Date: Sun, 8 Sep 2024 21:23:17 -0700 Subject: [PATCH] refactor(WIP): dashboard stack to shacdn|tailwind|radix|tanstack --- apps/dashboard/.eslintrc | 5 +- apps/dashboard/.gitignore | 14 +- apps/dashboard/README.md | 36 + apps/dashboard/next-env.d.ts | 2 +- apps/dashboard/next.config.js | 45 - apps/dashboard/next.config.mjs | 44 + apps/dashboard/package.json | 20 +- apps/dashboard/postcss.config.mjs | 8 + apps/dashboard/public/manifest.json | 8 +- .../(dashboard)/connections/page.tsx | 0 .../connections/rate-sheets/page.tsx | 0 .../(dashboard)/connections/system/page.tsx | 0 .../(dashboard)/create_label/page.tsx | 0 .../(dashboard)/developers/api/page.tsx | 0 .../(dashboard)/developers/apikeys/page.tsx | 0 .../developers/events/[id]/page.tsx | 0 .../(dashboard)/developers/events/page.tsx | 0 .../(dashboard)/developers/logs/[id]/page.tsx | 0 .../(dashboard)/developers/logs/page.tsx | 0 .../(dashboard)/developers/page.tsx | 0 .../(dashboard)/developers/webhooks/page.tsx | 0 .../(dashboard)/draft_orders/[id]/page.tsx | 0 .../app/{ => (app)}/(dashboard)/layout.tsx | 0 .../manifests/create_manifests/page.tsx | 0 .../(dashboard)/manifests/page.tsx | 0 .../(dashboard)/orders/[id]/page.tsx | 0 .../(dashboard)/orders/create_label/page.tsx | 0 .../(dashboard)/orders/create_labels/page.tsx | 0 .../orders/create_shipment/page.tsx | 0 .../{ => (app)}/(dashboard)/orders/page.tsx | 0 .../src/app/{ => (app)}/(dashboard)/page.tsx | 0 .../(dashboard)/settings/account/page.tsx | 0 .../(dashboard)/settings/addresses/page.tsx | 0 .../settings/organization/page.tsx | 0 .../(dashboard)/settings/parcels/page.tsx | 0 .../(dashboard)/settings/profile/page.tsx | 0 .../(dashboard)/settings/template/page.tsx | 0 .../(dashboard)/settings/templates/page.tsx | 0 .../(dashboard)/shipments/[id]/page.tsx | 0 .../shipments/create_labels/page.tsx | 0 .../(dashboard)/shipments/page.tsx | 0 .../{ => (app)}/(dashboard)/trackers/page.tsx | 0 .../(dashboard)/workflows/[id]/page.tsx | 0 .../workflows/events/[id]/page.tsx | 0 .../(dashboard)/workflows/events/page.tsx | 0 .../(dashboard)/workflows/page.tsx | 0 .../(developers)}/layout.tsx | 0 .../(developers)}/resources/graphiql/page.tsx | 0 .../resources/reference/page.tsx | 0 .../(public)/accept-invite/page.tsx | 0 .../(public)/email/[token]/page.tsx | 0 .../(public)/email/change/page.tsx | 0 .../src/app/{ => (app)}/(public)/layout.tsx | 0 .../(public)/password/reset/done/page.tsx | 0 .../(public)/password/reset/page.tsx | 0 .../(public)/password/reset/request/page.tsx | 0 .../(public)/password/reset/sent/page.tsx | 0 .../app/{ => (app)}/(public)/signin/page.tsx | 0 .../app/{ => (app)}/(public)/signup/page.tsx | 0 .../(public)/signup/success/page.tsx | 0 .../[domain]/(dashboard)/connections/page.tsx | 0 .../connections/rate-sheets/page.tsx | 0 .../(dashboard)/connections/system/page.tsx | 0 .../(dashboard)/create_label/page.tsx | 0 .../(dashboard)/developers/api/page.tsx | 0 .../(dashboard)/developers/apikeys/page.tsx | 0 .../developers/events/[id]/page.tsx | 0 .../(dashboard)/developers/events/page.tsx | 0 .../(dashboard)/developers/logs/[id]/page.tsx | 0 .../(dashboard)/developers/logs/page.tsx | 0 .../[domain]/(dashboard)/developers/page.tsx | 0 .../(dashboard)/developers/webhooks/page.tsx | 0 .../(dashboard)/draft_orders/[id]/page.tsx | 0 .../[domain]/(dashboard)/layout.tsx | 0 .../manifests/create_manifests/page.tsx | 0 .../[domain]/(dashboard)/manifests/page.tsx | 0 .../[domain]/(dashboard)/orders/[id]/page.tsx | 0 .../(dashboard)/orders/create_label/page.tsx | 0 .../(dashboard)/orders/create_labels/page.tsx | 0 .../orders/create_shipment/page.tsx | 0 .../[domain]/(dashboard)/orders/page.tsx | 0 .../{ => (app)}/[domain]/(dashboard)/page.tsx | 0 .../(dashboard)/settings/account/page.tsx | 0 .../(dashboard)/settings/addresses/page.tsx | 0 .../settings/organization/page.tsx | 0 .../(dashboard)/settings/parcels/page.tsx | 0 .../(dashboard)/settings/profile/page.tsx | 0 .../(dashboard)/settings/template/page.tsx | 0 .../(dashboard)/settings/templates/page.tsx | 0 .../(dashboard)/shipments/[id]/page.tsx | 0 .../shipments/create_labels/page.tsx | 0 .../[domain]/(dashboard)/shipments/page.tsx | 0 .../[domain]/(dashboard)/trackers/page.tsx | 0 .../(dashboard)/workflows/[id]/page.tsx | 0 .../workflows/events/[id]/page.tsx | 0 .../(dashboard)/workflows/events/page.tsx | 0 .../[domain]/(dashboard)/workflows/page.tsx | 0 .../{ => (app)}/[domain]/(embed)/layout.tsx | 0 .../(embed)/resources/graphiql/page.tsx | 0 .../(embed)/resources/reference/page.tsx | 0 .../[domain]/(public)/accept-invite/page.tsx | 0 .../[domain]/(public)/email/[token]/page.tsx | 0 .../[domain]/(public)/email/change/page.tsx | 0 .../{ => (app)}/[domain]/(public)/layout.tsx | 0 .../(public)/password/reset/done/page.tsx | 0 .../[domain]/(public)/password/reset/page.tsx | 0 .../(public)/password/reset/request/page.tsx | 0 .../(public)/password/reset/sent/page.tsx | 0 .../[domain]/(public)/signin/page.tsx | 0 .../[domain]/(public)/signup/page.tsx | 0 .../[domain]/(public)/signup/success/page.tsx | 0 .../admin/carrier_connections/page.tsx | 0 .../admin/organization_accounts/page.tsx | 0 .../app/{ => (app)}/[domain]/admin/page.tsx | 0 .../[domain]/admin/surcharges/page.tsx | 0 .../[domain]/admin/user_accounts/page.tsx | 0 .../[domain]/api/auth/[...nextauth]/route.ts | 0 .../(app)/[domain]/api/images/[name]/route.ts | 1 + .../test/(dashboard)/connections/page.tsx | 0 .../connections/rate-sheets/page.tsx | 0 .../(dashboard)/connections/system/page.tsx | 0 .../test/(dashboard)/create_label/page.tsx | 0 .../test/(dashboard)/developers/api/page.tsx | 0 .../(dashboard)/developers/apikeys/page.tsx | 0 .../developers/events/[id]/page.tsx | 0 .../(dashboard)/developers/events/page.tsx | 0 .../(dashboard)/developers/logs/[id]/page.tsx | 0 .../test/(dashboard)/developers/logs/page.tsx | 0 .../test/(dashboard)/developers/page.tsx | 0 .../(dashboard)/developers/webhooks/page.tsx | 0 .../(dashboard)/draft_orders/[id]/page.tsx | 0 .../[domain]/test/(dashboard)/layout.tsx | 0 .../manifests/create_manifests/page.tsx | 0 .../test/(dashboard)/manifests/page.tsx | 0 .../test/(dashboard)/orders/[id]/page.tsx | 0 .../(dashboard)/orders/create_label/page.tsx | 0 .../(dashboard)/orders/create_labels/page.tsx | 0 .../orders/create_shipment/page.tsx | 0 .../[domain]/test/(dashboard)/orders/page.tsx | 0 .../[domain]/test/(dashboard)/page.tsx | 0 .../(dashboard)/settings/account/page.tsx | 0 .../(dashboard)/settings/addresses/page.tsx | 0 .../settings/organization/page.tsx | 0 .../(dashboard)/settings/parcels/page.tsx | 0 .../(dashboard)/settings/profile/page.tsx | 0 .../(dashboard)/settings/template/page.tsx | 0 .../(dashboard)/settings/templates/page.tsx | 0 .../test/(dashboard)/shipments/[id]/page.tsx | 0 .../shipments/create_labels/page.tsx | 0 .../test/(dashboard)/shipments/page.tsx | 0 .../test/(dashboard)/trackers/page.tsx | 0 .../test/(dashboard)/workflows/[id]/page.tsx | 0 .../workflows/events/[id]/page.tsx | 0 .../(dashboard)/workflows/events/page.tsx | 0 .../test/(dashboard)/workflows/page.tsx | 0 .../[domain]/test/(embed)/layout.tsx | 0 .../test/(embed)/resources/graphiql/page.tsx | 0 .../test/(embed)/resources/reference/page.tsx | 0 .../test/admin/carrier_connections/page.tsx | 0 .../[domain]/test/admin/layout.tsx | 0 .../test/admin/organization_accounts/page.tsx | 0 .../{ => (app)}/[domain]/test/admin/page.tsx | 0 .../[domain]/test/admin/surcharges/page.tsx | 0 .../test/admin/user_accounts/page.tsx | 0 .../[domain]/test/tracking/[id]/page.tsx | 0 .../[domain]/tracking/[id]/page.tsx | 0 .../admin/carrier_connections/page.tsx | 0 .../src/app/{test => (app)}/admin/layout.tsx | 0 .../admin/organization_accounts/page.tsx | 0 .../src/app/{ => (app)}/admin/page.tsx | 0 .../app/{ => (app)}/admin/surcharges/page.tsx | 0 .../{ => (app)}/admin/user_accounts/page.tsx | 0 apps/dashboard/src/app/{ => (app)}/layout.tsx | 0 .../test/(dashboard)/connections/page.tsx | 0 .../connections/rate-sheets/page.tsx | 0 .../(dashboard)/connections/system/page.tsx | 0 .../test/(dashboard)/create_label/page.tsx | 0 .../test/(dashboard)/developers/api/page.tsx | 0 .../(dashboard)/developers/apikeys/page.tsx | 0 .../developers/events/[id]/page.tsx | 0 .../(dashboard)/developers/events/page.tsx | 0 .../(dashboard)/developers/logs/[id]/page.tsx | 0 .../test/(dashboard)/developers/logs/page.tsx | 0 .../test/(dashboard)/developers/page.tsx | 0 .../(dashboard)/developers/webhooks/page.tsx | 0 .../(dashboard)/draft_orders/[id]/page.tsx | 0 .../{ => (app)}/test/(dashboard)/layout.tsx | 0 .../manifests/create_manifests/page.tsx | 0 .../test/(dashboard)/manifests/page.tsx | 0 .../test/(dashboard)/orders/[id]/page.tsx | 0 .../(dashboard)/orders/create_label/page.tsx | 0 .../(dashboard)/orders/create_labels/page.tsx | 0 .../orders/create_shipment/page.tsx | 0 .../test/(dashboard)/orders/page.tsx | 0 .../app/{ => (app)}/test/(dashboard)/page.tsx | 0 .../(dashboard)/settings/account/page.tsx | 0 .../(dashboard)/settings/addresses/page.tsx | 0 .../settings/organization/page.tsx | 0 .../(dashboard)/settings/parcels/page.tsx | 0 .../(dashboard)/settings/profile/page.tsx | 0 .../(dashboard)/settings/template/page.tsx | 0 .../(dashboard)/settings/templates/page.tsx | 0 .../test/(dashboard)/shipments/[id]/page.tsx | 0 .../shipments/create_labels/page.tsx | 0 .../test/(dashboard)/shipments/page.tsx | 0 .../test/(dashboard)/trackers/page.tsx | 0 .../test/(dashboard)/workflows/[id]/page.tsx | 0 .../workflows/events/[id]/page.tsx | 0 .../(dashboard)/workflows/events/page.tsx | 0 .../test/(dashboard)/workflows/page.tsx | 0 .../app/{ => (app)}/test/(embed)/layout.tsx | 0 .../test/(embed)/resources/graphiql/page.tsx | 0 .../test/(embed)/resources/reference/page.tsx | 0 .../test/admin/carrier_connections/page.tsx | 0 .../src/app/(app)/test/admin/layout.tsx | 1 + .../test/admin/organization_accounts/page.tsx | 0 .../src/app/{ => (app)}/test/admin/page.tsx | 0 .../test/admin/surcharges/page.tsx | 0 .../test/admin/user_accounts/page.tsx | 0 .../{ => (app)}/test/tracking/[id]/page.tsx | 0 .../app/{ => (app)}/tracking/[id]/page.tsx | 0 .../app/(dashboard)/apps/development/page.tsx | 4 - .../src/app/(dashboard)/apps/page.tsx | 1 - .../src/app/(platform)/(auth)/layout.tsx | 1 + .../(auth)/platform-carriers/page.tsx | 4 + .../(auth)/platform-orders/page.tsx | 4 + .../(auth)/platform-shipments/page.tsx | 4 + .../(platform)/(auth)/platform-store/page.tsx | 4 + .../(auth)/platform-trackers/page.tsx | 4 + apps/dashboard/src/app/(platform)/layout.tsx | 2 + .../(dashboard)/apps/development/page.tsx | 4 - .../app/[domain]/(dashboard)/apps/page.tsx | 1 - .../(dashboard)/apps/development/page.tsx | 4 - .../[domain]/test/(dashboard)/apps/page.tsx | 1 - .../test/(dashboard)/email/[token]/page.tsx | 4 - .../test/(dashboard)/email/change/page.tsx | 4 - .../(dashboard)/password/reset/done/page.tsx | 4 - .../test/(dashboard)/password/reset/page.tsx | 1 - .../password/reset/request/page.tsx | 4 - .../(dashboard)/password/reset/sent/page.tsx | 4 - .../src/app/api/images/[name]/route.ts | 44 +- .../(dashboard)/apps/development/page.tsx | 4 - .../src/app/test/(dashboard)/apps/page.tsx | 1 - .../test/(dashboard)/email/[token]/page.tsx | 4 - .../test/(dashboard)/email/change/page.tsx | 4 - .../(dashboard)/password/reset/done/page.tsx | 4 - .../test/(dashboard)/password/reset/page.tsx | 1 - .../password/reset/request/page.tsx | 4 - .../(dashboard)/password/reset/sent/page.tsx | 4 - apps/dashboard/src/styles/globals.css | 85 + apps/dashboard/tailwind.config.ts | 80 + apps/dashboard/tsconfig.json | 39 +- package-lock.json | 4572 ++++++++++++----- package.json | 1 + .../core/context/image.ts | 86 +- packages/core/modules/Apps/development.tsx | 116 - packages/core/modules/Apps/index.tsx | 112 - .../core/modules/Labels/create_labels.tsx | 3141 +++++------ .../modules/Manifests/create_manifests.tsx | 2 +- packages/core/modules/Orders/index.tsx | 21 +- packages/core/modules/Shipments/index.tsx | 4 +- packages/hooks/usage.ts | 204 +- packages/insiders/.eslintrc.js | 3 + packages/insiders/.gitignore | 1 + packages/insiders/components.json | 20 + packages/insiders/components/navbar.tsx | 163 + packages/insiders/components/sidebar.tsx | 81 + packages/insiders/components/ui/badge.tsx | 36 + packages/insiders/components/ui/button.tsx | 57 + packages/insiders/components/ui/calendar.tsx | 72 + packages/insiders/components/ui/card.tsx | 76 + packages/insiders/components/ui/checkbox.tsx | 30 + .../insiders/components/ui/dropdown-menu.tsx | 205 + packages/insiders/components/ui/input.tsx | 25 + packages/insiders/components/ui/label.tsx | 26 + packages/insiders/components/ui/popover.tsx | 33 + packages/insiders/components/ui/select.tsx | 164 + packages/insiders/components/ui/sheet.tsx | 140 + packages/insiders/components/ui/switch.tsx | 29 + packages/insiders/components/ui/table.tsx | 120 + packages/insiders/components/ui/tabs.tsx | 55 + packages/insiders/fonts/GeistMonoVF.woff | Bin 0 -> 67864 bytes packages/insiders/fonts/GeistVF.woff | Bin 0 -> 66268 bytes packages/insiders/index.tsx | 0 .../insiders/layouts/dashboard-layout.tsx | 45 + packages/insiders/layouts/root-layout.tsx | 34 + packages/insiders/lib/utils.ts | 6 + .../modules/platform-carriers/index.tsx | 115 + .../modules/platform-orders/index.tsx | 164 + .../modules/platform-shipments/index.tsx | 237 + .../insiders/modules/platform-store/index.tsx | 124 + .../modules/platform-trackers/index.tsx | 168 + packages/insiders/package.json | 49 + packages/insiders/tailwind.config.ts | 79 + packages/insiders/tsconfig.json | 17 + packages/types/base.ts | 1 + turbo.json | 37 +- 297 files changed, 7918 insertions(+), 3270 deletions(-) create mode 100644 apps/dashboard/README.md delete mode 100644 apps/dashboard/next.config.js create mode 100644 apps/dashboard/next.config.mjs create mode 100644 apps/dashboard/postcss.config.mjs rename apps/dashboard/src/app/{ => (app)}/(dashboard)/connections/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/connections/rate-sheets/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/connections/system/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/create_label/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/developers/api/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/developers/apikeys/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/developers/events/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/developers/events/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/developers/logs/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/developers/logs/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/developers/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/developers/webhooks/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/draft_orders/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/layout.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/manifests/create_manifests/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/manifests/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/orders/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/orders/create_label/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/orders/create_labels/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/orders/create_shipment/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/orders/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/settings/account/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/settings/addresses/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/settings/organization/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/settings/parcels/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/settings/profile/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/settings/template/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/settings/templates/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/shipments/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/shipments/create_labels/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/shipments/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/trackers/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/workflows/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/workflows/events/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/workflows/events/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(dashboard)/workflows/page.tsx (100%) rename apps/dashboard/src/app/{(embed) => (app)/(developers)}/layout.tsx (100%) rename apps/dashboard/src/app/{(embed) => (app)/(developers)}/resources/graphiql/page.tsx (100%) rename apps/dashboard/src/app/{(embed) => (app)/(developers)}/resources/reference/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(public)/accept-invite/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(public)/email/[token]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(public)/email/change/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(public)/layout.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(public)/password/reset/done/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(public)/password/reset/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(public)/password/reset/request/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(public)/password/reset/sent/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(public)/signin/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(public)/signup/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/(public)/signup/success/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/connections/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/connections/rate-sheets/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/connections/system/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/create_label/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/developers/api/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/developers/apikeys/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/developers/events/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/developers/events/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/developers/logs/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/developers/logs/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/developers/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/developers/webhooks/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/draft_orders/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/layout.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/manifests/create_manifests/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/manifests/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/orders/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/orders/create_label/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/orders/create_labels/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/orders/create_shipment/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/orders/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/settings/account/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/settings/addresses/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/settings/organization/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/settings/parcels/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/settings/profile/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/settings/template/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/settings/templates/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/shipments/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/shipments/create_labels/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/shipments/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/trackers/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/workflows/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/workflows/events/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/workflows/events/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(dashboard)/workflows/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(embed)/layout.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(embed)/resources/graphiql/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(embed)/resources/reference/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(public)/accept-invite/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(public)/email/[token]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(public)/email/change/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(public)/layout.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(public)/password/reset/done/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(public)/password/reset/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(public)/password/reset/request/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(public)/password/reset/sent/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(public)/signin/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(public)/signup/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/(public)/signup/success/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/admin/carrier_connections/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/admin/organization_accounts/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/admin/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/admin/surcharges/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/admin/user_accounts/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/api/auth/[...nextauth]/route.ts (100%) create mode 100644 apps/dashboard/src/app/(app)/[domain]/api/images/[name]/route.ts rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/connections/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/connections/rate-sheets/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/connections/system/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/create_label/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/developers/api/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/developers/apikeys/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/developers/events/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/developers/events/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/developers/logs/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/developers/logs/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/developers/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/developers/webhooks/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/draft_orders/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/layout.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/manifests/create_manifests/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/manifests/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/orders/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/orders/create_label/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/orders/create_labels/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/orders/create_shipment/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/orders/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/settings/account/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/settings/addresses/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/settings/organization/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/settings/parcels/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/settings/profile/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/settings/template/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/settings/templates/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/shipments/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/shipments/create_labels/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/shipments/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/trackers/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/workflows/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/workflows/events/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/workflows/events/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(dashboard)/workflows/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(embed)/layout.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(embed)/resources/graphiql/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/(embed)/resources/reference/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/admin/carrier_connections/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/admin/layout.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/admin/organization_accounts/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/admin/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/admin/surcharges/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/admin/user_accounts/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/test/tracking/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/[domain]/tracking/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/admin/carrier_connections/page.tsx (100%) rename apps/dashboard/src/app/{test => (app)}/admin/layout.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/admin/organization_accounts/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/admin/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/admin/surcharges/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/admin/user_accounts/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/layout.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/connections/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/connections/rate-sheets/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/connections/system/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/create_label/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/developers/api/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/developers/apikeys/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/developers/events/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/developers/events/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/developers/logs/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/developers/logs/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/developers/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/developers/webhooks/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/draft_orders/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/layout.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/manifests/create_manifests/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/manifests/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/orders/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/orders/create_label/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/orders/create_labels/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/orders/create_shipment/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/orders/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/settings/account/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/settings/addresses/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/settings/organization/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/settings/parcels/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/settings/profile/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/settings/template/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/settings/templates/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/shipments/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/shipments/create_labels/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/shipments/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/trackers/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/workflows/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/workflows/events/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/workflows/events/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(dashboard)/workflows/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(embed)/layout.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(embed)/resources/graphiql/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/(embed)/resources/reference/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/admin/carrier_connections/page.tsx (100%) create mode 100644 apps/dashboard/src/app/(app)/test/admin/layout.tsx rename apps/dashboard/src/app/{ => (app)}/test/admin/organization_accounts/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/admin/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/admin/surcharges/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/admin/user_accounts/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/test/tracking/[id]/page.tsx (100%) rename apps/dashboard/src/app/{ => (app)}/tracking/[id]/page.tsx (100%) delete mode 100644 apps/dashboard/src/app/(dashboard)/apps/development/page.tsx delete mode 100644 apps/dashboard/src/app/(dashboard)/apps/page.tsx create mode 100644 apps/dashboard/src/app/(platform)/(auth)/layout.tsx create mode 100644 apps/dashboard/src/app/(platform)/(auth)/platform-carriers/page.tsx create mode 100644 apps/dashboard/src/app/(platform)/(auth)/platform-orders/page.tsx create mode 100644 apps/dashboard/src/app/(platform)/(auth)/platform-shipments/page.tsx create mode 100644 apps/dashboard/src/app/(platform)/(auth)/platform-store/page.tsx create mode 100644 apps/dashboard/src/app/(platform)/(auth)/platform-trackers/page.tsx create mode 100644 apps/dashboard/src/app/(platform)/layout.tsx delete mode 100644 apps/dashboard/src/app/[domain]/(dashboard)/apps/development/page.tsx delete mode 100644 apps/dashboard/src/app/[domain]/(dashboard)/apps/page.tsx delete mode 100644 apps/dashboard/src/app/[domain]/test/(dashboard)/apps/development/page.tsx delete mode 100644 apps/dashboard/src/app/[domain]/test/(dashboard)/apps/page.tsx delete mode 100644 apps/dashboard/src/app/[domain]/test/(dashboard)/email/[token]/page.tsx delete mode 100644 apps/dashboard/src/app/[domain]/test/(dashboard)/email/change/page.tsx delete mode 100644 apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/done/page.tsx delete mode 100644 apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/page.tsx delete mode 100644 apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/request/page.tsx delete mode 100644 apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/sent/page.tsx delete mode 100644 apps/dashboard/src/app/test/(dashboard)/apps/development/page.tsx delete mode 100644 apps/dashboard/src/app/test/(dashboard)/apps/page.tsx delete mode 100644 apps/dashboard/src/app/test/(dashboard)/email/[token]/page.tsx delete mode 100644 apps/dashboard/src/app/test/(dashboard)/email/change/page.tsx delete mode 100644 apps/dashboard/src/app/test/(dashboard)/password/reset/done/page.tsx delete mode 100644 apps/dashboard/src/app/test/(dashboard)/password/reset/page.tsx delete mode 100644 apps/dashboard/src/app/test/(dashboard)/password/reset/request/page.tsx delete mode 100644 apps/dashboard/src/app/test/(dashboard)/password/reset/sent/page.tsx create mode 100644 apps/dashboard/src/styles/globals.css create mode 100644 apps/dashboard/tailwind.config.ts rename apps/dashboard/src/app/[domain]/api/images/[name]/route.ts => packages/core/context/image.ts (93%) delete mode 100644 packages/core/modules/Apps/development.tsx delete mode 100644 packages/core/modules/Apps/index.tsx create mode 100644 packages/insiders/.eslintrc.js create mode 100644 packages/insiders/.gitignore create mode 100644 packages/insiders/components.json create mode 100644 packages/insiders/components/navbar.tsx create mode 100644 packages/insiders/components/sidebar.tsx create mode 100644 packages/insiders/components/ui/badge.tsx create mode 100644 packages/insiders/components/ui/button.tsx create mode 100644 packages/insiders/components/ui/calendar.tsx create mode 100644 packages/insiders/components/ui/card.tsx create mode 100644 packages/insiders/components/ui/checkbox.tsx create mode 100644 packages/insiders/components/ui/dropdown-menu.tsx create mode 100644 packages/insiders/components/ui/input.tsx create mode 100644 packages/insiders/components/ui/label.tsx create mode 100644 packages/insiders/components/ui/popover.tsx create mode 100644 packages/insiders/components/ui/select.tsx create mode 100644 packages/insiders/components/ui/sheet.tsx create mode 100644 packages/insiders/components/ui/switch.tsx create mode 100644 packages/insiders/components/ui/table.tsx create mode 100644 packages/insiders/components/ui/tabs.tsx create mode 100644 packages/insiders/fonts/GeistMonoVF.woff create mode 100644 packages/insiders/fonts/GeistVF.woff create mode 100644 packages/insiders/index.tsx create mode 100644 packages/insiders/layouts/dashboard-layout.tsx create mode 100644 packages/insiders/layouts/root-layout.tsx create mode 100644 packages/insiders/lib/utils.ts create mode 100644 packages/insiders/modules/platform-carriers/index.tsx create mode 100644 packages/insiders/modules/platform-orders/index.tsx create mode 100644 packages/insiders/modules/platform-shipments/index.tsx create mode 100644 packages/insiders/modules/platform-store/index.tsx create mode 100644 packages/insiders/modules/platform-trackers/index.tsx create mode 100644 packages/insiders/package.json create mode 100644 packages/insiders/tailwind.config.ts create mode 100644 packages/insiders/tsconfig.json diff --git a/apps/dashboard/.eslintrc b/apps/dashboard/.eslintrc index cca99b7d1b..4b1fb6a2bd 100644 --- a/apps/dashboard/.eslintrc +++ b/apps/dashboard/.eslintrc @@ -1,7 +1,4 @@ { "root": true, - "extends": [ - "next", - "next/core-web-vitals" - ] + "extends": ["next", "next/core-web-vitals"], } diff --git a/apps/dashboard/.gitignore b/apps/dashboard/.gitignore index dba4c2a7b5..fd3dbb571a 100644 --- a/apps/dashboard/.gitignore +++ b/apps/dashboard/.gitignore @@ -4,6 +4,7 @@ /node_modules /.pnp .pnp.js +.yarn/install-state.gz # testing /coverage @@ -25,16 +26,11 @@ yarn-debug.log* yarn-error.log* # local env files -.env.local -.env.development.local -.env.test.local -.env.production.local +.env*.local # vercel .vercel -.env -# Sentry -.sentryclirc - -karrio/rest/generated/.openapi-generator/ +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/apps/dashboard/README.md b/apps/dashboard/README.md new file mode 100644 index 0000000000..e215bc4ccf --- /dev/null +++ b/apps/dashboard/README.md @@ -0,0 +1,36 @@ +This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app). + +## Getting Started + +First, run the development server: + +```bash +npm run dev +# or +yarn dev +# or +pnpm dev +# or +bun dev +``` + +Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. + +You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. + +This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel. + +## Learn More + +To learn more about Next.js, take a look at the following resources: + +- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. +- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. + +You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome! + +## Deploy on Vercel + +The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. + +Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details. diff --git a/apps/dashboard/next-env.d.ts b/apps/dashboard/next-env.d.ts index 4f11a03dc6..40c3d68096 100644 --- a/apps/dashboard/next-env.d.ts +++ b/apps/dashboard/next-env.d.ts @@ -2,4 +2,4 @@ /// // NOTE: This file should not be edited -// see https://nextjs.org/docs/basic-features/typescript for more information. +// see https://nextjs.org/docs/app/building-your-application/configuring/typescript for more information. diff --git a/apps/dashboard/next.config.js b/apps/dashboard/next.config.js deleted file mode 100644 index 122435ff6b..0000000000 --- a/apps/dashboard/next.config.js +++ /dev/null @@ -1,45 +0,0 @@ -// This file sets a custom webpack configuration to use your Next.js app -// with Sentry. -// https://nextjs.org/docs/api-reference/next.config.js/introduction -// https://docs.sentry.io/platforms/javascript/guides/nextjs/ - -const path = require('path'); -const { withSentryConfig } = require('@sentry/nextjs'); - -const BASE_PATH = process.env.NEXT_PUBLIC_BASE_PATH || ''; - -/** @type {import('next').NextConfig} */ -const moduleExports = { - swcMinify: false, - reactStrictMode: true, - transpilePackages: ['@karrio/core', '@karrio/hooks', '@karrio/ui', '@karrio/lib', '@karrio/types'], - basePath: BASE_PATH, - sassOptions: { - includePaths: [path.join(__dirname, 'src', 'styles')], - }, - sentry: { - disableServerWebpackPlugin: true, - disableClientWebpackPlugin: true, - }, - webpack: (config) => { - config.resolve.fallback = { fs: false, net: false, tls: false }; - config.externals.push('pino-pretty', 'encoding'); - return config; - }, -}; - -const sentryWebpackPluginOptions = { - // Additional config options for the Sentry Webpack plugin. Keep in mind that - // the following options are set automatically, and overriding them is not - // recommended: - // release, url, org, project, authToken, configFile, stripPrefix, - // urlPrefix, include, ignore - - silent: true, // Suppresses all logs - // For all available options, see: - // https://github.com/getsentry/sentry-webpack-plugin#options. -}; - -// Make sure adding Sentry options is the last code to run before exporting, to -// ensure that your source maps include changes from all other Webpack plugins -module.exports = withSentryConfig(moduleExports, sentryWebpackPluginOptions); diff --git a/apps/dashboard/next.config.mjs b/apps/dashboard/next.config.mjs new file mode 100644 index 0000000000..23ecc09077 --- /dev/null +++ b/apps/dashboard/next.config.mjs @@ -0,0 +1,44 @@ +import { withSentryConfig } from "@sentry/nextjs"; +import path from "path"; + +const BASE_PATH = process.env.NEXT_PUBLIC_BASE_PATH || ""; + +/** @type {import('next').NextConfig} */ +const nextConfig = { + basePath: BASE_PATH, + reactStrictMode: true, + transpilePackages: [ + "@karrio/core", + "@karrio/hooks", + "@karrio/ui", + "@karrio/lib", + "@karrio/types", + "@karrio/insiders", + ], + sentry: { + disableServerWebpackPlugin: true, + disableClientWebpackPlugin: true, + }, + sassOptions: { + includePaths: [path.join("src", "app", "styles")], + }, + webpack: (config) => { + config.resolve.fallback = { fs: false, net: false, tls: false }; + config.externals.push("pino-pretty", "encoding"); + return config; + }, +}; + +const sentryWebpackPluginOptions = { + // Additional config options for the Sentry Webpack plugin. Keep in mind that + // the following options are set automatically, and overriding them is not + // recommended: + // release, url, org, project, authToken, configFile, stripPrefix, + // urlPrefix, include, ignore + + silent: true, // Suppresses all logs + // For all available options, see: + // https://github.com/getsentry/sentry-webpack-plugin#options. +}; + +export default withSentryConfig(nextConfig, sentryWebpackPluginOptions); diff --git a/apps/dashboard/package.json b/apps/dashboard/package.json index edadcf76e5..c3c757393c 100644 --- a/apps/dashboard/package.json +++ b/apps/dashboard/package.json @@ -1,26 +1,26 @@ { - "name": "@karrio/dashboard", - "version": "1.0.0", + "name": "@karrio/platform", + "version": "0.1.0", + "private": true, "scripts": { "dev": "next dev", "build": "next build", "start": "next start", - "lint": "next lint", - "gen:rest": "cd ..; ./bin/generate-rest-types", - "gen:graph": "cd ..; ./bin/generate-graphql-types", - "build:image": "cd ..; ./bin/build-dashboard-image" + "lint": "next lint" }, "dependencies": { "@karrio/core": "*", "@karrio/hooks": "*", "@karrio/lib": "*", "@karrio/types": "*", - "@karrio/ui": "*" + "@karrio/ui": "*", + "@karrio/insiders": "*" }, "devDependencies": { - "eslint": "7.32.0", - "eslint-config-custom": "*", - "eslint-config-next": "^13.1.2", + "postcss": "^8", + "tailwindcss": "^3.4.1", + "eslint": "^8", + "eslint-config-next": "14.2.8", "tsconfig": "*" } } diff --git a/apps/dashboard/postcss.config.mjs b/apps/dashboard/postcss.config.mjs new file mode 100644 index 0000000000..1a69fd2a45 --- /dev/null +++ b/apps/dashboard/postcss.config.mjs @@ -0,0 +1,8 @@ +/** @type {import('postcss-load-config').Config} */ +const config = { + plugins: { + tailwindcss: {}, + }, +}; + +export default config; diff --git a/apps/dashboard/public/manifest.json b/apps/dashboard/public/manifest.json index 873c739057..1231b3f562 100644 --- a/apps/dashboard/public/manifest.json +++ b/apps/dashboard/public/manifest.json @@ -1,17 +1,17 @@ { - "short_name": "purpleboard", - "name": "Purple Board", + "short_name": "karrio", + "name": "Karrio Board", "icons": [ { "src": "android-chrome-192x192.png", "sizes": "192x192", - "type": "image\/png", + "type": "image/png", "density": "4.0" }, { "src": "android-chrome-512x512.png", "sizes": "512x512", - "type": "image\/png", + "type": "image/png", "density": "4.0" } ], diff --git a/apps/dashboard/src/app/(dashboard)/connections/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/connections/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/connections/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/connections/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/connections/rate-sheets/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/connections/rate-sheets/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/connections/rate-sheets/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/connections/rate-sheets/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/connections/system/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/connections/system/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/connections/system/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/connections/system/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/create_label/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/create_label/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/create_label/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/create_label/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/developers/api/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/developers/api/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/developers/api/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/developers/api/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/developers/apikeys/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/developers/apikeys/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/developers/apikeys/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/developers/apikeys/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/developers/events/[id]/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/developers/events/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/developers/events/[id]/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/developers/events/[id]/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/developers/events/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/developers/events/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/developers/events/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/developers/events/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/developers/logs/[id]/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/developers/logs/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/developers/logs/[id]/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/developers/logs/[id]/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/developers/logs/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/developers/logs/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/developers/logs/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/developers/logs/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/developers/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/developers/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/developers/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/developers/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/developers/webhooks/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/developers/webhooks/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/developers/webhooks/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/developers/webhooks/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/draft_orders/[id]/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/draft_orders/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/draft_orders/[id]/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/draft_orders/[id]/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/layout.tsx b/apps/dashboard/src/app/(app)/(dashboard)/layout.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/layout.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/layout.tsx diff --git a/apps/dashboard/src/app/(dashboard)/manifests/create_manifests/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/manifests/create_manifests/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/manifests/create_manifests/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/manifests/create_manifests/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/manifests/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/manifests/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/manifests/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/manifests/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/orders/[id]/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/orders/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/orders/[id]/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/orders/[id]/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/orders/create_label/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/orders/create_label/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/orders/create_label/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/orders/create_label/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/orders/create_labels/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/orders/create_labels/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/orders/create_labels/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/orders/create_labels/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/orders/create_shipment/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/orders/create_shipment/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/orders/create_shipment/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/orders/create_shipment/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/orders/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/orders/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/orders/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/orders/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/settings/account/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/settings/account/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/settings/account/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/settings/account/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/settings/addresses/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/settings/addresses/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/settings/addresses/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/settings/addresses/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/settings/organization/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/settings/organization/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/settings/organization/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/settings/organization/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/settings/parcels/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/settings/parcels/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/settings/parcels/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/settings/parcels/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/settings/profile/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/settings/profile/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/settings/profile/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/settings/profile/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/settings/template/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/settings/template/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/settings/template/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/settings/template/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/settings/templates/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/settings/templates/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/settings/templates/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/settings/templates/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/shipments/[id]/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/shipments/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/shipments/[id]/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/shipments/[id]/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/shipments/create_labels/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/shipments/create_labels/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/shipments/create_labels/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/shipments/create_labels/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/shipments/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/shipments/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/shipments/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/shipments/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/trackers/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/trackers/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/trackers/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/trackers/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/workflows/[id]/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/workflows/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/workflows/[id]/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/workflows/[id]/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/workflows/events/[id]/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/workflows/events/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/workflows/events/[id]/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/workflows/events/[id]/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/workflows/events/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/workflows/events/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/workflows/events/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/workflows/events/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/workflows/page.tsx b/apps/dashboard/src/app/(app)/(dashboard)/workflows/page.tsx similarity index 100% rename from apps/dashboard/src/app/(dashboard)/workflows/page.tsx rename to apps/dashboard/src/app/(app)/(dashboard)/workflows/page.tsx diff --git a/apps/dashboard/src/app/(embed)/layout.tsx b/apps/dashboard/src/app/(app)/(developers)/layout.tsx similarity index 100% rename from apps/dashboard/src/app/(embed)/layout.tsx rename to apps/dashboard/src/app/(app)/(developers)/layout.tsx diff --git a/apps/dashboard/src/app/(embed)/resources/graphiql/page.tsx b/apps/dashboard/src/app/(app)/(developers)/resources/graphiql/page.tsx similarity index 100% rename from apps/dashboard/src/app/(embed)/resources/graphiql/page.tsx rename to apps/dashboard/src/app/(app)/(developers)/resources/graphiql/page.tsx diff --git a/apps/dashboard/src/app/(embed)/resources/reference/page.tsx b/apps/dashboard/src/app/(app)/(developers)/resources/reference/page.tsx similarity index 100% rename from apps/dashboard/src/app/(embed)/resources/reference/page.tsx rename to apps/dashboard/src/app/(app)/(developers)/resources/reference/page.tsx diff --git a/apps/dashboard/src/app/(public)/accept-invite/page.tsx b/apps/dashboard/src/app/(app)/(public)/accept-invite/page.tsx similarity index 100% rename from apps/dashboard/src/app/(public)/accept-invite/page.tsx rename to apps/dashboard/src/app/(app)/(public)/accept-invite/page.tsx diff --git a/apps/dashboard/src/app/(public)/email/[token]/page.tsx b/apps/dashboard/src/app/(app)/(public)/email/[token]/page.tsx similarity index 100% rename from apps/dashboard/src/app/(public)/email/[token]/page.tsx rename to apps/dashboard/src/app/(app)/(public)/email/[token]/page.tsx diff --git a/apps/dashboard/src/app/(public)/email/change/page.tsx b/apps/dashboard/src/app/(app)/(public)/email/change/page.tsx similarity index 100% rename from apps/dashboard/src/app/(public)/email/change/page.tsx rename to apps/dashboard/src/app/(app)/(public)/email/change/page.tsx diff --git a/apps/dashboard/src/app/(public)/layout.tsx b/apps/dashboard/src/app/(app)/(public)/layout.tsx similarity index 100% rename from apps/dashboard/src/app/(public)/layout.tsx rename to apps/dashboard/src/app/(app)/(public)/layout.tsx diff --git a/apps/dashboard/src/app/(public)/password/reset/done/page.tsx b/apps/dashboard/src/app/(app)/(public)/password/reset/done/page.tsx similarity index 100% rename from apps/dashboard/src/app/(public)/password/reset/done/page.tsx rename to apps/dashboard/src/app/(app)/(public)/password/reset/done/page.tsx diff --git a/apps/dashboard/src/app/(public)/password/reset/page.tsx b/apps/dashboard/src/app/(app)/(public)/password/reset/page.tsx similarity index 100% rename from apps/dashboard/src/app/(public)/password/reset/page.tsx rename to apps/dashboard/src/app/(app)/(public)/password/reset/page.tsx diff --git a/apps/dashboard/src/app/(public)/password/reset/request/page.tsx b/apps/dashboard/src/app/(app)/(public)/password/reset/request/page.tsx similarity index 100% rename from apps/dashboard/src/app/(public)/password/reset/request/page.tsx rename to apps/dashboard/src/app/(app)/(public)/password/reset/request/page.tsx diff --git a/apps/dashboard/src/app/(public)/password/reset/sent/page.tsx b/apps/dashboard/src/app/(app)/(public)/password/reset/sent/page.tsx similarity index 100% rename from apps/dashboard/src/app/(public)/password/reset/sent/page.tsx rename to apps/dashboard/src/app/(app)/(public)/password/reset/sent/page.tsx diff --git a/apps/dashboard/src/app/(public)/signin/page.tsx b/apps/dashboard/src/app/(app)/(public)/signin/page.tsx similarity index 100% rename from apps/dashboard/src/app/(public)/signin/page.tsx rename to apps/dashboard/src/app/(app)/(public)/signin/page.tsx diff --git a/apps/dashboard/src/app/(public)/signup/page.tsx b/apps/dashboard/src/app/(app)/(public)/signup/page.tsx similarity index 100% rename from apps/dashboard/src/app/(public)/signup/page.tsx rename to apps/dashboard/src/app/(app)/(public)/signup/page.tsx diff --git a/apps/dashboard/src/app/(public)/signup/success/page.tsx b/apps/dashboard/src/app/(app)/(public)/signup/success/page.tsx similarity index 100% rename from apps/dashboard/src/app/(public)/signup/success/page.tsx rename to apps/dashboard/src/app/(app)/(public)/signup/success/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/connections/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/connections/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/connections/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/connections/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/connections/rate-sheets/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/connections/rate-sheets/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/connections/rate-sheets/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/connections/rate-sheets/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/connections/system/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/connections/system/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/connections/system/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/connections/system/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/create_label/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/create_label/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/create_label/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/create_label/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/developers/api/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/api/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/developers/api/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/api/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/developers/apikeys/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/apikeys/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/developers/apikeys/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/apikeys/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/developers/events/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/events/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/developers/events/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/events/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/developers/events/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/events/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/developers/events/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/events/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/developers/logs/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/logs/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/developers/logs/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/logs/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/developers/logs/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/logs/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/developers/logs/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/logs/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/developers/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/developers/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/developers/webhooks/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/webhooks/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/developers/webhooks/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/developers/webhooks/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/draft_orders/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/draft_orders/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/draft_orders/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/draft_orders/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/layout.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/layout.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/layout.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/layout.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/manifests/create_manifests/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/manifests/create_manifests/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/manifests/create_manifests/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/manifests/create_manifests/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/manifests/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/manifests/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/manifests/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/manifests/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/orders/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/orders/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/orders/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/orders/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/orders/create_label/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/orders/create_label/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/orders/create_label/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/orders/create_label/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/orders/create_labels/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/orders/create_labels/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/orders/create_labels/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/orders/create_labels/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/orders/create_shipment/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/orders/create_shipment/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/orders/create_shipment/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/orders/create_shipment/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/orders/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/orders/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/orders/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/orders/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/settings/account/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/account/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/settings/account/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/account/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/settings/addresses/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/addresses/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/settings/addresses/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/addresses/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/settings/organization/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/organization/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/settings/organization/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/organization/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/settings/parcels/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/parcels/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/settings/parcels/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/parcels/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/settings/profile/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/profile/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/settings/profile/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/profile/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/settings/template/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/template/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/settings/template/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/template/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/settings/templates/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/templates/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/settings/templates/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/settings/templates/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/shipments/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/shipments/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/shipments/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/shipments/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/shipments/create_labels/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/shipments/create_labels/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/shipments/create_labels/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/shipments/create_labels/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/shipments/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/shipments/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/shipments/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/shipments/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/trackers/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/trackers/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/trackers/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/trackers/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/workflows/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/workflows/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/workflows/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/workflows/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/workflows/events/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/workflows/events/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/workflows/events/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/workflows/events/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/workflows/events/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/workflows/events/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/workflows/events/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/workflows/events/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/workflows/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(dashboard)/workflows/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(dashboard)/workflows/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(dashboard)/workflows/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(embed)/layout.tsx b/apps/dashboard/src/app/(app)/[domain]/(embed)/layout.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(embed)/layout.tsx rename to apps/dashboard/src/app/(app)/[domain]/(embed)/layout.tsx diff --git a/apps/dashboard/src/app/[domain]/(embed)/resources/graphiql/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(embed)/resources/graphiql/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(embed)/resources/graphiql/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(embed)/resources/graphiql/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(embed)/resources/reference/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(embed)/resources/reference/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(embed)/resources/reference/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(embed)/resources/reference/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(public)/accept-invite/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(public)/accept-invite/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(public)/accept-invite/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(public)/accept-invite/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(public)/email/[token]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(public)/email/[token]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(public)/email/[token]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(public)/email/[token]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(public)/email/change/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(public)/email/change/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(public)/email/change/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(public)/email/change/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(public)/layout.tsx b/apps/dashboard/src/app/(app)/[domain]/(public)/layout.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(public)/layout.tsx rename to apps/dashboard/src/app/(app)/[domain]/(public)/layout.tsx diff --git a/apps/dashboard/src/app/[domain]/(public)/password/reset/done/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(public)/password/reset/done/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(public)/password/reset/done/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(public)/password/reset/done/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(public)/password/reset/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(public)/password/reset/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(public)/password/reset/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(public)/password/reset/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(public)/password/reset/request/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(public)/password/reset/request/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(public)/password/reset/request/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(public)/password/reset/request/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(public)/password/reset/sent/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(public)/password/reset/sent/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(public)/password/reset/sent/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(public)/password/reset/sent/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(public)/signin/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(public)/signin/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(public)/signin/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(public)/signin/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(public)/signup/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(public)/signup/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(public)/signup/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(public)/signup/page.tsx diff --git a/apps/dashboard/src/app/[domain]/(public)/signup/success/page.tsx b/apps/dashboard/src/app/(app)/[domain]/(public)/signup/success/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/(public)/signup/success/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/(public)/signup/success/page.tsx diff --git a/apps/dashboard/src/app/[domain]/admin/carrier_connections/page.tsx b/apps/dashboard/src/app/(app)/[domain]/admin/carrier_connections/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/admin/carrier_connections/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/admin/carrier_connections/page.tsx diff --git a/apps/dashboard/src/app/[domain]/admin/organization_accounts/page.tsx b/apps/dashboard/src/app/(app)/[domain]/admin/organization_accounts/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/admin/organization_accounts/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/admin/organization_accounts/page.tsx diff --git a/apps/dashboard/src/app/[domain]/admin/page.tsx b/apps/dashboard/src/app/(app)/[domain]/admin/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/admin/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/admin/page.tsx diff --git a/apps/dashboard/src/app/[domain]/admin/surcharges/page.tsx b/apps/dashboard/src/app/(app)/[domain]/admin/surcharges/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/admin/surcharges/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/admin/surcharges/page.tsx diff --git a/apps/dashboard/src/app/[domain]/admin/user_accounts/page.tsx b/apps/dashboard/src/app/(app)/[domain]/admin/user_accounts/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/admin/user_accounts/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/admin/user_accounts/page.tsx diff --git a/apps/dashboard/src/app/[domain]/api/auth/[...nextauth]/route.ts b/apps/dashboard/src/app/(app)/[domain]/api/auth/[...nextauth]/route.ts similarity index 100% rename from apps/dashboard/src/app/[domain]/api/auth/[...nextauth]/route.ts rename to apps/dashboard/src/app/(app)/[domain]/api/auth/[...nextauth]/route.ts diff --git a/apps/dashboard/src/app/(app)/[domain]/api/images/[name]/route.ts b/apps/dashboard/src/app/(app)/[domain]/api/images/[name]/route.ts new file mode 100644 index 0000000000..1970200cfa --- /dev/null +++ b/apps/dashboard/src/app/(app)/[domain]/api/images/[name]/route.ts @@ -0,0 +1 @@ +export { GET } from "@karrio/core/context/image"; diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/connections/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/connections/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/connections/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/connections/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/connections/rate-sheets/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/connections/rate-sheets/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/connections/rate-sheets/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/connections/rate-sheets/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/connections/system/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/connections/system/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/connections/system/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/connections/system/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/create_label/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/create_label/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/create_label/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/create_label/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/developers/api/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/api/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/developers/api/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/api/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/developers/apikeys/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/apikeys/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/developers/apikeys/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/apikeys/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/developers/events/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/events/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/developers/events/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/events/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/developers/events/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/events/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/developers/events/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/events/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/developers/logs/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/logs/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/developers/logs/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/logs/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/developers/logs/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/logs/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/developers/logs/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/logs/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/developers/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/developers/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/developers/webhooks/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/webhooks/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/developers/webhooks/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/developers/webhooks/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/draft_orders/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/draft_orders/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/draft_orders/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/draft_orders/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/layout.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/layout.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/layout.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/layout.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/manifests/create_manifests/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/manifests/create_manifests/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/manifests/create_manifests/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/manifests/create_manifests/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/manifests/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/manifests/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/manifests/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/manifests/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/orders/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/orders/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/orders/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/orders/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/orders/create_label/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/orders/create_label/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/orders/create_label/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/orders/create_label/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/orders/create_labels/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/orders/create_labels/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/orders/create_labels/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/orders/create_labels/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/orders/create_shipment/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/orders/create_shipment/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/orders/create_shipment/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/orders/create_shipment/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/orders/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/orders/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/orders/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/orders/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/settings/account/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/account/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/settings/account/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/account/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/settings/addresses/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/addresses/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/settings/addresses/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/addresses/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/settings/organization/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/organization/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/settings/organization/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/organization/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/settings/parcels/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/parcels/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/settings/parcels/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/parcels/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/settings/profile/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/profile/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/settings/profile/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/profile/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/settings/template/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/template/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/settings/template/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/template/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/settings/templates/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/templates/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/settings/templates/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/settings/templates/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/shipments/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/shipments/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/shipments/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/shipments/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/shipments/create_labels/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/shipments/create_labels/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/shipments/create_labels/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/shipments/create_labels/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/shipments/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/shipments/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/shipments/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/shipments/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/trackers/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/trackers/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/trackers/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/trackers/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/workflows/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/workflows/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/workflows/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/workflows/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/workflows/events/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/workflows/events/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/workflows/events/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/workflows/events/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/workflows/events/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/workflows/events/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/workflows/events/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/workflows/events/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/workflows/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/workflows/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(dashboard)/workflows/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(dashboard)/workflows/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(embed)/layout.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(embed)/layout.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(embed)/layout.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(embed)/layout.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(embed)/resources/graphiql/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(embed)/resources/graphiql/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(embed)/resources/graphiql/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(embed)/resources/graphiql/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/(embed)/resources/reference/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/(embed)/resources/reference/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/(embed)/resources/reference/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/(embed)/resources/reference/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/admin/carrier_connections/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/admin/carrier_connections/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/admin/carrier_connections/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/admin/carrier_connections/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/admin/layout.tsx b/apps/dashboard/src/app/(app)/[domain]/test/admin/layout.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/admin/layout.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/admin/layout.tsx diff --git a/apps/dashboard/src/app/[domain]/test/admin/organization_accounts/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/admin/organization_accounts/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/admin/organization_accounts/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/admin/organization_accounts/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/admin/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/admin/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/admin/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/admin/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/admin/surcharges/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/admin/surcharges/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/admin/surcharges/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/admin/surcharges/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/admin/user_accounts/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/admin/user_accounts/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/admin/user_accounts/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/admin/user_accounts/page.tsx diff --git a/apps/dashboard/src/app/[domain]/test/tracking/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/test/tracking/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/test/tracking/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/test/tracking/[id]/page.tsx diff --git a/apps/dashboard/src/app/[domain]/tracking/[id]/page.tsx b/apps/dashboard/src/app/(app)/[domain]/tracking/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/[domain]/tracking/[id]/page.tsx rename to apps/dashboard/src/app/(app)/[domain]/tracking/[id]/page.tsx diff --git a/apps/dashboard/src/app/admin/carrier_connections/page.tsx b/apps/dashboard/src/app/(app)/admin/carrier_connections/page.tsx similarity index 100% rename from apps/dashboard/src/app/admin/carrier_connections/page.tsx rename to apps/dashboard/src/app/(app)/admin/carrier_connections/page.tsx diff --git a/apps/dashboard/src/app/test/admin/layout.tsx b/apps/dashboard/src/app/(app)/admin/layout.tsx similarity index 100% rename from apps/dashboard/src/app/test/admin/layout.tsx rename to apps/dashboard/src/app/(app)/admin/layout.tsx diff --git a/apps/dashboard/src/app/admin/organization_accounts/page.tsx b/apps/dashboard/src/app/(app)/admin/organization_accounts/page.tsx similarity index 100% rename from apps/dashboard/src/app/admin/organization_accounts/page.tsx rename to apps/dashboard/src/app/(app)/admin/organization_accounts/page.tsx diff --git a/apps/dashboard/src/app/admin/page.tsx b/apps/dashboard/src/app/(app)/admin/page.tsx similarity index 100% rename from apps/dashboard/src/app/admin/page.tsx rename to apps/dashboard/src/app/(app)/admin/page.tsx diff --git a/apps/dashboard/src/app/admin/surcharges/page.tsx b/apps/dashboard/src/app/(app)/admin/surcharges/page.tsx similarity index 100% rename from apps/dashboard/src/app/admin/surcharges/page.tsx rename to apps/dashboard/src/app/(app)/admin/surcharges/page.tsx diff --git a/apps/dashboard/src/app/admin/user_accounts/page.tsx b/apps/dashboard/src/app/(app)/admin/user_accounts/page.tsx similarity index 100% rename from apps/dashboard/src/app/admin/user_accounts/page.tsx rename to apps/dashboard/src/app/(app)/admin/user_accounts/page.tsx diff --git a/apps/dashboard/src/app/layout.tsx b/apps/dashboard/src/app/(app)/layout.tsx similarity index 100% rename from apps/dashboard/src/app/layout.tsx rename to apps/dashboard/src/app/(app)/layout.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/connections/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/connections/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/connections/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/connections/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/connections/rate-sheets/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/connections/rate-sheets/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/connections/rate-sheets/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/connections/rate-sheets/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/connections/system/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/connections/system/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/connections/system/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/connections/system/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/create_label/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/create_label/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/create_label/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/create_label/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/developers/api/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/developers/api/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/developers/api/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/developers/api/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/developers/apikeys/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/developers/apikeys/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/developers/apikeys/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/developers/apikeys/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/developers/events/[id]/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/developers/events/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/developers/events/[id]/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/developers/events/[id]/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/developers/events/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/developers/events/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/developers/events/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/developers/events/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/developers/logs/[id]/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/developers/logs/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/developers/logs/[id]/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/developers/logs/[id]/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/developers/logs/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/developers/logs/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/developers/logs/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/developers/logs/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/developers/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/developers/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/developers/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/developers/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/developers/webhooks/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/developers/webhooks/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/developers/webhooks/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/developers/webhooks/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/draft_orders/[id]/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/draft_orders/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/draft_orders/[id]/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/draft_orders/[id]/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/layout.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/layout.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/layout.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/layout.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/manifests/create_manifests/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/manifests/create_manifests/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/manifests/create_manifests/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/manifests/create_manifests/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/manifests/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/manifests/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/manifests/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/manifests/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/orders/[id]/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/orders/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/orders/[id]/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/orders/[id]/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/orders/create_label/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/orders/create_label/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/orders/create_label/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/orders/create_label/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/orders/create_labels/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/orders/create_labels/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/orders/create_labels/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/orders/create_labels/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/orders/create_shipment/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/orders/create_shipment/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/orders/create_shipment/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/orders/create_shipment/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/orders/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/orders/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/orders/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/orders/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/settings/account/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/settings/account/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/settings/account/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/settings/account/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/settings/addresses/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/settings/addresses/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/settings/addresses/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/settings/addresses/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/settings/organization/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/settings/organization/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/settings/organization/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/settings/organization/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/settings/parcels/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/settings/parcels/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/settings/parcels/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/settings/parcels/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/settings/profile/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/settings/profile/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/settings/profile/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/settings/profile/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/settings/template/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/settings/template/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/settings/template/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/settings/template/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/settings/templates/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/settings/templates/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/settings/templates/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/settings/templates/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/shipments/[id]/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/shipments/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/shipments/[id]/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/shipments/[id]/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/shipments/create_labels/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/shipments/create_labels/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/shipments/create_labels/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/shipments/create_labels/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/shipments/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/shipments/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/shipments/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/shipments/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/trackers/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/trackers/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/trackers/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/trackers/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/workflows/[id]/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/workflows/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/workflows/[id]/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/workflows/[id]/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/workflows/events/[id]/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/workflows/events/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/workflows/events/[id]/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/workflows/events/[id]/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/workflows/events/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/workflows/events/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/workflows/events/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/workflows/events/page.tsx diff --git a/apps/dashboard/src/app/test/(dashboard)/workflows/page.tsx b/apps/dashboard/src/app/(app)/test/(dashboard)/workflows/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(dashboard)/workflows/page.tsx rename to apps/dashboard/src/app/(app)/test/(dashboard)/workflows/page.tsx diff --git a/apps/dashboard/src/app/test/(embed)/layout.tsx b/apps/dashboard/src/app/(app)/test/(embed)/layout.tsx similarity index 100% rename from apps/dashboard/src/app/test/(embed)/layout.tsx rename to apps/dashboard/src/app/(app)/test/(embed)/layout.tsx diff --git a/apps/dashboard/src/app/test/(embed)/resources/graphiql/page.tsx b/apps/dashboard/src/app/(app)/test/(embed)/resources/graphiql/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(embed)/resources/graphiql/page.tsx rename to apps/dashboard/src/app/(app)/test/(embed)/resources/graphiql/page.tsx diff --git a/apps/dashboard/src/app/test/(embed)/resources/reference/page.tsx b/apps/dashboard/src/app/(app)/test/(embed)/resources/reference/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/(embed)/resources/reference/page.tsx rename to apps/dashboard/src/app/(app)/test/(embed)/resources/reference/page.tsx diff --git a/apps/dashboard/src/app/test/admin/carrier_connections/page.tsx b/apps/dashboard/src/app/(app)/test/admin/carrier_connections/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/admin/carrier_connections/page.tsx rename to apps/dashboard/src/app/(app)/test/admin/carrier_connections/page.tsx diff --git a/apps/dashboard/src/app/(app)/test/admin/layout.tsx b/apps/dashboard/src/app/(app)/test/admin/layout.tsx new file mode 100644 index 0000000000..48a08fd621 --- /dev/null +++ b/apps/dashboard/src/app/(app)/test/admin/layout.tsx @@ -0,0 +1 @@ +export { default } from "@karrio/core/layouts/admin-layout"; diff --git a/apps/dashboard/src/app/test/admin/organization_accounts/page.tsx b/apps/dashboard/src/app/(app)/test/admin/organization_accounts/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/admin/organization_accounts/page.tsx rename to apps/dashboard/src/app/(app)/test/admin/organization_accounts/page.tsx diff --git a/apps/dashboard/src/app/test/admin/page.tsx b/apps/dashboard/src/app/(app)/test/admin/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/admin/page.tsx rename to apps/dashboard/src/app/(app)/test/admin/page.tsx diff --git a/apps/dashboard/src/app/test/admin/surcharges/page.tsx b/apps/dashboard/src/app/(app)/test/admin/surcharges/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/admin/surcharges/page.tsx rename to apps/dashboard/src/app/(app)/test/admin/surcharges/page.tsx diff --git a/apps/dashboard/src/app/test/admin/user_accounts/page.tsx b/apps/dashboard/src/app/(app)/test/admin/user_accounts/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/admin/user_accounts/page.tsx rename to apps/dashboard/src/app/(app)/test/admin/user_accounts/page.tsx diff --git a/apps/dashboard/src/app/test/tracking/[id]/page.tsx b/apps/dashboard/src/app/(app)/test/tracking/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/test/tracking/[id]/page.tsx rename to apps/dashboard/src/app/(app)/test/tracking/[id]/page.tsx diff --git a/apps/dashboard/src/app/tracking/[id]/page.tsx b/apps/dashboard/src/app/(app)/tracking/[id]/page.tsx similarity index 100% rename from apps/dashboard/src/app/tracking/[id]/page.tsx rename to apps/dashboard/src/app/(app)/tracking/[id]/page.tsx diff --git a/apps/dashboard/src/app/(dashboard)/apps/development/page.tsx b/apps/dashboard/src/app/(dashboard)/apps/development/page.tsx deleted file mode 100644 index 231f6410f1..0000000000 --- a/apps/dashboard/src/app/(dashboard)/apps/development/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Apps/development"; diff --git a/apps/dashboard/src/app/(dashboard)/apps/page.tsx b/apps/dashboard/src/app/(dashboard)/apps/page.tsx deleted file mode 100644 index c79541e6fd..0000000000 --- a/apps/dashboard/src/app/(dashboard)/apps/page.tsx +++ /dev/null @@ -1 +0,0 @@ -export { default, generateMetadata } from "@karrio/core/modules/Apps"; diff --git a/apps/dashboard/src/app/(platform)/(auth)/layout.tsx b/apps/dashboard/src/app/(platform)/(auth)/layout.tsx new file mode 100644 index 0000000000..1ee82b603f --- /dev/null +++ b/apps/dashboard/src/app/(platform)/(auth)/layout.tsx @@ -0,0 +1 @@ +export { default } from "@karrio/insiders/layouts/dashboard-layout"; diff --git a/apps/dashboard/src/app/(platform)/(auth)/platform-carriers/page.tsx b/apps/dashboard/src/app/(platform)/(auth)/platform-carriers/page.tsx new file mode 100644 index 0000000000..27ac5caab8 --- /dev/null +++ b/apps/dashboard/src/app/(platform)/(auth)/platform-carriers/page.tsx @@ -0,0 +1,4 @@ +export { + default, + generateMetadata, +} from "@karrio/insiders/modules/platform-carriers"; diff --git a/apps/dashboard/src/app/(platform)/(auth)/platform-orders/page.tsx b/apps/dashboard/src/app/(platform)/(auth)/platform-orders/page.tsx new file mode 100644 index 0000000000..0b0689a314 --- /dev/null +++ b/apps/dashboard/src/app/(platform)/(auth)/platform-orders/page.tsx @@ -0,0 +1,4 @@ +export { + default, + generateMetadata, +} from "@karrio/insiders/modules/platform-orders"; diff --git a/apps/dashboard/src/app/(platform)/(auth)/platform-shipments/page.tsx b/apps/dashboard/src/app/(platform)/(auth)/platform-shipments/page.tsx new file mode 100644 index 0000000000..d37749b6ac --- /dev/null +++ b/apps/dashboard/src/app/(platform)/(auth)/platform-shipments/page.tsx @@ -0,0 +1,4 @@ +export { + default, + generateMetadata, +} from "@karrio/insiders/modules/platform-shipments"; diff --git a/apps/dashboard/src/app/(platform)/(auth)/platform-store/page.tsx b/apps/dashboard/src/app/(platform)/(auth)/platform-store/page.tsx new file mode 100644 index 0000000000..be14b75df4 --- /dev/null +++ b/apps/dashboard/src/app/(platform)/(auth)/platform-store/page.tsx @@ -0,0 +1,4 @@ +export { + default, + generateMetadata, +} from "@karrio/insiders/modules/platform-store"; diff --git a/apps/dashboard/src/app/(platform)/(auth)/platform-trackers/page.tsx b/apps/dashboard/src/app/(platform)/(auth)/platform-trackers/page.tsx new file mode 100644 index 0000000000..453892679a --- /dev/null +++ b/apps/dashboard/src/app/(platform)/(auth)/platform-trackers/page.tsx @@ -0,0 +1,4 @@ +export { + default, + generateMetadata, +} from "@karrio/insiders/modules/platform-trackers"; diff --git a/apps/dashboard/src/app/(platform)/layout.tsx b/apps/dashboard/src/app/(platform)/layout.tsx new file mode 100644 index 0000000000..460d9a9dc4 --- /dev/null +++ b/apps/dashboard/src/app/(platform)/layout.tsx @@ -0,0 +1,2 @@ +import "../../styles/globals.css"; +export { default } from "@karrio/insiders/layouts/root-layout"; diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/apps/development/page.tsx b/apps/dashboard/src/app/[domain]/(dashboard)/apps/development/page.tsx deleted file mode 100644 index 231f6410f1..0000000000 --- a/apps/dashboard/src/app/[domain]/(dashboard)/apps/development/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Apps/development"; diff --git a/apps/dashboard/src/app/[domain]/(dashboard)/apps/page.tsx b/apps/dashboard/src/app/[domain]/(dashboard)/apps/page.tsx deleted file mode 100644 index c79541e6fd..0000000000 --- a/apps/dashboard/src/app/[domain]/(dashboard)/apps/page.tsx +++ /dev/null @@ -1 +0,0 @@ -export { default, generateMetadata } from "@karrio/core/modules/Apps"; diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/apps/development/page.tsx b/apps/dashboard/src/app/[domain]/test/(dashboard)/apps/development/page.tsx deleted file mode 100644 index 231f6410f1..0000000000 --- a/apps/dashboard/src/app/[domain]/test/(dashboard)/apps/development/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Apps/development"; diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/apps/page.tsx b/apps/dashboard/src/app/[domain]/test/(dashboard)/apps/page.tsx deleted file mode 100644 index c79541e6fd..0000000000 --- a/apps/dashboard/src/app/[domain]/test/(dashboard)/apps/page.tsx +++ /dev/null @@ -1 +0,0 @@ -export { default, generateMetadata } from "@karrio/core/modules/Apps"; diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/email/[token]/page.tsx b/apps/dashboard/src/app/[domain]/test/(dashboard)/email/[token]/page.tsx deleted file mode 100644 index 1aa6684056..0000000000 --- a/apps/dashboard/src/app/[domain]/test/(dashboard)/email/[token]/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Registration/confirm_email"; diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/email/change/page.tsx b/apps/dashboard/src/app/[domain]/test/(dashboard)/email/change/page.tsx deleted file mode 100644 index 8169fee65e..0000000000 --- a/apps/dashboard/src/app/[domain]/test/(dashboard)/email/change/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Registration/confirm_email_change"; diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/done/page.tsx b/apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/done/page.tsx deleted file mode 100644 index 9c3e836560..0000000000 --- a/apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/done/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Password/reset/done"; diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/page.tsx b/apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/page.tsx deleted file mode 100644 index 1aa425cb55..0000000000 --- a/apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/page.tsx +++ /dev/null @@ -1 +0,0 @@ -export { default, generateMetadata } from "@karrio/core/modules/Password/reset"; diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/request/page.tsx b/apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/request/page.tsx deleted file mode 100644 index b0426a41a3..0000000000 --- a/apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/request/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Password/reset/request"; diff --git a/apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/sent/page.tsx b/apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/sent/page.tsx deleted file mode 100644 index 641e16f778..0000000000 --- a/apps/dashboard/src/app/[domain]/test/(dashboard)/password/reset/sent/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Password/reset/sent"; diff --git a/apps/dashboard/src/app/api/images/[name]/route.ts b/apps/dashboard/src/app/api/images/[name]/route.ts index d82a4e9bd6..1970200cfa 100644 --- a/apps/dashboard/src/app/api/images/[name]/route.ts +++ b/apps/dashboard/src/app/api/images/[name]/route.ts @@ -1,43 +1 @@ -import { formatCarrierSlug, getInitials, isNoneOrEmpty } from "@karrio/lib"; -import { NextRequest } from "next/server"; - -export async function GET( - request: NextRequest, - { params }: { params: { name: string } }, -) { - const { name } = params; - const searchParams = request.nextUrl.searchParams; - const isIcon = name.includes("_icon"); - const [_name, ..._] = name.replace(isIcon ? "_icon" : "_logo", "").split("."); - const carrier_name = isIcon - ? getInitials(_name).substring(0, 2) - : formatCarrierSlug(_name); - const text_color = isNoneOrEmpty(searchParams.get("text_color")) - ? "#ddd" - : decodeURIComponent(searchParams.get("text_color") as string); - const background = isNoneOrEmpty(searchParams.get("background")) - ? "#7e51e1" - : decodeURIComponent(searchParams.get("background") as string); - const props = isIcon ? 'viewBox="0 0 512 512"' : 'viewBox="0 0 125 25"'; - const path = isIcon - ? `` - : ``; - - const content = ` - - ${path} - - - ${carrier_name} - - - - `; - - return new Response(content, { - headers: { - "Content-Type": "image/svg+xml", - }, - }); -} +export { GET } from "@karrio/core/context/image"; diff --git a/apps/dashboard/src/app/test/(dashboard)/apps/development/page.tsx b/apps/dashboard/src/app/test/(dashboard)/apps/development/page.tsx deleted file mode 100644 index 231f6410f1..0000000000 --- a/apps/dashboard/src/app/test/(dashboard)/apps/development/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Apps/development"; diff --git a/apps/dashboard/src/app/test/(dashboard)/apps/page.tsx b/apps/dashboard/src/app/test/(dashboard)/apps/page.tsx deleted file mode 100644 index c79541e6fd..0000000000 --- a/apps/dashboard/src/app/test/(dashboard)/apps/page.tsx +++ /dev/null @@ -1 +0,0 @@ -export { default, generateMetadata } from "@karrio/core/modules/Apps"; diff --git a/apps/dashboard/src/app/test/(dashboard)/email/[token]/page.tsx b/apps/dashboard/src/app/test/(dashboard)/email/[token]/page.tsx deleted file mode 100644 index 1aa6684056..0000000000 --- a/apps/dashboard/src/app/test/(dashboard)/email/[token]/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Registration/confirm_email"; diff --git a/apps/dashboard/src/app/test/(dashboard)/email/change/page.tsx b/apps/dashboard/src/app/test/(dashboard)/email/change/page.tsx deleted file mode 100644 index 8169fee65e..0000000000 --- a/apps/dashboard/src/app/test/(dashboard)/email/change/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Registration/confirm_email_change"; diff --git a/apps/dashboard/src/app/test/(dashboard)/password/reset/done/page.tsx b/apps/dashboard/src/app/test/(dashboard)/password/reset/done/page.tsx deleted file mode 100644 index 9c3e836560..0000000000 --- a/apps/dashboard/src/app/test/(dashboard)/password/reset/done/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Password/reset/done"; diff --git a/apps/dashboard/src/app/test/(dashboard)/password/reset/page.tsx b/apps/dashboard/src/app/test/(dashboard)/password/reset/page.tsx deleted file mode 100644 index 1aa425cb55..0000000000 --- a/apps/dashboard/src/app/test/(dashboard)/password/reset/page.tsx +++ /dev/null @@ -1 +0,0 @@ -export { default, generateMetadata } from "@karrio/core/modules/Password/reset"; diff --git a/apps/dashboard/src/app/test/(dashboard)/password/reset/request/page.tsx b/apps/dashboard/src/app/test/(dashboard)/password/reset/request/page.tsx deleted file mode 100644 index b0426a41a3..0000000000 --- a/apps/dashboard/src/app/test/(dashboard)/password/reset/request/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Password/reset/request"; diff --git a/apps/dashboard/src/app/test/(dashboard)/password/reset/sent/page.tsx b/apps/dashboard/src/app/test/(dashboard)/password/reset/sent/page.tsx deleted file mode 100644 index 641e16f778..0000000000 --- a/apps/dashboard/src/app/test/(dashboard)/password/reset/sent/page.tsx +++ /dev/null @@ -1,4 +0,0 @@ -export { - default, - generateMetadata, -} from "@karrio/core/modules/Password/reset/sent"; diff --git a/apps/dashboard/src/styles/globals.css b/apps/dashboard/src/styles/globals.css new file mode 100644 index 0000000000..666a0e64dd --- /dev/null +++ b/apps/dashboard/src/styles/globals.css @@ -0,0 +1,85 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +@layer base { + :root { + --background: 0 0% 100%; + --foreground: 224 71.4% 4.1%; + --card: 0 0% 100%; + --card-foreground: 224 71.4% 4.1%; + --popover: 0 0% 100%; + --popover-foreground: 224 71.4% 4.1%; + --primary: 259 71% 47%; + --primary-foreground: 210 20% 98%; + --secondary: 220 14.3% 95.9%; + --secondary-foreground: 220.9 39.3% 11%; + --muted: 220 14.3% 95.9%; + --muted-foreground: 220 8.9% 46.1%; + --accent: 220 14.3% 95.9%; + --accent-foreground: 220.9 39.3% 11%; + --destructive: 0 84.2% 60.2%; + --destructive-foreground: 210 20% 98%; + --border: 220 13% 91%; + --input: 220 13% 91%; + --ring: 262.1 83.3% 57.8%; + --radius: 0.3rem; + --chart-1: 12 76% 61%; + --chart-2: 173 58% 39%; + --chart-3: 197 37% 24%; + --chart-4: 43 74% 66%; + --chart-5: 27 87% 67%; + } + + /* .dark { + --background: 224 71.4% 4.1%; + --foreground: 210 20% 98%; + --card: 224 71.4% 4.1%; + --card-foreground: 210 20% 98%; + --popover: 224 71.4% 4.1%; + --popover-foreground: 210 20% 98%; + --primary: 263.4 70% 50.4%; + --primary-foreground: 210 20% 98%; + --secondary: 215 27.9% 16.9%; + --secondary-foreground: 210 20% 98%; + --muted: 215 27.9% 16.9%; + --muted-foreground: 217.9 10.6% 64.9%; + --accent: 215 27.9% 16.9%; + --accent-foreground: 210 20% 98%; + --destructive: 0 62.8% 30.6%; + --destructive-foreground: 210 20% 98%; + --border: 215 27.9% 16.9%; + --input: 215 27.9% 16.9%; + --ring: 263.4 70% 50.4%; + --chart-1: 220 70% 50%; + --chart-2: 160 60% 45%; + --chart-3: 30 80% 55%; + --chart-4: 280 65% 60%; + --chart-5: 340 75% 55%; + } */ +} + +:root { + --background: #ffffff; + --foreground: #171717; +} + +/* @media (prefers-color-scheme: dark) { + :root { + --background: #0a0a0a; + --foreground: #ededed; + } +} */ + +body { + color: var(--foreground); + background: var(--background); + font-family: Arial, Helvetica, sans-serif; + font-size: 14px; +} + +@layer utilities { + .text-balance { + text-wrap: balance; + } +} diff --git a/apps/dashboard/tailwind.config.ts b/apps/dashboard/tailwind.config.ts new file mode 100644 index 0000000000..a5c568ea0c --- /dev/null +++ b/apps/dashboard/tailwind.config.ts @@ -0,0 +1,80 @@ +import type { Config } from "tailwindcss"; +import { fontFamily } from "tailwindcss/defaultTheme"; + +const config: Config = { + darkMode: ["class"], + content: [ + "./src/app/(platform)/**/*.{js,ts,jsx,tsx,mdx}", + "../../packages/insiders/components/**/*.{js,ts,jsx,tsx,mdx}", + "../../packages/insiders/layouts/**/*.{js,ts,jsx,tsx,mdx}", + "../../packages/insiders/modules/**/*.{js,ts,jsx,tsx,mdx}", + ], + theme: { + extend: { + fontSize: { + base: "14px", + }, + fontFamily: { + heading: ["var(--font-heading)", ...fontFamily.sans], + body: ["var(--font-body)", ...fontFamily.sans], + }, + colors: { + border: "hsl(var(--border))", + input: "hsl(var(--input))", + ring: "hsl(var(--ring))", + background: "hsl(var(--background))", + foreground: "hsl(var(--foreground))", + primary: { + DEFAULT: "hsl(var(--primary))", + foreground: "hsl(var(--primary-foreground))", + }, + secondary: { + DEFAULT: "hsl(var(--secondary))", + foreground: "hsl(var(--secondary-foreground))", + }, + destructive: { + DEFAULT: "hsl(var(--destructive))", + foreground: "hsl(var(--destructive-foreground))", + }, + muted: { + DEFAULT: "hsl(var(--muted))", + foreground: "hsl(var(--muted-foreground))", + }, + accent: { + DEFAULT: "hsl(var(--accent))", + foreground: "hsl(var(--accent-foreground))", + }, + popover: { + DEFAULT: "hsl(var(--popover))", + foreground: "hsl(var(--popover-foreground))", + }, + card: { + DEFAULT: "hsl(var(--card))", + foreground: "hsl(var(--card-foreground))", + }, + }, + borderRadius: { + xl: `calc(var(--radius) + 4px)`, + lg: `var(--radius)`, + md: `calc(var(--radius) - 2px)`, + sm: `calc(var(--radius) - 4px)`, + }, + keyframes: { + "accordion-down": { + from: { height: "0" }, + to: { height: "var(--radix-accordion-content-height)" }, + }, + "accordion-up": { + from: { height: "var(--radix-accordion-content-height)" }, + to: { height: "0" }, + }, + }, + animation: { + "accordion-down": "accordion-down 0.2s ease-out", + "accordion-up": "accordion-up 0.2s ease-out", + }, + }, + }, + plugins: [require("tailwindcss-animate")], +}; +export default config; diff --git a/apps/dashboard/tsconfig.json b/apps/dashboard/tsconfig.json index ad13dd1bba..8ca2eee934 100644 --- a/apps/dashboard/tsconfig.json +++ b/apps/dashboard/tsconfig.json @@ -1,29 +1,32 @@ { - "extends": "@karrio/tsconfig/nextjs.json", "compilerOptions": { + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true, "plugins": [ { - "name": "next" - } + "name": "next", + }, ], - "baseUrl": ".", "paths": { - "@/*": [ - "./src/*" - ], - "react": [ - "./node_modules/@types/react" - ] - } + "@/*": ["./src/*"], + }, }, "include": [ "next-env.d.ts", - "karrio/**/*.ts", - "./src/**/*.ts", - "./src/**/*.tsx", - ".next/types/**/*.ts" + "**/*.ts", + "**/*.tsx", + ".next/types/**/*.ts", + "tailwind.config.js", ], - "exclude": [ - "node_modules" - ] + "exclude": ["node_modules"], } diff --git a/package-lock.json b/package-lock.json index 15994809d0..01192eca4b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,6 +16,7 @@ "@rollup/plugin-json": "^6.0.1", "eslint": "^8.48.0", "prettier": "^3.0.3", + "tailwindcss": "^3.4.10", "tsconfig": "*", "turbo": "^2.0.14" } @@ -24,89 +25,42 @@ "version": "1.0.0" }, "apps/dashboard": { - "name": "@karrio/dashboard", - "version": "1.0.0", + "name": "@karrio/platform", + "version": "0.1.0", "dependencies": { "@karrio/core": "*", "@karrio/hooks": "*", + "@karrio/insiders": "*", "@karrio/lib": "*", "@karrio/types": "*", "@karrio/ui": "*" }, "devDependencies": { - "eslint": "7.32.0", - "eslint-config-custom": "*", - "eslint-config-next": "^13.1.2", + "eslint": "^8", + "eslint-config-next": "14.2.8", + "postcss": "^8", + "tailwindcss": "^3.4.1", "tsconfig": "*" } }, - "apps/dashboard/node_modules/eslint": { - "version": "7.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", - "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.3", - "@humanwhocodes/config-array": "^0.5.0", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "enquirer": "^2.3.5", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.1.2", - "globals": "^13.6.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", - "strip-json-comments": "^3.1.0", - "table": "^6.0.9", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "apps/dashboard/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, + "apps/platform": { + "name": "@karrio/platform", + "version": "0.1.0", + "extraneous": true, "dependencies": { - "is-glob": "^4.0.1" + "next": "14.2.8", + "react": "^18", + "react-dom": "^18" }, - "engines": { - "node": ">= 6" + "devDependencies": { + "@types/node": "^20", + "@types/react": "^18", + "@types/react-dom": "^18", + "eslint": "^8", + "eslint-config-next": "14.2.8", + "postcss": "^8", + "tailwindcss": "^3.4.1", + "typescript": "^5" } }, "apps/www": { @@ -482,7 +436,6 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", - "dev": true, "engines": { "node": ">=10" }, @@ -2861,7 +2814,7 @@ "version": "0.8.1", "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dev": true, + "devOptional": true, "dependencies": { "@jridgewell/trace-mapping": "0.3.9" }, @@ -2873,7 +2826,7 @@ "version": "0.3.9", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, + "devOptional": true, "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" @@ -4787,31 +4740,12 @@ "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "node_modules/@eslint/eslintrc": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", - "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", - "globals": "^13.9.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, "node_modules/@eslint/js": { - "version": "8.56.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", - "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", "devOptional": true, + "license": "MIT", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } @@ -5018,20 +4952,6 @@ "react-hook-form": "^7.0.0" } }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", - "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", - "dev": true, - "dependencies": { - "@humanwhocodes/object-schema": "^1.2.0", - "debug": "^4.1.1", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=10.10.0" - } - }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -5045,12 +4965,6 @@ "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", @@ -5223,10 +5137,6 @@ "resolved": "packages/core", "link": true }, - "node_modules/@karrio/dashboard": { - "resolved": "apps/dashboard", - "link": true - }, "node_modules/@karrio/eslint-config-custom": { "resolved": "packages/eslint-config-custom", "link": true @@ -5235,10 +5145,18 @@ "resolved": "packages/hooks", "link": true }, + "node_modules/@karrio/insiders": { + "resolved": "packages/insiders", + "link": true + }, "node_modules/@karrio/lib": { "resolved": "packages/lib", "link": true }, + "node_modules/@karrio/platform": { + "resolved": "apps/dashboard", + "link": true + }, "node_modules/@karrio/tsconfig": { "resolved": "packages/tsconfig", "link": true @@ -5496,44 +5414,74 @@ } }, "node_modules/@next/env": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.6.tgz", - "integrity": "sha512-bs5DFKV+08EjWrl8EB+KKqev1ZTNONH1vFCaHh911aaB362NnP32UDTbE9VQhyiAgbFqJsfDkSxFERNDDb3j0g==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.8.tgz", + "integrity": "sha512-L44a+ynqkolyNBnYfF8VoCiSrjSZWgEHYKkKLGcs/a80qh7AkfVUD/MduVPgdsWZ31tgROR+yJRA0PZjSVBXWQ==", "license": "MIT" }, "node_modules/@next/eslint-plugin-next": { - "version": "13.5.6", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.5.6.tgz", - "integrity": "sha512-ng7pU/DDsxPgT6ZPvuprxrkeew3XaRf4LAT4FabaEO/hAbvVx4P7wqnqdbTdDn1kgTvsI4tpIgT4Awn/m0bGbg==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.8.tgz", + "integrity": "sha512-ue5vcq9Fjk3asACRDrzYjcGMEN7pMMDQ5zUD+FenkqvlPCVUD1x7PxBNOLfPYDZOrk/Vnl4GHmjj2mZDqPW8TQ==", "dev": true, + "license": "MIT", "dependencies": { - "glob": "7.1.7" + "glob": "10.3.10" + } + }, + "node_modules/@next/eslint-plugin-next/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" } }, "node_modules/@next/eslint-plugin-next/node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, + "license": "ISC", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": "*" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@next/eslint-plugin-next/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.6.tgz", - "integrity": "sha512-BtJZb+hYXGaVJJivpnDoi3JFVn80SHKCiiRUW3kk1SY6UCUy5dWFFSbh+tGi5lHAughzeduMyxbLt3pspvXNSg==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.8.tgz", + "integrity": "sha512-1VrQlG8OzdyvvGZhGJFnaNE2P10Jjy/2FopnqbY0nSa/gr8If3iINxvOEW3cmVeoAYkmW0RsBazQecA2dBFOSw==", "cpu": [ "arm64" ], @@ -5547,9 +5495,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.6.tgz", - "integrity": "sha512-ZHRbGpH6KHarzm6qEeXKSElSXh8dS2DtDPjQt3IMwY8QVk7GbdDYjvV4NgSnDA9huGpGgnyy3tH8i5yHCqVkiQ==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.8.tgz", + "integrity": "sha512-87t3I86rNRSOJB1gXIUzaQWWSWrkWPDyZGsR0Z7JAPtLeX3uUOW2fHxl7dNWD2BZvbvftctTQjgtfpp7nMtmWg==", "cpu": [ "x64" ], @@ -5563,9 +5511,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.6.tgz", - "integrity": "sha512-O4HqUEe3ZvKshXHcDUXn1OybN4cSZg7ZdwHJMGCXSUEVUqGTJVsOh17smqilIjooP/sIJksgl+1kcf2IWMZWHg==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.8.tgz", + "integrity": "sha512-ta2sfVzbOpTbgBrF9HM5m+U58dv6QPuwU4n5EX4LLyCJGKc433Z0D9h9gay/HSOjLEXJ2fJYrMP5JYYbHdxhtw==", "cpu": [ "arm64" ], @@ -5579,9 +5527,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.6.tgz", - "integrity": "sha512-xUcdhr2hfalG8RDDGSFxQ75yOG894UlmFS4K2M0jLrUhauRBGOtUOxoDVwiIIuZQwZ3Y5hDsazNjdYGB0cQ9yQ==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.8.tgz", + "integrity": "sha512-+IoLTPK6Z5uIgDhgeWnQF5/o5GBN7+zyUNrs4Bes1W3g9++YELb8y0unFybS8s87ntAKMDl6jeQ+mD7oNwp/Ng==", "cpu": [ "arm64" ], @@ -5595,9 +5543,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.6.tgz", - "integrity": "sha512-InosKxw8UMcA/wEib5n2QttwHSKHZHNSbGcMepBM0CTcNwpxWzX32KETmwbhKod3zrS8n1vJ+DuJKbL9ZAB0Ag==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.8.tgz", + "integrity": "sha512-pO+hVXC+mvzUOQJJRG4RX4wJsRJ5BkURSf6dD6EjUXAX4Ml9es1WsEfkaZ4lcpmFzFvY47IkDaffks/GdCn9ag==", "cpu": [ "x64" ], @@ -5611,9 +5559,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.6.tgz", - "integrity": "sha512-d4QXfJmt5pGJ7cG8qwxKSBnO5AXuKAFYxV7qyDRHnUNvY/dgDh+oX292gATpB2AAHgjdHd5ks1wXxIEj6muLUQ==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.8.tgz", + "integrity": "sha512-bCat9izctychCtf3uL1nqHq31N5e1VxvdyNcBQflkudPMLbxVnlrw45Vi87K+lt1CwrtVayHqzo4ie0Szcpwzg==", "cpu": [ "x64" ], @@ -5627,9 +5575,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.6.tgz", - "integrity": "sha512-AlgIhk4/G+PzOG1qdF1b05uKTMsuRatFlFzAi5G8RZ9h67CVSSuZSbqGHbJDlcV1tZPxq/d4G0q6qcHDKWf4aQ==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.8.tgz", + "integrity": "sha512-gbxfUaSPV7EyUobpavida2Hwi62GhSJaSg7iBjmBWoxkxlmETOD7U4tWt763cGIsyE6jM7IoNavq0BXqwdW2QA==", "cpu": [ "arm64" ], @@ -5643,9 +5591,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.6.tgz", - "integrity": "sha512-hNukAxq7hu4o5/UjPp5jqoBEtrpCbOmnUqZSKNJG8GrUVzfq0ucdhQFVrHcLRMvQcwqqDh1a5AJN9ORnNDpgBQ==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.8.tgz", + "integrity": "sha512-PUXzEzjTTlUh3b5VAn1nlpwvujTnuCMMwbiCnaTazoVlN1nA3kWjlmp42IfURA2N/nyrlVEw7pURa/o4Qxj1cw==", "cpu": [ "ia32" ], @@ -5659,9 +5607,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.6.tgz", - "integrity": "sha512-NANtw+ead1rSDK1jxmzq3TYkl03UNK2KHqUYf1nIhNci6NkeqBD4s1njSzYGIlSHxCK+wSaL8RXZm4v+NF/pMw==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.8.tgz", + "integrity": "sha512-EnPKv0ttq02E9/1KZ/8Dn7kuutv6hy1CKc0HlNcvzOQcm4/SQtvfws5gY0zrG9tuupd3HfC2L/zcTrnBhpjTuQ==", "cpu": [ "x64" ], @@ -5683,6 +5631,297 @@ "eslint-scope": "5.1.1" } }, + "node_modules/@nivo/annotations": { + "version": "0.87.0", + "resolved": "https://registry.npmjs.org/@nivo/annotations/-/annotations-0.87.0.tgz", + "integrity": "sha512-4Xk/soEmi706iOKszjX1EcGLBNIvhMifCYXOuLIFlMAXqhw1x2YS7PxickVSskdSzJCwJX4NgQ/R/9u6nxc5OA==", + "license": "MIT", + "dependencies": { + "@nivo/colors": "0.87.0", + "@nivo/core": "0.87.0", + "@react-spring/web": "9.4.5 || ^9.7.2", + "lodash": "^4.17.21" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/axes": { + "version": "0.87.0", + "resolved": "https://registry.npmjs.org/@nivo/axes/-/axes-0.87.0.tgz", + "integrity": "sha512-zCRBfiRKJi+xOxwxH5Pxq/8+yv3fAYDl4a1F2Ssnp5gMIobwzVsdearvsm5B04e9bfy3ZXTL7KgbkEkSAwu6SA==", + "license": "MIT", + "dependencies": { + "@nivo/core": "0.87.0", + "@nivo/scales": "0.87.0", + "@react-spring/web": "9.4.5 || ^9.7.2", + "@types/d3-format": "^1.4.1", + "@types/d3-time-format": "^2.3.1", + "d3-format": "^1.4.4", + "d3-time-format": "^3.0.0" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/axes/node_modules/d3-array": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz", + "integrity": "sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==", + "license": "BSD-3-Clause", + "dependencies": { + "internmap": "^1.0.0" + } + }, + "node_modules/@nivo/axes/node_modules/d3-format": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.4.5.tgz", + "integrity": "sha512-J0piedu6Z8iB6TbIGfZgDzfXxUFN3qQRMofy2oPdXzQibYGqPB/9iMcxr/TGalU+2RsyDO+U4f33id8tbnSRMQ==", + "license": "BSD-3-Clause" + }, + "node_modules/@nivo/axes/node_modules/d3-time": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-2.1.1.tgz", + "integrity": "sha512-/eIQe/eR4kCQwq7yxi7z4c6qEXf2IYGcjoWB5OOQy4Tq9Uv39/947qlDcN2TLkiTzQWzvnsuYPB9TrWaNfipKQ==", + "license": "BSD-3-Clause", + "dependencies": { + "d3-array": "2" + } + }, + "node_modules/@nivo/axes/node_modules/d3-time-format": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-3.0.0.tgz", + "integrity": "sha512-UXJh6EKsHBTjopVqZBhFysQcoXSv/5yLONZvkQ5Kk3qbwiUYkdX17Xa1PT6U1ZWXGGfB1ey5L8dKMlFq2DO0Ag==", + "license": "BSD-3-Clause", + "dependencies": { + "d3-time": "1 - 2" + } + }, + "node_modules/@nivo/axes/node_modules/internmap": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz", + "integrity": "sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==", + "license": "ISC" + }, + "node_modules/@nivo/bar": { + "version": "0.87.0", + "resolved": "https://registry.npmjs.org/@nivo/bar/-/bar-0.87.0.tgz", + "integrity": "sha512-r/MEVCNAHKfmsy1Fb+JztVczOhIEtAx4VFs2XUbn9YpEDgxydavUJyfoy5/nGq6h5jG1/t47cfB4nZle7c0fyQ==", + "license": "MIT", + "dependencies": { + "@nivo/annotations": "0.87.0", + "@nivo/axes": "0.87.0", + "@nivo/colors": "0.87.0", + "@nivo/core": "0.87.0", + "@nivo/legends": "0.87.0", + "@nivo/scales": "0.87.0", + "@nivo/tooltip": "0.87.0", + "@react-spring/web": "9.4.5 || ^9.7.2", + "@types/d3-scale": "^4.0.8", + "@types/d3-shape": "^3.1.6", + "d3-scale": "^4.0.2", + "d3-shape": "^3.2.0", + "lodash": "^4.17.21" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/colors": { + "version": "0.87.0", + "resolved": "https://registry.npmjs.org/@nivo/colors/-/colors-0.87.0.tgz", + "integrity": "sha512-S4pZzRGKK23t8XAjQMhML6wwsfKO9nH03xuyN4SvCodNA/Dmdys9xV+9Dg/VILTzvzsBTBGTX0dFBg65WoKfVg==", + "license": "MIT", + "dependencies": { + "@nivo/core": "0.87.0", + "@types/d3-color": "^3.0.0", + "@types/d3-scale": "^4.0.8", + "@types/d3-scale-chromatic": "^3.0.0", + "@types/prop-types": "^15.7.2", + "d3-color": "^3.1.0", + "d3-scale": "^4.0.2", + "d3-scale-chromatic": "^3.0.0", + "lodash": "^4.17.21", + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/core": { + "version": "0.87.0", + "resolved": "https://registry.npmjs.org/@nivo/core/-/core-0.87.0.tgz", + "integrity": "sha512-yEQWJn7QjWnbmCZccBCo4dligNyNyz3kgyV9vEtcaB1iGeKhg55RJEAlCOul+IDgSCSPFci2SxTmipE6LZEZCg==", + "license": "MIT", + "dependencies": { + "@nivo/tooltip": "0.87.0", + "@react-spring/web": "9.4.5 || ^9.7.2", + "@types/d3-shape": "^3.1.6", + "d3-color": "^3.1.0", + "d3-format": "^1.4.4", + "d3-interpolate": "^3.0.1", + "d3-scale": "^4.0.2", + "d3-scale-chromatic": "^3.0.0", + "d3-shape": "^3.2.0", + "d3-time-format": "^3.0.0", + "lodash": "^4.17.21", + "prop-types": "^15.7.2" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nivo/donate" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/core/node_modules/d3-array": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz", + "integrity": "sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==", + "license": "BSD-3-Clause", + "dependencies": { + "internmap": "^1.0.0" + } + }, + "node_modules/@nivo/core/node_modules/d3-format": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.4.5.tgz", + "integrity": "sha512-J0piedu6Z8iB6TbIGfZgDzfXxUFN3qQRMofy2oPdXzQibYGqPB/9iMcxr/TGalU+2RsyDO+U4f33id8tbnSRMQ==", + "license": "BSD-3-Clause" + }, + "node_modules/@nivo/core/node_modules/d3-time": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-2.1.1.tgz", + "integrity": "sha512-/eIQe/eR4kCQwq7yxi7z4c6qEXf2IYGcjoWB5OOQy4Tq9Uv39/947qlDcN2TLkiTzQWzvnsuYPB9TrWaNfipKQ==", + "license": "BSD-3-Clause", + "dependencies": { + "d3-array": "2" + } + }, + "node_modules/@nivo/core/node_modules/d3-time-format": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-3.0.0.tgz", + "integrity": "sha512-UXJh6EKsHBTjopVqZBhFysQcoXSv/5yLONZvkQ5Kk3qbwiUYkdX17Xa1PT6U1ZWXGGfB1ey5L8dKMlFq2DO0Ag==", + "license": "BSD-3-Clause", + "dependencies": { + "d3-time": "1 - 2" + } + }, + "node_modules/@nivo/core/node_modules/internmap": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz", + "integrity": "sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==", + "license": "ISC" + }, + "node_modules/@nivo/legends": { + "version": "0.87.0", + "resolved": "https://registry.npmjs.org/@nivo/legends/-/legends-0.87.0.tgz", + "integrity": "sha512-bVJCeqEmK4qHrxNaPU/+hXUd/yaKlcQ0yrsR18ewoknVX+pgvbe/+tRKJ+835JXlvRijYIuqwK1sUJQIxyB7oA==", + "license": "MIT", + "dependencies": { + "@nivo/colors": "0.87.0", + "@nivo/core": "0.87.0", + "@types/d3-scale": "^4.0.8", + "d3-scale": "^4.0.2" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/line": { + "version": "0.87.0", + "resolved": "https://registry.npmjs.org/@nivo/line/-/line-0.87.0.tgz", + "integrity": "sha512-Ki/WDd8ZU8VWScW4ZeKUFCXRdAEg8nrS+F+jdfJDPxyxUMHZJCAbrXrnsExcEQLOaDQ2aU/bijEMiDS8/dJzuA==", + "license": "MIT", + "dependencies": { + "@nivo/annotations": "0.87.0", + "@nivo/axes": "0.87.0", + "@nivo/colors": "0.87.0", + "@nivo/core": "0.87.0", + "@nivo/legends": "0.87.0", + "@nivo/scales": "0.87.0", + "@nivo/tooltip": "0.87.0", + "@nivo/voronoi": "0.87.0", + "@react-spring/web": "9.4.5 || ^9.7.2", + "d3-shape": "^3.2.0" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/scales": { + "version": "0.87.0", + "resolved": "https://registry.npmjs.org/@nivo/scales/-/scales-0.87.0.tgz", + "integrity": "sha512-IHdY9w2em/xpWurcbhUR3cUA1dgbY06rU8gmA/skFCwf3C4Da3Rqwr0XqvxmkDC+EdT/iFljMbLst7VYiCnSdw==", + "license": "MIT", + "dependencies": { + "@types/d3-scale": "^4.0.8", + "@types/d3-time": "^1.1.1", + "@types/d3-time-format": "^3.0.0", + "d3-scale": "^4.0.2", + "d3-time": "^1.0.11", + "d3-time-format": "^3.0.0", + "lodash": "^4.17.21" + } + }, + "node_modules/@nivo/scales/node_modules/@types/d3-time": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-1.1.4.tgz", + "integrity": "sha512-JIvy2HjRInE+TXOmIGN5LCmeO0hkFZx5f9FZ7kiN+D+YTcc8pptsiLiuHsvwxwC7VVKmJ2ExHUgNlAiV7vQM9g==", + "license": "MIT" + }, + "node_modules/@nivo/scales/node_modules/@types/d3-time-format": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-3.0.4.tgz", + "integrity": "sha512-or9DiDnYI1h38J9hxKEsw513+KVuFbEVhl7qdxcaudoiqWWepapUen+2vAriFGexr6W5+P4l9+HJrB39GG+oRg==", + "license": "MIT" + }, + "node_modules/@nivo/scales/node_modules/d3-time": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.1.0.tgz", + "integrity": "sha512-Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA==", + "license": "BSD-3-Clause" + }, + "node_modules/@nivo/scales/node_modules/d3-time-format": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-3.0.0.tgz", + "integrity": "sha512-UXJh6EKsHBTjopVqZBhFysQcoXSv/5yLONZvkQ5Kk3qbwiUYkdX17Xa1PT6U1ZWXGGfB1ey5L8dKMlFq2DO0Ag==", + "license": "BSD-3-Clause", + "dependencies": { + "d3-time": "1 - 2" + } + }, + "node_modules/@nivo/tooltip": { + "version": "0.87.0", + "resolved": "https://registry.npmjs.org/@nivo/tooltip/-/tooltip-0.87.0.tgz", + "integrity": "sha512-nZJWyRIt/45V/JBdJ9ksmNm1LFfj59G1Dy9wB63Icf2YwyBT+J+zCzOGXaY7gxCxgF1mnSL3dC7fttcEdXyN/g==", + "license": "MIT", + "dependencies": { + "@nivo/core": "0.87.0", + "@react-spring/web": "9.4.5 || ^9.7.2" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, + "node_modules/@nivo/voronoi": { + "version": "0.87.0", + "resolved": "https://registry.npmjs.org/@nivo/voronoi/-/voronoi-0.87.0.tgz", + "integrity": "sha512-Tg+9YnCX8LKsEwZMY1Q83mWiVFiyU2smxrO3JaC9vzjIh/2A/bkNPwC6BdmRaQMvY1jngKs+WKDnNxSQWFSOEg==", + "license": "MIT", + "dependencies": { + "@nivo/core": "0.87.0", + "@nivo/tooltip": "0.87.0", + "@types/d3-delaunay": "^6.0.4", + "@types/d3-scale": "^4.0.8", + "d3-delaunay": "^6.0.4", + "d3-scale": "^4.0.2" + }, + "peerDependencies": { + "react": ">= 16.14.0 < 19.0.0" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -5792,6 +6031,12 @@ "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.24.tgz", "integrity": "sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ==" }, + "node_modules/@radix-ui/number": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.0.tgz", + "integrity": "sha512-V3gRzhVNU1ldS5XhAPTom1fOIo4ccrjjJgmE+LI2h/WaFpHmx0MQApT+KZHnx8abG6Avtfcz4WoEciMnpFT3HQ==", + "license": "MIT" + }, "node_modules/@radix-ui/primitive": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.0.1.tgz", @@ -5823,22 +6068,219 @@ } } }, + "node_modules/@radix-ui/react-checkbox": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-checkbox/-/react-checkbox-1.1.1.tgz", + "integrity": "sha512-0i/EKJ222Afa1FE0C6pNJxDq1itzcl3HChE9DwskA4th4KRse8ojx8a1nVcOjwJdbpDLcz7uol77yYnQNMHdKw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-presence": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-controllable-state": "1.1.0", + "@radix-ui/react-use-previous": "1.1.0", + "@radix-ui/react-use-size": "1.1.0" + }, + "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/node_modules/@radix-ui/primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.0.tgz", + "integrity": "sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-checkbox/node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "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-checkbox/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "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-checkbox/node_modules/@radix-ui/react-presence": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.0.tgz", + "integrity": "sha512-Gq6wuRN/asf9H/E/VzdKoUtT8GC9PQc9z40/vEr0VCJ4u5XvvhWIrSsCB6vD2/cH7ugTdSfYq9fLJCcM00acrQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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/node_modules/@radix-ui/react-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz", + "integrity": "sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.1.0" + }, + "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/node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0" + }, + "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-checkbox/node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz", + "integrity": "sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==", + "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-checkbox/node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.0.tgz", + "integrity": "sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.0" + }, + "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-checkbox/node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz", + "integrity": "sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==", + "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-checkbox/node_modules/@radix-ui/react-use-size": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.0.tgz", + "integrity": "sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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-collection": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.0.3.tgz", - "integrity": "sha512-3SzW+0PW7yBBoQlT8wNcGtaxaD0XSu0uLUFgrtHY08Acx05TaHaOmVLR73c0j/cqpDy53KBMO7s0dx2wmOIDIA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.0.tgz", + "integrity": "sha512-GZsZslMJEyo1VKm5L1ZJY8tGDxZNPAoUeQUIbKeJfoi7Q4kmig5AsgLMYYuyYbfjd8fBmFORAIwYAkXMnXZgZw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-compose-refs": "1.0.1", - "@radix-ui/react-context": "1.0.1", - "@radix-ui/react-primitive": "1.0.3", - "@radix-ui/react-slot": "1.0.2" + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-slot": "1.1.0" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "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": { @@ -5849,6 +6291,77 @@ } } }, + "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "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-collection/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "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-collection/node_modules/@radix-ui/react-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz", + "integrity": "sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.1.0" + }, + "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/node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0" + }, + "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-compose-refs": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.0.1.tgz", @@ -5884,51 +6397,1979 @@ } }, "node_modules/@radix-ui/react-dialog": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.1.tgz", + "integrity": "sha512-zysS+iU4YP3STKNS6USvFVqI4qqx8EpiwmT5TuCApVEBca+eRCbONi4EgzfNSuVnOXvC5UPHHMjs8RXO6DH9Bg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-dismissable-layer": "1.1.0", + "@radix-ui/react-focus-guards": "1.1.0", + "@radix-ui/react-focus-scope": "1.1.0", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-portal": "1.1.1", + "@radix-ui/react-presence": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-slot": "1.1.0", + "@radix-ui/react-use-controllable-state": "1.1.0", + "aria-hidden": "^1.1.1", + "react-remove-scroll": "2.5.7" + }, + "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/node_modules/@radix-ui/primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.0.tgz", + "integrity": "sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "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-dialog/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "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-dialog/node_modules/@radix-ui/react-dismissable-layer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.0.tgz", + "integrity": "sha512-/UovfmmXGptwGcBQawLzvn2jOfM0t4z3/uKffoBlj724+n3FvBbZ7M0aaBOmkp6pqFYpO4yx8tSVJjx3Fl2jig==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-escape-keydown": "1.1.0" + }, + "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/node_modules/@radix-ui/react-id": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.0.tgz", + "integrity": "sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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-dialog/node_modules/@radix-ui/react-portal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.1.tgz", + "integrity": "sha512-A3UtLk85UtqhzFqtoC8Q0KvR2GbXF3mtPgACSazajqq6A41mEQgo53iPzY4i6BwDxlIFqWIhiQ2G729n+2aw/g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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/node_modules/@radix-ui/react-presence": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.0.tgz", + "integrity": "sha512-Gq6wuRN/asf9H/E/VzdKoUtT8GC9PQc9z40/vEr0VCJ4u5XvvhWIrSsCB6vD2/cH7ugTdSfYq9fLJCcM00acrQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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/node_modules/@radix-ui/react-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz", + "integrity": "sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.1.0" + }, + "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/node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0" + }, + "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-dialog/node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz", + "integrity": "sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==", + "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-dialog/node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.0.tgz", + "integrity": "sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.0" + }, + "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-dialog/node_modules/@radix-ui/react-use-escape-keydown": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.0.tgz", + "integrity": "sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.0" + }, + "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-dialog/node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz", + "integrity": "sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==", + "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-direction": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.0.tgz", + "integrity": "sha512-BUuBvgThEiAXh2DWu93XsT+a3aWrGqolGlqqw5VU1kG7p/ZH2cuDlM1sRLNnY3QcBS69UIz2mcKhMxDsdewhjg==", + "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.0.5", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.0.5.tgz", - "integrity": "sha512-GjWJX/AUpB703eEBanuBnIWdIXg6NvJFCXcNlSZk4xdszCdhrJgBoUd1cGk67vFO+WdA2pfI/plOpqz/5GUP6Q==", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.5.tgz", + "integrity": "sha512-aJeDjQhywg9LBu2t/At58hCvr7pEm0o2Ke1x33B+MhjNmmZ17sy4KImo0KPLgsnc/zN7GPdce8Cnn0SWvwZO7g==", "dependencies": { "@babel/runtime": "^7.13.10", "@radix-ui/primitive": "1.0.1", "@radix-ui/react-compose-refs": "1.0.1", - "@radix-ui/react-context": "1.0.1", - "@radix-ui/react-dismissable-layer": "1.0.5", - "@radix-ui/react-focus-guards": "1.0.1", - "@radix-ui/react-focus-scope": "1.0.4", - "@radix-ui/react-id": "1.0.1", - "@radix-ui/react-portal": "1.0.4", - "@radix-ui/react-presence": "1.0.1", "@radix-ui/react-primitive": "1.0.3", - "@radix-ui/react-slot": "1.0.2", - "@radix-ui/react-use-controllable-state": "1.0.1", + "@radix-ui/react-use-callback-ref": "1.0.1", + "@radix-ui/react-use-escape-keydown": "1.0.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0", + "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dropdown-menu/-/react-dropdown-menu-2.1.1.tgz", + "integrity": "sha512-y8E+x9fBq9qvteD2Zwa4397pUVhYsh9iq44b5RD5qu1GMJWBCBuVg1hMyItbc6+zH00TxGRqd9Iot4wzf3OoBQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-menu": "2.1.1", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-controllable-state": "1.1.0" + }, + "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/node_modules/@radix-ui/primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.0.tgz", + "integrity": "sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "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-dropdown-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "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-dropdown-menu/node_modules/@radix-ui/react-id": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.0.tgz", + "integrity": "sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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-dropdown-menu/node_modules/@radix-ui/react-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz", + "integrity": "sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.1.0" + }, + "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/node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0" + }, + "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-dropdown-menu/node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz", + "integrity": "sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==", + "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-dropdown-menu/node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.0.tgz", + "integrity": "sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.0" + }, + "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-dropdown-menu/node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz", + "integrity": "sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==", + "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-guards": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.0.tgz", + "integrity": "sha512-w6XZNUPVv6xCpZUqb/yN9DL6auvpGX3C/ee6Hdi16v2UUy25HV2Q5bcflsiDyT/g5RwbPQ/GIT1vLkeRb+ITBw==", + "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.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.0.tgz", + "integrity": "sha512-200UD8zylvEyL8Bx+z76RJnASR2gRMuxlgFCPAe/Q/679a/r0eK3MBVYMb7vZODZcffZBdob1EGnky78xmVvcA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0" + }, + "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-scope/node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "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/node_modules/@radix-ui/react-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz", + "integrity": "sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.1.0" + }, + "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-scope/node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0" + }, + "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/node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz", + "integrity": "sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==", + "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-icons": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-icons/-/react-icons-1.3.0.tgz", + "integrity": "sha512-jQxj/0LKgp+j9BiTXz3O3sgs26RNet2iLWmsPyRz2SIcR4q/4SbazXfnYwbAr+vLYKSfc7qxzyGQA1HLlYiuNw==", + "license": "MIT", + "peerDependencies": { + "react": "^16.x || ^17.x || ^18.x" + } + }, + "node_modules/@radix-ui/react-id": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.0.1.tgz", + "integrity": "sha512-tI7sT/kqYp8p96yGWY1OAnLHrqDgzHefRBKQ2YAkBS5ja7QLcZ9Z/uY7bEjPUatf8RomoXM8/1sMj1IJaE5UzQ==", + "dependencies": { + "@babel/runtime": "^7.13.10", + "@radix-ui/react-use-layout-effect": "1.0.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-label": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-label/-/react-label-2.1.0.tgz", + "integrity": "sha512-peLblDlFw/ngk3UWq0VnYaOLy6agTZZ+MUO/WhVfm14vJGML+xH4FAl2XQGLqdefjNb7ApRg6Yn7U42ZhmYXdw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.0.0" + }, + "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-label/node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "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-label/node_modules/@radix-ui/react-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz", + "integrity": "sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.1.0" + }, + "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-label/node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0" + }, + "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-menu": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-2.1.1.tgz", + "integrity": "sha512-oa3mXRRVjHi6DZu/ghuzdylyjaMXLymx83irM7hTxutQbD+7IhPKdMdRHD26Rm+kHRrWcrUkkRPv5pd47a2xFQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-collection": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-direction": "1.1.0", + "@radix-ui/react-dismissable-layer": "1.1.0", + "@radix-ui/react-focus-guards": "1.1.0", + "@radix-ui/react-focus-scope": "1.1.0", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-popper": "1.2.0", + "@radix-ui/react-portal": "1.1.1", + "@radix-ui/react-presence": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-roving-focus": "1.1.0", + "@radix-ui/react-slot": "1.1.0", + "@radix-ui/react-use-callback-ref": "1.1.0", "aria-hidden": "^1.1.1", - "react-remove-scroll": "2.5.5" + "react-remove-scroll": "2.5.7" + }, + "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/node_modules/@radix-ui/primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.0.tgz", + "integrity": "sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-arrow": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.0.tgz", + "integrity": "sha512-FmlW1rCg7hBpEBwFbjHwCW6AmWLQM6g/v0Sn8XbP9NvmSZ2San1FpQeyPtufzOMSIx7Y4dzjlHoifhp+7NkZhw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.0.0" + }, + "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/node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "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-menu/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "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-menu/node_modules/@radix-ui/react-dismissable-layer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.0.tgz", + "integrity": "sha512-/UovfmmXGptwGcBQawLzvn2jOfM0t4z3/uKffoBlj724+n3FvBbZ7M0aaBOmkp6pqFYpO4yx8tSVJjx3Fl2jig==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-escape-keydown": "1.1.0" + }, + "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/node_modules/@radix-ui/react-id": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.0.tgz", + "integrity": "sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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-menu/node_modules/@radix-ui/react-popper": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.0.tgz", + "integrity": "sha512-ZnRMshKF43aBxVWPWvbj21+7TQCvhuULWJ4gNIKYpRlQt5xGRhLx66tMp8pya2UkGHTSlhpXwmjqltDYHhw7Vg==", + "license": "MIT", + "dependencies": { + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-layout-effect": "1.1.0", + "@radix-ui/react-use-rect": "1.1.0", + "@radix-ui/react-use-size": "1.1.0", + "@radix-ui/rect": "1.1.0" + }, + "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/node_modules/@radix-ui/react-portal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.1.tgz", + "integrity": "sha512-A3UtLk85UtqhzFqtoC8Q0KvR2GbXF3mtPgACSazajqq6A41mEQgo53iPzY4i6BwDxlIFqWIhiQ2G729n+2aw/g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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/node_modules/@radix-ui/react-presence": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.0.tgz", + "integrity": "sha512-Gq6wuRN/asf9H/E/VzdKoUtT8GC9PQc9z40/vEr0VCJ4u5XvvhWIrSsCB6vD2/cH7ugTdSfYq9fLJCcM00acrQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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/node_modules/@radix-ui/react-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz", + "integrity": "sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.1.0" + }, + "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/node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0" + }, + "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-menu/node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz", + "integrity": "sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==", + "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-menu/node_modules/@radix-ui/react-use-escape-keydown": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.0.tgz", + "integrity": "sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.0" + }, + "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-menu/node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz", + "integrity": "sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==", + "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-menu/node_modules/@radix-ui/react-use-rect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.0.tgz", + "integrity": "sha512-0Fmkebhr6PiseyZlYAOtLS+nb7jLmpqTrJyv61Pe68MKYW6OWdRE2kI70TaYY27u7H0lajqM3hSMMLFq18Z7nQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/rect": "1.1.0" + }, + "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-menu/node_modules/@radix-ui/react-use-size": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.0.tgz", + "integrity": "sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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-menu/node_modules/@radix-ui/rect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.0.tgz", + "integrity": "sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-popover": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.1.tgz", + "integrity": "sha512-3y1A3isulwnWhvTTwmIreiB8CF4L+qRjZnK1wYLO7pplddzXKby/GnZ2M7OZY3qgnl6p9AodUIHRYGXNah8Y7g==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-dismissable-layer": "1.1.0", + "@radix-ui/react-focus-guards": "1.1.0", + "@radix-ui/react-focus-scope": "1.1.0", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-popper": "1.2.0", + "@radix-ui/react-portal": "1.1.1", + "@radix-ui/react-presence": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-slot": "1.1.0", + "@radix-ui/react-use-controllable-state": "1.1.0", + "aria-hidden": "^1.1.1", + "react-remove-scroll": "2.5.7" + }, + "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/node_modules/@radix-ui/primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.0.tgz", + "integrity": "sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-arrow": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.0.tgz", + "integrity": "sha512-FmlW1rCg7hBpEBwFbjHwCW6AmWLQM6g/v0Sn8XbP9NvmSZ2San1FpQeyPtufzOMSIx7Y4dzjlHoifhp+7NkZhw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.0.0" + }, + "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/node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "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-popover/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "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-popover/node_modules/@radix-ui/react-dismissable-layer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.0.tgz", + "integrity": "sha512-/UovfmmXGptwGcBQawLzvn2jOfM0t4z3/uKffoBlj724+n3FvBbZ7M0aaBOmkp6pqFYpO4yx8tSVJjx3Fl2jig==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-escape-keydown": "1.1.0" + }, + "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/node_modules/@radix-ui/react-id": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.0.tgz", + "integrity": "sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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-popover/node_modules/@radix-ui/react-popper": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.0.tgz", + "integrity": "sha512-ZnRMshKF43aBxVWPWvbj21+7TQCvhuULWJ4gNIKYpRlQt5xGRhLx66tMp8pya2UkGHTSlhpXwmjqltDYHhw7Vg==", + "license": "MIT", + "dependencies": { + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-layout-effect": "1.1.0", + "@radix-ui/react-use-rect": "1.1.0", + "@radix-ui/react-use-size": "1.1.0", + "@radix-ui/rect": "1.1.0" + }, + "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/node_modules/@radix-ui/react-portal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.1.tgz", + "integrity": "sha512-A3UtLk85UtqhzFqtoC8Q0KvR2GbXF3mtPgACSazajqq6A41mEQgo53iPzY4i6BwDxlIFqWIhiQ2G729n+2aw/g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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/node_modules/@radix-ui/react-presence": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.0.tgz", + "integrity": "sha512-Gq6wuRN/asf9H/E/VzdKoUtT8GC9PQc9z40/vEr0VCJ4u5XvvhWIrSsCB6vD2/cH7ugTdSfYq9fLJCcM00acrQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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/node_modules/@radix-ui/react-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz", + "integrity": "sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.1.0" + }, + "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/node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0" + }, + "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-popover/node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz", + "integrity": "sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==", + "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-popover/node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.0.tgz", + "integrity": "sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.0" + }, + "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-popover/node_modules/@radix-ui/react-use-escape-keydown": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.0.tgz", + "integrity": "sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.0" + }, + "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-popover/node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz", + "integrity": "sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==", + "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-popover/node_modules/@radix-ui/react-use-rect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.0.tgz", + "integrity": "sha512-0Fmkebhr6PiseyZlYAOtLS+nb7jLmpqTrJyv61Pe68MKYW6OWdRE2kI70TaYY27u7H0lajqM3hSMMLFq18Z7nQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/rect": "1.1.0" + }, + "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-popover/node_modules/@radix-ui/react-use-size": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.0.tgz", + "integrity": "sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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-popover/node_modules/@radix-ui/rect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.0.tgz", + "integrity": "sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-popper": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.1.3.tgz", + "integrity": "sha512-cKpopj/5RHZWjrbF2846jBNacjQVwkP068DfmgrNJXpvVWrOvlAmE9xSiy5OqeE+Gi8D9fP+oDhUnPqNMY8/5w==", + "dependencies": { + "@babel/runtime": "^7.13.10", + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.0.3", + "@radix-ui/react-compose-refs": "1.0.1", + "@radix-ui/react-context": "1.0.1", + "@radix-ui/react-primitive": "1.0.3", + "@radix-ui/react-use-callback-ref": "1.0.1", + "@radix-ui/react-use-layout-effect": "1.0.1", + "@radix-ui/react-use-rect": "1.0.1", + "@radix-ui/react-use-size": "1.0.1", + "@radix-ui/rect": "1.0.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0", + "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.0.4.tgz", + "integrity": "sha512-Qki+C/EuGUVCQTOTD5vzJzJuMUlewbzuKyUy+/iHM2uwGiru9gZeBJtHAPKAEkB5KWGi9mP/CHKcY0wt1aW45Q==", + "dependencies": { + "@babel/runtime": "^7.13.10", + "@radix-ui/react-primitive": "1.0.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0", + "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-presence": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.0.1.tgz", + "integrity": "sha512-UXLW4UAbIY5ZjcvzjfRFo5gxva8QirC9hF7wRE4U5gz+TP0DbRk+//qyuAQ1McDxBt1xNMBTaciFGvEmJvAZCg==", + "dependencies": { + "@babel/runtime": "^7.13.10", + "@radix-ui/react-compose-refs": "1.0.1", + "@radix-ui/react-use-layout-effect": "1.0.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0", + "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-primitive": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-1.0.3.tgz", + "integrity": "sha512-yi58uVyoAcK/Nq1inRY56ZSjKypBNKTa/1mcL8qdl6oJeEaDbOldlzrGn7P6Q3Id5d+SYNGc5AJgc4vGhjs5+g==", + "dependencies": { + "@babel/runtime": "^7.13.10", + "@radix-ui/react-slot": "1.0.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0", + "react-dom": "^16.8 || ^17.0 || ^18.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.0.tgz", + "integrity": "sha512-EA6AMGeq9AEeQDeSH0aZgG198qkfHSbvWTf1HvoDmOB5bBG/qTxjYMWUKMnYiV6J/iP/J8MEFSuB2zRU2n7ODA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-collection": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-direction": "1.1.0", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-controllable-state": "1.1.0" + }, + "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/node_modules/@radix-ui/primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.0.tgz", + "integrity": "sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "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-roving-focus/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "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-roving-focus/node_modules/@radix-ui/react-id": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.0.tgz", + "integrity": "sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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-roving-focus/node_modules/@radix-ui/react-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz", + "integrity": "sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.1.0" + }, + "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/node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0" + }, + "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-roving-focus/node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz", + "integrity": "sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==", + "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-roving-focus/node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.0.tgz", + "integrity": "sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.0" + }, + "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-roving-focus/node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz", + "integrity": "sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==", + "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-select": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-select/-/react-select-2.1.1.tgz", + "integrity": "sha512-8iRDfyLtzxlprOo9IicnzvpsO1wNCkuwzzCM+Z5Rb5tNOpCdMvcc2AkzX0Fz+Tz9v6NJ5B/7EEgyZveo4FBRfQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.0", + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-collection": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-direction": "1.1.0", + "@radix-ui/react-dismissable-layer": "1.1.0", + "@radix-ui/react-focus-guards": "1.1.0", + "@radix-ui/react-focus-scope": "1.1.0", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-popper": "1.2.0", + "@radix-ui/react-portal": "1.1.1", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-slot": "1.1.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-controllable-state": "1.1.0", + "@radix-ui/react-use-layout-effect": "1.1.0", + "@radix-ui/react-use-previous": "1.1.0", + "@radix-ui/react-visually-hidden": "1.1.0", + "aria-hidden": "^1.1.1", + "react-remove-scroll": "2.5.7" + }, + "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/node_modules/@radix-ui/primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.0.tgz", + "integrity": "sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-arrow": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.0.tgz", + "integrity": "sha512-FmlW1rCg7hBpEBwFbjHwCW6AmWLQM6g/v0Sn8XbP9NvmSZ2San1FpQeyPtufzOMSIx7Y4dzjlHoifhp+7NkZhw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.0.0" + }, + "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/node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "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-select/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "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-select/node_modules/@radix-ui/react-dismissable-layer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.0.tgz", + "integrity": "sha512-/UovfmmXGptwGcBQawLzvn2jOfM0t4z3/uKffoBlj724+n3FvBbZ7M0aaBOmkp6pqFYpO4yx8tSVJjx3Fl2jig==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-escape-keydown": "1.1.0" + }, + "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/node_modules/@radix-ui/react-id": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.0.tgz", + "integrity": "sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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-select/node_modules/@radix-ui/react-popper": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.0.tgz", + "integrity": "sha512-ZnRMshKF43aBxVWPWvbj21+7TQCvhuULWJ4gNIKYpRlQt5xGRhLx66tMp8pya2UkGHTSlhpXwmjqltDYHhw7Vg==", + "license": "MIT", + "dependencies": { + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-layout-effect": "1.1.0", + "@radix-ui/react-use-rect": "1.1.0", + "@radix-ui/react-use-size": "1.1.0", + "@radix-ui/rect": "1.1.0" + }, + "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/node_modules/@radix-ui/react-portal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.1.tgz", + "integrity": "sha512-A3UtLk85UtqhzFqtoC8Q0KvR2GbXF3mtPgACSazajqq6A41mEQgo53iPzY4i6BwDxlIFqWIhiQ2G729n+2aw/g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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/node_modules/@radix-ui/react-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz", + "integrity": "sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.1.0" + }, + "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/node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0" }, "peerDependencies": { "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { "optional": true - }, - "@types/react-dom": { + } + } + }, + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz", + "integrity": "sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==", + "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-direction": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.0.1.tgz", - "integrity": "sha512-RXcvnXgyvYvBEOhCBuddKecVkoMiI10Jcm5cTI7abJRAHYfFxeu+FBQs/DvdxSYucxR5mna0dNsL6QFlds5TMA==", + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.0.tgz", + "integrity": "sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10" + "@radix-ui/react-use-callback-ref": "1.1.0" }, "peerDependencies": { "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -5936,72 +8377,68 @@ } } }, - "node_modules/@radix-ui/react-dismissable-layer": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.5.tgz", - "integrity": "sha512-aJeDjQhywg9LBu2t/At58hCvr7pEm0o2Ke1x33B+MhjNmmZ17sy4KImo0KPLgsnc/zN7GPdce8Cnn0SWvwZO7g==", + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-use-escape-keydown": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.0.tgz", + "integrity": "sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/primitive": "1.0.1", - "@radix-ui/react-compose-refs": "1.0.1", - "@radix-ui/react-primitive": "1.0.3", - "@radix-ui/react-use-callback-ref": "1.0.1", - "@radix-ui/react-use-escape-keydown": "1.0.3" + "@radix-ui/react-use-callback-ref": "1.1.0" }, "peerDependencies": { "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { "optional": true - }, - "@types/react-dom": { + } + } + }, + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz", + "integrity": "sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==", + "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-dropdown-menu": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dropdown-menu/-/react-dropdown-menu-2.0.6.tgz", - "integrity": "sha512-i6TuFOoWmLWq+M/eCLGd/bQ2HfAX1RJgvrBQ6AQLmzfvsLdefxbWu8G9zczcPFfcSPehz9GcpF6K9QYreFV8hA==", + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-use-rect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.0.tgz", + "integrity": "sha512-0Fmkebhr6PiseyZlYAOtLS+nb7jLmpqTrJyv61Pe68MKYW6OWdRE2kI70TaYY27u7H0lajqM3hSMMLFq18Z7nQ==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/primitive": "1.0.1", - "@radix-ui/react-compose-refs": "1.0.1", - "@radix-ui/react-context": "1.0.1", - "@radix-ui/react-id": "1.0.1", - "@radix-ui/react-menu": "2.0.6", - "@radix-ui/react-primitive": "1.0.3", - "@radix-ui/react-use-controllable-state": "1.0.1" + "@radix-ui/rect": "1.1.0" }, "peerDependencies": { "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "react": "^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.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.0.1.tgz", - "integrity": "sha512-Rect2dWbQ8waGzhMavsIbmSVCgYxkXLxxR3ZvCX79JOglzdEy4JXMb98lq4hPxUbLr77nP0UOGf4rcMU+s1pUA==", + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-use-size": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.0.tgz", + "integrity": "sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10" + "@radix-ui/react-use-layout-effect": "1.1.0" }, "peerDependencies": { "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -6009,21 +8446,19 @@ } } }, - "node_modules/@radix-ui/react-focus-scope": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.0.4.tgz", - "integrity": "sha512-sL04Mgvf+FmyvZeYfNu1EPAaaxD+aw7cYeIB9L9Fvq8+urhltTRaEo5ysKOpHuKPclsZcSUMKlN05x4u+CINpA==", + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-visually-hidden": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.1.0.tgz", + "integrity": "sha512-N8MDZqtgCgG5S3aV60INAB475osJousYpZ4cTJ2cFbMpdHS5Y6loLTH8LPtkj2QN0x93J30HT/M3qJXM0+lyeQ==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-compose-refs": "1.0.1", - "@radix-ui/react-primitive": "1.0.3", - "@radix-ui/react-use-callback-ref": "1.0.1" + "@radix-ui/react-primitive": "2.0.0" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "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": { @@ -6034,13 +8469,19 @@ } } }, - "node_modules/@radix-ui/react-id": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.0.1.tgz", - "integrity": "sha512-tI7sT/kqYp8p96yGWY1OAnLHrqDgzHefRBKQ2YAkBS5ja7QLcZ9Z/uY7bEjPUatf8RomoXM8/1sMj1IJaE5UzQ==", + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/rect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.0.tgz", + "integrity": "sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-slot": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.0.2.tgz", + "integrity": "sha512-YeTpuq4deV+6DusvVUW4ivBgnkHwECUu0BiN43L5UCDFgdhsRUWAghhTF5MbvNTPzmiFOx90asDSUjWuCNapwg==", "dependencies": { "@babel/runtime": "^7.13.10", - "@radix-ui/react-use-layout-effect": "1.0.1" + "@radix-ui/react-compose-refs": "1.0.1" }, "peerDependencies": { "@types/react": "*", @@ -6052,36 +8493,25 @@ } } }, - "node_modules/@radix-ui/react-menu": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-2.0.6.tgz", - "integrity": "sha512-BVkFLS+bUC8HcImkRKPSiVumA1VPOOEC5WBMiT+QAVsPzW1FJzI9KnqgGxVDPBcql5xXrHkD3JOVoXWEXD8SYA==", + "node_modules/@radix-ui/react-switch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-switch/-/react-switch-1.1.0.tgz", + "integrity": "sha512-OBzy5WAj641k0AOSpKQtreDMe+isX0MQJ1IVyF03ucdF3DunOnROVrjWs8zsXUxC3zfZ6JL9HFVCUlMghz9dJw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/primitive": "1.0.1", - "@radix-ui/react-collection": "1.0.3", - "@radix-ui/react-compose-refs": "1.0.1", - "@radix-ui/react-context": "1.0.1", - "@radix-ui/react-direction": "1.0.1", - "@radix-ui/react-dismissable-layer": "1.0.5", - "@radix-ui/react-focus-guards": "1.0.1", - "@radix-ui/react-focus-scope": "1.0.4", - "@radix-ui/react-id": "1.0.1", - "@radix-ui/react-popper": "1.1.3", - "@radix-ui/react-portal": "1.0.4", - "@radix-ui/react-presence": "1.0.1", - "@radix-ui/react-primitive": "1.0.3", - "@radix-ui/react-roving-focus": "1.0.4", - "@radix-ui/react-slot": "1.0.2", - "@radix-ui/react-use-callback-ref": "1.0.1", - "aria-hidden": "^1.1.1", - "react-remove-scroll": "2.5.5" + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-controllable-state": "1.1.0", + "@radix-ui/react-use-previous": "1.1.0", + "@radix-ui/react-use-size": "1.1.0" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "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": { @@ -6092,28 +8522,55 @@ } } }, - "node_modules/@radix-ui/react-popper": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.1.3.tgz", - "integrity": "sha512-cKpopj/5RHZWjrbF2846jBNacjQVwkP068DfmgrNJXpvVWrOvlAmE9xSiy5OqeE+Gi8D9fP+oDhUnPqNMY8/5w==", + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.0.tgz", + "integrity": "sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "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-switch/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "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-switch/node_modules/@radix-ui/react-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz", + "integrity": "sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@floating-ui/react-dom": "^2.0.0", - "@radix-ui/react-arrow": "1.0.3", - "@radix-ui/react-compose-refs": "1.0.1", - "@radix-ui/react-context": "1.0.1", - "@radix-ui/react-primitive": "1.0.3", - "@radix-ui/react-use-callback-ref": "1.0.1", - "@radix-ui/react-use-layout-effect": "1.0.1", - "@radix-ui/react-use-rect": "1.0.1", - "@radix-ui/react-use-size": "1.0.1", - "@radix-ui/rect": "1.0.1" + "@radix-ui/react-slot": "1.1.0" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "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": { @@ -6124,43 +8581,110 @@ } } }, - "node_modules/@radix-ui/react-portal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.0.4.tgz", - "integrity": "sha512-Qki+C/EuGUVCQTOTD5vzJzJuMUlewbzuKyUy+/iHM2uwGiru9gZeBJtHAPKAEkB5KWGi9mP/CHKcY0wt1aW45Q==", + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-primitive": "1.0.3" + "@radix-ui/react-compose-refs": "1.1.0" }, "peerDependencies": { "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { "optional": true - }, - "@types/react-dom": { + } + } + }, + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz", + "integrity": "sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==", + "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-presence": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.0.1.tgz", - "integrity": "sha512-UXLW4UAbIY5ZjcvzjfRFo5gxva8QirC9hF7wRE4U5gz+TP0DbRk+//qyuAQ1McDxBt1xNMBTaciFGvEmJvAZCg==", + "node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.0.tgz", + "integrity": "sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-compose-refs": "1.0.1", - "@radix-ui/react-use-layout-effect": "1.0.1" + "@radix-ui/react-use-callback-ref": "1.1.0" + }, + "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/node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz", + "integrity": "sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==", + "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-switch/node_modules/@radix-ui/react-use-size": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.0.tgz", + "integrity": "sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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-tabs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tabs/-/react-tabs-1.1.0.tgz", + "integrity": "sha512-bZgOKB/LtZIij75FSuPzyEti/XBhJH52ExgtdVqjCIh+Nx/FW+LhnbXtbCzIi34ccyMsyOja8T0thCzoHFXNKA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-direction": "1.1.0", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-presence": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-roving-focus": "1.1.0", + "@radix-ui/react-use-controllable-state": "1.1.0" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "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": { @@ -6171,19 +8695,74 @@ } } }, - "node_modules/@radix-ui/react-primitive": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-1.0.3.tgz", - "integrity": "sha512-yi58uVyoAcK/Nq1inRY56ZSjKypBNKTa/1mcL8qdl6oJeEaDbOldlzrGn7P6Q3Id5d+SYNGc5AJgc4vGhjs5+g==", + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.0.tgz", + "integrity": "sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "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-tabs/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "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-tabs/node_modules/@radix-ui/react-id": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.0.tgz", + "integrity": "sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-slot": "1.0.2" + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "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-tabs/node_modules/@radix-ui/react-presence": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.0.tgz", + "integrity": "sha512-Gq6wuRN/asf9H/E/VzdKoUtT8GC9PQc9z40/vEr0VCJ4u5XvvhWIrSsCB6vD2/cH7ugTdSfYq9fLJCcM00acrQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-use-layout-effect": "1.1.0" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "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": { @@ -6194,27 +8773,19 @@ } } }, - "node_modules/@radix-ui/react-roving-focus": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.0.4.tgz", - "integrity": "sha512-2mUg5Mgcu001VkGy+FfzZyzbmuUWzgWkj3rvv4yu+mLw03+mTzbxZHvfcGyFp2b8EkQeMkpRQ5FiA2Vr2O6TeQ==", + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz", + "integrity": "sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/primitive": "1.0.1", - "@radix-ui/react-collection": "1.0.3", - "@radix-ui/react-compose-refs": "1.0.1", - "@radix-ui/react-context": "1.0.1", - "@radix-ui/react-direction": "1.0.1", - "@radix-ui/react-id": "1.0.1", - "@radix-ui/react-primitive": "1.0.3", - "@radix-ui/react-use-callback-ref": "1.0.1", - "@radix-ui/react-use-controllable-state": "1.0.1" + "@radix-ui/react-slot": "1.1.0" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "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": { @@ -6225,17 +8796,65 @@ } } }, - "node_modules/@radix-ui/react-slot": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.0.2.tgz", - "integrity": "sha512-YeTpuq4deV+6DusvVUW4ivBgnkHwECUu0BiN43L5UCDFgdhsRUWAghhTF5MbvNTPzmiFOx90asDSUjWuCNapwg==", + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-compose-refs": "1.0.1" + "@radix-ui/react-compose-refs": "1.1.0" }, "peerDependencies": { "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz", + "integrity": "sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==", + "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-tabs/node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.0.tgz", + "integrity": "sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.0" + }, + "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-tabs/node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz", + "integrity": "sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -6347,6 +8966,21 @@ } } }, + "node_modules/@radix-ui/react-use-previous": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-1.1.0.tgz", + "integrity": "sha512-Z/e78qg2YFnnXcW88A4JmTtm4ADckLno6F7OXotmkQfeuCVaKuYzqAATPhVzl3delXE7CxIV8shofPn3jPc5Og==", + "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.0.1", "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.0.1.tgz", @@ -6414,6 +9048,78 @@ "@babel/runtime": "^7.13.10" } }, + "node_modules/@react-spring/animated": { + "version": "9.7.4", + "resolved": "https://registry.npmjs.org/@react-spring/animated/-/animated-9.7.4.tgz", + "integrity": "sha512-7As+8Pty2QlemJ9O5ecsuPKjmO0NKvmVkRR1n6mEotFgWar8FKuQt2xgxz3RTgxcccghpx1YdS1FCdElQNexmQ==", + "license": "MIT", + "dependencies": { + "@react-spring/shared": "~9.7.4", + "@react-spring/types": "~9.7.4" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@react-spring/core": { + "version": "9.7.4", + "resolved": "https://registry.npmjs.org/@react-spring/core/-/core-9.7.4.tgz", + "integrity": "sha512-GzjA44niEJBFUe9jN3zubRDDDP2E4tBlhNlSIkTChiNf9p4ZQlgXBg50qbXfSXHQPHak/ExYxwhipKVsQ/sUTw==", + "license": "MIT", + "dependencies": { + "@react-spring/animated": "~9.7.4", + "@react-spring/shared": "~9.7.4", + "@react-spring/types": "~9.7.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/react-spring/donate" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@react-spring/rafz": { + "version": "9.7.4", + "resolved": "https://registry.npmjs.org/@react-spring/rafz/-/rafz-9.7.4.tgz", + "integrity": "sha512-mqDI6rW0Ca8IdryOMiXRhMtVGiEGLIO89vIOyFQXRIwwIMX30HLya24g9z4olDvFyeDW3+kibiKwtZnA4xhldA==", + "license": "MIT" + }, + "node_modules/@react-spring/shared": { + "version": "9.7.4", + "resolved": "https://registry.npmjs.org/@react-spring/shared/-/shared-9.7.4.tgz", + "integrity": "sha512-bEPI7cQp94dOtCFSEYpxvLxj0+xQfB5r9Ru1h8OMycsIq7zFZon1G0sHrBLaLQIWeMCllc4tVDYRTLIRv70C8w==", + "license": "MIT", + "dependencies": { + "@react-spring/rafz": "~9.7.4", + "@react-spring/types": "~9.7.4" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@react-spring/types": { + "version": "9.7.4", + "resolved": "https://registry.npmjs.org/@react-spring/types/-/types-9.7.4.tgz", + "integrity": "sha512-iQVztO09ZVfsletMiY+DpT/JRiBntdsdJ4uqk3UJFhrhS8mIC9ZOZbmfGSRs/kdbNPQkVyzucceDicQ/3Mlj9g==", + "license": "MIT" + }, + "node_modules/@react-spring/web": { + "version": "9.7.4", + "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.7.4.tgz", + "integrity": "sha512-UMvCZp7I5HCVIleSa4BwbNxynqvj+mJjG2m20VO2yPoi2pnCYANy58flvz9v/YcXTAvsmL655FV3pm5fbr6akA==", + "license": "MIT", + "dependencies": { + "@react-spring/animated": "~9.7.4", + "@react-spring/core": "~9.7.4", + "@react-spring/shared": "~9.7.4", + "@react-spring/types": "~9.7.4" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, "node_modules/@reactivex/rxjs": { "version": "6.6.7", "resolved": "https://registry.npmjs.org/@reactivex/rxjs/-/rxjs-6.6.7.tgz", @@ -7536,6 +10242,26 @@ "react-dom": "^17.0.0 || ^18.0.0" } }, + "node_modules/@tanstack/react-table": { + "version": "8.20.5", + "resolved": "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.20.5.tgz", + "integrity": "sha512-WEHopKw3znbUZ61s9i0+i9g8drmDo6asTWbrQh8Us63DAk/M0FkmIqERew6P71HI75ksZ2Pxyuf4vvKh9rAkiA==", + "license": "MIT", + "dependencies": { + "@tanstack/table-core": "8.20.5" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, "node_modules/@tanstack/react-virtual": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.0.2.tgz", @@ -7562,6 +10288,19 @@ "url": "https://github.com/sponsors/tannerlinsley" } }, + "node_modules/@tanstack/table-core": { + "version": "8.20.5", + "resolved": "https://registry.npmjs.org/@tanstack/table-core/-/table-core-8.20.5.tgz", + "integrity": "sha512-P9dF7XbibHph2PFRz8gfBKEXEY/HJPOhym8CHmjF8y3q5mWpKx9xtZapXQUWCgkqvsK0R46Azuz+VaxD4Xl+Tg==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, "node_modules/@tanstack/virtual-core": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.0.0.tgz", @@ -7605,25 +10344,25 @@ "version": "1.0.9", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "dev": true + "devOptional": true }, "node_modules/@tsconfig/node12": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true + "devOptional": true }, "node_modules/@tsconfig/node14": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true + "devOptional": true }, "node_modules/@tsconfig/node16": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", - "dev": true + "devOptional": true }, "node_modules/@turbo/gen": { "version": "1.11.3", @@ -7920,11 +10659,23 @@ "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.3.tgz", "integrity": "sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==" }, + "node_modules/@types/d3-delaunay": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-delaunay/-/d3-delaunay-6.0.4.tgz", + "integrity": "sha512-ZMaSKu4THYCU6sV64Lhg6qjf1orxBthaC161plr5KuPHo3CNm8DTHiLw/5Eq2b6TsNP0W0iJrUOFscY6Q450Hw==", + "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==" }, + "node_modules/@types/d3-format": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-1.4.5.tgz", + "integrity": "sha512-mLxrC1MSWupOSncXN/HOlWUAAIffAEBaI4+PKy2uMPsKe4FNZlk7qrbTjmzJXITQQqBHivaks4Td18azgqnotA==", + "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", @@ -7946,6 +10697,12 @@ "@types/d3-time": "*" } }, + "node_modules/@types/d3-scale-chromatic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.3.tgz", + "integrity": "sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw==", + "license": "MIT" + }, "node_modules/@types/d3-shape": { "version": "3.1.6", "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.6.tgz", @@ -7959,6 +10716,12 @@ "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.3.tgz", "integrity": "sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw==" }, + "node_modules/@types/d3-time-format": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-2.3.4.tgz", + "integrity": "sha512-xdDXbpVO74EvadI3UDxjxTdR6QIxm1FKzEA/+F8tL4GWWUg/hgvBqf6chql64U5A9ZUGWo7pEu4eNlyLwbKdhg==", + "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", @@ -9031,6 +11794,7 @@ "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -9226,15 +11990,6 @@ "string-width": "^4.1.0" } }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/ansi-escapes": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", @@ -9321,7 +12076,7 @@ "version": "4.1.3", "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true + "devOptional": true }, "node_modules/argparse": { "version": "1.0.10", @@ -9583,15 +12338,6 @@ "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", "dev": true }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/astring": { "version": "1.8.6", "resolved": "https://registry.npmjs.org/astring/-/astring-1.8.6.tgz", @@ -9656,9 +12402,9 @@ } }, "node_modules/autoprefixer": { - "version": "10.4.19", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", - "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", + "version": "10.4.20", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", "funding": [ { "type": "opencollective", @@ -9673,12 +12419,13 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { - "browserslist": "^4.23.0", - "caniuse-lite": "^1.0.30001599", + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", + "picocolors": "^1.0.1", "postcss-value-parser": "^4.2.0" }, "bin": { @@ -10230,9 +12977,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz", + "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==", "funding": [ { "type": "opencollective", @@ -10247,11 +12994,12 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" + "caniuse-lite": "^1.0.30001646", + "electron-to-chromium": "^1.5.4", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" }, "bin": { "browserslist": "cli.js" @@ -10425,7 +13173,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", - "dev": true, "engines": { "node": ">= 6" } @@ -10450,9 +13197,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001621", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001621.tgz", - "integrity": "sha512-+NLXZiviFFKX0fk8Piwv3PfLPGtRqJeq2TiNoUff/qB5KJgwecJTvCXDpmlyP/eCI/GUEmp/h/y5j0yckiiZrA==", + "version": "1.0.30001658", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001658.tgz", + "integrity": "sha512-N2YVqWbJELVdrnsW5p+apoQyYt51aBMSsBZki1XZEfeBCexcM/sf4xiAHcXQBkuOwJBXtWF7aW1sYX6tKebPHw==", "funding": [ { "type": "opencollective", @@ -10466,7 +13213,8 @@ "type": "github", "url": "https://github.com/sponsors/ai" } - ] + ], + "license": "CC-BY-4.0" }, "node_modules/ccount": { "version": "2.0.1", @@ -10694,6 +13442,27 @@ "safe-buffer": "^5.0.1" } }, + "node_modules/class-variance-authority": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/class-variance-authority/-/class-variance-authority-0.7.0.tgz", + "integrity": "sha512-jFI8IQw4hczaL4ALINxqLEXQbWcNjoSkloa4IaufXCJr6QawJyw7tuRysRsrE8w2p/4gGaxKIt/hX3qz/IbD1A==", + "license": "Apache-2.0", + "dependencies": { + "clsx": "2.0.0" + }, + "funding": { + "url": "https://joebell.co.uk" + } + }, + "node_modules/class-variance-authority/node_modules/clsx": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.0.0.tgz", + "integrity": "sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/classnames": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", @@ -11405,7 +14174,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true + "devOptional": true }, "node_modules/crelt": { "version": "1.0.6", @@ -11894,6 +14663,18 @@ "node": ">=12" } }, + "node_modules/d3-delaunay": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.4.tgz", + "integrity": "sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==", + "license": "ISC", + "dependencies": { + "delaunator": "5" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/d3-ease": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", @@ -11944,6 +14725,19 @@ "node": ">=12" } }, + "node_modules/d3-scale-chromatic": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz", + "integrity": "sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ==", + "license": "ISC", + "dependencies": { + "d3-color": "1 - 3", + "d3-interpolate": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/d3-shape": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", @@ -12054,6 +14848,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/date-fns": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.6.0.tgz", + "integrity": "sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, "node_modules/debounce": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", @@ -12311,6 +15115,15 @@ "node": ">= 4" } }, + "node_modules/delaunator": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz", + "integrity": "sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==", + "license": "ISC", + "dependencies": { + "robust-predicates": "^3.0.2" + } + }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -12463,14 +15276,13 @@ "node_modules/didyoumean": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", - "dev": true + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==" }, "node_modules/diff": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true, + "devOptional": true, "engines": { "node": ">=0.3.1" } @@ -12504,8 +15316,7 @@ "node_modules/dlv": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", - "dev": true + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==" }, "node_modules/dns-packet": { "version": "5.6.1", @@ -13345,9 +16156,10 @@ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/electron-to-chromium": { - "version": "1.4.783", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.783.tgz", - "integrity": "sha512-bT0jEz/Xz1fahQpbZ1D7LgmPYZ3iHVY39NcWWro1+hA2IvjiPeaXtfSqrQ+nXjApMvQRE2ASt1itSLRrebHMRQ==" + "version": "1.5.18", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.18.tgz", + "integrity": "sha512-1OfuVACu+zKlmjsNdcJuVQuVE61sZOLbNM4JAQ1Rvh6EOj0/EUKhMJjRH73InPlXSh8HIJk1cVZ8pyOV/FMdUQ==", + "license": "ISC" }, "node_modules/elliptic": { "version": "6.5.5", @@ -13425,19 +16237,6 @@ "node": ">=10.13.0" } }, - "node_modules/enquirer": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", - "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", - "dev": true, - "dependencies": { - "ansi-colors": "^4.1.1", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8.6" - } - }, "node_modules/entities": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz", @@ -13625,9 +16424,10 @@ "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==" }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "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" } @@ -13681,16 +16481,17 @@ } }, "node_modules/eslint": { - "version": "8.56.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", - "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "devOptional": true, + "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.56.0", - "@humanwhocodes/config-array": "^0.11.13", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "@ungap/structured-clone": "^1.2.0", @@ -13735,302 +16536,17 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint-config-custom": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-custom/-/eslint-config-custom-0.0.0.tgz", - "integrity": "sha512-kwCw78yisbgKdJBJ5qooPmpBYDphDfM2oxSROmtfOwBXBwXuRiSV3suO01W3mVLEFpmQZxMWd/qajKpJhkKSug==", - "dev": true, - "dependencies": { - "eslint-config-next": "^12.0.8", - "eslint-config-prettier": "^8.3.0", - "eslint-plugin-react": "7.28.0" - } - }, - "node_modules/eslint-config-custom/node_modules/@next/eslint-plugin-next": { - "version": "12.3.4", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-12.3.4.tgz", - "integrity": "sha512-BFwj8ykJY+zc1/jWANsDprDIu2MgwPOIKxNVnrKvPs+f5TPegrVnem8uScND+1veT4B7F6VeqgaNLFW1Hzl9Og==", - "dev": true, - "dependencies": { - "glob": "7.1.7" - } - }, - "node_modules/eslint-config-custom/node_modules/@typescript-eslint/parser": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", - "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-config-custom/node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-config-custom/node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-config-custom/node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-config-custom/node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-config-custom/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-config-custom/node_modules/eslint-config-next": { - "version": "12.3.4", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-12.3.4.tgz", - "integrity": "sha512-WuT3gvgi7Bwz00AOmKGhOeqnyA5P29Cdyr0iVjLyfDbk+FANQKcOjFUTZIdyYfe5Tq1x4TGcmoe4CwctGvFjHQ==", - "dev": true, - "dependencies": { - "@next/eslint-plugin-next": "12.3.4", - "@rushstack/eslint-patch": "^1.1.3", - "@typescript-eslint/parser": "^5.21.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-import-resolver-typescript": "^2.7.1", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsx-a11y": "^6.5.1", - "eslint-plugin-react": "^7.31.7", - "eslint-plugin-react-hooks": "^4.5.0" - }, - "peerDependencies": { - "eslint": "^7.23.0 || ^8.0.0", - "typescript": ">=3.3.1" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-config-custom/node_modules/eslint-config-next/node_modules/eslint-plugin-react": { - "version": "7.33.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz", - "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flatmap": "^1.3.1", - "array.prototype.tosorted": "^1.1.1", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.12", - "estraverse": "^5.3.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.6", - "object.fromentries": "^2.0.6", - "object.hasown": "^1.1.2", - "object.values": "^1.1.6", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.4", - "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.8" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" - } - }, - "node_modules/eslint-config-custom/node_modules/eslint-config-next/node_modules/resolve": { - "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", - "dev": true, - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/eslint-config-custom/node_modules/eslint-config-next/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/eslint-config-custom/node_modules/eslint-import-resolver-typescript": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.7.1.tgz", - "integrity": "sha512-00UbgGwV8bSgUv34igBDbTOtKhqoRMy9bFjNehT40bXg6585PNIct8HhXZ0SybqB9rWtXj9crcku8ndDn/gIqQ==", - "dev": true, - "dependencies": { - "debug": "^4.3.4", - "glob": "^7.2.0", - "is-glob": "^4.0.3", - "resolve": "^1.22.0", - "tsconfig-paths": "^3.14.1" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "*", - "eslint-plugin-import": "*" - } - }, - "node_modules/eslint-config-custom/node_modules/eslint-import-resolver-typescript/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/eslint-config-custom/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, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-config-custom/node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/eslint-config-next": { - "version": "13.5.6", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-13.5.6.tgz", - "integrity": "sha512-o8pQsUHTo9aHqJ2YiZDym5gQAMRf7O2HndHo/JZeY7TDD+W4hk6Ma8Vw54RHiBeb7OWWO5dPirQB+Is/aVQ7Kg==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.8.tgz", + "integrity": "sha512-gRqxHkSuCrQro6xqXnmXphcq8rdiw7FI+nLXpWmIlp/AfUzHCgXNQE7mOK+oco+SRaJbhqCg/68uRln1qjkF+Q==", "dev": true, + "license": "MIT", "dependencies": { - "@next/eslint-plugin-next": "13.5.6", + "@next/eslint-plugin-next": "14.2.8", "@rushstack/eslint-patch": "^1.3.3", - "@typescript-eslint/parser": "^5.4.2 || ^6.0.0", + "@typescript-eslint/eslint-plugin": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0", + "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0", "eslint-import-resolver-node": "^0.3.6", "eslint-import-resolver-typescript": "^3.5.2", "eslint-plugin-import": "^2.28.1", @@ -14053,6 +16569,7 @@ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, + "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" }, @@ -14061,33 +16578,36 @@ } }, "node_modules/eslint-config-next/node_modules/eslint-plugin-react": { - "version": "7.33.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz", - "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==", + "version": "7.35.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.35.2.tgz", + "integrity": "sha512-Rbj2R9zwP2GYNcIak4xoAMV57hrBh3hTaR0k7hVjwCQgryE/pw5px4b13EYjduOI0hfXyZhwBxaGpOTbWSGzKQ==", "dev": true, + "license": "MIT", "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flatmap": "^1.3.1", - "array.prototype.tosorted": "^1.1.1", + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.2", + "array.prototype.tosorted": "^1.1.4", "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.12", + "es-iterator-helpers": "^1.0.19", "estraverse": "^5.3.0", + "hasown": "^2.0.2", "jsx-ast-utils": "^2.4.1 || ^3.0.0", "minimatch": "^3.1.2", - "object.entries": "^1.1.6", - "object.fromentries": "^2.0.6", - "object.hasown": "^1.1.2", - "object.values": "^1.1.6", + "object.entries": "^1.1.8", + "object.fromentries": "^2.0.8", + "object.values": "^1.2.0", "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.4", + "resolve": "^2.0.0-next.5", "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.8" + "string.prototype.matchall": "^4.0.11", + "string.prototype.repeat": "^1.0.0" }, "engines": { "node": ">=4" }, "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" } }, "node_modules/eslint-config-next/node_modules/resolve": { @@ -14095,6 +16615,7 @@ "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", "dev": true, + "license": "MIT", "dependencies": { "is-core-module": "^2.13.0", "path-parse": "^1.0.7", @@ -14112,22 +16633,11 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" } }, - "node_modules/eslint-config-prettier": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz", - "integrity": "sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==", - "dev": true, - "bin": { - "eslint-config-prettier": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=7.0.0" - } - }, "node_modules/eslint-config-turbo": { "version": "1.11.3", "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-1.11.3.tgz", @@ -14512,34 +17022,6 @@ } } }, - "node_modules/eslint-plugin-react": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.28.0.tgz", - "integrity": "sha512-IOlFIRHzWfEQQKcAD4iyYDndHwTQiCMcJVJjxempf203jnNLUnW34AXLrV33+nEXoifJE2ZEGmcjKPL8957eSw==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.4", - "array.prototype.flatmap": "^1.2.5", - "doctrine": "^2.1.0", - "estraverse": "^5.3.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.0.4", - "object.entries": "^1.1.5", - "object.fromentries": "^2.0.5", - "object.hasown": "^1.1.0", - "object.values": "^1.1.5", - "prop-types": "^15.7.2", - "resolve": "^2.0.0-next.3", - "semver": "^6.3.0", - "string.prototype.matchall": "^4.0.6" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" - } - }, "node_modules/eslint-plugin-react-hooks": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", @@ -14552,44 +17034,6 @@ "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" } }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", - "dev": true, - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/eslint-plugin-react/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/eslint-plugin-testing-library": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.2.0.tgz", @@ -14804,30 +17248,6 @@ "node": ">=4.0" } }, - "node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/eslint-visitor-keys": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", @@ -14964,29 +17384,6 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", - "dev": true, - "dependencies": { - "acorn": "^7.4.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", @@ -16104,12 +18501,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", - "dev": true - }, "node_modules/functions-have-names": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", @@ -17613,15 +20004,6 @@ } ] }, - "node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, "node_modules/image-size": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.1.1.tgz", @@ -19043,7 +21425,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", - "dev": true, "engines": { "node": ">=10" } @@ -19160,12 +21541,6 @@ "resolved": "https://registry.npmjs.org/lodash.tonumber/-/lodash.tonumber-4.0.3.tgz", "integrity": "sha512-SY0SwuPOHRwKcCNTdsntPYb+Zddz5mDUIVFABzRMqmAiL41pMeyoQFGxYAw5zdc9NnH4pbJqiqqp5ckfxa+zSA==" }, - "node_modules/lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", - "dev": true - }, "node_modules/lodash.uniq": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", @@ -19308,6 +21683,15 @@ "yallist": "^3.0.2" } }, + "node_modules/lucide-react": { + "version": "0.439.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.439.0.tgz", + "integrity": "sha512-PafSWvDTpxdtNEndS2HIHxcNAbd54OaqSYJO90/b63rab2HWYqDbH194j0i82ZFdWOAcf0AHinRykXRRK2PJbw==", + "license": "ISC", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc" + } + }, "node_modules/lunr": { "version": "2.3.9", "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", @@ -19328,7 +21712,7 @@ "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true + "devOptional": true }, "node_modules/map-cache": { "version": "0.2.2", @@ -21989,12 +24373,12 @@ } }, "node_modules/next": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.6.tgz", - "integrity": "sha512-57Su7RqXs5CBKKKOagt8gPhMM3CpjgbeQhrtei2KLAA1vTNm7jfKS+uDARkSW8ZETUflDCBIsUKGSyQdRs4U4g==", + "version": "14.2.8", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.8.tgz", + "integrity": "sha512-EyEyJZ89r8C5FPlS/401AiF3O8jeMtHIE+bLom9MwcdWJJFBgRl+MR/2VgO0v5bI6tQORNY0a0DR5sjpFNrjbg==", "license": "MIT", "dependencies": { - "@next/env": "14.2.6", + "@next/env": "14.2.8", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -22009,15 +24393,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.6", - "@next/swc-darwin-x64": "14.2.6", - "@next/swc-linux-arm64-gnu": "14.2.6", - "@next/swc-linux-arm64-musl": "14.2.6", - "@next/swc-linux-x64-gnu": "14.2.6", - "@next/swc-linux-x64-musl": "14.2.6", - "@next/swc-win32-arm64-msvc": "14.2.6", - "@next/swc-win32-ia32-msvc": "14.2.6", - "@next/swc-win32-x64-msvc": "14.2.6" + "@next/swc-darwin-arm64": "14.2.8", + "@next/swc-darwin-x64": "14.2.8", + "@next/swc-linux-arm64-gnu": "14.2.8", + "@next/swc-linux-arm64-musl": "14.2.8", + "@next/swc-linux-x64-gnu": "14.2.8", + "@next/swc-linux-x64-musl": "14.2.8", + "@next/swc-win32-arm64-msvc": "14.2.8", + "@next/swc-win32-ia32-msvc": "14.2.8", + "@next/swc-win32-x64-msvc": "14.2.8" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -22362,9 +24746,10 @@ } }, "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==" + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "license": "MIT" }, "node_modules/noms": { "version": "0.0.0", @@ -24406,7 +26791,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", - "dev": true, "dependencies": { "camelcase-css": "^2.0.1" }, @@ -24452,7 +26836,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", - "dev": true, "funding": [ { "type": "opencollective", @@ -24487,7 +26870,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.0.0.tgz", "integrity": "sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==", - "dev": true, "engines": { "node": ">=14" } @@ -24496,7 +26878,6 @@ "version": "2.3.4", "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz", "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==", - "dev": true, "engines": { "node": ">= 14" } @@ -24713,7 +27094,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz", "integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==", - "dev": true, "dependencies": { "postcss-selector-parser": "^6.0.11" }, @@ -25754,6 +28134,20 @@ "node": ">=0.10.0" } }, + "node_modules/react-day-picker": { + "version": "8.10.1", + "resolved": "https://registry.npmjs.org/react-day-picker/-/react-day-picker-8.10.1.tgz", + "integrity": "sha512-TMx7fNbhLk15eqcMt+7Z7S2KF7mfTId/XJDjKE8f+IUcFn0l08/kI4FiYTL/0yuOLmEcbR4Fwe3GJf/NiiMnPA==", + "license": "MIT", + "funding": { + "type": "individual", + "url": "https://github.com/sponsors/gpbl" + }, + "peerDependencies": { + "date-fns": "^2.28.0 || ^3.0.0", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, "node_modules/react-dev-utils": { "version": "12.0.1", "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", @@ -26736,11 +29130,12 @@ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" }, "node_modules/react-remove-scroll": { - "version": "2.5.5", - "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.5.5.tgz", - "integrity": "sha512-ImKhrzJJsyXJfBZ4bzu8Bwpka14c/fQt0k+cyFp/PBhTfyDnU5hjOtM4AG/0AMyy8oKzOTR0lDgJIM7pYXI0kw==", + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.5.7.tgz", + "integrity": "sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==", + "license": "MIT", "dependencies": { - "react-remove-scroll-bar": "^2.3.3", + "react-remove-scroll-bar": "^2.3.4", "react-style-singleton": "^2.2.1", "tslib": "^2.1.0", "use-callback-ref": "^1.3.0", @@ -27258,18 +29653,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, "node_modules/regexpu-core": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", @@ -27803,6 +30186,12 @@ "inherits": "^2.0.1" } }, + "node_modules/robust-predicates": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", + "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==", + "license": "Unlicense" + }, "node_modules/rollup": { "version": "2.79.1", "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", @@ -28655,23 +31044,6 @@ "node": ">=8" } }, - "node_modules/slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, "node_modules/slugify": { "version": "1.4.7", "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.7.tgz", @@ -29717,53 +32089,25 @@ "url": "https://opencollective.com/unts" } }, - "node_modules/table": { - "version": "6.8.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", - "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", - "dev": true, - "dependencies": { - "ajv": "^8.0.1", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=10.0.0" - } + "node_modules/tailwind-loader": { + "resolved": "apps/www/plugins/tailwind-loader", + "link": true }, - "node_modules/table/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, + "node_modules/tailwind-merge": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-2.5.2.tgz", + "integrity": "sha512-kjEBm+pvD+6eAwzJL2Bi+02/9LFLal1Gs61+QB7HvTfQQ0aXwC5LGT8PEt1gS0CWKktKe6ysPTAy3cBC5MeiIg==", + "license": "MIT", "funding": { "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "url": "https://github.com/sponsors/dcastil" } }, - "node_modules/table/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/tailwind-loader": { - "resolved": "apps/www/plugins/tailwind-loader", - "link": true - }, "node_modules/tailwindcss": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.1.tgz", - "integrity": "sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==", - "dev": true, + "version": "3.4.10", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.10.tgz", + "integrity": "sha512-KWZkVPm7yJRhdu4SRSl9d4AK2wM3a50UsvgHZO7xY77NQr2V+fIrEuoDGQcbvswWvFGbS2f6e+jC/6WJm1Dl0w==", + "license": "MIT", "dependencies": { "@alloc/quick-lru": "^5.2.0", "arg": "^5.0.2", @@ -29773,7 +32117,7 @@ "fast-glob": "^3.3.0", "glob-parent": "^6.0.2", "is-glob": "^4.0.3", - "jiti": "^1.19.1", + "jiti": "^1.21.0", "lilconfig": "^2.1.0", "micromatch": "^4.0.5", "normalize-path": "^3.0.0", @@ -29796,17 +32140,24 @@ "node": ">=14.0.0" } }, + "node_modules/tailwindcss-animate": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/tailwindcss-animate/-/tailwindcss-animate-1.0.7.tgz", + "integrity": "sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA==", + "license": "MIT", + "peerDependencies": { + "tailwindcss": ">=3.0.0 || insiders" + } + }, "node_modules/tailwindcss/node_modules/arg": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", - "dev": true + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" }, "node_modules/tailwindcss/node_modules/object-hash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", - "dev": true, "engines": { "node": ">= 6" } @@ -30158,7 +32509,7 @@ "version": "10.9.2", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", - "dev": true, + "devOptional": true, "dependencies": { "@cspotcode/source-map-support": "^0.8.0", "@tsconfig/node10": "^1.0.7", @@ -30201,7 +32552,7 @@ "version": "8.11.3", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", - "dev": true, + "devOptional": true, "bin": { "acorn": "bin/acorn" }, @@ -30818,9 +33169,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", + "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", "funding": [ { "type": "opencollective", @@ -30835,9 +33186,10 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "escalade": "^3.1.2", + "picocolors": "^1.0.1" }, "bin": { "update-browserslist-db": "cli.js" @@ -31241,17 +33593,11 @@ "node": ">=6" } }, - "node_modules/v8-compile-cache": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.4.0.tgz", - "integrity": "sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==", - "dev": true - }, "node_modules/v8-compile-cache-lib": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true + "devOptional": true }, "node_modules/v8flags": { "version": "4.0.1", @@ -32283,7 +34629,7 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true, + "devOptional": true, "engines": { "node": ">=6" } @@ -32379,166 +34725,6 @@ "typescript": "5.3.2" } }, - "packages/core/node_modules/@next/eslint-plugin-next": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.6.tgz", - "integrity": "sha512-d3+p4AjIYmhqzYHhhmkRYYN6ZU35TwZAKX08xKRfnHkz72KhWL2kxMFsDptpZs5e8bBGdepn7vn1+9DaF8iX+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "glob": "10.3.10" - } - }, - "packages/core/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "packages/core/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "packages/core/node_modules/eslint-config-next": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.6.tgz", - "integrity": "sha512-z0URA5LO6y8lS/YLN0EDW/C4LEkDODjJzA37dvLVdzCPzuewjzTe1os5g3XclZAZrQ8X8hPaSMQ2JuVWwMmrTA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@next/eslint-plugin-next": "14.2.6", - "@rushstack/eslint-patch": "^1.3.3", - "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-import-resolver-typescript": "^3.5.2", - "eslint-plugin-import": "^2.28.1", - "eslint-plugin-jsx-a11y": "^6.7.1", - "eslint-plugin-react": "^7.33.2", - "eslint-plugin-react-hooks": "^4.5.0 || 5.0.0-canary-7118f5dd7-20230705" - }, - "peerDependencies": { - "eslint": "^7.23.0 || ^8.0.0", - "typescript": ">=3.3.1" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "packages/core/node_modules/eslint-plugin-react": { - "version": "7.35.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.35.0.tgz", - "integrity": "sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-includes": "^3.1.8", - "array.prototype.findlast": "^1.2.5", - "array.prototype.flatmap": "^1.3.2", - "array.prototype.tosorted": "^1.1.4", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.19", - "estraverse": "^5.3.0", - "hasown": "^2.0.2", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.8", - "object.fromentries": "^2.0.8", - "object.values": "^1.2.0", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.5", - "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.11", - "string.prototype.repeat": "^1.0.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" - } - }, - "packages/core/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "license": "ISC", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "packages/core/node_modules/glob/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "packages/core/node_modules/resolve": { - "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "packages/core/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, "packages/eslint-config-custom": { "name": "@karrio/eslint-config-custom", "version": "0.0.0", @@ -32597,6 +34783,106 @@ "node": ">=4.2.0" } }, + "packages/insiders": { + "name": "@karrio/insiders", + "version": "0.0.0", + "license": "Apache-2.0", + "dependencies": { + "@karrio/core": "*", + "@karrio/hooks": "*", + "@karrio/lib": "*", + "@karrio/types": "*", + "@nivo/bar": "^0.87.0", + "@nivo/line": "^0.87.0", + "@radix-ui/react-checkbox": "^1.1.1", + "@radix-ui/react-dialog": "^1.1.1", + "@radix-ui/react-dropdown-menu": "^2.1.1", + "@radix-ui/react-icons": "^1.3.0", + "@radix-ui/react-label": "^2.1.0", + "@radix-ui/react-popover": "^1.1.1", + "@radix-ui/react-select": "^2.1.1", + "@radix-ui/react-slot": "^1.1.0", + "@radix-ui/react-switch": "^1.1.0", + "@radix-ui/react-tabs": "^1.1.0", + "@tanstack/react-table": "^8.20.5", + "chart.js": "^4.4.0", + "class-variance-authority": "^0.7.0", + "clsx": "^2.1.1", + "date-fns": "^3.6.0", + "highlight.js": "^11.2.0", + "lucide-react": "^0.439.0", + "react-day-picker": "^8.10.1", + "tailwind-merge": "^2.5.2", + "tailwindcss-animate": "^1.0.7" + }, + "devDependencies": { + "@karrio/eslint-config-custom": "*", + "@karrio/tsconfig": "*", + "@turbo/gen": "^1.10.12", + "@types/node": "^20.5.2", + "@types/react": "^18.2.0", + "@types/react-dom": "^18.2.0", + "react": "^18.2.0", + "tailwindcss": "^3.4.10", + "typescript": "^4.5.2" + } + }, + "packages/insiders/node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "packages/insiders/node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "packages/insiders/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" + } + }, + "packages/insiders/node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, "packages/karriojs": { "name": "karriojs-karrio", "version": "2021.10.0", diff --git a/package.json b/package.json index d8d417399d..90c533e3ae 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,7 @@ "@rollup/plugin-json": "^6.0.1", "eslint": "^8.48.0", "prettier": "^3.0.3", + "tailwindcss": "^3.4.10", "tsconfig": "*", "turbo": "^2.0.14" }, diff --git a/apps/dashboard/src/app/[domain]/api/images/[name]/route.ts b/packages/core/context/image.ts similarity index 93% rename from apps/dashboard/src/app/[domain]/api/images/[name]/route.ts rename to packages/core/context/image.ts index d82a4e9bd6..c9ad960abe 100644 --- a/apps/dashboard/src/app/[domain]/api/images/[name]/route.ts +++ b/packages/core/context/image.ts @@ -1,43 +1,43 @@ -import { formatCarrierSlug, getInitials, isNoneOrEmpty } from "@karrio/lib"; -import { NextRequest } from "next/server"; - -export async function GET( - request: NextRequest, - { params }: { params: { name: string } }, -) { - const { name } = params; - const searchParams = request.nextUrl.searchParams; - const isIcon = name.includes("_icon"); - const [_name, ..._] = name.replace(isIcon ? "_icon" : "_logo", "").split("."); - const carrier_name = isIcon - ? getInitials(_name).substring(0, 2) - : formatCarrierSlug(_name); - const text_color = isNoneOrEmpty(searchParams.get("text_color")) - ? "#ddd" - : decodeURIComponent(searchParams.get("text_color") as string); - const background = isNoneOrEmpty(searchParams.get("background")) - ? "#7e51e1" - : decodeURIComponent(searchParams.get("background") as string); - const props = isIcon ? 'viewBox="0 0 512 512"' : 'viewBox="0 0 125 25"'; - const path = isIcon - ? `` - : ``; - - const content = ` - - ${path} - - - ${carrier_name} - - - - `; - - return new Response(content, { - headers: { - "Content-Type": "image/svg+xml", - }, - }); -} +import { formatCarrierSlug, getInitials, isNoneOrEmpty } from "@karrio/lib"; +import { NextRequest } from "next/server"; + +export async function GET( + request: NextRequest, + { params }: { params: { name: string } }, +) { + const { name } = params; + const searchParams = request.nextUrl.searchParams; + const isIcon = name.includes("_icon"); + const [_name] = name.replace(isIcon ? "_icon" : "_logo", "").split("."); + const carrier_name = isIcon + ? getInitials(_name).substring(0, 2) + : formatCarrierSlug(_name); + const text_color = isNoneOrEmpty(searchParams.get("text_color")) + ? "#ddd" + : decodeURIComponent(searchParams.get("text_color") as string); + const background = isNoneOrEmpty(searchParams.get("background")) + ? "#7e51e1" + : decodeURIComponent(searchParams.get("background") as string); + const props = isIcon ? 'viewBox="0 0 512 512"' : 'viewBox="0 0 125 25"'; + const path = isIcon + ? `` + : ``; + + const content = ` + + ${path} + + + ${carrier_name} + + + + `; + + return new Response(content, { + headers: { + "Content-Type": "image/svg+xml", + }, + }); +} diff --git a/packages/core/modules/Apps/development.tsx b/packages/core/modules/Apps/development.tsx deleted file mode 100644 index 1e8e25423b..0000000000 --- a/packages/core/modules/Apps/development.tsx +++ /dev/null @@ -1,116 +0,0 @@ -"use client"; -import { dynamicMetadata } from "@karrio/core/components/metadata"; -import { AppMenu } from "@karrio/ui/components/app-menu"; -import { AppLink } from "@karrio/ui/components/app-link"; -import { ModalProvider } from "@karrio/ui/modals/modal"; -import { bundleContexts } from "@karrio/hooks/utils"; -import { Spinner } from "@karrio/ui/components"; - -export const generateMetadata = dynamicMetadata("Apps"); -const ContextProviders = bundleContexts([ModalProvider]); - -export default function Page(pageProps: any) { - const Component: React.FC<{}> = () => { - const { query: { data: { private_apps = {} } = {}, ...query } = {} } = - {} as any; - - return ( - <> -
-
- Apps - - BETA - -
-
- - Create app - -
-
- -
-
    -
  • - - Installed - -
  • -
  • - - Development - -
  • -
-
- - {query.isLoading && } - - {query.isLoading === false && - (private_apps?.edges || []).length > 0 && ( - <> - - - )} - - {query.isLoading === false && - (private_apps?.edges || []).length == 0 && ( - <> -
-
-

No app found.

-
-
- - )} - - ); - }; - - return ( - <> - - - - - ); -} diff --git a/packages/core/modules/Apps/index.tsx b/packages/core/modules/Apps/index.tsx deleted file mode 100644 index 999e732476..0000000000 --- a/packages/core/modules/Apps/index.tsx +++ /dev/null @@ -1,112 +0,0 @@ -"use client"; -import { dynamicMetadata } from "@karrio/core/components/metadata"; -import { AppMenu } from "@karrio/ui/components/app-menu"; -import { AppLink } from "@karrio/ui/components/app-link"; -import { ModalProvider } from "@karrio/ui/modals/modal"; -import { bundleContexts } from "@karrio/hooks/utils"; -import { Spinner } from "@karrio/ui/components"; - -export const generateMetadata = dynamicMetadata("Apps"); -const ContextProviders = bundleContexts([ModalProvider]); - -export default function Page(pageProps: any) { - const Component: React.FC = () => { - const { query: { data: { installations = {} } = {}, ...query } = {} } = - {} as any; - - return ( - <> -
-
- Apps - - BETA - -
-
-
- -
-
    -
  • - - Installed - -
  • -
  • - - Development - -
  • -
-
- - {query.isLoading && } - - {query.isLoading === false && - (installations?.edges || []).length > 0 && ( - <> - - - )} - - {query.isLoading === false && - (installations?.edges || []).length == 0 && ( - <> -
-
-

No apps installed.

-
-
- - )} - - ); - }; - - return ( - <> - - - - - ); -} diff --git a/packages/core/modules/Labels/create_labels.tsx b/packages/core/modules/Labels/create_labels.tsx index 235d5247df..8fb90f133a 100644 --- a/packages/core/modules/Labels/create_labels.tsx +++ b/packages/core/modules/Labels/create_labels.tsx @@ -214,7 +214,7 @@ export default function Page(pageProps: any) { ({ id }, index) => `${id || index}` === `${selected}`, ); const shipment = shipments[shipment_index]; - const ShipmentEditor: React.FC = + const ShipmentEditor: React.FC = !!shipment && !isNone(shipment_index) ? ( f: (props: { @@ -294,7 +294,7 @@ export default function Page(pageProps: any) { setSelectedRow(undefined); setIsOpen(false); }; - const selectedRate = (shipment) => + const selectedRate = (shipment: ShipmentType) => (shipment?.rates || []).find( (_) => _.service === shipment?.options?.preferred_service, ) || (shipment?.rates || [])[0]; @@ -690,1727 +690,1788 @@ export default function Page(pageProps: any) { {retrieveShipment( batch.shipments, selectedRow, - )(({ shipment, shipment_index }) => { - const shipmentOrderIds = ( - shipment.meta?.order_id || - shipment.metadata?.order_ids || - "" - ) - .split(",") - .filter((_) => !isNoneOrEmpty(_)); - const orders = (shipmentOrderList?.edges || []) - .filter(({ node }) => - shipmentOrderIds.includes(node.order_id), + )( + ({ + shipment, + shipment_index, + }: { + shipment: ShipmentType; + shipment_index: number; + }) => { + const shipmentOrderIds = ( + shipment.meta?.order_id || + shipment.metadata?.order_ids || + "" ) - .map(({ node }) => node) as OrderType[]; - - return ( - - - -
-
- - {`#${shipment.meta?.order_id || shipment.metadata?.order_ids || " - "}`} - -
- - {formatAddressLocationShort( - shipment.recipient as AddressType, - )} - -
-
- -
-
-
- -
- {/* Address section */} -
-
-
- - Customer - -
- - onChange(shipment_index, shipment, { - recipient: address, - }) - } - trigger={ - - } - /> -
-
- - - - {Object.values(shipment.recipient || {}) - .length === 0 && ( - <> -
- Please add a customer address. -
- - )}
- -
- -
-
- - Ship from +
+ - } - /> -
-
- - - - {Object.values(shipment.shipper || {}) - .length === 0 && ( - <> -
- Please specify an address. -
- - )} +
+ +
- {/* Retrun address section */} -
- -
-
-
- { - setAddReturn(e.target.checked); - if ( - !e.target.checked && - !isNone(shipment.return_address) - ) { - onChange( - shipment_index, - shipment, - { - return_address: null, - }, - ); - } - }} - > - - Add a return address (optional) - - -
-
- {(addReturn || - !isNone(shipment.return_address)) && ( +
+ {/* Address section */} +
+
+
+ + Customer + +
onChange( shipment_index, shipment, { - return_address: address, + recipient: address, }, ) } trigger={ } /> - )} -
-
+
+
-
- {shipment?.return_address && ( - + + + {Object.values(shipment.recipient || {}) + .length === 0 && ( + <> +
+ Please add a customer address. +
+ )}
- {Object.values( - shipment?.return_address || [], - ).length === 0 && ( -
- - Use this to specify an origin address - different from the shipper address - above.
- This address will be used for pickup - and return. -
-
- )} -
- - {/* Billing address section */} -
- -
- +
-
- - -
- {(shipment?.billing_address || - shipment.payment?.paid_by === - PaidByEnum.third_party) && ( - <> -
-
-
- {shipment?.billing_address && ( +
+ {shipment?.return_address && ( )} - - {isNone(shipment?.billing_address) && ( -
- Add shipment billing address. - (optional) -
- )}
- - )} -
- {/* Parcel & Items section */} -
-
- - PACKAGES - -
- - Add package - - } - /> + {Object.values( + shipment?.return_address || [], + ).length === 0 && ( +
+ + Use this to specify an origin + address different from the shipper + address above.
+ This address will be used for pickup + and return. +
+
+ )}
-
-
+ {/* Billing address section */} +
- {shipment.parcels.map((pkg, pkg_index) => ( - - {pkg_index > 0 && ( -
- )} +
+ -
- {/* Parcel header */} -
-
- - {pkg_index + 1} - - } - /> -
-
- +
-
- - {/* Items section */} - - ITEMS - - - {(pkg.items || []).map( - (item, item_index) => ( - -
-
-
-

- {item_index + 1}{" "} - {`${item.title || item.description || "Item"}`} -

-

- {isNoneOrEmpty(item.sku) - ? "SKU: 0000000" - : `SKU: ${item.sku}`} - {getOrder( - orders, - item.parent_id, - ) && ( - - {` | ORDER: ${getOrder(orders, item.parent_id)?.order_id}`} - - )} -

-

-
-
-
- - {formatWeight(item)} - -
-

- { - mutation.updateItem( - shipment_index, - )( - pkg_index, - item_index, - pkg.id, - )({ - quantity: - parseInt( - e.target - .value, - ), - } as CommodityType); - }} - className="input is-small" - style={{ - width: "60px", - textAlign: "center", - }} - {...(getParent( - orders, - item.parent_id, - ) - ? { - max: getAvailableQuantity( - shipment, - orders, - item, - item_index, - ), - } - : {})} - /> -

- {getParent( - orders, - item.parent_id, - ) && ( -

- - of{" "} - {getParent( - orders, - item.parent_id, - ) - ?.unfulfilled_quantity || - item.quantity} - -

- )} -
-
- - {({ editCommodity }) => ( - - )} - + shipment, + { + payment: { + ...shipment.payment, + paid_by: + PaidByEnum.recipient, + }, + billing_address: null, + }, + ) + } + /> + + {formatRef( + PaidByEnum.recipient.toString(), + )} + + + +
+ + {shipment.payment?.paid_by && + shipment.payment?.paid_by !== + PaidByEnum.sender && ( +
+ + onChange( + shipment_index, + shipment, + { + payment: { + ...shipment.payment, + account_number: + e.target.value, + }, + }, + ) + } + /> +
+ )} +
+ + {(shipment?.billing_address || + shipment.payment?.paid_by === + PaidByEnum.third_party) && ( + <> +
+
+ +
+ + onChange( + shipment_index, + shipment, + { + billing_address: address, + }, + ) + } + trigger={ + + } + /> +
+
+ + {shipment?.billing_address && ( + + )} + + {isNone( + shipment?.billing_address, + ) && ( +
+ Add shipment billing address. + (optional) +
+ )} +
+ + )} +
+ + {/* Parcel & Items section */} +
+
+ + PACKAGES + +
+ + Add package + + } + /> +
+
+ +
+ + {shipment.parcels.map((pkg, pkg_index) => ( + + {pkg_index > 0 && ( +
+ )} + +
+ {/* Parcel header */} +
+
+ + {pkg_index + 1} + + } + /> +
+
+ - + -
-
- - ), - )} - - {(pkg.items || []).length === 0 && ( -
- You can specify content items. -
- )} - -
- - {({ editCommodity }) => ( + } + /> - )} - -
-
-
- ))} +
+
- {(shipment.parcels || []).length === 0 && ( -
- Add one or more packages to create a - shipment. -
- )} -
+ {/* Items section */} + + ITEMS + - {/* Shipping options section */} -
-
- - Shipping options - -
+ {(pkg.items || []).map( + (item, item_index) => ( + +
+
+
+

+ {item_index + 1}{" "} + {`${item.title || item.description || "Item"}`} +

+

+ {isNoneOrEmpty(item.sku) + ? "SKU: 0000000" + : `SKU: ${item.sku}`} + {getOrder( + orders, + item.parent_id, + ) && ( + + {` | ORDER: ${getOrder(orders, item.parent_id)?.order_id}`} + + )} +

+

+
+
+
+ + {formatWeight(item)} + +
+

+ { + mutation.updateItem( + shipment_index, + )( + pkg_index, + item_index, + pkg.id, + )({ + quantity: + parseInt( + e.target + .value, + ), + } as CommodityType); + }} + className="input is-small" + style={{ + width: "60px", + textAlign: + "center", + }} + {...(getParent( + orders, + item.parent_id, + ) + ? { + max: getAvailableQuantity( + shipment, + orders, + item, + item_index, + ), + } + : {})} + /> +

+ {getParent( + orders, + item.parent_id, + ) && ( +

+ + of{" "} + {getParent( + orders, + item.parent_id, + ) + ?.unfulfilled_quantity || + item.quantity} + +

+ )} +
+
+ + {({ editCommodity }) => ( + + )} + + +
+
+
+ ), + )} -
+ {(pkg.items || []).length === 0 && ( +
+ You can specify content items. +
+ )} -
- {/* shipment date */} - - onChange(shipment_index, shipment, { - options: { - ...shipment.options, - shipment_date: e.target.value, - }, - }) - } - /> +
+ + {({ editCommodity }) => ( + + )} + +
+
+ + ))} - {/* currency */} - - onChange(shipment_index, shipment, { - options: { - ...shipment.options, - currency: e.target.value, - }, - }) - } - > - - {CURRENCY_OPTIONS.map((unit) => ( - - ))} - - - {/* signature confirmation */} - - onChange(shipment_index, shipment, { - options: { - ...shipment.options, - signature_confirmation: - e.target.checked || null, - }, - }) - } - > - Add signature confirmation - - - {/* insurance */} - - onChange(shipment_index, shipment, { - options: { - ...shipment.options, - insurance: - e.target.checked === true - ? "" - : null, - }, - }) - } - > - Add insurance coverage - + {(shipment.parcels || []).length === 0 && ( +
+ Add one or more packages to create a + shipment. +
+ )} +
-
+ {/* Shipping options section */} +
+
+ + Shipping options + +
+ +
+ +
+ {/* shipment date */} onChange(shipment_index, shipment, { options: { ...shipment.options, - insurance: parseFloat( - e.target.value, - ), + shipment_date: e.target.value, }, }) } - iconLeft={ - - - - } - iconRight={ - - {shipment.options?.currency} - - } /> -
- - {/* Cash on delivery */} - - onChange(shipment_index, shipment, { - options: { - ...shipment.options, - cash_on_delivery: - e.target.checked === true - ? "" - : null, - }, - }) - } - > - Collect on delivery - -
- onChange(shipment_index, shipment, { options: { ...shipment.options, - cash_on_delivery: parseFloat( - e.target.value, - ), + currency: e.target.value, }, }) } - iconLeft={ - - - + > + + {CURRENCY_OPTIONS.map((unit) => ( + + ))} + + + {/* signature confirmation */} + - {shipment.options?.currency} - + onChange={(e) => + onChange(shipment_index, shipment, { + options: { + ...shipment.options, + signature_confirmation: + e.target.checked || null, + }, + }) } - /> -
+ > + Add signature confirmation + + + {/* insurance */} + + onChange(shipment_index, shipment, { + options: { + ...shipment.options, + insurance: + e.target.checked === true + ? "" + : null, + }, + }) + } + > + Add insurance coverage + - {/* Declared value */} - - onChange(shipment_index, shipment, { - options: { - ...shipment.options, - declared_value: - e.target.checked === true - ? "" - : null, - }, - }) - } - > - Add package value - +
+ + onChange(shipment_index, shipment, { + options: { + ...shipment.options, + insurance: parseFloat( + e.target.value, + ), + }, + }) + } + iconLeft={ + + + + } + iconRight={ + + {shipment.options?.currency} + + } + /> +
-
- onChange(shipment_index, shipment, { options: { ...shipment.options, - declared_value: parseFloat( - e.target.value, - ), + cash_on_delivery: + e.target.checked === true + ? "" + : null, }, }) } - iconRight={ - - {shipment.options?.currency} - + > + Collect on delivery + + +
+ + onChange(shipment_index, shipment, { + options: { + ...shipment.options, + cash_on_delivery: parseFloat( + e.target.value, + ), + }, + }) + } + iconLeft={ + + + + } + iconRight={ + + {shipment.options?.currency} + + } + /> +
+ + {/* Declared value */} + -
+ onChange={(e) => + onChange(shipment_index, shipment, { + options: { + ...shipment.options, + declared_value: + e.target.checked === true + ? "" + : null, + }, + }) + } + > + Add package value + - {/* paperless trade */} - - onChange(shipment_index, shipment, { - options: { - ...shipment.options, - paperless_trade: e.target.checked, - }, - }) - } - > - Paperless trade - - - {/* hold at location */} - - onChange(shipment_index, shipment, { - options: { - ...shipment.options, - hold_at_location: e.target.checked, - }, - }) - } - > - Hold at location - - - {/* dangerous good */} - - onChange(shipment_index, shipment, { - options: { - ...shipment.options, - dangerous_good: e.target.checked, - }, - }) - } - > - Dangerous good - -
+
+ + onChange(shipment_index, shipment, { + options: { + ...shipment.options, + declared_value: parseFloat( + e.target.value, + ), + }, + }) + } + iconRight={ + + {shipment.options?.currency} + + } + /> +
- {/* CARRIER OPTIONS SECTION */} - {Object.keys(carrierOptions).length > 0 && ( -
- - {({ open }) => ( -
- -
- CARRIER SPECIFIC OPTIONS -
- - {open ? ( - - ) : ( - - )} - -
- - {Object.entries( - carrierOptions, - ).map(([carrier, options]) => ( - - -
+ {/* paperless trade */} + + onChange(shipment_index, shipment, { + options: { + ...shipment.options, + paperless_trade: e.target.checked, + }, + }) + } + > + Paperless trade + + + {/* hold at location */} + + onChange(shipment_index, shipment, { + options: { + ...shipment.options, + hold_at_location: + e.target.checked, + }, + }) + } + > + Hold at location + + + {/* dangerous good */} + + onChange(shipment_index, shipment, { + options: { + ...shipment.options, + dangerous_good: e.target.checked, + }, + }) + } + > + Dangerous good + +
-
- {options.map( - (option, index) => ( - - {references!.options[ - carrier - ][option]?.type === - "boolean" && ( -
- - onChange( - shipment_index, - shipment, - { - options: { - ...shipment.options, - [option]: - e - .target - .checked || - null, - }, - }, - ) - } - > - - {formatRef( - option, - )} - - -
- )} + {/* CARRIER OPTIONS SECTION */} + {Object.keys(carrierOptions).length > 0 && ( +
+ + {({ open }) => ( +
+ +
+ CARRIER SPECIFIC OPTIONS +
+ + {open ? ( + + ) : ( + + )} + +
+ + {Object.entries( + carrierOptions, + ).map(([carrier, options]) => ( + + +
- {references!.options[ - carrier - ][option]?.type === - "string" && ( - <> - + {options.map( + (option, index) => ( + + {references! + .options[carrier][ + option + ]?.type === + "boolean" && ( +
- onChange( - shipment_index, - shipment, - { - options: { - ...shipment.options, - [option]: - e - .target - .value, + > + + onChange( + shipment_index, + shipment, + { + options: + { + ...shipment.options, + [option]: + e + .target + .checked || + null, + }, }, - }, - ) - } - /> - - )} - - ), - )} -
- -
-
- ))} -
-
- )} -
-
- )} - -
- -
- - onChange(shipment_index, shipment, { - reference: e.target.value as string, - }) - } - placeholder="shipment reference" - className="is-small" - autoComplete="off" - /> -
-
+ ) + } + > + + {formatRef( + option, + )} + + +
+ )} + + {references! + .options[carrier][ + option + ]?.type === + "string" && ( + <> + + onChange( + shipment_index, + shipment, + { + options: + { + ...shipment.options, + [option]: + e + .target + .value, + }, + }, + ) + } + /> + + )} + + ), + )} +
- {/* Customs declaration section */} - {isInternational(shipment) && ( -
-
- - CUSTOMS DECLARATION - -
- - Edit customs info - - } - /> +
+ + ))} + +
+ )} +
- + )}
-
- {!isNone(shipment.customs) && ( - <> - + + onChange(shipment_index, shipment, { + reference: e.target.value as string, + }) + } + placeholder="shipment reference" + className="is-small" + autoComplete="off" + /> +
+
+ + {/* Customs declaration section */} + {isInternational(shipment) && ( +
+
+ + CUSTOMS DECLARATION + +
+ + Edit customs info + } /> +
+
- {/* Commodities section */} - - COMMODITIES - +
- {( - shipment.customs!.commodities || [] - ).map((commodity, index) => ( - -
-
- + {!isNone(shipment.customs) && ( + <> + + + {/* Commodities section */} + + COMMODITIES + + + {( + shipment.customs!.commodities || + [] + ).map((commodity, index) => ( + +
-
- - {({ editCommodity }) => ( - - )} - + shipment, + )} + onClick={() => + editCommodity({ + commodity, + onSubmit: (_) => + mutation.updateCommodity( + shipment_index, + )( + index, + shipment + .customs + ?.id, + )(_), + }) + } + > + + + + + )} + + +
+
+
+ ))} + + {( + shipment.customs!.commodities || + [] + ).length === 0 && ( +
+ You need provide commodity items + for customs purpose. (required) +
+ )} + +
+ + {({ editCommodity }) => ( -
-
- - ))} - - {(shipment.customs!.commodities || []) - .length === 0 && ( -
- You need provide commodity items - for customs purpose. (required) -
- )} - -
- - {({ editCommodity }) => ( - + /> )} - - {metadata.ORDERS_MANAGEMENT && ( - - mutation.addCommodities( - _ as any, - ) - } - /> - )} -
+
- {/* Duty Billing address section */} - {(shipment.customs! - .duty_billing_address || - shipment.customs!.duty?.paid_by === - PaidByEnum.third_party) && ( - <> -
+ {/* Duty Billing address section */} + {(shipment.customs! + .duty_billing_address || + shipment.customs!.duty + ?.paid_by === + PaidByEnum.third_party) && ( + <> +
-
-
- -
- +
+ +
+ + mutation.updateShipment( + shipment_index, + )({ + customs: { + ...shipment! + .customs, + duty_billing_address: + address, + } as any, + }) + } + trigger={ + + } + /> +
+
+ + {shipment!.customs! + .duty_billing_address && ( + - mutation.updateShipment( - shipment_index, - )({ - customs: { - ...shipment! - .customs, - duty_billing_address: - address, - } as any, - }) - } - trigger={ - + shipment!.customs! + .duty_billing_address as any } /> -
-
- - {shipment!.customs! - .duty_billing_address && ( - - )} - - {isNone( - shipment!.customs! - .duty_billing_address, - ) && ( -
- Add customs duty billing - address. (optional) -
- )} -
- - )} - - )} + )} + + {isNone( + shipment!.customs! + .duty_billing_address, + ) && ( +
+ Add customs duty billing + address. (optional) +
+ )} +
+ + )} + + )} - {isNone(shipment.customs) && ( -
- Looks like you have an international - shipment. You may need to provide a - customs declaration unless you are - shipping documents only. -
- )} + {isNone(shipment.customs) && ( +
+ Looks like you have an international + shipment. You may need to provide a + customs declaration unless you are + shipping documents only. +
+ )} + - - )} + )} - {/* Shipment Summary */} - + {/* Shipment Summary */} + - {/* Metadata section */} -
-
- - onChange(shipment_index, shipment, { - metadata, - }) - } - > - - {({ isEditing, editMetadata }) => ( - <> -
- - METADATA - -
- -
-
- - )} -
-
+ {/* Metadata section */} +
+
+ + onChange(shipment_index, shipment, { + metadata, + }) + } + > + + {({ isEditing, editMetadata }) => ( + <> +
+ + METADATA + +
+ +
+
+ + )} +
+
+
-
- {/* Instructions section */} -
-
- - onChange(shipment_index, shipment, { - options: { - ...shipment.options, - instructions: e.target.value, - }, - }) - } - /> + {/* Instructions section */} +
+
+ + onChange(shipment_index, shipment, { + options: { + ...shipment.options, + instructions: e.target.value, + }, + }) + } + /> +
-
-
+
- {/* Service section */} -
-
-
- - Service - -
-
- -
-
- - {/* Shipping service */} - - {/* Dropdown trigger */} -