@polderlabs/bizar 9.0.0 → 10.0.7

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 (1306) hide show
  1. package/bizar-dash/BROWSER_VERIFICATION.md +190 -0
  2. package/bizar-dash/CHANGELOG.md +572 -0
  3. package/bizar-dash/CONTROL_SURFACES.md +157 -0
  4. package/bizar-dash/SETTINGS_AUDIT.md +225 -0
  5. package/bizar-dash/dist/assets/ActivityFeed-Da-JCrE6.js +11 -0
  6. package/bizar-dash/dist/assets/ActivityFeed-Da-JCrE6.js.map +1 -0
  7. package/bizar-dash/dist/assets/ActivityView-nIRsSETb.js +2 -0
  8. package/bizar-dash/dist/assets/ActivityView-nIRsSETb.js.map +1 -0
  9. package/bizar-dash/dist/assets/AdminView-DP1NMxmG.js +11 -0
  10. package/bizar-dash/dist/assets/AdminView-DP1NMxmG.js.map +1 -0
  11. package/bizar-dash/dist/assets/AgentActivity-lSPkOr-O.js +67 -0
  12. package/bizar-dash/dist/assets/AgentActivity-lSPkOr-O.js.map +1 -0
  13. package/bizar-dash/dist/assets/AgentsView-BIWGkz7w.js +13 -0
  14. package/bizar-dash/dist/assets/AgentsView-BIWGkz7w.js.map +1 -0
  15. package/bizar-dash/dist/assets/Alert-DN0UysMg.js +6 -0
  16. package/bizar-dash/dist/assets/Alert-DN0UysMg.js.map +1 -0
  17. package/bizar-dash/dist/assets/ArtifactsView-CDIhPBAx.js +6 -0
  18. package/bizar-dash/dist/assets/ArtifactsView-CDIhPBAx.js.map +1 -0
  19. package/bizar-dash/dist/assets/AuthView-DW5cs7ma.js +16 -0
  20. package/bizar-dash/dist/assets/AuthView-DW5cs7ma.js.map +1 -0
  21. package/bizar-dash/dist/assets/Avatar-DZPv9pvd.js +6 -0
  22. package/bizar-dash/dist/assets/Avatar-DZPv9pvd.js.map +1 -0
  23. package/bizar-dash/dist/assets/BackgroundJobsView-D8O-EyMD.js +1 -0
  24. package/bizar-dash/dist/assets/BackgroundJobsView-D8O-EyMD.js.map +1 -0
  25. package/bizar-dash/dist/assets/BackupView-uwXkhxOV.js +1 -0
  26. package/bizar-dash/dist/assets/BackupView-uwXkhxOV.js.map +1 -0
  27. package/bizar-dash/dist/assets/Card-Tyboihu7.js +1 -0
  28. package/bizar-dash/dist/assets/Card-Tyboihu7.js.map +1 -0
  29. package/bizar-dash/dist/assets/ChatView-DRBHzgay.js +9 -0
  30. package/bizar-dash/dist/assets/ChatView-DRBHzgay.js.map +1 -0
  31. package/bizar-dash/dist/assets/Chip-BrXIlR9w.js +1 -0
  32. package/bizar-dash/dist/assets/Chip-BrXIlR9w.js.map +1 -0
  33. package/bizar-dash/dist/assets/ClaudeSessionsView-Ck62jaOr.js +1 -0
  34. package/bizar-dash/dist/assets/ClaudeSessionsView-Ck62jaOr.js.map +1 -0
  35. package/bizar-dash/dist/assets/ClipboardView-DfND6xL6.js +1 -0
  36. package/bizar-dash/dist/assets/ClipboardView-DfND6xL6.js.map +1 -0
  37. package/bizar-dash/dist/assets/ConfigView-DjJmSrOJ.js +1 -0
  38. package/bizar-dash/dist/assets/ConfigView-DjJmSrOJ.js.map +1 -0
  39. package/bizar-dash/dist/assets/DiagnosticsView-CKgItf0J.js +2 -0
  40. package/bizar-dash/dist/assets/DiagnosticsView-CKgItf0J.js.map +1 -0
  41. package/bizar-dash/dist/assets/DialogsView-DHYF8dE1.js +6 -0
  42. package/bizar-dash/dist/assets/DialogsView-DHYF8dE1.js.map +1 -0
  43. package/bizar-dash/dist/assets/DoctorView-DDLHrSKk.js +6 -0
  44. package/bizar-dash/dist/assets/DoctorView-DDLHrSKk.js.map +1 -0
  45. package/bizar-dash/dist/assets/EmptyState-DZ2ouKwd.js +1 -0
  46. package/bizar-dash/dist/assets/EmptyState-DZ2ouKwd.js.map +1 -0
  47. package/bizar-dash/dist/assets/EnvVarsView-D1cx83mB.js +8 -0
  48. package/bizar-dash/dist/assets/EnvVarsView-D1cx83mB.js.map +1 -0
  49. package/bizar-dash/dist/assets/ErrorState-DwwJ2-Jq.js +1 -0
  50. package/bizar-dash/dist/assets/ErrorState-DwwJ2-Jq.js.map +1 -0
  51. package/bizar-dash/dist/assets/EvalView-C9aYixXW.js +1 -0
  52. package/bizar-dash/dist/assets/EvalView-C9aYixXW.js.map +1 -0
  53. package/bizar-dash/dist/assets/GoalsView-DZa_mGmh.js +6 -0
  54. package/bizar-dash/dist/assets/GoalsView-DZa_mGmh.js.map +1 -0
  55. package/bizar-dash/dist/assets/Grid-CiRyhAgR.js +1 -0
  56. package/bizar-dash/dist/assets/Grid-CiRyhAgR.js.map +1 -0
  57. package/bizar-dash/dist/assets/HeadroomView-CNc-TI7u.js +11 -0
  58. package/bizar-dash/dist/assets/HeadroomView-CNc-TI7u.js.map +1 -0
  59. package/bizar-dash/dist/assets/HistoryView-Dv7aPxJE.js +1 -0
  60. package/bizar-dash/dist/assets/HistoryView-Dv7aPxJE.js.map +1 -0
  61. package/bizar-dash/dist/assets/Input-BbFUDQnS.js +1 -0
  62. package/bizar-dash/dist/assets/Input-BbFUDQnS.js.map +1 -0
  63. package/bizar-dash/dist/assets/LibrariesView-DBQ83TNa.js +6 -0
  64. package/bizar-dash/dist/assets/LibrariesView-DBQ83TNa.js.map +1 -0
  65. package/bizar-dash/dist/assets/LightRAGView-JYpE5u9p.js +6 -0
  66. package/bizar-dash/dist/assets/LightRAGView-JYpE5u9p.js.map +1 -0
  67. package/bizar-dash/dist/assets/ListHeader-BGjm11Z0.js +1 -0
  68. package/bizar-dash/dist/assets/ListHeader-BGjm11Z0.js.map +1 -0
  69. package/bizar-dash/dist/assets/MemoryView-CnOP2MvM.js +8 -0
  70. package/bizar-dash/dist/assets/MemoryView-CnOP2MvM.js.map +1 -0
  71. package/bizar-dash/dist/assets/MessageBubble-5vUAquDx.js +29 -0
  72. package/bizar-dash/dist/assets/MessageBubble-5vUAquDx.js.map +1 -0
  73. package/bizar-dash/dist/assets/MiscView-BBcpUbZZ.js +1 -0
  74. package/bizar-dash/dist/assets/MiscView-BBcpUbZZ.js.map +1 -0
  75. package/bizar-dash/dist/assets/ModsView-CU4cAmIz.js +6 -0
  76. package/bizar-dash/dist/assets/ModsView-CU4cAmIz.js.map +1 -0
  77. package/bizar-dash/dist/assets/NotificationsView-BYffvthq.js +6 -0
  78. package/bizar-dash/dist/assets/NotificationsView-BYffvthq.js.map +1 -0
  79. package/bizar-dash/dist/assets/ObsidianView-D3bI0row.js +1 -0
  80. package/bizar-dash/dist/assets/ObsidianView-D3bI0row.js.map +1 -0
  81. package/bizar-dash/dist/assets/OverviewView-0tq8f-Y0.js +1 -0
  82. package/bizar-dash/dist/assets/OverviewView-0tq8f-Y0.js.map +1 -0
  83. package/bizar-dash/dist/assets/ProgressBar-B-h60LKA.js +1 -0
  84. package/bizar-dash/dist/assets/ProgressBar-B-h60LKA.js.map +1 -0
  85. package/bizar-dash/dist/assets/ProjectsView-DhX5lzHS.js +11 -0
  86. package/bizar-dash/dist/assets/ProjectsView-DhX5lzHS.js.map +1 -0
  87. package/bizar-dash/dist/assets/ProvidersView-CJMX7jm9.js +11 -0
  88. package/bizar-dash/dist/assets/ProvidersView-CJMX7jm9.js.map +1 -0
  89. package/bizar-dash/dist/assets/SchedulesView-CcwDQ9Nm.js +1 -0
  90. package/bizar-dash/dist/assets/SchedulesView-CcwDQ9Nm.js.map +1 -0
  91. package/bizar-dash/dist/assets/Select-Cw7Qtz2M.js +6 -0
  92. package/bizar-dash/dist/assets/Select-Cw7Qtz2M.js.map +1 -0
  93. package/bizar-dash/dist/assets/SettingsRow-DgsgbPSI.js +1 -0
  94. package/bizar-dash/dist/assets/SettingsRow-DgsgbPSI.js.map +1 -0
  95. package/bizar-dash/dist/assets/SettingsView-DTAFdKyK.js +18 -0
  96. package/bizar-dash/dist/assets/SettingsView-DTAFdKyK.js.map +1 -0
  97. package/bizar-dash/dist/assets/Sheet-DH-WNJ3Y.js +1 -0
  98. package/bizar-dash/dist/assets/Sheet-DH-WNJ3Y.js.map +1 -0
  99. package/bizar-dash/dist/assets/Slider-DXbJuQ7y.js +1 -0
  100. package/bizar-dash/dist/assets/Slider-DXbJuQ7y.js.map +1 -0
  101. package/bizar-dash/dist/assets/Sparkline-CYtAn82j.js +1 -0
  102. package/bizar-dash/dist/assets/Sparkline-CYtAn82j.js.map +1 -0
  103. package/bizar-dash/dist/assets/Switch-BItGrPqr.js +10 -0
  104. package/bizar-dash/dist/assets/Switch-BItGrPqr.js.map +1 -0
  105. package/bizar-dash/dist/assets/TasksView-i5tm6CkX.js +6 -0
  106. package/bizar-dash/dist/assets/TasksView-i5tm6CkX.js.map +1 -0
  107. package/bizar-dash/dist/assets/Textarea-qYDf3yds.js +1 -0
  108. package/bizar-dash/dist/assets/Textarea-qYDf3yds.js.map +1 -0
  109. package/bizar-dash/dist/assets/UpdateView-Xln-ej26.js +6 -0
  110. package/bizar-dash/dist/assets/UpdateView-Xln-ej26.js.map +1 -0
  111. package/bizar-dash/dist/assets/UsageView-BGuZSUZ6.js +1 -0
  112. package/bizar-dash/dist/assets/UsageView-BGuZSUZ6.js.map +1 -0
  113. package/bizar-dash/dist/assets/ViewHeader-BqIPVKuG.js +6 -0
  114. package/bizar-dash/dist/assets/ViewHeader-BqIPVKuG.js.map +1 -0
  115. package/bizar-dash/dist/assets/VoiceView-CWUOCQs_.js +1 -0
  116. package/bizar-dash/dist/assets/VoiceView-CWUOCQs_.js.map +1 -0
  117. package/bizar-dash/dist/assets/brain-fsBSDl2g.js +6 -0
  118. package/bizar-dash/dist/assets/brain-fsBSDl2g.js.map +1 -0
  119. package/bizar-dash/dist/assets/calendar-DsHTZoCU.js +6 -0
  120. package/bizar-dash/dist/assets/calendar-DsHTZoCU.js.map +1 -0
  121. package/bizar-dash/dist/assets/circle-CqSxqqeJ.js +6 -0
  122. package/bizar-dash/dist/assets/circle-CqSxqqeJ.js.map +1 -0
  123. package/bizar-dash/dist/assets/circle-alert-BsLl001l.js +6 -0
  124. package/bizar-dash/dist/assets/circle-alert-BsLl001l.js.map +1 -0
  125. package/bizar-dash/dist/assets/circle-check-rVKMQmZp.js +6 -0
  126. package/bizar-dash/dist/assets/circle-check-rVKMQmZp.js.map +1 -0
  127. package/bizar-dash/dist/assets/clock-OuficfgH.js +6 -0
  128. package/bizar-dash/dist/assets/clock-OuficfgH.js.map +1 -0
  129. package/bizar-dash/dist/assets/cmdk-DVxytz9i.js +80 -0
  130. package/bizar-dash/dist/assets/cmdk-DVxytz9i.js.map +1 -0
  131. package/bizar-dash/dist/assets/dnd-kit-DrHErSkw.js +5 -0
  132. package/bizar-dash/dist/assets/dnd-kit-DrHErSkw.js.map +1 -0
  133. package/bizar-dash/dist/assets/download-BdHlstUY.js +6 -0
  134. package/bizar-dash/dist/assets/download-BdHlstUY.js.map +1 -0
  135. package/bizar-dash/dist/assets/external-link-DA3_VGm-.js +6 -0
  136. package/bizar-dash/dist/assets/external-link-DA3_VGm-.js.map +1 -0
  137. package/bizar-dash/dist/assets/file-text-B-g8H227.js +6 -0
  138. package/bizar-dash/dist/assets/file-text-B-g8H227.js.map +1 -0
  139. package/bizar-dash/dist/assets/filter-D9B8s5CG.js +6 -0
  140. package/bizar-dash/dist/assets/filter-D9B8s5CG.js.map +1 -0
  141. package/bizar-dash/dist/assets/git-pull-request-ByH0YuVz.js +11 -0
  142. package/bizar-dash/dist/assets/git-pull-request-ByH0YuVz.js.map +1 -0
  143. package/bizar-dash/dist/assets/index-C4Vq_2LM.js +1 -0
  144. package/bizar-dash/dist/assets/index-C4Vq_2LM.js.map +1 -0
  145. package/bizar-dash/dist/assets/index-CASP1n-5.js +1 -0
  146. package/bizar-dash/dist/assets/index-CASP1n-5.js.map +1 -0
  147. package/bizar-dash/dist/assets/main-CdOm1Pj9.js +249 -0
  148. package/bizar-dash/dist/assets/main-CdOm1Pj9.js.map +1 -0
  149. package/bizar-dash/dist/assets/pause-C9hgd8wX.js +6 -0
  150. package/bizar-dash/dist/assets/pause-C9hgd8wX.js.map +1 -0
  151. package/bizar-dash/dist/assets/pencil-BanqaMw7.js +6 -0
  152. package/bizar-dash/dist/assets/pencil-BanqaMw7.js.map +1 -0
  153. package/bizar-dash/dist/assets/play-CawUZ02_.js +6 -0
  154. package/bizar-dash/dist/assets/play-CawUZ02_.js.map +1 -0
  155. package/bizar-dash/dist/assets/plug-Cmv0-T_e.js +6 -0
  156. package/bizar-dash/dist/assets/plug-Cmv0-T_e.js.map +1 -0
  157. package/bizar-dash/dist/assets/plus-M6LYiKX8.js +6 -0
  158. package/bizar-dash/dist/assets/plus-M6LYiKX8.js.map +1 -0
  159. package/bizar-dash/dist/assets/power-DP5x_SRF.js +6 -0
  160. package/bizar-dash/dist/assets/power-DP5x_SRF.js.map +1 -0
  161. package/bizar-dash/dist/assets/power-off-NOJRLAIs.js +6 -0
  162. package/bizar-dash/dist/assets/power-off-NOJRLAIs.js.map +1 -0
  163. package/bizar-dash/dist/assets/refresh-ccw-CHMprsm5.js +6 -0
  164. package/bizar-dash/dist/assets/refresh-ccw-CHMprsm5.js.map +1 -0
  165. package/bizar-dash/dist/assets/refresh-cw-1RBqDKgJ.js +6 -0
  166. package/bizar-dash/dist/assets/refresh-cw-1RBqDKgJ.js.map +1 -0
  167. package/bizar-dash/dist/assets/rotate-ccw-DJRekBbi.js +6 -0
  168. package/bizar-dash/dist/assets/rotate-ccw-DJRekBbi.js.map +1 -0
  169. package/bizar-dash/dist/assets/rotate-cw-DHooc0Tx.js +6 -0
  170. package/bizar-dash/dist/assets/rotate-cw-DHooc0Tx.js.map +1 -0
  171. package/bizar-dash/dist/assets/save-DQKCKyZK.js +6 -0
  172. package/bizar-dash/dist/assets/save-DQKCKyZK.js.map +1 -0
  173. package/bizar-dash/dist/assets/send-xgy3RAi7.js +6 -0
  174. package/bizar-dash/dist/assets/send-xgy3RAi7.js.map +1 -0
  175. package/bizar-dash/dist/assets/shield-alert-CWV2F5ab.js +6 -0
  176. package/bizar-dash/dist/assets/shield-alert-CWV2F5ab.js.map +1 -0
  177. package/bizar-dash/dist/assets/trash-2-CL4khSRv.js +6 -0
  178. package/bizar-dash/dist/assets/trash-2-CL4khSRv.js.map +1 -0
  179. package/bizar-dash/dist/assets/trending-up-CSJJhWTS.js +6 -0
  180. package/bizar-dash/dist/assets/trending-up-CSJJhWTS.js.map +1 -0
  181. package/bizar-dash/dist/assets/triangle-alert-BPLb7uLt.js +6 -0
  182. package/bizar-dash/dist/assets/triangle-alert-BPLb7uLt.js.map +1 -0
  183. package/bizar-dash/dist/assets/upload-Cww6MvFq.js +6 -0
  184. package/bizar-dash/dist/assets/upload-Cww6MvFq.js.map +1 -0
  185. package/bizar-dash/dist/assets/zap-DmhVUzRA.js +6 -0
  186. package/bizar-dash/dist/assets/zap-DmhVUzRA.js.map +1 -0
  187. package/bizar-dash/dist/index.html +19 -0
  188. package/bizar-dash/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -1
  189. package/bizar-dash/src/server/agents-store.mjs +1 -0
  190. package/bizar-dash/src/server/api.mjs +7 -2
  191. package/bizar-dash/src/server/artifact-mint.mjs +69 -0
  192. package/bizar-dash/src/server/claude-runner.mjs +5 -0
  193. package/bizar-dash/src/server/dialog-store.mjs +84 -2
  194. package/bizar-dash/src/server/memory-lightrag.mjs +14 -9
  195. package/bizar-dash/src/server/progress-parser.mjs +13 -1
  196. package/bizar-dash/src/server/progress-parser.test.mjs +24 -0
  197. package/bizar-dash/src/server/routes/activity.mjs +22 -2
  198. package/bizar-dash/src/server/routes/admin.mjs +163 -0
  199. package/bizar-dash/src/server/routes/agents-cc.mjs +196 -26
  200. package/bizar-dash/src/server/routes/agents.mjs +20 -5
  201. package/bizar-dash/src/server/routes/claude-session-detail.mjs +38 -0
  202. package/bizar-dash/src/server/routes/dialogs.mjs +49 -1
  203. package/bizar-dash/src/server/routes/goals.mjs +125 -4
  204. package/bizar-dash/src/server/routes/overview.mjs +131 -4
  205. package/bizar-dash/src/server/routes/overview.test.mjs +65 -0
  206. package/bizar-dash/src/server/routes/providers.mjs +53 -0
  207. package/bizar-dash/src/server/routes/skills.mjs +6 -1
  208. package/bizar-dash/src/server/routes/tasks.mjs +51 -1
  209. package/bizar-dash/src/server/server.mjs +20 -9
  210. package/bizar-dash/src/server/skills-store.mjs +2 -0
  211. package/bizar-dash/src/web/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -1
  212. package/bizar-dash/src/web/v8/App.tsx +113 -1
  213. package/bizar-dash/src/web/v8/__tests__/admin-view.test.tsx +105 -0
  214. package/bizar-dash/src/web/v8/__tests__/agent-card-metrics.test.tsx +54 -0
  215. package/bizar-dash/src/web/v8/__tests__/agent-detail-tasks.test.tsx +68 -0
  216. package/bizar-dash/src/web/v8/__tests__/agent-hierarchy.test.tsx +79 -0
  217. package/bizar-dash/src/web/v8/__tests__/agents-stuck-banner.test.tsx +142 -0
  218. package/bizar-dash/src/web/v8/__tests__/artifacts-view.test.tsx +102 -0
  219. package/bizar-dash/src/web/v8/__tests__/audit-fixes.test.tsx +139 -0
  220. package/bizar-dash/src/web/v8/__tests__/auth-view.test.tsx +94 -0
  221. package/bizar-dash/src/web/v8/__tests__/chat-types.test.ts +55 -0
  222. package/bizar-dash/src/web/v8/__tests__/chat-view.test.tsx +142 -0
  223. package/bizar-dash/src/web/v8/__tests__/claude-sessions-view.test.tsx +159 -0
  224. package/bizar-dash/src/web/v8/__tests__/clipboard-view.test.tsx +90 -0
  225. package/bizar-dash/src/web/v8/__tests__/config-view.test.tsx +111 -0
  226. package/bizar-dash/src/web/v8/__tests__/dialogs-view.test.tsx +81 -0
  227. package/bizar-dash/src/web/v8/__tests__/env-vars-view.test.tsx +123 -0
  228. package/bizar-dash/src/web/v8/__tests__/goals-cc-roundtrip.test.tsx +94 -0
  229. package/bizar-dash/src/web/v8/__tests__/history-view.test.tsx +96 -0
  230. package/bizar-dash/src/web/v8/__tests__/lightrag-view.test.tsx +90 -0
  231. package/bizar-dash/src/web/v8/__tests__/misc-view.test.tsx +79 -0
  232. package/bizar-dash/src/web/v8/__tests__/mods-view.test.tsx +123 -0
  233. package/bizar-dash/src/web/v8/__tests__/new-views.test.tsx +177 -0
  234. package/bizar-dash/src/web/v8/__tests__/obsidian-view.test.tsx +82 -0
  235. package/bizar-dash/src/web/v8/__tests__/overview-trends.test.tsx +87 -0
  236. package/bizar-dash/src/web/v8/__tests__/projects-view.test.tsx +134 -0
  237. package/bizar-dash/src/web/v8/__tests__/providers-view.test.tsx +100 -0
  238. package/bizar-dash/src/web/v8/__tests__/update-view.test.tsx +89 -0
  239. package/bizar-dash/src/web/v8/__tests__/voice-view.test.tsx +80 -0
  240. package/bizar-dash/src/web/v8/data/types.ts +86 -3
  241. package/bizar-dash/src/web/v8/data/useViewNavigate.ts +54 -0
  242. package/bizar-dash/src/web/v8/data/useWebSocket.ts +45 -0
  243. package/bizar-dash/src/web/v8/shell/Sidebar.tsx +111 -14
  244. package/bizar-dash/src/web/v8/shell/Topbar.tsx +100 -8
  245. package/bizar-dash/src/web/v8/ui/activity/ActivityLane.tsx +315 -0
  246. package/bizar-dash/src/web/v8/ui/activity/ActivityLanes.tsx +51 -0
  247. package/bizar-dash/src/web/v8/ui/agents/AgentCard.tsx +96 -15
  248. package/bizar-dash/src/web/v8/ui/agents/AgentDetail.tsx +168 -12
  249. package/bizar-dash/src/web/v8/ui/agents/AgentLiveOutput.tsx +252 -0
  250. package/bizar-dash/src/web/v8/ui/chat/ChatDrawer.tsx +208 -0
  251. package/bizar-dash/src/web/v8/ui/chat/EventStream.tsx +83 -0
  252. package/bizar-dash/src/web/v8/ui/chat/MessageBubble.tsx +174 -0
  253. package/bizar-dash/src/web/v8/ui/data/ListHeader.tsx +94 -0
  254. package/bizar-dash/src/web/v8/ui/feedback/ErrorState.tsx +116 -0
  255. package/bizar-dash/src/web/v8/ui/goals/GoalDetail.tsx +27 -0
  256. package/bizar-dash/src/web/v8/ui/index.ts +49 -2
  257. package/bizar-dash/src/web/v8/ui/kanban/KanbanBoard.tsx +61 -27
  258. package/bizar-dash/src/web/v8/ui/kanban/KanbanCard.tsx +156 -12
  259. package/bizar-dash/src/web/v8/ui/kanban/KanbanColumn.tsx +5 -10
  260. package/bizar-dash/src/web/v8/ui/kanban/KanbanContextMenu.tsx +4 -0
  261. package/bizar-dash/src/web/v8/ui/kanban/KanbanDetailDialog.tsx +638 -0
  262. package/bizar-dash/src/web/v8/ui/tasks/TaskDetail.tsx +313 -0
  263. package/bizar-dash/src/web/v8/views/Activity/ActivityView.tsx +203 -178
  264. package/bizar-dash/src/web/v8/views/Admin/AdminView.tsx +210 -0
  265. package/bizar-dash/src/web/v8/views/Agents/AgentHierarchy.tsx +212 -0
  266. package/bizar-dash/src/web/v8/views/Agents/AgentsView.tsx +328 -21
  267. package/bizar-dash/src/web/v8/views/Artifacts/ArtifactsView.tsx +241 -0
  268. package/bizar-dash/src/web/v8/views/Auth/AuthView.tsx +175 -0
  269. package/bizar-dash/src/web/v8/views/BackgroundJobs/BackgroundJobsView.tsx +1 -1
  270. package/bizar-dash/src/web/v8/views/Backup/BackupView.tsx +204 -0
  271. package/bizar-dash/src/web/v8/views/Chat/ChatView.tsx +356 -0
  272. package/bizar-dash/src/web/v8/views/ClaudeSessions/ClaudeSessionDetail.tsx +133 -0
  273. package/bizar-dash/src/web/v8/views/ClaudeSessions/ClaudeSessionsView.tsx +331 -0
  274. package/bizar-dash/src/web/v8/views/Clipboard/ClipboardView.tsx +210 -0
  275. package/bizar-dash/src/web/v8/views/Config/ConfigView.tsx +364 -0
  276. package/bizar-dash/src/web/v8/views/Diagnostics/DiagnosticsView.tsx +160 -0
  277. package/bizar-dash/src/web/v8/views/Dialogs/DialogsView.tsx +196 -0
  278. package/bizar-dash/src/web/v8/views/Doctor/DoctorView.tsx +181 -0
  279. package/bizar-dash/src/web/v8/views/EnvVars/EnvVarsView.tsx +365 -0
  280. package/bizar-dash/src/web/v8/views/Eval/EvalView.tsx +278 -0
  281. package/bizar-dash/src/web/v8/views/Goals/GoalsView.tsx +168 -10
  282. package/bizar-dash/src/web/v8/views/Headroom/HeadroomView.tsx +201 -0
  283. package/bizar-dash/src/web/v8/views/History/HistoryView.tsx +227 -0
  284. package/bizar-dash/src/web/v8/views/Libraries/LibrariesView.tsx +13 -3
  285. package/bizar-dash/src/web/v8/views/LightRAG/LightRAGView.tsx +183 -0
  286. package/bizar-dash/src/web/v8/views/Memory/MemoryView.tsx +30 -3
  287. package/bizar-dash/src/web/v8/views/Misc/MiscView.tsx +159 -0
  288. package/bizar-dash/src/web/v8/views/Mods/ModsView.tsx +348 -0
  289. package/bizar-dash/src/web/v8/views/Notifications/NotificationsView.tsx +178 -0
  290. package/bizar-dash/src/web/v8/views/Obsidian/ObsidianView.tsx +193 -0
  291. package/bizar-dash/src/web/v8/views/Overview/OverviewView.tsx +114 -11
  292. package/bizar-dash/src/web/v8/views/Projects/ProjectsView.tsx +253 -0
  293. package/bizar-dash/src/web/v8/views/Providers/ProvidersView.tsx +371 -0
  294. package/bizar-dash/src/web/v8/views/Router.tsx +125 -0
  295. package/bizar-dash/src/web/v8/views/Schedules/SchedulesView.tsx +46 -14
  296. package/bizar-dash/src/web/v8/views/Settings/SettingsView.tsx +322 -29
  297. package/bizar-dash/src/web/v8/views/Tasks/TasksView.tsx +229 -10
  298. package/bizar-dash/src/web/v8/views/Update/UpdateView.tsx +270 -0
  299. package/bizar-dash/src/web/v8/views/Usage/UsageView.tsx +210 -0
  300. package/bizar-dash/src/web/v8/views/Voice/VoiceView.tsx +192 -0
  301. package/bizar-dash/tests/tasks-patch-routes.test.mjs +194 -0
  302. package/bizar-dash/vite.config.ts +11 -3
  303. package/cli/__tests__/esm-no-require.test.mjs +97 -0
  304. package/cli/commands/tailscale.mjs +1 -3
  305. package/cli/commands/voice.mjs +2 -2
  306. package/cli/service-env.mjs +4 -5
  307. package/package.json +13 -3
  308. package/packages/sdk/dist/agent-registry.d.ts +134 -0
  309. package/packages/sdk/dist/agent-registry.js +228 -0
  310. package/packages/sdk/dist/consensus/byzantine.d.ts +159 -0
  311. package/packages/sdk/dist/consensus/byzantine.js +507 -0
  312. package/packages/sdk/dist/consensus/index.d.ts +60 -0
  313. package/packages/sdk/dist/consensus/index.js +76 -0
  314. package/packages/sdk/dist/consensus/queen.d.ts +86 -0
  315. package/packages/sdk/dist/consensus/queen.js +158 -0
  316. package/packages/sdk/dist/consensus/types.d.ts +155 -0
  317. package/packages/sdk/dist/consensus/types.js +29 -0
  318. package/packages/sdk/dist/dangerous-patterns.d.ts +27 -0
  319. package/packages/sdk/dist/dangerous-patterns.js +107 -0
  320. package/packages/sdk/dist/federation/audit.d.ts +71 -0
  321. package/packages/sdk/dist/federation/audit.js +133 -0
  322. package/packages/sdk/dist/federation/budget.d.ts +111 -0
  323. package/packages/sdk/dist/federation/budget.js +227 -0
  324. package/packages/sdk/dist/federation/envelope.d.ts +83 -0
  325. package/packages/sdk/dist/federation/envelope.js +92 -0
  326. package/packages/sdk/dist/federation/hmac.d.ts +61 -0
  327. package/packages/sdk/dist/federation/hmac.js +120 -0
  328. package/packages/sdk/dist/federation/index.d.ts +108 -0
  329. package/packages/sdk/dist/federation/index.js +275 -0
  330. package/packages/sdk/dist/federation/pii.d.ts +72 -0
  331. package/packages/sdk/dist/federation/pii.js +178 -0
  332. package/packages/sdk/dist/federation/policy.d.ts +50 -0
  333. package/packages/sdk/dist/federation/policy.js +76 -0
  334. package/packages/sdk/dist/federation/trust.d.ts +80 -0
  335. package/packages/sdk/dist/federation/trust.js +126 -0
  336. package/packages/sdk/dist/fingerprint.d.ts +18 -0
  337. package/packages/sdk/dist/fingerprint.js +0 -0
  338. package/packages/sdk/dist/index.d.ts +25 -0
  339. package/packages/sdk/dist/index.js +25 -0
  340. package/packages/sdk/dist/mcp/bin.d.ts +16 -0
  341. package/packages/sdk/dist/mcp/bin.js +46 -0
  342. package/packages/sdk/dist/mcp/server.d.ts +105 -0
  343. package/packages/sdk/dist/mcp/server.js +682 -0
  344. package/packages/sdk/dist/memory/index.d.ts +43 -0
  345. package/packages/sdk/dist/memory/index.js +159 -0
  346. package/packages/sdk/dist/router/codemod-intent.d.ts +68 -0
  347. package/packages/sdk/dist/router/codemod-intent.js +112 -0
  348. package/packages/sdk/dist/router/index.d.ts +100 -0
  349. package/packages/sdk/dist/router/index.js +149 -0
  350. package/packages/sdk/dist/router/memory-distillation.d.ts +58 -0
  351. package/packages/sdk/dist/router/memory-distillation.js +195 -0
  352. package/packages/sdk/dist/router/model-router.d.ts +83 -0
  353. package/packages/sdk/dist/router/model-router.js +207 -0
  354. package/packages/sdk/dist/router/q-learning-router.d.ts +85 -0
  355. package/packages/sdk/dist/router/q-learning-router.js +273 -0
  356. package/packages/sdk/dist/swarm-topology.d.ts +87 -0
  357. package/packages/sdk/dist/swarm-topology.js +219 -0
  358. package/packages/sdk/dist/version.d.ts +5 -0
  359. package/packages/sdk/dist/version.js +5 -0
  360. package/packages/sdk/package.json +1 -1
  361. package/plugins/bizar/dist/index.d.ts +25 -0
  362. package/plugins/bizar/dist/index.js +32 -0
  363. package/plugins/bizar/package.json +18 -0
  364. package/.claude/CLAUDE.md +0 -15
  365. package/.claude/agents/_shared/AGENT_BASELINE.md +0 -168
  366. package/.claude/agents/_shared/CLAUDE_TOOLS.md +0 -412
  367. package/.claude/agents/_shared/SKILLS.md +0 -109
  368. package/.claude/agents/agent-browser.md +0 -80
  369. package/.claude/agents/baldr.md +0 -49
  370. package/.claude/agents/forseti.md +0 -51
  371. package/.claude/agents/frigg.md +0 -42
  372. package/.claude/agents/heimdall.md +0 -33
  373. package/.claude/agents/hermod.md +0 -53
  374. package/.claude/agents/mimir.md +0 -49
  375. package/.claude/agents/odin.md +0 -287
  376. package/.claude/agents/quick.md +0 -34
  377. package/.claude/agents/semble-search.md +0 -50
  378. package/.claude/agents/thor.md +0 -53
  379. package/.claude/agents/tyr.md +0 -56
  380. package/.claude/agents/vidarr.md +0 -54
  381. package/.claude/agents/vor.md +0 -53
  382. package/.claude/commands/audit.md +0 -25
  383. package/.claude/commands/bizar.md +0 -22
  384. package/.claude/commands/explain.md +0 -17
  385. package/.claude/commands/goal.md +0 -98
  386. package/.claude/commands/init.md +0 -29
  387. package/.claude/commands/learn.md +0 -44
  388. package/.claude/commands/plan.md +0 -35
  389. package/.claude/commands/plow-through.md +0 -50
  390. package/.claude/commands/pr-review.md +0 -49
  391. package/.claude/commands/setup-provider.md +0 -96
  392. package/.claude/commands/tailscale-serve.md +0 -100
  393. package/.claude/commands/team.md +0 -132
  394. package/.claude/commands/test.md +0 -62
  395. package/.claude/commands/validate.md +0 -68
  396. package/.claude/commands/visual-plan.md +0 -24
  397. package/.claude/hooks/README.md +0 -92
  398. package/.claude/hooks/posttooluse-editwrite.mjs +0 -91
  399. package/.claude/hooks/pretooluse-bash.mjs +0 -81
  400. package/.claude/hooks/pretooluse-editwrite.mjs +0 -139
  401. package/.claude/hooks/sessionend-recall.mjs +0 -74
  402. package/.claude/hooks/sessionstart-prime.mjs +0 -80
  403. package/.claude/hooks/userpromptsubmit-tag.mjs +0 -80
  404. package/.claude/hooks/worker-suggest.mjs +0 -110
  405. package/.claude/settings.json +0 -125
  406. package/.claude/settings.local.json +0 -7
  407. package/.claude/skills/9router/SKILL.md +0 -80
  408. package/.claude/skills/9router-chat/SKILL.md +0 -73
  409. package/.claude/skills/9router-embeddings/SKILL.md +0 -69
  410. package/.claude/skills/9router-image/SKILL.md +0 -86
  411. package/.claude/skills/9router-stt/SKILL.md +0 -79
  412. package/.claude/skills/9router-tts/SKILL.md +0 -80
  413. package/.claude/skills/9router-web-fetch/SKILL.md +0 -99
  414. package/.claude/skills/9router-web-search/SKILL.md +0 -91
  415. package/.claude/skills/bizar/README.md +0 -9
  416. package/.claude/skills/bizar/SKILL.md +0 -450
  417. package/.claude/skills/cpp-coding-standards/README.md +0 -28
  418. package/.claude/skills/cpp-coding-standards/SKILL.md +0 -634
  419. package/.claude/skills/cpp-coding-standards/references/concurrency.md +0 -320
  420. package/.claude/skills/cpp-coding-standards/references/error-handling.md +0 -229
  421. package/.claude/skills/cpp-coding-standards/references/memory-safety.md +0 -216
  422. package/.claude/skills/cpp-coding-standards/references/modern-idioms.md +0 -282
  423. package/.claude/skills/cpp-coding-standards/references/review-checklist.md +0 -96
  424. package/.claude/skills/cpp-testing/README.md +0 -28
  425. package/.claude/skills/cpp-testing/SKILL.md +0 -304
  426. package/.claude/skills/cpp-testing/references/coverage.md +0 -370
  427. package/.claude/skills/cpp-testing/references/framework-compare.md +0 -175
  428. package/.claude/skills/cpp-testing/references/host-test-for-embedded.md +0 -499
  429. package/.claude/skills/cpp-testing/references/mocking.md +0 -364
  430. package/.claude/skills/cpp-testing/references/tdd-workflow.md +0 -308
  431. package/.claude/skills/cubesandbox/SKILL.md +0 -148
  432. package/.claude/skills/embedded-esp-idf/README.md +0 -41
  433. package/.claude/skills/embedded-esp-idf/SKILL.md +0 -439
  434. package/.claude/skills/embedded-esp-idf/references/freertos-patterns.md +0 -214
  435. package/.claude/skills/embedded-esp-idf/references/host-tests.md +0 -164
  436. package/.claude/skills/embedded-esp-idf/references/idf-py-commands.md +0 -157
  437. package/.claude/skills/embedded-esp-idf/references/kconfig.md +0 -159
  438. package/.claude/skills/embedded-esp-idf/references/logging-discipline.md +0 -118
  439. package/.claude/skills/embedded-esp-idf/references/memory-and-iram.md +0 -137
  440. package/.claude/skills/embedded-esp-idf/references/nvs.md +0 -121
  441. package/.claude/skills/embedded-esp-idf/references/packed-structs.md +0 -192
  442. package/.claude/skills/embedded-esp-idf/scripts/idf_env.sh +0 -47
  443. package/.claude/skills/embedded-esp-idf/scripts/size_check.sh +0 -77
  444. package/.claude/skills/glyph/SKILL.md +0 -163
  445. package/.claude/skills/harness-engineering/SKILL.md +0 -143
  446. package/.claude/skills/lightrag/SKILL.md +0 -81
  447. package/.claude/skills/memory-protocol/SKILL.md +0 -105
  448. package/.claude/skills/obsidian/SKILL.md +0 -306
  449. package/.claude/skills/read-the-damn-docs/SKILL.md +0 -113
  450. package/.claude/skills/self-improvement/SKILL.md +0 -64
  451. package/.claude/worktrees/kanban-overhaul/.claude/CLAUDE.md +0 -15
  452. package/.claude/worktrees/kanban-overhaul/.claude/agents/_shared/AGENT_BASELINE.md +0 -168
  453. package/.claude/worktrees/kanban-overhaul/.claude/agents/_shared/CLAUDE_TOOLS.md +0 -412
  454. package/.claude/worktrees/kanban-overhaul/.claude/agents/_shared/SKILLS.md +0 -109
  455. package/.claude/worktrees/kanban-overhaul/.claude/agents/agent-browser.md +0 -80
  456. package/.claude/worktrees/kanban-overhaul/.claude/agents/baldr.md +0 -49
  457. package/.claude/worktrees/kanban-overhaul/.claude/agents/forseti.md +0 -51
  458. package/.claude/worktrees/kanban-overhaul/.claude/agents/frigg.md +0 -42
  459. package/.claude/worktrees/kanban-overhaul/.claude/agents/heimdall.md +0 -33
  460. package/.claude/worktrees/kanban-overhaul/.claude/agents/hermod.md +0 -53
  461. package/.claude/worktrees/kanban-overhaul/.claude/agents/mimir.md +0 -49
  462. package/.claude/worktrees/kanban-overhaul/.claude/agents/odin.md +0 -287
  463. package/.claude/worktrees/kanban-overhaul/.claude/agents/quick.md +0 -34
  464. package/.claude/worktrees/kanban-overhaul/.claude/agents/semble-search.md +0 -50
  465. package/.claude/worktrees/kanban-overhaul/.claude/agents/thor.md +0 -53
  466. package/.claude/worktrees/kanban-overhaul/.claude/agents/tyr.md +0 -56
  467. package/.claude/worktrees/kanban-overhaul/.claude/agents/vidarr.md +0 -54
  468. package/.claude/worktrees/kanban-overhaul/.claude/agents/vor.md +0 -53
  469. package/.claude/worktrees/kanban-overhaul/.claude/commands/audit.md +0 -25
  470. package/.claude/worktrees/kanban-overhaul/.claude/commands/bizar.md +0 -22
  471. package/.claude/worktrees/kanban-overhaul/.claude/commands/explain.md +0 -17
  472. package/.claude/worktrees/kanban-overhaul/.claude/commands/init.md +0 -29
  473. package/.claude/worktrees/kanban-overhaul/.claude/commands/learn.md +0 -44
  474. package/.claude/worktrees/kanban-overhaul/.claude/commands/plan.md +0 -35
  475. package/.claude/worktrees/kanban-overhaul/.claude/commands/plow-through.md +0 -50
  476. package/.claude/worktrees/kanban-overhaul/.claude/commands/pr-review.md +0 -49
  477. package/.claude/worktrees/kanban-overhaul/.claude/commands/setup-provider.md +0 -96
  478. package/.claude/worktrees/kanban-overhaul/.claude/commands/tailscale-serve.md +0 -100
  479. package/.claude/worktrees/kanban-overhaul/.claude/commands/team.md +0 -132
  480. package/.claude/worktrees/kanban-overhaul/.claude/commands/test.md +0 -62
  481. package/.claude/worktrees/kanban-overhaul/.claude/commands/validate.md +0 -68
  482. package/.claude/worktrees/kanban-overhaul/.claude/commands/visual-plan.md +0 -24
  483. package/.claude/worktrees/kanban-overhaul/.claude/hooks/README.md +0 -92
  484. package/.claude/worktrees/kanban-overhaul/.claude/hooks/posttooluse-editwrite.mjs +0 -91
  485. package/.claude/worktrees/kanban-overhaul/.claude/hooks/pretooluse-bash.mjs +0 -81
  486. package/.claude/worktrees/kanban-overhaul/.claude/hooks/pretooluse-editwrite.mjs +0 -139
  487. package/.claude/worktrees/kanban-overhaul/.claude/hooks/sessionend-recall.mjs +0 -74
  488. package/.claude/worktrees/kanban-overhaul/.claude/hooks/sessionstart-prime.mjs +0 -80
  489. package/.claude/worktrees/kanban-overhaul/.claude/hooks/userpromptsubmit-tag.mjs +0 -80
  490. package/.claude/worktrees/kanban-overhaul/.claude/hooks/worker-suggest.mjs +0 -110
  491. package/.claude/worktrees/kanban-overhaul/.claude/settings.json +0 -125
  492. package/.claude/worktrees/kanban-overhaul/.claude/settings.local.json +0 -8
  493. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router/SKILL.md +0 -80
  494. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-chat/SKILL.md +0 -73
  495. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-embeddings/SKILL.md +0 -69
  496. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-image/SKILL.md +0 -86
  497. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-stt/SKILL.md +0 -79
  498. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-tts/SKILL.md +0 -80
  499. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-web-fetch/SKILL.md +0 -99
  500. package/.claude/worktrees/kanban-overhaul/.claude/skills/9router-web-search/SKILL.md +0 -91
  501. package/.claude/worktrees/kanban-overhaul/.claude/skills/bizar/README.md +0 -9
  502. package/.claude/worktrees/kanban-overhaul/.claude/skills/bizar/SKILL.md +0 -450
  503. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/README.md +0 -28
  504. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/SKILL.md +0 -634
  505. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/references/concurrency.md +0 -320
  506. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/references/error-handling.md +0 -229
  507. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/references/memory-safety.md +0 -216
  508. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/references/modern-idioms.md +0 -282
  509. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-coding-standards/references/review-checklist.md +0 -96
  510. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/README.md +0 -28
  511. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/SKILL.md +0 -304
  512. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/references/coverage.md +0 -370
  513. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/references/framework-compare.md +0 -175
  514. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/references/host-test-for-embedded.md +0 -499
  515. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/references/mocking.md +0 -364
  516. package/.claude/worktrees/kanban-overhaul/.claude/skills/cpp-testing/references/tdd-workflow.md +0 -308
  517. package/.claude/worktrees/kanban-overhaul/.claude/skills/cubesandbox/SKILL.md +0 -148
  518. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/README.md +0 -41
  519. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/SKILL.md +0 -439
  520. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/freertos-patterns.md +0 -214
  521. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/host-tests.md +0 -164
  522. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/idf-py-commands.md +0 -157
  523. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/kconfig.md +0 -159
  524. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/logging-discipline.md +0 -118
  525. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/memory-and-iram.md +0 -137
  526. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/nvs.md +0 -121
  527. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/references/packed-structs.md +0 -192
  528. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/scripts/idf_env.sh +0 -47
  529. package/.claude/worktrees/kanban-overhaul/.claude/skills/embedded-esp-idf/scripts/size_check.sh +0 -77
  530. package/.claude/worktrees/kanban-overhaul/.claude/skills/glyph/SKILL.md +0 -163
  531. package/.claude/worktrees/kanban-overhaul/.claude/skills/harness-engineering/SKILL.md +0 -143
  532. package/.claude/worktrees/kanban-overhaul/.claude/skills/lightrag/SKILL.md +0 -81
  533. package/.claude/worktrees/kanban-overhaul/.claude/skills/memory-protocol/SKILL.md +0 -105
  534. package/.claude/worktrees/kanban-overhaul/.claude/skills/obsidian/SKILL.md +0 -306
  535. package/.claude/worktrees/kanban-overhaul/.claude/skills/read-the-damn-docs/SKILL.md +0 -113
  536. package/.claude/worktrees/kanban-overhaul/.claude/skills/self-improvement/SKILL.md +0 -64
  537. package/.claude/worktrees/kanban-overhaul/.dockerignore +0 -31
  538. package/.claude/worktrees/kanban-overhaul/.gitattributes +0 -27
  539. package/.claude/worktrees/kanban-overhaul/.harness/agents.json +0 -17
  540. package/.claude/worktrees/kanban-overhaul/.harness/arch-rules.json +0 -69
  541. package/.claude/worktrees/kanban-overhaul/.harness/topology.json +0 -4
  542. package/.claude/worktrees/kanban-overhaul/.nvmrc +0 -1
  543. package/.claude/worktrees/kanban-overhaul/.serena/project.yml +0 -159
  544. package/.claude/worktrees/kanban-overhaul/AGENTS.md +0 -250
  545. package/.claude/worktrees/kanban-overhaul/CHANGELOG.md +0 -5410
  546. package/.claude/worktrees/kanban-overhaul/CLAUDE.md +0 -260
  547. package/.claude/worktrees/kanban-overhaul/CURRENT_ISSUES_ AND_NEW_FEATURES.md +0 -18
  548. package/.claude/worktrees/kanban-overhaul/DECISIONS.md +0 -66
  549. package/.claude/worktrees/kanban-overhaul/Dockerfile +0 -48
  550. package/.claude/worktrees/kanban-overhaul/FINAL_GOAL.md +0 -397
  551. package/.claude/worktrees/kanban-overhaul/IMPLEMENTATION_PLAN.md +0 -250
  552. package/.claude/worktrees/kanban-overhaul/MILESTONES.md +0 -257
  553. package/.claude/worktrees/kanban-overhaul/Makefile +0 -93
  554. package/.claude/worktrees/kanban-overhaul/PROGRESS.md +0 -1406
  555. package/.claude/worktrees/kanban-overhaul/README.md +0 -483
  556. package/.claude/worktrees/kanban-overhaul/ROADMAP.md +0 -609
  557. package/.claude/worktrees/kanban-overhaul/bizar-dash/.graphifyignore +0 -40
  558. package/.claude/worktrees/kanban-overhaul/bizar-dash/.obsidian/README.md +0 -14
  559. package/.claude/worktrees/kanban-overhaul/bizar-dash/.obsidian/daily/2026-06-25.md +0 -9
  560. package/.claude/worktrees/kanban-overhaul/bizar-dash/.obsidian/vault.json +0 -7
  561. package/.claude/worktrees/kanban-overhaul/bizar-dash/.od-skills/web-prototype-e1429c1737/SKILL.md +0 -103
  562. package/.claude/worktrees/kanban-overhaul/bizar-dash/.od-skills/web-prototype-e1429c1737/assets/template.html +0 -338
  563. package/.claude/worktrees/kanban-overhaul/bizar-dash/.od-skills/web-prototype-e1429c1737/example.html +0 -81
  564. package/.claude/worktrees/kanban-overhaul/bizar-dash/.od-skills/web-prototype-e1429c1737/open-design.json +0 -172
  565. package/.claude/worktrees/kanban-overhaul/bizar-dash/.od-skills/web-prototype-e1429c1737/references/checklist.md +0 -44
  566. package/.claude/worktrees/kanban-overhaul/bizar-dash/.od-skills/web-prototype-e1429c1737/references/layouts.md +0 -247
  567. package/.claude/worktrees/kanban-overhaul/bizar-dash/ARCHITECTURE.md +0 -197
  568. package/.claude/worktrees/kanban-overhaul/bizar-dash/CHANGELOG.md +0 -235
  569. package/.claude/worktrees/kanban-overhaul/bizar-dash/DESIGN.md +0 -912
  570. package/.claude/worktrees/kanban-overhaul/bizar-dash/GLYPH.md +0 -418
  571. package/.claude/worktrees/kanban-overhaul/bizar-dash/PLAN.md +0 -1135
  572. package/.claude/worktrees/kanban-overhaul/bizar-dash/critique.json +0 -26
  573. package/.claude/worktrees/kanban-overhaul/bizar-dash/plans/debug-plan/comments.json +0 -1
  574. package/.claude/worktrees/kanban-overhaul/bizar-dash/plans/debug-plan/meta.json +0 -10
  575. package/.claude/worktrees/kanban-overhaul/bizar-dash/plans/debug-plan/plan.json +0 -174
  576. package/.claude/worktrees/kanban-overhaul/bizar-dash/scripts/smoke-bg-retry.mjs +0 -246
  577. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/agent-baseline/SKILL.md +0 -80
  578. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/agent-browser/SKILL.md +0 -181
  579. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/bizar/SKILL.md +0 -116
  580. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/chat/SKILL.md +0 -74
  581. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/eval/SKILL.md +0 -237
  582. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/headroom/SKILL.md +0 -94
  583. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/lightrag/SKILL.md +0 -86
  584. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/minimax/SKILL.md +0 -80
  585. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/obsidian/SKILL.md +0 -68
  586. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/providers/SKILL.md +0 -75
  587. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/publishing/SKILL.md +0 -146
  588. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/sdk/SKILL.md +0 -138
  589. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/self-improvement/SKILL.md +0 -53
  590. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/skills-cli/SKILL.md +0 -94
  591. package/.claude/worktrees/kanban-overhaul/bizar-dash/skills/usage/SKILL.md +0 -62
  592. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/cli/dashboard-ports.mjs +0 -488
  593. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/cli.mjs +0 -537
  594. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/activity-log.mjs +0 -174
  595. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/agents-store.mjs +0 -465
  596. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/api.mjs +0 -223
  597. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/artifact-template.html +0 -810
  598. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/artifacts-store.mjs +0 -733
  599. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/auth.mjs +0 -548
  600. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/background-store.mjs +0 -446
  601. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/backup-store.mjs +0 -530
  602. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/bg-poller.mjs +0 -375
  603. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/bg-retry.mjs +0 -446
  604. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/bg-spawner.mjs +0 -390
  605. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/browser.mjs +0 -40
  606. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/claude-bg-spawner.mjs +0 -390
  607. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/claude-info.mjs +0 -412
  608. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/claude-runner.mjs +0 -284
  609. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/claude-sdk.mjs +0 -191
  610. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/diagnostics-store.mjs +0 -598
  611. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/dialog-poller.mjs +0 -105
  612. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/dialog-store.mjs +0 -177
  613. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/digest-store.mjs +0 -558
  614. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/eval-store.mjs +0 -281
  615. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/eval.mjs +0 -500
  616. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/glyphs/mdx-compiler.mjs +0 -596
  617. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/headroom.mjs +0 -649
  618. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/lib/path-safe.mjs +0 -283
  619. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/lib/rate-limit.mjs +0 -122
  620. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/logger.mjs +0 -71
  621. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-consolidator.mjs +0 -225
  622. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-distillation.mjs +0 -296
  623. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-git.mjs +0 -473
  624. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-lightrag.mjs +0 -1478
  625. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-obsidian.mjs +0 -230
  626. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-schema.mjs +0 -145
  627. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-secrets.mjs +0 -84
  628. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/memory-store.mjs +0 -1093
  629. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/metrics.mjs +0 -268
  630. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/minimax-usage-store.mjs +0 -372
  631. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/minimax.mjs +0 -683
  632. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/mod-security.mjs +0 -398
  633. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/mods-loader.mjs +0 -1243
  634. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/notifications-store.mjs +0 -243
  635. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/obsidian-store.mjs +0 -318
  636. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/ocr.mjs +0 -55
  637. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/otel.mjs +0 -260
  638. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/pair-store.mjs +0 -138
  639. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/progress-parser.mjs +0 -221
  640. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/projects-store.mjs +0 -364
  641. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/providers-store.mjs +0 -1801
  642. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/_shared.mjs +0 -447
  643. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/activity.mjs +0 -195
  644. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/agents-cc.mjs +0 -194
  645. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/agents.mjs +0 -134
  646. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/artifacts.mjs +0 -279
  647. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/auth.mjs +0 -69
  648. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/background.mjs +0 -422
  649. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/backup.mjs +0 -112
  650. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/chat.mjs +0 -727
  651. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/claude-session-detail.mjs +0 -329
  652. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/claude-sessions.mjs +0 -259
  653. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/clipboard.mjs +0 -173
  654. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/config.mjs +0 -180
  655. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/diagnostics.mjs +0 -50
  656. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/dialogs.mjs +0 -86
  657. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/digests.mjs +0 -82
  658. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/distill.mjs +0 -129
  659. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/doctor.mjs +0 -71
  660. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/env-vars.mjs +0 -231
  661. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/eval.mjs +0 -187
  662. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/fs.mjs +0 -429
  663. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/goal-planner.mjs +0 -236
  664. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/goals.mjs +0 -212
  665. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/headroom.mjs +0 -126
  666. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/history.mjs +0 -78
  667. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/lightrag.mjs +0 -169
  668. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/memory.mjs +0 -1524
  669. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/minimax.mjs +0 -133
  670. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/misc.mjs +0 -90
  671. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/mods.mjs +0 -359
  672. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/notifications.mjs +0 -54
  673. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/obsidian.mjs +0 -239
  674. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/ocr.mjs +0 -182
  675. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/overview.mjs +0 -92
  676. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/pair.mjs +0 -67
  677. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/projects.mjs +0 -175
  678. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/providers.mjs +0 -308
  679. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/schedules.mjs +0 -159
  680. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/settings.mjs +0 -51
  681. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/skills.mjs +0 -65
  682. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/tailscale.mjs +0 -46
  683. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/tasks.mjs +0 -518
  684. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/themes.mjs +0 -51
  685. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/update.mjs +0 -340
  686. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/usage.mjs +0 -136
  687. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/users.mjs +0 -102
  688. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/voice.mjs +0 -167
  689. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes/workspaces.mjs +0 -299
  690. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes-v2/auth.mjs +0 -59
  691. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes-v2/events.mjs +0 -121
  692. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes-v2/health.mjs +0 -21
  693. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes-v2/index.mjs +0 -90
  694. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/routes-v2/sessions.mjs +0 -111
  695. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/schedules-runner.mjs +0 -556
  696. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/schedules-store.mjs +0 -268
  697. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/search-store.mjs +0 -220
  698. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/serve-info.mjs +0 -1110
  699. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/server.mjs +0 -966
  700. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/settings-store.mjs +0 -45
  701. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/skills-store.mjs +0 -190
  702. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/state.mjs +0 -437
  703. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/tailscale-store.mjs +0 -113
  704. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/task-delegator.mjs +0 -969
  705. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/tasks-store.mjs +0 -556
  706. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/tui.mjs +0 -923
  707. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/update-store.mjs +0 -168
  708. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/v2-auth-file.mjs +0 -99
  709. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/v2-event-bus.mjs +0 -128
  710. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/voice-store.mjs +0 -229
  711. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/voice-transcribe.mjs +0 -72
  712. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/watcher.mjs +0 -81
  713. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/workers/transcription-worker.mjs +0 -213
  714. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/workspaces.mjs +0 -626
  715. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/server/yaml.mjs +0 -238
  716. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/App.tsx +0 -200
  717. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/data/fetcher.ts +0 -59
  718. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/data/types.ts +0 -168
  719. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/data/useFetch.ts +0 -62
  720. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/data/useWebSocket.ts +0 -153
  721. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/main.tsx +0 -28
  722. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/shell/AppShell.tsx +0 -90
  723. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/shell/PageSkeleton.tsx +0 -29
  724. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/shell/Sidebar.tsx +0 -361
  725. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/shell/StatusBar.tsx +0 -63
  726. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/shell/Topbar.tsx +0 -113
  727. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/shell/index.ts +0 -15
  728. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/activity/ActivityFeed.tsx +0 -137
  729. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/agents/AgentActivity.tsx +0 -101
  730. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/agents/AgentCard.tsx +0 -158
  731. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/agents/AgentDetail.tsx +0 -232
  732. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Button.tsx +0 -141
  733. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/ButtonGroup.tsx +0 -32
  734. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Checkbox.tsx +0 -49
  735. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Field.tsx +0 -78
  736. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Form.tsx +0 -23
  737. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/IconButton.tsx +0 -112
  738. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Input.tsx +0 -94
  739. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/RadioGroup.tsx +0 -74
  740. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Select.tsx +0 -171
  741. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Slider.tsx +0 -68
  742. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Switch.tsx +0 -56
  743. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Textarea.tsx +0 -64
  744. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/Toggle.tsx +0 -36
  745. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/controls/ToggleGroup.tsx +0 -85
  746. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Accordion.tsx +0 -134
  747. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Avatar.tsx +0 -175
  748. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Badge.tsx +0 -93
  749. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/BarList.tsx +0 -101
  750. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Card.tsx +0 -140
  751. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Chip.tsx +0 -96
  752. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Kbd.tsx +0 -42
  753. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/ProgressBar.tsx +0 -93
  754. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Sparkline.tsx +0 -98
  755. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/StatTile.tsx +0 -150
  756. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Table.tsx +0 -170
  757. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/Timeline.tsx +0 -130
  758. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/data/ViewHeader.tsx +0 -122
  759. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Alert.tsx +0 -95
  760. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Banner.tsx +0 -39
  761. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/ContextMenu.tsx +0 -143
  762. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Dialog.tsx +0 -149
  763. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Drawer.tsx +0 -8
  764. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/DropdownMenu.tsx +0 -231
  765. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/EmptyState.tsx +0 -48
  766. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Popover.tsx +0 -56
  767. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Sheet.tsx +0 -103
  768. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Skeleton.tsx +0 -67
  769. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Spinner.tsx +0 -30
  770. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Toast.tsx +0 -66
  771. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/feedback/Tooltip.tsx +0 -89
  772. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/goals/GoalCard.tsx +0 -176
  773. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/goals/GoalDetail.tsx +0 -245
  774. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/goals/KeyResult.tsx +0 -115
  775. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/index.ts +0 -349
  776. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanBoard.tsx +0 -115
  777. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanCard.tsx +0 -391
  778. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanColumn.tsx +0 -181
  779. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanContextMenu.tsx +0 -126
  780. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanDetailDialog.tsx +0 -638
  781. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/kanban/KanbanQuickAdd.tsx +0 -141
  782. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/libraries/LibraryGrid.tsx +0 -30
  783. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/libraries/LibraryItem.tsx +0 -161
  784. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/memory/MemoryVault.tsx +0 -144
  785. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/navigation/CommandPalette.tsx +0 -224
  786. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/navigation/NavLink.tsx +0 -81
  787. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/navigation/Pagination.tsx +0 -164
  788. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/navigation/Tabs.tsx +0 -128
  789. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Box.tsx +0 -144
  790. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Center.tsx +0 -40
  791. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Cluster.tsx +0 -67
  792. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Grid.tsx +0 -104
  793. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Inline.tsx +0 -77
  794. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Portal.tsx +0 -33
  795. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/ScrollArea.tsx +0 -62
  796. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Separator.tsx +0 -42
  797. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/Stack.tsx +0 -73
  798. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/primitives/VisuallyHidden.tsx +0 -49
  799. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/settings/SettingsNav.tsx +0 -91
  800. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/settings/SettingsRow.tsx +0 -88
  801. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/settings/SettingsSection.tsx +0 -109
  802. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/styles/globals.css +0 -220
  803. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/styles/reset.css +0 -57
  804. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/styles/tokens.css +0 -217
  805. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/theme/DensityProvider.tsx +0 -66
  806. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/theme/ThemeProvider.tsx +0 -94
  807. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/theme/ThemeToggle.tsx +0 -88
  808. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/theme/useDensity.ts +0 -15
  809. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/theme/useTheme.ts +0 -16
  810. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/ui/utils/cx.ts +0 -19
  811. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Activity/ActivityView.tsx +0 -71
  812. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Agents/AgentsView.tsx +0 -172
  813. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/CommandPalette/AppCommandPalette.tsx +0 -247
  814. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Goals/GoalsView.tsx +0 -137
  815. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Libraries/LibrariesView.tsx +0 -108
  816. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Memory/MemoryView.tsx +0 -77
  817. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Overview/OverviewView.tsx +0 -152
  818. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Router.tsx +0 -72
  819. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Settings/SettingsView.tsx +0 -330
  820. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Tasks/CommandPalettePlaceholder.tsx +0 -106
  821. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/views/Tasks/TasksView.tsx +0 -792
  822. package/.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8/vite-env.d.ts +0 -15
  823. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/FORMAT.md +0 -76
  824. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/hello-mod/README.md +0 -19
  825. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/hello-mod/agents/greeter.md +0 -8
  826. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/hello-mod/commands/hello.md +0 -6
  827. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/hello-mod/mod.json +0 -20
  828. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/hello-mod/routes/ping.mjs +0 -9
  829. package/.claude/worktrees/kanban-overhaul/bizar-dash/templates/mod/hello-mod/views/HelloView.tsx +0 -10
  830. package/.claude/worktrees/kanban-overhaul/bizar-dash/tests/setup.ts +0 -63
  831. package/.claude/worktrees/kanban-overhaul/bizar-dash/tests/smoke-v2.mjs +0 -212
  832. package/.claude/worktrees/kanban-overhaul/bizar-dash/tsconfig.json +0 -23
  833. package/.claude/worktrees/kanban-overhaul/bizar-dash/vite.config.ts +0 -66
  834. package/.claude/worktrees/kanban-overhaul/bizar-dash/vitest.config.ts +0 -20
  835. package/.claude/worktrees/kanban-overhaul/bizar-plugins/registry.json +0 -62
  836. package/.claude/worktrees/kanban-overhaul/bookmarklet/bizar-clipper.js +0 -48
  837. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/README.md +0 -43
  838. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/background.js +0 -95
  839. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/content.js +0 -170
  840. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/icons/icon-128.png +0 -0
  841. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/icons/icon-16.png +0 -0
  842. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/icons/icon-48.png +0 -0
  843. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/icons/icon.svg +0 -4
  844. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/manifest.json +0 -32
  845. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/popup.html +0 -66
  846. package/.claude/worktrees/kanban-overhaul/browser-extensions/bizar-clipper/popup.js +0 -110
  847. package/.claude/worktrees/kanban-overhaul/bun.lock +0 -1558
  848. package/.claude/worktrees/kanban-overhaul/cli/agent-browser-up.sh +0 -152
  849. package/.claude/worktrees/kanban-overhaul/cli/agent-browser-update.mjs +0 -322
  850. package/.claude/worktrees/kanban-overhaul/cli/artifact-cli.mjs +0 -605
  851. package/.claude/worktrees/kanban-overhaul/cli/artifact-render.mjs +0 -621
  852. package/.claude/worktrees/kanban-overhaul/cli/artifact-server.mjs +0 -847
  853. package/.claude/worktrees/kanban-overhaul/cli/artifact-templates.mjs +0 -523
  854. package/.claude/worktrees/kanban-overhaul/cli/artifact.mjs +0 -63
  855. package/.claude/worktrees/kanban-overhaul/cli/atomic.mjs +0 -73
  856. package/.claude/worktrees/kanban-overhaul/cli/audit.mjs +0 -141
  857. package/.claude/worktrees/kanban-overhaul/cli/banner.mjs +0 -41
  858. package/.claude/worktrees/kanban-overhaul/cli/bg.mjs +0 -471
  859. package/.claude/worktrees/kanban-overhaul/cli/bin.mjs +0 -698
  860. package/.claude/worktrees/kanban-overhaul/cli/bootstrap.mjs +0 -77
  861. package/.claude/worktrees/kanban-overhaul/cli/commands/artifact.mjs +0 -20
  862. package/.claude/worktrees/kanban-overhaul/cli/commands/claim.mjs +0 -282
  863. package/.claude/worktrees/kanban-overhaul/cli/commands/claude-cmd.mjs +0 -348
  864. package/.claude/worktrees/kanban-overhaul/cli/commands/clip.mjs +0 -163
  865. package/.claude/worktrees/kanban-overhaul/cli/commands/cost.mjs +0 -279
  866. package/.claude/worktrees/kanban-overhaul/cli/commands/dash.mjs +0 -193
  867. package/.claude/worktrees/kanban-overhaul/cli/commands/deploy/cloudflare.mjs +0 -250
  868. package/.claude/worktrees/kanban-overhaul/cli/commands/deploy/docker.mjs +0 -222
  869. package/.claude/worktrees/kanban-overhaul/cli/commands/deploy/fly.mjs +0 -161
  870. package/.claude/worktrees/kanban-overhaul/cli/commands/deploy/vercel.mjs +0 -225
  871. package/.claude/worktrees/kanban-overhaul/cli/commands/deploy.mjs +0 -240
  872. package/.claude/worktrees/kanban-overhaul/cli/commands/eval.mjs +0 -396
  873. package/.claude/worktrees/kanban-overhaul/cli/commands/headroom.mjs +0 -204
  874. package/.claude/worktrees/kanban-overhaul/cli/commands/install.mjs +0 -170
  875. package/.claude/worktrees/kanban-overhaul/cli/commands/lightrag.mjs +0 -170
  876. package/.claude/worktrees/kanban-overhaul/cli/commands/marketplace.mjs +0 -64
  877. package/.claude/worktrees/kanban-overhaul/cli/commands/memory.mjs +0 -25
  878. package/.claude/worktrees/kanban-overhaul/cli/commands/minimax.mjs +0 -288
  879. package/.claude/worktrees/kanban-overhaul/cli/commands/mod.mjs +0 -185
  880. package/.claude/worktrees/kanban-overhaul/cli/commands/ocr.mjs +0 -182
  881. package/.claude/worktrees/kanban-overhaul/cli/commands/plugin.mjs +0 -358
  882. package/.claude/worktrees/kanban-overhaul/cli/commands/rca.mjs +0 -198
  883. package/.claude/worktrees/kanban-overhaul/cli/commands/sandbox.mjs +0 -220
  884. package/.claude/worktrees/kanban-overhaul/cli/commands/service.mjs +0 -79
  885. package/.claude/worktrees/kanban-overhaul/cli/commands/setup-provider.mjs +0 -466
  886. package/.claude/worktrees/kanban-overhaul/cli/commands/tailscale.mjs +0 -258
  887. package/.claude/worktrees/kanban-overhaul/cli/commands/usage.mjs +0 -113
  888. package/.claude/worktrees/kanban-overhaul/cli/commands/util.mjs +0 -577
  889. package/.claude/worktrees/kanban-overhaul/cli/commands/validate.mjs +0 -541
  890. package/.claude/worktrees/kanban-overhaul/cli/commands/voice.mjs +0 -211
  891. package/.claude/worktrees/kanban-overhaul/cli/commands/workspace.mjs +0 -247
  892. package/.claude/worktrees/kanban-overhaul/cli/copy.mjs +0 -586
  893. package/.claude/worktrees/kanban-overhaul/cli/cost-gate.mjs +0 -501
  894. package/.claude/worktrees/kanban-overhaul/cli/dev-link.mjs +0 -191
  895. package/.claude/worktrees/kanban-overhaul/cli/digest.mjs +0 -149
  896. package/.claude/worktrees/kanban-overhaul/cli/doctor.mjs +0 -217
  897. package/.claude/worktrees/kanban-overhaul/cli/export.mjs +0 -95
  898. package/.claude/worktrees/kanban-overhaul/cli/feature-list-bridge.mjs +0 -400
  899. package/.claude/worktrees/kanban-overhaul/cli/heads-up.mjs +0 -295
  900. package/.claude/worktrees/kanban-overhaul/cli/init.mjs +0 -368
  901. package/.claude/worktrees/kanban-overhaul/cli/install.mjs +0 -640
  902. package/.claude/worktrees/kanban-overhaul/cli/memory-constants.mjs +0 -76
  903. package/.claude/worktrees/kanban-overhaul/cli/memory.mjs +0 -1850
  904. package/.claude/worktrees/kanban-overhaul/cli/plugin-runtime-deps.mjs +0 -250
  905. package/.claude/worktrees/kanban-overhaul/cli/post-install-smoke.mjs +0 -256
  906. package/.claude/worktrees/kanban-overhaul/cli/prompts.mjs +0 -168
  907. package/.claude/worktrees/kanban-overhaul/cli/providers-detect.mjs +0 -233
  908. package/.claude/worktrees/kanban-overhaul/cli/provision-claude.mjs +0 -1176
  909. package/.claude/worktrees/kanban-overhaul/cli/provision.mjs +0 -2233
  910. package/.claude/worktrees/kanban-overhaul/cli/repair.mjs +0 -209
  911. package/.claude/worktrees/kanban-overhaul/cli/service-controller.mjs +0 -927
  912. package/.claude/worktrees/kanban-overhaul/cli/service-env.mjs +0 -139
  913. package/.claude/worktrees/kanban-overhaul/cli/service.mjs +0 -492
  914. package/.claude/worktrees/kanban-overhaul/cli/update.mjs +0 -29
  915. package/.claude/worktrees/kanban-overhaul/cli/utils.mjs +0 -221
  916. package/.claude/worktrees/kanban-overhaul/cli/worker-dispatcher.mjs +0 -259
  917. package/.claude/worktrees/kanban-overhaul/config/AGENTS.md +0 -595
  918. package/.claude/worktrees/kanban-overhaul/config/agents/_shared/AGENT_BASELINE.md +0 -155
  919. package/.claude/worktrees/kanban-overhaul/config/agents/_shared/CLINE_TOOLS.md +0 -398
  920. package/.claude/worktrees/kanban-overhaul/config/agents/_shared/SKILLS.md +0 -109
  921. package/.claude/worktrees/kanban-overhaul/config/agents/agent-browser.md +0 -90
  922. package/.claude/worktrees/kanban-overhaul/config/agents/baldr.md +0 -60
  923. package/.claude/worktrees/kanban-overhaul/config/agents/forseti.md +0 -60
  924. package/.claude/worktrees/kanban-overhaul/config/agents/frigg.md +0 -52
  925. package/.claude/worktrees/kanban-overhaul/config/agents/heimdall.md +0 -44
  926. package/.claude/worktrees/kanban-overhaul/config/agents/hermod.md +0 -64
  927. package/.claude/worktrees/kanban-overhaul/config/agents/mimir.md +0 -60
  928. package/.claude/worktrees/kanban-overhaul/config/agents/odin.md +0 -310
  929. package/.claude/worktrees/kanban-overhaul/config/agents/quick.md +0 -47
  930. package/.claude/worktrees/kanban-overhaul/config/agents/semble-search.md +0 -59
  931. package/.claude/worktrees/kanban-overhaul/config/agents/thor.md +0 -64
  932. package/.claude/worktrees/kanban-overhaul/config/agents/tyr.md +0 -67
  933. package/.claude/worktrees/kanban-overhaul/config/agents/vidarr.md +0 -65
  934. package/.claude/worktrees/kanban-overhaul/config/agents/vor.md +0 -62
  935. package/.claude/worktrees/kanban-overhaul/config/commands/audit.md +0 -5
  936. package/.claude/worktrees/kanban-overhaul/config/commands/bizar.md +0 -22
  937. package/.claude/worktrees/kanban-overhaul/config/commands/explain.md +0 -5
  938. package/.claude/worktrees/kanban-overhaul/config/commands/init.md +0 -26
  939. package/.claude/worktrees/kanban-overhaul/config/commands/learn.md +0 -5
  940. package/.claude/worktrees/kanban-overhaul/config/commands/plan.md +0 -30
  941. package/.claude/worktrees/kanban-overhaul/config/commands/plow-through.md +0 -47
  942. package/.claude/worktrees/kanban-overhaul/config/commands/pr-review.md +0 -5
  943. package/.claude/worktrees/kanban-overhaul/config/commands/setup-provider.md +0 -95
  944. package/.claude/worktrees/kanban-overhaul/config/commands/tailscale-serve.md +0 -97
  945. package/.claude/worktrees/kanban-overhaul/config/commands/team.md +0 -124
  946. package/.claude/worktrees/kanban-overhaul/config/commands/test.md +0 -60
  947. package/.claude/worktrees/kanban-overhaul/config/commands/validate.md +0 -66
  948. package/.claude/worktrees/kanban-overhaul/config/commands/visual-plan.md +0 -19
  949. package/.claude/worktrees/kanban-overhaul/config/hooks/PostToolUse +0 -66
  950. package/.claude/worktrees/kanban-overhaul/config/hooks/PreToolUse +0 -82
  951. package/.claude/worktrees/kanban-overhaul/config/hooks/README.md +0 -68
  952. package/.claude/worktrees/kanban-overhaul/config/hooks/TaskResume +0 -48
  953. package/.claude/worktrees/kanban-overhaul/config/hooks/TaskStart +0 -47
  954. package/.claude/worktrees/kanban-overhaul/config/hooks/UserPromptSubmit +0 -55
  955. package/.claude/worktrees/kanban-overhaul/config/rules/general.md +0 -9
  956. package/.claude/worktrees/kanban-overhaul/config/rules/git.md +0 -11
  957. package/.claude/worktrees/kanban-overhaul/config/rules/javascript.md +0 -10
  958. package/.claude/worktrees/kanban-overhaul/config/rules/python.md +0 -10
  959. package/.claude/worktrees/kanban-overhaul/config/rules/testing.md +0 -10
  960. package/.claude/worktrees/kanban-overhaul/config/rules/thinking.md +0 -56
  961. package/.claude/worktrees/kanban-overhaul/config/rules/uncertainty.md +0 -70
  962. package/.claude/worktrees/kanban-overhaul/config/skills/9router/SKILL.md +0 -80
  963. package/.claude/worktrees/kanban-overhaul/config/skills/9router-chat/SKILL.md +0 -73
  964. package/.claude/worktrees/kanban-overhaul/config/skills/9router-embeddings/SKILL.md +0 -69
  965. package/.claude/worktrees/kanban-overhaul/config/skills/9router-image/SKILL.md +0 -86
  966. package/.claude/worktrees/kanban-overhaul/config/skills/9router-stt/SKILL.md +0 -79
  967. package/.claude/worktrees/kanban-overhaul/config/skills/9router-tts/SKILL.md +0 -80
  968. package/.claude/worktrees/kanban-overhaul/config/skills/9router-web-fetch/SKILL.md +0 -99
  969. package/.claude/worktrees/kanban-overhaul/config/skills/9router-web-search/SKILL.md +0 -91
  970. package/.claude/worktrees/kanban-overhaul/config/skills/bizar/README.md +0 -9
  971. package/.claude/worktrees/kanban-overhaul/config/skills/bizar/SKILL.md +0 -447
  972. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/README.md +0 -28
  973. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/SKILL.md +0 -634
  974. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/agents/openai.yaml +0 -4
  975. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/references/concurrency.md +0 -320
  976. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/references/error-handling.md +0 -229
  977. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/references/memory-safety.md +0 -216
  978. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/references/modern-idioms.md +0 -282
  979. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-coding-standards/references/review-checklist.md +0 -96
  980. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/README.md +0 -28
  981. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/SKILL.md +0 -304
  982. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/agents/openai.yaml +0 -4
  983. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/references/coverage.md +0 -370
  984. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/references/framework-compare.md +0 -175
  985. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/references/host-test-for-embedded.md +0 -499
  986. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/references/mocking.md +0 -364
  987. package/.claude/worktrees/kanban-overhaul/config/skills/cpp-testing/references/tdd-workflow.md +0 -308
  988. package/.claude/worktrees/kanban-overhaul/config/skills/cubesandbox/SKILL.md +0 -148
  989. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/README.md +0 -41
  990. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/SKILL.md +0 -439
  991. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/agents/openai.yaml +0 -4
  992. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/freertos-patterns.md +0 -214
  993. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/host-tests.md +0 -164
  994. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/idf-py-commands.md +0 -157
  995. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/kconfig.md +0 -159
  996. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/logging-discipline.md +0 -118
  997. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/memory-and-iram.md +0 -137
  998. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/nvs.md +0 -121
  999. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/references/packed-structs.md +0 -192
  1000. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/scripts/idf_env.sh +0 -47
  1001. package/.claude/worktrees/kanban-overhaul/config/skills/embedded-esp-idf/scripts/size_check.sh +0 -77
  1002. package/.claude/worktrees/kanban-overhaul/config/skills/glyph/SKILL.md +0 -163
  1003. package/.claude/worktrees/kanban-overhaul/config/skills/harness-engineering/SKILL.md +0 -142
  1004. package/.claude/worktrees/kanban-overhaul/config/skills/lightrag/SKILL.md +0 -81
  1005. package/.claude/worktrees/kanban-overhaul/config/skills/memory-protocol/SKILL.md +0 -105
  1006. package/.claude/worktrees/kanban-overhaul/config/skills/obsidian/SKILL.md +0 -306
  1007. package/.claude/worktrees/kanban-overhaul/config/skills/read-the-damn-docs/SKILL.md +0 -113
  1008. package/.claude/worktrees/kanban-overhaul/config/skills/self-improvement/SKILL.md +0 -64
  1009. package/.claude/worktrees/kanban-overhaul/config/trigger-patterns.json +0 -186
  1010. package/.claude/worktrees/kanban-overhaul/docker-compose.yml +0 -50
  1011. package/.claude/worktrees/kanban-overhaul/docs/A11Y.md +0 -81
  1012. package/.claude/worktrees/kanban-overhaul/docs/DEPLOY.md +0 -360
  1013. package/.claude/worktrees/kanban-overhaul/docs/DOCKER.md +0 -250
  1014. package/.claude/worktrees/kanban-overhaul/docs/INDEX.md +0 -223
  1015. package/.claude/worktrees/kanban-overhaul/docs/PLUGIN_REGISTRY.md +0 -107
  1016. package/.claude/worktrees/kanban-overhaul/docs/RELEASING.md +0 -693
  1017. package/.claude/worktrees/kanban-overhaul/docs/architecture.md +0 -317
  1018. package/.claude/worktrees/kanban-overhaul/docs/code-review.md +0 -242
  1019. package/.claude/worktrees/kanban-overhaul/docs/curator.md +0 -144
  1020. package/.claude/worktrees/kanban-overhaul/docs/dashboard-ui-migration.md +0 -807
  1021. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-001-cline-rewrite.md +0 -114
  1022. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-002-in-process-clinecore.md +0 -139
  1023. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-003-in-process-memory-vault.md +0 -101
  1024. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-004-cline-agent-teams.md +0 -112
  1025. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-005-bg-agents-via-dashboard.md +0 -77
  1026. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-006-kanban-board.md +0 -69
  1027. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-007-tool-approval-gate.md +0 -147
  1028. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-008-skill-curator.md +0 -100
  1029. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-009-pre-compaction-flush.md +0 -106
  1030. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-010-knowledge-graph-tools.md +0 -95
  1031. package/.claude/worktrees/kanban-overhaul/docs/decisions/DEC-011-claude-code-migration.md +0 -172
  1032. package/.claude/worktrees/kanban-overhaul/docs/graph-tools.md +0 -130
  1033. package/.claude/worktrees/kanban-overhaul/docs/migration-guide.md +0 -471
  1034. package/.claude/worktrees/kanban-overhaul/docs/migrations/cline-replacement.md +0 -118
  1035. package/.claude/worktrees/kanban-overhaul/docs/postmortems/2026-06-18-plugin-state-deadlock.md +0 -250
  1036. package/.claude/worktrees/kanban-overhaul/docs/quality-document.md +0 -74
  1037. package/.claude/worktrees/kanban-overhaul/docs/releases/v0.5.2.md +0 -66
  1038. package/.claude/worktrees/kanban-overhaul/docs/releases/v0.5.4.md +0 -85
  1039. package/.claude/worktrees/kanban-overhaul/docs/releases/v2.3.0.md +0 -96
  1040. package/.claude/worktrees/kanban-overhaul/docs/releases/v3.24.0.md +0 -155
  1041. package/.claude/worktrees/kanban-overhaul/docs/releases/v4.0.0.md +0 -123
  1042. package/.claude/worktrees/kanban-overhaul/docs/releases/v7.0.0.md +0 -173
  1043. package/.claude/worktrees/kanban-overhaul/docs/safety.md +0 -216
  1044. package/.claude/worktrees/kanban-overhaul/feature_list.json +0 -1297
  1045. package/.claude/worktrees/kanban-overhaul/init.sh +0 -211
  1046. package/.claude/worktrees/kanban-overhaul/install.sh +0 -498
  1047. package/.claude/worktrees/kanban-overhaul/mods-examples/impeccable/INSTRUCTIONS.md +0 -82
  1048. package/.claude/worktrees/kanban-overhaul/mods-examples/impeccable/mod.json +0 -37
  1049. package/.claude/worktrees/kanban-overhaul/mods-examples/impeccable/route.mjs +0 -136
  1050. package/.claude/worktrees/kanban-overhaul/mods-examples/impeccable/web/index.html +0 -180
  1051. package/.claude/worktrees/kanban-overhaul/mods-examples/lightrag/INSTRUCTIONS.md +0 -81
  1052. package/.claude/worktrees/kanban-overhaul/mods-examples/lightrag/mod.json +0 -61
  1053. package/.claude/worktrees/kanban-overhaul/mods-examples/lightrag/route.mjs +0 -461
  1054. package/.claude/worktrees/kanban-overhaul/mods-examples/lightrag/web/index.html +0 -263
  1055. package/.claude/worktrees/kanban-overhaul/mods-examples/ponytail/INSTRUCTIONS.md +0 -87
  1056. package/.claude/worktrees/kanban-overhaul/mods-examples/ponytail/agents/thor.md +0 -64
  1057. package/.claude/worktrees/kanban-overhaul/mods-examples/ponytail/mod.json +0 -36
  1058. package/.claude/worktrees/kanban-overhaul/mods-examples/ponytail/route.mjs +0 -98
  1059. package/.claude/worktrees/kanban-overhaul/mods-examples/ponytail/web/index.html +0 -126
  1060. package/.claude/worktrees/kanban-overhaul/package.json +0 -154
  1061. package/.claude/worktrees/kanban-overhaul/packages/sdk/ARCHITECTURE.md +0 -70
  1062. package/.claude/worktrees/kanban-overhaul/packages/sdk/LICENSE +0 -21
  1063. package/.claude/worktrees/kanban-overhaul/packages/sdk/README.md +0 -80
  1064. package/.claude/worktrees/kanban-overhaul/packages/sdk/package.json +0 -30
  1065. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/agent-registry.ts +0 -304
  1066. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/consensus/byzantine.ts +0 -587
  1067. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/consensus/index.ts +0 -147
  1068. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/consensus/queen.ts +0 -173
  1069. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/consensus/types.ts +0 -199
  1070. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/dangerous-patterns.ts +0 -127
  1071. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/audit.ts +0 -156
  1072. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/budget.ts +0 -269
  1073. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/envelope.ts +0 -144
  1074. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/hmac.ts +0 -160
  1075. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/index.ts +0 -443
  1076. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/pii.ts +0 -241
  1077. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/policy.ts +0 -112
  1078. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/federation/trust.ts +0 -146
  1079. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/fingerprint.ts +0 -0
  1080. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/index.ts +0 -114
  1081. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/mcp/bin.ts +0 -51
  1082. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/mcp/server.ts +0 -848
  1083. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/memory/index.ts +0 -160
  1084. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/router/codemod-intent.ts +0 -125
  1085. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/router/index.ts +0 -247
  1086. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/router/memory-distillation-shim.mjs +0 -18
  1087. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/router/memory-distillation.ts +0 -249
  1088. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/router/model-router.ts +0 -235
  1089. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/router/q-learning-router.ts +0 -304
  1090. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/swarm-topology.ts +0 -279
  1091. package/.claude/worktrees/kanban-overhaul/packages/sdk/src/version.ts +0 -4
  1092. package/.claude/worktrees/kanban-overhaul/packages/sdk/tsconfig.json +0 -25
  1093. package/.claude/worktrees/kanban-overhaul/packages/sdk/vitest.config.ts +0 -9
  1094. package/.claude/worktrees/kanban-overhaul/plugins/bizar/ARCHITECTURE.md +0 -72
  1095. package/.claude/worktrees/kanban-overhaul/plugins/bizar/CONSTRAINTS.md +0 -62
  1096. package/.claude/worktrees/kanban-overhaul/plugins/bizar/LICENSE +0 -21
  1097. package/.claude/worktrees/kanban-overhaul/plugins/bizar/README.md +0 -46
  1098. package/.claude/worktrees/kanban-overhaul/plugins/bizar/index.ts +0 -50
  1099. package/.claude/worktrees/kanban-overhaul/plugins/bizar/package.json +0 -18
  1100. package/.claude/worktrees/kanban-overhaul/plugins/bizar/tsconfig.json +0 -29
  1101. package/.claude/worktrees/kanban-overhaul/scripts/bh-full-e2e.mjs +0 -298
  1102. package/.claude/worktrees/kanban-overhaul/scripts/check-agents.mjs +0 -73
  1103. package/.claude/worktrees/kanban-overhaul/scripts/check-arch.sh +0 -80
  1104. package/.claude/worktrees/kanban-overhaul/scripts/check-deps.mjs +0 -492
  1105. package/.claude/worktrees/kanban-overhaul/scripts/clean-state-check.sh +0 -81
  1106. package/.claude/worktrees/kanban-overhaul/scripts/git-hooks/pre-commit +0 -59
  1107. package/.claude/worktrees/kanban-overhaul/scripts/git-hooks/pre-push +0 -54
  1108. package/.claude/worktrees/kanban-overhaul/scripts/install-hooks.sh +0 -29
  1109. package/.claude/worktrees/kanban-overhaul/scripts/install-service.mjs +0 -190
  1110. package/.claude/worktrees/kanban-overhaul/scripts/mirror-claude-md.sh +0 -78
  1111. package/.claude/worktrees/kanban-overhaul/scripts/session-trace.sh +0 -52
  1112. package/.claude/worktrees/kanban-overhaul/scripts/test-in-container.sh +0 -157
  1113. package/.claude/worktrees/kanban-overhaul/scripts/verify-feature.sh +0 -102
  1114. package/.claude/worktrees/kanban-overhaul/skills-lock.json +0 -11
  1115. package/.claude/worktrees/kanban-overhaul/templates/clean-state-checklist.md +0 -55
  1116. package/.claude/worktrees/kanban-overhaul/templates/deploy/cloudflare/README.md +0 -32
  1117. package/.claude/worktrees/kanban-overhaul/templates/deploy/cloudflare/functions-index.template.js +0 -15
  1118. package/.claude/worktrees/kanban-overhaul/templates/deploy/cloudflare/wrangler.toml.template +0 -9
  1119. package/.claude/worktrees/kanban-overhaul/templates/deploy/docker/.env.template +0 -16
  1120. package/.claude/worktrees/kanban-overhaul/templates/deploy/docker/README.md +0 -58
  1121. package/.claude/worktrees/kanban-overhaul/templates/deploy/docker/docker-compose.template.yml +0 -23
  1122. package/.claude/worktrees/kanban-overhaul/templates/deploy/fly/README.md +0 -35
  1123. package/.claude/worktrees/kanban-overhaul/templates/deploy/fly/fly.toml.template +0 -28
  1124. package/.claude/worktrees/kanban-overhaul/templates/deploy/vercel/README.md +0 -29
  1125. package/.claude/worktrees/kanban-overhaul/templates/deploy/vercel/api-index.template.js +0 -18
  1126. package/.claude/worktrees/kanban-overhaul/templates/deploy/vercel/vercel.json.template +0 -16
  1127. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/README.md +0 -58
  1128. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/citation.json +0 -16
  1129. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/code-review.json +0 -16
  1130. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/code-search-basic.json +0 -28
  1131. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/concise-output.json +0 -16
  1132. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/context-window.json +0 -16
  1133. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/error-recovery.json +0 -16
  1134. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/json-output.json +0 -20
  1135. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/latency-bounds.json +0 -16
  1136. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/multi-language.json +0 -16
  1137. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/regression-suite.json +0 -79
  1138. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/response-format.json +0 -30
  1139. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/safe-paths.json +0 -16
  1140. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/tool-call-correctness.json +0 -24
  1141. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/tool-call-multi-step.json +0 -18
  1142. package/.claude/worktrees/kanban-overhaul/templates/eval-fixtures/unicode-handling.json +0 -16
  1143. package/.claude/worktrees/kanban-overhaul/templates/evaluator-rubric.md +0 -50
  1144. package/.claude/worktrees/kanban-overhaul/templates/plan/htmx.min.js +0 -1
  1145. package/.claude/worktrees/kanban-overhaul/templates/plan/library/bug-investigation.mdx +0 -79
  1146. package/.claude/worktrees/kanban-overhaul/templates/plan/library/decision-record.mdx +0 -71
  1147. package/.claude/worktrees/kanban-overhaul/templates/plan/library/feature-design.mdx +0 -92
  1148. package/.claude/worktrees/kanban-overhaul/templates/plan/meta.json.template +0 -8
  1149. package/.claude/worktrees/kanban-overhaul/templates/plan/plan.mdx.template +0 -46
  1150. package/.claude/worktrees/kanban-overhaul/templates/plugin-template/README.md +0 -121
  1151. package/.claude/worktrees/kanban-overhaul/templates/plugin-template/index.js +0 -66
  1152. package/.claude/worktrees/kanban-overhaul/templates/plugin-template/plugin.json +0 -42
  1153. package/.claude/worktrees/kanban-overhaul/templates/plugin-template/tests/plugin.test.js +0 -83
  1154. package/.claude/worktrees/kanban-overhaul/templates/schedules/daily-backup.json +0 -12
  1155. package/.claude/worktrees/kanban-overhaul/templates/schedules/daily-cleanup.json +0 -12
  1156. package/.claude/worktrees/kanban-overhaul/templates/schedules/hourly-health-check.json +0 -12
  1157. package/.claude/worktrees/kanban-overhaul/templates/schedules/webhook-on-push.json +0 -13
  1158. package/.claude/worktrees/kanban-overhaul/templates/schedules/weekly-digest.json +0 -13
  1159. package/.claude/worktrees/kanban-overhaul/templates/sprint-contract.md +0 -47
  1160. package/.claude/worktrees/kanban-overhaul/tsconfig.json +0 -44
  1161. package/.claude/worktrees/kanban-overhaul/vite.config.ts +0 -51
  1162. package/bizar-dash/dist/assets/ActivityFeed-BXIkGGQ1.js +0 -16
  1163. package/bizar-dash/dist/assets/ActivityFeed-BXIkGGQ1.js.map +0 -1
  1164. package/bizar-dash/dist/assets/ActivityView-CBxNNrZa.js +0 -12
  1165. package/bizar-dash/dist/assets/ActivityView-CBxNNrZa.js.map +0 -1
  1166. package/bizar-dash/dist/assets/AgentsView-uv4l21AH.js +0 -23
  1167. package/bizar-dash/dist/assets/AgentsView-uv4l21AH.js.map +0 -1
  1168. package/bizar-dash/dist/assets/BackgroundJobsView-CB4WXIpk.js +0 -6
  1169. package/bizar-dash/dist/assets/BackgroundJobsView-CB4WXIpk.js.map +0 -1
  1170. package/bizar-dash/dist/assets/Card-CeZsWlcP.js +0 -1
  1171. package/bizar-dash/dist/assets/Card-CeZsWlcP.js.map +0 -1
  1172. package/bizar-dash/dist/assets/Chip-OPjSKl2I.js +0 -1
  1173. package/bizar-dash/dist/assets/Chip-OPjSKl2I.js.map +0 -1
  1174. package/bizar-dash/dist/assets/EmptyState-BrLA8mbE.js +0 -1
  1175. package/bizar-dash/dist/assets/EmptyState-BrLA8mbE.js.map +0 -1
  1176. package/bizar-dash/dist/assets/GoalsView-B8R-kxQr.js +0 -11
  1177. package/bizar-dash/dist/assets/GoalsView-B8R-kxQr.js.map +0 -1
  1178. package/bizar-dash/dist/assets/Grid-B7NgNtff.js +0 -1
  1179. package/bizar-dash/dist/assets/Grid-B7NgNtff.js.map +0 -1
  1180. package/bizar-dash/dist/assets/Input-BW_5Sl6N.js +0 -1
  1181. package/bizar-dash/dist/assets/Input-BW_5Sl6N.js.map +0 -1
  1182. package/bizar-dash/dist/assets/KanbanCard-B-NOSfMN.js +0 -21
  1183. package/bizar-dash/dist/assets/KanbanCard-B-NOSfMN.js.map +0 -1
  1184. package/bizar-dash/dist/assets/LibrariesView-D6eB7B2A.js +0 -67
  1185. package/bizar-dash/dist/assets/LibrariesView-D6eB7B2A.js.map +0 -1
  1186. package/bizar-dash/dist/assets/MemoryView-MK4m1KbR.js +0 -13
  1187. package/bizar-dash/dist/assets/MemoryView-MK4m1KbR.js.map +0 -1
  1188. package/bizar-dash/dist/assets/OverviewView-CHavfYBa.js +0 -1
  1189. package/bizar-dash/dist/assets/OverviewView-CHavfYBa.js.map +0 -1
  1190. package/bizar-dash/dist/assets/SchedulesView-zV-0pbsz.js +0 -1
  1191. package/bizar-dash/dist/assets/SchedulesView-zV-0pbsz.js.map +0 -1
  1192. package/bizar-dash/dist/assets/Select-B6Ho36Tq.js +0 -11
  1193. package/bizar-dash/dist/assets/Select-B6Ho36Tq.js.map +0 -1
  1194. package/bizar-dash/dist/assets/SettingsRow-Br21uRFz.js +0 -1
  1195. package/bizar-dash/dist/assets/SettingsRow-Br21uRFz.js.map +0 -1
  1196. package/bizar-dash/dist/assets/SettingsView-Cx3uJrus.js +0 -38
  1197. package/bizar-dash/dist/assets/SettingsView-Cx3uJrus.js.map +0 -1
  1198. package/bizar-dash/dist/assets/Sheet-Cmu_4Zea.js +0 -1
  1199. package/bizar-dash/dist/assets/Sheet-Cmu_4Zea.js.map +0 -1
  1200. package/bizar-dash/dist/assets/Slider-B_jPr-SR.js +0 -1
  1201. package/bizar-dash/dist/assets/Slider-B_jPr-SR.js.map +0 -1
  1202. package/bizar-dash/dist/assets/Sparkline-Cmqw0N39.js +0 -1
  1203. package/bizar-dash/dist/assets/Sparkline-Cmqw0N39.js.map +0 -1
  1204. package/bizar-dash/dist/assets/Switch-C7Qyu50Y.js +0 -10
  1205. package/bizar-dash/dist/assets/Switch-C7Qyu50Y.js.map +0 -1
  1206. package/bizar-dash/dist/assets/TasksView-BXADmjgb.js +0 -1
  1207. package/bizar-dash/dist/assets/TasksView-BXADmjgb.js.map +0 -1
  1208. package/bizar-dash/dist/assets/Textarea-KIN98DVH.js +0 -1
  1209. package/bizar-dash/dist/assets/Textarea-KIN98DVH.js.map +0 -1
  1210. package/bizar-dash/dist/assets/ViewHeader-CPbqI-w8.js +0 -6
  1211. package/bizar-dash/dist/assets/ViewHeader-CPbqI-w8.js.map +0 -1
  1212. package/bizar-dash/dist/assets/brain-jN_ldx3U.js +0 -6
  1213. package/bizar-dash/dist/assets/brain-jN_ldx3U.js.map +0 -1
  1214. package/bizar-dash/dist/assets/calendar-DZGgPP2_.js +0 -6
  1215. package/bizar-dash/dist/assets/calendar-DZGgPP2_.js.map +0 -1
  1216. package/bizar-dash/dist/assets/circle-check-XhUtiACZ.js +0 -6
  1217. package/bizar-dash/dist/assets/circle-check-XhUtiACZ.js.map +0 -1
  1218. package/bizar-dash/dist/assets/clock-BXBnSbox.js +0 -6
  1219. package/bizar-dash/dist/assets/clock-BXBnSbox.js.map +0 -1
  1220. package/bizar-dash/dist/assets/cmdk-D15rXxc5.js +0 -80
  1221. package/bizar-dash/dist/assets/cmdk-D15rXxc5.js.map +0 -1
  1222. package/bizar-dash/dist/assets/dnd-kit-Bormfg7j.js +0 -5
  1223. package/bizar-dash/dist/assets/dnd-kit-Bormfg7j.js.map +0 -1
  1224. package/bizar-dash/dist/assets/git-pull-request-BCt0CEjc.js +0 -11
  1225. package/bizar-dash/dist/assets/git-pull-request-BCt0CEjc.js.map +0 -1
  1226. package/bizar-dash/dist/assets/index-C0JBGB5M.js +0 -1
  1227. package/bizar-dash/dist/assets/index-C0JBGB5M.js.map +0 -1
  1228. package/bizar-dash/dist/assets/index-CrWI7sQR.js +0 -1
  1229. package/bizar-dash/dist/assets/index-CrWI7sQR.js.map +0 -1
  1230. package/bizar-dash/dist/assets/main-CCimEcWH.js +0 -134
  1231. package/bizar-dash/dist/assets/main-CCimEcWH.js.map +0 -1
  1232. package/bizar-dash/dist/assets/play-B0rTjpSg.js +0 -6
  1233. package/bizar-dash/dist/assets/play-B0rTjpSg.js.map +0 -1
  1234. package/bizar-dash/dist/assets/plus-BaTQsS9G.js +0 -6
  1235. package/bizar-dash/dist/assets/plus-BaTQsS9G.js.map +0 -1
  1236. package/bizar-dash/dist/assets/refresh-cw-CoatVcs3.js +0 -6
  1237. package/bizar-dash/dist/assets/refresh-cw-CoatVcs3.js.map +0 -1
  1238. package/bizar-dash/dist/assets/terminal-k-1HFHcN.js +0 -11
  1239. package/bizar-dash/dist/assets/terminal-k-1HFHcN.js.map +0 -1
  1240. package/bizar-dash/dist/assets/trash-2-DtpKnAn2.js +0 -6
  1241. package/bizar-dash/dist/assets/trash-2-DtpKnAn2.js.map +0 -1
  1242. package/bizar-dash/dist/assets/triangle-alert-FHSs_e5b.js +0 -6
  1243. package/bizar-dash/dist/assets/triangle-alert-FHSs_e5b.js.map +0 -1
  1244. package/bizar-dash/dist/assets/wrench-CbBE0oQ0.js +0 -6
  1245. package/bizar-dash/dist/assets/wrench-CbBE0oQ0.js.map +0 -1
  1246. package/bizar-dash/dist/v8.html +0 -19
  1247. package/bizar-dash/src/web/v8/views/Tasks/CommandPalettePlaceholder.tsx +0 -106
  1248. package/bizar-dash/src/web/v8/views/Tasks/TasksKanbanPlaceholder.tsx +0 -62
  1249. package/bizar-dash/src/web/v8.html +0 -17
  1250. package/packages/sdk/.harness/agents.json +0 -17
  1251. package/packages/sdk/.harness/topology.json +0 -4
  1252. package/packages/sdk/ARCHITECTURE.md +0 -70
  1253. package/packages/sdk/README.md +0 -80
  1254. package/packages/sdk/src/agent-registry.ts +0 -304
  1255. package/packages/sdk/src/consensus/byzantine.ts +0 -587
  1256. package/packages/sdk/src/consensus/index.ts +0 -147
  1257. package/packages/sdk/src/consensus/queen.ts +0 -173
  1258. package/packages/sdk/src/consensus/types.ts +0 -199
  1259. package/packages/sdk/src/dangerous-patterns.ts +0 -127
  1260. package/packages/sdk/src/federation/audit.ts +0 -156
  1261. package/packages/sdk/src/federation/budget.ts +0 -269
  1262. package/packages/sdk/src/federation/envelope.ts +0 -144
  1263. package/packages/sdk/src/federation/hmac.ts +0 -160
  1264. package/packages/sdk/src/federation/index.ts +0 -443
  1265. package/packages/sdk/src/federation/pii.ts +0 -241
  1266. package/packages/sdk/src/federation/policy.ts +0 -112
  1267. package/packages/sdk/src/federation/trust.ts +0 -146
  1268. package/packages/sdk/src/fingerprint.ts +0 -0
  1269. package/packages/sdk/src/index.ts +0 -114
  1270. package/packages/sdk/src/mcp/bin.ts +0 -51
  1271. package/packages/sdk/src/mcp/server.ts +0 -848
  1272. package/packages/sdk/src/memory/index.ts +0 -160
  1273. package/packages/sdk/src/router/codemod-intent.ts +0 -125
  1274. package/packages/sdk/src/router/index.ts +0 -247
  1275. package/packages/sdk/src/router/memory-distillation-shim.mjs +0 -18
  1276. package/packages/sdk/src/router/memory-distillation.ts +0 -249
  1277. package/packages/sdk/src/router/model-router.ts +0 -235
  1278. package/packages/sdk/src/router/q-learning-router.ts +0 -304
  1279. package/packages/sdk/src/swarm-topology.ts +0 -279
  1280. package/packages/sdk/src/version.ts +0 -4
  1281. package/packages/sdk/tests/agent-registry.test.ts +0 -285
  1282. package/packages/sdk/tests/consensus.test.ts +0 -376
  1283. package/packages/sdk/tests/federation/audit.test.ts +0 -164
  1284. package/packages/sdk/tests/federation/budget.test.ts +0 -189
  1285. package/packages/sdk/tests/federation/envelope.test.ts +0 -120
  1286. package/packages/sdk/tests/federation/hmac.test.ts +0 -194
  1287. package/packages/sdk/tests/federation/orchestrator.test.ts +0 -176
  1288. package/packages/sdk/tests/federation/pii.test.ts +0 -106
  1289. package/packages/sdk/tests/federation/policy.test.ts +0 -140
  1290. package/packages/sdk/tests/federation/trust.test.ts +0 -124
  1291. package/packages/sdk/tests/mcp-tools.test.ts +0 -204
  1292. package/packages/sdk/tests/memory-distillation.test.mjs +0 -186
  1293. package/packages/sdk/tests/model-router.test.mjs +0 -108
  1294. package/packages/sdk/tests/q-learning-router.test.mjs +0 -100
  1295. package/packages/sdk/tests/router-orchestrator.test.mjs +0 -172
  1296. package/packages/sdk/tests/router.test.mjs +0 -91
  1297. package/packages/sdk/tests/sdk.test.mjs +0 -172
  1298. package/packages/sdk/tests/swarm-topology.test.ts +0 -258
  1299. package/packages/sdk/tsconfig.json +0 -25
  1300. /package/{.claude/worktrees/kanban-overhaul/bizar-dash/src/web/v8.html → bizar-dash/src/web/index.html} +0 -0
  1301. /package/{.claude/worktrees/kanban-overhaul/bizar-dash → bizar-dash}/src/web/v8/ui/kanban/KanbanCardBadges.tsx +0 -0
  1302. /package/{.claude/worktrees/kanban-overhaul/bizar-dash → bizar-dash}/src/web/v8/ui/kanban/KanbanEmptyColumn.tsx +0 -0
  1303. /package/{.claude/worktrees/kanban-overhaul/bizar-dash → bizar-dash}/src/web/v8/ui/kanban/KanbanProgress.tsx +0 -0
  1304. /package/{.claude/worktrees/kanban-overhaul/bizar-dash → bizar-dash}/src/web/v8/ui/kanban/KanbanToolbar.tsx +0 -0
  1305. /package/{.claude/worktrees/kanban-overhaul/bizar-dash → bizar-dash}/src/web/v8/ui/kanban/useKanbanSelection.ts +0 -0
  1306. /package/{.claude/worktrees/kanban-overhaul → plugins/bizar}/LICENSE +0 -0
@@ -0,0 +1,11 @@
1
+ import{j as e,r as a}from"./cmdk-DVxytz9i.js";import{c as u,S as f,D as x,I as p,d as n,i as S,F as b}from"./main-CdOm1Pj9.js";import{V as j}from"./ViewHeader-BqIPVKuG.js";import{C as k,b as T}from"./Card-Tyboihu7.js";import{G as w}from"./Grid-CiRyhAgR.js";import{T as C}from"./trash-2-CL4khSRv.js";import{B as D}from"./brain-fsBSDl2g.js";import{P as z}from"./power-off-NOJRLAIs.js";import{D as R}from"./download-BdHlstUY.js";import{S as P}from"./shield-alert-CWV2F5ab.js";import{R as O}from"./refresh-cw-1RBqDKgJ.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 A=u("Hammer",[["path",{d:"m15 12-8.373 8.373a1 1 0 1 1-3-3L12 9",key:"eefl8a"}],["path",{d:"m18 15 4-4",key:"16gjal"}],["path",{d:"m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172V7l-2.26-2.26a6 6 0 0 0-4.202-1.756L9 2.96l.92.82A6.18 6.18 0 0 1 12 8.4V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5",key:"b7pghm"}]]);/**
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 E=u("ScrollText",[["path",{d:"M15 12h-5",key:"r7krc0"}],["path",{d:"M15 8h-5",key:"1khuty"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]]),V=[{id:"gc",title:"Garbage collect",description:"Prune empty session files + orphaned task rows from the cache.",icon:C,endpoint:"/api/admin/gc",method:"POST",destructive:!1},{id:"cache-clear",title:"Clear cache",description:"Wipe the dashboard cache directory. Rebuilds on next access.",icon:x,endpoint:"/api/admin/cache/clear",method:"POST",destructive:!0},{id:"memory-reindex",title:"Reindex memory",description:"Rebuild the vault search index.",icon:D,endpoint:"/api/admin/memory/reindex",method:"POST",destructive:!1},{id:"logs-purge",title:"Purge old logs",description:"Delete log files older than 14 days from ~/.config/bizar/logs.",icon:E,endpoint:"/api/admin/logs/purge",method:"POST",destructive:!0},{id:"restart",title:"Restart dashboard",description:"Signal the server to shut down. The CLI launcher restarts it.",icon:z,endpoint:"/api/admin/restart",method:"POST",destructive:!0},{id:"rebuild",title:"Rebuild",description:"Re-run the installer build step.",icon:A,endpoint:"/api/admin/rebuild",method:"POST",destructive:!0},{id:"export-activity",title:"Export activity",description:"Download the full activity log as NDJSON.",icon:R,endpoint:"/api/admin/activity/export",method:"GET",destructive:!1}];function _(){return e.jsxs(f,{gap:4,"data-testid":"admin-view",children:[e.jsx(j,{title:"Admin",description:"Maintenance actions. Destructive actions require an inline confirm."}),e.jsx(w,{cols:{base:1,md:2,lg:3},gap:3,children:V.map(t=>e.jsx($,{action:t},t.id))})]})}function $({action:t}){const[r,o]=a.useState(!1),[v,s]=a.useState(!1),[l,d]=a.useState(null),[c,m]=a.useState(null),g=t.icon,h=async()=>{o(!0),m(null),d(null);try{if(t.method==="GET")window.open(t.endpoint,"_blank"),d("Download started");else{const i=await S(t.endpoint,{method:t.method,body:{}}),y=i.note?i.note:i.files!==void 0?`${i.files} file(s) removed (${i.bytes??0} bytes)`:(i.ok,"Done");d(y)}s(!1)}catch(i){m((i instanceof b,i.message))}finally{o(!1)}};return e.jsx(k,{variant:"default",children:e.jsx(T,{children:e.jsxs(f,{gap:2,children:[e.jsxs(p,{align:"center",gap:2,children:[e.jsx(g,{size:18,"aria-hidden":!0}),e.jsx("strong",{style:{fontSize:"var(--fs-13)"},children:t.title}),t.destructive&&e.jsxs("span",{style:{marginLeft:"auto",color:"var(--danger)",fontSize:"var(--fs-11)"},"aria-label":"Destructive",children:[e.jsx(P,{size:14,"aria-hidden":!0,style:{verticalAlign:"middle"}})," destructive"]})]}),e.jsx("p",{style:{color:"var(--fg-muted)",fontSize:"var(--fs-12)",margin:0},children:t.description}),l!==null&&e.jsx("span",{"data-testid":`admin-result-${t.id}`,style:{fontSize:"var(--fs-12)",color:"var(--success)"},children:l}),c!==null&&e.jsx("span",{role:"alert","data-testid":`admin-error-${t.id}`,style:{fontSize:"var(--fs-12)",color:"var(--danger)"},children:c}),v?e.jsxs(p,{gap:1,children:[e.jsx(n,{variant:"danger",onClick:()=>void h(),disabled:r,"data-testid":`admin-confirm-${t.id}`,children:"Confirm"}),e.jsx(n,{variant:"ghost",onClick:()=>s(!1),disabled:r,"data-testid":`admin-cancel-${t.id}`,children:"Cancel"})]}):e.jsxs(n,{variant:t.destructive?"danger":"primary",onClick:()=>t.destructive?s(!0):void h(),disabled:r,"data-testid":`admin-run-${t.id}`,children:[e.jsx(O,{size:14,"aria-hidden":!0})," ",r?"Working…":"Run"]})]})})})}export{_ as AdminView};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdminView-DP1NMxmG.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/hammer.js","../../../node_modules/lucide-react/dist/esm/icons/scroll-text.js","../../src/web/v8/views/Admin/AdminView.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.460.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Hammer = createLucideIcon(\"Hammer\", [\n [\"path\", { d: \"m15 12-8.373 8.373a1 1 0 1 1-3-3L12 9\", key: \"eefl8a\" }],\n [\"path\", { d: \"m18 15 4-4\", key: \"16gjal\" }],\n [\n \"path\",\n {\n d: \"m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172V7l-2.26-2.26a6 6 0 0 0-4.202-1.756L9 2.96l.92.82A6.18 6.18 0 0 1 12 8.4V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5\",\n key: \"b7pghm\"\n }\n ]\n]);\n\nexport { Hammer as default };\n//# sourceMappingURL=hammer.js.map\n","/**\n * @license lucide-react v0.460.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst ScrollText = createLucideIcon(\"ScrollText\", [\n [\"path\", { d: \"M15 12h-5\", key: \"r7krc0\" }],\n [\"path\", { d: \"M15 8h-5\", key: \"1khuty\" }],\n [\"path\", { d: \"M19 17V5a2 2 0 0 0-2-2H4\", key: \"zz82l3\" }],\n [\n \"path\",\n {\n d: \"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3\",\n key: \"1ph1d7\"\n }\n ]\n]);\n\nexport { ScrollText as default };\n//# sourceMappingURL=scroll-text.js.map\n","/**\n * v8/views/Admin/AdminView.tsx — Sprint S40, v9.3.0.\n *\n * Card grid of admin / maintenance actions. Each tile posts to its\n * /api/admin/* endpoint, shows a spinner while busy, surfaces the\n * result inline (or the error message), and uses the inline-confirm\n * pattern for destructive actions (cache clear, log purge, restart,\n * rebuild).\n */\n\nimport { useState } from 'react';\nimport {\n RefreshCw,\n Trash2,\n Database,\n Brain,\n PowerOff,\n Hammer,\n ScrollText,\n Download,\n ShieldAlert,\n} from 'lucide-react';\nimport type { LucideIcon } from 'lucide-react';\nimport { Stack } from '../../ui/primitives/Stack.js';\nimport { Inline } from '../../ui/primitives/Inline.js';\nimport { ViewHeader } from '../../ui/data/ViewHeader.js';\nimport { Card, CardBody } from '../../ui/data/Card.js';\nimport { Button } from '../../ui/controls/Button.js';\nimport { Grid } from '../../ui/primitives/Grid.js';\nimport { fetchJson, FetchError } from '../../data/fetcher.js';\n\ninterface AdminAction {\n id: string;\n title: string;\n description: string;\n icon: LucideIcon;\n endpoint: string;\n method: 'POST' | 'GET';\n destructive: boolean;\n}\n\nconst ACTIONS: AdminAction[] = [\n {\n id: 'gc',\n title: 'Garbage collect',\n description: 'Prune empty session files + orphaned task rows from the cache.',\n icon: Trash2,\n endpoint: '/api/admin/gc',\n method: 'POST',\n destructive: false,\n },\n {\n id: 'cache-clear',\n title: 'Clear cache',\n description: 'Wipe the dashboard cache directory. Rebuilds on next access.',\n icon: Database,\n endpoint: '/api/admin/cache/clear',\n method: 'POST',\n destructive: true,\n },\n {\n id: 'memory-reindex',\n title: 'Reindex memory',\n description: 'Rebuild the vault search index.',\n icon: Brain,\n endpoint: '/api/admin/memory/reindex',\n method: 'POST',\n destructive: false,\n },\n {\n id: 'logs-purge',\n title: 'Purge old logs',\n description: 'Delete log files older than 14 days from ~/.config/bizar/logs.',\n icon: ScrollText,\n endpoint: '/api/admin/logs/purge',\n method: 'POST',\n destructive: true,\n },\n {\n id: 'restart',\n title: 'Restart dashboard',\n description: 'Signal the server to shut down. The CLI launcher restarts it.',\n icon: PowerOff,\n endpoint: '/api/admin/restart',\n method: 'POST',\n destructive: true,\n },\n {\n id: 'rebuild',\n title: 'Rebuild',\n description: 'Re-run the installer build step.',\n icon: Hammer,\n endpoint: '/api/admin/rebuild',\n method: 'POST',\n destructive: true,\n },\n {\n id: 'export-activity',\n title: 'Export activity',\n description: 'Download the full activity log as NDJSON.',\n icon: Download,\n endpoint: '/api/admin/activity/export',\n method: 'GET',\n destructive: false,\n },\n];\n\nexport function AdminView(): JSX.Element {\n return (\n <Stack gap={4} data-testid=\"admin-view\">\n <ViewHeader\n title=\"Admin\"\n description=\"Maintenance actions. Destructive actions require an inline confirm.\"\n />\n <Grid cols={{ base: 1, md: 2, lg: 3 }} gap={3}>\n {ACTIONS.map((a) => (\n <AdminTile key={a.id} action={a} />\n ))}\n </Grid>\n </Stack>\n );\n}\n\nfunction AdminTile({ action }: { action: AdminAction }): JSX.Element {\n const [busy, setBusy] = useState<boolean>(false);\n const [confirm, setConfirm] = useState<boolean>(false);\n const [result, setResult] = useState<string | null>(null);\n const [error, setError] = useState<string | null>(null);\n const Icon = action.icon;\n\n const run = async (): Promise<void> => {\n setBusy(true);\n setError(null);\n setResult(null);\n try {\n if (action.method === 'GET') {\n // For GET endpoints (export), trigger a download by navigating\n // to the endpoint in a new tab. The server sets Content-Disposition.\n window.open(action.endpoint, '_blank');\n setResult('Download started');\n } else {\n const res = await fetchJson<{ ok?: boolean; files?: number; bytes?: number; note?: string }>(\n action.endpoint,\n { method: action.method, body: {} },\n );\n const summary = res.note\n ? res.note\n : res.files !== undefined\n ? `${res.files} file(s) removed (${res.bytes ?? 0} bytes)`\n : res.ok ? 'Done' : 'Done';\n setResult(summary);\n }\n setConfirm(false);\n } catch (err) {\n setError(err instanceof FetchError ? err.message : (err as Error).message);\n } finally {\n setBusy(false);\n }\n };\n\n return (\n <Card variant=\"default\">\n <CardBody>\n <Stack gap={2}>\n <Inline align=\"center\" gap={2}>\n <Icon size={18} aria-hidden />\n <strong style={{ fontSize: 'var(--fs-13)' }}>{action.title}</strong>\n {action.destructive && (\n <span style={{ marginLeft: 'auto', color: 'var(--danger)', fontSize: 'var(--fs-11)' }} aria-label=\"Destructive\">\n <ShieldAlert size={14} aria-hidden style={{ verticalAlign: 'middle' }} /> destructive\n </span>\n )}\n </Inline>\n <p style={{ color: 'var(--fg-muted)', fontSize: 'var(--fs-12)', margin: 0 }}>\n {action.description}\n </p>\n {result !== null && (\n <span data-testid={`admin-result-${action.id}`} style={{ fontSize: 'var(--fs-12)', color: 'var(--success)' }}>\n {result}\n </span>\n )}\n {error !== null && (\n <span role=\"alert\" data-testid={`admin-error-${action.id}`} style={{ fontSize: 'var(--fs-12)', color: 'var(--danger)' }}>\n {error}\n </span>\n )}\n {confirm ? (\n <Inline gap={1}>\n <Button variant=\"danger\" onClick={() => void run()} disabled={busy} data-testid={`admin-confirm-${action.id}`}>\n Confirm\n </Button>\n <Button variant=\"ghost\" onClick={() => setConfirm(false)} disabled={busy} data-testid={`admin-cancel-${action.id}`}>\n Cancel\n </Button>\n </Inline>\n ) : (\n <Button\n variant={action.destructive ? 'danger' : 'primary'}\n onClick={() => (action.destructive ? setConfirm(true) : void run())}\n disabled={busy}\n data-testid={`admin-run-${action.id}`}\n >\n <RefreshCw size={14} aria-hidden /> {busy ? 'Working…' : 'Run'}\n </Button>\n )}\n </Stack>\n </CardBody>\n </Card>\n );\n}"],"names":["Hammer","createLucideIcon","ScrollText","ACTIONS","Trash2","Database","Brain","PowerOff","Download","AdminView","jsxs","Stack","jsx","ViewHeader","Grid","a","AdminTile","action","busy","setBusy","useState","confirm","setConfirm","result","setResult","error","setError","Icon","run","res","fetchJson","summary","err","FetchError","Card","CardBody","Inline","ShieldAlert","Button","RefreshCw"],"mappings":"sgBAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASA,MAAMA,EAASC,EAAiB,SAAU,CACxC,CAAC,OAAQ,CAAE,EAAG,wCAAyC,IAAK,QAAQ,CAAE,EACtE,CAAC,OAAQ,CAAE,EAAG,aAAc,IAAK,QAAQ,CAAE,EAC3C,CACE,OACA,CACE,EAAG,+JACH,IAAK,QACX,CACA,CACA,CAAC,ECnBD;AAAA;AAAA;AAAA;AAAA;AAAA,GASA,MAAMC,EAAaD,EAAiB,aAAc,CAChD,CAAC,OAAQ,CAAE,EAAG,YAAa,IAAK,QAAQ,CAAE,EAC1C,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAQ,CAAE,EACzC,CAAC,OAAQ,CAAE,EAAG,2BAA4B,IAAK,QAAQ,CAAE,EACzD,CACE,OACA,CACE,EAAG,6GACH,IAAK,QACX,CACA,CACA,CAAC,ECqBKE,EAAyB,CAC7B,CACE,GAAI,KACJ,MAAO,kBACP,YAAa,iEACb,KAAMC,EACN,SAAU,gBACV,OAAQ,OACR,YAAa,EAAA,EAEf,CACE,GAAI,cACJ,MAAO,cACP,YAAa,+DACb,KAAMC,EACN,SAAU,yBACV,OAAQ,OACR,YAAa,EAAA,EAEf,CACE,GAAI,iBACJ,MAAO,iBACP,YAAa,kCACb,KAAMC,EACN,SAAU,4BACV,OAAQ,OACR,YAAa,EAAA,EAEf,CACE,GAAI,aACJ,MAAO,iBACP,YAAa,iEACb,KAAMJ,EACN,SAAU,wBACV,OAAQ,OACR,YAAa,EAAA,EAEf,CACE,GAAI,UACJ,MAAO,oBACP,YAAa,gEACb,KAAMK,EACN,SAAU,qBACV,OAAQ,OACR,YAAa,EAAA,EAEf,CACE,GAAI,UACJ,MAAO,UACP,YAAa,mCACb,KAAMP,EACN,SAAU,qBACV,OAAQ,OACR,YAAa,EAAA,EAEf,CACE,GAAI,kBACJ,MAAO,kBACP,YAAa,4CACb,KAAMQ,EACN,SAAU,6BACV,OAAQ,MACR,YAAa,EAAA,CAEjB,EAEO,SAASC,GAAyB,CACvC,OACEC,EAAAA,KAACC,EAAA,CAAM,IAAK,EAAG,cAAY,aACzB,SAAA,CAAAC,EAAAA,IAACC,EAAA,CACC,MAAM,QACN,YAAY,qEAAA,CAAA,EAEdD,EAAAA,IAACE,EAAA,CAAK,KAAM,CAAE,KAAM,EAAG,GAAI,EAAG,GAAI,CAAA,EAAK,IAAK,EACzC,SAAAX,EAAQ,IAAKY,GACZH,EAAAA,IAACI,EAAA,CAAqB,OAAQD,CAAA,EAAdA,EAAE,EAAe,CAClC,CAAA,CACH,CAAA,EACF,CAEJ,CAEA,SAASC,EAAU,CAAE,OAAAC,GAAgD,CACnE,KAAM,CAACC,EAAMC,CAAO,EAAIC,EAAAA,SAAkB,EAAK,EACzC,CAACC,EAASC,CAAU,EAAIF,EAAAA,SAAkB,EAAK,EAC/C,CAACG,EAAQC,CAAS,EAAIJ,EAAAA,SAAwB,IAAI,EAClD,CAACK,EAAOC,CAAQ,EAAIN,EAAAA,SAAwB,IAAI,EAChDO,EAAOV,EAAO,KAEdW,EAAM,SAA2B,CACrCT,EAAQ,EAAI,EACZO,EAAS,IAAI,EACbF,EAAU,IAAI,EACd,GAAI,CACF,GAAIP,EAAO,SAAW,MAGpB,OAAO,KAAKA,EAAO,SAAU,QAAQ,EACrCO,EAAU,kBAAkB,MACvB,CACL,MAAMK,EAAM,MAAMC,EAChBb,EAAO,SACP,CAAE,OAAQA,EAAO,OAAQ,KAAM,CAAA,CAAC,CAAE,EAE9Bc,EAAUF,EAAI,KAChBA,EAAI,KACJA,EAAI,QAAU,OACZ,GAAGA,EAAI,KAAK,qBAAqBA,EAAI,OAAS,CAAC,WAC/CA,EAAI,GAAK,QACfL,EAAUO,CAAO,CACnB,CACAT,EAAW,EAAK,CAClB,OAASU,EAAK,CACZN,GAASM,aAAeC,EAAaD,EAAI,QAAgC,CAC3E,QAAA,CACEb,EAAQ,EAAK,CACf,CACF,EAEA,OACEP,EAAAA,IAACsB,GAAK,QAAQ,UACZ,eAACC,EAAA,CACC,SAAAzB,EAAAA,KAACC,EAAA,CAAM,IAAK,EACV,SAAA,CAAAD,EAAAA,KAAC0B,EAAA,CAAO,MAAM,SAAS,IAAK,EAC1B,SAAA,CAAAxB,EAAAA,IAACe,EAAA,CAAK,KAAM,GAAI,cAAW,GAAC,EAC5Bf,MAAC,UAAO,MAAO,CAAE,SAAU,cAAA,EAAmB,WAAO,MAAM,EAC1DK,EAAO,aACNP,EAAAA,KAAC,OAAA,CAAK,MAAO,CAAE,WAAY,OAAQ,MAAO,gBAAiB,SAAU,cAAA,EAAkB,aAAW,cAChG,SAAA,CAAAE,EAAAA,IAACyB,EAAA,CAAY,KAAM,GAAI,cAAW,GAAC,MAAO,CAAE,cAAe,QAAA,CAAS,CAAG,EAAE,cAAA,CAAA,CAC3E,CAAA,EAEJ,EACAzB,EAAAA,IAAC,IAAA,CAAE,MAAO,CAAE,MAAO,kBAAmB,SAAU,eAAgB,OAAQ,CAAA,EACrE,SAAAK,EAAO,WAAA,CACV,EACCM,IAAW,MACVX,EAAAA,IAAC,OAAA,CAAK,cAAa,gBAAgBK,EAAO,EAAE,GAAI,MAAO,CAAE,SAAU,eAAgB,MAAO,kBACvF,SAAAM,EACH,EAEDE,IAAU,MACTb,EAAAA,IAAC,QAAK,KAAK,QAAQ,cAAa,eAAeK,EAAO,EAAE,GAAI,MAAO,CAAE,SAAU,eAAgB,MAAO,eAAA,EACnG,SAAAQ,EACH,EAEDJ,EACCX,EAAAA,KAAC0B,EAAA,CAAO,IAAK,EACX,SAAA,CAAAxB,EAAAA,IAAC0B,EAAA,CAAO,QAAQ,SAAS,QAAS,IAAM,KAAKV,IAAO,SAAUV,EAAM,cAAa,iBAAiBD,EAAO,EAAE,GAAI,SAAA,UAE/G,QACCqB,EAAA,CAAO,QAAQ,QAAQ,QAAS,IAAMhB,EAAW,EAAK,EAAG,SAAUJ,EAAM,cAAa,gBAAgBD,EAAO,EAAE,GAAI,SAAA,QAAA,CAEpH,CAAA,CAAA,CACF,EAEAP,EAAAA,KAAC4B,EAAA,CACC,QAASrB,EAAO,YAAc,SAAW,UACzC,QAAS,IAAOA,EAAO,YAAcK,EAAW,EAAI,EAAI,KAAKM,EAAA,EAC7D,SAAUV,EACV,cAAa,aAAaD,EAAO,EAAE,GAEnC,SAAA,CAAAL,EAAAA,IAAC2B,EAAA,CAAU,KAAM,GAAI,cAAW,GAAC,EAAE,IAAErB,EAAO,WAAa,KAAA,CAAA,CAAA,CAC3D,CAAA,CAEJ,EACF,EACF,CAEJ","x_google_ignoreList":[0,1]}
@@ -0,0 +1,67 @@
1
+ import{r as l,j as a,S as ta,e as ue,P,m as le,b as L,i as R,c as ee,x as ra,n as Ge,u as ur,d as fr,f as pr,D as vr,y as na,R as y,z as oa,h as aa,A as sa,l as ia,g as la,F as ca,k as da}from"./cmdk-DVxytz9i.js";import{u as ua,a as nr,D as fa,c as pa,s as va,K as ga,P as ma,b as ha,d as xa,C as ba}from"./dnd-kit-DrHErSkw.js";import{c as $e,g as I,l as _t,M as ya,m as gr,R as wa,n as mr,o as hr,p as Xe,q as xr,C as Ca,r as Ra,s as _a}from"./main-CdOm1Pj9.js";import{P as Ia}from"./plus-M6LYiKX8.js";import{C as Ma}from"./calendar-DsHTZoCU.js";import{G as ja}from"./Avatar-DZPv9pvd.js";import{u as br}from"./index-CASP1n-5.js";import{M as ka}from"./ActivityFeed-Da-JCrE6.js";import{c as It,u as Fe}from"./index-C4Vq_2LM.js";import{R as Ta}from"./Select-Cw7Qtz2M.js";import{C as yr}from"./ViewHeader-BqIPVKuG.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 Ea=$e("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 Sa=$e("Ellipsis",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]);/**
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 Na=$e("Paperclip",[["path",{d:"m21.44 11.05-9.19 9.19a6 6 0 0 1-8.49-8.49l8.57-8.57A4 4 0 1 1 18 8.84l-8.59 8.57a2 2 0 0 1-2.83-2.83l8.49-8.48",key:"1u3ebp"}]]);/**
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 Pa=$e("Repeat",[["path",{d:"m17 2 4 4-4 4",key:"nntrym"}],["path",{d:"M3 11v-1a4 4 0 0 1 4-4h14",key:"84bu3i"}],["path",{d:"m7 22-4-4 4-4",key:"1wqhfi"}],["path",{d:"M21 13v1a4 4 0 0 1-4 4H3",key:"1rx37r"}]]);/**
22
+ * @license lucide-react v0.460.0 - ISC
23
+ *
24
+ * This source code is licensed under the ISC license.
25
+ * See the LICENSE file in the root directory of this source tree.
26
+ */const Aa=$e("User",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]),Da=l.createContext({selection:new Set,selectionMode:!1});function Nc(e){const{columns:n,onCardMove:r,children:t,className:o,selection:s,onSelectionChange:i,selectionMode:c}=e,u=ua(nr(ma,{activationConstraint:{distance:4}}),nr(ga,{coordinateGetter:va})),[,v]=l.useState(null),p=f=>{var b;v(null);const{active:g,over:d}=f;if(d===null)return;const x=String(g.id),h=String(d.id),C=((b=n.find(M=>M.id===h))==null?void 0:b.id)??x.split("::")[0];if(C===void 0)return;const m=x.split("::")[0]??"";m!==C&&r!==void 0&&r(x,m,C)};return a.jsx(Da.Provider,{value:{selection:s??new Set,selectionMode:c===!0,onSelectionChange:i},children:a.jsx(fa,{sensors:u,collisionDetection:pa,onDragStart:f=>v(String(f.active.id)),onDragEnd:p,children:a.jsx("div",{className:I("v8-kanban-board",o),style:{display:"grid",gridAutoFlow:"column",gridAutoColumns:"minmax(320px, 1fr)",gap:"var(--space-4)",padding:"var(--space-4) var(--space-5)",overflowX:"auto",overflowY:"hidden",height:"100%",width:"100%",alignItems:"stretch"},role:"region","aria-label":"Kanban board",children:t})})})}const Oa={neutral:"var(--fg-subtle)",info:"var(--info)",success:"var(--success)",warning:"var(--warning)",danger:"var(--danger)",accent:"var(--accent)"},Pc=l.forwardRef(function(n,r){const{column:t,children:o,onAdd:s,onOverflow:i,exceedsWip:c,className:u,style:v,...p}=n,{setNodeRef:f,isOver:g}=ha({id:t.id});return a.jsxs("section",{ref:r,className:I("v8-kanban-column",g&&"is-over",u),style:{display:"flex",flexDirection:"column",width:280,flexShrink:0,background:"var(--surface-0)",border:"1px solid var(--border)",borderRadius:"var(--radius-lg)",height:"100%",...v},"aria-label":typeof t.title=="string"?t.title:void 0,...p,children:[a.jsxs("header",{style:{display:"flex",alignItems:"center",gap:"var(--space-2)",padding:"var(--space-3) var(--space-3)",borderBottom:"1px solid var(--border)"},children:[a.jsx("span",{"aria-hidden":"true",style:{width:8,height:8,borderRadius:"var(--radius-pill)",background:Oa[t.accentTone??"neutral"],flexShrink:0}}),a.jsxs("div",{style:{flex:1,minWidth:0},children:[a.jsx("div",{style:{fontSize:"var(--fs-13)",fontWeight:600,color:"var(--fg)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:t.title}),(t.count!==void 0||t.wipLimit!==void 0)&&a.jsxs("div",{style:{fontSize:"var(--fs-12)",color:c===!0?"var(--danger)":"var(--fg-subtle)",fontVariantNumeric:"tabular-nums"},children:[t.count??0,t.wipLimit!==void 0&&` / ${t.wipLimit}`]})]}),i!==void 0&&a.jsx("button",{type:"button",onClick:i,"aria-label":"Column options",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:24,height:24,background:"transparent",border:0,borderRadius:"var(--radius-sm)",color:"var(--fg-muted)",cursor:"pointer"},children:a.jsx(Sa,{size:14,"aria-hidden":"true"})}),s!==void 0&&a.jsx("button",{type:"button",onClick:s,"aria-label":"Add card",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:24,height:24,background:"transparent",border:0,borderRadius:"var(--radius-sm)",color:"var(--fg-muted)",cursor:"pointer"},children:a.jsx(Ia,{size:14,"aria-hidden":"true"})})]}),a.jsx("div",{ref:f,className:"v8-kanban-column__body",style:{flex:1,minHeight:0,padding:"var(--space-2)",display:"flex",flexDirection:"column",gap:"var(--space-2)",overflowY:"auto",background:g?"color-mix(in oklch, var(--accent) 6%, transparent)":"transparent",transition:"background var(--motion-fast) var(--ease-out)"},children:o})]})}),Ga={accent:"var(--accent)",info:"var(--info)",success:"var(--success)",warning:"var(--warning)",danger:"var(--danger)"};function $a(e){const{value:n,label:r,caption:t,tone:o="accent",layout:s="inline",className:i}=e;if(n==null)return null;const c=Math.max(0,Math.min(100,n));if(c===0&&r===void 0&&t===void 0)return null;const u=Ga[o];return s==="block"?a.jsxs("div",{className:I("v8-kanban-progress v8-kanban-progress--block",i),children:[t!==void 0&&a.jsxs("div",{style:{fontSize:"var(--fs-12)",color:"var(--fg-muted)",marginBottom:4,display:"flex",justifyContent:"space-between",gap:"var(--space-2)"},children:[a.jsx("span",{children:t}),r!==void 0&&a.jsx("span",{style:{fontVariantNumeric:"tabular-nums"},children:r})]}),a.jsx("div",{role:"progressbar","aria-valuenow":c,"aria-valuemin":0,"aria-valuemax":100,style:{position:"relative",height:6,borderRadius:"var(--radius-pill)",background:"color-mix(in oklch, var(--fg-muted) 12%, transparent)",overflow:"hidden"},children:a.jsx("div",{style:{position:"absolute",inset:0,width:`${c}%`,background:u,borderRadius:"var(--radius-pill)",transition:"width var(--motion-base) var(--ease-out)"}})})]}):a.jsxs("div",{className:I("v8-kanban-progress v8-kanban-progress--inline",i),style:{display:"flex",alignItems:"center",gap:"var(--space-2)",fontSize:"var(--fs-12)",color:"var(--fg-muted)"},children:[a.jsx("div",{role:"progressbar","aria-valuenow":c,"aria-valuemin":0,"aria-valuemax":100,style:{flex:1,minWidth:0,position:"relative",height:4,borderRadius:"var(--radius-pill)",background:"color-mix(in oklch, var(--fg-muted) 12%, transparent)",overflow:"hidden"},children:a.jsx("div",{style:{position:"absolute",inset:0,width:`${c}%`,background:u,borderRadius:"var(--radius-pill)",transition:"width var(--motion-base) var(--ease-out)"}})}),r!==void 0&&a.jsx("span",{style:{fontVariantNumeric:"tabular-nums"},children:r})]})}const Fa={neutral:"var(--fg-muted)",info:"var(--info)",success:"var(--success)",warning:"var(--warning)",danger:"var(--danger)",accent:"var(--accent)"},La={neutral:"color-mix(in oklch, var(--fg-muted) 12%, transparent)",info:"color-mix(in oklch, var(--info) 14%, transparent)",success:"color-mix(in oklch, var(--success) 14%, transparent)",warning:"color-mix(in oklch, var(--warning) 14%, transparent)",danger:"color-mix(in oklch, var(--danger) 14%, transparent)",accent:"color-mix(in oklch, var(--accent) 14%, transparent)"};function Ba({badges:e,max:n=4,className:r}){if(e.length===0)return null;const t=e.slice(0,n),o=e.length-t.length;return a.jsxs("div",{className:I("v8-kanban-card-badges",r),style:{display:"flex",flexWrap:"wrap",gap:4,marginTop:"var(--space-2)"},children:[t.map((s,i)=>{const c=s.tone??"neutral";return a.jsxs("span",{title:s.title,style:{display:"inline-flex",alignItems:"center",gap:4,height:18,padding:"0 6px",borderRadius:"var(--radius-pill)",background:La[c],color:Fa[c],fontSize:"var(--fs-12)",fontWeight:500,lineHeight:1,whiteSpace:"nowrap",maxWidth:140,overflow:"hidden",textOverflow:"ellipsis"},children:[s.icon!==void 0&&a.jsx("span",{style:{display:"inline-flex"},children:s.icon}),a.jsx("span",{style:{overflow:"hidden",textOverflow:"ellipsis"},children:s.label})]},i)}),o>0&&a.jsxs("span",{style:{display:"inline-flex",alignItems:"center",height:18,padding:"0 6px",borderRadius:"var(--radius-pill)",background:"color-mix(in oklch, var(--fg-muted) 12%, transparent)",color:"var(--fg-muted)",fontSize:"var(--fs-12)",fontWeight:500,lineHeight:1},children:["+",o]})]})}const or={low:"var(--fg-subtle)",medium:"var(--info)",high:"var(--warning)",urgent:"var(--danger)"},za={low:"Low",medium:"Medium",high:"High",urgent:"Urgent"},Ka={neutral:"var(--fg-subtle)",info:"var(--info)",success:"var(--success)",warning:"var(--warning)",danger:"var(--danger)",accent:"var(--accent)"},Ac=l.forwardRef(function(n,r){const{card:t,variant:o="default",isDragging:s,dragHandleProps:i,selected:c,indeterminate:u,onSelectionChange:v,showSelection:p,className:f,style:g,...d}=n,x=v!==void 0,h=[];if(t.cardBadges===void 0&&(t.recurring===!0&&h.push({label:"Recurring",tone:"info",icon:a.jsx(Pa,{size:10,"aria-hidden":"true"})}),t.assignee&&h.push({label:t.assignee,tone:"accent",icon:a.jsx(Aa,{size:10,"aria-hidden":"true"})}),t.subtaskCount!==void 0&&t.subtaskCount>0&&h.push({label:`${t.subtaskCount} subtasks`,tone:"neutral"}),t.dependencyCount!==void 0&&t.dependencyCount>0&&h.push({label:`${t.dependencyCount} deps`,tone:"warning"}),t.tags))for(const m of t.tags.slice(0,3))h.push({label:m,tone:"neutral"});const C=t.cardBadges??h;return a.jsxs("div",{ref:r,"data-kanban-card-id":t.id,"data-selected":c===!0?"true":void 0,className:I("v8-kanban-card",`v8-kanban-card--${o}`,s&&"is-dragging",c===!0&&"is-selected",f),style:{position:"relative",background:c===!0?"var(--surface-2)":"var(--surface-1)",border:`1px solid ${c===!0?"var(--accent)":"var(--border)"}`,borderRadius:"var(--radius)",padding:"var(--space-3)",boxShadow:s===!0?"var(--shadow-3)":"none",transform:s===!0?"rotate(1.5deg)":void 0,transition:"box-shadow var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out)",...g},...i,...d,children:[x&&a.jsxs("button",{type:"button",role:"checkbox","aria-checked":u===!0?"mixed":c===!0,"aria-label":c===!0?"Deselect card":"Select card",onClick:m=>{m.stopPropagation(),v==null||v(t.id,c!==!0)},onPointerDown:m=>m.stopPropagation(),style:{position:"absolute",top:6,left:6,width:16,height:16,display:"inline-flex",alignItems:"center",justifyContent:"center",borderRadius:"var(--radius-sm)",border:`1px solid ${c===!0?"var(--accent)":"var(--border-strong)"}`,background:c===!0?"var(--accent)":"var(--surface-0)",color:"var(--fg-on-accent)",cursor:"pointer",opacity:p===!0||c===!0?1:0,zIndex:2},className:"v8-kanban-card__checkbox",children:[c===!0&&a.jsx(_t,{size:10,"aria-hidden":"true"}),u===!0&&a.jsx("span",{"aria-hidden":"true",style:{width:8,height:2,background:"var(--fg-on-accent)",borderRadius:1}})]}),o!=="compact"&&a.jsx("span",{"aria-hidden":"true",style:{position:"absolute",left:0,top:6,bottom:6,width:3,borderRadius:"0 var(--radius-pill) var(--radius-pill) 0",background:t.priority!==void 0?or[t.priority]:Ka[t.accentTone??"neutral"]}}),a.jsxs("div",{style:{paddingLeft:x?`calc(${o!=="compact"?"var(--space-2)":"0"} + 18px)`:o!=="compact"?"var(--space-2)":0},children:[a.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"var(--space-2)",marginBottom:o==="detailed"?"var(--space-2)":0},children:[a.jsxs("div",{style:{flex:1,minWidth:0},children:[a.jsx("div",{style:{fontSize:"var(--fs-13)",fontWeight:500,color:"var(--fg)",lineHeight:"var(--lh-snug)"},children:t.title}),o==="detailed"&&t.description!==void 0&&a.jsx("div",{style:{fontSize:"var(--fs-12)",color:"var(--fg-muted)",marginTop:"var(--space-1)",display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden"},children:t.description})]}),t.priority!==void 0&&a.jsx("span",{"aria-label":`Priority: ${za[t.priority]}`,style:{width:8,height:8,borderRadius:"var(--radius-pill)",background:or[t.priority],flexShrink:0,marginTop:6}})]}),t.badges!==void 0&&a.jsx("div",{style:{display:"flex",gap:4,flexWrap:"wrap",marginTop:"var(--space-2)"},children:t.badges}),C.length>0&&a.jsx(Ba,{badges:C}),t.progress!==void 0&&a.jsx("div",{style:{marginTop:"var(--space-2)"},children:a.jsx($a,{value:t.progress,label:`${Math.round(t.progress)}%`,caption:t.currentStep,tone:t.progress>=100?"success":"accent",layout:t.currentStep?"block":"inline"})}),o!=="compact"&&(t.due!==void 0||t.comments!==void 0||t.attachments!==void 0||t.branch!==void 0)&&a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"var(--space-3)",marginTop:"var(--space-2)",fontSize:"var(--fs-12)",color:"var(--fg-muted)",fontVariantNumeric:"tabular-nums"},children:[t.due!==void 0&&a.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:4},children:[a.jsx(Ma,{size:12,"aria-hidden":"true"}),t.due]}),t.comments!==void 0&&t.comments>0&&a.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:4},children:[a.jsx(ya,{size:12,"aria-hidden":"true"}),t.comments]}),t.attachments!==void 0&&t.attachments>0&&a.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:4},children:[a.jsx(Na,{size:12,"aria-hidden":"true"}),t.attachments]}),t.branch!==void 0&&a.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:4,fontFamily:"var(--font-mono)"},title:t.branch,children:[a.jsx(ja,{size:12,"aria-hidden":"true"}),t.branch]})]})]})]})});function Dc(e){const n=xa({id:e}),r={transform:ba.Transform.toString(n.transform),transition:n.transition};return{attributes:n.attributes,listeners:n.listeners,setNodeRef:n.setNodeRef,isDragging:n.isDragging,style:r}}l.forwardRef(function(n,r){const{as:t,full:o,inline:s,noVertical:i,children:c,className:u,style:v,...p}=n,f=t??"div",g={display:s?"inline-flex":"flex",alignItems:i?"stretch":"center",justifyContent:"center",...o&&{width:"100%",height:"100%"},...v};return a.jsx(f,{ref:r,className:I("v8-center",u),style:g,...p,children:c})});const Va={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)"},Oc=l.forwardRef(function(n,r){const{variant:t="ghost",size:o="md",asChild:s,active:i,disabled:c,children:u,className:v,style:p,type:f,...g}=n,d=s?ta:"button",x=Va[o],h={display:"inline-flex",alignItems:"center",justifyContent:"center",width:x,height:x,flexShrink:0,background:i===!0?Ya[t]:Ha[t],color:Ua[t],border:"1px solid",borderColor:Wa[t],borderRadius:"var(--radius-sm)",cursor:c===!0?"not-allowed":"pointer",opacity:c===!0?.55:1,transition:"background var(--motion-fast) var(--ease-out)",...p};return a.jsx(d,{ref:r,type:s?void 0:f??"button",disabled:c,"data-active":i===!0?"true":void 0,className:I("v8-icon-btn",`v8-icon-btn--${t}`,`v8-icon-btn--${o}`,v),style:h,...g,children:u})});var Ze="Checkbox",[qa]=ee(Ze),[Xa,Mt]=qa(Ze);function Za(e){const{__scopeCheckbox:n,checked:r,children:t,defaultChecked:o,disabled:s,form:i,name:c,onCheckedChange:u,required:v,value:p="on",internal_do_not_use_render:f}=e,[g,d]=le({prop:r,defaultProp:o??!1,onChange:u,caller:Ze}),[x,h]=l.useState(null),[C,m]=l.useState(null),b=l.useRef(!1),M=x?!!i||!!x.closest("form"):!0,j={checked:g,disabled:s,setChecked:d,control:x,setControl:h,name:c,form:i,value:p,hasConsumerStoppedPropagationRef:b,required:v,defaultChecked:he(o)?!1:o,isFormControl:M,bubbleInput:C,setBubbleInput:m};return a.jsx(Xa,{scope:n,...j,children:Ja(f)?f(j):t})}var wr="CheckboxTrigger",Cr=l.forwardRef(({__scopeCheckbox:e,onKeyDown:n,onClick:r,...t},o)=>{const{control:s,value:i,disabled:c,checked:u,required:v,setControl:p,setChecked:f,hasConsumerStoppedPropagationRef:g,isFormControl:d,bubbleInput:x}=Mt(wr,e),h=L(o,p),C=l.useRef(u);return l.useEffect(()=>{const m=s==null?void 0:s.form;if(m){const b=()=>f(C.current);return m.addEventListener("reset",b),()=>m.removeEventListener("reset",b)}},[s,f]),a.jsx(P.button,{type:"button",role:"checkbox","aria-checked":he(u)?"mixed":u,"aria-required":v,"data-state":kr(u),"data-disabled":c?"":void 0,disabled:c,value:i,...t,ref:h,onKeyDown:R(n,m=>{m.key==="Enter"&&m.preventDefault()}),onClick:R(r,m=>{f(b=>he(b)?!0:!b),x&&d&&(g.current=m.isPropagationStopped(),g.current||m.stopPropagation())})})});Cr.displayName=wr;var Rr=l.forwardRef((e,n)=>{const{__scopeCheckbox:r,name:t,checked:o,defaultChecked:s,required:i,disabled:c,value:u,onCheckedChange:v,form:p,...f}=e;return a.jsx(Za,{__scopeCheckbox:r,checked:o,defaultChecked:s,disabled:c,required:i,onCheckedChange:v,name:t,form:p,value:u,internal_do_not_use_render:({isFormControl:g})=>a.jsxs(a.Fragment,{children:[a.jsx(Cr,{...f,ref:n,__scopeCheckbox:r}),g&&a.jsx(jr,{__scopeCheckbox:r})]})})});Rr.displayName=Ze;var _r="CheckboxIndicator",Ir=l.forwardRef((e,n)=>{const{__scopeCheckbox:r,forceMount:t,...o}=e,s=Mt(_r,r);return a.jsx(ue,{present:t||he(s.checked)||s.checked===!0,children:a.jsx(P.span,{"data-state":kr(s.checked),"data-disabled":s.disabled?"":void 0,...o,ref:n,style:{pointerEvents:"none",...e.style}})})});Ir.displayName=_r;var Mr="CheckboxBubbleInput",jr=l.forwardRef(({__scopeCheckbox:e,...n},r)=>{const{control:t,hasConsumerStoppedPropagationRef:o,checked:s,defaultChecked:i,required:c,disabled:u,name:v,value:p,form:f,bubbleInput:g,setBubbleInput:d}=Mt(Mr,e),x=L(r,d),h=br(s),C=gr(t);l.useEffect(()=>{const b=g;if(!b)return;const M=window.HTMLInputElement.prototype,T=Object.getOwnPropertyDescriptor(M,"checked").set,E=!o.current;if(h!==s&&T){const $=new Event("click",{bubbles:E});b.indeterminate=he(s),T.call(b,he(s)?!1:s),b.dispatchEvent($)}},[g,h,s,o]);const m=l.useRef(he(s)?!1:s);return a.jsx(P.input,{type:"checkbox","aria-hidden":!0,defaultChecked:i??m.current,required:c,disabled:u,name:v,value:p,form:f,...n,tabIndex:-1,ref:x,style:{...n.style,...C,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});jr.displayName=Mr;function Ja(e){return typeof e=="function"}function he(e){return e==="indeterminate"}function kr(e){return he(e)?"indeterminate":e?"checked":"unchecked"}l.forwardRef(function(n,r){const{className:t,disabled:o,...s}=n;return a.jsx(Rr,{ref:r,disabled:o,className:I("v8-checkbox",t),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:o===!0?"not-allowed":"pointer",opacity:o===!0?.55:1,transition:"background var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out)"},...s,children:a.jsx(Ir,{children:s.checked==="indeterminate"?a.jsx(ka,{size:12,"aria-hidden":"true",style:{color:"var(--fg-on-accent)"}}):a.jsx(_t,{size:12,"aria-hidden":"true",style:{color:"var(--fg-on-accent)"}})})})});var Tr="Toggle",jt=l.forwardRef((e,n)=>{const{pressed:r,defaultPressed:t,onPressedChange:o,...s}=e,[i,c]=le({prop:r,onChange:o,defaultProp:t??!1,caller:Tr});return a.jsx(P.button,{type:"button","aria-pressed":i,"data-state":i?"on":"off","data-disabled":e.disabled?"":void 0,...s,ref:n,onClick:R(e.onClick,()=>{e.disabled||c(!i)})})});jt.displayName=Tr;var Qa=jt;l.forwardRef(function(n,r){const{className:t,...o}=n;return a.jsx(Qa,{ref:r,className:I("v8-toggle",t),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)"},...o})});var mt=!1;function es(){const[e,n]=l.useState(mt);return l.useEffect(()=>{mt||(mt=!0,n(!0))},[]),e}var Er=ra[" useSyncExternalStore ".trim().toString()];function ts(){return()=>{}}function rs(){return Er(ts,()=>!0,()=>!1)}var ns=typeof Er=="function"?rs:es,ht="rovingFocusGroup.onEntryFocus",os={bubbles:!1,cancelable:!0},Le="RovingFocusGroup",[xt,Sr,as]=It(Le),[ss,xe]=ee(Le,[as]),[is,ls]=ss(Le),Nr=l.forwardRef((e,n)=>a.jsx(xt.Provider,{scope:e.__scopeRovingFocusGroup,children:a.jsx(xt.Slot,{scope:e.__scopeRovingFocusGroup,children:a.jsx(cs,{...e,ref:n})})}));Nr.displayName=Le;var cs=l.forwardRef((e,n)=>{const{__scopeRovingFocusGroup:r,orientation:t,loop:o=!1,dir:s,currentTabStopId:i,defaultCurrentTabStopId:c,onCurrentTabStopIdChange:u,onEntryFocus:v,preventScrollOnEntryFocus:p=!1,...f}=e,g=l.useRef(null),d=L(n,g),x=Fe(s),[h,C]=le({prop:i,defaultProp:c??null,onChange:u,caller:Le}),[m,b]=l.useState(!1),M=fr(v),j=Sr(r),T=l.useRef(!1),[E,$]=l.useState(0);return l.useEffect(()=>{const F=g.current;if(F)return F.addEventListener(ht,M),()=>F.removeEventListener(ht,M)},[M]),a.jsx(is,{scope:r,orientation:t,dir:x,loop:o,currentTabStopId:h,onItemFocus:l.useCallback(F=>C(F),[C]),onItemShiftTab:l.useCallback(()=>b(!0),[]),onFocusableItemAdd:l.useCallback(()=>$(F=>F+1),[]),onFocusableItemRemove:l.useCallback(()=>$(F=>F-1),[]),children:a.jsx(P.div,{tabIndex:m||E===0?-1:0,"data-orientation":t,...f,ref:d,style:{outline:"none",...e.style},onMouseDown:R(e.onMouseDown,()=>{T.current=!0}),onFocus:R(e.onFocus,F=>{const K=!T.current;if(F.target===F.currentTarget&&K&&!m){const U=new CustomEvent(ht,os);if(F.currentTarget.dispatchEvent(U),!U.defaultPrevented){const de=j().filter(B=>B.focusable),V=de.find(B=>B.active),fe=de.find(B=>B.id===h),pe=[V,fe,...de].filter(Boolean).map(B=>B.ref.current);Dr(pe,p)}}T.current=!1}),onBlur:R(e.onBlur,()=>b(!1))})})}),Pr="RovingFocusGroupItem",Ar=l.forwardRef((e,n)=>{const{__scopeRovingFocusGroup:r,focusable:t=!0,active:o=!1,tabStopId:s,children:i,...c}=e,u=Ge(),v=s||u,p=ls(Pr,r),f=p.currentTabStopId===v,g=Sr(r),{onFocusableItemAdd:d,onFocusableItemRemove:x,currentTabStopId:h}=p,C=ns();return ur(()=>{if(!(!C||!t))return d(),()=>x()},[C,t,d,x]),l.useEffect(()=>{if(!(C||!t))return d(),()=>x()},[C,t,d,x]),a.jsx(xt.ItemSlot,{scope:r,id:v,focusable:t,active:o,children:a.jsx(P.span,{tabIndex:f?0:-1,"data-orientation":p.orientation,...c,ref:n,onMouseDown:R(e.onMouseDown,m=>{t?p.onItemFocus(v):m.preventDefault()}),onFocus:R(e.onFocus,()=>p.onItemFocus(v)),onKeyDown:R(e.onKeyDown,m=>{if(m.key==="Tab"&&m.shiftKey){p.onItemShiftTab();return}if(m.target!==m.currentTarget)return;const b=fs(m,p.orientation,p.dir);if(b!==void 0){if(m.metaKey||m.ctrlKey||m.altKey||m.shiftKey)return;m.preventDefault();let j=g().filter(T=>T.focusable).map(T=>T.ref.current);if(b==="last")j.reverse();else if(b==="prev"||b==="next"){b==="prev"&&j.reverse();const T=j.indexOf(m.currentTarget);j=p.loop?ps(j,T+1):j.slice(T+1)}setTimeout(()=>Dr(j))}}),children:typeof i=="function"?i({isCurrentTabStop:f,hasTabStop:h!=null}):i})})});Ar.displayName=Pr;var ds={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function us(e,n){return n!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function fs(e,n,r){const t=us(e.key,r);if(!(n==="vertical"&&["ArrowLeft","ArrowRight"].includes(t))&&!(n==="horizontal"&&["ArrowUp","ArrowDown"].includes(t)))return ds[t]}function Dr(e,n=!1){const r=document.activeElement;for(const t of e)if(t===r||(t.focus({preventScroll:n}),document.activeElement!==r))return}function ps(e,n){return e.map((r,t)=>e[(n+t)%e.length])}var Je=Nr,Qe=Ar,be="ToggleGroup",[Or]=ee(be,[xe]),Gr=xe(),kt=l.forwardRef((e,n)=>{const{type:r,...t}=e;if(r==="single"){const o=t;return a.jsx(vs,{role:"radiogroup",...o,ref:n})}if(r==="multiple"){const o=t;return a.jsx(gs,{role:"toolbar",...o,ref:n})}throw new Error(`Missing prop \`type\` expected on \`${be}\``)});kt.displayName=be;var[$r,Fr]=Or(be),vs=l.forwardRef((e,n)=>{const{value:r,defaultValue:t,onValueChange:o=()=>{},...s}=e,[i,c]=le({prop:r,defaultProp:t??"",onChange:o,caller:be});return a.jsx($r,{scope:e.__scopeToggleGroup,type:"single",value:l.useMemo(()=>i?[i]:[],[i]),onItemActivate:c,onItemDeactivate:l.useCallback(()=>c(""),[c]),children:a.jsx(Lr,{...s,ref:n})})}),gs=l.forwardRef((e,n)=>{const{value:r,defaultValue:t,onValueChange:o=()=>{},...s}=e,[i,c]=le({prop:r,defaultProp:t??[],onChange:o,caller:be}),u=l.useCallback(p=>c((f=[])=>[...f,p]),[c]),v=l.useCallback(p=>c((f=[])=>f.filter(g=>g!==p)),[c]);return a.jsx($r,{scope:e.__scopeToggleGroup,type:"multiple",value:i,onItemActivate:u,onItemDeactivate:v,children:a.jsx(Lr,{...s,ref:n})})});kt.displayName=be;var[ms,hs]=Or(be),Lr=l.forwardRef((e,n)=>{const{__scopeToggleGroup:r,disabled:t=!1,rovingFocus:o=!0,orientation:s,dir:i,loop:c=!0,...u}=e,v=Gr(r),p=Fe(i),f={dir:p,...u};return a.jsx(ms,{scope:r,rovingFocus:o,disabled:t,children:o?a.jsx(Je,{asChild:!0,...v,orientation:s,dir:p,loop:c,children:a.jsx(P.div,{...f,ref:n})}):a.jsx(P.div,{...f,ref:n})})}),Ue="ToggleGroupItem",Br=l.forwardRef((e,n)=>{const r=Fr(Ue,e.__scopeToggleGroup),t=hs(Ue,e.__scopeToggleGroup),o=Gr(e.__scopeToggleGroup),s=r.value.includes(e.value),i=t.disabled||e.disabled,c={...e,pressed:s,disabled:i},u=l.useRef(null);return t.rovingFocus?a.jsx(Qe,{asChild:!0,...o,focusable:!i,active:s,ref:u,children:a.jsx(ar,{...c,ref:n})}):a.jsx(ar,{...c,ref:n})});Br.displayName=Ue;var ar=l.forwardRef((e,n)=>{const{__scopeToggleGroup:r,value:t,...o}=e,s=Fr(Ue,r),i={role:"radio","aria-checked":e.pressed,"aria-pressed":void 0},c=s.type==="single"?i:void 0;return a.jsx(jt,{...c,...o,ref:n,onPressedChange:u=>{u?s.onItemActivate(t):s.onItemDeactivate(t)}})});l.forwardRef(function(n,r){const{type:t,className:o,...s}=n;return a.jsx(kt,{ref:r,type:t,className:I("v8-toggle-group",o),style:{display:"inline-flex",border:"1px solid var(--border)",borderRadius:"var(--radius-sm)",overflow:"hidden",background:"var(--surface-1)"},...s})});l.forwardRef(function(n,r){const{className:t,children:o,...s}=n;return a.jsxs(Br,{ref:r,className:I("v8-toggle-group__item",t),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:[o,a.jsx("style",{children:`
27
+ .v8-toggle-group__item:last-child { border-right: 0; }
28
+ .v8-toggle-group__item[data-state='on'] {
29
+ background: var(--accent-soft);
30
+ color: var(--accent);
31
+ font-weight: 500;
32
+ }
33
+ `})]})});var Tt="Radio",[xs,zr]=ee(Tt),[bs,et]=xs(Tt);function Kr(e){const{__scopeRadio:n,checked:r=!1,children:t,disabled:o,form:s,name:i,onCheck:c,required:u,value:v="on",internal_do_not_use_render:p}=e,[f,g]=l.useState(null),[d,x]=l.useState(null),h=l.useRef(!1),C=f?!!s||!!f.closest("form"):!0,m={checked:r,disabled:o,required:u,name:i,form:s,value:v,control:f,setControl:g,hasConsumerStoppedPropagationRef:h,isFormControl:C,bubbleInput:d,setBubbleInput:x,onCheck:()=>c==null?void 0:c()};return a.jsx(bs,{scope:n,...m,children:ws(p)?p(m):t})}var Vr="RadioTrigger",Et=l.forwardRef(({__scopeRadio:e,onClick:n,...r},t)=>{const{checked:o,disabled:s,value:i,setControl:c,onCheck:u,hasConsumerStoppedPropagationRef:v,isFormControl:p,bubbleInput:f}=et(Vr,e),g=L(t,c);return a.jsx(P.button,{type:"button",role:"radio","aria-checked":o,"data-state":Yr(o),"data-disabled":s?"":void 0,disabled:s,value:i,...r,ref:g,onClick:R(n,d=>{o||u(),f&&p&&(v.current=d.isPropagationStopped(),v.current||d.stopPropagation())})})});Et.displayName=Vr;var ys=l.forwardRef((e,n)=>{const{__scopeRadio:r,name:t,checked:o,required:s,disabled:i,value:c,onCheck:u,form:v,...p}=e;return a.jsx(Kr,{__scopeRadio:r,checked:o,disabled:i,required:s,onCheck:u,name:t,form:v,value:c,internal_do_not_use_render:({isFormControl:f})=>a.jsxs(a.Fragment,{children:[a.jsx(Et,{...p,ref:n,__scopeRadio:r}),f&&a.jsx(St,{__scopeRadio:r})]})})});ys.displayName=Tt;var Hr="RadioIndicator",Ur=l.forwardRef((e,n)=>{const{__scopeRadio:r,forceMount:t,...o}=e,s=et(Hr,r);return a.jsx(ue,{present:t||s.checked,children:a.jsx(P.span,{"data-state":Yr(s.checked),"data-disabled":s.disabled?"":void 0,...o,ref:n})})});Ur.displayName=Hr;var Wr="RadioBubbleInput",St=l.forwardRef(({__scopeRadio:e,...n},r)=>{const{control:t,checked:o,required:s,disabled:i,name:c,value:u,form:v,bubbleInput:p,setBubbleInput:f,hasConsumerStoppedPropagationRef:g}=et(Wr,e),d=L(r,f),x=br(o),h=gr(t);l.useEffect(()=>{const m=p;if(!m)return;const b=window.HTMLInputElement.prototype,j=Object.getOwnPropertyDescriptor(b,"checked").set,T=!g.current;if(x!==o&&j){const E=new Event("click",{bubbles:T});j.call(m,o),m.dispatchEvent(E)}},[p,x,o,g]);const C=l.useRef(o);return a.jsx(P.input,{type:"radio","aria-hidden":!0,defaultChecked:C.current,required:s,disabled:i,name:c,value:u,form:v,...n,tabIndex:-1,ref:d,style:{...n.style,...h,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});St.displayName=Wr;function ws(e){return typeof e=="function"}function Yr(e){return e?"checked":"unchecked"}var Cs=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],tt="RadioGroup",[Rs]=ee(tt,[xe,zr]),qr=xe(),rt=zr(),[_s,Is]=Rs(tt),Xr=l.forwardRef((e,n)=>{const{__scopeRadioGroup:r,name:t,form:o,defaultValue:s,value:i,required:c=!1,disabled:u=!1,orientation:v,dir:p,loop:f=!0,onValueChange:g,...d}=e,x=qr(r),h=Fe(p),[C,m]=le({prop:i,defaultProp:s??null,onChange:g,caller:tt}),[b,M]=l.useState(null),j=L(n,M),T=l.useRef(C);return l.useEffect(()=>{const E=o?b==null?void 0:b.ownerDocument.getElementById(o):b==null?void 0:b.closest("form");if(E instanceof HTMLFormElement){const $=()=>m(T.current);return E.addEventListener("reset",$),()=>E.removeEventListener("reset",$)}},[b,o,m]),a.jsx(_s,{scope:r,name:t,form:o,required:c,disabled:u,value:C,onValueChange:m,children:a.jsx(Je,{asChild:!0,...x,orientation:v,dir:h,loop:f,children:a.jsx(P.div,{role:"radiogroup","aria-required":c,"aria-orientation":v,"data-disabled":u?"":void 0,dir:h,...d,ref:j})})})});Xr.displayName=tt;var Ms="RadioGroupItem",js="RadioGroupItemProvider",Zr="RadioGroupItemTrigger",ks="RadioGroupItemBubbleInput";function Ts(e){const{__scopeRadioGroup:n,value:r,disabled:t,children:o,internal_do_not_use_render:s}=e,i=Is(js,n),c=rt(n),u=i.disabled||t;return a.jsx(Kr,{...c,checked:i.value===r,disabled:u,required:i.required,name:i.name,form:i.form,value:r,onCheck:()=>i.onValueChange(r),internal_do_not_use_render:s,children:o})}var Jr=l.forwardRef((e,n)=>{const{__scopeRadioGroup:r,...t}=e,o=qr(r),s=rt(r),{checked:i,disabled:c}=et(Zr,s.__scopeRadio),u=l.useRef(null),v=L(n,u),p=l.useRef(!1);return l.useEffect(()=>{const f=d=>{Cs.includes(d.key)&&(p.current=!0)},g=()=>p.current=!1;return document.addEventListener("keydown",f),document.addEventListener("keyup",g),()=>{document.removeEventListener("keydown",f),document.removeEventListener("keyup",g)}},[]),a.jsx(Qe,{asChild:!0,...o,focusable:!c,active:i,children:a.jsx(Et,{...s,...t,ref:v,onKeyDown:R(t.onKeyDown,f=>{f.key==="Enter"&&f.preventDefault()}),onFocus:R(t.onFocus,()=>{var f;p.current&&((f=u.current)==null||f.click())})})})});Jr.displayName=Zr;var Qr=l.forwardRef((e,n)=>{const{__scopeRadioGroup:r,value:t,disabled:o,...s}=e;return a.jsx(Ts,{__scopeRadioGroup:r,value:t,disabled:o,internal_do_not_use_render:({isFormControl:i})=>a.jsxs(a.Fragment,{children:[a.jsx(Jr,{...s,ref:n,__scopeRadioGroup:r}),i&&a.jsx(en,{__scopeRadioGroup:r})]})})});Qr.displayName=Ms;var en=l.forwardRef((e,n)=>{const{__scopeRadioGroup:r,...t}=e,o=rt(r);return a.jsx(St,{...o,...t,ref:n})});en.displayName=ks;var Es="RadioGroupIndicator",tn=l.forwardRef((e,n)=>{const{__scopeRadioGroup:r,...t}=e,o=rt(r);return a.jsx(Ur,{...o,...t,ref:n})});tn.displayName=Es;l.forwardRef(function(n,r){const{className:t,...o}=n;return a.jsx(Xr,{ref:r,className:I("v8-radio-group",t),style:{display:"flex",flexDirection:"column",gap:"var(--space-2)"},...o})});l.forwardRef(function(n,r){const{className:t,value:o,label:s,...i}=n;return a.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"var(--space-2)"},children:[a.jsx(Qr,{ref:r,value:o,className:I("v8-radio-group__item",t),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(tn,{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})]})});l.forwardRef(function(n,r){const{id:t,label:o,hint:s,error:i,required:c,children:u,className:v,...p}=n,f=s!==void 0?`${t}-hint`:void 0,g=i!==void 0?`${t}-error`:void 0;return a.jsxs("div",{ref:r,className:I("v8-field",i!==void 0&&"has-error",v),style:{display:"flex",flexDirection:"column",gap:"var(--space-2)"},...p,children:[a.jsxs("label",{htmlFor:t,style:{fontSize:"var(--fs-13)",fontWeight:500,color:"var(--fg)",display:"flex",alignItems:"center",gap:"var(--space-1)"},children:[o,c===!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:g,role:"alert",style:{fontSize:"var(--fs-12)",color:"var(--danger)"},children:i})]})});l.forwardRef(function(n,r){const{children:t,className:o,...s}=n;return a.jsx("form",{ref:r,className:I("v8-form",o),style:{display:"flex",flexDirection:"column",gap:"var(--space-4)"},...s,children:t})});var[nt]=ee("Tooltip",[Xe]),ot=Xe(),Ss="TooltipProvider",bt="tooltip.open",[Gc,Nt]=nt(Ss),Ae="Tooltip",[Ns,Be]=nt(Ae),rn=e=>{const{__scopeTooltip:n,children:r,open:t,defaultOpen:o,onOpenChange:s,disableHoverableContent:i,delayDuration:c}=e,u=Nt(Ae,e.__scopeTooltip),v=ot(n),[p,f]=l.useState(null),g=Ge(),d=l.useRef(0),x=i??u.disableHoverableContent,h=c??u.delayDuration,C=l.useRef(!1),[m,b]=le({prop:t,defaultProp:o??!1,onChange:$=>{$?(u.onOpen(),document.dispatchEvent(new CustomEvent(bt))):u.onClose(),s==null||s($)},caller:Ae}),M=l.useMemo(()=>m?C.current?"delayed-open":"instant-open":"closed",[m]),j=l.useCallback(()=>{window.clearTimeout(d.current),d.current=0,C.current=!1,b(!0)},[b]),T=l.useCallback(()=>{window.clearTimeout(d.current),d.current=0,b(!1)},[b]),E=l.useCallback(()=>{window.clearTimeout(d.current),d.current=window.setTimeout(()=>{C.current=!0,b(!0),d.current=0},h)},[h,b]);return l.useEffect(()=>()=>{d.current&&(window.clearTimeout(d.current),d.current=0)},[]),a.jsx(wa,{...v,children:a.jsx(Ns,{scope:n,contentId:g,open:m,stateAttribute:M,trigger:p,onTriggerChange:f,onTriggerEnter:l.useCallback(()=>{u.isOpenDelayedRef.current?E():j()},[u.isOpenDelayedRef,E,j]),onTriggerLeave:l.useCallback(()=>{x?T():(window.clearTimeout(d.current),d.current=0)},[T,x]),onOpen:j,onClose:T,disableHoverableContent:x,children:r})})};rn.displayName=Ae;var yt="TooltipTrigger",nn=l.forwardRef((e,n)=>{const{__scopeTooltip:r,...t}=e,o=Be(yt,r),s=Nt(yt,r),i=ot(r),c=l.useRef(null),u=L(n,c,o.onTriggerChange),v=l.useRef(!1),p=l.useRef(!1),f=l.useCallback(()=>v.current=!1,[]);return l.useEffect(()=>()=>document.removeEventListener("pointerup",f),[f]),a.jsx(mr,{asChild:!0,...i,children:a.jsx(P.button,{"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute,...t,ref:u,onPointerMove:R(e.onPointerMove,g=>{g.pointerType!=="touch"&&!p.current&&!s.isPointerInTransitRef.current&&(o.onTriggerEnter(),p.current=!0)}),onPointerLeave:R(e.onPointerLeave,()=>{o.onTriggerLeave(),p.current=!1}),onPointerDown:R(e.onPointerDown,()=>{o.open&&o.onClose(),v.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:R(e.onFocus,()=>{v.current||o.onOpen()}),onBlur:R(e.onBlur,o.onClose),onClick:R(e.onClick,o.onClose)})})});nn.displayName=yt;var Pt="TooltipPortal",[Ps,As]=nt(Pt,{forceMount:void 0}),on=e=>{const{__scopeTooltip:n,forceMount:r,children:t,container:o}=e,s=Be(Pt,n);return a.jsx(Ps,{scope:n,forceMount:r,children:a.jsx(ue,{present:r||s.open,children:a.jsx(pr,{asChild:!0,container:o,children:t})})})};on.displayName=Pt;var Te="TooltipContent",an=l.forwardRef((e,n)=>{const r=As(Te,e.__scopeTooltip),{forceMount:t=r.forceMount,side:o="top",...s}=e,i=Be(Te,e.__scopeTooltip);return a.jsx(ue,{present:t||i.open,children:i.disableHoverableContent?a.jsx(sn,{side:o,...s,ref:n}):a.jsx(Ds,{side:o,...s,ref:n})})}),Ds=l.forwardRef((e,n)=>{const r=Be(Te,e.__scopeTooltip),t=Nt(Te,e.__scopeTooltip),o=l.useRef(null),s=L(n,o),[i,c]=l.useState(null),{trigger:u,onClose:v}=r,p=o.current,{onPointerInTransitChange:f}=t,g=l.useCallback(()=>{c(null),f(!1)},[f]),d=l.useCallback((x,h)=>{const C=x.currentTarget,m={x:x.clientX,y:x.clientY},b=Fs(m,C.getBoundingClientRect()),M=Ls(m,b),j=Bs(h.getBoundingClientRect()),T=Ks([...M,...j]);c(T),f(!0)},[f]);return l.useEffect(()=>()=>g(),[g]),l.useEffect(()=>{if(u&&p){const x=C=>d(C,p),h=C=>d(C,u);return u.addEventListener("pointerleave",x),p.addEventListener("pointerleave",h),()=>{u.removeEventListener("pointerleave",x),p.removeEventListener("pointerleave",h)}}},[u,p,d,g]),l.useEffect(()=>{if(i){const x=h=>{const C=h.target,m={x:h.clientX,y:h.clientY},b=(u==null?void 0:u.contains(C))||(p==null?void 0:p.contains(C)),M=!zs(m,i);b?g():M&&(g(),v())};return document.addEventListener("pointermove",x),()=>document.removeEventListener("pointermove",x)}},[u,p,i,v,g]),a.jsx(sn,{...e,ref:s})}),[Os,Gs]=nt(Ae,{isInside:!1}),$s=na("TooltipContent"),sn=l.forwardRef((e,n)=>{const{__scopeTooltip:r,children:t,"aria-label":o,onEscapeKeyDown:s,onPointerDownOutside:i,...c}=e,u=Be(Te,r),v=ot(r),{onClose:p}=u;return l.useEffect(()=>(document.addEventListener(bt,p),()=>document.removeEventListener(bt,p)),[p]),l.useEffect(()=>{if(u.trigger){const f=g=>{g.target instanceof Node&&g.target.contains(u.trigger)&&p()};return window.addEventListener("scroll",f,{capture:!0}),()=>window.removeEventListener("scroll",f,{capture:!0})}},[u.trigger,p]),a.jsx(vr,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:s,onPointerDownOutside:i,onFocusOutside:f=>f.preventDefault(),onDismiss:p,children:a.jsxs(xr,{"data-state":u.stateAttribute,...v,...c,ref:n,style:{...c.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:t}),a.jsx(Os,{scope:r,isInside:!0,children:a.jsx(Ta,{id:u.contentId,role:"tooltip",children:o||t})})]})})});an.displayName=Te;var ln="TooltipArrow",cn=l.forwardRef((e,n)=>{const{__scopeTooltip:r,...t}=e,o=ot(r);return Gs(ln,r).isInside?null:a.jsx(hr,{...o,...t,ref:n})});cn.displayName=ln;function Fs(e,n){const r=Math.abs(n.top-e.y),t=Math.abs(n.bottom-e.y),o=Math.abs(n.right-e.x),s=Math.abs(n.left-e.x);switch(Math.min(r,t,o,s)){case s:return"left";case o:return"right";case r:return"top";case t:return"bottom";default:throw new Error("unreachable")}}function Ls(e,n,r=5){const t=[];switch(n){case"top":t.push({x:e.x-r,y:e.y+r},{x:e.x+r,y:e.y+r});break;case"bottom":t.push({x:e.x-r,y:e.y-r},{x:e.x+r,y:e.y-r});break;case"left":t.push({x:e.x+r,y:e.y-r},{x:e.x+r,y:e.y+r});break;case"right":t.push({x:e.x-r,y:e.y-r},{x:e.x-r,y:e.y+r});break}return t}function Bs(e){const{top:n,right:r,bottom:t,left:o}=e;return[{x:o,y:n},{x:r,y:n},{x:r,y:t},{x:o,y:t}]}function zs(e,n){const{x:r,y:t}=e;let o=!1;for(let s=0,i=n.length-1;s<n.length;i=s++){const c=n[s],u=n[i],v=c.x,p=c.y,f=u.x,g=u.y;p>t!=g>t&&r<(f-v)*(t-p)/(g-p)+v&&(o=!o)}return o}function Ks(e){const n=e.slice();return n.sort((r,t)=>r.x<t.x?-1:r.x>t.x?1:r.y<t.y?-1:r.y>t.y?1:0),Vs(n)}function Vs(e){if(e.length<=1)return e.slice();const n=[];for(let t=0;t<e.length;t++){const o=e[t];for(;n.length>=2;){const s=n[n.length-1],i=n[n.length-2];if((s.x-i.x)*(o.y-i.y)>=(s.y-i.y)*(o.x-i.x))n.pop();else break}n.push(o)}n.pop();const r=[];for(let t=e.length-1;t>=0;t--){const o=e[t];for(;r.length>=2;){const s=r[r.length-1],i=r[r.length-2];if((s.x-i.x)*(o.y-i.y)>=(s.y-i.y)*(o.x-i.x))r.pop();else break}r.push(o)}return r.pop(),n.length===1&&r.length===1&&n[0].x===r[0].x&&n[0].y===r[0].y?n:n.concat(r)}var Hs=rn,Us=nn,Ws=on,Ys=an,qs=cn;l.forwardRef(function(n,r){const{children:t,content:o,side:s="top",align:i="center",delayDuration:c=250,shortcut:u,open:v,defaultOpen:p,onOpenChange:f}=n;return a.jsxs(Hs,{delayDuration:c,open:v,defaultOpen:p,onOpenChange:f,children:[a.jsx(Us,{asChild:!0,children:t}),a.jsx(Ws,{children:a.jsxs(Ys,{ref:r,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:[o,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 Xs=e=>{switch(e){case"success":return Qs;case"info":return ti;case"warning":return ei;case"error":return ri;default:return null}},Zs=Array(12).fill(0),Js=({visible:e,className:n})=>y.createElement("div",{className:["sonner-loading-wrapper",n].filter(Boolean).join(" "),"data-visible":e},y.createElement("div",{className:"sonner-spinner"},Zs.map((r,t)=>y.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${t}`})))),Qs=y.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},y.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"})),ei=y.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},y.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"})),ti=y.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},y.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"})),ri=y.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},y.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"})),ni=y.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"},y.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),y.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),oi=()=>{let[e,n]=y.useState(document.hidden);return y.useEffect(()=>{let r=()=>{n(document.hidden)};return document.addEventListener("visibilitychange",r),()=>window.removeEventListener("visibilitychange",r)},[]),e},wt=1,ai=class{constructor(){this.subscribe=e=>(this.subscribers.push(e),()=>{let n=this.subscribers.indexOf(e);this.subscribers.splice(n,1)}),this.publish=e=>{this.subscribers.forEach(n=>n(e))},this.addToast=e=>{this.publish(e),this.toasts=[...this.toasts,e]},this.create=e=>{var n;let{message:r,...t}=e,o=typeof(e==null?void 0:e.id)=="number"||((n=e.id)==null?void 0:n.length)>0?e.id:wt++,s=this.toasts.find(c=>c.id===o),i=e.dismissible===void 0?!0:e.dismissible;return this.dismissedToasts.has(o)&&this.dismissedToasts.delete(o),s?this.toasts=this.toasts.map(c=>c.id===o?(this.publish({...c,...e,id:o,title:r}),{...c,...e,id:o,dismissible:i,title:r}):c):this.addToast({title:r,...t,dismissible:i,id:o}),o},this.dismiss=e=>(this.dismissedToasts.add(e),e||this.toasts.forEach(n=>{this.subscribers.forEach(r=>r({id:n.id,dismiss:!0}))}),this.subscribers.forEach(n=>n({id:e,dismiss:!0})),e),this.message=(e,n)=>this.create({...n,message:e}),this.error=(e,n)=>this.create({...n,message:e,type:"error"}),this.success=(e,n)=>this.create({...n,type:"success",message:e}),this.info=(e,n)=>this.create({...n,type:"info",message:e}),this.warning=(e,n)=>this.create({...n,type:"warning",message:e}),this.loading=(e,n)=>this.create({...n,type:"loading",message:e}),this.promise=(e,n)=>{if(!n)return;let r;n.loading!==void 0&&(r=this.create({...n,promise:e,type:"loading",message:n.loading,description:typeof n.description!="function"?n.description:void 0}));let t=e instanceof Promise?e:e(),o=r!==void 0,s,i=t.then(async u=>{if(s=["resolve",u],y.isValidElement(u))o=!1,this.create({id:r,type:"default",message:u});else if(ii(u)&&!u.ok){o=!1;let v=typeof n.error=="function"?await n.error(`HTTP error! status: ${u.status}`):n.error,p=typeof n.description=="function"?await n.description(`HTTP error! status: ${u.status}`):n.description;this.create({id:r,type:"error",message:v,description:p})}else if(n.success!==void 0){o=!1;let v=typeof n.success=="function"?await n.success(u):n.success,p=typeof n.description=="function"?await n.description(u):n.description;this.create({id:r,type:"success",message:v,description:p})}}).catch(async u=>{if(s=["reject",u],n.error!==void 0){o=!1;let v=typeof n.error=="function"?await n.error(u):n.error,p=typeof n.description=="function"?await n.description(u):n.description;this.create({id:r,type:"error",message:v,description:p})}}).finally(()=>{var u;o&&(this.dismiss(r),r=void 0),(u=n.finally)==null||u.call(n)}),c=()=>new Promise((u,v)=>i.then(()=>s[0]==="reject"?v(s[1]):u(s[1])).catch(v));return typeof r!="string"&&typeof r!="number"?{unwrap:c}:Object.assign(r,{unwrap:c})},this.custom=(e,n)=>{let r=(n==null?void 0:n.id)||wt++;return this.create({jsx:e(r),id:r,...n}),r},this.getActiveToasts=()=>this.toasts.filter(e=>!this.dismissedToasts.has(e.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}},Y=new ai,si=(e,n)=>{let r=(n==null?void 0:n.id)||wt++;return Y.addToast({title:e,...n,id:r}),r},ii=e=>e&&typeof e=="object"&&"ok"in e&&typeof e.ok=="boolean"&&"status"in e&&typeof e.status=="number",li=si,ci=()=>Y.toasts,di=()=>Y.getActiveToasts();Object.assign(li,{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:di});function ui(e,{insertAt:n}={}){if(typeof document>"u")return;let r=document.head||document.getElementsByTagName("head")[0],t=document.createElement("style");t.type="text/css",n==="top"&&r.firstChild?r.insertBefore(t,r.firstChild):r.appendChild(t),t.styleSheet?t.styleSheet.cssText=e:t.appendChild(document.createTextNode(e))}ui(`: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%)}
34
+ `);function Ve(e){return e.label!==void 0}var fi=3,pi="32px",vi="16px",sr=4e3,gi=356,mi=14,hi=20,xi=200;function ie(...e){return e.filter(Boolean).join(" ")}function bi(e){let[n,r]=e.split("-"),t=[];return n&&t.push(n),r&&t.push(r),t}var yi=e=>{var n,r,t,o,s,i,c,u,v,p,f;let{invert:g,toast:d,unstyled:x,interacting:h,setHeights:C,visibleToasts:m,heights:b,index:M,toasts:j,expanded:T,removeToast:E,defaultRichColors:$,closeButton:F,style:K,cancelButtonStyle:U,actionButtonStyle:de,className:V="",descriptionClassName:fe="",duration:te,position:pe,gap:B,loadingIcon:re,expandByDefault:ne,classNames:w,icons:O,closeButtonAriaLabel:W="Close toast",pauseWhenPageIsHidden:k}=e,[S,D]=y.useState(null),[z,Z]=y.useState(null),[N,Ie]=y.useState(!1),[H,ye]=y.useState(!1),[Ee,ft]=y.useState(!1),[qt,zo]=y.useState(!1),[Ko,Xt]=y.useState(!1),[Vo,pt]=y.useState(0),[Ho,Zt]=y.useState(0),Se=y.useRef(d.duration||te||sr),Jt=y.useRef(null),we=y.useRef(null),Uo=M===0,Wo=M+1<=m,J=d.type,Me=d.dismissible!==!1,Yo=d.className||"",qo=d.descriptionClassName||"",Ke=y.useMemo(()=>b.findIndex(_=>_.toastId===d.id)||0,[b,d.id]),Xo=y.useMemo(()=>{var _;return(_=d.closeButton)!=null?_:F},[d.closeButton,F]),Qt=y.useMemo(()=>d.duration||te||sr,[d.duration,te]),vt=y.useRef(0),je=y.useRef(0),er=y.useRef(0),ke=y.useRef(null),[Zo,Jo]=pe.split("-"),tr=y.useMemo(()=>b.reduce((_,A,G)=>G>=Ke?_:_+A.height,0),[b,Ke]),rr=oi(),Qo=d.invert||g,gt=J==="loading";je.current=y.useMemo(()=>Ke*B+tr,[Ke,tr]),y.useEffect(()=>{Se.current=Qt},[Qt]),y.useEffect(()=>{Ie(!0)},[]),y.useEffect(()=>{let _=we.current;if(_){let A=_.getBoundingClientRect().height;return Zt(A),C(G=>[{toastId:d.id,height:A,position:d.position},...G]),()=>C(G=>G.filter(oe=>oe.toastId!==d.id))}},[C,d.id]),y.useLayoutEffect(()=>{if(!N)return;let _=we.current,A=_.style.height;_.style.height="auto";let G=_.getBoundingClientRect().height;_.style.height=A,Zt(G),C(oe=>oe.find(ae=>ae.toastId===d.id)?oe.map(ae=>ae.toastId===d.id?{...ae,height:G}:ae):[{toastId:d.id,height:G,position:d.position},...oe])},[N,d.title,d.description,C,d.id]);let ve=y.useCallback(()=>{ye(!0),pt(je.current),C(_=>_.filter(A=>A.toastId!==d.id)),setTimeout(()=>{E(d)},xi)},[d,E,C,je]);y.useEffect(()=>{if(d.promise&&J==="loading"||d.duration===1/0||d.type==="loading")return;let _;return T||h||k&&rr?(()=>{if(er.current<vt.current){let A=new Date().getTime()-vt.current;Se.current=Se.current-A}er.current=new Date().getTime()})():Se.current!==1/0&&(vt.current=new Date().getTime(),_=setTimeout(()=>{var A;(A=d.onAutoClose)==null||A.call(d,d),ve()},Se.current)),()=>clearTimeout(_)},[T,h,d,J,k,rr,ve]),y.useEffect(()=>{d.delete&&ve()},[ve,d.delete]);function ea(){var _,A,G;return O!=null&&O.loading?y.createElement("div",{className:ie(w==null?void 0:w.loader,(_=d==null?void 0:d.classNames)==null?void 0:_.loader,"sonner-loader"),"data-visible":J==="loading"},O.loading):re?y.createElement("div",{className:ie(w==null?void 0:w.loader,(A=d==null?void 0:d.classNames)==null?void 0:A.loader,"sonner-loader"),"data-visible":J==="loading"},re):y.createElement(Js,{className:ie(w==null?void 0:w.loader,(G=d==null?void 0:d.classNames)==null?void 0:G.loader),visible:J==="loading"})}return y.createElement("li",{tabIndex:0,ref:we,className:ie(V,Yo,w==null?void 0:w.toast,(n=d==null?void 0:d.classNames)==null?void 0:n.toast,w==null?void 0:w.default,w==null?void 0:w[J],(r=d==null?void 0:d.classNames)==null?void 0:r[J]),"data-sonner-toast":"","data-rich-colors":(t=d.richColors)!=null?t:$,"data-styled":!(d.jsx||d.unstyled||x),"data-mounted":N,"data-promise":!!d.promise,"data-swiped":Ko,"data-removed":H,"data-visible":Wo,"data-y-position":Zo,"data-x-position":Jo,"data-index":M,"data-front":Uo,"data-swiping":Ee,"data-dismissible":Me,"data-type":J,"data-invert":Qo,"data-swipe-out":qt,"data-swipe-direction":z,"data-expanded":!!(T||ne&&N),style:{"--index":M,"--toasts-before":M,"--z-index":j.length-M,"--offset":`${H?Vo:je.current}px`,"--initial-height":ne?"auto":`${Ho}px`,...K,...d.style},onDragEnd:()=>{ft(!1),D(null),ke.current=null},onPointerDown:_=>{gt||!Me||(Jt.current=new Date,pt(je.current),_.target.setPointerCapture(_.pointerId),_.target.tagName!=="BUTTON"&&(ft(!0),ke.current={x:_.clientX,y:_.clientY}))},onPointerUp:()=>{var _,A,G,oe;if(qt||!Me)return;ke.current=null;let ae=Number(((_=we.current)==null?void 0:_.style.getPropertyValue("--swipe-amount-x").replace("px",""))||0),ge=Number(((A=we.current)==null?void 0:A.style.getPropertyValue("--swipe-amount-y").replace("px",""))||0),Ce=new Date().getTime()-((G=Jt.current)==null?void 0:G.getTime()),se=S==="x"?ae:ge,me=Math.abs(se)/Ce;if(Math.abs(se)>=hi||me>.11){pt(je.current),(oe=d.onDismiss)==null||oe.call(d,d),Z(S==="x"?ae>0?"right":"left":ge>0?"down":"up"),ve(),zo(!0),Xt(!1);return}ft(!1),D(null)},onPointerMove:_=>{var A,G,oe,ae;if(!ke.current||!Me||((A=window.getSelection())==null?void 0:A.toString().length)>0)return;let ge=_.clientY-ke.current.y,Ce=_.clientX-ke.current.x,se=(G=e.swipeDirections)!=null?G:bi(pe);!S&&(Math.abs(Ce)>1||Math.abs(ge)>1)&&D(Math.abs(Ce)>Math.abs(ge)?"x":"y");let me={x:0,y:0};S==="y"?(se.includes("top")||se.includes("bottom"))&&(se.includes("top")&&ge<0||se.includes("bottom")&&ge>0)&&(me.y=ge):S==="x"&&(se.includes("left")||se.includes("right"))&&(se.includes("left")&&Ce<0||se.includes("right")&&Ce>0)&&(me.x=Ce),(Math.abs(me.x)>0||Math.abs(me.y)>0)&&Xt(!0),(oe=we.current)==null||oe.style.setProperty("--swipe-amount-x",`${me.x}px`),(ae=we.current)==null||ae.style.setProperty("--swipe-amount-y",`${me.y}px`)}},Xo&&!d.jsx?y.createElement("button",{"aria-label":W,"data-disabled":gt,"data-close-button":!0,onClick:gt||!Me?()=>{}:()=>{var _;ve(),(_=d.onDismiss)==null||_.call(d,d)},className:ie(w==null?void 0:w.closeButton,(o=d==null?void 0:d.classNames)==null?void 0:o.closeButton)},(s=O==null?void 0:O.close)!=null?s:ni):null,d.jsx||l.isValidElement(d.title)?d.jsx?d.jsx:typeof d.title=="function"?d.title():d.title:y.createElement(y.Fragment,null,J||d.icon||d.promise?y.createElement("div",{"data-icon":"",className:ie(w==null?void 0:w.icon,(i=d==null?void 0:d.classNames)==null?void 0:i.icon)},d.promise||d.type==="loading"&&!d.icon?d.icon||ea():null,d.type!=="loading"?d.icon||(O==null?void 0:O[J])||Xs(J):null):null,y.createElement("div",{"data-content":"",className:ie(w==null?void 0:w.content,(c=d==null?void 0:d.classNames)==null?void 0:c.content)},y.createElement("div",{"data-title":"",className:ie(w==null?void 0:w.title,(u=d==null?void 0:d.classNames)==null?void 0:u.title)},typeof d.title=="function"?d.title():d.title),d.description?y.createElement("div",{"data-description":"",className:ie(fe,qo,w==null?void 0:w.description,(v=d==null?void 0:d.classNames)==null?void 0:v.description)},typeof d.description=="function"?d.description():d.description):null),l.isValidElement(d.cancel)?d.cancel:d.cancel&&Ve(d.cancel)?y.createElement("button",{"data-button":!0,"data-cancel":!0,style:d.cancelButtonStyle||U,onClick:_=>{var A,G;Ve(d.cancel)&&Me&&((G=(A=d.cancel).onClick)==null||G.call(A,_),ve())},className:ie(w==null?void 0:w.cancelButton,(p=d==null?void 0:d.classNames)==null?void 0:p.cancelButton)},d.cancel.label):null,l.isValidElement(d.action)?d.action:d.action&&Ve(d.action)?y.createElement("button",{"data-button":!0,"data-action":!0,style:d.actionButtonStyle||de,onClick:_=>{var A,G;Ve(d.action)&&((G=(A=d.action).onClick)==null||G.call(A,_),!_.defaultPrevented&&ve())},className:ie(w==null?void 0:w.actionButton,(f=d==null?void 0:d.classNames)==null?void 0:f.actionButton)},d.action.label):null))};function ir(){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 wi(e,n){let r={};return[e,n].forEach((t,o)=>{let s=o===1,i=s?"--mobile-offset":"--offset",c=s?vi:pi;function u(v){["top","right","bottom","left"].forEach(p=>{r[`${i}-${p}`]=typeof v=="number"?`${v}px`:v})}typeof t=="number"||typeof t=="string"?u(t):typeof t=="object"?["top","right","bottom","left"].forEach(v=>{t[v]===void 0?r[`${i}-${v}`]=c:r[`${i}-${v}`]=typeof t[v]=="number"?`${t[v]}px`:t[v]}):u(c)}),r}l.forwardRef(function(e,n){let{invert:r,position:t="bottom-right",hotkey:o=["altKey","KeyT"],expand:s,closeButton:i,className:c,offset:u,mobileOffset:v,theme:p="light",richColors:f,duration:g,style:d,visibleToasts:x=fi,toastOptions:h,dir:C=ir(),gap:m=mi,loadingIcon:b,icons:M,containerAriaLabel:j="Notifications",pauseWhenPageIsHidden:T}=e,[E,$]=y.useState([]),F=y.useMemo(()=>Array.from(new Set([t].concat(E.filter(k=>k.position).map(k=>k.position)))),[E,t]),[K,U]=y.useState([]),[de,V]=y.useState(!1),[fe,te]=y.useState(!1),[pe,B]=y.useState(p!=="system"?p:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),re=y.useRef(null),ne=o.join("+").replace(/Key/g,"").replace(/Digit/g,""),w=y.useRef(null),O=y.useRef(!1),W=y.useCallback(k=>{$(S=>{var D;return(D=S.find(z=>z.id===k.id))!=null&&D.delete||Y.dismiss(k.id),S.filter(({id:z})=>z!==k.id)})},[]);return y.useEffect(()=>Y.subscribe(k=>{if(k.dismiss){$(S=>S.map(D=>D.id===k.id?{...D,delete:!0}:D));return}setTimeout(()=>{oa.flushSync(()=>{$(S=>{let D=S.findIndex(z=>z.id===k.id);return D!==-1?[...S.slice(0,D),{...S[D],...k},...S.slice(D+1)]:[k,...S]})})})}),[]),y.useEffect(()=>{if(p!=="system"){B(p);return}if(p==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?B("dark"):B("light")),typeof window>"u")return;let k=window.matchMedia("(prefers-color-scheme: dark)");try{k.addEventListener("change",({matches:S})=>{B(S?"dark":"light")})}catch{k.addListener(({matches:D})=>{try{B(D?"dark":"light")}catch(z){console.error(z)}})}},[p]),y.useEffect(()=>{E.length<=1&&V(!1)},[E]),y.useEffect(()=>{let k=S=>{var D,z;o.every(Z=>S[Z]||S.code===Z)&&(V(!0),(D=re.current)==null||D.focus()),S.code==="Escape"&&(document.activeElement===re.current||(z=re.current)!=null&&z.contains(document.activeElement))&&V(!1)};return document.addEventListener("keydown",k),()=>document.removeEventListener("keydown",k)},[o]),y.useEffect(()=>{if(re.current)return()=>{w.current&&(w.current.focus({preventScroll:!0}),w.current=null,O.current=!1)}},[re.current]),y.createElement("section",{ref:n,"aria-label":`${j} ${ne}`,tabIndex:-1,"aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",suppressHydrationWarning:!0},F.map((k,S)=>{var D;let[z,Z]=k.split("-");return E.length?y.createElement("ol",{key:k,dir:C==="auto"?ir():C,tabIndex:-1,ref:re,className:c,"data-sonner-toaster":!0,"data-theme":pe,"data-y-position":z,"data-lifted":de&&E.length>1&&!s,"data-x-position":Z,style:{"--front-toast-height":`${((D=K[0])==null?void 0:D.height)||0}px`,"--width":`${gi}px`,"--gap":`${m}px`,...d,...wi(u,v)},onBlur:N=>{O.current&&!N.currentTarget.contains(N.relatedTarget)&&(O.current=!1,w.current&&(w.current.focus({preventScroll:!0}),w.current=null))},onFocus:N=>{N.target instanceof HTMLElement&&N.target.dataset.dismissible==="false"||O.current||(O.current=!0,w.current=N.relatedTarget)},onMouseEnter:()=>V(!0),onMouseMove:()=>V(!0),onMouseLeave:()=>{fe||V(!1)},onDragEnd:()=>V(!1),onPointerDown:N=>{N.target instanceof HTMLElement&&N.target.dataset.dismissible==="false"||te(!0)},onPointerUp:()=>te(!1)},E.filter(N=>!N.position&&S===0||N.position===k).map((N,Ie)=>{var H,ye;return y.createElement(yi,{key:N.id,icons:M,index:Ie,toast:N,defaultRichColors:f,duration:(H=h==null?void 0:h.duration)!=null?H:g,className:h==null?void 0:h.className,descriptionClassName:h==null?void 0:h.descriptionClassName,invert:r,visibleToasts:x,closeButton:(ye=h==null?void 0:h.closeButton)!=null?ye:i,interacting:fe,position:k,style:h==null?void 0:h.style,unstyled:h==null?void 0:h.unstyled,classNames:h==null?void 0:h.classNames,cancelButtonStyle:h==null?void 0:h.cancelButtonStyle,actionButtonStyle:h==null?void 0:h.actionButtonStyle,removeToast:W,toasts:E.filter(Ee=>Ee.position==N.position),heights:K.filter(Ee=>Ee.position==N.position),setHeights:U,expandByDefault:s,gap:m,loadingIcon:b,expanded:de,pauseWhenPageIsHidden:T,swipeDirections:e.swipeDirections})})):null}))});var Ct=["Enter"," "],Ci=["ArrowDown","PageUp","Home"],dn=["ArrowUp","PageDown","End"],Ri=[...Ci,...dn],_i={ltr:[...Ct,"ArrowRight"],rtl:[...Ct,"ArrowLeft"]},Ii={ltr:["ArrowLeft"],rtl:["ArrowRight"]},at="Menu",[De,Mi,ji]=It(at),[Re,st]=ee(at,[ji,Xe,xe]),At=Xe(),un=xe(),[$c,_e]=Re(at),[Fc,ze]=Re(at),ki="MenuAnchor",Dt=l.forwardRef((e,n)=>{const{__scopeMenu:r,...t}=e,o=At(r);return a.jsx(mr,{...o,...t,ref:n})});Dt.displayName=ki;var Ot="MenuPortal",[Ti,fn]=Re(Ot,{forceMount:void 0}),pn=e=>{const{__scopeMenu:n,forceMount:r,children:t,container:o}=e,s=_e(Ot,n);return a.jsx(Ti,{scope:n,forceMount:r,children:a.jsx(ue,{present:r||s.open,children:a.jsx(pr,{asChild:!0,container:o,children:t})})})};pn.displayName=Ot;var Q="MenuContent",[Ei,Gt]=Re(Q),vn=l.forwardRef((e,n)=>{const r=fn(Q,e.__scopeMenu),{forceMount:t=r.forceMount,...o}=e,s=_e(Q,e.__scopeMenu),i=ze(Q,e.__scopeMenu);return a.jsx(De.Provider,{scope:e.__scopeMenu,children:a.jsx(ue,{present:t||s.open,children:a.jsx(De.Slot,{scope:e.__scopeMenu,children:i.modal?a.jsx(Si,{...o,ref:n}):a.jsx(Ni,{...o,ref:n})})})})}),Si=l.forwardRef((e,n)=>{const r=_e(Q,e.__scopeMenu),t=l.useRef(null),o=L(n,t);return l.useEffect(()=>{const s=t.current;if(s)return aa(s)},[]),a.jsx($t,{...e,ref:o,trapFocus:r.open,disableOutsidePointerEvents:r.open,disableOutsideScroll:!0,onFocusOutside:R(e.onFocusOutside,s=>s.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>r.onOpenChange(!1)})}),Ni=l.forwardRef((e,n)=>{const r=_e(Q,e.__scopeMenu);return a.jsx($t,{...e,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>r.onOpenChange(!1)})}),Pi=da("MenuContent.ScrollLock"),$t=l.forwardRef((e,n)=>{const{__scopeMenu:r,loop:t=!1,trapFocus:o,onOpenAutoFocus:s,onCloseAutoFocus:i,disableOutsidePointerEvents:c,onEntryFocus:u,onEscapeKeyDown:v,onPointerDownOutside:p,onFocusOutside:f,onInteractOutside:g,onDismiss:d,disableOutsideScroll:x,...h}=e,C=_e(Q,r),m=ze(Q,r),b=At(r),M=un(r),j=Mi(r),[T,E]=l.useState(null),$=l.useRef(null),F=L(n,$,C.onContentChange),K=l.useRef(0),U=l.useRef(""),de=l.useRef(0),V=l.useRef(null),fe=l.useRef("right"),te=l.useRef(0),pe=x?la:l.Fragment,B=x?{as:Pi,allowPinchZoom:!0}:void 0,re=w=>{var N,Ie;const O=U.current+w,W=j().filter(H=>!H.disabled),k=document.activeElement,S=(N=W.find(H=>H.ref.current===k))==null?void 0:N.textValue,D=W.map(H=>H.textValue),z=Hi(D,O,S),Z=(Ie=W.find(H=>H.textValue===z))==null?void 0:Ie.ref.current;(function H(ye){U.current=ye,window.clearTimeout(K.current),ye!==""&&(K.current=window.setTimeout(()=>H(""),1e3))})(O),Z&&setTimeout(()=>Z.focus())};l.useEffect(()=>()=>window.clearTimeout(K.current),[]),ia();const ne=l.useCallback(w=>{var W,k;return fe.current===((W=V.current)==null?void 0:W.side)&&Wi(w,(k=V.current)==null?void 0:k.area)},[]);return a.jsx(Ei,{scope:r,searchRef:U,onItemEnter:l.useCallback(w=>{ne(w)&&w.preventDefault()},[ne]),onItemLeave:l.useCallback(w=>{var O;ne(w)||((O=$.current)==null||O.focus(),E(null))},[ne]),onTriggerLeave:l.useCallback(w=>{ne(w)&&w.preventDefault()},[ne]),pointerGraceTimerRef:de,onPointerGraceIntentChange:l.useCallback(w=>{V.current=w},[]),children:a.jsx(pe,{...B,children:a.jsx(ca,{asChild:!0,trapped:o,onMountAutoFocus:R(s,w=>{var O;w.preventDefault(),(O=$.current)==null||O.focus({preventScroll:!0})}),onUnmountAutoFocus:i,children:a.jsx(vr,{asChild:!0,disableOutsidePointerEvents:c,onEscapeKeyDown:v,onPointerDownOutside:p,onFocusOutside:f,onInteractOutside:g,onDismiss:d,children:a.jsx(Je,{asChild:!0,...M,dir:m.dir,orientation:"vertical",loop:t,currentTabStopId:T,onCurrentTabStopIdChange:E,onEntryFocus:R(u,w=>{m.isUsingKeyboardRef.current||w.preventDefault()}),preventScrollOnEntryFocus:!0,children:a.jsx(xr,{role:"menu","aria-orientation":"vertical","data-state":En(C.open),"data-radix-menu-content":"",dir:m.dir,...b,...h,ref:F,style:{outline:"none",...h.style},onKeyDown:R(h.onKeyDown,w=>{const W=w.target.closest("[data-radix-menu-content]")===w.currentTarget,k=w.ctrlKey||w.altKey||w.metaKey,S=w.key.length===1;W&&(w.key==="Tab"&&w.preventDefault(),!k&&S&&re(w.key));const D=$.current;if(w.target!==D||!Ri.includes(w.key))return;w.preventDefault();const Z=j().filter(N=>!N.disabled).map(N=>N.ref.current);dn.includes(w.key)&&Z.reverse(),Ki(Z)}),onBlur:R(e.onBlur,w=>{w.currentTarget.contains(w.target)||(window.clearTimeout(K.current),U.current="")}),onPointerMove:R(e.onPointerMove,Oe(w=>{const O=w.target,W=te.current!==w.clientX;if(w.currentTarget.contains(O)&&W){const k=w.clientX>te.current?"right":"left";fe.current=k,te.current=w.clientX}}))})})})})})})});vn.displayName=Q;var Ai="MenuGroup",Ft=l.forwardRef((e,n)=>{const{__scopeMenu:r,...t}=e;return a.jsx(P.div,{role:"group",...t,ref:n})});Ft.displayName=Ai;var Di="MenuLabel",gn=l.forwardRef((e,n)=>{const{__scopeMenu:r,...t}=e;return a.jsx(P.div,{...t,ref:n})});gn.displayName=Di;var We="MenuItem",lr="menu.itemSelect",it=l.forwardRef((e,n)=>{const{disabled:r=!1,onSelect:t,...o}=e,s=l.useRef(null),i=ze(We,e.__scopeMenu),c=Gt(We,e.__scopeMenu),u=L(n,s),v=l.useRef(!1),p=()=>{const f=s.current;if(!r&&f){const g=new CustomEvent(lr,{bubbles:!0,cancelable:!0});f.addEventListener(lr,d=>t==null?void 0:t(d),{once:!0}),sa(f,g),g.defaultPrevented?v.current=!1:i.onClose()}};return a.jsx(mn,{...o,ref:u,disabled:r,onClick:R(e.onClick,p),onPointerDown:f=>{var g;(g=e.onPointerDown)==null||g.call(e,f),v.current=!0},onPointerUp:R(e.onPointerUp,f=>{var g;v.current||(g=f.currentTarget)==null||g.click()}),onKeyDown:R(e.onKeyDown,f=>{r||f.target!==f.currentTarget||c.searchRef.current!==""&&f.key===" "||Ct.includes(f.key)&&(f.currentTarget.click(),f.preventDefault())})})});it.displayName=We;var mn=l.forwardRef((e,n)=>{const{__scopeMenu:r,disabled:t=!1,textValue:o,...s}=e,i=Gt(We,r),c=un(r),u=l.useRef(null),v=L(n,u),[p,f]=l.useState(!1),[g,d]=l.useState("");return l.useEffect(()=>{const x=u.current;x&&d((x.textContent??"").trim())},[s.children]),a.jsx(De.ItemSlot,{scope:r,disabled:t,textValue:o??g,children:a.jsx(Qe,{asChild:!0,...c,focusable:!t,children:a.jsx(P.div,{role:"menuitem","data-highlighted":p?"":void 0,"aria-disabled":t||void 0,"data-disabled":t?"":void 0,...s,ref:v,onPointerMove:R(e.onPointerMove,Oe(x=>{t?i.onItemLeave(x):(i.onItemEnter(x),x.defaultPrevented||x.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:R(e.onPointerLeave,Oe(x=>i.onItemLeave(x))),onFocus:R(e.onFocus,()=>f(!0)),onBlur:R(e.onBlur,()=>f(!1))})})})}),Oi="MenuCheckboxItem",hn=l.forwardRef((e,n)=>{const{checked:r=!1,onCheckedChange:t,...o}=e;return a.jsx(Cn,{scope:e.__scopeMenu,checked:r,children:a.jsx(it,{role:"menuitemcheckbox","aria-checked":Ye(r)?"mixed":r,...o,ref:n,"data-state":Bt(r),onSelect:R(o.onSelect,()=>t==null?void 0:t(Ye(r)?!0:!r),{checkForDefaultPrevented:!1})})})});hn.displayName=Oi;var xn="MenuRadioGroup",[Gi,$i]=Re(xn,{value:void 0,onValueChange:()=>{}}),bn=l.forwardRef((e,n)=>{const{value:r,onValueChange:t,...o}=e,s=fr(t);return a.jsx(Gi,{scope:e.__scopeMenu,value:r,onValueChange:s,children:a.jsx(Ft,{...o,ref:n})})});bn.displayName=xn;var yn="MenuRadioItem",wn=l.forwardRef((e,n)=>{const{value:r,...t}=e,o=$i(yn,e.__scopeMenu),s=r===o.value;return a.jsx(Cn,{scope:e.__scopeMenu,checked:s,children:a.jsx(it,{role:"menuitemradio","aria-checked":s,...t,ref:n,"data-state":Bt(s),onSelect:R(t.onSelect,()=>{var i;return(i=o.onValueChange)==null?void 0:i.call(o,r)},{checkForDefaultPrevented:!1})})})});wn.displayName=yn;var Lt="MenuItemIndicator",[Cn,Fi]=Re(Lt,{checked:!1}),Rn=l.forwardRef((e,n)=>{const{__scopeMenu:r,forceMount:t,...o}=e,s=Fi(Lt,r);return a.jsx(ue,{present:t||Ye(s.checked)||s.checked===!0,children:a.jsx(P.span,{...o,ref:n,"data-state":Bt(s.checked)})})});Rn.displayName=Lt;var Li="MenuSeparator",_n=l.forwardRef((e,n)=>{const{__scopeMenu:r,...t}=e;return a.jsx(P.div,{role:"separator","aria-orientation":"horizontal",...t,ref:n})});_n.displayName=Li;var Bi="MenuArrow",In=l.forwardRef((e,n)=>{const{__scopeMenu:r,...t}=e,o=At(r);return a.jsx(hr,{...o,...t,ref:n})});In.displayName=Bi;var zi="MenuSub",[Lc,Mn]=Re(zi),Pe="MenuSubTrigger",jn=l.forwardRef((e,n)=>{const r=_e(Pe,e.__scopeMenu),t=ze(Pe,e.__scopeMenu),o=Mn(Pe,e.__scopeMenu),s=Gt(Pe,e.__scopeMenu),i=l.useRef(null),{pointerGraceTimerRef:c,onPointerGraceIntentChange:u}=s,v={__scopeMenu:e.__scopeMenu},p=l.useCallback(()=>{i.current&&window.clearTimeout(i.current),i.current=null},[]);l.useEffect(()=>p,[p]),l.useEffect(()=>{const g=c.current;return()=>{window.clearTimeout(g),u(null)}},[c,u]);const f=L(n,o.onTriggerChange);return a.jsx(Dt,{asChild:!0,...v,children:a.jsx(mn,{id:o.triggerId,"aria-haspopup":"menu","aria-expanded":r.open,"aria-controls":r.open?o.contentId:void 0,"data-state":En(r.open),...e,ref:f,onClick:g=>{var d;(d=e.onClick)==null||d.call(e,g),!(e.disabled||g.defaultPrevented)&&(g.currentTarget.focus(),r.open||r.onOpenChange(!0))},onPointerMove:R(e.onPointerMove,Oe(g=>{s.onItemEnter(g),!g.defaultPrevented&&!e.disabled&&!r.open&&!i.current&&(s.onPointerGraceIntentChange(null),i.current=window.setTimeout(()=>{r.onOpenChange(!0),p()},100))})),onPointerLeave:R(e.onPointerLeave,Oe(g=>{var x,h;p();const d=(x=r.content)==null?void 0:x.getBoundingClientRect();if(d){const C=(h=r.content)==null?void 0:h.dataset.side,m=C==="right",b=m?-5:5,M=d[m?"left":"right"],j=d[m?"right":"left"];s.onPointerGraceIntentChange({area:[{x:g.clientX+b,y:g.clientY},{x:M,y:d.top},{x:j,y:d.top},{x:j,y:d.bottom},{x:M,y:d.bottom}],side:C}),window.clearTimeout(c.current),c.current=window.setTimeout(()=>s.onPointerGraceIntentChange(null),300)}else{if(s.onTriggerLeave(g),g.defaultPrevented)return;s.onPointerGraceIntentChange(null)}})),onKeyDown:R(e.onKeyDown,g=>{var x;e.disabled||g.target!==g.currentTarget||s.searchRef.current!==""&&g.key===" "||_i[t.dir].includes(g.key)&&(r.onOpenChange(!0),(x=r.content)==null||x.focus(),g.preventDefault())})})})});jn.displayName=Pe;var kn="MenuSubContent",Tn=l.forwardRef((e,n)=>{const r=fn(Q,e.__scopeMenu),{forceMount:t=r.forceMount,align:o="start",...s}=e,i=_e(Q,e.__scopeMenu),c=ze(Q,e.__scopeMenu),u=Mn(kn,e.__scopeMenu),v=l.useRef(null),p=L(n,v);return a.jsx(De.Provider,{scope:e.__scopeMenu,children:a.jsx(ue,{present:t||i.open,children:a.jsx(De.Slot,{scope:e.__scopeMenu,children:a.jsx($t,{id:u.contentId,"aria-labelledby":u.triggerId,...s,ref:p,align:o,side:c.dir==="rtl"?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:f=>{var g;c.isUsingKeyboardRef.current&&((g=v.current)==null||g.focus()),f.preventDefault()},onCloseAutoFocus:f=>f.preventDefault(),onFocusOutside:R(e.onFocusOutside,f=>{f.target!==u.trigger&&i.onOpenChange(!1)}),onEscapeKeyDown:R(e.onEscapeKeyDown,f=>{c.onClose(),f.preventDefault()}),onKeyDown:R(e.onKeyDown,f=>{var x;const g=f.currentTarget.contains(f.target),d=Ii[c.dir].includes(f.key);g&&d&&(i.onOpenChange(!1),(x=u.trigger)==null||x.focus(),f.preventDefault())})})})})})});Tn.displayName=kn;function En(e){return e?"open":"closed"}function Ye(e){return e==="indeterminate"}function Bt(e){return Ye(e)?"indeterminate":e?"checked":"unchecked"}function Ki(e){const n=document.activeElement;for(const r of e)if(r===n||(r.focus(),document.activeElement!==n))return}function Vi(e,n){return e.map((r,t)=>e[(n+t)%e.length])}function Hi(e,n,r){const o=n.length>1&&Array.from(n).every(v=>v===n[0])?n[0]:n,s=r?e.indexOf(r):-1;let i=Vi(e,Math.max(s,0));o.length===1&&(i=i.filter(v=>v!==r));const u=i.find(v=>v.toLowerCase().startsWith(o.toLowerCase()));return u!==r?u:void 0}function Ui(e,n){const{x:r,y:t}=e;let o=!1;for(let s=0,i=n.length-1;s<n.length;i=s++){const c=n[s],u=n[i],v=c.x,p=c.y,f=u.x,g=u.y;p>t!=g>t&&r<(f-v)*(t-p)/(g-p)+v&&(o=!o)}return o}function Wi(e,n){if(!n)return!1;const r={x:e.clientX,y:e.clientY};return Ui(r,n)}function Oe(e){return n=>n.pointerType==="mouse"?e(n):void 0}var Sn=Dt,Nn=pn,Pn=vn,An=Ft,Dn=gn,On=it,Gn=hn,$n=bn,Fn=wn,Ln=Rn,Bn=_n,zn=In,Kn=jn,Vn=Tn,Hn="DropdownMenu",[Yi]=ee(Hn,[st]),q=st(),[Bc,Un]=Yi(Hn),Wn="DropdownMenuTrigger",qi=l.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,disabled:t=!1,...o}=e,s=Un(Wn,r),i=q(r),c=L(n,s.triggerRef);return a.jsx(Sn,{asChild:!0,...i,children:a.jsx(P.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":t?"":void 0,disabled:t,...o,ref:c,onPointerDown:R(e.onPointerDown,u=>{!t&&u.button===0&&u.ctrlKey===!1&&(s.onOpenToggle(),s.open||u.preventDefault())}),onKeyDown:R(e.onKeyDown,u=>{t||(["Enter"," "].includes(u.key)&&s.onOpenToggle(),u.key==="ArrowDown"&&s.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(u.key)&&u.preventDefault())})})})});qi.displayName=Wn;var Xi="DropdownMenuPortal",Yn=e=>{const{__scopeDropdownMenu:n,...r}=e,t=q(n);return a.jsx(Nn,{...t,...r})};Yn.displayName=Xi;var qn="DropdownMenuContent",Xn=l.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,o=Un(qn,r),s=q(r),i=l.useRef(!1);return a.jsx(Pn,{id:o.contentId,"aria-labelledby":o.triggerId,...s,...t,ref:n,onCloseAutoFocus:R(e.onCloseAutoFocus,c=>{var u;i.current||(u=o.triggerRef.current)==null||u.focus(),i.current=!1,c.preventDefault()}),onInteractOutside:R(e.onInteractOutside,c=>{const u=c.detail.originalEvent,v=u.button===0&&u.ctrlKey===!0,p=u.button===2||v;(!o.modal||p)&&(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)"}})});Xn.displayName=qn;var Zi="DropdownMenuGroup",Ji=l.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,o=q(r);return a.jsx(An,{...o,...t,ref:n})});Ji.displayName=Zi;var Qi="DropdownMenuLabel",Zn=l.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,o=q(r);return a.jsx(Dn,{...o,...t,ref:n})});Zn.displayName=Qi;var el="DropdownMenuItem",Jn=l.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,o=q(r);return a.jsx(On,{...o,...t,ref:n})});Jn.displayName=el;var tl="DropdownMenuCheckboxItem",Qn=l.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,o=q(r);return a.jsx(Gn,{...o,...t,ref:n})});Qn.displayName=tl;var rl="DropdownMenuRadioGroup",nl=l.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,o=q(r);return a.jsx($n,{...o,...t,ref:n})});nl.displayName=rl;var ol="DropdownMenuRadioItem",al=l.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,o=q(r);return a.jsx(Fn,{...o,...t,ref:n})});al.displayName=ol;var sl="DropdownMenuItemIndicator",eo=l.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,o=q(r);return a.jsx(Ln,{...o,...t,ref:n})});eo.displayName=sl;var il="DropdownMenuSeparator",to=l.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,o=q(r);return a.jsx(Bn,{...o,...t,ref:n})});to.displayName=il;var ll="DropdownMenuArrow",cl=l.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,o=q(r);return a.jsx(zn,{...o,...t,ref:n})});cl.displayName=ll;var dl="DropdownMenuSubTrigger",ro=l.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,o=q(r);return a.jsx(Kn,{...o,...t,ref:n})});ro.displayName=dl;var ul="DropdownMenuSubContent",no=l.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,o=q(r);return a.jsx(Vn,{...o,...t,ref:n,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)"}})});no.displayName=ul;var oo=Yn,fl=Xn,pl=Zn,vl=Jn,gl=Qn,ml=eo,hl=to,xl=ro,bl=no;l.forwardRef(function(n,r){const{className:t,children:o,sideOffset:s=4,...i}=n;return a.jsx(oo,{children:a.jsx(fl,{ref:r,sideOffset:s,className:I("v8-dropdown-menu",t),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:o})})});l.forwardRef(function(n,r){const{className:t,children:o,shortcut:s,danger:i,leftIcon:c,disabled:u,...v}=n;return a.jsxs(vl,{ref:r,disabled:u,className:I("v8-dropdown-menu__item",i&&"is-danger",t),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"},...v,children:[c!==void 0&&a.jsx("span",{style:{width:14,display:"inline-flex",color:"var(--fg-muted)"},children:c}),a.jsx("span",{style:{flex:1,minWidth:0},children:o}),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})]})});l.forwardRef(function(n,r){const{className:t,children:o,...s}=n;return a.jsxs(gl,{ref:r,className:I("v8-dropdown-menu__checkbox",t),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(ml,{style:{display:"inline-flex",color:"var(--accent)"},children:a.jsx(_t,{size:14,"aria-hidden":"true"})}),a.jsx("span",{children:o})]})});l.forwardRef(function(n,r){return a.jsx(pl,{ref:r,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)"},...n})});l.forwardRef(function(n,r){return a.jsx(hl,{ref:r,style:{height:1,margin:"var(--space-1) 0",background:"var(--border)"},...n})});l.forwardRef(function(n,r){const{className:t,children:o,...s}=n;return a.jsxs(xl,{ref:r,className:I("v8-dropdown-menu__sub-trigger",t),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:o}),a.jsx(yr,{size:14,"aria-hidden":"true",style:{color:"var(--fg-muted)"}})]})});l.forwardRef(function(n,r){const{className:t,...o}=n;return a.jsx(oo,{children:a.jsx(bl,{ref:r,sideOffset:2,className:I("v8-dropdown-menu__sub-content",t),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)"},...o})})});var ao="ContextMenu",[yl]=ee(ao,[st]),X=st(),[zc,so]=yl(ao),io="ContextMenuTrigger",lo=l.forwardRef((e,n)=>{const{__scopeContextMenu:r,disabled:t=!1,...o}=e,s=so(io,r),i=X(r),[c,u]=l.useState({x:0,y:0}),v=l.useMemo(()=>({current:{getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...c})}}),[c]),p=l.useRef(0),f=l.useCallback(()=>window.clearTimeout(p.current),[]),g=d=>{s.hasInteractedRef.current=!0,u({x:d.clientX,y:d.clientY}),s.onOpenChange(!0)};return l.useEffect(()=>f,[f]),l.useEffect(()=>void(t&&f()),[t,f]),a.jsxs(a.Fragment,{children:[a.jsx(Sn,{...i,virtualRef:v}),a.jsx(P.span,{"data-state":s.open?"open":"closed","data-disabled":t?"":void 0,...o,ref:n,style:{WebkitTouchCallout:"none",...e.style},onContextMenu:t?e.onContextMenu:R(e.onContextMenu,d=>{f(),g(d),d.preventDefault()}),onPointerDown:t?e.onPointerDown:R(e.onPointerDown,He(d=>{f(),s.open&&s.onOpenChange(!1),p.current=window.setTimeout(()=>g(d),700)})),onPointerMove:t?e.onPointerMove:R(e.onPointerMove,He(f)),onPointerCancel:t?e.onPointerCancel:R(e.onPointerCancel,He(f)),onPointerUp:t?e.onPointerUp:R(e.onPointerUp,He(f))})]})});lo.displayName=io;var wl="ContextMenuPortal",co=e=>{const{__scopeContextMenu:n,...r}=e,t=X(n);return a.jsx(Nn,{...t,...r})};co.displayName=wl;var uo="ContextMenuContent",fo=l.forwardRef((e,n)=>{const{__scopeContextMenu:r,...t}=e,o=so(uo,r),s=X(r),i=l.useRef(!1);return a.jsx(Pn,{...s,...t,ref:n,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:c=>{var u;(u=e.onCloseAutoFocus)==null||u.call(e,c),!c.defaultPrevented&&i.current&&c.preventDefault(),i.current=!1},onInteractOutside:c=>{var u;(u=e.onInteractOutside)==null||u.call(e,c),!c.defaultPrevented&&!o.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)"}})});fo.displayName=uo;var Cl="ContextMenuGroup",Rl=l.forwardRef((e,n)=>{const{__scopeContextMenu:r,...t}=e,o=X(r);return a.jsx(An,{...o,...t,ref:n})});Rl.displayName=Cl;var _l="ContextMenuLabel",po=l.forwardRef((e,n)=>{const{__scopeContextMenu:r,...t}=e,o=X(r);return a.jsx(Dn,{...o,...t,ref:n})});po.displayName=_l;var Il="ContextMenuItem",vo=l.forwardRef((e,n)=>{const{__scopeContextMenu:r,...t}=e,o=X(r);return a.jsx(On,{...o,...t,ref:n})});vo.displayName=Il;var Ml="ContextMenuCheckboxItem",jl=l.forwardRef((e,n)=>{const{__scopeContextMenu:r,...t}=e,o=X(r);return a.jsx(Gn,{...o,...t,ref:n})});jl.displayName=Ml;var kl="ContextMenuRadioGroup",Tl=l.forwardRef((e,n)=>{const{__scopeContextMenu:r,...t}=e,o=X(r);return a.jsx($n,{...o,...t,ref:n})});Tl.displayName=kl;var El="ContextMenuRadioItem",Sl=l.forwardRef((e,n)=>{const{__scopeContextMenu:r,...t}=e,o=X(r);return a.jsx(Fn,{...o,...t,ref:n})});Sl.displayName=El;var Nl="ContextMenuItemIndicator",Pl=l.forwardRef((e,n)=>{const{__scopeContextMenu:r,...t}=e,o=X(r);return a.jsx(Ln,{...o,...t,ref:n})});Pl.displayName=Nl;var Al="ContextMenuSeparator",go=l.forwardRef((e,n)=>{const{__scopeContextMenu:r,...t}=e,o=X(r);return a.jsx(Bn,{...o,...t,ref:n})});go.displayName=Al;var Dl="ContextMenuArrow",Ol=l.forwardRef((e,n)=>{const{__scopeContextMenu:r,...t}=e,o=X(r);return a.jsx(zn,{...o,...t,ref:n})});Ol.displayName=Dl;var Gl="ContextMenuSubTrigger",$l=l.forwardRef((e,n)=>{const{__scopeContextMenu:r,...t}=e,o=X(r);return a.jsx(Kn,{...o,...t,ref:n})});$l.displayName=Gl;var Fl="ContextMenuSubContent",Ll=l.forwardRef((e,n)=>{const{__scopeContextMenu:r,...t}=e,o=X(r);return a.jsx(Vn,{...o,...t,ref:n,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)"}})});Ll.displayName=Fl;function He(e){return n=>n.pointerType!=="mouse"?e(n):void 0}var Bl=lo,zl=co,Kl=fo,Vl=po,Hl=vo,Ul=go;l.forwardRef(function(n,r){return a.jsx(Bl,{ref:r,...n})});l.forwardRef(function(n,r){const{className:t,children:o,...s}=n;return a.jsx(zl,{children:a.jsx(Kl,{ref:r,className:I("v8-context-menu",t),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:o})})});l.forwardRef(function(n,r){const{className:t,children:o,shortcut:s,danger:i,leftIcon:c,disabled:u,...v}=n;return a.jsxs(Hl,{ref:r,disabled:u,className:I("v8-context-menu__item",i&&"is-danger",t),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"},...v,children:[c!==void 0&&a.jsx("span",{style:{width:14,display:"inline-flex",color:"var(--fg-muted)"},children:c}),a.jsx("span",{style:{flex:1,minWidth:0},children:o}),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})]})});l.forwardRef(function(n,r){return a.jsx(Ul,{ref:r,style:{height:1,margin:"var(--space-1) 0",background:"var(--border)"},...n})});l.forwardRef(function(n,r){return a.jsx(Vl,{ref:r,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)"},...n})});l.forwardRef(function(n,r){const{items:t,showValue:o=!0,barHeight:s=6,cap:i,className:c,style:u,...v}=n,p=i??Math.max(1,...t.map(f=>f.value));return a.jsx("div",{ref:r,className:I("v8-bar-list",c),style:{display:"flex",flexDirection:"column",gap:"var(--space-3)",...u},...v,children:t.map(f=>{const g=Math.min(100,f.value/p*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}),o===!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:`${g}%`,background:f.color??"var(--accent)",borderRadius:"var(--radius-pill)",transition:"width var(--motion-base) var(--ease-out)"}})})]})]},f.id)})})});const Wl={neutral:"var(--fg-subtle)",info:"var(--info)",success:"var(--success)",warning:"var(--warning)",danger:"var(--danger)",accent:"var(--accent)"},Yl={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))"};l.forwardRef(function(n,r){const{items:t,className:o,style:s,...i}=n;return a.jsx("ol",{ref:r,className:I("v8-timeline",o),style:{listStyle:"none",margin:0,padding:0,...s},...i,children:t.map((c,u)=>{const v=c.tone??"neutral",p=u===t.length-1;return a.jsxs("li",{style:{position:"relative",display:"grid",gridTemplateColumns:"20px 1fr",gap:"var(--space-3)",paddingBottom:p?0:"var(--space-4)"},children:[a.jsxs("span",{"aria-hidden":"true",style:{position:"relative",width:20,display:"flex",justifyContent:"center"},children:[!p&&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:Wl[v],boxShadow:`0 0 0 3px ${Yl[v]}`,display:"inline-flex",alignItems:"center",justifyContent:"center",marginTop:4,fontSize:10,color:"var(--bg)"},children:c.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:c.title}),c.meta!==void 0&&a.jsx("div",{style:{fontSize:"var(--fs-12)",color:"var(--fg-subtle)",flexShrink:0},children:c.meta})]}),c.description!==void 0&&a.jsx("div",{style:{fontSize:"var(--fs-13)",color:"var(--fg-muted)",marginTop:2},children:c.description})]})]},c.id)})})});var lt="Collapsible",[ql,mo]=ee(lt),[Xl,zt]=ql(lt),ho=l.forwardRef((e,n)=>{const{__scopeCollapsible:r,open:t,defaultOpen:o,disabled:s,onOpenChange:i,...c}=e,[u,v]=le({prop:t,defaultProp:o??!1,onChange:i,caller:lt});return a.jsx(Xl,{scope:r,disabled:s,contentId:Ge(),open:u,onOpenToggle:l.useCallback(()=>v(p=>!p),[v]),children:a.jsx(P.div,{"data-state":Vt(u),"data-disabled":s?"":void 0,...c,ref:n})})});ho.displayName=lt;var xo="CollapsibleTrigger",bo=l.forwardRef((e,n)=>{const{__scopeCollapsible:r,...t}=e,o=zt(xo,r);return a.jsx(P.button,{type:"button","aria-controls":o.open?o.contentId:void 0,"aria-expanded":o.open||!1,"data-state":Vt(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled,...t,ref:n,onClick:R(e.onClick,o.onOpenToggle)})});bo.displayName=xo;var Kt="CollapsibleContent",yo=l.forwardRef((e,n)=>{const{forceMount:r,...t}=e,o=zt(Kt,e.__scopeCollapsible);return a.jsx(ue,{present:r||o.open,children:({present:s})=>a.jsx(Zl,{...t,ref:n,present:s})})});yo.displayName=Kt;var Zl=l.forwardRef((e,n)=>{const{__scopeCollapsible:r,present:t,children:o,...s}=e,i=zt(Kt,r),[c,u]=l.useState(t),v=l.useRef(null),p=L(n,v),f=l.useRef(0),g=f.current,d=l.useRef(0),x=d.current,h=i.open||c,C=l.useRef(h),m=l.useRef(void 0);return l.useEffect(()=>{const b=requestAnimationFrame(()=>C.current=!1);return()=>cancelAnimationFrame(b)},[]),ur(()=>{const b=v.current;if(b){m.current=m.current||{transitionDuration:b.style.transitionDuration,animationName:b.style.animationName},b.style.transitionDuration="0s",b.style.animationName="none";const M=b.getBoundingClientRect();f.current=M.height,d.current=M.width,C.current||(b.style.transitionDuration=m.current.transitionDuration,b.style.animationName=m.current.animationName),u(t)}},[i.open,t]),a.jsx(P.div,{"data-state":Vt(i.open),"data-disabled":i.disabled?"":void 0,id:i.contentId,hidden:!h,...s,ref:p,style:{"--radix-collapsible-content-height":g?`${g}px`:void 0,"--radix-collapsible-content-width":x?`${x}px`:void 0,...e.style},children:h&&o})});function Vt(e){return e?"open":"closed"}var Jl=ho,Ql=bo,ec=yo,ce="Accordion",tc=["Home","End","ArrowDown","ArrowUp","ArrowLeft","ArrowRight"],[Ht,rc,nc]=It(ce),[ct]=ee(ce,[nc,mo]),Ut=mo(),wo=l.forwardRef((e,n)=>{const{type:r,...t}=e,o=t,s=t;return a.jsx(Ht.Provider,{scope:e.__scopeAccordion,children:r==="multiple"?a.jsx(ic,{...s,ref:n}):a.jsx(sc,{...o,ref:n})})});wo.displayName=ce;var[Co,oc]=ct(ce),[Ro,ac]=ct(ce,{collapsible:!1}),sc=l.forwardRef((e,n)=>{const{value:r,defaultValue:t,onValueChange:o=()=>{},collapsible:s=!1,...i}=e,[c,u]=le({prop:r,defaultProp:t??"",onChange:o,caller:ce});return a.jsx(Co,{scope:e.__scopeAccordion,value:l.useMemo(()=>c?[c]:[],[c]),onItemOpen:u,onItemClose:l.useCallback(()=>s&&u(""),[s,u]),children:a.jsx(Ro,{scope:e.__scopeAccordion,collapsible:s,children:a.jsx(_o,{...i,ref:n})})})}),ic=l.forwardRef((e,n)=>{const{value:r,defaultValue:t,onValueChange:o=()=>{},...s}=e,[i,c]=le({prop:r,defaultProp:t??[],onChange:o,caller:ce}),u=l.useCallback(p=>c((f=[])=>[...f,p]),[c]),v=l.useCallback(p=>c((f=[])=>f.filter(g=>g!==p)),[c]);return a.jsx(Co,{scope:e.__scopeAccordion,value:i,onItemOpen:u,onItemClose:v,children:a.jsx(Ro,{scope:e.__scopeAccordion,collapsible:!0,children:a.jsx(_o,{...s,ref:n})})})}),[lc,dt]=ct(ce),_o=l.forwardRef((e,n)=>{const{__scopeAccordion:r,disabled:t,dir:o,orientation:s="vertical",...i}=e,c=l.useRef(null),u=L(c,n),v=rc(r),f=Fe(o)==="ltr",g=R(e.onKeyDown,d=>{var F;if(!tc.includes(d.key))return;const x=d.target,h=v().filter(K=>{var U;return!((U=K.ref.current)!=null&&U.disabled)}),C=h.findIndex(K=>K.ref.current===x),m=h.length;if(C===-1)return;d.preventDefault();let b=C;const M=0,j=m-1,T=()=>{b=C+1,b>j&&(b=M)},E=()=>{b=C-1,b<M&&(b=j)};switch(d.key){case"Home":b=M;break;case"End":b=j;break;case"ArrowRight":s==="horizontal"&&(f?T():E());break;case"ArrowDown":s==="vertical"&&T();break;case"ArrowLeft":s==="horizontal"&&(f?E():T());break;case"ArrowUp":s==="vertical"&&E();break}const $=b%m;(F=h[$].ref.current)==null||F.focus()});return a.jsx(lc,{scope:r,disabled:t,direction:o,orientation:s,children:a.jsx(Ht.Slot,{scope:r,children:a.jsx(P.div,{...i,"data-orientation":s,ref:u,onKeyDown:t?void 0:g})})})}),qe="AccordionItem",[cc,Wt]=ct(qe),Io=l.forwardRef((e,n)=>{const{__scopeAccordion:r,value:t,...o}=e,s=dt(qe,r),i=oc(qe,r),c=Ut(r),u=Ge(),v=t&&i.value.includes(t)||!1,p=s.disabled||e.disabled;return a.jsx(cc,{scope:r,open:v,disabled:p,triggerId:u,children:a.jsx(Jl,{"data-orientation":s.orientation,"data-state":So(v),...c,...o,ref:n,disabled:p,open:v,onOpenChange:f=>{f?i.onItemOpen(t):i.onItemClose(t)}})})});Io.displayName=qe;var Mo="AccordionHeader",jo=l.forwardRef((e,n)=>{const{__scopeAccordion:r,...t}=e,o=dt(ce,r),s=Wt(Mo,r);return a.jsx(P.h3,{"data-orientation":o.orientation,"data-state":So(s.open),"data-disabled":s.disabled?"":void 0,...t,ref:n})});jo.displayName=Mo;var Rt="AccordionTrigger",ko=l.forwardRef((e,n)=>{const{__scopeAccordion:r,...t}=e,o=dt(ce,r),s=Wt(Rt,r),i=ac(Rt,r),c=Ut(r);return a.jsx(Ht.ItemSlot,{scope:r,children:a.jsx(Ql,{"aria-disabled":s.open&&!i.collapsible||void 0,"data-orientation":o.orientation,id:s.triggerId,...c,...t,ref:n})})});ko.displayName=Rt;var To="AccordionContent",Eo=l.forwardRef((e,n)=>{const{__scopeAccordion:r,...t}=e,o=dt(ce,r),s=Wt(To,r),i=Ut(r);return a.jsx(ec,{role:"region","aria-labelledby":s.triggerId,"data-orientation":o.orientation,...i,...t,ref:n,style:{"--radix-accordion-content-height":"var(--radix-collapsible-content-height)","--radix-accordion-content-width":"var(--radix-collapsible-content-width)",...e.style}})});Eo.displayName=To;function So(e){return e?"open":"closed"}var cr=wo,dc=Io,uc=jo,fc=ko,pc=Eo;l.forwardRef(function(n,r){const{type:t,defaultValue:o,value:s,onValueChange:i,children:c,className:u,...v}=n;return t==="single"?a.jsx(cr,{ref:r,type:"single",collapsible:!0,defaultValue:o,value:s,onValueChange:i,className:I("v8-accordion",u),...v,children:c}):a.jsx(cr,{ref:r,type:"multiple",defaultValue:o,value:s,onValueChange:i,className:I("v8-accordion",u),...v,children:c})});l.forwardRef(function(n,r){const{value:t,title:o,description:s,children:i,disabled:c,className:u}=n;return a.jsxs(dc,{ref:r,value:t,disabled:c,className:I("v8-accordion__item",u),style:{borderBottom:"1px solid var(--border)"},children:[a.jsx(uc,{asChild:!0,children:a.jsx("h3",{style:{margin:0},children:a.jsxs(fc,{style:{width:"100%",display:"flex",alignItems:"center",justifyContent:"space-between",gap:"var(--space-3)",padding:"var(--space-4) 0",background:"transparent",border:0,cursor:c===!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:o}),s!==void 0&&a.jsx("span",{style:{display:"block",fontSize:"var(--fs-13)",color:"var(--fg-muted)",marginTop:2},children:s})]}),a.jsx(Ca,{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:`
35
+ .v8-accordion__item button[data-state='open'] .v8-accordion__chevron { transform: rotate(180deg); }
36
+ `})]})})}),a.jsx(pc,{style:{overflow:"hidden",fontSize:"var(--fs-13)",color:"var(--fg-muted)"},children:a.jsx("div",{style:{paddingBottom:"var(--space-4)"},children:i})})]})});l.forwardRef(function(n,r){const{children:t,density:o="comfortable",className:s,...i}=n;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:r,className:I("v8-table",`v8-table--${o}`,s),style:{width:"100%",borderCollapse:"separate",borderSpacing:0,fontSize:"var(--fs-13)",color:"var(--fg)"},...i,children:t})})});l.forwardRef(function(n,r){const{children:t,...o}=n;return a.jsx("thead",{ref:r,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)"},...o,children:t})});l.forwardRef(function(n,r){return a.jsx("tbody",{ref:r,...n})});l.forwardRef(function(n,r){const{selected:t,striped:o,className:s,style:i,...c}=n;return a.jsx("tr",{ref:r,className:I("v8-table__row",t&&"is-selected",s),style:{background:t===!0?"var(--accent-soft)":o===!0?"var(--surface-0)":"transparent",borderBottom:"1px solid var(--border)",transition:"background var(--motion-fast) var(--ease-out)",...i},...c})});l.forwardRef(function(n,r){const{align:t="left",width:o,className:s,style:i,...c}=n;return a.jsx("th",{ref:r,className:I("v8-table__th",s),style:{padding:"var(--space-2) var(--space-3)",textAlign:t,width:o,...i},...c})});l.forwardRef(function(n,r){const{align:t="left",rowHeight:o=!0,className:s,style:i,...c}=n;return a.jsx("td",{ref:r,className:I("v8-table__td",s),style:{padding:"var(--space-2) var(--space-3)",textAlign:t,height:o===!0?"var(--density-row-h)":void 0,verticalAlign:"middle",...i},...c})});var ut="Tabs",[vc]=ee(ut,[xe]),No=xe(),[gc,Yt]=vc(ut),Po=l.forwardRef((e,n)=>{const{__scopeTabs:r,value:t,onValueChange:o,defaultValue:s,orientation:i="horizontal",dir:c,activationMode:u="automatic",...v}=e,p=Fe(c),[f,g]=le({prop:t,onChange:o,defaultProp:s??"",caller:ut});return a.jsx(gc,{scope:r,baseId:Ge(),value:f,onValueChange:g,orientation:i,dir:p,activationMode:u,children:a.jsx(P.div,{dir:p,"data-orientation":i,...v,ref:n})})});Po.displayName=ut;var Ao="TabsList",Do=l.forwardRef((e,n)=>{const{__scopeTabs:r,loop:t=!0,...o}=e,s=Yt(Ao,r),i=No(r);return a.jsx(Je,{asChild:!0,...i,orientation:s.orientation,dir:s.dir,loop:t,children:a.jsx(P.div,{role:"tablist","aria-orientation":s.orientation,...o,ref:n})})});Do.displayName=Ao;var Oo="TabsTrigger",Go=l.forwardRef((e,n)=>{const{__scopeTabs:r,value:t,disabled:o=!1,...s}=e,i=Yt(Oo,r),c=No(r),u=Lo(i.baseId,t),v=Bo(i.baseId,t),p=t===i.value;return a.jsx(Qe,{asChild:!0,...c,focusable:!o,active:p,children:a.jsx(P.button,{type:"button",role:"tab","aria-selected":p,"aria-controls":v,"data-state":p?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:u,...s,ref:n,onMouseDown:R(e.onMouseDown,f=>{!o&&f.button===0&&f.ctrlKey===!1?i.onValueChange(t):f.preventDefault()}),onKeyDown:R(e.onKeyDown,f=>{o||f.target!==f.currentTarget||[" ","Enter"].includes(f.key)&&i.onValueChange(t)}),onFocus:R(e.onFocus,()=>{const f=i.activationMode!=="manual";!p&&!o&&f&&i.onValueChange(t)})})})});Go.displayName=Oo;var $o="TabsContent",Fo=l.forwardRef((e,n)=>{const{__scopeTabs:r,value:t,forceMount:o,children:s,...i}=e,c=Yt($o,r),u=Lo(c.baseId,t),v=Bo(c.baseId,t),p=t===c.value,f=l.useRef(p);return l.useEffect(()=>{const g=requestAnimationFrame(()=>f.current=!1);return()=>cancelAnimationFrame(g)},[]),a.jsx(ue,{present:o||p,children:({present:g})=>a.jsx(P.div,{"data-state":p?"active":"inactive","data-orientation":c.orientation,role:"tabpanel","aria-labelledby":u,hidden:!g,id:v,tabIndex:0,...i,ref:n,style:{...e.style,animationDuration:f.current?"0s":void 0},children:g&&s})})});Fo.displayName=$o;function Lo(e,n){return`${e}-trigger-${n}`}function Bo(e,n){return`${e}-content-${n}`}var mc=Po,hc=Do,xc=Go,bc=Fo;l.forwardRef(function(n,r){const{variant:t="underline",className:o,...s}=n;return a.jsx(mc,{ref:r,className:I("v8-tabs",`v8-tabs--${t}`,o),...s})});l.forwardRef(function(n,r){const{variant:t="underline",className:o,style:s,...i}=n;return a.jsx(hc,{ref:r,className:I("v8-tabs__list",o),style:{display:"inline-flex",alignItems:"center",gap:t==="pill"?4:0,borderBottom:t==="underline"?"1px solid var(--border)":"none",padding:t==="pill"?4:0,background:t==="pill"?"var(--surface-1)":"transparent",borderRadius:t==="pill"?"var(--radius)":0,border:t==="pill"?"1px solid var(--border)":void 0,...s},...i})});l.forwardRef(function(n,r){const{variant:t="underline",className:o,style:s,...i}=n;return a.jsxs(xc,{ref:r,className:I("v8-tabs__trigger",o),style:{display:"inline-flex",alignItems:"center",gap:"var(--space-2)",height:t==="pill"?28:32,padding:"0 var(--space-3)",background:"transparent",color:"var(--fg-muted)",border:0,borderBottom:t==="underline"?"2px solid transparent":"none",borderRadius:t==="pill"?"var(--radius-sm)":0,marginBottom:t==="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:[n.children,a.jsx("style",{children:`
37
+ .v8-tabs__trigger[data-state='active'] {
38
+ color: var(--fg);
39
+ }
40
+ .v8-tabs--underline .v8-tabs__trigger[data-state='active'] {
41
+ border-bottom-color: var(--accent);
42
+ }
43
+ .v8-tabs--pill .v8-tabs__trigger[data-state='active'] {
44
+ background: var(--surface-2);
45
+ color: var(--fg);
46
+ }
47
+ .v8-tabs__trigger:hover:not([data-state='active']) {
48
+ color: var(--fg);
49
+ }
50
+ `})]})});l.forwardRef(function(n,r){const{className:t,...o}=n;return a.jsx(bc,{ref:r,className:I("v8-tabs__content",t),style:{paddingTop:"var(--space-4)"},...o})});l.forwardRef(function(n,r){const{href:t,children:o,showActiveBar:s,leading:i,className:c,style:u,...v}=n;return a.jsxs("a",{ref:r,href:t,className:I("v8-nav-link",c),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},...v,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:o}),a.jsx("style",{children:`
51
+ .v8-nav-link:hover {
52
+ background: var(--surface-1);
53
+ color: var(--fg);
54
+ }
55
+ .v8-nav-link[aria-current='page'] {
56
+ background: var(--surface-1);
57
+ color: var(--fg);
58
+ }
59
+ .v8-nav-link[aria-current='page'] [data-nav-active-bar='true'] {
60
+ background: var(--accent);
61
+ }
62
+ `})]})});function yc(e,n,r){if(n<=7)return Array.from({length:n},(i,c)=>c+1);const t=Math.max(2,e-r),o=Math.min(n-1,e+r),s=[1];t>2&&s.push("ellipsis");for(let i=t;i<=o;i++)s.push(i);return o<n-1&&s.push("ellipsis"),s.push(n),s}l.forwardRef(function(n,r){const{page:t,totalPages:o,onChange:s,showEdges:i=!0,siblingCount:c=1,className:u,style:v,...p}=n,f=yc(t,o,c),g=d=>{d>=1&&d<=o&&d!==t&&s(d)};return a.jsxs("nav",{ref:r,className:I("v8-pagination",u),"aria-label":"Pagination",style:{display:"inline-flex",alignItems:"center",gap:2,...v},...p,children:[i===!0&&a.jsx(Ne,{"aria-label":"First page",disabled:t===1,onClick:()=>g(1),children:a.jsx(Ra,{size:14,"aria-hidden":"true"})}),a.jsx(Ne,{"aria-label":"Previous page",disabled:t===1,onClick:()=>g(t-1),children:a.jsx(Ea,{size:14,"aria-hidden":"true"})}),f.map((d,x)=>d==="ellipsis"?a.jsx("span",{style:{padding:"0 6px",color:"var(--fg-subtle)",fontSize:"var(--fs-13)"},"aria-hidden":"true",children:"…"},`e-${x}`):a.jsx(Ne,{"aria-current":d===t?"page":void 0,"aria-label":`Page ${d}`,selected:d===t,onClick:()=>g(d),children:d},d)),a.jsx(Ne,{"aria-label":"Next page",disabled:t===o,onClick:()=>g(t+1),children:a.jsx(yr,{size:14,"aria-hidden":"true"})}),i===!0&&a.jsx(Ne,{"aria-label":"Last page",disabled:t===o,onClick:()=>g(o),children:a.jsx(_a,{size:14,"aria-hidden":"true"})})]})});function Ne(e){const{selected:n,disabled:r,children:t,className:o,style:s,...i}=e;return a.jsxs("button",{type:"button",disabled:r,className:I("v8-pagination__btn",n===!0&&"is-selected",o),style:{display:"inline-flex",alignItems:"center",justifyContent:"center",minWidth:28,height:28,padding:"0 8px",background:n===!0?"var(--accent-soft)":"transparent",color:n===!0?"var(--accent)":"var(--fg-muted)",border:0,borderRadius:"var(--radius-sm)",fontSize:"var(--fs-13)",fontWeight:n===!0?600:500,cursor:r===!0?"not-allowed":"pointer",opacity:r===!0?.45:1,fontFamily:"inherit",transition:"background var(--motion-fast) var(--ease-out), color var(--motion-fast) var(--ease-out)",...s},...i,children:[t,a.jsx("style",{children:`
63
+ .v8-pagination__btn:hover:not(:disabled):not(.is-selected) {
64
+ background: var(--surface-1);
65
+ color: var(--fg);
66
+ }
67
+ `})]})}const dr={neutral:"var(--fg-subtle)",info:"var(--info)",success:"var(--success)",warning:"var(--warning)",danger:"var(--danger)"};l.forwardRef(function(n,r){const{items:t,className:o,...s}=n;return a.jsx("ol",{ref:r,className:I("v8-agent-activity",o),style:{listStyle:"none",margin:0,padding:0,display:"flex",flexDirection:"column",gap:"var(--space-2)"},...s,children:t.map(i=>{const c=i.tone??"neutral";return a.jsxs("li",{style:{display:"flex",alignItems:"flex-start",gap:"var(--space-3)",padding:"var(--space-3)",background:"var(--surface-0)",border:"1px solid var(--border)",borderRadius:"var(--radius)"},children:[a.jsx("span",{"aria-hidden":"true",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:22,height:22,borderRadius:"var(--radius-sm)",background:`color-mix(in oklch, ${dr[c]} 14%, transparent)`,color:dr[c],flexShrink:0},children:i.icon}),a.jsxs("div",{style:{flex:1,minWidth:0},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:i.title}),i.meta!==void 0&&a.jsx("div",{style:{fontSize:"var(--fs-12)",color:"var(--fg-subtle)",flexShrink:0},children:i.meta})]}),i.description!==void 0&&a.jsx("div",{style:{fontSize:"var(--fs-12)",color:"var(--fg-muted)",marginTop:2},children:i.description})]})]},i.id)})})});export{Oc as I,Nc as K,Pc as a,Ac as b,Dc as u};