@stackframe/stack-cli 2.8.98 → 2.8.99
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dashboard/apps/dashboard/.next/BUILD_ID +1 -1
- package/dist/dashboard/apps/dashboard/.next/build-manifest.json +4 -4
- package/dist/dashboard/apps/dashboard/.next/prerender-manifest.json +3 -3
- package/dist/dashboard/apps/dashboard/.next/required-server-files.json +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/(outside-dashboard)/new-project/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/(outside-dashboard)/new-project/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/(outside-dashboard)/playground/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/(outside-dashboard)/playground/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/(outside-dashboard)/projects/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/(outside-dashboard)/projects/page/server-reference-manifest.json +3 -3
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/(outside-dashboard)/projects/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/-selector-/[...path]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/-selector-/[...path]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/(overview)/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/(overview)/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/@modal/(.)apps/[appId]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/@modal/(.)apps/[appId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/analytics/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/analytics/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/analytics/queries/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/analytics/queries/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/analytics/tables/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/analytics/tables/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/api-keys/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/api-keys/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/api-keys-app/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/api-keys-app/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/apps/[appId]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/apps/[appId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/apps/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/apps/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/auth-methods/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/auth-methods/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/conversations/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/conversations/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/convex/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/convex/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/dashboards/[dashboardId]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/dashboards/[dashboardId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/dashboards/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/dashboards/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/data-vault/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/data-vault/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/data-vault/stores/[storeId]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/data-vault/stores/[storeId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/data-vault/stores/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/data-vault/stores/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/design-language/chart-demo/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/design-language/chart-demo/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/design-language/datagrid-demo/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/design-language/datagrid-demo/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/design-language/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/design-language/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/design-language/realistic-demo/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/design-language/realistic-demo/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/domains/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/domains/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-drafts/[draftId]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-drafts/[draftId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-drafts/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-drafts/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-outbox/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-outbox/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-sent/no-source/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-sent/no-source/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-sent/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-sent/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-settings/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-settings/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-templates/[templateId]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-templates/[templateId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-templates/[templateId]/sent/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-templates/[templateId]/sent/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-templates/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-templates/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-themes/[themeId]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-themes/[themeId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-themes/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-themes/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-viewer/[emailId]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/email-viewer/[emailId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/emails/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/emails/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/expert-mode/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/expert-mode/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/external-db-sync/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/external-db-sync/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/launch-checklist/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/launch-checklist/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/onboarding/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/onboarding/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/customers/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/customers/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/payouts/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/payouts/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/product-lines/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/product-lines/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/products/[productId]/edit/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/products/[productId]/edit/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/products/[productId]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/products/[productId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/products/new/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/products/new/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/products/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/products/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/settings/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/settings/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/transactions/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/payments/transactions/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/project-keys/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/project-keys/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/project-permissions/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/project-permissions/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/project-settings/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/project-settings/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/query-analytics/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/query-analytics/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/session-replays/[replayId]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/session-replays/[replayId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/session-replays/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/session-replays/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/sign-up-rules/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/sign-up-rules/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/support/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/support/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/team-permissions/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/team-permissions/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/team-settings/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/team-settings/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/teams/[teamId]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/teams/[teamId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/teams/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/teams/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/users/[userId]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/users/[userId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/users/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/users/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/vercel/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/vercel/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/webhooks/[endpointId]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/webhooks/[endpointId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/webhooks/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/webhooks/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/widget-playground/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/(protected)/projects/[projectId]/widget-playground/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/handler/[...stack]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/handler/[...stack]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/integrations/custom/confirm/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/integrations/custom/confirm/page/server-reference-manifest.json +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/integrations/custom/confirm/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/integrations/custom/projects/transfer/confirm/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/integrations/custom/projects/transfer/confirm/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/integrations/featurebase/sso/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/integrations/featurebase/sso/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/integrations/neon/confirm/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/integrations/neon/confirm/page/server-reference-manifest.json +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/integrations/neon/confirm/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/integrations/neon/projects/transfer/confirm/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/integrations/neon/projects/transfer/confirm/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/purchase/[code]/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/purchase/[code]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/purchase/return/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/purchase/return/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/wizard-congrats/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/(main)/wizard-congrats/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/_global-error/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/_global-error.html +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/_global-error.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/_not-found/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/_not-found.html +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/_not-found.rsc +6 -6
- package/dist/dashboard/apps/dashboard/.next/server/app/_not-found.segments/_full.segment.rsc +6 -6
- package/dist/dashboard/apps/dashboard/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/_not-found.segments/_index.segment.rsc +6 -6
- package/dist/dashboard/apps/dashboard/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/health/error-handler-debug/page/build-manifest.json +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/health/error-handler-debug/page_client-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/health/error-handler-debug.html +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/health/error-handler-debug.rsc +7 -7
- package/dist/dashboard/apps/dashboard/.next/server/app/health/error-handler-debug.segments/_full.segment.rsc +7 -7
- package/dist/dashboard/apps/dashboard/.next/server/app/health/error-handler-debug.segments/_head.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/health/error-handler-debug.segments/_index.segment.rsc +6 -6
- package/dist/dashboard/apps/dashboard/.next/server/app/health/error-handler-debug.segments/_tree.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/health/error-handler-debug.segments/health/error-handler-debug/__PAGE__.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/health/error-handler-debug.segments/health/error-handler-debug.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/health/error-handler-debug.segments/health.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/index.html +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/index.rsc +6 -6
- package/dist/dashboard/apps/dashboard/.next/server/app/index.segments/!KG1haW4p/__PAGE__.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/index.segments/!KG1haW4p.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/index.segments/_full.segment.rsc +6 -6
- package/dist/dashboard/apps/dashboard/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/index.segments/_index.segment.rsc +6 -6
- package/dist/dashboard/apps/dashboard/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/new-project.html +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/new-project.rsc +9 -9
- package/dist/dashboard/apps/dashboard/.next/server/app/new-project.segments/!KG1haW4p/!KHByb3RlY3RlZCk/!KG91dHNpZGUtZGFzaGJvYXJkKQ/new-project/__PAGE__.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/new-project.segments/!KG1haW4p/!KHByb3RlY3RlZCk/!KG91dHNpZGUtZGFzaGJvYXJkKQ/new-project.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/new-project.segments/!KG1haW4p/!KHByb3RlY3RlZCk/!KG91dHNpZGUtZGFzaGJvYXJkKQ.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/new-project.segments/!KG1haW4p/!KHByb3RlY3RlZCk.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/new-project.segments/!KG1haW4p.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/new-project.segments/_full.segment.rsc +9 -9
- package/dist/dashboard/apps/dashboard/.next/server/app/new-project.segments/_head.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/new-project.segments/_index.segment.rsc +6 -6
- package/dist/dashboard/apps/dashboard/.next/server/app/new-project.segments/_tree.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/playground.html +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/playground.rsc +9 -9
- package/dist/dashboard/apps/dashboard/.next/server/app/playground.segments/!KG1haW4p/!KHByb3RlY3RlZCk/!KG91dHNpZGUtZGFzaGJvYXJkKQ/playground/__PAGE__.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/playground.segments/!KG1haW4p/!KHByb3RlY3RlZCk/!KG91dHNpZGUtZGFzaGJvYXJkKQ/playground.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/playground.segments/!KG1haW4p/!KHByb3RlY3RlZCk/!KG91dHNpZGUtZGFzaGJvYXJkKQ.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/playground.segments/!KG1haW4p/!KHByb3RlY3RlZCk.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/playground.segments/!KG1haW4p.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/playground.segments/_full.segment.rsc +9 -9
- package/dist/dashboard/apps/dashboard/.next/server/app/playground.segments/_head.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/playground.segments/_index.segment.rsc +6 -6
- package/dist/dashboard/apps/dashboard/.next/server/app/playground.segments/_tree.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/projects.html +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/projects.rsc +9 -9
- package/dist/dashboard/apps/dashboard/.next/server/app/projects.segments/!KG1haW4p/!KHByb3RlY3RlZCk/!KG91dHNpZGUtZGFzaGJvYXJkKQ/projects/__PAGE__.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/projects.segments/!KG1haW4p/!KHByb3RlY3RlZCk/!KG91dHNpZGUtZGFzaGJvYXJkKQ/projects.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/projects.segments/!KG1haW4p/!KHByb3RlY3RlZCk/!KG91dHNpZGUtZGFzaGJvYXJkKQ.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/projects.segments/!KG1haW4p/!KHByb3RlY3RlZCk.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/projects.segments/!KG1haW4p.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/projects.segments/_full.segment.rsc +9 -9
- package/dist/dashboard/apps/dashboard/.next/server/app/projects.segments/_head.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/projects.segments/_index.segment.rsc +6 -6
- package/dist/dashboard/apps/dashboard/.next/server/app/projects.segments/_tree.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/wizard-congrats.html +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/wizard-congrats.rsc +10 -10
- package/dist/dashboard/apps/dashboard/.next/server/app/wizard-congrats.segments/!KG1haW4p/wizard-congrats/__PAGE__.segment.rsc +5 -5
- package/dist/dashboard/apps/dashboard/.next/server/app/wizard-congrats.segments/!KG1haW4p/wizard-congrats.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/wizard-congrats.segments/!KG1haW4p.segment.rsc +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/app/wizard-congrats.segments/_full.segment.rsc +10 -10
- package/dist/dashboard/apps/dashboard/.next/server/app/wizard-congrats.segments/_head.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/app/wizard-congrats.segments/_index.segment.rsc +6 -6
- package/dist/dashboard/apps/dashboard/.next/server/app/wizard-congrats.segments/_tree.segment.rsc +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/[root-of-the-server]__ca795af0._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/_49383003._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/_4aa04954._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/_adc726ad._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/node_modules__pnpm_83fb9804._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/packages_7616bb64._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/packages_b28d1571._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/ssr/[root-of-the-server]__2cd26629._.js +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/chunks/ssr/[root-of-the-server]__6e5aa722._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/ssr/_0dfd49d3._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/ssr/_2899b4cf._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/ssr/_a6682962._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/ssr/_e7e139c6._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/ssr/_ee1bd9c5._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/ssr/_fd22fd7e._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/ssr/node_modules__pnpm_95bb43ac._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/ssr/packages_40edc159._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/chunks/ssr/packages_7721fe76._.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/middleware-build-manifest.js +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/pages/404.html +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/pages/500.html +2 -2
- package/dist/dashboard/apps/dashboard/.next/server/server-reference-manifest.js +1 -1
- package/dist/dashboard/apps/dashboard/.next/server/server-reference-manifest.json +5 -5
- package/dist/dashboard/apps/dashboard/.next/static/chunks/{97e1330e14573400.js → 01da0f32562a715b.js} +1 -1
- package/dist/dashboard/apps/dashboard/.next/static/chunks/{ece0b5feb977ed83.js.map → 07e9cb0260d7f44a.js.map} +1 -1
- package/dist/dashboard/apps/dashboard/.next/static/chunks/{d17a00ac0bd7f0ee.js.map → 4972b133fba10261.js.map} +1 -1
- package/dist/dashboard/apps/dashboard/.next/static/chunks/{d52169066a1d587b.js → 9d1fbb560052530a.js} +3 -3
- package/dist/dashboard/apps/dashboard/.next/static/chunks/{a33b351d3a4f250c.js → d30dd66c8310370c.js} +2 -2
- package/dist/dashboard/apps/dashboard/.next/static/chunks/{7f5f59213794b24c.js → ed09d637a38230c3.js} +2 -2
- package/dist/dashboard/apps/dashboard/.next/static/chunks/{260890fa3889cd1d.js.map → f54d295e8f8a1774.js.map} +1 -1
- package/dist/dashboard/apps/dashboard/.next/static/chunks/{turbopack-3a53a1569238ac89.js → turbopack-076430aa6ba5cae1.js} +1 -1
- package/dist/dashboard/apps/dashboard/package.json +1 -1
- package/dist/dashboard/apps/dashboard/server.js +1 -1
- package/package.json +3 -3
- /package/dist/dashboard/apps/dashboard/.next/static/{gMTnCIt-sN7FywyA5JEeJ → bDi55dV-tEfkDvM_i4iNT}/_buildManifest.js +0 -0
- /package/dist/dashboard/apps/dashboard/.next/static/{gMTnCIt-sN7FywyA5JEeJ → bDi55dV-tEfkDvM_i4iNT}/_clientMiddlewareManifest.json +0 -0
- /package/dist/dashboard/apps/dashboard/.next/static/{gMTnCIt-sN7FywyA5JEeJ → bDi55dV-tEfkDvM_i4iNT}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["turbopack:///[project]/node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@phosphor-icons/react/dist/csr/MagnifyingGlass.es.js","turbopack:///[project]/node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@phosphor-icons/react/dist/defs/MagnifyingGlass.es.js","turbopack:///[project]/packages/stack-ui/src/components/ui/card.tsx","turbopack:///[project]/packages/dashboard-ui-components/src/components/card.tsx","turbopack:///[project]/packages/dashboard-ui-components/src/components/badge.tsx","turbopack:///[project]/packages/stack-shared/src/utils/dates.tsx","turbopack:///[project]/node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@phosphor-icons/react/dist/csr/Gear.es.js","turbopack:///[project]/node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@phosphor-icons/react/dist/defs/Gear.es.js","turbopack:///[project]/node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@phosphor-icons/react/dist/csr/FolderOpen.es.js","turbopack:///[project]/node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@phosphor-icons/react/dist/defs/FolderOpen.es.js","turbopack:///[project]/packages/stack-shared/src/plans.ts","turbopack:///[project]/apps/dashboard/src/hooks/use-from-now.tsx","turbopack:///[project]/node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/extends.js","turbopack:///[project]/node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","turbopack:///[project]/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/lib/ReactPropTypesSecret.js","turbopack:///[project]/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/factoryWithThrowingShims.js","turbopack:///[project]/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/index.js","turbopack:///[project]/node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","turbopack:///[project]/node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","turbopack:///[project]/node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/range.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/init.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/ticks.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/ascending.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/descending.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/bisector.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/number.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/bisect.js","turbopack:///[project]/node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/define.js","turbopack:///[project]/node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/color.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/continuous.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/value.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/rgb.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/basis.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/basisClosed.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/constant.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/color.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/numberArray.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/array.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/date.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/number.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/object.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/string.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/round.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/constant.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/number.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/linear.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatDecimal.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/exponent.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatGroup.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatNumerals.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatSpecifier.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatTrim.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatPrefixAuto.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatRounded.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatTypes.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/identity.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/locale.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/defaultLocale.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/precisionFixed.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/precisionPrefix.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/precisionRound.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/tickFormat.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/max.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/quantize.js","turbopack:///[project]/node_modules/.pnpm/recharts@2.14.1_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/recharts/es6/component/ResponsiveContainer.js","turbopack:///[project]/node_modules/.pnpm/recharts@2.14.1_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/recharts/es6/chart/AreaChart.js","turbopack:///[project]/node_modules/.pnpm/next@16.1.7_@babel+core@7.29.0_@opentelemetry+api@1.9.0_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/src/build/webpack/loaders/next-flight-loader/action-client-wrapper.ts","turbopack:///[project]/apps/dashboard/src/components/project-card.tsx","turbopack:///[project]/apps/dashboard/src/components/project-users-metric.tsx","turbopack:///[project]/apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/page-client.tsx","turbopack:///[project]/apps/dashboard/src/components/search-bar.tsx","turbopack:///[project]/apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/data:e5f63e <text/javascript>","turbopack:///[project]/apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/data:31ea08 <text/javascript>","turbopack:///[project]/apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/data:2fdf9c <text/javascript>","turbopack:///[project]/apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/footer.tsx","turbopack:///[project]/apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/preview-project-redirect.tsx"],"sourcesContent":["import * as a from \"react\";\nimport i from \"../lib/IconBase.es.js\";\nimport e from \"../defs/MagnifyingGlass.es.js\";\nconst o = a.forwardRef((s, n) => /* @__PURE__ */ a.createElement(i, { ref: n, ...s, weights: e }));\no.displayName = \"MagnifyingGlassIcon\";\nconst f = o;\nexport {\n f as MagnifyingGlass,\n o as MagnifyingGlassIcon\n};\n","import * as e from \"react\";\nconst a = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M232.49,215.51,185,168a92.12,92.12,0,1,0-17,17l47.53,47.54a12,12,0,0,0,17-17ZM44,112a68,68,0,1,1,68,68A68.07,68.07,0,0,1,44,112Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M192,112a80,80,0,1,1-80-80A80,80,0,0,1,192,112Z\", opacity: \"0.2\" }), /* @__PURE__ */ e.createElement(\"path\", { d: \"M229.66,218.34,179.6,168.28a88.21,88.21,0,1,0-11.32,11.31l50.06,50.07a8,8,0,0,0,11.32-11.32ZM40,112a72,72,0,1,1,72,72A72.08,72.08,0,0,1,40,112Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M168,112a56,56,0,1,1-56-56A56,56,0,0,1,168,112Zm61.66,117.66a8,8,0,0,1-11.32,0l-50.06-50.07a88,88,0,1,1,11.32-11.31l50.06,50.06A8,8,0,0,1,229.66,229.66ZM112,184a72,72,0,1,0-72-72A72.08,72.08,0,0,0,112,184Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M228.24,219.76l-51.38-51.38a86.15,86.15,0,1,0-8.48,8.48l51.38,51.38a6,6,0,0,0,8.48-8.48ZM38,112a74,74,0,1,1,74,74A74.09,74.09,0,0,1,38,112Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M229.66,218.34l-50.07-50.06a88.11,88.11,0,1,0-11.31,11.31l50.06,50.07a8,8,0,0,0,11.32-11.32ZM40,112a72,72,0,1,1,72,72A72.08,72.08,0,0,1,40,112Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M226.83,221.17l-52.7-52.7a84.1,84.1,0,1,0-5.66,5.66l52.7,52.7a4,4,0,0,0,5.66-5.66ZM36,112a76,76,0,1,1,76,76A76.08,76.08,0,0,1,36,112Z\" }))\n ]\n]);\nexport {\n a as default\n};\n","import { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst Card = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n \"rounded-xl border bg-card text-card-foreground shadow-sm\",\n className\n )}\n {...props}\n />\n));\nCard.displayName = \"Card\";\n\nconst CardHeader = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex flex-col space-y-1.5 p-6 pb-0\", className)}\n {...props}\n />\n));\nCardHeader.displayName = \"CardHeader\";\n\nconst CardTitle = forwardRefIfNeeded<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLHeadingElement>\n>(({ className, ...props }, ref) => (\n <h3\n ref={ref}\n className={cn(\"font-semibold leading-none tracking-tight capitalize\", className)}\n {...props}\n />\n));\nCardTitle.displayName = \"CardTitle\";\n\nconst CardDescription = forwardRefIfNeeded<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <p\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nCardDescription.displayName = \"CardDescription\";\n\nconst CardContent = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div ref={ref} className={cn(\"p-6\", className)} {...props} />\n));\nCardContent.displayName = \"CardContent\";\n\nconst CardSubtitle = forwardRefIfNeeded<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <h4\n ref={ref}\n className={cn(\"text-sm text-muted-foreground font-bold\", className)}\n {...props}\n />\n));\n\nconst CardFooter = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex items-center p-6 pt-0\", className)}\n {...props}\n />\n));\nCardFooter.displayName = \"CardFooter\";\n\nexport { Card, CardContent, CardDescription, CardFooter, CardHeader, CardSubtitle, CardTitle };\n\n","\"use client\";\n\nimport { Card } from \"@stackframe/stack-ui\";\nimport { cn } from \"@stackframe/stack-ui\";\nimport React from \"react\";\n\n// ─── Card nesting context ────────────────────────────────────────────────────\n// Components with a `glassmorphic` prop use this to auto-detect whether they\n// sit inside a DesignCard. When they do, glassmorphic defaults to `true`;\n// when they don't, it defaults to `false`.\n\nconst DesignCardNestingContext = React.createContext(false);\n\n/**\n * Returns `true` when the calling component is rendered inside a DesignCard.\n * Useful for deriving a glassmorphic default.\n */\nexport function useInsideDesignCard(): boolean {\n return React.useContext(DesignCardNestingContext);\n}\n\n/**\n * Resolve the effective glassmorphic value.\n * - If the caller passed an explicit boolean → honour it.\n * - Otherwise → fall back to whether we're inside a DesignCard.\n */\nexport function useGlassmorphicDefault(explicit: boolean | undefined): boolean {\n const insideCard = useInsideDesignCard();\n return explicit ?? insideCard;\n}\n\ntype DesignCardGradient = \"blue\" | \"cyan\" | \"purple\" | \"green\" | \"orange\" | \"default\";\n\nconst hoverTintClasses = new Map<DesignCardGradient, string>([\n [\"blue\", \"group-hover:bg-blue-500/[0.03]\"],\n [\"purple\", \"group-hover:bg-purple-500/[0.03]\"],\n [\"green\", \"group-hover:bg-emerald-500/[0.03]\"],\n [\"orange\", \"group-hover:bg-orange-500/[0.03]\"],\n [\"default\", \"group-hover:bg-slate-500/[0.02]\"],\n [\"cyan\", \"group-hover:bg-cyan-500/[0.03]\"],\n]);\n\nconst demoTintClasses = new Map<DesignCardGradient, string>([\n [\"blue\", \"group-hover/tint:bg-blue-500/[0.02]\"],\n [\"purple\", \"group-hover/tint:bg-purple-500/[0.02]\"],\n [\"green\", \"group-hover/tint:bg-emerald-500/[0.02]\"],\n [\"orange\", \"group-hover/tint:bg-orange-500/[0.02]\"],\n [\"default\", \"group-hover/tint:bg-slate-500/[0.015]\"],\n [\"cyan\", \"group-hover/tint:bg-cyan-500/[0.02]\"],\n]);\n\nconst bodyPaddingClass = \"p-5\";\n\n// ─── Discriminated props ──────────────────────────────────────────────────\n// - If title is given, icon is required.\n// - The layout is derived automatically:\n// title + subtitle → \"header\" (full header block with subtitle)\n// title only → \"compact\" (slim bar with border-b)\n// no title → \"bodyOnly\" (just the body)\n\ntype DesignCardBaseProps = {\n glassmorphic?: boolean,\n gradient?: DesignCardGradient,\n contentClassName?: string,\n} & Omit<React.ComponentProps<typeof Card>, \"title\">;\n\ntype WithTitleProps = {\n title: React.ReactNode,\n subtitle?: React.ReactNode,\n icon: React.ElementType,\n actions?: React.ReactNode,\n};\n\ntype WithoutTitleProps = {\n title?: never,\n subtitle?: never,\n icon?: never,\n actions?: never,\n};\n\nexport type DesignCardProps = DesignCardBaseProps & (WithTitleProps | WithoutTitleProps);\n\n/**\n * General-purpose card for grouping related content: section headers,\n * description blocks, chart-less panels, etc. If the content is a\n * big-number metric, use `DesignMetricCard` instead. If it contains a\n * chart, wrap it in `DesignChartCard`.\n *\n * Two shapes, picked automatically by the props you pass:\n *\n * ```tsx\n * // With a header (title requires icon):\n * <DesignCard title=\"Recent activity\" icon={ActivityIcon}>\n * ...body...\n * </DesignCard>\n *\n * // Body-only (no header):\n * <DesignCard>\n * <h2 className=\"text-2xl font-semibold\">Dashboard</h2>\n * <p className=\"text-muted-foreground\">Overview of your user base</p>\n * </DesignCard>\n * ```\n *\n * Rules:\n * - DO NOT add padding classes (`p-6`, `p-5`, etc.) to `className` — the\n * component already has built-in padding and extra padding will look wrong.\n * - If you set `title`, you MUST also set `icon`. The TS types enforce this,\n * but writing `title` without `icon` will fail.\n * - Body-only cards (no `title`) automatically go transparent in dark mode.\n */\nexport function DesignCard({\n title,\n subtitle,\n icon: Icon,\n actions,\n glassmorphic: glassmorphicProp,\n gradient = \"default\",\n children,\n className,\n contentClassName,\n ...props\n}: DesignCardProps) {\n const glassmorphic = glassmorphicProp ?? true;\n const hoverTintClass = hoverTintClasses.get(gradient) ?? \"group-hover:bg-slate-500/[0.02]\";\n const hasContent = React.Children.count(children) > 0;\n\n // Derive layout from which props were provided\n const variant = title != null\n ? (subtitle != null ? \"header\" : \"compact\")\n : \"bodyOnly\";\n\n return (\n <DesignCardNestingContext.Provider value={true}>\n <Card\n className={cn(\n \"group relative rounded-2xl overflow-hidden\",\n glassmorphic && [\n \"bg-white/90 dark:bg-background/60 dark:backdrop-blur-xl border-0 transition-all duration-150 hover:transition-none\",\n \"ring-1 ring-black/[0.06] hover:ring-black/[0.1] dark:ring-white/[0.06] dark:hover:ring-white/[0.1]\",\n \"shadow-none\",\n ],\n glassmorphic && variant === \"bodyOnly\" && \"dark:bg-transparent dark:ring-0 dark:shadow-none\",\n className\n )}\n {...props}\n >\n {glassmorphic && (\n <>\n <div className={cn(\n \"absolute inset-0 bg-gradient-to-br from-foreground/[0.04] dark:from-foreground/[0.02] to-transparent pointer-events-none rounded-2xl\",\n variant === \"bodyOnly\" && \"dark:hidden\"\n )} />\n {variant !== \"bodyOnly\" && (\n <div\n className={cn(\n \"absolute inset-0 transition-colors duration-150 group-hover:transition-none pointer-events-none rounded-2xl\",\n hoverTintClass\n )}\n />\n )}\n </>\n )}\n <div className=\"relative\">\n {variant === \"header\" && (\n <div className={bodyPaddingClass}>\n <div className=\"flex items-start justify-between gap-4\">\n <div className=\"flex-1 min-w-0\">\n <div className=\"flex items-center gap-2\">\n {Icon && (\n <div className=\"p-1.5 rounded-lg bg-foreground/[0.06] dark:bg-foreground/[0.04]\">\n <Icon className=\"h-3.5 w-3.5 text-foreground/70 dark:text-muted-foreground\" />\n </div>\n )}\n <span className=\"text-xs font-semibold text-foreground uppercase tracking-wider\">\n {title}\n </span>\n </div>\n {subtitle && (\n <p className=\"text-sm text-muted-foreground mt-1\">\n {subtitle}\n </p>\n )}\n </div>\n {actions && (\n <div className=\"flex-shrink-0\">\n {actions}\n </div>\n )}\n </div>\n </div>\n )}\n {variant === \"compact\" && (\n <div className=\"p-5 flex items-center justify-between gap-4 border-b border-black/[0.12] dark:border-white/[0.06]\">\n <div className=\"flex items-center gap-2 min-w-0\">\n {Icon && (\n <div className=\"p-1.5 rounded-lg bg-foreground/[0.04]\">\n <Icon className=\"h-3.5 w-3.5 text-muted-foreground\" />\n </div>\n )}\n <span className=\"text-xs font-semibold text-foreground uppercase tracking-wider\">\n {title}\n </span>\n </div>\n {actions && (\n <div className=\"flex-shrink-0\">\n {actions}\n </div>\n )}\n </div>\n )}\n {hasContent && (\n <div\n className={cn(\n variant === \"header\" ? \"border-t border-black/[0.12] dark:border-white/[0.06]\" : \"\",\n variant === \"compact\" ? \"px-5 py-4\" : \"\",\n variant === \"bodyOnly\" || variant === \"header\" ? bodyPaddingClass : \"\",\n contentClassName\n )}\n >\n {children}\n </div>\n )}\n </div>\n </Card>\n </DesignCardNestingContext.Provider>\n );\n}\n\nexport type DesignCardTintProps = {\n gradient: DesignCardGradient,\n} & React.ComponentProps<\"div\">\n\nexport function DesignCardTint({\n gradient,\n className,\n children,\n ...props\n}: DesignCardTintProps) {\n const tintClass = demoTintClasses.get(gradient) ?? \"group-hover/tint:bg-slate-500/[0.015]\";\n\n return (\n <div\n className={cn(\n \"group/tint relative rounded-2xl bg-white/90 dark:bg-background/60 dark:backdrop-blur-xl transition-all duration-150 hover:transition-none\",\n \"ring-1 ring-black/[0.06] hover:ring-black/[0.1] dark:ring-white/[0.06] dark:hover:ring-white/[0.1]\",\n \"shadow-none overflow-hidden\",\n className\n )}\n {...props}\n >\n <div className=\"absolute inset-0 bg-gradient-to-br from-foreground/[0.04] dark:from-foreground/[0.02] to-transparent pointer-events-none rounded-2xl\" />\n <div\n className={cn(\n \"absolute inset-0 transition-colors duration-150 group-hover/tint:transition-none pointer-events-none rounded-2xl\",\n tintClass\n )}\n />\n <div className=\"relative\">\n {children}\n </div>\n </div>\n );\n}\n","\"use client\";\n\nimport { cn } from \"@stackframe/stack-ui\";\n\nexport type DesignBadgeColor = \"blue\" | \"cyan\" | \"purple\" | \"green\" | \"orange\" | \"red\";\nexport type DesignBadgeSize = \"sm\" | \"md\";\n\nconst badgeStyles = new Map<DesignBadgeColor, string>([\n [\"blue\", \"text-blue-700 dark:text-blue-400 bg-blue-500/20 dark:bg-blue-500/10 ring-1 ring-blue-500/30 dark:ring-blue-500/20\"],\n [\"cyan\", \"text-cyan-700 dark:text-cyan-400 bg-cyan-500/20 dark:bg-cyan-500/10 ring-1 ring-cyan-500/30 dark:ring-cyan-500/20\"],\n [\"purple\", \"text-purple-700 dark:text-purple-400 bg-purple-500/20 dark:bg-purple-500/10 ring-1 ring-purple-500/30 dark:ring-purple-500/20\"],\n [\"green\", \"text-emerald-700 dark:text-emerald-400 bg-emerald-500/20 dark:bg-emerald-500/10 ring-1 ring-emerald-500/30 dark:ring-emerald-500/20\"],\n [\"orange\", \"text-amber-700 dark:text-amber-300 bg-amber-500/20 dark:bg-amber-500/10 ring-1 ring-amber-500/30 dark:ring-amber-500/20\"],\n [\"red\", \"text-red-700 dark:text-red-400 bg-red-500/20 dark:bg-red-500/10 ring-1 ring-red-500/30 dark:ring-red-500/20\"],\n]);\n\nfunction getMapValueOrThrow<TKey, TValue>(map: Map<TKey, TValue>, key: TKey, mapName: string) {\n const value = map.get(key);\n if (!value) {\n throw new Error(`Missing ${mapName} entry for key \"${String(key)}\"`);\n }\n return value;\n}\n\n/** At least one of showLabel or showIcon must be true. */\nexport type DesignBadgeContentMode = \"both\" | \"text\" | \"icon\";\n\nexport type DesignBadgeProps = {\n label: string,\n color: DesignBadgeColor,\n icon?: React.ElementType,\n size?: DesignBadgeSize,\n /** What to display: \"both\" (default), \"text\" (label only), or \"icon\" (icon only; requires icon prop). */\n contentMode?: DesignBadgeContentMode,\n};\n\nfunction getShowLabelShowIcon(\n contentMode: DesignBadgeContentMode,\n hasIcon: boolean,\n): { showLabel: boolean, showIcon: boolean } {\n switch (contentMode) {\n case \"both\": {\n return { showLabel: true, showIcon: hasIcon };\n }\n case \"text\": {\n return { showLabel: true, showIcon: false };\n }\n case \"icon\": {\n if (!hasIcon) {\n throw new Error(\"DesignBadge contentMode 'icon' requires the icon prop to be provided.\");\n }\n return { showLabel: false, showIcon: true };\n }\n default: {\n const _exhaustive: never = contentMode;\n throw new Error(`Unknown contentMode: ${String(_exhaustive)}`);\n }\n }\n}\n\n/**\n * Small pill used for status tags, roles, categories, and other short\n * labels. Not a variant-based component — pick a semantic `color` and\n * optionally pass an `icon` (as a component type, not a rendered node).\n *\n * ```tsx\n * <DesignBadge label=\"Verified\" color=\"green\" icon={CheckIcon} />\n * <DesignBadge label=\"Beta\" color=\"purple\" />\n * <DesignBadge label=\"Error\" color=\"red\" size=\"sm\" />\n * ```\n *\n * Notes:\n * - Props are `label` + `color`, NOT `variant` + children.\n * - `color` is one of: `\"blue\" | \"cyan\" | \"purple\" | \"green\" | \"orange\" | \"red\"`.\n * - `icon` is optional but, if set via `contentMode: \"icon\"`, is required.\n */\nexport function DesignBadge({\n label,\n color,\n icon,\n size = \"md\",\n contentMode = \"both\",\n}: DesignBadgeProps) {\n const Icon = icon;\n const { showLabel, showIcon } = getShowLabelShowIcon(contentMode, !!Icon);\n if (!showLabel && !showIcon) {\n throw new Error(\"DesignBadge must show at least label or icon.\");\n }\n const sizeClasses = size === \"sm\"\n ? \"px-2 py-0.5 text-[10px]\"\n : \"px-2.5 py-1 text-[11px]\";\n const colorClasses = getMapValueOrThrow(badgeStyles, color, \"badgeStyles\");\n\n return (\n <div\n className={cn(\n \"inline-flex items-center gap-1.5 rounded-full font-medium\",\n colorClasses,\n sizeClasses\n )}\n title={!showLabel ? label : undefined}\n aria-label={label}\n >\n {showIcon && Icon && <Icon className=\"h-3 w-3\" />}\n {showLabel ? label : null}\n </div>\n );\n}\n","import { intervalSchema } from \"../schema-fields\";\nimport { StackAssertionError } from \"./errors\";\nimport { remainder } from \"./math\";\n\nexport function isWeekend(date: Date): boolean {\n return date.getDay() === 0 || date.getDay() === 6;\n}\n\nimport.meta.vitest?.test(\"isWeekend\", ({ expect }) => {\n // Sunday (day 0)\n expect(isWeekend(new Date(2023, 0, 1))).toBe(true);\n // Saturday (day 6)\n expect(isWeekend(new Date(2023, 0, 7))).toBe(true);\n // Monday (day 1)\n expect(isWeekend(new Date(2023, 0, 2))).toBe(false);\n // Friday (day 5)\n expect(isWeekend(new Date(2023, 0, 6))).toBe(false);\n});\n\nconst agoUnits = [\n [60, 'second'],\n [60, 'minute'],\n [24, 'hour'],\n [7, 'day'],\n [5, 'week'],\n] as const;\n\nexport function fromNow(date: Date): string {\n return fromNowDetailed(date).result;\n}\n\nimport.meta.vitest?.test(\"fromNow\", ({ expect }) => {\n // Set a fixed date for testing\n const fixedDate = new Date(\"2023-01-15T12:00:00.000Z\");\n\n // Use Vitest's fake timers\n import.meta.vitest?.vi.useFakeTimers();\n import.meta.vitest?.vi.setSystemTime(fixedDate);\n\n // Test past times\n expect(fromNow(new Date(\"2023-01-15T11:59:50.000Z\"))).toBe(\"just now\");\n expect(fromNow(new Date(\"2023-01-15T11:59:00.000Z\"))).toBe(\"1 minute ago\");\n expect(fromNow(new Date(\"2023-01-15T11:00:00.000Z\"))).toBe(\"1 hour ago\");\n expect(fromNow(new Date(\"2023-01-14T12:00:00.000Z\"))).toBe(\"1 day ago\");\n expect(fromNow(new Date(\"2023-01-08T12:00:00.000Z\"))).toBe(\"1 week ago\");\n\n // Test future times\n expect(fromNow(new Date(\"2023-01-15T12:00:10.000Z\"))).toBe(\"just now\");\n expect(fromNow(new Date(\"2023-01-15T12:01:00.000Z\"))).toBe(\"in 1 minute\");\n expect(fromNow(new Date(\"2023-01-15T13:00:00.000Z\"))).toBe(\"in 1 hour\");\n expect(fromNow(new Date(\"2023-01-16T12:00:00.000Z\"))).toBe(\"in 1 day\");\n expect(fromNow(new Date(\"2023-01-22T12:00:00.000Z\"))).toBe(\"in 1 week\");\n\n // Test very old dates (should use date format)\n expect(fromNow(new Date(\"2022-01-15T12:00:00.000Z\"))).toMatch(/Jan 15, 2022/);\n\n // Restore real timers\n import.meta.vitest?.vi.useRealTimers();\n});\n\nexport function fromNowDetailed(date: Date): {\n result: string,\n /**\n * May be Infinity if the result will never change.\n */\n secondsUntilChange: number,\n} {\n if (!(date instanceof Date)) {\n throw new Error(`fromNow only accepts Date objects (received: ${date})`);\n }\n\n const now = new Date();\n const elapsed = now.getTime() - date.getTime();\n\n let remainingInUnit = Math.abs(elapsed) / 1000;\n if (remainingInUnit < 15) {\n return {\n result: 'just now',\n secondsUntilChange: 15 - remainingInUnit,\n };\n }\n let unitInSeconds = 1;\n for (const [nextUnitSize, unitName] of agoUnits) {\n const rounded = Math.round(remainingInUnit);\n if (rounded < nextUnitSize) {\n if (elapsed < 0) {\n return {\n result: `in ${rounded} ${unitName}${rounded === 1 ? '' : 's'}`,\n secondsUntilChange: remainder((remainingInUnit - rounded + 0.5) * unitInSeconds, unitInSeconds),\n };\n } else {\n return {\n result: `${rounded} ${unitName}${rounded === 1 ? '' : 's'} ago`,\n secondsUntilChange: remainder((rounded - remainingInUnit - 0.5) * unitInSeconds, unitInSeconds),\n };\n }\n }\n unitInSeconds *= nextUnitSize;\n remainingInUnit /= nextUnitSize;\n }\n\n return {\n result: date.toLocaleDateString('en-US', { year: 'numeric', month: 'short', day: 'numeric' }),\n secondsUntilChange: Infinity,\n };\n}\n\n/**\n * Returns a string representation of the given date in the format expected by the `datetime-local` input type.\n */\nexport function getInputDatetimeLocalString(date: Date): string {\n date = new Date(date);\n date.setMinutes(date.getMinutes() - date.getTimezoneOffset());\n return date.toISOString().slice(0, 19);\n}\n\nimport.meta.vitest?.test(\"getInputDatetimeLocalString\", ({ expect }) => {\n // Use Vitest's fake timers to ensure consistent timezone behavior\n import.meta.vitest?.vi.useFakeTimers();\n\n // Test with a specific date\n const mockDate = new Date(\"2023-01-15T12:30:45.000Z\");\n const result = getInputDatetimeLocalString(mockDate);\n\n // The result should be in the format YYYY-MM-DDTHH:MM:SS\n expect(result).toMatch(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$/);\n\n // Test with different dates\n const dates = [\n new Date(\"2023-01-01T00:00:00.000Z\"),\n new Date(\"2023-06-15T23:59:59.000Z\"),\n new Date(\"2023-12-31T12:34:56.000Z\"),\n ];\n\n for (const date of dates) {\n const result = getInputDatetimeLocalString(date);\n expect(result).toMatch(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$/);\n }\n\n // Restore real timers\n import.meta.vitest?.vi.useRealTimers();\n});\n\n\nexport type Interval = [number, 'millisecond' | 'second' | 'minute' | 'hour' | 'day' | 'week' | 'month' | 'year'];\nexport type DayInterval = [number, 'day' | 'week' | 'month' | 'year'];\n\nfunction applyInterval(date: Date, times: number, interval: Interval): Date {\n if (!intervalSchema.isValidSync(interval)) {\n throw new StackAssertionError(`Invalid interval`, { interval });\n }\n const [amount, unit] = interval;\n switch (unit) {\n case 'millisecond': {\n date.setMilliseconds(date.getMilliseconds() + amount * times);\n break;\n }\n case 'second': {\n date.setSeconds(date.getSeconds() + amount * times);\n break;\n }\n case 'minute': {\n date.setMinutes(date.getMinutes() + amount * times);\n break;\n }\n case 'hour': {\n date.setHours(date.getHours() + amount * times);\n break;\n }\n case 'day': {\n date.setDate(date.getDate() + amount * times);\n break;\n }\n case 'week': {\n date.setDate(date.getDate() + amount * times * 7);\n break;\n }\n case 'month': {\n date.setMonth(date.getMonth() + amount * times);\n break;\n }\n case 'year': {\n date.setFullYear(date.getFullYear() + amount * times);\n break;\n }\n default: {\n throw new StackAssertionError(`Invalid interval despite schema validation`, { interval });\n }\n }\n return date;\n}\n\nexport function subtractInterval(date: Date, interval: Interval): Date {\n return applyInterval(date, -1, interval);\n}\n\nexport function addInterval(date: Date, interval: Interval): Date {\n return applyInterval(date, 1, interval);\n}\n\nexport const FAR_FUTURE_DATE = new Date(8640000000000000); // 13 Sep 275760 00:00:00 UTC\n\nfunction getMsPerDayIntervalUnit(unit: 'day' | 'week'): number {\n if (unit === 'day') {\n return 24 * 60 * 60 * 1000;\n }\n return 7 * 24 * 60 * 60 * 1000;\n}\n\n\nexport function getIntervalsElapsed(anchor: Date, to: Date, repeat: DayInterval): number {\n const [amount, unit] = repeat;\n if (to <= anchor) return 0;\n if (unit === 'day' || unit === 'week') {\n const msPerUnit = getMsPerDayIntervalUnit(unit);\n const diffMs = to.getTime() - anchor.getTime();\n return Math.floor(diffMs / (msPerUnit * amount));\n }\n if ([\"month\", \"year\"].includes(unit)) {\n let count = 0;\n let current = new Date(anchor);\n for (; ;) {\n const next = addInterval(new Date(current), [amount, unit]);\n if (next > to) break;\n current = next;\n count += 1;\n }\n return count;\n }\n return 0;\n}\n\nimport.meta.vitest?.test(\"getIntervalsElapsed\", ({ expect }) => {\n const anchor = new Date('2025-01-01T00:00:00.000Z');\n const to = new Date('2025-01-15T00:00:00.000Z');\n expect(getIntervalsElapsed(anchor, to, [1, 'week'])).toBe(2);\n expect(getIntervalsElapsed(anchor, to, [3, 'day'])).toBe(4);\n\n const mAnchor = new Date('2023-01-31T00:00:00.000Z');\n const mTo = new Date('2023-03-01T00:00:00.000Z');\n expect(getIntervalsElapsed(mAnchor, mTo, [1, 'month'])).toBe(0);\n\n const yAnchor = new Date('2020-01-01T00:00:00.000Z');\n const yTo = new Date('2022-06-01T00:00:00.000Z');\n expect(getIntervalsElapsed(yAnchor, yTo, [1, 'year'])).toBe(2);\n});\n","import * as e from \"react\";\nimport t from \"../lib/IconBase.es.js\";\nimport m from \"../defs/Gear.es.js\";\nconst o = e.forwardRef((r, a) => /* @__PURE__ */ e.createElement(t, { ref: a, ...r, weights: m }));\no.displayName = \"GearIcon\";\nconst n = o;\nexport {\n n as Gear,\n o as GearIcon\n};\n","import * as a from \"react\";\nconst l = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M128,76a52,52,0,1,0,52,52A52.06,52.06,0,0,0,128,76Zm0,80a28,28,0,1,1,28-28A28,28,0,0,1,128,156Zm92-27.21v-1.58l14-17.51a12,12,0,0,0,2.23-10.59A111.75,111.75,0,0,0,225,71.89,12,12,0,0,0,215.89,66L193.61,63.5l-1.11-1.11L190,40.1A12,12,0,0,0,184.11,31a111.67,111.67,0,0,0-27.23-11.27A12,12,0,0,0,146.3,22L128.79,36h-1.58L109.7,22a12,12,0,0,0-10.59-2.23A111.75,111.75,0,0,0,71.89,31.05,12,12,0,0,0,66,40.11L63.5,62.39,62.39,63.5,40.1,66A12,12,0,0,0,31,71.89,111.67,111.67,0,0,0,19.77,99.12,12,12,0,0,0,22,109.7l14,17.51v1.58L22,146.3a12,12,0,0,0-2.23,10.59,111.75,111.75,0,0,0,11.29,27.22A12,12,0,0,0,40.11,190l22.28,2.48,1.11,1.11L66,215.9A12,12,0,0,0,71.89,225a111.67,111.67,0,0,0,27.23,11.27A12,12,0,0,0,109.7,234l17.51-14h1.58l17.51,14a12,12,0,0,0,10.59,2.23A111.75,111.75,0,0,0,184.11,225a12,12,0,0,0,5.91-9.06l2.48-22.28,1.11-1.11L215.9,190a12,12,0,0,0,9.06-5.91,111.67,111.67,0,0,0,11.27-27.23A12,12,0,0,0,234,146.3Zm-24.12-4.89a70.1,70.1,0,0,1,0,8.2,12,12,0,0,0,2.61,8.22l12.84,16.05A86.47,86.47,0,0,1,207,166.86l-20.43,2.27a12,12,0,0,0-7.65,4,69,69,0,0,1-5.8,5.8,12,12,0,0,0-4,7.65L166.86,207a86.47,86.47,0,0,1-10.49,4.35l-16.05-12.85a12,12,0,0,0-7.5-2.62c-.24,0-.48,0-.72,0a70.1,70.1,0,0,1-8.2,0,12.06,12.06,0,0,0-8.22,2.6L99.63,211.33A86.47,86.47,0,0,1,89.14,207l-2.27-20.43a12,12,0,0,0-4-7.65,69,69,0,0,1-5.8-5.8,12,12,0,0,0-7.65-4L49,166.86a86.47,86.47,0,0,1-4.35-10.49l12.84-16.05a12,12,0,0,0,2.61-8.22,70.1,70.1,0,0,1,0-8.2,12,12,0,0,0-2.61-8.22L44.67,99.63A86.47,86.47,0,0,1,49,89.14l20.43-2.27a12,12,0,0,0,7.65-4,69,69,0,0,1,5.8-5.8,12,12,0,0,0,4-7.65L89.14,49a86.47,86.47,0,0,1,10.49-4.35l16.05,12.85a12.06,12.06,0,0,0,8.22,2.6,70.1,70.1,0,0,1,8.2,0,12,12,0,0,0,8.22-2.6l16.05-12.85A86.47,86.47,0,0,1,166.86,49l2.27,20.43a12,12,0,0,0,4,7.65,69,69,0,0,1,5.8,5.8,12,12,0,0,0,7.65,4L207,89.14a86.47,86.47,0,0,1,4.35,10.49l-12.84,16.05A12,12,0,0,0,195.88,123.9Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\n \"path\",\n {\n d: \"M207.86,123.18l16.78-21a99.14,99.14,0,0,0-10.07-24.29l-26.7-3a81,81,0,0,0-6.81-6.81l-3-26.71a99.43,99.43,0,0,0-24.3-10l-21,16.77a81.59,81.59,0,0,0-9.64,0l-21-16.78A99.14,99.14,0,0,0,77.91,41.43l-3,26.7a81,81,0,0,0-6.81,6.81l-26.71,3a99.43,99.43,0,0,0-10,24.3l16.77,21a81.59,81.59,0,0,0,0,9.64l-16.78,21a99.14,99.14,0,0,0,10.07,24.29l26.7,3a81,81,0,0,0,6.81,6.81l3,26.71a99.43,99.43,0,0,0,24.3,10l21-16.77a81.59,81.59,0,0,0,9.64,0l21,16.78a99.14,99.14,0,0,0,24.29-10.07l3-26.7a81,81,0,0,0,6.81-6.81l26.71-3a99.43,99.43,0,0,0,10-24.3l-16.77-21A81.59,81.59,0,0,0,207.86,123.18ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ a.createElement(\"path\", { d: \"M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8.06,8.06,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8.06,8.06,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M216,130.16q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M128,82a46,46,0,1,0,46,46A46.06,46.06,0,0,0,128,82Zm0,80a34,34,0,1,1,34-34A34,34,0,0,1,128,162ZM214,130.84c.06-1.89.06-3.79,0-5.68L229.33,106a6,6,0,0,0,1.11-5.29A105.34,105.34,0,0,0,219.76,74.9a6,6,0,0,0-4.53-3l-24.45-2.71q-1.93-2.07-4-4l-2.72-24.46a6,6,0,0,0-3-4.53,105.65,105.65,0,0,0-25.77-10.66A6,6,0,0,0,150,26.68l-19.2,15.37c-1.89-.06-3.79-.06-5.68,0L106,26.67a6,6,0,0,0-5.29-1.11A105.34,105.34,0,0,0,74.9,36.24a6,6,0,0,0-3,4.53L69.23,65.22q-2.07,1.94-4,4L40.76,72a6,6,0,0,0-4.53,3,105.65,105.65,0,0,0-10.66,25.77A6,6,0,0,0,26.68,106l15.37,19.2c-.06,1.89-.06,3.79,0,5.68L26.67,150.05a6,6,0,0,0-1.11,5.29A105.34,105.34,0,0,0,36.24,181.1a6,6,0,0,0,4.53,3l24.45,2.71q1.94,2.07,4,4L72,215.24a6,6,0,0,0,3,4.53,105.65,105.65,0,0,0,25.77,10.66,6,6,0,0,0,5.29-1.11L125.16,214c1.89.06,3.79.06,5.68,0l19.21,15.38a6,6,0,0,0,3.75,1.31,6.2,6.2,0,0,0,1.54-.2,105.34,105.34,0,0,0,25.76-10.68,6,6,0,0,0,3-4.53l2.71-24.45q2.07-1.93,4-4l24.46-2.72a6,6,0,0,0,4.53-3,105.49,105.49,0,0,0,10.66-25.77,6,6,0,0,0-1.11-5.29Zm-3.1,41.63-23.64,2.63a6,6,0,0,0-3.82,2,75.14,75.14,0,0,1-6.31,6.31,6,6,0,0,0-2,3.82l-2.63,23.63A94.28,94.28,0,0,1,155.14,218l-18.57-14.86a6,6,0,0,0-3.75-1.31h-.36a78.07,78.07,0,0,1-8.92,0,6,6,0,0,0-4.11,1.3L100.87,218a94.13,94.13,0,0,1-17.34-7.17L80.9,187.21a6,6,0,0,0-2-3.82,75.14,75.14,0,0,1-6.31-6.31,6,6,0,0,0-3.82-2l-23.63-2.63A94.28,94.28,0,0,1,38,155.14l14.86-18.57a6,6,0,0,0,1.3-4.11,78.07,78.07,0,0,1,0-8.92,6,6,0,0,0-1.3-4.11L38,100.87a94.13,94.13,0,0,1,7.17-17.34L68.79,80.9a6,6,0,0,0,3.82-2,75.14,75.14,0,0,1,6.31-6.31,6,6,0,0,0,2-3.82l2.63-23.63A94.28,94.28,0,0,1,100.86,38l18.57,14.86a6,6,0,0,0,4.11,1.3,78.07,78.07,0,0,1,8.92,0,6,6,0,0,0,4.11-1.3L155.13,38a94.13,94.13,0,0,1,17.34,7.17l2.63,23.64a6,6,0,0,0,2,3.82,75.14,75.14,0,0,1,6.31,6.31,6,6,0,0,0,3.82,2l23.63,2.63A94.28,94.28,0,0,1,218,100.86l-14.86,18.57a6,6,0,0,0-1.3,4.11,78.07,78.07,0,0,1,0,8.92,6,6,0,0,0,1.3,4.11L218,155.13A94.13,94.13,0,0,1,210.85,172.47Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.21,107.21,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.71,107.71,0,0,0-26.25-10.87,8,8,0,0,0-7.06,1.49L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.21,107.21,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8,8,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8,8,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M128,84a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,84Zm0,80a36,36,0,1,1,36-36A36,36,0,0,1,128,164Zm83.93-32.49q.13-3.51,0-7l15.83-19.79a4,4,0,0,0,.75-3.53A103.64,103.64,0,0,0,218,75.9a4,4,0,0,0-3-2l-25.19-2.8c-1.58-1.71-3.24-3.37-4.95-4.95L182.07,41a4,4,0,0,0-2-3A104,104,0,0,0,154.82,27.5a4,4,0,0,0-3.53.74L131.51,44.07q-3.51-.14-7,0L104.7,28.24a4,4,0,0,0-3.53-.75A103.64,103.64,0,0,0,75.9,38a4,4,0,0,0-2,3l-2.8,25.19c-1.71,1.58-3.37,3.24-4.95,4.95L41,73.93a4,4,0,0,0-3,2A104,104,0,0,0,27.5,101.18a4,4,0,0,0,.74,3.53l15.83,19.78q-.14,3.51,0,7L28.24,151.3a4,4,0,0,0-.75,3.53A103.64,103.64,0,0,0,38,180.1a4,4,0,0,0,3,2l25.19,2.8c1.58,1.71,3.24,3.37,4.95,4.95l2.8,25.2a4,4,0,0,0,2,3,104,104,0,0,0,25.28,10.46,4,4,0,0,0,3.53-.74l19.78-15.83q3.51.13,7,0l19.79,15.83a4,4,0,0,0,2.5.88,4,4,0,0,0,1-.13A103.64,103.64,0,0,0,180.1,218a4,4,0,0,0,2-3l2.8-25.19c1.71-1.58,3.37-3.24,4.95-4.95l25.2-2.8a4,4,0,0,0,3-2,104,104,0,0,0,10.46-25.28,4,4,0,0,0-.74-3.53Zm.17,42.83-24.67,2.74a4,4,0,0,0-2.55,1.32,76.2,76.2,0,0,1-6.48,6.48,4,4,0,0,0-1.32,2.55l-2.74,24.66a95.45,95.45,0,0,1-19.64,8.15l-19.38-15.51a4,4,0,0,0-2.5-.87h-.24a73.67,73.67,0,0,1-9.16,0,4,4,0,0,0-2.74.87l-19.37,15.5a95.33,95.33,0,0,1-19.65-8.13l-2.74-24.67a4,4,0,0,0-1.32-2.55,76.2,76.2,0,0,1-6.48-6.48,4,4,0,0,0-2.55-1.32l-24.66-2.74a95.45,95.45,0,0,1-8.15-19.64l15.51-19.38a4,4,0,0,0,.87-2.74,77.76,77.76,0,0,1,0-9.16,4,4,0,0,0-.87-2.74l-15.5-19.37A95.33,95.33,0,0,1,43.9,81.66l24.67-2.74a4,4,0,0,0,2.55-1.32,76.2,76.2,0,0,1,6.48-6.48,4,4,0,0,0,1.32-2.55l2.74-24.66a95.45,95.45,0,0,1,19.64-8.15l19.38,15.51a4,4,0,0,0,2.74.87,73.67,73.67,0,0,1,9.16,0,4,4,0,0,0,2.74-.87l19.37-15.5a95.33,95.33,0,0,1,19.65,8.13l2.74,24.67a4,4,0,0,0,1.32,2.55,76.2,76.2,0,0,1,6.48,6.48,4,4,0,0,0,2.55,1.32l24.66,2.74a95.45,95.45,0,0,1,8.15,19.64l-15.51,19.38a4,4,0,0,0-.87,2.74,77.76,77.76,0,0,1,0,9.16,4,4,0,0,0,.87,2.74l15.5,19.37A95.33,95.33,0,0,1,212.1,174.34Z\" }))\n ]\n]);\nexport {\n l as default\n};\n","import * as o from \"react\";\nimport t from \"../lib/IconBase.es.js\";\nimport a from \"../defs/FolderOpen.es.js\";\nconst e = o.forwardRef((r, n) => /* @__PURE__ */ o.createElement(t, { ref: n, ...r, weights: a }));\ne.displayName = \"FolderOpenIcon\";\nconst m = e;\nexport {\n e as FolderNotchOpenIcon,\n m as FolderOpen,\n e as FolderOpenIcon\n};\n","import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M248.23,112.31A20,20,0,0,0,232,104H220V88a20,20,0,0,0-20-20H132L105.34,48a20.12,20.12,0,0,0-12-4H40A20,20,0,0,0,20,64V208a12,12,0,0,0,12,12H211.1a12,12,0,0,0,11.33-8l28.49-81.47.06-.17A20,20,0,0,0,248.23,112.31ZM92,68l28.8,21.6A12,12,0,0,0,128,92h68v12H69.77a20,20,0,0,0-18.94,13.58L44,137.15V68ZM202.59,196H48.89l23.72-68H226.37Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\n \"path\",\n {\n d: \"M208,88v24H69.77a8,8,0,0,0-7.59,5.47L32,208V64a8,8,0,0,1,8-8H93.33a8,8,0,0,1,4.8,1.6L128,80h72A8,8,0,0,1,208,88Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ a.createElement(\"path\", { d: \"M245,110.64A16,16,0,0,0,232,104H216V88a16,16,0,0,0-16-16H130.67L102.94,51.2a16.14,16.14,0,0,0-9.6-3.2H40A16,16,0,0,0,24,64V208a8,8,0,0,0,8,8H211.1a8,8,0,0,0,7.59-5.47l28.49-85.47A16.05,16.05,0,0,0,245,110.64ZM93.34,64,123.2,86.4A8,8,0,0,0,128,88h72v16H69.77a16,16,0,0,0-15.18,10.94L40,158.7V64Zm112,136H43.1l26.67-80H232Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M245,110.64A16,16,0,0,0,232,104H216V88a16,16,0,0,0-16-16H130.67L102.94,51.2a16.14,16.14,0,0,0-9.6-3.2H40A16,16,0,0,0,24,64V208h0a8,8,0,0,0,8,8H211.1a8,8,0,0,0,7.59-5.47l28.49-85.47A16.05,16.05,0,0,0,245,110.64ZM93.34,64,123.2,86.4A8,8,0,0,0,128,88h72v16H69.77a16,16,0,0,0-15.18,10.94L40,158.7V64Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M243.36,111.81A14,14,0,0,0,232,106H214V88a14,14,0,0,0-14-14H130L101.74,52.8a14.06,14.06,0,0,0-8.4-2.8H40A14,14,0,0,0,26,64V208a6,6,0,0,0,6,6H211.1a6,6,0,0,0,5.69-4.1l28.49-85.47A14,14,0,0,0,243.36,111.81ZM40,62H93.34a2,2,0,0,1,1.2.4L124.4,84.8A6,6,0,0,0,128,86h72a2,2,0,0,1,2,2v18H69.77a14,14,0,0,0-13.28,9.57L38,171V64A2,2,0,0,1,40,62Zm193.9,58.63L206.78,202H40.33l27.54-82.63a2,2,0,0,1,1.9-1.37H232a2,2,0,0,1,1.9,2.63Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M245,110.64A16,16,0,0,0,232,104H216V88a16,16,0,0,0-16-16H130.67L102.94,51.2a16.14,16.14,0,0,0-9.6-3.2H40A16,16,0,0,0,24,64V208h0a8,8,0,0,0,8,8H211.1a8,8,0,0,0,7.59-5.47l28.49-85.47A16.05,16.05,0,0,0,245,110.64ZM93.34,64,123.2,86.4A8,8,0,0,0,128,88h72v16H69.77a16,16,0,0,0-15.18,10.94L40,158.7V64Zm112,136H43.1l26.67-80H232Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M241.72,113a11.88,11.88,0,0,0-9.73-5H212V88a12,12,0,0,0-12-12H129.33l-28.8-21.6a12.05,12.05,0,0,0-7.2-2.4H40A12,12,0,0,0,28,64V208a4,4,0,0,0,4,4H211.09a4,4,0,0,0,3.79-2.74l28.49-85.47A11.86,11.86,0,0,0,241.72,113ZM40,60H93.33a4,4,0,0,1,2.4.8L125.6,83.2a4,4,0,0,0,2.4.8h72a4,4,0,0,1,4,4v20H69.76a12,12,0,0,0-11.38,8.21L36,183.35V64A4,4,0,0,1,40,60Zm195.78,61.26L208.2,204H37.55L66,118.74A4,4,0,0,1,69.76,116H232a4,4,0,0,1,3.79,5.26Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","/**\n * Plan configuration for Stack Auth pricing tiers.\n *\n * This file defines the limits for each plan and the item IDs used to track them.\n * Import these constants in seed.ts and backend code for limit enforcement.\n */\n\nexport const UNLIMITED = 1_000_000_000;\n\n/**\n * Item IDs used across the codebase for tracking plan limits.\n */\nexport const ITEM_IDS = {\n seats: \"dashboard_admins\",\n authUsers: \"auth_users\",\n emailsPerMonth: \"emails_per_month\",\n analyticsTimeoutSeconds: \"analytics_timeout_seconds\",\n analyticsEvents: \"analytics_events\",\n sessionReplays: \"session_replays\",\n onboardingCall: \"onboarding_call\",\n} as const;\n\nexport type ItemId = typeof ITEM_IDS[keyof typeof ITEM_IDS];\n\n/**\n * The offerings/limits included in a plan.\n */\nexport type PlanProductOfferings = {\n seats: number,\n authUsers: number,\n emailsPerMonth: number,\n analyticsTimeoutSeconds: number,\n analyticsEvents: number,\n sessionReplays: number,\n};\n\n/**\n * Plan limits by plan ID.\n */\nexport const PLAN_LIMITS: {\n free: PlanProductOfferings,\n team: PlanProductOfferings,\n growth: PlanProductOfferings,\n} = {\n free: {\n seats: 1,\n authUsers: 10_000,\n emailsPerMonth: 1_000,\n analyticsTimeoutSeconds: 10,\n analyticsEvents: 100_000,\n sessionReplays: 2_500,\n },\n team: {\n seats: 4,\n authUsers: 50_000,\n emailsPerMonth: 25_000,\n analyticsTimeoutSeconds: 60,\n analyticsEvents: 500_000,\n sessionReplays: 2_500,\n },\n growth: {\n seats: 4,\n authUsers: UNLIMITED,\n emailsPerMonth: 25_000,\n analyticsTimeoutSeconds: 300,\n analyticsEvents: 1_000_000,\n sessionReplays: 2_500,\n },\n};\n\nexport type PlanId = keyof typeof PLAN_LIMITS;\n\n/**\n * Base plan IDs ordered from highest to lowest tier. Use this (instead of\n * string literals) whenever code needs to pick a customer's \"current\" plan\n * from their product list, so the choice stays in sync with `PLAN_LIMITS`.\n */\nexport const BASE_PLAN_IDS_BY_TIER = [\"growth\", \"team\", \"free\"] as const satisfies readonly PlanId[];\n\n/**\n * Minimal shape of a product entry as it comes out of `team.useProducts()` /\n * `customer.useProducts()` on both the SDK and dashboard sides. Structural so\n * we don't pull SDK types into `stack-shared`.\n */\ntype PlanResolutionProduct = { id: string | null, type?: string };\n\n/**\n * Picks the customer's highest-tier active base plan (growth → team → free),\n * falling back to `\"free\"` if none of the known plans appear as a\n * subscription. Single source of truth for plan gating in the dashboard —\n * do not reintroduce ad-hoc `p.id === \"team\" || p.id === \"growth\"` checks.\n */\nexport function resolvePlanId(products: ReadonlyArray<PlanResolutionProduct>): PlanId {\n const activeSubscriptionPlanIds = new Set(\n products.filter(p => p.type === \"subscription\" && p.id != null).map(p => p.id),\n );\n return BASE_PLAN_IDS_BY_TIER.find(id => activeSubscriptionPlanIds.has(id)) ?? \"free\";\n}\n\n/**\n * Convenience predicate for \"is this customer on a paid plan?\". Anything\n * above free counts, so new paid tiers added to `PLAN_LIMITS` are picked up\n * automatically.\n */\nexport function isPaidPlan(products: ReadonlyArray<PlanResolutionProduct>): boolean {\n return resolvePlanId(products) !== \"free\";\n}\n","import { useEffect, useState } from \"react\";\nimport { fromNowDetailed } from \"@stackframe/stack-shared/dist/utils/dates\";\n\nexport function useFromNow(date: Date): string {\n const [invalidationCounter, setInvalidationCounter] = useState(0);\n\n const detailed = fromNowDetailed(date);\n\n useEffect(() => {\n // setTimeout breaks at ~25 days due to an integer overflow, also it breaks if the number is Infinity\n // so, only update the date if it's within the next 20 days\n // https://stackoverflow.com/questions/3468607/why-does-settimeout-break-for-large-millisecond-delay-values\n if (detailed.secondsUntilChange < 20 * 24 * 60 * 60) {\n const timeout = setTimeout(() => {\n setInvalidationCounter(invalidationCounter + 1);\n }, Math.round(detailed.secondsUntilChange * 1000));\n return () => clearTimeout(timeout);\n }\n }, [invalidationCounter, detailed.secondsUntilChange]);\n\n return detailed.result;\n}\n","function _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\nexport { _extends as default };","function _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (-1 !== e.indexOf(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nexport { _objectWithoutPropertiesLoose as default };","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","function _assertThisInitialized(e) {\n if (void 0 === e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n return e;\n}\nexport { _assertThisInitialized as default };","function _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nexport { _setPrototypeOf as default };","import setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _inheritsLoose(t, o) {\n t.prototype = Object.create(o.prototype), t.prototype.constructor = t, setPrototypeOf(t, o);\n}\nexport { _inheritsLoose as default };","export default function range(start, stop, step) {\n start = +start, stop = +stop, step = (n = arguments.length) < 2 ? (stop = start, start = 0, 1) : n < 3 ? 1 : +step;\n\n var i = -1,\n n = Math.max(0, Math.ceil((stop - start) / step)) | 0,\n range = new Array(n);\n\n while (++i < n) {\n range[i] = start + i * step;\n }\n\n return range;\n}\n","export function initRange(domain, range) {\n switch (arguments.length) {\n case 0: break;\n case 1: this.range(domain); break;\n default: this.range(range).domain(domain); break;\n }\n return this;\n}\n\nexport function initInterpolator(domain, interpolator) {\n switch (arguments.length) {\n case 0: break;\n case 1: {\n if (typeof domain === \"function\") this.interpolator(domain);\n else this.range(domain);\n break;\n }\n default: {\n this.domain(domain);\n if (typeof interpolator === \"function\") this.interpolator(interpolator);\n else this.range(interpolator);\n break;\n }\n }\n return this;\n}\n","const e10 = Math.sqrt(50),\n e5 = Math.sqrt(10),\n e2 = Math.sqrt(2);\n\nfunction tickSpec(start, stop, count) {\n const step = (stop - start) / Math.max(0, count),\n power = Math.floor(Math.log10(step)),\n error = step / Math.pow(10, power),\n factor = error >= e10 ? 10 : error >= e5 ? 5 : error >= e2 ? 2 : 1;\n let i1, i2, inc;\n if (power < 0) {\n inc = Math.pow(10, -power) / factor;\n i1 = Math.round(start * inc);\n i2 = Math.round(stop * inc);\n if (i1 / inc < start) ++i1;\n if (i2 / inc > stop) --i2;\n inc = -inc;\n } else {\n inc = Math.pow(10, power) * factor;\n i1 = Math.round(start / inc);\n i2 = Math.round(stop / inc);\n if (i1 * inc < start) ++i1;\n if (i2 * inc > stop) --i2;\n }\n if (i2 < i1 && 0.5 <= count && count < 2) return tickSpec(start, stop, count * 2);\n return [i1, i2, inc];\n}\n\nexport default function ticks(start, stop, count) {\n stop = +stop, start = +start, count = +count;\n if (!(count > 0)) return [];\n if (start === stop) return [start];\n const reverse = stop < start, [i1, i2, inc] = reverse ? tickSpec(stop, start, count) : tickSpec(start, stop, count);\n if (!(i2 >= i1)) return [];\n const n = i2 - i1 + 1, ticks = new Array(n);\n if (reverse) {\n if (inc < 0) for (let i = 0; i < n; ++i) ticks[i] = (i2 - i) / -inc;\n else for (let i = 0; i < n; ++i) ticks[i] = (i2 - i) * inc;\n } else {\n if (inc < 0) for (let i = 0; i < n; ++i) ticks[i] = (i1 + i) / -inc;\n else for (let i = 0; i < n; ++i) ticks[i] = (i1 + i) * inc;\n }\n return ticks;\n}\n\nexport function tickIncrement(start, stop, count) {\n stop = +stop, start = +start, count = +count;\n return tickSpec(start, stop, count)[2];\n}\n\nexport function tickStep(start, stop, count) {\n stop = +stop, start = +start, count = +count;\n const reverse = stop < start, inc = reverse ? tickIncrement(stop, start, count) : tickIncrement(start, stop, count);\n return (reverse ? -1 : 1) * (inc < 0 ? 1 / -inc : inc);\n}\n","export default function ascending(a, b) {\n return a == null || b == null ? NaN : a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n","export default function descending(a, b) {\n return a == null || b == null ? NaN\n : b < a ? -1\n : b > a ? 1\n : b >= a ? 0\n : NaN;\n}\n","import ascending from \"./ascending.js\";\nimport descending from \"./descending.js\";\n\nexport default function bisector(f) {\n let compare1, compare2, delta;\n\n // If an accessor is specified, promote it to a comparator. In this case we\n // can test whether the search value is (self-) comparable. We can’t do this\n // for a comparator (except for specific, known comparators) because we can’t\n // tell if the comparator is symmetric, and an asymmetric comparator can’t be\n // used to test whether a single value is comparable.\n if (f.length !== 2) {\n compare1 = ascending;\n compare2 = (d, x) => ascending(f(d), x);\n delta = (d, x) => f(d) - x;\n } else {\n compare1 = f === ascending || f === descending ? f : zero;\n compare2 = f;\n delta = f;\n }\n\n function left(a, x, lo = 0, hi = a.length) {\n if (lo < hi) {\n if (compare1(x, x) !== 0) return hi;\n do {\n const mid = (lo + hi) >>> 1;\n if (compare2(a[mid], x) < 0) lo = mid + 1;\n else hi = mid;\n } while (lo < hi);\n }\n return lo;\n }\n\n function right(a, x, lo = 0, hi = a.length) {\n if (lo < hi) {\n if (compare1(x, x) !== 0) return hi;\n do {\n const mid = (lo + hi) >>> 1;\n if (compare2(a[mid], x) <= 0) lo = mid + 1;\n else hi = mid;\n } while (lo < hi);\n }\n return lo;\n }\n\n function center(a, x, lo = 0, hi = a.length) {\n const i = left(a, x, lo, hi - 1);\n return i > lo && delta(a[i - 1], x) > -delta(a[i], x) ? i - 1 : i;\n }\n\n return {left, center, right};\n}\n\nfunction zero() {\n return 0;\n}\n","export default function number(x) {\n return x === null ? NaN : +x;\n}\n\nexport function* numbers(values, valueof) {\n if (valueof === undefined) {\n for (let value of values) {\n if (value != null && (value = +value) >= value) {\n yield value;\n }\n }\n } else {\n let index = -1;\n for (let value of values) {\n if ((value = valueof(value, ++index, values)) != null && (value = +value) >= value) {\n yield value;\n }\n }\n }\n}\n","import ascending from \"./ascending.js\";\nimport bisector from \"./bisector.js\";\nimport number from \"./number.js\";\n\nconst ascendingBisect = bisector(ascending);\nexport const bisectRight = ascendingBisect.right;\nexport const bisectLeft = ascendingBisect.left;\nexport const bisectCenter = bisector(number).center;\nexport default bisectRight;\n","export default function(constructor, factory, prototype) {\n constructor.prototype = factory.prototype = prototype;\n prototype.constructor = constructor;\n}\n\nexport function extend(parent, definition) {\n var prototype = Object.create(parent.prototype);\n for (var key in definition) prototype[key] = definition[key];\n return prototype;\n}\n","import define, {extend} from \"./define.js\";\n\nexport function Color() {}\n\nexport var darker = 0.7;\nexport var brighter = 1 / darker;\n\nvar reI = \"\\\\s*([+-]?\\\\d+)\\\\s*\",\n reN = \"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",\n reP = \"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",\n reHex = /^#([0-9a-f]{3,8})$/,\n reRgbInteger = new RegExp(`^rgb\\\\(${reI},${reI},${reI}\\\\)$`),\n reRgbPercent = new RegExp(`^rgb\\\\(${reP},${reP},${reP}\\\\)$`),\n reRgbaInteger = new RegExp(`^rgba\\\\(${reI},${reI},${reI},${reN}\\\\)$`),\n reRgbaPercent = new RegExp(`^rgba\\\\(${reP},${reP},${reP},${reN}\\\\)$`),\n reHslPercent = new RegExp(`^hsl\\\\(${reN},${reP},${reP}\\\\)$`),\n reHslaPercent = new RegExp(`^hsla\\\\(${reN},${reP},${reP},${reN}\\\\)$`);\n\nvar named = {\n aliceblue: 0xf0f8ff,\n antiquewhite: 0xfaebd7,\n aqua: 0x00ffff,\n aquamarine: 0x7fffd4,\n azure: 0xf0ffff,\n beige: 0xf5f5dc,\n bisque: 0xffe4c4,\n black: 0x000000,\n blanchedalmond: 0xffebcd,\n blue: 0x0000ff,\n blueviolet: 0x8a2be2,\n brown: 0xa52a2a,\n burlywood: 0xdeb887,\n cadetblue: 0x5f9ea0,\n chartreuse: 0x7fff00,\n chocolate: 0xd2691e,\n coral: 0xff7f50,\n cornflowerblue: 0x6495ed,\n cornsilk: 0xfff8dc,\n crimson: 0xdc143c,\n cyan: 0x00ffff,\n darkblue: 0x00008b,\n darkcyan: 0x008b8b,\n darkgoldenrod: 0xb8860b,\n darkgray: 0xa9a9a9,\n darkgreen: 0x006400,\n darkgrey: 0xa9a9a9,\n darkkhaki: 0xbdb76b,\n darkmagenta: 0x8b008b,\n darkolivegreen: 0x556b2f,\n darkorange: 0xff8c00,\n darkorchid: 0x9932cc,\n darkred: 0x8b0000,\n darksalmon: 0xe9967a,\n darkseagreen: 0x8fbc8f,\n darkslateblue: 0x483d8b,\n darkslategray: 0x2f4f4f,\n darkslategrey: 0x2f4f4f,\n darkturquoise: 0x00ced1,\n darkviolet: 0x9400d3,\n deeppink: 0xff1493,\n deepskyblue: 0x00bfff,\n dimgray: 0x696969,\n dimgrey: 0x696969,\n dodgerblue: 0x1e90ff,\n firebrick: 0xb22222,\n floralwhite: 0xfffaf0,\n forestgreen: 0x228b22,\n fuchsia: 0xff00ff,\n gainsboro: 0xdcdcdc,\n ghostwhite: 0xf8f8ff,\n gold: 0xffd700,\n goldenrod: 0xdaa520,\n gray: 0x808080,\n green: 0x008000,\n greenyellow: 0xadff2f,\n grey: 0x808080,\n honeydew: 0xf0fff0,\n hotpink: 0xff69b4,\n indianred: 0xcd5c5c,\n indigo: 0x4b0082,\n ivory: 0xfffff0,\n khaki: 0xf0e68c,\n lavender: 0xe6e6fa,\n lavenderblush: 0xfff0f5,\n lawngreen: 0x7cfc00,\n lemonchiffon: 0xfffacd,\n lightblue: 0xadd8e6,\n lightcoral: 0xf08080,\n lightcyan: 0xe0ffff,\n lightgoldenrodyellow: 0xfafad2,\n lightgray: 0xd3d3d3,\n lightgreen: 0x90ee90,\n lightgrey: 0xd3d3d3,\n lightpink: 0xffb6c1,\n lightsalmon: 0xffa07a,\n lightseagreen: 0x20b2aa,\n lightskyblue: 0x87cefa,\n lightslategray: 0x778899,\n lightslategrey: 0x778899,\n lightsteelblue: 0xb0c4de,\n lightyellow: 0xffffe0,\n lime: 0x00ff00,\n limegreen: 0x32cd32,\n linen: 0xfaf0e6,\n magenta: 0xff00ff,\n maroon: 0x800000,\n mediumaquamarine: 0x66cdaa,\n mediumblue: 0x0000cd,\n mediumorchid: 0xba55d3,\n mediumpurple: 0x9370db,\n mediumseagreen: 0x3cb371,\n mediumslateblue: 0x7b68ee,\n mediumspringgreen: 0x00fa9a,\n mediumturquoise: 0x48d1cc,\n mediumvioletred: 0xc71585,\n midnightblue: 0x191970,\n mintcream: 0xf5fffa,\n mistyrose: 0xffe4e1,\n moccasin: 0xffe4b5,\n navajowhite: 0xffdead,\n navy: 0x000080,\n oldlace: 0xfdf5e6,\n olive: 0x808000,\n olivedrab: 0x6b8e23,\n orange: 0xffa500,\n orangered: 0xff4500,\n orchid: 0xda70d6,\n palegoldenrod: 0xeee8aa,\n palegreen: 0x98fb98,\n paleturquoise: 0xafeeee,\n palevioletred: 0xdb7093,\n papayawhip: 0xffefd5,\n peachpuff: 0xffdab9,\n peru: 0xcd853f,\n pink: 0xffc0cb,\n plum: 0xdda0dd,\n powderblue: 0xb0e0e6,\n purple: 0x800080,\n rebeccapurple: 0x663399,\n red: 0xff0000,\n rosybrown: 0xbc8f8f,\n royalblue: 0x4169e1,\n saddlebrown: 0x8b4513,\n salmon: 0xfa8072,\n sandybrown: 0xf4a460,\n seagreen: 0x2e8b57,\n seashell: 0xfff5ee,\n sienna: 0xa0522d,\n silver: 0xc0c0c0,\n skyblue: 0x87ceeb,\n slateblue: 0x6a5acd,\n slategray: 0x708090,\n slategrey: 0x708090,\n snow: 0xfffafa,\n springgreen: 0x00ff7f,\n steelblue: 0x4682b4,\n tan: 0xd2b48c,\n teal: 0x008080,\n thistle: 0xd8bfd8,\n tomato: 0xff6347,\n turquoise: 0x40e0d0,\n violet: 0xee82ee,\n wheat: 0xf5deb3,\n white: 0xffffff,\n whitesmoke: 0xf5f5f5,\n yellow: 0xffff00,\n yellowgreen: 0x9acd32\n};\n\ndefine(Color, color, {\n copy(channels) {\n return Object.assign(new this.constructor, this, channels);\n },\n displayable() {\n return this.rgb().displayable();\n },\n hex: color_formatHex, // Deprecated! Use color.formatHex.\n formatHex: color_formatHex,\n formatHex8: color_formatHex8,\n formatHsl: color_formatHsl,\n formatRgb: color_formatRgb,\n toString: color_formatRgb\n});\n\nfunction color_formatHex() {\n return this.rgb().formatHex();\n}\n\nfunction color_formatHex8() {\n return this.rgb().formatHex8();\n}\n\nfunction color_formatHsl() {\n return hslConvert(this).formatHsl();\n}\n\nfunction color_formatRgb() {\n return this.rgb().formatRgb();\n}\n\nexport default function color(format) {\n var m, l;\n format = (format + \"\").trim().toLowerCase();\n return (m = reHex.exec(format)) ? (l = m[1].length, m = parseInt(m[1], 16), l === 6 ? rgbn(m) // #ff0000\n : l === 3 ? new Rgb((m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1) // #f00\n : l === 8 ? rgba(m >> 24 & 0xff, m >> 16 & 0xff, m >> 8 & 0xff, (m & 0xff) / 0xff) // #ff000000\n : l === 4 ? rgba((m >> 12 & 0xf) | (m >> 8 & 0xf0), (m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), (((m & 0xf) << 4) | (m & 0xf)) / 0xff) // #f000\n : null) // invalid hex\n : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)\n : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)\n : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)\n : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)\n : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)\n : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)\n : named.hasOwnProperty(format) ? rgbn(named[format]) // eslint-disable-line no-prototype-builtins\n : format === \"transparent\" ? new Rgb(NaN, NaN, NaN, 0)\n : null;\n}\n\nfunction rgbn(n) {\n return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);\n}\n\nfunction rgba(r, g, b, a) {\n if (a <= 0) r = g = b = NaN;\n return new Rgb(r, g, b, a);\n}\n\nexport function rgbConvert(o) {\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Rgb;\n o = o.rgb();\n return new Rgb(o.r, o.g, o.b, o.opacity);\n}\n\nexport function rgb(r, g, b, opacity) {\n return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);\n}\n\nexport function Rgb(r, g, b, opacity) {\n this.r = +r;\n this.g = +g;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Rgb, rgb, extend(Color, {\n brighter(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n darker(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n rgb() {\n return this;\n },\n clamp() {\n return new Rgb(clampi(this.r), clampi(this.g), clampi(this.b), clampa(this.opacity));\n },\n displayable() {\n return (-0.5 <= this.r && this.r < 255.5)\n && (-0.5 <= this.g && this.g < 255.5)\n && (-0.5 <= this.b && this.b < 255.5)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n hex: rgb_formatHex, // Deprecated! Use color.formatHex.\n formatHex: rgb_formatHex,\n formatHex8: rgb_formatHex8,\n formatRgb: rgb_formatRgb,\n toString: rgb_formatRgb\n}));\n\nfunction rgb_formatHex() {\n return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}`;\n}\n\nfunction rgb_formatHex8() {\n return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}${hex((isNaN(this.opacity) ? 1 : this.opacity) * 255)}`;\n}\n\nfunction rgb_formatRgb() {\n const a = clampa(this.opacity);\n return `${a === 1 ? \"rgb(\" : \"rgba(\"}${clampi(this.r)}, ${clampi(this.g)}, ${clampi(this.b)}${a === 1 ? \")\" : `, ${a})`}`;\n}\n\nfunction clampa(opacity) {\n return isNaN(opacity) ? 1 : Math.max(0, Math.min(1, opacity));\n}\n\nfunction clampi(value) {\n return Math.max(0, Math.min(255, Math.round(value) || 0));\n}\n\nfunction hex(value) {\n value = clampi(value);\n return (value < 16 ? \"0\" : \"\") + value.toString(16);\n}\n\nfunction hsla(h, s, l, a) {\n if (a <= 0) h = s = l = NaN;\n else if (l <= 0 || l >= 1) h = s = NaN;\n else if (s <= 0) h = NaN;\n return new Hsl(h, s, l, a);\n}\n\nexport function hslConvert(o) {\n if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Hsl;\n if (o instanceof Hsl) return o;\n o = o.rgb();\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n h = NaN,\n s = max - min,\n l = (max + min) / 2;\n if (s) {\n if (r === max) h = (g - b) / s + (g < b) * 6;\n else if (g === max) h = (b - r) / s + 2;\n else h = (r - g) / s + 4;\n s /= l < 0.5 ? max + min : 2 - max - min;\n h *= 60;\n } else {\n s = l > 0 && l < 1 ? 0 : h;\n }\n return new Hsl(h, s, l, o.opacity);\n}\n\nexport function hsl(h, s, l, opacity) {\n return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);\n}\n\nfunction Hsl(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hsl, hsl, extend(Color, {\n brighter(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n darker(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n rgb() {\n var h = this.h % 360 + (this.h < 0) * 360,\n s = isNaN(h) || isNaN(this.s) ? 0 : this.s,\n l = this.l,\n m2 = l + (l < 0.5 ? l : 1 - l) * s,\n m1 = 2 * l - m2;\n return new Rgb(\n hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2),\n hsl2rgb(h, m1, m2),\n hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2),\n this.opacity\n );\n },\n clamp() {\n return new Hsl(clamph(this.h), clampt(this.s), clampt(this.l), clampa(this.opacity));\n },\n displayable() {\n return (0 <= this.s && this.s <= 1 || isNaN(this.s))\n && (0 <= this.l && this.l <= 1)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n formatHsl() {\n const a = clampa(this.opacity);\n return `${a === 1 ? \"hsl(\" : \"hsla(\"}${clamph(this.h)}, ${clampt(this.s) * 100}%, ${clampt(this.l) * 100}%${a === 1 ? \")\" : `, ${a})`}`;\n }\n}));\n\nfunction clamph(value) {\n value = (value || 0) % 360;\n return value < 0 ? value + 360 : value;\n}\n\nfunction clampt(value) {\n return Math.max(0, Math.min(1, value || 0));\n}\n\n/* From FvD 13.37, CSS Color Module Level 3 */\nfunction hsl2rgb(h, m1, m2) {\n return (h < 60 ? m1 + (m2 - m1) * h / 60\n : h < 180 ? m2\n : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60\n : m1) * 255;\n}\n","import {bisect} from \"d3-array\";\nimport {interpolate as interpolateValue, interpolateNumber, interpolateRound} from \"d3-interpolate\";\nimport constant from \"./constant.js\";\nimport number from \"./number.js\";\n\nvar unit = [0, 1];\n\nexport function identity(x) {\n return x;\n}\n\nfunction normalize(a, b) {\n return (b -= (a = +a))\n ? function(x) { return (x - a) / b; }\n : constant(isNaN(b) ? NaN : 0.5);\n}\n\nfunction clamper(a, b) {\n var t;\n if (a > b) t = a, a = b, b = t;\n return function(x) { return Math.max(a, Math.min(b, x)); };\n}\n\n// normalize(a, b)(x) takes a domain value x in [a,b] and returns the corresponding parameter t in [0,1].\n// interpolate(a, b)(t) takes a parameter t in [0,1] and returns the corresponding range value x in [a,b].\nfunction bimap(domain, range, interpolate) {\n var d0 = domain[0], d1 = domain[1], r0 = range[0], r1 = range[1];\n if (d1 < d0) d0 = normalize(d1, d0), r0 = interpolate(r1, r0);\n else d0 = normalize(d0, d1), r0 = interpolate(r0, r1);\n return function(x) { return r0(d0(x)); };\n}\n\nfunction polymap(domain, range, interpolate) {\n var j = Math.min(domain.length, range.length) - 1,\n d = new Array(j),\n r = new Array(j),\n i = -1;\n\n // Reverse descending domains.\n if (domain[j] < domain[0]) {\n domain = domain.slice().reverse();\n range = range.slice().reverse();\n }\n\n while (++i < j) {\n d[i] = normalize(domain[i], domain[i + 1]);\n r[i] = interpolate(range[i], range[i + 1]);\n }\n\n return function(x) {\n var i = bisect(domain, x, 1, j) - 1;\n return r[i](d[i](x));\n };\n}\n\nexport function copy(source, target) {\n return target\n .domain(source.domain())\n .range(source.range())\n .interpolate(source.interpolate())\n .clamp(source.clamp())\n .unknown(source.unknown());\n}\n\nexport function transformer() {\n var domain = unit,\n range = unit,\n interpolate = interpolateValue,\n transform,\n untransform,\n unknown,\n clamp = identity,\n piecewise,\n output,\n input;\n\n function rescale() {\n var n = Math.min(domain.length, range.length);\n if (clamp !== identity) clamp = clamper(domain[0], domain[n - 1]);\n piecewise = n > 2 ? polymap : bimap;\n output = input = null;\n return scale;\n }\n\n function scale(x) {\n return x == null || isNaN(x = +x) ? unknown : (output || (output = piecewise(domain.map(transform), range, interpolate)))(transform(clamp(x)));\n }\n\n scale.invert = function(y) {\n return clamp(untransform((input || (input = piecewise(range, domain.map(transform), interpolateNumber)))(y)));\n };\n\n scale.domain = function(_) {\n return arguments.length ? (domain = Array.from(_, number), rescale()) : domain.slice();\n };\n\n scale.range = function(_) {\n return arguments.length ? (range = Array.from(_), rescale()) : range.slice();\n };\n\n scale.rangeRound = function(_) {\n return range = Array.from(_), interpolate = interpolateRound, rescale();\n };\n\n scale.clamp = function(_) {\n return arguments.length ? (clamp = _ ? true : identity, rescale()) : clamp !== identity;\n };\n\n scale.interpolate = function(_) {\n return arguments.length ? (interpolate = _, rescale()) : interpolate;\n };\n\n scale.unknown = function(_) {\n return arguments.length ? (unknown = _, scale) : unknown;\n };\n\n return function(t, u) {\n transform = t, untransform = u;\n return rescale();\n };\n}\n\nexport default function continuous() {\n return transformer()(identity, identity);\n}\n","import {color} from \"d3-color\";\nimport rgb from \"./rgb.js\";\nimport {genericArray} from \"./array.js\";\nimport date from \"./date.js\";\nimport number from \"./number.js\";\nimport object from \"./object.js\";\nimport string from \"./string.js\";\nimport constant from \"./constant.js\";\nimport numberArray, {isNumberArray} from \"./numberArray.js\";\n\nexport default function(a, b) {\n var t = typeof b, c;\n return b == null || t === \"boolean\" ? constant(b)\n : (t === \"number\" ? number\n : t === \"string\" ? ((c = color(b)) ? (b = c, rgb) : string)\n : b instanceof color ? rgb\n : b instanceof Date ? date\n : isNumberArray(b) ? numberArray\n : Array.isArray(b) ? genericArray\n : typeof b.valueOf !== \"function\" && typeof b.toString !== \"function\" || isNaN(b) ? object\n : number)(a, b);\n}\n","import {rgb as colorRgb} from \"d3-color\";\nimport basis from \"./basis.js\";\nimport basisClosed from \"./basisClosed.js\";\nimport nogamma, {gamma} from \"./color.js\";\n\nexport default (function rgbGamma(y) {\n var color = gamma(y);\n\n function rgb(start, end) {\n var r = color((start = colorRgb(start)).r, (end = colorRgb(end)).r),\n g = color(start.g, end.g),\n b = color(start.b, end.b),\n opacity = nogamma(start.opacity, end.opacity);\n return function(t) {\n start.r = r(t);\n start.g = g(t);\n start.b = b(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n\n rgb.gamma = rgbGamma;\n\n return rgb;\n})(1);\n\nfunction rgbSpline(spline) {\n return function(colors) {\n var n = colors.length,\n r = new Array(n),\n g = new Array(n),\n b = new Array(n),\n i, color;\n for (i = 0; i < n; ++i) {\n color = colorRgb(colors[i]);\n r[i] = color.r || 0;\n g[i] = color.g || 0;\n b[i] = color.b || 0;\n }\n r = spline(r);\n g = spline(g);\n b = spline(b);\n color.opacity = 1;\n return function(t) {\n color.r = r(t);\n color.g = g(t);\n color.b = b(t);\n return color + \"\";\n };\n };\n}\n\nexport var rgbBasis = rgbSpline(basis);\nexport var rgbBasisClosed = rgbSpline(basisClosed);\n","export function basis(t1, v0, v1, v2, v3) {\n var t2 = t1 * t1, t3 = t2 * t1;\n return ((1 - 3 * t1 + 3 * t2 - t3) * v0\n + (4 - 6 * t2 + 3 * t3) * v1\n + (1 + 3 * t1 + 3 * t2 - 3 * t3) * v2\n + t3 * v3) / 6;\n}\n\nexport default function(values) {\n var n = values.length - 1;\n return function(t) {\n var i = t <= 0 ? (t = 0) : t >= 1 ? (t = 1, n - 1) : Math.floor(t * n),\n v1 = values[i],\n v2 = values[i + 1],\n v0 = i > 0 ? values[i - 1] : 2 * v1 - v2,\n v3 = i < n - 1 ? values[i + 2] : 2 * v2 - v1;\n return basis((t - i / n) * n, v0, v1, v2, v3);\n };\n}\n","import {basis} from \"./basis.js\";\n\nexport default function(values) {\n var n = values.length;\n return function(t) {\n var i = Math.floor(((t %= 1) < 0 ? ++t : t) * n),\n v0 = values[(i + n - 1) % n],\n v1 = values[i % n],\n v2 = values[(i + 1) % n],\n v3 = values[(i + 2) % n];\n return basis((t - i / n) * n, v0, v1, v2, v3);\n };\n}\n","export default x => () => x;\n","import constant from \"./constant.js\";\n\nfunction linear(a, d) {\n return function(t) {\n return a + t * d;\n };\n}\n\nfunction exponential(a, b, y) {\n return a = Math.pow(a, y), b = Math.pow(b, y) - a, y = 1 / y, function(t) {\n return Math.pow(a + t * b, y);\n };\n}\n\nexport function hue(a, b) {\n var d = b - a;\n return d ? linear(a, d > 180 || d < -180 ? d - 360 * Math.round(d / 360) : d) : constant(isNaN(a) ? b : a);\n}\n\nexport function gamma(y) {\n return (y = +y) === 1 ? nogamma : function(a, b) {\n return b - a ? exponential(a, b, y) : constant(isNaN(a) ? b : a);\n };\n}\n\nexport default function nogamma(a, b) {\n var d = b - a;\n return d ? linear(a, d) : constant(isNaN(a) ? b : a);\n}\n","export default function(a, b) {\n if (!b) b = [];\n var n = a ? Math.min(b.length, a.length) : 0,\n c = b.slice(),\n i;\n return function(t) {\n for (i = 0; i < n; ++i) c[i] = a[i] * (1 - t) + b[i] * t;\n return c;\n };\n}\n\nexport function isNumberArray(x) {\n return ArrayBuffer.isView(x) && !(x instanceof DataView);\n}\n","import value from \"./value.js\";\nimport numberArray, {isNumberArray} from \"./numberArray.js\";\n\nexport default function(a, b) {\n return (isNumberArray(b) ? numberArray : genericArray)(a, b);\n}\n\nexport function genericArray(a, b) {\n var nb = b ? b.length : 0,\n na = a ? Math.min(nb, a.length) : 0,\n x = new Array(na),\n c = new Array(nb),\n i;\n\n for (i = 0; i < na; ++i) x[i] = value(a[i], b[i]);\n for (; i < nb; ++i) c[i] = b[i];\n\n return function(t) {\n for (i = 0; i < na; ++i) c[i] = x[i](t);\n return c;\n };\n}\n","export default function(a, b) {\n var d = new Date;\n return a = +a, b = +b, function(t) {\n return d.setTime(a * (1 - t) + b * t), d;\n };\n}\n","export default function(a, b) {\n return a = +a, b = +b, function(t) {\n return a * (1 - t) + b * t;\n };\n}\n","import value from \"./value.js\";\n\nexport default function(a, b) {\n var i = {},\n c = {},\n k;\n\n if (a === null || typeof a !== \"object\") a = {};\n if (b === null || typeof b !== \"object\") b = {};\n\n for (k in b) {\n if (k in a) {\n i[k] = value(a[k], b[k]);\n } else {\n c[k] = b[k];\n }\n }\n\n return function(t) {\n for (k in i) c[k] = i[k](t);\n return c;\n };\n}\n","import number from \"./number.js\";\n\nvar reA = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,\n reB = new RegExp(reA.source, \"g\");\n\nfunction zero(b) {\n return function() {\n return b;\n };\n}\n\nfunction one(b) {\n return function(t) {\n return b(t) + \"\";\n };\n}\n\nexport default function(a, b) {\n var bi = reA.lastIndex = reB.lastIndex = 0, // scan index for next number in b\n am, // current match in a\n bm, // current match in b\n bs, // string preceding current number in b, if any\n i = -1, // index in s\n s = [], // string constants and placeholders\n q = []; // number interpolators\n\n // Coerce inputs to strings.\n a = a + \"\", b = b + \"\";\n\n // Interpolate pairs of numbers in a & b.\n while ((am = reA.exec(a))\n && (bm = reB.exec(b))) {\n if ((bs = bm.index) > bi) { // a string precedes the next number in b\n bs = b.slice(bi, bs);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n if ((am = am[0]) === (bm = bm[0])) { // numbers in a & b match\n if (s[i]) s[i] += bm; // coalesce with previous string\n else s[++i] = bm;\n } else { // interpolate non-matching numbers\n s[++i] = null;\n q.push({i: i, x: number(am, bm)});\n }\n bi = reB.lastIndex;\n }\n\n // Add remains of b.\n if (bi < b.length) {\n bs = b.slice(bi);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n\n // Special optimization for only a single match.\n // Otherwise, interpolate each of the numbers and rejoin the string.\n return s.length < 2 ? (q[0]\n ? one(q[0].x)\n : zero(b))\n : (b = q.length, function(t) {\n for (var i = 0, o; i < b; ++i) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n });\n}\n","export default function(a, b) {\n return a = +a, b = +b, function(t) {\n return Math.round(a * (1 - t) + b * t);\n };\n}\n","export default function constants(x) {\n return function() {\n return x;\n };\n}\n","export default function number(x) {\n return +x;\n}\n","import {ticks, tickIncrement} from \"d3-array\";\nimport continuous, {copy} from \"./continuous.js\";\nimport {initRange} from \"./init.js\";\nimport tickFormat from \"./tickFormat.js\";\n\nexport function linearish(scale) {\n var domain = scale.domain;\n\n scale.ticks = function(count) {\n var d = domain();\n return ticks(d[0], d[d.length - 1], count == null ? 10 : count);\n };\n\n scale.tickFormat = function(count, specifier) {\n var d = domain();\n return tickFormat(d[0], d[d.length - 1], count == null ? 10 : count, specifier);\n };\n\n scale.nice = function(count) {\n if (count == null) count = 10;\n\n var d = domain();\n var i0 = 0;\n var i1 = d.length - 1;\n var start = d[i0];\n var stop = d[i1];\n var prestep;\n var step;\n var maxIter = 10;\n\n if (stop < start) {\n step = start, start = stop, stop = step;\n step = i0, i0 = i1, i1 = step;\n }\n \n while (maxIter-- > 0) {\n step = tickIncrement(start, stop, count);\n if (step === prestep) {\n d[i0] = start\n d[i1] = stop\n return domain(d);\n } else if (step > 0) {\n start = Math.floor(start / step) * step;\n stop = Math.ceil(stop / step) * step;\n } else if (step < 0) {\n start = Math.ceil(start * step) / step;\n stop = Math.floor(stop * step) / step;\n } else {\n break;\n }\n prestep = step;\n }\n\n return scale;\n };\n\n return scale;\n}\n\nexport default function linear() {\n var scale = continuous();\n\n scale.copy = function() {\n return copy(scale, linear());\n };\n\n initRange.apply(scale, arguments);\n\n return linearish(scale);\n}\n","export default function(x) {\n return Math.abs(x = Math.round(x)) >= 1e21\n ? x.toLocaleString(\"en\").replace(/,/g, \"\")\n : x.toString(10);\n}\n\n// Computes the decimal coefficient and exponent of the specified number x with\n// significant digits p, where x is positive and p is in [1, 21] or undefined.\n// For example, formatDecimalParts(1.23) returns [\"123\", 0].\nexport function formatDecimalParts(x, p) {\n if ((i = (x = p ? x.toExponential(p - 1) : x.toExponential()).indexOf(\"e\")) < 0) return null; // NaN, ±Infinity\n var i, coefficient = x.slice(0, i);\n\n // The string returned by toExponential either has the form \\d\\.\\d+e[-+]\\d+\n // (e.g., 1.2e+3) or the form \\de[-+]\\d+ (e.g., 1e+3).\n return [\n coefficient.length > 1 ? coefficient[0] + coefficient.slice(2) : coefficient,\n +x.slice(i + 1)\n ];\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport default function(x) {\n return x = formatDecimalParts(Math.abs(x)), x ? x[1] : NaN;\n}\n","export default function(grouping, thousands) {\n return function(value, width) {\n var i = value.length,\n t = [],\n j = 0,\n g = grouping[0],\n length = 0;\n\n while (i > 0 && g > 0) {\n if (length + g + 1 > width) g = Math.max(1, width - length);\n t.push(value.substring(i -= g, i + g));\n if ((length += g + 1) > width) break;\n g = grouping[j = (j + 1) % grouping.length];\n }\n\n return t.reverse().join(thousands);\n };\n}\n","export default function(numerals) {\n return function(value) {\n return value.replace(/[0-9]/g, function(i) {\n return numerals[+i];\n });\n };\n}\n","// [[fill]align][sign][symbol][0][width][,][.precision][~][type]\nvar re = /^(?:(.)?([<>=^]))?([+\\-( ])?([$#])?(0)?(\\d+)?(,)?(\\.\\d+)?(~)?([a-z%])?$/i;\n\nexport default function formatSpecifier(specifier) {\n if (!(match = re.exec(specifier))) throw new Error(\"invalid format: \" + specifier);\n var match;\n return new FormatSpecifier({\n fill: match[1],\n align: match[2],\n sign: match[3],\n symbol: match[4],\n zero: match[5],\n width: match[6],\n comma: match[7],\n precision: match[8] && match[8].slice(1),\n trim: match[9],\n type: match[10]\n });\n}\n\nformatSpecifier.prototype = FormatSpecifier.prototype; // instanceof\n\nexport function FormatSpecifier(specifier) {\n this.fill = specifier.fill === undefined ? \" \" : specifier.fill + \"\";\n this.align = specifier.align === undefined ? \">\" : specifier.align + \"\";\n this.sign = specifier.sign === undefined ? \"-\" : specifier.sign + \"\";\n this.symbol = specifier.symbol === undefined ? \"\" : specifier.symbol + \"\";\n this.zero = !!specifier.zero;\n this.width = specifier.width === undefined ? undefined : +specifier.width;\n this.comma = !!specifier.comma;\n this.precision = specifier.precision === undefined ? undefined : +specifier.precision;\n this.trim = !!specifier.trim;\n this.type = specifier.type === undefined ? \"\" : specifier.type + \"\";\n}\n\nFormatSpecifier.prototype.toString = function() {\n return this.fill\n + this.align\n + this.sign\n + this.symbol\n + (this.zero ? \"0\" : \"\")\n + (this.width === undefined ? \"\" : Math.max(1, this.width | 0))\n + (this.comma ? \",\" : \"\")\n + (this.precision === undefined ? \"\" : \".\" + Math.max(0, this.precision | 0))\n + (this.trim ? \"~\" : \"\")\n + this.type;\n};\n","// Trims insignificant zeros, e.g., replaces 1.2000k with 1.2k.\nexport default function(s) {\n out: for (var n = s.length, i = 1, i0 = -1, i1; i < n; ++i) {\n switch (s[i]) {\n case \".\": i0 = i1 = i; break;\n case \"0\": if (i0 === 0) i0 = i; i1 = i; break;\n default: if (!+s[i]) break out; if (i0 > 0) i0 = 0; break;\n }\n }\n return i0 > 0 ? s.slice(0, i0) + s.slice(i1 + 1) : s;\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport var prefixExponent;\n\nexport default function(x, p) {\n var d = formatDecimalParts(x, p);\n if (!d) return x + \"\";\n var coefficient = d[0],\n exponent = d[1],\n i = exponent - (prefixExponent = Math.max(-8, Math.min(8, Math.floor(exponent / 3))) * 3) + 1,\n n = coefficient.length;\n return i === n ? coefficient\n : i > n ? coefficient + new Array(i - n + 1).join(\"0\")\n : i > 0 ? coefficient.slice(0, i) + \".\" + coefficient.slice(i)\n : \"0.\" + new Array(1 - i).join(\"0\") + formatDecimalParts(x, Math.max(0, p + i - 1))[0]; // less than 1y!\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport default function(x, p) {\n var d = formatDecimalParts(x, p);\n if (!d) return x + \"\";\n var coefficient = d[0],\n exponent = d[1];\n return exponent < 0 ? \"0.\" + new Array(-exponent).join(\"0\") + coefficient\n : coefficient.length > exponent + 1 ? coefficient.slice(0, exponent + 1) + \".\" + coefficient.slice(exponent + 1)\n : coefficient + new Array(exponent - coefficient.length + 2).join(\"0\");\n}\n","import formatDecimal from \"./formatDecimal.js\";\nimport formatPrefixAuto from \"./formatPrefixAuto.js\";\nimport formatRounded from \"./formatRounded.js\";\n\nexport default {\n \"%\": (x, p) => (x * 100).toFixed(p),\n \"b\": (x) => Math.round(x).toString(2),\n \"c\": (x) => x + \"\",\n \"d\": formatDecimal,\n \"e\": (x, p) => x.toExponential(p),\n \"f\": (x, p) => x.toFixed(p),\n \"g\": (x, p) => x.toPrecision(p),\n \"o\": (x) => Math.round(x).toString(8),\n \"p\": (x, p) => formatRounded(x * 100, p),\n \"r\": formatRounded,\n \"s\": formatPrefixAuto,\n \"X\": (x) => Math.round(x).toString(16).toUpperCase(),\n \"x\": (x) => Math.round(x).toString(16)\n};\n","export default function(x) {\n return x;\n}\n","import exponent from \"./exponent.js\";\nimport formatGroup from \"./formatGroup.js\";\nimport formatNumerals from \"./formatNumerals.js\";\nimport formatSpecifier from \"./formatSpecifier.js\";\nimport formatTrim from \"./formatTrim.js\";\nimport formatTypes from \"./formatTypes.js\";\nimport {prefixExponent} from \"./formatPrefixAuto.js\";\nimport identity from \"./identity.js\";\n\nvar map = Array.prototype.map,\n prefixes = [\"y\",\"z\",\"a\",\"f\",\"p\",\"n\",\"µ\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\",\"P\",\"E\",\"Z\",\"Y\"];\n\nexport default function(locale) {\n var group = locale.grouping === undefined || locale.thousands === undefined ? identity : formatGroup(map.call(locale.grouping, Number), locale.thousands + \"\"),\n currencyPrefix = locale.currency === undefined ? \"\" : locale.currency[0] + \"\",\n currencySuffix = locale.currency === undefined ? \"\" : locale.currency[1] + \"\",\n decimal = locale.decimal === undefined ? \".\" : locale.decimal + \"\",\n numerals = locale.numerals === undefined ? identity : formatNumerals(map.call(locale.numerals, String)),\n percent = locale.percent === undefined ? \"%\" : locale.percent + \"\",\n minus = locale.minus === undefined ? \"−\" : locale.minus + \"\",\n nan = locale.nan === undefined ? \"NaN\" : locale.nan + \"\";\n\n function newFormat(specifier) {\n specifier = formatSpecifier(specifier);\n\n var fill = specifier.fill,\n align = specifier.align,\n sign = specifier.sign,\n symbol = specifier.symbol,\n zero = specifier.zero,\n width = specifier.width,\n comma = specifier.comma,\n precision = specifier.precision,\n trim = specifier.trim,\n type = specifier.type;\n\n // The \"n\" type is an alias for \",g\".\n if (type === \"n\") comma = true, type = \"g\";\n\n // The \"\" type, and any invalid type, is an alias for \".12~g\".\n else if (!formatTypes[type]) precision === undefined && (precision = 12), trim = true, type = \"g\";\n\n // If zero fill is specified, padding goes after sign and before digits.\n if (zero || (fill === \"0\" && align === \"=\")) zero = true, fill = \"0\", align = \"=\";\n\n // Compute the prefix and suffix.\n // For SI-prefix, the suffix is lazily computed.\n var prefix = symbol === \"$\" ? currencyPrefix : symbol === \"#\" && /[boxX]/.test(type) ? \"0\" + type.toLowerCase() : \"\",\n suffix = symbol === \"$\" ? currencySuffix : /[%p]/.test(type) ? percent : \"\";\n\n // What format function should we use?\n // Is this an integer type?\n // Can this type generate exponential notation?\n var formatType = formatTypes[type],\n maybeSuffix = /[defgprs%]/.test(type);\n\n // Set the default precision if not specified,\n // or clamp the specified precision to the supported range.\n // For significant precision, it must be in [1, 21].\n // For fixed precision, it must be in [0, 20].\n precision = precision === undefined ? 6\n : /[gprs]/.test(type) ? Math.max(1, Math.min(21, precision))\n : Math.max(0, Math.min(20, precision));\n\n function format(value) {\n var valuePrefix = prefix,\n valueSuffix = suffix,\n i, n, c;\n\n if (type === \"c\") {\n valueSuffix = formatType(value) + valueSuffix;\n value = \"\";\n } else {\n value = +value;\n\n // Determine the sign. -0 is not less than 0, but 1 / -0 is!\n var valueNegative = value < 0 || 1 / value < 0;\n\n // Perform the initial formatting.\n value = isNaN(value) ? nan : formatType(Math.abs(value), precision);\n\n // Trim insignificant zeros.\n if (trim) value = formatTrim(value);\n\n // If a negative value rounds to zero after formatting, and no explicit positive sign is requested, hide the sign.\n if (valueNegative && +value === 0 && sign !== \"+\") valueNegative = false;\n\n // Compute the prefix and suffix.\n valuePrefix = (valueNegative ? (sign === \"(\" ? sign : minus) : sign === \"-\" || sign === \"(\" ? \"\" : sign) + valuePrefix;\n valueSuffix = (type === \"s\" ? prefixes[8 + prefixExponent / 3] : \"\") + valueSuffix + (valueNegative && sign === \"(\" ? \")\" : \"\");\n\n // Break the formatted value into the integer “value” part that can be\n // grouped, and fractional or exponential “suffix” part that is not.\n if (maybeSuffix) {\n i = -1, n = value.length;\n while (++i < n) {\n if (c = value.charCodeAt(i), 48 > c || c > 57) {\n valueSuffix = (c === 46 ? decimal + value.slice(i + 1) : value.slice(i)) + valueSuffix;\n value = value.slice(0, i);\n break;\n }\n }\n }\n }\n\n // If the fill character is not \"0\", grouping is applied before padding.\n if (comma && !zero) value = group(value, Infinity);\n\n // Compute the padding.\n var length = valuePrefix.length + value.length + valueSuffix.length,\n padding = length < width ? new Array(width - length + 1).join(fill) : \"\";\n\n // If the fill character is \"0\", grouping is applied after padding.\n if (comma && zero) value = group(padding + value, padding.length ? width - valueSuffix.length : Infinity), padding = \"\";\n\n // Reconstruct the final output based on the desired alignment.\n switch (align) {\n case \"<\": value = valuePrefix + value + valueSuffix + padding; break;\n case \"=\": value = valuePrefix + padding + value + valueSuffix; break;\n case \"^\": value = padding.slice(0, length = padding.length >> 1) + valuePrefix + value + valueSuffix + padding.slice(length); break;\n default: value = padding + valuePrefix + value + valueSuffix; break;\n }\n\n return numerals(value);\n }\n\n format.toString = function() {\n return specifier + \"\";\n };\n\n return format;\n }\n\n function formatPrefix(specifier, value) {\n var f = newFormat((specifier = formatSpecifier(specifier), specifier.type = \"f\", specifier)),\n e = Math.max(-8, Math.min(8, Math.floor(exponent(value) / 3))) * 3,\n k = Math.pow(10, -e),\n prefix = prefixes[8 + e / 3];\n return function(value) {\n return f(k * value) + prefix;\n };\n }\n\n return {\n format: newFormat,\n formatPrefix: formatPrefix\n };\n}\n","import formatLocale from \"./locale.js\";\n\nvar locale;\nexport var format;\nexport var formatPrefix;\n\ndefaultLocale({\n thousands: \",\",\n grouping: [3],\n currency: [\"$\", \"\"]\n});\n\nexport default function defaultLocale(definition) {\n locale = formatLocale(definition);\n format = locale.format;\n formatPrefix = locale.formatPrefix;\n return locale;\n}\n","import exponent from \"./exponent.js\";\n\nexport default function(step) {\n return Math.max(0, -exponent(Math.abs(step)));\n}\n","import exponent from \"./exponent.js\";\n\nexport default function(step, value) {\n return Math.max(0, Math.max(-8, Math.min(8, Math.floor(exponent(value) / 3))) * 3 - exponent(Math.abs(step)));\n}\n","import exponent from \"./exponent.js\";\n\nexport default function(step, max) {\n step = Math.abs(step), max = Math.abs(max) - step;\n return Math.max(0, exponent(max) - exponent(step)) + 1;\n}\n","import {tickStep} from \"d3-array\";\nimport {format, formatPrefix, formatSpecifier, precisionFixed, precisionPrefix, precisionRound} from \"d3-format\";\n\nexport default function tickFormat(start, stop, count, specifier) {\n var step = tickStep(start, stop, count),\n precision;\n specifier = formatSpecifier(specifier == null ? \",f\" : specifier);\n switch (specifier.type) {\n case \"s\": {\n var value = Math.max(Math.abs(start), Math.abs(stop));\n if (specifier.precision == null && !isNaN(precision = precisionPrefix(step, value))) specifier.precision = precision;\n return formatPrefix(specifier, value);\n }\n case \"\":\n case \"e\":\n case \"g\":\n case \"p\":\n case \"r\": {\n if (specifier.precision == null && !isNaN(precision = precisionRound(step, Math.max(Math.abs(start), Math.abs(stop))))) specifier.precision = precision - (specifier.type === \"e\");\n break;\n }\n case \"f\":\n case \"%\": {\n if (specifier.precision == null && !isNaN(precision = precisionFixed(step))) specifier.precision = precision - (specifier.type === \"%\") * 2;\n break;\n }\n }\n return format(specifier);\n}\n","export default function max(values, valueof) {\n let max;\n if (valueof === undefined) {\n for (const value of values) {\n if (value != null\n && (max < value || (max === undefined && value >= value))) {\n max = value;\n }\n }\n } else {\n let index = -1;\n for (let value of values) {\n if ((value = valueof(value, ++index, values)) != null\n && (max < value || (max === undefined && value >= value))) {\n max = value;\n }\n }\n }\n return max;\n}\n","import {bisect} from \"d3-array\";\nimport {linearish} from \"./linear.js\";\nimport {initRange} from \"./init.js\";\n\nexport default function quantize() {\n var x0 = 0,\n x1 = 1,\n n = 1,\n domain = [0.5],\n range = [0, 1],\n unknown;\n\n function scale(x) {\n return x != null && x <= x ? range[bisect(domain, x, 0, n)] : unknown;\n }\n\n function rescale() {\n var i = -1;\n domain = new Array(n);\n while (++i < n) domain[i] = ((i + 1) * x1 - (i - n) * x0) / (n + 1);\n return scale;\n }\n\n scale.domain = function(_) {\n return arguments.length ? ([x0, x1] = _, x0 = +x0, x1 = +x1, rescale()) : [x0, x1];\n };\n\n scale.range = function(_) {\n return arguments.length ? (n = (range = Array.from(_)).length - 1, rescale()) : range.slice();\n };\n\n scale.invertExtent = function(y) {\n var i = range.indexOf(y);\n return i < 0 ? [NaN, NaN]\n : i < 1 ? [x0, domain[0]]\n : i >= n ? [domain[n - 1], x1]\n : [domain[i - 1], domain[i]];\n };\n\n scale.unknown = function(_) {\n return arguments.length ? (unknown = _, scale) : scale;\n };\n\n scale.thresholds = function() {\n return domain.slice();\n };\n\n scale.copy = function() {\n return quantize()\n .domain([x0, x1])\n .range(range)\n .unknown(unknown);\n };\n\n return initRange.apply(linearish(scale), arguments);\n}\n","function _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(r, l) { var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/**\n * @fileOverview Wrapper component to make charts adapt to the size of parent * DOM\n */\nimport clsx from 'clsx';\nimport React, { forwardRef, cloneElement, useState, useImperativeHandle, useRef, useEffect, useMemo, useCallback } from 'react';\nimport throttle from 'lodash/throttle';\nimport { isPercent } from '../util/DataUtils';\nimport { warn } from '../util/LogUtils';\nimport { getDisplayName } from '../util/ReactUtils';\nexport var ResponsiveContainer = /*#__PURE__*/forwardRef(function (_ref, ref) {\n var aspect = _ref.aspect,\n _ref$initialDimension = _ref.initialDimension,\n initialDimension = _ref$initialDimension === void 0 ? {\n width: -1,\n height: -1\n } : _ref$initialDimension,\n _ref$width = _ref.width,\n width = _ref$width === void 0 ? '100%' : _ref$width,\n _ref$height = _ref.height,\n height = _ref$height === void 0 ? '100%' : _ref$height,\n _ref$minWidth = _ref.minWidth,\n minWidth = _ref$minWidth === void 0 ? 0 : _ref$minWidth,\n minHeight = _ref.minHeight,\n maxHeight = _ref.maxHeight,\n children = _ref.children,\n _ref$debounce = _ref.debounce,\n debounce = _ref$debounce === void 0 ? 0 : _ref$debounce,\n id = _ref.id,\n className = _ref.className,\n onResize = _ref.onResize,\n _ref$style = _ref.style,\n style = _ref$style === void 0 ? {} : _ref$style;\n var containerRef = useRef(null);\n var onResizeRef = useRef();\n onResizeRef.current = onResize;\n useImperativeHandle(ref, function () {\n return Object.defineProperty(containerRef.current, 'current', {\n get: function get() {\n // eslint-disable-next-line no-console\n console.warn('The usage of ref.current.current is deprecated and will no longer be supported.');\n return containerRef.current;\n },\n configurable: true\n });\n });\n var _useState = useState({\n containerWidth: initialDimension.width,\n containerHeight: initialDimension.height\n }),\n _useState2 = _slicedToArray(_useState, 2),\n sizes = _useState2[0],\n setSizes = _useState2[1];\n var setContainerSize = useCallback(function (newWidth, newHeight) {\n setSizes(function (prevState) {\n var roundedWidth = Math.round(newWidth);\n var roundedHeight = Math.round(newHeight);\n if (prevState.containerWidth === roundedWidth && prevState.containerHeight === roundedHeight) {\n return prevState;\n }\n return {\n containerWidth: roundedWidth,\n containerHeight: roundedHeight\n };\n });\n }, []);\n useEffect(function () {\n var callback = function callback(entries) {\n var _onResizeRef$current;\n var _entries$0$contentRec = entries[0].contentRect,\n containerWidth = _entries$0$contentRec.width,\n containerHeight = _entries$0$contentRec.height;\n setContainerSize(containerWidth, containerHeight);\n (_onResizeRef$current = onResizeRef.current) === null || _onResizeRef$current === void 0 || _onResizeRef$current.call(onResizeRef, containerWidth, containerHeight);\n };\n if (debounce > 0) {\n callback = throttle(callback, debounce, {\n trailing: true,\n leading: false\n });\n }\n var observer = new ResizeObserver(callback);\n var _containerRef$current = containerRef.current.getBoundingClientRect(),\n containerWidth = _containerRef$current.width,\n containerHeight = _containerRef$current.height;\n setContainerSize(containerWidth, containerHeight);\n observer.observe(containerRef.current);\n return function () {\n observer.disconnect();\n };\n }, [setContainerSize, debounce]);\n var chartContent = useMemo(function () {\n var containerWidth = sizes.containerWidth,\n containerHeight = sizes.containerHeight;\n if (containerWidth < 0 || containerHeight < 0) {\n return null;\n }\n warn(isPercent(width) || isPercent(height), \"The width(%s) and height(%s) are both fixed numbers,\\n maybe you don't need to use a ResponsiveContainer.\", width, height);\n warn(!aspect || aspect > 0, 'The aspect(%s) must be greater than zero.', aspect);\n var calculatedWidth = isPercent(width) ? containerWidth : width;\n var calculatedHeight = isPercent(height) ? containerHeight : height;\n if (aspect && aspect > 0) {\n // Preserve the desired aspect ratio\n if (calculatedWidth) {\n // Will default to using width for aspect ratio\n calculatedHeight = calculatedWidth / aspect;\n } else if (calculatedHeight) {\n // But we should also take height into consideration\n calculatedWidth = calculatedHeight * aspect;\n }\n\n // if maxHeight is set, overwrite if calculatedHeight is greater than maxHeight\n if (maxHeight && calculatedHeight > maxHeight) {\n calculatedHeight = maxHeight;\n }\n }\n warn(calculatedWidth > 0 || calculatedHeight > 0, \"The width(%s) and height(%s) of chart should be greater than 0,\\n please check the style of container, or the props width(%s) and height(%s),\\n or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the\\n height and width.\", calculatedWidth, calculatedHeight, width, height, minWidth, minHeight, aspect);\n var isCharts = !Array.isArray(children) && getDisplayName(children.type).endsWith('Chart');\n return React.Children.map(children, function (child) {\n if ( /*#__PURE__*/React.isValidElement(child)) {\n return /*#__PURE__*/cloneElement(child, _objectSpread({\n width: calculatedWidth,\n height: calculatedHeight\n }, isCharts ? {\n style: _objectSpread({\n height: '100%',\n width: '100%',\n maxHeight: calculatedHeight,\n maxWidth: calculatedWidth\n }, child.props.style)\n } : {}));\n }\n return child;\n });\n }, [aspect, children, height, maxHeight, minHeight, minWidth, sizes, width]);\n return /*#__PURE__*/React.createElement(\"div\", {\n id: id ? \"\".concat(id) : undefined,\n className: clsx('recharts-responsive-container', className),\n style: _objectSpread(_objectSpread({}, style), {}, {\n width: width,\n height: height,\n minWidth: minWidth,\n minHeight: minHeight,\n maxHeight: maxHeight\n }),\n ref: containerRef\n }, chartContent);\n});","/**\n * @fileOverview Area Chart\n */\nimport { generateCategoricalChart } from './generateCategoricalChart';\nimport { Area } from '../cartesian/Area';\nimport { XAxis } from '../cartesian/XAxis';\nimport { YAxis } from '../cartesian/YAxis';\nimport { formatAxisMap } from '../util/CartesianUtils';\nexport var AreaChart = generateCategoricalChart({\n chartName: 'AreaChart',\n GraphicalChild: Area,\n axisComponents: [{\n axisType: 'xAxis',\n AxisComp: XAxis\n }, {\n axisType: 'yAxis',\n AxisComp: YAxis\n }],\n formatAxisMap: formatAxisMap\n});","// This file must be bundled in the app's client layer, it shouldn't be directly\n// imported by the server.\n\nexport { callServer } from 'next/dist/client/app-call-server'\nexport { findSourceMapURL } from 'next/dist/client/app-find-source-map-url'\n\n// A noop wrapper to let the Flight client create the server reference.\n// See also: https://github.com/facebook/react/pull/26632\n// eslint-disable-next-line import/no-extraneous-dependencies\nexport { createServerReference } from 'react-server-dom-webpack/client'\n","'use client';\nimport { DesignBadge } from \"@/components/design-components/badge\";\nimport { DesignCard } from \"@/components/design-components/card\";\nimport { Link } from \"@/components/link\";\nimport { ProjectUsersMetric } from \"@/components/project-users-metric\";\nimport { useFromNow } from '@/hooks/use-from-now';\nimport { FolderOpenIcon } from \"@phosphor-icons/react\";\nimport { AdminProject } from '@stackframe/stack';\nimport { urlString } from \"@stackframe/stack-shared/dist/utils/urls\";\n\nexport function ProjectCard(props: {\n project: AdminProject,\n href?: string,\n showIncompleteBadge?: boolean,\n totalUsers?: number,\n dailySignups?: { date: string, activity: number }[],\n metricsLoading?: boolean,\n metricsError?: boolean,\n}) {\n const createdAt = useFromNow(props.project.createdAt);\n const href = props.href ?? urlString`/projects/${props.project.id}`;\n\n return (\n <Link href={href}>\n <DesignCard\n className=\"h-full\"\n contentClassName=\"p-3\"\n gradient={props.showIncompleteBadge ? \"orange\" : \"default\"}\n glassmorphic\n >\n <div className=\"flex items-center gap-2.5\">\n <div className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-foreground/[0.06] ring-1 ring-black/[0.04] dark:ring-white/[0.04]\">\n <FolderOpenIcon className=\"h-4 w-4 text-foreground/70\" weight=\"duotone\" />\n </div>\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex items-baseline justify-between gap-2\">\n <h3 className=\"truncate text-sm font-semibold leading-tight tracking-tight text-foreground\">\n {props.project.displayName}\n </h3>\n {props.showIncompleteBadge ? (\n <DesignBadge label=\"Setup incomplete\" color=\"orange\" size=\"sm\" />\n ) : (\n <span className=\"shrink-0 text-[10px] text-muted-foreground/80 whitespace-nowrap\">\n {createdAt}\n </span>\n )}\n </div>\n <p className=\"truncate text-xs leading-snug text-muted-foreground\">\n {props.project.description || \"No description yet\"}\n </p>\n </div>\n </div>\n\n <div className=\"-mx-3 -mb-3 mt-3 overflow-hidden rounded-b-2xl border-t border-black/[0.08] dark:border-white/[0.06] px-3 pt-3 pb-3\">\n <ProjectUsersMetric\n totalUsers={props.totalUsers}\n data={props.dailySignups}\n loading={props.metricsLoading}\n error={props.metricsError}\n />\n </div>\n </DesignCard>\n </Link>\n );\n}\n","'use client';\n\nimport { Area, AreaChart, ResponsiveContainer, Tooltip, XAxis } from 'recharts';\nimport { useId } from 'react';\n\ntype DataPoint = { date: string, activity: number };\n\nconst CHART_HEIGHT = 56;\nconst EMPTY_BASELINE_COUNT = 30;\n\nfunction formatDay(iso: string): string {\n return new Date(iso).toLocaleDateString(undefined, { weekday: 'short', day: 'numeric' });\n}\n\nfunction EmptyBaseline({ count }: { count: number }) {\n return (\n <svg\n viewBox={`0 0 ${Math.max(count - 1, 1)} 10`}\n preserveAspectRatio=\"none\"\n className=\"absolute inset-x-0 bottom-0 h-5 w-full text-foreground/20\"\n aria-hidden=\"true\"\n >\n <line\n x1=\"0\"\n x2={Math.max(count - 1, 1)}\n y1=\"5\"\n y2=\"5\"\n stroke=\"currentColor\"\n strokeWidth=\"0.15\"\n strokeDasharray=\"0.4 0.6\"\n vectorEffect=\"non-scaling-stroke\"\n />\n </svg>\n );\n}\n\nexport function ProjectUsersMetric(props: {\n totalUsers: number | undefined,\n data: DataPoint[] | undefined,\n loading?: boolean,\n error?: boolean,\n}) {\n const totalUsers = props.totalUsers ?? 0;\n const data = props.data;\n const signupsTotal = data?.reduce((sum, d) => sum + d.activity, 0) ?? 0;\n const hasActivity = totalUsers > 0 || signupsTotal > 0;\n const gradId = useId().replace(/:/g, '');\n\n if (props.loading && props.totalUsers === undefined) {\n return (\n <div className=\"relative w-full\" style={{ height: CHART_HEIGHT }}>\n <div className=\"absolute left-0 top-0 z-10 flex items-baseline gap-1\">\n <span className=\"h-[18px] w-10 animate-pulse rounded bg-foreground/10\" aria-hidden=\"true\" />\n <span className=\"text-[9px] uppercase tracking-[0.14em] text-muted-foreground/60\">\n total users\n </span>\n </div>\n <EmptyBaseline count={EMPTY_BASELINE_COUNT} />\n </div>\n );\n }\n\n if (props.error && props.totalUsers === undefined) {\n return (\n <div className=\"relative w-full\" style={{ height: CHART_HEIGHT }}>\n <div className=\"absolute left-0 top-0 z-10 flex items-baseline gap-1\">\n <span className=\"text-lg font-semibold tabular-nums leading-none text-muted-foreground/50\">\n —\n </span>\n <span className=\"text-[9px] uppercase tracking-[0.14em] text-muted-foreground/60\">\n total users\n </span>\n </div>\n <span className=\"absolute right-0 top-0 text-[9px] uppercase tracking-[0.14em] text-destructive/80\">\n Failed to load\n </span>\n <EmptyBaseline count={EMPTY_BASELINE_COUNT} />\n </div>\n );\n }\n\n return (\n <div className=\"relative w-full\" style={{ height: CHART_HEIGHT }}>\n <div className=\"absolute left-0 top-0 z-10 flex items-baseline gap-1\">\n <span\n className={\n 'text-lg font-semibold tabular-nums leading-none ' +\n (hasActivity ? 'text-foreground' : 'text-muted-foreground/50')\n }\n >\n {totalUsers.toLocaleString()}\n </span>\n <span className=\"text-[9px] uppercase tracking-[0.14em] text-muted-foreground/60\">\n total users\n </span>\n <span className=\"text-[9px] uppercase tracking-[0.14em] text-muted-foreground/40 ml-1\">\n · 30d signups\n </span>\n </div>\n\n {hasActivity && data && data.length > 0 ? (\n <div className=\"absolute inset-0 text-foreground/80\">\n <ResponsiveContainer width=\"100%\" height=\"100%\">\n <AreaChart data={data} margin={{ top: 22, right: 0, left: 0, bottom: 0 }}>\n <XAxis dataKey=\"date\" hide />\n <defs>\n <linearGradient id={`signups-fill-${gradId}`} x1=\"0\" y1=\"0\" x2=\"0\" y2=\"1\">\n <stop offset=\"0%\" stopColor=\"currentColor\" stopOpacity={0.28} />\n <stop offset=\"100%\" stopColor=\"currentColor\" stopOpacity={0} />\n </linearGradient>\n </defs>\n <Tooltip\n cursor={{ stroke: 'currentColor', strokeOpacity: 0.2, strokeDasharray: '2 3' }}\n contentStyle={{\n background: 'hsl(var(--background))',\n border: '1px solid hsl(var(--border))',\n borderRadius: 6,\n fontSize: 11,\n padding: '4px 8px',\n boxShadow: '0 6px 20px -10px rgb(0 0 0 / 0.3)',\n }}\n labelStyle={{ color: 'hsl(var(--muted-foreground))', marginBottom: 1, fontSize: 10 }}\n itemStyle={{ color: 'hsl(var(--foreground))', padding: 0 }}\n labelFormatter={(label: string) => formatDay(label)}\n formatter={(value: number) => [value.toLocaleString(), 'new signups']}\n />\n <Area\n type=\"monotone\"\n dataKey=\"activity\"\n stroke=\"currentColor\"\n strokeWidth={1.5}\n fill={`url(#signups-fill-${gradId})`}\n isAnimationActive={false}\n activeDot={{ r: 2.5, strokeWidth: 0, fill: 'currentColor' }}\n />\n </AreaChart>\n </ResponsiveContainer>\n </div>\n ) : (\n <EmptyBaseline count={data?.length ?? EMPTY_BASELINE_COUNT} />\n )}\n </div>\n );\n}\n","'use client';\n\nimport { ProjectCard } from \"@/components/project-card\";\nimport { useRouter } from \"@/components/router\";\nimport { SearchBar } from \"@/components/search-bar\";\nimport { Button, Dialog, DialogContent, DialogFooter, DialogHeader, DialogTitle, Input, Select, SelectContent, SelectGroup, SelectItem, SelectTrigger, SelectValue, Skeleton, Typography, toast } from \"@/components/ui\";\nimport { getPublicEnvVar } from \"@/lib/env\";\nimport { stackAppInternalsSymbol } from \"@/lib/stack-app-internals\";\nimport { GearIcon } from \"@phosphor-icons/react\";\nimport { AdminOwnedProject, Team, useStackApp, useUser } from \"@stackframe/stack\";\nimport { isPaidPlan } from \"@stackframe/stack-shared/dist/plans\";\nimport { projectOnboardingStatusValues, strictEmailSchema, yupObject, type ProjectOnboardingStatus } from \"@stackframe/stack-shared/dist/schema-fields\";\nimport { groupBy } from \"@stackframe/stack-shared/dist/utils/arrays\";\nimport { captureError, throwErr } from \"@stackframe/stack-shared/dist/utils/errors\";\nimport { runAsynchronously, runAsynchronouslyWithAlert, wait } from \"@stackframe/stack-shared/dist/utils/promises\";\nimport { useQueryState } from \"@stackframe/stack-shared/dist/utils/react\";\nimport { stringCompare } from \"@stackframe/stack-shared/dist/utils/strings\";\nimport { Suspense, useCallback, useEffect, useMemo, useState } from \"react\";\nimport * as yup from \"yup\";\nimport { inviteUser, listInvitations, revokeInvitation } from \"./actions\";\nimport Footer from \"./footer\";\nimport PreviewProjectRedirect from \"./preview-project-redirect\";\n\ntype StackAppInternals = {\n sendRequest: (path: string, requestOptions: RequestInit, requestType?: \"client\" | \"server\" | \"admin\") => Promise<Response>,\n refreshOwnedProjects: () => Promise<void>,\n};\n\nconst PROJECT_ONBOARDING_STATUSES = projectOnboardingStatusValues;\n\nfunction isStackAppInternals(value: unknown): value is StackAppInternals {\n return (\n value != null &&\n typeof value === \"object\" &&\n \"sendRequest\" in value &&\n typeof value.sendRequest === \"function\" &&\n \"refreshOwnedProjects\" in value &&\n typeof value.refreshOwnedProjects === \"function\"\n );\n}\n\nfunction getStackAppInternals(appValue: unknown): StackAppInternals {\n if (appValue == null || typeof appValue !== \"object\") {\n throw new Error(\"The Stack app instance is unavailable.\");\n }\n\n const internals = Reflect.get(appValue, stackAppInternalsSymbol);\n if (!isStackAppInternals(internals)) {\n throw new Error(\"The Stack client app cannot send internal requests.\");\n }\n\n return internals;\n}\n\nfunction isProjectOnboardingStatus(value: unknown): value is ProjectOnboardingStatus {\n return typeof value === \"string\" && PROJECT_ONBOARDING_STATUSES.some((status) => status === value);\n}\n\nexport default function PageClient() {\n const isPreview = getPublicEnvVar(\"NEXT_PUBLIC_STACK_IS_PREVIEW\") === \"true\";\n\n return (\n <>\n <DottedBackground />\n {isPreview ? <PreviewProjectRedirect /> : <ProjectsListPage />}\n <Footer />\n </>\n );\n}\n\nfunction DottedBackground() {\n return (\n <div\n inert\n style={{\n position: 'absolute',\n inset: 0,\n background: 'radial-gradient(circle, rgba(127, 127, 127, 0.15) 1px, transparent 1px)',\n backgroundSize: '10px 10px',\n }}\n />\n );\n}\n\nfunction ProjectsListPage() {\n const app = useStackApp();\n const appInternals = useMemo(() => getStackAppInternals(app), [app]);\n const isLocalEmulator = getPublicEnvVar(\"NEXT_PUBLIC_STACK_IS_LOCAL_EMULATOR\") === \"true\";\n const isRemoteDevelopmentEnvironment = getPublicEnvVar(\"NEXT_PUBLIC_STACK_IS_REMOTE_DEVELOPMENT_ENVIRONMENT\") === \"true\";\n const user = useUser({\n or: isRemoteDevelopmentEnvironment ? \"anonymous-if-exists[deprecated]\" : \"redirect\",\n projectIdMustMatch: \"internal\",\n }) ?? throwErr(\"Projects page expected a user because useUser was called with an explicit required user mode.\");\n const rawProjects = user.useOwnedProjects();\n const teams = user.useTeams();\n const [sort, setSort] = useState<\"recency\" | \"name\">(\"recency\");\n const [search, setSearch] = useState<string>(\"\");\n const [openConfigFileDialog, setOpenConfigFileDialog] = useState(false);\n const [absoluteConfigFilePath, setAbsoluteConfigFilePath] = useState(\"\");\n const [openingConfigFile, setOpeningConfigFile] = useState(false);\n const [recentConfigProjects, setRecentConfigProjects] = useState<Array<{ project_id: string, absolute_file_path: string, display_name: string }>>([]);\n const [recentConfigProjectsError, setRecentConfigProjectsError] = useState(false);\n const [projectStatuses, setProjectStatuses] = useState<Map<string, ProjectOnboardingStatus>>(new Map());\n const [loadingProjectStatuses, setLoadingProjectStatuses] = useState(true);\n const [projectTotalUsers, setProjectTotalUsers] = useState<Map<string, number>>(new Map());\n const [projectDailySignups, setProjectDailySignups] = useState<Map<string, { date: string, activity: number }[]>>(new Map());\n const [loadingProjectMetrics, setLoadingProjectMetrics] = useState(true);\n const [projectMetricsError, setProjectMetricsError] = useState(false);\n const router = useRouter();\n\n useEffect(() => {\n if (rawProjects.length === 0 && !isLocalEmulator && !isRemoteDevelopmentEnvironment) {\n router.push('/new-project');\n }\n }, [isLocalEmulator, isRemoteDevelopmentEnvironment, router, rawProjects]);\n\n useEffect(() => {\n let cancelled = false;\n runAsynchronouslyWithAlert(async () => {\n setLoadingProjectStatuses(true);\n try {\n const response = await appInternals.sendRequest(\"/internal/projects\", {}, \"client\");\n if (!response.ok) {\n throw new Error(`Failed to load projects: ${response.status} ${await response.text()}`);\n }\n\n const body = await response.json();\n if (body == null || typeof body !== \"object\" || !(\"items\" in body) || !Array.isArray(body.items)) {\n throw new Error(\"Project list endpoint returned an invalid response.\");\n }\n\n const statusMap = new Map<string, ProjectOnboardingStatus>();\n for (const item of body.items) {\n if (item == null || typeof item !== \"object\" || !(\"id\" in item) || typeof item.id !== \"string\") {\n continue;\n }\n\n const onboardingStatus = \"onboarding_status\" in item ? item.onboarding_status : undefined;\n if (!isProjectOnboardingStatus(onboardingStatus)) {\n throw new Error(`Project ${item.id} returned an invalid onboarding status.`);\n }\n statusMap.set(item.id, onboardingStatus);\n }\n\n if (!cancelled) {\n setProjectStatuses(statusMap);\n }\n } finally {\n if (!cancelled) {\n setLoadingProjectStatuses(false);\n }\n }\n });\n\n return () => {\n cancelled = true;\n };\n }, [appInternals, rawProjects.length]);\n\n useEffect(() => {\n let cancelled = false;\n runAsynchronously(async () => {\n if (!cancelled) {\n setLoadingProjectMetrics(true);\n setProjectMetricsError(false);\n }\n try {\n const response = await appInternals.sendRequest(\"/internal/projects-metrics\", {}, \"client\");\n if (!response.ok) {\n throw new Error(`Failed to load project metrics: ${response.status} ${await response.text()}`);\n }\n const body = await response.json();\n if (\n body == null ||\n typeof body !== \"object\" ||\n !(\"projects\" in body) ||\n body.projects == null ||\n typeof body.projects !== \"object\" ||\n Array.isArray(body.projects)\n ) {\n throw new Error(\"Failed to load project metrics: response body did not include a projects object.\");\n }\n const totalUsersMap = new Map<string, number>();\n const dailySignupsMap = new Map<string, { date: string, activity: number }[]>();\n for (const [projectId, value] of Object.entries(body.projects)) {\n if (value == null || typeof value !== \"object\") {\n continue;\n }\n const totalUsers = \"total_users\" in value ? value.total_users : undefined;\n if (typeof totalUsers === \"number\") {\n totalUsersMap.set(projectId, totalUsers);\n }\n const dailySignups = \"daily_signups\" in value ? value.daily_signups : undefined;\n if (!Array.isArray(dailySignups)) {\n continue;\n }\n const points: { date: string, activity: number }[] = [];\n for (const point of dailySignups) {\n if (point != null && typeof point === \"object\" && \"date\" in point && \"activity\" in point) {\n const date = point.date;\n const activity = point.activity;\n if (typeof date === \"string\" && typeof activity === \"number\") {\n points.push({ date, activity });\n }\n }\n }\n dailySignupsMap.set(projectId, points);\n }\n\n if (!cancelled) {\n setProjectTotalUsers(totalUsersMap);\n setProjectDailySignups(dailySignupsMap);\n }\n } catch (error) {\n if (cancelled) return;\n setProjectMetricsError(true);\n captureError(\"projects-page-load-metrics\", error);\n } finally {\n if (!cancelled) {\n setLoadingProjectMetrics(false);\n }\n }\n });\n return () => {\n cancelled = true;\n };\n }, [appInternals, rawProjects.length]);\n\n useEffect(() => {\n if (!openConfigFileDialog || !isLocalEmulator) return;\n let cancelled = false;\n setRecentConfigProjectsError(false);\n runAsynchronously(async () => {\n try {\n const response = await appInternals.sendRequest(\"/internal/local-emulator/project\", { method: \"GET\" }, \"client\");\n if (!response.ok) {\n if (!cancelled) {\n setRecentConfigProjects([]);\n setRecentConfigProjectsError(true);\n }\n return;\n }\n const body = await response.json() as { projects?: unknown };\n if (cancelled) return;\n if (!Array.isArray(body.projects)) {\n throw new Error(\"Invalid recent-projects payload\");\n }\n const parsed = body.projects.map((p: unknown): { project_id: string, absolute_file_path: string, display_name: string } => {\n if (\n !p || typeof p !== \"object\"\n || typeof (p as Record<string, unknown>).project_id !== \"string\"\n || typeof (p as Record<string, unknown>).absolute_file_path !== \"string\"\n || typeof (p as Record<string, unknown>).display_name !== \"string\"\n ) {\n throw new Error(\"Invalid recent-projects payload\");\n }\n const r = p as Record<string, string>;\n return { project_id: r.project_id, absolute_file_path: r.absolute_file_path, display_name: r.display_name };\n });\n setRecentConfigProjects(parsed);\n } catch {\n if (!cancelled) {\n setRecentConfigProjects([]);\n setRecentConfigProjectsError(true);\n }\n }\n });\n return () => {\n cancelled = true;\n };\n }, [openConfigFileDialog, isLocalEmulator, appInternals]);\n\n const pathCopyTip = useMemo(() => {\n const p = typeof navigator !== \"undefined\" ? navigator.platform : \"\";\n if (/Mac|iPhone|iPad|iPod/i.test(p)) {\n return \"Tip: in Finder, right-click the file → hold ⌥ Option → Copy as Pathname, then paste here.\";\n }\n if (/Win/i.test(p)) {\n return \"Note: the emulator runs in a Linux VM and needs a POSIX path. From WSL, run `wslpath -a stack.config.ts` (or `realpath stack.config.ts`) and paste that here.\";\n }\n return \"Tip: from your project folder, run `realpath stack.config.ts` in a terminal.\";\n }, []);\n\n const handleOpenConfigFile = async () => {\n const trimmedPath = absoluteConfigFilePath.trim();\n if (trimmedPath.length === 0) {\n toast({ description: \"Please enter a path to your project or stack.config.ts.\", variant: \"destructive\" });\n return;\n }\n\n if (!trimmedPath.startsWith(\"/\")) {\n const looksWindows = /^[a-zA-Z]:[\\\\/]/.test(trimmedPath) || trimmedPath.startsWith(\"\\\\\\\\\");\n toast({\n description: looksWindows\n ? \"The local emulator runs in a Linux VM and only accepts POSIX paths (e.g. /Users/you/project). Windows paths aren't supported — use WSL or the in-VM path.\"\n : \"The path must be absolute (e.g. /Users/you/project or /Users/you/project/stack.config.ts).\",\n variant: \"destructive\",\n });\n return;\n }\n\n setOpeningConfigFile(true);\n try {\n const response = await appInternals.sendRequest(\n \"/internal/local-emulator/project\",\n {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({\n absolute_file_path: trimmedPath,\n }),\n },\n \"client\",\n );\n const responseBody = await response.json();\n\n if (!response.ok) {\n let message = \"Couldn't open that path. Make sure it points to your project folder or a valid stack.config.ts.\";\n if (typeof responseBody === \"string\" && responseBody.length > 0) {\n message = responseBody;\n } else if (\n responseBody != null &&\n typeof responseBody === \"object\" &&\n \"error\" in responseBody &&\n typeof responseBody.error === \"string\" &&\n responseBody.error.length > 0\n ) {\n message = responseBody.error;\n }\n toast({ description: message, variant: \"destructive\" });\n return;\n }\n\n if (\n responseBody == null ||\n typeof responseBody !== \"object\" ||\n !(\"project_id\" in responseBody) ||\n typeof responseBody.project_id !== \"string\"\n ) {\n toast({ description: \"Local emulator endpoint returned an invalid response.\", variant: \"destructive\" });\n return;\n }\n const onboardingStatus = \"onboarding_status\" in responseBody\n ? responseBody.onboarding_status\n : undefined;\n if (!isProjectOnboardingStatus(onboardingStatus)) {\n throw new Error(\"Local emulator endpoint returned an invalid onboarding status.\");\n }\n\n setOpenConfigFileDialog(false);\n setAbsoluteConfigFilePath(\"\");\n setProjectStatuses((previous) => {\n const next = new Map(previous);\n next.set(responseBody.project_id, onboardingStatus);\n return next;\n });\n await appInternals.refreshOwnedProjects();\n if (onboardingStatus === \"completed\") {\n router.push(`/projects/${encodeURIComponent(responseBody.project_id)}`);\n } else {\n router.push(`/new-project?project_id=${encodeURIComponent(responseBody.project_id)}`);\n }\n await wait(2000);\n } catch (e) {\n toast({\n description: e instanceof Error ? e.message : \"Something went wrong opening that project.\",\n variant: \"destructive\",\n });\n } finally {\n setOpeningConfigFile(false);\n }\n };\n\n const teamIdMap = useMemo(() => {\n return new Map(teams.map((team) => [team.id, team.displayName]));\n }, [teams]);\n\n const projectsByTeam = useMemo(() => {\n let newProjects = [...rawProjects];\n if (search) {\n newProjects = newProjects.filter((project) => project.displayName.toLowerCase().includes(search.toLowerCase()));\n }\n\n const projectSort = (a: AdminOwnedProject, b: AdminOwnedProject) => {\n if (sort === \"recency\") {\n return a.createdAt > b.createdAt ? -1 : 1;\n } else {\n return stringCompare(a.displayName, b.displayName);\n }\n };\n\n const grouped = groupBy(newProjects, (project) => project.ownerTeamId);\n return [...grouped.entries()].sort((a, b) => {\n if (a[0] === null) return -1;\n if (b[0] === null) return 1;\n if (sort === \"recency\") {\n return a[1][0].createdAt > b[1][0].createdAt ? -1 : 1;\n } else {\n return stringCompare(a[1][0].displayName, b[1][0].displayName);\n }\n }).map(([teamId, projects]) => {\n return {\n teamId,\n projects: projects.sort(projectSort),\n };\n });\n }, [rawProjects, sort, search]);\n\n return (\n <div className=\"flex-grow p-4\">\n <div className=\"flex justify-between gap-4 mb-4 flex-col sm:flex-row\">\n <SearchBar\n placeholder=\"Search project name\"\n value={search}\n onChange={(e) => setSearch(e.target.value)}\n />\n <div className=\"flex gap-4\">\n <Select value={sort} onValueChange={(n) => setSort(n === 'recency' ? 'recency' : 'name')}>\n <SelectTrigger>\n <SelectValue>Sort by {sort === \"recency\" ? \"recency\" : \"name\"}</SelectValue>\n </SelectTrigger>\n <SelectContent>\n <SelectGroup>\n <SelectItem value=\"recency\">Recency</SelectItem>\n <SelectItem value=\"name\">Name</SelectItem>\n </SelectGroup>\n </SelectContent>\n </Select>\n\n {!isRemoteDevelopmentEnvironment && (\n <Button\n className=\"rounded-xl\"\n onClick={async () => {\n if (isLocalEmulator) {\n setOpenConfigFileDialog(true);\n return;\n }\n router.push(\"/new-project\");\n return await wait(2000);\n }}\n >{isLocalEmulator ? \"Open a project\" : \"Create Project\"}\n </Button>\n )}\n </div>\n </div>\n\n <Dialog\n open={openConfigFileDialog}\n onOpenChange={(open) => {\n setOpenConfigFileDialog(open);\n if (!open) {\n setAbsoluteConfigFilePath(\"\");\n }\n }}\n >\n <DialogContent className=\"sm:max-w-[520px]\">\n <DialogHeader>\n <DialogTitle>Open your Stack Auth project</DialogTitle>\n </DialogHeader>\n <div className=\"space-y-3\">\n <Typography variant=\"secondary\">\n Point the local dashboard at the <code>stack.config.ts</code> in your project. If you just ran <code>stack init</code>, it was created at the root of that project.\n </Typography>\n <Typography variant=\"secondary\" className=\"text-xs\">\n Don't have one yet? Paste your project folder path instead and we'll create <code>stack.config.ts</code> for you.\n </Typography>\n {recentConfigProjects.length > 0 && (\n <div className=\"space-y-1\">\n <Typography variant=\"secondary\" className=\"text-xs uppercase tracking-wide\">Recent</Typography>\n <div className=\"max-h-40 overflow-y-auto rounded-md border\">\n {recentConfigProjects.map((p) => (\n <button\n key={p.project_id}\n type=\"button\"\n className=\"block w-full truncate px-3 py-2 text-left text-sm hover:bg-muted\"\n onClick={() => setAbsoluteConfigFilePath(p.absolute_file_path)}\n title={p.absolute_file_path}\n >\n {p.absolute_file_path}\n </button>\n ))}\n </div>\n </div>\n )}\n {recentConfigProjectsError && recentConfigProjects.length === 0 && (\n <Typography variant=\"secondary\" className=\"text-xs text-destructive\">\n Couldn't load recent projects. Paste a path below to continue.\n </Typography>\n )}\n <Input\n autoFocus\n placeholder=\"/Users/you/project/stack.config.ts\"\n value={absoluteConfigFilePath}\n onChange={(event) => setAbsoluteConfigFilePath(event.target.value)}\n />\n <Typography variant=\"secondary\" className=\"text-xs\">\n {pathCopyTip}\n </Typography>\n </div>\n <DialogFooter className=\"pt-2\">\n <Button variant=\"outline\" onClick={() => setOpenConfigFileDialog(false)} disabled={openingConfigFile}>\n Cancel\n </Button>\n <Button\n onClick={handleOpenConfigFile}\n loading={openingConfigFile}\n disabled={absoluteConfigFilePath.trim().length === 0}\n >\n Open project\n </Button>\n </DialogFooter>\n </DialogContent>\n </Dialog>\n\n {projectsByTeam.map(({ teamId, projects }) => {\n const team = teamId ? teams.find((t) => t.id === teamId) : undefined;\n return (\n <div key={teamId} className=\"mb-4\">\n <div className=\"mb-2 flex items-center gap-1\">\n <Typography>\n {teamId ? teamIdMap.get(teamId) : \"No Team\"}\n </Typography>\n {team && (\n <TeamAddUserDialog team={team} />\n )}\n </div>\n <div className=\"grid gap-4 grid-cols-1 sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-4 bg\">\n {projects.map((project) => {\n const onboardingStatus = projectStatuses.get(project.id);\n if (!loadingProjectStatuses && onboardingStatus == null) {\n throw new Error(`Missing onboarding status for project ${project.id}.`);\n }\n const projectHref = onboardingStatus === \"completed\"\n ? `/projects/${encodeURIComponent(project.id)}`\n : `/new-project?project_id=${encodeURIComponent(project.id)}`;\n\n return (\n <ProjectCard\n key={project.id}\n project={project}\n href={projectHref}\n showIncompleteBadge={!loadingProjectStatuses && onboardingStatus !== \"completed\"}\n totalUsers={projectTotalUsers.get(project.id)}\n dailySignups={projectDailySignups.get(project.id)}\n metricsLoading={loadingProjectMetrics}\n metricsError={projectMetricsError}\n />\n );\n })}\n </div>\n </div>\n );\n })}\n </div>\n );\n}\n\nconst inviteFormSchema = yupObject({\n email: strictEmailSchema(\"Please enter a valid email address\").defined(),\n});\n\n\nfunction TeamAddUserDialog(props: { team: Team }) {\n const [teamSettingsId, setTeamSettingsId] = useQueryState(\"team_settings\");\n\n const open = teamSettingsId === props.team.id;\n const setOpen = (isOpen: boolean) => {\n if (isOpen) {\n setTeamSettingsId(props.team.id);\n } else {\n setTeamSettingsId(null);\n }\n };\n\n return (\n <>\n <Button\n variant=\"ghost\"\n size=\"icon\"\n aria-label={`Invite teammates to ${props.team.displayName}`}\n title={`Invite teammates to ${props.team.displayName}`}\n onClick={() => setOpen(true)}\n >\n <GearIcon className=\"h-4 w-4\" />\n </Button>\n\n <Dialog open={open} onOpenChange={setOpen}>\n <DialogContent className=\"sm:max-w-[480px]\">\n <DialogHeader>\n <DialogTitle>Invite a new user to {props.team.displayName}</DialogTitle>\n </DialogHeader>\n <Suspense fallback={<TeamAddUserDialogContentSkeleton />}>\n <TeamAddUserDialogContent\n team={props.team}\n onClose={() => setOpen(false)}\n />\n </Suspense>\n </DialogContent>\n </Dialog>\n </>\n );\n}\n\nfunction TeamAddUserDialogContent(props: {\n team: Team,\n onClose: () => void,\n}) {\n const [invitations, setInvitations] = useState<Awaited<ReturnType<typeof listInvitations>>>();\n const [invitationsError, setInvitationsError] = useState<string | null>(null);\n\n const fetchInvitations = useCallback(async () => {\n setInvitationsError(null);\n try {\n const invitations = await listInvitations(props.team.id);\n setInvitations(invitations);\n } catch (error) {\n setInvitationsError(\"Failed to load invitations. Please try again.\");\n }\n }, [props.team.id]);\n\n useEffect(() => {\n let canceled = false;\n runAsynchronously(async () => {\n try {\n const invitations = await listInvitations(props.team.id);\n if (!canceled) {\n setInvitations(invitations);\n }\n } catch (error) {\n if (!canceled) {\n setInvitationsError(\"Failed to load invitations. Please try again.\");\n }\n }\n });\n return () => {\n canceled = true;\n };\n }, [props.team.id]);\n\n const users = props.team.useUsers();\n const admins = props.team.useItem(\"dashboard_admins\");\n const products = props.team.useProducts();\n const hasPaidPlan = isPaidPlan(products);\n\n const [email, setEmail] = useState(\"\");\n const [formError, setFormError] = useState<string | null>(null);\n\n const invitationsLoaded = invitations != null;\n const activeSeats = users.length + (invitations?.length ?? 0);\n const seatLimit = admins.quantity;\n const atCapacity = invitationsLoaded && activeSeats >= seatLimit;\n\n const handleInvite = async () => {\n if (!invitationsLoaded || atCapacity) {\n return;\n }\n\n try {\n setFormError(null);\n const values = await inviteFormSchema.validate({ email: email.trim() });\n await inviteUser(props.team.id, values.email, window.location.origin);\n toast({ variant: \"success\", title: \"Team invitation sent\" });\n setEmail(\"\");\n await fetchInvitations();\n } catch (error) {\n if (error instanceof yup.ValidationError) {\n setFormError(error.errors[0] ?? error.message);\n } else {\n const message = error instanceof Error ? error.message : \"Unknown error\";\n toast({ variant: \"destructive\", title: \"Failed to send invitation\", description: message });\n }\n }\n };\n\n const handleAddSeat = async () => {\n const checkoutUrl = await props.team.createCheckoutUrl({\n productId: \"extra-seats\",\n returnUrl: window.location.href,\n });\n window.location.assign(checkoutUrl);\n };\n\n const handleUpgrade = async () => {\n const checkoutUrl = await props.team.createCheckoutUrl({\n productId: \"team\",\n returnUrl: window.location.href,\n });\n window.location.assign(checkoutUrl);\n };\n\n return (\n <>\n <div className=\"space-y-4 py-2\">\n <div className=\"flex items-center justify-between rounded-md border border-border px-3 py-2\">\n <Typography type=\"label\">Dashboard admin seats</Typography>\n {invitationsLoaded ? (\n <Typography variant=\"secondary\">\n {activeSeats}/{seatLimit}\n </Typography>\n ) : (\n <Skeleton className=\"h-4 w-12\" />\n )}\n </div>\n {atCapacity && (\n <Typography variant=\"secondary\" className=\"text-destructive\">\n {hasPaidPlan\n ? \"You are at capacity. Add an extra seat for $29/month.\"\n : \"You are at capacity. Upgrade your plan to add more admins.\"}\n </Typography>\n )}\n <div className=\"space-y-2\">\n <Input\n value={email}\n onChange={(event) => {\n setEmail(event.target.value);\n if (formError) {\n setFormError(null);\n }\n }}\n placeholder=\"Email\"\n type=\"email\"\n disabled={(!invitationsLoaded && !invitationsError) || atCapacity}\n autoFocus\n />\n {formError && (\n <Typography type=\"label\" className=\"text-destructive\">\n {formError}\n </Typography>\n )}\n </div>\n\n <div className=\"space-y-2\">\n <Typography type=\"label\">Pending invitations</Typography>\n {invitationsError ? (\n <div className=\"flex items-center justify-between rounded-md border border-destructive/50 bg-destructive/5 px-3 py-2\">\n <Typography variant=\"secondary\" className=\"text-destructive text-sm\">\n {invitationsError}\n </Typography>\n <Button\n variant=\"ghost\"\n size=\"sm\"\n onClick={fetchInvitations}\n >\n Retry\n </Button>\n </div>\n ) : invitations?.length === 0 ? (\n <Typography variant=\"secondary\">None</Typography>\n ) : (\n <div className=\"space-y-2 max-h-48 overflow-y-auto\">\n {invitations?.map((invitation) => (\n <div\n key={invitation.id}\n className=\"flex items-center justify-between rounded-md border border-border px-3 py-2\"\n >\n <div className=\"flex flex-col\">\n <Typography>{invitation.recipientEmail ?? \"Pending invitation\"}</Typography>\n </div>\n <Button\n variant=\"ghost\"\n size=\"sm\"\n onClick={async () => {\n await revokeInvitation(props.team.id, invitation.id);\n await fetchInvitations();\n }}\n >\n Revoke\n </Button>\n </div>\n ))}\n {!invitations && (\n <Skeleton className=\"h-8 w-full\" />\n )}\n </div>\n )}\n </div>\n </div>\n\n <DialogFooter className=\"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-end\">\n <Button variant=\"outline\" onClick={props.onClose}>\n Close\n </Button>\n {atCapacity ? (\n hasPaidPlan ? (\n <Button onClick={handleAddSeat} variant=\"default\">\n Add seat ($29/mo)\n </Button>\n ) : (\n <Button onClick={handleUpgrade} variant=\"default\">\n Upgrade plan\n </Button>\n )\n ) : (\n <Button onClick={handleInvite} disabled={!invitationsLoaded && !invitationsError}>\n Invite\n </Button>\n )}\n </DialogFooter>\n </>\n );\n}\n\nfunction TeamAddUserDialogContentSkeleton() {\n return (\n <>\n <div className=\"space-y-4 py-2\">\n <div className=\"flex items-center justify-between rounded-md border border-border px-3 py-2\">\n <Typography type=\"label\">Dashboard admin seats</Typography>\n <div className=\"stack-scope text-md text-zinc-600 dark:text-zinc-400\">\n <Skeleton className=\"h-4 w-16\" />\n </div>\n </div>\n\n <div className=\"space-y-2\">\n <Input\n disabled\n placeholder=\"Email\"\n type=\"email\"\n autoFocus\n />\n </div>\n\n <div className=\"space-y-2\">\n <Typography type=\"label\">Pending invitations</Typography>\n <Skeleton className=\"h-8 w-full\" />\n </div>\n </div>\n\n <DialogFooter className=\"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-end\">\n <Button variant=\"outline\" disabled>\n Close\n </Button>\n <Button disabled>\n Invite\n </Button>\n </DialogFooter>\n </>\n );\n}\n","import React from \"react\";\n\nimport { Input } from \"@/components/ui\";\nimport { MagnifyingGlassIcon } from \"@phosphor-icons/react\";\nimport { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\n\nexport const SearchBar = forwardRefIfNeeded<\n HTMLInputElement,\n React.ComponentProps<typeof Input>\n>((props, ref) => (\n <div className=\"relative\">\n <Input ref={ref} className=\"pl-8\" {...props} />\n <MagnifyingGlassIcon className=\"absolute left-2 top-2.5 h-4 w-4 text-muted-foreground\" />\n </div>\n));\n\nSearchBar.displayName = \"SearchBar\";\n","/* __next_internal_action_entry_do_not_use__ [{\"7090a35bb11e8cabb88a922565ec253262d358812b\":\"inviteUser\"},\"apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/actions.ts\",\"\"] */\"use turbopack no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_2=/*#__PURE__*/createServerReference(\"7090a35bb11e8cabb88a922565ec253262d358812b\",callServer,void 0,findSourceMapURL,\"inviteUser\");export{$$RSC_SERVER_ACTION_2 as inviteUser};","/* __next_internal_action_entry_do_not_use__ [{\"40526c31e4ca4952264a6408631268c2e915cbc59e\":\"listInvitations\"},\"apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/actions.ts\",\"\"] */\"use turbopack no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_1=/*#__PURE__*/createServerReference(\"40526c31e4ca4952264a6408631268c2e915cbc59e\",callServer,void 0,findSourceMapURL,\"listInvitations\");export{$$RSC_SERVER_ACTION_1 as listInvitations};","/* __next_internal_action_entry_do_not_use__ [{\"604f3ff77efbad5c738e1cee16c9a85ba7e491632b\":\"revokeInvitation\"},\"apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/actions.ts\",\"\"] */\"use turbopack no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_0=/*#__PURE__*/createServerReference(\"604f3ff77efbad5c738e1cee16c9a85ba7e491632b\",callServer,void 0,findSourceMapURL,\"revokeInvitation\");export{$$RSC_SERVER_ACTION_0 as revokeInvitation};","import { Link } from \"@/components/link\";\nimport { Separator, Typography } from \"@/components/ui\";\nimport { FaDiscord, FaGithub, FaLinkedin } from \"react-icons/fa\";\n\nexport default function Footer () {\n return (\n <footer>\n <Separator />\n\n <div className=\"flex flex-col md:flex-row p-4 gap-4 backdrop-blur-md bg-slate-200/20 dark:bg-black/20\">\n <div className=\"flex flex-col gap-4 md:flex-1\">\n <ul className=\"flex gap-4 flex-grow\">\n {[\n { href: \"https://discord.stack-auth.com/\", icon: FaDiscord },\n { href: \"https://www.linkedin.com/company/stackframe-inc\", icon: FaLinkedin },\n { href: \"https://github.com/hexclave/stack-auth\", icon: FaGithub },\n ].map(({ href, icon: Icon }) => (\n <li key={href}>\n <Link href={href}>\n <Icon size={20} className=\"text-gray-700 dark:text-gray-300\" />\n </Link>\n </li>\n ))}\n </ul>\n </div>\n\n <div className=\"flex gap-4 md:flex-1 md:justify-end flex-wrap\">\n {[\n { href: \"https://stack-auth.com\", label: \"Home\" },\n { href: \"https://www.iubenda.com/privacy-policy/19290387\", label: \"Privacy policy\" },\n { href: \"https://www.iubenda.com/privacy-policy/19290387/cookie-policy\", label: \"Cookie policy\" },\n { href: \"https://www.iubenda.com/terms-and-conditions/19290387\", label: \"Terms & conditions\" },\n ].map(({ href, label }) => (\n <Link key={label} href={href}>\n <Typography variant=\"secondary\" type='label'>{label}</Typography>\n </Link>\n ))}\n </div>\n </div>\n </footer>\n );\n}\n","'use client';\n\nimport Loading from \"@/app/loading\";\nimport { useRouter } from \"@/components/router\";\nimport { stackAppInternalsSymbol } from \"@/lib/stack-app-internals\";\nimport { useStackApp, useUser } from \"@stackframe/stack\";\nimport { StackAssertionError } from \"@stackframe/stack-shared/dist/utils/errors\";\nimport { runAsynchronouslyWithAlert } from \"@stackframe/stack-shared/dist/utils/promises\";\nimport { useEffect, useMemo, useRef } from \"react\";\n\nexport default function PreviewProjectRedirect() {\n const app = useStackApp();\n const user = useUser();\n const router = useRouter();\n const appInternals = useMemo(() => {\n const internals = Reflect.get(app as any, stackAppInternalsSymbol);\n if (\n !internals ||\n typeof internals.sendRequest !== \"function\" ||\n typeof internals.refreshOwnedProjects !== \"function\"\n ) {\n throw new Error(\"The Stack client app cannot send internal requests.\");\n }\n return internals as {\n sendRequest: (path: string, options: RequestInit, type: string) => Promise<Response>,\n refreshOwnedProjects: () => Promise<void>,\n };\n }, [app]);\n const creating = useRef(false);\n\n useEffect(() => {\n if (!user || creating.current) return;\n creating.current = true;\n\n runAsynchronouslyWithAlert(async () => {\n const response = await appInternals.sendRequest(\n \"/internal/preview/create-project\",\n { method: \"POST\" },\n \"client\",\n );\n\n if (!response.ok) {\n const text = await response.text();\n throw new StackAssertionError(`Failed to create preview project: ${response.status} ${text}`);\n }\n\n const body = await response.json();\n // Refresh the client-side owned-projects cache before navigating —\n // otherwise the [projectId] route's `useAdminApp` reads a stale list\n // that doesn't include the just-created project and calls `notFound()`.\n // (The normal create-project flow in page-client.tsx does the same.)\n await appInternals.refreshOwnedProjects();\n router.push(`/projects/${encodeURIComponent(body.project_id)}`);\n });\n }, [user, appInternals, router]);\n\n return <Loading />;\n}\n"],"names":["callServer","createServerReference","findSourceMapURL"],"mappings":"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","ignoreList":[0,1,6,7,8,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67]}
|
|
1
|
+
{"version":3,"sources":["turbopack:///[project]/node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@phosphor-icons/react/dist/csr/MagnifyingGlass.es.js","turbopack:///[project]/node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@phosphor-icons/react/dist/defs/MagnifyingGlass.es.js","turbopack:///[project]/packages/stack-ui/src/components/ui/card.tsx","turbopack:///[project]/packages/dashboard-ui-components/src/components/card.tsx","turbopack:///[project]/packages/dashboard-ui-components/src/components/badge.tsx","turbopack:///[project]/packages/stack-shared/src/utils/dates.tsx","turbopack:///[project]/node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@phosphor-icons/react/dist/csr/Gear.es.js","turbopack:///[project]/node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@phosphor-icons/react/dist/defs/Gear.es.js","turbopack:///[project]/node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@phosphor-icons/react/dist/csr/FolderOpen.es.js","turbopack:///[project]/node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@phosphor-icons/react/dist/defs/FolderOpen.es.js","turbopack:///[project]/packages/stack-shared/src/plans.ts","turbopack:///[project]/apps/dashboard/src/hooks/use-from-now.tsx","turbopack:///[project]/node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/extends.js","turbopack:///[project]/node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","turbopack:///[project]/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/lib/ReactPropTypesSecret.js","turbopack:///[project]/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/factoryWithThrowingShims.js","turbopack:///[project]/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/index.js","turbopack:///[project]/node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","turbopack:///[project]/node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","turbopack:///[project]/node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/range.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/init.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/ticks.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/ascending.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/descending.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/bisector.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/number.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/bisect.js","turbopack:///[project]/node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/define.js","turbopack:///[project]/node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/color.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/continuous.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/value.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/rgb.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/basis.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/basisClosed.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/constant.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/color.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/numberArray.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/array.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/date.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/number.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/object.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/string.js","turbopack:///[project]/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/round.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/constant.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/number.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/linear.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatDecimal.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/exponent.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatGroup.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatNumerals.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatSpecifier.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatTrim.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatPrefixAuto.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatRounded.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatTypes.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/identity.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/locale.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/defaultLocale.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/precisionFixed.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/precisionPrefix.js","turbopack:///[project]/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/precisionRound.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/tickFormat.js","turbopack:///[project]/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/max.js","turbopack:///[project]/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/quantize.js","turbopack:///[project]/node_modules/.pnpm/recharts@2.14.1_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/recharts/es6/component/ResponsiveContainer.js","turbopack:///[project]/node_modules/.pnpm/recharts@2.14.1_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/recharts/es6/chart/AreaChart.js","turbopack:///[project]/node_modules/.pnpm/next@16.1.7_@babel+core@7.29.0_@opentelemetry+api@1.9.0_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/next/src/build/webpack/loaders/next-flight-loader/action-client-wrapper.ts","turbopack:///[project]/apps/dashboard/src/components/project-card.tsx","turbopack:///[project]/apps/dashboard/src/components/project-users-metric.tsx","turbopack:///[project]/apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/page-client.tsx","turbopack:///[project]/apps/dashboard/src/components/search-bar.tsx","turbopack:///[project]/apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/data:46437b <text/javascript>","turbopack:///[project]/apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/data:1b7cd7 <text/javascript>","turbopack:///[project]/apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/data:f54285 <text/javascript>","turbopack:///[project]/apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/footer.tsx","turbopack:///[project]/apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/preview-project-redirect.tsx"],"sourcesContent":["import * as a from \"react\";\nimport i from \"../lib/IconBase.es.js\";\nimport e from \"../defs/MagnifyingGlass.es.js\";\nconst o = a.forwardRef((s, n) => /* @__PURE__ */ a.createElement(i, { ref: n, ...s, weights: e }));\no.displayName = \"MagnifyingGlassIcon\";\nconst f = o;\nexport {\n f as MagnifyingGlass,\n o as MagnifyingGlassIcon\n};\n","import * as e from \"react\";\nconst a = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M232.49,215.51,185,168a92.12,92.12,0,1,0-17,17l47.53,47.54a12,12,0,0,0,17-17ZM44,112a68,68,0,1,1,68,68A68.07,68.07,0,0,1,44,112Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M192,112a80,80,0,1,1-80-80A80,80,0,0,1,192,112Z\", opacity: \"0.2\" }), /* @__PURE__ */ e.createElement(\"path\", { d: \"M229.66,218.34,179.6,168.28a88.21,88.21,0,1,0-11.32,11.31l50.06,50.07a8,8,0,0,0,11.32-11.32ZM40,112a72,72,0,1,1,72,72A72.08,72.08,0,0,1,40,112Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M168,112a56,56,0,1,1-56-56A56,56,0,0,1,168,112Zm61.66,117.66a8,8,0,0,1-11.32,0l-50.06-50.07a88,88,0,1,1,11.32-11.31l50.06,50.06A8,8,0,0,1,229.66,229.66ZM112,184a72,72,0,1,0-72-72A72.08,72.08,0,0,0,112,184Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M228.24,219.76l-51.38-51.38a86.15,86.15,0,1,0-8.48,8.48l51.38,51.38a6,6,0,0,0,8.48-8.48ZM38,112a74,74,0,1,1,74,74A74.09,74.09,0,0,1,38,112Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M229.66,218.34l-50.07-50.06a88.11,88.11,0,1,0-11.31,11.31l50.06,50.07a8,8,0,0,0,11.32-11.32ZM40,112a72,72,0,1,1,72,72A72.08,72.08,0,0,1,40,112Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(\"path\", { d: \"M226.83,221.17l-52.7-52.7a84.1,84.1,0,1,0-5.66,5.66l52.7,52.7a4,4,0,0,0,5.66-5.66ZM36,112a76,76,0,1,1,76,76A76.08,76.08,0,0,1,36,112Z\" }))\n ]\n]);\nexport {\n a as default\n};\n","import { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst Card = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n \"rounded-xl border bg-card text-card-foreground shadow-sm\",\n className\n )}\n {...props}\n />\n));\nCard.displayName = \"Card\";\n\nconst CardHeader = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex flex-col space-y-1.5 p-6 pb-0\", className)}\n {...props}\n />\n));\nCardHeader.displayName = \"CardHeader\";\n\nconst CardTitle = forwardRefIfNeeded<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLHeadingElement>\n>(({ className, ...props }, ref) => (\n <h3\n ref={ref}\n className={cn(\"font-semibold leading-none tracking-tight capitalize\", className)}\n {...props}\n />\n));\nCardTitle.displayName = \"CardTitle\";\n\nconst CardDescription = forwardRefIfNeeded<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <p\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nCardDescription.displayName = \"CardDescription\";\n\nconst CardContent = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div ref={ref} className={cn(\"p-6\", className)} {...props} />\n));\nCardContent.displayName = \"CardContent\";\n\nconst CardSubtitle = forwardRefIfNeeded<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <h4\n ref={ref}\n className={cn(\"text-sm text-muted-foreground font-bold\", className)}\n {...props}\n />\n));\n\nconst CardFooter = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex items-center p-6 pt-0\", className)}\n {...props}\n />\n));\nCardFooter.displayName = \"CardFooter\";\n\nexport { Card, CardContent, CardDescription, CardFooter, CardHeader, CardSubtitle, CardTitle };\n\n","\"use client\";\n\nimport { Card } from \"@stackframe/stack-ui\";\nimport { cn } from \"@stackframe/stack-ui\";\nimport React from \"react\";\n\n// ─── Card nesting context ────────────────────────────────────────────────────\n// Components with a `glassmorphic` prop use this to auto-detect whether they\n// sit inside a DesignCard. When they do, glassmorphic defaults to `true`;\n// when they don't, it defaults to `false`.\n\nconst DesignCardNestingContext = React.createContext(false);\n\n/**\n * Returns `true` when the calling component is rendered inside a DesignCard.\n * Useful for deriving a glassmorphic default.\n */\nexport function useInsideDesignCard(): boolean {\n return React.useContext(DesignCardNestingContext);\n}\n\n/**\n * Resolve the effective glassmorphic value.\n * - If the caller passed an explicit boolean → honour it.\n * - Otherwise → fall back to whether we're inside a DesignCard.\n */\nexport function useGlassmorphicDefault(explicit: boolean | undefined): boolean {\n const insideCard = useInsideDesignCard();\n return explicit ?? insideCard;\n}\n\ntype DesignCardGradient = \"blue\" | \"cyan\" | \"purple\" | \"green\" | \"orange\" | \"default\";\n\nconst hoverTintClasses = new Map<DesignCardGradient, string>([\n [\"blue\", \"group-hover:bg-blue-500/[0.03]\"],\n [\"purple\", \"group-hover:bg-purple-500/[0.03]\"],\n [\"green\", \"group-hover:bg-emerald-500/[0.03]\"],\n [\"orange\", \"group-hover:bg-orange-500/[0.03]\"],\n [\"default\", \"group-hover:bg-slate-500/[0.02]\"],\n [\"cyan\", \"group-hover:bg-cyan-500/[0.03]\"],\n]);\n\nconst demoTintClasses = new Map<DesignCardGradient, string>([\n [\"blue\", \"group-hover/tint:bg-blue-500/[0.02]\"],\n [\"purple\", \"group-hover/tint:bg-purple-500/[0.02]\"],\n [\"green\", \"group-hover/tint:bg-emerald-500/[0.02]\"],\n [\"orange\", \"group-hover/tint:bg-orange-500/[0.02]\"],\n [\"default\", \"group-hover/tint:bg-slate-500/[0.015]\"],\n [\"cyan\", \"group-hover/tint:bg-cyan-500/[0.02]\"],\n]);\n\nconst bodyPaddingClass = \"p-5\";\n\n// ─── Discriminated props ──────────────────────────────────────────────────\n// - If title is given, icon is required.\n// - The layout is derived automatically:\n// title + subtitle → \"header\" (full header block with subtitle)\n// title only → \"compact\" (slim bar with border-b)\n// no title → \"bodyOnly\" (just the body)\n\ntype DesignCardBaseProps = {\n glassmorphic?: boolean,\n gradient?: DesignCardGradient,\n contentClassName?: string,\n} & Omit<React.ComponentProps<typeof Card>, \"title\">;\n\ntype WithTitleProps = {\n title: React.ReactNode,\n subtitle?: React.ReactNode,\n icon: React.ElementType,\n actions?: React.ReactNode,\n};\n\ntype WithoutTitleProps = {\n title?: never,\n subtitle?: never,\n icon?: never,\n actions?: never,\n};\n\nexport type DesignCardProps = DesignCardBaseProps & (WithTitleProps | WithoutTitleProps);\n\n/**\n * General-purpose card for grouping related content: section headers,\n * description blocks, chart-less panels, etc. If the content is a\n * big-number metric, use `DesignMetricCard` instead. If it contains a\n * chart, wrap it in `DesignChartCard`.\n *\n * Two shapes, picked automatically by the props you pass:\n *\n * ```tsx\n * // With a header (title requires icon):\n * <DesignCard title=\"Recent activity\" icon={ActivityIcon}>\n * ...body...\n * </DesignCard>\n *\n * // Body-only (no header):\n * <DesignCard>\n * <h2 className=\"text-2xl font-semibold\">Dashboard</h2>\n * <p className=\"text-muted-foreground\">Overview of your user base</p>\n * </DesignCard>\n * ```\n *\n * Rules:\n * - DO NOT add padding classes (`p-6`, `p-5`, etc.) to `className` — the\n * component already has built-in padding and extra padding will look wrong.\n * - If you set `title`, you MUST also set `icon`. The TS types enforce this,\n * but writing `title` without `icon` will fail.\n * - Body-only cards (no `title`) automatically go transparent in dark mode.\n */\nexport function DesignCard({\n title,\n subtitle,\n icon: Icon,\n actions,\n glassmorphic: glassmorphicProp,\n gradient = \"default\",\n children,\n className,\n contentClassName,\n ...props\n}: DesignCardProps) {\n const glassmorphic = glassmorphicProp ?? true;\n const hoverTintClass = hoverTintClasses.get(gradient) ?? \"group-hover:bg-slate-500/[0.02]\";\n const hasContent = React.Children.count(children) > 0;\n\n // Derive layout from which props were provided\n const variant = title != null\n ? (subtitle != null ? \"header\" : \"compact\")\n : \"bodyOnly\";\n\n return (\n <DesignCardNestingContext.Provider value={true}>\n <Card\n className={cn(\n \"group relative rounded-2xl overflow-hidden\",\n glassmorphic && [\n \"bg-white/90 dark:bg-background/60 dark:backdrop-blur-xl border-0 transition-all duration-150 hover:transition-none\",\n \"ring-1 ring-black/[0.06] hover:ring-black/[0.1] dark:ring-white/[0.06] dark:hover:ring-white/[0.1]\",\n \"shadow-none\",\n ],\n glassmorphic && variant === \"bodyOnly\" && \"dark:bg-transparent dark:ring-0 dark:shadow-none\",\n className\n )}\n {...props}\n >\n {glassmorphic && (\n <>\n <div className={cn(\n \"absolute inset-0 bg-gradient-to-br from-foreground/[0.04] dark:from-foreground/[0.02] to-transparent pointer-events-none rounded-2xl\",\n variant === \"bodyOnly\" && \"dark:hidden\"\n )} />\n {variant !== \"bodyOnly\" && (\n <div\n className={cn(\n \"absolute inset-0 transition-colors duration-150 group-hover:transition-none pointer-events-none rounded-2xl\",\n hoverTintClass\n )}\n />\n )}\n </>\n )}\n <div className=\"relative\">\n {variant === \"header\" && (\n <div className={bodyPaddingClass}>\n <div className=\"flex items-start justify-between gap-4\">\n <div className=\"flex-1 min-w-0\">\n <div className=\"flex items-center gap-2\">\n {Icon && (\n <div className=\"p-1.5 rounded-lg bg-foreground/[0.06] dark:bg-foreground/[0.04]\">\n <Icon className=\"h-3.5 w-3.5 text-foreground/70 dark:text-muted-foreground\" />\n </div>\n )}\n <span className=\"text-xs font-semibold text-foreground uppercase tracking-wider\">\n {title}\n </span>\n </div>\n {subtitle && (\n <p className=\"text-sm text-muted-foreground mt-1\">\n {subtitle}\n </p>\n )}\n </div>\n {actions && (\n <div className=\"flex-shrink-0\">\n {actions}\n </div>\n )}\n </div>\n </div>\n )}\n {variant === \"compact\" && (\n <div className=\"p-5 flex items-center justify-between gap-4 border-b border-black/[0.12] dark:border-white/[0.06]\">\n <div className=\"flex items-center gap-2 min-w-0\">\n {Icon && (\n <div className=\"p-1.5 rounded-lg bg-foreground/[0.04]\">\n <Icon className=\"h-3.5 w-3.5 text-muted-foreground\" />\n </div>\n )}\n <span className=\"text-xs font-semibold text-foreground uppercase tracking-wider\">\n {title}\n </span>\n </div>\n {actions && (\n <div className=\"flex-shrink-0\">\n {actions}\n </div>\n )}\n </div>\n )}\n {hasContent && (\n <div\n className={cn(\n variant === \"header\" ? \"border-t border-black/[0.12] dark:border-white/[0.06]\" : \"\",\n variant === \"compact\" ? \"px-5 py-4\" : \"\",\n variant === \"bodyOnly\" || variant === \"header\" ? bodyPaddingClass : \"\",\n contentClassName\n )}\n >\n {children}\n </div>\n )}\n </div>\n </Card>\n </DesignCardNestingContext.Provider>\n );\n}\n\nexport type DesignCardTintProps = {\n gradient: DesignCardGradient,\n} & React.ComponentProps<\"div\">\n\nexport function DesignCardTint({\n gradient,\n className,\n children,\n ...props\n}: DesignCardTintProps) {\n const tintClass = demoTintClasses.get(gradient) ?? \"group-hover/tint:bg-slate-500/[0.015]\";\n\n return (\n <div\n className={cn(\n \"group/tint relative rounded-2xl bg-white/90 dark:bg-background/60 dark:backdrop-blur-xl transition-all duration-150 hover:transition-none\",\n \"ring-1 ring-black/[0.06] hover:ring-black/[0.1] dark:ring-white/[0.06] dark:hover:ring-white/[0.1]\",\n \"shadow-none overflow-hidden\",\n className\n )}\n {...props}\n >\n <div className=\"absolute inset-0 bg-gradient-to-br from-foreground/[0.04] dark:from-foreground/[0.02] to-transparent pointer-events-none rounded-2xl\" />\n <div\n className={cn(\n \"absolute inset-0 transition-colors duration-150 group-hover/tint:transition-none pointer-events-none rounded-2xl\",\n tintClass\n )}\n />\n <div className=\"relative\">\n {children}\n </div>\n </div>\n );\n}\n","\"use client\";\n\nimport { cn } from \"@stackframe/stack-ui\";\n\nexport type DesignBadgeColor = \"blue\" | \"cyan\" | \"purple\" | \"green\" | \"orange\" | \"red\";\nexport type DesignBadgeSize = \"sm\" | \"md\";\n\nconst badgeStyles = new Map<DesignBadgeColor, string>([\n [\"blue\", \"text-blue-700 dark:text-blue-400 bg-blue-500/20 dark:bg-blue-500/10 ring-1 ring-blue-500/30 dark:ring-blue-500/20\"],\n [\"cyan\", \"text-cyan-700 dark:text-cyan-400 bg-cyan-500/20 dark:bg-cyan-500/10 ring-1 ring-cyan-500/30 dark:ring-cyan-500/20\"],\n [\"purple\", \"text-purple-700 dark:text-purple-400 bg-purple-500/20 dark:bg-purple-500/10 ring-1 ring-purple-500/30 dark:ring-purple-500/20\"],\n [\"green\", \"text-emerald-700 dark:text-emerald-400 bg-emerald-500/20 dark:bg-emerald-500/10 ring-1 ring-emerald-500/30 dark:ring-emerald-500/20\"],\n [\"orange\", \"text-amber-700 dark:text-amber-300 bg-amber-500/20 dark:bg-amber-500/10 ring-1 ring-amber-500/30 dark:ring-amber-500/20\"],\n [\"red\", \"text-red-700 dark:text-red-400 bg-red-500/20 dark:bg-red-500/10 ring-1 ring-red-500/30 dark:ring-red-500/20\"],\n]);\n\nfunction getMapValueOrThrow<TKey, TValue>(map: Map<TKey, TValue>, key: TKey, mapName: string) {\n const value = map.get(key);\n if (!value) {\n throw new Error(`Missing ${mapName} entry for key \"${String(key)}\"`);\n }\n return value;\n}\n\n/** At least one of showLabel or showIcon must be true. */\nexport type DesignBadgeContentMode = \"both\" | \"text\" | \"icon\";\n\nexport type DesignBadgeProps = {\n label: string,\n color: DesignBadgeColor,\n icon?: React.ElementType,\n size?: DesignBadgeSize,\n /** What to display: \"both\" (default), \"text\" (label only), or \"icon\" (icon only; requires icon prop). */\n contentMode?: DesignBadgeContentMode,\n};\n\nfunction getShowLabelShowIcon(\n contentMode: DesignBadgeContentMode,\n hasIcon: boolean,\n): { showLabel: boolean, showIcon: boolean } {\n switch (contentMode) {\n case \"both\": {\n return { showLabel: true, showIcon: hasIcon };\n }\n case \"text\": {\n return { showLabel: true, showIcon: false };\n }\n case \"icon\": {\n if (!hasIcon) {\n throw new Error(\"DesignBadge contentMode 'icon' requires the icon prop to be provided.\");\n }\n return { showLabel: false, showIcon: true };\n }\n default: {\n const _exhaustive: never = contentMode;\n throw new Error(`Unknown contentMode: ${String(_exhaustive)}`);\n }\n }\n}\n\n/**\n * Small pill used for status tags, roles, categories, and other short\n * labels. Not a variant-based component — pick a semantic `color` and\n * optionally pass an `icon` (as a component type, not a rendered node).\n *\n * ```tsx\n * <DesignBadge label=\"Verified\" color=\"green\" icon={CheckIcon} />\n * <DesignBadge label=\"Beta\" color=\"purple\" />\n * <DesignBadge label=\"Error\" color=\"red\" size=\"sm\" />\n * ```\n *\n * Notes:\n * - Props are `label` + `color`, NOT `variant` + children.\n * - `color` is one of: `\"blue\" | \"cyan\" | \"purple\" | \"green\" | \"orange\" | \"red\"`.\n * - `icon` is optional but, if set via `contentMode: \"icon\"`, is required.\n */\nexport function DesignBadge({\n label,\n color,\n icon,\n size = \"md\",\n contentMode = \"both\",\n}: DesignBadgeProps) {\n const Icon = icon;\n const { showLabel, showIcon } = getShowLabelShowIcon(contentMode, !!Icon);\n if (!showLabel && !showIcon) {\n throw new Error(\"DesignBadge must show at least label or icon.\");\n }\n const sizeClasses = size === \"sm\"\n ? \"px-2 py-0.5 text-[10px]\"\n : \"px-2.5 py-1 text-[11px]\";\n const colorClasses = getMapValueOrThrow(badgeStyles, color, \"badgeStyles\");\n\n return (\n <div\n className={cn(\n \"inline-flex items-center gap-1.5 rounded-full font-medium\",\n colorClasses,\n sizeClasses\n )}\n title={!showLabel ? label : undefined}\n aria-label={label}\n >\n {showIcon && Icon && <Icon className=\"h-3 w-3\" />}\n {showLabel ? label : null}\n </div>\n );\n}\n","import { intervalSchema } from \"../schema-fields\";\nimport { StackAssertionError } from \"./errors\";\nimport { remainder } from \"./math\";\n\nexport function isWeekend(date: Date): boolean {\n return date.getDay() === 0 || date.getDay() === 6;\n}\n\nimport.meta.vitest?.test(\"isWeekend\", ({ expect }) => {\n // Sunday (day 0)\n expect(isWeekend(new Date(2023, 0, 1))).toBe(true);\n // Saturday (day 6)\n expect(isWeekend(new Date(2023, 0, 7))).toBe(true);\n // Monday (day 1)\n expect(isWeekend(new Date(2023, 0, 2))).toBe(false);\n // Friday (day 5)\n expect(isWeekend(new Date(2023, 0, 6))).toBe(false);\n});\n\nconst agoUnits = [\n [60, 'second'],\n [60, 'minute'],\n [24, 'hour'],\n [7, 'day'],\n [5, 'week'],\n] as const;\n\nexport function fromNow(date: Date): string {\n return fromNowDetailed(date).result;\n}\n\nimport.meta.vitest?.test(\"fromNow\", ({ expect }) => {\n // Set a fixed date for testing\n const fixedDate = new Date(\"2023-01-15T12:00:00.000Z\");\n\n // Use Vitest's fake timers\n import.meta.vitest?.vi.useFakeTimers();\n import.meta.vitest?.vi.setSystemTime(fixedDate);\n\n // Test past times\n expect(fromNow(new Date(\"2023-01-15T11:59:50.000Z\"))).toBe(\"just now\");\n expect(fromNow(new Date(\"2023-01-15T11:59:00.000Z\"))).toBe(\"1 minute ago\");\n expect(fromNow(new Date(\"2023-01-15T11:00:00.000Z\"))).toBe(\"1 hour ago\");\n expect(fromNow(new Date(\"2023-01-14T12:00:00.000Z\"))).toBe(\"1 day ago\");\n expect(fromNow(new Date(\"2023-01-08T12:00:00.000Z\"))).toBe(\"1 week ago\");\n\n // Test future times\n expect(fromNow(new Date(\"2023-01-15T12:00:10.000Z\"))).toBe(\"just now\");\n expect(fromNow(new Date(\"2023-01-15T12:01:00.000Z\"))).toBe(\"in 1 minute\");\n expect(fromNow(new Date(\"2023-01-15T13:00:00.000Z\"))).toBe(\"in 1 hour\");\n expect(fromNow(new Date(\"2023-01-16T12:00:00.000Z\"))).toBe(\"in 1 day\");\n expect(fromNow(new Date(\"2023-01-22T12:00:00.000Z\"))).toBe(\"in 1 week\");\n\n // Test very old dates (should use date format)\n expect(fromNow(new Date(\"2022-01-15T12:00:00.000Z\"))).toMatch(/Jan 15, 2022/);\n\n // Restore real timers\n import.meta.vitest?.vi.useRealTimers();\n});\n\nexport function fromNowDetailed(date: Date): {\n result: string,\n /**\n * May be Infinity if the result will never change.\n */\n secondsUntilChange: number,\n} {\n if (!(date instanceof Date)) {\n throw new Error(`fromNow only accepts Date objects (received: ${date})`);\n }\n\n const now = new Date();\n const elapsed = now.getTime() - date.getTime();\n\n let remainingInUnit = Math.abs(elapsed) / 1000;\n if (remainingInUnit < 15) {\n return {\n result: 'just now',\n secondsUntilChange: 15 - remainingInUnit,\n };\n }\n let unitInSeconds = 1;\n for (const [nextUnitSize, unitName] of agoUnits) {\n const rounded = Math.round(remainingInUnit);\n if (rounded < nextUnitSize) {\n if (elapsed < 0) {\n return {\n result: `in ${rounded} ${unitName}${rounded === 1 ? '' : 's'}`,\n secondsUntilChange: remainder((remainingInUnit - rounded + 0.5) * unitInSeconds, unitInSeconds),\n };\n } else {\n return {\n result: `${rounded} ${unitName}${rounded === 1 ? '' : 's'} ago`,\n secondsUntilChange: remainder((rounded - remainingInUnit - 0.5) * unitInSeconds, unitInSeconds),\n };\n }\n }\n unitInSeconds *= nextUnitSize;\n remainingInUnit /= nextUnitSize;\n }\n\n return {\n result: date.toLocaleDateString('en-US', { year: 'numeric', month: 'short', day: 'numeric' }),\n secondsUntilChange: Infinity,\n };\n}\n\n/**\n * Returns a string representation of the given date in the format expected by the `datetime-local` input type.\n */\nexport function getInputDatetimeLocalString(date: Date): string {\n date = new Date(date);\n date.setMinutes(date.getMinutes() - date.getTimezoneOffset());\n return date.toISOString().slice(0, 19);\n}\n\nimport.meta.vitest?.test(\"getInputDatetimeLocalString\", ({ expect }) => {\n // Use Vitest's fake timers to ensure consistent timezone behavior\n import.meta.vitest?.vi.useFakeTimers();\n\n // Test with a specific date\n const mockDate = new Date(\"2023-01-15T12:30:45.000Z\");\n const result = getInputDatetimeLocalString(mockDate);\n\n // The result should be in the format YYYY-MM-DDTHH:MM:SS\n expect(result).toMatch(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$/);\n\n // Test with different dates\n const dates = [\n new Date(\"2023-01-01T00:00:00.000Z\"),\n new Date(\"2023-06-15T23:59:59.000Z\"),\n new Date(\"2023-12-31T12:34:56.000Z\"),\n ];\n\n for (const date of dates) {\n const result = getInputDatetimeLocalString(date);\n expect(result).toMatch(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$/);\n }\n\n // Restore real timers\n import.meta.vitest?.vi.useRealTimers();\n});\n\n\nexport type Interval = [number, 'millisecond' | 'second' | 'minute' | 'hour' | 'day' | 'week' | 'month' | 'year'];\nexport type DayInterval = [number, 'day' | 'week' | 'month' | 'year'];\n\nfunction applyInterval(date: Date, times: number, interval: Interval): Date {\n if (!intervalSchema.isValidSync(interval)) {\n throw new StackAssertionError(`Invalid interval`, { interval });\n }\n const [amount, unit] = interval;\n switch (unit) {\n case 'millisecond': {\n date.setMilliseconds(date.getMilliseconds() + amount * times);\n break;\n }\n case 'second': {\n date.setSeconds(date.getSeconds() + amount * times);\n break;\n }\n case 'minute': {\n date.setMinutes(date.getMinutes() + amount * times);\n break;\n }\n case 'hour': {\n date.setHours(date.getHours() + amount * times);\n break;\n }\n case 'day': {\n date.setDate(date.getDate() + amount * times);\n break;\n }\n case 'week': {\n date.setDate(date.getDate() + amount * times * 7);\n break;\n }\n case 'month': {\n date.setMonth(date.getMonth() + amount * times);\n break;\n }\n case 'year': {\n date.setFullYear(date.getFullYear() + amount * times);\n break;\n }\n default: {\n throw new StackAssertionError(`Invalid interval despite schema validation`, { interval });\n }\n }\n return date;\n}\n\nexport function subtractInterval(date: Date, interval: Interval): Date {\n return applyInterval(date, -1, interval);\n}\n\nexport function addInterval(date: Date, interval: Interval): Date {\n return applyInterval(date, 1, interval);\n}\n\nexport const FAR_FUTURE_DATE = new Date(8640000000000000); // 13 Sep 275760 00:00:00 UTC\n\nfunction getMsPerDayIntervalUnit(unit: 'day' | 'week'): number {\n if (unit === 'day') {\n return 24 * 60 * 60 * 1000;\n }\n return 7 * 24 * 60 * 60 * 1000;\n}\n\n\nexport function getIntervalsElapsed(anchor: Date, to: Date, repeat: DayInterval): number {\n const [amount, unit] = repeat;\n if (to <= anchor) return 0;\n if (unit === 'day' || unit === 'week') {\n const msPerUnit = getMsPerDayIntervalUnit(unit);\n const diffMs = to.getTime() - anchor.getTime();\n return Math.floor(diffMs / (msPerUnit * amount));\n }\n if ([\"month\", \"year\"].includes(unit)) {\n let count = 0;\n let current = new Date(anchor);\n for (; ;) {\n const next = addInterval(new Date(current), [amount, unit]);\n if (next > to) break;\n current = next;\n count += 1;\n }\n return count;\n }\n return 0;\n}\n\nimport.meta.vitest?.test(\"getIntervalsElapsed\", ({ expect }) => {\n const anchor = new Date('2025-01-01T00:00:00.000Z');\n const to = new Date('2025-01-15T00:00:00.000Z');\n expect(getIntervalsElapsed(anchor, to, [1, 'week'])).toBe(2);\n expect(getIntervalsElapsed(anchor, to, [3, 'day'])).toBe(4);\n\n const mAnchor = new Date('2023-01-31T00:00:00.000Z');\n const mTo = new Date('2023-03-01T00:00:00.000Z');\n expect(getIntervalsElapsed(mAnchor, mTo, [1, 'month'])).toBe(0);\n\n const yAnchor = new Date('2020-01-01T00:00:00.000Z');\n const yTo = new Date('2022-06-01T00:00:00.000Z');\n expect(getIntervalsElapsed(yAnchor, yTo, [1, 'year'])).toBe(2);\n});\n","import * as e from \"react\";\nimport t from \"../lib/IconBase.es.js\";\nimport m from \"../defs/Gear.es.js\";\nconst o = e.forwardRef((r, a) => /* @__PURE__ */ e.createElement(t, { ref: a, ...r, weights: m }));\no.displayName = \"GearIcon\";\nconst n = o;\nexport {\n n as Gear,\n o as GearIcon\n};\n","import * as a from \"react\";\nconst l = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M128,76a52,52,0,1,0,52,52A52.06,52.06,0,0,0,128,76Zm0,80a28,28,0,1,1,28-28A28,28,0,0,1,128,156Zm92-27.21v-1.58l14-17.51a12,12,0,0,0,2.23-10.59A111.75,111.75,0,0,0,225,71.89,12,12,0,0,0,215.89,66L193.61,63.5l-1.11-1.11L190,40.1A12,12,0,0,0,184.11,31a111.67,111.67,0,0,0-27.23-11.27A12,12,0,0,0,146.3,22L128.79,36h-1.58L109.7,22a12,12,0,0,0-10.59-2.23A111.75,111.75,0,0,0,71.89,31.05,12,12,0,0,0,66,40.11L63.5,62.39,62.39,63.5,40.1,66A12,12,0,0,0,31,71.89,111.67,111.67,0,0,0,19.77,99.12,12,12,0,0,0,22,109.7l14,17.51v1.58L22,146.3a12,12,0,0,0-2.23,10.59,111.75,111.75,0,0,0,11.29,27.22A12,12,0,0,0,40.11,190l22.28,2.48,1.11,1.11L66,215.9A12,12,0,0,0,71.89,225a111.67,111.67,0,0,0,27.23,11.27A12,12,0,0,0,109.7,234l17.51-14h1.58l17.51,14a12,12,0,0,0,10.59,2.23A111.75,111.75,0,0,0,184.11,225a12,12,0,0,0,5.91-9.06l2.48-22.28,1.11-1.11L215.9,190a12,12,0,0,0,9.06-5.91,111.67,111.67,0,0,0,11.27-27.23A12,12,0,0,0,234,146.3Zm-24.12-4.89a70.1,70.1,0,0,1,0,8.2,12,12,0,0,0,2.61,8.22l12.84,16.05A86.47,86.47,0,0,1,207,166.86l-20.43,2.27a12,12,0,0,0-7.65,4,69,69,0,0,1-5.8,5.8,12,12,0,0,0-4,7.65L166.86,207a86.47,86.47,0,0,1-10.49,4.35l-16.05-12.85a12,12,0,0,0-7.5-2.62c-.24,0-.48,0-.72,0a70.1,70.1,0,0,1-8.2,0,12.06,12.06,0,0,0-8.22,2.6L99.63,211.33A86.47,86.47,0,0,1,89.14,207l-2.27-20.43a12,12,0,0,0-4-7.65,69,69,0,0,1-5.8-5.8,12,12,0,0,0-7.65-4L49,166.86a86.47,86.47,0,0,1-4.35-10.49l12.84-16.05a12,12,0,0,0,2.61-8.22,70.1,70.1,0,0,1,0-8.2,12,12,0,0,0-2.61-8.22L44.67,99.63A86.47,86.47,0,0,1,49,89.14l20.43-2.27a12,12,0,0,0,7.65-4,69,69,0,0,1,5.8-5.8,12,12,0,0,0,4-7.65L89.14,49a86.47,86.47,0,0,1,10.49-4.35l16.05,12.85a12.06,12.06,0,0,0,8.22,2.6,70.1,70.1,0,0,1,8.2,0,12,12,0,0,0,8.22-2.6l16.05-12.85A86.47,86.47,0,0,1,166.86,49l2.27,20.43a12,12,0,0,0,4,7.65,69,69,0,0,1,5.8,5.8,12,12,0,0,0,7.65,4L207,89.14a86.47,86.47,0,0,1,4.35,10.49l-12.84,16.05A12,12,0,0,0,195.88,123.9Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\n \"path\",\n {\n d: \"M207.86,123.18l16.78-21a99.14,99.14,0,0,0-10.07-24.29l-26.7-3a81,81,0,0,0-6.81-6.81l-3-26.71a99.43,99.43,0,0,0-24.3-10l-21,16.77a81.59,81.59,0,0,0-9.64,0l-21-16.78A99.14,99.14,0,0,0,77.91,41.43l-3,26.7a81,81,0,0,0-6.81,6.81l-26.71,3a99.43,99.43,0,0,0-10,24.3l16.77,21a81.59,81.59,0,0,0,0,9.64l-16.78,21a99.14,99.14,0,0,0,10.07,24.29l26.7,3a81,81,0,0,0,6.81,6.81l3,26.71a99.43,99.43,0,0,0,24.3,10l21-16.77a81.59,81.59,0,0,0,9.64,0l21,16.78a99.14,99.14,0,0,0,24.29-10.07l3-26.7a81,81,0,0,0,6.81-6.81l26.71-3a99.43,99.43,0,0,0,10-24.3l-16.77-21A81.59,81.59,0,0,0,207.86,123.18ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ a.createElement(\"path\", { d: \"M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8.06,8.06,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8.06,8.06,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M216,130.16q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M128,82a46,46,0,1,0,46,46A46.06,46.06,0,0,0,128,82Zm0,80a34,34,0,1,1,34-34A34,34,0,0,1,128,162ZM214,130.84c.06-1.89.06-3.79,0-5.68L229.33,106a6,6,0,0,0,1.11-5.29A105.34,105.34,0,0,0,219.76,74.9a6,6,0,0,0-4.53-3l-24.45-2.71q-1.93-2.07-4-4l-2.72-24.46a6,6,0,0,0-3-4.53,105.65,105.65,0,0,0-25.77-10.66A6,6,0,0,0,150,26.68l-19.2,15.37c-1.89-.06-3.79-.06-5.68,0L106,26.67a6,6,0,0,0-5.29-1.11A105.34,105.34,0,0,0,74.9,36.24a6,6,0,0,0-3,4.53L69.23,65.22q-2.07,1.94-4,4L40.76,72a6,6,0,0,0-4.53,3,105.65,105.65,0,0,0-10.66,25.77A6,6,0,0,0,26.68,106l15.37,19.2c-.06,1.89-.06,3.79,0,5.68L26.67,150.05a6,6,0,0,0-1.11,5.29A105.34,105.34,0,0,0,36.24,181.1a6,6,0,0,0,4.53,3l24.45,2.71q1.94,2.07,4,4L72,215.24a6,6,0,0,0,3,4.53,105.65,105.65,0,0,0,25.77,10.66,6,6,0,0,0,5.29-1.11L125.16,214c1.89.06,3.79.06,5.68,0l19.21,15.38a6,6,0,0,0,3.75,1.31,6.2,6.2,0,0,0,1.54-.2,105.34,105.34,0,0,0,25.76-10.68,6,6,0,0,0,3-4.53l2.71-24.45q2.07-1.93,4-4l24.46-2.72a6,6,0,0,0,4.53-3,105.49,105.49,0,0,0,10.66-25.77,6,6,0,0,0-1.11-5.29Zm-3.1,41.63-23.64,2.63a6,6,0,0,0-3.82,2,75.14,75.14,0,0,1-6.31,6.31,6,6,0,0,0-2,3.82l-2.63,23.63A94.28,94.28,0,0,1,155.14,218l-18.57-14.86a6,6,0,0,0-3.75-1.31h-.36a78.07,78.07,0,0,1-8.92,0,6,6,0,0,0-4.11,1.3L100.87,218a94.13,94.13,0,0,1-17.34-7.17L80.9,187.21a6,6,0,0,0-2-3.82,75.14,75.14,0,0,1-6.31-6.31,6,6,0,0,0-3.82-2l-23.63-2.63A94.28,94.28,0,0,1,38,155.14l14.86-18.57a6,6,0,0,0,1.3-4.11,78.07,78.07,0,0,1,0-8.92,6,6,0,0,0-1.3-4.11L38,100.87a94.13,94.13,0,0,1,7.17-17.34L68.79,80.9a6,6,0,0,0,3.82-2,75.14,75.14,0,0,1,6.31-6.31,6,6,0,0,0,2-3.82l2.63-23.63A94.28,94.28,0,0,1,100.86,38l18.57,14.86a6,6,0,0,0,4.11,1.3,78.07,78.07,0,0,1,8.92,0,6,6,0,0,0,4.11-1.3L155.13,38a94.13,94.13,0,0,1,17.34,7.17l2.63,23.64a6,6,0,0,0,2,3.82,75.14,75.14,0,0,1,6.31,6.31,6,6,0,0,0,3.82,2l23.63,2.63A94.28,94.28,0,0,1,218,100.86l-14.86,18.57a6,6,0,0,0-1.3,4.11,78.07,78.07,0,0,1,0,8.92,6,6,0,0,0,1.3,4.11L218,155.13A94.13,94.13,0,0,1,210.85,172.47Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.21,107.21,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.71,107.71,0,0,0-26.25-10.87,8,8,0,0,0-7.06,1.49L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.21,107.21,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8,8,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8,8,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M128,84a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,84Zm0,80a36,36,0,1,1,36-36A36,36,0,0,1,128,164Zm83.93-32.49q.13-3.51,0-7l15.83-19.79a4,4,0,0,0,.75-3.53A103.64,103.64,0,0,0,218,75.9a4,4,0,0,0-3-2l-25.19-2.8c-1.58-1.71-3.24-3.37-4.95-4.95L182.07,41a4,4,0,0,0-2-3A104,104,0,0,0,154.82,27.5a4,4,0,0,0-3.53.74L131.51,44.07q-3.51-.14-7,0L104.7,28.24a4,4,0,0,0-3.53-.75A103.64,103.64,0,0,0,75.9,38a4,4,0,0,0-2,3l-2.8,25.19c-1.71,1.58-3.37,3.24-4.95,4.95L41,73.93a4,4,0,0,0-3,2A104,104,0,0,0,27.5,101.18a4,4,0,0,0,.74,3.53l15.83,19.78q-.14,3.51,0,7L28.24,151.3a4,4,0,0,0-.75,3.53A103.64,103.64,0,0,0,38,180.1a4,4,0,0,0,3,2l25.19,2.8c1.58,1.71,3.24,3.37,4.95,4.95l2.8,25.2a4,4,0,0,0,2,3,104,104,0,0,0,25.28,10.46,4,4,0,0,0,3.53-.74l19.78-15.83q3.51.13,7,0l19.79,15.83a4,4,0,0,0,2.5.88,4,4,0,0,0,1-.13A103.64,103.64,0,0,0,180.1,218a4,4,0,0,0,2-3l2.8-25.19c1.71-1.58,3.37-3.24,4.95-4.95l25.2-2.8a4,4,0,0,0,3-2,104,104,0,0,0,10.46-25.28,4,4,0,0,0-.74-3.53Zm.17,42.83-24.67,2.74a4,4,0,0,0-2.55,1.32,76.2,76.2,0,0,1-6.48,6.48,4,4,0,0,0-1.32,2.55l-2.74,24.66a95.45,95.45,0,0,1-19.64,8.15l-19.38-15.51a4,4,0,0,0-2.5-.87h-.24a73.67,73.67,0,0,1-9.16,0,4,4,0,0,0-2.74.87l-19.37,15.5a95.33,95.33,0,0,1-19.65-8.13l-2.74-24.67a4,4,0,0,0-1.32-2.55,76.2,76.2,0,0,1-6.48-6.48,4,4,0,0,0-2.55-1.32l-24.66-2.74a95.45,95.45,0,0,1-8.15-19.64l15.51-19.38a4,4,0,0,0,.87-2.74,77.76,77.76,0,0,1,0-9.16,4,4,0,0,0-.87-2.74l-15.5-19.37A95.33,95.33,0,0,1,43.9,81.66l24.67-2.74a4,4,0,0,0,2.55-1.32,76.2,76.2,0,0,1,6.48-6.48,4,4,0,0,0,1.32-2.55l2.74-24.66a95.45,95.45,0,0,1,19.64-8.15l19.38,15.51a4,4,0,0,0,2.74.87,73.67,73.67,0,0,1,9.16,0,4,4,0,0,0,2.74-.87l19.37-15.5a95.33,95.33,0,0,1,19.65,8.13l2.74,24.67a4,4,0,0,0,1.32,2.55,76.2,76.2,0,0,1,6.48,6.48,4,4,0,0,0,2.55,1.32l24.66,2.74a95.45,95.45,0,0,1,8.15,19.64l-15.51,19.38a4,4,0,0,0-.87,2.74,77.76,77.76,0,0,1,0,9.16,4,4,0,0,0,.87,2.74l15.5,19.37A95.33,95.33,0,0,1,212.1,174.34Z\" }))\n ]\n]);\nexport {\n l as default\n};\n","import * as o from \"react\";\nimport t from \"../lib/IconBase.es.js\";\nimport a from \"../defs/FolderOpen.es.js\";\nconst e = o.forwardRef((r, n) => /* @__PURE__ */ o.createElement(t, { ref: n, ...r, weights: a }));\ne.displayName = \"FolderOpenIcon\";\nconst m = e;\nexport {\n e as FolderNotchOpenIcon,\n m as FolderOpen,\n e as FolderOpenIcon\n};\n","import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M248.23,112.31A20,20,0,0,0,232,104H220V88a20,20,0,0,0-20-20H132L105.34,48a20.12,20.12,0,0,0-12-4H40A20,20,0,0,0,20,64V208a12,12,0,0,0,12,12H211.1a12,12,0,0,0,11.33-8l28.49-81.47.06-.17A20,20,0,0,0,248.23,112.31ZM92,68l28.8,21.6A12,12,0,0,0,128,92h68v12H69.77a20,20,0,0,0-18.94,13.58L44,137.15V68ZM202.59,196H48.89l23.72-68H226.37Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\n \"path\",\n {\n d: \"M208,88v24H69.77a8,8,0,0,0-7.59,5.47L32,208V64a8,8,0,0,1,8-8H93.33a8,8,0,0,1,4.8,1.6L128,80h72A8,8,0,0,1,208,88Z\",\n opacity: \"0.2\"\n }\n ), /* @__PURE__ */ a.createElement(\"path\", { d: \"M245,110.64A16,16,0,0,0,232,104H216V88a16,16,0,0,0-16-16H130.67L102.94,51.2a16.14,16.14,0,0,0-9.6-3.2H40A16,16,0,0,0,24,64V208a8,8,0,0,0,8,8H211.1a8,8,0,0,0,7.59-5.47l28.49-85.47A16.05,16.05,0,0,0,245,110.64ZM93.34,64,123.2,86.4A8,8,0,0,0,128,88h72v16H69.77a16,16,0,0,0-15.18,10.94L40,158.7V64Zm112,136H43.1l26.67-80H232Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M245,110.64A16,16,0,0,0,232,104H216V88a16,16,0,0,0-16-16H130.67L102.94,51.2a16.14,16.14,0,0,0-9.6-3.2H40A16,16,0,0,0,24,64V208h0a8,8,0,0,0,8,8H211.1a8,8,0,0,0,7.59-5.47l28.49-85.47A16.05,16.05,0,0,0,245,110.64ZM93.34,64,123.2,86.4A8,8,0,0,0,128,88h72v16H69.77a16,16,0,0,0-15.18,10.94L40,158.7V64Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M243.36,111.81A14,14,0,0,0,232,106H214V88a14,14,0,0,0-14-14H130L101.74,52.8a14.06,14.06,0,0,0-8.4-2.8H40A14,14,0,0,0,26,64V208a6,6,0,0,0,6,6H211.1a6,6,0,0,0,5.69-4.1l28.49-85.47A14,14,0,0,0,243.36,111.81ZM40,62H93.34a2,2,0,0,1,1.2.4L124.4,84.8A6,6,0,0,0,128,86h72a2,2,0,0,1,2,2v18H69.77a14,14,0,0,0-13.28,9.57L38,171V64A2,2,0,0,1,40,62Zm193.9,58.63L206.78,202H40.33l27.54-82.63a2,2,0,0,1,1.9-1.37H232a2,2,0,0,1,1.9,2.63Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M245,110.64A16,16,0,0,0,232,104H216V88a16,16,0,0,0-16-16H130.67L102.94,51.2a16.14,16.14,0,0,0-9.6-3.2H40A16,16,0,0,0,24,64V208h0a8,8,0,0,0,8,8H211.1a8,8,0,0,0,7.59-5.47l28.49-85.47A16.05,16.05,0,0,0,245,110.64ZM93.34,64,123.2,86.4A8,8,0,0,0,128,88h72v16H69.77a16,16,0,0,0-15.18,10.94L40,158.7V64Zm112,136H43.1l26.67-80H232Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M241.72,113a11.88,11.88,0,0,0-9.73-5H212V88a12,12,0,0,0-12-12H129.33l-28.8-21.6a12.05,12.05,0,0,0-7.2-2.4H40A12,12,0,0,0,28,64V208a4,4,0,0,0,4,4H211.09a4,4,0,0,0,3.79-2.74l28.49-85.47A11.86,11.86,0,0,0,241.72,113ZM40,60H93.33a4,4,0,0,1,2.4.8L125.6,83.2a4,4,0,0,0,2.4.8h72a4,4,0,0,1,4,4v20H69.76a12,12,0,0,0-11.38,8.21L36,183.35V64A4,4,0,0,1,40,60Zm195.78,61.26L208.2,204H37.55L66,118.74A4,4,0,0,1,69.76,116H232a4,4,0,0,1,3.79,5.26Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","/**\n * Plan configuration for Stack Auth pricing tiers.\n *\n * This file defines the limits for each plan and the item IDs used to track them.\n * Import these constants in seed.ts and backend code for limit enforcement.\n */\n\nexport const UNLIMITED = 1_000_000_000;\n\n/**\n * Item IDs used across the codebase for tracking plan limits.\n */\nexport const ITEM_IDS = {\n seats: \"dashboard_admins\",\n authUsers: \"auth_users\",\n emailsPerMonth: \"emails_per_month\",\n analyticsTimeoutSeconds: \"analytics_timeout_seconds\",\n analyticsEvents: \"analytics_events\",\n sessionReplays: \"session_replays\",\n onboardingCall: \"onboarding_call\",\n} as const;\n\nexport type ItemId = typeof ITEM_IDS[keyof typeof ITEM_IDS];\n\n/**\n * The offerings/limits included in a plan.\n */\nexport type PlanProductOfferings = {\n seats: number,\n authUsers: number,\n emailsPerMonth: number,\n analyticsTimeoutSeconds: number,\n analyticsEvents: number,\n sessionReplays: number,\n};\n\n/**\n * Plan limits by plan ID.\n */\nexport const PLAN_LIMITS: {\n free: PlanProductOfferings,\n team: PlanProductOfferings,\n growth: PlanProductOfferings,\n} = {\n free: {\n seats: 1,\n authUsers: 10_000,\n emailsPerMonth: 1_000,\n analyticsTimeoutSeconds: 10,\n analyticsEvents: 100_000,\n sessionReplays: 2_500,\n },\n team: {\n seats: 4,\n authUsers: 50_000,\n emailsPerMonth: 25_000,\n analyticsTimeoutSeconds: 60,\n analyticsEvents: 500_000,\n sessionReplays: 2_500,\n },\n growth: {\n seats: 4,\n authUsers: UNLIMITED,\n emailsPerMonth: 25_000,\n analyticsTimeoutSeconds: 300,\n analyticsEvents: 1_000_000,\n sessionReplays: 2_500,\n },\n};\n\nexport type PlanId = keyof typeof PLAN_LIMITS;\n\n/**\n * Base plan IDs ordered from highest to lowest tier. Use this (instead of\n * string literals) whenever code needs to pick a customer's \"current\" plan\n * from their product list, so the choice stays in sync with `PLAN_LIMITS`.\n */\nexport const BASE_PLAN_IDS_BY_TIER = [\"growth\", \"team\", \"free\"] as const satisfies readonly PlanId[];\n\n/**\n * Minimal shape of a product entry as it comes out of `team.useProducts()` /\n * `customer.useProducts()` on both the SDK and dashboard sides. Structural so\n * we don't pull SDK types into `stack-shared`.\n */\ntype PlanResolutionProduct = { id: string | null, type?: string };\n\n/**\n * Picks the customer's highest-tier active base plan (growth → team → free),\n * falling back to `\"free\"` if none of the known plans appear as a\n * subscription. Single source of truth for plan gating in the dashboard —\n * do not reintroduce ad-hoc `p.id === \"team\" || p.id === \"growth\"` checks.\n */\nexport function resolvePlanId(products: ReadonlyArray<PlanResolutionProduct>): PlanId {\n const activeSubscriptionPlanIds = new Set(\n products.filter(p => p.type === \"subscription\" && p.id != null).map(p => p.id),\n );\n return BASE_PLAN_IDS_BY_TIER.find(id => activeSubscriptionPlanIds.has(id)) ?? \"free\";\n}\n\n/**\n * Convenience predicate for \"is this customer on a paid plan?\". Anything\n * above free counts, so new paid tiers added to `PLAN_LIMITS` are picked up\n * automatically.\n */\nexport function isPaidPlan(products: ReadonlyArray<PlanResolutionProduct>): boolean {\n return resolvePlanId(products) !== \"free\";\n}\n","import { useEffect, useState } from \"react\";\nimport { fromNowDetailed } from \"@stackframe/stack-shared/dist/utils/dates\";\n\nexport function useFromNow(date: Date): string {\n const [invalidationCounter, setInvalidationCounter] = useState(0);\n\n const detailed = fromNowDetailed(date);\n\n useEffect(() => {\n // setTimeout breaks at ~25 days due to an integer overflow, also it breaks if the number is Infinity\n // so, only update the date if it's within the next 20 days\n // https://stackoverflow.com/questions/3468607/why-does-settimeout-break-for-large-millisecond-delay-values\n if (detailed.secondsUntilChange < 20 * 24 * 60 * 60) {\n const timeout = setTimeout(() => {\n setInvalidationCounter(invalidationCounter + 1);\n }, Math.round(detailed.secondsUntilChange * 1000));\n return () => clearTimeout(timeout);\n }\n }, [invalidationCounter, detailed.secondsUntilChange]);\n\n return detailed.result;\n}\n","function _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\nexport { _extends as default };","function _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (-1 !== e.indexOf(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nexport { _objectWithoutPropertiesLoose as default };","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","function _assertThisInitialized(e) {\n if (void 0 === e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n return e;\n}\nexport { _assertThisInitialized as default };","function _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nexport { _setPrototypeOf as default };","import setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _inheritsLoose(t, o) {\n t.prototype = Object.create(o.prototype), t.prototype.constructor = t, setPrototypeOf(t, o);\n}\nexport { _inheritsLoose as default };","export default function range(start, stop, step) {\n start = +start, stop = +stop, step = (n = arguments.length) < 2 ? (stop = start, start = 0, 1) : n < 3 ? 1 : +step;\n\n var i = -1,\n n = Math.max(0, Math.ceil((stop - start) / step)) | 0,\n range = new Array(n);\n\n while (++i < n) {\n range[i] = start + i * step;\n }\n\n return range;\n}\n","export function initRange(domain, range) {\n switch (arguments.length) {\n case 0: break;\n case 1: this.range(domain); break;\n default: this.range(range).domain(domain); break;\n }\n return this;\n}\n\nexport function initInterpolator(domain, interpolator) {\n switch (arguments.length) {\n case 0: break;\n case 1: {\n if (typeof domain === \"function\") this.interpolator(domain);\n else this.range(domain);\n break;\n }\n default: {\n this.domain(domain);\n if (typeof interpolator === \"function\") this.interpolator(interpolator);\n else this.range(interpolator);\n break;\n }\n }\n return this;\n}\n","const e10 = Math.sqrt(50),\n e5 = Math.sqrt(10),\n e2 = Math.sqrt(2);\n\nfunction tickSpec(start, stop, count) {\n const step = (stop - start) / Math.max(0, count),\n power = Math.floor(Math.log10(step)),\n error = step / Math.pow(10, power),\n factor = error >= e10 ? 10 : error >= e5 ? 5 : error >= e2 ? 2 : 1;\n let i1, i2, inc;\n if (power < 0) {\n inc = Math.pow(10, -power) / factor;\n i1 = Math.round(start * inc);\n i2 = Math.round(stop * inc);\n if (i1 / inc < start) ++i1;\n if (i2 / inc > stop) --i2;\n inc = -inc;\n } else {\n inc = Math.pow(10, power) * factor;\n i1 = Math.round(start / inc);\n i2 = Math.round(stop / inc);\n if (i1 * inc < start) ++i1;\n if (i2 * inc > stop) --i2;\n }\n if (i2 < i1 && 0.5 <= count && count < 2) return tickSpec(start, stop, count * 2);\n return [i1, i2, inc];\n}\n\nexport default function ticks(start, stop, count) {\n stop = +stop, start = +start, count = +count;\n if (!(count > 0)) return [];\n if (start === stop) return [start];\n const reverse = stop < start, [i1, i2, inc] = reverse ? tickSpec(stop, start, count) : tickSpec(start, stop, count);\n if (!(i2 >= i1)) return [];\n const n = i2 - i1 + 1, ticks = new Array(n);\n if (reverse) {\n if (inc < 0) for (let i = 0; i < n; ++i) ticks[i] = (i2 - i) / -inc;\n else for (let i = 0; i < n; ++i) ticks[i] = (i2 - i) * inc;\n } else {\n if (inc < 0) for (let i = 0; i < n; ++i) ticks[i] = (i1 + i) / -inc;\n else for (let i = 0; i < n; ++i) ticks[i] = (i1 + i) * inc;\n }\n return ticks;\n}\n\nexport function tickIncrement(start, stop, count) {\n stop = +stop, start = +start, count = +count;\n return tickSpec(start, stop, count)[2];\n}\n\nexport function tickStep(start, stop, count) {\n stop = +stop, start = +start, count = +count;\n const reverse = stop < start, inc = reverse ? tickIncrement(stop, start, count) : tickIncrement(start, stop, count);\n return (reverse ? -1 : 1) * (inc < 0 ? 1 / -inc : inc);\n}\n","export default function ascending(a, b) {\n return a == null || b == null ? NaN : a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n","export default function descending(a, b) {\n return a == null || b == null ? NaN\n : b < a ? -1\n : b > a ? 1\n : b >= a ? 0\n : NaN;\n}\n","import ascending from \"./ascending.js\";\nimport descending from \"./descending.js\";\n\nexport default function bisector(f) {\n let compare1, compare2, delta;\n\n // If an accessor is specified, promote it to a comparator. In this case we\n // can test whether the search value is (self-) comparable. We can’t do this\n // for a comparator (except for specific, known comparators) because we can’t\n // tell if the comparator is symmetric, and an asymmetric comparator can’t be\n // used to test whether a single value is comparable.\n if (f.length !== 2) {\n compare1 = ascending;\n compare2 = (d, x) => ascending(f(d), x);\n delta = (d, x) => f(d) - x;\n } else {\n compare1 = f === ascending || f === descending ? f : zero;\n compare2 = f;\n delta = f;\n }\n\n function left(a, x, lo = 0, hi = a.length) {\n if (lo < hi) {\n if (compare1(x, x) !== 0) return hi;\n do {\n const mid = (lo + hi) >>> 1;\n if (compare2(a[mid], x) < 0) lo = mid + 1;\n else hi = mid;\n } while (lo < hi);\n }\n return lo;\n }\n\n function right(a, x, lo = 0, hi = a.length) {\n if (lo < hi) {\n if (compare1(x, x) !== 0) return hi;\n do {\n const mid = (lo + hi) >>> 1;\n if (compare2(a[mid], x) <= 0) lo = mid + 1;\n else hi = mid;\n } while (lo < hi);\n }\n return lo;\n }\n\n function center(a, x, lo = 0, hi = a.length) {\n const i = left(a, x, lo, hi - 1);\n return i > lo && delta(a[i - 1], x) > -delta(a[i], x) ? i - 1 : i;\n }\n\n return {left, center, right};\n}\n\nfunction zero() {\n return 0;\n}\n","export default function number(x) {\n return x === null ? NaN : +x;\n}\n\nexport function* numbers(values, valueof) {\n if (valueof === undefined) {\n for (let value of values) {\n if (value != null && (value = +value) >= value) {\n yield value;\n }\n }\n } else {\n let index = -1;\n for (let value of values) {\n if ((value = valueof(value, ++index, values)) != null && (value = +value) >= value) {\n yield value;\n }\n }\n }\n}\n","import ascending from \"./ascending.js\";\nimport bisector from \"./bisector.js\";\nimport number from \"./number.js\";\n\nconst ascendingBisect = bisector(ascending);\nexport const bisectRight = ascendingBisect.right;\nexport const bisectLeft = ascendingBisect.left;\nexport const bisectCenter = bisector(number).center;\nexport default bisectRight;\n","export default function(constructor, factory, prototype) {\n constructor.prototype = factory.prototype = prototype;\n prototype.constructor = constructor;\n}\n\nexport function extend(parent, definition) {\n var prototype = Object.create(parent.prototype);\n for (var key in definition) prototype[key] = definition[key];\n return prototype;\n}\n","import define, {extend} from \"./define.js\";\n\nexport function Color() {}\n\nexport var darker = 0.7;\nexport var brighter = 1 / darker;\n\nvar reI = \"\\\\s*([+-]?\\\\d+)\\\\s*\",\n reN = \"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",\n reP = \"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",\n reHex = /^#([0-9a-f]{3,8})$/,\n reRgbInteger = new RegExp(`^rgb\\\\(${reI},${reI},${reI}\\\\)$`),\n reRgbPercent = new RegExp(`^rgb\\\\(${reP},${reP},${reP}\\\\)$`),\n reRgbaInteger = new RegExp(`^rgba\\\\(${reI},${reI},${reI},${reN}\\\\)$`),\n reRgbaPercent = new RegExp(`^rgba\\\\(${reP},${reP},${reP},${reN}\\\\)$`),\n reHslPercent = new RegExp(`^hsl\\\\(${reN},${reP},${reP}\\\\)$`),\n reHslaPercent = new RegExp(`^hsla\\\\(${reN},${reP},${reP},${reN}\\\\)$`);\n\nvar named = {\n aliceblue: 0xf0f8ff,\n antiquewhite: 0xfaebd7,\n aqua: 0x00ffff,\n aquamarine: 0x7fffd4,\n azure: 0xf0ffff,\n beige: 0xf5f5dc,\n bisque: 0xffe4c4,\n black: 0x000000,\n blanchedalmond: 0xffebcd,\n blue: 0x0000ff,\n blueviolet: 0x8a2be2,\n brown: 0xa52a2a,\n burlywood: 0xdeb887,\n cadetblue: 0x5f9ea0,\n chartreuse: 0x7fff00,\n chocolate: 0xd2691e,\n coral: 0xff7f50,\n cornflowerblue: 0x6495ed,\n cornsilk: 0xfff8dc,\n crimson: 0xdc143c,\n cyan: 0x00ffff,\n darkblue: 0x00008b,\n darkcyan: 0x008b8b,\n darkgoldenrod: 0xb8860b,\n darkgray: 0xa9a9a9,\n darkgreen: 0x006400,\n darkgrey: 0xa9a9a9,\n darkkhaki: 0xbdb76b,\n darkmagenta: 0x8b008b,\n darkolivegreen: 0x556b2f,\n darkorange: 0xff8c00,\n darkorchid: 0x9932cc,\n darkred: 0x8b0000,\n darksalmon: 0xe9967a,\n darkseagreen: 0x8fbc8f,\n darkslateblue: 0x483d8b,\n darkslategray: 0x2f4f4f,\n darkslategrey: 0x2f4f4f,\n darkturquoise: 0x00ced1,\n darkviolet: 0x9400d3,\n deeppink: 0xff1493,\n deepskyblue: 0x00bfff,\n dimgray: 0x696969,\n dimgrey: 0x696969,\n dodgerblue: 0x1e90ff,\n firebrick: 0xb22222,\n floralwhite: 0xfffaf0,\n forestgreen: 0x228b22,\n fuchsia: 0xff00ff,\n gainsboro: 0xdcdcdc,\n ghostwhite: 0xf8f8ff,\n gold: 0xffd700,\n goldenrod: 0xdaa520,\n gray: 0x808080,\n green: 0x008000,\n greenyellow: 0xadff2f,\n grey: 0x808080,\n honeydew: 0xf0fff0,\n hotpink: 0xff69b4,\n indianred: 0xcd5c5c,\n indigo: 0x4b0082,\n ivory: 0xfffff0,\n khaki: 0xf0e68c,\n lavender: 0xe6e6fa,\n lavenderblush: 0xfff0f5,\n lawngreen: 0x7cfc00,\n lemonchiffon: 0xfffacd,\n lightblue: 0xadd8e6,\n lightcoral: 0xf08080,\n lightcyan: 0xe0ffff,\n lightgoldenrodyellow: 0xfafad2,\n lightgray: 0xd3d3d3,\n lightgreen: 0x90ee90,\n lightgrey: 0xd3d3d3,\n lightpink: 0xffb6c1,\n lightsalmon: 0xffa07a,\n lightseagreen: 0x20b2aa,\n lightskyblue: 0x87cefa,\n lightslategray: 0x778899,\n lightslategrey: 0x778899,\n lightsteelblue: 0xb0c4de,\n lightyellow: 0xffffe0,\n lime: 0x00ff00,\n limegreen: 0x32cd32,\n linen: 0xfaf0e6,\n magenta: 0xff00ff,\n maroon: 0x800000,\n mediumaquamarine: 0x66cdaa,\n mediumblue: 0x0000cd,\n mediumorchid: 0xba55d3,\n mediumpurple: 0x9370db,\n mediumseagreen: 0x3cb371,\n mediumslateblue: 0x7b68ee,\n mediumspringgreen: 0x00fa9a,\n mediumturquoise: 0x48d1cc,\n mediumvioletred: 0xc71585,\n midnightblue: 0x191970,\n mintcream: 0xf5fffa,\n mistyrose: 0xffe4e1,\n moccasin: 0xffe4b5,\n navajowhite: 0xffdead,\n navy: 0x000080,\n oldlace: 0xfdf5e6,\n olive: 0x808000,\n olivedrab: 0x6b8e23,\n orange: 0xffa500,\n orangered: 0xff4500,\n orchid: 0xda70d6,\n palegoldenrod: 0xeee8aa,\n palegreen: 0x98fb98,\n paleturquoise: 0xafeeee,\n palevioletred: 0xdb7093,\n papayawhip: 0xffefd5,\n peachpuff: 0xffdab9,\n peru: 0xcd853f,\n pink: 0xffc0cb,\n plum: 0xdda0dd,\n powderblue: 0xb0e0e6,\n purple: 0x800080,\n rebeccapurple: 0x663399,\n red: 0xff0000,\n rosybrown: 0xbc8f8f,\n royalblue: 0x4169e1,\n saddlebrown: 0x8b4513,\n salmon: 0xfa8072,\n sandybrown: 0xf4a460,\n seagreen: 0x2e8b57,\n seashell: 0xfff5ee,\n sienna: 0xa0522d,\n silver: 0xc0c0c0,\n skyblue: 0x87ceeb,\n slateblue: 0x6a5acd,\n slategray: 0x708090,\n slategrey: 0x708090,\n snow: 0xfffafa,\n springgreen: 0x00ff7f,\n steelblue: 0x4682b4,\n tan: 0xd2b48c,\n teal: 0x008080,\n thistle: 0xd8bfd8,\n tomato: 0xff6347,\n turquoise: 0x40e0d0,\n violet: 0xee82ee,\n wheat: 0xf5deb3,\n white: 0xffffff,\n whitesmoke: 0xf5f5f5,\n yellow: 0xffff00,\n yellowgreen: 0x9acd32\n};\n\ndefine(Color, color, {\n copy(channels) {\n return Object.assign(new this.constructor, this, channels);\n },\n displayable() {\n return this.rgb().displayable();\n },\n hex: color_formatHex, // Deprecated! Use color.formatHex.\n formatHex: color_formatHex,\n formatHex8: color_formatHex8,\n formatHsl: color_formatHsl,\n formatRgb: color_formatRgb,\n toString: color_formatRgb\n});\n\nfunction color_formatHex() {\n return this.rgb().formatHex();\n}\n\nfunction color_formatHex8() {\n return this.rgb().formatHex8();\n}\n\nfunction color_formatHsl() {\n return hslConvert(this).formatHsl();\n}\n\nfunction color_formatRgb() {\n return this.rgb().formatRgb();\n}\n\nexport default function color(format) {\n var m, l;\n format = (format + \"\").trim().toLowerCase();\n return (m = reHex.exec(format)) ? (l = m[1].length, m = parseInt(m[1], 16), l === 6 ? rgbn(m) // #ff0000\n : l === 3 ? new Rgb((m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1) // #f00\n : l === 8 ? rgba(m >> 24 & 0xff, m >> 16 & 0xff, m >> 8 & 0xff, (m & 0xff) / 0xff) // #ff000000\n : l === 4 ? rgba((m >> 12 & 0xf) | (m >> 8 & 0xf0), (m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), (((m & 0xf) << 4) | (m & 0xf)) / 0xff) // #f000\n : null) // invalid hex\n : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)\n : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)\n : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)\n : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)\n : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)\n : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)\n : named.hasOwnProperty(format) ? rgbn(named[format]) // eslint-disable-line no-prototype-builtins\n : format === \"transparent\" ? new Rgb(NaN, NaN, NaN, 0)\n : null;\n}\n\nfunction rgbn(n) {\n return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);\n}\n\nfunction rgba(r, g, b, a) {\n if (a <= 0) r = g = b = NaN;\n return new Rgb(r, g, b, a);\n}\n\nexport function rgbConvert(o) {\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Rgb;\n o = o.rgb();\n return new Rgb(o.r, o.g, o.b, o.opacity);\n}\n\nexport function rgb(r, g, b, opacity) {\n return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);\n}\n\nexport function Rgb(r, g, b, opacity) {\n this.r = +r;\n this.g = +g;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Rgb, rgb, extend(Color, {\n brighter(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n darker(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n rgb() {\n return this;\n },\n clamp() {\n return new Rgb(clampi(this.r), clampi(this.g), clampi(this.b), clampa(this.opacity));\n },\n displayable() {\n return (-0.5 <= this.r && this.r < 255.5)\n && (-0.5 <= this.g && this.g < 255.5)\n && (-0.5 <= this.b && this.b < 255.5)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n hex: rgb_formatHex, // Deprecated! Use color.formatHex.\n formatHex: rgb_formatHex,\n formatHex8: rgb_formatHex8,\n formatRgb: rgb_formatRgb,\n toString: rgb_formatRgb\n}));\n\nfunction rgb_formatHex() {\n return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}`;\n}\n\nfunction rgb_formatHex8() {\n return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}${hex((isNaN(this.opacity) ? 1 : this.opacity) * 255)}`;\n}\n\nfunction rgb_formatRgb() {\n const a = clampa(this.opacity);\n return `${a === 1 ? \"rgb(\" : \"rgba(\"}${clampi(this.r)}, ${clampi(this.g)}, ${clampi(this.b)}${a === 1 ? \")\" : `, ${a})`}`;\n}\n\nfunction clampa(opacity) {\n return isNaN(opacity) ? 1 : Math.max(0, Math.min(1, opacity));\n}\n\nfunction clampi(value) {\n return Math.max(0, Math.min(255, Math.round(value) || 0));\n}\n\nfunction hex(value) {\n value = clampi(value);\n return (value < 16 ? \"0\" : \"\") + value.toString(16);\n}\n\nfunction hsla(h, s, l, a) {\n if (a <= 0) h = s = l = NaN;\n else if (l <= 0 || l >= 1) h = s = NaN;\n else if (s <= 0) h = NaN;\n return new Hsl(h, s, l, a);\n}\n\nexport function hslConvert(o) {\n if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Hsl;\n if (o instanceof Hsl) return o;\n o = o.rgb();\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n h = NaN,\n s = max - min,\n l = (max + min) / 2;\n if (s) {\n if (r === max) h = (g - b) / s + (g < b) * 6;\n else if (g === max) h = (b - r) / s + 2;\n else h = (r - g) / s + 4;\n s /= l < 0.5 ? max + min : 2 - max - min;\n h *= 60;\n } else {\n s = l > 0 && l < 1 ? 0 : h;\n }\n return new Hsl(h, s, l, o.opacity);\n}\n\nexport function hsl(h, s, l, opacity) {\n return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);\n}\n\nfunction Hsl(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hsl, hsl, extend(Color, {\n brighter(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n darker(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n rgb() {\n var h = this.h % 360 + (this.h < 0) * 360,\n s = isNaN(h) || isNaN(this.s) ? 0 : this.s,\n l = this.l,\n m2 = l + (l < 0.5 ? l : 1 - l) * s,\n m1 = 2 * l - m2;\n return new Rgb(\n hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2),\n hsl2rgb(h, m1, m2),\n hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2),\n this.opacity\n );\n },\n clamp() {\n return new Hsl(clamph(this.h), clampt(this.s), clampt(this.l), clampa(this.opacity));\n },\n displayable() {\n return (0 <= this.s && this.s <= 1 || isNaN(this.s))\n && (0 <= this.l && this.l <= 1)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n formatHsl() {\n const a = clampa(this.opacity);\n return `${a === 1 ? \"hsl(\" : \"hsla(\"}${clamph(this.h)}, ${clampt(this.s) * 100}%, ${clampt(this.l) * 100}%${a === 1 ? \")\" : `, ${a})`}`;\n }\n}));\n\nfunction clamph(value) {\n value = (value || 0) % 360;\n return value < 0 ? value + 360 : value;\n}\n\nfunction clampt(value) {\n return Math.max(0, Math.min(1, value || 0));\n}\n\n/* From FvD 13.37, CSS Color Module Level 3 */\nfunction hsl2rgb(h, m1, m2) {\n return (h < 60 ? m1 + (m2 - m1) * h / 60\n : h < 180 ? m2\n : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60\n : m1) * 255;\n}\n","import {bisect} from \"d3-array\";\nimport {interpolate as interpolateValue, interpolateNumber, interpolateRound} from \"d3-interpolate\";\nimport constant from \"./constant.js\";\nimport number from \"./number.js\";\n\nvar unit = [0, 1];\n\nexport function identity(x) {\n return x;\n}\n\nfunction normalize(a, b) {\n return (b -= (a = +a))\n ? function(x) { return (x - a) / b; }\n : constant(isNaN(b) ? NaN : 0.5);\n}\n\nfunction clamper(a, b) {\n var t;\n if (a > b) t = a, a = b, b = t;\n return function(x) { return Math.max(a, Math.min(b, x)); };\n}\n\n// normalize(a, b)(x) takes a domain value x in [a,b] and returns the corresponding parameter t in [0,1].\n// interpolate(a, b)(t) takes a parameter t in [0,1] and returns the corresponding range value x in [a,b].\nfunction bimap(domain, range, interpolate) {\n var d0 = domain[0], d1 = domain[1], r0 = range[0], r1 = range[1];\n if (d1 < d0) d0 = normalize(d1, d0), r0 = interpolate(r1, r0);\n else d0 = normalize(d0, d1), r0 = interpolate(r0, r1);\n return function(x) { return r0(d0(x)); };\n}\n\nfunction polymap(domain, range, interpolate) {\n var j = Math.min(domain.length, range.length) - 1,\n d = new Array(j),\n r = new Array(j),\n i = -1;\n\n // Reverse descending domains.\n if (domain[j] < domain[0]) {\n domain = domain.slice().reverse();\n range = range.slice().reverse();\n }\n\n while (++i < j) {\n d[i] = normalize(domain[i], domain[i + 1]);\n r[i] = interpolate(range[i], range[i + 1]);\n }\n\n return function(x) {\n var i = bisect(domain, x, 1, j) - 1;\n return r[i](d[i](x));\n };\n}\n\nexport function copy(source, target) {\n return target\n .domain(source.domain())\n .range(source.range())\n .interpolate(source.interpolate())\n .clamp(source.clamp())\n .unknown(source.unknown());\n}\n\nexport function transformer() {\n var domain = unit,\n range = unit,\n interpolate = interpolateValue,\n transform,\n untransform,\n unknown,\n clamp = identity,\n piecewise,\n output,\n input;\n\n function rescale() {\n var n = Math.min(domain.length, range.length);\n if (clamp !== identity) clamp = clamper(domain[0], domain[n - 1]);\n piecewise = n > 2 ? polymap : bimap;\n output = input = null;\n return scale;\n }\n\n function scale(x) {\n return x == null || isNaN(x = +x) ? unknown : (output || (output = piecewise(domain.map(transform), range, interpolate)))(transform(clamp(x)));\n }\n\n scale.invert = function(y) {\n return clamp(untransform((input || (input = piecewise(range, domain.map(transform), interpolateNumber)))(y)));\n };\n\n scale.domain = function(_) {\n return arguments.length ? (domain = Array.from(_, number), rescale()) : domain.slice();\n };\n\n scale.range = function(_) {\n return arguments.length ? (range = Array.from(_), rescale()) : range.slice();\n };\n\n scale.rangeRound = function(_) {\n return range = Array.from(_), interpolate = interpolateRound, rescale();\n };\n\n scale.clamp = function(_) {\n return arguments.length ? (clamp = _ ? true : identity, rescale()) : clamp !== identity;\n };\n\n scale.interpolate = function(_) {\n return arguments.length ? (interpolate = _, rescale()) : interpolate;\n };\n\n scale.unknown = function(_) {\n return arguments.length ? (unknown = _, scale) : unknown;\n };\n\n return function(t, u) {\n transform = t, untransform = u;\n return rescale();\n };\n}\n\nexport default function continuous() {\n return transformer()(identity, identity);\n}\n","import {color} from \"d3-color\";\nimport rgb from \"./rgb.js\";\nimport {genericArray} from \"./array.js\";\nimport date from \"./date.js\";\nimport number from \"./number.js\";\nimport object from \"./object.js\";\nimport string from \"./string.js\";\nimport constant from \"./constant.js\";\nimport numberArray, {isNumberArray} from \"./numberArray.js\";\n\nexport default function(a, b) {\n var t = typeof b, c;\n return b == null || t === \"boolean\" ? constant(b)\n : (t === \"number\" ? number\n : t === \"string\" ? ((c = color(b)) ? (b = c, rgb) : string)\n : b instanceof color ? rgb\n : b instanceof Date ? date\n : isNumberArray(b) ? numberArray\n : Array.isArray(b) ? genericArray\n : typeof b.valueOf !== \"function\" && typeof b.toString !== \"function\" || isNaN(b) ? object\n : number)(a, b);\n}\n","import {rgb as colorRgb} from \"d3-color\";\nimport basis from \"./basis.js\";\nimport basisClosed from \"./basisClosed.js\";\nimport nogamma, {gamma} from \"./color.js\";\n\nexport default (function rgbGamma(y) {\n var color = gamma(y);\n\n function rgb(start, end) {\n var r = color((start = colorRgb(start)).r, (end = colorRgb(end)).r),\n g = color(start.g, end.g),\n b = color(start.b, end.b),\n opacity = nogamma(start.opacity, end.opacity);\n return function(t) {\n start.r = r(t);\n start.g = g(t);\n start.b = b(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n\n rgb.gamma = rgbGamma;\n\n return rgb;\n})(1);\n\nfunction rgbSpline(spline) {\n return function(colors) {\n var n = colors.length,\n r = new Array(n),\n g = new Array(n),\n b = new Array(n),\n i, color;\n for (i = 0; i < n; ++i) {\n color = colorRgb(colors[i]);\n r[i] = color.r || 0;\n g[i] = color.g || 0;\n b[i] = color.b || 0;\n }\n r = spline(r);\n g = spline(g);\n b = spline(b);\n color.opacity = 1;\n return function(t) {\n color.r = r(t);\n color.g = g(t);\n color.b = b(t);\n return color + \"\";\n };\n };\n}\n\nexport var rgbBasis = rgbSpline(basis);\nexport var rgbBasisClosed = rgbSpline(basisClosed);\n","export function basis(t1, v0, v1, v2, v3) {\n var t2 = t1 * t1, t3 = t2 * t1;\n return ((1 - 3 * t1 + 3 * t2 - t3) * v0\n + (4 - 6 * t2 + 3 * t3) * v1\n + (1 + 3 * t1 + 3 * t2 - 3 * t3) * v2\n + t3 * v3) / 6;\n}\n\nexport default function(values) {\n var n = values.length - 1;\n return function(t) {\n var i = t <= 0 ? (t = 0) : t >= 1 ? (t = 1, n - 1) : Math.floor(t * n),\n v1 = values[i],\n v2 = values[i + 1],\n v0 = i > 0 ? values[i - 1] : 2 * v1 - v2,\n v3 = i < n - 1 ? values[i + 2] : 2 * v2 - v1;\n return basis((t - i / n) * n, v0, v1, v2, v3);\n };\n}\n","import {basis} from \"./basis.js\";\n\nexport default function(values) {\n var n = values.length;\n return function(t) {\n var i = Math.floor(((t %= 1) < 0 ? ++t : t) * n),\n v0 = values[(i + n - 1) % n],\n v1 = values[i % n],\n v2 = values[(i + 1) % n],\n v3 = values[(i + 2) % n];\n return basis((t - i / n) * n, v0, v1, v2, v3);\n };\n}\n","export default x => () => x;\n","import constant from \"./constant.js\";\n\nfunction linear(a, d) {\n return function(t) {\n return a + t * d;\n };\n}\n\nfunction exponential(a, b, y) {\n return a = Math.pow(a, y), b = Math.pow(b, y) - a, y = 1 / y, function(t) {\n return Math.pow(a + t * b, y);\n };\n}\n\nexport function hue(a, b) {\n var d = b - a;\n return d ? linear(a, d > 180 || d < -180 ? d - 360 * Math.round(d / 360) : d) : constant(isNaN(a) ? b : a);\n}\n\nexport function gamma(y) {\n return (y = +y) === 1 ? nogamma : function(a, b) {\n return b - a ? exponential(a, b, y) : constant(isNaN(a) ? b : a);\n };\n}\n\nexport default function nogamma(a, b) {\n var d = b - a;\n return d ? linear(a, d) : constant(isNaN(a) ? b : a);\n}\n","export default function(a, b) {\n if (!b) b = [];\n var n = a ? Math.min(b.length, a.length) : 0,\n c = b.slice(),\n i;\n return function(t) {\n for (i = 0; i < n; ++i) c[i] = a[i] * (1 - t) + b[i] * t;\n return c;\n };\n}\n\nexport function isNumberArray(x) {\n return ArrayBuffer.isView(x) && !(x instanceof DataView);\n}\n","import value from \"./value.js\";\nimport numberArray, {isNumberArray} from \"./numberArray.js\";\n\nexport default function(a, b) {\n return (isNumberArray(b) ? numberArray : genericArray)(a, b);\n}\n\nexport function genericArray(a, b) {\n var nb = b ? b.length : 0,\n na = a ? Math.min(nb, a.length) : 0,\n x = new Array(na),\n c = new Array(nb),\n i;\n\n for (i = 0; i < na; ++i) x[i] = value(a[i], b[i]);\n for (; i < nb; ++i) c[i] = b[i];\n\n return function(t) {\n for (i = 0; i < na; ++i) c[i] = x[i](t);\n return c;\n };\n}\n","export default function(a, b) {\n var d = new Date;\n return a = +a, b = +b, function(t) {\n return d.setTime(a * (1 - t) + b * t), d;\n };\n}\n","export default function(a, b) {\n return a = +a, b = +b, function(t) {\n return a * (1 - t) + b * t;\n };\n}\n","import value from \"./value.js\";\n\nexport default function(a, b) {\n var i = {},\n c = {},\n k;\n\n if (a === null || typeof a !== \"object\") a = {};\n if (b === null || typeof b !== \"object\") b = {};\n\n for (k in b) {\n if (k in a) {\n i[k] = value(a[k], b[k]);\n } else {\n c[k] = b[k];\n }\n }\n\n return function(t) {\n for (k in i) c[k] = i[k](t);\n return c;\n };\n}\n","import number from \"./number.js\";\n\nvar reA = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,\n reB = new RegExp(reA.source, \"g\");\n\nfunction zero(b) {\n return function() {\n return b;\n };\n}\n\nfunction one(b) {\n return function(t) {\n return b(t) + \"\";\n };\n}\n\nexport default function(a, b) {\n var bi = reA.lastIndex = reB.lastIndex = 0, // scan index for next number in b\n am, // current match in a\n bm, // current match in b\n bs, // string preceding current number in b, if any\n i = -1, // index in s\n s = [], // string constants and placeholders\n q = []; // number interpolators\n\n // Coerce inputs to strings.\n a = a + \"\", b = b + \"\";\n\n // Interpolate pairs of numbers in a & b.\n while ((am = reA.exec(a))\n && (bm = reB.exec(b))) {\n if ((bs = bm.index) > bi) { // a string precedes the next number in b\n bs = b.slice(bi, bs);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n if ((am = am[0]) === (bm = bm[0])) { // numbers in a & b match\n if (s[i]) s[i] += bm; // coalesce with previous string\n else s[++i] = bm;\n } else { // interpolate non-matching numbers\n s[++i] = null;\n q.push({i: i, x: number(am, bm)});\n }\n bi = reB.lastIndex;\n }\n\n // Add remains of b.\n if (bi < b.length) {\n bs = b.slice(bi);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n\n // Special optimization for only a single match.\n // Otherwise, interpolate each of the numbers and rejoin the string.\n return s.length < 2 ? (q[0]\n ? one(q[0].x)\n : zero(b))\n : (b = q.length, function(t) {\n for (var i = 0, o; i < b; ++i) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n });\n}\n","export default function(a, b) {\n return a = +a, b = +b, function(t) {\n return Math.round(a * (1 - t) + b * t);\n };\n}\n","export default function constants(x) {\n return function() {\n return x;\n };\n}\n","export default function number(x) {\n return +x;\n}\n","import {ticks, tickIncrement} from \"d3-array\";\nimport continuous, {copy} from \"./continuous.js\";\nimport {initRange} from \"./init.js\";\nimport tickFormat from \"./tickFormat.js\";\n\nexport function linearish(scale) {\n var domain = scale.domain;\n\n scale.ticks = function(count) {\n var d = domain();\n return ticks(d[0], d[d.length - 1], count == null ? 10 : count);\n };\n\n scale.tickFormat = function(count, specifier) {\n var d = domain();\n return tickFormat(d[0], d[d.length - 1], count == null ? 10 : count, specifier);\n };\n\n scale.nice = function(count) {\n if (count == null) count = 10;\n\n var d = domain();\n var i0 = 0;\n var i1 = d.length - 1;\n var start = d[i0];\n var stop = d[i1];\n var prestep;\n var step;\n var maxIter = 10;\n\n if (stop < start) {\n step = start, start = stop, stop = step;\n step = i0, i0 = i1, i1 = step;\n }\n \n while (maxIter-- > 0) {\n step = tickIncrement(start, stop, count);\n if (step === prestep) {\n d[i0] = start\n d[i1] = stop\n return domain(d);\n } else if (step > 0) {\n start = Math.floor(start / step) * step;\n stop = Math.ceil(stop / step) * step;\n } else if (step < 0) {\n start = Math.ceil(start * step) / step;\n stop = Math.floor(stop * step) / step;\n } else {\n break;\n }\n prestep = step;\n }\n\n return scale;\n };\n\n return scale;\n}\n\nexport default function linear() {\n var scale = continuous();\n\n scale.copy = function() {\n return copy(scale, linear());\n };\n\n initRange.apply(scale, arguments);\n\n return linearish(scale);\n}\n","export default function(x) {\n return Math.abs(x = Math.round(x)) >= 1e21\n ? x.toLocaleString(\"en\").replace(/,/g, \"\")\n : x.toString(10);\n}\n\n// Computes the decimal coefficient and exponent of the specified number x with\n// significant digits p, where x is positive and p is in [1, 21] or undefined.\n// For example, formatDecimalParts(1.23) returns [\"123\", 0].\nexport function formatDecimalParts(x, p) {\n if ((i = (x = p ? x.toExponential(p - 1) : x.toExponential()).indexOf(\"e\")) < 0) return null; // NaN, ±Infinity\n var i, coefficient = x.slice(0, i);\n\n // The string returned by toExponential either has the form \\d\\.\\d+e[-+]\\d+\n // (e.g., 1.2e+3) or the form \\de[-+]\\d+ (e.g., 1e+3).\n return [\n coefficient.length > 1 ? coefficient[0] + coefficient.slice(2) : coefficient,\n +x.slice(i + 1)\n ];\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport default function(x) {\n return x = formatDecimalParts(Math.abs(x)), x ? x[1] : NaN;\n}\n","export default function(grouping, thousands) {\n return function(value, width) {\n var i = value.length,\n t = [],\n j = 0,\n g = grouping[0],\n length = 0;\n\n while (i > 0 && g > 0) {\n if (length + g + 1 > width) g = Math.max(1, width - length);\n t.push(value.substring(i -= g, i + g));\n if ((length += g + 1) > width) break;\n g = grouping[j = (j + 1) % grouping.length];\n }\n\n return t.reverse().join(thousands);\n };\n}\n","export default function(numerals) {\n return function(value) {\n return value.replace(/[0-9]/g, function(i) {\n return numerals[+i];\n });\n };\n}\n","// [[fill]align][sign][symbol][0][width][,][.precision][~][type]\nvar re = /^(?:(.)?([<>=^]))?([+\\-( ])?([$#])?(0)?(\\d+)?(,)?(\\.\\d+)?(~)?([a-z%])?$/i;\n\nexport default function formatSpecifier(specifier) {\n if (!(match = re.exec(specifier))) throw new Error(\"invalid format: \" + specifier);\n var match;\n return new FormatSpecifier({\n fill: match[1],\n align: match[2],\n sign: match[3],\n symbol: match[4],\n zero: match[5],\n width: match[6],\n comma: match[7],\n precision: match[8] && match[8].slice(1),\n trim: match[9],\n type: match[10]\n });\n}\n\nformatSpecifier.prototype = FormatSpecifier.prototype; // instanceof\n\nexport function FormatSpecifier(specifier) {\n this.fill = specifier.fill === undefined ? \" \" : specifier.fill + \"\";\n this.align = specifier.align === undefined ? \">\" : specifier.align + \"\";\n this.sign = specifier.sign === undefined ? \"-\" : specifier.sign + \"\";\n this.symbol = specifier.symbol === undefined ? \"\" : specifier.symbol + \"\";\n this.zero = !!specifier.zero;\n this.width = specifier.width === undefined ? undefined : +specifier.width;\n this.comma = !!specifier.comma;\n this.precision = specifier.precision === undefined ? undefined : +specifier.precision;\n this.trim = !!specifier.trim;\n this.type = specifier.type === undefined ? \"\" : specifier.type + \"\";\n}\n\nFormatSpecifier.prototype.toString = function() {\n return this.fill\n + this.align\n + this.sign\n + this.symbol\n + (this.zero ? \"0\" : \"\")\n + (this.width === undefined ? \"\" : Math.max(1, this.width | 0))\n + (this.comma ? \",\" : \"\")\n + (this.precision === undefined ? \"\" : \".\" + Math.max(0, this.precision | 0))\n + (this.trim ? \"~\" : \"\")\n + this.type;\n};\n","// Trims insignificant zeros, e.g., replaces 1.2000k with 1.2k.\nexport default function(s) {\n out: for (var n = s.length, i = 1, i0 = -1, i1; i < n; ++i) {\n switch (s[i]) {\n case \".\": i0 = i1 = i; break;\n case \"0\": if (i0 === 0) i0 = i; i1 = i; break;\n default: if (!+s[i]) break out; if (i0 > 0) i0 = 0; break;\n }\n }\n return i0 > 0 ? s.slice(0, i0) + s.slice(i1 + 1) : s;\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport var prefixExponent;\n\nexport default function(x, p) {\n var d = formatDecimalParts(x, p);\n if (!d) return x + \"\";\n var coefficient = d[0],\n exponent = d[1],\n i = exponent - (prefixExponent = Math.max(-8, Math.min(8, Math.floor(exponent / 3))) * 3) + 1,\n n = coefficient.length;\n return i === n ? coefficient\n : i > n ? coefficient + new Array(i - n + 1).join(\"0\")\n : i > 0 ? coefficient.slice(0, i) + \".\" + coefficient.slice(i)\n : \"0.\" + new Array(1 - i).join(\"0\") + formatDecimalParts(x, Math.max(0, p + i - 1))[0]; // less than 1y!\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport default function(x, p) {\n var d = formatDecimalParts(x, p);\n if (!d) return x + \"\";\n var coefficient = d[0],\n exponent = d[1];\n return exponent < 0 ? \"0.\" + new Array(-exponent).join(\"0\") + coefficient\n : coefficient.length > exponent + 1 ? coefficient.slice(0, exponent + 1) + \".\" + coefficient.slice(exponent + 1)\n : coefficient + new Array(exponent - coefficient.length + 2).join(\"0\");\n}\n","import formatDecimal from \"./formatDecimal.js\";\nimport formatPrefixAuto from \"./formatPrefixAuto.js\";\nimport formatRounded from \"./formatRounded.js\";\n\nexport default {\n \"%\": (x, p) => (x * 100).toFixed(p),\n \"b\": (x) => Math.round(x).toString(2),\n \"c\": (x) => x + \"\",\n \"d\": formatDecimal,\n \"e\": (x, p) => x.toExponential(p),\n \"f\": (x, p) => x.toFixed(p),\n \"g\": (x, p) => x.toPrecision(p),\n \"o\": (x) => Math.round(x).toString(8),\n \"p\": (x, p) => formatRounded(x * 100, p),\n \"r\": formatRounded,\n \"s\": formatPrefixAuto,\n \"X\": (x) => Math.round(x).toString(16).toUpperCase(),\n \"x\": (x) => Math.round(x).toString(16)\n};\n","export default function(x) {\n return x;\n}\n","import exponent from \"./exponent.js\";\nimport formatGroup from \"./formatGroup.js\";\nimport formatNumerals from \"./formatNumerals.js\";\nimport formatSpecifier from \"./formatSpecifier.js\";\nimport formatTrim from \"./formatTrim.js\";\nimport formatTypes from \"./formatTypes.js\";\nimport {prefixExponent} from \"./formatPrefixAuto.js\";\nimport identity from \"./identity.js\";\n\nvar map = Array.prototype.map,\n prefixes = [\"y\",\"z\",\"a\",\"f\",\"p\",\"n\",\"µ\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\",\"P\",\"E\",\"Z\",\"Y\"];\n\nexport default function(locale) {\n var group = locale.grouping === undefined || locale.thousands === undefined ? identity : formatGroup(map.call(locale.grouping, Number), locale.thousands + \"\"),\n currencyPrefix = locale.currency === undefined ? \"\" : locale.currency[0] + \"\",\n currencySuffix = locale.currency === undefined ? \"\" : locale.currency[1] + \"\",\n decimal = locale.decimal === undefined ? \".\" : locale.decimal + \"\",\n numerals = locale.numerals === undefined ? identity : formatNumerals(map.call(locale.numerals, String)),\n percent = locale.percent === undefined ? \"%\" : locale.percent + \"\",\n minus = locale.minus === undefined ? \"−\" : locale.minus + \"\",\n nan = locale.nan === undefined ? \"NaN\" : locale.nan + \"\";\n\n function newFormat(specifier) {\n specifier = formatSpecifier(specifier);\n\n var fill = specifier.fill,\n align = specifier.align,\n sign = specifier.sign,\n symbol = specifier.symbol,\n zero = specifier.zero,\n width = specifier.width,\n comma = specifier.comma,\n precision = specifier.precision,\n trim = specifier.trim,\n type = specifier.type;\n\n // The \"n\" type is an alias for \",g\".\n if (type === \"n\") comma = true, type = \"g\";\n\n // The \"\" type, and any invalid type, is an alias for \".12~g\".\n else if (!formatTypes[type]) precision === undefined && (precision = 12), trim = true, type = \"g\";\n\n // If zero fill is specified, padding goes after sign and before digits.\n if (zero || (fill === \"0\" && align === \"=\")) zero = true, fill = \"0\", align = \"=\";\n\n // Compute the prefix and suffix.\n // For SI-prefix, the suffix is lazily computed.\n var prefix = symbol === \"$\" ? currencyPrefix : symbol === \"#\" && /[boxX]/.test(type) ? \"0\" + type.toLowerCase() : \"\",\n suffix = symbol === \"$\" ? currencySuffix : /[%p]/.test(type) ? percent : \"\";\n\n // What format function should we use?\n // Is this an integer type?\n // Can this type generate exponential notation?\n var formatType = formatTypes[type],\n maybeSuffix = /[defgprs%]/.test(type);\n\n // Set the default precision if not specified,\n // or clamp the specified precision to the supported range.\n // For significant precision, it must be in [1, 21].\n // For fixed precision, it must be in [0, 20].\n precision = precision === undefined ? 6\n : /[gprs]/.test(type) ? Math.max(1, Math.min(21, precision))\n : Math.max(0, Math.min(20, precision));\n\n function format(value) {\n var valuePrefix = prefix,\n valueSuffix = suffix,\n i, n, c;\n\n if (type === \"c\") {\n valueSuffix = formatType(value) + valueSuffix;\n value = \"\";\n } else {\n value = +value;\n\n // Determine the sign. -0 is not less than 0, but 1 / -0 is!\n var valueNegative = value < 0 || 1 / value < 0;\n\n // Perform the initial formatting.\n value = isNaN(value) ? nan : formatType(Math.abs(value), precision);\n\n // Trim insignificant zeros.\n if (trim) value = formatTrim(value);\n\n // If a negative value rounds to zero after formatting, and no explicit positive sign is requested, hide the sign.\n if (valueNegative && +value === 0 && sign !== \"+\") valueNegative = false;\n\n // Compute the prefix and suffix.\n valuePrefix = (valueNegative ? (sign === \"(\" ? sign : minus) : sign === \"-\" || sign === \"(\" ? \"\" : sign) + valuePrefix;\n valueSuffix = (type === \"s\" ? prefixes[8 + prefixExponent / 3] : \"\") + valueSuffix + (valueNegative && sign === \"(\" ? \")\" : \"\");\n\n // Break the formatted value into the integer “value” part that can be\n // grouped, and fractional or exponential “suffix” part that is not.\n if (maybeSuffix) {\n i = -1, n = value.length;\n while (++i < n) {\n if (c = value.charCodeAt(i), 48 > c || c > 57) {\n valueSuffix = (c === 46 ? decimal + value.slice(i + 1) : value.slice(i)) + valueSuffix;\n value = value.slice(0, i);\n break;\n }\n }\n }\n }\n\n // If the fill character is not \"0\", grouping is applied before padding.\n if (comma && !zero) value = group(value, Infinity);\n\n // Compute the padding.\n var length = valuePrefix.length + value.length + valueSuffix.length,\n padding = length < width ? new Array(width - length + 1).join(fill) : \"\";\n\n // If the fill character is \"0\", grouping is applied after padding.\n if (comma && zero) value = group(padding + value, padding.length ? width - valueSuffix.length : Infinity), padding = \"\";\n\n // Reconstruct the final output based on the desired alignment.\n switch (align) {\n case \"<\": value = valuePrefix + value + valueSuffix + padding; break;\n case \"=\": value = valuePrefix + padding + value + valueSuffix; break;\n case \"^\": value = padding.slice(0, length = padding.length >> 1) + valuePrefix + value + valueSuffix + padding.slice(length); break;\n default: value = padding + valuePrefix + value + valueSuffix; break;\n }\n\n return numerals(value);\n }\n\n format.toString = function() {\n return specifier + \"\";\n };\n\n return format;\n }\n\n function formatPrefix(specifier, value) {\n var f = newFormat((specifier = formatSpecifier(specifier), specifier.type = \"f\", specifier)),\n e = Math.max(-8, Math.min(8, Math.floor(exponent(value) / 3))) * 3,\n k = Math.pow(10, -e),\n prefix = prefixes[8 + e / 3];\n return function(value) {\n return f(k * value) + prefix;\n };\n }\n\n return {\n format: newFormat,\n formatPrefix: formatPrefix\n };\n}\n","import formatLocale from \"./locale.js\";\n\nvar locale;\nexport var format;\nexport var formatPrefix;\n\ndefaultLocale({\n thousands: \",\",\n grouping: [3],\n currency: [\"$\", \"\"]\n});\n\nexport default function defaultLocale(definition) {\n locale = formatLocale(definition);\n format = locale.format;\n formatPrefix = locale.formatPrefix;\n return locale;\n}\n","import exponent from \"./exponent.js\";\n\nexport default function(step) {\n return Math.max(0, -exponent(Math.abs(step)));\n}\n","import exponent from \"./exponent.js\";\n\nexport default function(step, value) {\n return Math.max(0, Math.max(-8, Math.min(8, Math.floor(exponent(value) / 3))) * 3 - exponent(Math.abs(step)));\n}\n","import exponent from \"./exponent.js\";\n\nexport default function(step, max) {\n step = Math.abs(step), max = Math.abs(max) - step;\n return Math.max(0, exponent(max) - exponent(step)) + 1;\n}\n","import {tickStep} from \"d3-array\";\nimport {format, formatPrefix, formatSpecifier, precisionFixed, precisionPrefix, precisionRound} from \"d3-format\";\n\nexport default function tickFormat(start, stop, count, specifier) {\n var step = tickStep(start, stop, count),\n precision;\n specifier = formatSpecifier(specifier == null ? \",f\" : specifier);\n switch (specifier.type) {\n case \"s\": {\n var value = Math.max(Math.abs(start), Math.abs(stop));\n if (specifier.precision == null && !isNaN(precision = precisionPrefix(step, value))) specifier.precision = precision;\n return formatPrefix(specifier, value);\n }\n case \"\":\n case \"e\":\n case \"g\":\n case \"p\":\n case \"r\": {\n if (specifier.precision == null && !isNaN(precision = precisionRound(step, Math.max(Math.abs(start), Math.abs(stop))))) specifier.precision = precision - (specifier.type === \"e\");\n break;\n }\n case \"f\":\n case \"%\": {\n if (specifier.precision == null && !isNaN(precision = precisionFixed(step))) specifier.precision = precision - (specifier.type === \"%\") * 2;\n break;\n }\n }\n return format(specifier);\n}\n","export default function max(values, valueof) {\n let max;\n if (valueof === undefined) {\n for (const value of values) {\n if (value != null\n && (max < value || (max === undefined && value >= value))) {\n max = value;\n }\n }\n } else {\n let index = -1;\n for (let value of values) {\n if ((value = valueof(value, ++index, values)) != null\n && (max < value || (max === undefined && value >= value))) {\n max = value;\n }\n }\n }\n return max;\n}\n","import {bisect} from \"d3-array\";\nimport {linearish} from \"./linear.js\";\nimport {initRange} from \"./init.js\";\n\nexport default function quantize() {\n var x0 = 0,\n x1 = 1,\n n = 1,\n domain = [0.5],\n range = [0, 1],\n unknown;\n\n function scale(x) {\n return x != null && x <= x ? range[bisect(domain, x, 0, n)] : unknown;\n }\n\n function rescale() {\n var i = -1;\n domain = new Array(n);\n while (++i < n) domain[i] = ((i + 1) * x1 - (i - n) * x0) / (n + 1);\n return scale;\n }\n\n scale.domain = function(_) {\n return arguments.length ? ([x0, x1] = _, x0 = +x0, x1 = +x1, rescale()) : [x0, x1];\n };\n\n scale.range = function(_) {\n return arguments.length ? (n = (range = Array.from(_)).length - 1, rescale()) : range.slice();\n };\n\n scale.invertExtent = function(y) {\n var i = range.indexOf(y);\n return i < 0 ? [NaN, NaN]\n : i < 1 ? [x0, domain[0]]\n : i >= n ? [domain[n - 1], x1]\n : [domain[i - 1], domain[i]];\n };\n\n scale.unknown = function(_) {\n return arguments.length ? (unknown = _, scale) : scale;\n };\n\n scale.thresholds = function() {\n return domain.slice();\n };\n\n scale.copy = function() {\n return quantize()\n .domain([x0, x1])\n .range(range)\n .unknown(unknown);\n };\n\n return initRange.apply(linearish(scale), arguments);\n}\n","function _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(r, l) { var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/**\n * @fileOverview Wrapper component to make charts adapt to the size of parent * DOM\n */\nimport clsx from 'clsx';\nimport React, { forwardRef, cloneElement, useState, useImperativeHandle, useRef, useEffect, useMemo, useCallback } from 'react';\nimport throttle from 'lodash/throttle';\nimport { isPercent } from '../util/DataUtils';\nimport { warn } from '../util/LogUtils';\nimport { getDisplayName } from '../util/ReactUtils';\nexport var ResponsiveContainer = /*#__PURE__*/forwardRef(function (_ref, ref) {\n var aspect = _ref.aspect,\n _ref$initialDimension = _ref.initialDimension,\n initialDimension = _ref$initialDimension === void 0 ? {\n width: -1,\n height: -1\n } : _ref$initialDimension,\n _ref$width = _ref.width,\n width = _ref$width === void 0 ? '100%' : _ref$width,\n _ref$height = _ref.height,\n height = _ref$height === void 0 ? '100%' : _ref$height,\n _ref$minWidth = _ref.minWidth,\n minWidth = _ref$minWidth === void 0 ? 0 : _ref$minWidth,\n minHeight = _ref.minHeight,\n maxHeight = _ref.maxHeight,\n children = _ref.children,\n _ref$debounce = _ref.debounce,\n debounce = _ref$debounce === void 0 ? 0 : _ref$debounce,\n id = _ref.id,\n className = _ref.className,\n onResize = _ref.onResize,\n _ref$style = _ref.style,\n style = _ref$style === void 0 ? {} : _ref$style;\n var containerRef = useRef(null);\n var onResizeRef = useRef();\n onResizeRef.current = onResize;\n useImperativeHandle(ref, function () {\n return Object.defineProperty(containerRef.current, 'current', {\n get: function get() {\n // eslint-disable-next-line no-console\n console.warn('The usage of ref.current.current is deprecated and will no longer be supported.');\n return containerRef.current;\n },\n configurable: true\n });\n });\n var _useState = useState({\n containerWidth: initialDimension.width,\n containerHeight: initialDimension.height\n }),\n _useState2 = _slicedToArray(_useState, 2),\n sizes = _useState2[0],\n setSizes = _useState2[1];\n var setContainerSize = useCallback(function (newWidth, newHeight) {\n setSizes(function (prevState) {\n var roundedWidth = Math.round(newWidth);\n var roundedHeight = Math.round(newHeight);\n if (prevState.containerWidth === roundedWidth && prevState.containerHeight === roundedHeight) {\n return prevState;\n }\n return {\n containerWidth: roundedWidth,\n containerHeight: roundedHeight\n };\n });\n }, []);\n useEffect(function () {\n var callback = function callback(entries) {\n var _onResizeRef$current;\n var _entries$0$contentRec = entries[0].contentRect,\n containerWidth = _entries$0$contentRec.width,\n containerHeight = _entries$0$contentRec.height;\n setContainerSize(containerWidth, containerHeight);\n (_onResizeRef$current = onResizeRef.current) === null || _onResizeRef$current === void 0 || _onResizeRef$current.call(onResizeRef, containerWidth, containerHeight);\n };\n if (debounce > 0) {\n callback = throttle(callback, debounce, {\n trailing: true,\n leading: false\n });\n }\n var observer = new ResizeObserver(callback);\n var _containerRef$current = containerRef.current.getBoundingClientRect(),\n containerWidth = _containerRef$current.width,\n containerHeight = _containerRef$current.height;\n setContainerSize(containerWidth, containerHeight);\n observer.observe(containerRef.current);\n return function () {\n observer.disconnect();\n };\n }, [setContainerSize, debounce]);\n var chartContent = useMemo(function () {\n var containerWidth = sizes.containerWidth,\n containerHeight = sizes.containerHeight;\n if (containerWidth < 0 || containerHeight < 0) {\n return null;\n }\n warn(isPercent(width) || isPercent(height), \"The width(%s) and height(%s) are both fixed numbers,\\n maybe you don't need to use a ResponsiveContainer.\", width, height);\n warn(!aspect || aspect > 0, 'The aspect(%s) must be greater than zero.', aspect);\n var calculatedWidth = isPercent(width) ? containerWidth : width;\n var calculatedHeight = isPercent(height) ? containerHeight : height;\n if (aspect && aspect > 0) {\n // Preserve the desired aspect ratio\n if (calculatedWidth) {\n // Will default to using width for aspect ratio\n calculatedHeight = calculatedWidth / aspect;\n } else if (calculatedHeight) {\n // But we should also take height into consideration\n calculatedWidth = calculatedHeight * aspect;\n }\n\n // if maxHeight is set, overwrite if calculatedHeight is greater than maxHeight\n if (maxHeight && calculatedHeight > maxHeight) {\n calculatedHeight = maxHeight;\n }\n }\n warn(calculatedWidth > 0 || calculatedHeight > 0, \"The width(%s) and height(%s) of chart should be greater than 0,\\n please check the style of container, or the props width(%s) and height(%s),\\n or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the\\n height and width.\", calculatedWidth, calculatedHeight, width, height, minWidth, minHeight, aspect);\n var isCharts = !Array.isArray(children) && getDisplayName(children.type).endsWith('Chart');\n return React.Children.map(children, function (child) {\n if ( /*#__PURE__*/React.isValidElement(child)) {\n return /*#__PURE__*/cloneElement(child, _objectSpread({\n width: calculatedWidth,\n height: calculatedHeight\n }, isCharts ? {\n style: _objectSpread({\n height: '100%',\n width: '100%',\n maxHeight: calculatedHeight,\n maxWidth: calculatedWidth\n }, child.props.style)\n } : {}));\n }\n return child;\n });\n }, [aspect, children, height, maxHeight, minHeight, minWidth, sizes, width]);\n return /*#__PURE__*/React.createElement(\"div\", {\n id: id ? \"\".concat(id) : undefined,\n className: clsx('recharts-responsive-container', className),\n style: _objectSpread(_objectSpread({}, style), {}, {\n width: width,\n height: height,\n minWidth: minWidth,\n minHeight: minHeight,\n maxHeight: maxHeight\n }),\n ref: containerRef\n }, chartContent);\n});","/**\n * @fileOverview Area Chart\n */\nimport { generateCategoricalChart } from './generateCategoricalChart';\nimport { Area } from '../cartesian/Area';\nimport { XAxis } from '../cartesian/XAxis';\nimport { YAxis } from '../cartesian/YAxis';\nimport { formatAxisMap } from '../util/CartesianUtils';\nexport var AreaChart = generateCategoricalChart({\n chartName: 'AreaChart',\n GraphicalChild: Area,\n axisComponents: [{\n axisType: 'xAxis',\n AxisComp: XAxis\n }, {\n axisType: 'yAxis',\n AxisComp: YAxis\n }],\n formatAxisMap: formatAxisMap\n});","// This file must be bundled in the app's client layer, it shouldn't be directly\n// imported by the server.\n\nexport { callServer } from 'next/dist/client/app-call-server'\nexport { findSourceMapURL } from 'next/dist/client/app-find-source-map-url'\n\n// A noop wrapper to let the Flight client create the server reference.\n// See also: https://github.com/facebook/react/pull/26632\n// eslint-disable-next-line import/no-extraneous-dependencies\nexport { createServerReference } from 'react-server-dom-webpack/client'\n","'use client';\nimport { DesignBadge } from \"@/components/design-components/badge\";\nimport { DesignCard } from \"@/components/design-components/card\";\nimport { Link } from \"@/components/link\";\nimport { ProjectUsersMetric } from \"@/components/project-users-metric\";\nimport { useFromNow } from '@/hooks/use-from-now';\nimport { FolderOpenIcon } from \"@phosphor-icons/react\";\nimport { AdminProject } from '@stackframe/stack';\nimport { urlString } from \"@stackframe/stack-shared/dist/utils/urls\";\n\nexport function ProjectCard(props: {\n project: AdminProject,\n href?: string,\n showIncompleteBadge?: boolean,\n totalUsers?: number,\n dailySignups?: { date: string, activity: number }[],\n metricsLoading?: boolean,\n metricsError?: boolean,\n}) {\n const createdAt = useFromNow(props.project.createdAt);\n const href = props.href ?? urlString`/projects/${props.project.id}`;\n\n return (\n <Link href={href}>\n <DesignCard\n className=\"h-full\"\n contentClassName=\"p-3\"\n gradient={props.showIncompleteBadge ? \"orange\" : \"default\"}\n glassmorphic\n >\n <div className=\"flex items-center gap-2.5\">\n <div className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-foreground/[0.06] ring-1 ring-black/[0.04] dark:ring-white/[0.04]\">\n <FolderOpenIcon className=\"h-4 w-4 text-foreground/70\" weight=\"duotone\" />\n </div>\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex items-baseline justify-between gap-2\">\n <h3 className=\"truncate text-sm font-semibold leading-tight tracking-tight text-foreground\">\n {props.project.displayName}\n </h3>\n {props.showIncompleteBadge ? (\n <DesignBadge label=\"Setup incomplete\" color=\"orange\" size=\"sm\" />\n ) : (\n <span className=\"shrink-0 text-[10px] text-muted-foreground/80 whitespace-nowrap\">\n {createdAt}\n </span>\n )}\n </div>\n <p className=\"truncate text-xs leading-snug text-muted-foreground\">\n {props.project.description || \"No description yet\"}\n </p>\n </div>\n </div>\n\n <div className=\"-mx-3 -mb-3 mt-3 overflow-hidden rounded-b-2xl border-t border-black/[0.08] dark:border-white/[0.06] px-3 pt-3 pb-3\">\n <ProjectUsersMetric\n totalUsers={props.totalUsers}\n data={props.dailySignups}\n loading={props.metricsLoading}\n error={props.metricsError}\n />\n </div>\n </DesignCard>\n </Link>\n );\n}\n","'use client';\n\nimport { Area, AreaChart, ResponsiveContainer, Tooltip, XAxis } from 'recharts';\nimport { useId } from 'react';\n\ntype DataPoint = { date: string, activity: number };\n\nconst CHART_HEIGHT = 56;\nconst EMPTY_BASELINE_COUNT = 30;\n\nfunction formatDay(iso: string): string {\n return new Date(iso).toLocaleDateString(undefined, { weekday: 'short', day: 'numeric' });\n}\n\nfunction EmptyBaseline({ count }: { count: number }) {\n return (\n <svg\n viewBox={`0 0 ${Math.max(count - 1, 1)} 10`}\n preserveAspectRatio=\"none\"\n className=\"absolute inset-x-0 bottom-0 h-5 w-full text-foreground/20\"\n aria-hidden=\"true\"\n >\n <line\n x1=\"0\"\n x2={Math.max(count - 1, 1)}\n y1=\"5\"\n y2=\"5\"\n stroke=\"currentColor\"\n strokeWidth=\"0.15\"\n strokeDasharray=\"0.4 0.6\"\n vectorEffect=\"non-scaling-stroke\"\n />\n </svg>\n );\n}\n\nexport function ProjectUsersMetric(props: {\n totalUsers: number | undefined,\n data: DataPoint[] | undefined,\n loading?: boolean,\n error?: boolean,\n}) {\n const totalUsers = props.totalUsers ?? 0;\n const data = props.data;\n const signupsTotal = data?.reduce((sum, d) => sum + d.activity, 0) ?? 0;\n const hasActivity = totalUsers > 0 || signupsTotal > 0;\n const gradId = useId().replace(/:/g, '');\n\n if (props.loading && props.totalUsers === undefined) {\n return (\n <div className=\"relative w-full\" style={{ height: CHART_HEIGHT }}>\n <div className=\"absolute left-0 top-0 z-10 flex items-baseline gap-1\">\n <span className=\"h-[18px] w-10 animate-pulse rounded bg-foreground/10\" aria-hidden=\"true\" />\n <span className=\"text-[9px] uppercase tracking-[0.14em] text-muted-foreground/60\">\n total users\n </span>\n </div>\n <EmptyBaseline count={EMPTY_BASELINE_COUNT} />\n </div>\n );\n }\n\n if (props.error && props.totalUsers === undefined) {\n return (\n <div className=\"relative w-full\" style={{ height: CHART_HEIGHT }}>\n <div className=\"absolute left-0 top-0 z-10 flex items-baseline gap-1\">\n <span className=\"text-lg font-semibold tabular-nums leading-none text-muted-foreground/50\">\n —\n </span>\n <span className=\"text-[9px] uppercase tracking-[0.14em] text-muted-foreground/60\">\n total users\n </span>\n </div>\n <span className=\"absolute right-0 top-0 text-[9px] uppercase tracking-[0.14em] text-destructive/80\">\n Failed to load\n </span>\n <EmptyBaseline count={EMPTY_BASELINE_COUNT} />\n </div>\n );\n }\n\n return (\n <div className=\"relative w-full\" style={{ height: CHART_HEIGHT }}>\n <div className=\"absolute left-0 top-0 z-10 flex items-baseline gap-1\">\n <span\n className={\n 'text-lg font-semibold tabular-nums leading-none ' +\n (hasActivity ? 'text-foreground' : 'text-muted-foreground/50')\n }\n >\n {totalUsers.toLocaleString()}\n </span>\n <span className=\"text-[9px] uppercase tracking-[0.14em] text-muted-foreground/60\">\n total users\n </span>\n <span className=\"text-[9px] uppercase tracking-[0.14em] text-muted-foreground/40 ml-1\">\n · 30d signups\n </span>\n </div>\n\n {hasActivity && data && data.length > 0 ? (\n <div className=\"absolute inset-0 text-foreground/80\">\n <ResponsiveContainer width=\"100%\" height=\"100%\">\n <AreaChart data={data} margin={{ top: 22, right: 0, left: 0, bottom: 0 }}>\n <XAxis dataKey=\"date\" hide />\n <defs>\n <linearGradient id={`signups-fill-${gradId}`} x1=\"0\" y1=\"0\" x2=\"0\" y2=\"1\">\n <stop offset=\"0%\" stopColor=\"currentColor\" stopOpacity={0.28} />\n <stop offset=\"100%\" stopColor=\"currentColor\" stopOpacity={0} />\n </linearGradient>\n </defs>\n <Tooltip\n cursor={{ stroke: 'currentColor', strokeOpacity: 0.2, strokeDasharray: '2 3' }}\n contentStyle={{\n background: 'hsl(var(--background))',\n border: '1px solid hsl(var(--border))',\n borderRadius: 6,\n fontSize: 11,\n padding: '4px 8px',\n boxShadow: '0 6px 20px -10px rgb(0 0 0 / 0.3)',\n }}\n labelStyle={{ color: 'hsl(var(--muted-foreground))', marginBottom: 1, fontSize: 10 }}\n itemStyle={{ color: 'hsl(var(--foreground))', padding: 0 }}\n labelFormatter={(label: string) => formatDay(label)}\n formatter={(value: number) => [value.toLocaleString(), 'new signups']}\n />\n <Area\n type=\"monotone\"\n dataKey=\"activity\"\n stroke=\"currentColor\"\n strokeWidth={1.5}\n fill={`url(#signups-fill-${gradId})`}\n isAnimationActive={false}\n activeDot={{ r: 2.5, strokeWidth: 0, fill: 'currentColor' }}\n />\n </AreaChart>\n </ResponsiveContainer>\n </div>\n ) : (\n <EmptyBaseline count={data?.length ?? EMPTY_BASELINE_COUNT} />\n )}\n </div>\n );\n}\n","'use client';\n\nimport { ProjectCard } from \"@/components/project-card\";\nimport { useRouter } from \"@/components/router\";\nimport { SearchBar } from \"@/components/search-bar\";\nimport { Button, Dialog, DialogContent, DialogFooter, DialogHeader, DialogTitle, Input, Select, SelectContent, SelectGroup, SelectItem, SelectTrigger, SelectValue, Skeleton, Typography, toast } from \"@/components/ui\";\nimport { getPublicEnvVar } from \"@/lib/env\";\nimport { stackAppInternalsSymbol } from \"@/lib/stack-app-internals\";\nimport { GearIcon } from \"@phosphor-icons/react\";\nimport { AdminOwnedProject, Team, useStackApp, useUser } from \"@stackframe/stack\";\nimport { isPaidPlan } from \"@stackframe/stack-shared/dist/plans\";\nimport { projectOnboardingStatusValues, strictEmailSchema, yupObject, type ProjectOnboardingStatus } from \"@stackframe/stack-shared/dist/schema-fields\";\nimport { groupBy } from \"@stackframe/stack-shared/dist/utils/arrays\";\nimport { captureError, throwErr } from \"@stackframe/stack-shared/dist/utils/errors\";\nimport { runAsynchronously, runAsynchronouslyWithAlert, wait } from \"@stackframe/stack-shared/dist/utils/promises\";\nimport { useQueryState } from \"@stackframe/stack-shared/dist/utils/react\";\nimport { stringCompare } from \"@stackframe/stack-shared/dist/utils/strings\";\nimport { Suspense, useCallback, useEffect, useMemo, useState } from \"react\";\nimport * as yup from \"yup\";\nimport { inviteUser, listInvitations, revokeInvitation } from \"./actions\";\nimport Footer from \"./footer\";\nimport PreviewProjectRedirect from \"./preview-project-redirect\";\n\ntype StackAppInternals = {\n sendRequest: (path: string, requestOptions: RequestInit, requestType?: \"client\" | \"server\" | \"admin\") => Promise<Response>,\n refreshOwnedProjects: () => Promise<void>,\n};\n\nconst PROJECT_ONBOARDING_STATUSES = projectOnboardingStatusValues;\n\nfunction isStackAppInternals(value: unknown): value is StackAppInternals {\n return (\n value != null &&\n typeof value === \"object\" &&\n \"sendRequest\" in value &&\n typeof value.sendRequest === \"function\" &&\n \"refreshOwnedProjects\" in value &&\n typeof value.refreshOwnedProjects === \"function\"\n );\n}\n\nfunction getStackAppInternals(appValue: unknown): StackAppInternals {\n if (appValue == null || typeof appValue !== \"object\") {\n throw new Error(\"The Stack app instance is unavailable.\");\n }\n\n const internals = Reflect.get(appValue, stackAppInternalsSymbol);\n if (!isStackAppInternals(internals)) {\n throw new Error(\"The Stack client app cannot send internal requests.\");\n }\n\n return internals;\n}\n\nfunction isProjectOnboardingStatus(value: unknown): value is ProjectOnboardingStatus {\n return typeof value === \"string\" && PROJECT_ONBOARDING_STATUSES.some((status) => status === value);\n}\n\nexport default function PageClient() {\n const isPreview = getPublicEnvVar(\"NEXT_PUBLIC_STACK_IS_PREVIEW\") === \"true\";\n\n return (\n <>\n <DottedBackground />\n {isPreview ? <PreviewProjectRedirect /> : <ProjectsListPage />}\n <Footer />\n </>\n );\n}\n\nfunction DottedBackground() {\n return (\n <div\n inert\n style={{\n position: 'absolute',\n inset: 0,\n background: 'radial-gradient(circle, rgba(127, 127, 127, 0.15) 1px, transparent 1px)',\n backgroundSize: '10px 10px',\n }}\n />\n );\n}\n\nfunction ProjectsListPage() {\n const app = useStackApp();\n const appInternals = useMemo(() => getStackAppInternals(app), [app]);\n const isLocalEmulator = getPublicEnvVar(\"NEXT_PUBLIC_STACK_IS_LOCAL_EMULATOR\") === \"true\";\n const isRemoteDevelopmentEnvironment = getPublicEnvVar(\"NEXT_PUBLIC_STACK_IS_REMOTE_DEVELOPMENT_ENVIRONMENT\") === \"true\";\n const user = useUser({\n or: isRemoteDevelopmentEnvironment ? \"anonymous-if-exists[deprecated]\" : \"redirect\",\n projectIdMustMatch: \"internal\",\n }) ?? throwErr(\"Projects page expected a user because useUser was called with an explicit required user mode.\");\n const rawProjects = user.useOwnedProjects();\n const teams = user.useTeams();\n const [sort, setSort] = useState<\"recency\" | \"name\">(\"recency\");\n const [search, setSearch] = useState<string>(\"\");\n const [openConfigFileDialog, setOpenConfigFileDialog] = useState(false);\n const [absoluteConfigFilePath, setAbsoluteConfigFilePath] = useState(\"\");\n const [openingConfigFile, setOpeningConfigFile] = useState(false);\n const [recentConfigProjects, setRecentConfigProjects] = useState<Array<{ project_id: string, absolute_file_path: string, display_name: string }>>([]);\n const [recentConfigProjectsError, setRecentConfigProjectsError] = useState(false);\n const [projectStatuses, setProjectStatuses] = useState<Map<string, ProjectOnboardingStatus>>(new Map());\n const [loadingProjectStatuses, setLoadingProjectStatuses] = useState(true);\n const [projectTotalUsers, setProjectTotalUsers] = useState<Map<string, number>>(new Map());\n const [projectDailySignups, setProjectDailySignups] = useState<Map<string, { date: string, activity: number }[]>>(new Map());\n const [loadingProjectMetrics, setLoadingProjectMetrics] = useState(true);\n const [projectMetricsError, setProjectMetricsError] = useState(false);\n const router = useRouter();\n\n useEffect(() => {\n if (rawProjects.length === 0 && !isLocalEmulator && !isRemoteDevelopmentEnvironment) {\n router.push('/new-project');\n }\n }, [isLocalEmulator, isRemoteDevelopmentEnvironment, router, rawProjects]);\n\n useEffect(() => {\n let cancelled = false;\n runAsynchronouslyWithAlert(async () => {\n setLoadingProjectStatuses(true);\n try {\n const response = await appInternals.sendRequest(\"/internal/projects\", {}, \"client\");\n if (!response.ok) {\n throw new Error(`Failed to load projects: ${response.status} ${await response.text()}`);\n }\n\n const body = await response.json();\n if (body == null || typeof body !== \"object\" || !(\"items\" in body) || !Array.isArray(body.items)) {\n throw new Error(\"Project list endpoint returned an invalid response.\");\n }\n\n const statusMap = new Map<string, ProjectOnboardingStatus>();\n for (const item of body.items) {\n if (item == null || typeof item !== \"object\" || !(\"id\" in item) || typeof item.id !== \"string\") {\n continue;\n }\n\n const onboardingStatus = \"onboarding_status\" in item ? item.onboarding_status : undefined;\n if (!isProjectOnboardingStatus(onboardingStatus)) {\n throw new Error(`Project ${item.id} returned an invalid onboarding status.`);\n }\n statusMap.set(item.id, onboardingStatus);\n }\n\n if (!cancelled) {\n setProjectStatuses(statusMap);\n }\n } finally {\n if (!cancelled) {\n setLoadingProjectStatuses(false);\n }\n }\n });\n\n return () => {\n cancelled = true;\n };\n }, [appInternals, rawProjects.length]);\n\n useEffect(() => {\n let cancelled = false;\n runAsynchronously(async () => {\n if (!cancelled) {\n setLoadingProjectMetrics(true);\n setProjectMetricsError(false);\n }\n try {\n const response = await appInternals.sendRequest(\"/internal/projects-metrics\", {}, \"client\");\n if (!response.ok) {\n throw new Error(`Failed to load project metrics: ${response.status} ${await response.text()}`);\n }\n const body = await response.json();\n if (\n body == null ||\n typeof body !== \"object\" ||\n !(\"projects\" in body) ||\n body.projects == null ||\n typeof body.projects !== \"object\" ||\n Array.isArray(body.projects)\n ) {\n throw new Error(\"Failed to load project metrics: response body did not include a projects object.\");\n }\n const totalUsersMap = new Map<string, number>();\n const dailySignupsMap = new Map<string, { date: string, activity: number }[]>();\n for (const [projectId, value] of Object.entries(body.projects)) {\n if (value == null || typeof value !== \"object\") {\n continue;\n }\n const totalUsers = \"total_users\" in value ? value.total_users : undefined;\n if (typeof totalUsers === \"number\") {\n totalUsersMap.set(projectId, totalUsers);\n }\n const dailySignups = \"daily_signups\" in value ? value.daily_signups : undefined;\n if (!Array.isArray(dailySignups)) {\n continue;\n }\n const points: { date: string, activity: number }[] = [];\n for (const point of dailySignups) {\n if (point != null && typeof point === \"object\" && \"date\" in point && \"activity\" in point) {\n const date = point.date;\n const activity = point.activity;\n if (typeof date === \"string\" && typeof activity === \"number\") {\n points.push({ date, activity });\n }\n }\n }\n dailySignupsMap.set(projectId, points);\n }\n\n if (!cancelled) {\n setProjectTotalUsers(totalUsersMap);\n setProjectDailySignups(dailySignupsMap);\n }\n } catch (error) {\n if (cancelled) return;\n setProjectMetricsError(true);\n captureError(\"projects-page-load-metrics\", error);\n } finally {\n if (!cancelled) {\n setLoadingProjectMetrics(false);\n }\n }\n });\n return () => {\n cancelled = true;\n };\n }, [appInternals, rawProjects.length]);\n\n useEffect(() => {\n if (!openConfigFileDialog || !isLocalEmulator) return;\n let cancelled = false;\n setRecentConfigProjectsError(false);\n runAsynchronously(async () => {\n try {\n const response = await appInternals.sendRequest(\"/internal/local-emulator/project\", { method: \"GET\" }, \"client\");\n if (!response.ok) {\n if (!cancelled) {\n setRecentConfigProjects([]);\n setRecentConfigProjectsError(true);\n }\n return;\n }\n const body = await response.json() as { projects?: unknown };\n if (cancelled) return;\n if (!Array.isArray(body.projects)) {\n throw new Error(\"Invalid recent-projects payload\");\n }\n const parsed = body.projects.map((p: unknown): { project_id: string, absolute_file_path: string, display_name: string } => {\n if (\n !p || typeof p !== \"object\"\n || typeof (p as Record<string, unknown>).project_id !== \"string\"\n || typeof (p as Record<string, unknown>).absolute_file_path !== \"string\"\n || typeof (p as Record<string, unknown>).display_name !== \"string\"\n ) {\n throw new Error(\"Invalid recent-projects payload\");\n }\n const r = p as Record<string, string>;\n return { project_id: r.project_id, absolute_file_path: r.absolute_file_path, display_name: r.display_name };\n });\n setRecentConfigProjects(parsed);\n } catch {\n if (!cancelled) {\n setRecentConfigProjects([]);\n setRecentConfigProjectsError(true);\n }\n }\n });\n return () => {\n cancelled = true;\n };\n }, [openConfigFileDialog, isLocalEmulator, appInternals]);\n\n const pathCopyTip = useMemo(() => {\n const p = typeof navigator !== \"undefined\" ? navigator.platform : \"\";\n if (/Mac|iPhone|iPad|iPod/i.test(p)) {\n return \"Tip: in Finder, right-click the file → hold ⌥ Option → Copy as Pathname, then paste here.\";\n }\n if (/Win/i.test(p)) {\n return \"Note: the emulator runs in a Linux VM and needs a POSIX path. From WSL, run `wslpath -a stack.config.ts` (or `realpath stack.config.ts`) and paste that here.\";\n }\n return \"Tip: from your project folder, run `realpath stack.config.ts` in a terminal.\";\n }, []);\n\n const handleOpenConfigFile = async () => {\n const trimmedPath = absoluteConfigFilePath.trim();\n if (trimmedPath.length === 0) {\n toast({ description: \"Please enter a path to your project or stack.config.ts.\", variant: \"destructive\" });\n return;\n }\n\n if (!trimmedPath.startsWith(\"/\")) {\n const looksWindows = /^[a-zA-Z]:[\\\\/]/.test(trimmedPath) || trimmedPath.startsWith(\"\\\\\\\\\");\n toast({\n description: looksWindows\n ? \"The local emulator runs in a Linux VM and only accepts POSIX paths (e.g. /Users/you/project). Windows paths aren't supported — use WSL or the in-VM path.\"\n : \"The path must be absolute (e.g. /Users/you/project or /Users/you/project/stack.config.ts).\",\n variant: \"destructive\",\n });\n return;\n }\n\n setOpeningConfigFile(true);\n try {\n const response = await appInternals.sendRequest(\n \"/internal/local-emulator/project\",\n {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({\n absolute_file_path: trimmedPath,\n }),\n },\n \"client\",\n );\n const responseBody = await response.json();\n\n if (!response.ok) {\n let message = \"Couldn't open that path. Make sure it points to your project folder or a valid stack.config.ts.\";\n if (typeof responseBody === \"string\" && responseBody.length > 0) {\n message = responseBody;\n } else if (\n responseBody != null &&\n typeof responseBody === \"object\" &&\n \"error\" in responseBody &&\n typeof responseBody.error === \"string\" &&\n responseBody.error.length > 0\n ) {\n message = responseBody.error;\n }\n toast({ description: message, variant: \"destructive\" });\n return;\n }\n\n if (\n responseBody == null ||\n typeof responseBody !== \"object\" ||\n !(\"project_id\" in responseBody) ||\n typeof responseBody.project_id !== \"string\"\n ) {\n toast({ description: \"Local emulator endpoint returned an invalid response.\", variant: \"destructive\" });\n return;\n }\n const onboardingStatus = \"onboarding_status\" in responseBody\n ? responseBody.onboarding_status\n : undefined;\n if (!isProjectOnboardingStatus(onboardingStatus)) {\n throw new Error(\"Local emulator endpoint returned an invalid onboarding status.\");\n }\n\n setOpenConfigFileDialog(false);\n setAbsoluteConfigFilePath(\"\");\n setProjectStatuses((previous) => {\n const next = new Map(previous);\n next.set(responseBody.project_id, onboardingStatus);\n return next;\n });\n await appInternals.refreshOwnedProjects();\n if (onboardingStatus === \"completed\") {\n router.push(`/projects/${encodeURIComponent(responseBody.project_id)}`);\n } else {\n router.push(`/new-project?project_id=${encodeURIComponent(responseBody.project_id)}`);\n }\n await wait(2000);\n } catch (e) {\n toast({\n description: e instanceof Error ? e.message : \"Something went wrong opening that project.\",\n variant: \"destructive\",\n });\n } finally {\n setOpeningConfigFile(false);\n }\n };\n\n const teamIdMap = useMemo(() => {\n return new Map(teams.map((team) => [team.id, team.displayName]));\n }, [teams]);\n\n const projectsByTeam = useMemo(() => {\n let newProjects = [...rawProjects];\n if (search) {\n newProjects = newProjects.filter((project) => project.displayName.toLowerCase().includes(search.toLowerCase()));\n }\n\n const projectSort = (a: AdminOwnedProject, b: AdminOwnedProject) => {\n if (sort === \"recency\") {\n return a.createdAt > b.createdAt ? -1 : 1;\n } else {\n return stringCompare(a.displayName, b.displayName);\n }\n };\n\n const grouped = groupBy(newProjects, (project) => project.ownerTeamId);\n return [...grouped.entries()].sort((a, b) => {\n if (a[0] === null) return -1;\n if (b[0] === null) return 1;\n if (sort === \"recency\") {\n return a[1][0].createdAt > b[1][0].createdAt ? -1 : 1;\n } else {\n return stringCompare(a[1][0].displayName, b[1][0].displayName);\n }\n }).map(([teamId, projects]) => {\n return {\n teamId,\n projects: projects.sort(projectSort),\n };\n });\n }, [rawProjects, sort, search]);\n\n return (\n <div className=\"flex-grow p-4\">\n <div className=\"flex justify-between gap-4 mb-4 flex-col sm:flex-row\">\n <SearchBar\n placeholder=\"Search project name\"\n value={search}\n onChange={(e) => setSearch(e.target.value)}\n />\n <div className=\"flex gap-4\">\n <Select value={sort} onValueChange={(n) => setSort(n === 'recency' ? 'recency' : 'name')}>\n <SelectTrigger>\n <SelectValue>Sort by {sort === \"recency\" ? \"recency\" : \"name\"}</SelectValue>\n </SelectTrigger>\n <SelectContent>\n <SelectGroup>\n <SelectItem value=\"recency\">Recency</SelectItem>\n <SelectItem value=\"name\">Name</SelectItem>\n </SelectGroup>\n </SelectContent>\n </Select>\n\n {!isRemoteDevelopmentEnvironment && (\n <Button\n className=\"rounded-xl\"\n onClick={async () => {\n if (isLocalEmulator) {\n setOpenConfigFileDialog(true);\n return;\n }\n router.push(\"/new-project\");\n return await wait(2000);\n }}\n >{isLocalEmulator ? \"Open a project\" : \"Create Project\"}\n </Button>\n )}\n </div>\n </div>\n\n <Dialog\n open={openConfigFileDialog}\n onOpenChange={(open) => {\n setOpenConfigFileDialog(open);\n if (!open) {\n setAbsoluteConfigFilePath(\"\");\n }\n }}\n >\n <DialogContent className=\"sm:max-w-[520px]\">\n <DialogHeader>\n <DialogTitle>Open your Stack Auth project</DialogTitle>\n </DialogHeader>\n <div className=\"space-y-3\">\n <Typography variant=\"secondary\">\n Point the local dashboard at the <code>stack.config.ts</code> in your project. If you just ran <code>stack init</code>, it was created at the root of that project.\n </Typography>\n <Typography variant=\"secondary\" className=\"text-xs\">\n Don't have one yet? Paste your project folder path instead and we'll create <code>stack.config.ts</code> for you.\n </Typography>\n {recentConfigProjects.length > 0 && (\n <div className=\"space-y-1\">\n <Typography variant=\"secondary\" className=\"text-xs uppercase tracking-wide\">Recent</Typography>\n <div className=\"max-h-40 overflow-y-auto rounded-md border\">\n {recentConfigProjects.map((p) => (\n <button\n key={p.project_id}\n type=\"button\"\n className=\"block w-full truncate px-3 py-2 text-left text-sm hover:bg-muted\"\n onClick={() => setAbsoluteConfigFilePath(p.absolute_file_path)}\n title={p.absolute_file_path}\n >\n {p.absolute_file_path}\n </button>\n ))}\n </div>\n </div>\n )}\n {recentConfigProjectsError && recentConfigProjects.length === 0 && (\n <Typography variant=\"secondary\" className=\"text-xs text-destructive\">\n Couldn't load recent projects. Paste a path below to continue.\n </Typography>\n )}\n <Input\n autoFocus\n placeholder=\"/Users/you/project/stack.config.ts\"\n value={absoluteConfigFilePath}\n onChange={(event) => setAbsoluteConfigFilePath(event.target.value)}\n />\n <Typography variant=\"secondary\" className=\"text-xs\">\n {pathCopyTip}\n </Typography>\n </div>\n <DialogFooter className=\"pt-2\">\n <Button variant=\"outline\" onClick={() => setOpenConfigFileDialog(false)} disabled={openingConfigFile}>\n Cancel\n </Button>\n <Button\n onClick={handleOpenConfigFile}\n loading={openingConfigFile}\n disabled={absoluteConfigFilePath.trim().length === 0}\n >\n Open project\n </Button>\n </DialogFooter>\n </DialogContent>\n </Dialog>\n\n {projectsByTeam.map(({ teamId, projects }) => {\n const team = teamId ? teams.find((t) => t.id === teamId) : undefined;\n return (\n <div key={teamId} className=\"mb-4\">\n <div className=\"mb-2 flex items-center gap-1\">\n <Typography>\n {teamId ? teamIdMap.get(teamId) : \"No Team\"}\n </Typography>\n {team && (\n <TeamAddUserDialog team={team} />\n )}\n </div>\n <div className=\"grid gap-4 grid-cols-1 sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-4 bg\">\n {projects.map((project) => {\n const onboardingStatus = projectStatuses.get(project.id);\n if (!loadingProjectStatuses && onboardingStatus == null) {\n throw new Error(`Missing onboarding status for project ${project.id}.`);\n }\n const projectHref = onboardingStatus === \"completed\"\n ? `/projects/${encodeURIComponent(project.id)}`\n : `/new-project?project_id=${encodeURIComponent(project.id)}`;\n\n return (\n <ProjectCard\n key={project.id}\n project={project}\n href={projectHref}\n showIncompleteBadge={!loadingProjectStatuses && onboardingStatus !== \"completed\"}\n totalUsers={projectTotalUsers.get(project.id)}\n dailySignups={projectDailySignups.get(project.id)}\n metricsLoading={loadingProjectMetrics}\n metricsError={projectMetricsError}\n />\n );\n })}\n </div>\n </div>\n );\n })}\n </div>\n );\n}\n\nconst inviteFormSchema = yupObject({\n email: strictEmailSchema(\"Please enter a valid email address\").defined(),\n});\n\n\nfunction TeamAddUserDialog(props: { team: Team }) {\n const [teamSettingsId, setTeamSettingsId] = useQueryState(\"team_settings\");\n\n const open = teamSettingsId === props.team.id;\n const setOpen = (isOpen: boolean) => {\n if (isOpen) {\n setTeamSettingsId(props.team.id);\n } else {\n setTeamSettingsId(null);\n }\n };\n\n return (\n <>\n <Button\n variant=\"ghost\"\n size=\"icon\"\n aria-label={`Invite teammates to ${props.team.displayName}`}\n title={`Invite teammates to ${props.team.displayName}`}\n onClick={() => setOpen(true)}\n >\n <GearIcon className=\"h-4 w-4\" />\n </Button>\n\n <Dialog open={open} onOpenChange={setOpen}>\n <DialogContent className=\"sm:max-w-[480px]\">\n <DialogHeader>\n <DialogTitle>Invite a new user to {props.team.displayName}</DialogTitle>\n </DialogHeader>\n <Suspense fallback={<TeamAddUserDialogContentSkeleton />}>\n <TeamAddUserDialogContent\n team={props.team}\n onClose={() => setOpen(false)}\n />\n </Suspense>\n </DialogContent>\n </Dialog>\n </>\n );\n}\n\nfunction TeamAddUserDialogContent(props: {\n team: Team,\n onClose: () => void,\n}) {\n const [invitations, setInvitations] = useState<Awaited<ReturnType<typeof listInvitations>>>();\n const [invitationsError, setInvitationsError] = useState<string | null>(null);\n\n const fetchInvitations = useCallback(async () => {\n setInvitationsError(null);\n try {\n const invitations = await listInvitations(props.team.id);\n setInvitations(invitations);\n } catch (error) {\n setInvitationsError(\"Failed to load invitations. Please try again.\");\n }\n }, [props.team.id]);\n\n useEffect(() => {\n let canceled = false;\n runAsynchronously(async () => {\n try {\n const invitations = await listInvitations(props.team.id);\n if (!canceled) {\n setInvitations(invitations);\n }\n } catch (error) {\n if (!canceled) {\n setInvitationsError(\"Failed to load invitations. Please try again.\");\n }\n }\n });\n return () => {\n canceled = true;\n };\n }, [props.team.id]);\n\n const users = props.team.useUsers();\n const admins = props.team.useItem(\"dashboard_admins\");\n const products = props.team.useProducts();\n const hasPaidPlan = isPaidPlan(products);\n\n const [email, setEmail] = useState(\"\");\n const [formError, setFormError] = useState<string | null>(null);\n\n const invitationsLoaded = invitations != null;\n const activeSeats = users.length + (invitations?.length ?? 0);\n const seatLimit = admins.quantity;\n const atCapacity = invitationsLoaded && activeSeats >= seatLimit;\n\n const handleInvite = async () => {\n if (!invitationsLoaded || atCapacity) {\n return;\n }\n\n try {\n setFormError(null);\n const values = await inviteFormSchema.validate({ email: email.trim() });\n await inviteUser(props.team.id, values.email, window.location.origin);\n toast({ variant: \"success\", title: \"Team invitation sent\" });\n setEmail(\"\");\n await fetchInvitations();\n } catch (error) {\n if (error instanceof yup.ValidationError) {\n setFormError(error.errors[0] ?? error.message);\n } else {\n const message = error instanceof Error ? error.message : \"Unknown error\";\n toast({ variant: \"destructive\", title: \"Failed to send invitation\", description: message });\n }\n }\n };\n\n const handleAddSeat = async () => {\n const checkoutUrl = await props.team.createCheckoutUrl({\n productId: \"extra-seats\",\n returnUrl: window.location.href,\n });\n window.location.assign(checkoutUrl);\n };\n\n const handleUpgrade = async () => {\n const checkoutUrl = await props.team.createCheckoutUrl({\n productId: \"team\",\n returnUrl: window.location.href,\n });\n window.location.assign(checkoutUrl);\n };\n\n return (\n <>\n <div className=\"space-y-4 py-2\">\n <div className=\"flex items-center justify-between rounded-md border border-border px-3 py-2\">\n <Typography type=\"label\">Dashboard admin seats</Typography>\n {invitationsLoaded ? (\n <Typography variant=\"secondary\">\n {activeSeats}/{seatLimit}\n </Typography>\n ) : (\n <Skeleton className=\"h-4 w-12\" />\n )}\n </div>\n {atCapacity && (\n <Typography variant=\"secondary\" className=\"text-destructive\">\n {hasPaidPlan\n ? \"You are at capacity. Add an extra seat for $29/month.\"\n : \"You are at capacity. Upgrade your plan to add more admins.\"}\n </Typography>\n )}\n <div className=\"space-y-2\">\n <Input\n value={email}\n onChange={(event) => {\n setEmail(event.target.value);\n if (formError) {\n setFormError(null);\n }\n }}\n placeholder=\"Email\"\n type=\"email\"\n disabled={(!invitationsLoaded && !invitationsError) || atCapacity}\n autoFocus\n />\n {formError && (\n <Typography type=\"label\" className=\"text-destructive\">\n {formError}\n </Typography>\n )}\n </div>\n\n <div className=\"space-y-2\">\n <Typography type=\"label\">Pending invitations</Typography>\n {invitationsError ? (\n <div className=\"flex items-center justify-between rounded-md border border-destructive/50 bg-destructive/5 px-3 py-2\">\n <Typography variant=\"secondary\" className=\"text-destructive text-sm\">\n {invitationsError}\n </Typography>\n <Button\n variant=\"ghost\"\n size=\"sm\"\n onClick={fetchInvitations}\n >\n Retry\n </Button>\n </div>\n ) : invitations?.length === 0 ? (\n <Typography variant=\"secondary\">None</Typography>\n ) : (\n <div className=\"space-y-2 max-h-48 overflow-y-auto\">\n {invitations?.map((invitation) => (\n <div\n key={invitation.id}\n className=\"flex items-center justify-between rounded-md border border-border px-3 py-2\"\n >\n <div className=\"flex flex-col\">\n <Typography>{invitation.recipientEmail ?? \"Pending invitation\"}</Typography>\n </div>\n <Button\n variant=\"ghost\"\n size=\"sm\"\n onClick={async () => {\n await revokeInvitation(props.team.id, invitation.id);\n await fetchInvitations();\n }}\n >\n Revoke\n </Button>\n </div>\n ))}\n {!invitations && (\n <Skeleton className=\"h-8 w-full\" />\n )}\n </div>\n )}\n </div>\n </div>\n\n <DialogFooter className=\"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-end\">\n <Button variant=\"outline\" onClick={props.onClose}>\n Close\n </Button>\n {atCapacity ? (\n hasPaidPlan ? (\n <Button onClick={handleAddSeat} variant=\"default\">\n Add seat ($29/mo)\n </Button>\n ) : (\n <Button onClick={handleUpgrade} variant=\"default\">\n Upgrade plan\n </Button>\n )\n ) : (\n <Button onClick={handleInvite} disabled={!invitationsLoaded && !invitationsError}>\n Invite\n </Button>\n )}\n </DialogFooter>\n </>\n );\n}\n\nfunction TeamAddUserDialogContentSkeleton() {\n return (\n <>\n <div className=\"space-y-4 py-2\">\n <div className=\"flex items-center justify-between rounded-md border border-border px-3 py-2\">\n <Typography type=\"label\">Dashboard admin seats</Typography>\n <div className=\"stack-scope text-md text-zinc-600 dark:text-zinc-400\">\n <Skeleton className=\"h-4 w-16\" />\n </div>\n </div>\n\n <div className=\"space-y-2\">\n <Input\n disabled\n placeholder=\"Email\"\n type=\"email\"\n autoFocus\n />\n </div>\n\n <div className=\"space-y-2\">\n <Typography type=\"label\">Pending invitations</Typography>\n <Skeleton className=\"h-8 w-full\" />\n </div>\n </div>\n\n <DialogFooter className=\"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-end\">\n <Button variant=\"outline\" disabled>\n Close\n </Button>\n <Button disabled>\n Invite\n </Button>\n </DialogFooter>\n </>\n );\n}\n","import React from \"react\";\n\nimport { Input } from \"@/components/ui\";\nimport { MagnifyingGlassIcon } from \"@phosphor-icons/react\";\nimport { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\n\nexport const SearchBar = forwardRefIfNeeded<\n HTMLInputElement,\n React.ComponentProps<typeof Input>\n>((props, ref) => (\n <div className=\"relative\">\n <Input ref={ref} className=\"pl-8\" {...props} />\n <MagnifyingGlassIcon className=\"absolute left-2 top-2.5 h-4 w-4 text-muted-foreground\" />\n </div>\n));\n\nSearchBar.displayName = \"SearchBar\";\n","/* __next_internal_action_entry_do_not_use__ [{\"70d1f3f881b82c050dd45c2671e7c01a1bc3bf70b6\":\"inviteUser\"},\"apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/actions.ts\",\"\"] */\"use turbopack no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_2=/*#__PURE__*/createServerReference(\"70d1f3f881b82c050dd45c2671e7c01a1bc3bf70b6\",callServer,void 0,findSourceMapURL,\"inviteUser\");export{$$RSC_SERVER_ACTION_2 as inviteUser};","/* __next_internal_action_entry_do_not_use__ [{\"40b5e9efa53ba1af9feac0975545308b3bbd7fb1df\":\"listInvitations\"},\"apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/actions.ts\",\"\"] */\"use turbopack no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_1=/*#__PURE__*/createServerReference(\"40b5e9efa53ba1af9feac0975545308b3bbd7fb1df\",callServer,void 0,findSourceMapURL,\"listInvitations\");export{$$RSC_SERVER_ACTION_1 as listInvitations};","/* __next_internal_action_entry_do_not_use__ [{\"604ae32ae9cfe98cfcf603e51105841b3203d5db52\":\"revokeInvitation\"},\"apps/dashboard/src/app/(main)/(protected)/(outside-dashboard)/projects/actions.ts\",\"\"] */\"use turbopack no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_0=/*#__PURE__*/createServerReference(\"604ae32ae9cfe98cfcf603e51105841b3203d5db52\",callServer,void 0,findSourceMapURL,\"revokeInvitation\");export{$$RSC_SERVER_ACTION_0 as revokeInvitation};","import { Link } from \"@/components/link\";\nimport { Separator, Typography } from \"@/components/ui\";\nimport { FaDiscord, FaGithub, FaLinkedin } from \"react-icons/fa\";\n\nexport default function Footer () {\n return (\n <footer>\n <Separator />\n\n <div className=\"flex flex-col md:flex-row p-4 gap-4 backdrop-blur-md bg-slate-200/20 dark:bg-black/20\">\n <div className=\"flex flex-col gap-4 md:flex-1\">\n <ul className=\"flex gap-4 flex-grow\">\n {[\n { href: \"https://discord.stack-auth.com/\", icon: FaDiscord },\n { href: \"https://www.linkedin.com/company/stackframe-inc\", icon: FaLinkedin },\n { href: \"https://github.com/hexclave/stack-auth\", icon: FaGithub },\n ].map(({ href, icon: Icon }) => (\n <li key={href}>\n <Link href={href}>\n <Icon size={20} className=\"text-gray-700 dark:text-gray-300\" />\n </Link>\n </li>\n ))}\n </ul>\n </div>\n\n <div className=\"flex gap-4 md:flex-1 md:justify-end flex-wrap\">\n {[\n { href: \"https://stack-auth.com\", label: \"Home\" },\n { href: \"https://www.iubenda.com/privacy-policy/19290387\", label: \"Privacy policy\" },\n { href: \"https://www.iubenda.com/privacy-policy/19290387/cookie-policy\", label: \"Cookie policy\" },\n { href: \"https://www.iubenda.com/terms-and-conditions/19290387\", label: \"Terms & conditions\" },\n ].map(({ href, label }) => (\n <Link key={label} href={href}>\n <Typography variant=\"secondary\" type='label'>{label}</Typography>\n </Link>\n ))}\n </div>\n </div>\n </footer>\n );\n}\n","'use client';\n\nimport Loading from \"@/app/loading\";\nimport { useRouter } from \"@/components/router\";\nimport { stackAppInternalsSymbol } from \"@/lib/stack-app-internals\";\nimport { useStackApp, useUser } from \"@stackframe/stack\";\nimport { StackAssertionError } from \"@stackframe/stack-shared/dist/utils/errors\";\nimport { runAsynchronouslyWithAlert } from \"@stackframe/stack-shared/dist/utils/promises\";\nimport { useEffect, useMemo, useRef } from \"react\";\n\nexport default function PreviewProjectRedirect() {\n const app = useStackApp();\n const user = useUser();\n const router = useRouter();\n const appInternals = useMemo(() => {\n const internals = Reflect.get(app as any, stackAppInternalsSymbol);\n if (\n !internals ||\n typeof internals.sendRequest !== \"function\" ||\n typeof internals.refreshOwnedProjects !== \"function\"\n ) {\n throw new Error(\"The Stack client app cannot send internal requests.\");\n }\n return internals as {\n sendRequest: (path: string, options: RequestInit, type: string) => Promise<Response>,\n refreshOwnedProjects: () => Promise<void>,\n };\n }, [app]);\n const creating = useRef(false);\n\n useEffect(() => {\n if (!user || creating.current) return;\n creating.current = true;\n\n runAsynchronouslyWithAlert(async () => {\n const response = await appInternals.sendRequest(\n \"/internal/preview/create-project\",\n { method: \"POST\" },\n \"client\",\n );\n\n if (!response.ok) {\n const text = await response.text();\n throw new StackAssertionError(`Failed to create preview project: ${response.status} ${text}`);\n }\n\n const body = await response.json();\n // Refresh the client-side owned-projects cache before navigating —\n // otherwise the [projectId] route's `useAdminApp` reads a stale list\n // that doesn't include the just-created project and calls `notFound()`.\n // (The normal create-project flow in page-client.tsx does the same.)\n await appInternals.refreshOwnedProjects();\n router.push(`/projects/${encodeURIComponent(body.project_id)}`);\n });\n }, [user, appInternals, router]);\n\n return <Loading />;\n}\n"],"names":["callServer","createServerReference","findSourceMapURL"],"mappings":"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","ignoreList":[0,1,6,7,8,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67]}
|