profclaw 2.0.0 → 2.3.0
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/.env.example +14 -2
- package/CHANGELOG.md +37 -0
- package/CONTRIBUTING.md +20 -0
- package/Dockerfile +39 -23
- package/README.md +174 -40
- package/dist/agents/agent-summary.d.ts +44 -0
- package/dist/agents/agent-summary.js +176 -0
- package/dist/agents/auto-memory.d.ts +59 -0
- package/dist/agents/auto-memory.js +310 -0
- package/dist/agents/checkpoint-manager.d.ts +76 -0
- package/dist/agents/checkpoint-manager.js +156 -0
- package/dist/agents/circuit-breaker.d.ts +54 -0
- package/dist/agents/circuit-breaker.js +153 -0
- package/dist/agents/context-compactor.d.ts +70 -0
- package/dist/agents/context-compactor.js +361 -0
- package/dist/agents/conversation-branch.d.ts +55 -0
- package/dist/agents/conversation-branch.js +115 -0
- package/dist/agents/error-recovery.d.ts +44 -0
- package/dist/agents/error-recovery.js +197 -0
- package/dist/agents/events.d.ts +76 -0
- package/dist/agents/events.js +8 -0
- package/dist/agents/executor.d.ts +35 -1
- package/dist/agents/executor.js +573 -124
- package/dist/agents/file-snapshots.d.ts +72 -0
- package/dist/agents/file-snapshots.js +182 -0
- package/dist/agents/index.d.ts +2 -0
- package/dist/agents/orchestrator.d.ts +183 -0
- package/dist/agents/orchestrator.js +495 -0
- package/dist/agents/permissions.d.ts +63 -0
- package/dist/agents/permissions.js +138 -0
- package/dist/agents/plan-mode.d.ts +71 -0
- package/dist/agents/plan-mode.js +186 -0
- package/dist/agents/prompt-suggestions.d.ts +33 -0
- package/dist/agents/prompt-suggestions.js +208 -0
- package/dist/agents/rate-limit-monitor.d.ts +56 -0
- package/dist/agents/rate-limit-monitor.js +224 -0
- package/dist/agents/result-store.d.ts +37 -0
- package/dist/agents/result-store.js +104 -0
- package/dist/agents/session-diff.d.ts +43 -0
- package/dist/agents/session-diff.js +258 -0
- package/dist/agents/tool-loader.d.ts +65 -0
- package/dist/agents/tool-loader.js +273 -0
- package/dist/agents/transcript.d.ts +96 -0
- package/dist/agents/transcript.js +267 -0
- package/dist/agents/worktree-manager.d.ts +80 -0
- package/dist/agents/worktree-manager.js +203 -0
- package/dist/auth/middleware.js +14 -0
- package/dist/chat/agentic-executor.d.ts +7 -0
- package/dist/chat/agentic-executor.js +253 -30
- package/dist/chat/conversations.d.ts +2 -0
- package/dist/chat/conversations.js +8 -0
- package/dist/chat/execution/executor.d.ts +8 -0
- package/dist/chat/execution/executor.js +157 -103
- package/dist/chat/execution/index.js +5 -1
- package/dist/chat/execution/tool-router.js +40 -14
- package/dist/chat/execution/tools/canvas.d.ts +2 -2
- package/dist/chat/execution/tools/code-tools.d.ts +66 -0
- package/dist/chat/execution/tools/code-tools.js +353 -0
- package/dist/chat/execution/tools/complete-task.d.ts +2 -2
- package/dist/chat/execution/tools/cron-tool.d.ts +26 -10
- package/dist/chat/execution/tools/cron-tool.js +48 -3
- package/dist/chat/execution/tools/decompose-task.d.ts +58 -0
- package/dist/chat/execution/tools/decompose-task.js +166 -0
- package/dist/chat/execution/tools/exec.d.ts +5 -2
- package/dist/chat/execution/tools/exec.js +294 -155
- package/dist/chat/execution/tools/feed-tools.d.ts +77 -0
- package/dist/chat/execution/tools/feed-tools.js +142 -0
- package/dist/chat/execution/tools/file-ops.d.ts +1 -1
- package/dist/chat/execution/tools/github.d.ts +2 -2
- package/dist/chat/execution/tools/index.d.ts +14 -2
- package/dist/chat/execution/tools/index.js +86 -12
- package/dist/chat/execution/tools/integrations.d.ts +8 -8
- package/dist/chat/execution/tools/multi-patch.d.ts +53 -0
- package/dist/chat/execution/tools/multi-patch.js +373 -0
- package/dist/chat/execution/tools/openai-image-gen.d.ts +2 -2
- package/dist/chat/execution/tools/plan-tools.d.ts +80 -0
- package/dist/chat/execution/tools/plan-tools.js +134 -0
- package/dist/chat/execution/tools/profclaw-ops.d.ts +6 -6
- package/dist/chat/execution/tools/repl-tool.d.ts +46 -0
- package/dist/chat/execution/tools/repl-tool.js +207 -0
- package/dist/chat/execution/tools/sessions-send.d.ts +2 -2
- package/dist/chat/execution/tools/slack-actions.d.ts +2 -2
- package/dist/chat/execution/tools/system.d.ts +4 -4
- package/dist/chat/execution/tools/todo-tool.d.ts +72 -0
- package/dist/chat/execution/tools/todo-tool.js +152 -0
- package/dist/chat/execution/tools/tool-search.d.ts +50 -0
- package/dist/chat/execution/tools/tool-search.js +155 -0
- package/dist/chat/execution/types.d.ts +21 -14
- package/dist/chat/execution/workflows/executor.d.ts +11 -0
- package/dist/chat/execution/workflows/executor.js +99 -1
- package/dist/chat/execution/workflows/types.d.ts +35 -2
- package/dist/chat/format/index.d.ts +1 -0
- package/dist/chat/format/index.js +1 -0
- package/dist/chat/format/markdown-convert.d.ts +23 -0
- package/dist/chat/format/markdown-convert.js +149 -0
- package/dist/chat/index.d.ts +1 -1
- package/dist/chat/index.js +1 -1
- package/dist/chat/message-handler.js +58 -6
- package/dist/chat/proactive/index.d.ts +62 -0
- package/dist/chat/proactive/index.js +147 -0
- package/dist/chat/prompt-adapter.js +2 -0
- package/dist/chat/providers/irc/index.d.ts +2 -2
- package/dist/chat/providers/telegram/index.d.ts +2 -0
- package/dist/chat/providers/telegram/index.js +21 -2
- package/dist/chat/system-prompts.d.ts +3 -3
- package/dist/chat/system-prompts.js +116 -61
- package/dist/chat/tools.d.ts +6 -6
- package/dist/cli/commands/auth.js +64 -1
- package/dist/cli/commands/chat.js +1327 -138
- package/dist/cli/commands/doctor.js +222 -16
- package/dist/cli/commands/history.d.ts +3 -0
- package/dist/cli/commands/history.js +138 -0
- package/dist/cli/commands/import.d.ts +44 -0
- package/dist/cli/commands/import.js +526 -0
- package/dist/cli/commands/init.d.ts +13 -0
- package/dist/cli/commands/init.js +381 -0
- package/dist/cli/commands/onboard.js +210 -30
- package/dist/cli/commands/plan.d.ts +13 -0
- package/dist/cli/commands/plan.js +184 -0
- package/dist/cli/commands/serve.d.ts +7 -0
- package/dist/cli/commands/serve.js +77 -18
- package/dist/cli/commands/setup.js +84 -3
- package/dist/cli/commands/status.js +54 -0
- package/dist/cli/commands/tools.js +13 -13
- package/dist/cli/commands/tui.js +26 -1
- package/dist/cli/index.js +19 -0
- package/dist/cli/ink/App.d.ts +13 -0
- package/dist/cli/ink/App.js +6 -0
- package/dist/cli/ink/ChatApp.d.ts +60 -0
- package/dist/cli/ink/ChatApp.js +325 -0
- package/dist/cli/ink/DashboardApp.d.ts +3 -0
- package/dist/cli/ink/DashboardApp.js +143 -0
- package/dist/cli/ink/components/AgentStatus.d.ts +17 -0
- package/dist/cli/ink/components/AgentStatus.js +33 -0
- package/dist/cli/ink/components/ChannelList.d.ts +17 -0
- package/dist/cli/ink/components/ChannelList.js +33 -0
- package/dist/cli/ink/components/ConnectionStatus.d.ts +19 -0
- package/dist/cli/ink/components/ConnectionStatus.js +50 -0
- package/dist/cli/ink/components/CostBar.d.ts +19 -0
- package/dist/cli/ink/components/CostBar.js +35 -0
- package/dist/cli/ink/components/HookStatus.d.ts +15 -0
- package/dist/cli/ink/components/HookStatus.js +7 -0
- package/dist/cli/ink/components/PermissionPrompt.d.ts +21 -0
- package/dist/cli/ink/components/PermissionPrompt.js +51 -0
- package/dist/cli/ink/components/PlanView.d.ts +23 -0
- package/dist/cli/ink/components/PlanView.js +26 -0
- package/dist/cli/ink/components/ProviderList.d.ts +16 -0
- package/dist/cli/ink/components/ProviderList.js +16 -0
- package/dist/cli/ink/components/SessionHeader.d.ts +15 -0
- package/dist/cli/ink/components/SessionHeader.js +15 -0
- package/dist/cli/ink/components/StreamingMessage.d.ts +20 -0
- package/dist/cli/ink/components/StreamingMessage.js +27 -0
- package/dist/cli/ink/components/SuggestionBar.d.ts +15 -0
- package/dist/cli/ink/components/SuggestionBar.js +28 -0
- package/dist/cli/ink/components/SystemHealth.d.ts +20 -0
- package/dist/cli/ink/components/SystemHealth.js +39 -0
- package/dist/cli/ink/components/TaskList.d.ts +17 -0
- package/dist/cli/ink/components/TaskList.js +59 -0
- package/dist/cli/ink/components/ToolCall.d.ts +17 -0
- package/dist/cli/ink/components/ToolCall.js +43 -0
- package/dist/cli/ink/index.d.ts +23 -0
- package/dist/cli/ink/index.js +15 -0
- package/dist/cli/ink/keybindings.d.ts +35 -0
- package/dist/cli/ink/keybindings.js +105 -0
- package/dist/cli/ink/markdown-renderer.d.ts +47 -0
- package/dist/cli/ink/markdown-renderer.js +380 -0
- package/dist/cli/ink/output-styles.d.ts +39 -0
- package/dist/cli/ink/output-styles.js +119 -0
- package/dist/cli/interactive/auto-serve.d.ts +38 -0
- package/dist/cli/interactive/auto-serve.js +209 -0
- package/dist/cli/interactive/index.d.ts +25 -0
- package/dist/cli/interactive/index.js +23 -0
- package/dist/cli/interactive/picker.d.ts +28 -0
- package/dist/cli/interactive/picker.js +153 -0
- package/dist/cli/interactive/renderer.d.ts +26 -0
- package/dist/cli/interactive/renderer.js +555 -0
- package/dist/cli/interactive/repl.d.ts +14 -0
- package/dist/cli/interactive/repl.js +1516 -0
- package/dist/cli/interactive/stream-client.d.ts +59 -0
- package/dist/cli/interactive/stream-client.js +506 -0
- package/dist/cli/interactive/types.d.ts +121 -0
- package/dist/cli/interactive/types.js +10 -0
- package/dist/cli/utils/api.d.ts +9 -0
- package/dist/cli/utils/api.js +58 -2
- package/dist/cron/natural-language.d.ts +54 -0
- package/dist/cron/natural-language.js +569 -0
- package/dist/cron/scheduler.d.ts +34 -4
- package/dist/cron/scheduler.js +141 -9
- package/dist/cron/templates.d.ts +1 -1
- package/dist/cron/templates.js +219 -0
- package/dist/feeds/feed-engine.d.ts +149 -0
- package/dist/feeds/feed-engine.js +600 -0
- package/dist/feeds/index.d.ts +9 -0
- package/dist/feeds/index.js +8 -0
- package/dist/gateway/router.js +6 -1
- package/dist/hooks/built-in/audit-log.d.ts +11 -0
- package/dist/hooks/built-in/audit-log.js +84 -0
- package/dist/hooks/built-in/cost-warning.d.ts +10 -0
- package/dist/hooks/built-in/cost-warning.js +59 -0
- package/dist/hooks/built-in/dangerous-tool.d.ts +32 -0
- package/dist/hooks/built-in/dangerous-tool.js +80 -0
- package/dist/hooks/built-in/index.d.ts +14 -0
- package/dist/hooks/built-in/index.js +20 -0
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.js +6 -0
- package/dist/hooks/loader.d.ts +17 -0
- package/dist/hooks/loader.js +142 -0
- package/dist/hooks/registry.d.ts +62 -0
- package/dist/hooks/registry.js +127 -0
- package/dist/integrations/web-search.js +6 -3
- package/dist/memory/index.d.ts +1 -0
- package/dist/memory/index.js +2 -0
- package/dist/memory/memory-service.js +14 -13
- package/dist/memory/observational.d.ts +62 -0
- package/dist/memory/observational.js +396 -0
- package/dist/middleware/content-filter.d.ts +22 -0
- package/dist/middleware/content-filter.js +69 -0
- package/dist/middleware/request-validator.d.ts +159 -0
- package/dist/middleware/request-validator.js +93 -0
- package/dist/plugins/sdk.d.ts +22 -0
- package/dist/plugins/sdk.js +17 -1
- package/dist/projects/types.d.ts +10 -10
- package/dist/providers/ai-sdk.d.ts +11 -0
- package/dist/providers/ai-sdk.js +78 -19
- package/dist/providers/core/models.js +67 -1
- package/dist/providers/core/types.d.ts +3 -0
- package/dist/providers/index.d.ts +1 -0
- package/dist/providers/index.js +1 -0
- package/dist/providers/smart-router.d.ts +118 -0
- package/dist/providers/smart-router.js +685 -0
- package/dist/providers/types.d.ts +16 -16
- package/dist/routes/agents.js +50 -0
- package/dist/routes/auth.js +8 -1
- package/dist/routes/chat.js +259 -14
- package/dist/routes/costs.js +32 -0
- package/dist/routes/cron.js +80 -5
- package/dist/routes/feeds.d.ts +10 -0
- package/dist/routes/feeds.js +168 -0
- package/dist/routes/mcp.js +21 -0
- package/dist/routes/memory.js +130 -0
- package/dist/routes/skills.js +129 -0
- package/dist/routes/teams.d.ts +9 -0
- package/dist/routes/teams.js +210 -0
- package/dist/routes/tools.js +14 -0
- package/dist/routes/users.js +2 -0
- package/dist/server/route-loader.js +3 -1
- package/dist/server/stream-bridge.d.ts +19 -0
- package/dist/server/stream-bridge.js +38 -0
- package/dist/server.js +310 -36
- package/dist/skills/marketplace.d.ts +87 -0
- package/dist/skills/marketplace.js +268 -0
- package/dist/storage/index.d.ts +14 -0
- package/dist/storage/index.js +64 -3
- package/dist/storage/schema.d.ts +4 -4
- package/dist/storage/schema.js +1 -1
- package/dist/teams/index.d.ts +110 -0
- package/dist/teams/index.js +365 -0
- package/dist/tickets/types.d.ts +39 -39
- package/dist/types/summary.d.ts +5 -5
- package/dist/utils/auto-update.d.ts +23 -0
- package/dist/utils/auto-update.js +157 -0
- package/dist/utils/offline-detect.d.ts +55 -0
- package/dist/utils/offline-detect.js +121 -0
- package/dist/utils/pid-file.d.ts +36 -0
- package/dist/utils/pid-file.js +125 -0
- package/dist/utils/prevent-sleep.d.ts +27 -0
- package/dist/utils/prevent-sleep.js +95 -0
- package/dist/utils/sanitizer.d.ts +57 -0
- package/dist/utils/sanitizer.js +174 -0
- package/docker-compose.yml +13 -137
- package/package.json +31 -6
- package/skills/deploy-cloudflare/SKILL.md +62 -0
- package/skills/deploy-vercel/SKILL.md +67 -0
- package/skills/docker-deploy/SKILL.md +158 -0
- package/skills/full-stack-builder/SKILL.md +92 -0
- package/skills/humanizer/SKILL.md +488 -0
- package/skills/profclaw-assistant/SKILL.md +85 -56
- package/ui/dist/assets/ActivityView-Da6HQ8ws.js +1 -0
- package/ui/dist/assets/AgentList-H58R0kX3.js +1 -0
- package/ui/dist/assets/AnalyticsDashboard-B28AeRsc.js +1 -0
- package/ui/dist/assets/AreaChart-DwLzeAQ8.js +1 -0
- package/ui/dist/assets/CartesianChart-piKQsTAR.js +36 -0
- package/ui/dist/assets/ChatView-Dbj8rxU5.js +10 -0
- package/ui/dist/assets/CostsDashboard-C6F5df0F.js +1 -0
- package/ui/dist/assets/EstimateSelect-wga0rUKX.js +1 -0
- package/ui/dist/assets/FeedDashboard-Ef6FEzEf.js +1 -0
- package/ui/dist/assets/FloatingChatbot-0yhkUeCq.js +2 -0
- package/ui/dist/assets/InviteCodeManagement-tUXfx4Bc.js +2 -0
- package/ui/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/ui/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/ui/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/ui/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/ui/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/ui/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/ui/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/ui/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/ui/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/ui/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/ui/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/ui/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/ui/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/ui/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/ui/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/ui/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/ui/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/ui/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/ui/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/ui/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/ui/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/ui/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/ui/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/ui/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/ui/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/ui/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/ui/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/ui/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/ui/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/ui/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/ui/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/ui/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/ui/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/ui/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/ui/dist/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/ui/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/ui/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/ui/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/ui/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/ui/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/ui/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/ui/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/ui/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/ui/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/ui/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/ui/dist/assets/MarketplacePage-DGrLtolR.js +1 -0
- package/ui/dist/assets/{ProjectDetail--gPfvATB.js → ProjectDetail-BgWvA6UP.js} +2 -2
- package/ui/dist/assets/ProjectIcon-TDuliqwg.js +1 -0
- package/ui/dist/assets/ProjectList-DXgM4187.js +1 -0
- package/ui/dist/assets/{Settings-1kaf7VHE.js → Settings-xA8Zhi3p.js} +3 -3
- package/ui/dist/assets/StatusIndicator-B8vfFAxg.js +1 -0
- package/ui/dist/assets/{SummaryDetail-DV3AmONk.js → SummaryDetail-eedRfTtF.js} +2 -2
- package/ui/dist/assets/SummaryList-CLNX2P84.js +1 -0
- package/ui/dist/assets/TaskDetail-BtWclNiR.js +1 -0
- package/ui/dist/assets/TaskList-JjODAgSc.js +1 -0
- package/ui/dist/assets/TeamsPage-CBK5iAyx.js +1 -0
- package/ui/dist/assets/TicketBoard-C9aJNNYp.js +1 -0
- package/ui/dist/assets/TicketDetail-CV5JmL31.js +1 -0
- package/ui/dist/assets/TicketList-68V4lzUz.js +1 -0
- package/ui/dist/assets/UserManagement-DKTb6UpE.js +2 -0
- package/ui/dist/assets/ViewSwitcher-BvdQht2Y.js +1 -0
- package/ui/dist/assets/alert-dialog-O6qBOv_f.js +1 -0
- package/ui/dist/assets/{archive-BsLa7brF.js → archive-CX7UvZpf.js} +1 -1
- package/ui/dist/assets/badge-BbfnwDJP.js +1 -0
- package/ui/dist/assets/{bug-CmZI7jqM.js → bug-3WX0394-.js} +1 -1
- package/ui/dist/assets/{calendar-Bf0t2B82.js → calendar-buq77TaS.js} +1 -1
- package/ui/dist/assets/{chevron-up-CoUsOvZj.js → chevron-up-4ymsBJRo.js} +1 -1
- package/ui/dist/assets/{circle-x-Dgw11LgT.js → circle-x-ByXtwR6Y.js} +1 -1
- package/ui/dist/assets/constants-CVdDh7p0.js +1 -0
- package/ui/dist/assets/{cpu-DiPMQICV.js → cpu-CiuoCeDY.js} +1 -1
- package/ui/dist/assets/{database-BwTfupDi.js → database-BWXSBg5a.js} +1 -1
- package/ui/dist/assets/dialog-lDg4NvMV.js +1 -0
- package/ui/dist/assets/dollar-sign-Dmijd6DP.js +1 -0
- package/ui/dist/assets/{ellipsis-UJx4Xnf6.js → ellipsis-vT-5SVIp.js} +1 -1
- package/ui/dist/assets/{ellipsis-vertical-DoULYEKn.js → ellipsis-vertical-B4tAX_bL.js} +1 -1
- package/ui/dist/assets/feature-markdown-DBo5Q7uq.js +289 -0
- package/ui/dist/assets/{file-code-B2UrJLwi.js → file-code-ChOWdKXf.js} +1 -1
- package/ui/dist/assets/{folder-open-BJi577JH.js → folder-open-CkOUbIiP.js} +1 -1
- package/ui/dist/assets/{funnel-PkaD_HSR.js → funnel-uZkoSPP-.js} +1 -1
- package/ui/dist/assets/{git-branch-C_K30am0.js → git-branch-CwvUxj7C.js} +1 -1
- package/ui/dist/assets/{git-commit-horizontal-IT6ecxWQ.js → git-commit-horizontal-lxPzCvhD.js} +1 -1
- package/ui/dist/assets/{globe-f-jjCa_g.js → globe-D_WpJdsj.js} +1 -1
- package/ui/dist/assets/{hash-DNEv8Elo.js → hash-CA0hJ7vh.js} +1 -1
- package/ui/dist/assets/{history-BQSBo_1Q.js → history-CEWMLELs.js} +1 -1
- package/ui/dist/assets/inbox-ehtOptTV.js +1 -0
- package/ui/dist/assets/{index-nS3EErDg.js → index-C1rhbml4.js} +3 -3
- package/ui/dist/assets/index-CR8gfCHv.js +1 -0
- package/ui/dist/assets/index-DVXMpWai.js +1 -0
- package/ui/dist/assets/index-DaDJMM2v.js +1 -0
- package/ui/dist/assets/index-Djdq_0xu.js +1 -0
- package/ui/dist/assets/index-M46Gcb8K.css +1 -0
- package/ui/dist/assets/index-sEBN7w8J.js +109 -0
- package/ui/dist/assets/layers-C6Mhf8Nk.js +1 -0
- package/ui/dist/assets/{layout-dashboard-CcKt1hXw.js → layout-dashboard-BRUM0kpT.js} +1 -1
- package/ui/dist/assets/{lightbulb-Jhp7FvbU.js → lightbulb-CN2q1O5l.js} +1 -1
- package/ui/dist/assets/{link-2-DdO7ostF.js → link-2-CC4E28yJ.js} +1 -1
- package/ui/dist/assets/markdown-renderer-C6ENbB0u.js +10 -0
- package/ui/dist/assets/markdown-renderer-CfVKi3_s.css +1 -0
- package/ui/dist/assets/{message-square-CBgH65X7.js → message-square-Bbb241am.js} +1 -1
- package/ui/dist/assets/package-CwT3IzFx.js +1 -0
- package/ui/dist/assets/{pencil-CYXCEPQh.js → pencil-CDmiHzoj.js} +1 -1
- package/ui/dist/assets/{play-d1ONaH0-.js → play-tjy5jMQX.js} +1 -1
- package/ui/dist/assets/popover-CFHZf3pE.js +1 -0
- package/ui/dist/assets/progress-BboUHuLf.js +1 -0
- package/ui/dist/assets/{rocket-DhvUetsk.js → rocket--8ZHgdXJ.js} +1 -1
- package/ui/dist/assets/select-n108rXny.js +1 -0
- package/ui/dist/assets/{send-P0r5D7td.js → send-Cu7MR2Qh.js} +1 -1
- package/ui/dist/assets/server-DmodxZp-.js +1 -0
- package/ui/dist/assets/{settings-2-ocj5uHGx.js → settings-2-CkRNqkxj.js} +1 -1
- package/ui/dist/assets/sheet-7aUJkyzU.js +1 -0
- package/ui/dist/assets/{shield-check-DfVdE34l.js → shield-check-ViI3nMKE.js} +1 -1
- package/ui/dist/assets/{shield-off-8l0J6R-8.js → shield-off-DN3tagkn.js} +1 -1
- package/ui/dist/assets/skeleton-C0E1Nfro.js +1 -0
- package/ui/dist/assets/{smartphone-77_g3SQn.js → smartphone-5FghiXpA.js} +1 -1
- package/ui/dist/assets/{square-Ckzsr3Rn.js → square-DiNSx8K7.js} +1 -1
- package/ui/dist/assets/star-DhdFVidS.js +1 -0
- package/ui/dist/assets/switch-CIgVbZqQ.js +1 -0
- package/ui/dist/assets/table-BC56FVMV.js +1 -0
- package/ui/dist/assets/{tag-C35mgoEv.js → tag-CH_vQliw.js} +1 -1
- package/ui/dist/assets/textarea-CxDiKFXZ.js +1 -0
- package/ui/dist/assets/{timer-DHJBS2w1.js → timer-CdGVTb60.js} +1 -1
- package/ui/dist/assets/tooltip-BuW9A5UO.js +1 -0
- package/ui/dist/assets/{trash-2-keO5tKPE.js → trash-2-CucZJL0N.js} +1 -1
- package/ui/dist/assets/trending-down-BCezC1z2.js +1 -0
- package/ui/dist/assets/{trending-up-BBv8KbrY.js → trending-up-C5OYX2k2.js} +1 -1
- package/ui/dist/assets/vendor-query-C0p7b53x.js +4 -0
- package/ui/dist/assets/vendor-react-Mc5_kfYG.js +12 -0
- package/ui/dist/assets/vendor-ui-CXPAUBFv.js +51 -0
- package/ui/dist/assets/{wand-sparkles-BusQ52ZK.js → wand-sparkles-BaH6pJnc.js} +1 -1
- package/ui/dist/assets/{wrench-02YaOSiK.js → wrench-CjxjP6ok.js} +1 -1
- package/ui/dist/index.html +5 -2
- package/ui/dist/assets/ActivityView-BeshZXmE.js +0 -1
- package/ui/dist/assets/AgentList-QVHeldPi.js +0 -1
- package/ui/dist/assets/AnalyticsDashboard-C9R97dXE.js +0 -1
- package/ui/dist/assets/AreaChart-B73gaiVQ.js +0 -1
- package/ui/dist/assets/CartesianChart-CXYL2R-A.js +0 -36
- package/ui/dist/assets/ChatView-qjZErlrp.js +0 -10
- package/ui/dist/assets/CostsDashboard-O4DCLy1i.js +0 -1
- package/ui/dist/assets/EstimateSelect-1hQf4Osk.js +0 -1
- package/ui/dist/assets/FloatingChatbot-BZBzrJxd.js +0 -2
- package/ui/dist/assets/InviteCodeManagement-LEoGqYeA.js +0 -2
- package/ui/dist/assets/ProjectIcon-Chd_ofsw.js +0 -1
- package/ui/dist/assets/ProjectList-BvUfVB6c.js +0 -4
- package/ui/dist/assets/StatusIndicator-pRfkNcdV.js +0 -1
- package/ui/dist/assets/SummaryList-B6kXiTxL.js +0 -1
- package/ui/dist/assets/TaskDetail-CV6CzbOS.js +0 -1
- package/ui/dist/assets/TaskList-DL7brQKd.js +0 -1
- package/ui/dist/assets/TicketBoard-CrkkFj7C.js +0 -1
- package/ui/dist/assets/TicketDetail-hnnYclpD.js +0 -1
- package/ui/dist/assets/TicketList-CsDAyQCL.js +0 -1
- package/ui/dist/assets/UserManagement-BGFQyTSr.js +0 -2
- package/ui/dist/assets/ViewSwitcher-CnL0OqA8.js +0 -1
- package/ui/dist/assets/alert-dialog-SKM6Gjz4.js +0 -7
- package/ui/dist/assets/badge-CVHH1a-v.js +0 -1
- package/ui/dist/assets/brain-6o_RHVpe.js +0 -1
- package/ui/dist/assets/constants-Q5Zivl-a.js +0 -1
- package/ui/dist/assets/dialog-BUqN9Psj.js +0 -1
- package/ui/dist/assets/index-BUmnwPQr.js +0 -1
- package/ui/dist/assets/index-BfF5G4Cw.js +0 -1
- package/ui/dist/assets/index-C8N375c2.js +0 -1
- package/ui/dist/assets/index-CuxnqVVz.css +0 -1
- package/ui/dist/assets/index-CzMM3QOk.js +0 -1
- package/ui/dist/assets/index-lJlNPFVJ.js +0 -67
- package/ui/dist/assets/layers-jFqVrWMD.js +0 -1
- package/ui/dist/assets/markdown-renderer-n1ToC4XQ.js +0 -36
- package/ui/dist/assets/popover-CrmZgoWu.js +0 -1
- package/ui/dist/assets/progress-uv4SPkL5.js +0 -1
- package/ui/dist/assets/select-CeQ8AHGy.js +0 -1
- package/ui/dist/assets/server-CVHTZB72.js +0 -1
- package/ui/dist/assets/sheet-DuQExSho.js +0 -1
- package/ui/dist/assets/skeleton-TFiFJ3nB.js +0 -1
- package/ui/dist/assets/switch-CAePkd6k.js +0 -1
- package/ui/dist/assets/table-ZjAZ7hkt.js +0 -1
- package/ui/dist/assets/textarea-DsVPnSgR.js +0 -1
- package/ui/dist/assets/tooltip-BYmQ331W.js +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{c as Je,r as h,al as tn,bn as M,j as s,be as rs,l as nr,i as B,k as L,X as rr,O as as,n as Dt,o as Ve,t as ne,m as ie,Z as pt,p as Le,I as xt,ad as ss,L as Be,u as Ae,w as ar,g as Kt,a1 as os,C as Ht,a5 as mt,D as qe,x as Ke,y as He,z as pe,aw as Ge,h as gt,J as is,an as sr,a as jn,N as ls,S as cs,P as yt,bo as ds,E as us,s as fs,G as ms}from"./index-lJlNPFVJ.js";import{T as Gt,a as hs,b as kn}from"./ProjectIcon-Chd_ofsw.js";import{D as ps,b as xs,c as gs,d as ys,e as vs}from"./dialog-BUqN9Psj.js";import{T as Nn}from"./textarea-DsVPnSgR.js";import{P as bs,a as ws,b as js}from"./popover-CrmZgoWu.js";import{C as Mt}from"./calendar-Bf0t2B82.js";import{aW as ks,aG as _e,ab as Ut,aL as xe,al as Ns,B as Ot,aN as Ds,aX as Ms,aY as Os,F as et,ar as tt,aZ as Ss,H as ge,a_ as Cs,a$ as Ps,b0 as Dn,b1 as Ws,aJ as or,Z as nt,J as Fe,b2 as Es,b3 as Is,b4 as Mn,b5 as Ts,c as ce,o as Me,b6 as As,ah as Ne,ak as De,ao as nn,am as _s,an as vt,aq as ir,E as lr,as as cr,at as dr,z as St,K as ur,av as fr,ay as mr,az as Fs,aw as hr,aA as Bs,aB as Ys,aC as pr,aD as Ls,j as Ct,aE as On,M as xr,N as gr,P as ee,a5 as yr,aI as vr,a4 as br,D as wr,aK as zs,a6 as Sn,A as $s,b7 as Rs,af as qs,ai as Pe,aj as We,b8 as jr,b9 as Ks,ba as Hs,ap as Cn,bb as Gs,bc as Pn,au as Us,G as Vs,a as Qs,bd as Xs,be as Zs,bf as Wn,U as kr,_ as Nr,$ as Dr,a0 as Mr,a8 as Js,a3 as Or,V as eo,aH as to,a7 as En,aV as Sr,aU as Cr,R as Pr,C as Wr,X as Er,Y as Ir,T as Tr,L as Ar}from"./CartesianChart-CXYL2R-A.js";import{T as no}from"./trending-up-BBv8KbrY.js";import{c as ro,a as ao,d as so}from"./element-adapter-DL0DQilL.js";import{S as oo,a as io,b as lo,c as co,T as uo}from"./sheet-DuQExSho.js";import{C as fo,L as mo,I as _r}from"./layers-jFqVrWMD.js";import{E as Fr}from"./ellipsis-UJx4Xnf6.js";import{a as ho,B as po}from"./bug-CmZI7jqM.js";import{F as xo}from"./funnel-PkaD_HSR.js";import{S as go}from"./settings-2-ocj5uHGx.js";import{P as In}from"./play-d1ONaH0-.js";import{L as yo}from"./layout-dashboard-CcKt1hXw.js";import{C as vo}from"./circle-x-Dgw11LgT.js";import"./smartphone-77_g3SQn.js";import"./wrench-02YaOSiK.js";import"./globe-f-jjCa_g.js";import"./lightbulb-Jhp7FvbU.js";import"./rocket-DhvUetsk.js";import"./defineProperty-CoXUr7_6.js";const bo=[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],wo=Je("circle-play",bo);const jo=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"M15 3v18",key:"14nvp0"}]],ko=Je("columns-3",jo);const No=[["path",{d:"M12.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v9.34",key:"o6klzx"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10.378 12.622a1 1 0 0 1 3 3.003L8.36 20.637a2 2 0 0 1-.854.506l-2.867.837a.5.5 0 0 1-.62-.62l.836-2.869a2 2 0 0 1 .506-.853z",key:"zhnas1"}]],Do=Je("file-pen",No);const Mo=[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]],Oo=Je("flag",Mo);const So=[["path",{d:"M16 17h6v-6",key:"t6n2it"}],["path",{d:"m22 17-8.5-8.5-5 5L2 7",key:"x473p"}]],Vt=Je("trending-down",So);var Tn=(e,t,n)=>{var r=n??e;if(!_e(r))return Ut(r,t,0)},Co=(e,t,n)=>{var r={},a=e.filter(ks),o=e.filter(d=>d.stackId==null),l=a.reduce((d,f)=>{var u=d[f.stackId];return u==null&&(u=[]),u.push(f),d[f.stackId]=u,d},r),i=Object.entries(l).map(d=>{var f,[u,p]=d,x=p.map(j=>j.dataKey),w=Tn(t,n,(f=p[0])===null||f===void 0?void 0:f.barSize);return{stackId:u,dataKeys:x,barSize:w}}),c=o.map(d=>{var f=[d.dataKey].filter(p=>p!=null),u=Tn(t,n,d.barSize);return{stackId:void 0,dataKeys:f,barSize:u}});return[...i,...c]};function An(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function ct(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?An(Object(n),!0).forEach(function(r){Po(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):An(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Po(e,t,n){return(t=Wo(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Wo(e){var t=Eo(e,"string");return typeof t=="symbol"?t:t+""}function Eo(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Io(e,t,n,r,a){var o,l=r.length;if(!(l<1)){var i=Ut(e,n,0,!0),c,d=[];if(xe((o=r[0])===null||o===void 0?void 0:o.barSize)){var f=!1,u=n/l,p=r.reduce((k,N)=>k+(N.barSize||0),0);p+=(l-1)*i,p>=n&&(p-=(l-1)*i,i=0),p>=n&&u>0&&(f=!0,u*=.9,p=l*u);var x=(n-p)/2>>0,w={offset:x-i,size:0};c=r.reduce((k,N)=>{var m,g={stackId:N.stackId,dataKeys:N.dataKeys,position:{offset:w.offset+w.size+i,size:f?u:(m=N.barSize)!==null&&m!==void 0?m:0}},v=[...k,g];return w=g.position,v},d)}else{var j=Ut(t,n,0,!0);n-2*j-(l-1)*i<=0&&(i=0);var b=(n-2*j-(l-1)*i)/l;b>1&&(b>>=0);var y=xe(a)?Math.min(b,a):b;c=r.reduce((k,N,m)=>[...k,{stackId:N.stackId,dataKeys:N.dataKeys,position:{offset:j+(b+i)*m+(b-y)/2,size:y}}],d)}return c}}var To=(e,t,n,r,a,o,l)=>{var i=_e(l)?t:l,c=Io(n,r,a!==o?a:o,e,i);return a!==o&&c!=null&&(c=c.map(d=>ct(ct({},d),{},{position:ct(ct({},d.position),{},{offset:d.position.offset-a/2})}))),c},Ao=(e,t)=>{var n=Ns(t);if(!(!e||n==null||t==null)){var{stackId:r}=t;if(r!=null){var a=e[r];if(a){var{stackedData:o}=a;if(o)return o.find(l=>l.key===n)}}}},_o=(e,t)=>{if(!(e==null||t==null)){var n=e.find(r=>r.stackId===t.stackId&&t.dataKey!=null&&r.dataKeys.includes(t.dataKey));if(n!=null)return n.position}};function Fo(e,t){return e&&typeof e=="object"&&"zIndex"in e&&typeof e.zIndex=="number"&&xe(e.zIndex)?e.zIndex:t}class Bo{constructor(t){var{x:n,y:r}=t;this.xAxisScale=n,this.yAxisScale=r}map(t,n){var r,a,{position:o}=n;return{x:(r=this.xAxisScale.map(t.x,{position:o}))!==null&&r!==void 0?r:0,y:(a=this.yAxisScale.map(t.y,{position:o}))!==null&&a!==void 0?a:0}}mapWithFallback(t,n){var r,a,{position:o,fallback:l}=n,i,c;return l==="rangeMin"?i=this.yAxisScale.rangeMin():l==="rangeMax"?i=this.yAxisScale.rangeMax():i=0,l==="rangeMin"?c=this.xAxisScale.rangeMin():l==="rangeMax"?c=this.xAxisScale.rangeMax():c=0,{x:(r=this.xAxisScale.map(t.x,{position:o}))!==null&&r!==void 0?r:c,y:(a=this.yAxisScale.map(t.y,{position:o}))!==null&&a!==void 0?a:i}}isInRange(t){var{x:n,y:r}=t,a=n==null||this.xAxisScale.isInRange(n),o=r==null||this.yAxisScale.isInRange(r);return a&&o}}function _n(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Fn(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?_n(Object(n),!0).forEach(function(r){Yo(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_n(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Yo(e,t,n){return(t=Lo(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Lo(e){var t=zo(e,"string");return typeof t=="symbol"?t:t+""}function zo(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function bt(){return bt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},bt.apply(null,arguments)}var $o=(e,t)=>{var n;if(h.isValidElement(e))n=h.cloneElement(e,t);else if(typeof e=="function")n=e(t);else{if(!xe(t.x1)||!xe(t.y1)||!xe(t.x2)||!xe(t.y2))return null;n=h.createElement("line",bt({},t,{className:"recharts-reference-line-line"}))}return n},Ro=(e,t,n,r,a,o)=>{var{x:l,width:i}=o,c=a.map(e,{position:n});if(!xe(c)||t==="discard"&&!a.isInRange(c))return null;var d=[{x:l+i,y:c},{x:l,y:c}];return r==="left"?d.reverse():d},qo=(e,t,n,r,a,o)=>{var{y:l,height:i}=o,c=a.map(e,{position:n});if(!xe(c)||t==="discard"&&!a.isInRange(c))return null;var d=[{x:c,y:l+i},{x:c,y:l}];return r==="top"?d.reverse():d},Ko=(e,t,n,r)=>{var a=[r.mapWithFallback(e[0],{position:n,fallback:"rangeMin"}),r.mapWithFallback(e[1],{position:n,fallback:"rangeMax"})];return t==="discard"&&a.some(o=>!r.isInRange(o))?null:a},Ho=(e,t,n,r,a,o,l)=>{var{x:i,y:c,segment:d,ifOverflow:f}=l,u=Mn(i),p=Mn(c);return p?Ro(c,f,r,o,t,n):u?qo(i,f,r,a,e,n):d!=null&&d.length===2?Ko(d,f,r,new Bo({x:e,y:t})):null};function Go(e){var t=Ds();return h.useEffect(()=>(t(Ms(e)),()=>{t(Os(e))})),null}function Uo(e){var{xAxisId:t,yAxisId:n,shape:r,className:a,ifOverflow:o}=e,l=tt(),i=Ss(),c=ge(D=>Cs(D,t)),d=ge(D=>Ps(D,n)),f=ge(D=>Dn(D,"xAxis",t,l)),u=ge(D=>Dn(D,"yAxis",n,l)),p=Ws();if(!i||!p||c==null||d==null||f==null||u==null)return null;var x=Ho(f,u,p,e.position,c.orientation,d.orientation,e);if(!x)return null;var w=x[0],j=x[1];if(w==null||j==null)return null;var{x:b,y}=w,{x:k,y:N}=j,m=o==="hidden"?"url(#".concat(i,")"):void 0,g=Fn(Fn({clipPath:m},or(e)),{},{x1:b,y1:y,x2:k,y2:N}),v=Ts({x1:b,y1:y,x2:k,y2:N});return h.createElement(nt,{zIndex:e.zIndex},h.createElement(Fe,{className:tn("recharts-reference-line",a)},$o(r,g),h.createElement(Es,bt({},v,{lowerWidth:v.width,upperWidth:v.width}),h.createElement(Is,{label:e.label}),e.children)))}var Vo={ifOverflow:"discard",xAxisId:0,yAxisId:0,fill:"none",label:!1,stroke:"#ccc",fillOpacity:1,strokeWidth:1,position:"middle",zIndex:et.line};function rn(e){var t=Ot(e,Vo);return h.createElement(h.Fragment,null,h.createElement(Go,{yAxisId:t.yAxisId,xAxisId:t.xAxisId,ifOverflow:t.ifOverflow,x:t.x,y:t.y,segment:t.segment}),h.createElement(Uo,t))}rn.displayName="ReferenceLine";var Qo=["children"];function Xo(e,t){if(e==null)return{};var n,r,a=Zo(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function Zo(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var Jo={data:[],xAxisId:"xAxis-0",yAxisId:"yAxis-0",dataPointFormatter:()=>({x:0,y:0,value:0}),errorBarOffset:0},ei=h.createContext(Jo);function Br(e){var{children:t}=e,n=Xo(e,Qo);return h.createElement(ei.Provider,{value:n},t)}var Yr=(e,t,n,r)=>Ne(e,"xAxis",t,r),Lr=(e,t,n,r)=>De(e,"xAxis",t,r),zr=(e,t,n,r)=>Ne(e,"yAxis",n,r),$r=(e,t,n,r)=>De(e,"yAxis",n,r),ti=ce([Me,Yr,zr,Lr,$r],(e,t,n,r,a)=>_s(e,"xAxis")?vt(t,r,!1):vt(n,a,!1)),ni=(e,t,n,r,a)=>a;function ri(e){return e.type==="line"}var ai=ce([nn,ni],(e,t)=>e.filter(ri).find(n=>n.id===t)),si=ce([Me,Yr,zr,Lr,$r,ai,ti,As],(e,t,n,r,a,o,l,i)=>{var{chartData:c,dataStartIndex:d,dataEndIndex:f}=i;if(!(o==null||t==null||n==null||r==null||a==null||r.length===0||a.length===0||l==null||e!=="horizontal"&&e!=="vertical")){var{dataKey:u,data:p}=o,x;if(p!=null&&p.length>0?x=p:x=c?.slice(d,f+1),x!=null)return Di({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:a,dataKey:u,bandSize:l,displayedData:x})}}),oi=["id"],ii=["type","layout","connectNulls","needClip","shape"],li=["activeDot","animateNewValues","animationBegin","animationDuration","animationEasing","connectNulls","dot","hide","isAnimationActive","label","legendType","xAxisId","yAxisId","id"];function Qe(){return Qe=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Qe.apply(null,arguments)}function Bn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function ue(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Bn(Object(n),!0).forEach(function(r){ci(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Bn(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function ci(e,t,n){return(t=di(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function di(e){var t=ui(e,"string");return typeof t=="symbol"?t:t+""}function ui(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function an(e,t){if(e==null)return{};var n,r,a=fi(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function fi(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var mi=e=>{var{dataKey:t,name:n,stroke:r,legendType:a,hide:o}=e;return[{inactive:o,dataKey:t,type:a,color:r,value:St(n,t),payload:e}]},hi=h.memo(e=>{var{dataKey:t,data:n,stroke:r,strokeWidth:a,fill:o,name:l,hide:i,unit:c,tooltipType:d,id:f}=e,u={dataDefinedOnItem:n,getPosition:fr,settings:{stroke:r,strokeWidth:a,fill:o,dataKey:t,nameKey:void 0,name:St(l,t),hide:i,type:d,color:r,unit:c,graphicalItemId:f}};return h.createElement(ur,{tooltipEntrySettings:u})}),Rr=(e,t)=>"".concat(t,"px ").concat(e-t,"px");function pi(e,t){for(var n=e.length%2!==0?[...e,0]:e,r=[],a=0;a<t;++a)r=[...r,...n];return r}var xi=(e,t,n)=>{var r=n.reduce((x,w)=>x+w);if(!r)return Rr(t,e);for(var a=Math.floor(e/r),o=e%r,l=t-e,i=[],c=0,d=0;c<n.length;d+=(f=n[c])!==null&&f!==void 0?f:0,++c){var f,u=n[c];if(u!=null&&d+u>o){i=[...n.slice(0,c),o-d];break}}var p=i.length%2===0?[0,l]:[l];return[...pi(n,a),...i,...p].map(x=>"".concat(x,"px")).join(", ")};function gi(e){var{clipPathId:t,points:n,props:r}=e,{dot:a,dataKey:o,needClip:l}=r,{id:i}=r,c=an(r,oi),d=wr(c);return h.createElement(zs,{points:n,dot:a,className:"recharts-line-dots",dotClassName:"recharts-line-dot",dataKey:o,baseProps:d,needClip:l,clipPathId:t})}function yi(e){var{showLabels:t,children:n,points:r}=e,a=h.useMemo(()=>r?.map(o=>{var l,i,c={x:(l=o.x)!==null&&l!==void 0?l:0,y:(i=o.y)!==null&&i!==void 0?i:0,width:0,lowerWidth:0,upperWidth:0,height:0};return ue(ue({},c),{},{value:o.value,payload:o.payload,viewBox:c,parentViewBox:void 0,fill:void 0})}),[r]);return h.createElement(vr,{value:t?a:void 0},n)}function Yn(e){var{clipPathId:t,pathRef:n,points:r,strokeDasharray:a,props:o}=e,{type:l,layout:i,connectNulls:c,needClip:d,shape:f}=o,u=an(o,ii),p=ue(ue({},or(u)),{},{fill:"none",className:"recharts-line-curve",clipPath:d?"url(#clipPath-".concat(t,")"):void 0,points:r,type:l,layout:i,connectNulls:c,strokeDasharray:a??o.strokeDasharray});return h.createElement(h.Fragment,null,r?.length>1&&h.createElement(br,Qe({shapeType:"curve",option:f},p,{pathRef:n})),h.createElement(gi,{points:r,clipPathId:t,props:o}))}function vi(e){try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch{return 0}}function bi(e){var{clipPathId:t,props:n,pathRef:r,previousPointsRef:a,longestAnimatedLengthRef:o}=e,{points:l,strokeDasharray:i,isAnimationActive:c,animationBegin:d,animationDuration:f,animationEasing:u,animateNewValues:p,width:x,height:w,onAnimationEnd:j,onAnimationStart:b}=n,y=a.current,k=xr(l,"recharts-line-"),N=h.useRef(k),[m,g]=h.useState(!1),v=!m,D=h.useCallback(()=>{typeof j=="function"&&j(),g(!1)},[j]),O=h.useCallback(()=>{typeof b=="function"&&b(),g(!0)},[b]),C=vi(r.current),E=h.useRef(0);N.current!==k&&(E.current=o.current,N.current=k);var G=E.current;return h.createElement(yi,{points:l,showLabels:v},n.children,h.createElement(gr,{animationId:k,begin:d,duration:f,isActive:c,easing:u,onAnimationEnd:D,onAnimationStart:O,key:k},K=>{var R=ee(G,C+G,K),q=Math.min(R,C),U;if(c)if(i){var ae="".concat(i).split(/[,\s]+/gim).map(Y=>parseFloat(Y));U=xi(q,C,ae)}else U=Rr(C,q);else U=i==null?void 0:String(i);if(K>0&&C>0&&(a.current=l,o.current=Math.max(o.current,q)),y){var we=y.length/l.length,he=K===1?l:l.map((Y,V)=>{var Z=Math.floor(V*we);if(y[Z]){var je=y[Z];return ue(ue({},Y),{},{x:ee(je.x,Y.x,K),y:ee(je.y,Y.y,K)})}return p?ue(ue({},Y),{},{x:ee(x*2,Y.x,K),y:ee(w/2,Y.y,K)}):ue(ue({},Y),{},{x:Y.x,y:Y.y})});return a.current=he,h.createElement(Yn,{props:n,points:he,clipPathId:t,pathRef:r,strokeDasharray:U})}return h.createElement(Yn,{props:n,points:l,clipPathId:t,pathRef:r,strokeDasharray:U})}),h.createElement(yr,{label:n.label}))}function wi(e){var{clipPathId:t,props:n}=e,r=h.useRef(null),a=h.useRef(0),o=h.useRef(null);return h.createElement(bi,{props:n,clipPathId:t,previousPointsRef:r,longestAnimatedLengthRef:a,pathRef:o})}var ji=(e,t)=>{var n,r;return{x:(n=e.x)!==null&&n!==void 0?n:void 0,y:(r=e.y)!==null&&r!==void 0?r:void 0,value:e.value,errorVal:Ct(e.payload,t)}};class ki extends h.Component{render(){var{hide:t,dot:n,points:r,className:a,xAxisId:o,yAxisId:l,top:i,left:c,width:d,height:f,id:u,needClip:p,zIndex:x}=this.props;if(t)return null;var w=tn("recharts-line",a),j=u,{r:b,strokeWidth:y}=Bs(n),k=Ys(n),N=b*2+y,m=p?"url(#clipPath-".concat(k?"":"dots-").concat(j,")"):void 0;return h.createElement(nt,{zIndex:x},h.createElement(Fe,{className:w},p&&h.createElement("defs",null,h.createElement(pr,{clipPathId:j,xAxisId:o,yAxisId:l}),!k&&h.createElement("clipPath",{id:"clipPath-dots-".concat(j)},h.createElement("rect",{x:c-N/2,y:i-N/2,width:d+N,height:f+N}))),h.createElement(Br,{xAxisId:o,yAxisId:l,data:r,dataPointFormatter:ji,errorBarOffset:0},h.createElement(wi,{props:this.props,clipPathId:j}))),h.createElement(Ls,{activeDot:this.props.activeDot,points:r,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:m}))}}var qr={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!0,fill:"#fff",hide:!1,isAnimationActive:"auto",label:!1,legendType:"line",stroke:"#3182bd",strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:et.line,type:"linear"};function Ni(e){var t=Ot(e,qr),{activeDot:n,animateNewValues:r,animationBegin:a,animationDuration:o,animationEasing:l,connectNulls:i,dot:c,hide:d,isAnimationActive:f,label:u,legendType:p,xAxisId:x,yAxisId:w,id:j}=t,b=an(t,li),{needClip:y}=mr(x,w),k=Fs(),N=hr(),m=tt(),g=ge(E=>si(E,x,w,m,j));if(N!=="horizontal"&&N!=="vertical"||g==null||k==null)return null;var{height:v,width:D,x:O,y:C}=k;return h.createElement(ki,Qe({},b,{id:j,connectNulls:i,dot:c,activeDot:n,animateNewValues:r,animationBegin:a,animationDuration:o,animationEasing:l,isAnimationActive:f,hide:d,label:u,legendType:p,xAxisId:x,yAxisId:w,points:g,layout:N,height:v,width:D,left:O,top:C,needClip:y}))}function Di(e){var{layout:t,xAxis:n,yAxis:r,xAxisTicks:a,yAxisTicks:o,dataKey:l,bandSize:i,displayedData:c}=e;return c.map((d,f)=>{var u=Ct(d,l);if(t==="horizontal"){var p=On({axis:n,ticks:a,bandSize:i,entry:d,index:f}),x=_e(u)?null:r.scale.map(u);return{x:p,y:x??null,value:u,payload:d}}var w=_e(u)?null:n.scale.map(u),j=On({axis:r,ticks:o,bandSize:i,entry:d,index:f});return w==null||j==null?null:{x:w,y:j,value:u,payload:d}}).filter(Boolean)}function Mi(e){var t=Ot(e,qr),n=tt();return h.createElement(lr,{id:t.id,type:"line"},r=>h.createElement(h.Fragment,null,h.createElement(cr,{legendPayload:mi(t)}),h.createElement(hi,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:r}),h.createElement(dr,{type:"line",id:r,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,hide:t.hide,isPanorama:n}),h.createElement(Ni,Qe({},t,{id:r}))))}var Qt=h.memo(Mi,ir);Qt.displayName="Line";var Oi="Invariant failed";function Si(e,t){throw new Error(Oi)}function Xt(){return Xt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Xt.apply(null,arguments)}function wt(e){return h.createElement(br,Xt({shapeType:"rectangle",activeClassName:"recharts-active-bar"},e))}var Ci=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return(r,a)=>{if(Sn(t))return t;var o=Sn(r)||_e(r);return o?t(r,a):(o||Si(),n)}},Pi=(e,t,n)=>n,Wi=(e,t)=>t,rt=ce([nn,Wi],(e,t)=>e.filter(n=>n.type==="bar").find(n=>n.id===t)),Ei=ce([rt],e=>e?.maxBarSize),Ii=(e,t,n,r)=>r,Ti=ce([Me,nn,Pe,We,Pi],(e,t,n,r,a)=>t.filter(o=>e==="horizontal"?o.xAxisId===n:o.yAxisId===r).filter(o=>o.isPanorama===a).filter(o=>o.hide===!1).filter(o=>o.type==="bar")),Ai=(e,t,n)=>{var r=Me(e),a=Pe(e,t),o=We(e,t);if(!(a==null||o==null))return r==="horizontal"?Cn(e,"yAxis",o,n):Cn(e,"xAxis",a,n)},_i=(e,t)=>{var n=Me(e),r=Pe(e,t),a=We(e,t);if(!(r==null||a==null))return n==="horizontal"?Pn(e,"xAxis",r):Pn(e,"yAxis",a)},Fi=ce([Ti,Gs,_i],Co),Bi=(e,t,n)=>{var r,a,o=rt(e,t);if(o==null)return 0;var l=Pe(e,t),i=We(e,t);if(l==null||i==null)return 0;var c=Me(e),d=jr(e),{maxBarSize:f}=o,u=_e(f)?d:f,p,x;return c==="horizontal"?(p=Ne(e,"xAxis",l,n),x=De(e,"xAxis",l,n)):(p=Ne(e,"yAxis",i,n),x=De(e,"yAxis",i,n)),(r=(a=vt(p,x,!0))!==null&&a!==void 0?a:u)!==null&&r!==void 0?r:0},Kr=(e,t,n)=>{var r=Me(e),a=Pe(e,t),o=We(e,t);if(!(a==null||o==null)){var l,i;return r==="horizontal"?(l=Ne(e,"xAxis",a,n),i=De(e,"xAxis",a,n)):(l=Ne(e,"yAxis",o,n),i=De(e,"yAxis",o,n)),vt(l,i)}},Yi=ce([Fi,jr,Ks,Hs,Bi,Kr,Ei],To),Li=(e,t,n)=>{var r=Pe(e,t);if(r!=null)return Ne(e,"xAxis",r,n)},zi=(e,t,n)=>{var r=We(e,t);if(r!=null)return Ne(e,"yAxis",r,n)},$i=(e,t,n)=>{var r=Pe(e,t);if(r!=null)return De(e,"xAxis",r,n)},Ri=(e,t,n)=>{var r=We(e,t);if(r!=null)return De(e,"yAxis",r,n)},qi=ce([Yi,rt],_o),Ki=ce([Ai,rt],Ao),Hi=ce([$s,Rs,Li,zi,$i,Ri,qi,Me,qs,Kr,Ki,rt,Ii],(e,t,n,r,a,o,l,i,c,d,f,u,p)=>{var{chartData:x,dataStartIndex:w,dataEndIndex:j}=c;if(!(u==null||l==null||t==null||i!=="horizontal"&&i!=="vertical"||n==null||r==null||a==null||o==null||d==null)){var{data:b}=u,y;if(b!=null&&b.length>0?y=b:y=x?.slice(w,j+1),y!=null)return bl({layout:i,barSettings:u,pos:l,parentViewBox:t,bandSize:d,xAxis:n,yAxis:r,xAxisTicks:a,yAxisTicks:o,stackedData:f,displayedData:y,offset:e,cells:p,dataStartIndex:w})}}),Gi=["index"];function Zt(){return Zt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Zt.apply(null,arguments)}function Ui(e,t){if(e==null)return{};var n,r,a=Vi(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function Vi(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var Hr=h.createContext(void 0),Qi=e=>{var t=h.useContext(Hr);if(t!=null)return t.stackId;if(e!=null)return Us(e)},Xi=(e,t)=>"recharts-bar-stack-clip-path-".concat(e,"-").concat(t),Zi=e=>{var t=h.useContext(Hr);if(t!=null){var{stackId:n}=t;return"url(#".concat(Xi(n,e),")")}},Gr=e=>{var{index:t}=e,n=Ui(e,Gi),r=Zi(t);return h.createElement(Fe,Zt({className:"recharts-bar-stack-layer",clipPath:r},n))},Ji=["onMouseEnter","onMouseLeave","onClick"],el=["value","background","tooltipPosition"],tl=["id"],nl=["onMouseEnter","onClick","onMouseLeave"];function be(){return be=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},be.apply(null,arguments)}function Ln(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function X(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Ln(Object(n),!0).forEach(function(r){rl(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ln(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function rl(e,t,n){return(t=al(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function al(e){var t=sl(e,"string");return typeof t=="symbol"?t:t+""}function sl(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function jt(e,t){if(e==null)return{};var n,r,a=ol(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function ol(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var il=e=>{var{dataKey:t,name:n,fill:r,legendType:a,hide:o}=e;return[{inactive:o,dataKey:t,type:a,color:r,value:St(n,t),payload:e}]},ll=h.memo(e=>{var{dataKey:t,stroke:n,strokeWidth:r,fill:a,name:o,hide:l,unit:i,tooltipType:c,id:d}=e,f={dataDefinedOnItem:void 0,getPosition:fr,settings:{stroke:n,strokeWidth:r,fill:a,dataKey:t,nameKey:void 0,name:St(o,t),hide:l,type:c,color:a,unit:i,graphicalItemId:d}};return h.createElement(ur,{tooltipEntrySettings:f})});function cl(e){var t=ge(kr),{data:n,dataKey:r,background:a,allOtherBarProps:o}=e,{onMouseEnter:l,onMouseLeave:i,onClick:c}=o,d=jt(o,Ji),f=Nr(l,r,o.id),u=Dr(i),p=Mr(c,r,o.id);if(!a||n==null)return null;var x=Js(a);return h.createElement(nt,{zIndex:Fo(a,et.barBackground)},n.map((w,j)=>{var{value:b,background:y,tooltipPosition:k}=w,N=jt(w,el);if(!y)return null;var m=f(w,j),g=u(w,j),v=p(w,j),D=X(X(X(X(X({option:a,isActive:String(j)===t},N),{},{fill:"#eee"},y),x),Or(d,w,j)),{},{onMouseEnter:m,onMouseLeave:g,onClick:v,dataKey:r,index:j,className:"recharts-bar-background-rectangle"});return h.createElement(wt,be({key:"background-bar-".concat(j)},D))}))}function dl(e){var{showLabels:t,children:n,rects:r}=e,a=r?.map(o=>{var l={x:o.x,y:o.y,width:o.width,lowerWidth:o.width,upperWidth:o.width,height:o.height};return X(X({},l),{},{value:o.value,payload:o.payload,parentViewBox:o.parentViewBox,viewBox:l,fill:o.fill})});return h.createElement(vr,{value:t?a:void 0},n)}function ul(e){var{shape:t,activeBar:n,baseProps:r,entry:a,index:o,dataKey:l}=e,i=ge(kr),c=ge(eo),d=n&&String(o)===i&&(c==null||l===c),f=d?n:t;return d?h.createElement(nt,{zIndex:et.activeBar},h.createElement(Gr,{index:o},h.createElement(wt,be({},r,{name:String(r.name)},a,{isActive:d,option:f,index:o,dataKey:l})))):h.createElement(wt,be({},r,{name:String(r.name)},a,{isActive:d,option:f,index:o,dataKey:l}))}function fl(e){var{shape:t,baseProps:n,entry:r,index:a,dataKey:o}=e;return h.createElement(wt,be({},n,{name:String(n.name)},r,{isActive:!1,option:t,index:a,dataKey:o}))}function ml(e){var t,{data:n,props:r}=e,a=(t=wr(r))!==null&&t!==void 0?t:{},{id:o}=a,l=jt(a,tl),{shape:i,dataKey:c,activeBar:d}=r,{onMouseEnter:f,onClick:u,onMouseLeave:p}=r,x=jt(r,nl),w=Nr(f,c,o),j=Dr(p),b=Mr(u,c,o);return n?h.createElement(h.Fragment,null,n.map((y,k)=>h.createElement(Gr,be({index:k,key:"rectangle-".concat(y?.x,"-").concat(y?.y,"-").concat(y?.value,"-").concat(k),className:"recharts-bar-rectangle"},Or(x,y,k),{onMouseEnter:w(y,k),onMouseLeave:j(y,k),onClick:b(y,k)}),d?h.createElement(ul,{shape:i,activeBar:d,baseProps:l,entry:y,index:k,dataKey:c}):h.createElement(fl,{shape:i,baseProps:l,entry:y,index:k,dataKey:c})))):null}function hl(e){var{props:t,previousRectanglesRef:n}=e,{data:r,layout:a,isAnimationActive:o,animationBegin:l,animationDuration:i,animationEasing:c,onAnimationEnd:d,onAnimationStart:f}=t,u=n.current,p=xr(t,"recharts-bar-"),[x,w]=h.useState(!1),j=!x,b=h.useCallback(()=>{typeof d=="function"&&d(),w(!1)},[d]),y=h.useCallback(()=>{typeof f=="function"&&f(),w(!0)},[f]);return h.createElement(dl,{showLabels:j,rects:r},h.createElement(gr,{animationId:p,begin:l,duration:i,isActive:o,easing:c,onAnimationEnd:b,onAnimationStart:y,key:p},k=>{var N=k===1?r:r?.map((m,g)=>{var v=u&&u[g];if(v)return X(X({},m),{},{x:ee(v.x,m.x,k),y:ee(v.y,m.y,k),width:ee(v.width,m.width,k),height:ee(v.height,m.height,k)});if(a==="horizontal"){var D=ee(0,m.height,k),O=ee(m.stackedBarStart,m.y,k);return X(X({},m),{},{y:O,height:D})}var C=ee(0,m.width,k),E=ee(m.stackedBarStart,m.x,k);return X(X({},m),{},{width:C,x:E})});return k>0&&(n.current=N??null),N==null?null:h.createElement(Fe,null,h.createElement(ml,{props:t,data:N}))}),h.createElement(yr,{label:t.label}),t.children)}function pl(e){var t=h.useRef(null);return h.createElement(hl,{previousRectanglesRef:t,props:e})}var Ur=0,xl=(e,t)=>{var n=Array.isArray(e.value)?e.value[1]:e.value;return{x:e.x,y:e.y,value:n,errorVal:Ct(e,t)}};class gl extends h.PureComponent{render(){var{hide:t,data:n,dataKey:r,className:a,xAxisId:o,yAxisId:l,needClip:i,background:c,id:d}=this.props;if(t||n==null)return null;var f=tn("recharts-bar",a),u=d;return h.createElement(Fe,{className:f,id:d},i&&h.createElement("defs",null,h.createElement(pr,{clipPathId:u,xAxisId:o,yAxisId:l})),h.createElement(Fe,{className:"recharts-bar-rectangles",clipPath:i?"url(#clipPath-".concat(u,")"):void 0},h.createElement(cl,{data:n,dataKey:r,background:c,allOtherBarProps:this.props}),h.createElement(pl,this.props)))}}var yl={activeBar:!1,animationBegin:0,animationDuration:400,animationEasing:"ease",background:!1,hide:!1,isAnimationActive:"auto",label:!1,legendType:"rect",minPointSize:Ur,xAxisId:0,yAxisId:0,zIndex:et.bar};function vl(e){var{xAxisId:t,yAxisId:n,hide:r,legendType:a,minPointSize:o,activeBar:l,animationBegin:i,animationDuration:c,animationEasing:d,isAnimationActive:f}=e,{needClip:u}=mr(t,n),p=hr(),x=tt(),w=Vs(e.children,Qs),j=ge(k=>Hi(k,e.id,x,w));if(p!=="vertical"&&p!=="horizontal")return null;var b,y=j?.[0];return y==null||y.height==null||y.width==null?b=0:b=p==="vertical"?y.height/2:y.width/2,h.createElement(Br,{xAxisId:t,yAxisId:n,data:j,dataPointFormatter:xl,errorBarOffset:b},h.createElement(gl,be({},e,{layout:p,needClip:u,data:j,xAxisId:t,yAxisId:n,hide:r,legendType:a,minPointSize:o,activeBar:l,animationBegin:i,animationDuration:c,animationEasing:d,isAnimationActive:f})))}function bl(e){var{layout:t,barSettings:{dataKey:n,minPointSize:r},pos:a,bandSize:o,xAxis:l,yAxis:i,xAxisTicks:c,yAxisTicks:d,stackedData:f,displayedData:u,offset:p,cells:x,parentViewBox:w,dataStartIndex:j}=e,b=t==="horizontal"?i:l,y=f?b.scale.domain():null,k=Xs({numericAxis:b}),N=b.scale.map(k);return u.map((m,g)=>{var v,D,O,C,E,G;if(f){var K=f[g+j];if(K==null)return null;v=Zs(K,y)}else v=Ct(m,n),Array.isArray(v)||(v=[k,v]);var R=Ci(r,Ur)(v[1],g);if(t==="horizontal"){var q,U=i.scale.map(v[0]),ae=i.scale.map(v[1]);if(U==null||ae==null)return null;D=Wn({axis:l,ticks:c,bandSize:o,offset:a.offset,entry:m,index:g}),O=(q=ae??U)!==null&&q!==void 0?q:void 0,C=a.size;var we=U-ae;if(E=to(we)?0:we,G={x:D,y:p.top,width:C,height:p.height},Math.abs(R)>0&&Math.abs(E)<Math.abs(R)){var he=En(E||R)*(Math.abs(R)-Math.abs(E));O-=he,E+=he}}else{var Y=l.scale.map(v[0]),V=l.scale.map(v[1]);if(Y==null||V==null)return null;if(D=Y,O=Wn({axis:i,ticks:d,bandSize:o,offset:a.offset,entry:m,index:g}),C=V-Y,E=a.size,G={x:p.left,y:O,width:p.width,height:E},Math.abs(R)>0&&Math.abs(C)<Math.abs(R)){var Z=En(C||R)*(Math.abs(R)-Math.abs(C));C+=Z}}if(D==null||O==null||C==null||E==null)return null;var je=X(X({},m),{},{stackedBarStart:N,x:D,y:O,width:C,height:E,value:f?v:v[1],payload:m,background:G,tooltipPosition:{x:D+C/2,y:O+E/2},parentViewBox:w},x&&x[g]&&x[g].props);return je}).filter(Boolean)}function wl(e){var t=Ot(e,yl),n=Qi(t.stackId),r=tt();return h.createElement(lr,{id:t.id,type:"bar"},a=>h.createElement(h.Fragment,null,h.createElement(cr,{legendPayload:il(t)}),h.createElement(ll,{dataKey:t.dataKey,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:a}),h.createElement(dr,{type:"bar",id:a,data:void 0,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,stackId:n,hide:t.hide,barSize:t.barSize,minPointSize:t.minPointSize,maxBarSize:t.maxBarSize,isPanorama:r}),h.createElement(nt,{zIndex:t.zIndex},h.createElement(vl,be({},t,{id:a})))))}var Jt=h.memo(wl,ir);Jt.displayName="Bar";var jl=["axis"],kl=h.forwardRef((e,t)=>h.createElement(Sr,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:jl,tooltipPayloadSearcher:Cr,categoricalChartProps:e,ref:t})),Nl=["axis","item"],Dl=h.forwardRef((e,t)=>h.createElement(Sr,{chartName:"BarChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:Nl,tooltipPayloadSearcher:Cr,categoricalChartProps:e,ref:t}));const Vr=6048e5,Ml=864e5,Qr=6e4,Xr=36e5,zn=Symbol.for("constructDateFrom");function $(e,t){return typeof e=="function"?e(t):e&&typeof e=="object"&&zn in e?e[zn](t):e instanceof Date?new e.constructor(t):new Date(t)}function _(e,t){return $(t||e,e)}function sn(e,t,n){const r=_(e,n?.in);return isNaN(t)?$(e,NaN):(t&&r.setDate(r.getDate()+t),r)}function Zr(e,t,n){const r=_(e,n?.in);if(isNaN(t))return $(e,NaN);if(!t)return r;const a=r.getDate(),o=$(e,r.getTime());o.setMonth(r.getMonth()+t+1,0);const l=o.getDate();return a>=l?o:(r.setFullYear(o.getFullYear(),o.getMonth(),a),r)}let Ol={};function at(){return Ol}function Ce(e,t){const n=at(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,a=_(e,t?.in),o=a.getDay(),l=(o<r?7:0)+o-r;return a.setDate(a.getDate()-l),a.setHours(0,0,0,0),a}function Xe(e,t){return Ce(e,{...t,weekStartsOn:1})}function Jr(e,t){const n=_(e,t?.in),r=n.getFullYear(),a=$(n,0);a.setFullYear(r+1,0,4),a.setHours(0,0,0,0);const o=Xe(a),l=$(n,0);l.setFullYear(r,0,4),l.setHours(0,0,0,0);const i=Xe(l);return n.getTime()>=o.getTime()?r+1:n.getTime()>=i.getTime()?r:r-1}function $n(e){const t=_(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function Ye(e,...t){const n=$.bind(null,t.find(r=>typeof r=="object"));return t.map(n)}function Ze(e,t){const n=_(e,t?.in);return n.setHours(0,0,0,0),n}function on(e,t,n){const[r,a]=Ye(n?.in,e,t),o=Ze(r),l=Ze(a),i=+o-$n(o),c=+l-$n(l);return Math.round((i-c)/Ml)}function Sl(e,t){const n=Jr(e,t),r=$(e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),Xe(r)}function Cl(e,t,n){return sn(e,t*7,n)}function Pl(e,t,n){return Zr(e,t*12,n)}function Wl(e,t){let n,r=t?.in;return e.forEach(a=>{!r&&typeof a=="object"&&(r=$.bind(null,a));const o=_(a,r);(!n||n<o||isNaN(+o))&&(n=o)}),$(r,n||NaN)}function El(e,t){let n,r=t?.in;return e.forEach(a=>{!r&&typeof a=="object"&&(r=$.bind(null,a));const o=_(a,r);(!n||n>o||isNaN(+o))&&(n=o)}),$(r,n||NaN)}function Il(e,t,n){const[r,a]=Ye(n?.in,e,t);return+Ze(r)==+Ze(a)}function ea(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function Tl(e){return!(!ea(e)&&typeof e!="number"||isNaN(+_(e)))}function ta(e,t,n){const[r,a]=Ye(n?.in,e,t),o=r.getFullYear()-a.getFullYear(),l=r.getMonth()-a.getMonth();return o*12+l}function na(e,t){const n=_(e,t?.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}function ra(e,t){const[n,r]=Ye(e,t.start,t.end);return{start:n,end:r}}function Al(e,t){const{start:n,end:r}=ra(t?.in,e);let a=+n>+r;const o=a?+n:+r,l=a?r:n;l.setHours(0,0,0,0),l.setDate(1);let i=1;const c=[];for(;+l<=o;)c.push($(n,l)),l.setMonth(l.getMonth()+i);return a?c.reverse():c}function aa(e,t){const n=_(e,t?.in);return n.setDate(1),n.setHours(0,0,0,0),n}function _l(e,t){const n=_(e,t?.in),r=n.getFullYear();return n.setFullYear(r+1,0,0),n.setHours(23,59,59,999),n}function sa(e,t){const n=_(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function Fl(e,t){const{start:n,end:r}=ra(t?.in,e);let a=+n>+r;const o=a?+n:+r,l=a?r:n;l.setHours(0,0,0,0),l.setMonth(0,1);let i=1;const c=[];for(;+l<=o;)c.push($(n,l)),l.setFullYear(l.getFullYear()+i);return a?c.reverse():c}function ln(e,t){const n=at(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,a=_(e,t?.in),o=a.getDay(),l=(o<r?-7:0)+6-(o-r);return a.setDate(a.getDate()+l),a.setHours(23,59,59,999),a}function Bl(e,t){return ln(e,{...t,weekStartsOn:1})}const Yl={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Ll=(e,t,n)=>{let r;const a=Yl[e];return typeof a=="string"?r=a:t===1?r=a.one:r=a.other.replace("{{count}}",t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function Bt(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const zl={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},$l={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Rl={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},ql={date:Bt({formats:zl,defaultWidth:"full"}),time:Bt({formats:$l,defaultWidth:"full"}),dateTime:Bt({formats:Rl,defaultWidth:"full"})},Kl={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Hl=(e,t,n,r)=>Kl[e];function ze(e){return(t,n)=>{const r=n?.context?String(n.context):"standalone";let a;if(r==="formatting"&&e.formattingValues){const l=e.defaultFormattingWidth||e.defaultWidth,i=n?.width?String(n.width):l;a=e.formattingValues[i]||e.formattingValues[l]}else{const l=e.defaultWidth,i=n?.width?String(n.width):e.defaultWidth;a=e.values[i]||e.values[l]}const o=e.argumentCallback?e.argumentCallback(t):t;return a[o]}}const Gl={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Ul={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Vl={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Ql={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Xl={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Zl={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},Jl=(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},ec={ordinalNumber:Jl,era:ze({values:Gl,defaultWidth:"wide"}),quarter:ze({values:Ul,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ze({values:Vl,defaultWidth:"wide"}),day:ze({values:Ql,defaultWidth:"wide"}),dayPeriod:ze({values:Xl,defaultWidth:"wide",formattingValues:Zl,defaultFormattingWidth:"wide"})};function $e(e){return(t,n={})=>{const r=n.width,a=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],o=t.match(a);if(!o)return null;const l=o[0],i=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(i)?nc(i,u=>u.test(l)):tc(i,u=>u.test(l));let d;d=e.valueCallback?e.valueCallback(c):c,d=n.valueCallback?n.valueCallback(d):d;const f=t.slice(l.length);return{value:d,rest:f}}}function tc(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function nc(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function rc(e){return(t,n={})=>{const r=t.match(e.matchPattern);if(!r)return null;const a=r[0],o=t.match(e.parsePattern);if(!o)return null;let l=e.valueCallback?e.valueCallback(o[0]):o[0];l=n.valueCallback?n.valueCallback(l):l;const i=t.slice(a.length);return{value:l,rest:i}}}const ac=/^(\d+)(th|st|nd|rd)?/i,sc=/\d+/i,oc={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},ic={any:[/^b/i,/^(a|c)/i]},lc={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},cc={any:[/1/i,/2/i,/3/i,/4/i]},dc={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},uc={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},fc={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},mc={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},hc={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},pc={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},xc={ordinalNumber:rc({matchPattern:ac,parsePattern:sc,valueCallback:e=>parseInt(e,10)}),era:$e({matchPatterns:oc,defaultMatchWidth:"wide",parsePatterns:ic,defaultParseWidth:"any"}),quarter:$e({matchPatterns:lc,defaultMatchWidth:"wide",parsePatterns:cc,defaultParseWidth:"any",valueCallback:e=>e+1}),month:$e({matchPatterns:dc,defaultMatchWidth:"wide",parsePatterns:uc,defaultParseWidth:"any"}),day:$e({matchPatterns:fc,defaultMatchWidth:"wide",parsePatterns:mc,defaultParseWidth:"any"}),dayPeriod:$e({matchPatterns:hc,defaultMatchWidth:"any",parsePatterns:pc,defaultParseWidth:"any"})},Te={code:"en-US",formatDistance:Ll,formatLong:ql,formatRelative:Hl,localize:ec,match:xc,options:{weekStartsOn:0,firstWeekContainsDate:1}};function gc(e,t){const n=_(e,t?.in);return on(n,sa(n))+1}function cn(e,t){const n=_(e,t?.in),r=+Xe(n)-+Sl(n);return Math.round(r/Vr)+1}function oa(e,t){const n=_(e,t?.in),r=n.getFullYear(),a=at(),o=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??a.firstWeekContainsDate??a.locale?.options?.firstWeekContainsDate??1,l=$(t?.in||e,0);l.setFullYear(r+1,0,o),l.setHours(0,0,0,0);const i=Ce(l,t),c=$(t?.in||e,0);c.setFullYear(r,0,o),c.setHours(0,0,0,0);const d=Ce(c,t);return+n>=+i?r+1:+n>=+d?r:r-1}function yc(e,t){const n=at(),r=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,a=oa(e,t),o=$(t?.in||e,0);return o.setFullYear(a,0,r),o.setHours(0,0,0,0),Ce(o,t)}function dn(e,t){const n=_(e,t?.in),r=+Ce(n,t)-+yc(n,t);return Math.round(r/Vr)+1}function F(e,t){const n=e<0?"-":"",r=Math.abs(e).toString().padStart(t,"0");return n+r}const ke={y(e,t){const n=e.getFullYear(),r=n>0?n:1-n;return F(t==="yy"?r%100:r,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):F(n+1,2)},d(e,t){return F(e.getDate(),t.length)},a(e,t){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];default:return n==="am"?"a.m.":"p.m."}},h(e,t){return F(e.getHours()%12||12,t.length)},H(e,t){return F(e.getHours(),t.length)},m(e,t){return F(e.getMinutes(),t.length)},s(e,t){return F(e.getSeconds(),t.length)},S(e,t){const n=t.length,r=e.getMilliseconds(),a=Math.trunc(r*Math.pow(10,n-3));return F(a,t.length)}},Ee={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},Rn={G:function(e,t,n){const r=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const r=e.getFullYear(),a=r>0?r:1-r;return n.ordinalNumber(a,{unit:"year"})}return ke.y(e,t)},Y:function(e,t,n,r){const a=oa(e,r),o=a>0?a:1-a;if(t==="YY"){const l=o%100;return F(l,2)}return t==="Yo"?n.ordinalNumber(o,{unit:"year"}):F(o,t.length)},R:function(e,t){const n=Jr(e);return F(n,t.length)},u:function(e,t){const n=e.getFullYear();return F(n,t.length)},Q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return F(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return F(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){const r=e.getMonth();switch(t){case"M":case"MM":return ke.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){const r=e.getMonth();switch(t){case"L":return String(r+1);case"LL":return F(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){const a=dn(e,r);return t==="wo"?n.ordinalNumber(a,{unit:"week"}):F(a,t.length)},I:function(e,t,n){const r=cn(e);return t==="Io"?n.ordinalNumber(r,{unit:"week"}):F(r,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):ke.d(e,t)},D:function(e,t,n){const r=gc(e);return t==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):F(r,t.length)},E:function(e,t,n){const r=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){const a=e.getDay(),o=(a-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(o);case"ee":return F(o,2);case"eo":return n.ordinalNumber(o,{unit:"day"});case"eee":return n.day(a,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(a,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(a,{width:"short",context:"formatting"});default:return n.day(a,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){const a=e.getDay(),o=(a-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(o);case"cc":return F(o,t.length);case"co":return n.ordinalNumber(o,{unit:"day"});case"ccc":return n.day(a,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(a,{width:"narrow",context:"standalone"});case"cccccc":return n.day(a,{width:"short",context:"standalone"});default:return n.day(a,{width:"wide",context:"standalone"})}},i:function(e,t,n){const r=e.getDay(),a=r===0?7:r;switch(t){case"i":return String(a);case"ii":return F(a,t.length);case"io":return n.ordinalNumber(a,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){const a=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(a,{width:"narrow",context:"formatting"});default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},b:function(e,t,n){const r=e.getHours();let a;switch(r===12?a=Ee.noon:r===0?a=Ee.midnight:a=r/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(a,{width:"narrow",context:"formatting"});default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},B:function(e,t,n){const r=e.getHours();let a;switch(r>=17?a=Ee.evening:r>=12?a=Ee.afternoon:r>=4?a=Ee.morning:a=Ee.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(a,{width:"narrow",context:"formatting"});default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let r=e.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return ke.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):ke.H(e,t)},K:function(e,t,n){const r=e.getHours()%12;return t==="Ko"?n.ordinalNumber(r,{unit:"hour"}):F(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t==="ko"?n.ordinalNumber(r,{unit:"hour"}):F(r,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):ke.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):ke.s(e,t)},S:function(e,t){return ke.S(e,t)},X:function(e,t,n){const r=e.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return Kn(r);case"XXXX":case"XX":return Oe(r);default:return Oe(r,":")}},x:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"x":return Kn(r);case"xxxx":case"xx":return Oe(r);default:return Oe(r,":")}},O:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+qn(r,":");default:return"GMT"+Oe(r,":")}},z:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+qn(r,":");default:return"GMT"+Oe(r,":")}},t:function(e,t,n){const r=Math.trunc(+e/1e3);return F(r,t.length)},T:function(e,t,n){return F(+e,t.length)}};function qn(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),a=Math.trunc(r/60),o=r%60;return o===0?n+String(a):n+String(a)+t+F(o,2)}function Kn(e,t){return e%60===0?(e>0?"-":"+")+F(Math.abs(e)/60,2):Oe(e,t)}function Oe(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),a=F(Math.trunc(r/60),2),o=F(r%60,2);return n+a+t+o}const Hn=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},ia=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},vc=(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],r=n[1],a=n[2];if(!a)return Hn(e,t);let o;switch(r){case"P":o=t.dateTime({width:"short"});break;case"PP":o=t.dateTime({width:"medium"});break;case"PPP":o=t.dateTime({width:"long"});break;default:o=t.dateTime({width:"full"});break}return o.replace("{{date}}",Hn(r,t)).replace("{{time}}",ia(a,t))},bc={p:ia,P:vc},wc=/^D+$/,jc=/^Y+$/,kc=["D","DD","YY","YYYY"];function Nc(e){return wc.test(e)}function Dc(e){return jc.test(e)}function Mc(e,t,n){const r=Oc(e,t,n);if(console.warn(r),kc.includes(e))throw new RangeError(r)}function Oc(e,t,n){const r=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Sc=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Cc=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Pc=/^'([^]*?)'?$/,Wc=/''/g,Ec=/[a-zA-Z]/;function H(e,t,n){const r=at(),a=n?.locale??r.locale??Te,o=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,l=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,i=_(e,n?.in);if(!Tl(i))throw new RangeError("Invalid time value");let c=t.match(Cc).map(f=>{const u=f[0];if(u==="p"||u==="P"){const p=bc[u];return p(f,a.formatLong)}return f}).join("").match(Sc).map(f=>{if(f==="''")return{isToken:!1,value:"'"};const u=f[0];if(u==="'")return{isToken:!1,value:Ic(f)};if(Rn[u])return{isToken:!0,value:f};if(u.match(Ec))throw new RangeError("Format string contains an unescaped latin alphabet character `"+u+"`");return{isToken:!1,value:f}});a.localize.preprocessor&&(c=a.localize.preprocessor(i,c));const d={firstWeekContainsDate:o,weekStartsOn:l,locale:a};return c.map(f=>{if(!f.isToken)return f.value;const u=f.value;(!n?.useAdditionalWeekYearTokens&&Dc(u)||!n?.useAdditionalDayOfYearTokens&&Nc(u))&&Mc(u,t,String(e));const p=Rn[u[0]];return p(i,u,a.localize,d)}).join("")}function Ic(e){const t=e.match(Pc);return t?t[1].replace(Wc,"'"):e}function Tc(e,t){const n=_(e,t?.in),r=n.getFullYear(),a=n.getMonth(),o=$(n,0);return o.setFullYear(r,a+1,0),o.setHours(0,0,0,0),o.getDate()}function Ac(e,t){return _(e,t?.in).getMonth()}function _c(e,t){return _(e,t?.in).getFullYear()}function Fc(e,t){return+_(e)>+_(t)}function Bc(e,t){return+_(e)<+_(t)}function Yc(e,t,n){const[r,a]=Ye(n?.in,e,t);return r.getFullYear()===a.getFullYear()&&r.getMonth()===a.getMonth()}function Lc(e,t,n){const[r,a]=Ye(n?.in,e,t);return r.getFullYear()===a.getFullYear()}function Yt(e,t){const n=()=>$(t?.in,NaN),a=qc(e);let o;if(a.date){const d=Kc(a.date,2);o=Hc(d.restDateString,d.year)}if(!o||isNaN(+o))return n();const l=+o;let i=0,c;if(a.time&&(i=Gc(a.time),isNaN(i)))return n();if(a.timezone){if(c=Uc(a.timezone),isNaN(c))return n()}else{const d=new Date(l+i),f=_(0,t?.in);return f.setFullYear(d.getUTCFullYear(),d.getUTCMonth(),d.getUTCDate()),f.setHours(d.getUTCHours(),d.getUTCMinutes(),d.getUTCSeconds(),d.getUTCMilliseconds()),f}return _(l+i+c,t?.in)}const dt={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},zc=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,$c=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,Rc=/^([+-])(\d{2})(?::?(\d{2}))?$/;function qc(e){const t={},n=e.split(dt.dateTimeDelimiter);let r;if(n.length>2)return t;if(/:/.test(n[0])?r=n[0]:(t.date=n[0],r=n[1],dt.timeZoneDelimiter.test(t.date)&&(t.date=e.split(dt.timeZoneDelimiter)[0],r=e.substr(t.date.length,e.length))),r){const a=dt.timezone.exec(r);a?(t.time=r.replace(a[1],""),t.timezone=a[1]):t.time=r}return t}function Kc(e,t){const n=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+t)+"})|(\\d{2}|[+-]\\d{"+(2+t)+"})$)"),r=e.match(n);if(!r)return{year:NaN,restDateString:""};const a=r[1]?parseInt(r[1]):null,o=r[2]?parseInt(r[2]):null;return{year:o===null?a:o*100,restDateString:e.slice((r[1]||r[2]).length)}}function Hc(e,t){if(t===null)return new Date(NaN);const n=e.match(zc);if(!n)return new Date(NaN);const r=!!n[4],a=Re(n[1]),o=Re(n[2])-1,l=Re(n[3]),i=Re(n[4]),c=Re(n[5])-1;if(r)return Jc(t,i,c)?Vc(t,i,c):new Date(NaN);{const d=new Date(0);return!Xc(t,o,l)||!Zc(t,a)?new Date(NaN):(d.setUTCFullYear(t,o,Math.max(a,l)),d)}}function Re(e){return e?parseInt(e):1}function Gc(e){const t=e.match($c);if(!t)return NaN;const n=Lt(t[1]),r=Lt(t[2]),a=Lt(t[3]);return ed(n,r,a)?n*Xr+r*Qr+a*1e3:NaN}function Lt(e){return e&&parseFloat(e.replace(",","."))||0}function Uc(e){if(e==="Z")return 0;const t=e.match(Rc);if(!t)return 0;const n=t[1]==="+"?-1:1,r=parseInt(t[2]),a=t[3]&&parseInt(t[3])||0;return td(r,a)?n*(r*Xr+a*Qr):NaN}function Vc(e,t,n){const r=new Date(0);r.setUTCFullYear(e,0,4);const a=r.getUTCDay()||7,o=(t-1)*7+n+1-a;return r.setUTCDate(r.getUTCDate()+o),r}const Qc=[31,null,31,30,31,30,31,31,30,31,30,31];function la(e){return e%400===0||e%4===0&&e%100!==0}function Xc(e,t,n){return t>=0&&t<=11&&n>=1&&n<=(Qc[t]||(la(e)?29:28))}function Zc(e,t){return t>=1&&t<=(la(e)?366:365)}function Jc(e,t,n){return t>=1&&t<=53&&n>=0&&n<=6}function ed(e,t,n){return e===24?t===0&&n===0:n>=0&&n<60&&t>=0&&t<60&&e>=0&&e<25}function td(e,t){return t>=0&&t<=59}function nd(e,t,n){const r=_(e,n?.in),a=r.getFullYear(),o=r.getDate(),l=$(e,0);l.setFullYear(a,t,15),l.setHours(0,0,0,0);const i=Tc(l);return r.setMonth(t,Math.min(o,i)),r}function rd(e,t,n){const r=_(e,n?.in);return isNaN(+r)?$(e,NaN):(r.setFullYear(t),r)}function ad(e,t,n="long"){return new Intl.DateTimeFormat("en-US",{hour:"numeric",timeZone:e,timeZoneName:n}).format(t).split(/\s/g).slice(2).join(" ")}const sd={},Ue={};function Se(e,t){try{const r=(sd[e]||=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset"}).format)(t).split("GMT")[1];return r in Ue?Ue[r]:Gn(r,r.split(":"))}catch{if(e in Ue)return Ue[e];const n=e?.match(od);return n?Gn(e,n.slice(1)):NaN}}const od=/([+-]\d\d):?(\d\d)?/;function Gn(e,t){const n=+(t[0]||0),r=+(t[1]||0),a=+(t[2]||0)/60;return Ue[e]=n*60+r>0?n*60+r+a:n*60-r-a}class fe extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(Se(this.timeZone,this))?this.setTime(NaN):t.length?typeof t[0]=="number"&&(t.length===1||t.length===2&&typeof t[1]!="number")?this.setTime(t[0]):typeof t[0]=="string"?this.setTime(+new Date(t[0])):t[0]instanceof Date?this.setTime(+t[0]):(this.setTime(+new Date(...t)),ca(this),en(this)):this.setTime(Date.now())}static tz(t,...n){return n.length?new fe(...n,t):new fe(Date.now(),t)}withTimeZone(t){return new fe(+this,t)}getTimezoneOffset(){const t=-Se(this.timeZone,this);return t>0?Math.floor(t):Math.ceil(t)}setTime(t){return Date.prototype.setTime.apply(this,arguments),en(this),+this}[Symbol.for("constructDateFrom")](t){return new fe(+new Date(t),this.timeZone)}}const Un=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!Un.test(e))return;const t=e.replace(Un,"$1UTC");fe.prototype[t]&&(e.startsWith("get")?fe.prototype[e]=function(){return this.internal[t]()}:(fe.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),id(this),+this},fe.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),en(this),+this}))});function en(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-Se(e.timeZone,e)*60))}function id(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),ca(e)}function ca(e){const t=Se(e.timeZone,e),n=t>0?Math.floor(t):Math.ceil(t),r=new Date(+e);r.setUTCHours(r.getUTCHours()-1);const a=-new Date(+e).getTimezoneOffset(),o=-new Date(+r).getTimezoneOffset(),l=a-o,i=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();l&&i&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+l);const c=a-n;c&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+c);const d=new Date(+e);d.setUTCSeconds(0);const f=a>0?d.getSeconds():(d.getSeconds()-60)%60,u=Math.round(-(Se(e.timeZone,e)*60))%60;(u||f)&&(e.internal.setUTCSeconds(e.internal.getUTCSeconds()+u),Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+u+f));const p=Se(e.timeZone,e),x=p>0?Math.floor(p):Math.ceil(p),j=-new Date(+e).getTimezoneOffset()-x,b=x!==n,y=j-c;if(b&&y){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+y);const k=Se(e.timeZone,e),N=k>0?Math.floor(k):Math.ceil(k),m=x-N;m&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+m),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+m))}}class Q extends fe{static tz(t,...n){return n.length?new Q(...n,t):new Q(Date.now(),t)}toISOString(){const[t,n,r]=this.tzComponents(),a=`${t}${n}:${r}`;return this.internal.toISOString().slice(0,-1)+a}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,n,r,a]=this.internal.toUTCString().split(" ");return`${t?.slice(0,-1)} ${r} ${n} ${a}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[n,r,a]=this.tzComponents();return`${t} GMT${n}${r}${a} (${ad(this.timeZone,this)})`}toLocaleString(t,n){return Date.prototype.toLocaleString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}toLocaleDateString(t,n){return Date.prototype.toLocaleDateString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}toLocaleTimeString(t,n){return Date.prototype.toLocaleTimeString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}tzComponents(){const t=this.getTimezoneOffset(),n=t>0?"-":"+",r=String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),a=String(Math.abs(t)%60).padStart(2,"0");return[n,r,a]}withTimeZone(t){return new Q(+this,t)}[Symbol.for("constructDateFrom")](t){return new Q(+new Date(t),this.timeZone)}}const Vn=5,ld=4;function cd(e,t){const n=t.startOfMonth(e),r=n.getDay()>0?n.getDay():7,a=t.addDays(e,-r+1),o=t.addDays(a,Vn*7-1);return t.getMonth(e)===t.getMonth(o)?Vn:ld}function da(e,t){const n=t.startOfMonth(e),r=n.getDay();return r===1?n:r===0?t.addDays(n,-6):t.addDays(n,-1*(r-1))}function dd(e,t){const n=da(e,t),r=cd(e,t);return t.addDays(n,r*7-1)}const ua={...Te,labels:{labelDayButton:(e,t,n,r)=>{let a;r&&typeof r.format=="function"?a=r.format.bind(r):a=(l,i)=>H(l,i,{locale:Te,...n});let o=a(e,"PPPP");return t.today&&(o=`Today, ${o}`),t.selected&&(o=`${o}, selected`),o},labelMonthDropdown:"Choose the Month",labelNext:"Go to the Next Month",labelPrevious:"Go to the Previous Month",labelWeekNumber:e=>`Week ${e}`,labelYearDropdown:"Choose the Year",labelGrid:(e,t,n)=>{let r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(a,o)=>H(a,o,{locale:Te,...t}),r(e,"LLLL yyyy")},labelGridcell:(e,t,n,r)=>{let a;r&&typeof r.format=="function"?a=r.format.bind(r):a=(l,i)=>H(l,i,{locale:Te,...n});let o=a(e,"PPPP");return t?.today&&(o=`Today, ${o}`),o},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(e,t,n)=>{let r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(a,o)=>H(a,o,{locale:Te,...t}),r(e,"cccc")}}};class re{constructor(t,n){this.Date=Date,this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?Q.tz(this.options.timeZone):new this.Date,this.newDate=(r,a,o)=>this.overrides?.newDate?this.overrides.newDate(r,a,o):this.options.timeZone?new Q(r,a,o,this.options.timeZone):new Date(r,a,o),this.addDays=(r,a)=>this.overrides?.addDays?this.overrides.addDays(r,a):sn(r,a),this.addMonths=(r,a)=>this.overrides?.addMonths?this.overrides.addMonths(r,a):Zr(r,a),this.addWeeks=(r,a)=>this.overrides?.addWeeks?this.overrides.addWeeks(r,a):Cl(r,a),this.addYears=(r,a)=>this.overrides?.addYears?this.overrides.addYears(r,a):Pl(r,a),this.differenceInCalendarDays=(r,a)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(r,a):on(r,a),this.differenceInCalendarMonths=(r,a)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(r,a):ta(r,a),this.eachMonthOfInterval=r=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(r):Al(r),this.eachYearOfInterval=r=>{const a=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(r):Fl(r),o=new Set(a.map(i=>this.getYear(i)));if(o.size===a.length)return a;const l=[];return o.forEach(i=>{l.push(new Date(i,0,1))}),l},this.endOfBroadcastWeek=r=>this.overrides?.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(r):dd(r,this),this.endOfISOWeek=r=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(r):Bl(r),this.endOfMonth=r=>this.overrides?.endOfMonth?this.overrides.endOfMonth(r):na(r),this.endOfWeek=(r,a)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(r,a):ln(r,this.options),this.endOfYear=r=>this.overrides?.endOfYear?this.overrides.endOfYear(r):_l(r),this.format=(r,a,o)=>{const l=this.overrides?.format?this.overrides.format(r,a,this.options):H(r,a,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(l):l},this.getISOWeek=r=>this.overrides?.getISOWeek?this.overrides.getISOWeek(r):cn(r),this.getMonth=(r,a)=>this.overrides?.getMonth?this.overrides.getMonth(r,this.options):Ac(r,this.options),this.getYear=(r,a)=>this.overrides?.getYear?this.overrides.getYear(r,this.options):_c(r,this.options),this.getWeek=(r,a)=>this.overrides?.getWeek?this.overrides.getWeek(r,this.options):dn(r,this.options),this.isAfter=(r,a)=>this.overrides?.isAfter?this.overrides.isAfter(r,a):Fc(r,a),this.isBefore=(r,a)=>this.overrides?.isBefore?this.overrides.isBefore(r,a):Bc(r,a),this.isDate=r=>this.overrides?.isDate?this.overrides.isDate(r):ea(r),this.isSameDay=(r,a)=>this.overrides?.isSameDay?this.overrides.isSameDay(r,a):Il(r,a),this.isSameMonth=(r,a)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(r,a):Yc(r,a),this.isSameYear=(r,a)=>this.overrides?.isSameYear?this.overrides.isSameYear(r,a):Lc(r,a),this.max=r=>this.overrides?.max?this.overrides.max(r):Wl(r),this.min=r=>this.overrides?.min?this.overrides.min(r):El(r),this.setMonth=(r,a)=>this.overrides?.setMonth?this.overrides.setMonth(r,a):nd(r,a),this.setYear=(r,a)=>this.overrides?.setYear?this.overrides.setYear(r,a):rd(r,a),this.startOfBroadcastWeek=(r,a)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(r,this):da(r,this),this.startOfDay=r=>this.overrides?.startOfDay?this.overrides.startOfDay(r):Ze(r),this.startOfISOWeek=r=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(r):Xe(r),this.startOfMonth=r=>this.overrides?.startOfMonth?this.overrides.startOfMonth(r):aa(r),this.startOfWeek=(r,a)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(r,this.options):Ce(r,this.options),this.startOfYear=r=>this.overrides?.startOfYear?this.overrides.startOfYear(r):sa(r),this.options={locale:ua,...t},this.overrides=n}getDigitMap(){const{numerals:t="latn"}=this.options,n=new Intl.NumberFormat("en-US",{numberingSystem:t}),r={};for(let a=0;a<10;a++)r[a.toString()]=n.format(a);return r}replaceDigits(t){const n=this.getDigitMap();return t.replace(/\d/g,r=>n[r]||r)}formatNumber(t){return this.replaceDigits(t.toString())}getMonthYearOrder(){const t=this.options.locale?.code;return t&&re.yearFirstLocales.has(t)?"year-first":"month-first"}formatMonthYear(t){const{locale:n,timeZone:r,numerals:a}=this.options,o=n?.code;if(o&&re.yearFirstLocales.has(o))try{return new Intl.DateTimeFormat(o,{month:"long",year:"numeric",timeZone:r,numberingSystem:a}).format(t)}catch{}const l=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(t,l)}}re.yearFirstLocales=new Set(["eu","hu","ja","ja-Hira","ja-JP","ko","ko-KR","lt","lt-LT","lv","lv-LV","mn","mn-MN","zh","zh-CN","zh-HK","zh-TW"]);const me=new re;class fa{constructor(t,n,r=me){this.date=t,this.displayMonth=n,this.outside=!!(n&&!r.isSameMonth(t,n)),this.dateLib=r,this.isoDate=r.format(t,"yyyy-MM-dd"),this.displayMonthId=r.format(n,"yyyy-MM"),this.dateMonthId=r.format(t,"yyyy-MM")}isEqualTo(t){return this.dateLib.isSameDay(t.date,this.date)&&this.dateLib.isSameMonth(t.displayMonth,this.displayMonth)}}class ud{constructor(t,n){this.date=t,this.weeks=n}}class fd{constructor(t,n){this.days=n,this.weekNumber=t}}function md(e){return M.createElement("button",{...e})}function hd(e){return M.createElement("span",{...e})}function pd(e){const{size:t=24,orientation:n="left",className:r}=e;return M.createElement("svg",{className:r,width:t,height:t,viewBox:"0 0 24 24"},n==="up"&&M.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),n==="down"&&M.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),n==="left"&&M.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),n==="right"&&M.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function xd(e){const{day:t,modifiers:n,...r}=e;return M.createElement("td",{...r})}function gd(e){const{day:t,modifiers:n,...r}=e,a=M.useRef(null);return M.useEffect(()=>{n.focused&&a.current?.focus()},[n.focused]),M.createElement("button",{ref:a,...r})}var S;(function(e){e.Root="root",e.Chevron="chevron",e.Day="day",e.DayButton="day_button",e.CaptionLabel="caption_label",e.Dropdowns="dropdowns",e.Dropdown="dropdown",e.DropdownRoot="dropdown_root",e.Footer="footer",e.MonthGrid="month_grid",e.MonthCaption="month_caption",e.MonthsDropdown="months_dropdown",e.Month="month",e.Months="months",e.Nav="nav",e.NextMonthButton="button_next",e.PreviousMonthButton="button_previous",e.Week="week",e.Weeks="weeks",e.Weekday="weekday",e.Weekdays="weekdays",e.WeekNumber="week_number",e.WeekNumberHeader="week_number_header",e.YearsDropdown="years_dropdown"})(S||(S={}));var z;(function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"})(z||(z={}));var le;(function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"})(le||(le={}));var te;(function(e){e.weeks_before_enter="weeks_before_enter",e.weeks_before_exit="weeks_before_exit",e.weeks_after_enter="weeks_after_enter",e.weeks_after_exit="weeks_after_exit",e.caption_after_enter="caption_after_enter",e.caption_after_exit="caption_after_exit",e.caption_before_enter="caption_before_enter",e.caption_before_exit="caption_before_exit"})(te||(te={}));function yd(e){const{options:t,className:n,components:r,classNames:a,...o}=e,l=[a[S.Dropdown],n].join(" "),i=t?.find(({value:c})=>c===o.value);return M.createElement("span",{"data-disabled":o.disabled,className:a[S.DropdownRoot]},M.createElement(r.Select,{className:l,...o},t?.map(({value:c,label:d,disabled:f})=>M.createElement(r.Option,{key:c,value:c,disabled:f},d))),M.createElement("span",{className:a[S.CaptionLabel],"aria-hidden":!0},i?.label,M.createElement(r.Chevron,{orientation:"down",size:18,className:a[S.Chevron]})))}function vd(e){return M.createElement("div",{...e})}function bd(e){return M.createElement("div",{...e})}function wd(e){const{calendarMonth:t,displayIndex:n,...r}=e;return M.createElement("div",{...r},e.children)}function jd(e){const{calendarMonth:t,displayIndex:n,...r}=e;return M.createElement("div",{...r})}function kd(e){return M.createElement("table",{...e})}function Nd(e){return M.createElement("div",{...e})}const ma=h.createContext(void 0);function st(){const e=h.useContext(ma);if(e===void 0)throw new Error("useDayPicker() must be used within a custom component.");return e}function Dd(e){const{components:t}=st();return M.createElement(t.Dropdown,{...e})}function Md(e){const{onPreviousClick:t,onNextClick:n,previousMonth:r,nextMonth:a,...o}=e,{components:l,classNames:i,labels:{labelPrevious:c,labelNext:d}}=st(),f=h.useCallback(p=>{a&&n?.(p)},[a,n]),u=h.useCallback(p=>{r&&t?.(p)},[r,t]);return M.createElement("nav",{...o},M.createElement(l.PreviousMonthButton,{type:"button",className:i[S.PreviousMonthButton],tabIndex:r?void 0:-1,"aria-disabled":r?void 0:!0,"aria-label":c(r),onClick:u},M.createElement(l.Chevron,{disabled:r?void 0:!0,className:i[S.Chevron],orientation:"left"})),M.createElement(l.NextMonthButton,{type:"button",className:i[S.NextMonthButton],tabIndex:a?void 0:-1,"aria-disabled":a?void 0:!0,"aria-label":d(a),onClick:f},M.createElement(l.Chevron,{disabled:a?void 0:!0,orientation:"right",className:i[S.Chevron]})))}function Od(e){const{components:t}=st();return M.createElement(t.Button,{...e})}function Sd(e){return M.createElement("option",{...e})}function Cd(e){const{components:t}=st();return M.createElement(t.Button,{...e})}function Pd(e){const{rootRef:t,...n}=e;return M.createElement("div",{...n,ref:t})}function Wd(e){return M.createElement("select",{...e})}function Ed(e){const{week:t,...n}=e;return M.createElement("tr",{...n})}function Id(e){return M.createElement("th",{...e})}function Td(e){return M.createElement("thead",{"aria-hidden":!0},M.createElement("tr",{...e}))}function Ad(e){const{week:t,...n}=e;return M.createElement("th",{...n})}function _d(e){return M.createElement("th",{...e})}function Fd(e){return M.createElement("tbody",{...e})}function Bd(e){const{components:t}=st();return M.createElement(t.Dropdown,{...e})}const Yd=Object.freeze(Object.defineProperty({__proto__:null,Button:md,CaptionLabel:hd,Chevron:pd,Day:xd,DayButton:gd,Dropdown:yd,DropdownNav:vd,Footer:bd,Month:wd,MonthCaption:jd,MonthGrid:kd,Months:Nd,MonthsDropdown:Dd,Nav:Md,NextMonthButton:Od,Option:Sd,PreviousMonthButton:Cd,Root:Pd,Select:Wd,Week:Ed,WeekNumber:Ad,WeekNumberHeader:_d,Weekday:Id,Weekdays:Td,Weeks:Fd,YearsDropdown:Bd},Symbol.toStringTag,{value:"Module"}));function ye(e,t,n=!1,r=me){let{from:a,to:o}=e;const{differenceInCalendarDays:l,isSameDay:i}=r;return a&&o?(l(o,a)<0&&([a,o]=[o,a]),l(t,a)>=(n?1:0)&&l(o,t)>=(n?1:0)):!n&&o?i(o,t):!n&&a?i(a,t):!1}function un(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function Pt(e){return!!(e&&typeof e=="object"&&"from"in e)}function fn(e){return!!(e&&typeof e=="object"&&"after"in e)}function mn(e){return!!(e&&typeof e=="object"&&"before"in e)}function ha(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function pa(e,t){return Array.isArray(e)&&e.every(t.isDate)}function ve(e,t,n=me){const r=Array.isArray(t)?t:[t],{isSameDay:a,differenceInCalendarDays:o,isAfter:l}=n;return r.some(i=>{if(typeof i=="boolean")return i;if(n.isDate(i))return a(e,i);if(pa(i,n))return i.some(c=>a(e,c));if(Pt(i))return ye(i,e,!1,n);if(ha(i))return Array.isArray(i.dayOfWeek)?i.dayOfWeek.includes(e.getDay()):i.dayOfWeek===e.getDay();if(un(i)){const c=o(i.before,e),d=o(i.after,e),f=c>0,u=d<0;return l(i.before,i.after)?u&&f:f||u}return fn(i)?o(e,i.after)>0:mn(i)?o(i.before,e)>0:typeof i=="function"?i(e):!1})}function Ld(e,t,n,r,a){const{disabled:o,hidden:l,modifiers:i,showOutsideDays:c,broadcastCalendar:d,today:f=a.today()}=t,{isSameDay:u,isSameMonth:p,startOfMonth:x,isBefore:w,endOfMonth:j,isAfter:b}=a,y=n&&x(n),k=r&&j(r),N={[z.focused]:[],[z.outside]:[],[z.disabled]:[],[z.hidden]:[],[z.today]:[]},m={};for(const g of e){const{date:v,displayMonth:D}=g,O=!!(D&&!p(v,D)),C=!!(y&&w(v,y)),E=!!(k&&b(v,k)),G=!!(o&&ve(v,o,a)),K=!!(l&&ve(v,l,a))||C||E||!d&&!c&&O||d&&c===!1&&O,R=u(v,f);O&&N.outside.push(g),G&&N.disabled.push(g),K&&N.hidden.push(g),R&&N.today.push(g),i&&Object.keys(i).forEach(q=>{const U=i?.[q];U&&ve(v,U,a)&&(m[q]?m[q].push(g):m[q]=[g])})}return g=>{const v={[z.focused]:!1,[z.disabled]:!1,[z.hidden]:!1,[z.outside]:!1,[z.today]:!1},D={};for(const O in N){const C=N[O];v[O]=C.some(E=>E===g)}for(const O in m)D[O]=m[O].some(C=>C===g);return{...v,...D}}}function zd(e,t,n={}){return Object.entries(e).filter(([,a])=>a===!0).reduce((a,[o])=>(n[o]?a.push(n[o]):t[z[o]]?a.push(t[z[o]]):t[le[o]]&&a.push(t[le[o]]),a),[t[S.Day]])}function $d(e){return{...Yd,...e}}function Rd(e){const t={"data-mode":e.mode??void 0,"data-required":"required"in e?e.required:void 0,"data-multiple-months":e.numberOfMonths&&e.numberOfMonths>1||void 0,"data-week-numbers":e.showWeekNumber||void 0,"data-broadcast-calendar":e.broadcastCalendar||void 0,"data-nav-layout":e.navLayout||void 0};return Object.entries(e).forEach(([n,r])=>{n.startsWith("data-")&&(t[n]=r)}),t}function qd(){const e={};for(const t in S)e[S[t]]=`rdp-${S[t]}`;for(const t in z)e[z[t]]=`rdp-${z[t]}`;for(const t in le)e[le[t]]=`rdp-${le[t]}`;for(const t in te)e[te[t]]=`rdp-${te[t]}`;return e}function xa(e,t,n){return(n??new re(t)).formatMonthYear(e)}const Kd=xa;function Hd(e,t,n){return(n??new re(t)).format(e,"d")}function Gd(e,t=me){return t.format(e,"LLLL")}function Ud(e,t,n){return(n??new re(t)).format(e,"cccccc")}function Vd(e,t=me){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function Qd(){return""}function ga(e,t=me){return t.format(e,"yyyy")}const Xd=ga,Zd=Object.freeze(Object.defineProperty({__proto__:null,formatCaption:xa,formatDay:Hd,formatMonthCaption:Kd,formatMonthDropdown:Gd,formatWeekNumber:Vd,formatWeekNumberHeader:Qd,formatWeekdayName:Ud,formatYearCaption:Xd,formatYearDropdown:ga},Symbol.toStringTag,{value:"Module"}));function Jd(e){return e?.formatMonthCaption&&!e.formatCaption&&(e.formatCaption=e.formatMonthCaption),e?.formatYearCaption&&!e.formatYearDropdown&&(e.formatYearDropdown=e.formatYearCaption),{...Zd,...e}}function hn(e,t,n,r){let a=(r??new re(n)).format(e,"PPPP");return t.today&&(a=`Today, ${a}`),t.selected&&(a=`${a}, selected`),a}const eu=hn;function pn(e,t,n){return(n??new re(t)).formatMonthYear(e)}const tu=pn;function ya(e,t,n,r){let a=(r??new re(n)).format(e,"PPPP");return t?.today&&(a=`Today, ${a}`),a}function va(e){return"Choose the Month"}function ba(){return""}const nu="Go to the Next Month";function wa(e,t){return nu}function ja(e){return"Go to the Previous Month"}function ka(e,t,n){return(n??new re(t)).format(e,"cccc")}function Na(e,t){return`Week ${e}`}function Da(e){return"Week Number"}function Ma(e){return"Choose the Year"}const ru=Object.freeze(Object.defineProperty({__proto__:null,labelCaption:tu,labelDay:eu,labelDayButton:hn,labelGrid:pn,labelGridcell:ya,labelMonthDropdown:va,labelNav:ba,labelNext:wa,labelPrevious:ja,labelWeekNumber:Na,labelWeekNumberHeader:Da,labelWeekday:ka,labelYearDropdown:Ma},Symbol.toStringTag,{value:"Module"})),oe=(e,t,n)=>t||(n?typeof n=="function"?n:(...r)=>n:e);function au(e,t){const n=t.locale?.labels??{};return{...ru,...e??{},labelDayButton:oe(hn,e?.labelDayButton,n.labelDayButton),labelMonthDropdown:oe(va,e?.labelMonthDropdown,n.labelMonthDropdown),labelNext:oe(wa,e?.labelNext,n.labelNext),labelPrevious:oe(ja,e?.labelPrevious,n.labelPrevious),labelWeekNumber:oe(Na,e?.labelWeekNumber,n.labelWeekNumber),labelYearDropdown:oe(Ma,e?.labelYearDropdown,n.labelYearDropdown),labelGrid:oe(pn,e?.labelGrid,n.labelGrid),labelGridcell:oe(ya,e?.labelGridcell,n.labelGridcell),labelNav:oe(ba,e?.labelNav,n.labelNav),labelWeekNumberHeader:oe(Da,e?.labelWeekNumberHeader,n.labelWeekNumberHeader),labelWeekday:oe(ka,e?.labelWeekday,n.labelWeekday)}}function su(e,t,n,r,a){const{startOfMonth:o,startOfYear:l,endOfYear:i,eachMonthOfInterval:c,getMonth:d}=a;return c({start:l(e),end:i(e)}).map(p=>{const x=r.formatMonthDropdown(p,a),w=d(p),j=t&&p<o(t)||n&&p>o(n)||!1;return{value:w,label:x,disabled:j}})}function ou(e,t={},n={}){let r={...t?.[S.Day]};return Object.entries(e).filter(([,a])=>a===!0).forEach(([a])=>{r={...r,...n?.[a]}}),r}function iu(e,t,n,r){const a=r??e.today(),o=n?e.startOfBroadcastWeek(a,e):t?e.startOfISOWeek(a):e.startOfWeek(a),l=[];for(let i=0;i<7;i++){const c=e.addDays(o,i);l.push(c)}return l}function lu(e,t,n,r,a=!1){if(!e||!t)return;const{startOfYear:o,endOfYear:l,eachYearOfInterval:i,getYear:c}=r,d=o(e),f=l(t),u=i({start:d,end:f});return a&&u.reverse(),u.map(p=>{const x=n.formatYearDropdown(p,r);return{value:c(p),label:x,disabled:!1}})}function cu(e,t={}){const{weekStartsOn:n,locale:r}=t,a=n??r?.options?.weekStartsOn??0,o=i=>{const c=typeof i=="number"||typeof i=="string"?new Date(i):i;return new Q(c.getFullYear(),c.getMonth(),c.getDate(),12,0,0,e)},l=i=>{const c=o(i);return new Date(c.getFullYear(),c.getMonth(),c.getDate(),0,0,0,0)};return{today:()=>o(Q.tz(e)),newDate:(i,c,d)=>new Q(i,c,d,12,0,0,e),startOfDay:i=>o(i),startOfWeek:(i,c)=>{const d=o(i),f=c?.weekStartsOn??a,u=(d.getDay()-f+7)%7;return d.setDate(d.getDate()-u),d},startOfISOWeek:i=>{const c=o(i),d=(c.getDay()-1+7)%7;return c.setDate(c.getDate()-d),c},startOfMonth:i=>{const c=o(i);return c.setDate(1),c},startOfYear:i=>{const c=o(i);return c.setMonth(0,1),c},endOfWeek:(i,c)=>{const d=o(i),p=(((c?.weekStartsOn??a)+6)%7-d.getDay()+7)%7;return d.setDate(d.getDate()+p),d},endOfISOWeek:i=>{const c=o(i),d=(7-c.getDay())%7;return c.setDate(c.getDate()+d),c},endOfMonth:i=>{const c=o(i);return c.setMonth(c.getMonth()+1,0),c},endOfYear:i=>{const c=o(i);return c.setMonth(11,31),c},eachMonthOfInterval:i=>{const c=o(i.start),d=o(i.end),f=[],u=new Q(c.getFullYear(),c.getMonth(),1,12,0,0,e),p=d.getFullYear()*12+d.getMonth();for(;u.getFullYear()*12+u.getMonth()<=p;)f.push(new Q(u,e)),u.setMonth(u.getMonth()+1,1);return f},addDays:(i,c)=>{const d=o(i);return d.setDate(d.getDate()+c),d},addWeeks:(i,c)=>{const d=o(i);return d.setDate(d.getDate()+c*7),d},addMonths:(i,c)=>{const d=o(i);return d.setMonth(d.getMonth()+c),d},addYears:(i,c)=>{const d=o(i);return d.setFullYear(d.getFullYear()+c),d},eachYearOfInterval:i=>{const c=o(i.start),d=o(i.end),f=[],u=new Q(c.getFullYear(),0,1,12,0,0,e);for(;u.getFullYear()<=d.getFullYear();)f.push(new Q(u,e)),u.setFullYear(u.getFullYear()+1,0,1);return f},getWeek:(i,c)=>{const d=l(i);return dn(d,{weekStartsOn:c?.weekStartsOn??a,firstWeekContainsDate:c?.firstWeekContainsDate??r?.options?.firstWeekContainsDate??1})},getISOWeek:i=>{const c=l(i);return cn(c)},differenceInCalendarDays:(i,c)=>{const d=l(i),f=l(c);return on(d,f)},differenceInCalendarMonths:(i,c)=>{const d=l(i),f=l(c);return ta(d,f)}}}const ot=e=>e instanceof HTMLElement?e:null,zt=e=>[...e.querySelectorAll("[data-animated-month]")??[]],du=e=>ot(e.querySelector("[data-animated-month]")),$t=e=>ot(e.querySelector("[data-animated-caption]")),Rt=e=>ot(e.querySelector("[data-animated-weeks]")),uu=e=>ot(e.querySelector("[data-animated-nav]")),fu=e=>ot(e.querySelector("[data-animated-weekdays]"));function mu(e,t,{classNames:n,months:r,focused:a,dateLib:o}){const l=h.useRef(null),i=h.useRef(r),c=h.useRef(!1);h.useLayoutEffect(()=>{const d=i.current;if(i.current=r,!t||!e.current||!(e.current instanceof HTMLElement)||r.length===0||d.length===0||r.length!==d.length)return;const f=o.isSameMonth(r[0].date,d[0].date),u=o.isAfter(r[0].date,d[0].date),p=u?n[te.caption_after_enter]:n[te.caption_before_enter],x=u?n[te.weeks_after_enter]:n[te.weeks_before_enter],w=l.current,j=e.current.cloneNode(!0);if(j instanceof HTMLElement?(zt(j).forEach(N=>{if(!(N instanceof HTMLElement))return;const m=du(N);m&&N.contains(m)&&N.removeChild(m);const g=$t(N);g&&g.classList.remove(p);const v=Rt(N);v&&v.classList.remove(x)}),l.current=j):l.current=null,c.current||f||a)return;const b=w instanceof HTMLElement?zt(w):[],y=zt(e.current);if(y?.every(k=>k instanceof HTMLElement)&&b&&b.every(k=>k instanceof HTMLElement)){c.current=!0,e.current.style.isolation="isolate";const k=uu(e.current);k&&(k.style.zIndex="1"),y.forEach((N,m)=>{const g=b[m];if(!g)return;N.style.position="relative",N.style.overflow="hidden";const v=$t(N);v&&v.classList.add(p);const D=Rt(N);D&&D.classList.add(x);const O=()=>{c.current=!1,e.current&&(e.current.style.isolation=""),k&&(k.style.zIndex=""),v&&v.classList.remove(p),D&&D.classList.remove(x),N.style.position="",N.style.overflow="",N.contains(g)&&N.removeChild(g)};g.style.pointerEvents="none",g.style.position="absolute",g.style.overflow="hidden",g.setAttribute("aria-hidden","true");const C=fu(g);C&&(C.style.opacity="0");const E=$t(g);E&&(E.classList.add(u?n[te.caption_before_exit]:n[te.caption_after_exit]),E.addEventListener("animationend",O));const G=Rt(g);G&&G.classList.add(u?n[te.weeks_before_exit]:n[te.weeks_after_exit]),N.insertBefore(g,N.firstChild)})}})}function hu(e,t,n,r){const a=e[0],o=e[e.length-1],{ISOWeek:l,fixedWeeks:i,broadcastCalendar:c}=n??{},{addDays:d,differenceInCalendarDays:f,differenceInCalendarMonths:u,endOfBroadcastWeek:p,endOfISOWeek:x,endOfMonth:w,endOfWeek:j,isAfter:b,startOfBroadcastWeek:y,startOfISOWeek:k,startOfWeek:N}=r,m=c?y(a,r):l?k(a):N(a),g=c?p(o):l?x(w(o)):j(w(o)),v=t&&(c?p(t):l?x(t):j(t)),D=v&&b(g,v)?v:g,O=f(D,m),C=u(o,a)+1,E=[];for(let R=0;R<=O;R++){const q=d(m,R);E.push(q)}const K=(c?35:42)*C;if(i&&E.length<K){const R=K-E.length;for(let q=0;q<R;q++){const U=d(E[E.length-1],1);E.push(U)}}return E}function pu(e){const t=[];return e.reduce((n,r)=>{const a=r.weeks.reduce((o,l)=>o.concat(l.days.slice()),t.slice());return n.concat(a.slice())},t.slice())}function xu(e,t,n,r){const{numberOfMonths:a=1}=n,o=[];for(let l=0;l<a;l++){const i=r.addMonths(e,l);if(t&&i>t)break;o.push(i)}return o}function Qn(e,t,n,r){const{month:a,defaultMonth:o,today:l=r.today(),numberOfMonths:i=1}=e;let c=a||o||l;const{differenceInCalendarMonths:d,addMonths:f,startOfMonth:u}=r;if(n&&d(n,c)<i-1){const p=-1*(i-1);c=f(n,p)}return t&&d(c,t)<0&&(c=t),u(c)}function gu(e,t,n,r){const{addDays:a,endOfBroadcastWeek:o,endOfISOWeek:l,endOfMonth:i,endOfWeek:c,getISOWeek:d,getWeek:f,startOfBroadcastWeek:u,startOfISOWeek:p,startOfWeek:x}=r,w=e.reduce((j,b)=>{const y=n.broadcastCalendar?u(b,r):n.ISOWeek?p(b):x(b),k=n.broadcastCalendar?o(b):n.ISOWeek?l(i(b)):c(i(b)),N=t.filter(D=>D>=y&&D<=k),m=n.broadcastCalendar?35:42;if(n.fixedWeeks&&N.length<m){const D=t.filter(O=>{const C=m-N.length;return O>k&&O<=a(k,C)});N.push(...D)}const g=N.reduce((D,O)=>{const C=n.ISOWeek?d(O):f(O),E=D.find(K=>K.weekNumber===C),G=new fa(O,b,r);return E?E.days.push(G):D.push(new fd(C,[G])),D},[]),v=new ud(b,g);return j.push(v),j},[]);return n.reverseMonths?w.reverse():w}function yu(e,t){let{startMonth:n,endMonth:r}=e;const{startOfYear:a,startOfDay:o,startOfMonth:l,endOfMonth:i,addYears:c,endOfYear:d,newDate:f,today:u}=t,{fromYear:p,toYear:x,fromMonth:w,toMonth:j}=e;!n&&w&&(n=w),!n&&p&&(n=t.newDate(p,0,1)),!r&&j&&(r=j),!r&&x&&(r=f(x,11,31));const b=e.captionLayout==="dropdown"||e.captionLayout==="dropdown-years";return n?n=l(n):p?n=f(p,0,1):!n&&b&&(n=a(c(e.today??u(),-100))),r?r=i(r):x?r=f(x,11,31):!r&&b&&(r=d(e.today??u())),[n&&o(n),r&&o(r)]}function vu(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:a,numberOfMonths:o=1}=n,{startOfMonth:l,addMonths:i,differenceInCalendarMonths:c}=r,d=a?o:1,f=l(e);if(!t)return i(f,d);if(!(c(t,e)<o))return i(f,d)}function bu(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:a,numberOfMonths:o}=n,{startOfMonth:l,addMonths:i,differenceInCalendarMonths:c}=r,d=a?o??1:1,f=l(e);if(!t)return i(f,-d);if(!(c(f,t)<=0))return i(f,-d)}function wu(e){const t=[];return e.reduce((n,r)=>n.concat(r.weeks.slice()),t.slice())}function Wt(e,t){const[n,r]=h.useState(e);return[t===void 0?n:t,r]}function ju(e,t){const[n,r]=yu(e,t),{startOfMonth:a,endOfMonth:o}=t,l=Qn(e,n,r,t),[i,c]=Wt(l,e.month?l:void 0);h.useEffect(()=>{const m=Qn(e,n,r,t);c(m)},[e.timeZone]);const{months:d,weeks:f,days:u,previousMonth:p,nextMonth:x}=h.useMemo(()=>{const m=xu(i,r,{numberOfMonths:e.numberOfMonths},t),g=hu(m,e.endMonth?o(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),v=gu(m,g,{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t),D=wu(v),O=pu(v),C=bu(i,n,e,t),E=vu(i,r,e,t);return{months:v,weeks:D,days:O,previousMonth:C,nextMonth:E}},[t,i.getTime(),r?.getTime(),n?.getTime(),e.disableNavigation,e.broadcastCalendar,e.endMonth?.getTime(),e.fixedWeeks,e.ISOWeek,e.numberOfMonths,e.pagedNavigation,e.reverseMonths]),{disableNavigation:w,onMonthChange:j}=e,b=m=>f.some(g=>g.days.some(v=>v.isEqualTo(m))),y=m=>{if(w)return;let g=a(m);n&&g<a(n)&&(g=a(n)),r&&g>a(r)&&(g=a(r)),c(g),j?.(g)};return{months:d,weeks:f,days:u,navStart:n,navEnd:r,previousMonth:p,nextMonth:x,goToMonth:y,goToDay:m=>{b(m)||y(m.date)}}}var de;(function(e){e[e.Today=0]="Today",e[e.Selected=1]="Selected",e[e.LastFocused=2]="LastFocused",e[e.FocusedModifier=3]="FocusedModifier"})(de||(de={}));function Xn(e){return!e[z.disabled]&&!e[z.hidden]&&!e[z.outside]}function ku(e,t,n,r){let a,o=-1;for(const l of e){const i=t(l);Xn(i)&&(i[z.focused]&&o<de.FocusedModifier?(a=l,o=de.FocusedModifier):r?.isEqualTo(l)&&o<de.LastFocused?(a=l,o=de.LastFocused):n(l.date)&&o<de.Selected?(a=l,o=de.Selected):i[z.today]&&o<de.Today&&(a=l,o=de.Today))}return a||(a=e.find(l=>Xn(t(l)))),a}function Nu(e,t,n,r,a,o,l){const{ISOWeek:i,broadcastCalendar:c}=o,{addDays:d,addMonths:f,addWeeks:u,addYears:p,endOfBroadcastWeek:x,endOfISOWeek:w,endOfWeek:j,max:b,min:y,startOfBroadcastWeek:k,startOfISOWeek:N,startOfWeek:m}=l;let v={day:d,week:u,month:f,year:p,startOfWeek:D=>c?k(D,l):i?N(D):m(D),endOfWeek:D=>c?x(D):i?w(D):j(D)}[e](n,t==="after"?1:-1);return t==="before"&&r?v=b([r,v]):t==="after"&&a&&(v=y([a,v])),v}function Oa(e,t,n,r,a,o,l,i=0){if(i>365)return;const c=Nu(e,t,n.date,r,a,o,l),d=!!(o.disabled&&ve(c,o.disabled,l)),f=!!(o.hidden&&ve(c,o.hidden,l)),u=c,p=new fa(c,u,l);return!d&&!f?p:Oa(e,t,p,r,a,o,l,i+1)}function Du(e,t,n,r,a){const{autoFocus:o}=e,[l,i]=h.useState(),c=ku(t.days,n,r||(()=>!1),l),[d,f]=h.useState(o?c:void 0);return{isFocusTarget:j=>!!c?.isEqualTo(j),setFocused:f,focused:d,blur:()=>{i(d),f(void 0)},moveFocus:(j,b)=>{if(!d)return;const y=Oa(j,b,d,t.navStart,t.navEnd,e,a);y&&(e.disableNavigation&&!t.days.some(N=>N.isEqualTo(y))||(t.goToDay(y),f(y)))}}}function Mu(e,t){const{selected:n,required:r,onSelect:a}=e,[o,l]=Wt(n,a?n:void 0),i=a?n:o,{isSameDay:c}=t,d=x=>i?.some(w=>c(w,x))??!1,{min:f,max:u}=e;return{selected:i,select:(x,w,j)=>{let b=[...i??[]];if(d(x)){if(i?.length===f||r&&i?.length===1)return;b=i?.filter(y=>!c(y,x))}else i?.length===u?b=[x]:b=[...b,x];return a||l(b),a?.(b,x,w,j),b},isSelected:d}}function Ou(e,t,n=0,r=0,a=!1,o=me){const{from:l,to:i}=t||{},{isSameDay:c,isAfter:d,isBefore:f}=o;let u;if(!l&&!i)u={from:e,to:n>0?void 0:e};else if(l&&!i)c(l,e)?n===0?u={from:l,to:e}:a?u={from:l,to:void 0}:u=void 0:f(e,l)?u={from:e,to:l}:u={from:l,to:e};else if(l&&i)if(c(l,e)&&c(i,e))a?u={from:l,to:i}:u=void 0;else if(c(l,e))u={from:l,to:n>0?void 0:e};else if(c(i,e))u={from:e,to:n>0?void 0:e};else if(f(e,l))u={from:e,to:i};else if(d(e,l))u={from:l,to:e};else if(d(e,i))u={from:l,to:e};else throw new Error("Invalid range");if(u?.from&&u?.to){const p=o.differenceInCalendarDays(u.to,u.from);r>0&&p>r?u={from:e,to:void 0}:n>1&&p<n&&(u={from:e,to:void 0})}return u}function Su(e,t,n=me){const r=Array.isArray(t)?t:[t];let a=e.from;const o=n.differenceInCalendarDays(e.to,e.from),l=Math.min(o,6);for(let i=0;i<=l;i++){if(r.includes(a.getDay()))return!0;a=n.addDays(a,1)}return!1}function Zn(e,t,n=me){return ye(e,t.from,!1,n)||ye(e,t.to,!1,n)||ye(t,e.from,!1,n)||ye(t,e.to,!1,n)}function Cu(e,t,n=me){const r=Array.isArray(t)?t:[t];if(r.filter(i=>typeof i!="function").some(i=>typeof i=="boolean"?i:n.isDate(i)?ye(e,i,!1,n):pa(i,n)?i.some(c=>ye(e,c,!1,n)):Pt(i)?i.from&&i.to?Zn(e,{from:i.from,to:i.to},n):!1:ha(i)?Su(e,i.dayOfWeek,n):un(i)?n.isAfter(i.before,i.after)?Zn(e,{from:n.addDays(i.after,1),to:n.addDays(i.before,-1)},n):ve(e.from,i,n)||ve(e.to,i,n):fn(i)||mn(i)?ve(e.from,i,n)||ve(e.to,i,n):!1))return!0;const l=r.filter(i=>typeof i=="function");if(l.length){let i=e.from;const c=n.differenceInCalendarDays(e.to,e.from);for(let d=0;d<=c;d++){if(l.some(f=>f(i)))return!0;i=n.addDays(i,1)}}return!1}function Pu(e,t){const{disabled:n,excludeDisabled:r,selected:a,required:o,onSelect:l}=e,[i,c]=Wt(a,l?a:void 0),d=l?a:i;return{selected:d,select:(p,x,w)=>{const{min:j,max:b}=e,y=p?Ou(p,d,j,b,o,t):void 0;return r&&n&&y?.from&&y.to&&Cu({from:y.from,to:y.to},n,t)&&(y.from=p,y.to=void 0),l||c(y),l?.(y,p,x,w),y},isSelected:p=>d&&ye(d,p,!1,t)}}function Wu(e,t){const{selected:n,required:r,onSelect:a}=e,[o,l]=Wt(n,a?n:void 0),i=a?n:o,{isSameDay:c}=t;return{selected:i,select:(u,p,x)=>{let w=u;return!r&&i&&i&&c(u,i)&&(w=void 0),a||l(w),a?.(w,u,p,x),w},isSelected:u=>i?c(i,u):!1}}function Eu(e,t){const n=Wu(e,t),r=Mu(e,t),a=Pu(e,t);switch(e.mode){case"single":return n;case"multiple":return r;case"range":return a;default:return}}function se(e,t){return e instanceof Q&&e.timeZone===t?e:new Q(e,t)}function Ie(e,t,n){return se(e,t)}function Jn(e,t,n){return typeof e=="boolean"||typeof e=="function"?e:e instanceof Date?Ie(e,t):Array.isArray(e)?e.map(r=>r instanceof Date?Ie(r,t):r):Pt(e)?{...e,from:e.from?se(e.from,t):e.from,to:e.to?se(e.to,t):e.to}:un(e)?{before:Ie(e.before,t),after:Ie(e.after,t)}:fn(e)?{after:Ie(e.after,t)}:mn(e)?{before:Ie(e.before,t)}:e}function qt(e,t,n){return e&&(Array.isArray(e)?e.map(r=>Jn(r,t)):Jn(e,t))}function Iu(e){let t=e;const n=t.timeZone;if(n&&(t={...e,timeZone:n},t.today&&(t.today=se(t.today,n)),t.month&&(t.month=se(t.month,n)),t.defaultMonth&&(t.defaultMonth=se(t.defaultMonth,n)),t.startMonth&&(t.startMonth=se(t.startMonth,n)),t.endMonth&&(t.endMonth=se(t.endMonth,n)),t.mode==="single"&&t.selected?t.selected=se(t.selected,n):t.mode==="multiple"&&t.selected?t.selected=t.selected?.map(W=>se(W,n)):t.mode==="range"&&t.selected&&(t.selected={from:t.selected.from?se(t.selected.from,n):t.selected.from,to:t.selected.to?se(t.selected.to,n):t.selected.to}),t.disabled!==void 0&&(t.disabled=qt(t.disabled,n)),t.hidden!==void 0&&(t.hidden=qt(t.hidden,n)),t.modifiers)){const W={};Object.keys(t.modifiers).forEach(A=>{W[A]=qt(t.modifiers?.[A],n)}),t.modifiers=W}const{components:r,formatters:a,labels:o,dateLib:l,locale:i,classNames:c}=h.useMemo(()=>{const W={...ua,...t.locale},A=t.broadcastCalendar?1:t.weekStartsOn,P=t.noonSafe&&t.timeZone?cu(t.timeZone,{weekStartsOn:A,locale:W}):void 0,T=t.dateLib&&P?{...P,...t.dateLib}:t.dateLib??P,J=new re({locale:W,weekStartsOn:A,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},T);return{dateLib:J,components:$d(t.components),formatters:Jd(t.formatters),labels:au(t.labels,J.options),locale:W,classNames:{...qd(),...t.classNames}}},[t.locale,t.broadcastCalendar,t.weekStartsOn,t.firstWeekContainsDate,t.useAdditionalWeekYearTokens,t.useAdditionalDayOfYearTokens,t.timeZone,t.numerals,t.dateLib,t.noonSafe,t.components,t.formatters,t.labels,t.classNames]);t.today||(t={...t,today:l.today()});const{captionLayout:d,mode:f,navLayout:u,numberOfMonths:p=1,onDayBlur:x,onDayClick:w,onDayFocus:j,onDayKeyDown:b,onDayMouseEnter:y,onDayMouseLeave:k,onNextClick:N,onPrevClick:m,showWeekNumber:g,styles:v}=t,{formatCaption:D,formatDay:O,formatMonthDropdown:C,formatWeekNumber:E,formatWeekNumberHeader:G,formatWeekdayName:K,formatYearDropdown:R}=a,q=ju(t,l),{days:U,months:ae,navStart:we,navEnd:he,previousMonth:Y,nextMonth:V,goToMonth:Z}=q,je=Ld(U,t,we,he,l),{isSelected:Et,select:It,selected:it}=Eu(t,l)??{},{blur:xn,focused:gn,isFocusTarget:Pa,moveFocus:yn,setFocused:lt}=Du(t,q,je,Et??(()=>!1),l),{labelDayButton:Wa,labelGridcell:Ea,labelGrid:Ia,labelMonthDropdown:Ta,labelNav:vn,labelPrevious:Aa,labelNext:_a,labelWeekday:Fa,labelWeekNumber:Ba,labelWeekNumberHeader:Ya,labelYearDropdown:La}=o,za=h.useMemo(()=>iu(l,t.ISOWeek,t.broadcastCalendar,t.today),[l,t.ISOWeek,t.broadcastCalendar,t.today]),bn=f!==void 0||w!==void 0,Tt=h.useCallback(()=>{Y&&(Z(Y),m?.(Y))},[Y,Z,m]),At=h.useCallback(()=>{V&&(Z(V),N?.(V))},[Z,V,N]),$a=h.useCallback((W,A)=>P=>{P.preventDefault(),P.stopPropagation(),lt(W),!A.disabled&&(It?.(W.date,A,P),w?.(W.date,A,P))},[It,w,lt]),Ra=h.useCallback((W,A)=>P=>{lt(W),j?.(W.date,A,P)},[j,lt]),qa=h.useCallback((W,A)=>P=>{xn(),x?.(W.date,A,P)},[xn,x]),Ka=h.useCallback((W,A)=>P=>{const T={ArrowLeft:[P.shiftKey?"month":"day",t.dir==="rtl"?"after":"before"],ArrowRight:[P.shiftKey?"month":"day",t.dir==="rtl"?"before":"after"],ArrowDown:[P.shiftKey?"year":"week","after"],ArrowUp:[P.shiftKey?"year":"week","before"],PageUp:[P.shiftKey?"year":"month","before"],PageDown:[P.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(T[P.key]){P.preventDefault(),P.stopPropagation();const[J,I]=T[P.key];yn(J,I)}b?.(W.date,A,P)},[yn,b,t.dir]),Ha=h.useCallback((W,A)=>P=>{y?.(W.date,A,P)},[y]),Ga=h.useCallback((W,A)=>P=>{k?.(W.date,A,P)},[k]),Ua=h.useCallback(W=>A=>{const P=Number(A.target.value),T=l.setMonth(l.startOfMonth(W),P);Z(T)},[l,Z]),Va=h.useCallback(W=>A=>{const P=Number(A.target.value),T=l.setYear(l.startOfMonth(W),P);Z(T)},[l,Z]),{className:Qa,style:Xa}=h.useMemo(()=>({className:[c[S.Root],t.className].filter(Boolean).join(" "),style:{...v?.[S.Root],...t.style}}),[c,t.className,t.style,v]),Za=Rd(t),wn=h.useRef(null);mu(wn,!!t.animate,{classNames:c,months:ae,focused:gn,dateLib:l});const Ja={dayPickerProps:t,selected:it,select:It,isSelected:Et,months:ae,nextMonth:V,previousMonth:Y,goToMonth:Z,getModifiers:je,components:r,classNames:c,styles:v,labels:o,formatters:a};return M.createElement(ma.Provider,{value:Ja},M.createElement(r.Root,{rootRef:t.animate?wn:void 0,className:Qa,style:Xa,dir:t.dir,id:t.id,lang:t.lang,nonce:t.nonce,title:t.title,role:t.role,"aria-label":t["aria-label"],"aria-labelledby":t["aria-labelledby"],...Za},M.createElement(r.Months,{className:c[S.Months],style:v?.[S.Months]},!t.hideNavigation&&!u&&M.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:c[S.Nav],style:v?.[S.Nav],"aria-label":vn(),onPreviousClick:Tt,onNextClick:At,previousMonth:Y,nextMonth:V}),ae.map((W,A)=>M.createElement(r.Month,{"data-animated-month":t.animate?"true":void 0,className:c[S.Month],style:v?.[S.Month],key:A,displayIndex:A,calendarMonth:W},u==="around"&&!t.hideNavigation&&A===0&&M.createElement(r.PreviousMonthButton,{type:"button",className:c[S.PreviousMonthButton],tabIndex:Y?void 0:-1,"aria-disabled":Y?void 0:!0,"aria-label":Aa(Y),onClick:Tt,"data-animated-button":t.animate?"true":void 0},M.createElement(r.Chevron,{disabled:Y?void 0:!0,className:c[S.Chevron],orientation:t.dir==="rtl"?"right":"left"})),M.createElement(r.MonthCaption,{"data-animated-caption":t.animate?"true":void 0,className:c[S.MonthCaption],style:v?.[S.MonthCaption],calendarMonth:W,displayIndex:A},d?.startsWith("dropdown")?M.createElement(r.DropdownNav,{className:c[S.Dropdowns],style:v?.[S.Dropdowns]},(()=>{const P=d==="dropdown"||d==="dropdown-months"?M.createElement(r.MonthsDropdown,{key:"month",className:c[S.MonthsDropdown],"aria-label":Ta(),classNames:c,components:r,disabled:!!t.disableNavigation,onChange:Ua(W.date),options:su(W.date,we,he,a,l),style:v?.[S.Dropdown],value:l.getMonth(W.date)}):M.createElement("span",{key:"month"},C(W.date,l)),T=d==="dropdown"||d==="dropdown-years"?M.createElement(r.YearsDropdown,{key:"year",className:c[S.YearsDropdown],"aria-label":La(l.options),classNames:c,components:r,disabled:!!t.disableNavigation,onChange:Va(W.date),options:lu(we,he,a,l,!!t.reverseYears),style:v?.[S.Dropdown],value:l.getYear(W.date)}):M.createElement("span",{key:"year"},R(W.date,l));return l.getMonthYearOrder()==="year-first"?[T,P]:[P,T]})(),M.createElement("span",{role:"status","aria-live":"polite",style:{border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",width:"1px",whiteSpace:"nowrap",wordWrap:"normal"}},D(W.date,l.options,l))):M.createElement(r.CaptionLabel,{className:c[S.CaptionLabel],role:"status","aria-live":"polite"},D(W.date,l.options,l))),u==="around"&&!t.hideNavigation&&A===p-1&&M.createElement(r.NextMonthButton,{type:"button",className:c[S.NextMonthButton],tabIndex:V?void 0:-1,"aria-disabled":V?void 0:!0,"aria-label":_a(V),onClick:At,"data-animated-button":t.animate?"true":void 0},M.createElement(r.Chevron,{disabled:V?void 0:!0,className:c[S.Chevron],orientation:t.dir==="rtl"?"left":"right"})),A===p-1&&u==="after"&&!t.hideNavigation&&M.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:c[S.Nav],style:v?.[S.Nav],"aria-label":vn(),onPreviousClick:Tt,onNextClick:At,previousMonth:Y,nextMonth:V}),M.createElement(r.MonthGrid,{role:"grid","aria-multiselectable":f==="multiple"||f==="range","aria-label":Ia(W.date,l.options,l)||void 0,className:c[S.MonthGrid],style:v?.[S.MonthGrid]},!t.hideWeekdays&&M.createElement(r.Weekdays,{"data-animated-weekdays":t.animate?"true":void 0,className:c[S.Weekdays],style:v?.[S.Weekdays]},g&&M.createElement(r.WeekNumberHeader,{"aria-label":Ya(l.options),className:c[S.WeekNumberHeader],style:v?.[S.WeekNumberHeader],scope:"col"},G()),za.map(P=>M.createElement(r.Weekday,{"aria-label":Fa(P,l.options,l),className:c[S.Weekday],key:String(P),style:v?.[S.Weekday],scope:"col"},K(P,l.options,l)))),M.createElement(r.Weeks,{"data-animated-weeks":t.animate?"true":void 0,className:c[S.Weeks],style:v?.[S.Weeks]},W.weeks.map(P=>M.createElement(r.Week,{className:c[S.Week],key:P.weekNumber,style:v?.[S.Week],week:P},g&&M.createElement(r.WeekNumber,{week:P,style:v?.[S.WeekNumber],"aria-label":Ba(P.weekNumber,{locale:i}),className:c[S.WeekNumber],scope:"row",role:"rowheader"},E(P.weekNumber,l)),P.days.map(T=>{const{date:J}=T,I=je(T);if(I[z.focused]=!I.hidden&&!!gn?.isEqualTo(T),I[le.selected]=Et?.(J)||I.selected,Pt(it)){const{from:_t,to:Ft}=it;I[le.range_start]=!!(_t&&Ft&&l.isSameDay(J,_t)),I[le.range_end]=!!(_t&&Ft&&l.isSameDay(J,Ft)),I[le.range_middle]=ye(it,J,!0,l)}const es=ou(I,v,t.modifiersStyles),ts=zd(I,c,t.modifiersClassNames),ns=!bn&&!I.hidden?Ea(J,I,l.options,l):void 0;return M.createElement(r.Day,{key:`${T.isoDate}_${T.displayMonthId}`,day:T,modifiers:I,className:ts.join(" "),style:es,role:"gridcell","aria-selected":I.selected||void 0,"aria-label":ns,"data-day":T.isoDate,"data-month":T.outside?T.dateMonthId:void 0,"data-selected":I.selected||void 0,"data-disabled":I.disabled||void 0,"data-hidden":I.hidden||void 0,"data-outside":T.outside||void 0,"data-focused":I.focused||void 0,"data-today":I.today||void 0},!I.hidden&&bn?M.createElement(r.DayButton,{className:c[S.DayButton],style:v?.[S.DayButton],type:"button",day:T,modifiers:I,disabled:!I.focused&&I.disabled||void 0,"aria-disabled":I.focused&&I.disabled||void 0,tabIndex:Pa(T)?0:-1,"aria-label":Wa(J,I,l.options,l),onClick:$a(T,I),onBlur:qa(T,I),onFocus:Ra(T,I),onKeyDown:Ka(T,I),onMouseEnter:Ha(T,I),onMouseLeave:Ga(T,I)},O(J,l.options,l)):!I.hidden&&O(T.date,l.options,l))})))))))),t.footer&&M.createElement(r.Footer,{className:c[S.Footer],style:v?.[S.Footer],role:"status","aria-live":"polite"},t.footer)))}function Sa({className:e,classNames:t,showOutsideDays:n=!0,...r}){return s.jsx(Iu,{showOutsideDays:n,className:B("p-3",e),classNames:{months:"flex flex-col sm:flex-row gap-4 sm:gap-6",month:"flex flex-col gap-4",month_caption:"flex justify-center pt-1 relative items-center w-full",caption_label:"text-sm font-medium",nav:"flex items-center gap-1",button_previous:"absolute left-1 h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100 border border-input rounded-md flex items-center justify-center hover:bg-accent",button_next:"absolute right-1 h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100 border border-input rounded-md flex items-center justify-center hover:bg-accent",month_grid:"w-full border-collapse",weekdays:"flex",weekday:"text-muted-foreground rounded-md w-9 font-normal text-[0.8rem] text-center",week:"flex w-full mt-2",day:"h-9 w-9 text-center text-sm p-0 relative",day_button:"h-9 w-9 p-0 font-normal rounded-md hover:bg-accent hover:text-accent-foreground transition-colors",selected:"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground",today:"text-primary font-bold",outside:"text-muted-foreground opacity-50",disabled:"text-muted-foreground opacity-50 pointer-events-none",hidden:"invisible",...t},components:{Chevron:({orientation:a})=>{const o=a==="left"?rs:nr;return s.jsx(o,{className:"h-4 w-4"})}},...r})}Sa.displayName="Calendar";function Tu({value:e,onChange:t,placeholder:n="Pick a date range",className:r,disabled:a=!1,presets:o=!0}){const[l,i]=h.useState(!1),[c,d]=h.useState(e);h.useEffect(()=>{d(e)},[e]);const f=b=>{d(b),t?.(b)},u=b=>{const y=new Date,k=sn(y,b),N={from:y,to:k};d(N),t?.(N),i(!1)},p=()=>{const b=new Date,y={from:Ce(b,{weekStartsOn:1}),to:ln(b,{weekStartsOn:1})};d(y),t?.(y),i(!1)},x=()=>{const b=new Date,y={from:aa(b),to:na(b)};d(y),t?.(y),i(!1)},w=b=>{b.stopPropagation(),d(void 0),t?.(void 0)},j=()=>{t?.(c),i(!1)};return s.jsxs(bs,{open:l,onOpenChange:i,children:[s.jsx(ws,{asChild:!0,children:s.jsxs(L,{variant:"outline",disabled:a,className:B("w-full justify-start text-left font-normal",!e?.from&&"text-muted-foreground",r),children:[s.jsx(Mt,{className:"mr-2 h-4 w-4"}),e?.from?e.to?s.jsxs(s.Fragment,{children:[H(e.from,"LLL dd, y")," - ",H(e.to,"LLL dd, y")]}):H(e.from,"LLL dd, y"):s.jsx("span",{children:n}),e?.from&&s.jsx(rr,{className:"ml-auto h-4 w-4 opacity-50 hover:opacity-100",onClick:w})]})}),s.jsx(js,{className:"w-auto p-0",align:"start",children:s.jsxs("div",{className:"flex flex-col",children:[s.jsxs("div",{className:"flex",children:[o&&s.jsxs("div",{className:"border-r border-border p-2 space-y-1 min-w-30",children:[s.jsx("p",{className:"text-xs font-medium text-muted-foreground px-2 py-1",children:"Quick Select"}),s.jsx(L,{variant:"ghost",size:"sm",className:"w-full justify-start text-sm h-8",onClick:()=>u(7),children:"1 week"}),s.jsx(L,{variant:"ghost",size:"sm",className:"w-full justify-start text-sm h-8",onClick:()=>u(14),children:"2 weeks"}),s.jsx(L,{variant:"ghost",size:"sm",className:"w-full justify-start text-sm h-8",onClick:()=>u(21),children:"3 weeks"}),s.jsx(L,{variant:"ghost",size:"sm",className:"w-full justify-start text-sm h-8",onClick:()=>u(30),children:"1 month"}),s.jsx("div",{className:"border-t border-border my-1"}),s.jsx(L,{variant:"ghost",size:"sm",className:"w-full justify-start text-sm h-8",onClick:p,children:"This week"}),s.jsx(L,{variant:"ghost",size:"sm",className:"w-full justify-start text-sm h-8",onClick:x,children:"This month"})]}),s.jsx(Sa,{mode:"range",defaultMonth:c?.from,selected:c,onSelect:f,numberOfMonths:2})]}),s.jsxs("div",{className:"flex items-center justify-between border-t border-border p-3 bg-muted/30",children:[s.jsx("div",{className:"text-sm text-muted-foreground",children:c?.from&&c?.to?s.jsxs("span",{className:"text-foreground font-medium",children:[Math.ceil((c.to.getTime()-c.from.getTime())/(1e3*60*60*24))," days selected"]}):c?.from?s.jsx("span",{children:"Select end date"}):s.jsx("span",{children:"Select start date"})}),s.jsxs(L,{size:"sm",onClick:j,disabled:!c?.from,className:"gap-1",children:[s.jsx(as,{className:"h-4 w-4"}),"Done"]})]})]})})]})}function Au({projectId:e,open:t,onOpenChange:n,onSuccess:r}){const a=Dt(),[o,l]=h.useState("quick"),[i,c]=h.useState(""),[d,f]=h.useState(""),[u,p]=h.useState(""),[x,w]=h.useState(),[j,b]=h.useState(""),[y,k]=h.useState(!1),N=Ve({mutationFn:()=>{const O=x?.from?H(x.from,"yyyy-MM-dd"):void 0,C=x?.to?H(x.to,"yyyy-MM-dd"):void 0;return ie.projects.sprints.create(e,{name:i,goal:d||void 0,description:o==="detailed"&&u?u:void 0,startDate:y?void 0:O,endDate:y?void 0:C,capacity:j?parseInt(j):void 0})},onSuccess:()=>{ne.success("Sprint created"),a.invalidateQueries({queryKey:["sprints",e]}),n(!1),m(),r?.()},onError:O=>{ne.error(O.message||"Failed to create sprint")}}),m=()=>{c(""),f(""),p(""),w(void 0),b(""),k(!1),l("quick")},g=O=>{if(O.preventDefault(),!i.trim()){ne.error("Sprint name is required");return}N.mutate()},D=!x?.from||!x?.to?null:Math.ceil((x.to.getTime()-x.from.getTime())/(1e3*60*60*24));return s.jsx(ps,{open:t,onOpenChange:n,children:s.jsxs(xs,{className:"sm:max-w-lg overflow-hidden",children:[s.jsx(gs,{className:"pb-4 border-b border-border",children:s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"p-2 rounded-xl bg-primary/10",children:s.jsx(Gt,{className:"h-5 w-5 text-primary"})}),s.jsxs("div",{children:[s.jsx(ys,{className:"text-lg",children:"Create Sprint"}),s.jsx(vs,{className:"text-sm",children:"Plan a new iteration for your project"})]})]})}),s.jsxs("div",{className:"flex gap-2 p-1 bg-muted/50 rounded-lg",children:[s.jsxs("button",{type:"button",onClick:()=>l("quick"),className:B("flex-1 flex items-center justify-center gap-2 py-2 px-3 rounded-md text-sm font-medium transition-all",o==="quick"?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:[s.jsx(pt,{className:"h-4 w-4"}),"Quick Create"]}),s.jsxs("button",{type:"button",onClick:()=>l("detailed"),className:B("flex-1 flex items-center justify-center gap-2 py-2 px-3 rounded-md text-sm font-medium transition-all",o==="detailed"?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:[s.jsx(Do,{className:"h-4 w-4"}),"Detailed"]})]}),s.jsxs("form",{onSubmit:g,className:"space-y-4",children:[s.jsxs("div",{className:"space-y-2",children:[s.jsxs(Le,{htmlFor:"name",className:"text-sm font-medium",children:["Sprint Name ",s.jsx("span",{className:"text-destructive",children:"*"})]}),s.jsx(xt,{id:"name",value:i,onChange:O=>c(O.target.value),placeholder:"Sprint 1",className:"h-10",autoFocus:!0})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsxs(Le,{className:"text-sm font-medium flex items-center gap-2",children:[s.jsx(Mt,{className:"h-4 w-4 text-muted-foreground"}),"Duration"]}),s.jsx("button",{type:"button",onClick:()=>{k(!y),y||w(void 0)},className:B("text-xs px-2 py-1 rounded-md transition-colors",y?"bg-amber-500/10 text-amber-500":"text-muted-foreground hover:text-foreground hover:bg-muted"),children:y?"📝 Draft Mode":"Save as draft"})]}),y?s.jsx("div",{className:"p-3 rounded-lg bg-amber-500/5 border border-amber-500/20",children:s.jsx("p",{className:"text-sm text-amber-600 dark:text-amber-400",children:"Draft sprints have no dates. You can add dates later when you're ready to start."})}):s.jsx(Tu,{value:x,onChange:w,placeholder:"Select sprint dates"}),D&&!y&&s.jsxs("p",{className:"text-xs text-muted-foreground flex items-center gap-1",children:[s.jsx("span",{className:"inline-block w-2 h-2 rounded-full bg-primary"}),D," day",D!==1?"s":""," sprint"]})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsx(Le,{htmlFor:"goal",className:"text-sm font-medium",children:"Sprint Goal"}),s.jsx(Nn,{id:"goal",value:d,onChange:O=>f(O.target.value),placeholder:"What do you want to achieve?",className:"resize-none",rows:o==="quick"?2:3})]}),o==="detailed"&&s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"space-y-2",children:[s.jsx(Le,{htmlFor:"description",className:"text-sm font-medium",children:"Description"}),s.jsx(Nn,{id:"description",value:u,onChange:O=>p(O.target.value),placeholder:"Additional details about this sprint...",className:"resize-none",rows:3})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsxs(Le,{htmlFor:"capacity",className:"text-sm font-medium flex items-center gap-2",children:[s.jsx(ss,{className:"h-4 w-4 text-muted-foreground"}),"Capacity (Story Points)"]}),s.jsx(xt,{id:"capacity",type:"number",value:j,onChange:O=>b(O.target.value),placeholder:"e.g., 20",className:"w-32 h-10",min:0}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Total story points planned for this sprint"})]})]}),s.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-border",children:[s.jsx(L,{type:"button",variant:"ghost",onClick:()=>n(!1),children:"Cancel"}),s.jsx(L,{type:"submit",disabled:!i.trim()||N.isPending,className:"gap-2 min-w-30",children:N.isPending?s.jsxs(s.Fragment,{children:[s.jsx(Be,{className:"h-4 w-4 animate-spin"}),"Creating..."]}):s.jsxs(s.Fragment,{children:[s.jsx(Gt,{className:"h-4 w-4"}),y?"Save Draft":"Create Sprint"]})})]})]})]})})}function _u({sprintId:e,className:t}){const{data:n,isLoading:r,error:a}=Ae({queryKey:["sprint-burndown",e],queryFn:()=>ie.stats.sprintBurndown(e),enabled:!!e});if(r)return s.jsx("div",{className:`flex items-center justify-center h-64 ${t}`,children:s.jsx(Be,{className:"h-6 w-6 animate-spin text-muted-foreground"})});if(a||!n)return s.jsx("div",{className:`flex items-center justify-center h-64 text-muted-foreground ${t}`,children:s.jsx("p",{children:"Failed to load burndown data"})});if(n.burndown.length===0)return s.jsxs("div",{className:`flex flex-col items-center justify-center h-64 text-muted-foreground ${t}`,children:[s.jsx(Vt,{className:"h-10 w-10 mb-3 opacity-50"}),s.jsx("p",{children:"No burndown data available"}),s.jsx("p",{className:"text-xs mt-1",children:"Set sprint start and end dates to see the burndown chart"})]});const o=n.burndown.map(i=>({date:i.date,displayDate:H(Yt(i.date),"MMM d"),ideal:i.ideal,actual:i.remaining})),l=n.totalPoints>0?Math.round(n.completedPoints/n.totalPoints*100):0;return s.jsxs("div",{className:t,children:[s.jsxs("div",{className:"flex items-center justify-between mb-4",children:[s.jsxs("div",{children:[s.jsxs("h3",{className:"font-semibold flex items-center gap-2",children:[s.jsx(Vt,{className:"h-4 w-4 text-primary"}),"Sprint Burndown"]}),s.jsx("p",{className:"text-xs text-muted-foreground",children:n.sprint.name})]}),s.jsxs("div",{className:"flex items-center gap-4 text-sm",children:[s.jsxs("div",{className:"text-right",children:[s.jsxs("p",{className:"font-semibold",children:[n.completedPoints,"/",n.totalPoints]}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"points completed"})]}),s.jsxs("div",{className:"w-16 h-16 relative",children:[s.jsxs("svg",{className:"transform -rotate-90",viewBox:"0 0 36 36",children:[s.jsx("circle",{cx:"18",cy:"18",r:"16",fill:"none",className:"stroke-muted",strokeWidth:"3"}),s.jsx("circle",{cx:"18",cy:"18",r:"16",fill:"none",className:"stroke-primary",strokeWidth:"3",strokeDasharray:`${l} 100`,strokeLinecap:"round"})]}),s.jsxs("span",{className:"absolute inset-0 flex items-center justify-center text-sm font-bold",children:[l,"%"]})]})]})]}),s.jsx("div",{className:"h-64",children:s.jsx(Pr,{width:"100%",height:"100%",children:s.jsxs(kl,{data:o,margin:{top:5,right:20,left:0,bottom:5},children:[s.jsx(Wr,{strokeDasharray:"3 3",className:"stroke-border"}),s.jsx(Er,{dataKey:"displayDate",tick:{fontSize:11,fill:"hsl(var(--muted-foreground))"},tickLine:{stroke:"hsl(var(--border))"},axisLine:{stroke:"hsl(var(--border))"}}),s.jsx(Ir,{tick:{fontSize:11,fill:"hsl(var(--muted-foreground))"},tickLine:{stroke:"hsl(var(--border))"},axisLine:{stroke:"hsl(var(--border))"},domain:[0,"dataMax"]}),s.jsx(Tr,{contentStyle:{backgroundColor:"hsl(var(--card))",border:"1px solid hsl(var(--border))",borderRadius:"8px",fontSize:"12px"},labelStyle:{color:"hsl(var(--foreground))"},formatter:(i,c)=>[`${i??0} points`,c==="ideal"?"Ideal":"Actual"]}),s.jsx(Ar,{wrapperStyle:{fontSize:"12px"},formatter:i=>i==="ideal"?"Ideal":"Actual"}),s.jsx(rn,{y:0,stroke:"hsl(var(--border))"}),s.jsx(Qt,{type:"linear",dataKey:"ideal",stroke:"hsl(var(--muted-foreground))",strokeDasharray:"5 5",dot:!1,strokeWidth:2}),s.jsx(Qt,{type:"monotone",dataKey:"actual",stroke:"hsl(var(--primary))",dot:{fill:"hsl(var(--primary))",strokeWidth:0,r:3},activeDot:{r:5},strokeWidth:2,connectNulls:!1})]})})}),s.jsxs("div",{className:"flex items-center justify-between mt-4 text-xs text-muted-foreground border-t border-border pt-3",children:[s.jsxs("span",{children:[n.ticketCount," tickets in sprint"]}),n.sprint.startDate&&n.sprint.endDate&&s.jsxs("span",{children:[H(Yt(n.sprint.startDate),"MMM d")," - ",H(Yt(n.sprint.endDate),"MMM d")]})]})]})}function Fu({projectId:e,className:t}){const{data:n,isLoading:r,error:a}=Ae({queryKey:["project-velocity",e],queryFn:()=>ie.stats.projectVelocity(e),enabled:!!e});if(r)return s.jsx("div",{className:`flex items-center justify-center h-64 ${t}`,children:s.jsx(Be,{className:"h-6 w-6 animate-spin text-muted-foreground"})});if(a||!n)return s.jsx("div",{className:`flex items-center justify-center h-64 text-muted-foreground ${t}`,children:s.jsx("p",{children:"Failed to load velocity data"})});if(n.sprints.length===0)return s.jsxs("div",{className:`flex flex-col items-center justify-center h-64 text-muted-foreground ${t}`,children:[s.jsx(pt,{className:"h-10 w-10 mb-3 opacity-50"}),s.jsx("p",{children:"No velocity data yet"}),s.jsx("p",{className:"text-xs mt-1",children:"Complete sprints to see velocity trends"})]});const o=n.sprints.map(c=>({name:c.sprintName,planned:c.plannedPoints,completed:c.completedPoints,ticketCount:c.ticketCount,completedTickets:c.completedTickets})),l=n.sprints[n.sprints.length-1],i=n.averageVelocity>0?Math.round((l.completedPoints-n.averageVelocity)/n.averageVelocity*100):0;return s.jsxs("div",{className:t,children:[s.jsxs("div",{className:"flex items-center justify-between mb-4",children:[s.jsxs("div",{children:[s.jsxs("h3",{className:"font-semibold flex items-center gap-2",children:[s.jsx(pt,{className:"h-4 w-4 text-amber-500"}),"Velocity Trend"]}),s.jsxs("p",{className:"text-xs text-muted-foreground",children:["Last ",n.sprintCount," sprints"]})]}),s.jsxs("div",{className:"flex items-center gap-4",children:[s.jsxs("div",{className:"text-right",children:[s.jsx("p",{className:"text-2xl font-bold",children:n.averageVelocity}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"avg points/sprint"})]}),i!==0&&s.jsxs("div",{className:`flex items-center gap-1 text-sm ${i>0?"text-green-500":"text-red-500"}`,children:[i>0?s.jsx(no,{className:"h-4 w-4"}):s.jsx(Vt,{className:"h-4 w-4"}),s.jsxs("span",{children:[Math.abs(i),"%"]})]})]})]}),s.jsx("div",{className:"h-64",children:s.jsx(Pr,{width:"100%",height:"100%",children:s.jsxs(Dl,{data:o,margin:{top:5,right:20,left:0,bottom:5},children:[s.jsx(Wr,{strokeDasharray:"3 3",className:"stroke-border"}),s.jsx(Er,{dataKey:"name",tick:{fontSize:11,fill:"hsl(var(--muted-foreground))"},tickLine:{stroke:"hsl(var(--border))"},axisLine:{stroke:"hsl(var(--border))"}}),s.jsx(Ir,{tick:{fontSize:11,fill:"hsl(var(--muted-foreground))"},tickLine:{stroke:"hsl(var(--border))"},axisLine:{stroke:"hsl(var(--border))"}}),s.jsx(Tr,{contentStyle:{backgroundColor:"hsl(var(--card))",border:"1px solid hsl(var(--border))",borderRadius:"8px",fontSize:"12px"},labelStyle:{color:"hsl(var(--foreground))"},formatter:(c,d)=>[`${c??0} points`,d==="planned"?"Planned":"Completed"]}),s.jsx(Ar,{wrapperStyle:{fontSize:"12px"},formatter:c=>c==="planned"?"Planned":"Completed"}),s.jsx(rn,{y:n.averageVelocity,stroke:"hsl(var(--primary))",strokeDasharray:"3 3",label:{value:`Avg: ${n.averageVelocity}`,position:"right",fontSize:10,fill:"hsl(var(--muted-foreground))"}}),s.jsx(Jt,{dataKey:"planned",fill:"hsl(var(--muted))",radius:[4,4,0,0],maxBarSize:40}),s.jsx(Jt,{dataKey:"completed",fill:"hsl(var(--primary))",radius:[4,4,0,0],maxBarSize:40})]})})}),n.sprints.length>0&&s.jsxs("div",{className:"mt-4 border-t border-border pt-3",children:[s.jsxs("div",{className:"grid grid-cols-4 gap-2 text-xs text-muted-foreground mb-2",children:[s.jsx("span",{children:"Sprint"}),s.jsx("span",{className:"text-right",children:"Planned"}),s.jsx("span",{className:"text-right",children:"Completed"}),s.jsx("span",{className:"text-right",children:"Tickets"})]}),s.jsx("div",{className:"space-y-1 max-h-32 overflow-y-auto",children:[...n.sprints].reverse().map(c=>s.jsxs("div",{className:"grid grid-cols-4 gap-2 text-xs",children:[s.jsx("span",{className:"truncate",children:c.sprintName}),s.jsx("span",{className:"text-right text-muted-foreground",children:c.plannedPoints}),s.jsx("span",{className:"text-right font-medium",children:c.completedPoints}),s.jsxs("span",{className:"text-right text-muted-foreground",children:[c.completedTickets,"/",c.ticketCount]})]},c.sprintId))})]})]})}const ht=[{id:"backlog",label:"Backlog",icon:s.jsx(fo,{className:"h-4 w-4"}),color:"text-gray-400",bgColor:"bg-gray-500/10"},{id:"todo",label:"Todo",icon:s.jsx(Kt,{className:"h-4 w-4"}),color:"text-amber-400",bgColor:"bg-amber-500/10",wipLimit:10},{id:"in_progress",label:"In Progress",icon:s.jsx(wo,{className:"h-4 w-4"}),color:"text-blue-500",bgColor:"bg-blue-500/10",wipLimit:5},{id:"in_review",label:"In Review",icon:s.jsx(os,{className:"h-4 w-4"}),color:"text-indigo-500",bgColor:"bg-indigo-500/10",wipLimit:3},{id:"done",label:"Done",icon:s.jsx(Ht,{className:"h-4 w-4"}),color:"text-green-500",bgColor:"bg-green-500/10"}],kt={urgent:{color:"text-red-500",bgColor:"bg-red-500",label:"Urgent"},high:{color:"text-orange-400",bgColor:"bg-orange-400",label:"High"},medium:{color:"text-yellow-400",bgColor:"bg-yellow-400",label:"Medium"},low:{color:"text-blue-400",bgColor:"bg-blue-400",label:"Low"},none:{color:"text-gray-400",bgColor:"bg-gray-400",label:"None"}},Nt={task:{icon:s.jsx(jn,{className:"h-3 w-3"}),color:"text-blue-400"},bug:{icon:s.jsx(po,{className:"h-3 w-3"}),color:"text-red-400"},feature:{icon:s.jsx(cs,{className:"h-3 w-3"}),color:"text-green-400"},enhancement:{icon:s.jsx(pt,{className:"h-3 w-3"}),color:"text-indigo-400"},documentation:{icon:s.jsx(ls,{className:"h-3 w-3"}),color:"text-teal-400"},epic:{icon:s.jsx(mo,{className:"h-3 w-3"}),color:"text-amber-400"},story:{icon:s.jsx(ho,{className:"h-3 w-3"}),color:"text-cyan-400"},subtask:{icon:s.jsx(jn,{className:"h-3 w-3"}),color:"text-gray-400"}};function Bu({ticket:e,onOpenPreview:t}){const n=h.useRef(null),[r,a]=h.useState(!1),[o,l]=h.useState(!1);h.useEffect(()=>{const f=n.current;if(f)return so({element:f,getInitialData:()=>({ticketId:e.id,currentStatus:e.status}),onDragStart:()=>{a(!0),l(!0)},onDrop:()=>a(!1)})},[e.id,e.status]);const i=f=>{if(o){l(!1);return}f.target.closest("a")||t(e)},c=Nt[e.type]||Nt.task,d=kt[e.priority]||kt.medium;return s.jsxs("div",{ref:n,className:B("group glass rounded-xl p-3 cursor-grab active:cursor-grabbing","hover:shadow-lg hover:shadow-primary/5 transition-all duration-200",r&&"opacity-40 scale-[1.02] shadow-xl rotate-1"),onClick:i,children:[s.jsx("div",{className:B("h-1 w-8 rounded-full mb-2",d.bgColor)}),s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsxs("div",{className:"flex items-center gap-2 mb-1.5",children:[s.jsxs("span",{className:"text-[11px] font-mono text-muted-foreground font-medium",children:[e.projectKey||"PROFCLAW","-",e.sequence]}),s.jsx("span",{className:B("flex items-center gap-1",c.color),children:c.icon}),e.priority!=="none"&&e.priority!=="medium"&&s.jsx("span",{className:B("text-[10px]",d.color),children:d.label})]}),s.jsx("h4",{className:"text-sm font-medium leading-snug line-clamp-2 group-hover:text-primary transition-colors",children:e.title}),e.labels&&e.labels.length>0&&s.jsxs("div",{className:"flex flex-wrap gap-1 mt-2",children:[e.labels.slice(0,3).map(f=>s.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded bg-primary/10 text-primary",children:f},f)),e.labels.length>3&&s.jsxs("span",{className:"text-[10px] text-muted-foreground",children:["+",e.labels.length-3]})]}),s.jsxs("div",{className:"flex items-center justify-between gap-2 mt-3 pt-2 border-t border-border/50",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[e.assignee?s.jsx("div",{className:"flex items-center gap-1 text-[11px] text-muted-foreground",children:s.jsx("div",{className:"w-5 h-5 rounded-full bg-primary/20 flex items-center justify-center text-primary text-[10px] font-medium",children:e.assignee.charAt(0).toUpperCase()})}):s.jsx("div",{className:"w-5 h-5 rounded-full border border-dashed border-muted-foreground/30 flex items-center justify-center",children:s.jsx(sr,{className:"h-3 w-3 text-muted-foreground/50"})}),e.dueDate&&s.jsxs("span",{className:"flex items-center gap-1 text-[10px] text-muted-foreground",children:[s.jsx(Mt,{className:"h-3 w-3"}),H(new Date(e.dueDate),"MMM d")]})]}),e.estimate&&s.jsxs("span",{className:"text-[10px] font-medium text-muted-foreground bg-muted px-1.5 py-0.5 rounded",children:[e.estimate,"pt"]})]})]})]})}function Yu({column:e,tickets:t,onDrop:n,onOpenPreview:r,isCollapsed:a,onToggleCollapse:o,onSetWipLimit:l}){const i=h.useRef(null),[c,d]=h.useState(!1);h.useEffect(()=>{const p=i.current;if(p)return ro(ao({element:p,getData:()=>({status:e.id}),canDrop:({source:x})=>x.data.currentStatus!==e.id,onDragEnter:()=>d(!0),onDragLeave:()=>d(!1),onDrop:({source:x})=>{d(!1);const w=x.data.ticketId;n(w,e.id)}}))},[e.id,n]);const f=e.wipLimit&&t.length>e.wipLimit,u=e.wipLimit&&t.length===e.wipLimit;return a?s.jsxs("div",{ref:i,className:B("flex flex-col items-center w-12 rounded-xl p-2 cursor-pointer transition-all",e.bgColor,c&&"ring-2 ring-primary bg-primary/10"),onClick:o,children:[s.jsx("button",{className:"p-1 hover:bg-background/50 rounded mb-2",children:s.jsx(nr,{className:"h-4 w-4 text-muted-foreground"})}),s.jsx("div",{className:"writing-mode-vertical text-sm font-medium text-muted-foreground rotate-180",children:e.label}),s.jsx("span",{className:B("mt-2 text-xs font-medium px-2 py-1 rounded-full",e.bgColor,e.color),children:t.length})]}):s.jsxs("div",{className:"flex flex-col w-[280px] sm:w-[300px] md:w-[320px] shrink-0",children:[s.jsxs("div",{className:B("flex items-center justify-between mb-3 px-2 py-2 rounded-lg",e.bgColor),children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("button",{onClick:o,className:"p-0.5 hover:bg-background/30 rounded transition-colors",children:s.jsx(mt,{className:"h-4 w-4 text-muted-foreground"})}),s.jsx("span",{className:e.color,children:e.icon}),s.jsx("h3",{className:"font-semibold text-sm",children:e.label}),s.jsxs("span",{className:B("text-xs font-medium px-2 py-0.5 rounded-full",f?"bg-red-500/20 text-red-400":u?"bg-amber-500/20 text-amber-400":"bg-background/50 text-muted-foreground"),children:[t.length,e.wipLimit&&`/${e.wipLimit}`]})]}),s.jsxs(qe,{children:[s.jsx(Ke,{asChild:!0,children:s.jsx(L,{variant:"ghost",size:"icon",className:"h-6 w-6",children:s.jsx(Fr,{className:"h-4 w-4"})})}),s.jsxs(He,{align:"end",children:[s.jsx(pe,{onClick:o,children:"Collapse column"}),s.jsx(Ge,{}),s.jsx(pe,{onClick:l,children:"Set WIP limit..."})]})]})]}),s.jsx("div",{ref:i,className:B("flex-1 rounded-xl p-2 transition-all duration-200 overflow-y-auto","bg-muted/20 border-2 border-transparent","min-h-[300px] sm:min-h-[400px] md:min-h-[calc(100vh-380px)]","max-h-[400px] sm:max-h-[500px] md:max-h-[calc(100vh-380px)]",c&&"border-primary/50 bg-primary/5 scale-[1.01]",f&&"border-red-500/30"),style:{scrollbarGutter:"stable"},children:s.jsxs("div",{className:"space-y-2",children:[t.map(p=>s.jsx(Bu,{ticket:p,onOpenPreview:r},p.id)),t.length===0&&s.jsxs("div",{className:B("flex flex-col items-center justify-center py-12 text-center","border-2 border-dashed border-muted-foreground/20 rounded-lg"),children:[s.jsx("div",{className:B("p-3 rounded-full mb-2",e.bgColor),children:e.icon}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Drop tickets here"})]})]})})]})}function Lu({ticket:e,open:t,onClose:n}){if(!e)return null;const r=Nt[e.type]||Nt.task,a=kt[e.priority]||kt.medium;return s.jsx(oo,{open:t,onOpenChange:n,children:s.jsxs(io,{className:"w-[450px] sm:w-[540px] overflow-y-auto",children:[s.jsxs(lo,{className:"pb-4 border-b border-border",children:[s.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[s.jsxs("span",{className:B("flex items-center gap-1",r.color),children:[r.icon,s.jsx("span",{className:"capitalize",children:e.type})]}),s.jsx("span",{children:"•"}),s.jsxs(gt,{to:`/tickets/${e.id}`,className:"font-mono hover:text-primary hover:underline transition-colors",onClick:n,children:[e.projectKey||"PROFCLAW","-",e.sequence]})]}),s.jsx(co,{className:"text-xl",children:e.title})]}),s.jsxs("div",{className:"py-6 space-y-6",children:[s.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Status"}),s.jsxs("div",{className:"mt-1 flex items-center gap-2",children:[ht.find(o=>o.id===e.status)?.icon,s.jsx("span",{className:"capitalize",children:e.status.replace("_"," ")})]})]}),s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Priority"}),s.jsxs("div",{className:B("mt-1 flex items-center gap-2",a.color),children:[s.jsx("div",{className:B("w-2 h-2 rounded-full",a.bgColor)}),s.jsx("span",{className:"capitalize",children:e.priority})]})]})]}),s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Assignee"}),s.jsx("div",{className:"mt-1 flex items-center gap-2",children:e.assignee?s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"w-6 h-6 rounded-full bg-primary/20 flex items-center justify-center text-primary text-xs font-medium",children:e.assignee.charAt(0).toUpperCase()}),s.jsx("span",{children:e.assignee})]}):s.jsx("span",{className:"text-muted-foreground",children:"Unassigned"})})]}),e.labels&&e.labels.length>0&&s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Labels"}),s.jsx("div",{className:"mt-2 flex flex-wrap gap-2",children:e.labels.map(o=>s.jsx("span",{className:"text-xs px-2 py-1 rounded-full bg-primary/10 text-primary",children:o},o))})]}),s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Description"}),s.jsx("div",{className:"mt-2 text-sm text-muted-foreground prose prose-sm dark:prose-invert max-w-none",children:e.description||s.jsx("span",{className:"italic",children:"No description"})})]}),s.jsxs("div",{className:"grid grid-cols-2 gap-4 pt-4 border-t border-border",children:[s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Created"}),s.jsx("p",{className:"mt-1 text-sm",children:H(new Date(e.createdAt),"MMM d, yyyy")})]}),e.dueDate&&s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Due Date"}),s.jsx("p",{className:"mt-1 text-sm",children:H(new Date(e.dueDate),"MMM d, yyyy")})]})]})]}),s.jsx("div",{className:"pt-4 border-t border-border flex items-center gap-2",children:s.jsx(gt,{to:`/tickets/${e.id}`,className:"flex-1",children:s.jsxs(L,{variant:"outline",className:"w-full gap-2",children:[s.jsx(is,{className:"h-4 w-4"}),"Open Full View"]})})})]})})}const Ca="profclaw-board-wip-limits";function zu(){try{const e=localStorage.getItem(Ca);return e?JSON.parse(e):{}}catch{return{}}}function $u(e){localStorage.setItem(Ca,JSON.stringify(e))}function Ru({projectId:e,sprintId:t}){const n=Dt(),[r,a]=h.useState(""),[o,l]=h.useState(new Set),[i,c]=h.useState(null),[d,f]=h.useState(zu),u=h.useCallback(g=>{const v=d[g.id];return v!==void 0?{...g,wipLimit:v}:g},[d]),p=h.useCallback(g=>{const v=d[g]??ht.find(C=>C.id===g)?.wipLimit,D=window.prompt(`Set WIP limit for "${g.replace("_"," ")}" column:
|
|
2
|
-
(Enter a number, or leave empty to remove limit)`,v?.toString()||"");if(D===null)return;const O={...d};if(D==="")delete O[g];else{const C=parseInt(D,10);if(!isNaN(C)&&C>0)O[g]=C;else{ne.error("Please enter a valid positive number");return}}f(O),$u(O),ne.success(D===""?"WIP limit removed":`WIP limit set to ${D}`)},[d]),{data:x,isLoading:w}=Ae({queryKey:["tickets","board",e,t],queryFn:()=>ie.tickets.list({projectId:e,sprintId:t,limit:200})}),j=Ve({mutationFn:({ticketId:g,status:v})=>ie.tickets.update(g,{status:v}),onMutate:async({ticketId:g,status:v})=>{await n.cancelQueries({queryKey:["tickets","board",e,t]});const D=n.getQueryData(["tickets","board",e,t]);return n.setQueryData(["tickets","board",e,t],O=>O?.tickets?{...O,tickets:O.tickets.map(C=>C.id===g?{...C,status:v}:C)}:O),{previousData:D}},onError:(g,v,D)=>{D?.previousData&&n.setQueryData(["tickets","board",e,t],D.previousData),ne.error("Failed to update ticket")},onSettled:()=>{n.invalidateQueries({queryKey:["tickets","board",e,t]})}}),b=h.useCallback((g,v)=>{j.mutate({ticketId:g,status:v}),ne.success(`Moved to ${v.replace("_"," ")}`)},[j]),y=g=>{l(v=>{const D=new Set(v);return D.has(g)?D.delete(g):D.add(g),D})},k=x?.tickets||[],N=r?k.filter(g=>g.title.toLowerCase().includes(r.toLowerCase())||g.description?.toLowerCase().includes(r.toLowerCase())||`${g.projectKey||"PROFCLAW"}-${g.sequence}`.toLowerCase().includes(r.toLowerCase())):k,m=ht.reduce((g,v)=>(g[v.id]=N.filter(D=>D.status===v.id),g),{});return w?s.jsx("div",{className:"flex items-center justify-center h-64",children:s.jsx(Be,{className:"h-8 w-8 animate-spin text-muted-foreground"})}):s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex flex-col sm:flex-row items-stretch sm:items-center justify-between gap-3",children:[s.jsxs("div",{className:"relative flex-1 max-w-full sm:max-w-sm",children:[s.jsx(ar,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),s.jsx(xt,{placeholder:"Search tickets...",value:r,onChange:g=>a(g.target.value),className:"pl-9 pr-9"}),r&&s.jsx("button",{onClick:()=>a(""),className:"absolute right-3 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground",children:s.jsx(rr,{className:"h-4 w-4"})})]}),s.jsxs("div",{className:"flex items-center gap-4 text-sm text-muted-foreground",children:[s.jsxs("span",{children:[N.length," tickets"]}),r&&s.jsxs("span",{className:"text-primary",children:["(filtered from ",k.length,")"]})]})]}),s.jsx("div",{className:"flex gap-3 sm:gap-4 overflow-x-auto pb-4 -mx-4 px-4 sm:mx-0 sm:px-0 scrollbar-thin scrollbar-thumb-muted scrollbar-track-transparent",children:ht.map(g=>s.jsx(Yu,{column:u(g),tickets:m[g.id]||[],onDrop:b,onOpenPreview:c,isCollapsed:o.has(g.id),onToggleCollapse:()=>y(g.id),onSetWipLimit:()=>p(g.id)},g.id))}),s.jsx(Lu,{ticket:i,open:!!i,onClose:()=>c(null)})]})}const er={backlog:"bg-gray-400/10 text-gray-400",todo:"bg-amber-400/10 text-amber-400",in_progress:"bg-blue-500/10 text-blue-500",in_review:"bg-indigo-500/10 text-indigo-500",done:"bg-green-500/10 text-green-500",cancelled:"bg-red-500/10 text-red-500"},ut={urgent:"text-red-500",high:"text-orange-400",medium:"text-yellow-400",low:"text-blue-400",none:"text-gray-400"},ft={task:"bg-blue-500/10 text-blue-500",bug:"bg-red-500/10 text-red-500",feature:"bg-green-500/10 text-green-500",enhancement:"bg-indigo-500/10 text-indigo-500",documentation:"bg-teal-500/10 text-teal-500",epic:"bg-amber-500/10 text-amber-500",story:"bg-cyan-500/10 text-cyan-500",subtask:"bg-gray-500/10 text-gray-500"};function tr({projectId:e,sprints:t,onCreateTicket:n,showAllTickets:r=!1,title:a}){const o=Dt(),[l,i]=h.useState(""),[c,d]=h.useState("all"),[f,u]=h.useState("all"),[p,x]=h.useState("all"),{data:w,isLoading:j}=Ae({queryKey:["tickets",r?"all":"backlog",e,l,c,f,p],queryFn:()=>ie.tickets.list({projectId:e,inBacklog:r?void 0:!0,search:l||void 0,status:c!=="all"?c:void 0,priority:f!=="all"?f:void 0,type:p!=="all"?p:void 0,limit:100})}),b=Ve({mutationFn:({ticketId:m,sprintId:g})=>ie.projects.sprints.addTickets(e,g,[m]),onSuccess:()=>{ne.success("Ticket added to sprint"),o.invalidateQueries({queryKey:["tickets","backlog",e]})},onError:m=>{ne.error(m instanceof Error?m.message:"Failed to add ticket to sprint")}}),y=w?.tickets||[],k=t.filter(m=>m.status==="active"||m.status==="planning"),N=(m,g)=>{b.mutate({ticketId:m,sprintId:g})};return j?s.jsx("div",{className:"flex items-center justify-center h-64",children:s.jsx(Be,{className:"h-8 w-8 animate-spin text-muted-foreground"})}):s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[s.jsxs("div",{className:"relative flex-1 min-w-[200px] max-w-[300px]",children:[s.jsx(ar,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),s.jsx(xt,{placeholder:"Search tickets...",value:l,onChange:m=>i(m.target.value),className:"pl-9"})]}),s.jsxs(qe,{children:[s.jsx(Ke,{asChild:!0,children:s.jsxs(L,{variant:"outline",size:"sm",className:"gap-2",children:[s.jsx(xo,{className:"h-4 w-4"}),"Status",c!=="all"&&s.jsx("span",{className:"text-xs bg-primary/10 text-primary px-1.5 py-0.5 rounded capitalize",children:c.replace("_"," ")}),s.jsx(mt,{className:"h-3 w-3"})]})}),s.jsxs(He,{children:[s.jsx(pe,{onClick:()=>d("all"),children:"All"}),s.jsx(Ge,{}),Object.keys(er).map(m=>s.jsx(pe,{onClick:()=>d(m),children:s.jsx("span",{className:"capitalize",children:m.replace("_"," ")})},m))]})]}),s.jsxs(qe,{children:[s.jsx(Ke,{asChild:!0,children:s.jsxs(L,{variant:"outline",size:"sm",className:"gap-2",children:[s.jsx(Oo,{className:"h-4 w-4"}),"Priority",f!=="all"&&s.jsx("span",{className:B("text-xs capitalize",ut[f]),children:f}),s.jsx(mt,{className:"h-3 w-3"})]})}),s.jsxs(He,{children:[s.jsx(pe,{onClick:()=>u("all"),children:"All"}),s.jsx(Ge,{}),Object.keys(ut).map(m=>s.jsx(pe,{onClick:()=>u(m),children:s.jsx("span",{className:B("capitalize",ut[m]),children:m})},m))]})]}),s.jsxs(qe,{children:[s.jsx(Ke,{asChild:!0,children:s.jsxs(L,{variant:"outline",size:"sm",className:"gap-2",children:["Type",p!=="all"&&s.jsx("span",{className:B("text-xs px-1.5 py-0.5 rounded capitalize",ft[p]),children:p}),s.jsx(mt,{className:"h-3 w-3"})]})}),s.jsxs(He,{children:[s.jsx(pe,{onClick:()=>x("all"),children:"All"}),s.jsx(Ge,{}),Object.keys(ft).map(m=>s.jsx(pe,{onClick:()=>x(m),children:s.jsx("span",{className:B("capitalize px-1.5 py-0.5 rounded",ft[m]),children:m})},m))]})]}),s.jsx("div",{className:"flex-1"}),n&&s.jsxs(L,{size:"sm",className:"gap-2",onClick:n,children:[s.jsx(yt,{className:"h-4 w-4"}),"New Ticket"]})]}),y.length===0?s.jsxs("div",{className:"flex flex-col items-center justify-center h-48 bg-muted/30 rounded-xl border border-dashed border-border",children:[s.jsx(_r,{className:"h-10 w-10 text-muted-foreground/50 mb-3"}),s.jsx("p",{className:"text-muted-foreground mb-1",children:r?"No tickets found":"No tickets in backlog"}),s.jsx("p",{className:"text-xs text-muted-foreground",children:l||c!=="all"||f!=="all"||p!=="all"?"Try adjusting your filters":"Create a ticket to get started"})]}):s.jsx("div",{className:"bg-card rounded-xl border border-border overflow-hidden",children:s.jsxs("table",{className:"w-full",children:[s.jsx("thead",{children:s.jsxs("tr",{className:"border-b border-border bg-muted/30",children:[s.jsx("th",{className:"text-left text-xs font-medium text-muted-foreground px-4 py-3",children:"Ticket"}),s.jsx("th",{className:"text-left text-xs font-medium text-muted-foreground px-4 py-3 w-[100px]",children:"Status"}),s.jsx("th",{className:"text-left text-xs font-medium text-muted-foreground px-4 py-3 w-[100px]",children:"Priority"}),s.jsx("th",{className:"text-left text-xs font-medium text-muted-foreground px-4 py-3 w-[100px]",children:"Type"}),s.jsx("th",{className:"text-left text-xs font-medium text-muted-foreground px-4 py-3 w-[120px]",children:"Assignee"}),s.jsx("th",{className:"text-right text-xs font-medium text-muted-foreground px-4 py-3 w-[140px]",children:"Actions"})]})}),s.jsx("tbody",{children:y.map(m=>s.jsxs("tr",{className:"border-b border-border last:border-0 hover:bg-muted/20 transition-colors",children:[s.jsx("td",{className:"px-4 py-3",children:s.jsxs("div",{className:"flex items-start gap-2",children:[s.jsxs("span",{className:"text-xs font-mono text-muted-foreground shrink-0",children:[m.projectKey||"PROFCLAW","-",m.sequence]}),s.jsx(gt,{to:`/tickets/${m.id}`,className:"text-sm font-medium hover:text-primary line-clamp-1",children:m.title})]})}),s.jsx("td",{className:"px-4 py-3",children:s.jsx("span",{className:B("text-xs px-2 py-1 rounded-full capitalize",er[m.status]),children:m.status.replace("_"," ")})}),s.jsx("td",{className:"px-4 py-3",children:s.jsx("span",{className:B("text-xs capitalize",ut[m.priority]),children:m.priority})}),s.jsx("td",{className:"px-4 py-3",children:s.jsx("span",{className:B("text-xs px-2 py-1 rounded capitalize",ft[m.type]),children:m.type})}),s.jsx("td",{className:"px-4 py-3",children:m.assignee?s.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[s.jsx(sr,{className:"h-3 w-3"}),s.jsx("span",{className:"truncate max-w-[80px]",children:m.assignee})]}):s.jsx("span",{className:"text-xs text-muted-foreground",children:"Unassigned"})}),s.jsx("td",{className:"px-4 py-3 text-right",children:k.length>0&&s.jsxs(qe,{children:[s.jsx(Ke,{asChild:!0,children:s.jsxs(L,{variant:"outline",size:"sm",className:"h-7 text-xs gap-1",children:[s.jsx(yt,{className:"h-3 w-3"}),"Add to Sprint"]})}),s.jsxs(He,{align:"end",children:[s.jsx(ds,{children:"Select Sprint"}),s.jsx(Ge,{}),k.map(g=>s.jsx(pe,{onClick:()=>N(m.id,g.id),children:s.jsxs("span",{className:"flex items-center gap-2",children:[g.name,s.jsx("span",{className:B("text-[10px] px-1.5 py-0.5 rounded-full capitalize",g.status==="active"?"bg-blue-500/10 text-blue-500":"bg-muted text-muted-foreground"),children:g.status})]})},g.id))]})]})})]},m.id))})]})}),s.jsx("div",{className:"flex items-center justify-between text-xs text-muted-foreground",children:s.jsxs("span",{children:[y.length," ticket",y.length!==1?"s":""," ",r?"total":"in backlog"]})})]})}const qu=[{id:"overview",label:"Overview",icon:s.jsx(yo,{className:"h-4 w-4"})},{id:"board",label:"Board",icon:s.jsx(ko,{className:"h-4 w-4"})},{id:"backlog",label:"Backlog",icon:s.jsx(_r,{className:"h-4 w-4"})},{id:"table",label:"Table",icon:s.jsx(uo,{className:"h-4 w-4"})}];function xf(){const{id:e}=us(),t=fs(),n=Dt(),[r,a]=h.useState(!1),[o,l]=h.useState("overview"),[i,c]=h.useState(),{data:d,isLoading:f}=Ae({queryKey:["project",e],queryFn:()=>ie.projects.get(e,"all"),enabled:!!e}),{data:u,isLoading:p}=Ae({queryKey:["sprints",e],queryFn:()=>ie.projects.sprints.list(e),enabled:!!e}),x=d,w=Ve({mutationFn:m=>ie.projects.sprints.start(e,m),onSuccess:()=>{ne.success("Sprint started"),n.invalidateQueries({queryKey:["sprints",e]})},onError:m=>{ne.error(m instanceof Error?m.message:"Failed to start sprint")}}),j=Ve({mutationFn:m=>ie.projects.sprints.complete(e,m),onSuccess:()=>{ne.success("Sprint completed"),n.invalidateQueries({queryKey:["sprints",e]})},onError:m=>{ne.error(m instanceof Error?m.message:"Failed to complete sprint")}}),b=u?.sprints||[];if(f||p)return s.jsx("div",{className:"flex items-center justify-center h-64",children:s.jsx(Be,{className:"h-8 w-8 animate-spin text-muted-foreground"})});if(!x)return s.jsxs("div",{className:"flex flex-col items-center justify-center h-64 gap-4",children:[s.jsx("p",{className:"text-muted-foreground",children:"Project not found"}),s.jsx(L,{variant:"outline",onClick:()=>t("/projects"),children:"Back to Projects"})]});const k=m=>{switch(m){case"planning":return s.jsx(Kt,{className:"h-4 w-4 text-muted-foreground"});case"active":return s.jsx(In,{className:"h-4 w-4 text-blue-500"});case"completed":return s.jsx(Ht,{className:"h-4 w-4 text-green-500"});case"cancelled":return s.jsx(vo,{className:"h-4 w-4 text-red-500"});default:return null}},N=m=>{switch(m){case"planning":return"bg-muted text-muted-foreground";case"active":return"bg-blue-500/10 text-blue-500";case"completed":return"bg-green-500/10 text-green-500";case"cancelled":return"bg-red-500/10 text-red-500";default:return"bg-muted text-muted-foreground"}};return s.jsxs("div",{className:"space-y-6",children:[s.jsxs("div",{className:"flex items-start justify-between",children:[s.jsxs("div",{className:"flex items-start gap-4",children:[s.jsx(L,{variant:"ghost",size:"icon",onClick:()=>t("/projects"),children:s.jsx(ms,{className:"h-4 w-4"})}),s.jsxs("div",{className:"flex items-center gap-4",children:[s.jsx(hs,{icon:x.icon,color:x.color,size:"lg"}),s.jsxs("div",{children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("span",{className:"text-xs font-mono font-bold px-2 py-0.5 rounded",style:{backgroundColor:`${x.color}20`,color:x.color},children:x.key}),x.status==="archived"&&s.jsx("span",{className:"text-xs bg-muted text-muted-foreground px-2 py-0.5 rounded",children:"Archived"})]}),s.jsx("h1",{className:"text-2xl font-bold mt-1",children:x.name}),x.description&&s.jsx("p",{className:"text-muted-foreground mt-1",children:x.description})]})]})]}),s.jsx(L,{variant:"outline",size:"icon",children:s.jsx(go,{className:"h-4 w-4"})})]}),s.jsx("div",{className:"flex items-center gap-1 p-1 bg-muted/50 rounded-lg w-fit",children:qu.map(m=>s.jsxs("button",{onClick:()=>l(m.id),className:B("flex items-center gap-2 px-4 py-2 rounded-md text-sm font-medium transition-all",o===m.id?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:[m.icon,m.label]},m.id))}),o==="overview"&&s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-4 gap-4",children:[s.jsx("div",{className:"bg-card rounded-xl border border-border p-4",children:s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"w-10 h-10 rounded-lg bg-primary/10 flex items-center justify-center",children:s.jsx(kn,{className:"h-5 w-5 text-primary"})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-2xl font-bold",children:x.stats?.totalTickets||0}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Total Tickets"})]})]})}),s.jsx("div",{className:"bg-card rounded-xl border border-border p-4",children:s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"w-10 h-10 rounded-lg bg-amber-500/10 flex items-center justify-center",children:s.jsx(Kt,{className:"h-5 w-5 text-amber-500"})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-2xl font-bold",children:x.stats?.openTickets||0}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Open"})]})]})}),s.jsx("div",{className:"bg-card rounded-xl border border-border p-4",children:s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"w-10 h-10 rounded-lg bg-blue-500/10 flex items-center justify-center",children:s.jsx(In,{className:"h-5 w-5 text-blue-500"})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-2xl font-bold",children:x.stats?.inProgressTickets||0}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"In Progress"})]})]})}),s.jsx("div",{className:"bg-card rounded-xl border border-border p-4",children:s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"w-10 h-10 rounded-lg bg-green-500/10 flex items-center justify-center",children:s.jsx(Ht,{className:"h-5 w-5 text-green-500"})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-2xl font-bold",children:x.stats?.doneTickets||0}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Done"})]})]})})]}),b.length>0&&s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[b.find(m=>m.status==="active")&&s.jsx("div",{className:"bg-card rounded-xl border border-border p-4",children:s.jsx(_u,{sprintId:b.find(m=>m.status==="active").id})}),s.jsx("div",{className:"bg-card rounded-xl border border-border p-4",children:s.jsx(Fu,{projectId:e})})]}),s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx("h2",{className:"text-lg font-semibold",children:"Sprints"}),s.jsxs(L,{size:"sm",className:"gap-2",onClick:()=>a(!0),children:[s.jsx(yt,{className:"h-4 w-4"}),"New Sprint"]})]}),b.length===0?s.jsxs("div",{className:"flex flex-col items-center justify-center h-48 bg-muted/30 rounded-xl border border-dashed border-border",children:[s.jsx(Gt,{className:"h-10 w-10 text-muted-foreground/50 mb-3"}),s.jsx("p",{className:"text-muted-foreground mb-3",children:"No sprints yet"}),s.jsxs(L,{variant:"outline",size:"sm",className:"gap-2",onClick:()=>a(!0),children:[s.jsx(yt,{className:"h-4 w-4"}),"Create first sprint"]})]}):s.jsx("div",{className:"space-y-3",children:b.map(m=>s.jsx("div",{className:"bg-card rounded-xl border border-border p-4 hover:border-primary/30 transition-colors",children:s.jsxs("div",{className:"flex items-start justify-between",children:[s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"mt-0.5",children:k(m.status)}),s.jsxs("div",{children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("h3",{className:"font-medium",children:m.name}),s.jsx("span",{className:B("text-xs px-2 py-0.5 rounded-full capitalize",N(m.status)),children:m.status})]}),m.goal&&s.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:m.goal}),s.jsxs("div",{className:"flex items-center gap-4 mt-2 text-xs text-muted-foreground",children:[m.startDate&&s.jsxs("span",{className:"flex items-center gap-1",children:[s.jsx(Mt,{className:"h-3 w-3"}),H(new Date(m.startDate),"MMM d"),m.endDate&&` - ${H(new Date(m.endDate),"MMM d")}`]}),m.capacity&&s.jsxs("span",{children:[m.capacity," points"]})]})]})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[m.status==="planning"&&s.jsx(L,{size:"sm",variant:"outline",onClick:()=>w.mutate(m.id),disabled:w.isPending,children:"Start Sprint"}),m.status==="active"&&s.jsx(L,{size:"sm",variant:"outline",onClick:()=>j.mutate(m.id),disabled:j.isPending,children:"Complete"}),s.jsx(L,{variant:"ghost",size:"icon",children:s.jsx(Fr,{className:"h-4 w-4"})})]})]})},m.id))})]}),x.externalLinks&&x.externalLinks.length>0&&s.jsxs("div",{className:"space-y-4",children:[s.jsx("h2",{className:"text-lg font-semibold",children:"Connected Integrations"}),s.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:x.externalLinks.map(m=>s.jsxs("a",{href:m.externalUrl,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-3 p-3 bg-card rounded-lg border border-border hover:border-primary/30 transition-colors",children:[s.jsxs("div",{className:"w-8 h-8 rounded-lg bg-muted flex items-center justify-center",children:[m.platform==="github"&&"🐙",m.platform==="linear"&&"📐",m.platform==="jira"&&"🔷",m.platform==="plane"&&"✈️"]}),s.jsxs("div",{className:"flex-1",children:[s.jsx("p",{className:"font-medium capitalize",children:m.platform}),s.jsx("p",{className:"text-xs text-muted-foreground",children:m.externalId})]}),m.syncEnabled&&s.jsx("span",{className:"text-xs bg-green-500/10 text-green-500 px-2 py-0.5 rounded-full",children:"Sync Active"})]},m.id))})]}),s.jsx("div",{className:"flex items-center gap-3 pt-4 border-t border-border",children:s.jsx(gt,{to:`/tickets?projectId=${e}`,children:s.jsxs(L,{variant:"outline",className:"gap-2",children:[s.jsx(kn,{className:"h-4 w-4"}),"View Tickets"]})})})]}),o==="board"&&s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("label",{className:"text-sm font-medium text-muted-foreground",children:"Sprint:"}),s.jsxs("select",{value:i||"",onChange:m=>c(m.target.value||void 0),className:"field",children:[s.jsx("option",{value:"",children:"All Tickets"}),b.map(m=>s.jsxs("option",{value:m.id,children:[m.name," ",m.status==="active"?"(Active)":""]},m.id))]})]}),s.jsx(Ru,{projectId:e,sprintId:i})]}),o==="backlog"&&s.jsx(tr,{projectId:e,sprints:b,onCreateTicket:()=>t(`/tickets?projectId=${e}&create=true`)}),o==="table"&&s.jsx(tr,{projectId:e,sprints:b,showAllTickets:!0,onCreateTicket:()=>t(`/tickets?projectId=${e}&create=true`)}),s.jsx(Au,{projectId:e,open:r,onOpenChange:a})]})}export{xf as ProjectDetail};
|
|
1
|
+
import{r as h,b as M,j as s,L as ht,l as rs,u as as}from"./vendor-react-Mc5_kfYG.js";import{u as Nt,c as Ve,b as Ae}from"./vendor-query-C0p7b53x.js";import{c as Dt,ae as tn,aW as ss,j as nr,h as B,i as L,X as rr,x as os,t as ne,k as ie,Z as pt,l as Le,I as xt,a5 as is,L as Be,n as ar,g as Kt,Q as ls,C as Ht,Y as ft,D as qe,o as Ke,p as He,q as pe,ah as Ge,E as cs,ag as sr,a as jn,w as ds,S as us,P as gt,aX as fs,r as ms}from"./index-sEBN7w8J.js";import{T as Gt,a as hs,b as kn}from"./ProjectIcon-TDuliqwg.js";import{D as ps,b as xs,c as gs,d as ys,e as vs}from"./dialog-lDg4NvMV.js";import{T as Nn}from"./textarea-CxDiKFXZ.js";import{P as bs,a as ws,b as js}from"./popover-CFHZf3pE.js";import{C as Mt}from"./calendar-buq77TaS.js";import{T as Ut}from"./trending-down-BCezC1z2.js";import{aW as ks,aG as _e,ab as Vt,aL as xe,al as Ns,B as Ot,aN as Ds,aX as Ms,aY as Os,F as Je,ar as et,aZ as Ss,H as ge,a_ as Cs,a$ as Ps,b0 as Dn,b1 as Ws,aJ as or,Z as tt,J as Fe,b2 as Es,b3 as Is,b4 as Mn,b5 as Ts,c as ce,o as Me,b6 as As,ah as Ne,ak as De,ao as nn,am as _s,an as yt,aq as ir,E as lr,as as cr,at as dr,z as St,K as ur,av as fr,ay as mr,az as Fs,aw as hr,aA as Bs,aB as Ys,aC as pr,aD as Ls,j as Ct,aE as On,M as xr,N as gr,P as ee,a5 as yr,aI as vr,a4 as br,D as wr,aK as zs,a6 as Sn,A as $s,b7 as Rs,af as qs,ai as Pe,aj as We,b8 as jr,b9 as Ks,ba as Hs,ap as Cn,bb as Gs,bc as Pn,au as Us,G as Vs,a as Qs,bd as Xs,be as Zs,bf as Wn,U as kr,_ as Nr,$ as Dr,a0 as Mr,a8 as Js,a3 as Or,V as eo,aH as to,a7 as En,aV as Sr,aU as Cr,R as Pr,C as Wr,X as Er,Y as Ir,T as Tr,L as Ar}from"./CartesianChart-piKQsTAR.js";import{T as no}from"./trending-up-C5OYX2k2.js";import{c as ro,a as ao,d as so}from"./element-adapter-DL0DQilL.js";import{S as oo,a as io,b as lo,c as co,T as uo}from"./sheet-7aUJkyzU.js";import{C as fo,I as _r}from"./inbox-ehtOptTV.js";import{E as Fr}from"./ellipsis-vT-5SVIp.js";import{a as mo,B as ho}from"./bug-3WX0394-.js";import{L as po}from"./layers-C6Mhf8Nk.js";import{F as xo}from"./funnel-uZkoSPP-.js";import{S as go}from"./settings-2-CkRNqkxj.js";import{P as In}from"./play-tjy5jMQX.js";import{L as yo}from"./layout-dashboard-BRUM0kpT.js";import{C as vo}from"./circle-x-ByXtwR6Y.js";import"./vendor-ui-CXPAUBFv.js";import"./smartphone-5FghiXpA.js";import"./wrench-CjxjP6ok.js";import"./globe-D_WpJdsj.js";import"./lightbulb-CN2q1O5l.js";import"./rocket--8ZHgdXJ.js";import"./defineProperty-CoXUr7_6.js";const bo=[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],wo=Dt("circle-play",bo);const jo=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"M15 3v18",key:"14nvp0"}]],ko=Dt("columns-3",jo);const No=[["path",{d:"M12.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v9.34",key:"o6klzx"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10.378 12.622a1 1 0 0 1 3 3.003L8.36 20.637a2 2 0 0 1-.854.506l-2.867.837a.5.5 0 0 1-.62-.62l.836-2.869a2 2 0 0 1 .506-.853z",key:"zhnas1"}]],Do=Dt("file-pen",No);const Mo=[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]],Oo=Dt("flag",Mo);var Tn=(e,t,n)=>{var r=n??e;if(!_e(r))return Vt(r,t,0)},So=(e,t,n)=>{var r={},a=e.filter(ks),o=e.filter(d=>d.stackId==null),l=a.reduce((d,f)=>{var u=d[f.stackId];return u==null&&(u=[]),u.push(f),d[f.stackId]=u,d},r),i=Object.entries(l).map(d=>{var f,[u,p]=d,x=p.map(j=>j.dataKey),w=Tn(t,n,(f=p[0])===null||f===void 0?void 0:f.barSize);return{stackId:u,dataKeys:x,barSize:w}}),c=o.map(d=>{var f=[d.dataKey].filter(p=>p!=null),u=Tn(t,n,d.barSize);return{stackId:void 0,dataKeys:f,barSize:u}});return[...i,...c]};function An(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function lt(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?An(Object(n),!0).forEach(function(r){Co(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):An(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Co(e,t,n){return(t=Po(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Po(e){var t=Wo(e,"string");return typeof t=="symbol"?t:t+""}function Wo(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Eo(e,t,n,r,a){var o,l=r.length;if(!(l<1)){var i=Vt(e,n,0,!0),c,d=[];if(xe((o=r[0])===null||o===void 0?void 0:o.barSize)){var f=!1,u=n/l,p=r.reduce((k,N)=>k+(N.barSize||0),0);p+=(l-1)*i,p>=n&&(p-=(l-1)*i,i=0),p>=n&&u>0&&(f=!0,u*=.9,p=l*u);var x=(n-p)/2>>0,w={offset:x-i,size:0};c=r.reduce((k,N)=>{var m,g={stackId:N.stackId,dataKeys:N.dataKeys,position:{offset:w.offset+w.size+i,size:f?u:(m=N.barSize)!==null&&m!==void 0?m:0}},v=[...k,g];return w=g.position,v},d)}else{var j=Vt(t,n,0,!0);n-2*j-(l-1)*i<=0&&(i=0);var b=(n-2*j-(l-1)*i)/l;b>1&&(b>>=0);var y=xe(a)?Math.min(b,a):b;c=r.reduce((k,N,m)=>[...k,{stackId:N.stackId,dataKeys:N.dataKeys,position:{offset:j+(b+i)*m+(b-y)/2,size:y}}],d)}return c}}var Io=(e,t,n,r,a,o,l)=>{var i=_e(l)?t:l,c=Eo(n,r,a!==o?a:o,e,i);return a!==o&&c!=null&&(c=c.map(d=>lt(lt({},d),{},{position:lt(lt({},d.position),{},{offset:d.position.offset-a/2})}))),c},To=(e,t)=>{var n=Ns(t);if(!(!e||n==null||t==null)){var{stackId:r}=t;if(r!=null){var a=e[r];if(a){var{stackedData:o}=a;if(o)return o.find(l=>l.key===n)}}}},Ao=(e,t)=>{if(!(e==null||t==null)){var n=e.find(r=>r.stackId===t.stackId&&t.dataKey!=null&&r.dataKeys.includes(t.dataKey));if(n!=null)return n.position}};function _o(e,t){return e&&typeof e=="object"&&"zIndex"in e&&typeof e.zIndex=="number"&&xe(e.zIndex)?e.zIndex:t}class Fo{constructor(t){var{x:n,y:r}=t;this.xAxisScale=n,this.yAxisScale=r}map(t,n){var r,a,{position:o}=n;return{x:(r=this.xAxisScale.map(t.x,{position:o}))!==null&&r!==void 0?r:0,y:(a=this.yAxisScale.map(t.y,{position:o}))!==null&&a!==void 0?a:0}}mapWithFallback(t,n){var r,a,{position:o,fallback:l}=n,i,c;return l==="rangeMin"?i=this.yAxisScale.rangeMin():l==="rangeMax"?i=this.yAxisScale.rangeMax():i=0,l==="rangeMin"?c=this.xAxisScale.rangeMin():l==="rangeMax"?c=this.xAxisScale.rangeMax():c=0,{x:(r=this.xAxisScale.map(t.x,{position:o}))!==null&&r!==void 0?r:c,y:(a=this.yAxisScale.map(t.y,{position:o}))!==null&&a!==void 0?a:i}}isInRange(t){var{x:n,y:r}=t,a=n==null||this.xAxisScale.isInRange(n),o=r==null||this.yAxisScale.isInRange(r);return a&&o}}function _n(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Fn(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?_n(Object(n),!0).forEach(function(r){Bo(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_n(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Bo(e,t,n){return(t=Yo(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Yo(e){var t=Lo(e,"string");return typeof t=="symbol"?t:t+""}function Lo(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function vt(){return vt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},vt.apply(null,arguments)}var zo=(e,t)=>{var n;if(h.isValidElement(e))n=h.cloneElement(e,t);else if(typeof e=="function")n=e(t);else{if(!xe(t.x1)||!xe(t.y1)||!xe(t.x2)||!xe(t.y2))return null;n=h.createElement("line",vt({},t,{className:"recharts-reference-line-line"}))}return n},$o=(e,t,n,r,a,o)=>{var{x:l,width:i}=o,c=a.map(e,{position:n});if(!xe(c)||t==="discard"&&!a.isInRange(c))return null;var d=[{x:l+i,y:c},{x:l,y:c}];return r==="left"?d.reverse():d},Ro=(e,t,n,r,a,o)=>{var{y:l,height:i}=o,c=a.map(e,{position:n});if(!xe(c)||t==="discard"&&!a.isInRange(c))return null;var d=[{x:c,y:l+i},{x:c,y:l}];return r==="top"?d.reverse():d},qo=(e,t,n,r)=>{var a=[r.mapWithFallback(e[0],{position:n,fallback:"rangeMin"}),r.mapWithFallback(e[1],{position:n,fallback:"rangeMax"})];return t==="discard"&&a.some(o=>!r.isInRange(o))?null:a},Ko=(e,t,n,r,a,o,l)=>{var{x:i,y:c,segment:d,ifOverflow:f}=l,u=Mn(i),p=Mn(c);return p?$o(c,f,r,o,t,n):u?Ro(i,f,r,a,e,n):d!=null&&d.length===2?qo(d,f,r,new Fo({x:e,y:t})):null};function Ho(e){var t=Ds();return h.useEffect(()=>(t(Ms(e)),()=>{t(Os(e))})),null}function Go(e){var{xAxisId:t,yAxisId:n,shape:r,className:a,ifOverflow:o}=e,l=et(),i=Ss(),c=ge(D=>Cs(D,t)),d=ge(D=>Ps(D,n)),f=ge(D=>Dn(D,"xAxis",t,l)),u=ge(D=>Dn(D,"yAxis",n,l)),p=Ws();if(!i||!p||c==null||d==null||f==null||u==null)return null;var x=Ko(f,u,p,e.position,c.orientation,d.orientation,e);if(!x)return null;var w=x[0],j=x[1];if(w==null||j==null)return null;var{x:b,y}=w,{x:k,y:N}=j,m=o==="hidden"?"url(#".concat(i,")"):void 0,g=Fn(Fn({clipPath:m},or(e)),{},{x1:b,y1:y,x2:k,y2:N}),v=Ts({x1:b,y1:y,x2:k,y2:N});return h.createElement(tt,{zIndex:e.zIndex},h.createElement(Fe,{className:tn("recharts-reference-line",a)},zo(r,g),h.createElement(Es,vt({},v,{lowerWidth:v.width,upperWidth:v.width}),h.createElement(Is,{label:e.label}),e.children)))}var Uo={ifOverflow:"discard",xAxisId:0,yAxisId:0,fill:"none",label:!1,stroke:"#ccc",fillOpacity:1,strokeWidth:1,position:"middle",zIndex:Je.line};function rn(e){var t=Ot(e,Uo);return h.createElement(h.Fragment,null,h.createElement(Ho,{yAxisId:t.yAxisId,xAxisId:t.xAxisId,ifOverflow:t.ifOverflow,x:t.x,y:t.y,segment:t.segment}),h.createElement(Go,t))}rn.displayName="ReferenceLine";var Vo=["children"];function Qo(e,t){if(e==null)return{};var n,r,a=Xo(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function Xo(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var Zo={data:[],xAxisId:"xAxis-0",yAxisId:"yAxis-0",dataPointFormatter:()=>({x:0,y:0,value:0}),errorBarOffset:0},Jo=h.createContext(Zo);function Br(e){var{children:t}=e,n=Qo(e,Vo);return h.createElement(Jo.Provider,{value:n},t)}var Yr=(e,t,n,r)=>Ne(e,"xAxis",t,r),Lr=(e,t,n,r)=>De(e,"xAxis",t,r),zr=(e,t,n,r)=>Ne(e,"yAxis",n,r),$r=(e,t,n,r)=>De(e,"yAxis",n,r),ei=ce([Me,Yr,zr,Lr,$r],(e,t,n,r,a)=>_s(e,"xAxis")?yt(t,r,!1):yt(n,a,!1)),ti=(e,t,n,r,a)=>a;function ni(e){return e.type==="line"}var ri=ce([nn,ti],(e,t)=>e.filter(ni).find(n=>n.id===t)),ai=ce([Me,Yr,zr,Lr,$r,ri,ei,As],(e,t,n,r,a,o,l,i)=>{var{chartData:c,dataStartIndex:d,dataEndIndex:f}=i;if(!(o==null||t==null||n==null||r==null||a==null||r.length===0||a.length===0||l==null||e!=="horizontal"&&e!=="vertical")){var{dataKey:u,data:p}=o,x;if(p!=null&&p.length>0?x=p:x=c?.slice(d,f+1),x!=null)return Ni({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:a,dataKey:u,bandSize:l,displayedData:x})}}),si=["id"],oi=["type","layout","connectNulls","needClip","shape"],ii=["activeDot","animateNewValues","animationBegin","animationDuration","animationEasing","connectNulls","dot","hide","isAnimationActive","label","legendType","xAxisId","yAxisId","id"];function Qe(){return Qe=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Qe.apply(null,arguments)}function Bn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function ue(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Bn(Object(n),!0).forEach(function(r){li(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Bn(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function li(e,t,n){return(t=ci(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ci(e){var t=di(e,"string");return typeof t=="symbol"?t:t+""}function di(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function an(e,t){if(e==null)return{};var n,r,a=ui(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function ui(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var fi=e=>{var{dataKey:t,name:n,stroke:r,legendType:a,hide:o}=e;return[{inactive:o,dataKey:t,type:a,color:r,value:St(n,t),payload:e}]},mi=h.memo(e=>{var{dataKey:t,data:n,stroke:r,strokeWidth:a,fill:o,name:l,hide:i,unit:c,tooltipType:d,id:f}=e,u={dataDefinedOnItem:n,getPosition:fr,settings:{stroke:r,strokeWidth:a,fill:o,dataKey:t,nameKey:void 0,name:St(l,t),hide:i,type:d,color:r,unit:c,graphicalItemId:f}};return h.createElement(ur,{tooltipEntrySettings:u})}),Rr=(e,t)=>"".concat(t,"px ").concat(e-t,"px");function hi(e,t){for(var n=e.length%2!==0?[...e,0]:e,r=[],a=0;a<t;++a)r=[...r,...n];return r}var pi=(e,t,n)=>{var r=n.reduce((x,w)=>x+w);if(!r)return Rr(t,e);for(var a=Math.floor(e/r),o=e%r,l=t-e,i=[],c=0,d=0;c<n.length;d+=(f=n[c])!==null&&f!==void 0?f:0,++c){var f,u=n[c];if(u!=null&&d+u>o){i=[...n.slice(0,c),o-d];break}}var p=i.length%2===0?[0,l]:[l];return[...hi(n,a),...i,...p].map(x=>"".concat(x,"px")).join(", ")};function xi(e){var{clipPathId:t,points:n,props:r}=e,{dot:a,dataKey:o,needClip:l}=r,{id:i}=r,c=an(r,si),d=wr(c);return h.createElement(zs,{points:n,dot:a,className:"recharts-line-dots",dotClassName:"recharts-line-dot",dataKey:o,baseProps:d,needClip:l,clipPathId:t})}function gi(e){var{showLabels:t,children:n,points:r}=e,a=h.useMemo(()=>r?.map(o=>{var l,i,c={x:(l=o.x)!==null&&l!==void 0?l:0,y:(i=o.y)!==null&&i!==void 0?i:0,width:0,lowerWidth:0,upperWidth:0,height:0};return ue(ue({},c),{},{value:o.value,payload:o.payload,viewBox:c,parentViewBox:void 0,fill:void 0})}),[r]);return h.createElement(vr,{value:t?a:void 0},n)}function Yn(e){var{clipPathId:t,pathRef:n,points:r,strokeDasharray:a,props:o}=e,{type:l,layout:i,connectNulls:c,needClip:d,shape:f}=o,u=an(o,oi),p=ue(ue({},or(u)),{},{fill:"none",className:"recharts-line-curve",clipPath:d?"url(#clipPath-".concat(t,")"):void 0,points:r,type:l,layout:i,connectNulls:c,strokeDasharray:a??o.strokeDasharray});return h.createElement(h.Fragment,null,r?.length>1&&h.createElement(br,Qe({shapeType:"curve",option:f},p,{pathRef:n})),h.createElement(xi,{points:r,clipPathId:t,props:o}))}function yi(e){try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch{return 0}}function vi(e){var{clipPathId:t,props:n,pathRef:r,previousPointsRef:a,longestAnimatedLengthRef:o}=e,{points:l,strokeDasharray:i,isAnimationActive:c,animationBegin:d,animationDuration:f,animationEasing:u,animateNewValues:p,width:x,height:w,onAnimationEnd:j,onAnimationStart:b}=n,y=a.current,k=xr(l,"recharts-line-"),N=h.useRef(k),[m,g]=h.useState(!1),v=!m,D=h.useCallback(()=>{typeof j=="function"&&j(),g(!1)},[j]),O=h.useCallback(()=>{typeof b=="function"&&b(),g(!0)},[b]),C=yi(r.current),E=h.useRef(0);N.current!==k&&(E.current=o.current,N.current=k);var G=E.current;return h.createElement(gi,{points:l,showLabels:v},n.children,h.createElement(gr,{animationId:k,begin:d,duration:f,isActive:c,easing:u,onAnimationEnd:D,onAnimationStart:O,key:k},K=>{var R=ee(G,C+G,K),q=Math.min(R,C),U;if(c)if(i){var ae="".concat(i).split(/[,\s]+/gim).map(Y=>parseFloat(Y));U=pi(q,C,ae)}else U=Rr(C,q);else U=i==null?void 0:String(i);if(K>0&&C>0&&(a.current=l,o.current=Math.max(o.current,q)),y){var we=y.length/l.length,he=K===1?l:l.map((Y,V)=>{var Z=Math.floor(V*we);if(y[Z]){var je=y[Z];return ue(ue({},Y),{},{x:ee(je.x,Y.x,K),y:ee(je.y,Y.y,K)})}return p?ue(ue({},Y),{},{x:ee(x*2,Y.x,K),y:ee(w/2,Y.y,K)}):ue(ue({},Y),{},{x:Y.x,y:Y.y})});return a.current=he,h.createElement(Yn,{props:n,points:he,clipPathId:t,pathRef:r,strokeDasharray:U})}return h.createElement(Yn,{props:n,points:l,clipPathId:t,pathRef:r,strokeDasharray:U})}),h.createElement(yr,{label:n.label}))}function bi(e){var{clipPathId:t,props:n}=e,r=h.useRef(null),a=h.useRef(0),o=h.useRef(null);return h.createElement(vi,{props:n,clipPathId:t,previousPointsRef:r,longestAnimatedLengthRef:a,pathRef:o})}var wi=(e,t)=>{var n,r;return{x:(n=e.x)!==null&&n!==void 0?n:void 0,y:(r=e.y)!==null&&r!==void 0?r:void 0,value:e.value,errorVal:Ct(e.payload,t)}};class ji extends h.Component{render(){var{hide:t,dot:n,points:r,className:a,xAxisId:o,yAxisId:l,top:i,left:c,width:d,height:f,id:u,needClip:p,zIndex:x}=this.props;if(t)return null;var w=tn("recharts-line",a),j=u,{r:b,strokeWidth:y}=Bs(n),k=Ys(n),N=b*2+y,m=p?"url(#clipPath-".concat(k?"":"dots-").concat(j,")"):void 0;return h.createElement(tt,{zIndex:x},h.createElement(Fe,{className:w},p&&h.createElement("defs",null,h.createElement(pr,{clipPathId:j,xAxisId:o,yAxisId:l}),!k&&h.createElement("clipPath",{id:"clipPath-dots-".concat(j)},h.createElement("rect",{x:c-N/2,y:i-N/2,width:d+N,height:f+N}))),h.createElement(Br,{xAxisId:o,yAxisId:l,data:r,dataPointFormatter:wi,errorBarOffset:0},h.createElement(bi,{props:this.props,clipPathId:j}))),h.createElement(Ls,{activeDot:this.props.activeDot,points:r,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:m}))}}var qr={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!0,fill:"#fff",hide:!1,isAnimationActive:"auto",label:!1,legendType:"line",stroke:"#3182bd",strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:Je.line,type:"linear"};function ki(e){var t=Ot(e,qr),{activeDot:n,animateNewValues:r,animationBegin:a,animationDuration:o,animationEasing:l,connectNulls:i,dot:c,hide:d,isAnimationActive:f,label:u,legendType:p,xAxisId:x,yAxisId:w,id:j}=t,b=an(t,ii),{needClip:y}=mr(x,w),k=Fs(),N=hr(),m=et(),g=ge(E=>ai(E,x,w,m,j));if(N!=="horizontal"&&N!=="vertical"||g==null||k==null)return null;var{height:v,width:D,x:O,y:C}=k;return h.createElement(ji,Qe({},b,{id:j,connectNulls:i,dot:c,activeDot:n,animateNewValues:r,animationBegin:a,animationDuration:o,animationEasing:l,isAnimationActive:f,hide:d,label:u,legendType:p,xAxisId:x,yAxisId:w,points:g,layout:N,height:v,width:D,left:O,top:C,needClip:y}))}function Ni(e){var{layout:t,xAxis:n,yAxis:r,xAxisTicks:a,yAxisTicks:o,dataKey:l,bandSize:i,displayedData:c}=e;return c.map((d,f)=>{var u=Ct(d,l);if(t==="horizontal"){var p=On({axis:n,ticks:a,bandSize:i,entry:d,index:f}),x=_e(u)?null:r.scale.map(u);return{x:p,y:x??null,value:u,payload:d}}var w=_e(u)?null:n.scale.map(u),j=On({axis:r,ticks:o,bandSize:i,entry:d,index:f});return w==null||j==null?null:{x:w,y:j,value:u,payload:d}}).filter(Boolean)}function Di(e){var t=Ot(e,qr),n=et();return h.createElement(lr,{id:t.id,type:"line"},r=>h.createElement(h.Fragment,null,h.createElement(cr,{legendPayload:fi(t)}),h.createElement(mi,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:r}),h.createElement(dr,{type:"line",id:r,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,hide:t.hide,isPanorama:n}),h.createElement(ki,Qe({},t,{id:r}))))}var Qt=h.memo(Di,ir);Qt.displayName="Line";var Mi="Invariant failed";function Oi(e,t){throw new Error(Mi)}function Xt(){return Xt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Xt.apply(null,arguments)}function bt(e){return h.createElement(br,Xt({shapeType:"rectangle",activeClassName:"recharts-active-bar"},e))}var Si=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return(r,a)=>{if(Sn(t))return t;var o=Sn(r)||_e(r);return o?t(r,a):(o||Oi(),n)}},Ci=(e,t,n)=>n,Pi=(e,t)=>t,nt=ce([nn,Pi],(e,t)=>e.filter(n=>n.type==="bar").find(n=>n.id===t)),Wi=ce([nt],e=>e?.maxBarSize),Ei=(e,t,n,r)=>r,Ii=ce([Me,nn,Pe,We,Ci],(e,t,n,r,a)=>t.filter(o=>e==="horizontal"?o.xAxisId===n:o.yAxisId===r).filter(o=>o.isPanorama===a).filter(o=>o.hide===!1).filter(o=>o.type==="bar")),Ti=(e,t,n)=>{var r=Me(e),a=Pe(e,t),o=We(e,t);if(!(a==null||o==null))return r==="horizontal"?Cn(e,"yAxis",o,n):Cn(e,"xAxis",a,n)},Ai=(e,t)=>{var n=Me(e),r=Pe(e,t),a=We(e,t);if(!(r==null||a==null))return n==="horizontal"?Pn(e,"xAxis",r):Pn(e,"yAxis",a)},_i=ce([Ii,Gs,Ai],So),Fi=(e,t,n)=>{var r,a,o=nt(e,t);if(o==null)return 0;var l=Pe(e,t),i=We(e,t);if(l==null||i==null)return 0;var c=Me(e),d=jr(e),{maxBarSize:f}=o,u=_e(f)?d:f,p,x;return c==="horizontal"?(p=Ne(e,"xAxis",l,n),x=De(e,"xAxis",l,n)):(p=Ne(e,"yAxis",i,n),x=De(e,"yAxis",i,n)),(r=(a=yt(p,x,!0))!==null&&a!==void 0?a:u)!==null&&r!==void 0?r:0},Kr=(e,t,n)=>{var r=Me(e),a=Pe(e,t),o=We(e,t);if(!(a==null||o==null)){var l,i;return r==="horizontal"?(l=Ne(e,"xAxis",a,n),i=De(e,"xAxis",a,n)):(l=Ne(e,"yAxis",o,n),i=De(e,"yAxis",o,n)),yt(l,i)}},Bi=ce([_i,jr,Ks,Hs,Fi,Kr,Wi],Io),Yi=(e,t,n)=>{var r=Pe(e,t);if(r!=null)return Ne(e,"xAxis",r,n)},Li=(e,t,n)=>{var r=We(e,t);if(r!=null)return Ne(e,"yAxis",r,n)},zi=(e,t,n)=>{var r=Pe(e,t);if(r!=null)return De(e,"xAxis",r,n)},$i=(e,t,n)=>{var r=We(e,t);if(r!=null)return De(e,"yAxis",r,n)},Ri=ce([Bi,nt],Ao),qi=ce([Ti,nt],To),Ki=ce([$s,Rs,Yi,Li,zi,$i,Ri,Me,qs,Kr,qi,nt,Ei],(e,t,n,r,a,o,l,i,c,d,f,u,p)=>{var{chartData:x,dataStartIndex:w,dataEndIndex:j}=c;if(!(u==null||l==null||t==null||i!=="horizontal"&&i!=="vertical"||n==null||r==null||a==null||o==null||d==null)){var{data:b}=u,y;if(b!=null&&b.length>0?y=b:y=x?.slice(w,j+1),y!=null)return vl({layout:i,barSettings:u,pos:l,parentViewBox:t,bandSize:d,xAxis:n,yAxis:r,xAxisTicks:a,yAxisTicks:o,stackedData:f,displayedData:y,offset:e,cells:p,dataStartIndex:w})}}),Hi=["index"];function Zt(){return Zt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Zt.apply(null,arguments)}function Gi(e,t){if(e==null)return{};var n,r,a=Ui(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function Ui(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var Hr=h.createContext(void 0),Vi=e=>{var t=h.useContext(Hr);if(t!=null)return t.stackId;if(e!=null)return Us(e)},Qi=(e,t)=>"recharts-bar-stack-clip-path-".concat(e,"-").concat(t),Xi=e=>{var t=h.useContext(Hr);if(t!=null){var{stackId:n}=t;return"url(#".concat(Qi(n,e),")")}},Gr=e=>{var{index:t}=e,n=Gi(e,Hi),r=Xi(t);return h.createElement(Fe,Zt({className:"recharts-bar-stack-layer",clipPath:r},n))},Zi=["onMouseEnter","onMouseLeave","onClick"],Ji=["value","background","tooltipPosition"],el=["id"],tl=["onMouseEnter","onClick","onMouseLeave"];function be(){return be=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},be.apply(null,arguments)}function Ln(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function X(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Ln(Object(n),!0).forEach(function(r){nl(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ln(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function nl(e,t,n){return(t=rl(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function rl(e){var t=al(e,"string");return typeof t=="symbol"?t:t+""}function al(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function wt(e,t){if(e==null)return{};var n,r,a=sl(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function sl(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var ol=e=>{var{dataKey:t,name:n,fill:r,legendType:a,hide:o}=e;return[{inactive:o,dataKey:t,type:a,color:r,value:St(n,t),payload:e}]},il=h.memo(e=>{var{dataKey:t,stroke:n,strokeWidth:r,fill:a,name:o,hide:l,unit:i,tooltipType:c,id:d}=e,f={dataDefinedOnItem:void 0,getPosition:fr,settings:{stroke:n,strokeWidth:r,fill:a,dataKey:t,nameKey:void 0,name:St(o,t),hide:l,type:c,color:a,unit:i,graphicalItemId:d}};return h.createElement(ur,{tooltipEntrySettings:f})});function ll(e){var t=ge(kr),{data:n,dataKey:r,background:a,allOtherBarProps:o}=e,{onMouseEnter:l,onMouseLeave:i,onClick:c}=o,d=wt(o,Zi),f=Nr(l,r,o.id),u=Dr(i),p=Mr(c,r,o.id);if(!a||n==null)return null;var x=Js(a);return h.createElement(tt,{zIndex:_o(a,Je.barBackground)},n.map((w,j)=>{var{value:b,background:y,tooltipPosition:k}=w,N=wt(w,Ji);if(!y)return null;var m=f(w,j),g=u(w,j),v=p(w,j),D=X(X(X(X(X({option:a,isActive:String(j)===t},N),{},{fill:"#eee"},y),x),Or(d,w,j)),{},{onMouseEnter:m,onMouseLeave:g,onClick:v,dataKey:r,index:j,className:"recharts-bar-background-rectangle"});return h.createElement(bt,be({key:"background-bar-".concat(j)},D))}))}function cl(e){var{showLabels:t,children:n,rects:r}=e,a=r?.map(o=>{var l={x:o.x,y:o.y,width:o.width,lowerWidth:o.width,upperWidth:o.width,height:o.height};return X(X({},l),{},{value:o.value,payload:o.payload,parentViewBox:o.parentViewBox,viewBox:l,fill:o.fill})});return h.createElement(vr,{value:t?a:void 0},n)}function dl(e){var{shape:t,activeBar:n,baseProps:r,entry:a,index:o,dataKey:l}=e,i=ge(kr),c=ge(eo),d=n&&String(o)===i&&(c==null||l===c),f=d?n:t;return d?h.createElement(tt,{zIndex:Je.activeBar},h.createElement(Gr,{index:o},h.createElement(bt,be({},r,{name:String(r.name)},a,{isActive:d,option:f,index:o,dataKey:l})))):h.createElement(bt,be({},r,{name:String(r.name)},a,{isActive:d,option:f,index:o,dataKey:l}))}function ul(e){var{shape:t,baseProps:n,entry:r,index:a,dataKey:o}=e;return h.createElement(bt,be({},n,{name:String(n.name)},r,{isActive:!1,option:t,index:a,dataKey:o}))}function fl(e){var t,{data:n,props:r}=e,a=(t=wr(r))!==null&&t!==void 0?t:{},{id:o}=a,l=wt(a,el),{shape:i,dataKey:c,activeBar:d}=r,{onMouseEnter:f,onClick:u,onMouseLeave:p}=r,x=wt(r,tl),w=Nr(f,c,o),j=Dr(p),b=Mr(u,c,o);return n?h.createElement(h.Fragment,null,n.map((y,k)=>h.createElement(Gr,be({index:k,key:"rectangle-".concat(y?.x,"-").concat(y?.y,"-").concat(y?.value,"-").concat(k),className:"recharts-bar-rectangle"},Or(x,y,k),{onMouseEnter:w(y,k),onMouseLeave:j(y,k),onClick:b(y,k)}),d?h.createElement(dl,{shape:i,activeBar:d,baseProps:l,entry:y,index:k,dataKey:c}):h.createElement(ul,{shape:i,baseProps:l,entry:y,index:k,dataKey:c})))):null}function ml(e){var{props:t,previousRectanglesRef:n}=e,{data:r,layout:a,isAnimationActive:o,animationBegin:l,animationDuration:i,animationEasing:c,onAnimationEnd:d,onAnimationStart:f}=t,u=n.current,p=xr(t,"recharts-bar-"),[x,w]=h.useState(!1),j=!x,b=h.useCallback(()=>{typeof d=="function"&&d(),w(!1)},[d]),y=h.useCallback(()=>{typeof f=="function"&&f(),w(!0)},[f]);return h.createElement(cl,{showLabels:j,rects:r},h.createElement(gr,{animationId:p,begin:l,duration:i,isActive:o,easing:c,onAnimationEnd:b,onAnimationStart:y,key:p},k=>{var N=k===1?r:r?.map((m,g)=>{var v=u&&u[g];if(v)return X(X({},m),{},{x:ee(v.x,m.x,k),y:ee(v.y,m.y,k),width:ee(v.width,m.width,k),height:ee(v.height,m.height,k)});if(a==="horizontal"){var D=ee(0,m.height,k),O=ee(m.stackedBarStart,m.y,k);return X(X({},m),{},{y:O,height:D})}var C=ee(0,m.width,k),E=ee(m.stackedBarStart,m.x,k);return X(X({},m),{},{width:C,x:E})});return k>0&&(n.current=N??null),N==null?null:h.createElement(Fe,null,h.createElement(fl,{props:t,data:N}))}),h.createElement(yr,{label:t.label}),t.children)}function hl(e){var t=h.useRef(null);return h.createElement(ml,{previousRectanglesRef:t,props:e})}var Ur=0,pl=(e,t)=>{var n=Array.isArray(e.value)?e.value[1]:e.value;return{x:e.x,y:e.y,value:n,errorVal:Ct(e,t)}};class xl extends h.PureComponent{render(){var{hide:t,data:n,dataKey:r,className:a,xAxisId:o,yAxisId:l,needClip:i,background:c,id:d}=this.props;if(t||n==null)return null;var f=tn("recharts-bar",a),u=d;return h.createElement(Fe,{className:f,id:d},i&&h.createElement("defs",null,h.createElement(pr,{clipPathId:u,xAxisId:o,yAxisId:l})),h.createElement(Fe,{className:"recharts-bar-rectangles",clipPath:i?"url(#clipPath-".concat(u,")"):void 0},h.createElement(ll,{data:n,dataKey:r,background:c,allOtherBarProps:this.props}),h.createElement(hl,this.props)))}}var gl={activeBar:!1,animationBegin:0,animationDuration:400,animationEasing:"ease",background:!1,hide:!1,isAnimationActive:"auto",label:!1,legendType:"rect",minPointSize:Ur,xAxisId:0,yAxisId:0,zIndex:Je.bar};function yl(e){var{xAxisId:t,yAxisId:n,hide:r,legendType:a,minPointSize:o,activeBar:l,animationBegin:i,animationDuration:c,animationEasing:d,isAnimationActive:f}=e,{needClip:u}=mr(t,n),p=hr(),x=et(),w=Vs(e.children,Qs),j=ge(k=>Ki(k,e.id,x,w));if(p!=="vertical"&&p!=="horizontal")return null;var b,y=j?.[0];return y==null||y.height==null||y.width==null?b=0:b=p==="vertical"?y.height/2:y.width/2,h.createElement(Br,{xAxisId:t,yAxisId:n,data:j,dataPointFormatter:pl,errorBarOffset:b},h.createElement(xl,be({},e,{layout:p,needClip:u,data:j,xAxisId:t,yAxisId:n,hide:r,legendType:a,minPointSize:o,activeBar:l,animationBegin:i,animationDuration:c,animationEasing:d,isAnimationActive:f})))}function vl(e){var{layout:t,barSettings:{dataKey:n,minPointSize:r},pos:a,bandSize:o,xAxis:l,yAxis:i,xAxisTicks:c,yAxisTicks:d,stackedData:f,displayedData:u,offset:p,cells:x,parentViewBox:w,dataStartIndex:j}=e,b=t==="horizontal"?i:l,y=f?b.scale.domain():null,k=Xs({numericAxis:b}),N=b.scale.map(k);return u.map((m,g)=>{var v,D,O,C,E,G;if(f){var K=f[g+j];if(K==null)return null;v=Zs(K,y)}else v=Ct(m,n),Array.isArray(v)||(v=[k,v]);var R=Si(r,Ur)(v[1],g);if(t==="horizontal"){var q,U=i.scale.map(v[0]),ae=i.scale.map(v[1]);if(U==null||ae==null)return null;D=Wn({axis:l,ticks:c,bandSize:o,offset:a.offset,entry:m,index:g}),O=(q=ae??U)!==null&&q!==void 0?q:void 0,C=a.size;var we=U-ae;if(E=to(we)?0:we,G={x:D,y:p.top,width:C,height:p.height},Math.abs(R)>0&&Math.abs(E)<Math.abs(R)){var he=En(E||R)*(Math.abs(R)-Math.abs(E));O-=he,E+=he}}else{var Y=l.scale.map(v[0]),V=l.scale.map(v[1]);if(Y==null||V==null)return null;if(D=Y,O=Wn({axis:i,ticks:d,bandSize:o,offset:a.offset,entry:m,index:g}),C=V-Y,E=a.size,G={x:p.left,y:O,width:p.width,height:E},Math.abs(R)>0&&Math.abs(C)<Math.abs(R)){var Z=En(C||R)*(Math.abs(R)-Math.abs(C));C+=Z}}if(D==null||O==null||C==null||E==null)return null;var je=X(X({},m),{},{stackedBarStart:N,x:D,y:O,width:C,height:E,value:f?v:v[1],payload:m,background:G,tooltipPosition:{x:D+C/2,y:O+E/2},parentViewBox:w},x&&x[g]&&x[g].props);return je}).filter(Boolean)}function bl(e){var t=Ot(e,gl),n=Vi(t.stackId),r=et();return h.createElement(lr,{id:t.id,type:"bar"},a=>h.createElement(h.Fragment,null,h.createElement(cr,{legendPayload:ol(t)}),h.createElement(il,{dataKey:t.dataKey,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:a}),h.createElement(dr,{type:"bar",id:a,data:void 0,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,stackId:n,hide:t.hide,barSize:t.barSize,minPointSize:t.minPointSize,maxBarSize:t.maxBarSize,isPanorama:r}),h.createElement(tt,{zIndex:t.zIndex},h.createElement(yl,be({},t,{id:a})))))}var Jt=h.memo(bl,ir);Jt.displayName="Bar";var wl=["axis"],jl=h.forwardRef((e,t)=>h.createElement(Sr,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:wl,tooltipPayloadSearcher:Cr,categoricalChartProps:e,ref:t})),kl=["axis","item"],Nl=h.forwardRef((e,t)=>h.createElement(Sr,{chartName:"BarChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:kl,tooltipPayloadSearcher:Cr,categoricalChartProps:e,ref:t}));const Vr=6048e5,Dl=864e5,Qr=6e4,Xr=36e5,zn=Symbol.for("constructDateFrom");function $(e,t){return typeof e=="function"?e(t):e&&typeof e=="object"&&zn in e?e[zn](t):e instanceof Date?new e.constructor(t):new Date(t)}function _(e,t){return $(t||e,e)}function sn(e,t,n){const r=_(e,n?.in);return isNaN(t)?$(e,NaN):(t&&r.setDate(r.getDate()+t),r)}function Zr(e,t,n){const r=_(e,n?.in);if(isNaN(t))return $(e,NaN);if(!t)return r;const a=r.getDate(),o=$(e,r.getTime());o.setMonth(r.getMonth()+t+1,0);const l=o.getDate();return a>=l?o:(r.setFullYear(o.getFullYear(),o.getMonth(),a),r)}let Ml={};function rt(){return Ml}function Ce(e,t){const n=rt(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,a=_(e,t?.in),o=a.getDay(),l=(o<r?7:0)+o-r;return a.setDate(a.getDate()-l),a.setHours(0,0,0,0),a}function Xe(e,t){return Ce(e,{...t,weekStartsOn:1})}function Jr(e,t){const n=_(e,t?.in),r=n.getFullYear(),a=$(n,0);a.setFullYear(r+1,0,4),a.setHours(0,0,0,0);const o=Xe(a),l=$(n,0);l.setFullYear(r,0,4),l.setHours(0,0,0,0);const i=Xe(l);return n.getTime()>=o.getTime()?r+1:n.getTime()>=i.getTime()?r:r-1}function $n(e){const t=_(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function Ye(e,...t){const n=$.bind(null,t.find(r=>typeof r=="object"));return t.map(n)}function Ze(e,t){const n=_(e,t?.in);return n.setHours(0,0,0,0),n}function on(e,t,n){const[r,a]=Ye(n?.in,e,t),o=Ze(r),l=Ze(a),i=+o-$n(o),c=+l-$n(l);return Math.round((i-c)/Dl)}function Ol(e,t){const n=Jr(e,t),r=$(e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),Xe(r)}function Sl(e,t,n){return sn(e,t*7,n)}function Cl(e,t,n){return Zr(e,t*12,n)}function Pl(e,t){let n,r=t?.in;return e.forEach(a=>{!r&&typeof a=="object"&&(r=$.bind(null,a));const o=_(a,r);(!n||n<o||isNaN(+o))&&(n=o)}),$(r,n||NaN)}function Wl(e,t){let n,r=t?.in;return e.forEach(a=>{!r&&typeof a=="object"&&(r=$.bind(null,a));const o=_(a,r);(!n||n>o||isNaN(+o))&&(n=o)}),$(r,n||NaN)}function El(e,t,n){const[r,a]=Ye(n?.in,e,t);return+Ze(r)==+Ze(a)}function ea(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function Il(e){return!(!ea(e)&&typeof e!="number"||isNaN(+_(e)))}function ta(e,t,n){const[r,a]=Ye(n?.in,e,t),o=r.getFullYear()-a.getFullYear(),l=r.getMonth()-a.getMonth();return o*12+l}function na(e,t){const n=_(e,t?.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}function ra(e,t){const[n,r]=Ye(e,t.start,t.end);return{start:n,end:r}}function Tl(e,t){const{start:n,end:r}=ra(t?.in,e);let a=+n>+r;const o=a?+n:+r,l=a?r:n;l.setHours(0,0,0,0),l.setDate(1);let i=1;const c=[];for(;+l<=o;)c.push($(n,l)),l.setMonth(l.getMonth()+i);return a?c.reverse():c}function aa(e,t){const n=_(e,t?.in);return n.setDate(1),n.setHours(0,0,0,0),n}function Al(e,t){const n=_(e,t?.in),r=n.getFullYear();return n.setFullYear(r+1,0,0),n.setHours(23,59,59,999),n}function sa(e,t){const n=_(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function _l(e,t){const{start:n,end:r}=ra(t?.in,e);let a=+n>+r;const o=a?+n:+r,l=a?r:n;l.setHours(0,0,0,0),l.setMonth(0,1);let i=1;const c=[];for(;+l<=o;)c.push($(n,l)),l.setFullYear(l.getFullYear()+i);return a?c.reverse():c}function ln(e,t){const n=rt(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,a=_(e,t?.in),o=a.getDay(),l=(o<r?-7:0)+6-(o-r);return a.setDate(a.getDate()+l),a.setHours(23,59,59,999),a}function Fl(e,t){return ln(e,{...t,weekStartsOn:1})}const Bl={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Yl=(e,t,n)=>{let r;const a=Bl[e];return typeof a=="string"?r=a:t===1?r=a.one:r=a.other.replace("{{count}}",t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function Bt(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const Ll={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},zl={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},$l={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Rl={date:Bt({formats:Ll,defaultWidth:"full"}),time:Bt({formats:zl,defaultWidth:"full"}),dateTime:Bt({formats:$l,defaultWidth:"full"})},ql={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Kl=(e,t,n,r)=>ql[e];function ze(e){return(t,n)=>{const r=n?.context?String(n.context):"standalone";let a;if(r==="formatting"&&e.formattingValues){const l=e.defaultFormattingWidth||e.defaultWidth,i=n?.width?String(n.width):l;a=e.formattingValues[i]||e.formattingValues[l]}else{const l=e.defaultWidth,i=n?.width?String(n.width):e.defaultWidth;a=e.values[i]||e.values[l]}const o=e.argumentCallback?e.argumentCallback(t):t;return a[o]}}const Hl={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Gl={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Ul={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Vl={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Ql={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Xl={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},Zl=(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},Jl={ordinalNumber:Zl,era:ze({values:Hl,defaultWidth:"wide"}),quarter:ze({values:Gl,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ze({values:Ul,defaultWidth:"wide"}),day:ze({values:Vl,defaultWidth:"wide"}),dayPeriod:ze({values:Ql,defaultWidth:"wide",formattingValues:Xl,defaultFormattingWidth:"wide"})};function $e(e){return(t,n={})=>{const r=n.width,a=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],o=t.match(a);if(!o)return null;const l=o[0],i=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(i)?tc(i,u=>u.test(l)):ec(i,u=>u.test(l));let d;d=e.valueCallback?e.valueCallback(c):c,d=n.valueCallback?n.valueCallback(d):d;const f=t.slice(l.length);return{value:d,rest:f}}}function ec(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function tc(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function nc(e){return(t,n={})=>{const r=t.match(e.matchPattern);if(!r)return null;const a=r[0],o=t.match(e.parsePattern);if(!o)return null;let l=e.valueCallback?e.valueCallback(o[0]):o[0];l=n.valueCallback?n.valueCallback(l):l;const i=t.slice(a.length);return{value:l,rest:i}}}const rc=/^(\d+)(th|st|nd|rd)?/i,ac=/\d+/i,sc={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},oc={any:[/^b/i,/^(a|c)/i]},ic={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},lc={any:[/1/i,/2/i,/3/i,/4/i]},cc={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},dc={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},uc={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},fc={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},mc={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},hc={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},pc={ordinalNumber:nc({matchPattern:rc,parsePattern:ac,valueCallback:e=>parseInt(e,10)}),era:$e({matchPatterns:sc,defaultMatchWidth:"wide",parsePatterns:oc,defaultParseWidth:"any"}),quarter:$e({matchPatterns:ic,defaultMatchWidth:"wide",parsePatterns:lc,defaultParseWidth:"any",valueCallback:e=>e+1}),month:$e({matchPatterns:cc,defaultMatchWidth:"wide",parsePatterns:dc,defaultParseWidth:"any"}),day:$e({matchPatterns:uc,defaultMatchWidth:"wide",parsePatterns:fc,defaultParseWidth:"any"}),dayPeriod:$e({matchPatterns:mc,defaultMatchWidth:"any",parsePatterns:hc,defaultParseWidth:"any"})},Te={code:"en-US",formatDistance:Yl,formatLong:Rl,formatRelative:Kl,localize:Jl,match:pc,options:{weekStartsOn:0,firstWeekContainsDate:1}};function xc(e,t){const n=_(e,t?.in);return on(n,sa(n))+1}function cn(e,t){const n=_(e,t?.in),r=+Xe(n)-+Ol(n);return Math.round(r/Vr)+1}function oa(e,t){const n=_(e,t?.in),r=n.getFullYear(),a=rt(),o=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??a.firstWeekContainsDate??a.locale?.options?.firstWeekContainsDate??1,l=$(t?.in||e,0);l.setFullYear(r+1,0,o),l.setHours(0,0,0,0);const i=Ce(l,t),c=$(t?.in||e,0);c.setFullYear(r,0,o),c.setHours(0,0,0,0);const d=Ce(c,t);return+n>=+i?r+1:+n>=+d?r:r-1}function gc(e,t){const n=rt(),r=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,a=oa(e,t),o=$(t?.in||e,0);return o.setFullYear(a,0,r),o.setHours(0,0,0,0),Ce(o,t)}function dn(e,t){const n=_(e,t?.in),r=+Ce(n,t)-+gc(n,t);return Math.round(r/Vr)+1}function F(e,t){const n=e<0?"-":"",r=Math.abs(e).toString().padStart(t,"0");return n+r}const ke={y(e,t){const n=e.getFullYear(),r=n>0?n:1-n;return F(t==="yy"?r%100:r,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):F(n+1,2)},d(e,t){return F(e.getDate(),t.length)},a(e,t){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];default:return n==="am"?"a.m.":"p.m."}},h(e,t){return F(e.getHours()%12||12,t.length)},H(e,t){return F(e.getHours(),t.length)},m(e,t){return F(e.getMinutes(),t.length)},s(e,t){return F(e.getSeconds(),t.length)},S(e,t){const n=t.length,r=e.getMilliseconds(),a=Math.trunc(r*Math.pow(10,n-3));return F(a,t.length)}},Ee={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},Rn={G:function(e,t,n){const r=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const r=e.getFullYear(),a=r>0?r:1-r;return n.ordinalNumber(a,{unit:"year"})}return ke.y(e,t)},Y:function(e,t,n,r){const a=oa(e,r),o=a>0?a:1-a;if(t==="YY"){const l=o%100;return F(l,2)}return t==="Yo"?n.ordinalNumber(o,{unit:"year"}):F(o,t.length)},R:function(e,t){const n=Jr(e);return F(n,t.length)},u:function(e,t){const n=e.getFullYear();return F(n,t.length)},Q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return F(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return F(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){const r=e.getMonth();switch(t){case"M":case"MM":return ke.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){const r=e.getMonth();switch(t){case"L":return String(r+1);case"LL":return F(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){const a=dn(e,r);return t==="wo"?n.ordinalNumber(a,{unit:"week"}):F(a,t.length)},I:function(e,t,n){const r=cn(e);return t==="Io"?n.ordinalNumber(r,{unit:"week"}):F(r,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):ke.d(e,t)},D:function(e,t,n){const r=xc(e);return t==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):F(r,t.length)},E:function(e,t,n){const r=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){const a=e.getDay(),o=(a-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(o);case"ee":return F(o,2);case"eo":return n.ordinalNumber(o,{unit:"day"});case"eee":return n.day(a,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(a,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(a,{width:"short",context:"formatting"});default:return n.day(a,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){const a=e.getDay(),o=(a-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(o);case"cc":return F(o,t.length);case"co":return n.ordinalNumber(o,{unit:"day"});case"ccc":return n.day(a,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(a,{width:"narrow",context:"standalone"});case"cccccc":return n.day(a,{width:"short",context:"standalone"});default:return n.day(a,{width:"wide",context:"standalone"})}},i:function(e,t,n){const r=e.getDay(),a=r===0?7:r;switch(t){case"i":return String(a);case"ii":return F(a,t.length);case"io":return n.ordinalNumber(a,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){const a=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(a,{width:"narrow",context:"formatting"});default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},b:function(e,t,n){const r=e.getHours();let a;switch(r===12?a=Ee.noon:r===0?a=Ee.midnight:a=r/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(a,{width:"narrow",context:"formatting"});default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},B:function(e,t,n){const r=e.getHours();let a;switch(r>=17?a=Ee.evening:r>=12?a=Ee.afternoon:r>=4?a=Ee.morning:a=Ee.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(a,{width:"narrow",context:"formatting"});default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let r=e.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return ke.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):ke.H(e,t)},K:function(e,t,n){const r=e.getHours()%12;return t==="Ko"?n.ordinalNumber(r,{unit:"hour"}):F(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t==="ko"?n.ordinalNumber(r,{unit:"hour"}):F(r,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):ke.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):ke.s(e,t)},S:function(e,t){return ke.S(e,t)},X:function(e,t,n){const r=e.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return Kn(r);case"XXXX":case"XX":return Oe(r);default:return Oe(r,":")}},x:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"x":return Kn(r);case"xxxx":case"xx":return Oe(r);default:return Oe(r,":")}},O:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+qn(r,":");default:return"GMT"+Oe(r,":")}},z:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+qn(r,":");default:return"GMT"+Oe(r,":")}},t:function(e,t,n){const r=Math.trunc(+e/1e3);return F(r,t.length)},T:function(e,t,n){return F(+e,t.length)}};function qn(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),a=Math.trunc(r/60),o=r%60;return o===0?n+String(a):n+String(a)+t+F(o,2)}function Kn(e,t){return e%60===0?(e>0?"-":"+")+F(Math.abs(e)/60,2):Oe(e,t)}function Oe(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),a=F(Math.trunc(r/60),2),o=F(r%60,2);return n+a+t+o}const Hn=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},ia=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},yc=(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],r=n[1],a=n[2];if(!a)return Hn(e,t);let o;switch(r){case"P":o=t.dateTime({width:"short"});break;case"PP":o=t.dateTime({width:"medium"});break;case"PPP":o=t.dateTime({width:"long"});break;default:o=t.dateTime({width:"full"});break}return o.replace("{{date}}",Hn(r,t)).replace("{{time}}",ia(a,t))},vc={p:ia,P:yc},bc=/^D+$/,wc=/^Y+$/,jc=["D","DD","YY","YYYY"];function kc(e){return bc.test(e)}function Nc(e){return wc.test(e)}function Dc(e,t,n){const r=Mc(e,t,n);if(console.warn(r),jc.includes(e))throw new RangeError(r)}function Mc(e,t,n){const r=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Oc=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Sc=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Cc=/^'([^]*?)'?$/,Pc=/''/g,Wc=/[a-zA-Z]/;function H(e,t,n){const r=rt(),a=n?.locale??r.locale??Te,o=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,l=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,i=_(e,n?.in);if(!Il(i))throw new RangeError("Invalid time value");let c=t.match(Sc).map(f=>{const u=f[0];if(u==="p"||u==="P"){const p=vc[u];return p(f,a.formatLong)}return f}).join("").match(Oc).map(f=>{if(f==="''")return{isToken:!1,value:"'"};const u=f[0];if(u==="'")return{isToken:!1,value:Ec(f)};if(Rn[u])return{isToken:!0,value:f};if(u.match(Wc))throw new RangeError("Format string contains an unescaped latin alphabet character `"+u+"`");return{isToken:!1,value:f}});a.localize.preprocessor&&(c=a.localize.preprocessor(i,c));const d={firstWeekContainsDate:o,weekStartsOn:l,locale:a};return c.map(f=>{if(!f.isToken)return f.value;const u=f.value;(!n?.useAdditionalWeekYearTokens&&Nc(u)||!n?.useAdditionalDayOfYearTokens&&kc(u))&&Dc(u,t,String(e));const p=Rn[u[0]];return p(i,u,a.localize,d)}).join("")}function Ec(e){const t=e.match(Cc);return t?t[1].replace(Pc,"'"):e}function Ic(e,t){const n=_(e,t?.in),r=n.getFullYear(),a=n.getMonth(),o=$(n,0);return o.setFullYear(r,a+1,0),o.setHours(0,0,0,0),o.getDate()}function Tc(e,t){return _(e,t?.in).getMonth()}function Ac(e,t){return _(e,t?.in).getFullYear()}function _c(e,t){return+_(e)>+_(t)}function Fc(e,t){return+_(e)<+_(t)}function Bc(e,t,n){const[r,a]=Ye(n?.in,e,t);return r.getFullYear()===a.getFullYear()&&r.getMonth()===a.getMonth()}function Yc(e,t,n){const[r,a]=Ye(n?.in,e,t);return r.getFullYear()===a.getFullYear()}function Yt(e,t){const n=()=>$(t?.in,NaN),a=Rc(e);let o;if(a.date){const d=qc(a.date,2);o=Kc(d.restDateString,d.year)}if(!o||isNaN(+o))return n();const l=+o;let i=0,c;if(a.time&&(i=Hc(a.time),isNaN(i)))return n();if(a.timezone){if(c=Gc(a.timezone),isNaN(c))return n()}else{const d=new Date(l+i),f=_(0,t?.in);return f.setFullYear(d.getUTCFullYear(),d.getUTCMonth(),d.getUTCDate()),f.setHours(d.getUTCHours(),d.getUTCMinutes(),d.getUTCSeconds(),d.getUTCMilliseconds()),f}return _(l+i+c,t?.in)}const ct={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},Lc=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,zc=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,$c=/^([+-])(\d{2})(?::?(\d{2}))?$/;function Rc(e){const t={},n=e.split(ct.dateTimeDelimiter);let r;if(n.length>2)return t;if(/:/.test(n[0])?r=n[0]:(t.date=n[0],r=n[1],ct.timeZoneDelimiter.test(t.date)&&(t.date=e.split(ct.timeZoneDelimiter)[0],r=e.substr(t.date.length,e.length))),r){const a=ct.timezone.exec(r);a?(t.time=r.replace(a[1],""),t.timezone=a[1]):t.time=r}return t}function qc(e,t){const n=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+t)+"})|(\\d{2}|[+-]\\d{"+(2+t)+"})$)"),r=e.match(n);if(!r)return{year:NaN,restDateString:""};const a=r[1]?parseInt(r[1]):null,o=r[2]?parseInt(r[2]):null;return{year:o===null?a:o*100,restDateString:e.slice((r[1]||r[2]).length)}}function Kc(e,t){if(t===null)return new Date(NaN);const n=e.match(Lc);if(!n)return new Date(NaN);const r=!!n[4],a=Re(n[1]),o=Re(n[2])-1,l=Re(n[3]),i=Re(n[4]),c=Re(n[5])-1;if(r)return Zc(t,i,c)?Uc(t,i,c):new Date(NaN);{const d=new Date(0);return!Qc(t,o,l)||!Xc(t,a)?new Date(NaN):(d.setUTCFullYear(t,o,Math.max(a,l)),d)}}function Re(e){return e?parseInt(e):1}function Hc(e){const t=e.match(zc);if(!t)return NaN;const n=Lt(t[1]),r=Lt(t[2]),a=Lt(t[3]);return Jc(n,r,a)?n*Xr+r*Qr+a*1e3:NaN}function Lt(e){return e&&parseFloat(e.replace(",","."))||0}function Gc(e){if(e==="Z")return 0;const t=e.match($c);if(!t)return 0;const n=t[1]==="+"?-1:1,r=parseInt(t[2]),a=t[3]&&parseInt(t[3])||0;return ed(r,a)?n*(r*Xr+a*Qr):NaN}function Uc(e,t,n){const r=new Date(0);r.setUTCFullYear(e,0,4);const a=r.getUTCDay()||7,o=(t-1)*7+n+1-a;return r.setUTCDate(r.getUTCDate()+o),r}const Vc=[31,null,31,30,31,30,31,31,30,31,30,31];function la(e){return e%400===0||e%4===0&&e%100!==0}function Qc(e,t,n){return t>=0&&t<=11&&n>=1&&n<=(Vc[t]||(la(e)?29:28))}function Xc(e,t){return t>=1&&t<=(la(e)?366:365)}function Zc(e,t,n){return t>=1&&t<=53&&n>=0&&n<=6}function Jc(e,t,n){return e===24?t===0&&n===0:n>=0&&n<60&&t>=0&&t<60&&e>=0&&e<25}function ed(e,t){return t>=0&&t<=59}function td(e,t,n){const r=_(e,n?.in),a=r.getFullYear(),o=r.getDate(),l=$(e,0);l.setFullYear(a,t,15),l.setHours(0,0,0,0);const i=Ic(l);return r.setMonth(t,Math.min(o,i)),r}function nd(e,t,n){const r=_(e,n?.in);return isNaN(+r)?$(e,NaN):(r.setFullYear(t),r)}function rd(e,t,n="long"){return new Intl.DateTimeFormat("en-US",{hour:"numeric",timeZone:e,timeZoneName:n}).format(t).split(/\s/g).slice(2).join(" ")}const ad={},Ue={};function Se(e,t){try{const r=(ad[e]||=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset"}).format)(t).split("GMT")[1];return r in Ue?Ue[r]:Gn(r,r.split(":"))}catch{if(e in Ue)return Ue[e];const n=e?.match(sd);return n?Gn(e,n.slice(1)):NaN}}const sd=/([+-]\d\d):?(\d\d)?/;function Gn(e,t){const n=+(t[0]||0),r=+(t[1]||0),a=+(t[2]||0)/60;return Ue[e]=n*60+r>0?n*60+r+a:n*60-r-a}class fe extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(Se(this.timeZone,this))?this.setTime(NaN):t.length?typeof t[0]=="number"&&(t.length===1||t.length===2&&typeof t[1]!="number")?this.setTime(t[0]):typeof t[0]=="string"?this.setTime(+new Date(t[0])):t[0]instanceof Date?this.setTime(+t[0]):(this.setTime(+new Date(...t)),ca(this),en(this)):this.setTime(Date.now())}static tz(t,...n){return n.length?new fe(...n,t):new fe(Date.now(),t)}withTimeZone(t){return new fe(+this,t)}getTimezoneOffset(){const t=-Se(this.timeZone,this);return t>0?Math.floor(t):Math.ceil(t)}setTime(t){return Date.prototype.setTime.apply(this,arguments),en(this),+this}[Symbol.for("constructDateFrom")](t){return new fe(+new Date(t),this.timeZone)}}const Un=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!Un.test(e))return;const t=e.replace(Un,"$1UTC");fe.prototype[t]&&(e.startsWith("get")?fe.prototype[e]=function(){return this.internal[t]()}:(fe.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),od(this),+this},fe.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),en(this),+this}))});function en(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-Se(e.timeZone,e)*60))}function od(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),ca(e)}function ca(e){const t=Se(e.timeZone,e),n=t>0?Math.floor(t):Math.ceil(t),r=new Date(+e);r.setUTCHours(r.getUTCHours()-1);const a=-new Date(+e).getTimezoneOffset(),o=-new Date(+r).getTimezoneOffset(),l=a-o,i=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();l&&i&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+l);const c=a-n;c&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+c);const d=new Date(+e);d.setUTCSeconds(0);const f=a>0?d.getSeconds():(d.getSeconds()-60)%60,u=Math.round(-(Se(e.timeZone,e)*60))%60;(u||f)&&(e.internal.setUTCSeconds(e.internal.getUTCSeconds()+u),Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+u+f));const p=Se(e.timeZone,e),x=p>0?Math.floor(p):Math.ceil(p),j=-new Date(+e).getTimezoneOffset()-x,b=x!==n,y=j-c;if(b&&y){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+y);const k=Se(e.timeZone,e),N=k>0?Math.floor(k):Math.ceil(k),m=x-N;m&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+m),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+m))}}class Q extends fe{static tz(t,...n){return n.length?new Q(...n,t):new Q(Date.now(),t)}toISOString(){const[t,n,r]=this.tzComponents(),a=`${t}${n}:${r}`;return this.internal.toISOString().slice(0,-1)+a}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,n,r,a]=this.internal.toUTCString().split(" ");return`${t?.slice(0,-1)} ${r} ${n} ${a}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[n,r,a]=this.tzComponents();return`${t} GMT${n}${r}${a} (${rd(this.timeZone,this)})`}toLocaleString(t,n){return Date.prototype.toLocaleString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}toLocaleDateString(t,n){return Date.prototype.toLocaleDateString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}toLocaleTimeString(t,n){return Date.prototype.toLocaleTimeString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}tzComponents(){const t=this.getTimezoneOffset(),n=t>0?"-":"+",r=String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),a=String(Math.abs(t)%60).padStart(2,"0");return[n,r,a]}withTimeZone(t){return new Q(+this,t)}[Symbol.for("constructDateFrom")](t){return new Q(+new Date(t),this.timeZone)}}const Vn=5,id=4;function ld(e,t){const n=t.startOfMonth(e),r=n.getDay()>0?n.getDay():7,a=t.addDays(e,-r+1),o=t.addDays(a,Vn*7-1);return t.getMonth(e)===t.getMonth(o)?Vn:id}function da(e,t){const n=t.startOfMonth(e),r=n.getDay();return r===1?n:r===0?t.addDays(n,-6):t.addDays(n,-1*(r-1))}function cd(e,t){const n=da(e,t),r=ld(e,t);return t.addDays(n,r*7-1)}const ua={...Te,labels:{labelDayButton:(e,t,n,r)=>{let a;r&&typeof r.format=="function"?a=r.format.bind(r):a=(l,i)=>H(l,i,{locale:Te,...n});let o=a(e,"PPPP");return t.today&&(o=`Today, ${o}`),t.selected&&(o=`${o}, selected`),o},labelMonthDropdown:"Choose the Month",labelNext:"Go to the Next Month",labelPrevious:"Go to the Previous Month",labelWeekNumber:e=>`Week ${e}`,labelYearDropdown:"Choose the Year",labelGrid:(e,t,n)=>{let r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(a,o)=>H(a,o,{locale:Te,...t}),r(e,"LLLL yyyy")},labelGridcell:(e,t,n,r)=>{let a;r&&typeof r.format=="function"?a=r.format.bind(r):a=(l,i)=>H(l,i,{locale:Te,...n});let o=a(e,"PPPP");return t?.today&&(o=`Today, ${o}`),o},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(e,t,n)=>{let r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(a,o)=>H(a,o,{locale:Te,...t}),r(e,"cccc")}}};class re{constructor(t,n){this.Date=Date,this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?Q.tz(this.options.timeZone):new this.Date,this.newDate=(r,a,o)=>this.overrides?.newDate?this.overrides.newDate(r,a,o):this.options.timeZone?new Q(r,a,o,this.options.timeZone):new Date(r,a,o),this.addDays=(r,a)=>this.overrides?.addDays?this.overrides.addDays(r,a):sn(r,a),this.addMonths=(r,a)=>this.overrides?.addMonths?this.overrides.addMonths(r,a):Zr(r,a),this.addWeeks=(r,a)=>this.overrides?.addWeeks?this.overrides.addWeeks(r,a):Sl(r,a),this.addYears=(r,a)=>this.overrides?.addYears?this.overrides.addYears(r,a):Cl(r,a),this.differenceInCalendarDays=(r,a)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(r,a):on(r,a),this.differenceInCalendarMonths=(r,a)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(r,a):ta(r,a),this.eachMonthOfInterval=r=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(r):Tl(r),this.eachYearOfInterval=r=>{const a=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(r):_l(r),o=new Set(a.map(i=>this.getYear(i)));if(o.size===a.length)return a;const l=[];return o.forEach(i=>{l.push(new Date(i,0,1))}),l},this.endOfBroadcastWeek=r=>this.overrides?.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(r):cd(r,this),this.endOfISOWeek=r=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(r):Fl(r),this.endOfMonth=r=>this.overrides?.endOfMonth?this.overrides.endOfMonth(r):na(r),this.endOfWeek=(r,a)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(r,a):ln(r,this.options),this.endOfYear=r=>this.overrides?.endOfYear?this.overrides.endOfYear(r):Al(r),this.format=(r,a,o)=>{const l=this.overrides?.format?this.overrides.format(r,a,this.options):H(r,a,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(l):l},this.getISOWeek=r=>this.overrides?.getISOWeek?this.overrides.getISOWeek(r):cn(r),this.getMonth=(r,a)=>this.overrides?.getMonth?this.overrides.getMonth(r,this.options):Tc(r,this.options),this.getYear=(r,a)=>this.overrides?.getYear?this.overrides.getYear(r,this.options):Ac(r,this.options),this.getWeek=(r,a)=>this.overrides?.getWeek?this.overrides.getWeek(r,this.options):dn(r,this.options),this.isAfter=(r,a)=>this.overrides?.isAfter?this.overrides.isAfter(r,a):_c(r,a),this.isBefore=(r,a)=>this.overrides?.isBefore?this.overrides.isBefore(r,a):Fc(r,a),this.isDate=r=>this.overrides?.isDate?this.overrides.isDate(r):ea(r),this.isSameDay=(r,a)=>this.overrides?.isSameDay?this.overrides.isSameDay(r,a):El(r,a),this.isSameMonth=(r,a)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(r,a):Bc(r,a),this.isSameYear=(r,a)=>this.overrides?.isSameYear?this.overrides.isSameYear(r,a):Yc(r,a),this.max=r=>this.overrides?.max?this.overrides.max(r):Pl(r),this.min=r=>this.overrides?.min?this.overrides.min(r):Wl(r),this.setMonth=(r,a)=>this.overrides?.setMonth?this.overrides.setMonth(r,a):td(r,a),this.setYear=(r,a)=>this.overrides?.setYear?this.overrides.setYear(r,a):nd(r,a),this.startOfBroadcastWeek=(r,a)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(r,this):da(r,this),this.startOfDay=r=>this.overrides?.startOfDay?this.overrides.startOfDay(r):Ze(r),this.startOfISOWeek=r=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(r):Xe(r),this.startOfMonth=r=>this.overrides?.startOfMonth?this.overrides.startOfMonth(r):aa(r),this.startOfWeek=(r,a)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(r,this.options):Ce(r,this.options),this.startOfYear=r=>this.overrides?.startOfYear?this.overrides.startOfYear(r):sa(r),this.options={locale:ua,...t},this.overrides=n}getDigitMap(){const{numerals:t="latn"}=this.options,n=new Intl.NumberFormat("en-US",{numberingSystem:t}),r={};for(let a=0;a<10;a++)r[a.toString()]=n.format(a);return r}replaceDigits(t){const n=this.getDigitMap();return t.replace(/\d/g,r=>n[r]||r)}formatNumber(t){return this.replaceDigits(t.toString())}getMonthYearOrder(){const t=this.options.locale?.code;return t&&re.yearFirstLocales.has(t)?"year-first":"month-first"}formatMonthYear(t){const{locale:n,timeZone:r,numerals:a}=this.options,o=n?.code;if(o&&re.yearFirstLocales.has(o))try{return new Intl.DateTimeFormat(o,{month:"long",year:"numeric",timeZone:r,numberingSystem:a}).format(t)}catch{}const l=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(t,l)}}re.yearFirstLocales=new Set(["eu","hu","ja","ja-Hira","ja-JP","ko","ko-KR","lt","lt-LT","lv","lv-LV","mn","mn-MN","zh","zh-CN","zh-HK","zh-TW"]);const me=new re;class fa{constructor(t,n,r=me){this.date=t,this.displayMonth=n,this.outside=!!(n&&!r.isSameMonth(t,n)),this.dateLib=r,this.isoDate=r.format(t,"yyyy-MM-dd"),this.displayMonthId=r.format(n,"yyyy-MM"),this.dateMonthId=r.format(t,"yyyy-MM")}isEqualTo(t){return this.dateLib.isSameDay(t.date,this.date)&&this.dateLib.isSameMonth(t.displayMonth,this.displayMonth)}}class dd{constructor(t,n){this.date=t,this.weeks=n}}class ud{constructor(t,n){this.days=n,this.weekNumber=t}}function fd(e){return M.createElement("button",{...e})}function md(e){return M.createElement("span",{...e})}function hd(e){const{size:t=24,orientation:n="left",className:r}=e;return M.createElement("svg",{className:r,width:t,height:t,viewBox:"0 0 24 24"},n==="up"&&M.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),n==="down"&&M.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),n==="left"&&M.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),n==="right"&&M.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function pd(e){const{day:t,modifiers:n,...r}=e;return M.createElement("td",{...r})}function xd(e){const{day:t,modifiers:n,...r}=e,a=M.useRef(null);return M.useEffect(()=>{n.focused&&a.current?.focus()},[n.focused]),M.createElement("button",{ref:a,...r})}var S;(function(e){e.Root="root",e.Chevron="chevron",e.Day="day",e.DayButton="day_button",e.CaptionLabel="caption_label",e.Dropdowns="dropdowns",e.Dropdown="dropdown",e.DropdownRoot="dropdown_root",e.Footer="footer",e.MonthGrid="month_grid",e.MonthCaption="month_caption",e.MonthsDropdown="months_dropdown",e.Month="month",e.Months="months",e.Nav="nav",e.NextMonthButton="button_next",e.PreviousMonthButton="button_previous",e.Week="week",e.Weeks="weeks",e.Weekday="weekday",e.Weekdays="weekdays",e.WeekNumber="week_number",e.WeekNumberHeader="week_number_header",e.YearsDropdown="years_dropdown"})(S||(S={}));var z;(function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"})(z||(z={}));var le;(function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"})(le||(le={}));var te;(function(e){e.weeks_before_enter="weeks_before_enter",e.weeks_before_exit="weeks_before_exit",e.weeks_after_enter="weeks_after_enter",e.weeks_after_exit="weeks_after_exit",e.caption_after_enter="caption_after_enter",e.caption_after_exit="caption_after_exit",e.caption_before_enter="caption_before_enter",e.caption_before_exit="caption_before_exit"})(te||(te={}));function gd(e){const{options:t,className:n,components:r,classNames:a,...o}=e,l=[a[S.Dropdown],n].join(" "),i=t?.find(({value:c})=>c===o.value);return M.createElement("span",{"data-disabled":o.disabled,className:a[S.DropdownRoot]},M.createElement(r.Select,{className:l,...o},t?.map(({value:c,label:d,disabled:f})=>M.createElement(r.Option,{key:c,value:c,disabled:f},d))),M.createElement("span",{className:a[S.CaptionLabel],"aria-hidden":!0},i?.label,M.createElement(r.Chevron,{orientation:"down",size:18,className:a[S.Chevron]})))}function yd(e){return M.createElement("div",{...e})}function vd(e){return M.createElement("div",{...e})}function bd(e){const{calendarMonth:t,displayIndex:n,...r}=e;return M.createElement("div",{...r},e.children)}function wd(e){const{calendarMonth:t,displayIndex:n,...r}=e;return M.createElement("div",{...r})}function jd(e){return M.createElement("table",{...e})}function kd(e){return M.createElement("div",{...e})}const ma=h.createContext(void 0);function at(){const e=h.useContext(ma);if(e===void 0)throw new Error("useDayPicker() must be used within a custom component.");return e}function Nd(e){const{components:t}=at();return M.createElement(t.Dropdown,{...e})}function Dd(e){const{onPreviousClick:t,onNextClick:n,previousMonth:r,nextMonth:a,...o}=e,{components:l,classNames:i,labels:{labelPrevious:c,labelNext:d}}=at(),f=h.useCallback(p=>{a&&n?.(p)},[a,n]),u=h.useCallback(p=>{r&&t?.(p)},[r,t]);return M.createElement("nav",{...o},M.createElement(l.PreviousMonthButton,{type:"button",className:i[S.PreviousMonthButton],tabIndex:r?void 0:-1,"aria-disabled":r?void 0:!0,"aria-label":c(r),onClick:u},M.createElement(l.Chevron,{disabled:r?void 0:!0,className:i[S.Chevron],orientation:"left"})),M.createElement(l.NextMonthButton,{type:"button",className:i[S.NextMonthButton],tabIndex:a?void 0:-1,"aria-disabled":a?void 0:!0,"aria-label":d(a),onClick:f},M.createElement(l.Chevron,{disabled:a?void 0:!0,orientation:"right",className:i[S.Chevron]})))}function Md(e){const{components:t}=at();return M.createElement(t.Button,{...e})}function Od(e){return M.createElement("option",{...e})}function Sd(e){const{components:t}=at();return M.createElement(t.Button,{...e})}function Cd(e){const{rootRef:t,...n}=e;return M.createElement("div",{...n,ref:t})}function Pd(e){return M.createElement("select",{...e})}function Wd(e){const{week:t,...n}=e;return M.createElement("tr",{...n})}function Ed(e){return M.createElement("th",{...e})}function Id(e){return M.createElement("thead",{"aria-hidden":!0},M.createElement("tr",{...e}))}function Td(e){const{week:t,...n}=e;return M.createElement("th",{...n})}function Ad(e){return M.createElement("th",{...e})}function _d(e){return M.createElement("tbody",{...e})}function Fd(e){const{components:t}=at();return M.createElement(t.Dropdown,{...e})}const Bd=Object.freeze(Object.defineProperty({__proto__:null,Button:fd,CaptionLabel:md,Chevron:hd,Day:pd,DayButton:xd,Dropdown:gd,DropdownNav:yd,Footer:vd,Month:bd,MonthCaption:wd,MonthGrid:jd,Months:kd,MonthsDropdown:Nd,Nav:Dd,NextMonthButton:Md,Option:Od,PreviousMonthButton:Sd,Root:Cd,Select:Pd,Week:Wd,WeekNumber:Td,WeekNumberHeader:Ad,Weekday:Ed,Weekdays:Id,Weeks:_d,YearsDropdown:Fd},Symbol.toStringTag,{value:"Module"}));function ye(e,t,n=!1,r=me){let{from:a,to:o}=e;const{differenceInCalendarDays:l,isSameDay:i}=r;return a&&o?(l(o,a)<0&&([a,o]=[o,a]),l(t,a)>=(n?1:0)&&l(o,t)>=(n?1:0)):!n&&o?i(o,t):!n&&a?i(a,t):!1}function un(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function Pt(e){return!!(e&&typeof e=="object"&&"from"in e)}function fn(e){return!!(e&&typeof e=="object"&&"after"in e)}function mn(e){return!!(e&&typeof e=="object"&&"before"in e)}function ha(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function pa(e,t){return Array.isArray(e)&&e.every(t.isDate)}function ve(e,t,n=me){const r=Array.isArray(t)?t:[t],{isSameDay:a,differenceInCalendarDays:o,isAfter:l}=n;return r.some(i=>{if(typeof i=="boolean")return i;if(n.isDate(i))return a(e,i);if(pa(i,n))return i.some(c=>a(e,c));if(Pt(i))return ye(i,e,!1,n);if(ha(i))return Array.isArray(i.dayOfWeek)?i.dayOfWeek.includes(e.getDay()):i.dayOfWeek===e.getDay();if(un(i)){const c=o(i.before,e),d=o(i.after,e),f=c>0,u=d<0;return l(i.before,i.after)?u&&f:f||u}return fn(i)?o(e,i.after)>0:mn(i)?o(i.before,e)>0:typeof i=="function"?i(e):!1})}function Yd(e,t,n,r,a){const{disabled:o,hidden:l,modifiers:i,showOutsideDays:c,broadcastCalendar:d,today:f=a.today()}=t,{isSameDay:u,isSameMonth:p,startOfMonth:x,isBefore:w,endOfMonth:j,isAfter:b}=a,y=n&&x(n),k=r&&j(r),N={[z.focused]:[],[z.outside]:[],[z.disabled]:[],[z.hidden]:[],[z.today]:[]},m={};for(const g of e){const{date:v,displayMonth:D}=g,O=!!(D&&!p(v,D)),C=!!(y&&w(v,y)),E=!!(k&&b(v,k)),G=!!(o&&ve(v,o,a)),K=!!(l&&ve(v,l,a))||C||E||!d&&!c&&O||d&&c===!1&&O,R=u(v,f);O&&N.outside.push(g),G&&N.disabled.push(g),K&&N.hidden.push(g),R&&N.today.push(g),i&&Object.keys(i).forEach(q=>{const U=i?.[q];U&&ve(v,U,a)&&(m[q]?m[q].push(g):m[q]=[g])})}return g=>{const v={[z.focused]:!1,[z.disabled]:!1,[z.hidden]:!1,[z.outside]:!1,[z.today]:!1},D={};for(const O in N){const C=N[O];v[O]=C.some(E=>E===g)}for(const O in m)D[O]=m[O].some(C=>C===g);return{...v,...D}}}function Ld(e,t,n={}){return Object.entries(e).filter(([,a])=>a===!0).reduce((a,[o])=>(n[o]?a.push(n[o]):t[z[o]]?a.push(t[z[o]]):t[le[o]]&&a.push(t[le[o]]),a),[t[S.Day]])}function zd(e){return{...Bd,...e}}function $d(e){const t={"data-mode":e.mode??void 0,"data-required":"required"in e?e.required:void 0,"data-multiple-months":e.numberOfMonths&&e.numberOfMonths>1||void 0,"data-week-numbers":e.showWeekNumber||void 0,"data-broadcast-calendar":e.broadcastCalendar||void 0,"data-nav-layout":e.navLayout||void 0};return Object.entries(e).forEach(([n,r])=>{n.startsWith("data-")&&(t[n]=r)}),t}function Rd(){const e={};for(const t in S)e[S[t]]=`rdp-${S[t]}`;for(const t in z)e[z[t]]=`rdp-${z[t]}`;for(const t in le)e[le[t]]=`rdp-${le[t]}`;for(const t in te)e[te[t]]=`rdp-${te[t]}`;return e}function xa(e,t,n){return(n??new re(t)).formatMonthYear(e)}const qd=xa;function Kd(e,t,n){return(n??new re(t)).format(e,"d")}function Hd(e,t=me){return t.format(e,"LLLL")}function Gd(e,t,n){return(n??new re(t)).format(e,"cccccc")}function Ud(e,t=me){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function Vd(){return""}function ga(e,t=me){return t.format(e,"yyyy")}const Qd=ga,Xd=Object.freeze(Object.defineProperty({__proto__:null,formatCaption:xa,formatDay:Kd,formatMonthCaption:qd,formatMonthDropdown:Hd,formatWeekNumber:Ud,formatWeekNumberHeader:Vd,formatWeekdayName:Gd,formatYearCaption:Qd,formatYearDropdown:ga},Symbol.toStringTag,{value:"Module"}));function Zd(e){return e?.formatMonthCaption&&!e.formatCaption&&(e.formatCaption=e.formatMonthCaption),e?.formatYearCaption&&!e.formatYearDropdown&&(e.formatYearDropdown=e.formatYearCaption),{...Xd,...e}}function hn(e,t,n,r){let a=(r??new re(n)).format(e,"PPPP");return t.today&&(a=`Today, ${a}`),t.selected&&(a=`${a}, selected`),a}const Jd=hn;function pn(e,t,n){return(n??new re(t)).formatMonthYear(e)}const eu=pn;function ya(e,t,n,r){let a=(r??new re(n)).format(e,"PPPP");return t?.today&&(a=`Today, ${a}`),a}function va(e){return"Choose the Month"}function ba(){return""}const tu="Go to the Next Month";function wa(e,t){return tu}function ja(e){return"Go to the Previous Month"}function ka(e,t,n){return(n??new re(t)).format(e,"cccc")}function Na(e,t){return`Week ${e}`}function Da(e){return"Week Number"}function Ma(e){return"Choose the Year"}const nu=Object.freeze(Object.defineProperty({__proto__:null,labelCaption:eu,labelDay:Jd,labelDayButton:hn,labelGrid:pn,labelGridcell:ya,labelMonthDropdown:va,labelNav:ba,labelNext:wa,labelPrevious:ja,labelWeekNumber:Na,labelWeekNumberHeader:Da,labelWeekday:ka,labelYearDropdown:Ma},Symbol.toStringTag,{value:"Module"})),oe=(e,t,n)=>t||(n?typeof n=="function"?n:(...r)=>n:e);function ru(e,t){const n=t.locale?.labels??{};return{...nu,...e??{},labelDayButton:oe(hn,e?.labelDayButton,n.labelDayButton),labelMonthDropdown:oe(va,e?.labelMonthDropdown,n.labelMonthDropdown),labelNext:oe(wa,e?.labelNext,n.labelNext),labelPrevious:oe(ja,e?.labelPrevious,n.labelPrevious),labelWeekNumber:oe(Na,e?.labelWeekNumber,n.labelWeekNumber),labelYearDropdown:oe(Ma,e?.labelYearDropdown,n.labelYearDropdown),labelGrid:oe(pn,e?.labelGrid,n.labelGrid),labelGridcell:oe(ya,e?.labelGridcell,n.labelGridcell),labelNav:oe(ba,e?.labelNav,n.labelNav),labelWeekNumberHeader:oe(Da,e?.labelWeekNumberHeader,n.labelWeekNumberHeader),labelWeekday:oe(ka,e?.labelWeekday,n.labelWeekday)}}function au(e,t,n,r,a){const{startOfMonth:o,startOfYear:l,endOfYear:i,eachMonthOfInterval:c,getMonth:d}=a;return c({start:l(e),end:i(e)}).map(p=>{const x=r.formatMonthDropdown(p,a),w=d(p),j=t&&p<o(t)||n&&p>o(n)||!1;return{value:w,label:x,disabled:j}})}function su(e,t={},n={}){let r={...t?.[S.Day]};return Object.entries(e).filter(([,a])=>a===!0).forEach(([a])=>{r={...r,...n?.[a]}}),r}function ou(e,t,n,r){const a=r??e.today(),o=n?e.startOfBroadcastWeek(a,e):t?e.startOfISOWeek(a):e.startOfWeek(a),l=[];for(let i=0;i<7;i++){const c=e.addDays(o,i);l.push(c)}return l}function iu(e,t,n,r,a=!1){if(!e||!t)return;const{startOfYear:o,endOfYear:l,eachYearOfInterval:i,getYear:c}=r,d=o(e),f=l(t),u=i({start:d,end:f});return a&&u.reverse(),u.map(p=>{const x=n.formatYearDropdown(p,r);return{value:c(p),label:x,disabled:!1}})}function lu(e,t={}){const{weekStartsOn:n,locale:r}=t,a=n??r?.options?.weekStartsOn??0,o=i=>{const c=typeof i=="number"||typeof i=="string"?new Date(i):i;return new Q(c.getFullYear(),c.getMonth(),c.getDate(),12,0,0,e)},l=i=>{const c=o(i);return new Date(c.getFullYear(),c.getMonth(),c.getDate(),0,0,0,0)};return{today:()=>o(Q.tz(e)),newDate:(i,c,d)=>new Q(i,c,d,12,0,0,e),startOfDay:i=>o(i),startOfWeek:(i,c)=>{const d=o(i),f=c?.weekStartsOn??a,u=(d.getDay()-f+7)%7;return d.setDate(d.getDate()-u),d},startOfISOWeek:i=>{const c=o(i),d=(c.getDay()-1+7)%7;return c.setDate(c.getDate()-d),c},startOfMonth:i=>{const c=o(i);return c.setDate(1),c},startOfYear:i=>{const c=o(i);return c.setMonth(0,1),c},endOfWeek:(i,c)=>{const d=o(i),p=(((c?.weekStartsOn??a)+6)%7-d.getDay()+7)%7;return d.setDate(d.getDate()+p),d},endOfISOWeek:i=>{const c=o(i),d=(7-c.getDay())%7;return c.setDate(c.getDate()+d),c},endOfMonth:i=>{const c=o(i);return c.setMonth(c.getMonth()+1,0),c},endOfYear:i=>{const c=o(i);return c.setMonth(11,31),c},eachMonthOfInterval:i=>{const c=o(i.start),d=o(i.end),f=[],u=new Q(c.getFullYear(),c.getMonth(),1,12,0,0,e),p=d.getFullYear()*12+d.getMonth();for(;u.getFullYear()*12+u.getMonth()<=p;)f.push(new Q(u,e)),u.setMonth(u.getMonth()+1,1);return f},addDays:(i,c)=>{const d=o(i);return d.setDate(d.getDate()+c),d},addWeeks:(i,c)=>{const d=o(i);return d.setDate(d.getDate()+c*7),d},addMonths:(i,c)=>{const d=o(i);return d.setMonth(d.getMonth()+c),d},addYears:(i,c)=>{const d=o(i);return d.setFullYear(d.getFullYear()+c),d},eachYearOfInterval:i=>{const c=o(i.start),d=o(i.end),f=[],u=new Q(c.getFullYear(),0,1,12,0,0,e);for(;u.getFullYear()<=d.getFullYear();)f.push(new Q(u,e)),u.setFullYear(u.getFullYear()+1,0,1);return f},getWeek:(i,c)=>{const d=l(i);return dn(d,{weekStartsOn:c?.weekStartsOn??a,firstWeekContainsDate:c?.firstWeekContainsDate??r?.options?.firstWeekContainsDate??1})},getISOWeek:i=>{const c=l(i);return cn(c)},differenceInCalendarDays:(i,c)=>{const d=l(i),f=l(c);return on(d,f)},differenceInCalendarMonths:(i,c)=>{const d=l(i),f=l(c);return ta(d,f)}}}const st=e=>e instanceof HTMLElement?e:null,zt=e=>[...e.querySelectorAll("[data-animated-month]")??[]],cu=e=>st(e.querySelector("[data-animated-month]")),$t=e=>st(e.querySelector("[data-animated-caption]")),Rt=e=>st(e.querySelector("[data-animated-weeks]")),du=e=>st(e.querySelector("[data-animated-nav]")),uu=e=>st(e.querySelector("[data-animated-weekdays]"));function fu(e,t,{classNames:n,months:r,focused:a,dateLib:o}){const l=h.useRef(null),i=h.useRef(r),c=h.useRef(!1);h.useLayoutEffect(()=>{const d=i.current;if(i.current=r,!t||!e.current||!(e.current instanceof HTMLElement)||r.length===0||d.length===0||r.length!==d.length)return;const f=o.isSameMonth(r[0].date,d[0].date),u=o.isAfter(r[0].date,d[0].date),p=u?n[te.caption_after_enter]:n[te.caption_before_enter],x=u?n[te.weeks_after_enter]:n[te.weeks_before_enter],w=l.current,j=e.current.cloneNode(!0);if(j instanceof HTMLElement?(zt(j).forEach(N=>{if(!(N instanceof HTMLElement))return;const m=cu(N);m&&N.contains(m)&&N.removeChild(m);const g=$t(N);g&&g.classList.remove(p);const v=Rt(N);v&&v.classList.remove(x)}),l.current=j):l.current=null,c.current||f||a)return;const b=w instanceof HTMLElement?zt(w):[],y=zt(e.current);if(y?.every(k=>k instanceof HTMLElement)&&b&&b.every(k=>k instanceof HTMLElement)){c.current=!0,e.current.style.isolation="isolate";const k=du(e.current);k&&(k.style.zIndex="1"),y.forEach((N,m)=>{const g=b[m];if(!g)return;N.style.position="relative",N.style.overflow="hidden";const v=$t(N);v&&v.classList.add(p);const D=Rt(N);D&&D.classList.add(x);const O=()=>{c.current=!1,e.current&&(e.current.style.isolation=""),k&&(k.style.zIndex=""),v&&v.classList.remove(p),D&&D.classList.remove(x),N.style.position="",N.style.overflow="",N.contains(g)&&N.removeChild(g)};g.style.pointerEvents="none",g.style.position="absolute",g.style.overflow="hidden",g.setAttribute("aria-hidden","true");const C=uu(g);C&&(C.style.opacity="0");const E=$t(g);E&&(E.classList.add(u?n[te.caption_before_exit]:n[te.caption_after_exit]),E.addEventListener("animationend",O));const G=Rt(g);G&&G.classList.add(u?n[te.weeks_before_exit]:n[te.weeks_after_exit]),N.insertBefore(g,N.firstChild)})}})}function mu(e,t,n,r){const a=e[0],o=e[e.length-1],{ISOWeek:l,fixedWeeks:i,broadcastCalendar:c}=n??{},{addDays:d,differenceInCalendarDays:f,differenceInCalendarMonths:u,endOfBroadcastWeek:p,endOfISOWeek:x,endOfMonth:w,endOfWeek:j,isAfter:b,startOfBroadcastWeek:y,startOfISOWeek:k,startOfWeek:N}=r,m=c?y(a,r):l?k(a):N(a),g=c?p(o):l?x(w(o)):j(w(o)),v=t&&(c?p(t):l?x(t):j(t)),D=v&&b(g,v)?v:g,O=f(D,m),C=u(o,a)+1,E=[];for(let R=0;R<=O;R++){const q=d(m,R);E.push(q)}const K=(c?35:42)*C;if(i&&E.length<K){const R=K-E.length;for(let q=0;q<R;q++){const U=d(E[E.length-1],1);E.push(U)}}return E}function hu(e){const t=[];return e.reduce((n,r)=>{const a=r.weeks.reduce((o,l)=>o.concat(l.days.slice()),t.slice());return n.concat(a.slice())},t.slice())}function pu(e,t,n,r){const{numberOfMonths:a=1}=n,o=[];for(let l=0;l<a;l++){const i=r.addMonths(e,l);if(t&&i>t)break;o.push(i)}return o}function Qn(e,t,n,r){const{month:a,defaultMonth:o,today:l=r.today(),numberOfMonths:i=1}=e;let c=a||o||l;const{differenceInCalendarMonths:d,addMonths:f,startOfMonth:u}=r;if(n&&d(n,c)<i-1){const p=-1*(i-1);c=f(n,p)}return t&&d(c,t)<0&&(c=t),u(c)}function xu(e,t,n,r){const{addDays:a,endOfBroadcastWeek:o,endOfISOWeek:l,endOfMonth:i,endOfWeek:c,getISOWeek:d,getWeek:f,startOfBroadcastWeek:u,startOfISOWeek:p,startOfWeek:x}=r,w=e.reduce((j,b)=>{const y=n.broadcastCalendar?u(b,r):n.ISOWeek?p(b):x(b),k=n.broadcastCalendar?o(b):n.ISOWeek?l(i(b)):c(i(b)),N=t.filter(D=>D>=y&&D<=k),m=n.broadcastCalendar?35:42;if(n.fixedWeeks&&N.length<m){const D=t.filter(O=>{const C=m-N.length;return O>k&&O<=a(k,C)});N.push(...D)}const g=N.reduce((D,O)=>{const C=n.ISOWeek?d(O):f(O),E=D.find(K=>K.weekNumber===C),G=new fa(O,b,r);return E?E.days.push(G):D.push(new ud(C,[G])),D},[]),v=new dd(b,g);return j.push(v),j},[]);return n.reverseMonths?w.reverse():w}function gu(e,t){let{startMonth:n,endMonth:r}=e;const{startOfYear:a,startOfDay:o,startOfMonth:l,endOfMonth:i,addYears:c,endOfYear:d,newDate:f,today:u}=t,{fromYear:p,toYear:x,fromMonth:w,toMonth:j}=e;!n&&w&&(n=w),!n&&p&&(n=t.newDate(p,0,1)),!r&&j&&(r=j),!r&&x&&(r=f(x,11,31));const b=e.captionLayout==="dropdown"||e.captionLayout==="dropdown-years";return n?n=l(n):p?n=f(p,0,1):!n&&b&&(n=a(c(e.today??u(),-100))),r?r=i(r):x?r=f(x,11,31):!r&&b&&(r=d(e.today??u())),[n&&o(n),r&&o(r)]}function yu(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:a,numberOfMonths:o=1}=n,{startOfMonth:l,addMonths:i,differenceInCalendarMonths:c}=r,d=a?o:1,f=l(e);if(!t)return i(f,d);if(!(c(t,e)<o))return i(f,d)}function vu(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:a,numberOfMonths:o}=n,{startOfMonth:l,addMonths:i,differenceInCalendarMonths:c}=r,d=a?o??1:1,f=l(e);if(!t)return i(f,-d);if(!(c(f,t)<=0))return i(f,-d)}function bu(e){const t=[];return e.reduce((n,r)=>n.concat(r.weeks.slice()),t.slice())}function Wt(e,t){const[n,r]=h.useState(e);return[t===void 0?n:t,r]}function wu(e,t){const[n,r]=gu(e,t),{startOfMonth:a,endOfMonth:o}=t,l=Qn(e,n,r,t),[i,c]=Wt(l,e.month?l:void 0);h.useEffect(()=>{const m=Qn(e,n,r,t);c(m)},[e.timeZone]);const{months:d,weeks:f,days:u,previousMonth:p,nextMonth:x}=h.useMemo(()=>{const m=pu(i,r,{numberOfMonths:e.numberOfMonths},t),g=mu(m,e.endMonth?o(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),v=xu(m,g,{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t),D=bu(v),O=hu(v),C=vu(i,n,e,t),E=yu(i,r,e,t);return{months:v,weeks:D,days:O,previousMonth:C,nextMonth:E}},[t,i.getTime(),r?.getTime(),n?.getTime(),e.disableNavigation,e.broadcastCalendar,e.endMonth?.getTime(),e.fixedWeeks,e.ISOWeek,e.numberOfMonths,e.pagedNavigation,e.reverseMonths]),{disableNavigation:w,onMonthChange:j}=e,b=m=>f.some(g=>g.days.some(v=>v.isEqualTo(m))),y=m=>{if(w)return;let g=a(m);n&&g<a(n)&&(g=a(n)),r&&g>a(r)&&(g=a(r)),c(g),j?.(g)};return{months:d,weeks:f,days:u,navStart:n,navEnd:r,previousMonth:p,nextMonth:x,goToMonth:y,goToDay:m=>{b(m)||y(m.date)}}}var de;(function(e){e[e.Today=0]="Today",e[e.Selected=1]="Selected",e[e.LastFocused=2]="LastFocused",e[e.FocusedModifier=3]="FocusedModifier"})(de||(de={}));function Xn(e){return!e[z.disabled]&&!e[z.hidden]&&!e[z.outside]}function ju(e,t,n,r){let a,o=-1;for(const l of e){const i=t(l);Xn(i)&&(i[z.focused]&&o<de.FocusedModifier?(a=l,o=de.FocusedModifier):r?.isEqualTo(l)&&o<de.LastFocused?(a=l,o=de.LastFocused):n(l.date)&&o<de.Selected?(a=l,o=de.Selected):i[z.today]&&o<de.Today&&(a=l,o=de.Today))}return a||(a=e.find(l=>Xn(t(l)))),a}function ku(e,t,n,r,a,o,l){const{ISOWeek:i,broadcastCalendar:c}=o,{addDays:d,addMonths:f,addWeeks:u,addYears:p,endOfBroadcastWeek:x,endOfISOWeek:w,endOfWeek:j,max:b,min:y,startOfBroadcastWeek:k,startOfISOWeek:N,startOfWeek:m}=l;let v={day:d,week:u,month:f,year:p,startOfWeek:D=>c?k(D,l):i?N(D):m(D),endOfWeek:D=>c?x(D):i?w(D):j(D)}[e](n,t==="after"?1:-1);return t==="before"&&r?v=b([r,v]):t==="after"&&a&&(v=y([a,v])),v}function Oa(e,t,n,r,a,o,l,i=0){if(i>365)return;const c=ku(e,t,n.date,r,a,o,l),d=!!(o.disabled&&ve(c,o.disabled,l)),f=!!(o.hidden&&ve(c,o.hidden,l)),u=c,p=new fa(c,u,l);return!d&&!f?p:Oa(e,t,p,r,a,o,l,i+1)}function Nu(e,t,n,r,a){const{autoFocus:o}=e,[l,i]=h.useState(),c=ju(t.days,n,r||(()=>!1),l),[d,f]=h.useState(o?c:void 0);return{isFocusTarget:j=>!!c?.isEqualTo(j),setFocused:f,focused:d,blur:()=>{i(d),f(void 0)},moveFocus:(j,b)=>{if(!d)return;const y=Oa(j,b,d,t.navStart,t.navEnd,e,a);y&&(e.disableNavigation&&!t.days.some(N=>N.isEqualTo(y))||(t.goToDay(y),f(y)))}}}function Du(e,t){const{selected:n,required:r,onSelect:a}=e,[o,l]=Wt(n,a?n:void 0),i=a?n:o,{isSameDay:c}=t,d=x=>i?.some(w=>c(w,x))??!1,{min:f,max:u}=e;return{selected:i,select:(x,w,j)=>{let b=[...i??[]];if(d(x)){if(i?.length===f||r&&i?.length===1)return;b=i?.filter(y=>!c(y,x))}else i?.length===u?b=[x]:b=[...b,x];return a||l(b),a?.(b,x,w,j),b},isSelected:d}}function Mu(e,t,n=0,r=0,a=!1,o=me){const{from:l,to:i}=t||{},{isSameDay:c,isAfter:d,isBefore:f}=o;let u;if(!l&&!i)u={from:e,to:n>0?void 0:e};else if(l&&!i)c(l,e)?n===0?u={from:l,to:e}:a?u={from:l,to:void 0}:u=void 0:f(e,l)?u={from:e,to:l}:u={from:l,to:e};else if(l&&i)if(c(l,e)&&c(i,e))a?u={from:l,to:i}:u=void 0;else if(c(l,e))u={from:l,to:n>0?void 0:e};else if(c(i,e))u={from:e,to:n>0?void 0:e};else if(f(e,l))u={from:e,to:i};else if(d(e,l))u={from:l,to:e};else if(d(e,i))u={from:l,to:e};else throw new Error("Invalid range");if(u?.from&&u?.to){const p=o.differenceInCalendarDays(u.to,u.from);r>0&&p>r?u={from:e,to:void 0}:n>1&&p<n&&(u={from:e,to:void 0})}return u}function Ou(e,t,n=me){const r=Array.isArray(t)?t:[t];let a=e.from;const o=n.differenceInCalendarDays(e.to,e.from),l=Math.min(o,6);for(let i=0;i<=l;i++){if(r.includes(a.getDay()))return!0;a=n.addDays(a,1)}return!1}function Zn(e,t,n=me){return ye(e,t.from,!1,n)||ye(e,t.to,!1,n)||ye(t,e.from,!1,n)||ye(t,e.to,!1,n)}function Su(e,t,n=me){const r=Array.isArray(t)?t:[t];if(r.filter(i=>typeof i!="function").some(i=>typeof i=="boolean"?i:n.isDate(i)?ye(e,i,!1,n):pa(i,n)?i.some(c=>ye(e,c,!1,n)):Pt(i)?i.from&&i.to?Zn(e,{from:i.from,to:i.to},n):!1:ha(i)?Ou(e,i.dayOfWeek,n):un(i)?n.isAfter(i.before,i.after)?Zn(e,{from:n.addDays(i.after,1),to:n.addDays(i.before,-1)},n):ve(e.from,i,n)||ve(e.to,i,n):fn(i)||mn(i)?ve(e.from,i,n)||ve(e.to,i,n):!1))return!0;const l=r.filter(i=>typeof i=="function");if(l.length){let i=e.from;const c=n.differenceInCalendarDays(e.to,e.from);for(let d=0;d<=c;d++){if(l.some(f=>f(i)))return!0;i=n.addDays(i,1)}}return!1}function Cu(e,t){const{disabled:n,excludeDisabled:r,selected:a,required:o,onSelect:l}=e,[i,c]=Wt(a,l?a:void 0),d=l?a:i;return{selected:d,select:(p,x,w)=>{const{min:j,max:b}=e,y=p?Mu(p,d,j,b,o,t):void 0;return r&&n&&y?.from&&y.to&&Su({from:y.from,to:y.to},n,t)&&(y.from=p,y.to=void 0),l||c(y),l?.(y,p,x,w),y},isSelected:p=>d&&ye(d,p,!1,t)}}function Pu(e,t){const{selected:n,required:r,onSelect:a}=e,[o,l]=Wt(n,a?n:void 0),i=a?n:o,{isSameDay:c}=t;return{selected:i,select:(u,p,x)=>{let w=u;return!r&&i&&i&&c(u,i)&&(w=void 0),a||l(w),a?.(w,u,p,x),w},isSelected:u=>i?c(i,u):!1}}function Wu(e,t){const n=Pu(e,t),r=Du(e,t),a=Cu(e,t);switch(e.mode){case"single":return n;case"multiple":return r;case"range":return a;default:return}}function se(e,t){return e instanceof Q&&e.timeZone===t?e:new Q(e,t)}function Ie(e,t,n){return se(e,t)}function Jn(e,t,n){return typeof e=="boolean"||typeof e=="function"?e:e instanceof Date?Ie(e,t):Array.isArray(e)?e.map(r=>r instanceof Date?Ie(r,t):r):Pt(e)?{...e,from:e.from?se(e.from,t):e.from,to:e.to?se(e.to,t):e.to}:un(e)?{before:Ie(e.before,t),after:Ie(e.after,t)}:fn(e)?{after:Ie(e.after,t)}:mn(e)?{before:Ie(e.before,t)}:e}function qt(e,t,n){return e&&(Array.isArray(e)?e.map(r=>Jn(r,t)):Jn(e,t))}function Eu(e){let t=e;const n=t.timeZone;if(n&&(t={...e,timeZone:n},t.today&&(t.today=se(t.today,n)),t.month&&(t.month=se(t.month,n)),t.defaultMonth&&(t.defaultMonth=se(t.defaultMonth,n)),t.startMonth&&(t.startMonth=se(t.startMonth,n)),t.endMonth&&(t.endMonth=se(t.endMonth,n)),t.mode==="single"&&t.selected?t.selected=se(t.selected,n):t.mode==="multiple"&&t.selected?t.selected=t.selected?.map(W=>se(W,n)):t.mode==="range"&&t.selected&&(t.selected={from:t.selected.from?se(t.selected.from,n):t.selected.from,to:t.selected.to?se(t.selected.to,n):t.selected.to}),t.disabled!==void 0&&(t.disabled=qt(t.disabled,n)),t.hidden!==void 0&&(t.hidden=qt(t.hidden,n)),t.modifiers)){const W={};Object.keys(t.modifiers).forEach(A=>{W[A]=qt(t.modifiers?.[A],n)}),t.modifiers=W}const{components:r,formatters:a,labels:o,dateLib:l,locale:i,classNames:c}=h.useMemo(()=>{const W={...ua,...t.locale},A=t.broadcastCalendar?1:t.weekStartsOn,P=t.noonSafe&&t.timeZone?lu(t.timeZone,{weekStartsOn:A,locale:W}):void 0,T=t.dateLib&&P?{...P,...t.dateLib}:t.dateLib??P,J=new re({locale:W,weekStartsOn:A,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},T);return{dateLib:J,components:zd(t.components),formatters:Zd(t.formatters),labels:ru(t.labels,J.options),locale:W,classNames:{...Rd(),...t.classNames}}},[t.locale,t.broadcastCalendar,t.weekStartsOn,t.firstWeekContainsDate,t.useAdditionalWeekYearTokens,t.useAdditionalDayOfYearTokens,t.timeZone,t.numerals,t.dateLib,t.noonSafe,t.components,t.formatters,t.labels,t.classNames]);t.today||(t={...t,today:l.today()});const{captionLayout:d,mode:f,navLayout:u,numberOfMonths:p=1,onDayBlur:x,onDayClick:w,onDayFocus:j,onDayKeyDown:b,onDayMouseEnter:y,onDayMouseLeave:k,onNextClick:N,onPrevClick:m,showWeekNumber:g,styles:v}=t,{formatCaption:D,formatDay:O,formatMonthDropdown:C,formatWeekNumber:E,formatWeekNumberHeader:G,formatWeekdayName:K,formatYearDropdown:R}=a,q=wu(t,l),{days:U,months:ae,navStart:we,navEnd:he,previousMonth:Y,nextMonth:V,goToMonth:Z}=q,je=Yd(U,t,we,he,l),{isSelected:Et,select:It,selected:ot}=Wu(t,l)??{},{blur:xn,focused:gn,isFocusTarget:Pa,moveFocus:yn,setFocused:it}=Nu(t,q,je,Et??(()=>!1),l),{labelDayButton:Wa,labelGridcell:Ea,labelGrid:Ia,labelMonthDropdown:Ta,labelNav:vn,labelPrevious:Aa,labelNext:_a,labelWeekday:Fa,labelWeekNumber:Ba,labelWeekNumberHeader:Ya,labelYearDropdown:La}=o,za=h.useMemo(()=>ou(l,t.ISOWeek,t.broadcastCalendar,t.today),[l,t.ISOWeek,t.broadcastCalendar,t.today]),bn=f!==void 0||w!==void 0,Tt=h.useCallback(()=>{Y&&(Z(Y),m?.(Y))},[Y,Z,m]),At=h.useCallback(()=>{V&&(Z(V),N?.(V))},[Z,V,N]),$a=h.useCallback((W,A)=>P=>{P.preventDefault(),P.stopPropagation(),it(W),!A.disabled&&(It?.(W.date,A,P),w?.(W.date,A,P))},[It,w,it]),Ra=h.useCallback((W,A)=>P=>{it(W),j?.(W.date,A,P)},[j,it]),qa=h.useCallback((W,A)=>P=>{xn(),x?.(W.date,A,P)},[xn,x]),Ka=h.useCallback((W,A)=>P=>{const T={ArrowLeft:[P.shiftKey?"month":"day",t.dir==="rtl"?"after":"before"],ArrowRight:[P.shiftKey?"month":"day",t.dir==="rtl"?"before":"after"],ArrowDown:[P.shiftKey?"year":"week","after"],ArrowUp:[P.shiftKey?"year":"week","before"],PageUp:[P.shiftKey?"year":"month","before"],PageDown:[P.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(T[P.key]){P.preventDefault(),P.stopPropagation();const[J,I]=T[P.key];yn(J,I)}b?.(W.date,A,P)},[yn,b,t.dir]),Ha=h.useCallback((W,A)=>P=>{y?.(W.date,A,P)},[y]),Ga=h.useCallback((W,A)=>P=>{k?.(W.date,A,P)},[k]),Ua=h.useCallback(W=>A=>{const P=Number(A.target.value),T=l.setMonth(l.startOfMonth(W),P);Z(T)},[l,Z]),Va=h.useCallback(W=>A=>{const P=Number(A.target.value),T=l.setYear(l.startOfMonth(W),P);Z(T)},[l,Z]),{className:Qa,style:Xa}=h.useMemo(()=>({className:[c[S.Root],t.className].filter(Boolean).join(" "),style:{...v?.[S.Root],...t.style}}),[c,t.className,t.style,v]),Za=$d(t),wn=h.useRef(null);fu(wn,!!t.animate,{classNames:c,months:ae,focused:gn,dateLib:l});const Ja={dayPickerProps:t,selected:ot,select:It,isSelected:Et,months:ae,nextMonth:V,previousMonth:Y,goToMonth:Z,getModifiers:je,components:r,classNames:c,styles:v,labels:o,formatters:a};return M.createElement(ma.Provider,{value:Ja},M.createElement(r.Root,{rootRef:t.animate?wn:void 0,className:Qa,style:Xa,dir:t.dir,id:t.id,lang:t.lang,nonce:t.nonce,title:t.title,role:t.role,"aria-label":t["aria-label"],"aria-labelledby":t["aria-labelledby"],...Za},M.createElement(r.Months,{className:c[S.Months],style:v?.[S.Months]},!t.hideNavigation&&!u&&M.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:c[S.Nav],style:v?.[S.Nav],"aria-label":vn(),onPreviousClick:Tt,onNextClick:At,previousMonth:Y,nextMonth:V}),ae.map((W,A)=>M.createElement(r.Month,{"data-animated-month":t.animate?"true":void 0,className:c[S.Month],style:v?.[S.Month],key:A,displayIndex:A,calendarMonth:W},u==="around"&&!t.hideNavigation&&A===0&&M.createElement(r.PreviousMonthButton,{type:"button",className:c[S.PreviousMonthButton],tabIndex:Y?void 0:-1,"aria-disabled":Y?void 0:!0,"aria-label":Aa(Y),onClick:Tt,"data-animated-button":t.animate?"true":void 0},M.createElement(r.Chevron,{disabled:Y?void 0:!0,className:c[S.Chevron],orientation:t.dir==="rtl"?"right":"left"})),M.createElement(r.MonthCaption,{"data-animated-caption":t.animate?"true":void 0,className:c[S.MonthCaption],style:v?.[S.MonthCaption],calendarMonth:W,displayIndex:A},d?.startsWith("dropdown")?M.createElement(r.DropdownNav,{className:c[S.Dropdowns],style:v?.[S.Dropdowns]},(()=>{const P=d==="dropdown"||d==="dropdown-months"?M.createElement(r.MonthsDropdown,{key:"month",className:c[S.MonthsDropdown],"aria-label":Ta(),classNames:c,components:r,disabled:!!t.disableNavigation,onChange:Ua(W.date),options:au(W.date,we,he,a,l),style:v?.[S.Dropdown],value:l.getMonth(W.date)}):M.createElement("span",{key:"month"},C(W.date,l)),T=d==="dropdown"||d==="dropdown-years"?M.createElement(r.YearsDropdown,{key:"year",className:c[S.YearsDropdown],"aria-label":La(l.options),classNames:c,components:r,disabled:!!t.disableNavigation,onChange:Va(W.date),options:iu(we,he,a,l,!!t.reverseYears),style:v?.[S.Dropdown],value:l.getYear(W.date)}):M.createElement("span",{key:"year"},R(W.date,l));return l.getMonthYearOrder()==="year-first"?[T,P]:[P,T]})(),M.createElement("span",{role:"status","aria-live":"polite",style:{border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",width:"1px",whiteSpace:"nowrap",wordWrap:"normal"}},D(W.date,l.options,l))):M.createElement(r.CaptionLabel,{className:c[S.CaptionLabel],role:"status","aria-live":"polite"},D(W.date,l.options,l))),u==="around"&&!t.hideNavigation&&A===p-1&&M.createElement(r.NextMonthButton,{type:"button",className:c[S.NextMonthButton],tabIndex:V?void 0:-1,"aria-disabled":V?void 0:!0,"aria-label":_a(V),onClick:At,"data-animated-button":t.animate?"true":void 0},M.createElement(r.Chevron,{disabled:V?void 0:!0,className:c[S.Chevron],orientation:t.dir==="rtl"?"left":"right"})),A===p-1&&u==="after"&&!t.hideNavigation&&M.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:c[S.Nav],style:v?.[S.Nav],"aria-label":vn(),onPreviousClick:Tt,onNextClick:At,previousMonth:Y,nextMonth:V}),M.createElement(r.MonthGrid,{role:"grid","aria-multiselectable":f==="multiple"||f==="range","aria-label":Ia(W.date,l.options,l)||void 0,className:c[S.MonthGrid],style:v?.[S.MonthGrid]},!t.hideWeekdays&&M.createElement(r.Weekdays,{"data-animated-weekdays":t.animate?"true":void 0,className:c[S.Weekdays],style:v?.[S.Weekdays]},g&&M.createElement(r.WeekNumberHeader,{"aria-label":Ya(l.options),className:c[S.WeekNumberHeader],style:v?.[S.WeekNumberHeader],scope:"col"},G()),za.map(P=>M.createElement(r.Weekday,{"aria-label":Fa(P,l.options,l),className:c[S.Weekday],key:String(P),style:v?.[S.Weekday],scope:"col"},K(P,l.options,l)))),M.createElement(r.Weeks,{"data-animated-weeks":t.animate?"true":void 0,className:c[S.Weeks],style:v?.[S.Weeks]},W.weeks.map(P=>M.createElement(r.Week,{className:c[S.Week],key:P.weekNumber,style:v?.[S.Week],week:P},g&&M.createElement(r.WeekNumber,{week:P,style:v?.[S.WeekNumber],"aria-label":Ba(P.weekNumber,{locale:i}),className:c[S.WeekNumber],scope:"row",role:"rowheader"},E(P.weekNumber,l)),P.days.map(T=>{const{date:J}=T,I=je(T);if(I[z.focused]=!I.hidden&&!!gn?.isEqualTo(T),I[le.selected]=Et?.(J)||I.selected,Pt(ot)){const{from:_t,to:Ft}=ot;I[le.range_start]=!!(_t&&Ft&&l.isSameDay(J,_t)),I[le.range_end]=!!(_t&&Ft&&l.isSameDay(J,Ft)),I[le.range_middle]=ye(ot,J,!0,l)}const es=su(I,v,t.modifiersStyles),ts=Ld(I,c,t.modifiersClassNames),ns=!bn&&!I.hidden?Ea(J,I,l.options,l):void 0;return M.createElement(r.Day,{key:`${T.isoDate}_${T.displayMonthId}`,day:T,modifiers:I,className:ts.join(" "),style:es,role:"gridcell","aria-selected":I.selected||void 0,"aria-label":ns,"data-day":T.isoDate,"data-month":T.outside?T.dateMonthId:void 0,"data-selected":I.selected||void 0,"data-disabled":I.disabled||void 0,"data-hidden":I.hidden||void 0,"data-outside":T.outside||void 0,"data-focused":I.focused||void 0,"data-today":I.today||void 0},!I.hidden&&bn?M.createElement(r.DayButton,{className:c[S.DayButton],style:v?.[S.DayButton],type:"button",day:T,modifiers:I,disabled:!I.focused&&I.disabled||void 0,"aria-disabled":I.focused&&I.disabled||void 0,tabIndex:Pa(T)?0:-1,"aria-label":Wa(J,I,l.options,l),onClick:$a(T,I),onBlur:qa(T,I),onFocus:Ra(T,I),onKeyDown:Ka(T,I),onMouseEnter:Ha(T,I),onMouseLeave:Ga(T,I)},O(J,l.options,l)):!I.hidden&&O(T.date,l.options,l))})))))))),t.footer&&M.createElement(r.Footer,{className:c[S.Footer],style:v?.[S.Footer],role:"status","aria-live":"polite"},t.footer)))}function Sa({className:e,classNames:t,showOutsideDays:n=!0,...r}){return s.jsx(Eu,{showOutsideDays:n,className:B("p-3",e),classNames:{months:"flex flex-col sm:flex-row gap-4 sm:gap-6",month:"flex flex-col gap-4",month_caption:"flex justify-center pt-1 relative items-center w-full",caption_label:"text-sm font-medium",nav:"flex items-center gap-1",button_previous:"absolute left-1 h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100 border border-input rounded-md flex items-center justify-center hover:bg-accent",button_next:"absolute right-1 h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100 border border-input rounded-md flex items-center justify-center hover:bg-accent",month_grid:"w-full border-collapse",weekdays:"flex",weekday:"text-muted-foreground rounded-md w-9 font-normal text-[0.8rem] text-center",week:"flex w-full mt-2",day:"h-9 w-9 text-center text-sm p-0 relative",day_button:"h-9 w-9 p-0 font-normal rounded-md hover:bg-accent hover:text-accent-foreground transition-colors",selected:"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground",today:"text-primary font-bold",outside:"text-muted-foreground opacity-50",disabled:"text-muted-foreground opacity-50 pointer-events-none",hidden:"invisible",...t},components:{Chevron:({orientation:a})=>{const o=a==="left"?ss:nr;return s.jsx(o,{className:"h-4 w-4"})}},...r})}Sa.displayName="Calendar";function Iu({value:e,onChange:t,placeholder:n="Pick a date range",className:r,disabled:a=!1,presets:o=!0}){const[l,i]=h.useState(!1),[c,d]=h.useState(e);h.useEffect(()=>{d(e)},[e]);const f=b=>{d(b),t?.(b)},u=b=>{const y=new Date,k=sn(y,b),N={from:y,to:k};d(N),t?.(N),i(!1)},p=()=>{const b=new Date,y={from:Ce(b,{weekStartsOn:1}),to:ln(b,{weekStartsOn:1})};d(y),t?.(y),i(!1)},x=()=>{const b=new Date,y={from:aa(b),to:na(b)};d(y),t?.(y),i(!1)},w=b=>{b.stopPropagation(),d(void 0),t?.(void 0)},j=()=>{t?.(c),i(!1)};return s.jsxs(bs,{open:l,onOpenChange:i,children:[s.jsx(ws,{asChild:!0,children:s.jsxs(L,{variant:"outline",disabled:a,className:B("w-full justify-start text-left font-normal",!e?.from&&"text-muted-foreground",r),children:[s.jsx(Mt,{className:"mr-2 h-4 w-4"}),e?.from?e.to?s.jsxs(s.Fragment,{children:[H(e.from,"LLL dd, y")," - ",H(e.to,"LLL dd, y")]}):H(e.from,"LLL dd, y"):s.jsx("span",{children:n}),e?.from&&s.jsx(rr,{className:"ml-auto h-4 w-4 opacity-50 hover:opacity-100",onClick:w})]})}),s.jsx(js,{className:"w-auto p-0",align:"start",children:s.jsxs("div",{className:"flex flex-col",children:[s.jsxs("div",{className:"flex",children:[o&&s.jsxs("div",{className:"border-r border-border p-2 space-y-1 min-w-30",children:[s.jsx("p",{className:"text-xs font-medium text-muted-foreground px-2 py-1",children:"Quick Select"}),s.jsx(L,{variant:"ghost",size:"sm",className:"w-full justify-start text-sm h-8",onClick:()=>u(7),children:"1 week"}),s.jsx(L,{variant:"ghost",size:"sm",className:"w-full justify-start text-sm h-8",onClick:()=>u(14),children:"2 weeks"}),s.jsx(L,{variant:"ghost",size:"sm",className:"w-full justify-start text-sm h-8",onClick:()=>u(21),children:"3 weeks"}),s.jsx(L,{variant:"ghost",size:"sm",className:"w-full justify-start text-sm h-8",onClick:()=>u(30),children:"1 month"}),s.jsx("div",{className:"border-t border-border my-1"}),s.jsx(L,{variant:"ghost",size:"sm",className:"w-full justify-start text-sm h-8",onClick:p,children:"This week"}),s.jsx(L,{variant:"ghost",size:"sm",className:"w-full justify-start text-sm h-8",onClick:x,children:"This month"})]}),s.jsx(Sa,{mode:"range",defaultMonth:c?.from,selected:c,onSelect:f,numberOfMonths:2})]}),s.jsxs("div",{className:"flex items-center justify-between border-t border-border p-3 bg-muted/30",children:[s.jsx("div",{className:"text-sm text-muted-foreground",children:c?.from&&c?.to?s.jsxs("span",{className:"text-foreground font-medium",children:[Math.ceil((c.to.getTime()-c.from.getTime())/(1e3*60*60*24))," days selected"]}):c?.from?s.jsx("span",{children:"Select end date"}):s.jsx("span",{children:"Select start date"})}),s.jsxs(L,{size:"sm",onClick:j,disabled:!c?.from,className:"gap-1",children:[s.jsx(os,{className:"h-4 w-4"}),"Done"]})]})]})})]})}function Tu({projectId:e,open:t,onOpenChange:n,onSuccess:r}){const a=Nt(),[o,l]=h.useState("quick"),[i,c]=h.useState(""),[d,f]=h.useState(""),[u,p]=h.useState(""),[x,w]=h.useState(),[j,b]=h.useState(""),[y,k]=h.useState(!1),N=Ve({mutationFn:()=>{const O=x?.from?H(x.from,"yyyy-MM-dd"):void 0,C=x?.to?H(x.to,"yyyy-MM-dd"):void 0;return ie.projects.sprints.create(e,{name:i,goal:d||void 0,description:o==="detailed"&&u?u:void 0,startDate:y?void 0:O,endDate:y?void 0:C,capacity:j?parseInt(j):void 0})},onSuccess:()=>{ne.success("Sprint created"),a.invalidateQueries({queryKey:["sprints",e]}),n(!1),m(),r?.()},onError:O=>{ne.error(O.message||"Failed to create sprint")}}),m=()=>{c(""),f(""),p(""),w(void 0),b(""),k(!1),l("quick")},g=O=>{if(O.preventDefault(),!i.trim()){ne.error("Sprint name is required");return}N.mutate()},D=!x?.from||!x?.to?null:Math.ceil((x.to.getTime()-x.from.getTime())/(1e3*60*60*24));return s.jsx(ps,{open:t,onOpenChange:n,children:s.jsxs(xs,{className:"sm:max-w-lg overflow-hidden",children:[s.jsx(gs,{className:"pb-4 border-b border-border",children:s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"p-2 rounded-xl bg-primary/10",children:s.jsx(Gt,{className:"h-5 w-5 text-primary"})}),s.jsxs("div",{children:[s.jsx(ys,{className:"text-lg",children:"Create Sprint"}),s.jsx(vs,{className:"text-sm",children:"Plan a new iteration for your project"})]})]})}),s.jsxs("div",{className:"flex gap-2 p-1 bg-muted/50 rounded-lg",children:[s.jsxs("button",{type:"button",onClick:()=>l("quick"),className:B("flex-1 flex items-center justify-center gap-2 py-2 px-3 rounded-md text-sm font-medium transition-all",o==="quick"?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:[s.jsx(pt,{className:"h-4 w-4"}),"Quick Create"]}),s.jsxs("button",{type:"button",onClick:()=>l("detailed"),className:B("flex-1 flex items-center justify-center gap-2 py-2 px-3 rounded-md text-sm font-medium transition-all",o==="detailed"?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:[s.jsx(Do,{className:"h-4 w-4"}),"Detailed"]})]}),s.jsxs("form",{onSubmit:g,className:"space-y-4",children:[s.jsxs("div",{className:"space-y-2",children:[s.jsxs(Le,{htmlFor:"name",className:"text-sm font-medium",children:["Sprint Name ",s.jsx("span",{className:"text-destructive",children:"*"})]}),s.jsx(xt,{id:"name",value:i,onChange:O=>c(O.target.value),placeholder:"Sprint 1",className:"h-10",autoFocus:!0})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsxs(Le,{className:"text-sm font-medium flex items-center gap-2",children:[s.jsx(Mt,{className:"h-4 w-4 text-muted-foreground"}),"Duration"]}),s.jsx("button",{type:"button",onClick:()=>{k(!y),y||w(void 0)},className:B("text-xs px-2 py-1 rounded-md transition-colors",y?"bg-amber-500/10 text-amber-500":"text-muted-foreground hover:text-foreground hover:bg-muted"),children:y?"📝 Draft Mode":"Save as draft"})]}),y?s.jsx("div",{className:"p-3 rounded-lg bg-amber-500/5 border border-amber-500/20",children:s.jsx("p",{className:"text-sm text-amber-600 dark:text-amber-400",children:"Draft sprints have no dates. You can add dates later when you're ready to start."})}):s.jsx(Iu,{value:x,onChange:w,placeholder:"Select sprint dates"}),D&&!y&&s.jsxs("p",{className:"text-xs text-muted-foreground flex items-center gap-1",children:[s.jsx("span",{className:"inline-block w-2 h-2 rounded-full bg-primary"}),D," day",D!==1?"s":""," sprint"]})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsx(Le,{htmlFor:"goal",className:"text-sm font-medium",children:"Sprint Goal"}),s.jsx(Nn,{id:"goal",value:d,onChange:O=>f(O.target.value),placeholder:"What do you want to achieve?",className:"resize-none",rows:o==="quick"?2:3})]}),o==="detailed"&&s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"space-y-2",children:[s.jsx(Le,{htmlFor:"description",className:"text-sm font-medium",children:"Description"}),s.jsx(Nn,{id:"description",value:u,onChange:O=>p(O.target.value),placeholder:"Additional details about this sprint...",className:"resize-none",rows:3})]}),s.jsxs("div",{className:"space-y-2",children:[s.jsxs(Le,{htmlFor:"capacity",className:"text-sm font-medium flex items-center gap-2",children:[s.jsx(is,{className:"h-4 w-4 text-muted-foreground"}),"Capacity (Story Points)"]}),s.jsx(xt,{id:"capacity",type:"number",value:j,onChange:O=>b(O.target.value),placeholder:"e.g., 20",className:"w-32 h-10",min:0}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Total story points planned for this sprint"})]})]}),s.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-border",children:[s.jsx(L,{type:"button",variant:"ghost",onClick:()=>n(!1),children:"Cancel"}),s.jsx(L,{type:"submit",disabled:!i.trim()||N.isPending,className:"gap-2 min-w-30",children:N.isPending?s.jsxs(s.Fragment,{children:[s.jsx(Be,{className:"h-4 w-4 animate-spin"}),"Creating..."]}):s.jsxs(s.Fragment,{children:[s.jsx(Gt,{className:"h-4 w-4"}),y?"Save Draft":"Create Sprint"]})})]})]})]})})}function Au({sprintId:e,className:t}){const{data:n,isLoading:r,error:a}=Ae({queryKey:["sprint-burndown",e],queryFn:()=>ie.stats.sprintBurndown(e),enabled:!!e});if(r)return s.jsx("div",{className:`flex items-center justify-center h-64 ${t}`,children:s.jsx(Be,{className:"h-6 w-6 animate-spin text-muted-foreground"})});if(a||!n)return s.jsx("div",{className:`flex items-center justify-center h-64 text-muted-foreground ${t}`,children:s.jsx("p",{children:"Failed to load burndown data"})});if(n.burndown.length===0)return s.jsxs("div",{className:`flex flex-col items-center justify-center h-64 text-muted-foreground ${t}`,children:[s.jsx(Ut,{className:"h-10 w-10 mb-3 opacity-50"}),s.jsx("p",{children:"No burndown data available"}),s.jsx("p",{className:"text-xs mt-1",children:"Set sprint start and end dates to see the burndown chart"})]});const o=n.burndown.map(i=>({date:i.date,displayDate:H(Yt(i.date),"MMM d"),ideal:i.ideal,actual:i.remaining})),l=n.totalPoints>0?Math.round(n.completedPoints/n.totalPoints*100):0;return s.jsxs("div",{className:t,children:[s.jsxs("div",{className:"flex items-center justify-between mb-4",children:[s.jsxs("div",{children:[s.jsxs("h3",{className:"font-semibold flex items-center gap-2",children:[s.jsx(Ut,{className:"h-4 w-4 text-primary"}),"Sprint Burndown"]}),s.jsx("p",{className:"text-xs text-muted-foreground",children:n.sprint.name})]}),s.jsxs("div",{className:"flex items-center gap-4 text-sm",children:[s.jsxs("div",{className:"text-right",children:[s.jsxs("p",{className:"font-semibold",children:[n.completedPoints,"/",n.totalPoints]}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"points completed"})]}),s.jsxs("div",{className:"w-16 h-16 relative",children:[s.jsxs("svg",{className:"transform -rotate-90",viewBox:"0 0 36 36",children:[s.jsx("circle",{cx:"18",cy:"18",r:"16",fill:"none",className:"stroke-muted",strokeWidth:"3"}),s.jsx("circle",{cx:"18",cy:"18",r:"16",fill:"none",className:"stroke-primary",strokeWidth:"3",strokeDasharray:`${l} 100`,strokeLinecap:"round"})]}),s.jsxs("span",{className:"absolute inset-0 flex items-center justify-center text-sm font-bold",children:[l,"%"]})]})]})]}),s.jsx("div",{className:"h-64",children:s.jsx(Pr,{width:"100%",height:"100%",children:s.jsxs(jl,{data:o,margin:{top:5,right:20,left:0,bottom:5},children:[s.jsx(Wr,{strokeDasharray:"3 3",className:"stroke-border"}),s.jsx(Er,{dataKey:"displayDate",tick:{fontSize:11,fill:"hsl(var(--muted-foreground))"},tickLine:{stroke:"hsl(var(--border))"},axisLine:{stroke:"hsl(var(--border))"}}),s.jsx(Ir,{tick:{fontSize:11,fill:"hsl(var(--muted-foreground))"},tickLine:{stroke:"hsl(var(--border))"},axisLine:{stroke:"hsl(var(--border))"},domain:[0,"dataMax"]}),s.jsx(Tr,{contentStyle:{backgroundColor:"hsl(var(--card))",border:"1px solid hsl(var(--border))",borderRadius:"8px",fontSize:"12px"},labelStyle:{color:"hsl(var(--foreground))"},formatter:(i,c)=>[`${i??0} points`,c==="ideal"?"Ideal":"Actual"]}),s.jsx(Ar,{wrapperStyle:{fontSize:"12px"},formatter:i=>i==="ideal"?"Ideal":"Actual"}),s.jsx(rn,{y:0,stroke:"hsl(var(--border))"}),s.jsx(Qt,{type:"linear",dataKey:"ideal",stroke:"hsl(var(--muted-foreground))",strokeDasharray:"5 5",dot:!1,strokeWidth:2}),s.jsx(Qt,{type:"monotone",dataKey:"actual",stroke:"hsl(var(--primary))",dot:{fill:"hsl(var(--primary))",strokeWidth:0,r:3},activeDot:{r:5},strokeWidth:2,connectNulls:!1})]})})}),s.jsxs("div",{className:"flex items-center justify-between mt-4 text-xs text-muted-foreground border-t border-border pt-3",children:[s.jsxs("span",{children:[n.ticketCount," tickets in sprint"]}),n.sprint.startDate&&n.sprint.endDate&&s.jsxs("span",{children:[H(Yt(n.sprint.startDate),"MMM d")," - ",H(Yt(n.sprint.endDate),"MMM d")]})]})]})}function _u({projectId:e,className:t}){const{data:n,isLoading:r,error:a}=Ae({queryKey:["project-velocity",e],queryFn:()=>ie.stats.projectVelocity(e),enabled:!!e});if(r)return s.jsx("div",{className:`flex items-center justify-center h-64 ${t}`,children:s.jsx(Be,{className:"h-6 w-6 animate-spin text-muted-foreground"})});if(a||!n)return s.jsx("div",{className:`flex items-center justify-center h-64 text-muted-foreground ${t}`,children:s.jsx("p",{children:"Failed to load velocity data"})});if(n.sprints.length===0)return s.jsxs("div",{className:`flex flex-col items-center justify-center h-64 text-muted-foreground ${t}`,children:[s.jsx(pt,{className:"h-10 w-10 mb-3 opacity-50"}),s.jsx("p",{children:"No velocity data yet"}),s.jsx("p",{className:"text-xs mt-1",children:"Complete sprints to see velocity trends"})]});const o=n.sprints.map(c=>({name:c.sprintName,planned:c.plannedPoints,completed:c.completedPoints,ticketCount:c.ticketCount,completedTickets:c.completedTickets})),l=n.sprints[n.sprints.length-1],i=n.averageVelocity>0?Math.round((l.completedPoints-n.averageVelocity)/n.averageVelocity*100):0;return s.jsxs("div",{className:t,children:[s.jsxs("div",{className:"flex items-center justify-between mb-4",children:[s.jsxs("div",{children:[s.jsxs("h3",{className:"font-semibold flex items-center gap-2",children:[s.jsx(pt,{className:"h-4 w-4 text-amber-500"}),"Velocity Trend"]}),s.jsxs("p",{className:"text-xs text-muted-foreground",children:["Last ",n.sprintCount," sprints"]})]}),s.jsxs("div",{className:"flex items-center gap-4",children:[s.jsxs("div",{className:"text-right",children:[s.jsx("p",{className:"text-2xl font-bold",children:n.averageVelocity}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"avg points/sprint"})]}),i!==0&&s.jsxs("div",{className:`flex items-center gap-1 text-sm ${i>0?"text-green-500":"text-red-500"}`,children:[i>0?s.jsx(no,{className:"h-4 w-4"}):s.jsx(Ut,{className:"h-4 w-4"}),s.jsxs("span",{children:[Math.abs(i),"%"]})]})]})]}),s.jsx("div",{className:"h-64",children:s.jsx(Pr,{width:"100%",height:"100%",children:s.jsxs(Nl,{data:o,margin:{top:5,right:20,left:0,bottom:5},children:[s.jsx(Wr,{strokeDasharray:"3 3",className:"stroke-border"}),s.jsx(Er,{dataKey:"name",tick:{fontSize:11,fill:"hsl(var(--muted-foreground))"},tickLine:{stroke:"hsl(var(--border))"},axisLine:{stroke:"hsl(var(--border))"}}),s.jsx(Ir,{tick:{fontSize:11,fill:"hsl(var(--muted-foreground))"},tickLine:{stroke:"hsl(var(--border))"},axisLine:{stroke:"hsl(var(--border))"}}),s.jsx(Tr,{contentStyle:{backgroundColor:"hsl(var(--card))",border:"1px solid hsl(var(--border))",borderRadius:"8px",fontSize:"12px"},labelStyle:{color:"hsl(var(--foreground))"},formatter:(c,d)=>[`${c??0} points`,d==="planned"?"Planned":"Completed"]}),s.jsx(Ar,{wrapperStyle:{fontSize:"12px"},formatter:c=>c==="planned"?"Planned":"Completed"}),s.jsx(rn,{y:n.averageVelocity,stroke:"hsl(var(--primary))",strokeDasharray:"3 3",label:{value:`Avg: ${n.averageVelocity}`,position:"right",fontSize:10,fill:"hsl(var(--muted-foreground))"}}),s.jsx(Jt,{dataKey:"planned",fill:"hsl(var(--muted))",radius:[4,4,0,0],maxBarSize:40}),s.jsx(Jt,{dataKey:"completed",fill:"hsl(var(--primary))",radius:[4,4,0,0],maxBarSize:40})]})})}),n.sprints.length>0&&s.jsxs("div",{className:"mt-4 border-t border-border pt-3",children:[s.jsxs("div",{className:"grid grid-cols-4 gap-2 text-xs text-muted-foreground mb-2",children:[s.jsx("span",{children:"Sprint"}),s.jsx("span",{className:"text-right",children:"Planned"}),s.jsx("span",{className:"text-right",children:"Completed"}),s.jsx("span",{className:"text-right",children:"Tickets"})]}),s.jsx("div",{className:"space-y-1 max-h-32 overflow-y-auto",children:[...n.sprints].reverse().map(c=>s.jsxs("div",{className:"grid grid-cols-4 gap-2 text-xs",children:[s.jsx("span",{className:"truncate",children:c.sprintName}),s.jsx("span",{className:"text-right text-muted-foreground",children:c.plannedPoints}),s.jsx("span",{className:"text-right font-medium",children:c.completedPoints}),s.jsxs("span",{className:"text-right text-muted-foreground",children:[c.completedTickets,"/",c.ticketCount]})]},c.sprintId))})]})]})}const mt=[{id:"backlog",label:"Backlog",icon:s.jsx(fo,{className:"h-4 w-4"}),color:"text-gray-400",bgColor:"bg-gray-500/10"},{id:"todo",label:"Todo",icon:s.jsx(Kt,{className:"h-4 w-4"}),color:"text-amber-400",bgColor:"bg-amber-500/10",wipLimit:10},{id:"in_progress",label:"In Progress",icon:s.jsx(wo,{className:"h-4 w-4"}),color:"text-blue-500",bgColor:"bg-blue-500/10",wipLimit:5},{id:"in_review",label:"In Review",icon:s.jsx(ls,{className:"h-4 w-4"}),color:"text-indigo-500",bgColor:"bg-indigo-500/10",wipLimit:3},{id:"done",label:"Done",icon:s.jsx(Ht,{className:"h-4 w-4"}),color:"text-green-500",bgColor:"bg-green-500/10"}],jt={urgent:{color:"text-red-500",bgColor:"bg-red-500",label:"Urgent"},high:{color:"text-orange-400",bgColor:"bg-orange-400",label:"High"},medium:{color:"text-yellow-400",bgColor:"bg-yellow-400",label:"Medium"},low:{color:"text-blue-400",bgColor:"bg-blue-400",label:"Low"},none:{color:"text-gray-400",bgColor:"bg-gray-400",label:"None"}},kt={task:{icon:s.jsx(jn,{className:"h-3 w-3"}),color:"text-blue-400"},bug:{icon:s.jsx(ho,{className:"h-3 w-3"}),color:"text-red-400"},feature:{icon:s.jsx(us,{className:"h-3 w-3"}),color:"text-green-400"},enhancement:{icon:s.jsx(pt,{className:"h-3 w-3"}),color:"text-indigo-400"},documentation:{icon:s.jsx(ds,{className:"h-3 w-3"}),color:"text-teal-400"},epic:{icon:s.jsx(po,{className:"h-3 w-3"}),color:"text-amber-400"},story:{icon:s.jsx(mo,{className:"h-3 w-3"}),color:"text-cyan-400"},subtask:{icon:s.jsx(jn,{className:"h-3 w-3"}),color:"text-gray-400"}};function Fu({ticket:e,onOpenPreview:t}){const n=h.useRef(null),[r,a]=h.useState(!1),[o,l]=h.useState(!1);h.useEffect(()=>{const f=n.current;if(f)return so({element:f,getInitialData:()=>({ticketId:e.id,currentStatus:e.status}),onDragStart:()=>{a(!0),l(!0)},onDrop:()=>a(!1)})},[e.id,e.status]);const i=f=>{if(o){l(!1);return}f.target.closest("a")||t(e)},c=kt[e.type]||kt.task,d=jt[e.priority]||jt.medium;return s.jsxs("div",{ref:n,className:B("group glass rounded-xl p-3 cursor-grab active:cursor-grabbing","hover:shadow-lg hover:shadow-primary/5 transition-all duration-200",r&&"opacity-40 scale-[1.02] shadow-xl rotate-1"),onClick:i,children:[s.jsx("div",{className:B("h-1 w-8 rounded-full mb-2",d.bgColor)}),s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsxs("div",{className:"flex items-center gap-2 mb-1.5",children:[s.jsxs("span",{className:"text-[11px] font-mono text-muted-foreground font-medium",children:[e.projectKey||"PROFCLAW","-",e.sequence]}),s.jsx("span",{className:B("flex items-center gap-1",c.color),children:c.icon}),e.priority!=="none"&&e.priority!=="medium"&&s.jsx("span",{className:B("text-[10px]",d.color),children:d.label})]}),s.jsx("h4",{className:"text-sm font-medium leading-snug line-clamp-2 group-hover:text-primary transition-colors",children:e.title}),e.labels&&e.labels.length>0&&s.jsxs("div",{className:"flex flex-wrap gap-1 mt-2",children:[e.labels.slice(0,3).map(f=>s.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded bg-primary/10 text-primary",children:f},f)),e.labels.length>3&&s.jsxs("span",{className:"text-[10px] text-muted-foreground",children:["+",e.labels.length-3]})]}),s.jsxs("div",{className:"flex items-center justify-between gap-2 mt-3 pt-2 border-t border-border/50",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[e.assignee?s.jsx("div",{className:"flex items-center gap-1 text-[11px] text-muted-foreground",children:s.jsx("div",{className:"w-5 h-5 rounded-full bg-primary/20 flex items-center justify-center text-primary text-[10px] font-medium",children:e.assignee.charAt(0).toUpperCase()})}):s.jsx("div",{className:"w-5 h-5 rounded-full border border-dashed border-muted-foreground/30 flex items-center justify-center",children:s.jsx(sr,{className:"h-3 w-3 text-muted-foreground/50"})}),e.dueDate&&s.jsxs("span",{className:"flex items-center gap-1 text-[10px] text-muted-foreground",children:[s.jsx(Mt,{className:"h-3 w-3"}),H(new Date(e.dueDate),"MMM d")]})]}),e.estimate&&s.jsxs("span",{className:"text-[10px] font-medium text-muted-foreground bg-muted px-1.5 py-0.5 rounded",children:[e.estimate,"pt"]})]})]})]})}function Bu({column:e,tickets:t,onDrop:n,onOpenPreview:r,isCollapsed:a,onToggleCollapse:o,onSetWipLimit:l}){const i=h.useRef(null),[c,d]=h.useState(!1);h.useEffect(()=>{const p=i.current;if(p)return ro(ao({element:p,getData:()=>({status:e.id}),canDrop:({source:x})=>x.data.currentStatus!==e.id,onDragEnter:()=>d(!0),onDragLeave:()=>d(!1),onDrop:({source:x})=>{d(!1);const w=x.data.ticketId;n(w,e.id)}}))},[e.id,n]);const f=e.wipLimit&&t.length>e.wipLimit,u=e.wipLimit&&t.length===e.wipLimit;return a?s.jsxs("div",{ref:i,className:B("flex flex-col items-center w-12 rounded-xl p-2 cursor-pointer transition-all",e.bgColor,c&&"ring-2 ring-primary bg-primary/10"),onClick:o,children:[s.jsx("button",{className:"p-1 hover:bg-background/50 rounded mb-2",children:s.jsx(nr,{className:"h-4 w-4 text-muted-foreground"})}),s.jsx("div",{className:"writing-mode-vertical text-sm font-medium text-muted-foreground rotate-180",children:e.label}),s.jsx("span",{className:B("mt-2 text-xs font-medium px-2 py-1 rounded-full",e.bgColor,e.color),children:t.length})]}):s.jsxs("div",{className:"flex flex-col w-[280px] sm:w-[300px] md:w-[320px] shrink-0",children:[s.jsxs("div",{className:B("flex items-center justify-between mb-3 px-2 py-2 rounded-lg",e.bgColor),children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("button",{onClick:o,className:"p-0.5 hover:bg-background/30 rounded transition-colors",children:s.jsx(ft,{className:"h-4 w-4 text-muted-foreground"})}),s.jsx("span",{className:e.color,children:e.icon}),s.jsx("h3",{className:"font-semibold text-sm",children:e.label}),s.jsxs("span",{className:B("text-xs font-medium px-2 py-0.5 rounded-full",f?"bg-red-500/20 text-red-400":u?"bg-amber-500/20 text-amber-400":"bg-background/50 text-muted-foreground"),children:[t.length,e.wipLimit&&`/${e.wipLimit}`]})]}),s.jsxs(qe,{children:[s.jsx(Ke,{asChild:!0,children:s.jsx(L,{variant:"ghost",size:"icon",className:"h-6 w-6",children:s.jsx(Fr,{className:"h-4 w-4"})})}),s.jsxs(He,{align:"end",children:[s.jsx(pe,{onClick:o,children:"Collapse column"}),s.jsx(Ge,{}),s.jsx(pe,{onClick:l,children:"Set WIP limit..."})]})]})]}),s.jsx("div",{ref:i,className:B("flex-1 rounded-xl p-2 transition-all duration-200 overflow-y-auto","bg-muted/20 border-2 border-transparent","min-h-[300px] sm:min-h-[400px] md:min-h-[calc(100vh-380px)]","max-h-[400px] sm:max-h-[500px] md:max-h-[calc(100vh-380px)]",c&&"border-primary/50 bg-primary/5 scale-[1.01]",f&&"border-red-500/30"),style:{scrollbarGutter:"stable"},children:s.jsxs("div",{className:"space-y-2",children:[t.map(p=>s.jsx(Fu,{ticket:p,onOpenPreview:r},p.id)),t.length===0&&s.jsxs("div",{className:B("flex flex-col items-center justify-center py-12 text-center","border-2 border-dashed border-muted-foreground/20 rounded-lg"),children:[s.jsx("div",{className:B("p-3 rounded-full mb-2",e.bgColor),children:e.icon}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Drop tickets here"})]})]})})]})}function Yu({ticket:e,open:t,onClose:n}){if(!e)return null;const r=kt[e.type]||kt.task,a=jt[e.priority]||jt.medium;return s.jsx(oo,{open:t,onOpenChange:n,children:s.jsxs(io,{className:"w-[450px] sm:w-[540px] overflow-y-auto",children:[s.jsxs(lo,{className:"pb-4 border-b border-border",children:[s.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[s.jsxs("span",{className:B("flex items-center gap-1",r.color),children:[r.icon,s.jsx("span",{className:"capitalize",children:e.type})]}),s.jsx("span",{children:"•"}),s.jsxs(ht,{to:`/tickets/${e.id}`,className:"font-mono hover:text-primary hover:underline transition-colors",onClick:n,children:[e.projectKey||"PROFCLAW","-",e.sequence]})]}),s.jsx(co,{className:"text-xl",children:e.title})]}),s.jsxs("div",{className:"py-6 space-y-6",children:[s.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Status"}),s.jsxs("div",{className:"mt-1 flex items-center gap-2",children:[mt.find(o=>o.id===e.status)?.icon,s.jsx("span",{className:"capitalize",children:e.status.replace("_"," ")})]})]}),s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Priority"}),s.jsxs("div",{className:B("mt-1 flex items-center gap-2",a.color),children:[s.jsx("div",{className:B("w-2 h-2 rounded-full",a.bgColor)}),s.jsx("span",{className:"capitalize",children:e.priority})]})]})]}),s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Assignee"}),s.jsx("div",{className:"mt-1 flex items-center gap-2",children:e.assignee?s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"w-6 h-6 rounded-full bg-primary/20 flex items-center justify-center text-primary text-xs font-medium",children:e.assignee.charAt(0).toUpperCase()}),s.jsx("span",{children:e.assignee})]}):s.jsx("span",{className:"text-muted-foreground",children:"Unassigned"})})]}),e.labels&&e.labels.length>0&&s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Labels"}),s.jsx("div",{className:"mt-2 flex flex-wrap gap-2",children:e.labels.map(o=>s.jsx("span",{className:"text-xs px-2 py-1 rounded-full bg-primary/10 text-primary",children:o},o))})]}),s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Description"}),s.jsx("div",{className:"mt-2 text-sm text-muted-foreground prose prose-sm dark:prose-invert max-w-none",children:e.description||s.jsx("span",{className:"italic",children:"No description"})})]}),s.jsxs("div",{className:"grid grid-cols-2 gap-4 pt-4 border-t border-border",children:[s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Created"}),s.jsx("p",{className:"mt-1 text-sm",children:H(new Date(e.createdAt),"MMM d, yyyy")})]}),e.dueDate&&s.jsxs("div",{children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:"Due Date"}),s.jsx("p",{className:"mt-1 text-sm",children:H(new Date(e.dueDate),"MMM d, yyyy")})]})]})]}),s.jsx("div",{className:"pt-4 border-t border-border flex items-center gap-2",children:s.jsx(ht,{to:`/tickets/${e.id}`,className:"flex-1",children:s.jsxs(L,{variant:"outline",className:"w-full gap-2",children:[s.jsx(cs,{className:"h-4 w-4"}),"Open Full View"]})})})]})})}const Ca="profclaw-board-wip-limits";function Lu(){try{const e=localStorage.getItem(Ca);return e?JSON.parse(e):{}}catch{return{}}}function zu(e){localStorage.setItem(Ca,JSON.stringify(e))}function $u({projectId:e,sprintId:t}){const n=Nt(),[r,a]=h.useState(""),[o,l]=h.useState(new Set),[i,c]=h.useState(null),[d,f]=h.useState(Lu),u=h.useCallback(g=>{const v=d[g.id];return v!==void 0?{...g,wipLimit:v}:g},[d]),p=h.useCallback(g=>{const v=d[g]??mt.find(C=>C.id===g)?.wipLimit,D=window.prompt(`Set WIP limit for "${g.replace("_"," ")}" column:
|
|
2
|
+
(Enter a number, or leave empty to remove limit)`,v?.toString()||"");if(D===null)return;const O={...d};if(D==="")delete O[g];else{const C=parseInt(D,10);if(!isNaN(C)&&C>0)O[g]=C;else{ne.error("Please enter a valid positive number");return}}f(O),zu(O),ne.success(D===""?"WIP limit removed":`WIP limit set to ${D}`)},[d]),{data:x,isLoading:w}=Ae({queryKey:["tickets","board",e,t],queryFn:()=>ie.tickets.list({projectId:e,sprintId:t,limit:200})}),j=Ve({mutationFn:({ticketId:g,status:v})=>ie.tickets.update(g,{status:v}),onMutate:async({ticketId:g,status:v})=>{await n.cancelQueries({queryKey:["tickets","board",e,t]});const D=n.getQueryData(["tickets","board",e,t]);return n.setQueryData(["tickets","board",e,t],O=>O?.tickets?{...O,tickets:O.tickets.map(C=>C.id===g?{...C,status:v}:C)}:O),{previousData:D}},onError:(g,v,D)=>{D?.previousData&&n.setQueryData(["tickets","board",e,t],D.previousData),ne.error("Failed to update ticket")},onSettled:()=>{n.invalidateQueries({queryKey:["tickets","board",e,t]})}}),b=h.useCallback((g,v)=>{j.mutate({ticketId:g,status:v}),ne.success(`Moved to ${v.replace("_"," ")}`)},[j]),y=g=>{l(v=>{const D=new Set(v);return D.has(g)?D.delete(g):D.add(g),D})},k=x?.tickets||[],N=r?k.filter(g=>g.title.toLowerCase().includes(r.toLowerCase())||g.description?.toLowerCase().includes(r.toLowerCase())||`${g.projectKey||"PROFCLAW"}-${g.sequence}`.toLowerCase().includes(r.toLowerCase())):k,m=mt.reduce((g,v)=>(g[v.id]=N.filter(D=>D.status===v.id),g),{});return w?s.jsx("div",{className:"flex items-center justify-center h-64",children:s.jsx(Be,{className:"h-8 w-8 animate-spin text-muted-foreground"})}):s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex flex-col sm:flex-row items-stretch sm:items-center justify-between gap-3",children:[s.jsxs("div",{className:"relative flex-1 max-w-full sm:max-w-sm",children:[s.jsx(ar,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),s.jsx(xt,{placeholder:"Search tickets...",value:r,onChange:g=>a(g.target.value),className:"pl-9 pr-9"}),r&&s.jsx("button",{onClick:()=>a(""),className:"absolute right-3 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground",children:s.jsx(rr,{className:"h-4 w-4"})})]}),s.jsxs("div",{className:"flex items-center gap-4 text-sm text-muted-foreground",children:[s.jsxs("span",{children:[N.length," tickets"]}),r&&s.jsxs("span",{className:"text-primary",children:["(filtered from ",k.length,")"]})]})]}),s.jsx("div",{className:"flex gap-3 sm:gap-4 overflow-x-auto pb-4 -mx-4 px-4 sm:mx-0 sm:px-0 scrollbar-thin scrollbar-thumb-muted scrollbar-track-transparent",children:mt.map(g=>s.jsx(Bu,{column:u(g),tickets:m[g.id]||[],onDrop:b,onOpenPreview:c,isCollapsed:o.has(g.id),onToggleCollapse:()=>y(g.id),onSetWipLimit:()=>p(g.id)},g.id))}),s.jsx(Yu,{ticket:i,open:!!i,onClose:()=>c(null)})]})}const er={backlog:"bg-gray-400/10 text-gray-400",todo:"bg-amber-400/10 text-amber-400",in_progress:"bg-blue-500/10 text-blue-500",in_review:"bg-indigo-500/10 text-indigo-500",done:"bg-green-500/10 text-green-500",cancelled:"bg-red-500/10 text-red-500"},dt={urgent:"text-red-500",high:"text-orange-400",medium:"text-yellow-400",low:"text-blue-400",none:"text-gray-400"},ut={task:"bg-blue-500/10 text-blue-500",bug:"bg-red-500/10 text-red-500",feature:"bg-green-500/10 text-green-500",enhancement:"bg-indigo-500/10 text-indigo-500",documentation:"bg-teal-500/10 text-teal-500",epic:"bg-amber-500/10 text-amber-500",story:"bg-cyan-500/10 text-cyan-500",subtask:"bg-gray-500/10 text-gray-500"};function tr({projectId:e,sprints:t,onCreateTicket:n,showAllTickets:r=!1,title:a}){const o=Nt(),[l,i]=h.useState(""),[c,d]=h.useState("all"),[f,u]=h.useState("all"),[p,x]=h.useState("all"),{data:w,isLoading:j}=Ae({queryKey:["tickets",r?"all":"backlog",e,l,c,f,p],queryFn:()=>ie.tickets.list({projectId:e,inBacklog:r?void 0:!0,search:l||void 0,status:c!=="all"?c:void 0,priority:f!=="all"?f:void 0,type:p!=="all"?p:void 0,limit:100})}),b=Ve({mutationFn:({ticketId:m,sprintId:g})=>ie.projects.sprints.addTickets(e,g,[m]),onSuccess:()=>{ne.success("Ticket added to sprint"),o.invalidateQueries({queryKey:["tickets","backlog",e]})},onError:m=>{ne.error(m instanceof Error?m.message:"Failed to add ticket to sprint")}}),y=w?.tickets||[],k=t.filter(m=>m.status==="active"||m.status==="planning"),N=(m,g)=>{b.mutate({ticketId:m,sprintId:g})};return j?s.jsx("div",{className:"flex items-center justify-center h-64",children:s.jsx(Be,{className:"h-8 w-8 animate-spin text-muted-foreground"})}):s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[s.jsxs("div",{className:"relative flex-1 min-w-[200px] max-w-[300px]",children:[s.jsx(ar,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),s.jsx(xt,{placeholder:"Search tickets...",value:l,onChange:m=>i(m.target.value),className:"pl-9"})]}),s.jsxs(qe,{children:[s.jsx(Ke,{asChild:!0,children:s.jsxs(L,{variant:"outline",size:"sm",className:"gap-2",children:[s.jsx(xo,{className:"h-4 w-4"}),"Status",c!=="all"&&s.jsx("span",{className:"text-xs bg-primary/10 text-primary px-1.5 py-0.5 rounded capitalize",children:c.replace("_"," ")}),s.jsx(ft,{className:"h-3 w-3"})]})}),s.jsxs(He,{children:[s.jsx(pe,{onClick:()=>d("all"),children:"All"}),s.jsx(Ge,{}),Object.keys(er).map(m=>s.jsx(pe,{onClick:()=>d(m),children:s.jsx("span",{className:"capitalize",children:m.replace("_"," ")})},m))]})]}),s.jsxs(qe,{children:[s.jsx(Ke,{asChild:!0,children:s.jsxs(L,{variant:"outline",size:"sm",className:"gap-2",children:[s.jsx(Oo,{className:"h-4 w-4"}),"Priority",f!=="all"&&s.jsx("span",{className:B("text-xs capitalize",dt[f]),children:f}),s.jsx(ft,{className:"h-3 w-3"})]})}),s.jsxs(He,{children:[s.jsx(pe,{onClick:()=>u("all"),children:"All"}),s.jsx(Ge,{}),Object.keys(dt).map(m=>s.jsx(pe,{onClick:()=>u(m),children:s.jsx("span",{className:B("capitalize",dt[m]),children:m})},m))]})]}),s.jsxs(qe,{children:[s.jsx(Ke,{asChild:!0,children:s.jsxs(L,{variant:"outline",size:"sm",className:"gap-2",children:["Type",p!=="all"&&s.jsx("span",{className:B("text-xs px-1.5 py-0.5 rounded capitalize",ut[p]),children:p}),s.jsx(ft,{className:"h-3 w-3"})]})}),s.jsxs(He,{children:[s.jsx(pe,{onClick:()=>x("all"),children:"All"}),s.jsx(Ge,{}),Object.keys(ut).map(m=>s.jsx(pe,{onClick:()=>x(m),children:s.jsx("span",{className:B("capitalize px-1.5 py-0.5 rounded",ut[m]),children:m})},m))]})]}),s.jsx("div",{className:"flex-1"}),n&&s.jsxs(L,{size:"sm",className:"gap-2",onClick:n,children:[s.jsx(gt,{className:"h-4 w-4"}),"New Ticket"]})]}),y.length===0?s.jsxs("div",{className:"flex flex-col items-center justify-center h-48 bg-muted/30 rounded-xl border border-dashed border-border",children:[s.jsx(_r,{className:"h-10 w-10 text-muted-foreground/50 mb-3"}),s.jsx("p",{className:"text-muted-foreground mb-1",children:r?"No tickets found":"No tickets in backlog"}),s.jsx("p",{className:"text-xs text-muted-foreground",children:l||c!=="all"||f!=="all"||p!=="all"?"Try adjusting your filters":"Create a ticket to get started"})]}):s.jsx("div",{className:"bg-card rounded-xl border border-border overflow-hidden",children:s.jsxs("table",{className:"w-full",children:[s.jsx("thead",{children:s.jsxs("tr",{className:"border-b border-border bg-muted/30",children:[s.jsx("th",{className:"text-left text-xs font-medium text-muted-foreground px-4 py-3",children:"Ticket"}),s.jsx("th",{className:"text-left text-xs font-medium text-muted-foreground px-4 py-3 w-[100px]",children:"Status"}),s.jsx("th",{className:"text-left text-xs font-medium text-muted-foreground px-4 py-3 w-[100px]",children:"Priority"}),s.jsx("th",{className:"text-left text-xs font-medium text-muted-foreground px-4 py-3 w-[100px]",children:"Type"}),s.jsx("th",{className:"text-left text-xs font-medium text-muted-foreground px-4 py-3 w-[120px]",children:"Assignee"}),s.jsx("th",{className:"text-right text-xs font-medium text-muted-foreground px-4 py-3 w-[140px]",children:"Actions"})]})}),s.jsx("tbody",{children:y.map(m=>s.jsxs("tr",{className:"border-b border-border last:border-0 hover:bg-muted/20 transition-colors",children:[s.jsx("td",{className:"px-4 py-3",children:s.jsxs("div",{className:"flex items-start gap-2",children:[s.jsxs("span",{className:"text-xs font-mono text-muted-foreground shrink-0",children:[m.projectKey||"PROFCLAW","-",m.sequence]}),s.jsx(ht,{to:`/tickets/${m.id}`,className:"text-sm font-medium hover:text-primary line-clamp-1",children:m.title})]})}),s.jsx("td",{className:"px-4 py-3",children:s.jsx("span",{className:B("text-xs px-2 py-1 rounded-full capitalize",er[m.status]),children:m.status.replace("_"," ")})}),s.jsx("td",{className:"px-4 py-3",children:s.jsx("span",{className:B("text-xs capitalize",dt[m.priority]),children:m.priority})}),s.jsx("td",{className:"px-4 py-3",children:s.jsx("span",{className:B("text-xs px-2 py-1 rounded capitalize",ut[m.type]),children:m.type})}),s.jsx("td",{className:"px-4 py-3",children:m.assignee?s.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[s.jsx(sr,{className:"h-3 w-3"}),s.jsx("span",{className:"truncate max-w-[80px]",children:m.assignee})]}):s.jsx("span",{className:"text-xs text-muted-foreground",children:"Unassigned"})}),s.jsx("td",{className:"px-4 py-3 text-right",children:k.length>0&&s.jsxs(qe,{children:[s.jsx(Ke,{asChild:!0,children:s.jsxs(L,{variant:"outline",size:"sm",className:"h-7 text-xs gap-1",children:[s.jsx(gt,{className:"h-3 w-3"}),"Add to Sprint"]})}),s.jsxs(He,{align:"end",children:[s.jsx(fs,{children:"Select Sprint"}),s.jsx(Ge,{}),k.map(g=>s.jsx(pe,{onClick:()=>N(m.id,g.id),children:s.jsxs("span",{className:"flex items-center gap-2",children:[g.name,s.jsx("span",{className:B("text-[10px] px-1.5 py-0.5 rounded-full capitalize",g.status==="active"?"bg-blue-500/10 text-blue-500":"bg-muted text-muted-foreground"),children:g.status})]})},g.id))]})]})})]},m.id))})]})}),s.jsx("div",{className:"flex items-center justify-between text-xs text-muted-foreground",children:s.jsxs("span",{children:[y.length," ticket",y.length!==1?"s":""," ",r?"total":"in backlog"]})})]})}const Ru=[{id:"overview",label:"Overview",icon:s.jsx(yo,{className:"h-4 w-4"})},{id:"board",label:"Board",icon:s.jsx(ko,{className:"h-4 w-4"})},{id:"backlog",label:"Backlog",icon:s.jsx(_r,{className:"h-4 w-4"})},{id:"table",label:"Table",icon:s.jsx(uo,{className:"h-4 w-4"})}];function bf(){const{id:e}=rs(),t=as(),n=Nt(),[r,a]=h.useState(!1),[o,l]=h.useState("overview"),[i,c]=h.useState(),{data:d,isLoading:f}=Ae({queryKey:["project",e],queryFn:()=>ie.projects.get(e,"all"),enabled:!!e}),{data:u,isLoading:p}=Ae({queryKey:["sprints",e],queryFn:()=>ie.projects.sprints.list(e),enabled:!!e}),x=d,w=Ve({mutationFn:m=>ie.projects.sprints.start(e,m),onSuccess:()=>{ne.success("Sprint started"),n.invalidateQueries({queryKey:["sprints",e]})},onError:m=>{ne.error(m instanceof Error?m.message:"Failed to start sprint")}}),j=Ve({mutationFn:m=>ie.projects.sprints.complete(e,m),onSuccess:()=>{ne.success("Sprint completed"),n.invalidateQueries({queryKey:["sprints",e]})},onError:m=>{ne.error(m instanceof Error?m.message:"Failed to complete sprint")}}),b=u?.sprints||[];if(f||p)return s.jsx("div",{className:"flex items-center justify-center h-64",children:s.jsx(Be,{className:"h-8 w-8 animate-spin text-muted-foreground"})});if(!x)return s.jsxs("div",{className:"flex flex-col items-center justify-center h-64 gap-4",children:[s.jsx("p",{className:"text-muted-foreground",children:"Project not found"}),s.jsx(L,{variant:"outline",onClick:()=>t("/projects"),children:"Back to Projects"})]});const k=m=>{switch(m){case"planning":return s.jsx(Kt,{className:"h-4 w-4 text-muted-foreground"});case"active":return s.jsx(In,{className:"h-4 w-4 text-blue-500"});case"completed":return s.jsx(Ht,{className:"h-4 w-4 text-green-500"});case"cancelled":return s.jsx(vo,{className:"h-4 w-4 text-red-500"});default:return null}},N=m=>{switch(m){case"planning":return"bg-muted text-muted-foreground";case"active":return"bg-blue-500/10 text-blue-500";case"completed":return"bg-green-500/10 text-green-500";case"cancelled":return"bg-red-500/10 text-red-500";default:return"bg-muted text-muted-foreground"}};return s.jsxs("div",{className:"space-y-6",children:[s.jsxs("div",{className:"flex items-start justify-between",children:[s.jsxs("div",{className:"flex items-start gap-4",children:[s.jsx(L,{variant:"ghost",size:"icon",onClick:()=>t("/projects"),children:s.jsx(ms,{className:"h-4 w-4"})}),s.jsxs("div",{className:"flex items-center gap-4",children:[s.jsx(hs,{icon:x.icon,color:x.color,size:"lg"}),s.jsxs("div",{children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("span",{className:"text-xs font-mono font-bold px-2 py-0.5 rounded",style:{backgroundColor:`${x.color}20`,color:x.color},children:x.key}),x.status==="archived"&&s.jsx("span",{className:"text-xs bg-muted text-muted-foreground px-2 py-0.5 rounded",children:"Archived"})]}),s.jsx("h1",{className:"text-2xl font-bold mt-1",children:x.name}),x.description&&s.jsx("p",{className:"text-muted-foreground mt-1",children:x.description})]})]})]}),s.jsx(L,{variant:"outline",size:"icon",children:s.jsx(go,{className:"h-4 w-4"})})]}),s.jsx("div",{className:"flex items-center gap-1 p-1 bg-muted/50 rounded-lg w-fit",children:Ru.map(m=>s.jsxs("button",{onClick:()=>l(m.id),className:B("flex items-center gap-2 px-4 py-2 rounded-md text-sm font-medium transition-all",o===m.id?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:[m.icon,m.label]},m.id))}),o==="overview"&&s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-4 gap-4",children:[s.jsx("div",{className:"bg-card rounded-xl border border-border p-4",children:s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"w-10 h-10 rounded-lg bg-primary/10 flex items-center justify-center",children:s.jsx(kn,{className:"h-5 w-5 text-primary"})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-2xl font-bold",children:x.stats?.totalTickets||0}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Total Tickets"})]})]})}),s.jsx("div",{className:"bg-card rounded-xl border border-border p-4",children:s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"w-10 h-10 rounded-lg bg-amber-500/10 flex items-center justify-center",children:s.jsx(Kt,{className:"h-5 w-5 text-amber-500"})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-2xl font-bold",children:x.stats?.openTickets||0}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Open"})]})]})}),s.jsx("div",{className:"bg-card rounded-xl border border-border p-4",children:s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"w-10 h-10 rounded-lg bg-blue-500/10 flex items-center justify-center",children:s.jsx(In,{className:"h-5 w-5 text-blue-500"})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-2xl font-bold",children:x.stats?.inProgressTickets||0}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"In Progress"})]})]})}),s.jsx("div",{className:"bg-card rounded-xl border border-border p-4",children:s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"w-10 h-10 rounded-lg bg-green-500/10 flex items-center justify-center",children:s.jsx(Ht,{className:"h-5 w-5 text-green-500"})}),s.jsxs("div",{children:[s.jsx("p",{className:"text-2xl font-bold",children:x.stats?.doneTickets||0}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Done"})]})]})})]}),b.length>0&&s.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[b.find(m=>m.status==="active")&&s.jsx("div",{className:"bg-card rounded-xl border border-border p-4",children:s.jsx(Au,{sprintId:b.find(m=>m.status==="active").id})}),s.jsx("div",{className:"bg-card rounded-xl border border-border p-4",children:s.jsx(_u,{projectId:e})})]}),s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx("h2",{className:"text-lg font-semibold",children:"Sprints"}),s.jsxs(L,{size:"sm",className:"gap-2",onClick:()=>a(!0),children:[s.jsx(gt,{className:"h-4 w-4"}),"New Sprint"]})]}),b.length===0?s.jsxs("div",{className:"flex flex-col items-center justify-center h-48 bg-muted/30 rounded-xl border border-dashed border-border",children:[s.jsx(Gt,{className:"h-10 w-10 text-muted-foreground/50 mb-3"}),s.jsx("p",{className:"text-muted-foreground mb-3",children:"No sprints yet"}),s.jsxs(L,{variant:"outline",size:"sm",className:"gap-2",onClick:()=>a(!0),children:[s.jsx(gt,{className:"h-4 w-4"}),"Create first sprint"]})]}):s.jsx("div",{className:"space-y-3",children:b.map(m=>s.jsx("div",{className:"bg-card rounded-xl border border-border p-4 hover:border-primary/30 transition-colors",children:s.jsxs("div",{className:"flex items-start justify-between",children:[s.jsxs("div",{className:"flex items-start gap-3",children:[s.jsx("div",{className:"mt-0.5",children:k(m.status)}),s.jsxs("div",{children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("h3",{className:"font-medium",children:m.name}),s.jsx("span",{className:B("text-xs px-2 py-0.5 rounded-full capitalize",N(m.status)),children:m.status})]}),m.goal&&s.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:m.goal}),s.jsxs("div",{className:"flex items-center gap-4 mt-2 text-xs text-muted-foreground",children:[m.startDate&&s.jsxs("span",{className:"flex items-center gap-1",children:[s.jsx(Mt,{className:"h-3 w-3"}),H(new Date(m.startDate),"MMM d"),m.endDate&&` - ${H(new Date(m.endDate),"MMM d")}`]}),m.capacity&&s.jsxs("span",{children:[m.capacity," points"]})]})]})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[m.status==="planning"&&s.jsx(L,{size:"sm",variant:"outline",onClick:()=>w.mutate(m.id),disabled:w.isPending,children:"Start Sprint"}),m.status==="active"&&s.jsx(L,{size:"sm",variant:"outline",onClick:()=>j.mutate(m.id),disabled:j.isPending,children:"Complete"}),s.jsx(L,{variant:"ghost",size:"icon",children:s.jsx(Fr,{className:"h-4 w-4"})})]})]})},m.id))})]}),x.externalLinks&&x.externalLinks.length>0&&s.jsxs("div",{className:"space-y-4",children:[s.jsx("h2",{className:"text-lg font-semibold",children:"Connected Integrations"}),s.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:x.externalLinks.map(m=>s.jsxs("a",{href:m.externalUrl,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-3 p-3 bg-card rounded-lg border border-border hover:border-primary/30 transition-colors",children:[s.jsxs("div",{className:"w-8 h-8 rounded-lg bg-muted flex items-center justify-center",children:[m.platform==="github"&&"🐙",m.platform==="linear"&&"📐",m.platform==="jira"&&"🔷",m.platform==="plane"&&"✈️"]}),s.jsxs("div",{className:"flex-1",children:[s.jsx("p",{className:"font-medium capitalize",children:m.platform}),s.jsx("p",{className:"text-xs text-muted-foreground",children:m.externalId})]}),m.syncEnabled&&s.jsx("span",{className:"text-xs bg-green-500/10 text-green-500 px-2 py-0.5 rounded-full",children:"Sync Active"})]},m.id))})]}),s.jsx("div",{className:"flex items-center gap-3 pt-4 border-t border-border",children:s.jsx(ht,{to:`/tickets?projectId=${e}`,children:s.jsxs(L,{variant:"outline",className:"gap-2",children:[s.jsx(kn,{className:"h-4 w-4"}),"View Tickets"]})})})]}),o==="board"&&s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("label",{className:"text-sm font-medium text-muted-foreground",children:"Sprint:"}),s.jsxs("select",{value:i||"",onChange:m=>c(m.target.value||void 0),className:"field",children:[s.jsx("option",{value:"",children:"All Tickets"}),b.map(m=>s.jsxs("option",{value:m.id,children:[m.name," ",m.status==="active"?"(Active)":""]},m.id))]})]}),s.jsx($u,{projectId:e,sprintId:i})]}),o==="backlog"&&s.jsx(tr,{projectId:e,sprints:b,onCreateTicket:()=>t(`/tickets?projectId=${e}&create=true`)}),o==="table"&&s.jsx(tr,{projectId:e,sprints:b,showAllTickets:!0,onCreateTicket:()=>t(`/tickets?projectId=${e}&create=true`)}),s.jsx(Tu,{projectId:e,open:r,onOpenChange:a})]})}export{bf as ProjectDetail};
|