profclaw 0.0.1-beta.1

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.
Files changed (942) hide show
  1. package/.env.example +215 -0
  2. package/CHANGELOG.md +49 -0
  3. package/CONTRIBUTING.md +119 -0
  4. package/Dockerfile +107 -0
  5. package/LICENSE +661 -0
  6. package/README.md +196 -0
  7. package/config/agents.yml +55 -0
  8. package/config/budget.yml +15 -0
  9. package/config/pricing.yml +46 -0
  10. package/config/settings.yml +168 -0
  11. package/dist/adapters/claude-code.d.ts +46 -0
  12. package/dist/adapters/claude-code.js +215 -0
  13. package/dist/adapters/index.d.ts +4 -0
  14. package/dist/adapters/index.js +4 -0
  15. package/dist/adapters/ollama.d.ts +45 -0
  16. package/dist/adapters/ollama.js +277 -0
  17. package/dist/adapters/openclaw.d.ts +60 -0
  18. package/dist/adapters/openclaw.js +289 -0
  19. package/dist/adapters/registry.d.ts +56 -0
  20. package/dist/adapters/registry.js +163 -0
  21. package/dist/agents/executor.d.ts +78 -0
  22. package/dist/agents/executor.js +657 -0
  23. package/dist/agents/index.d.ts +10 -0
  24. package/dist/agents/index.js +27 -0
  25. package/dist/agents/stop-conditions.d.ts +108 -0
  26. package/dist/agents/stop-conditions.js +299 -0
  27. package/dist/agents/types.d.ts +185 -0
  28. package/dist/agents/types.js +14 -0
  29. package/dist/ai/embedding-service.d.ts +96 -0
  30. package/dist/ai/embedding-service.js +333 -0
  31. package/dist/auth/api-tokens.d.ts +71 -0
  32. package/dist/auth/api-tokens.js +235 -0
  33. package/dist/auth/auth-service.d.ts +75 -0
  34. package/dist/auth/auth-service.js +557 -0
  35. package/dist/auth/device-identity.d.ts +96 -0
  36. package/dist/auth/device-identity.js +250 -0
  37. package/dist/auth/github-oauth.d.ts +20 -0
  38. package/dist/auth/github-oauth.js +59 -0
  39. package/dist/auth/jira-oauth.d.ts +25 -0
  40. package/dist/auth/jira-oauth.js +75 -0
  41. package/dist/auth/linear-oauth.d.ts +21 -0
  42. package/dist/auth/linear-oauth.js +59 -0
  43. package/dist/auth/middleware.d.ts +44 -0
  44. package/dist/auth/middleware.js +190 -0
  45. package/dist/auth/pairing-codes.d.ts +109 -0
  46. package/dist/auth/pairing-codes.js +274 -0
  47. package/dist/auth/password.d.ts +53 -0
  48. package/dist/auth/password.js +126 -0
  49. package/dist/auth/qr-pairing.d.ts +36 -0
  50. package/dist/auth/qr-pairing.js +138 -0
  51. package/dist/auth/slack-oauth.d.ts +31 -0
  52. package/dist/auth/slack-oauth.js +80 -0
  53. package/dist/backup/index.d.ts +50 -0
  54. package/dist/backup/index.js +184 -0
  55. package/dist/browser/adapters.d.ts +25 -0
  56. package/dist/browser/adapters.js +32 -0
  57. package/dist/browser/cli.d.ts +19 -0
  58. package/dist/browser/cli.js +277 -0
  59. package/dist/browser/compression.d.ts +32 -0
  60. package/dist/browser/compression.js +269 -0
  61. package/dist/browser/extensions.d.ts +144 -0
  62. package/dist/browser/extensions.js +251 -0
  63. package/dist/browser/index.d.ts +37 -0
  64. package/dist/browser/index.js +43 -0
  65. package/dist/browser/refs.d.ts +46 -0
  66. package/dist/browser/refs.js +120 -0
  67. package/dist/browser/search.d.ts +36 -0
  68. package/dist/browser/search.js +193 -0
  69. package/dist/browser/service.d.ts +94 -0
  70. package/dist/browser/service.js +358 -0
  71. package/dist/browser/snapshot.d.ts +19 -0
  72. package/dist/browser/snapshot.js +250 -0
  73. package/dist/browser/tools.d.ts +259 -0
  74. package/dist/browser/tools.js +463 -0
  75. package/dist/browser/types.d.ts +134 -0
  76. package/dist/browser/types.js +17 -0
  77. package/dist/chat/agentic-executor.d.ts +108 -0
  78. package/dist/chat/agentic-executor.js +739 -0
  79. package/dist/chat/api-key-detector.d.ts +41 -0
  80. package/dist/chat/api-key-detector.js +290 -0
  81. package/dist/chat/auto-reply.d.ts +90 -0
  82. package/dist/chat/auto-reply.js +272 -0
  83. package/dist/chat/conversations.d.ts +91 -0
  84. package/dist/chat/conversations.js +297 -0
  85. package/dist/chat/execution/audit.d.ts +192 -0
  86. package/dist/chat/execution/audit.js +323 -0
  87. package/dist/chat/execution/executor.d.ts +56 -0
  88. package/dist/chat/execution/executor.js +654 -0
  89. package/dist/chat/execution/guardrails.d.ts +98 -0
  90. package/dist/chat/execution/guardrails.js +571 -0
  91. package/dist/chat/execution/index.d.ts +61 -0
  92. package/dist/chat/execution/index.js +129 -0
  93. package/dist/chat/execution/model-capability.d.ts +34 -0
  94. package/dist/chat/execution/model-capability.js +96 -0
  95. package/dist/chat/execution/process-pool.d.ts +110 -0
  96. package/dist/chat/execution/process-pool.js +290 -0
  97. package/dist/chat/execution/pty.d.ts +92 -0
  98. package/dist/chat/execution/pty.js +285 -0
  99. package/dist/chat/execution/rate-limiter.d.ts +87 -0
  100. package/dist/chat/execution/rate-limiter.js +305 -0
  101. package/dist/chat/execution/registry.d.ts +54 -0
  102. package/dist/chat/execution/registry.js +220 -0
  103. package/dist/chat/execution/sandbox.d.ts +109 -0
  104. package/dist/chat/execution/sandbox.js +684 -0
  105. package/dist/chat/execution/secrets.d.ts +45 -0
  106. package/dist/chat/execution/secrets.js +338 -0
  107. package/dist/chat/execution/security.d.ts +179 -0
  108. package/dist/chat/execution/security.js +739 -0
  109. package/dist/chat/execution/self-correction.d.ts +162 -0
  110. package/dist/chat/execution/self-correction.js +557 -0
  111. package/dist/chat/execution/session-manager.d.ts +79 -0
  112. package/dist/chat/execution/session-manager.js +356 -0
  113. package/dist/chat/execution/session-spawn/config.d.ts +37 -0
  114. package/dist/chat/execution/session-spawn/config.js +83 -0
  115. package/dist/chat/execution/session-spawn/index.d.ts +10 -0
  116. package/dist/chat/execution/session-spawn/index.js +10 -0
  117. package/dist/chat/execution/session-spawn/manager.d.ts +35 -0
  118. package/dist/chat/execution/session-spawn/manager.js +418 -0
  119. package/dist/chat/execution/session-spawn/types.d.ts +117 -0
  120. package/dist/chat/execution/session-spawn/types.js +16 -0
  121. package/dist/chat/execution/smart-prompts.d.ts +34 -0
  122. package/dist/chat/execution/smart-prompts.js +151 -0
  123. package/dist/chat/execution/stream-results.d.ts +65 -0
  124. package/dist/chat/execution/stream-results.js +156 -0
  125. package/dist/chat/execution/tool-router.d.ts +76 -0
  126. package/dist/chat/execution/tool-router.js +296 -0
  127. package/dist/chat/execution/tools/agents-list.d.ts +49 -0
  128. package/dist/chat/execution/tools/agents-list.js +165 -0
  129. package/dist/chat/execution/tools/browser.d.ts +12 -0
  130. package/dist/chat/execution/tools/browser.js +14 -0
  131. package/dist/chat/execution/tools/canvas.d.ts +61 -0
  132. package/dist/chat/execution/tools/canvas.js +150 -0
  133. package/dist/chat/execution/tools/complete-task.d.ts +72 -0
  134. package/dist/chat/execution/tools/complete-task.js +104 -0
  135. package/dist/chat/execution/tools/cron-tool.d.ts +204 -0
  136. package/dist/chat/execution/tools/cron-tool.js +680 -0
  137. package/dist/chat/execution/tools/discord-actions.d.ts +120 -0
  138. package/dist/chat/execution/tools/discord-actions.js +361 -0
  139. package/dist/chat/execution/tools/exec.d.ts +43 -0
  140. package/dist/chat/execution/tools/exec.js +223 -0
  141. package/dist/chat/execution/tools/file-ops.d.ts +175 -0
  142. package/dist/chat/execution/tools/file-ops.js +723 -0
  143. package/dist/chat/execution/tools/git.d.ts +143 -0
  144. package/dist/chat/execution/tools/git.js +395 -0
  145. package/dist/chat/execution/tools/github.d.ts +42 -0
  146. package/dist/chat/execution/tools/github.js +184 -0
  147. package/dist/chat/execution/tools/glinr-ops.d.ts +202 -0
  148. package/dist/chat/execution/tools/glinr-ops.js +694 -0
  149. package/dist/chat/execution/tools/image-analyze.d.ts +29 -0
  150. package/dist/chat/execution/tools/image-analyze.js +127 -0
  151. package/dist/chat/execution/tools/index.d.ts +64 -0
  152. package/dist/chat/execution/tools/index.js +245 -0
  153. package/dist/chat/execution/tools/integrations.d.ts +109 -0
  154. package/dist/chat/execution/tools/integrations.js +237 -0
  155. package/dist/chat/execution/tools/link-understand.d.ts +34 -0
  156. package/dist/chat/execution/tools/link-understand.js +307 -0
  157. package/dist/chat/execution/tools/maintenance.d.ts +29 -0
  158. package/dist/chat/execution/tools/maintenance.js +105 -0
  159. package/dist/chat/execution/tools/memory-tools.d.ts +76 -0
  160. package/dist/chat/execution/tools/memory-tools.js +278 -0
  161. package/dist/chat/execution/tools/openai-image-gen.d.ts +51 -0
  162. package/dist/chat/execution/tools/openai-image-gen.js +212 -0
  163. package/dist/chat/execution/tools/profclaw-ops.d.ts +204 -0
  164. package/dist/chat/execution/tools/profclaw-ops.js +665 -0
  165. package/dist/chat/execution/tools/session-spawn.d.ts +146 -0
  166. package/dist/chat/execution/tools/session-spawn.js +544 -0
  167. package/dist/chat/execution/tools/session-status.d.ts +38 -0
  168. package/dist/chat/execution/tools/session-status.js +185 -0
  169. package/dist/chat/execution/tools/sessions-list.d.ts +49 -0
  170. package/dist/chat/execution/tools/sessions-list.js +153 -0
  171. package/dist/chat/execution/tools/sessions-send.d.ts +48 -0
  172. package/dist/chat/execution/tools/sessions-send.js +207 -0
  173. package/dist/chat/execution/tools/sessions-spawn.d.ts +51 -0
  174. package/dist/chat/execution/tools/sessions-spawn.js +137 -0
  175. package/dist/chat/execution/tools/slack-actions.d.ts +90 -0
  176. package/dist/chat/execution/tools/slack-actions.js +272 -0
  177. package/dist/chat/execution/tools/subagent-orchestrate.d.ts +66 -0
  178. package/dist/chat/execution/tools/subagent-orchestrate.js +313 -0
  179. package/dist/chat/execution/tools/system.d.ts +121 -0
  180. package/dist/chat/execution/tools/system.js +415 -0
  181. package/dist/chat/execution/tools/telegram-actions.d.ts +126 -0
  182. package/dist/chat/execution/tools/telegram-actions.js +339 -0
  183. package/dist/chat/execution/tools/test-run.d.ts +43 -0
  184. package/dist/chat/execution/tools/test-run.js +391 -0
  185. package/dist/chat/execution/tools/tts-speak.d.ts +39 -0
  186. package/dist/chat/execution/tools/tts-speak.js +199 -0
  187. package/dist/chat/execution/tools/web-fetch.d.ts +42 -0
  188. package/dist/chat/execution/tools/web-fetch.js +247 -0
  189. package/dist/chat/execution/tools/web-search.d.ts +53 -0
  190. package/dist/chat/execution/tools/web-search.js +130 -0
  191. package/dist/chat/execution/types.d.ts +337 -0
  192. package/dist/chat/execution/types.js +8 -0
  193. package/dist/chat/execution/workflows/built-in.d.ts +10 -0
  194. package/dist/chat/execution/workflows/built-in.js +249 -0
  195. package/dist/chat/execution/workflows/executor.d.ts +13 -0
  196. package/dist/chat/execution/workflows/executor.js +259 -0
  197. package/dist/chat/execution/workflows/index.d.ts +5 -0
  198. package/dist/chat/execution/workflows/index.js +5 -0
  199. package/dist/chat/execution/workflows/trigger.d.ts +15 -0
  200. package/dist/chat/execution/workflows/trigger.js +111 -0
  201. package/dist/chat/execution/workflows/types.d.ts +80 -0
  202. package/dist/chat/execution/workflows/types.js +2 -0
  203. package/dist/chat/failover/error.d.ts +73 -0
  204. package/dist/chat/failover/error.js +412 -0
  205. package/dist/chat/failover/index.d.ts +10 -0
  206. package/dist/chat/failover/index.js +11 -0
  207. package/dist/chat/failover/model-fallback.d.ts +97 -0
  208. package/dist/chat/failover/model-fallback.js +328 -0
  209. package/dist/chat/failover/types.d.ts +47 -0
  210. package/dist/chat/failover/types.js +8 -0
  211. package/dist/chat/format/chunk.d.ts +59 -0
  212. package/dist/chat/format/chunk.js +253 -0
  213. package/dist/chat/format/index.d.ts +7 -0
  214. package/dist/chat/format/index.js +7 -0
  215. package/dist/chat/format/tool-result-formatter.d.ts +30 -0
  216. package/dist/chat/format/tool-result-formatter.js +177 -0
  217. package/dist/chat/group.d.ts +232 -0
  218. package/dist/chat/group.js +311 -0
  219. package/dist/chat/index.d.ts +21 -0
  220. package/dist/chat/index.js +30 -0
  221. package/dist/chat/memory.d.ts +108 -0
  222. package/dist/chat/memory.js +343 -0
  223. package/dist/chat/message-handler.d.ts +38 -0
  224. package/dist/chat/message-handler.js +274 -0
  225. package/dist/chat/proactive/index.d.ts +167 -0
  226. package/dist/chat/proactive/index.js +721 -0
  227. package/dist/chat/prompt-adapter.d.ts +52 -0
  228. package/dist/chat/prompt-adapter.js +245 -0
  229. package/dist/chat/providers/dingtalk/index.d.ts +69 -0
  230. package/dist/chat/providers/dingtalk/index.js +225 -0
  231. package/dist/chat/providers/discord/index.d.ts +264 -0
  232. package/dist/chat/providers/discord/index.js +657 -0
  233. package/dist/chat/providers/feishu/index.d.ts +97 -0
  234. package/dist/chat/providers/feishu/index.js +362 -0
  235. package/dist/chat/providers/googlechat/index.d.ts +269 -0
  236. package/dist/chat/providers/googlechat/index.js +634 -0
  237. package/dist/chat/providers/imessage/index.d.ts +61 -0
  238. package/dist/chat/providers/imessage/index.js +166 -0
  239. package/dist/chat/providers/index.d.ts +76 -0
  240. package/dist/chat/providers/index.js +430 -0
  241. package/dist/chat/providers/irc/index.d.ts +101 -0
  242. package/dist/chat/providers/irc/index.js +557 -0
  243. package/dist/chat/providers/line/index.d.ts +113 -0
  244. package/dist/chat/providers/line/index.js +434 -0
  245. package/dist/chat/providers/matrix/index.d.ts +161 -0
  246. package/dist/chat/providers/matrix/index.js +559 -0
  247. package/dist/chat/providers/mattermost/index.d.ts +106 -0
  248. package/dist/chat/providers/mattermost/index.js +425 -0
  249. package/dist/chat/providers/msteams/index.d.ts +198 -0
  250. package/dist/chat/providers/msteams/index.js +694 -0
  251. package/dist/chat/providers/nextcloud/index.d.ts +52 -0
  252. package/dist/chat/providers/nextcloud/index.js +156 -0
  253. package/dist/chat/providers/nostr/index.d.ts +60 -0
  254. package/dist/chat/providers/nostr/index.js +200 -0
  255. package/dist/chat/providers/qq/index.d.ts +57 -0
  256. package/dist/chat/providers/qq/index.js +260 -0
  257. package/dist/chat/providers/registry.d.ts +89 -0
  258. package/dist/chat/providers/registry.js +213 -0
  259. package/dist/chat/providers/signal/index.d.ts +88 -0
  260. package/dist/chat/providers/signal/index.js +357 -0
  261. package/dist/chat/providers/slack/index.d.ts +52 -0
  262. package/dist/chat/providers/slack/index.js +477 -0
  263. package/dist/chat/providers/synology/index.d.ts +50 -0
  264. package/dist/chat/providers/synology/index.js +138 -0
  265. package/dist/chat/providers/telegram/index.d.ts +148 -0
  266. package/dist/chat/providers/telegram/index.js +492 -0
  267. package/dist/chat/providers/tlon/index.d.ts +44 -0
  268. package/dist/chat/providers/tlon/index.js +243 -0
  269. package/dist/chat/providers/twitch/index.d.ts +79 -0
  270. package/dist/chat/providers/twitch/index.js +349 -0
  271. package/dist/chat/providers/types.d.ts +437 -0
  272. package/dist/chat/providers/types.js +14 -0
  273. package/dist/chat/providers/webchat/index.d.ts +38 -0
  274. package/dist/chat/providers/webchat/index.js +214 -0
  275. package/dist/chat/providers/wecom/index.d.ts +62 -0
  276. package/dist/chat/providers/wecom/index.js +228 -0
  277. package/dist/chat/providers/whatsapp/index.d.ts +147 -0
  278. package/dist/chat/providers/whatsapp/index.js +396 -0
  279. package/dist/chat/providers/zalo/index.d.ts +54 -0
  280. package/dist/chat/providers/zalo/index.js +158 -0
  281. package/dist/chat/providers/zalo-personal/index.d.ts +53 -0
  282. package/dist/chat/providers/zalo-personal/index.js +212 -0
  283. package/dist/chat/skills.d.ts +82 -0
  284. package/dist/chat/skills.js +410 -0
  285. package/dist/chat/system-prompts.d.ts +76 -0
  286. package/dist/chat/system-prompts.js +407 -0
  287. package/dist/chat/tool-handler.d.ts +57 -0
  288. package/dist/chat/tool-handler.js +336 -0
  289. package/dist/chat/tools.d.ts +373 -0
  290. package/dist/chat/tools.js +512 -0
  291. package/dist/cli/commands/agent.d.ts +3 -0
  292. package/dist/cli/commands/agent.js +108 -0
  293. package/dist/cli/commands/auth.d.ts +12 -0
  294. package/dist/cli/commands/auth.js +301 -0
  295. package/dist/cli/commands/browser.d.ts +3 -0
  296. package/dist/cli/commands/browser.js +138 -0
  297. package/dist/cli/commands/canvas.d.ts +3 -0
  298. package/dist/cli/commands/canvas.js +155 -0
  299. package/dist/cli/commands/channels.d.ts +3 -0
  300. package/dist/cli/commands/channels.js +167 -0
  301. package/dist/cli/commands/chat.d.ts +9 -0
  302. package/dist/cli/commands/chat.js +360 -0
  303. package/dist/cli/commands/completion.d.ts +3 -0
  304. package/dist/cli/commands/completion.js +170 -0
  305. package/dist/cli/commands/config.d.ts +3 -0
  306. package/dist/cli/commands/config.js +193 -0
  307. package/dist/cli/commands/cost.d.ts +3 -0
  308. package/dist/cli/commands/cost.js +134 -0
  309. package/dist/cli/commands/daemon.d.ts +3 -0
  310. package/dist/cli/commands/daemon.js +381 -0
  311. package/dist/cli/commands/devices.d.ts +3 -0
  312. package/dist/cli/commands/devices.js +150 -0
  313. package/dist/cli/commands/doctor.d.ts +3 -0
  314. package/dist/cli/commands/doctor.js +295 -0
  315. package/dist/cli/commands/logs.d.ts +3 -0
  316. package/dist/cli/commands/logs.js +139 -0
  317. package/dist/cli/commands/mcp.d.ts +15 -0
  318. package/dist/cli/commands/mcp.js +157 -0
  319. package/dist/cli/commands/memory.d.ts +3 -0
  320. package/dist/cli/commands/memory.js +170 -0
  321. package/dist/cli/commands/models.d.ts +3 -0
  322. package/dist/cli/commands/models.js +197 -0
  323. package/dist/cli/commands/nodes.d.ts +3 -0
  324. package/dist/cli/commands/nodes.js +193 -0
  325. package/dist/cli/commands/onboard.d.ts +13 -0
  326. package/dist/cli/commands/onboard.js +360 -0
  327. package/dist/cli/commands/plugin.d.ts +15 -0
  328. package/dist/cli/commands/plugin.js +226 -0
  329. package/dist/cli/commands/provider.d.ts +16 -0
  330. package/dist/cli/commands/provider.js +320 -0
  331. package/dist/cli/commands/security.d.ts +3 -0
  332. package/dist/cli/commands/security.js +180 -0
  333. package/dist/cli/commands/serve.d.ts +3 -0
  334. package/dist/cli/commands/serve.js +179 -0
  335. package/dist/cli/commands/session.d.ts +3 -0
  336. package/dist/cli/commands/session.js +172 -0
  337. package/dist/cli/commands/setup.d.ts +13 -0
  338. package/dist/cli/commands/setup.js +636 -0
  339. package/dist/cli/commands/skill.d.ts +15 -0
  340. package/dist/cli/commands/skill.js +191 -0
  341. package/dist/cli/commands/status.d.ts +3 -0
  342. package/dist/cli/commands/status.js +71 -0
  343. package/dist/cli/commands/summary.d.ts +3 -0
  344. package/dist/cli/commands/summary.js +160 -0
  345. package/dist/cli/commands/task.d.ts +3 -0
  346. package/dist/cli/commands/task.js +170 -0
  347. package/dist/cli/commands/ticket.d.ts +3 -0
  348. package/dist/cli/commands/ticket.js +421 -0
  349. package/dist/cli/commands/tools.d.ts +9 -0
  350. package/dist/cli/commands/tools.js +508 -0
  351. package/dist/cli/commands/tui.d.ts +3 -0
  352. package/dist/cli/commands/tui.js +158 -0
  353. package/dist/cli/commands/tunnel.d.ts +3 -0
  354. package/dist/cli/commands/tunnel.js +135 -0
  355. package/dist/cli/commands/webhooks.d.ts +3 -0
  356. package/dist/cli/commands/webhooks.js +191 -0
  357. package/dist/cli/index.d.ts +3 -0
  358. package/dist/cli/index.js +127 -0
  359. package/dist/cli/utils/api.d.ts +17 -0
  360. package/dist/cli/utils/api.js +63 -0
  361. package/dist/cli/utils/config.d.ts +31 -0
  362. package/dist/cli/utils/config.js +81 -0
  363. package/dist/cli/utils/output.d.ts +58 -0
  364. package/dist/cli/utils/output.js +148 -0
  365. package/dist/core/deployment.d.ts +30 -0
  366. package/dist/core/deployment.js +114 -0
  367. package/dist/core/sandbox-config.d.ts +63 -0
  368. package/dist/core/sandbox-config.js +148 -0
  369. package/dist/costs/budget.d.ts +28 -0
  370. package/dist/costs/budget.js +57 -0
  371. package/dist/costs/persistence.d.ts +77 -0
  372. package/dist/costs/persistence.js +210 -0
  373. package/dist/costs/pricing.d.ts +16 -0
  374. package/dist/costs/pricing.js +39 -0
  375. package/dist/costs/token-tracker.d.ts +34 -0
  376. package/dist/costs/token-tracker.js +141 -0
  377. package/dist/cron/heartbeat.d.ts +23 -0
  378. package/dist/cron/heartbeat.js +109 -0
  379. package/dist/cron/index.d.ts +22 -0
  380. package/dist/cron/index.js +37 -0
  381. package/dist/cron/issue-poller.d.ts +15 -0
  382. package/dist/cron/issue-poller.js +174 -0
  383. package/dist/cron/scheduler.d.ts +315 -0
  384. package/dist/cron/scheduler.js +1008 -0
  385. package/dist/cron/stale-checker.d.ts +16 -0
  386. package/dist/cron/stale-checker.js +61 -0
  387. package/dist/cron/templates.d.ts +107 -0
  388. package/dist/cron/templates.js +395 -0
  389. package/dist/diagnostics/exporters.d.ts +21 -0
  390. package/dist/diagnostics/exporters.js +138 -0
  391. package/dist/diagnostics/index.d.ts +10 -0
  392. package/dist/diagnostics/index.js +9 -0
  393. package/dist/diagnostics/middleware.d.ts +12 -0
  394. package/dist/diagnostics/middleware.js +58 -0
  395. package/dist/diagnostics/tracer.d.ts +133 -0
  396. package/dist/diagnostics/tracer.js +257 -0
  397. package/dist/discovery/index.d.ts +8 -0
  398. package/dist/discovery/index.js +7 -0
  399. package/dist/discovery/mdns.d.ts +40 -0
  400. package/dist/discovery/mdns.js +249 -0
  401. package/dist/gateway/index.d.ts +35 -0
  402. package/dist/gateway/index.js +36 -0
  403. package/dist/gateway/router.d.ts +110 -0
  404. package/dist/gateway/router.js +649 -0
  405. package/dist/gateway/types.d.ts +275 -0
  406. package/dist/gateway/types.js +2 -0
  407. package/dist/gateway/workflows.d.ts +37 -0
  408. package/dist/gateway/workflows.js +748 -0
  409. package/dist/hooks/agent-webhook.d.ts +277 -0
  410. package/dist/hooks/agent-webhook.js +197 -0
  411. package/dist/hooks/index.d.ts +13 -0
  412. package/dist/hooks/index.js +15 -0
  413. package/dist/hooks/prompt-submit.d.ts +45 -0
  414. package/dist/hooks/prompt-submit.js +111 -0
  415. package/dist/hooks/schemas.d.ts +563 -0
  416. package/dist/hooks/schemas.js +108 -0
  417. package/dist/hooks/session-end.d.ts +25 -0
  418. package/dist/hooks/session-end.js +153 -0
  419. package/dist/hooks/tool-use.d.ts +41 -0
  420. package/dist/hooks/tool-use.js +201 -0
  421. package/dist/hooks/types.d.ts +76 -0
  422. package/dist/hooks/types.js +7 -0
  423. package/dist/integrations/cloudflare-tunnel.d.ts +78 -0
  424. package/dist/integrations/cloudflare-tunnel.js +268 -0
  425. package/dist/integrations/github-client.d.ts +27 -0
  426. package/dist/integrations/github-client.js +79 -0
  427. package/dist/integrations/github-projects.d.ts +97 -0
  428. package/dist/integrations/github-projects.js +433 -0
  429. package/dist/integrations/github-ticket-sync.d.ts +82 -0
  430. package/dist/integrations/github-ticket-sync.js +352 -0
  431. package/dist/integrations/github.d.ts +11 -0
  432. package/dist/integrations/github.js +241 -0
  433. package/dist/integrations/jira-client.d.ts +30 -0
  434. package/dist/integrations/jira-client.js +67 -0
  435. package/dist/integrations/jira.d.ts +13 -0
  436. package/dist/integrations/jira.js +108 -0
  437. package/dist/integrations/linear-client.d.ts +23 -0
  438. package/dist/integrations/linear-client.js +52 -0
  439. package/dist/integrations/linear.d.ts +15 -0
  440. package/dist/integrations/linear.js +312 -0
  441. package/dist/integrations/tailscale.d.ts +68 -0
  442. package/dist/integrations/tailscale.js +173 -0
  443. package/dist/integrations/web-search.d.ts +112 -0
  444. package/dist/integrations/web-search.js +287 -0
  445. package/dist/intelligence/index.d.ts +8 -0
  446. package/dist/intelligence/index.js +8 -0
  447. package/dist/intelligence/ollama.d.ts +50 -0
  448. package/dist/intelligence/ollama.js +213 -0
  449. package/dist/intelligence/rules.d.ts +39 -0
  450. package/dist/intelligence/rules.js +308 -0
  451. package/dist/labels/index.d.ts +93 -0
  452. package/dist/labels/index.js +248 -0
  453. package/dist/mcp/browser-tools.d.ts +10 -0
  454. package/dist/mcp/browser-tools.js +16 -0
  455. package/dist/mcp/client.d.ts +54 -0
  456. package/dist/mcp/client.js +153 -0
  457. package/dist/mcp/index.d.ts +12 -0
  458. package/dist/mcp/index.js +13 -0
  459. package/dist/mcp/server.d.ts +40 -0
  460. package/dist/mcp/server.js +826 -0
  461. package/dist/mcp/tool-adapter.d.ts +49 -0
  462. package/dist/mcp/tool-adapter.js +193 -0
  463. package/dist/memory/experience-store.d.ts +121 -0
  464. package/dist/memory/experience-store.js +439 -0
  465. package/dist/memory/index.d.ts +8 -0
  466. package/dist/memory/index.js +25 -0
  467. package/dist/memory/memory-service.d.ts +312 -0
  468. package/dist/memory/memory-service.js +1172 -0
  469. package/dist/memory/memory-watcher.d.ts +116 -0
  470. package/dist/memory/memory-watcher.js +239 -0
  471. package/dist/middleware/logging.d.ts +34 -0
  472. package/dist/middleware/logging.js +184 -0
  473. package/dist/middleware/rate-limit.d.ts +29 -0
  474. package/dist/middleware/rate-limit.js +91 -0
  475. package/dist/notifications/in-app.d.ts +28 -0
  476. package/dist/notifications/in-app.js +53 -0
  477. package/dist/notifications/index.d.ts +3 -0
  478. package/dist/notifications/index.js +3 -0
  479. package/dist/notifications/push.d.ts +74 -0
  480. package/dist/notifications/push.js +175 -0
  481. package/dist/notifications/slack.d.ts +32 -0
  482. package/dist/notifications/slack.js +157 -0
  483. package/dist/plugins/clawhub.d.ts +70 -0
  484. package/dist/plugins/clawhub.js +260 -0
  485. package/dist/plugins/loader.d.ts +23 -0
  486. package/dist/plugins/loader.js +140 -0
  487. package/dist/plugins/marketplace.d.ts +77 -0
  488. package/dist/plugins/marketplace.js +275 -0
  489. package/dist/plugins/registry.d.ts +122 -0
  490. package/dist/plugins/registry.js +352 -0
  491. package/dist/plugins/sandbox.d.ts +77 -0
  492. package/dist/plugins/sandbox.js +287 -0
  493. package/dist/plugins/scaffolder.d.ts +28 -0
  494. package/dist/plugins/scaffolder.js +409 -0
  495. package/dist/plugins/sdk.d.ts +35 -0
  496. package/dist/plugins/sdk.js +8 -0
  497. package/dist/plugins/search/brave.d.ts +9 -0
  498. package/dist/plugins/search/brave.js +157 -0
  499. package/dist/plugins/search/duckduckgo.d.ts +9 -0
  500. package/dist/plugins/search/duckduckgo.js +171 -0
  501. package/dist/plugins/search/index.d.ts +13 -0
  502. package/dist/plugins/search/index.js +23 -0
  503. package/dist/plugins/search/searxng.d.ts +9 -0
  504. package/dist/plugins/search/searxng.js +170 -0
  505. package/dist/plugins/search/serper.d.ts +9 -0
  506. package/dist/plugins/search/serper.js +135 -0
  507. package/dist/plugins/search/tavily.d.ts +9 -0
  508. package/dist/plugins/search/tavily.js +146 -0
  509. package/dist/plugins/types.d.ts +174 -0
  510. package/dist/plugins/types.js +8 -0
  511. package/dist/projects/index.d.ts +133 -0
  512. package/dist/projects/index.js +897 -0
  513. package/dist/projects/types.d.ts +444 -0
  514. package/dist/projects/types.js +207 -0
  515. package/dist/providers/adapters/anthropic.d.ts +26 -0
  516. package/dist/providers/adapters/anthropic.js +306 -0
  517. package/dist/providers/adapters/base.d.ts +53 -0
  518. package/dist/providers/adapters/base.js +99 -0
  519. package/dist/providers/adapters/ollama.d.ts +30 -0
  520. package/dist/providers/adapters/ollama.js +292 -0
  521. package/dist/providers/ai-sdk.d.ts +178 -0
  522. package/dist/providers/ai-sdk.js +1552 -0
  523. package/dist/providers/core/index.d.ts +8 -0
  524. package/dist/providers/core/index.js +10 -0
  525. package/dist/providers/core/models.d.ts +31 -0
  526. package/dist/providers/core/models.js +949 -0
  527. package/dist/providers/core/types.d.ts +117 -0
  528. package/dist/providers/core/types.js +83 -0
  529. package/dist/providers/index.d.ts +7 -0
  530. package/dist/providers/index.js +7 -0
  531. package/dist/providers/registry.d.ts +93 -0
  532. package/dist/providers/registry.js +228 -0
  533. package/dist/providers/schema-utils.d.ts +23 -0
  534. package/dist/providers/schema-utils.js +545 -0
  535. package/dist/providers/types.d.ts +609 -0
  536. package/dist/providers/types.js +279 -0
  537. package/dist/queue/failure-handler.d.ts +93 -0
  538. package/dist/queue/failure-handler.js +379 -0
  539. package/dist/queue/index.d.ts +23 -0
  540. package/dist/queue/index.js +86 -0
  541. package/dist/queue/memory-queue.d.ts +30 -0
  542. package/dist/queue/memory-queue.js +429 -0
  543. package/dist/queue/notifications.d.ts +6 -0
  544. package/dist/queue/notifications.js +128 -0
  545. package/dist/queue/task-queue.d.ts +55 -0
  546. package/dist/queue/task-queue.js +518 -0
  547. package/dist/queue/webhook-queue.d.ts +47 -0
  548. package/dist/queue/webhook-queue.js +158 -0
  549. package/dist/routes/agents.d.ts +4 -0
  550. package/dist/routes/agents.js +45 -0
  551. package/dist/routes/auth.d.ts +19 -0
  552. package/dist/routes/auth.js +492 -0
  553. package/dist/routes/backup.d.ts +6 -0
  554. package/dist/routes/backup.js +71 -0
  555. package/dist/routes/chat.d.ts +10 -0
  556. package/dist/routes/chat.js +1678 -0
  557. package/dist/routes/clawhub.d.ts +8 -0
  558. package/dist/routes/clawhub.js +89 -0
  559. package/dist/routes/costs.d.ts +4 -0
  560. package/dist/routes/costs.js +78 -0
  561. package/dist/routes/cron.d.ts +11 -0
  562. package/dist/routes/cron.js +708 -0
  563. package/dist/routes/devices.d.ts +9 -0
  564. package/dist/routes/devices.js +490 -0
  565. package/dist/routes/discord.d.ts +15 -0
  566. package/dist/routes/discord.js +524 -0
  567. package/dist/routes/dlq.d.ts +4 -0
  568. package/dist/routes/dlq.js +64 -0
  569. package/dist/routes/gateway.d.ts +4 -0
  570. package/dist/routes/gateway.js +253 -0
  571. package/dist/routes/health.d.ts +29 -0
  572. package/dist/routes/health.js +296 -0
  573. package/dist/routes/hooks.d.ts +4 -0
  574. package/dist/routes/hooks.js +170 -0
  575. package/dist/routes/import.d.ts +9 -0
  576. package/dist/routes/import.js +540 -0
  577. package/dist/routes/index.d.ts +38 -0
  578. package/dist/routes/index.js +39 -0
  579. package/dist/routes/integrations.d.ts +10 -0
  580. package/dist/routes/integrations.js +200 -0
  581. package/dist/routes/labels.d.ts +8 -0
  582. package/dist/routes/labels.js +240 -0
  583. package/dist/routes/mcp.d.ts +14 -0
  584. package/dist/routes/mcp.js +125 -0
  585. package/dist/routes/memory.d.ts +10 -0
  586. package/dist/routes/memory.js +622 -0
  587. package/dist/routes/notifications.d.ts +9 -0
  588. package/dist/routes/notifications.js +154 -0
  589. package/dist/routes/oobe.d.ts +10 -0
  590. package/dist/routes/oobe.js +405 -0
  591. package/dist/routes/openapi.d.ts +9 -0
  592. package/dist/routes/openapi.js +537 -0
  593. package/dist/routes/plugins.d.ts +8 -0
  594. package/dist/routes/plugins.js +108 -0
  595. package/dist/routes/projects.d.ts +8 -0
  596. package/dist/routes/projects.js +592 -0
  597. package/dist/routes/push.d.ts +8 -0
  598. package/dist/routes/push.js +75 -0
  599. package/dist/routes/search.d.ts +4 -0
  600. package/dist/routes/search.js +189 -0
  601. package/dist/routes/security.d.ts +10 -0
  602. package/dist/routes/security.js +189 -0
  603. package/dist/routes/settings.d.ts +4 -0
  604. package/dist/routes/settings.js +119 -0
  605. package/dist/routes/setup.d.ts +11 -0
  606. package/dist/routes/setup.js +525 -0
  607. package/dist/routes/skills.d.ts +13 -0
  608. package/dist/routes/skills.js +152 -0
  609. package/dist/routes/slack.d.ts +12 -0
  610. package/dist/routes/slack.js +999 -0
  611. package/dist/routes/states.d.ts +8 -0
  612. package/dist/routes/states.js +123 -0
  613. package/dist/routes/stats.d.ts +6 -0
  614. package/dist/routes/stats.js +369 -0
  615. package/dist/routes/summaries.d.ts +4 -0
  616. package/dist/routes/summaries.js +344 -0
  617. package/dist/routes/sync.d.ts +13 -0
  618. package/dist/routes/sync.js +268 -0
  619. package/dist/routes/tasks.d.ts +4 -0
  620. package/dist/routes/tasks.js +473 -0
  621. package/dist/routes/telegram.d.ts +14 -0
  622. package/dist/routes/telegram.js +420 -0
  623. package/dist/routes/tickets.d.ts +4 -0
  624. package/dist/routes/tickets.js +1090 -0
  625. package/dist/routes/tokens.d.ts +4 -0
  626. package/dist/routes/tokens.js +83 -0
  627. package/dist/routes/tools.d.ts +14 -0
  628. package/dist/routes/tools.js +790 -0
  629. package/dist/routes/tunnels.d.ts +8 -0
  630. package/dist/routes/tunnels.js +145 -0
  631. package/dist/routes/users.d.ts +15 -0
  632. package/dist/routes/users.js +998 -0
  633. package/dist/routes/voice.d.ts +8 -0
  634. package/dist/routes/voice.js +127 -0
  635. package/dist/routes/webchat.d.ts +11 -0
  636. package/dist/routes/webchat.js +173 -0
  637. package/dist/routes/webhook-dedup.d.ts +11 -0
  638. package/dist/routes/webhook-dedup.js +49 -0
  639. package/dist/routes/webhooks.d.ts +4 -0
  640. package/dist/routes/webhooks.js +71 -0
  641. package/dist/routes/whatsapp.d.ts +14 -0
  642. package/dist/routes/whatsapp.js +391 -0
  643. package/dist/security/audit-scanner.d.ts +32 -0
  644. package/dist/security/audit-scanner.js +217 -0
  645. package/dist/security/fs-guard.d.ts +41 -0
  646. package/dist/security/fs-guard.js +206 -0
  647. package/dist/security/prompt-guard.d.ts +47 -0
  648. package/dist/security/prompt-guard.js +198 -0
  649. package/dist/security/ssrf-guard.d.ts +38 -0
  650. package/dist/security/ssrf-guard.js +266 -0
  651. package/dist/security/types.d.ts +92 -0
  652. package/dist/security/types.js +8 -0
  653. package/dist/server/route-loader.d.ts +15 -0
  654. package/dist/server/route-loader.js +135 -0
  655. package/dist/server.d.ts +5 -0
  656. package/dist/server.js +835 -0
  657. package/dist/settings/index.d.ts +841 -0
  658. package/dist/settings/index.js +451 -0
  659. package/dist/skills/compiler.d.ts +83 -0
  660. package/dist/skills/compiler.js +358 -0
  661. package/dist/skills/frontmatter.d.ts +33 -0
  662. package/dist/skills/frontmatter.js +175 -0
  663. package/dist/skills/index.d.ts +19 -0
  664. package/dist/skills/index.js +24 -0
  665. package/dist/skills/installer.d.ts +22 -0
  666. package/dist/skills/installer.js +220 -0
  667. package/dist/skills/loader.d.ts +72 -0
  668. package/dist/skills/loader.js +484 -0
  669. package/dist/skills/prompt-builder.d.ts +48 -0
  670. package/dist/skills/prompt-builder.js +135 -0
  671. package/dist/skills/registry.d.ts +115 -0
  672. package/dist/skills/registry.js +225 -0
  673. package/dist/skills/types.d.ts +202 -0
  674. package/dist/skills/types.js +24 -0
  675. package/dist/states/index.d.ts +64 -0
  676. package/dist/states/index.js +142 -0
  677. package/dist/storage/adapter.d.ts +146 -0
  678. package/dist/storage/adapter.js +2 -0
  679. package/dist/storage/index.d.ts +48 -0
  680. package/dist/storage/index.js +135 -0
  681. package/dist/storage/libsql.d.ts +99 -0
  682. package/dist/storage/libsql.js +1873 -0
  683. package/dist/storage/migrations.d.ts +65 -0
  684. package/dist/storage/migrations.js +289 -0
  685. package/dist/storage/schema.d.ts +10185 -0
  686. package/dist/storage/schema.js +1113 -0
  687. package/dist/summaries/extractor.d.ts +56 -0
  688. package/dist/summaries/extractor.js +377 -0
  689. package/dist/summaries/index.d.ts +13 -0
  690. package/dist/summaries/index.js +14 -0
  691. package/dist/summaries/storage.d.ts +51 -0
  692. package/dist/summaries/storage.js +101 -0
  693. package/dist/summaries/templates.d.ts +68 -0
  694. package/dist/summaries/templates.js +245 -0
  695. package/dist/sync/adapters/base.d.ts +42 -0
  696. package/dist/sync/adapters/base.js +142 -0
  697. package/dist/sync/adapters/github.d.ts +45 -0
  698. package/dist/sync/adapters/github.js +445 -0
  699. package/dist/sync/adapters/linear.d.ts +40 -0
  700. package/dist/sync/adapters/linear.js +434 -0
  701. package/dist/sync/config.d.ts +388 -0
  702. package/dist/sync/config.js +281 -0
  703. package/dist/sync/engine.d.ts +112 -0
  704. package/dist/sync/engine.js +623 -0
  705. package/dist/sync/index.d.ts +31 -0
  706. package/dist/sync/index.js +34 -0
  707. package/dist/sync/integration.d.ts +53 -0
  708. package/dist/sync/integration.js +231 -0
  709. package/dist/sync/types.d.ts +249 -0
  710. package/dist/sync/types.js +30 -0
  711. package/dist/tickets/index.d.ts +139 -0
  712. package/dist/tickets/index.js +1406 -0
  713. package/dist/tickets/types.d.ts +817 -0
  714. package/dist/tickets/types.js +310 -0
  715. package/dist/tools/adapters.d.ts +56 -0
  716. package/dist/tools/adapters.js +183 -0
  717. package/dist/tools/index.d.ts +66 -0
  718. package/dist/tools/index.js +105 -0
  719. package/dist/tools/types.d.ts +117 -0
  720. package/dist/tools/types.js +20 -0
  721. package/dist/types/agent.d.ts +101 -0
  722. package/dist/types/agent.js +2 -0
  723. package/dist/types/errors.d.ts +150 -0
  724. package/dist/types/errors.js +338 -0
  725. package/dist/types/index.d.ts +3 -0
  726. package/dist/types/index.js +3 -0
  727. package/dist/types/summary.d.ts +638 -0
  728. package/dist/types/summary.js +137 -0
  729. package/dist/types/task.d.ts +123 -0
  730. package/dist/types/task.js +46 -0
  731. package/dist/utils/ai-cache.d.ts +72 -0
  732. package/dist/utils/ai-cache.js +204 -0
  733. package/dist/utils/ai-inference.d.ts +57 -0
  734. package/dist/utils/ai-inference.js +190 -0
  735. package/dist/utils/ai-responder.d.ts +44 -0
  736. package/dist/utils/ai-responder.js +272 -0
  737. package/dist/utils/circuit-breaker.d.ts +139 -0
  738. package/dist/utils/circuit-breaker.js +281 -0
  739. package/dist/utils/config-loader.d.ts +12 -0
  740. package/dist/utils/config-loader.js +44 -0
  741. package/dist/utils/crypto.d.ts +10 -0
  742. package/dist/utils/crypto.js +59 -0
  743. package/dist/utils/env-validator.d.ts +44 -0
  744. package/dist/utils/env-validator.js +236 -0
  745. package/dist/utils/file-lock.d.ts +85 -0
  746. package/dist/utils/file-lock.js +204 -0
  747. package/dist/utils/logger.d.ts +153 -0
  748. package/dist/utils/logger.js +282 -0
  749. package/dist/utils/metrics.d.ts +183 -0
  750. package/dist/utils/metrics.js +345 -0
  751. package/dist/utils/security.d.ts +90 -0
  752. package/dist/utils/security.js +347 -0
  753. package/dist/voice/index.d.ts +79 -0
  754. package/dist/voice/index.js +144 -0
  755. package/dist/voice/stt/whisper.d.ts +13 -0
  756. package/dist/voice/stt/whisper.js +116 -0
  757. package/dist/voice/tts/elevenlabs.d.ts +18 -0
  758. package/dist/voice/tts/elevenlabs.js +178 -0
  759. package/dist/voice/tts/openai-tts.d.ts +19 -0
  760. package/dist/voice/tts/openai-tts.js +127 -0
  761. package/dist/voice/tts/system.d.ts +26 -0
  762. package/dist/voice/tts/system.js +146 -0
  763. package/dist/voice/wake-word.d.ts +44 -0
  764. package/dist/voice/wake-word.js +145 -0
  765. package/docker-compose.yml +222 -0
  766. package/package.json +154 -0
  767. package/profclaw.mjs +24 -0
  768. package/skills/1password/SKILL.md +155 -0
  769. package/skills/api-tester/SKILL.md +177 -0
  770. package/skills/apple-notes/SKILL.md +167 -0
  771. package/skills/apple-reminders/SKILL.md +178 -0
  772. package/skills/bear-notes/SKILL.md +166 -0
  773. package/skills/blogwatcher/SKILL.md +177 -0
  774. package/skills/camsnap/SKILL.md +130 -0
  775. package/skills/code-generation/SKILL.md +139 -0
  776. package/skills/code-review/SKILL.md +116 -0
  777. package/skills/coding-agent/SKILL.md +184 -0
  778. package/skills/cron-manager/SKILL.md +141 -0
  779. package/skills/debug-helper/SKILL.md +134 -0
  780. package/skills/docker-ops/SKILL.md +246 -0
  781. package/skills/file-manager/SKILL.md +160 -0
  782. package/skills/git-workflow/SKILL.md +171 -0
  783. package/skills/github-issues/SKILL.md +244 -0
  784. package/skills/gog/SKILL.md +191 -0
  785. package/skills/goplaces/SKILL.md +156 -0
  786. package/skills/healthcheck/SKILL.md +270 -0
  787. package/skills/himalaya/SKILL.md +165 -0
  788. package/skills/mcp-discovery/SKILL.md +109 -0
  789. package/skills/memory-manager/SKILL.md +151 -0
  790. package/skills/model-usage/SKILL.md +177 -0
  791. package/skills/nano-banana-pro/SKILL.md +214 -0
  792. package/skills/nano-pdf/SKILL.md +165 -0
  793. package/skills/notion/SKILL.md +147 -0
  794. package/skills/obsidian/SKILL.md +163 -0
  795. package/skills/openai-image-gen/SKILL.md +194 -0
  796. package/skills/openai-whisper/SKILL.md +98 -0
  797. package/skills/openai-whisper-api/SKILL.md +130 -0
  798. package/skills/openhue/SKILL.md +203 -0
  799. package/skills/oracle/SKILL.md +236 -0
  800. package/skills/phone-control/SKILL.md +201 -0
  801. package/skills/profclaw-assistant/SKILL.md +81 -0
  802. package/skills/profclaw-projects/SKILL.md +68 -0
  803. package/skills/profclaw-tickets/SKILL.md +91 -0
  804. package/skills/session-logs/SKILL.md +216 -0
  805. package/skills/sherpa-onnx-tts/SKILL.md +134 -0
  806. package/skills/skill-creator/SKILL.md +183 -0
  807. package/skills/songsee/SKILL.md +170 -0
  808. package/skills/spotify-player/SKILL.md +254 -0
  809. package/skills/summarize/SKILL.md +155 -0
  810. package/skills/system-admin/SKILL.md +179 -0
  811. package/skills/things-mac/SKILL.md +179 -0
  812. package/skills/tmux/SKILL.md +170 -0
  813. package/skills/trello/SKILL.md +154 -0
  814. package/skills/video-frames/SKILL.md +127 -0
  815. package/skills/weather/SKILL.md +186 -0
  816. package/skills/web-research/SKILL.md +128 -0
  817. package/skills/xurl/SKILL.md +198 -0
  818. package/ui/README.md +73 -0
  819. package/ui/dist/assets/ActivityView-CkPgKhwm.js +1 -0
  820. package/ui/dist/assets/AgentList-C3SVdeEz.js +1 -0
  821. package/ui/dist/assets/AnalyticsDashboard-DVU--vlP.js +1 -0
  822. package/ui/dist/assets/AreaChart-B5qMEGWj.js +1 -0
  823. package/ui/dist/assets/CartesianChart-B50bcUJi.js +36 -0
  824. package/ui/dist/assets/ChatView-BZFJs7w_.js +10 -0
  825. package/ui/dist/assets/CostsDashboard-ChfH8BlG.js +1 -0
  826. package/ui/dist/assets/EstimateSelect-CLpB4NQO.js +1 -0
  827. package/ui/dist/assets/FloatingChatbot-CBzBY9a0.js +2 -0
  828. package/ui/dist/assets/InviteCodeManagement-DsbdPa6W.js +2 -0
  829. package/ui/dist/assets/ProjectDetail-BEM3tFXg.js +2 -0
  830. package/ui/dist/assets/ProjectDetail-D1-0B2xV.css +1 -0
  831. package/ui/dist/assets/ProjectIcon-CN1FmFAk.js +1 -0
  832. package/ui/dist/assets/ProjectList-DSDaNhxQ.js +4 -0
  833. package/ui/dist/assets/Settings-dPVcqC_d.js +6 -0
  834. package/ui/dist/assets/StatusIndicator-DA3NAo_b.js +1 -0
  835. package/ui/dist/assets/SummaryDetail-Bjnf9lT8.js +27 -0
  836. package/ui/dist/assets/SummaryList-ENwKDBKW.js +1 -0
  837. package/ui/dist/assets/TaskDetail-DnwG6MzB.js +1 -0
  838. package/ui/dist/assets/TaskList-D9Ug_HiV.js +1 -0
  839. package/ui/dist/assets/TicketBoard-CviH1571.js +1 -0
  840. package/ui/dist/assets/TicketDetail-8Jk8O-33.js +1 -0
  841. package/ui/dist/assets/TicketList-B-iV4rRA.js +1 -0
  842. package/ui/dist/assets/UserManagement-CPZ8s7s2.js +2 -0
  843. package/ui/dist/assets/ViewSwitcher-BUyOOWDI.js +1 -0
  844. package/ui/dist/assets/alert-dialog-BOmnTkN-.js +7 -0
  845. package/ui/dist/assets/archive-D5my9zOG.js +1 -0
  846. package/ui/dist/assets/badge-B4ov81_m.js +1 -0
  847. package/ui/dist/assets/brain-C53ElFLD.js +1 -0
  848. package/ui/dist/assets/bug-D0TJoCYn.js +1 -0
  849. package/ui/dist/assets/calendar-BkWIhKa1.js +1 -0
  850. package/ui/dist/assets/chevron-up-BRTtndUZ.js +1 -0
  851. package/ui/dist/assets/circle-x-BN89YhbS.js +1 -0
  852. package/ui/dist/assets/constants-fc7TFI7u.js +1 -0
  853. package/ui/dist/assets/cpu-B41x1-vV.js +1 -0
  854. package/ui/dist/assets/database-D9Cnfmzj.js +1 -0
  855. package/ui/dist/assets/defineProperty-CoXUr7_6.js +2 -0
  856. package/ui/dist/assets/dialog-DrWB4EYD.js +1 -0
  857. package/ui/dist/assets/element-adapter-DL0DQilL.js +4 -0
  858. package/ui/dist/assets/ellipsis-NuUWekvu.js +1 -0
  859. package/ui/dist/assets/ellipsis-vertical-BueMfuCw.js +1 -0
  860. package/ui/dist/assets/file-code-HR9829Jc.js +1 -0
  861. package/ui/dist/assets/folder-open-C_7oYEqe.js +1 -0
  862. package/ui/dist/assets/funnel-B5gmNXGf.js +1 -0
  863. package/ui/dist/assets/git-branch-BRMiJmV3.js +1 -0
  864. package/ui/dist/assets/git-commit-horizontal-CXOUQeJI.js +1 -0
  865. package/ui/dist/assets/globe-CCspjvus.js +1 -0
  866. package/ui/dist/assets/hash-g3102kPC.js +1 -0
  867. package/ui/dist/assets/history-CNqcBBrV.js +1 -0
  868. package/ui/dist/assets/index-27mTPKuh.js +1 -0
  869. package/ui/dist/assets/index-BMx3fH-e.js +1 -0
  870. package/ui/dist/assets/index-C9jNQXzL.js +1 -0
  871. package/ui/dist/assets/index-CEZ6R2Uw.js +7 -0
  872. package/ui/dist/assets/index-DURTouJI.js +1 -0
  873. package/ui/dist/assets/index-WclMPci1.css +1 -0
  874. package/ui/dist/assets/index-kb4AJXUB.js +67 -0
  875. package/ui/dist/assets/layers-CLXiHN6o.js +1 -0
  876. package/ui/dist/assets/layout-dashboard-B07MFhBs.js +1 -0
  877. package/ui/dist/assets/lightbulb-B2dgG5ks.js +1 -0
  878. package/ui/dist/assets/link-2-BxNmr9hL.js +1 -0
  879. package/ui/dist/assets/markdown-renderer-CjU6hBcW.js +36 -0
  880. package/ui/dist/assets/message-square-Bf2-CVbt.js +1 -0
  881. package/ui/dist/assets/pencil-D096Ey62.js +1 -0
  882. package/ui/dist/assets/play-DfdcSI3x.js +1 -0
  883. package/ui/dist/assets/popover-BV0QJDQq.js +1 -0
  884. package/ui/dist/assets/progress-DjPEDJfI.js +1 -0
  885. package/ui/dist/assets/rocket-CPsTc-5G.js +1 -0
  886. package/ui/dist/assets/select-LsO16slr.js +1 -0
  887. package/ui/dist/assets/send-BDYBZDUZ.js +1 -0
  888. package/ui/dist/assets/server-B3k6noce.js +1 -0
  889. package/ui/dist/assets/settings-2-Cu4xTjhG.js +1 -0
  890. package/ui/dist/assets/sheet-BScLnPKX.js +1 -0
  891. package/ui/dist/assets/shield-check-CQqkwufI.js +1 -0
  892. package/ui/dist/assets/shield-off-ZFruH9KO.js +1 -0
  893. package/ui/dist/assets/skeleton-CtkIA_MU.js +1 -0
  894. package/ui/dist/assets/smartphone-DnoksVkc.js +1 -0
  895. package/ui/dist/assets/square-uD9ZHMfW.js +1 -0
  896. package/ui/dist/assets/switch-MQPnwGJK.js +1 -0
  897. package/ui/dist/assets/table-B8cqlywA.js +1 -0
  898. package/ui/dist/assets/tag-wEJQRWlV.js +1 -0
  899. package/ui/dist/assets/textarea-D5LJCOGl.js +1 -0
  900. package/ui/dist/assets/timer-mbGHegmr.js +1 -0
  901. package/ui/dist/assets/tooltip-Df1CunSp.js +1 -0
  902. package/ui/dist/assets/trash-2-B4oAXsX-.js +1 -0
  903. package/ui/dist/assets/trending-up-BGWxvlmZ.js +1 -0
  904. package/ui/dist/assets/wand-sparkles-CZy4xvL3.js +1 -0
  905. package/ui/dist/assets/wrench-ByZkjO6m.js +1 -0
  906. package/ui/dist/audio-worklets/vad-processor.js +132 -0
  907. package/ui/dist/brand/profclaw-appicon-192.png +0 -0
  908. package/ui/dist/brand/profclaw-appicon-512.png +0 -0
  909. package/ui/dist/brand/profclaw-appicon-shadow.svg +51 -0
  910. package/ui/dist/brand/profclaw-appicon.svg +50 -0
  911. package/ui/dist/brand/profclaw-favicon-coral-bg-128.png +0 -0
  912. package/ui/dist/brand/profclaw-favicon-coral-bg-64.png +0 -0
  913. package/ui/dist/brand/profclaw-favicon-coral-bg.svg +52 -0
  914. package/ui/dist/brand/profclaw-favicon-coral-body-128.png +0 -0
  915. package/ui/dist/brand/profclaw-favicon-coral-body.svg +41 -0
  916. package/ui/dist/brand/profclaw-favicon-shadow-128.png +0 -0
  917. package/ui/dist/brand/profclaw-favicon-shadow-64.png +0 -0
  918. package/ui/dist/brand/profclaw-favicon-shadow.svg +51 -0
  919. package/ui/dist/brand/profclaw-mark-coral-256.png +0 -0
  920. package/ui/dist/brand/profclaw-mark-coral-64.png +0 -0
  921. package/ui/dist/brand/profclaw-mark-coral.svg +31 -0
  922. package/ui/dist/brand/profclaw-mono-white.svg +18 -0
  923. package/ui/dist/brand/profclaw-text-dark.svg +18 -0
  924. package/ui/dist/brand/profclaw-text-light.svg +18 -0
  925. package/ui/dist/brand/profclaw-wordmark-dark.svg +48 -0
  926. package/ui/dist/brand/profclaw-wordmark-light.svg +48 -0
  927. package/ui/dist/brand/safari-pinned-tab.svg +15 -0
  928. package/ui/dist/favicon/android-chrome-192x192.png +0 -0
  929. package/ui/dist/favicon/android-chrome-384x384.png +0 -0
  930. package/ui/dist/favicon/android-chrome-512x512.png +0 -0
  931. package/ui/dist/favicon/apple-touch-icon.png +0 -0
  932. package/ui/dist/favicon/browserconfig.xml +9 -0
  933. package/ui/dist/favicon/favicon-16x16.png +0 -0
  934. package/ui/dist/favicon/favicon-32x32.png +0 -0
  935. package/ui/dist/favicon/favicon.ico +0 -0
  936. package/ui/dist/favicon/mstile-150x150.png +0 -0
  937. package/ui/dist/favicon/safari-pinned-tab.svg +46 -0
  938. package/ui/dist/favicon/site.webmanifest +22 -0
  939. package/ui/dist/index.html +32 -0
  940. package/ui/dist/manifest.json +49 -0
  941. package/ui/dist/sw.js +124 -0
  942. package/ui/dist/vite.svg +1 -0
@@ -0,0 +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-kb4AJXUB.js";import{T as Gt,a as hs,b as kn}from"./ProjectIcon-CN1FmFAk.js";import{D as ps,b as xs,c as gs,d as ys,e as vs}from"./dialog-DrWB4EYD.js";import{T as Nn}from"./textarea-D5LJCOGl.js";import{P as bs,a as ws,b as js}from"./popover-BV0QJDQq.js";import{C as Mt}from"./calendar-BkWIhKa1.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-B50bcUJi.js";import{T as no}from"./trending-up-BGWxvlmZ.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-BScLnPKX.js";import{C as fo,L as mo,I as _r}from"./layers-CLXiHN6o.js";import{E as Fr}from"./ellipsis-NuUWekvu.js";import{a as ho,B as po}from"./bug-D0TJoCYn.js";import{F as xo}from"./funnel-B5gmNXGf.js";import{S as go}from"./settings-2-Cu4xTjhG.js";import{P as In}from"./play-DfdcSI3x.js";import{L as yo}from"./layout-dashboard-B07MFhBs.js";import{C as vo}from"./circle-x-BN89YhbS.js";import"./smartphone-DnoksVkc.js";import"./wrench-ByZkjO6m.js";import"./globe-CCspjvus.js";import"./lightbulb-B2dgG5ks.js";import"./rocket-CPsTc-5G.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};
@@ -0,0 +1 @@
1
+ .rdp-root{--rdp-accent-color: blue;--rdp-accent-background-color: #f0f0ff;--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-border-radius: 100%;--rdp-day_button-border: 2px solid transparent;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--rdp-accent-color);--rdp-disabled-opacity: .5;--rdp-outside-opacity: .75;--rdp-today-color: var(--rdp-accent-color);--rdp-dropdown-gap: .5rem;--rdp-months-gap: 2rem;--rdp-nav_button-disabled-opacity: .5;--rdp-nav_button-height: 2.25rem;--rdp-nav_button-width: 2.25rem;--rdp-nav-height: 2.75rem;--rdp-range_middle-background-color: var(--rdp-accent-background-color);--rdp-range_middle-color: inherit;--rdp-range_start-color: white;--rdp-range_start-background: linear-gradient( var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50% );--rdp-range_start-date-background-color: var(--rdp-accent-color);--rdp-range_end-background: linear-gradient( var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50% );--rdp-range_end-color: white;--rdp-range_end-date-background-color: var(--rdp-accent-color);--rdp-week_number-border-radius: 100%;--rdp-week_number-border: 2px solid transparent;--rdp-week_number-height: var(--rdp-day-height);--rdp-week_number-opacity: .75;--rdp-week_number-width: var(--rdp-day-width);--rdp-weeknumber-text-align: center;--rdp-weekday-opacity: .75;--rdp-weekday-padding: .5rem 0rem;--rdp-weekday-text-align: center;--rdp-gradient-direction: 90deg;--rdp-animation_duration: .3s;--rdp-animation_timing: cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction: -90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity: unset}.rdp-root{position:relative;box-sizing:border-box}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}
@@ -0,0 +1 @@
1
+ import{c as r,j as t,F as h,_ as d,ay as y,V as f,i as s}from"./index-kb4AJXUB.js";import{C as k,S as p}from"./smartphone-DnoksVkc.js";import{W as u}from"./wrench-ByZkjO6m.js";import{G as x}from"./globe-CCspjvus.js";import{L as C}from"./lightbulb-B2dgG5ks.js";import{R as g,C as b}from"./rocket-CPsTc-5G.js";const j=[["path",{d:"M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z",key:"e79jfc"}],["circle",{cx:"13.5",cy:"6.5",r:".5",fill:"currentColor",key:"1okk4w"}],["circle",{cx:"17.5",cy:"10.5",r:".5",fill:"currentColor",key:"f64h9f"}],["circle",{cx:"6.5",cy:"12.5",r:".5",fill:"currentColor",key:"qy21gx"}],["circle",{cx:"8.5",cy:"7.5",r:".5",fill:"currentColor",key:"fotxhn"}]],w=r("palette",j);const _=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]],N=r("target",_);const S=[["path",{d:"M2 9a3 3 0 0 1 0 6v2a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-2a3 3 0 0 1 0-6V7a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z",key:"qn84l0"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],$=r("ticket-check",S),l={"clipboard-list":b,rocket:g,lightbulb:C,target:N,smartphone:p,globe:x,settings:f,wrench:u,"bar-chart-3":y,palette:w,code:k,shield:d,default:h},n={sm:"h-4 w-4",md:"h-5 w-5",lg:"h-6 w-6"},v={sm:"w-8 h-8",md:"w-10 h-10",lg:"w-12 h-12"};function q({icon:i,color:e="#6366f1",size:c="md",className:o,showBackground:m=!0}){const a=l[i]||l.default;return m?t.jsx("div",{className:s("rounded-lg flex items-center justify-center",v[c],o),style:{backgroundColor:`${e}20`},children:t.jsx(a,{className:n[c],style:{color:e}})}):t.jsx(a,{className:s(n[c],o),style:{color:e}})}export{w as P,N as T,q as a,$ as b};