@polderlabs/bizar 8.0.0 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1012) hide show
  1. package/.claude/agents/agent-browser.md +1 -1
  2. package/.claude/agents/baldr.md +1 -1
  3. package/.claude/agents/forseti.md +1 -1
  4. package/.claude/agents/frigg.md +1 -1
  5. package/.claude/agents/heimdall.md +1 -1
  6. package/.claude/agents/hermod.md +1 -1
  7. package/.claude/agents/mimir.md +1 -1
  8. package/.claude/agents/odin.md +1 -1
  9. package/.claude/agents/quick.md +1 -1
  10. package/.claude/agents/semble-search.md +1 -1
  11. package/.claude/agents/thor.md +1 -1
  12. package/.claude/agents/tyr.md +1 -1
  13. package/.claude/agents/vidarr.md +1 -1
  14. package/.claude/agents/vor.md +1 -1
  15. package/.claude/commands/goal.md +98 -0
  16. package/.claude/settings.local.json +1 -2
  17. package/.claude/worktrees/kanban-overhaul/.claude/CLAUDE.md +15 -0
  18. package/.claude/worktrees/kanban-overhaul/.claude/agents/_shared/AGENT_BASELINE.md +168 -0
  19. package/.claude/worktrees/kanban-overhaul/.claude/agents/_shared/CLAUDE_TOOLS.md +412 -0
  20. package/.claude/worktrees/kanban-overhaul/.claude/agents/_shared/SKILLS.md +109 -0
  21. package/.claude/worktrees/kanban-overhaul/.claude/agents/agent-browser.md +80 -0
  22. package/.claude/worktrees/kanban-overhaul/.claude/agents/baldr.md +49 -0
  23. package/.claude/worktrees/kanban-overhaul/.claude/agents/forseti.md +51 -0
  24. package/.claude/worktrees/kanban-overhaul/.claude/agents/frigg.md +42 -0
  25. package/.claude/worktrees/kanban-overhaul/.claude/agents/heimdall.md +33 -0
  26. package/.claude/worktrees/kanban-overhaul/.claude/agents/hermod.md +53 -0
  27. package/.claude/worktrees/kanban-overhaul/.claude/agents/mimir.md +49 -0
  28. package/.claude/worktrees/kanban-overhaul/.claude/agents/odin.md +287 -0
  29. package/.claude/worktrees/kanban-overhaul/.claude/agents/quick.md +34 -0
  30. package/.claude/worktrees/kanban-overhaul/.claude/agents/semble-search.md +50 -0
  31. package/.claude/worktrees/kanban-overhaul/.claude/agents/thor.md +53 -0
  32. package/.claude/worktrees/kanban-overhaul/.claude/agents/tyr.md +56 -0
  33. package/.claude/worktrees/kanban-overhaul/.claude/agents/vidarr.md +54 -0
  34. package/.claude/worktrees/kanban-overhaul/.claude/agents/vor.md +53 -0
  35. package/.claude/worktrees/kanban-overhaul/.claude/commands/audit.md +25 -0
  36. package/.claude/worktrees/kanban-overhaul/.claude/commands/bizar.md +22 -0
  37. package/.claude/worktrees/kanban-overhaul/.claude/commands/explain.md +17 -0
  38. package/.claude/worktrees/kanban-overhaul/.claude/commands/init.md +29 -0
  39. package/.claude/worktrees/kanban-overhaul/.claude/commands/learn.md +44 -0
  40. package/.claude/worktrees/kanban-overhaul/.claude/commands/plan.md +35 -0
  41. package/.claude/worktrees/kanban-overhaul/.claude/commands/plow-through.md +50 -0
  42. package/.claude/worktrees/kanban-overhaul/.claude/commands/pr-review.md +49 -0
  43. package/.claude/worktrees/kanban-overhaul/.claude/commands/setup-provider.md +96 -0
  44. package/.claude/worktrees/kanban-overhaul/.claude/commands/tailscale-serve.md +100 -0
  45. package/.claude/worktrees/kanban-overhaul/.claude/commands/team.md +132 -0
  46. package/.claude/worktrees/kanban-overhaul/.claude/commands/test.md +62 -0
  47. package/.claude/worktrees/kanban-overhaul/.claude/commands/validate.md +68 -0
  48. package/.claude/worktrees/kanban-overhaul/.claude/commands/visual-plan.md +24 -0
  49. package/.claude/worktrees/kanban-overhaul/.claude/hooks/README.md +92 -0
  50. package/.claude/worktrees/kanban-overhaul/.claude/hooks/posttooluse-editwrite.mjs +91 -0
  51. package/.claude/worktrees/kanban-overhaul/.claude/hooks/pretooluse-bash.mjs +81 -0
  52. package/.claude/worktrees/kanban-overhaul/.claude/hooks/pretooluse-editwrite.mjs +139 -0
  53. package/.claude/worktrees/kanban-overhaul/.claude/hooks/sessionend-recall.mjs +74 -0
  54. package/.claude/worktrees/kanban-overhaul/.claude/hooks/sessionstart-prime.mjs +80 -0
  55. package/.claude/worktrees/kanban-overhaul/.claude/hooks/userpromptsubmit-tag.mjs +80 -0
  56. package/.claude/worktrees/kanban-overhaul/.claude/hooks/worker-suggest.mjs +110 -0
  57. package/.claude/worktrees/kanban-overhaul/.claude/settings.json +125 -0
  58. package/.claude/worktrees/kanban-overhaul/.claude/settings.local.json +8 -0
  59. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router/SKILL.md +80 -0
  60. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-chat/SKILL.md +73 -0
  61. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-embeddings/SKILL.md +69 -0
  62. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-image/SKILL.md +86 -0
  63. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-stt/SKILL.md +79 -0
  64. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-tts/SKILL.md +80 -0
  65. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-web-fetch/SKILL.md +99 -0
  66. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-web-search/SKILL.md +91 -0
  67. package/.claude/worktrees/kanban-overhaul/.claude/skills/bizar/README.md +9 -0
  68. package/.claude/worktrees/kanban-overhaul/.claude/skills/bizar/SKILL.md +450 -0
  69. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/README.md +28 -0
  70. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/SKILL.md +634 -0
  71. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/references/concurrency.md +320 -0
  72. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/references/error-handling.md +229 -0
  73. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/references/memory-safety.md +216 -0
  74. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/references/modern-idioms.md +282 -0
  75. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/references/review-checklist.md +96 -0
  76. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/README.md +28 -0
  77. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/SKILL.md +304 -0
  78. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/references/coverage.md +370 -0
  79. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/references/framework-compare.md +175 -0
  80. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/references/host-test-for-embedded.md +499 -0
  81. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/references/mocking.md +364 -0
  82. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/references/tdd-workflow.md +308 -0
  83. package/.claude/worktrees/kanban-overhaul/.claude/skills/cubesandbox/SKILL.md +148 -0
  84. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/README.md +41 -0
  85. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/SKILL.md +439 -0
  86. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/freertos-patterns.md +214 -0
  87. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/host-tests.md +164 -0
  88. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/idf-py-commands.md +157 -0
  89. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/kconfig.md +159 -0
  90. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/logging-discipline.md +118 -0
  91. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/memory-and-iram.md +137 -0
  92. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/nvs.md +121 -0
  93. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/packed-structs.md +192 -0
  94. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/scripts/idf_env.sh +47 -0
  95. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/scripts/size_check.sh +77 -0
  96. package/.claude/worktrees/kanban-overhaul/.claude/skills/glyph/SKILL.md +163 -0
  97. package/.claude/worktrees/kanban-overhaul/.claude/skills/harness-engineering/SKILL.md +143 -0
  98. package/.claude/worktrees/kanban-overhaul/.claude/skills/lightrag/SKILL.md +81 -0
  99. package/.claude/worktrees/kanban-overhaul/.claude/skills/memory-protocol/SKILL.md +105 -0
  100. package/.claude/worktrees/kanban-overhaul/.claude/skills/obsidian/SKILL.md +306 -0
  101. package/.claude/worktrees/kanban-overhaul/.claude/skills/read-the-damn-docs/SKILL.md +113 -0
  102. package/.claude/worktrees/kanban-overhaul/.claude/skills/self-improvement/SKILL.md +64 -0
  103. package/.claude/worktrees/kanban-overhaul/.dockerignore +31 -0
  104. package/.claude/worktrees/kanban-overhaul/.gitattributes +27 -0
  105. package/.claude/worktrees/kanban-overhaul/.harness/agents.json +17 -0
  106. package/.claude/worktrees/kanban-overhaul/.harness/arch-rules.json +69 -0
  107. package/.claude/worktrees/kanban-overhaul/.harness/topology.json +4 -0
  108. package/.claude/worktrees/kanban-overhaul/.nvmrc +1 -0
  109. package/.claude/worktrees/kanban-overhaul/.serena/project.yml +159 -0
  110. package/.claude/worktrees/kanban-overhaul/AGENTS.md +250 -0
  111. package/.claude/worktrees/kanban-overhaul/CHANGELOG.md +5410 -0
  112. package/.claude/worktrees/kanban-overhaul/CLAUDE.md +260 -0
  113. package/.claude/worktrees/kanban-overhaul/CURRENT_ISSUES_ AND_NEW_FEATURES.md +18 -0
  114. package/.claude/worktrees/kanban-overhaul/DECISIONS.md +66 -0
  115. package/.claude/worktrees/kanban-overhaul/Dockerfile +48 -0
  116. package/.claude/worktrees/kanban-overhaul/FINAL_GOAL.md +397 -0
  117. package/.claude/worktrees/kanban-overhaul/IMPLEMENTATION_PLAN.md +250 -0
  118. package/.claude/worktrees/kanban-overhaul/LICENSE +21 -0
  119. package/.claude/worktrees/kanban-overhaul/MILESTONES.md +257 -0
  120. package/.claude/worktrees/kanban-overhaul/Makefile +93 -0
  121. package/.claude/worktrees/kanban-overhaul/PROGRESS.md +1406 -0
  122. package/.claude/worktrees/kanban-overhaul/README.md +483 -0
  123. package/.claude/worktrees/kanban-overhaul/ROADMAP.md +609 -0
  124. package/.claude/worktrees/kanban-overhaul/bizar-dash/.graphifyignore +40 -0
  125. package/.claude/worktrees/kanban-overhaul/bizar-dash/.obsidian/README.md +14 -0
  126. package/.claude/worktrees/kanban-overhaul/bizar-dash/.obsidian/daily/2026-06-25.md +9 -0
  127. package/.claude/worktrees/kanban-overhaul/bizar-dash/.obsidian/vault.json +7 -0
  128. package/.claude/worktrees/kanban-overhaul/bizar-dash/.od-skills/web-prototype-e1429c1737/SKILL.md +103 -0
  129. package/.claude/worktrees/kanban-overhaul/bizar-dash/.od-skills/web-prototype-e1429c1737/assets/template.html +338 -0
  130. package/.claude/worktrees/kanban-overhaul/bizar-dash/.od-skills/web-prototype-e1429c1737/example.html +81 -0
  131. package/.claude/worktrees/kanban-overhaul/bizar-dash/.od-skills/web-prototype-e1429c1737/open-design.json +172 -0
  132. package/.claude/worktrees/kanban-overhaul/bizar-dash/.od-skills/web-prototype-e1429c1737/references/checklist.md +44 -0
  133. package/.claude/worktrees/kanban-overhaul/bizar-dash/.od-skills/web-prototype-e1429c1737/references/layouts.md +247 -0
  134. package/.claude/worktrees/kanban-overhaul/bizar-dash/ARCHITECTURE.md +197 -0
  135. package/.claude/worktrees/kanban-overhaul/bizar-dash/CHANGELOG.md +235 -0
  136. package/.claude/worktrees/kanban-overhaul/bizar-dash/DESIGN.md +912 -0
  137. package/.claude/worktrees/kanban-overhaul/bizar-dash/GLYPH.md +418 -0
  138. package/.claude/worktrees/kanban-overhaul/bizar-dash/PLAN.md +1135 -0
  139. package/.claude/worktrees/kanban-overhaul/bizar-dash/critique.json +26 -0
  140. package/.claude/worktrees/kanban-overhaul/bizar-dash/plans/debug-plan/comments.json +1 -0
  141. package/.claude/worktrees/kanban-overhaul/bizar-dash/plans/debug-plan/meta.json +10 -0
  142. package/.claude/worktrees/kanban-overhaul/bizar-dash/plans/debug-plan/plan.json +174 -0
  143. package/.claude/worktrees/kanban-overhaul/bizar-dash/scripts/smoke-bg-retry.mjs +246 -0
  144. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/agent-baseline/SKILL.md +80 -0
  145. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/agent-browser/SKILL.md +181 -0
  146. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/bizar/SKILL.md +116 -0
  147. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/chat/SKILL.md +74 -0
  148. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/eval/SKILL.md +237 -0
  149. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/headroom/SKILL.md +94 -0
  150. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/lightrag/SKILL.md +86 -0
  151. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/minimax/SKILL.md +80 -0
  152. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/obsidian/SKILL.md +68 -0
  153. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/providers/SKILL.md +75 -0
  154. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/publishing/SKILL.md +146 -0
  155. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/sdk/SKILL.md +138 -0
  156. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/self-improvement/SKILL.md +53 -0
  157. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/skills-cli/SKILL.md +94 -0
  158. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/usage/SKILL.md +62 -0
  159. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/cli/dashboard-ports.mjs +488 -0
  160. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/cli.mjs +537 -0
  161. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/activity-log.mjs +174 -0
  162. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/agents-store.mjs +465 -0
  163. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/api.mjs +223 -0
  164. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/artifact-template.html +810 -0
  165. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/artifacts-store.mjs +733 -0
  166. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/auth.mjs +548 -0
  167. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/background-store.mjs +446 -0
  168. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/backup-store.mjs +530 -0
  169. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/bg-poller.mjs +375 -0
  170. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/bg-retry.mjs +446 -0
  171. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/bg-spawner.mjs +390 -0
  172. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/browser.mjs +40 -0
  173. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/claude-bg-spawner.mjs +390 -0
  174. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/claude-info.mjs +412 -0
  175. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/claude-runner.mjs +284 -0
  176. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/claude-sdk.mjs +191 -0
  177. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/diagnostics-store.mjs +598 -0
  178. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/dialog-poller.mjs +105 -0
  179. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/dialog-store.mjs +177 -0
  180. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/digest-store.mjs +558 -0
  181. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/eval-store.mjs +281 -0
  182. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/eval.mjs +500 -0
  183. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/glyphs/mdx-compiler.mjs +596 -0
  184. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/headroom.mjs +649 -0
  185. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/lib/path-safe.mjs +283 -0
  186. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/lib/rate-limit.mjs +122 -0
  187. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/logger.mjs +71 -0
  188. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-consolidator.mjs +225 -0
  189. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-distillation.mjs +296 -0
  190. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-git.mjs +473 -0
  191. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-lightrag.mjs +1478 -0
  192. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-obsidian.mjs +230 -0
  193. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-schema.mjs +145 -0
  194. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-secrets.mjs +84 -0
  195. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-store.mjs +1093 -0
  196. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/metrics.mjs +268 -0
  197. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/minimax-usage-store.mjs +372 -0
  198. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/minimax.mjs +683 -0
  199. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/mod-security.mjs +398 -0
  200. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/mods-loader.mjs +1243 -0
  201. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/notifications-store.mjs +243 -0
  202. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/obsidian-store.mjs +318 -0
  203. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/ocr.mjs +55 -0
  204. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/otel.mjs +260 -0
  205. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/pair-store.mjs +138 -0
  206. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/progress-parser.mjs +221 -0
  207. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/projects-store.mjs +364 -0
  208. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/providers-store.mjs +1801 -0
  209. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/_shared.mjs +447 -0
  210. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/activity.mjs +195 -0
  211. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/agents-cc.mjs +194 -0
  212. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/agents.mjs +134 -0
  213. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/artifacts.mjs +279 -0
  214. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/auth.mjs +69 -0
  215. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/background.mjs +422 -0
  216. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/backup.mjs +112 -0
  217. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/chat.mjs +727 -0
  218. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/claude-session-detail.mjs +329 -0
  219. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/claude-sessions.mjs +259 -0
  220. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/clipboard.mjs +173 -0
  221. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/config.mjs +180 -0
  222. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/diagnostics.mjs +50 -0
  223. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/dialogs.mjs +86 -0
  224. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/digests.mjs +82 -0
  225. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/distill.mjs +129 -0
  226. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/doctor.mjs +71 -0
  227. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/env-vars.mjs +231 -0
  228. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/eval.mjs +187 -0
  229. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/fs.mjs +429 -0
  230. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/goal-planner.mjs +236 -0
  231. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/goals.mjs +212 -0
  232. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/headroom.mjs +126 -0
  233. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/history.mjs +78 -0
  234. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/lightrag.mjs +169 -0
  235. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/memory.mjs +1524 -0
  236. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/minimax.mjs +133 -0
  237. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/misc.mjs +90 -0
  238. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/mods.mjs +359 -0
  239. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/notifications.mjs +54 -0
  240. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/obsidian.mjs +239 -0
  241. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/ocr.mjs +182 -0
  242. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/overview.mjs +92 -0
  243. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/pair.mjs +67 -0
  244. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/projects.mjs +175 -0
  245. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/providers.mjs +308 -0
  246. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/schedules.mjs +159 -0
  247. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/settings.mjs +51 -0
  248. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/skills.mjs +65 -0
  249. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/tailscale.mjs +46 -0
  250. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/tasks.mjs +518 -0
  251. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/themes.mjs +51 -0
  252. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/update.mjs +340 -0
  253. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/usage.mjs +136 -0
  254. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/users.mjs +102 -0
  255. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/voice.mjs +167 -0
  256. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/workspaces.mjs +299 -0
  257. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes-v2/auth.mjs +59 -0
  258. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes-v2/events.mjs +121 -0
  259. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes-v2/health.mjs +21 -0
  260. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes-v2/index.mjs +90 -0
  261. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes-v2/sessions.mjs +111 -0
  262. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/schedules-runner.mjs +556 -0
  263. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/schedules-store.mjs +268 -0
  264. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/search-store.mjs +220 -0
  265. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/serve-info.mjs +1110 -0
  266. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/server.mjs +966 -0
  267. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/settings-store.mjs +45 -0
  268. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/skills-store.mjs +190 -0
  269. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/state.mjs +437 -0
  270. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/tailscale-store.mjs +113 -0
  271. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/task-delegator.mjs +969 -0
  272. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/tasks-store.mjs +556 -0
  273. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/tui.mjs +923 -0
  274. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/update-store.mjs +168 -0
  275. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/v2-auth-file.mjs +99 -0
  276. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/v2-event-bus.mjs +128 -0
  277. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/voice-store.mjs +229 -0
  278. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/voice-transcribe.mjs +72 -0
  279. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/watcher.mjs +81 -0
  280. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/workers/transcription-worker.mjs +213 -0
  281. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/workspaces.mjs +626 -0
  282. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/yaml.mjs +238 -0
  283. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/App.tsx +200 -0
  284. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/data/fetcher.ts +59 -0
  285. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/data/types.ts +168 -0
  286. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/data/useFetch.ts +62 -0
  287. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/data/useWebSocket.ts +153 -0
  288. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/main.tsx +28 -0
  289. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/shell/AppShell.tsx +90 -0
  290. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/shell/PageSkeleton.tsx +29 -0
  291. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/shell/Sidebar.tsx +361 -0
  292. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/shell/StatusBar.tsx +63 -0
  293. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/shell/Topbar.tsx +113 -0
  294. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/shell/index.ts +15 -0
  295. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/activity/ActivityFeed.tsx +137 -0
  296. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/agents/AgentActivity.tsx +101 -0
  297. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/agents/AgentCard.tsx +158 -0
  298. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/agents/AgentDetail.tsx +232 -0
  299. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Button.tsx +141 -0
  300. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/ButtonGroup.tsx +32 -0
  301. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Checkbox.tsx +49 -0
  302. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Field.tsx +78 -0
  303. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Form.tsx +23 -0
  304. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/IconButton.tsx +112 -0
  305. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Input.tsx +94 -0
  306. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/RadioGroup.tsx +74 -0
  307. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Select.tsx +171 -0
  308. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Slider.tsx +68 -0
  309. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Switch.tsx +56 -0
  310. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Textarea.tsx +64 -0
  311. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Toggle.tsx +36 -0
  312. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/ToggleGroup.tsx +85 -0
  313. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Accordion.tsx +134 -0
  314. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Avatar.tsx +175 -0
  315. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Badge.tsx +93 -0
  316. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/BarList.tsx +101 -0
  317. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Card.tsx +140 -0
  318. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Chip.tsx +96 -0
  319. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Kbd.tsx +42 -0
  320. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/ProgressBar.tsx +93 -0
  321. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Sparkline.tsx +98 -0
  322. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/StatTile.tsx +150 -0
  323. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Table.tsx +170 -0
  324. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Timeline.tsx +130 -0
  325. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/ViewHeader.tsx +122 -0
  326. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Alert.tsx +95 -0
  327. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Banner.tsx +39 -0
  328. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/ContextMenu.tsx +143 -0
  329. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Dialog.tsx +149 -0
  330. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Drawer.tsx +8 -0
  331. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/DropdownMenu.tsx +231 -0
  332. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/EmptyState.tsx +48 -0
  333. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Popover.tsx +56 -0
  334. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Sheet.tsx +103 -0
  335. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Skeleton.tsx +67 -0
  336. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Spinner.tsx +30 -0
  337. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Toast.tsx +66 -0
  338. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Tooltip.tsx +89 -0
  339. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/goals/GoalCard.tsx +176 -0
  340. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/goals/GoalDetail.tsx +245 -0
  341. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/goals/KeyResult.tsx +115 -0
  342. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/index.ts +349 -0
  343. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanBoard.tsx +115 -0
  344. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanCard.tsx +391 -0
  345. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanCardBadges.tsx +111 -0
  346. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanColumn.tsx +181 -0
  347. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanContextMenu.tsx +126 -0
  348. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanDetailDialog.tsx +638 -0
  349. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanEmptyColumn.tsx +43 -0
  350. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanProgress.tsx +130 -0
  351. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanQuickAdd.tsx +141 -0
  352. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanToolbar.tsx +291 -0
  353. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/useKanbanSelection.ts +90 -0
  354. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/libraries/LibraryGrid.tsx +30 -0
  355. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/libraries/LibraryItem.tsx +161 -0
  356. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/memory/MemoryVault.tsx +144 -0
  357. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/navigation/CommandPalette.tsx +224 -0
  358. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/navigation/NavLink.tsx +81 -0
  359. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/navigation/Pagination.tsx +164 -0
  360. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/navigation/Tabs.tsx +128 -0
  361. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Box.tsx +144 -0
  362. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Center.tsx +40 -0
  363. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Cluster.tsx +67 -0
  364. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Grid.tsx +104 -0
  365. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Inline.tsx +77 -0
  366. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Portal.tsx +33 -0
  367. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/ScrollArea.tsx +62 -0
  368. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Separator.tsx +42 -0
  369. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Stack.tsx +73 -0
  370. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/VisuallyHidden.tsx +49 -0
  371. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/settings/SettingsNav.tsx +91 -0
  372. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/settings/SettingsRow.tsx +88 -0
  373. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/settings/SettingsSection.tsx +109 -0
  374. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/styles/globals.css +220 -0
  375. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/styles/reset.css +57 -0
  376. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/styles/tokens.css +217 -0
  377. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/theme/DensityProvider.tsx +66 -0
  378. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/theme/ThemeProvider.tsx +94 -0
  379. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/theme/ThemeToggle.tsx +88 -0
  380. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/theme/useDensity.ts +15 -0
  381. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/theme/useTheme.ts +16 -0
  382. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/utils/cx.ts +19 -0
  383. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Activity/ActivityView.tsx +71 -0
  384. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Agents/AgentsView.tsx +172 -0
  385. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/CommandPalette/AppCommandPalette.tsx +247 -0
  386. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Goals/GoalsView.tsx +137 -0
  387. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Libraries/LibrariesView.tsx +108 -0
  388. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Memory/MemoryView.tsx +77 -0
  389. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Overview/OverviewView.tsx +152 -0
  390. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Router.tsx +72 -0
  391. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Settings/SettingsView.tsx +330 -0
  392. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Tasks/CommandPalettePlaceholder.tsx +106 -0
  393. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Tasks/TasksView.tsx +792 -0
  394. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/vite-env.d.ts +15 -0
  395. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8.html +17 -0
  396. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/FORMAT.md +76 -0
  397. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/hello-mod/README.md +19 -0
  398. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/hello-mod/agents/greeter.md +8 -0
  399. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/hello-mod/commands/hello.md +6 -0
  400. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/hello-mod/mod.json +20 -0
  401. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/hello-mod/routes/ping.mjs +9 -0
  402. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/hello-mod/views/HelloView.tsx +10 -0
  403. package/.claude/worktrees/kanban-overhaul/bizar-dash/tests/setup.ts +63 -0
  404. package/.claude/worktrees/kanban-overhaul/bizar-dash/tests/smoke-v2.mjs +212 -0
  405. package/.claude/worktrees/kanban-overhaul/bizar-dash/tsconfig.json +23 -0
  406. package/.claude/worktrees/kanban-overhaul/bizar-dash/vite.config.ts +66 -0
  407. package/.claude/worktrees/kanban-overhaul/bizar-dash/vitest.config.ts +20 -0
  408. package/.claude/worktrees/kanban-overhaul/bizar-plugins/registry.json +62 -0
  409. package/.claude/worktrees/kanban-overhaul/bookmarklet/bizar-clipper.js +48 -0
  410. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/README.md +43 -0
  411. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/background.js +95 -0
  412. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/content.js +170 -0
  413. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/icons/icon-128.png +0 -0
  414. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/icons/icon-16.png +0 -0
  415. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/icons/icon-48.png +0 -0
  416. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/icons/icon.svg +4 -0
  417. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/manifest.json +32 -0
  418. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/popup.html +66 -0
  419. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/popup.js +110 -0
  420. package/.claude/worktrees/kanban-overhaul/bun.lock +1558 -0
  421. package/.claude/worktrees/kanban-overhaul/cli/agent-browser-up.sh +152 -0
  422. package/.claude/worktrees/kanban-overhaul/cli/agent-browser-update.mjs +322 -0
  423. package/.claude/worktrees/kanban-overhaul/cli/artifact-cli.mjs +605 -0
  424. package/.claude/worktrees/kanban-overhaul/cli/artifact-render.mjs +621 -0
  425. package/.claude/worktrees/kanban-overhaul/cli/artifact-server.mjs +847 -0
  426. package/.claude/worktrees/kanban-overhaul/cli/artifact-templates.mjs +523 -0
  427. package/.claude/worktrees/kanban-overhaul/cli/artifact.mjs +63 -0
  428. package/.claude/worktrees/kanban-overhaul/cli/atomic.mjs +73 -0
  429. package/.claude/worktrees/kanban-overhaul/cli/audit.mjs +141 -0
  430. package/.claude/worktrees/kanban-overhaul/cli/banner.mjs +41 -0
  431. package/.claude/worktrees/kanban-overhaul/cli/bg.mjs +471 -0
  432. package/.claude/worktrees/kanban-overhaul/cli/bin.mjs +698 -0
  433. package/.claude/worktrees/kanban-overhaul/cli/bootstrap.mjs +77 -0
  434. package/.claude/worktrees/kanban-overhaul/cli/commands/artifact.mjs +20 -0
  435. package/.claude/worktrees/kanban-overhaul/cli/commands/claim.mjs +282 -0
  436. package/.claude/worktrees/kanban-overhaul/cli/commands/claude-cmd.mjs +348 -0
  437. package/.claude/worktrees/kanban-overhaul/cli/commands/clip.mjs +163 -0
  438. package/.claude/worktrees/kanban-overhaul/cli/commands/cost.mjs +279 -0
  439. package/.claude/worktrees/kanban-overhaul/cli/commands/dash.mjs +193 -0
  440. package/.claude/worktrees/kanban-overhaul/cli/commands/deploy/cloudflare.mjs +250 -0
  441. package/.claude/worktrees/kanban-overhaul/cli/commands/deploy/docker.mjs +222 -0
  442. package/.claude/worktrees/kanban-overhaul/cli/commands/deploy/fly.mjs +161 -0
  443. package/.claude/worktrees/kanban-overhaul/cli/commands/deploy/vercel.mjs +225 -0
  444. package/.claude/worktrees/kanban-overhaul/cli/commands/deploy.mjs +240 -0
  445. package/.claude/worktrees/kanban-overhaul/cli/commands/eval.mjs +396 -0
  446. package/.claude/worktrees/kanban-overhaul/cli/commands/headroom.mjs +204 -0
  447. package/.claude/worktrees/kanban-overhaul/cli/commands/install.mjs +170 -0
  448. package/.claude/worktrees/kanban-overhaul/cli/commands/lightrag.mjs +170 -0
  449. package/.claude/worktrees/kanban-overhaul/cli/commands/marketplace.mjs +64 -0
  450. package/.claude/worktrees/kanban-overhaul/cli/commands/memory.mjs +25 -0
  451. package/.claude/worktrees/kanban-overhaul/cli/commands/minimax.mjs +288 -0
  452. package/.claude/worktrees/kanban-overhaul/cli/commands/mod.mjs +185 -0
  453. package/.claude/worktrees/kanban-overhaul/cli/commands/ocr.mjs +182 -0
  454. package/.claude/worktrees/kanban-overhaul/cli/commands/plugin.mjs +358 -0
  455. package/.claude/worktrees/kanban-overhaul/cli/commands/rca.mjs +198 -0
  456. package/.claude/worktrees/kanban-overhaul/cli/commands/sandbox.mjs +220 -0
  457. package/.claude/worktrees/kanban-overhaul/cli/commands/service.mjs +79 -0
  458. package/.claude/worktrees/kanban-overhaul/cli/commands/setup-provider.mjs +466 -0
  459. package/.claude/worktrees/kanban-overhaul/cli/commands/tailscale.mjs +258 -0
  460. package/.claude/worktrees/kanban-overhaul/cli/commands/usage.mjs +113 -0
  461. package/.claude/worktrees/kanban-overhaul/cli/commands/util.mjs +577 -0
  462. package/.claude/worktrees/kanban-overhaul/cli/commands/validate.mjs +541 -0
  463. package/.claude/worktrees/kanban-overhaul/cli/commands/voice.mjs +211 -0
  464. package/.claude/worktrees/kanban-overhaul/cli/commands/workspace.mjs +247 -0
  465. package/.claude/worktrees/kanban-overhaul/cli/copy.mjs +586 -0
  466. package/.claude/worktrees/kanban-overhaul/cli/cost-gate.mjs +501 -0
  467. package/.claude/worktrees/kanban-overhaul/cli/dev-link.mjs +191 -0
  468. package/.claude/worktrees/kanban-overhaul/cli/digest.mjs +149 -0
  469. package/.claude/worktrees/kanban-overhaul/cli/doctor.mjs +217 -0
  470. package/.claude/worktrees/kanban-overhaul/cli/export.mjs +95 -0
  471. package/.claude/worktrees/kanban-overhaul/cli/feature-list-bridge.mjs +400 -0
  472. package/.claude/worktrees/kanban-overhaul/cli/heads-up.mjs +295 -0
  473. package/.claude/worktrees/kanban-overhaul/cli/init.mjs +368 -0
  474. package/.claude/worktrees/kanban-overhaul/cli/install.mjs +640 -0
  475. package/.claude/worktrees/kanban-overhaul/cli/memory-constants.mjs +76 -0
  476. package/.claude/worktrees/kanban-overhaul/cli/memory.mjs +1850 -0
  477. package/.claude/worktrees/kanban-overhaul/cli/plugin-runtime-deps.mjs +250 -0
  478. package/.claude/worktrees/kanban-overhaul/cli/post-install-smoke.mjs +256 -0
  479. package/.claude/worktrees/kanban-overhaul/cli/prompts.mjs +168 -0
  480. package/.claude/worktrees/kanban-overhaul/cli/providers-detect.mjs +233 -0
  481. package/.claude/worktrees/kanban-overhaul/cli/provision-claude.mjs +1176 -0
  482. package/.claude/worktrees/kanban-overhaul/cli/provision.mjs +2233 -0
  483. package/.claude/worktrees/kanban-overhaul/cli/repair.mjs +209 -0
  484. package/.claude/worktrees/kanban-overhaul/cli/service-controller.mjs +927 -0
  485. package/.claude/worktrees/kanban-overhaul/cli/service-env.mjs +139 -0
  486. package/.claude/worktrees/kanban-overhaul/cli/service.mjs +492 -0
  487. package/.claude/worktrees/kanban-overhaul/cli/update.mjs +29 -0
  488. package/.claude/worktrees/kanban-overhaul/cli/utils.mjs +221 -0
  489. package/.claude/worktrees/kanban-overhaul/cli/worker-dispatcher.mjs +259 -0
  490. package/.claude/worktrees/kanban-overhaul/config/AGENTS.md +595 -0
  491. package/.claude/worktrees/kanban-overhaul/config/agents/_shared/AGENT_BASELINE.md +155 -0
  492. package/.claude/worktrees/kanban-overhaul/config/agents/_shared/CLINE_TOOLS.md +398 -0
  493. package/.claude/worktrees/kanban-overhaul/config/agents/_shared/SKILLS.md +109 -0
  494. package/.claude/worktrees/kanban-overhaul/config/agents/agent-browser.md +90 -0
  495. package/.claude/worktrees/kanban-overhaul/config/agents/baldr.md +60 -0
  496. package/.claude/worktrees/kanban-overhaul/config/agents/forseti.md +60 -0
  497. package/.claude/worktrees/kanban-overhaul/config/agents/frigg.md +52 -0
  498. package/.claude/worktrees/kanban-overhaul/config/agents/heimdall.md +44 -0
  499. package/.claude/worktrees/kanban-overhaul/config/agents/hermod.md +64 -0
  500. package/.claude/worktrees/kanban-overhaul/config/agents/mimir.md +60 -0
  501. package/.claude/worktrees/kanban-overhaul/config/agents/odin.md +310 -0
  502. package/.claude/worktrees/kanban-overhaul/config/agents/quick.md +47 -0
  503. package/.claude/worktrees/kanban-overhaul/config/agents/semble-search.md +59 -0
  504. package/.claude/worktrees/kanban-overhaul/config/agents/thor.md +64 -0
  505. package/.claude/worktrees/kanban-overhaul/config/agents/tyr.md +67 -0
  506. package/.claude/worktrees/kanban-overhaul/config/agents/vidarr.md +65 -0
  507. package/.claude/worktrees/kanban-overhaul/config/agents/vor.md +62 -0
  508. package/.claude/worktrees/kanban-overhaul/config/commands/audit.md +5 -0
  509. package/.claude/worktrees/kanban-overhaul/config/commands/bizar.md +22 -0
  510. package/.claude/worktrees/kanban-overhaul/config/commands/explain.md +5 -0
  511. package/.claude/worktrees/kanban-overhaul/config/commands/init.md +26 -0
  512. package/.claude/worktrees/kanban-overhaul/config/commands/learn.md +5 -0
  513. package/.claude/worktrees/kanban-overhaul/config/commands/plan.md +30 -0
  514. package/.claude/worktrees/kanban-overhaul/config/commands/plow-through.md +47 -0
  515. package/.claude/worktrees/kanban-overhaul/config/commands/pr-review.md +5 -0
  516. package/.claude/worktrees/kanban-overhaul/config/commands/setup-provider.md +95 -0
  517. package/.claude/worktrees/kanban-overhaul/config/commands/tailscale-serve.md +97 -0
  518. package/.claude/worktrees/kanban-overhaul/config/commands/team.md +124 -0
  519. package/.claude/worktrees/kanban-overhaul/config/commands/test.md +60 -0
  520. package/.claude/worktrees/kanban-overhaul/config/commands/validate.md +66 -0
  521. package/.claude/worktrees/kanban-overhaul/config/commands/visual-plan.md +19 -0
  522. package/.claude/worktrees/kanban-overhaul/config/hooks/PostToolUse +66 -0
  523. package/.claude/worktrees/kanban-overhaul/config/hooks/PreToolUse +82 -0
  524. package/.claude/worktrees/kanban-overhaul/config/hooks/README.md +68 -0
  525. package/.claude/worktrees/kanban-overhaul/config/hooks/TaskResume +48 -0
  526. package/.claude/worktrees/kanban-overhaul/config/hooks/TaskStart +47 -0
  527. package/.claude/worktrees/kanban-overhaul/config/hooks/UserPromptSubmit +55 -0
  528. package/.claude/worktrees/kanban-overhaul/config/rules/general.md +9 -0
  529. package/.claude/worktrees/kanban-overhaul/config/rules/git.md +11 -0
  530. package/.claude/worktrees/kanban-overhaul/config/rules/javascript.md +10 -0
  531. package/.claude/worktrees/kanban-overhaul/config/rules/python.md +10 -0
  532. package/.claude/worktrees/kanban-overhaul/config/rules/testing.md +10 -0
  533. package/.claude/worktrees/kanban-overhaul/config/rules/thinking.md +56 -0
  534. package/.claude/worktrees/kanban-overhaul/config/rules/uncertainty.md +70 -0
  535. package/.claude/worktrees/kanban-overhaul/config/skills/9router/SKILL.md +80 -0
  536. package/.claude/worktrees/kanban-overhaul/config/skills/9router-chat/SKILL.md +73 -0
  537. package/.claude/worktrees/kanban-overhaul/config/skills/9router-embeddings/SKILL.md +69 -0
  538. package/.claude/worktrees/kanban-overhaul/config/skills/9router-image/SKILL.md +86 -0
  539. package/.claude/worktrees/kanban-overhaul/config/skills/9router-stt/SKILL.md +79 -0
  540. package/.claude/worktrees/kanban-overhaul/config/skills/9router-tts/SKILL.md +80 -0
  541. package/.claude/worktrees/kanban-overhaul/config/skills/9router-web-fetch/SKILL.md +99 -0
  542. package/.claude/worktrees/kanban-overhaul/config/skills/9router-web-search/SKILL.md +91 -0
  543. package/.claude/worktrees/kanban-overhaul/config/skills/bizar/README.md +9 -0
  544. package/.claude/worktrees/kanban-overhaul/config/skills/bizar/SKILL.md +447 -0
  545. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/README.md +28 -0
  546. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/SKILL.md +634 -0
  547. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/agents/openai.yaml +4 -0
  548. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/references/concurrency.md +320 -0
  549. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/references/error-handling.md +229 -0
  550. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/references/memory-safety.md +216 -0
  551. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/references/modern-idioms.md +282 -0
  552. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/references/review-checklist.md +96 -0
  553. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/README.md +28 -0
  554. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/SKILL.md +304 -0
  555. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/agents/openai.yaml +4 -0
  556. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/references/coverage.md +370 -0
  557. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/references/framework-compare.md +175 -0
  558. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/references/host-test-for-embedded.md +499 -0
  559. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/references/mocking.md +364 -0
  560. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/references/tdd-workflow.md +308 -0
  561. package/.claude/worktrees/kanban-overhaul/config/skills/cubesandbox/SKILL.md +148 -0
  562. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/README.md +41 -0
  563. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/SKILL.md +439 -0
  564. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/agents/openai.yaml +4 -0
  565. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/freertos-patterns.md +214 -0
  566. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/host-tests.md +164 -0
  567. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/idf-py-commands.md +157 -0
  568. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/kconfig.md +159 -0
  569. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/logging-discipline.md +118 -0
  570. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/memory-and-iram.md +137 -0
  571. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/nvs.md +121 -0
  572. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/packed-structs.md +192 -0
  573. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/scripts/idf_env.sh +47 -0
  574. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/scripts/size_check.sh +77 -0
  575. package/.claude/worktrees/kanban-overhaul/config/skills/glyph/SKILL.md +163 -0
  576. package/.claude/worktrees/kanban-overhaul/config/skills/harness-engineering/SKILL.md +142 -0
  577. package/.claude/worktrees/kanban-overhaul/config/skills/lightrag/SKILL.md +81 -0
  578. package/.claude/worktrees/kanban-overhaul/config/skills/memory-protocol/SKILL.md +105 -0
  579. package/.claude/worktrees/kanban-overhaul/config/skills/obsidian/SKILL.md +306 -0
  580. package/.claude/worktrees/kanban-overhaul/config/skills/read-the-damn-docs/SKILL.md +113 -0
  581. package/.claude/worktrees/kanban-overhaul/config/skills/self-improvement/SKILL.md +64 -0
  582. package/.claude/worktrees/kanban-overhaul/config/trigger-patterns.json +186 -0
  583. package/.claude/worktrees/kanban-overhaul/docker-compose.yml +50 -0
  584. package/.claude/worktrees/kanban-overhaul/docs/A11Y.md +81 -0
  585. package/.claude/worktrees/kanban-overhaul/docs/DEPLOY.md +360 -0
  586. package/.claude/worktrees/kanban-overhaul/docs/DOCKER.md +250 -0
  587. package/.claude/worktrees/kanban-overhaul/docs/INDEX.md +223 -0
  588. package/.claude/worktrees/kanban-overhaul/docs/PLUGIN_REGISTRY.md +107 -0
  589. package/.claude/worktrees/kanban-overhaul/docs/RELEASING.md +693 -0
  590. package/.claude/worktrees/kanban-overhaul/docs/architecture.md +317 -0
  591. package/.claude/worktrees/kanban-overhaul/docs/code-review.md +242 -0
  592. package/.claude/worktrees/kanban-overhaul/docs/curator.md +144 -0
  593. package/.claude/worktrees/kanban-overhaul/docs/dashboard-ui-migration.md +807 -0
  594. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-001-cline-rewrite.md +114 -0
  595. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-002-in-process-clinecore.md +139 -0
  596. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-003-in-process-memory-vault.md +101 -0
  597. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-004-cline-agent-teams.md +112 -0
  598. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-005-bg-agents-via-dashboard.md +77 -0
  599. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-006-kanban-board.md +69 -0
  600. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-007-tool-approval-gate.md +147 -0
  601. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-008-skill-curator.md +100 -0
  602. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-009-pre-compaction-flush.md +106 -0
  603. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-010-knowledge-graph-tools.md +95 -0
  604. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-011-claude-code-migration.md +172 -0
  605. package/.claude/worktrees/kanban-overhaul/docs/graph-tools.md +130 -0
  606. package/.claude/worktrees/kanban-overhaul/docs/migration-guide.md +471 -0
  607. package/.claude/worktrees/kanban-overhaul/docs/migrations/cline-replacement.md +118 -0
  608. package/.claude/worktrees/kanban-overhaul/docs/postmortems/2026-06-18-plugin-state-deadlock.md +250 -0
  609. package/.claude/worktrees/kanban-overhaul/docs/quality-document.md +74 -0
  610. package/.claude/worktrees/kanban-overhaul/docs/releases/v0.5.2.md +66 -0
  611. package/.claude/worktrees/kanban-overhaul/docs/releases/v0.5.4.md +85 -0
  612. package/.claude/worktrees/kanban-overhaul/docs/releases/v2.3.0.md +96 -0
  613. package/.claude/worktrees/kanban-overhaul/docs/releases/v3.24.0.md +155 -0
  614. package/.claude/worktrees/kanban-overhaul/docs/releases/v4.0.0.md +123 -0
  615. package/.claude/worktrees/kanban-overhaul/docs/releases/v7.0.0.md +173 -0
  616. package/.claude/worktrees/kanban-overhaul/docs/safety.md +216 -0
  617. package/.claude/worktrees/kanban-overhaul/feature_list.json +1297 -0
  618. package/.claude/worktrees/kanban-overhaul/init.sh +211 -0
  619. package/.claude/worktrees/kanban-overhaul/install.sh +498 -0
  620. package/.claude/worktrees/kanban-overhaul/mods-examples/impeccable/INSTRUCTIONS.md +82 -0
  621. package/.claude/worktrees/kanban-overhaul/mods-examples/impeccable/mod.json +37 -0
  622. package/.claude/worktrees/kanban-overhaul/mods-examples/impeccable/route.mjs +136 -0
  623. package/.claude/worktrees/kanban-overhaul/mods-examples/impeccable/web/index.html +180 -0
  624. package/.claude/worktrees/kanban-overhaul/mods-examples/lightrag/INSTRUCTIONS.md +81 -0
  625. package/.claude/worktrees/kanban-overhaul/mods-examples/lightrag/mod.json +61 -0
  626. package/.claude/worktrees/kanban-overhaul/mods-examples/lightrag/route.mjs +461 -0
  627. package/.claude/worktrees/kanban-overhaul/mods-examples/lightrag/web/index.html +263 -0
  628. package/.claude/worktrees/kanban-overhaul/mods-examples/ponytail/INSTRUCTIONS.md +87 -0
  629. package/.claude/worktrees/kanban-overhaul/mods-examples/ponytail/agents/thor.md +64 -0
  630. package/.claude/worktrees/kanban-overhaul/mods-examples/ponytail/mod.json +36 -0
  631. package/.claude/worktrees/kanban-overhaul/mods-examples/ponytail/route.mjs +98 -0
  632. package/.claude/worktrees/kanban-overhaul/mods-examples/ponytail/web/index.html +126 -0
  633. package/.claude/worktrees/kanban-overhaul/package.json +154 -0
  634. package/.claude/worktrees/kanban-overhaul/packages/sdk/ARCHITECTURE.md +70 -0
  635. package/.claude/worktrees/kanban-overhaul/packages/sdk/LICENSE +21 -0
  636. package/.claude/worktrees/kanban-overhaul/packages/sdk/README.md +80 -0
  637. package/.claude/worktrees/kanban-overhaul/packages/sdk/package.json +30 -0
  638. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/agent-registry.ts +304 -0
  639. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/consensus/byzantine.ts +587 -0
  640. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/consensus/index.ts +147 -0
  641. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/consensus/queen.ts +173 -0
  642. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/consensus/types.ts +199 -0
  643. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/dangerous-patterns.ts +127 -0
  644. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/audit.ts +156 -0
  645. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/budget.ts +269 -0
  646. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/envelope.ts +144 -0
  647. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/hmac.ts +160 -0
  648. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/index.ts +443 -0
  649. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/pii.ts +241 -0
  650. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/policy.ts +112 -0
  651. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/trust.ts +146 -0
  652. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/fingerprint.ts +0 -0
  653. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/index.ts +114 -0
  654. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/mcp/bin.ts +51 -0
  655. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/mcp/server.ts +848 -0
  656. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/memory/index.ts +160 -0
  657. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/router/codemod-intent.ts +125 -0
  658. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/router/index.ts +247 -0
  659. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/router/memory-distillation-shim.mjs +18 -0
  660. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/router/memory-distillation.ts +249 -0
  661. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/router/model-router.ts +235 -0
  662. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/router/q-learning-router.ts +304 -0
  663. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/swarm-topology.ts +279 -0
  664. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/version.ts +4 -0
  665. package/.claude/worktrees/kanban-overhaul/packages/sdk/tsconfig.json +25 -0
  666. package/.claude/worktrees/kanban-overhaul/packages/sdk/vitest.config.ts +9 -0
  667. package/.claude/worktrees/kanban-overhaul/plugins/bizar/ARCHITECTURE.md +72 -0
  668. package/.claude/worktrees/kanban-overhaul/plugins/bizar/CONSTRAINTS.md +62 -0
  669. package/.claude/worktrees/kanban-overhaul/plugins/bizar/LICENSE +21 -0
  670. package/.claude/worktrees/kanban-overhaul/plugins/bizar/README.md +46 -0
  671. package/.claude/worktrees/kanban-overhaul/plugins/bizar/index.ts +50 -0
  672. package/.claude/worktrees/kanban-overhaul/plugins/bizar/package.json +18 -0
  673. package/.claude/worktrees/kanban-overhaul/plugins/bizar/tsconfig.json +29 -0
  674. package/.claude/worktrees/kanban-overhaul/scripts/bh-full-e2e.mjs +298 -0
  675. package/.claude/worktrees/kanban-overhaul/scripts/check-agents.mjs +73 -0
  676. package/.claude/worktrees/kanban-overhaul/scripts/check-arch.sh +80 -0
  677. package/.claude/worktrees/kanban-overhaul/scripts/check-deps.mjs +492 -0
  678. package/.claude/worktrees/kanban-overhaul/scripts/clean-state-check.sh +81 -0
  679. package/.claude/worktrees/kanban-overhaul/scripts/git-hooks/pre-commit +59 -0
  680. package/.claude/worktrees/kanban-overhaul/scripts/git-hooks/pre-push +54 -0
  681. package/.claude/worktrees/kanban-overhaul/scripts/install-hooks.sh +29 -0
  682. package/.claude/worktrees/kanban-overhaul/scripts/install-service.mjs +190 -0
  683. package/.claude/worktrees/kanban-overhaul/scripts/mirror-claude-md.sh +78 -0
  684. package/.claude/worktrees/kanban-overhaul/scripts/session-trace.sh +52 -0
  685. package/.claude/worktrees/kanban-overhaul/scripts/test-in-container.sh +157 -0
  686. package/.claude/worktrees/kanban-overhaul/scripts/verify-feature.sh +102 -0
  687. package/.claude/worktrees/kanban-overhaul/skills-lock.json +11 -0
  688. package/.claude/worktrees/kanban-overhaul/templates/clean-state-checklist.md +55 -0
  689. package/.claude/worktrees/kanban-overhaul/templates/deploy/cloudflare/README.md +32 -0
  690. package/.claude/worktrees/kanban-overhaul/templates/deploy/cloudflare/functions-index.template.js +15 -0
  691. package/.claude/worktrees/kanban-overhaul/templates/deploy/cloudflare/wrangler.toml.template +9 -0
  692. package/.claude/worktrees/kanban-overhaul/templates/deploy/docker/.env.template +16 -0
  693. package/.claude/worktrees/kanban-overhaul/templates/deploy/docker/README.md +58 -0
  694. package/.claude/worktrees/kanban-overhaul/templates/deploy/docker/docker-compose.template.yml +23 -0
  695. package/.claude/worktrees/kanban-overhaul/templates/deploy/fly/README.md +35 -0
  696. package/.claude/worktrees/kanban-overhaul/templates/deploy/fly/fly.toml.template +28 -0
  697. package/.claude/worktrees/kanban-overhaul/templates/deploy/vercel/README.md +29 -0
  698. package/.claude/worktrees/kanban-overhaul/templates/deploy/vercel/api-index.template.js +18 -0
  699. package/.claude/worktrees/kanban-overhaul/templates/deploy/vercel/vercel.json.template +16 -0
  700. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/README.md +58 -0
  701. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/citation.json +16 -0
  702. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/code-review.json +16 -0
  703. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/code-search-basic.json +28 -0
  704. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/concise-output.json +16 -0
  705. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/context-window.json +16 -0
  706. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/error-recovery.json +16 -0
  707. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/json-output.json +20 -0
  708. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/latency-bounds.json +16 -0
  709. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/multi-language.json +16 -0
  710. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/regression-suite.json +79 -0
  711. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/response-format.json +30 -0
  712. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/safe-paths.json +16 -0
  713. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/tool-call-correctness.json +24 -0
  714. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/tool-call-multi-step.json +18 -0
  715. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/unicode-handling.json +16 -0
  716. package/.claude/worktrees/kanban-overhaul/templates/evaluator-rubric.md +50 -0
  717. package/.claude/worktrees/kanban-overhaul/templates/plan/htmx.min.js +1 -0
  718. package/.claude/worktrees/kanban-overhaul/templates/plan/library/bug-investigation.mdx +79 -0
  719. package/.claude/worktrees/kanban-overhaul/templates/plan/library/decision-record.mdx +71 -0
  720. package/.claude/worktrees/kanban-overhaul/templates/plan/library/feature-design.mdx +92 -0
  721. package/.claude/worktrees/kanban-overhaul/templates/plan/meta.json.template +8 -0
  722. package/.claude/worktrees/kanban-overhaul/templates/plan/plan.mdx.template +46 -0
  723. package/.claude/worktrees/kanban-overhaul/templates/plugin-template/README.md +121 -0
  724. package/.claude/worktrees/kanban-overhaul/templates/plugin-template/index.js +66 -0
  725. package/.claude/worktrees/kanban-overhaul/templates/plugin-template/plugin.json +42 -0
  726. package/.claude/worktrees/kanban-overhaul/templates/plugin-template/tests/plugin.test.js +83 -0
  727. package/.claude/worktrees/kanban-overhaul/templates/schedules/daily-backup.json +12 -0
  728. package/.claude/worktrees/kanban-overhaul/templates/schedules/daily-cleanup.json +12 -0
  729. package/.claude/worktrees/kanban-overhaul/templates/schedules/hourly-health-check.json +12 -0
  730. package/.claude/worktrees/kanban-overhaul/templates/schedules/webhook-on-push.json +13 -0
  731. package/.claude/worktrees/kanban-overhaul/templates/schedules/weekly-digest.json +13 -0
  732. package/.claude/worktrees/kanban-overhaul/templates/sprint-contract.md +47 -0
  733. package/.claude/worktrees/kanban-overhaul/tsconfig.json +44 -0
  734. package/.claude/worktrees/kanban-overhaul/vite.config.ts +51 -0
  735. package/bizar-dash/dist/assets/ActivityFeed-BXIkGGQ1.js +16 -0
  736. package/bizar-dash/dist/assets/ActivityFeed-BXIkGGQ1.js.map +1 -0
  737. package/bizar-dash/dist/assets/ActivityView-CBxNNrZa.js +12 -0
  738. package/bizar-dash/dist/assets/ActivityView-CBxNNrZa.js.map +1 -0
  739. package/bizar-dash/dist/assets/AgentsView-uv4l21AH.js +23 -0
  740. package/bizar-dash/dist/assets/AgentsView-uv4l21AH.js.map +1 -0
  741. package/bizar-dash/dist/assets/BackgroundJobsView-CB4WXIpk.js +6 -0
  742. package/bizar-dash/dist/assets/BackgroundJobsView-CB4WXIpk.js.map +1 -0
  743. package/bizar-dash/dist/assets/{Card-C_bvqXdQ.js → Card-CeZsWlcP.js} +1 -1
  744. package/bizar-dash/dist/assets/{Card-C_bvqXdQ.js.map → Card-CeZsWlcP.js.map} +1 -1
  745. package/bizar-dash/dist/assets/Chip-OPjSKl2I.js +1 -0
  746. package/bizar-dash/dist/assets/Chip-OPjSKl2I.js.map +1 -0
  747. package/bizar-dash/dist/assets/{EmptyState-BWQuKnk9.js → EmptyState-BrLA8mbE.js} +1 -1
  748. package/bizar-dash/dist/assets/{EmptyState-BWQuKnk9.js.map → EmptyState-BrLA8mbE.js.map} +1 -1
  749. package/bizar-dash/dist/assets/GoalsView-B8R-kxQr.js +11 -0
  750. package/bizar-dash/dist/assets/GoalsView-B8R-kxQr.js.map +1 -0
  751. package/bizar-dash/dist/assets/{Grid-C62gCPqt.js → Grid-B7NgNtff.js} +1 -1
  752. package/bizar-dash/dist/assets/{Grid-C62gCPqt.js.map → Grid-B7NgNtff.js.map} +1 -1
  753. package/bizar-dash/dist/assets/Input-BW_5Sl6N.js +1 -0
  754. package/bizar-dash/dist/assets/Input-BW_5Sl6N.js.map +1 -0
  755. package/bizar-dash/dist/assets/KanbanCard-B-NOSfMN.js +21 -0
  756. package/bizar-dash/dist/assets/KanbanCard-B-NOSfMN.js.map +1 -0
  757. package/bizar-dash/dist/assets/LibrariesView-D6eB7B2A.js +67 -0
  758. package/bizar-dash/dist/assets/LibrariesView-D6eB7B2A.js.map +1 -0
  759. package/bizar-dash/dist/assets/MemoryView-MK4m1KbR.js +13 -0
  760. package/bizar-dash/dist/assets/MemoryView-MK4m1KbR.js.map +1 -0
  761. package/bizar-dash/dist/assets/OverviewView-CHavfYBa.js +1 -0
  762. package/bizar-dash/dist/assets/OverviewView-CHavfYBa.js.map +1 -0
  763. package/bizar-dash/dist/assets/SchedulesView-zV-0pbsz.js +1 -0
  764. package/bizar-dash/dist/assets/SchedulesView-zV-0pbsz.js.map +1 -0
  765. package/bizar-dash/dist/assets/Select-B6Ho36Tq.js +11 -0
  766. package/bizar-dash/dist/assets/Select-B6Ho36Tq.js.map +1 -0
  767. package/bizar-dash/dist/assets/SettingsRow-Br21uRFz.js +1 -0
  768. package/bizar-dash/dist/assets/SettingsRow-Br21uRFz.js.map +1 -0
  769. package/bizar-dash/dist/assets/SettingsView-Cx3uJrus.js +38 -0
  770. package/bizar-dash/dist/assets/SettingsView-Cx3uJrus.js.map +1 -0
  771. package/bizar-dash/dist/assets/Sheet-Cmu_4Zea.js +1 -0
  772. package/bizar-dash/dist/assets/Sheet-Cmu_4Zea.js.map +1 -0
  773. package/bizar-dash/dist/assets/Slider-B_jPr-SR.js +1 -0
  774. package/bizar-dash/dist/assets/Slider-B_jPr-SR.js.map +1 -0
  775. package/bizar-dash/dist/assets/Sparkline-Cmqw0N39.js +1 -0
  776. package/bizar-dash/dist/assets/Sparkline-Cmqw0N39.js.map +1 -0
  777. package/bizar-dash/dist/assets/Switch-C7Qyu50Y.js +10 -0
  778. package/bizar-dash/dist/assets/Switch-C7Qyu50Y.js.map +1 -0
  779. package/bizar-dash/dist/assets/TasksView-BXADmjgb.js +1 -0
  780. package/bizar-dash/dist/assets/TasksView-BXADmjgb.js.map +1 -0
  781. package/bizar-dash/dist/assets/Textarea-KIN98DVH.js +1 -0
  782. package/bizar-dash/dist/assets/Textarea-KIN98DVH.js.map +1 -0
  783. package/bizar-dash/dist/assets/{ViewHeader-D6c2cw1b.js → ViewHeader-CPbqI-w8.js} +1 -1
  784. package/bizar-dash/dist/assets/{ViewHeader-D6c2cw1b.js.map → ViewHeader-CPbqI-w8.js.map} +1 -1
  785. package/bizar-dash/dist/assets/{brain-DeoXNDE2.js → brain-jN_ldx3U.js} +1 -1
  786. package/bizar-dash/dist/assets/{brain-DeoXNDE2.js.map → brain-jN_ldx3U.js.map} +1 -1
  787. package/bizar-dash/dist/assets/{calendar-DRlQkGJc.js → calendar-DZGgPP2_.js} +2 -2
  788. package/bizar-dash/dist/assets/{calendar-DRlQkGJc.js.map → calendar-DZGgPP2_.js.map} +1 -1
  789. package/bizar-dash/dist/assets/{circle-check-DmYQ3vGp.js → circle-check-XhUtiACZ.js} +1 -1
  790. package/bizar-dash/dist/assets/{circle-check-DmYQ3vGp.js.map → circle-check-XhUtiACZ.js.map} +1 -1
  791. package/bizar-dash/dist/assets/clock-BXBnSbox.js +6 -0
  792. package/bizar-dash/dist/assets/clock-BXBnSbox.js.map +1 -0
  793. package/bizar-dash/dist/assets/{cmdk-BwN8hcKQ.js → cmdk-D15rXxc5.js} +2 -2
  794. package/bizar-dash/dist/assets/{cmdk-BwN8hcKQ.js.map → cmdk-D15rXxc5.js.map} +1 -1
  795. package/bizar-dash/dist/assets/dnd-kit-Bormfg7j.js +5 -0
  796. package/bizar-dash/dist/assets/{dnd-kit-DR2Qzzxk.js.map → dnd-kit-Bormfg7j.js.map} +1 -1
  797. package/bizar-dash/dist/assets/git-pull-request-BCt0CEjc.js +11 -0
  798. package/bizar-dash/dist/assets/git-pull-request-BCt0CEjc.js.map +1 -0
  799. package/bizar-dash/dist/assets/index-C0JBGB5M.js +1 -0
  800. package/bizar-dash/dist/assets/index-C0JBGB5M.js.map +1 -0
  801. package/bizar-dash/dist/assets/index-CrWI7sQR.js +1 -0
  802. package/bizar-dash/dist/assets/index-CrWI7sQR.js.map +1 -0
  803. package/bizar-dash/dist/assets/main-CCimEcWH.js +134 -0
  804. package/bizar-dash/dist/assets/main-CCimEcWH.js.map +1 -0
  805. package/bizar-dash/dist/assets/{main-COdgjqbZ.css → main-CcQfRfIJ.css} +1 -1
  806. package/bizar-dash/dist/assets/{minus-CrStJTZ7.js → play-B0rTjpSg.js} +2 -2
  807. package/bizar-dash/dist/assets/play-B0rTjpSg.js.map +1 -0
  808. package/bizar-dash/dist/assets/plus-BaTQsS9G.js +6 -0
  809. package/bizar-dash/dist/assets/plus-BaTQsS9G.js.map +1 -0
  810. package/bizar-dash/dist/assets/refresh-cw-CoatVcs3.js +6 -0
  811. package/bizar-dash/dist/assets/refresh-cw-CoatVcs3.js.map +1 -0
  812. package/bizar-dash/dist/assets/terminal-k-1HFHcN.js +11 -0
  813. package/bizar-dash/dist/assets/terminal-k-1HFHcN.js.map +1 -0
  814. package/bizar-dash/dist/assets/trash-2-DtpKnAn2.js +6 -0
  815. package/bizar-dash/dist/assets/trash-2-DtpKnAn2.js.map +1 -0
  816. package/bizar-dash/dist/assets/triangle-alert-FHSs_e5b.js +6 -0
  817. package/bizar-dash/dist/assets/triangle-alert-FHSs_e5b.js.map +1 -0
  818. package/bizar-dash/dist/assets/{wrench-BJ1WIC4u.js → wrench-CbBE0oQ0.js} +2 -2
  819. package/bizar-dash/dist/assets/{wrench-BJ1WIC4u.js.map → wrench-CbBE0oQ0.js.map} +1 -1
  820. package/bizar-dash/dist/v8.html +3 -3
  821. package/bizar-dash/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -1
  822. package/bizar-dash/src/server/api.mjs +15 -0
  823. package/bizar-dash/src/server/bg-poller.mjs +81 -1
  824. package/bizar-dash/src/server/bg-poller.test.mjs +28 -0
  825. package/bizar-dash/src/server/progress-parser.mjs +237 -0
  826. package/bizar-dash/src/server/progress-parser.test.mjs +105 -0
  827. package/bizar-dash/src/server/routes/agents-cc.mjs +381 -0
  828. package/bizar-dash/src/server/routes/agents-cc.test.mjs +35 -0
  829. package/bizar-dash/src/server/routes/goals.mjs +307 -0
  830. package/bizar-dash/src/server/routes/spawn.mjs +59 -0
  831. package/bizar-dash/src/server/routes/tasks.mjs +11 -0
  832. package/bizar-dash/src/server/server.mjs +1 -1
  833. package/bizar-dash/src/web/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -1
  834. package/bizar-dash/src/web/v8/App.tsx +56 -7
  835. package/bizar-dash/src/web/v8/__tests__/App.test.tsx +2 -2
  836. package/bizar-dash/src/web/v8/__tests__/BackgroundJobsView.test.tsx +172 -0
  837. package/bizar-dash/src/web/v8/__tests__/MemoryView.test.tsx +91 -0
  838. package/bizar-dash/src/web/v8/__tests__/NotificationsPopover.test.tsx +91 -0
  839. package/bizar-dash/src/web/v8/__tests__/SchedulesView.test.tsx +157 -0
  840. package/bizar-dash/src/web/v8/__tests__/Topbar.test.tsx +86 -0
  841. package/bizar-dash/src/web/v8/__tests__/changelog.test.tsx +79 -0
  842. package/bizar-dash/src/web/v8/__tests__/control-plane.test.tsx +104 -0
  843. package/bizar-dash/src/web/v8/__tests__/theme.test.tsx +10 -4
  844. package/bizar-dash/src/web/v8/__tests__/useFetch.test.ts +92 -0
  845. package/bizar-dash/src/web/v8/__tests__/useWebSocket.test.ts +87 -0
  846. package/bizar-dash/src/web/v8/__tests__/views.test.tsx +116 -40
  847. package/bizar-dash/src/web/v8/data/fetcher.ts +59 -0
  848. package/bizar-dash/src/web/v8/data/types.ts +156 -0
  849. package/bizar-dash/src/web/v8/data/useFetch.ts +62 -0
  850. package/bizar-dash/src/web/v8/data/useWebSocket.ts +161 -0
  851. package/bizar-dash/src/web/v8/shell/Sidebar.tsx +46 -12
  852. package/bizar-dash/src/web/v8/shell/Topbar.tsx +30 -4
  853. package/bizar-dash/src/web/v8/ui/agents/AgentDetail.tsx +283 -0
  854. package/bizar-dash/src/web/v8/ui/agents/AgentStreamPanel.tsx +371 -0
  855. package/bizar-dash/src/web/v8/ui/feedback/NotificationsPopover.tsx +239 -0
  856. package/bizar-dash/src/web/v8/ui/goals/GoalDetail.tsx +251 -0
  857. package/bizar-dash/src/web/v8/ui/kanban/KanbanBoard.tsx +6 -3
  858. package/bizar-dash/src/web/v8/ui/kanban/KanbanCard.tsx +3 -3
  859. package/bizar-dash/src/web/v8/ui/kanban/KanbanColumn.tsx +10 -5
  860. package/bizar-dash/src/web/v8/ui/styles/globals.css +5 -0
  861. package/bizar-dash/src/web/v8/views/Activity/ActivityView.tsx +415 -16
  862. package/bizar-dash/src/web/v8/views/Agents/AgentsView.tsx +151 -87
  863. package/bizar-dash/src/web/v8/views/BackgroundJobs/BackgroundJobsView.tsx +442 -0
  864. package/bizar-dash/src/web/v8/views/CommandPalette/AppCommandPalette.test.tsx +1 -1
  865. package/bizar-dash/src/web/v8/views/CommandPalette/AppCommandPalette.tsx +148 -30
  866. package/bizar-dash/src/web/v8/views/Goals/GoalsView.tsx +176 -67
  867. package/bizar-dash/src/web/v8/views/Libraries/LibrariesView.tsx +78 -11
  868. package/bizar-dash/src/web/v8/views/Memory/MemoryView.tsx +212 -42
  869. package/bizar-dash/src/web/v8/views/Overview/OverviewView.tsx +112 -52
  870. package/bizar-dash/src/web/v8/views/Router.tsx +23 -37
  871. package/bizar-dash/src/web/v8/views/Schedules/SchedulesView.tsx +395 -0
  872. package/bizar-dash/src/web/v8/views/Settings/SettingsView.tsx +651 -210
  873. package/bizar-dash/src/web/v8/views/Tasks/TasksView.tsx +142 -49
  874. package/bizar-dash/tests/components/Button.test.tsx +51 -14
  875. package/bizar-dash/tests/components/Card.test.tsx +37 -20
  876. package/bizar-dash/tests/components/Dialog.test.tsx +80 -0
  877. package/bizar-dash/tests/components/Toast.test.tsx +48 -95
  878. package/bizar-dash/tests/goals-decompose.test.mjs +179 -0
  879. package/bizar-dash/tests/setup.ts +21 -0
  880. package/bizar-dash/tests/ui/primitives/VisuallyHidden.test.tsx +30 -15
  881. package/bizar-dash/vite.config.ts +15 -0
  882. package/bizar-dash/vitest.config.ts +4 -1
  883. package/cli/bin.mjs +32 -0
  884. package/cli/install.mjs +26 -1
  885. package/cli/provision-claude.mjs +86 -0
  886. package/package.json +1 -1
  887. package/packages/sdk/.harness/agents.json +17 -0
  888. package/packages/sdk/.harness/topology.json +4 -0
  889. package/scripts/run-dev.mjs +84 -0
  890. package/bizar-dash/dist/assets/ActivityFeed-BRBtQOHB.js +0 -6
  891. package/bizar-dash/dist/assets/ActivityFeed-BRBtQOHB.js.map +0 -1
  892. package/bizar-dash/dist/assets/ActivityView-CwqhxBfh.js +0 -1
  893. package/bizar-dash/dist/assets/ActivityView-CwqhxBfh.js.map +0 -1
  894. package/bizar-dash/dist/assets/AgentActivity-6MxU-a9F.js +0 -1
  895. package/bizar-dash/dist/assets/AgentActivity-6MxU-a9F.js.map +0 -1
  896. package/bizar-dash/dist/assets/AgentsView-BYrOFdwl.js +0 -8
  897. package/bizar-dash/dist/assets/AgentsView-BYrOFdwl.js.map +0 -1
  898. package/bizar-dash/dist/assets/Badge-Cd61wsBa.js +0 -1
  899. package/bizar-dash/dist/assets/Badge-Cd61wsBa.js.map +0 -1
  900. package/bizar-dash/dist/assets/GoalsView-Dok0yt9S.js +0 -11
  901. package/bizar-dash/dist/assets/GoalsView-Dok0yt9S.js.map +0 -1
  902. package/bizar-dash/dist/assets/KanbanCard-CtTKP6ZX.js +0 -21
  903. package/bizar-dash/dist/assets/KanbanCard-CtTKP6ZX.js.map +0 -1
  904. package/bizar-dash/dist/assets/LibrariesView-BcyBQXiY.js +0 -67
  905. package/bizar-dash/dist/assets/LibrariesView-BcyBQXiY.js.map +0 -1
  906. package/bizar-dash/dist/assets/MemoryView-49wR4u-y.js +0 -13
  907. package/bizar-dash/dist/assets/MemoryView-49wR4u-y.js.map +0 -1
  908. package/bizar-dash/dist/assets/OverviewView-BtQ_UWYj.js +0 -1
  909. package/bizar-dash/dist/assets/OverviewView-BtQ_UWYj.js.map +0 -1
  910. package/bizar-dash/dist/assets/ProgressBar-CpvDeq9F.js +0 -1
  911. package/bizar-dash/dist/assets/ProgressBar-CpvDeq9F.js.map +0 -1
  912. package/bizar-dash/dist/assets/SettingsRow-DmIe5OUu.js +0 -30
  913. package/bizar-dash/dist/assets/SettingsRow-DmIe5OUu.js.map +0 -1
  914. package/bizar-dash/dist/assets/SettingsView-D1KmGWbi.js +0 -48
  915. package/bizar-dash/dist/assets/SettingsView-D1KmGWbi.js.map +0 -1
  916. package/bizar-dash/dist/assets/StatTile-BkIP32gG.js +0 -11
  917. package/bizar-dash/dist/assets/StatTile-BkIP32gG.js.map +0 -1
  918. package/bizar-dash/dist/assets/TasksView-Cba3GJ42.js +0 -1
  919. package/bizar-dash/dist/assets/TasksView-Cba3GJ42.js.map +0 -1
  920. package/bizar-dash/dist/assets/dnd-kit-DR2Qzzxk.js +0 -5
  921. package/bizar-dash/dist/assets/git-merge-OoqBKQer.js +0 -6
  922. package/bizar-dash/dist/assets/git-merge-OoqBKQer.js.map +0 -1
  923. package/bizar-dash/dist/assets/git-pull-request-CXBQTR2f.js +0 -6
  924. package/bizar-dash/dist/assets/git-pull-request-CXBQTR2f.js.map +0 -1
  925. package/bizar-dash/dist/assets/main-Cw6gybzS.js +0 -109
  926. package/bizar-dash/dist/assets/main-Cw6gybzS.js.map +0 -1
  927. package/bizar-dash/dist/assets/message-square-DUTeIQAR.js +0 -6
  928. package/bizar-dash/dist/assets/message-square-DUTeIQAR.js.map +0 -1
  929. package/bizar-dash/dist/assets/minus-CrStJTZ7.js.map +0 -1
  930. /package/bizar-dash/tests/{BackgroundAgents.test.tsx → v7-archive/BackgroundAgents.test.tsx} +0 -0
  931. /package/bizar-dash/tests/{a11y → v7-archive/a11y}/forms.test.tsx +0 -0
  932. /package/bizar-dash/tests/{a11y.test.tsx → v7-archive/a11y.test.tsx} +0 -0
  933. /package/bizar-dash/tests/{autosave.test.tsx → v7-archive/autosave.test.tsx} +0 -0
  934. /package/bizar-dash/tests/{backup-restore.test.tsx → v7-archive/backup-restore.test.tsx} +0 -0
  935. /package/bizar-dash/tests/{chat-composer.test.tsx → v7-archive/chat-composer.test.tsx} +0 -0
  936. /package/bizar-dash/tests/{communication-log.test.tsx → v7-archive/communication-log.test.tsx} +0 -0
  937. /package/bizar-dash/tests/{components → v7-archive/components}/Modal.test.tsx +0 -0
  938. /package/bizar-dash/tests/{components → v7-archive/components}/Spinner.test.tsx +0 -0
  939. /package/bizar-dash/tests/{components → v7-archive/components}/StatusBadge.test.tsx +0 -0
  940. /package/bizar-dash/tests/{components → v7-archive/components}/doctor-panel.test.tsx +0 -0
  941. /package/bizar-dash/tests/{components → v7-archive/components}/screenshot-ocr.test.tsx +0 -0
  942. /package/bizar-dash/tests/{components → v7-archive/components}/settings-search.test.tsx +0 -0
  943. /package/bizar-dash/tests/{components → v7-archive/components}/workspace-selector.test.tsx +0 -0
  944. /package/bizar-dash/tests/{ui → v7-archive}/controls/Button.test.tsx +0 -0
  945. /package/bizar-dash/tests/{ui → v7-archive}/controls/Checkbox.test.tsx +0 -0
  946. /package/bizar-dash/tests/{ui → v7-archive}/controls/IconButton.test.tsx +0 -0
  947. /package/bizar-dash/tests/{ui → v7-archive}/controls/Kbd.test.tsx +0 -0
  948. /package/bizar-dash/tests/{ui → v7-archive}/controls/NumberInput.test.tsx +0 -0
  949. /package/bizar-dash/tests/{ui → v7-archive}/controls/RadioGroup.test.tsx +0 -0
  950. /package/bizar-dash/tests/{ui → v7-archive}/controls/SearchInput.test.tsx +0 -0
  951. /package/bizar-dash/tests/{ui → v7-archive}/controls/Select.test.tsx +0 -0
  952. /package/bizar-dash/tests/{ui → v7-archive}/controls/Slider.test.tsx +0 -0
  953. /package/bizar-dash/tests/{ui → v7-archive}/controls/TextInput.test.tsx +0 -0
  954. /package/bizar-dash/tests/{ui → v7-archive}/controls/Textarea.test.tsx +0 -0
  955. /package/bizar-dash/tests/{ui → v7-archive}/controls/Toggle.test.tsx +0 -0
  956. /package/bizar-dash/tests/{ui → v7-archive}/data/BarChart.test.tsx +0 -0
  957. /package/bizar-dash/tests/{ui → v7-archive}/data/DataTable.test.tsx +0 -0
  958. /package/bizar-dash/tests/{ui → v7-archive}/data/EmptyState.test.tsx +0 -0
  959. /package/bizar-dash/tests/{ui → v7-archive}/data/ErrorState.test.tsx +0 -0
  960. /package/bizar-dash/tests/{ui → v7-archive}/data/KeyValueList.test.tsx +0 -0
  961. /package/bizar-dash/tests/{ui → v7-archive}/data/LoadingState.test.tsx +0 -0
  962. /package/bizar-dash/tests/{ui → v7-archive}/data/Sparkline.test.tsx +0 -0
  963. /package/bizar-dash/tests/{ui → v7-archive}/data/StatTile.test.tsx +0 -0
  964. /package/bizar-dash/tests/{dep-graph.test.tsx → v7-archive/dep-graph.test.tsx} +0 -0
  965. /package/bizar-dash/tests/{eval-web-ui.test.tsx → v7-archive/eval-web-ui.test.tsx} +0 -0
  966. /package/bizar-dash/tests/{event-log.test.tsx → v7-archive/event-log.test.tsx} +0 -0
  967. /package/bizar-dash/tests/{ui → v7-archive}/feedback/Badge.test.tsx +0 -0
  968. /package/bizar-dash/tests/{ui → v7-archive}/feedback/Dialog.test.tsx +0 -0
  969. /package/bizar-dash/tests/{ui → v7-archive}/feedback/ProgressBar.test.tsx +0 -0
  970. /package/bizar-dash/tests/{ui → v7-archive}/feedback/StatusDot.test.tsx +0 -0
  971. /package/bizar-dash/tests/{ui → v7-archive}/feedback/Toast.test.tsx +0 -0
  972. /package/bizar-dash/tests/{ui → v7-archive}/feedback/Tooltip.test.tsx +0 -0
  973. /package/bizar-dash/tests/{goal-input.test.tsx → v7-archive/goal-input.test.tsx} +0 -0
  974. /package/bizar-dash/tests/{goap-planner.test.ts → v7-archive/goap-planner.test.ts} +0 -0
  975. /package/bizar-dash/tests/{hooks → v7-archive/hooks}/useModal.test.tsx +0 -0
  976. /package/bizar-dash/tests/{hooks → v7-archive/hooks}/useToast.test.tsx +0 -0
  977. /package/bizar-dash/tests/{ui → v7-archive}/layout/AppShell.test.tsx +0 -0
  978. /package/bizar-dash/tests/{ui → v7-archive}/layout/Breadcrumbs.test.tsx +0 -0
  979. /package/bizar-dash/tests/{ui → v7-archive}/layout/Panel.test.tsx +0 -0
  980. /package/bizar-dash/tests/{ui → v7-archive}/layout/PanelHeader.test.tsx +0 -0
  981. /package/bizar-dash/tests/{ui → v7-archive}/layout/Sidebar.test.tsx +0 -0
  982. /package/bizar-dash/tests/{ui → v7-archive}/layout/Tabs.test.tsx +0 -0
  983. /package/bizar-dash/tests/{ui → v7-archive}/layout/Topbar.test.tsx +0 -0
  984. /package/bizar-dash/tests/{ui → v7-archive}/layout/ViewHeader.test.tsx +0 -0
  985. /package/bizar-dash/tests/{lib → v7-archive/lib}/i18n.test.ts +0 -0
  986. /package/bizar-dash/tests/{lib → v7-archive/lib}/search-fuzzy.test.ts +0 -0
  987. /package/bizar-dash/tests/{lib → v7-archive/lib}/utils.test.ts +0 -0
  988. /package/bizar-dash/tests/{memory-graph-view.test.tsx → v7-archive/memory-graph-view.test.tsx} +0 -0
  989. /package/bizar-dash/tests/{mobile-chat.test.tsx → v7-archive/mobile-chat.test.tsx} +0 -0
  990. /package/bizar-dash/tests/{mobile-layout.test.tsx → v7-archive/mobile-layout.test.tsx} +0 -0
  991. /package/bizar-dash/tests/{mobile-overview.test.tsx → v7-archive/mobile-overview.test.tsx} +0 -0
  992. /package/bizar-dash/tests/{mobile-settings.test.tsx → v7-archive/mobile-settings.test.tsx} +0 -0
  993. /package/bizar-dash/tests/{mobile-tasks.test.tsx → v7-archive/mobile-tasks.test.tsx} +0 -0
  994. /package/bizar-dash/tests/{ui → v7-archive}/navigation/CommandPalette.test.tsx +0 -0
  995. /package/bizar-dash/tests/{ui → v7-archive}/navigation/NavGroup.test.tsx +0 -0
  996. /package/bizar-dash/tests/{ui → v7-archive}/navigation/NavLink.test.tsx +0 -0
  997. /package/bizar-dash/tests/{quality-gates.test.tsx → v7-archive/quality-gates.test.tsx} +0 -0
  998. /package/bizar-dash/tests/{settings-layout.test.tsx → v7-archive/settings-layout.test.tsx} +0 -0
  999. /package/bizar-dash/tests/{settings-mode-wiring.test.tsx → v7-archive/settings-mode-wiring.test.tsx} +0 -0
  1000. /package/bizar-dash/tests/{settings-nav.test.tsx → v7-archive/settings-nav.test.tsx} +0 -0
  1001. /package/bizar-dash/tests/{ui → v7-archive/ui}/primitives/Box.test.tsx +0 -0
  1002. /package/bizar-dash/tests/{ui → v7-archive/ui}/primitives/Grid.test.tsx +0 -0
  1003. /package/bizar-dash/tests/{ui → v7-archive/ui}/primitives/Inline.test.tsx +0 -0
  1004. /package/bizar-dash/tests/{ui → v7-archive/ui}/primitives/Separator.test.tsx +0 -0
  1005. /package/bizar-dash/tests/{ui → v7-archive/ui}/primitives/Stack.test.tsx +0 -0
  1006. /package/bizar-dash/tests/{views → v7-archive/views}/Agents.test.tsx +0 -0
  1007. /package/bizar-dash/tests/{views → v7-archive/views}/Memory.test.tsx +0 -0
  1008. /package/bizar-dash/tests/{views → v7-archive/views}/Overview.test.tsx +0 -0
  1009. /package/bizar-dash/tests/{views → v7-archive/views}/Tasks.test.tsx +0 -0
  1010. /package/bizar-dash/tests/{views → v7-archive/views}/sidebar.test.tsx +0 -0
  1011. /package/bizar-dash/tests/{views → v7-archive/views}/topbar.test.tsx +0 -0
  1012. /package/bizar-dash/tests/{voice-recorder.test.tsx → v7-archive/voice-recorder.test.tsx} +0 -0
@@ -1,67 +0,0 @@
1
- import{r as c,j as a,S as xa,P as te,h as N,u as le,i as L,k as R,l as Z,m as ba,n as Le,o as hr,p as xr,q as jt,s as Tt,t as ya,v as br,w as yr,x as wr,y as Cr,F as Rr,R as g,z as wa,A as Ca,D as Ra,b as _a,c as Ia,d as Ma,e as Ea,f as ja}from"./cmdk-BwN8hcKQ.js";import{a as Je,c as I,X as _r,C as Ta,b as Pa,S as Na}from"./main-Cw6gybzS.js";import{C as Pt,V as ka}from"./ViewHeader-D6c2cw1b.js";import"./Grid-C62gCPqt.js";import{u as Ir,a as Mr,C as Er,c as Nt,b as Be,R as Sa,A as Qe,d as kt,e as ke,f as St,g as Aa,h as Da}from"./SettingsRow-DmIe5OUu.js";import{M as Oa}from"./minus-CrStJTZ7.js";import{T as Ga}from"./ActivityFeed-BRBtQOHB.js";import{C as Fa}from"./circle-check-DmYQ3vGp.js";import"./EmptyState-BWQuKnk9.js";import"./Card-C_bvqXdQ.js";import{B as $a}from"./Badge-Cd61wsBa.js";import"./AgentActivity-6MxU-a9F.js";import"./StatTile-BkIP32gG.js";import"./KanbanCard-CtTKP6ZX.js";import"./dnd-kit-DR2Qzzxk.js";import"./ProgressBar-CpvDeq9F.js";import"./calendar-DRlQkGJc.js";import"./message-square-DUTeIQAR.js";/**
2
- * @license lucide-react v0.460.0 - ISC
3
- *
4
- * This source code is licensed under the ISC license.
5
- * See the LICENSE file in the root directory of this source tree.
6
- */const La=Je("ChevronLeft",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);/**
7
- * @license lucide-react v0.460.0 - ISC
8
- *
9
- * This source code is licensed under the ISC license.
10
- * See the LICENSE file in the root directory of this source tree.
11
- */const Ba=Je("CircleAlert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);/**
12
- * @license lucide-react v0.460.0 - ISC
13
- *
14
- * This source code is licensed under the ISC license.
15
- * See the LICENSE file in the root directory of this source tree.
16
- */const za=Je("Info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);/**
17
- * @license lucide-react v0.460.0 - ISC
18
- *
19
- * This source code is licensed under the ISC license.
20
- * See the LICENSE file in the root directory of this source tree.
21
- */const Va=Je("Power",[["path",{d:"M12 2v10",key:"mnfbl"}],["path",{d:"M18.4 6.6a9 9 0 1 1-12.77.04",key:"obofu9"}]]);c.forwardRef(function(r,t){const{as:o,full:n,inline:s,noVertical:i,children:l,className:u,style:p,...v}=r,f=o??"div",m={display:s?"inline-flex":"flex",alignItems:i?"stretch":"center",justifyContent:"center",...n&&{width:"100%",height:"100%"},...p};return a.jsx(f,{ref:t,className:I("v8-center",u),style:m,...v,children:l})});const Ka={sm:24,md:32,lg:40},Ha={primary:"var(--accent)",secondary:"var(--surface-1)",ghost:"transparent",danger:"var(--danger)",outline:"transparent"},Ua={primary:"var(--fg-on-accent)",secondary:"var(--fg)",ghost:"var(--fg-muted)",danger:"var(--fg-on-accent)",outline:"var(--fg)"},Wa={primary:"transparent",secondary:"var(--border)",ghost:"transparent",danger:"transparent",outline:"var(--border)"},Ya={primary:"var(--accent-hover)",secondary:"var(--surface-2)",ghost:"var(--surface-1)",danger:"color-mix(in oklch, var(--danger), black 10%)",outline:"var(--surface-2)"};c.forwardRef(function(r,t){const{variant:o="ghost",size:n="md",asChild:s,active:i,disabled:l,children:u,className:p,style:v,type:f,...m}=r,d=s?xa:"button",b=Ka[n],w={display:"inline-flex",alignItems:"center",justifyContent:"center",width:b,height:b,flexShrink:0,background:i===!0?Ya[o]:Ha[o],color:Ua[o],border:"1px solid",borderColor:Wa[o],borderRadius:"var(--radius-sm)",cursor:l===!0?"not-allowed":"pointer",opacity:l===!0?.55:1,transition:"background var(--motion-fast) var(--ease-out)",...v};return a.jsx(d,{ref:t,type:s?void 0:f??"button",disabled:l,"data-active":i===!0?"true":void 0,className:I("v8-icon-btn",`v8-icon-btn--${o}`,`v8-icon-btn--${n}`,p),style:w,...m,children:u})});const Xa={sm:{h:28,fs:"var(--fs-12)",px:10},md:{h:32,fs:"var(--fs-13)",px:12},lg:{h:40,fs:"var(--fs-14)",px:14}};c.forwardRef(function(r,t){const{size:o="md",variant:n="default",invalid:s,leftAddon:i,rightAddon:l,disabled:u,className:p,style:v,...f}=r,m=Xa[o],d={display:"inline-flex",alignItems:"center",gap:"var(--space-2)",width:"100%",height:m.h,paddingLeft:n==="flushed"?0:m.px,paddingRight:n==="flushed"?0:m.px,background:n==="filled"?"var(--surface-2)":n==="flushed"?"transparent":"var(--input-bg)",border:n==="flushed"?"none":"1px solid",borderBottom:n==="flushed"?"1px solid var(--border)":void 0,borderColor:s===!0?"var(--danger)":"var(--border)",borderRadius:n==="flushed"?0:"var(--radius-sm)",opacity:u===!0?.55:1,transition:"border-color var(--motion-fast) var(--ease-out)",...v};return a.jsxs("div",{className:I("v8-input-wrap",p),style:d,children:[i!==void 0&&a.jsx("span",{style:{color:"var(--fg-muted)",display:"inline-flex"},children:i}),a.jsx("input",{ref:t,disabled:u,"aria-invalid":s===!0?"true":void 0,className:"v8-input",style:{flex:1,minWidth:0,background:"transparent",border:0,outline:0,fontSize:m.fs,color:"var(--fg)"},...f}),l!==void 0&&a.jsx("span",{style:{color:"var(--fg-muted)",display:"inline-flex"},children:l})]})});c.forwardRef(function(r,t){const{invalid:o,autoResize:n,disabled:s,rows:i=4,className:l,style:u,onInput:p,...v}=r,f={width:"100%",minHeight:64,padding:"var(--space-3)",fontSize:"var(--fs-13)",lineHeight:"var(--lh-base)",color:"var(--fg)",background:"var(--input-bg)",border:"1px solid",borderColor:o===!0?"var(--danger)":"var(--border)",borderRadius:"var(--radius-sm)",outline:0,resize:n===!0?"none":"vertical",opacity:s===!0?.55:1,fontFamily:"inherit",...u};return a.jsx("textarea",{ref:t,rows:i,disabled:s,"aria-invalid":o===!0?"true":void 0,className:I("v8-textarea",l),style:f,onInput:m=>{if(n===!0){const d=m.currentTarget;d.style.height="auto",d.style.height=`${d.scrollHeight}px`}p==null||p(m)},...v})});var et="Checkbox",[qa]=Z(et),[Za,At]=qa(et);function Ja(e){const{__scopeCheckbox:r,checked:t,children:o,defaultChecked:n,disabled:s,form:i,name:l,onCheckedChange:u,required:p,value:v="on",internal_do_not_use_render:f}=e,[m,d]=le({prop:t,defaultProp:n??!1,onChange:u,caller:et}),[b,w]=c.useState(null),[C,y]=c.useState(null),x=c.useRef(!1),M=b?!!i||!!b.closest("form"):!0,E={checked:m,disabled:s,setChecked:d,control:b,setControl:w,name:l,form:i,value:v,hasConsumerStoppedPropagationRef:x,required:p,defaultChecked:he(n)?!1:n,isFormControl:M,bubbleInput:C,setBubbleInput:y};return a.jsx(Za,{scope:r,...E,children:Qa(f)?f(E):o})}var jr="CheckboxTrigger",Tr=c.forwardRef(({__scopeCheckbox:e,onKeyDown:r,onClick:t,...o},n)=>{const{control:s,value:i,disabled:l,checked:u,required:p,setControl:v,setChecked:f,hasConsumerStoppedPropagationRef:m,isFormControl:d,bubbleInput:b}=At(jr,e),w=L(n,v),C=c.useRef(u);return c.useEffect(()=>{const y=s==null?void 0:s.form;if(y){const x=()=>f(C.current);return y.addEventListener("reset",x),()=>y.removeEventListener("reset",x)}},[s,f]),a.jsx(N.button,{type:"button",role:"checkbox","aria-checked":he(u)?"mixed":u,"aria-required":p,"data-state":Dr(u),"data-disabled":l?"":void 0,disabled:l,value:i,...o,ref:w,onKeyDown:R(r,y=>{y.key==="Enter"&&y.preventDefault()}),onClick:R(t,y=>{f(x=>he(x)?!0:!x),b&&d&&(m.current=y.isPropagationStopped(),m.current||y.stopPropagation())})})});Tr.displayName=jr;var Pr=c.forwardRef((e,r)=>{const{__scopeCheckbox:t,name:o,checked:n,defaultChecked:s,required:i,disabled:l,value:u,onCheckedChange:p,form:v,...f}=e;return a.jsx(Ja,{__scopeCheckbox:t,checked:n,defaultChecked:s,disabled:l,required:i,onCheckedChange:p,name:o,form:v,value:u,internal_do_not_use_render:({isFormControl:m})=>a.jsxs(a.Fragment,{children:[a.jsx(Tr,{...f,ref:r,__scopeCheckbox:t}),m&&a.jsx(Ar,{__scopeCheckbox:t})]})})});Pr.displayName=et;var Nr="CheckboxIndicator",kr=c.forwardRef((e,r)=>{const{__scopeCheckbox:t,forceMount:o,...n}=e,s=At(Nr,t);return a.jsx(te,{present:o||he(s.checked)||s.checked===!0,children:a.jsx(N.span,{"data-state":Dr(s.checked),"data-disabled":s.disabled?"":void 0,...n,ref:r,style:{pointerEvents:"none",...e.style}})})});kr.displayName=Nr;var Sr="CheckboxBubbleInput",Ar=c.forwardRef(({__scopeCheckbox:e,...r},t)=>{const{control:o,hasConsumerStoppedPropagationRef:n,checked:s,defaultChecked:i,required:l,disabled:u,name:p,value:v,form:f,bubbleInput:m,setBubbleInput:d}=At(Sr,e),b=L(t,d),w=Ir(s),C=Mr(o);c.useEffect(()=>{const x=m;if(!x)return;const M=window.HTMLInputElement.prototype,T=Object.getOwnPropertyDescriptor(M,"checked").set,P=!n.current;if(w!==s&&T){const F=new Event("click",{bubbles:P});x.indeterminate=he(s),T.call(x,he(s)?!1:s),x.dispatchEvent(F)}},[m,w,s,n]);const y=c.useRef(he(s)?!1:s);return a.jsx(N.input,{type:"checkbox","aria-hidden":!0,defaultChecked:i??y.current,required:l,disabled:u,name:p,value:v,form:f,...r,tabIndex:-1,ref:b,style:{...r.style,...C,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});Ar.displayName=Sr;function Qa(e){return typeof e=="function"}function he(e){return e==="indeterminate"}function Dr(e){return he(e)?"indeterminate":e?"checked":"unchecked"}c.forwardRef(function(r,t){const{className:o,disabled:n,...s}=r;return a.jsx(Pr,{ref:t,disabled:n,className:I("v8-checkbox",o),style:{width:16,height:16,display:"inline-flex",alignItems:"center",justifyContent:"center",background:"var(--input-bg)",border:"1px solid var(--border-strong)",borderRadius:"var(--radius-sm)",cursor:n===!0?"not-allowed":"pointer",opacity:n===!0?.55:1,transition:"background var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out)"},...s,children:a.jsx(kr,{children:s.checked==="indeterminate"?a.jsx(Oa,{size:12,"aria-hidden":"true",style:{color:"var(--fg-on-accent)"}}):a.jsx(Er,{size:12,"aria-hidden":"true",style:{color:"var(--fg-on-accent)"}})})})});var Or="Toggle",Dt=c.forwardRef((e,r)=>{const{pressed:t,defaultPressed:o,onPressedChange:n,...s}=e,[i,l]=le({prop:t,onChange:n,defaultProp:o??!1,caller:Or});return a.jsx(N.button,{type:"button","aria-pressed":i,"data-state":i?"on":"off","data-disabled":e.disabled?"":void 0,...s,ref:r,onClick:R(e.onClick,()=>{e.disabled||l(!i)})})});Dt.displayName=Or;var es=Dt;c.forwardRef(function(r,t){const{className:o,...n}=r;return a.jsx(es,{ref:t,className:I("v8-toggle",o),style:{display:"inline-flex",alignItems:"center",justifyContent:"center",height:32,padding:"0 var(--space-3)",background:"transparent",color:"var(--fg-muted)",border:"1px solid transparent",borderRadius:"var(--radius-sm)",fontSize:"var(--fs-13)",cursor:"pointer",transition:"background var(--motion-fast) var(--ease-out), color var(--motion-fast) var(--ease-out)"},...n})});var yt=!1;function ts(){const[e,r]=c.useState(yt);return c.useEffect(()=>{yt||(yt=!0,r(!0))},[]),e}var Gr=ba[" useSyncExternalStore ".trim().toString()];function rs(){return()=>{}}function os(){return Gr(rs,()=>!0,()=>!1)}var ns=typeof Gr=="function"?os:ts,wt="rovingFocusGroup.onEntryFocus",as={bubbles:!1,cancelable:!0},ze="RovingFocusGroup",[Ct,Fr,ss]=Nt(ze),[is,xe]=Z(ze,[ss]),[cs,ls]=is(ze),$r=c.forwardRef((e,r)=>a.jsx(Ct.Provider,{scope:e.__scopeRovingFocusGroup,children:a.jsx(Ct.Slot,{scope:e.__scopeRovingFocusGroup,children:a.jsx(ds,{...e,ref:r})})}));$r.displayName=ze;var ds=c.forwardRef((e,r)=>{const{__scopeRovingFocusGroup:t,orientation:o,loop:n=!1,dir:s,currentTabStopId:i,defaultCurrentTabStopId:l,onCurrentTabStopIdChange:u,onEntryFocus:p,preventScrollOnEntryFocus:v=!1,...f}=e,m=c.useRef(null),d=L(r,m),b=Be(s),[w,C]=le({prop:i,defaultProp:l??null,onChange:u,caller:ze}),[y,x]=c.useState(!1),M=xr(p),E=Fr(t),T=c.useRef(!1),[P,F]=c.useState(0);return c.useEffect(()=>{const $=m.current;if($)return $.addEventListener(wt,M),()=>$.removeEventListener(wt,M)},[M]),a.jsx(cs,{scope:t,orientation:o,dir:b,loop:n,currentTabStopId:w,onItemFocus:c.useCallback($=>C($),[C]),onItemShiftTab:c.useCallback(()=>x(!0),[]),onFocusableItemAdd:c.useCallback(()=>F($=>$+1),[]),onFocusableItemRemove:c.useCallback(()=>F($=>$-1),[]),children:a.jsx(N.div,{tabIndex:y||P===0?-1:0,"data-orientation":o,...f,ref:d,style:{outline:"none",...e.style},onMouseDown:R(e.onMouseDown,()=>{T.current=!0}),onFocus:R(e.onFocus,$=>{const V=!T.current;if($.target===$.currentTarget&&V&&!y){const U=new CustomEvent(wt,as);if($.currentTarget.dispatchEvent(U),!U.defaultPrevented){const ue=E().filter(B=>B.focusable),K=ue.find(B=>B.active),fe=ue.find(B=>B.id===w),pe=[K,fe,...ue].filter(Boolean).map(B=>B.ref.current);zr(pe,v)}}T.current=!1}),onBlur:R(e.onBlur,()=>x(!1))})})}),Lr="RovingFocusGroupItem",Br=c.forwardRef((e,r)=>{const{__scopeRovingFocusGroup:t,focusable:o=!0,active:n=!1,tabStopId:s,children:i,...l}=e,u=Le(),p=s||u,v=ls(Lr,t),f=v.currentTabStopId===p,m=Fr(t),{onFocusableItemAdd:d,onFocusableItemRemove:b,currentTabStopId:w}=v,C=ns();return hr(()=>{if(!(!C||!o))return d(),()=>b()},[C,o,d,b]),c.useEffect(()=>{if(!(C||!o))return d(),()=>b()},[C,o,d,b]),a.jsx(Ct.ItemSlot,{scope:t,id:p,focusable:o,active:n,children:a.jsx(N.span,{tabIndex:f?0:-1,"data-orientation":v.orientation,...l,ref:r,onMouseDown:R(e.onMouseDown,y=>{o?v.onItemFocus(p):y.preventDefault()}),onFocus:R(e.onFocus,()=>v.onItemFocus(p)),onKeyDown:R(e.onKeyDown,y=>{if(y.key==="Tab"&&y.shiftKey){v.onItemShiftTab();return}if(y.target!==y.currentTarget)return;const x=ps(y,v.orientation,v.dir);if(x!==void 0){if(y.metaKey||y.ctrlKey||y.altKey||y.shiftKey)return;y.preventDefault();let E=m().filter(T=>T.focusable).map(T=>T.ref.current);if(x==="last")E.reverse();else if(x==="prev"||x==="next"){x==="prev"&&E.reverse();const T=E.indexOf(y.currentTarget);E=v.loop?vs(E,T+1):E.slice(T+1)}setTimeout(()=>zr(E))}}),children:typeof i=="function"?i({isCurrentTabStop:f,hasTabStop:w!=null}):i})})});Br.displayName=Lr;var us={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function fs(e,r){return r!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function ps(e,r,t){const o=fs(e.key,t);if(!(r==="vertical"&&["ArrowLeft","ArrowRight"].includes(o))&&!(r==="horizontal"&&["ArrowUp","ArrowDown"].includes(o)))return us[o]}function zr(e,r=!1){const t=document.activeElement;for(const o of e)if(o===t||(o.focus({preventScroll:r}),document.activeElement!==t))return}function vs(e,r){return e.map((t,o)=>e[(r+o)%e.length])}var tt=$r,rt=Br,be="ToggleGroup",[Vr]=Z(be,[xe]),Kr=xe(),Ot=c.forwardRef((e,r)=>{const{type:t,...o}=e;if(t==="single"){const n=o;return a.jsx(ms,{role:"radiogroup",...n,ref:r})}if(t==="multiple"){const n=o;return a.jsx(gs,{role:"toolbar",...n,ref:r})}throw new Error(`Missing prop \`type\` expected on \`${be}\``)});Ot.displayName=be;var[Hr,Ur]=Vr(be),ms=c.forwardRef((e,r)=>{const{value:t,defaultValue:o,onValueChange:n=()=>{},...s}=e,[i,l]=le({prop:t,defaultProp:o??"",onChange:n,caller:be});return a.jsx(Hr,{scope:e.__scopeToggleGroup,type:"single",value:c.useMemo(()=>i?[i]:[],[i]),onItemActivate:l,onItemDeactivate:c.useCallback(()=>l(""),[l]),children:a.jsx(Wr,{...s,ref:r})})}),gs=c.forwardRef((e,r)=>{const{value:t,defaultValue:o,onValueChange:n=()=>{},...s}=e,[i,l]=le({prop:t,defaultProp:o??[],onChange:n,caller:be}),u=c.useCallback(v=>l((f=[])=>[...f,v]),[l]),p=c.useCallback(v=>l((f=[])=>f.filter(m=>m!==v)),[l]);return a.jsx(Hr,{scope:e.__scopeToggleGroup,type:"multiple",value:i,onItemActivate:u,onItemDeactivate:p,children:a.jsx(Wr,{...s,ref:r})})});Ot.displayName=be;var[hs,xs]=Vr(be),Wr=c.forwardRef((e,r)=>{const{__scopeToggleGroup:t,disabled:o=!1,rovingFocus:n=!0,orientation:s,dir:i,loop:l=!0,...u}=e,p=Kr(t),v=Be(i),f={dir:v,...u};return a.jsx(hs,{scope:t,rovingFocus:n,disabled:o,children:n?a.jsx(tt,{asChild:!0,...p,orientation:s,dir:v,loop:l,children:a.jsx(N.div,{...f,ref:r})}):a.jsx(N.div,{...f,ref:r})})}),Ye="ToggleGroupItem",Yr=c.forwardRef((e,r)=>{const t=Ur(Ye,e.__scopeToggleGroup),o=xs(Ye,e.__scopeToggleGroup),n=Kr(e.__scopeToggleGroup),s=t.value.includes(e.value),i=o.disabled||e.disabled,l={...e,pressed:s,disabled:i},u=c.useRef(null);return o.rovingFocus?a.jsx(rt,{asChild:!0,...n,focusable:!i,active:s,ref:u,children:a.jsx(fr,{...l,ref:r})}):a.jsx(fr,{...l,ref:r})});Yr.displayName=Ye;var fr=c.forwardRef((e,r)=>{const{__scopeToggleGroup:t,value:o,...n}=e,s=Ur(Ye,t),i={role:"radio","aria-checked":e.pressed,"aria-pressed":void 0},l=s.type==="single"?i:void 0;return a.jsx(Dt,{...l,...n,ref:r,onPressedChange:u=>{u?s.onItemActivate(o):s.onItemDeactivate(o)}})});c.forwardRef(function(r,t){const{type:o,className:n,...s}=r;return a.jsx(Ot,{ref:t,type:o,className:I("v8-toggle-group",n),style:{display:"inline-flex",border:"1px solid var(--border)",borderRadius:"var(--radius-sm)",overflow:"hidden",background:"var(--surface-1)"},...s})});c.forwardRef(function(r,t){const{className:o,children:n,...s}=r;return a.jsxs(Yr,{ref:t,className:I("v8-toggle-group__item",o),style:{display:"inline-flex",alignItems:"center",justifyContent:"center",height:28,padding:"0 var(--space-3)",background:"transparent",color:"var(--fg-muted)",border:0,borderRight:"1px solid var(--border)",fontSize:"var(--fs-13)",cursor:"pointer",transition:"background var(--motion-fast) var(--ease-out), color var(--motion-fast) var(--ease-out)"},...s,children:[n,a.jsx("style",{children:`
22
- .v8-toggle-group__item:last-child { border-right: 0; }
23
- .v8-toggle-group__item[data-state='on'] {
24
- background: var(--accent-soft);
25
- color: var(--accent);
26
- font-weight: 500;
27
- }
28
- `})]})});var Gt="Radio",[bs,Xr]=Z(Gt),[ys,ot]=bs(Gt);function qr(e){const{__scopeRadio:r,checked:t=!1,children:o,disabled:n,form:s,name:i,onCheck:l,required:u,value:p="on",internal_do_not_use_render:v}=e,[f,m]=c.useState(null),[d,b]=c.useState(null),w=c.useRef(!1),C=f?!!s||!!f.closest("form"):!0,y={checked:t,disabled:n,required:u,name:i,form:s,value:p,control:f,setControl:m,hasConsumerStoppedPropagationRef:w,isFormControl:C,bubbleInput:d,setBubbleInput:b,onCheck:()=>l==null?void 0:l()};return a.jsx(ys,{scope:r,...y,children:Cs(v)?v(y):o})}var Zr="RadioTrigger",Ft=c.forwardRef(({__scopeRadio:e,onClick:r,...t},o)=>{const{checked:n,disabled:s,value:i,setControl:l,onCheck:u,hasConsumerStoppedPropagationRef:p,isFormControl:v,bubbleInput:f}=ot(Zr,e),m=L(o,l);return a.jsx(N.button,{type:"button",role:"radio","aria-checked":n,"data-state":to(n),"data-disabled":s?"":void 0,disabled:s,value:i,...t,ref:m,onClick:R(r,d=>{n||u(),f&&v&&(p.current=d.isPropagationStopped(),p.current||d.stopPropagation())})})});Ft.displayName=Zr;var ws=c.forwardRef((e,r)=>{const{__scopeRadio:t,name:o,checked:n,required:s,disabled:i,value:l,onCheck:u,form:p,...v}=e;return a.jsx(qr,{__scopeRadio:t,checked:n,disabled:i,required:s,onCheck:u,name:o,form:p,value:l,internal_do_not_use_render:({isFormControl:f})=>a.jsxs(a.Fragment,{children:[a.jsx(Ft,{...v,ref:r,__scopeRadio:t}),f&&a.jsx($t,{__scopeRadio:t})]})})});ws.displayName=Gt;var Jr="RadioIndicator",Qr=c.forwardRef((e,r)=>{const{__scopeRadio:t,forceMount:o,...n}=e,s=ot(Jr,t);return a.jsx(te,{present:o||s.checked,children:a.jsx(N.span,{"data-state":to(s.checked),"data-disabled":s.disabled?"":void 0,...n,ref:r})})});Qr.displayName=Jr;var eo="RadioBubbleInput",$t=c.forwardRef(({__scopeRadio:e,...r},t)=>{const{control:o,checked:n,required:s,disabled:i,name:l,value:u,form:p,bubbleInput:v,setBubbleInput:f,hasConsumerStoppedPropagationRef:m}=ot(eo,e),d=L(t,f),b=Ir(n),w=Mr(o);c.useEffect(()=>{const y=v;if(!y)return;const x=window.HTMLInputElement.prototype,E=Object.getOwnPropertyDescriptor(x,"checked").set,T=!m.current;if(b!==n&&E){const P=new Event("click",{bubbles:T});E.call(y,n),y.dispatchEvent(P)}},[v,b,n,m]);const C=c.useRef(n);return a.jsx(N.input,{type:"radio","aria-hidden":!0,defaultChecked:C.current,required:s,disabled:i,name:l,value:u,form:p,...r,tabIndex:-1,ref:d,style:{...r.style,...w,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});$t.displayName=eo;function Cs(e){return typeof e=="function"}function to(e){return e?"checked":"unchecked"}var Rs=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],nt="RadioGroup",[_s]=Z(nt,[xe,Xr]),ro=xe(),at=Xr(),[Is,Ms]=_s(nt),oo=c.forwardRef((e,r)=>{const{__scopeRadioGroup:t,name:o,form:n,defaultValue:s,value:i,required:l=!1,disabled:u=!1,orientation:p,dir:v,loop:f=!0,onValueChange:m,...d}=e,b=ro(t),w=Be(v),[C,y]=le({prop:i,defaultProp:s??null,onChange:m,caller:nt}),[x,M]=c.useState(null),E=L(r,M),T=c.useRef(C);return c.useEffect(()=>{const P=n?x==null?void 0:x.ownerDocument.getElementById(n):x==null?void 0:x.closest("form");if(P instanceof HTMLFormElement){const F=()=>y(T.current);return P.addEventListener("reset",F),()=>P.removeEventListener("reset",F)}},[x,n,y]),a.jsx(Is,{scope:t,name:o,form:n,required:l,disabled:u,value:C,onValueChange:y,children:a.jsx(tt,{asChild:!0,...b,orientation:p,dir:w,loop:f,children:a.jsx(N.div,{role:"radiogroup","aria-required":l,"aria-orientation":p,"data-disabled":u?"":void 0,dir:w,...d,ref:E})})})});oo.displayName=nt;var Es="RadioGroupItem",js="RadioGroupItemProvider",no="RadioGroupItemTrigger",Ts="RadioGroupItemBubbleInput";function Ps(e){const{__scopeRadioGroup:r,value:t,disabled:o,children:n,internal_do_not_use_render:s}=e,i=Ms(js,r),l=at(r),u=i.disabled||o;return a.jsx(qr,{...l,checked:i.value===t,disabled:u,required:i.required,name:i.name,form:i.form,value:t,onCheck:()=>i.onValueChange(t),internal_do_not_use_render:s,children:n})}var ao=c.forwardRef((e,r)=>{const{__scopeRadioGroup:t,...o}=e,n=ro(t),s=at(t),{checked:i,disabled:l}=ot(no,s.__scopeRadio),u=c.useRef(null),p=L(r,u),v=c.useRef(!1);return c.useEffect(()=>{const f=d=>{Rs.includes(d.key)&&(v.current=!0)},m=()=>v.current=!1;return document.addEventListener("keydown",f),document.addEventListener("keyup",m),()=>{document.removeEventListener("keydown",f),document.removeEventListener("keyup",m)}},[]),a.jsx(rt,{asChild:!0,...n,focusable:!l,active:i,children:a.jsx(Ft,{...s,...o,ref:p,onKeyDown:R(o.onKeyDown,f=>{f.key==="Enter"&&f.preventDefault()}),onFocus:R(o.onFocus,()=>{var f;v.current&&((f=u.current)==null||f.click())})})})});ao.displayName=no;var so=c.forwardRef((e,r)=>{const{__scopeRadioGroup:t,value:o,disabled:n,...s}=e;return a.jsx(Ps,{__scopeRadioGroup:t,value:o,disabled:n,internal_do_not_use_render:({isFormControl:i})=>a.jsxs(a.Fragment,{children:[a.jsx(ao,{...s,ref:r,__scopeRadioGroup:t}),i&&a.jsx(io,{__scopeRadioGroup:t})]})})});so.displayName=Es;var io=c.forwardRef((e,r)=>{const{__scopeRadioGroup:t,...o}=e,n=at(t);return a.jsx($t,{...n,...o,ref:r})});io.displayName=Ts;var Ns="RadioGroupIndicator",co=c.forwardRef((e,r)=>{const{__scopeRadioGroup:t,...o}=e,n=at(t);return a.jsx(Qr,{...n,...o,ref:r})});co.displayName=Ns;c.forwardRef(function(r,t){const{className:o,...n}=r;return a.jsx(oo,{ref:t,className:I("v8-radio-group",o),style:{display:"flex",flexDirection:"column",gap:"var(--space-2)"},...n})});c.forwardRef(function(r,t){const{className:o,value:n,label:s,...i}=r;return a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"var(--space-2)"},children:[a.jsx(so,{ref:t,value:n,className:I("v8-radio-group__item",o),style:{width:16,height:16,display:"inline-flex",alignItems:"center",justifyContent:"center",background:"var(--input-bg)",border:"1px solid var(--border-strong)",borderRadius:"var(--radius-pill)",cursor:"pointer"},...i,children:a.jsx(co,{style:{width:8,height:8,borderRadius:"var(--radius-pill)",background:"var(--accent)"}})}),s!==void 0&&a.jsx("label",{htmlFor:i.id,style:{fontSize:"var(--fs-13)",cursor:"pointer"},children:s})]})});c.forwardRef(function(r,t){const{id:o,label:n,hint:s,error:i,required:l,children:u,className:p,...v}=r,f=s!==void 0?`${o}-hint`:void 0,m=i!==void 0?`${o}-error`:void 0;return a.jsxs("div",{ref:t,className:I("v8-field",i!==void 0&&"has-error",p),style:{display:"flex",flexDirection:"column",gap:"var(--space-2)"},...v,children:[a.jsxs("label",{htmlFor:o,style:{fontSize:"var(--fs-13)",fontWeight:500,color:"var(--fg)",display:"flex",alignItems:"center",gap:"var(--space-1)"},children:[n,l===!0&&a.jsx("span",{"aria-hidden":"true",style:{color:"var(--danger)"},children:"*"})]}),u,s!==void 0&&i===void 0&&a.jsx("div",{id:f,style:{fontSize:"var(--fs-12)",color:"var(--fg-muted)"},children:s}),i!==void 0&&a.jsx("div",{id:m,role:"alert",style:{fontSize:"var(--fs-12)",color:"var(--danger)"},children:i})]})});c.forwardRef(function(r,t){const{children:o,className:n,...s}=r;return a.jsx("form",{ref:t,className:I("v8-form",n),style:{display:"flex",flexDirection:"column",gap:"var(--space-4)"},...s,children:o})});var[st]=Z("Tooltip",[ke]),it=ke(),ks="TooltipProvider",Rt="tooltip.open",[ud,Lt]=st(ks),Ge="Tooltip",[Ss,Ve]=st(Ge),lo=e=>{const{__scopeTooltip:r,children:t,open:o,defaultOpen:n,onOpenChange:s,disableHoverableContent:i,delayDuration:l}=e,u=Lt(Ge,e.__scopeTooltip),p=it(r),[v,f]=c.useState(null),m=Le(),d=c.useRef(0),b=i??u.disableHoverableContent,w=l??u.delayDuration,C=c.useRef(!1),[y,x]=le({prop:o,defaultProp:n??!1,onChange:F=>{F?(u.onOpen(),document.dispatchEvent(new CustomEvent(Rt))):u.onClose(),s==null||s(F)},caller:Ge}),M=c.useMemo(()=>y?C.current?"delayed-open":"instant-open":"closed",[y]),E=c.useCallback(()=>{window.clearTimeout(d.current),d.current=0,C.current=!1,x(!0)},[x]),T=c.useCallback(()=>{window.clearTimeout(d.current),d.current=0,x(!1)},[x]),P=c.useCallback(()=>{window.clearTimeout(d.current),d.current=window.setTimeout(()=>{C.current=!0,x(!0),d.current=0},w)},[w,x]);return c.useEffect(()=>()=>{d.current&&(window.clearTimeout(d.current),d.current=0)},[]),a.jsx(Sa,{...p,children:a.jsx(Ss,{scope:r,contentId:m,open:y,stateAttribute:M,trigger:v,onTriggerChange:f,onTriggerEnter:c.useCallback(()=>{u.isOpenDelayedRef.current?P():E()},[u.isOpenDelayedRef,P,E]),onTriggerLeave:c.useCallback(()=>{b?T():(window.clearTimeout(d.current),d.current=0)},[T,b]),onOpen:E,onClose:T,disableHoverableContent:b,children:t})})};lo.displayName=Ge;var _t="TooltipTrigger",uo=c.forwardRef((e,r)=>{const{__scopeTooltip:t,...o}=e,n=Ve(_t,t),s=Lt(_t,t),i=it(t),l=c.useRef(null),u=L(r,l,n.onTriggerChange),p=c.useRef(!1),v=c.useRef(!1),f=c.useCallback(()=>p.current=!1,[]);return c.useEffect(()=>()=>document.removeEventListener("pointerup",f),[f]),a.jsx(Qe,{asChild:!0,...i,children:a.jsx(N.button,{"aria-describedby":n.open?n.contentId:void 0,"data-state":n.stateAttribute,...o,ref:u,onPointerMove:R(e.onPointerMove,m=>{m.pointerType!=="touch"&&!v.current&&!s.isPointerInTransitRef.current&&(n.onTriggerEnter(),v.current=!0)}),onPointerLeave:R(e.onPointerLeave,()=>{n.onTriggerLeave(),v.current=!1}),onPointerDown:R(e.onPointerDown,()=>{n.open&&n.onClose(),p.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:R(e.onFocus,()=>{p.current||n.onOpen()}),onBlur:R(e.onBlur,n.onClose),onClick:R(e.onClick,n.onClose)})})});uo.displayName=_t;var Bt="TooltipPortal",[As,Ds]=st(Bt,{forceMount:void 0}),fo=e=>{const{__scopeTooltip:r,forceMount:t,children:o,container:n}=e,s=Ve(Bt,r);return a.jsx(As,{scope:r,forceMount:t,children:a.jsx(te,{present:t||s.open,children:a.jsx(jt,{asChild:!0,container:n,children:o})})})};fo.displayName=Bt;var Pe="TooltipContent",po=c.forwardRef((e,r)=>{const t=Ds(Pe,e.__scopeTooltip),{forceMount:o=t.forceMount,side:n="top",...s}=e,i=Ve(Pe,e.__scopeTooltip);return a.jsx(te,{present:o||i.open,children:i.disableHoverableContent?a.jsx(vo,{side:n,...s,ref:r}):a.jsx(Os,{side:n,...s,ref:r})})}),Os=c.forwardRef((e,r)=>{const t=Ve(Pe,e.__scopeTooltip),o=Lt(Pe,e.__scopeTooltip),n=c.useRef(null),s=L(r,n),[i,l]=c.useState(null),{trigger:u,onClose:p}=t,v=n.current,{onPointerInTransitChange:f}=o,m=c.useCallback(()=>{l(null),f(!1)},[f]),d=c.useCallback((b,w)=>{const C=b.currentTarget,y={x:b.clientX,y:b.clientY},x=Ls(y,C.getBoundingClientRect()),M=Bs(y,x),E=zs(w.getBoundingClientRect()),T=Ks([...M,...E]);l(T),f(!0)},[f]);return c.useEffect(()=>()=>m(),[m]),c.useEffect(()=>{if(u&&v){const b=C=>d(C,v),w=C=>d(C,u);return u.addEventListener("pointerleave",b),v.addEventListener("pointerleave",w),()=>{u.removeEventListener("pointerleave",b),v.removeEventListener("pointerleave",w)}}},[u,v,d,m]),c.useEffect(()=>{if(i){const b=w=>{const C=w.target,y={x:w.clientX,y:w.clientY},x=(u==null?void 0:u.contains(C))||(v==null?void 0:v.contains(C)),M=!Vs(y,i);x?m():M&&(m(),p())};return document.addEventListener("pointermove",b),()=>document.removeEventListener("pointermove",b)}},[u,v,i,p,m]),a.jsx(vo,{...e,ref:s})}),[Gs,Fs]=st(Ge,{isInside:!1}),$s=ya("TooltipContent"),vo=c.forwardRef((e,r)=>{const{__scopeTooltip:t,children:o,"aria-label":n,onEscapeKeyDown:s,onPointerDownOutside:i,...l}=e,u=Ve(Pe,t),p=it(t),{onClose:v}=u;return c.useEffect(()=>(document.addEventListener(Rt,v),()=>document.removeEventListener(Rt,v)),[v]),c.useEffect(()=>{if(u.trigger){const f=m=>{m.target instanceof Node&&m.target.contains(u.trigger)&&v()};return window.addEventListener("scroll",f,{capture:!0}),()=>window.removeEventListener("scroll",f,{capture:!0})}},[u.trigger,v]),a.jsx(Tt,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:s,onPointerDownOutside:i,onFocusOutside:f=>f.preventDefault(),onDismiss:v,children:a.jsxs(St,{"data-state":u.stateAttribute,...p,...l,ref:r,style:{...l.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[a.jsx($s,{children:o}),a.jsx(Gs,{scope:t,isInside:!0,children:a.jsx(Aa,{id:u.contentId,role:"tooltip",children:n||o})})]})})});po.displayName=Pe;var mo="TooltipArrow",go=c.forwardRef((e,r)=>{const{__scopeTooltip:t,...o}=e,n=it(t);return Fs(mo,t).isInside?null:a.jsx(kt,{...n,...o,ref:r})});go.displayName=mo;function Ls(e,r){const t=Math.abs(r.top-e.y),o=Math.abs(r.bottom-e.y),n=Math.abs(r.right-e.x),s=Math.abs(r.left-e.x);switch(Math.min(t,o,n,s)){case s:return"left";case n:return"right";case t:return"top";case o:return"bottom";default:throw new Error("unreachable")}}function Bs(e,r,t=5){const o=[];switch(r){case"top":o.push({x:e.x-t,y:e.y+t},{x:e.x+t,y:e.y+t});break;case"bottom":o.push({x:e.x-t,y:e.y-t},{x:e.x+t,y:e.y-t});break;case"left":o.push({x:e.x+t,y:e.y-t},{x:e.x+t,y:e.y+t});break;case"right":o.push({x:e.x-t,y:e.y-t},{x:e.x-t,y:e.y+t});break}return o}function zs(e){const{top:r,right:t,bottom:o,left:n}=e;return[{x:n,y:r},{x:t,y:r},{x:t,y:o},{x:n,y:o}]}function Vs(e,r){const{x:t,y:o}=e;let n=!1;for(let s=0,i=r.length-1;s<r.length;i=s++){const l=r[s],u=r[i],p=l.x,v=l.y,f=u.x,m=u.y;v>o!=m>o&&t<(f-p)*(o-v)/(m-v)+p&&(n=!n)}return n}function Ks(e){const r=e.slice();return r.sort((t,o)=>t.x<o.x?-1:t.x>o.x?1:t.y<o.y?-1:t.y>o.y?1:0),Hs(r)}function Hs(e){if(e.length<=1)return e.slice();const r=[];for(let o=0;o<e.length;o++){const n=e[o];for(;r.length>=2;){const s=r[r.length-1],i=r[r.length-2];if((s.x-i.x)*(n.y-i.y)>=(s.y-i.y)*(n.x-i.x))r.pop();else break}r.push(n)}r.pop();const t=[];for(let o=e.length-1;o>=0;o--){const n=e[o];for(;t.length>=2;){const s=t[t.length-1],i=t[t.length-2];if((s.x-i.x)*(n.y-i.y)>=(s.y-i.y)*(n.x-i.x))t.pop();else break}t.push(n)}return t.pop(),r.length===1&&t.length===1&&r[0].x===t[0].x&&r[0].y===t[0].y?r:r.concat(t)}var Us=lo,Ws=uo,Ys=fo,Xs=po,qs=go;c.forwardRef(function(r,t){const{children:o,content:n,side:s="top",align:i="center",delayDuration:l=250,shortcut:u,open:p,defaultOpen:v,onOpenChange:f}=r;return a.jsxs(Us,{delayDuration:l,open:p,defaultOpen:v,onOpenChange:f,children:[a.jsx(Ws,{asChild:!0,children:o}),a.jsx(Ys,{children:a.jsxs(Xs,{ref:t,side:s,align:i,sideOffset:6,className:I("v8-tooltip"),style:{background:"var(--fg)",color:"var(--bg)",fontSize:"var(--fs-12)",fontWeight:500,padding:"4px 8px",borderRadius:"var(--radius-sm)",boxShadow:"var(--shadow-2)",maxWidth:280,zIndex:"var(--z-tooltip)",display:"inline-flex",alignItems:"center",gap:"var(--space-2)",userSelect:"none"},children:[n,u!==void 0&&a.jsx("kbd",{style:{fontFamily:"var(--font-mono)",fontSize:"var(--fs-12)",padding:"0 4px",background:"oklch(from var(--fg) l c h / 0.15)",borderRadius:"var(--radius-sm)"},children:u}),a.jsx(qs,{style:{fill:"var(--fg)"}})]})})]})});var ho="Popover",[xo]=Z(ho,[ke]),ct=ke(),[fd,ye]=xo(ho),bo="PopoverAnchor",Zs=c.forwardRef((e,r)=>{const{__scopePopover:t,...o}=e,n=ye(bo,t),s=ct(t),{onCustomAnchorAdd:i,onCustomAnchorRemove:l}=n;return c.useEffect(()=>(i(),()=>l()),[i,l]),a.jsx(Qe,{...s,...o,ref:r})});Zs.displayName=bo;var yo="PopoverTrigger",Js=c.forwardRef((e,r)=>{const{__scopePopover:t,...o}=e,n=ye(yo,t),s=ct(t),i=L(r,n.triggerRef),l=a.jsx(N.button,{type:"button","aria-haspopup":"dialog","aria-expanded":n.open,"aria-controls":n.open?n.contentId:void 0,"data-state":Mo(n.open),...o,ref:i,onClick:R(e.onClick,n.onOpenToggle)});return n.hasCustomAnchor?l:a.jsx(Qe,{asChild:!0,...s,children:l})});Js.displayName=yo;var zt="PopoverPortal",[Qs,ei]=xo(zt,{forceMount:void 0}),wo=e=>{const{__scopePopover:r,forceMount:t,children:o,container:n}=e,s=ye(zt,r);return a.jsx(Qs,{scope:r,forceMount:t,children:a.jsx(te,{present:t||s.open,children:a.jsx(jt,{asChild:!0,container:n,children:o})})})};wo.displayName=zt;var Ne="PopoverContent",Co=c.forwardRef((e,r)=>{const t=ei(Ne,e.__scopePopover),{forceMount:o=t.forceMount,...n}=e,s=ye(Ne,e.__scopePopover);return a.jsx(te,{present:o||s.open,children:s.modal?a.jsx(ri,{...n,ref:r}):a.jsx(oi,{...n,ref:r})})});Co.displayName=Ne;var ti=wr("PopoverContent.RemoveScroll"),ri=c.forwardRef((e,r)=>{const t=ye(Ne,e.__scopePopover),o=c.useRef(null),n=L(r,o),s=c.useRef(!1);return c.useEffect(()=>{const i=o.current;if(i)return br(i)},[]),a.jsx(yr,{as:ti,allowPinchZoom:!0,children:a.jsx(Ro,{...e,ref:n,trapFocus:t.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:R(e.onCloseAutoFocus,i=>{var l;i.preventDefault(),s.current||(l=t.triggerRef.current)==null||l.focus()}),onPointerDownOutside:R(e.onPointerDownOutside,i=>{const l=i.detail.originalEvent,u=l.button===0&&l.ctrlKey===!0,p=l.button===2||u;s.current=p},{checkForDefaultPrevented:!1}),onFocusOutside:R(e.onFocusOutside,i=>i.preventDefault(),{checkForDefaultPrevented:!1})})})}),oi=c.forwardRef((e,r)=>{const t=ye(Ne,e.__scopePopover),o=c.useRef(!1),n=c.useRef(!1);return a.jsx(Ro,{...e,ref:r,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:s=>{var i,l;(i=e.onCloseAutoFocus)==null||i.call(e,s),s.defaultPrevented||(o.current||(l=t.triggerRef.current)==null||l.focus(),s.preventDefault()),o.current=!1,n.current=!1},onInteractOutside:s=>{var u,p;(u=e.onInteractOutside)==null||u.call(e,s),s.defaultPrevented||(o.current=!0,s.detail.originalEvent.type==="pointerdown"&&(n.current=!0));const i=s.target;((p=t.triggerRef.current)==null?void 0:p.contains(i))&&s.preventDefault(),s.detail.originalEvent.type==="focusin"&&n.current&&s.preventDefault()}})}),Ro=c.forwardRef((e,r)=>{const{__scopePopover:t,trapFocus:o,onOpenAutoFocus:n,onCloseAutoFocus:s,disableOutsidePointerEvents:i,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:p,onInteractOutside:v,...f}=e,m=ye(Ne,t),d=ct(t);return Cr(),a.jsx(Rr,{asChild:!0,loop:!0,trapped:o,onMountAutoFocus:n,onUnmountAutoFocus:s,children:a.jsx(Tt,{asChild:!0,disableOutsidePointerEvents:i,onInteractOutside:v,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:p,onDismiss:()=>m.onOpenChange(!1),deferPointerDownOutside:!0,children:a.jsx(St,{"data-state":Mo(m.open),role:"dialog",id:m.contentId,...d,...f,ref:r,style:{...f.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),_o="PopoverClose",ni=c.forwardRef((e,r)=>{const{__scopePopover:t,...o}=e,n=ye(_o,t);return a.jsx(N.button,{type:"button",...o,ref:r,onClick:R(e.onClick,()=>n.onOpenChange(!1))})});ni.displayName=_o;var ai="PopoverArrow",Io=c.forwardRef((e,r)=>{const{__scopePopover:t,...o}=e,n=ct(t);return a.jsx(kt,{...n,...o,ref:r})});Io.displayName=ai;function Mo(e){return e?"open":"closed"}var si=wo,ii=Co,ci=Io;c.forwardRef(function(r,t){const{className:o,children:n,sideOffset:s=6,...i}=r;return a.jsx(si,{children:a.jsxs(ii,{ref:t,sideOffset:s,className:I("v8-popover",o),style:{background:"var(--surface-popover)",border:"1px solid var(--border)",borderRadius:"var(--radius)",boxShadow:"var(--shadow-3)",padding:"var(--space-3)",minWidth:200,maxWidth:360,zIndex:"var(--z-popover)"},...i,children:[n,a.jsx(ci,{style:{fill:"var(--surface-popover)"}})]})})});var li=e=>{switch(e){case"success":return fi;case"info":return vi;case"warning":return pi;case"error":return mi;default:return null}},di=Array(12).fill(0),ui=({visible:e,className:r})=>g.createElement("div",{className:["sonner-loading-wrapper",r].filter(Boolean).join(" "),"data-visible":e},g.createElement("div",{className:"sonner-spinner"},di.map((t,o)=>g.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${o}`})))),fi=g.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},g.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),pi=g.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},g.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),vi=g.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},g.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),mi=g.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},g.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),gi=g.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},g.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),g.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),hi=()=>{let[e,r]=g.useState(document.hidden);return g.useEffect(()=>{let t=()=>{r(document.hidden)};return document.addEventListener("visibilitychange",t),()=>window.removeEventListener("visibilitychange",t)},[]),e},It=1,xi=class{constructor(){this.subscribe=e=>(this.subscribers.push(e),()=>{let r=this.subscribers.indexOf(e);this.subscribers.splice(r,1)}),this.publish=e=>{this.subscribers.forEach(r=>r(e))},this.addToast=e=>{this.publish(e),this.toasts=[...this.toasts,e]},this.create=e=>{var r;let{message:t,...o}=e,n=typeof(e==null?void 0:e.id)=="number"||((r=e.id)==null?void 0:r.length)>0?e.id:It++,s=this.toasts.find(l=>l.id===n),i=e.dismissible===void 0?!0:e.dismissible;return this.dismissedToasts.has(n)&&this.dismissedToasts.delete(n),s?this.toasts=this.toasts.map(l=>l.id===n?(this.publish({...l,...e,id:n,title:t}),{...l,...e,id:n,dismissible:i,title:t}):l):this.addToast({title:t,...o,dismissible:i,id:n}),n},this.dismiss=e=>(this.dismissedToasts.add(e),e||this.toasts.forEach(r=>{this.subscribers.forEach(t=>t({id:r.id,dismiss:!0}))}),this.subscribers.forEach(r=>r({id:e,dismiss:!0})),e),this.message=(e,r)=>this.create({...r,message:e}),this.error=(e,r)=>this.create({...r,message:e,type:"error"}),this.success=(e,r)=>this.create({...r,type:"success",message:e}),this.info=(e,r)=>this.create({...r,type:"info",message:e}),this.warning=(e,r)=>this.create({...r,type:"warning",message:e}),this.loading=(e,r)=>this.create({...r,type:"loading",message:e}),this.promise=(e,r)=>{if(!r)return;let t;r.loading!==void 0&&(t=this.create({...r,promise:e,type:"loading",message:r.loading,description:typeof r.description!="function"?r.description:void 0}));let o=e instanceof Promise?e:e(),n=t!==void 0,s,i=o.then(async u=>{if(s=["resolve",u],g.isValidElement(u))n=!1,this.create({id:t,type:"default",message:u});else if(yi(u)&&!u.ok){n=!1;let p=typeof r.error=="function"?await r.error(`HTTP error! status: ${u.status}`):r.error,v=typeof r.description=="function"?await r.description(`HTTP error! status: ${u.status}`):r.description;this.create({id:t,type:"error",message:p,description:v})}else if(r.success!==void 0){n=!1;let p=typeof r.success=="function"?await r.success(u):r.success,v=typeof r.description=="function"?await r.description(u):r.description;this.create({id:t,type:"success",message:p,description:v})}}).catch(async u=>{if(s=["reject",u],r.error!==void 0){n=!1;let p=typeof r.error=="function"?await r.error(u):r.error,v=typeof r.description=="function"?await r.description(u):r.description;this.create({id:t,type:"error",message:p,description:v})}}).finally(()=>{var u;n&&(this.dismiss(t),t=void 0),(u=r.finally)==null||u.call(r)}),l=()=>new Promise((u,p)=>i.then(()=>s[0]==="reject"?p(s[1]):u(s[1])).catch(p));return typeof t!="string"&&typeof t!="number"?{unwrap:l}:Object.assign(t,{unwrap:l})},this.custom=(e,r)=>{let t=(r==null?void 0:r.id)||It++;return this.create({jsx:e(t),id:t,...r}),t},this.getActiveToasts=()=>this.toasts.filter(e=>!this.dismissedToasts.has(e.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}},Y=new xi,bi=(e,r)=>{let t=(r==null?void 0:r.id)||It++;return Y.addToast({title:e,...r,id:t}),t},yi=e=>e&&typeof e=="object"&&"ok"in e&&typeof e.ok=="boolean"&&"status"in e&&typeof e.status=="number",wi=bi,Ci=()=>Y.toasts,Ri=()=>Y.getActiveToasts();Object.assign(wi,{success:Y.success,info:Y.info,warning:Y.warning,error:Y.error,custom:Y.custom,message:Y.message,promise:Y.promise,dismiss:Y.dismiss,loading:Y.loading},{getHistory:Ci,getToasts:Ri});function _i(e,{insertAt:r}={}){if(typeof document>"u")return;let t=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css",r==="top"&&t.firstChild?t.insertBefore(o,t.firstChild):t.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}_i(`:where(html[dir="ltr"]),:where([data-sonner-toaster][dir="ltr"]){--toast-icon-margin-start: -3px;--toast-icon-margin-end: 4px;--toast-svg-margin-start: -1px;--toast-svg-margin-end: 0px;--toast-button-margin-start: auto;--toast-button-margin-end: 0;--toast-close-button-start: 0;--toast-close-button-end: unset;--toast-close-button-transform: translate(-35%, -35%)}:where(html[dir="rtl"]),:where([data-sonner-toaster][dir="rtl"]){--toast-icon-margin-start: 4px;--toast-icon-margin-end: -3px;--toast-svg-margin-start: 0px;--toast-svg-margin-end: -1px;--toast-button-margin-start: 0;--toast-button-margin-end: auto;--toast-close-button-start: unset;--toast-close-button-end: 0;--toast-close-button-transform: translate(35%, -35%)}:where([data-sonner-toaster]){position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1: hsl(0, 0%, 99%);--gray2: hsl(0, 0%, 97.3%);--gray3: hsl(0, 0%, 95.1%);--gray4: hsl(0, 0%, 93%);--gray5: hsl(0, 0%, 90.9%);--gray6: hsl(0, 0%, 88.7%);--gray7: hsl(0, 0%, 85.8%);--gray8: hsl(0, 0%, 78%);--gray9: hsl(0, 0%, 56.1%);--gray10: hsl(0, 0%, 52.3%);--gray11: hsl(0, 0%, 43.5%);--gray12: hsl(0, 0%, 9%);--border-radius: 8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:none;z-index:999999999;transition:transform .4s ease}:where([data-sonner-toaster][data-lifted="true"]){transform:translateY(-10px)}@media (hover: none) and (pointer: coarse){:where([data-sonner-toaster][data-lifted="true"]){transform:none}}:where([data-sonner-toaster][data-x-position="right"]){right:var(--offset-right)}:where([data-sonner-toaster][data-x-position="left"]){left:var(--offset-left)}:where([data-sonner-toaster][data-x-position="center"]){left:50%;transform:translate(-50%)}:where([data-sonner-toaster][data-y-position="top"]){top:var(--offset-top)}:where([data-sonner-toaster][data-y-position="bottom"]){bottom:var(--offset-bottom)}:where([data-sonner-toast]){--y: translateY(100%);--lift-amount: calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);filter:blur(0);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:none;overflow-wrap:anywhere}:where([data-sonner-toast][data-styled="true"]){padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000001a;width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}:where([data-sonner-toast]:focus-visible){box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast][data-y-position="top"]){top:0;--y: translateY(-100%);--lift: 1;--lift-amount: calc(1 * var(--gap))}:where([data-sonner-toast][data-y-position="bottom"]){bottom:0;--y: translateY(100%);--lift: -1;--lift-amount: calc(var(--lift) * var(--gap))}:where([data-sonner-toast]) :where([data-description]){font-weight:400;line-height:1.4;color:inherit}:where([data-sonner-toast]) :where([data-title]){font-weight:500;line-height:1.5;color:inherit}:where([data-sonner-toast]) :where([data-icon]){display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}:where([data-sonner-toast][data-promise="true"]) :where([data-icon])>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}:where([data-sonner-toast]) :where([data-icon])>*{flex-shrink:0}:where([data-sonner-toast]) :where([data-icon]) svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}:where([data-sonner-toast]) :where([data-content]){display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;cursor:pointer;outline:none;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}:where([data-sonner-toast]) :where([data-button]):focus-visible{box-shadow:0 0 0 2px #0006}:where([data-sonner-toast]) :where([data-button]):first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}:where([data-sonner-toast]) :where([data-cancel]){color:var(--normal-text);background:rgba(0,0,0,.08)}:where([data-sonner-toast][data-theme="dark"]) :where([data-cancel]){background:rgba(255,255,255,.3)}:where([data-sonner-toast]) :where([data-close-button]){position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast] [data-close-button]{background:var(--gray1)}:where([data-sonner-toast]) :where([data-close-button]):focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast]) :where([data-disabled="true"]){cursor:not-allowed}:where([data-sonner-toast]):hover :where([data-close-button]):hover{background:var(--gray2);border-color:var(--gray5)}:where([data-sonner-toast][data-swiping="true"]):before{content:"";position:absolute;left:-50%;right:-50%;height:100%;z-index:-1}:where([data-sonner-toast][data-y-position="top"][data-swiping="true"]):before{bottom:50%;transform:scaleY(3) translateY(50%)}:where([data-sonner-toast][data-y-position="bottom"][data-swiping="true"]):before{top:50%;transform:scaleY(3) translateY(-50%)}:where([data-sonner-toast][data-swiping="false"][data-removed="true"]):before{content:"";position:absolute;inset:0;transform:scaleY(2)}:where([data-sonner-toast]):after{content:"";position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}:where([data-sonner-toast][data-mounted="true"]){--y: translateY(0);opacity:1}:where([data-sonner-toast][data-expanded="false"][data-front="false"]){--scale: var(--toasts-before) * .05 + 1;--y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}:where([data-sonner-toast])>*{transition:opacity .4s}:where([data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"])>*{opacity:0}:where([data-sonner-toast][data-visible="false"]){opacity:0;pointer-events:none}:where([data-sonner-toast][data-mounted="true"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}:where([data-sonner-toast][data-removed="true"][data-front="true"][data-swipe-out="false"]){--y: translateY(calc(var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="false"]){--y: translateY(40%);opacity:0;transition:transform .5s,opacity .2s}:where([data-sonner-toast][data-removed="true"][data-front="false"]):before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y, 0px)) translate(var(--swipe-amount-x, 0px));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{0%{transform:var(--y) translate(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translate(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{0%{transform:var(--y) translate(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translate(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{0%{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{0%{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width: 600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-theme=light]{--normal-bg: #fff;--normal-border: var(--gray4);--normal-text: var(--gray12);--success-bg: hsl(143, 85%, 96%);--success-border: hsl(145, 92%, 91%);--success-text: hsl(140, 100%, 27%);--info-bg: hsl(208, 100%, 97%);--info-border: hsl(221, 91%, 91%);--info-text: hsl(210, 92%, 45%);--warning-bg: hsl(49, 100%, 97%);--warning-border: hsl(49, 91%, 91%);--warning-text: hsl(31, 92%, 45%);--error-bg: hsl(359, 100%, 97%);--error-border: hsl(359, 100%, 94%);--error-text: hsl(360, 100%, 45%)}[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg: #fff;--normal-border: var(--gray3);--normal-text: var(--gray12)}[data-sonner-toaster][data-theme=dark]{--normal-bg: #000;--normal-bg-hover: hsl(0, 0%, 12%);--normal-border: hsl(0, 0%, 20%);--normal-border-hover: hsl(0, 0%, 25%);--normal-text: var(--gray1);--success-bg: hsl(150, 100%, 6%);--success-border: hsl(147, 100%, 12%);--success-text: hsl(150, 86%, 65%);--info-bg: hsl(215, 100%, 6%);--info-border: hsl(223, 100%, 12%);--info-text: hsl(216, 87%, 65%);--warning-bg: hsl(64, 100%, 6%);--warning-border: hsl(60, 100%, 12%);--warning-text: hsl(46, 87%, 65%);--error-bg: hsl(358, 76%, 10%);--error-border: hsl(357, 89%, 16%);--error-text: hsl(358, 100%, 81%)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size: 16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:nth-child(1){animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}
29
- `);function Ue(e){return e.label!==void 0}var Ii=3,Mi="32px",Ei="16px",pr=4e3,ji=356,Ti=14,Pi=20,Ni=200;function ce(...e){return e.filter(Boolean).join(" ")}function ki(e){let[r,t]=e.split("-"),o=[];return r&&o.push(r),t&&o.push(t),o}var Si=e=>{var r,t,o,n,s,i,l,u,p,v,f;let{invert:m,toast:d,unstyled:b,interacting:w,setHeights:C,visibleToasts:y,heights:x,index:M,toasts:E,expanded:T,removeToast:P,defaultRichColors:F,closeButton:$,style:V,cancelButtonStyle:U,actionButtonStyle:ue,className:K="",descriptionClassName:fe="",duration:re,position:pe,gap:B,loadingIcon:oe,expandByDefault:ne,classNames:h,icons:O,closeButtonAriaLabel:W="Close toast",pauseWhenPageIsHidden:j}=e,[k,D]=g.useState(null),[z,J]=g.useState(null),[S,Me]=g.useState(!1),[H,we]=g.useState(!1),[Se,gt]=g.useState(!1),[nr,aa]=g.useState(!1),[sa,ar]=g.useState(!1),[ia,ht]=g.useState(0),[ca,sr]=g.useState(0),Ae=g.useRef(d.duration||re||pr),ir=g.useRef(null),Ce=g.useRef(null),la=M===0,da=M+1<=y,Q=d.type,Ee=d.dismissible!==!1,ua=d.className||"",fa=d.descriptionClassName||"",He=g.useMemo(()=>x.findIndex(_=>_.toastId===d.id)||0,[x,d.id]),pa=g.useMemo(()=>{var _;return(_=d.closeButton)!=null?_:$},[d.closeButton,$]),cr=g.useMemo(()=>d.duration||re||pr,[d.duration,re]),xt=g.useRef(0),je=g.useRef(0),lr=g.useRef(0),Te=g.useRef(null),[va,ma]=pe.split("-"),dr=g.useMemo(()=>x.reduce((_,A,G)=>G>=He?_:_+A.height,0),[x,He]),ur=hi(),ga=d.invert||m,bt=Q==="loading";je.current=g.useMemo(()=>He*B+dr,[He,dr]),g.useEffect(()=>{Ae.current=cr},[cr]),g.useEffect(()=>{Me(!0)},[]),g.useEffect(()=>{let _=Ce.current;if(_){let A=_.getBoundingClientRect().height;return sr(A),C(G=>[{toastId:d.id,height:A,position:d.position},...G]),()=>C(G=>G.filter(ae=>ae.toastId!==d.id))}},[C,d.id]),g.useLayoutEffect(()=>{if(!S)return;let _=Ce.current,A=_.style.height;_.style.height="auto";let G=_.getBoundingClientRect().height;_.style.height=A,sr(G),C(ae=>ae.find(se=>se.toastId===d.id)?ae.map(se=>se.toastId===d.id?{...se,height:G}:se):[{toastId:d.id,height:G,position:d.position},...ae])},[S,d.title,d.description,C,d.id]);let ve=g.useCallback(()=>{we(!0),ht(je.current),C(_=>_.filter(A=>A.toastId!==d.id)),setTimeout(()=>{P(d)},Ni)},[d,P,C,je]);g.useEffect(()=>{if(d.promise&&Q==="loading"||d.duration===1/0||d.type==="loading")return;let _;return T||w||j&&ur?(()=>{if(lr.current<xt.current){let A=new Date().getTime()-xt.current;Ae.current=Ae.current-A}lr.current=new Date().getTime()})():Ae.current!==1/0&&(xt.current=new Date().getTime(),_=setTimeout(()=>{var A;(A=d.onAutoClose)==null||A.call(d,d),ve()},Ae.current)),()=>clearTimeout(_)},[T,w,d,Q,j,ur,ve]),g.useEffect(()=>{d.delete&&ve()},[ve,d.delete]);function ha(){var _,A,G;return O!=null&&O.loading?g.createElement("div",{className:ce(h==null?void 0:h.loader,(_=d==null?void 0:d.classNames)==null?void 0:_.loader,"sonner-loader"),"data-visible":Q==="loading"},O.loading):oe?g.createElement("div",{className:ce(h==null?void 0:h.loader,(A=d==null?void 0:d.classNames)==null?void 0:A.loader,"sonner-loader"),"data-visible":Q==="loading"},oe):g.createElement(ui,{className:ce(h==null?void 0:h.loader,(G=d==null?void 0:d.classNames)==null?void 0:G.loader),visible:Q==="loading"})}return g.createElement("li",{tabIndex:0,ref:Ce,className:ce(K,ua,h==null?void 0:h.toast,(r=d==null?void 0:d.classNames)==null?void 0:r.toast,h==null?void 0:h.default,h==null?void 0:h[Q],(t=d==null?void 0:d.classNames)==null?void 0:t[Q]),"data-sonner-toast":"","data-rich-colors":(o=d.richColors)!=null?o:F,"data-styled":!(d.jsx||d.unstyled||b),"data-mounted":S,"data-promise":!!d.promise,"data-swiped":sa,"data-removed":H,"data-visible":da,"data-y-position":va,"data-x-position":ma,"data-index":M,"data-front":la,"data-swiping":Se,"data-dismissible":Ee,"data-type":Q,"data-invert":ga,"data-swipe-out":nr,"data-swipe-direction":z,"data-expanded":!!(T||ne&&S),style:{"--index":M,"--toasts-before":M,"--z-index":E.length-M,"--offset":`${H?ia:je.current}px`,"--initial-height":ne?"auto":`${ca}px`,...V,...d.style},onDragEnd:()=>{gt(!1),D(null),Te.current=null},onPointerDown:_=>{bt||!Ee||(ir.current=new Date,ht(je.current),_.target.setPointerCapture(_.pointerId),_.target.tagName!=="BUTTON"&&(gt(!0),Te.current={x:_.clientX,y:_.clientY}))},onPointerUp:()=>{var _,A,G,ae;if(nr||!Ee)return;Te.current=null;let se=Number(((_=Ce.current)==null?void 0:_.style.getPropertyValue("--swipe-amount-x").replace("px",""))||0),me=Number(((A=Ce.current)==null?void 0:A.style.getPropertyValue("--swipe-amount-y").replace("px",""))||0),Re=new Date().getTime()-((G=ir.current)==null?void 0:G.getTime()),ie=k==="x"?se:me,ge=Math.abs(ie)/Re;if(Math.abs(ie)>=Pi||ge>.11){ht(je.current),(ae=d.onDismiss)==null||ae.call(d,d),J(k==="x"?se>0?"right":"left":me>0?"down":"up"),ve(),aa(!0),ar(!1);return}gt(!1),D(null)},onPointerMove:_=>{var A,G,ae,se;if(!Te.current||!Ee||((A=window.getSelection())==null?void 0:A.toString().length)>0)return;let me=_.clientY-Te.current.y,Re=_.clientX-Te.current.x,ie=(G=e.swipeDirections)!=null?G:ki(pe);!k&&(Math.abs(Re)>1||Math.abs(me)>1)&&D(Math.abs(Re)>Math.abs(me)?"x":"y");let ge={x:0,y:0};k==="y"?(ie.includes("top")||ie.includes("bottom"))&&(ie.includes("top")&&me<0||ie.includes("bottom")&&me>0)&&(ge.y=me):k==="x"&&(ie.includes("left")||ie.includes("right"))&&(ie.includes("left")&&Re<0||ie.includes("right")&&Re>0)&&(ge.x=Re),(Math.abs(ge.x)>0||Math.abs(ge.y)>0)&&ar(!0),(ae=Ce.current)==null||ae.style.setProperty("--swipe-amount-x",`${ge.x}px`),(se=Ce.current)==null||se.style.setProperty("--swipe-amount-y",`${ge.y}px`)}},pa&&!d.jsx?g.createElement("button",{"aria-label":W,"data-disabled":bt,"data-close-button":!0,onClick:bt||!Ee?()=>{}:()=>{var _;ve(),(_=d.onDismiss)==null||_.call(d,d)},className:ce(h==null?void 0:h.closeButton,(n=d==null?void 0:d.classNames)==null?void 0:n.closeButton)},(s=O==null?void 0:O.close)!=null?s:gi):null,d.jsx||c.isValidElement(d.title)?d.jsx?d.jsx:typeof d.title=="function"?d.title():d.title:g.createElement(g.Fragment,null,Q||d.icon||d.promise?g.createElement("div",{"data-icon":"",className:ce(h==null?void 0:h.icon,(i=d==null?void 0:d.classNames)==null?void 0:i.icon)},d.promise||d.type==="loading"&&!d.icon?d.icon||ha():null,d.type!=="loading"?d.icon||(O==null?void 0:O[Q])||li(Q):null):null,g.createElement("div",{"data-content":"",className:ce(h==null?void 0:h.content,(l=d==null?void 0:d.classNames)==null?void 0:l.content)},g.createElement("div",{"data-title":"",className:ce(h==null?void 0:h.title,(u=d==null?void 0:d.classNames)==null?void 0:u.title)},typeof d.title=="function"?d.title():d.title),d.description?g.createElement("div",{"data-description":"",className:ce(fe,fa,h==null?void 0:h.description,(p=d==null?void 0:d.classNames)==null?void 0:p.description)},typeof d.description=="function"?d.description():d.description):null),c.isValidElement(d.cancel)?d.cancel:d.cancel&&Ue(d.cancel)?g.createElement("button",{"data-button":!0,"data-cancel":!0,style:d.cancelButtonStyle||U,onClick:_=>{var A,G;Ue(d.cancel)&&Ee&&((G=(A=d.cancel).onClick)==null||G.call(A,_),ve())},className:ce(h==null?void 0:h.cancelButton,(v=d==null?void 0:d.classNames)==null?void 0:v.cancelButton)},d.cancel.label):null,c.isValidElement(d.action)?d.action:d.action&&Ue(d.action)?g.createElement("button",{"data-button":!0,"data-action":!0,style:d.actionButtonStyle||ue,onClick:_=>{var A,G;Ue(d.action)&&((G=(A=d.action).onClick)==null||G.call(A,_),!_.defaultPrevented&&ve())},className:ce(h==null?void 0:h.actionButton,(f=d==null?void 0:d.classNames)==null?void 0:f.actionButton)},d.action.label):null))};function vr(){if(typeof window>"u"||typeof document>"u")return"ltr";let e=document.documentElement.getAttribute("dir");return e==="auto"||!e?window.getComputedStyle(document.documentElement).direction:e}function Ai(e,r){let t={};return[e,r].forEach((o,n)=>{let s=n===1,i=s?"--mobile-offset":"--offset",l=s?Ei:Mi;function u(p){["top","right","bottom","left"].forEach(v=>{t[`${i}-${v}`]=typeof p=="number"?`${p}px`:p})}typeof o=="number"||typeof o=="string"?u(o):typeof o=="object"?["top","right","bottom","left"].forEach(p=>{o[p]===void 0?t[`${i}-${p}`]=l:t[`${i}-${p}`]=typeof o[p]=="number"?`${o[p]}px`:o[p]}):u(l)}),t}c.forwardRef(function(e,r){let{invert:t,position:o="bottom-right",hotkey:n=["altKey","KeyT"],expand:s,closeButton:i,className:l,offset:u,mobileOffset:p,theme:v="light",richColors:f,duration:m,style:d,visibleToasts:b=Ii,toastOptions:w,dir:C=vr(),gap:y=Ti,loadingIcon:x,icons:M,containerAriaLabel:E="Notifications",pauseWhenPageIsHidden:T}=e,[P,F]=g.useState([]),$=g.useMemo(()=>Array.from(new Set([o].concat(P.filter(j=>j.position).map(j=>j.position)))),[P,o]),[V,U]=g.useState([]),[ue,K]=g.useState(!1),[fe,re]=g.useState(!1),[pe,B]=g.useState(v!=="system"?v:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),oe=g.useRef(null),ne=n.join("+").replace(/Key/g,"").replace(/Digit/g,""),h=g.useRef(null),O=g.useRef(!1),W=g.useCallback(j=>{F(k=>{var D;return(D=k.find(z=>z.id===j.id))!=null&&D.delete||Y.dismiss(j.id),k.filter(({id:z})=>z!==j.id)})},[]);return g.useEffect(()=>Y.subscribe(j=>{if(j.dismiss){F(k=>k.map(D=>D.id===j.id?{...D,delete:!0}:D));return}setTimeout(()=>{wa.flushSync(()=>{F(k=>{let D=k.findIndex(z=>z.id===j.id);return D!==-1?[...k.slice(0,D),{...k[D],...j},...k.slice(D+1)]:[j,...k]})})})}),[]),g.useEffect(()=>{if(v!=="system"){B(v);return}if(v==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?B("dark"):B("light")),typeof window>"u")return;let j=window.matchMedia("(prefers-color-scheme: dark)");try{j.addEventListener("change",({matches:k})=>{B(k?"dark":"light")})}catch{j.addListener(({matches:D})=>{try{B(D?"dark":"light")}catch(z){console.error(z)}})}},[v]),g.useEffect(()=>{P.length<=1&&K(!1)},[P]),g.useEffect(()=>{let j=k=>{var D,z;n.every(J=>k[J]||k.code===J)&&(K(!0),(D=oe.current)==null||D.focus()),k.code==="Escape"&&(document.activeElement===oe.current||(z=oe.current)!=null&&z.contains(document.activeElement))&&K(!1)};return document.addEventListener("keydown",j),()=>document.removeEventListener("keydown",j)},[n]),g.useEffect(()=>{if(oe.current)return()=>{h.current&&(h.current.focus({preventScroll:!0}),h.current=null,O.current=!1)}},[oe.current]),g.createElement("section",{ref:r,"aria-label":`${E} ${ne}`,tabIndex:-1,"aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",suppressHydrationWarning:!0},$.map((j,k)=>{var D;let[z,J]=j.split("-");return P.length?g.createElement("ol",{key:j,dir:C==="auto"?vr():C,tabIndex:-1,ref:oe,className:l,"data-sonner-toaster":!0,"data-theme":pe,"data-y-position":z,"data-lifted":ue&&P.length>1&&!s,"data-x-position":J,style:{"--front-toast-height":`${((D=V[0])==null?void 0:D.height)||0}px`,"--width":`${ji}px`,"--gap":`${y}px`,...d,...Ai(u,p)},onBlur:S=>{O.current&&!S.currentTarget.contains(S.relatedTarget)&&(O.current=!1,h.current&&(h.current.focus({preventScroll:!0}),h.current=null))},onFocus:S=>{S.target instanceof HTMLElement&&S.target.dataset.dismissible==="false"||O.current||(O.current=!0,h.current=S.relatedTarget)},onMouseEnter:()=>K(!0),onMouseMove:()=>K(!0),onMouseLeave:()=>{fe||K(!1)},onDragEnd:()=>K(!1),onPointerDown:S=>{S.target instanceof HTMLElement&&S.target.dataset.dismissible==="false"||re(!0)},onPointerUp:()=>re(!1)},P.filter(S=>!S.position&&k===0||S.position===j).map((S,Me)=>{var H,we;return g.createElement(Si,{key:S.id,icons:M,index:Me,toast:S,defaultRichColors:f,duration:(H=w==null?void 0:w.duration)!=null?H:m,className:w==null?void 0:w.className,descriptionClassName:w==null?void 0:w.descriptionClassName,invert:t,visibleToasts:b,closeButton:(we=w==null?void 0:w.closeButton)!=null?we:i,interacting:fe,position:j,style:w==null?void 0:w.style,unstyled:w==null?void 0:w.unstyled,classNames:w==null?void 0:w.classNames,cancelButtonStyle:w==null?void 0:w.cancelButtonStyle,actionButtonStyle:w==null?void 0:w.actionButtonStyle,removeToast:W,toasts:P.filter(Se=>Se.position==S.position),heights:V.filter(Se=>Se.position==S.position),setHeights:U,expandByDefault:s,gap:y,loadingIcon:x,expanded:ue,pauseWhenPageIsHidden:T,swipeDirections:e.swipeDirections})})):null}))});const Di={info:za,success:Fa,warning:Ga,danger:Ba},Oi={info:"color-mix(in oklch, var(--info) 12%, var(--surface-1))",success:"color-mix(in oklch, var(--success) 12%, var(--surface-1))",warning:"color-mix(in oklch, var(--warning) 12%, var(--surface-1))",danger:"color-mix(in oklch, var(--danger) 12%, var(--surface-1))"},Gi={info:"var(--info)",success:"var(--success)",warning:"var(--warning)",danger:"var(--danger)"},Fi={info:"color-mix(in oklch, var(--info) 30%, var(--border))",success:"color-mix(in oklch, var(--success) 30%, var(--border))",warning:"color-mix(in oklch, var(--warning) 30%, var(--border))",danger:"color-mix(in oklch, var(--danger) 30%, var(--border))"};c.forwardRef(function(r,t){const{tone:o="info",title:n,children:s,action:i,icon:l,className:u,...p}=r,v=l!==!1,f=l===!1?null:l??g.createElement(Di[o],{size:16,"aria-hidden":!0});return a.jsxs("div",{ref:t,role:o==="danger"||o==="warning"?"alert":"status",className:I("v8-alert",`v8-alert--${o}`,u),style:{display:"flex",alignItems:"flex-start",gap:"var(--space-3)",padding:"var(--space-3) var(--space-4)",background:Oi[o],border:"1px solid",borderColor:Fi[o],borderRadius:"var(--radius)",color:"var(--fg)"},...p,children:[v&&f!==null&&a.jsx("span",{style:{color:Gi[o],flexShrink:0,marginTop:1,display:"inline-flex"},children:f}),a.jsxs("div",{style:{flex:1,minWidth:0,display:"flex",flexDirection:"column",gap:"var(--space-1)"},children:[n!==void 0&&a.jsx("div",{style:{fontSize:"var(--fs-13)",fontWeight:600},children:n}),s!==void 0&&a.jsx("div",{style:{fontSize:"var(--fs-13)",color:"var(--fg-muted)"},children:s})]}),i!==void 0&&a.jsx("div",{style:{flexShrink:0,display:"flex",alignItems:"center"},children:i})]})});c.forwardRef(function(r,t){const{tone:o="info",children:n,action:s,className:i,...l}=r;return a.jsxs("div",{ref:t,role:o==="danger"?"alert":"status",className:I("v8-banner",`v8-banner--${o}`,i),style:{display:"flex",alignItems:"center",gap:"var(--space-3)",padding:"var(--space-3) var(--space-4)",background:`color-mix(in oklch, var(--${o}) 8%, var(--surface-1))`,borderBottom:"1px solid var(--border)",fontSize:"var(--fs-13)",color:"var(--fg)"},...l,children:[a.jsx("div",{style:{flex:1,minWidth:0},children:n}),s!==void 0&&a.jsx("div",{style:{flexShrink:0},children:s})]})});var Mt=["Enter"," "],$i=["ArrowDown","PageUp","Home"],Eo=["ArrowUp","PageDown","End"],Li=[...$i,...Eo],Bi={ltr:[...Mt,"ArrowRight"],rtl:[...Mt,"ArrowLeft"]},zi={ltr:["ArrowLeft"],rtl:["ArrowRight"]},lt="Menu",[Fe,Vi,Ki]=Nt(lt),[_e,dt]=Z(lt,[Ki,ke,xe]),Vt=ke(),jo=xe(),[pd,Ie]=_e(lt),[vd,Ke]=_e(lt),Hi="MenuAnchor",Kt=c.forwardRef((e,r)=>{const{__scopeMenu:t,...o}=e,n=Vt(t);return a.jsx(Qe,{...n,...o,ref:r})});Kt.displayName=Hi;var Ht="MenuPortal",[Ui,To]=_e(Ht,{forceMount:void 0}),Po=e=>{const{__scopeMenu:r,forceMount:t,children:o,container:n}=e,s=Ie(Ht,r);return a.jsx(Ui,{scope:r,forceMount:t,children:a.jsx(te,{present:t||s.open,children:a.jsx(jt,{asChild:!0,container:n,children:o})})})};Po.displayName=Ht;var ee="MenuContent",[Wi,Ut]=_e(ee),No=c.forwardRef((e,r)=>{const t=To(ee,e.__scopeMenu),{forceMount:o=t.forceMount,...n}=e,s=Ie(ee,e.__scopeMenu),i=Ke(ee,e.__scopeMenu);return a.jsx(Fe.Provider,{scope:e.__scopeMenu,children:a.jsx(te,{present:o||s.open,children:a.jsx(Fe.Slot,{scope:e.__scopeMenu,children:i.modal?a.jsx(Yi,{...n,ref:r}):a.jsx(Xi,{...n,ref:r})})})})}),Yi=c.forwardRef((e,r)=>{const t=Ie(ee,e.__scopeMenu),o=c.useRef(null),n=L(r,o);return c.useEffect(()=>{const s=o.current;if(s)return br(s)},[]),a.jsx(Wt,{...e,ref:n,trapFocus:t.open,disableOutsidePointerEvents:t.open,disableOutsideScroll:!0,onFocusOutside:R(e.onFocusOutside,s=>s.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>t.onOpenChange(!1)})}),Xi=c.forwardRef((e,r)=>{const t=Ie(ee,e.__scopeMenu);return a.jsx(Wt,{...e,ref:r,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>t.onOpenChange(!1)})}),qi=wr("MenuContent.ScrollLock"),Wt=c.forwardRef((e,r)=>{const{__scopeMenu:t,loop:o=!1,trapFocus:n,onOpenAutoFocus:s,onCloseAutoFocus:i,disableOutsidePointerEvents:l,onEntryFocus:u,onEscapeKeyDown:p,onPointerDownOutside:v,onFocusOutside:f,onInteractOutside:m,onDismiss:d,disableOutsideScroll:b,...w}=e,C=Ie(ee,t),y=Ke(ee,t),x=Vt(t),M=jo(t),E=Vi(t),[T,P]=c.useState(null),F=c.useRef(null),$=L(r,F,C.onContentChange),V=c.useRef(0),U=c.useRef(""),ue=c.useRef(0),K=c.useRef(null),fe=c.useRef("right"),re=c.useRef(0),pe=b?yr:c.Fragment,B=b?{as:qi,allowPinchZoom:!0}:void 0,oe=h=>{var S,Me;const O=U.current+h,W=E().filter(H=>!H.disabled),j=document.activeElement,k=(S=W.find(H=>H.ref.current===j))==null?void 0:S.textValue,D=W.map(H=>H.textValue),z=cc(D,O,k),J=(Me=W.find(H=>H.textValue===z))==null?void 0:Me.ref.current;(function H(we){U.current=we,window.clearTimeout(V.current),we!==""&&(V.current=window.setTimeout(()=>H(""),1e3))})(O),J&&setTimeout(()=>J.focus())};c.useEffect(()=>()=>window.clearTimeout(V.current),[]),Cr();const ne=c.useCallback(h=>{var W,j;return fe.current===((W=K.current)==null?void 0:W.side)&&dc(h,(j=K.current)==null?void 0:j.area)},[]);return a.jsx(Wi,{scope:t,searchRef:U,onItemEnter:c.useCallback(h=>{ne(h)&&h.preventDefault()},[ne]),onItemLeave:c.useCallback(h=>{var O;ne(h)||((O=F.current)==null||O.focus(),P(null))},[ne]),onTriggerLeave:c.useCallback(h=>{ne(h)&&h.preventDefault()},[ne]),pointerGraceTimerRef:ue,onPointerGraceIntentChange:c.useCallback(h=>{K.current=h},[]),children:a.jsx(pe,{...B,children:a.jsx(Rr,{asChild:!0,trapped:n,onMountAutoFocus:R(s,h=>{var O;h.preventDefault(),(O=F.current)==null||O.focus({preventScroll:!0})}),onUnmountAutoFocus:i,children:a.jsx(Tt,{asChild:!0,disableOutsidePointerEvents:l,onEscapeKeyDown:p,onPointerDownOutside:v,onFocusOutside:f,onInteractOutside:m,onDismiss:d,children:a.jsx(tt,{asChild:!0,...M,dir:y.dir,orientation:"vertical",loop:o,currentTabStopId:T,onCurrentTabStopIdChange:P,onEntryFocus:R(u,h=>{y.isUsingKeyboardRef.current||h.preventDefault()}),preventScrollOnEntryFocus:!0,children:a.jsx(St,{role:"menu","aria-orientation":"vertical","data-state":Wo(C.open),"data-radix-menu-content":"",dir:y.dir,...x,...w,ref:$,style:{outline:"none",...w.style},onKeyDown:R(w.onKeyDown,h=>{const W=h.target.closest("[data-radix-menu-content]")===h.currentTarget,j=h.ctrlKey||h.altKey||h.metaKey,k=h.key.length===1;W&&(h.key==="Tab"&&h.preventDefault(),!j&&k&&oe(h.key));const D=F.current;if(h.target!==D||!Li.includes(h.key))return;h.preventDefault();const J=E().filter(S=>!S.disabled).map(S=>S.ref.current);Eo.includes(h.key)&&J.reverse(),sc(J)}),onBlur:R(e.onBlur,h=>{h.currentTarget.contains(h.target)||(window.clearTimeout(V.current),U.current="")}),onPointerMove:R(e.onPointerMove,$e(h=>{const O=h.target,W=re.current!==h.clientX;if(h.currentTarget.contains(O)&&W){const j=h.clientX>re.current?"right":"left";fe.current=j,re.current=h.clientX}}))})})})})})})});No.displayName=ee;var Zi="MenuGroup",Yt=c.forwardRef((e,r)=>{const{__scopeMenu:t,...o}=e;return a.jsx(N.div,{role:"group",...o,ref:r})});Yt.displayName=Zi;var Ji="MenuLabel",ko=c.forwardRef((e,r)=>{const{__scopeMenu:t,...o}=e;return a.jsx(N.div,{...o,ref:r})});ko.displayName=Ji;var Xe="MenuItem",mr="menu.itemSelect",ut=c.forwardRef((e,r)=>{const{disabled:t=!1,onSelect:o,...n}=e,s=c.useRef(null),i=Ke(Xe,e.__scopeMenu),l=Ut(Xe,e.__scopeMenu),u=L(r,s),p=c.useRef(!1),v=()=>{const f=s.current;if(!t&&f){const m=new CustomEvent(mr,{bubbles:!0,cancelable:!0});f.addEventListener(mr,d=>o==null?void 0:o(d),{once:!0}),Ca(f,m),m.defaultPrevented?p.current=!1:i.onClose()}};return a.jsx(So,{...n,ref:u,disabled:t,onClick:R(e.onClick,v),onPointerDown:f=>{var m;(m=e.onPointerDown)==null||m.call(e,f),p.current=!0},onPointerUp:R(e.onPointerUp,f=>{var m;p.current||(m=f.currentTarget)==null||m.click()}),onKeyDown:R(e.onKeyDown,f=>{t||f.target!==f.currentTarget||l.searchRef.current!==""&&f.key===" "||Mt.includes(f.key)&&(f.currentTarget.click(),f.preventDefault())})})});ut.displayName=Xe;var So=c.forwardRef((e,r)=>{const{__scopeMenu:t,disabled:o=!1,textValue:n,...s}=e,i=Ut(Xe,t),l=jo(t),u=c.useRef(null),p=L(r,u),[v,f]=c.useState(!1),[m,d]=c.useState("");return c.useEffect(()=>{const b=u.current;b&&d((b.textContent??"").trim())},[s.children]),a.jsx(Fe.ItemSlot,{scope:t,disabled:o,textValue:n??m,children:a.jsx(rt,{asChild:!0,...l,focusable:!o,children:a.jsx(N.div,{role:"menuitem","data-highlighted":v?"":void 0,"aria-disabled":o||void 0,"data-disabled":o?"":void 0,...s,ref:p,onPointerMove:R(e.onPointerMove,$e(b=>{o?i.onItemLeave(b):(i.onItemEnter(b),b.defaultPrevented||b.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:R(e.onPointerLeave,$e(b=>i.onItemLeave(b))),onFocus:R(e.onFocus,()=>f(!0)),onBlur:R(e.onBlur,()=>f(!1))})})})}),Qi="MenuCheckboxItem",Ao=c.forwardRef((e,r)=>{const{checked:t=!1,onCheckedChange:o,...n}=e;return a.jsx($o,{scope:e.__scopeMenu,checked:t,children:a.jsx(ut,{role:"menuitemcheckbox","aria-checked":qe(t)?"mixed":t,...n,ref:r,"data-state":qt(t),onSelect:R(n.onSelect,()=>o==null?void 0:o(qe(t)?!0:!t),{checkForDefaultPrevented:!1})})})});Ao.displayName=Qi;var Do="MenuRadioGroup",[ec,tc]=_e(Do,{value:void 0,onValueChange:()=>{}}),Oo=c.forwardRef((e,r)=>{const{value:t,onValueChange:o,...n}=e,s=xr(o);return a.jsx(ec,{scope:e.__scopeMenu,value:t,onValueChange:s,children:a.jsx(Yt,{...n,ref:r})})});Oo.displayName=Do;var Go="MenuRadioItem",Fo=c.forwardRef((e,r)=>{const{value:t,...o}=e,n=tc(Go,e.__scopeMenu),s=t===n.value;return a.jsx($o,{scope:e.__scopeMenu,checked:s,children:a.jsx(ut,{role:"menuitemradio","aria-checked":s,...o,ref:r,"data-state":qt(s),onSelect:R(o.onSelect,()=>{var i;return(i=n.onValueChange)==null?void 0:i.call(n,t)},{checkForDefaultPrevented:!1})})})});Fo.displayName=Go;var Xt="MenuItemIndicator",[$o,rc]=_e(Xt,{checked:!1}),Lo=c.forwardRef((e,r)=>{const{__scopeMenu:t,forceMount:o,...n}=e,s=rc(Xt,t);return a.jsx(te,{present:o||qe(s.checked)||s.checked===!0,children:a.jsx(N.span,{...n,ref:r,"data-state":qt(s.checked)})})});Lo.displayName=Xt;var oc="MenuSeparator",Bo=c.forwardRef((e,r)=>{const{__scopeMenu:t,...o}=e;return a.jsx(N.div,{role:"separator","aria-orientation":"horizontal",...o,ref:r})});Bo.displayName=oc;var nc="MenuArrow",zo=c.forwardRef((e,r)=>{const{__scopeMenu:t,...o}=e,n=Vt(t);return a.jsx(kt,{...n,...o,ref:r})});zo.displayName=nc;var ac="MenuSub",[md,Vo]=_e(ac),Oe="MenuSubTrigger",Ko=c.forwardRef((e,r)=>{const t=Ie(Oe,e.__scopeMenu),o=Ke(Oe,e.__scopeMenu),n=Vo(Oe,e.__scopeMenu),s=Ut(Oe,e.__scopeMenu),i=c.useRef(null),{pointerGraceTimerRef:l,onPointerGraceIntentChange:u}=s,p={__scopeMenu:e.__scopeMenu},v=c.useCallback(()=>{i.current&&window.clearTimeout(i.current),i.current=null},[]);c.useEffect(()=>v,[v]),c.useEffect(()=>{const m=l.current;return()=>{window.clearTimeout(m),u(null)}},[l,u]);const f=L(r,n.onTriggerChange);return a.jsx(Kt,{asChild:!0,...p,children:a.jsx(So,{id:n.triggerId,"aria-haspopup":"menu","aria-expanded":t.open,"aria-controls":t.open?n.contentId:void 0,"data-state":Wo(t.open),...e,ref:f,onClick:m=>{var d;(d=e.onClick)==null||d.call(e,m),!(e.disabled||m.defaultPrevented)&&(m.currentTarget.focus(),t.open||t.onOpenChange(!0))},onPointerMove:R(e.onPointerMove,$e(m=>{s.onItemEnter(m),!m.defaultPrevented&&!e.disabled&&!t.open&&!i.current&&(s.onPointerGraceIntentChange(null),i.current=window.setTimeout(()=>{t.onOpenChange(!0),v()},100))})),onPointerLeave:R(e.onPointerLeave,$e(m=>{var b,w;v();const d=(b=t.content)==null?void 0:b.getBoundingClientRect();if(d){const C=(w=t.content)==null?void 0:w.dataset.side,y=C==="right",x=y?-5:5,M=d[y?"left":"right"],E=d[y?"right":"left"];s.onPointerGraceIntentChange({area:[{x:m.clientX+x,y:m.clientY},{x:M,y:d.top},{x:E,y:d.top},{x:E,y:d.bottom},{x:M,y:d.bottom}],side:C}),window.clearTimeout(l.current),l.current=window.setTimeout(()=>s.onPointerGraceIntentChange(null),300)}else{if(s.onTriggerLeave(m),m.defaultPrevented)return;s.onPointerGraceIntentChange(null)}})),onKeyDown:R(e.onKeyDown,m=>{var b;e.disabled||m.target!==m.currentTarget||s.searchRef.current!==""&&m.key===" "||Bi[o.dir].includes(m.key)&&(t.onOpenChange(!0),(b=t.content)==null||b.focus(),m.preventDefault())})})})});Ko.displayName=Oe;var Ho="MenuSubContent",Uo=c.forwardRef((e,r)=>{const t=To(ee,e.__scopeMenu),{forceMount:o=t.forceMount,align:n="start",...s}=e,i=Ie(ee,e.__scopeMenu),l=Ke(ee,e.__scopeMenu),u=Vo(Ho,e.__scopeMenu),p=c.useRef(null),v=L(r,p);return a.jsx(Fe.Provider,{scope:e.__scopeMenu,children:a.jsx(te,{present:o||i.open,children:a.jsx(Fe.Slot,{scope:e.__scopeMenu,children:a.jsx(Wt,{id:u.contentId,"aria-labelledby":u.triggerId,...s,ref:v,align:n,side:l.dir==="rtl"?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:f=>{var m;l.isUsingKeyboardRef.current&&((m=p.current)==null||m.focus()),f.preventDefault()},onCloseAutoFocus:f=>f.preventDefault(),onFocusOutside:R(e.onFocusOutside,f=>{f.target!==u.trigger&&i.onOpenChange(!1)}),onEscapeKeyDown:R(e.onEscapeKeyDown,f=>{l.onClose(),f.preventDefault()}),onKeyDown:R(e.onKeyDown,f=>{var b;const m=f.currentTarget.contains(f.target),d=zi[l.dir].includes(f.key);m&&d&&(i.onOpenChange(!1),(b=u.trigger)==null||b.focus(),f.preventDefault())})})})})})});Uo.displayName=Ho;function Wo(e){return e?"open":"closed"}function qe(e){return e==="indeterminate"}function qt(e){return qe(e)?"indeterminate":e?"checked":"unchecked"}function sc(e){const r=document.activeElement;for(const t of e)if(t===r||(t.focus(),document.activeElement!==r))return}function ic(e,r){return e.map((t,o)=>e[(r+o)%e.length])}function cc(e,r,t){const n=r.length>1&&Array.from(r).every(p=>p===r[0])?r[0]:r,s=t?e.indexOf(t):-1;let i=ic(e,Math.max(s,0));n.length===1&&(i=i.filter(p=>p!==t));const u=i.find(p=>p.toLowerCase().startsWith(n.toLowerCase()));return u!==t?u:void 0}function lc(e,r){const{x:t,y:o}=e;let n=!1;for(let s=0,i=r.length-1;s<r.length;i=s++){const l=r[s],u=r[i],p=l.x,v=l.y,f=u.x,m=u.y;v>o!=m>o&&t<(f-p)*(o-v)/(m-v)+p&&(n=!n)}return n}function dc(e,r){if(!r)return!1;const t={x:e.clientX,y:e.clientY};return lc(t,r)}function $e(e){return r=>r.pointerType==="mouse"?e(r):void 0}var Yo=Kt,Xo=Po,qo=No,Zo=Yt,Jo=ko,Qo=ut,en=Ao,tn=Oo,rn=Fo,on=Lo,nn=Bo,an=zo,sn=Ko,cn=Uo,ln="DropdownMenu",[uc]=Z(ln,[dt]),X=dt(),[gd,dn]=uc(ln),un="DropdownMenuTrigger",fc=c.forwardRef((e,r)=>{const{__scopeDropdownMenu:t,disabled:o=!1,...n}=e,s=dn(un,t),i=X(t),l=L(r,s.triggerRef);return a.jsx(Yo,{asChild:!0,...i,children:a.jsx(N.button,{type:"button",id:s.triggerId,"aria-haspopup":"menu","aria-expanded":s.open,"aria-controls":s.open?s.contentId:void 0,"data-state":s.open?"open":"closed","data-disabled":o?"":void 0,disabled:o,...n,ref:l,onPointerDown:R(e.onPointerDown,u=>{!o&&u.button===0&&u.ctrlKey===!1&&(s.onOpenToggle(),s.open||u.preventDefault())}),onKeyDown:R(e.onKeyDown,u=>{o||(["Enter"," "].includes(u.key)&&s.onOpenToggle(),u.key==="ArrowDown"&&s.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(u.key)&&u.preventDefault())})})})});fc.displayName=un;var pc="DropdownMenuPortal",fn=e=>{const{__scopeDropdownMenu:r,...t}=e,o=X(r);return a.jsx(Xo,{...o,...t})};fn.displayName=pc;var pn="DropdownMenuContent",vn=c.forwardRef((e,r)=>{const{__scopeDropdownMenu:t,...o}=e,n=dn(pn,t),s=X(t),i=c.useRef(!1);return a.jsx(qo,{id:n.contentId,"aria-labelledby":n.triggerId,...s,...o,ref:r,onCloseAutoFocus:R(e.onCloseAutoFocus,l=>{var u;i.current||(u=n.triggerRef.current)==null||u.focus(),i.current=!1,l.preventDefault()}),onInteractOutside:R(e.onInteractOutside,l=>{const u=l.detail.originalEvent,p=u.button===0&&u.ctrlKey===!0,v=u.button===2||p;(!n.modal||v)&&(i.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});vn.displayName=pn;var vc="DropdownMenuGroup",mc=c.forwardRef((e,r)=>{const{__scopeDropdownMenu:t,...o}=e,n=X(t);return a.jsx(Zo,{...n,...o,ref:r})});mc.displayName=vc;var gc="DropdownMenuLabel",mn=c.forwardRef((e,r)=>{const{__scopeDropdownMenu:t,...o}=e,n=X(t);return a.jsx(Jo,{...n,...o,ref:r})});mn.displayName=gc;var hc="DropdownMenuItem",gn=c.forwardRef((e,r)=>{const{__scopeDropdownMenu:t,...o}=e,n=X(t);return a.jsx(Qo,{...n,...o,ref:r})});gn.displayName=hc;var xc="DropdownMenuCheckboxItem",hn=c.forwardRef((e,r)=>{const{__scopeDropdownMenu:t,...o}=e,n=X(t);return a.jsx(en,{...n,...o,ref:r})});hn.displayName=xc;var bc="DropdownMenuRadioGroup",yc=c.forwardRef((e,r)=>{const{__scopeDropdownMenu:t,...o}=e,n=X(t);return a.jsx(tn,{...n,...o,ref:r})});yc.displayName=bc;var wc="DropdownMenuRadioItem",Cc=c.forwardRef((e,r)=>{const{__scopeDropdownMenu:t,...o}=e,n=X(t);return a.jsx(rn,{...n,...o,ref:r})});Cc.displayName=wc;var Rc="DropdownMenuItemIndicator",xn=c.forwardRef((e,r)=>{const{__scopeDropdownMenu:t,...o}=e,n=X(t);return a.jsx(on,{...n,...o,ref:r})});xn.displayName=Rc;var _c="DropdownMenuSeparator",bn=c.forwardRef((e,r)=>{const{__scopeDropdownMenu:t,...o}=e,n=X(t);return a.jsx(nn,{...n,...o,ref:r})});bn.displayName=_c;var Ic="DropdownMenuArrow",Mc=c.forwardRef((e,r)=>{const{__scopeDropdownMenu:t,...o}=e,n=X(t);return a.jsx(an,{...n,...o,ref:r})});Mc.displayName=Ic;var Ec="DropdownMenuSubTrigger",yn=c.forwardRef((e,r)=>{const{__scopeDropdownMenu:t,...o}=e,n=X(t);return a.jsx(sn,{...n,...o,ref:r})});yn.displayName=Ec;var jc="DropdownMenuSubContent",wn=c.forwardRef((e,r)=>{const{__scopeDropdownMenu:t,...o}=e,n=X(t);return a.jsx(cn,{...n,...o,ref:r,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});wn.displayName=jc;var Cn=fn,Tc=vn,Pc=mn,Nc=gn,kc=hn,Sc=xn,Ac=bn,Dc=yn,Oc=wn;c.forwardRef(function(r,t){const{className:o,children:n,sideOffset:s=4,...i}=r;return a.jsx(Cn,{children:a.jsx(Tc,{ref:t,sideOffset:s,className:I("v8-dropdown-menu",o),style:{minWidth:180,background:"var(--surface-popover)",border:"1px solid var(--border)",borderRadius:"var(--radius)",boxShadow:"var(--shadow-3)",padding:"var(--space-1)",zIndex:"var(--z-popover)"},...i,children:n})})});c.forwardRef(function(r,t){const{className:o,children:n,shortcut:s,danger:i,leftIcon:l,disabled:u,...p}=r;return a.jsxs(Nc,{ref:t,disabled:u,className:I("v8-dropdown-menu__item",i&&"is-danger",o),style:{display:"flex",alignItems:"center",gap:"var(--space-2)",height:28,padding:"0 var(--space-2) 0 var(--space-3)",borderRadius:"var(--radius-sm)",fontSize:"var(--fs-13)",color:i===!0?"var(--danger)":"var(--fg)",cursor:u===!0?"not-allowed":"pointer",outline:0,userSelect:"none"},...p,children:[l!==void 0&&a.jsx("span",{style:{width:14,display:"inline-flex",color:"var(--fg-muted)"},children:l}),a.jsx("span",{style:{flex:1,minWidth:0},children:n}),s!==void 0&&a.jsx("span",{style:{fontFamily:"var(--font-mono)",fontSize:"var(--fs-12)",color:"var(--fg-muted)",marginLeft:"var(--space-2)"},children:s})]})});c.forwardRef(function(r,t){const{className:o,children:n,...s}=r;return a.jsxs(kc,{ref:t,className:I("v8-dropdown-menu__checkbox",o),style:{display:"flex",alignItems:"center",gap:"var(--space-2)",height:28,padding:"0 var(--space-3)",borderRadius:"var(--radius-sm)",fontSize:"var(--fs-13)",cursor:"pointer",outline:0},...s,children:[a.jsx(Sc,{style:{display:"inline-flex",color:"var(--accent)"},children:a.jsx(Er,{size:14,"aria-hidden":"true"})}),a.jsx("span",{children:n})]})});c.forwardRef(function(r,t){return a.jsx(Pc,{ref:t,style:{padding:"var(--space-2) var(--space-3) var(--space-1)",fontSize:"var(--fs-12)",fontWeight:600,color:"var(--fg-subtle)",textTransform:"uppercase",letterSpacing:"var(--tracking-wide)"},...r})});c.forwardRef(function(r,t){return a.jsx(Ac,{ref:t,style:{height:1,margin:"var(--space-1) 0",background:"var(--border)"},...r})});c.forwardRef(function(r,t){const{className:o,children:n,...s}=r;return a.jsxs(Dc,{ref:t,className:I("v8-dropdown-menu__sub-trigger",o),style:{display:"flex",alignItems:"center",gap:"var(--space-2)",height:28,padding:"0 var(--space-2) 0 var(--space-3)",borderRadius:"var(--radius-sm)",fontSize:"var(--fs-13)",cursor:"pointer",outline:0},...s,children:[a.jsx("span",{style:{flex:1},children:n}),a.jsx(Pt,{size:14,"aria-hidden":"true",style:{color:"var(--fg-muted)"}})]})});c.forwardRef(function(r,t){const{className:o,...n}=r;return a.jsx(Cn,{children:a.jsx(Oc,{ref:t,sideOffset:2,className:I("v8-dropdown-menu__sub-content",o),style:{minWidth:180,background:"var(--surface-popover)",border:"1px solid var(--border)",borderRadius:"var(--radius)",boxShadow:"var(--shadow-3)",padding:"var(--space-1)",zIndex:"var(--z-popover)"},...n})})});var Rn="ContextMenu",[Gc]=Z(Rn,[dt]),q=dt(),[hd,_n]=Gc(Rn),In="ContextMenuTrigger",Mn=c.forwardRef((e,r)=>{const{__scopeContextMenu:t,disabled:o=!1,...n}=e,s=_n(In,t),i=q(t),[l,u]=c.useState({x:0,y:0}),p=c.useMemo(()=>({current:{getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...l})}}),[l]),v=c.useRef(0),f=c.useCallback(()=>window.clearTimeout(v.current),[]),m=d=>{s.hasInteractedRef.current=!0,u({x:d.clientX,y:d.clientY}),s.onOpenChange(!0)};return c.useEffect(()=>f,[f]),c.useEffect(()=>void(o&&f()),[o,f]),a.jsxs(a.Fragment,{children:[a.jsx(Yo,{...i,virtualRef:p}),a.jsx(N.span,{"data-state":s.open?"open":"closed","data-disabled":o?"":void 0,...n,ref:r,style:{WebkitTouchCallout:"none",...e.style},onContextMenu:o?e.onContextMenu:R(e.onContextMenu,d=>{f(),m(d),d.preventDefault()}),onPointerDown:o?e.onPointerDown:R(e.onPointerDown,We(d=>{f(),s.open&&s.onOpenChange(!1),v.current=window.setTimeout(()=>m(d),700)})),onPointerMove:o?e.onPointerMove:R(e.onPointerMove,We(f)),onPointerCancel:o?e.onPointerCancel:R(e.onPointerCancel,We(f)),onPointerUp:o?e.onPointerUp:R(e.onPointerUp,We(f))})]})});Mn.displayName=In;var Fc="ContextMenuPortal",En=e=>{const{__scopeContextMenu:r,...t}=e,o=q(r);return a.jsx(Xo,{...o,...t})};En.displayName=Fc;var jn="ContextMenuContent",Tn=c.forwardRef((e,r)=>{const{__scopeContextMenu:t,...o}=e,n=_n(jn,t),s=q(t),i=c.useRef(!1);return a.jsx(qo,{...s,...o,ref:r,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:l=>{var u;(u=e.onCloseAutoFocus)==null||u.call(e,l),!l.defaultPrevented&&i.current&&l.preventDefault(),i.current=!1},onInteractOutside:l=>{var u;(u=e.onInteractOutside)==null||u.call(e,l),!l.defaultPrevented&&!n.modal&&(i.current=!0)},style:{...e.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});Tn.displayName=jn;var $c="ContextMenuGroup",Lc=c.forwardRef((e,r)=>{const{__scopeContextMenu:t,...o}=e,n=q(t);return a.jsx(Zo,{...n,...o,ref:r})});Lc.displayName=$c;var Bc="ContextMenuLabel",Pn=c.forwardRef((e,r)=>{const{__scopeContextMenu:t,...o}=e,n=q(t);return a.jsx(Jo,{...n,...o,ref:r})});Pn.displayName=Bc;var zc="ContextMenuItem",Nn=c.forwardRef((e,r)=>{const{__scopeContextMenu:t,...o}=e,n=q(t);return a.jsx(Qo,{...n,...o,ref:r})});Nn.displayName=zc;var Vc="ContextMenuCheckboxItem",Kc=c.forwardRef((e,r)=>{const{__scopeContextMenu:t,...o}=e,n=q(t);return a.jsx(en,{...n,...o,ref:r})});Kc.displayName=Vc;var Hc="ContextMenuRadioGroup",Uc=c.forwardRef((e,r)=>{const{__scopeContextMenu:t,...o}=e,n=q(t);return a.jsx(tn,{...n,...o,ref:r})});Uc.displayName=Hc;var Wc="ContextMenuRadioItem",Yc=c.forwardRef((e,r)=>{const{__scopeContextMenu:t,...o}=e,n=q(t);return a.jsx(rn,{...n,...o,ref:r})});Yc.displayName=Wc;var Xc="ContextMenuItemIndicator",qc=c.forwardRef((e,r)=>{const{__scopeContextMenu:t,...o}=e,n=q(t);return a.jsx(on,{...n,...o,ref:r})});qc.displayName=Xc;var Zc="ContextMenuSeparator",kn=c.forwardRef((e,r)=>{const{__scopeContextMenu:t,...o}=e,n=q(t);return a.jsx(nn,{...n,...o,ref:r})});kn.displayName=Zc;var Jc="ContextMenuArrow",Qc=c.forwardRef((e,r)=>{const{__scopeContextMenu:t,...o}=e,n=q(t);return a.jsx(an,{...n,...o,ref:r})});Qc.displayName=Jc;var el="ContextMenuSubTrigger",tl=c.forwardRef((e,r)=>{const{__scopeContextMenu:t,...o}=e,n=q(t);return a.jsx(sn,{...n,...o,ref:r})});tl.displayName=el;var rl="ContextMenuSubContent",ol=c.forwardRef((e,r)=>{const{__scopeContextMenu:t,...o}=e,n=q(t);return a.jsx(cn,{...n,...o,ref:r,style:{...e.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});ol.displayName=rl;function We(e){return r=>r.pointerType!=="mouse"?e(r):void 0}var nl=Mn,al=En,sl=Tn,il=Pn,cl=Nn,ll=kn;c.forwardRef(function(r,t){return a.jsx(nl,{ref:t,...r})});c.forwardRef(function(r,t){const{className:o,children:n,...s}=r;return a.jsx(al,{children:a.jsx(sl,{ref:t,className:I("v8-context-menu",o),style:{minWidth:200,background:"var(--surface-popover)",border:"1px solid var(--border)",borderRadius:"var(--radius)",boxShadow:"var(--shadow-3)",padding:"var(--space-1)",zIndex:"var(--z-popover)"},...s,children:n})})});c.forwardRef(function(r,t){const{className:o,children:n,shortcut:s,danger:i,leftIcon:l,disabled:u,...p}=r;return a.jsxs(cl,{ref:t,disabled:u,className:I("v8-context-menu__item",i&&"is-danger",o),style:{display:"flex",alignItems:"center",gap:"var(--space-2)",height:28,padding:"0 var(--space-2) 0 var(--space-3)",borderRadius:"var(--radius-sm)",fontSize:"var(--fs-13)",color:i===!0?"var(--danger)":"var(--fg)",cursor:u===!0?"not-allowed":"pointer",outline:0,userSelect:"none"},...p,children:[l!==void 0&&a.jsx("span",{style:{width:14,display:"inline-flex",color:"var(--fg-muted)"},children:l}),a.jsx("span",{style:{flex:1,minWidth:0},children:n}),s!==void 0&&a.jsx("span",{style:{fontFamily:"var(--font-mono)",fontSize:"var(--fs-12)",color:"var(--fg-muted)",marginLeft:"var(--space-2)"},children:s})]})});c.forwardRef(function(r,t){return a.jsx(ll,{ref:t,style:{height:1,margin:"var(--space-1) 0",background:"var(--border)"},...r})});c.forwardRef(function(r,t){return a.jsx(il,{ref:t,style:{padding:"var(--space-2) var(--space-3) var(--space-1)",fontSize:"var(--fs-12)",fontWeight:600,color:"var(--fg-subtle)",textTransform:"uppercase",letterSpacing:"var(--tracking-wide)"},...r})});const dl={top:{top:0,left:0,right:0,height:"60vh",borderBottom:"1px solid var(--border)",borderRadius:"0 0 var(--radius-lg) var(--radius-lg)"},right:{top:0,right:0,bottom:0,width:"min(560px, 100vw)",borderLeft:"1px solid var(--border)"},bottom:{bottom:0,left:0,right:0,height:"60vh",borderTop:"1px solid var(--border)",borderRadius:"var(--radius-lg) var(--radius-lg) 0 0"},left:{top:0,left:0,bottom:0,width:"min(560px, 100vw)",borderRight:"1px solid var(--border)"}};c.forwardRef(function(r,t){const{className:o,side:n="right",title:s,description:i,children:l,...u}=r;return a.jsxs(Ra,{children:[a.jsx(_a,{style:{position:"fixed",inset:0,background:"oklch(0 0 0 / 0.4)",zIndex:"var(--z-modal)"}}),a.jsxs(Ia,{ref:t,"data-side":n,className:I("v8-sheet",o),style:{position:"fixed",background:"var(--surface-popover)",padding:"var(--space-6)",overflow:"auto",boxShadow:"var(--shadow-4)",zIndex:"calc(var(--z-modal) + 1)",...dl[n]},...u,children:[a.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"var(--space-4)"},children:[a.jsxs("div",{children:[a.jsx(Ma,{style:{fontSize:"var(--fs-18)",fontWeight:600},children:s}),i!==void 0&&a.jsx(Ea,{style:{fontSize:"var(--fs-13)",color:"var(--fg-muted)",marginTop:"var(--space-1)"},children:i})]}),a.jsx(ja,{"aria-label":"Close",style:{width:28,height:28,display:"inline-flex",alignItems:"center",justifyContent:"center",background:"transparent",border:0,borderRadius:"var(--radius-sm)",color:"var(--fg-muted)",cursor:"pointer"},children:a.jsx(_r,{size:16,"aria-hidden":"true"})})]}),l]})]})});const ul={neutral:"var(--surface-1)",info:"color-mix(in oklch, var(--info) 14%, var(--surface-1))",success:"color-mix(in oklch, var(--success) 14%, var(--surface-1))",warning:"color-mix(in oklch, var(--warning) 14%, var(--surface-1))",danger:"color-mix(in oklch, var(--danger) 14%, var(--surface-1))",accent:"color-mix(in oklch, var(--accent) 14%, var(--surface-1))"},fl={neutral:"var(--border)",info:"color-mix(in oklch, var(--info) 30%, var(--border))",success:"color-mix(in oklch, var(--success) 30%, var(--border))",warning:"color-mix(in oklch, var(--warning) 30%, var(--border))",danger:"color-mix(in oklch, var(--danger) 30%, var(--border))",accent:"color-mix(in oklch, var(--accent) 30%, var(--border))"};c.forwardRef(function(r,t){const{tone:o="neutral",selected:n,onRemove:s,children:i,className:l,style:u,...p}=r,v=n!==void 0||s!==void 0;return a.jsxs("span",{ref:t,className:I("v8-chip",`v8-chip--${o}`,n===!0&&"is-selected",l),style:{display:"inline-flex",alignItems:"center",gap:"var(--space-1)",height:24,padding:"0 8px",background:n===!0?"color-mix(in oklch, var(--accent) 18%, var(--surface-1))":ul[o],border:"1px solid",borderColor:n===!0?"var(--accent)":fl[o],borderRadius:"var(--radius-pill)",fontSize:"var(--fs-12)",fontWeight:500,color:n===!0?"var(--accent)":"var(--fg)",cursor:v===!0?"pointer":"default",whiteSpace:"nowrap",...u},...p,children:[i,s!==void 0&&a.jsx("button",{type:"button",onClick:f=>{f.stopPropagation(),s()},"aria-label":"Remove",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:14,height:14,marginLeft:2,marginRight:-4,padding:0,background:"transparent",border:0,borderRadius:"var(--radius-sm)",color:"var(--fg-muted)",cursor:"pointer"},children:a.jsx(_r,{size:10,"aria-hidden":"true"})})]})});c.forwardRef(function(r,t){const{items:o,showValue:n=!0,barHeight:s=6,cap:i,className:l,style:u,...p}=r,v=i??Math.max(1,...o.map(f=>f.value));return a.jsx("div",{ref:t,className:I("v8-bar-list",l),style:{display:"flex",flexDirection:"column",gap:"var(--space-3)",...u},...p,children:o.map(f=>{const m=Math.min(100,f.value/v*100);return a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"var(--space-3)"},children:[f.leading!==void 0&&a.jsx("span",{style:{flexShrink:0},children:f.leading}),a.jsxs("div",{style:{flex:1,minWidth:0},children:[a.jsxs("div",{style:{display:"flex",justifyContent:"space-between",gap:"var(--space-2)",marginBottom:4},children:[a.jsx("span",{style:{fontSize:"var(--fs-13)",color:"var(--fg)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:f.label}),n===!0&&a.jsx("span",{style:{fontSize:"var(--fs-12)",color:"var(--fg-muted)",fontVariantNumeric:"tabular-nums",flexShrink:0},children:f.hint??f.value})]}),a.jsx("div",{style:{position:"relative",height:s,background:"var(--surface-2)",borderRadius:"var(--radius-pill)",overflow:"hidden"},children:a.jsx("div",{style:{position:"absolute",top:0,left:0,height:"100%",width:`${m}%`,background:f.color??"var(--accent)",borderRadius:"var(--radius-pill)",transition:"width var(--motion-base) var(--ease-out)"}})})]})]},f.id)})})});const pl={neutral:"var(--fg-subtle)",info:"var(--info)",success:"var(--success)",warning:"var(--warning)",danger:"var(--danger)",accent:"var(--accent)"},vl={neutral:"color-mix(in oklch, var(--fg-subtle) 30%, var(--surface-0))",info:"color-mix(in oklch, var(--info) 30%, var(--surface-0))",success:"color-mix(in oklch, var(--success) 30%, var(--surface-0))",warning:"color-mix(in oklch, var(--warning) 30%, var(--surface-0))",danger:"color-mix(in oklch, var(--danger) 30%, var(--surface-0))",accent:"color-mix(in oklch, var(--accent) 30%, var(--surface-0))"};c.forwardRef(function(r,t){const{items:o,className:n,style:s,...i}=r;return a.jsx("ol",{ref:t,className:I("v8-timeline",n),style:{listStyle:"none",margin:0,padding:0,...s},...i,children:o.map((l,u)=>{const p=l.tone??"neutral",v=u===o.length-1;return a.jsxs("li",{style:{position:"relative",display:"grid",gridTemplateColumns:"20px 1fr",gap:"var(--space-3)",paddingBottom:v?0:"var(--space-4)"},children:[a.jsxs("span",{"aria-hidden":"true",style:{position:"relative",width:20,display:"flex",justifyContent:"center"},children:[!v&&a.jsx("span",{style:{position:"absolute",top:16,bottom:-16,width:1,background:"var(--border)"}}),a.jsx("span",{style:{position:"relative",width:14,height:14,borderRadius:"var(--radius-pill)",background:pl[p],boxShadow:`0 0 0 3px ${vl[p]}`,display:"inline-flex",alignItems:"center",justifyContent:"center",marginTop:4,fontSize:10,color:"var(--bg)"},children:l.icon})]}),a.jsxs("div",{children:[a.jsxs("div",{style:{display:"flex",alignItems:"baseline",justifyContent:"space-between",gap:"var(--space-2)"},children:[a.jsx("div",{style:{fontSize:"var(--fs-13)",fontWeight:500,color:"var(--fg)"},children:l.title}),l.meta!==void 0&&a.jsx("div",{style:{fontSize:"var(--fs-12)",color:"var(--fg-subtle)",flexShrink:0},children:l.meta})]}),l.description!==void 0&&a.jsx("div",{style:{fontSize:"var(--fs-13)",color:"var(--fg-muted)",marginTop:2},children:l.description})]})]},l.id)})})});var ft="Collapsible",[ml,Sn]=Z(ft),[gl,Zt]=ml(ft),An=c.forwardRef((e,r)=>{const{__scopeCollapsible:t,open:o,defaultOpen:n,disabled:s,onOpenChange:i,...l}=e,[u,p]=le({prop:o,defaultProp:n??!1,onChange:i,caller:ft});return a.jsx(gl,{scope:t,disabled:s,contentId:Le(),open:u,onOpenToggle:c.useCallback(()=>p(v=>!v),[p]),children:a.jsx(N.div,{"data-state":Qt(u),"data-disabled":s?"":void 0,...l,ref:r})})});An.displayName=ft;var Dn="CollapsibleTrigger",On=c.forwardRef((e,r)=>{const{__scopeCollapsible:t,...o}=e,n=Zt(Dn,t);return a.jsx(N.button,{type:"button","aria-controls":n.open?n.contentId:void 0,"aria-expanded":n.open||!1,"data-state":Qt(n.open),"data-disabled":n.disabled?"":void 0,disabled:n.disabled,...o,ref:r,onClick:R(e.onClick,n.onOpenToggle)})});On.displayName=Dn;var Jt="CollapsibleContent",Gn=c.forwardRef((e,r)=>{const{forceMount:t,...o}=e,n=Zt(Jt,e.__scopeCollapsible);return a.jsx(te,{present:t||n.open,children:({present:s})=>a.jsx(hl,{...o,ref:r,present:s})})});Gn.displayName=Jt;var hl=c.forwardRef((e,r)=>{const{__scopeCollapsible:t,present:o,children:n,...s}=e,i=Zt(Jt,t),[l,u]=c.useState(o),p=c.useRef(null),v=L(r,p),f=c.useRef(0),m=f.current,d=c.useRef(0),b=d.current,w=i.open||l,C=c.useRef(w),y=c.useRef(void 0);return c.useEffect(()=>{const x=requestAnimationFrame(()=>C.current=!1);return()=>cancelAnimationFrame(x)},[]),hr(()=>{const x=p.current;if(x){y.current=y.current||{transitionDuration:x.style.transitionDuration,animationName:x.style.animationName},x.style.transitionDuration="0s",x.style.animationName="none";const M=x.getBoundingClientRect();f.current=M.height,d.current=M.width,C.current||(x.style.transitionDuration=y.current.transitionDuration,x.style.animationName=y.current.animationName),u(o)}},[i.open,o]),a.jsx(N.div,{"data-state":Qt(i.open),"data-disabled":i.disabled?"":void 0,id:i.contentId,hidden:!w,...s,ref:v,style:{"--radix-collapsible-content-height":m?`${m}px`:void 0,"--radix-collapsible-content-width":b?`${b}px`:void 0,...e.style},children:w&&n})});function Qt(e){return e?"open":"closed"}var xl=An,bl=On,yl=Gn,de="Accordion",wl=["Home","End","ArrowDown","ArrowUp","ArrowLeft","ArrowRight"],[er,Cl,Rl]=Nt(de),[pt]=Z(de,[Rl,Sn]),tr=Sn(),Fn=c.forwardRef((e,r)=>{const{type:t,...o}=e,n=o,s=o;return a.jsx(er.Provider,{scope:e.__scopeAccordion,children:t==="multiple"?a.jsx(El,{...s,ref:r}):a.jsx(Ml,{...n,ref:r})})});Fn.displayName=de;var[$n,_l]=pt(de),[Ln,Il]=pt(de,{collapsible:!1}),Ml=c.forwardRef((e,r)=>{const{value:t,defaultValue:o,onValueChange:n=()=>{},collapsible:s=!1,...i}=e,[l,u]=le({prop:t,defaultProp:o??"",onChange:n,caller:de});return a.jsx($n,{scope:e.__scopeAccordion,value:c.useMemo(()=>l?[l]:[],[l]),onItemOpen:u,onItemClose:c.useCallback(()=>s&&u(""),[s,u]),children:a.jsx(Ln,{scope:e.__scopeAccordion,collapsible:s,children:a.jsx(Bn,{...i,ref:r})})})}),El=c.forwardRef((e,r)=>{const{value:t,defaultValue:o,onValueChange:n=()=>{},...s}=e,[i,l]=le({prop:t,defaultProp:o??[],onChange:n,caller:de}),u=c.useCallback(v=>l((f=[])=>[...f,v]),[l]),p=c.useCallback(v=>l((f=[])=>f.filter(m=>m!==v)),[l]);return a.jsx($n,{scope:e.__scopeAccordion,value:i,onItemOpen:u,onItemClose:p,children:a.jsx(Ln,{scope:e.__scopeAccordion,collapsible:!0,children:a.jsx(Bn,{...s,ref:r})})})}),[jl,vt]=pt(de),Bn=c.forwardRef((e,r)=>{const{__scopeAccordion:t,disabled:o,dir:n,orientation:s="vertical",...i}=e,l=c.useRef(null),u=L(l,r),p=Cl(t),f=Be(n)==="ltr",m=R(e.onKeyDown,d=>{var $;if(!wl.includes(d.key))return;const b=d.target,w=p().filter(V=>{var U;return!((U=V.ref.current)!=null&&U.disabled)}),C=w.findIndex(V=>V.ref.current===b),y=w.length;if(C===-1)return;d.preventDefault();let x=C;const M=0,E=y-1,T=()=>{x=C+1,x>E&&(x=M)},P=()=>{x=C-1,x<M&&(x=E)};switch(d.key){case"Home":x=M;break;case"End":x=E;break;case"ArrowRight":s==="horizontal"&&(f?T():P());break;case"ArrowDown":s==="vertical"&&T();break;case"ArrowLeft":s==="horizontal"&&(f?P():T());break;case"ArrowUp":s==="vertical"&&P();break}const F=x%y;($=w[F].ref.current)==null||$.focus()});return a.jsx(jl,{scope:t,disabled:o,direction:n,orientation:s,children:a.jsx(er.Slot,{scope:t,children:a.jsx(N.div,{...i,"data-orientation":s,ref:u,onKeyDown:o?void 0:m})})})}),Ze="AccordionItem",[Tl,rr]=pt(Ze),zn=c.forwardRef((e,r)=>{const{__scopeAccordion:t,value:o,...n}=e,s=vt(Ze,t),i=_l(Ze,t),l=tr(t),u=Le(),p=o&&i.value.includes(o)||!1,v=s.disabled||e.disabled;return a.jsx(Tl,{scope:t,open:p,disabled:v,triggerId:u,children:a.jsx(xl,{"data-orientation":s.orientation,"data-state":Yn(p),...l,...n,ref:r,disabled:v,open:p,onOpenChange:f=>{f?i.onItemOpen(o):i.onItemClose(o)}})})});zn.displayName=Ze;var Vn="AccordionHeader",Kn=c.forwardRef((e,r)=>{const{__scopeAccordion:t,...o}=e,n=vt(de,t),s=rr(Vn,t);return a.jsx(N.h3,{"data-orientation":n.orientation,"data-state":Yn(s.open),"data-disabled":s.disabled?"":void 0,...o,ref:r})});Kn.displayName=Vn;var Et="AccordionTrigger",Hn=c.forwardRef((e,r)=>{const{__scopeAccordion:t,...o}=e,n=vt(de,t),s=rr(Et,t),i=Il(Et,t),l=tr(t);return a.jsx(er.ItemSlot,{scope:t,children:a.jsx(bl,{"aria-disabled":s.open&&!i.collapsible||void 0,"data-orientation":n.orientation,id:s.triggerId,...l,...o,ref:r})})});Hn.displayName=Et;var Un="AccordionContent",Wn=c.forwardRef((e,r)=>{const{__scopeAccordion:t,...o}=e,n=vt(de,t),s=rr(Un,t),i=tr(t);return a.jsx(yl,{role:"region","aria-labelledby":s.triggerId,"data-orientation":n.orientation,...i,...o,ref:r,style:{"--radix-accordion-content-height":"var(--radix-collapsible-content-height)","--radix-accordion-content-width":"var(--radix-collapsible-content-width)",...e.style}})});Wn.displayName=Un;function Yn(e){return e?"open":"closed"}var gr=Fn,Pl=zn,Nl=Kn,kl=Hn,Sl=Wn;c.forwardRef(function(r,t){const{type:o,defaultValue:n,value:s,onValueChange:i,children:l,className:u,...p}=r;return o==="single"?a.jsx(gr,{ref:t,type:"single",collapsible:!0,defaultValue:n,value:s,onValueChange:i,className:I("v8-accordion",u),...p,children:l}):a.jsx(gr,{ref:t,type:"multiple",defaultValue:n,value:s,onValueChange:i,className:I("v8-accordion",u),...p,children:l})});c.forwardRef(function(r,t){const{value:o,title:n,description:s,children:i,disabled:l,className:u}=r;return a.jsxs(Pl,{ref:t,value:o,disabled:l,className:I("v8-accordion__item",u),style:{borderBottom:"1px solid var(--border)"},children:[a.jsx(Nl,{asChild:!0,children:a.jsx("h3",{style:{margin:0},children:a.jsxs(kl,{style:{width:"100%",display:"flex",alignItems:"center",justifyContent:"space-between",gap:"var(--space-3)",padding:"var(--space-4) 0",background:"transparent",border:0,cursor:l===!0?"not-allowed":"pointer",fontFamily:"inherit",fontSize:"var(--fs-14)",fontWeight:500,color:"var(--fg)",textAlign:"left"},children:[a.jsxs("span",{style:{flex:1,minWidth:0},children:[a.jsx("span",{style:{display:"block"},children:n}),s!==void 0&&a.jsx("span",{style:{display:"block",fontSize:"var(--fs-13)",color:"var(--fg-muted)",marginTop:2},children:s})]}),a.jsx(Da,{size:16,"aria-hidden":"true",className:"v8-accordion__chevron",style:{color:"var(--fg-muted)",flexShrink:0,transition:"transform var(--motion-fast) var(--ease-out)"}}),a.jsx("style",{children:`
30
- .v8-accordion__item button[data-state='open'] .v8-accordion__chevron { transform: rotate(180deg); }
31
- `})]})})}),a.jsx(Sl,{style:{overflow:"hidden",fontSize:"var(--fs-13)",color:"var(--fg-muted)"},children:a.jsx("div",{style:{paddingBottom:"var(--space-4)"},children:i})})]})});c.forwardRef(function(r,t){const{children:o,density:n="comfortable",className:s,...i}=r;return a.jsx("div",{style:{border:"1px solid var(--border)",borderRadius:"var(--radius-lg)",overflow:"hidden",background:"var(--surface-1)"},children:a.jsx("table",{ref:t,className:I("v8-table",`v8-table--${n}`,s),style:{width:"100%",borderCollapse:"separate",borderSpacing:0,fontSize:"var(--fs-13)",color:"var(--fg)"},...i,children:o})})});c.forwardRef(function(r,t){const{children:o,...n}=r;return a.jsx("thead",{ref:t,style:{background:"var(--surface-0)",borderBottom:"1px solid var(--border)",textAlign:"left",fontSize:"var(--fs-12)",fontWeight:600,color:"var(--fg-muted)",textTransform:"uppercase",letterSpacing:"var(--tracking-wide)"},...n,children:o})});c.forwardRef(function(r,t){return a.jsx("tbody",{ref:t,...r})});c.forwardRef(function(r,t){const{selected:o,striped:n,className:s,style:i,...l}=r;return a.jsx("tr",{ref:t,className:I("v8-table__row",o&&"is-selected",s),style:{background:o===!0?"var(--accent-soft)":n===!0?"var(--surface-0)":"transparent",borderBottom:"1px solid var(--border)",transition:"background var(--motion-fast) var(--ease-out)",...i},...l})});c.forwardRef(function(r,t){const{align:o="left",width:n,className:s,style:i,...l}=r;return a.jsx("th",{ref:t,className:I("v8-table__th",s),style:{padding:"var(--space-2) var(--space-3)",textAlign:o,width:n,...i},...l})});c.forwardRef(function(r,t){const{align:o="left",rowHeight:n=!0,className:s,style:i,...l}=r;return a.jsx("td",{ref:t,className:I("v8-table__td",s),style:{padding:"var(--space-2) var(--space-3)",textAlign:o,height:n===!0?"var(--density-row-h)":void 0,verticalAlign:"middle",...i},...l})});var mt="Tabs",[Al]=Z(mt,[xe]),Xn=xe(),[Dl,or]=Al(mt),qn=c.forwardRef((e,r)=>{const{__scopeTabs:t,value:o,onValueChange:n,defaultValue:s,orientation:i="horizontal",dir:l,activationMode:u="automatic",...p}=e,v=Be(l),[f,m]=le({prop:o,onChange:n,defaultProp:s??"",caller:mt});return a.jsx(Dl,{scope:t,baseId:Le(),value:f,onValueChange:m,orientation:i,dir:v,activationMode:u,children:a.jsx(N.div,{dir:v,"data-orientation":i,...p,ref:r})})});qn.displayName=mt;var Zn="TabsList",Jn=c.forwardRef((e,r)=>{const{__scopeTabs:t,loop:o=!0,...n}=e,s=or(Zn,t),i=Xn(t);return a.jsx(tt,{asChild:!0,...i,orientation:s.orientation,dir:s.dir,loop:o,children:a.jsx(N.div,{role:"tablist","aria-orientation":s.orientation,...n,ref:r})})});Jn.displayName=Zn;var Qn="TabsTrigger",ea=c.forwardRef((e,r)=>{const{__scopeTabs:t,value:o,disabled:n=!1,...s}=e,i=or(Qn,t),l=Xn(t),u=oa(i.baseId,o),p=na(i.baseId,o),v=o===i.value;return a.jsx(rt,{asChild:!0,...l,focusable:!n,active:v,children:a.jsx(N.button,{type:"button",role:"tab","aria-selected":v,"aria-controls":p,"data-state":v?"active":"inactive","data-disabled":n?"":void 0,disabled:n,id:u,...s,ref:r,onMouseDown:R(e.onMouseDown,f=>{!n&&f.button===0&&f.ctrlKey===!1?i.onValueChange(o):f.preventDefault()}),onKeyDown:R(e.onKeyDown,f=>{n||f.target!==f.currentTarget||[" ","Enter"].includes(f.key)&&i.onValueChange(o)}),onFocus:R(e.onFocus,()=>{const f=i.activationMode!=="manual";!v&&!n&&f&&i.onValueChange(o)})})})});ea.displayName=Qn;var ta="TabsContent",ra=c.forwardRef((e,r)=>{const{__scopeTabs:t,value:o,forceMount:n,children:s,...i}=e,l=or(ta,t),u=oa(l.baseId,o),p=na(l.baseId,o),v=o===l.value,f=c.useRef(v);return c.useEffect(()=>{const m=requestAnimationFrame(()=>f.current=!1);return()=>cancelAnimationFrame(m)},[]),a.jsx(te,{present:n||v,children:({present:m})=>a.jsx(N.div,{"data-state":v?"active":"inactive","data-orientation":l.orientation,role:"tabpanel","aria-labelledby":u,hidden:!m,id:p,tabIndex:0,...i,ref:r,style:{...e.style,animationDuration:f.current?"0s":void 0},children:m&&s})})});ra.displayName=ta;function oa(e,r){return`${e}-trigger-${r}`}function na(e,r){return`${e}-content-${r}`}var Ol=qn,Gl=Jn,Fl=ea,$l=ra;c.forwardRef(function(r,t){const{variant:o="underline",className:n,...s}=r;return a.jsx(Ol,{ref:t,className:I("v8-tabs",`v8-tabs--${o}`,n),...s})});c.forwardRef(function(r,t){const{variant:o="underline",className:n,style:s,...i}=r;return a.jsx(Gl,{ref:t,className:I("v8-tabs__list",n),style:{display:"inline-flex",alignItems:"center",gap:o==="pill"?4:0,borderBottom:o==="underline"?"1px solid var(--border)":"none",padding:o==="pill"?4:0,background:o==="pill"?"var(--surface-1)":"transparent",borderRadius:o==="pill"?"var(--radius)":0,border:o==="pill"?"1px solid var(--border)":void 0,...s},...i})});c.forwardRef(function(r,t){const{variant:o="underline",className:n,style:s,...i}=r;return a.jsxs(Fl,{ref:t,className:I("v8-tabs__trigger",n),style:{display:"inline-flex",alignItems:"center",gap:"var(--space-2)",height:o==="pill"?28:32,padding:"0 var(--space-3)",background:"transparent",color:"var(--fg-muted)",border:0,borderBottom:o==="underline"?"2px solid transparent":"none",borderRadius:o==="pill"?"var(--radius-sm)":0,marginBottom:o==="underline"?-1:0,fontSize:"var(--fs-13)",fontWeight:500,cursor:"pointer",fontFamily:"inherit",transition:"color var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out)",...s},...i,children:[r.children,a.jsx("style",{children:`
32
- .v8-tabs__trigger[data-state='active'] {
33
- color: var(--fg);
34
- }
35
- .v8-tabs--underline .v8-tabs__trigger[data-state='active'] {
36
- border-bottom-color: var(--accent);
37
- }
38
- .v8-tabs--pill .v8-tabs__trigger[data-state='active'] {
39
- background: var(--surface-2);
40
- color: var(--fg);
41
- }
42
- .v8-tabs__trigger:hover:not([data-state='active']) {
43
- color: var(--fg);
44
- }
45
- `})]})});c.forwardRef(function(r,t){const{className:o,...n}=r;return a.jsx($l,{ref:t,className:I("v8-tabs__content",o),style:{paddingTop:"var(--space-4)"},...n})});c.forwardRef(function(r,t){const{href:o,children:n,showActiveBar:s,leading:i,className:l,style:u,...p}=r;return a.jsxs("a",{ref:t,href:o,className:I("v8-nav-link",l),style:{position:"relative",display:"flex",alignItems:"center",gap:"var(--space-2)",padding:"0 var(--space-3)",height:28,borderRadius:"var(--radius-sm)",color:"var(--fg-muted)",fontSize:"var(--fs-13)",fontWeight:500,textDecoration:"none",transition:"background var(--motion-fast) var(--ease-out), color var(--motion-fast) var(--ease-out)",...u},...p,children:[s===!0&&a.jsx("span",{"aria-hidden":"true",style:{position:"absolute",left:0,top:4,bottom:4,width:2,borderRadius:"var(--radius-pill)",background:"transparent",transition:"background var(--motion-fast) var(--ease-out)"},"data-nav-active-bar":"true"}),i!==void 0&&a.jsx("span",{style:{width:14,display:"inline-flex",color:"inherit"},children:i}),a.jsx("span",{style:{flex:1,minWidth:0},children:n}),a.jsx("style",{children:`
46
- .v8-nav-link:hover {
47
- background: var(--surface-1);
48
- color: var(--fg);
49
- }
50
- .v8-nav-link[aria-current='page'] {
51
- background: var(--surface-1);
52
- color: var(--fg);
53
- }
54
- .v8-nav-link[aria-current='page'] [data-nav-active-bar='true'] {
55
- background: var(--accent);
56
- }
57
- `})]})});function Ll(e,r,t){if(r<=7)return Array.from({length:r},(i,l)=>l+1);const o=Math.max(2,e-t),n=Math.min(r-1,e+t),s=[1];o>2&&s.push("ellipsis");for(let i=o;i<=n;i++)s.push(i);return n<r-1&&s.push("ellipsis"),s.push(r),s}c.forwardRef(function(r,t){const{page:o,totalPages:n,onChange:s,showEdges:i=!0,siblingCount:l=1,className:u,style:p,...v}=r,f=Ll(o,n,l),m=d=>{d>=1&&d<=n&&d!==o&&s(d)};return a.jsxs("nav",{ref:t,className:I("v8-pagination",u),"aria-label":"Pagination",style:{display:"inline-flex",alignItems:"center",gap:2,...p},...v,children:[i===!0&&a.jsx(De,{"aria-label":"First page",disabled:o===1,onClick:()=>m(1),children:a.jsx(Ta,{size:14,"aria-hidden":"true"})}),a.jsx(De,{"aria-label":"Previous page",disabled:o===1,onClick:()=>m(o-1),children:a.jsx(La,{size:14,"aria-hidden":"true"})}),f.map((d,b)=>d==="ellipsis"?a.jsx("span",{style:{padding:"0 6px",color:"var(--fg-subtle)",fontSize:"var(--fs-13)"},"aria-hidden":"true",children:"…"},`e-${b}`):a.jsx(De,{"aria-current":d===o?"page":void 0,"aria-label":`Page ${d}`,selected:d===o,onClick:()=>m(d),children:d},d)),a.jsx(De,{"aria-label":"Next page",disabled:o===n,onClick:()=>m(o+1),children:a.jsx(Pt,{size:14,"aria-hidden":"true"})}),i===!0&&a.jsx(De,{"aria-label":"Last page",disabled:o===n,onClick:()=>m(n),children:a.jsx(Pa,{size:14,"aria-hidden":"true"})})]})});function De(e){const{selected:r,disabled:t,children:o,className:n,style:s,...i}=e;return a.jsxs("button",{type:"button",disabled:t,className:I("v8-pagination__btn",r===!0&&"is-selected",n),style:{display:"inline-flex",alignItems:"center",justifyContent:"center",minWidth:28,height:28,padding:"0 8px",background:r===!0?"var(--accent-soft)":"transparent",color:r===!0?"var(--accent)":"var(--fg-muted)",border:0,borderRadius:"var(--radius-sm)",fontSize:"var(--fs-13)",fontWeight:r===!0?600:500,cursor:t===!0?"not-allowed":"pointer",opacity:t===!0?.45:1,fontFamily:"inherit",transition:"background var(--motion-fast) var(--ease-out), color var(--motion-fast) var(--ease-out)",...s},...i,children:[o,a.jsx("style",{children:`
58
- .v8-pagination__btn:hover:not(:disabled):not(.is-selected) {
59
- background: var(--surface-1);
60
- color: var(--fg);
61
- }
62
- `})]})}const Bl={enabled:"Enabled",disabled:"Disabled",error:"Error"},zl={enabled:"success",disabled:"neutral",error:"danger"};function Vl(e){const{name:r,slug:t,status:o,description:n,meta:s,actions:i,onOpen:l,className:u}=e;return a.jsxs("button",{type:"button",onClick:l,className:I("v8-library-item",`v8-library-item--${o}`,u),style:{display:"flex",alignItems:"flex-start",gap:"var(--space-3)",width:"100%",padding:"var(--space-3) var(--space-4)",background:"var(--surface-1)",border:"1px solid var(--border)",borderRadius:"var(--radius)",textAlign:"left",cursor:l!==void 0?"pointer":"default",font:"inherit",color:"inherit",transition:"border-color var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out)"},children:[a.jsx("span",{"aria-hidden":"true",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:28,height:28,marginTop:2,borderRadius:"var(--radius-sm)",background:o==="enabled"?"color-mix(in oklch, var(--success) 14%, transparent)":o==="error"?"color-mix(in oklch, var(--danger) 14%, transparent)":"var(--surface-2)",color:o==="enabled"?"var(--success)":o==="error"?"var(--danger)":"var(--fg-muted)",flexShrink:0},children:a.jsx(Va,{size:14,"aria-hidden":"true"})}),a.jsxs("div",{style:{flex:1,minWidth:0},children:[a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"var(--space-2)"},children:[a.jsx("span",{style:{fontSize:"var(--fs-13)",fontWeight:600,color:"var(--fg)",lineHeight:"var(--lh-snug)"},children:r}),a.jsx("code",{style:{fontSize:"var(--fs-12)",color:"var(--fg-subtle)",fontFamily:"var(--font-mono, ui-monospace, monospace)"},children:t})]}),n!==void 0&&a.jsx("div",{style:{fontSize:"var(--fs-12)",color:"var(--fg-muted)",marginTop:2,display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden"},children:n}),a.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:"var(--space-2)",marginTop:6},children:[s!==void 0?a.jsx("span",{style:{fontSize:"var(--fs-12)",color:"var(--fg-subtle)"},children:s}):a.jsx("span",{}),a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"var(--space-2)"},children:[a.jsx($a,{tone:zl[o],size:"sm",children:Bl[o]}),i,a.jsx(Pt,{size:14,"aria-hidden":"true",style:{color:"var(--fg-subtle)"}})]})]})]}),a.jsx("style",{children:`
63
- .v8-library-item:hover {
64
- border-color: var(--accent);
65
- background: var(--surface-2);
66
- }
67
- `})]})}function Kl(e){const{children:r,className:t}=e;return a.jsx("div",{className:I("v8-library-grid",t),style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(min(100%, 320px), 1fr))",gap:"var(--space-3)"},children:r})}const Hl={skills:"Skills",mcps:"MCPs",hooks:"Hooks"},Ul={skills:"Bizar skill packs. Auto-loaded by name or dispatched via the Skill tool.",mcps:"MCP server registrations under `.claude/mcp.json`.",hooks:"Executable hook scripts (PreToolUse / PostToolUse / SessionStart / SessionEnd)."};function xd(e){const{kind:r,items:t}=e;return a.jsxs(Na,{gap:5,children:[a.jsx(ka,{title:Hl[r],description:Ul[r]}),a.jsx(Kl,{children:t.map(o=>a.jsx(Vl,{...o},o.id))})]})}export{xd as LibrariesView};