@burdenoff/microfe-vibecontrols 2026.511.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2254) hide show
  1. package/README.md +91 -0
  2. package/dist/VibeControlsRoot.d.ts +36 -0
  3. package/dist/VibeControlsRoot.d.ts.map +1 -0
  4. package/dist/VibeControlsRoot.js +195 -0
  5. package/dist/VibeControlsRoot.js.map +1 -0
  6. package/dist/VibeControlsRoutes.d.ts +2 -0
  7. package/dist/VibeControlsRoutes.d.ts.map +1 -0
  8. package/dist/VibeControlsRoutes.js +285 -0
  9. package/dist/VibeControlsRoutes.js.map +1 -0
  10. package/dist/_virtual/_rolldown/runtime.js +23 -0
  11. package/dist/components/actions/ActionCard.d.ts +32 -0
  12. package/dist/components/actions/ActionCard.d.ts.map +1 -0
  13. package/dist/components/actions/ActionCard.js +140 -0
  14. package/dist/components/actions/ActionCard.js.map +1 -0
  15. package/dist/components/actions/ActionForm.d.ts +39 -0
  16. package/dist/components/actions/ActionForm.d.ts.map +1 -0
  17. package/dist/components/actions/ActionForm.js +488 -0
  18. package/dist/components/actions/ActionForm.js.map +1 -0
  19. package/dist/components/actions/ActionTypeBadge.d.ts +9 -0
  20. package/dist/components/actions/ActionTypeBadge.d.ts.map +1 -0
  21. package/dist/components/actions/ActionTypeBadge.js +77 -0
  22. package/dist/components/actions/ActionTypeBadge.js.map +1 -0
  23. package/dist/components/actions/ExecutionHistory.d.ts +23 -0
  24. package/dist/components/actions/ExecutionHistory.d.ts.map +1 -0
  25. package/dist/components/actions/ExecutionHistory.js +103 -0
  26. package/dist/components/actions/ExecutionHistory.js.map +1 -0
  27. package/dist/components/actions/index.d.ts +6 -0
  28. package/dist/components/actions/index.d.ts.map +1 -0
  29. package/dist/components/actions/index.js +4 -0
  30. package/dist/components/agent-manager/AgentManagerAdminBar.d.ts +13 -0
  31. package/dist/components/agent-manager/AgentManagerAdminBar.d.ts.map +1 -0
  32. package/dist/components/agent-manager/AgentManagerAdminBar.js +146 -0
  33. package/dist/components/agent-manager/AgentManagerAdminBar.js.map +1 -0
  34. package/dist/components/agent-manager/AgentManagerBulkActions.d.ts +13 -0
  35. package/dist/components/agent-manager/AgentManagerBulkActions.d.ts.map +1 -0
  36. package/dist/components/agent-manager/AgentManagerBulkActions.js +74 -0
  37. package/dist/components/agent-manager/AgentManagerBulkActions.js.map +1 -0
  38. package/dist/components/agent-manager/AgentManagerCenter.d.ts +8 -0
  39. package/dist/components/agent-manager/AgentManagerCenter.d.ts.map +1 -0
  40. package/dist/components/agent-manager/AgentManagerCenter.js +129 -0
  41. package/dist/components/agent-manager/AgentManagerCenter.js.map +1 -0
  42. package/dist/components/agent-manager/AgentManagerChatPane.d.ts +9 -0
  43. package/dist/components/agent-manager/AgentManagerChatPane.d.ts.map +1 -0
  44. package/dist/components/agent-manager/AgentManagerChatPane.js +121 -0
  45. package/dist/components/agent-manager/AgentManagerChatPane.js.map +1 -0
  46. package/dist/components/agent-manager/AgentManagerDetailPanel.d.ts +13 -0
  47. package/dist/components/agent-manager/AgentManagerDetailPanel.d.ts.map +1 -0
  48. package/dist/components/agent-manager/AgentManagerDetailPanel.js +73 -0
  49. package/dist/components/agent-manager/AgentManagerDetailPanel.js.map +1 -0
  50. package/dist/components/agent-manager/AgentManagerInputArea.d.ts +14 -0
  51. package/dist/components/agent-manager/AgentManagerInputArea.d.ts.map +1 -0
  52. package/dist/components/agent-manager/AgentManagerInputArea.js +397 -0
  53. package/dist/components/agent-manager/AgentManagerInputArea.js.map +1 -0
  54. package/dist/components/agent-manager/AgentManagerLayout.d.ts +10 -0
  55. package/dist/components/agent-manager/AgentManagerLayout.d.ts.map +1 -0
  56. package/dist/components/agent-manager/AgentManagerLayout.js +137 -0
  57. package/dist/components/agent-manager/AgentManagerLayout.js.map +1 -0
  58. package/dist/components/agent-manager/AgentManagerMessageItem.d.ts +10 -0
  59. package/dist/components/agent-manager/AgentManagerMessageItem.d.ts.map +1 -0
  60. package/dist/components/agent-manager/AgentManagerMessageItem.js +65 -0
  61. package/dist/components/agent-manager/AgentManagerMessageItem.js.map +1 -0
  62. package/dist/components/agent-manager/AgentManagerMessageList.d.ts +12 -0
  63. package/dist/components/agent-manager/AgentManagerMessageList.d.ts.map +1 -0
  64. package/dist/components/agent-manager/AgentManagerMessageList.js +58 -0
  65. package/dist/components/agent-manager/AgentManagerMessageList.js.map +1 -0
  66. package/dist/components/agent-manager/AgentManagerSessionItem.d.ts +12 -0
  67. package/dist/components/agent-manager/AgentManagerSessionItem.d.ts.map +1 -0
  68. package/dist/components/agent-manager/AgentManagerSessionItem.js +141 -0
  69. package/dist/components/agent-manager/AgentManagerSessionItem.js.map +1 -0
  70. package/dist/components/agent-manager/AgentManagerSessionList.d.ts +16 -0
  71. package/dist/components/agent-manager/AgentManagerSessionList.d.ts.map +1 -0
  72. package/dist/components/agent-manager/AgentManagerSessionList.js +180 -0
  73. package/dist/components/agent-manager/AgentManagerSessionList.js.map +1 -0
  74. package/dist/components/agent-manager/AgentManagerSidebar.d.ts +14 -0
  75. package/dist/components/agent-manager/AgentManagerSidebar.d.ts.map +1 -0
  76. package/dist/components/agent-manager/AgentManagerSidebar.js +204 -0
  77. package/dist/components/agent-manager/AgentManagerSidebar.js.map +1 -0
  78. package/dist/components/agent-manager/AgentManagerStreamingIndicator.d.ts +8 -0
  79. package/dist/components/agent-manager/AgentManagerStreamingIndicator.d.ts.map +1 -0
  80. package/dist/components/agent-manager/AgentManagerStreamingIndicator.js +53 -0
  81. package/dist/components/agent-manager/AgentManagerStreamingIndicator.js.map +1 -0
  82. package/dist/components/agent-manager/AgentManagerTab.d.ts +15 -0
  83. package/dist/components/agent-manager/AgentManagerTab.d.ts.map +1 -0
  84. package/dist/components/agent-manager/AgentManagerTab.js +49 -0
  85. package/dist/components/agent-manager/AgentManagerTab.js.map +1 -0
  86. package/dist/components/agent-manager/AgentManagerTabBar.d.ts +10 -0
  87. package/dist/components/agent-manager/AgentManagerTabBar.d.ts.map +1 -0
  88. package/dist/components/agent-manager/AgentManagerTabBar.js +152 -0
  89. package/dist/components/agent-manager/AgentManagerTabBar.js.map +1 -0
  90. package/dist/components/agent-manager/BridleConfigPanel.d.ts +13 -0
  91. package/dist/components/agent-manager/BridleConfigPanel.d.ts.map +1 -0
  92. package/dist/components/agent-manager/BridleConfigPanel.js +356 -0
  93. package/dist/components/agent-manager/BridleConfigPanel.js.map +1 -0
  94. package/dist/components/agent-manager/PluginInstallModal.d.ts +9 -0
  95. package/dist/components/agent-manager/PluginInstallModal.d.ts.map +1 -0
  96. package/dist/components/agent-manager/PluginInstallModal.js +98 -0
  97. package/dist/components/agent-manager/PluginInstallModal.js.map +1 -0
  98. package/dist/components/agent-manager/controls/ContextLevelToggle.d.ts +23 -0
  99. package/dist/components/agent-manager/controls/ContextLevelToggle.d.ts.map +1 -0
  100. package/dist/components/agent-manager/controls/ContextLevelToggle.js +101 -0
  101. package/dist/components/agent-manager/controls/ContextLevelToggle.js.map +1 -0
  102. package/dist/components/agent-manager/controls/FileAttachButton.d.ts +13 -0
  103. package/dist/components/agent-manager/controls/FileAttachButton.d.ts.map +1 -0
  104. package/dist/components/agent-manager/controls/FileAttachButton.js +44 -0
  105. package/dist/components/agent-manager/controls/FileAttachButton.js.map +1 -0
  106. package/dist/components/agent-manager/controls/McpServerSelector.d.ts +10 -0
  107. package/dist/components/agent-manager/controls/McpServerSelector.d.ts.map +1 -0
  108. package/dist/components/agent-manager/controls/McpServerSelector.js +98 -0
  109. package/dist/components/agent-manager/controls/McpServerSelector.js.map +1 -0
  110. package/dist/components/agent-manager/controls/ModelSelector.d.ts +10 -0
  111. package/dist/components/agent-manager/controls/ModelSelector.d.ts.map +1 -0
  112. package/dist/components/agent-manager/controls/ModelSelector.js +158 -0
  113. package/dist/components/agent-manager/controls/ModelSelector.js.map +1 -0
  114. package/dist/components/agent-manager/controls/SdkSelector.d.ts +13 -0
  115. package/dist/components/agent-manager/controls/SdkSelector.d.ts.map +1 -0
  116. package/dist/components/agent-manager/controls/SdkSelector.js +210 -0
  117. package/dist/components/agent-manager/controls/SdkSelector.js.map +1 -0
  118. package/dist/components/agent-manager/controls/VoiceToggle.d.ts +13 -0
  119. package/dist/components/agent-manager/controls/VoiceToggle.d.ts.map +1 -0
  120. package/dist/components/agent-manager/controls/VoiceToggle.js +18 -0
  121. package/dist/components/agent-manager/controls/VoiceToggle.js.map +1 -0
  122. package/dist/components/agent-manager/detail/SessionConfigPanel.d.ts +14 -0
  123. package/dist/components/agent-manager/detail/SessionConfigPanel.d.ts.map +1 -0
  124. package/dist/components/agent-manager/detail/SessionConfigPanel.js +250 -0
  125. package/dist/components/agent-manager/detail/SessionConfigPanel.js.map +1 -0
  126. package/dist/components/agent-manager/detail/SessionLogsPanel.d.ts +13 -0
  127. package/dist/components/agent-manager/detail/SessionLogsPanel.d.ts.map +1 -0
  128. package/dist/components/agent-manager/detail/SessionLogsPanel.js +107 -0
  129. package/dist/components/agent-manager/detail/SessionLogsPanel.js.map +1 -0
  130. package/dist/components/agent-manager/detail/SessionStatsPanel.d.ts +12 -0
  131. package/dist/components/agent-manager/detail/SessionStatsPanel.d.ts.map +1 -0
  132. package/dist/components/agent-manager/detail/SessionStatsPanel.js +68 -0
  133. package/dist/components/agent-manager/detail/SessionStatsPanel.js.map +1 -0
  134. package/dist/components/agent-manager/detail/SessionToolsPanel.d.ts +12 -0
  135. package/dist/components/agent-manager/detail/SessionToolsPanel.d.ts.map +1 -0
  136. package/dist/components/agent-manager/detail/SessionToolsPanel.js +64 -0
  137. package/dist/components/agent-manager/detail/SessionToolsPanel.js.map +1 -0
  138. package/dist/components/agent-manager/dialogs/ExportSessionDialog.d.ts +15 -0
  139. package/dist/components/agent-manager/dialogs/ExportSessionDialog.d.ts.map +1 -0
  140. package/dist/components/agent-manager/dialogs/ExportSessionDialog.js +141 -0
  141. package/dist/components/agent-manager/dialogs/ExportSessionDialog.js.map +1 -0
  142. package/dist/components/agent-manager/dialogs/NewSessionDialog.d.ts +14 -0
  143. package/dist/components/agent-manager/dialogs/NewSessionDialog.d.ts.map +1 -0
  144. package/dist/components/agent-manager/dialogs/NewSessionDialog.js +209 -0
  145. package/dist/components/agent-manager/dialogs/NewSessionDialog.js.map +1 -0
  146. package/dist/components/agent-manager/dialogs/RenameSessionDialog.d.ts +15 -0
  147. package/dist/components/agent-manager/dialogs/RenameSessionDialog.d.ts.map +1 -0
  148. package/dist/components/agent-manager/dialogs/RenameSessionDialog.js +105 -0
  149. package/dist/components/agent-manager/dialogs/RenameSessionDialog.js.map +1 -0
  150. package/dist/components/agent-manager/dialogs/SessionSearchDialog.d.ts +15 -0
  151. package/dist/components/agent-manager/dialogs/SessionSearchDialog.d.ts.map +1 -0
  152. package/dist/components/agent-manager/dialogs/SessionSearchDialog.js +162 -0
  153. package/dist/components/agent-manager/dialogs/SessionSearchDialog.js.map +1 -0
  154. package/dist/components/agent-manager/index.d.ts +16 -0
  155. package/dist/components/agent-manager/index.d.ts.map +1 -0
  156. package/dist/components/agents/AgentCard.d.ts +30 -0
  157. package/dist/components/agents/AgentCard.d.ts.map +1 -0
  158. package/dist/components/agents/AgentCard.js +209 -0
  159. package/dist/components/agents/AgentCard.js.map +1 -0
  160. package/dist/components/agents/AgentForm.d.ts +29 -0
  161. package/dist/components/agents/AgentForm.d.ts.map +1 -0
  162. package/dist/components/agents/AgentForm.js +593 -0
  163. package/dist/components/agents/AgentForm.js.map +1 -0
  164. package/dist/components/agents/AgentList.d.ts +19 -0
  165. package/dist/components/agents/AgentList.d.ts.map +1 -0
  166. package/dist/components/agents/AgentList.js +333 -0
  167. package/dist/components/agents/AgentList.js.map +1 -0
  168. package/dist/components/agents/AgentStatusBadge.d.ts +12 -0
  169. package/dist/components/agents/AgentStatusBadge.d.ts.map +1 -0
  170. package/dist/components/agents/AgentStatusBadge.js +43 -0
  171. package/dist/components/agents/AgentStatusBadge.js.map +1 -0
  172. package/dist/components/agents/OpenInBrowserEditorButton.d.ts +16 -0
  173. package/dist/components/agents/OpenInBrowserEditorButton.d.ts.map +1 -0
  174. package/dist/components/agents/OpenInBrowserEditorButton.js +115 -0
  175. package/dist/components/agents/OpenInBrowserEditorButton.js.map +1 -0
  176. package/dist/components/agents/PluginUIPanel.d.ts +38 -0
  177. package/dist/components/agents/PluginUIPanel.d.ts.map +1 -0
  178. package/dist/components/agents/PluginUIPanel.js +308 -0
  179. package/dist/components/agents/PluginUIPanel.js.map +1 -0
  180. package/dist/components/agents/backup/AgentBackupTab.d.ts +11 -0
  181. package/dist/components/agents/backup/AgentBackupTab.d.ts.map +1 -0
  182. package/dist/components/agents/backup/AgentBackupTab.js +407 -0
  183. package/dist/components/agents/backup/AgentBackupTab.js.map +1 -0
  184. package/dist/components/agents/index.d.ts +8 -0
  185. package/dist/components/agents/index.d.ts.map +1 -0
  186. package/dist/components/agents/index.js +6 -0
  187. package/dist/components/agents/types.d.ts +72 -0
  188. package/dist/components/agents/types.d.ts.map +1 -0
  189. package/dist/components/ai/AIAssistantPanel.d.ts +8 -0
  190. package/dist/components/ai/AIAssistantPanel.d.ts.map +1 -0
  191. package/dist/components/ai/AIContextsTab.d.ts +6 -0
  192. package/dist/components/ai/AIContextsTab.d.ts.map +1 -0
  193. package/dist/components/ai/AIContextsTab.js +378 -0
  194. package/dist/components/ai/AIContextsTab.js.map +1 -0
  195. package/dist/components/ai/AIOverviewTab.d.ts +7 -0
  196. package/dist/components/ai/AIOverviewTab.d.ts.map +1 -0
  197. package/dist/components/ai/AIOverviewTab.js +143 -0
  198. package/dist/components/ai/AIOverviewTab.js.map +1 -0
  199. package/dist/components/ai/AIPlaygroundTab.d.ts +6 -0
  200. package/dist/components/ai/AIPlaygroundTab.d.ts.map +1 -0
  201. package/dist/components/ai/AIPlaygroundTab.js +222 -0
  202. package/dist/components/ai/AIPlaygroundTab.js.map +1 -0
  203. package/dist/components/ai/AIPromptsTab.d.ts +6 -0
  204. package/dist/components/ai/AIPromptsTab.d.ts.map +1 -0
  205. package/dist/components/ai/AIPromptsTab.js +251 -0
  206. package/dist/components/ai/AIPromptsTab.js.map +1 -0
  207. package/dist/components/ai/AISessionsTab.d.ts +7 -0
  208. package/dist/components/ai/AISessionsTab.d.ts.map +1 -0
  209. package/dist/components/ai/AISessionsTab.js +245 -0
  210. package/dist/components/ai/AISessionsTab.js.map +1 -0
  211. package/dist/components/ai/AIStatsTab.d.ts +6 -0
  212. package/dist/components/ai/AIStatsTab.d.ts.map +1 -0
  213. package/dist/components/ai/AIStatsTab.js +182 -0
  214. package/dist/components/ai/AIStatsTab.js.map +1 -0
  215. package/dist/components/ai/AITasksTab.d.ts +5 -0
  216. package/dist/components/ai/AITasksTab.d.ts.map +1 -0
  217. package/dist/components/ai/AITasksTab.js +549 -0
  218. package/dist/components/ai/AITasksTab.js.map +1 -0
  219. package/dist/components/ai/AITemplatesTab.d.ts +6 -0
  220. package/dist/components/ai/AITemplatesTab.d.ts.map +1 -0
  221. package/dist/components/ai/AITemplatesTab.js +472 -0
  222. package/dist/components/ai/AITemplatesTab.js.map +1 -0
  223. package/dist/components/ai/ClaudeCredentialsCard.d.ts +6 -0
  224. package/dist/components/ai/ClaudeCredentialsCard.d.ts.map +1 -0
  225. package/dist/components/ai/ClaudeCredentialsCard.js +133 -0
  226. package/dist/components/ai/ClaudeCredentialsCard.js.map +1 -0
  227. package/dist/components/ai/PluginHarnessPicker.d.ts +31 -0
  228. package/dist/components/ai/PluginHarnessPicker.d.ts.map +1 -0
  229. package/dist/components/ai/PluginHarnessPicker.js +136 -0
  230. package/dist/components/ai/PluginHarnessPicker.js.map +1 -0
  231. package/dist/components/analytics/AnalyticsBreakdownChart.d.ts +12 -0
  232. package/dist/components/analytics/AnalyticsBreakdownChart.d.ts.map +1 -0
  233. package/dist/components/analytics/AnalyticsBreakdownChart.js +73 -0
  234. package/dist/components/analytics/AnalyticsBreakdownChart.js.map +1 -0
  235. package/dist/components/analytics/AnalyticsBreakdownTable.d.ts +13 -0
  236. package/dist/components/analytics/AnalyticsBreakdownTable.d.ts.map +1 -0
  237. package/dist/components/analytics/AnalyticsBreakdownTable.js +100 -0
  238. package/dist/components/analytics/AnalyticsBreakdownTable.js.map +1 -0
  239. package/dist/components/analytics/AnalyticsEntityTabs.d.ts +9 -0
  240. package/dist/components/analytics/AnalyticsEntityTabs.d.ts.map +1 -0
  241. package/dist/components/analytics/AnalyticsEntityTabs.js +52 -0
  242. package/dist/components/analytics/AnalyticsEntityTabs.js.map +1 -0
  243. package/dist/components/analytics/AnalyticsFilterBar.d.ts +15 -0
  244. package/dist/components/analytics/AnalyticsFilterBar.d.ts.map +1 -0
  245. package/dist/components/analytics/AnalyticsFilterBar.js +51 -0
  246. package/dist/components/analytics/AnalyticsFilterBar.js.map +1 -0
  247. package/dist/components/analytics/AnalyticsKpiGrid.d.ts +10 -0
  248. package/dist/components/analytics/AnalyticsKpiGrid.d.ts.map +1 -0
  249. package/dist/components/analytics/AnalyticsKpiGrid.js +112 -0
  250. package/dist/components/analytics/AnalyticsKpiGrid.js.map +1 -0
  251. package/dist/components/analytics/AnalyticsTimeSeriesChart.d.ts +16 -0
  252. package/dist/components/analytics/AnalyticsTimeSeriesChart.d.ts.map +1 -0
  253. package/dist/components/analytics/AnalyticsTimeSeriesChart.js +115 -0
  254. package/dist/components/analytics/AnalyticsTimeSeriesChart.js.map +1 -0
  255. package/dist/components/analytics/SandboxAnalyticsSection.d.ts +9 -0
  256. package/dist/components/analytics/SandboxAnalyticsSection.d.ts.map +1 -0
  257. package/dist/components/analytics/SandboxAnalyticsSection.js +185 -0
  258. package/dist/components/analytics/SandboxAnalyticsSection.js.map +1 -0
  259. package/dist/components/analytics/index.d.ts +9 -0
  260. package/dist/components/analytics/index.d.ts.map +1 -0
  261. package/dist/components/analytics/index.js +8 -0
  262. package/dist/components/analytics/types.d.ts +28 -0
  263. package/dist/components/analytics/types.d.ts.map +1 -0
  264. package/dist/components/analytics/types.js +140 -0
  265. package/dist/components/analytics/types.js.map +1 -0
  266. package/dist/components/assistant/AIAssistantPanel.d.ts +5 -0
  267. package/dist/components/assistant/AIAssistantPanel.d.ts.map +1 -0
  268. package/dist/components/assistant/AIAssistantPanel.js +68 -0
  269. package/dist/components/assistant/AIAssistantPanel.js.map +1 -0
  270. package/dist/components/assistant/AssistantChatArea.d.ts +4 -0
  271. package/dist/components/assistant/AssistantChatArea.d.ts.map +1 -0
  272. package/dist/components/assistant/AssistantChatArea.js +346 -0
  273. package/dist/components/assistant/AssistantChatArea.js.map +1 -0
  274. package/dist/components/assistant/AssistantChatInput.d.ts +10 -0
  275. package/dist/components/assistant/AssistantChatInput.d.ts.map +1 -0
  276. package/dist/components/assistant/AssistantChatInput.js +43 -0
  277. package/dist/components/assistant/AssistantChatInput.js.map +1 -0
  278. package/dist/components/assistant/AssistantConversationList.d.ts +4 -0
  279. package/dist/components/assistant/AssistantConversationList.d.ts.map +1 -0
  280. package/dist/components/assistant/AssistantConversationList.js +144 -0
  281. package/dist/components/assistant/AssistantConversationList.js.map +1 -0
  282. package/dist/components/assistant/AssistantExportMenu.d.ts +4 -0
  283. package/dist/components/assistant/AssistantExportMenu.d.ts.map +1 -0
  284. package/dist/components/assistant/AssistantExportMenu.js +49 -0
  285. package/dist/components/assistant/AssistantExportMenu.js.map +1 -0
  286. package/dist/components/assistant/AssistantMarkdownRenderer.d.ts +8 -0
  287. package/dist/components/assistant/AssistantMarkdownRenderer.d.ts.map +1 -0
  288. package/dist/components/assistant/AssistantMarkdownRenderer.js +204 -0
  289. package/dist/components/assistant/AssistantMarkdownRenderer.js.map +1 -0
  290. package/dist/components/assistant/AssistantMessageItem.d.ts +10 -0
  291. package/dist/components/assistant/AssistantMessageItem.d.ts.map +1 -0
  292. package/dist/components/assistant/AssistantMessageItem.js +91 -0
  293. package/dist/components/assistant/AssistantMessageItem.js.map +1 -0
  294. package/dist/components/assistant/AssistantMessageList.d.ts +10 -0
  295. package/dist/components/assistant/AssistantMessageList.d.ts.map +1 -0
  296. package/dist/components/assistant/AssistantMessageList.js +28 -0
  297. package/dist/components/assistant/AssistantMessageList.js.map +1 -0
  298. package/dist/components/assistant/AssistantModeSelector.d.ts +10 -0
  299. package/dist/components/assistant/AssistantModeSelector.d.ts.map +1 -0
  300. package/dist/components/assistant/AssistantModeSelector.js +57 -0
  301. package/dist/components/assistant/AssistantModeSelector.js.map +1 -0
  302. package/dist/components/assistant/AssistantWelcome.d.ts +10 -0
  303. package/dist/components/assistant/AssistantWelcome.d.ts.map +1 -0
  304. package/dist/components/assistant/AssistantWelcome.js +41 -0
  305. package/dist/components/assistant/AssistantWelcome.js.map +1 -0
  306. package/dist/components/assistant/index.d.ts +11 -0
  307. package/dist/components/assistant/index.d.ts.map +1 -0
  308. package/dist/components/assistant/index.js +10 -0
  309. package/dist/components/audit/AuditDeleteDialog.d.ts +12 -0
  310. package/dist/components/audit/AuditDeleteDialog.d.ts.map +1 -0
  311. package/dist/components/audit/AuditDeleteDialog.js +74 -0
  312. package/dist/components/audit/AuditDeleteDialog.js.map +1 -0
  313. package/dist/components/audit/AuditExportButton.d.ts +8 -0
  314. package/dist/components/audit/AuditExportButton.d.ts.map +1 -0
  315. package/dist/components/audit/AuditExportButton.js +70 -0
  316. package/dist/components/audit/AuditExportButton.js.map +1 -0
  317. package/dist/components/audit/AuditLogDetail.d.ts +9 -0
  318. package/dist/components/audit/AuditLogDetail.d.ts.map +1 -0
  319. package/dist/components/audit/AuditLogDetail.js +266 -0
  320. package/dist/components/audit/AuditLogDetail.js.map +1 -0
  321. package/dist/components/audit/AuditLogFilters.d.ts +15 -0
  322. package/dist/components/audit/AuditLogFilters.d.ts.map +1 -0
  323. package/dist/components/audit/AuditLogFilters.js +185 -0
  324. package/dist/components/audit/AuditLogFilters.js.map +1 -0
  325. package/dist/components/audit/AuditLogStats.d.ts +9 -0
  326. package/dist/components/audit/AuditLogStats.d.ts.map +1 -0
  327. package/dist/components/audit/AuditLogStats.js +54 -0
  328. package/dist/components/audit/AuditLogStats.js.map +1 -0
  329. package/dist/components/audit/AuditLogTable.d.ts +21 -0
  330. package/dist/components/audit/AuditLogTable.d.ts.map +1 -0
  331. package/dist/components/audit/AuditLogTable.js +270 -0
  332. package/dist/components/audit/AuditLogTable.js.map +1 -0
  333. package/dist/components/audit/index.d.ts +7 -0
  334. package/dist/components/audit/index.d.ts.map +1 -0
  335. package/dist/components/audit/index.js +6 -0
  336. package/dist/components/catalog/CatalogCard.d.ts +22 -0
  337. package/dist/components/catalog/CatalogCard.d.ts.map +1 -0
  338. package/dist/components/catalog/CatalogCard.js +149 -0
  339. package/dist/components/catalog/CatalogCard.js.map +1 -0
  340. package/dist/components/catalog/CatalogForm.d.ts +18 -0
  341. package/dist/components/catalog/CatalogForm.d.ts.map +1 -0
  342. package/dist/components/catalog/CatalogForm.js +152 -0
  343. package/dist/components/catalog/CatalogForm.js.map +1 -0
  344. package/dist/components/catalog/index.d.ts +5 -0
  345. package/dist/components/catalog/index.d.ts.map +1 -0
  346. package/dist/components/catalog/index.js +2 -0
  347. package/dist/components/docs/DocsCompileStatus.d.ts +9 -0
  348. package/dist/components/docs/DocsCompileStatus.d.ts.map +1 -0
  349. package/dist/components/docs/DocsCompileStatus.js +106 -0
  350. package/dist/components/docs/DocsCompileStatus.js.map +1 -0
  351. package/dist/components/docs/DocsEditPanel.d.ts +26 -0
  352. package/dist/components/docs/DocsEditPanel.d.ts.map +1 -0
  353. package/dist/components/docs/DocsEditPanel.js +97 -0
  354. package/dist/components/docs/DocsEditPanel.js.map +1 -0
  355. package/dist/components/docs/DocsEmptyState.d.ts +7 -0
  356. package/dist/components/docs/DocsEmptyState.d.ts.map +1 -0
  357. package/dist/components/docs/DocsEmptyState.js +24 -0
  358. package/dist/components/docs/DocsEmptyState.js.map +1 -0
  359. package/dist/components/docs/DocsPageEditor.d.ts +13 -0
  360. package/dist/components/docs/DocsPageEditor.d.ts.map +1 -0
  361. package/dist/components/docs/DocsPageEditor.js +83 -0
  362. package/dist/components/docs/DocsPageEditor.js.map +1 -0
  363. package/dist/components/docs/DocsPageTree.d.ts +12 -0
  364. package/dist/components/docs/DocsPageTree.d.ts.map +1 -0
  365. package/dist/components/docs/DocsPageTree.js +103 -0
  366. package/dist/components/docs/DocsPageTree.js.map +1 -0
  367. package/dist/components/docs/DocsPreviewPanel.d.ts +17 -0
  368. package/dist/components/docs/DocsPreviewPanel.d.ts.map +1 -0
  369. package/dist/components/docs/DocsPreviewPanel.js +106 -0
  370. package/dist/components/docs/DocsPreviewPanel.js.map +1 -0
  371. package/dist/components/docs/DocsSettingsPanel.d.ts +15 -0
  372. package/dist/components/docs/DocsSettingsPanel.d.ts.map +1 -0
  373. package/dist/components/docs/DocsSettingsPanel.js +411 -0
  374. package/dist/components/docs/DocsSettingsPanel.js.map +1 -0
  375. package/dist/components/docs/DocsTabPanel.d.ts +8 -0
  376. package/dist/components/docs/DocsTabPanel.d.ts.map +1 -0
  377. package/dist/components/docs/DocsTabPanel.js +155 -0
  378. package/dist/components/docs/DocsTabPanel.js.map +1 -0
  379. package/dist/components/docs/index.d.ts +10 -0
  380. package/dist/components/docs/index.d.ts.map +1 -0
  381. package/dist/components/docs/index.js +8 -0
  382. package/dist/components/docs/previewHtml.d.ts +2 -0
  383. package/dist/components/docs/previewHtml.d.ts.map +1 -0
  384. package/dist/components/docs/previewHtml.js +17 -0
  385. package/dist/components/docs/previewHtml.js.map +1 -0
  386. package/dist/components/docs/types.d.ts +59 -0
  387. package/dist/components/docs/types.d.ts.map +1 -0
  388. package/dist/components/gitops/CIDurationChart.d.ts +12 -0
  389. package/dist/components/gitops/CIDurationChart.d.ts.map +1 -0
  390. package/dist/components/gitops/CIDurationChart.js +102 -0
  391. package/dist/components/gitops/CIDurationChart.js.map +1 -0
  392. package/dist/components/gitops/CIFailedRuns.d.ts +13 -0
  393. package/dist/components/gitops/CIFailedRuns.d.ts.map +1 -0
  394. package/dist/components/gitops/CIFailedRuns.js +153 -0
  395. package/dist/components/gitops/CIFailedRuns.js.map +1 -0
  396. package/dist/components/gitops/CIPipelineRunsTable.d.ts +13 -0
  397. package/dist/components/gitops/CIPipelineRunsTable.d.ts.map +1 -0
  398. package/dist/components/gitops/CIPipelineRunsTable.js +144 -0
  399. package/dist/components/gitops/CIPipelineRunsTable.js.map +1 -0
  400. package/dist/components/gitops/CISuccessRateChart.d.ts +13 -0
  401. package/dist/components/gitops/CISuccessRateChart.d.ts.map +1 -0
  402. package/dist/components/gitops/CISuccessRateChart.js +101 -0
  403. package/dist/components/gitops/CISuccessRateChart.js.map +1 -0
  404. package/dist/components/gitops/CITab.d.ts +15 -0
  405. package/dist/components/gitops/CITab.d.ts.map +1 -0
  406. package/dist/components/gitops/CITab.js +55 -0
  407. package/dist/components/gitops/CITab.js.map +1 -0
  408. package/dist/components/gitops/CIWorkflowList.d.ts +13 -0
  409. package/dist/components/gitops/CIWorkflowList.d.ts.map +1 -0
  410. package/dist/components/gitops/CIWorkflowList.js +24 -0
  411. package/dist/components/gitops/CIWorkflowList.js.map +1 -0
  412. package/dist/components/gitops/GitOpsProviderCard.d.ts +14 -0
  413. package/dist/components/gitops/GitOpsProviderCard.d.ts.map +1 -0
  414. package/dist/components/gitops/GitOpsSetup.d.ts +16 -0
  415. package/dist/components/gitops/GitOpsSetup.d.ts.map +1 -0
  416. package/dist/components/gitops/GitOpsSetup.js +155 -0
  417. package/dist/components/gitops/GitOpsSetup.js.map +1 -0
  418. package/dist/components/gitops/GitOpsSkeleton.d.ts +12 -0
  419. package/dist/components/gitops/GitOpsSkeleton.d.ts.map +1 -0
  420. package/dist/components/gitops/GitOpsSkeleton.js +26 -0
  421. package/dist/components/gitops/GitOpsSkeleton.js.map +1 -0
  422. package/dist/components/gitops/GitOpsStatusBadge.d.ts +14 -0
  423. package/dist/components/gitops/GitOpsStatusBadge.d.ts.map +1 -0
  424. package/dist/components/gitops/GitOpsStatusBadge.js +28 -0
  425. package/dist/components/gitops/GitOpsStatusBadge.js.map +1 -0
  426. package/dist/components/gitops/ProviderIcon.d.ts +14 -0
  427. package/dist/components/gitops/ProviderIcon.d.ts.map +1 -0
  428. package/dist/components/gitops/ProviderIcon.js +35 -0
  429. package/dist/components/gitops/ProviderIcon.js.map +1 -0
  430. package/dist/components/gitops/RepoActivityCard.d.ts +12 -0
  431. package/dist/components/gitops/RepoActivityCard.d.ts.map +1 -0
  432. package/dist/components/gitops/RepoActivityCard.js +64 -0
  433. package/dist/components/gitops/RepoActivityCard.js.map +1 -0
  434. package/dist/components/gitops/RepoIssuesCard.d.ts +12 -0
  435. package/dist/components/gitops/RepoIssuesCard.d.ts.map +1 -0
  436. package/dist/components/gitops/RepoIssuesCard.js +38 -0
  437. package/dist/components/gitops/RepoIssuesCard.js.map +1 -0
  438. package/dist/components/gitops/RepoLanguagesCard.d.ts +13 -0
  439. package/dist/components/gitops/RepoLanguagesCard.d.ts.map +1 -0
  440. package/dist/components/gitops/RepoLanguagesCard.js +86 -0
  441. package/dist/components/gitops/RepoLanguagesCard.js.map +1 -0
  442. package/dist/components/gitops/RepoOverviewCard.d.ts +13 -0
  443. package/dist/components/gitops/RepoOverviewCard.d.ts.map +1 -0
  444. package/dist/components/gitops/RepoOverviewCard.js +117 -0
  445. package/dist/components/gitops/RepoOverviewCard.js.map +1 -0
  446. package/dist/components/gitops/RepoPullRequestsCard.d.ts +12 -0
  447. package/dist/components/gitops/RepoPullRequestsCard.d.ts.map +1 -0
  448. package/dist/components/gitops/RepoPullRequestsCard.js +80 -0
  449. package/dist/components/gitops/RepoPullRequestsCard.js.map +1 -0
  450. package/dist/components/gitops/RepoSecurityCard.d.ts +12 -0
  451. package/dist/components/gitops/RepoSecurityCard.d.ts.map +1 -0
  452. package/dist/components/gitops/RepoSecurityCard.js +38 -0
  453. package/dist/components/gitops/RepoSecurityCard.js.map +1 -0
  454. package/dist/components/gitops/RepoStatsTab.d.ts +15 -0
  455. package/dist/components/gitops/RepoStatsTab.d.ts.map +1 -0
  456. package/dist/components/gitops/RepoStatsTab.js +43 -0
  457. package/dist/components/gitops/RepoStatsTab.js.map +1 -0
  458. package/dist/components/gitops/VibeGitOpsTab.d.ts +12 -0
  459. package/dist/components/gitops/VibeGitOpsTab.d.ts.map +1 -0
  460. package/dist/components/gitops/VibeGitOpsTab.js +253 -0
  461. package/dist/components/gitops/VibeGitOpsTab.js.map +1 -0
  462. package/dist/components/gitops/index.d.ts +21 -0
  463. package/dist/components/gitops/index.d.ts.map +1 -0
  464. package/dist/components/gitops/types.d.ts +90 -0
  465. package/dist/components/gitops/types.d.ts.map +1 -0
  466. package/dist/components/graph/AgentGraphView.d.ts +44 -0
  467. package/dist/components/graph/AgentGraphView.d.ts.map +1 -0
  468. package/dist/components/graph/AgentGraphView.js +238 -0
  469. package/dist/components/graph/AgentGraphView.js.map +1 -0
  470. package/dist/components/graph/AgentNode.d.ts +6 -0
  471. package/dist/components/graph/AgentNode.d.ts.map +1 -0
  472. package/dist/components/graph/AgentNode.js +55 -0
  473. package/dist/components/graph/AgentNode.js.map +1 -0
  474. package/dist/components/graph/ConnectionPermissionsDialog.d.ts +26 -0
  475. package/dist/components/graph/ConnectionPermissionsDialog.d.ts.map +1 -0
  476. package/dist/components/graph/ConnectionPermissionsDialog.js +111 -0
  477. package/dist/components/graph/ConnectionPermissionsDialog.js.map +1 -0
  478. package/dist/components/graph/TargetNode.d.ts +6 -0
  479. package/dist/components/graph/TargetNode.d.ts.map +1 -0
  480. package/dist/components/graph/TargetNode.js +77 -0
  481. package/dist/components/graph/TargetNode.js.map +1 -0
  482. package/dist/components/health/AgentHealthCard.d.ts +9 -0
  483. package/dist/components/health/AgentHealthCard.d.ts.map +1 -0
  484. package/dist/components/health/HealthDashboard.d.ts +10 -0
  485. package/dist/components/health/HealthDashboard.d.ts.map +1 -0
  486. package/dist/components/health/SystemStatus.d.ts +11 -0
  487. package/dist/components/health/SystemStatus.d.ts.map +1 -0
  488. package/dist/components/health/index.d.ts +5 -0
  489. package/dist/components/health/index.d.ts.map +1 -0
  490. package/dist/components/health/types.d.ts +50 -0
  491. package/dist/components/health/types.d.ts.map +1 -0
  492. package/dist/components/idp-components/ComponentCard.d.ts +24 -0
  493. package/dist/components/idp-components/ComponentCard.d.ts.map +1 -0
  494. package/dist/components/idp-components/ComponentCard.js +143 -0
  495. package/dist/components/idp-components/ComponentCard.js.map +1 -0
  496. package/dist/components/idp-components/ComponentForm.d.ts +22 -0
  497. package/dist/components/idp-components/ComponentForm.d.ts.map +1 -0
  498. package/dist/components/idp-components/ComponentForm.js +234 -0
  499. package/dist/components/idp-components/ComponentForm.js.map +1 -0
  500. package/dist/components/idp-components/index.d.ts +5 -0
  501. package/dist/components/idp-components/index.d.ts.map +1 -0
  502. package/dist/components/idp-components/index.js +2 -0
  503. package/dist/components/logs/LogViewer.d.ts +13 -0
  504. package/dist/components/logs/LogViewer.d.ts.map +1 -0
  505. package/dist/components/logs/LogViewer.js +265 -0
  506. package/dist/components/logs/LogViewer.js.map +1 -0
  507. package/dist/components/notes/NoteCard.d.ts +13 -0
  508. package/dist/components/notes/NoteCard.d.ts.map +1 -0
  509. package/dist/components/notes/NoteCard.js +146 -0
  510. package/dist/components/notes/NoteCard.js.map +1 -0
  511. package/dist/components/notes/NoteEditor.d.ts +31 -0
  512. package/dist/components/notes/NoteEditor.d.ts.map +1 -0
  513. package/dist/components/notes/NoteEditor.js +433 -0
  514. package/dist/components/notes/NoteEditor.js.map +1 -0
  515. package/dist/components/notes/NoteList.d.ts +15 -0
  516. package/dist/components/notes/NoteList.d.ts.map +1 -0
  517. package/dist/components/notes/NoteList.js +188 -0
  518. package/dist/components/notes/NoteList.js.map +1 -0
  519. package/dist/components/notes/NotesTabPanel.d.ts +18 -0
  520. package/dist/components/notes/NotesTabPanel.d.ts.map +1 -0
  521. package/dist/components/notes/NotesTabPanel.js +356 -0
  522. package/dist/components/notes/NotesTabPanel.js.map +1 -0
  523. package/dist/components/notes/index.d.ts +7 -0
  524. package/dist/components/notes/index.d.ts.map +1 -0
  525. package/dist/components/notes/index.js +4 -0
  526. package/dist/components/notes/types.d.ts +58 -0
  527. package/dist/components/notes/types.d.ts.map +1 -0
  528. package/dist/components/scorecard/ScorecardPanel.d.ts +9 -0
  529. package/dist/components/scorecard/ScorecardPanel.d.ts.map +1 -0
  530. package/dist/components/scorecard/ScorecardPanel.js +490 -0
  531. package/dist/components/scorecard/ScorecardPanel.js.map +1 -0
  532. package/dist/components/scorecard/index.d.ts +3 -0
  533. package/dist/components/scorecard/index.d.ts.map +1 -0
  534. package/dist/components/scorecard/index.js +1 -0
  535. package/dist/components/sessions/CollaboratorsList.d.ts +18 -0
  536. package/dist/components/sessions/CollaboratorsList.d.ts.map +1 -0
  537. package/dist/components/sessions/CollaboratorsList.js +162 -0
  538. package/dist/components/sessions/CollaboratorsList.js.map +1 -0
  539. package/dist/components/sessions/ControlStatusBar.d.ts +31 -0
  540. package/dist/components/sessions/ControlStatusBar.d.ts.map +1 -0
  541. package/dist/components/sessions/ControlStatusBar.js +79 -0
  542. package/dist/components/sessions/ControlStatusBar.js.map +1 -0
  543. package/dist/components/sessions/SessionCard.d.ts +24 -0
  544. package/dist/components/sessions/SessionCard.d.ts.map +1 -0
  545. package/dist/components/sessions/SessionCard.js +196 -0
  546. package/dist/components/sessions/SessionCard.js.map +1 -0
  547. package/dist/components/sessions/SessionForm.d.ts +20 -0
  548. package/dist/components/sessions/SessionForm.d.ts.map +1 -0
  549. package/dist/components/sessions/SessionForm.js +4 -0
  550. package/dist/components/sessions/SessionList.d.ts +25 -0
  551. package/dist/components/sessions/SessionList.d.ts.map +1 -0
  552. package/dist/components/sessions/SessionList.js +241 -0
  553. package/dist/components/sessions/SessionList.js.map +1 -0
  554. package/dist/components/sessions/SessionShareDialog.d.ts +15 -0
  555. package/dist/components/sessions/SessionShareDialog.d.ts.map +1 -0
  556. package/dist/components/sessions/SessionShareDialog.js +457 -0
  557. package/dist/components/sessions/SessionShareDialog.js.map +1 -0
  558. package/dist/components/sessions/SessionStatusBadge.d.ts +9 -0
  559. package/dist/components/sessions/SessionStatusBadge.d.ts.map +1 -0
  560. package/dist/components/sessions/SessionStatusBadge.js +43 -0
  561. package/dist/components/sessions/SessionStatusBadge.js.map +1 -0
  562. package/dist/components/sessions/SharedTerminalPanel.d.ts +72 -0
  563. package/dist/components/sessions/SharedTerminalPanel.d.ts.map +1 -0
  564. package/dist/components/sessions/SharedTerminalPanel.js +94 -0
  565. package/dist/components/sessions/SharedTerminalPanel.js.map +1 -0
  566. package/dist/components/sessions/TerminalPanel.d.ts +69 -0
  567. package/dist/components/sessions/TerminalPanel.d.ts.map +1 -0
  568. package/dist/components/sessions/TerminalPanel.js +1008 -0
  569. package/dist/components/sessions/TerminalPanel.js.map +1 -0
  570. package/dist/components/sessions/index.d.ts +11 -0
  571. package/dist/components/sessions/index.d.ts.map +1 -0
  572. package/dist/components/sessions/index.js +9 -0
  573. package/dist/components/sessions/types.d.ts +67 -0
  574. package/dist/components/sessions/types.d.ts.map +1 -0
  575. package/dist/components/settings/AdvancedSection.d.ts +22 -0
  576. package/dist/components/settings/AdvancedSection.d.ts.map +1 -0
  577. package/dist/components/settings/AdvancedSection.js +177 -0
  578. package/dist/components/settings/AdvancedSection.js.map +1 -0
  579. package/dist/components/settings/ConfigEditor.d.ts +14 -0
  580. package/dist/components/settings/ConfigEditor.d.ts.map +1 -0
  581. package/dist/components/settings/ConfigSection.d.ts +12 -0
  582. package/dist/components/settings/ConfigSection.d.ts.map +1 -0
  583. package/dist/components/settings/NotificationsSection.d.ts +14 -0
  584. package/dist/components/settings/NotificationsSection.d.ts.map +1 -0
  585. package/dist/components/settings/NotificationsSection.js +83 -0
  586. package/dist/components/settings/NotificationsSection.js.map +1 -0
  587. package/dist/components/settings/PreferencesSection.d.ts +14 -0
  588. package/dist/components/settings/PreferencesSection.d.ts.map +1 -0
  589. package/dist/components/settings/ProfileSection.d.ts +14 -0
  590. package/dist/components/settings/ProfileSection.d.ts.map +1 -0
  591. package/dist/components/settings/SecuritySection.d.ts +11 -0
  592. package/dist/components/settings/SecuritySection.d.ts.map +1 -0
  593. package/dist/components/settings/SettingsForm.d.ts +58 -0
  594. package/dist/components/settings/SettingsForm.d.ts.map +1 -0
  595. package/dist/components/settings/SettingsForm.js +101 -0
  596. package/dist/components/settings/SettingsForm.js.map +1 -0
  597. package/dist/components/settings/WorkspaceDefaultsSection.d.ts +27 -0
  598. package/dist/components/settings/WorkspaceDefaultsSection.d.ts.map +1 -0
  599. package/dist/components/settings/WorkspaceDefaultsSection.js +177 -0
  600. package/dist/components/settings/WorkspaceDefaultsSection.js.map +1 -0
  601. package/dist/components/settings/index.d.ts +4 -0
  602. package/dist/components/settings/index.d.ts.map +1 -0
  603. package/dist/components/settings/types.d.ts +55 -0
  604. package/dist/components/settings/types.d.ts.map +1 -0
  605. package/dist/components/shared/AgentEventsConnector.d.ts +6 -0
  606. package/dist/components/shared/AgentEventsConnector.d.ts.map +1 -0
  607. package/dist/components/shared/AgentEventsConnector.js +26 -0
  608. package/dist/components/shared/AgentEventsConnector.js.map +1 -0
  609. package/dist/components/shared/AgentSelector.d.ts +25 -0
  610. package/dist/components/shared/AgentSelector.d.ts.map +1 -0
  611. package/dist/components/shared/AgentSelector.js +98 -0
  612. package/dist/components/shared/AgentSelector.js.map +1 -0
  613. package/dist/components/shared/AgentSetupBanner.d.ts +21 -0
  614. package/dist/components/shared/AgentSetupBanner.d.ts.map +1 -0
  615. package/dist/components/shared/AgentSetupBanner.js +158 -0
  616. package/dist/components/shared/AgentSetupBanner.js.map +1 -0
  617. package/dist/components/shared/Card.d.ts +29 -0
  618. package/dist/components/shared/Card.d.ts.map +1 -0
  619. package/dist/components/shared/Card.js +30 -0
  620. package/dist/components/shared/Card.js.map +1 -0
  621. package/dist/components/shared/ConfirmDialog.d.ts +14 -0
  622. package/dist/components/shared/ConfirmDialog.d.ts.map +1 -0
  623. package/dist/components/shared/ConfirmDialog.js +117 -0
  624. package/dist/components/shared/ConfirmDialog.js.map +1 -0
  625. package/dist/components/shared/EmptyState.d.ts +11 -0
  626. package/dist/components/shared/EmptyState.d.ts.map +1 -0
  627. package/dist/components/shared/EmptyState.js +108 -0
  628. package/dist/components/shared/EmptyState.js.map +1 -0
  629. package/dist/components/shared/EntityTagPicker.d.ts +8 -0
  630. package/dist/components/shared/EntityTagPicker.d.ts.map +1 -0
  631. package/dist/components/shared/EntityTagPicker.js +195 -0
  632. package/dist/components/shared/EntityTagPicker.js.map +1 -0
  633. package/dist/components/shared/ErrorState.d.ts +11 -0
  634. package/dist/components/shared/ErrorState.d.ts.map +1 -0
  635. package/dist/components/shared/ErrorState.js +116 -0
  636. package/dist/components/shared/ErrorState.js.map +1 -0
  637. package/dist/components/shared/FilterDropdown.d.ts +20 -0
  638. package/dist/components/shared/FilterDropdown.d.ts.map +1 -0
  639. package/dist/components/shared/FilterDropdown.js +81 -0
  640. package/dist/components/shared/FilterDropdown.js.map +1 -0
  641. package/dist/components/shared/GetHelpButton.d.ts +27 -0
  642. package/dist/components/shared/GetHelpButton.d.ts.map +1 -0
  643. package/dist/components/shared/GetHelpButton.js +19 -0
  644. package/dist/components/shared/GetHelpButton.js.map +1 -0
  645. package/dist/components/shared/InstallTabs.d.ts +18 -0
  646. package/dist/components/shared/InstallTabs.d.ts.map +1 -0
  647. package/dist/components/shared/InstallTabs.js +110 -0
  648. package/dist/components/shared/InstallTabs.js.map +1 -0
  649. package/dist/components/shared/LoadingState.d.ts +7 -0
  650. package/dist/components/shared/LoadingState.d.ts.map +1 -0
  651. package/dist/components/shared/LoadingState.js +54 -0
  652. package/dist/components/shared/LoadingState.js.map +1 -0
  653. package/dist/components/shared/NotificationToast.d.ts +40 -0
  654. package/dist/components/shared/NotificationToast.d.ts.map +1 -0
  655. package/dist/components/shared/NotificationToast.js +152 -0
  656. package/dist/components/shared/NotificationToast.js.map +1 -0
  657. package/dist/components/shared/PageHeader.d.ts +14 -0
  658. package/dist/components/shared/PageHeader.d.ts.map +1 -0
  659. package/dist/components/shared/PageHeader.js +55 -0
  660. package/dist/components/shared/PageHeader.js.map +1 -0
  661. package/dist/components/shared/PluginGate.d.ts +35 -0
  662. package/dist/components/shared/PluginGate.d.ts.map +1 -0
  663. package/dist/components/shared/PluginGate.js +182 -0
  664. package/dist/components/shared/PluginGate.js.map +1 -0
  665. package/dist/components/shared/QuotaExhaustedDialog.d.ts +12 -0
  666. package/dist/components/shared/QuotaExhaustedDialog.d.ts.map +1 -0
  667. package/dist/components/shared/QuotaExhaustedDialog.js +21 -0
  668. package/dist/components/shared/QuotaExhaustedDialog.js.map +1 -0
  669. package/dist/components/shared/RequireAgentReachable.d.ts +14 -0
  670. package/dist/components/shared/RequireAgentReachable.d.ts.map +1 -0
  671. package/dist/components/shared/RequireAgentReachable.js +69 -0
  672. package/dist/components/shared/RequireAgentReachable.js.map +1 -0
  673. package/dist/components/shared/SearchInput.d.ts +9 -0
  674. package/dist/components/shared/SearchInput.d.ts.map +1 -0
  675. package/dist/components/shared/SearchInput.js +47 -0
  676. package/dist/components/shared/SearchInput.js.map +1 -0
  677. package/dist/components/shared/SearchableSelect.d.ts +48 -0
  678. package/dist/components/shared/SearchableSelect.d.ts.map +1 -0
  679. package/dist/components/shared/SearchableSelect.js +214 -0
  680. package/dist/components/shared/SearchableSelect.js.map +1 -0
  681. package/dist/components/shared/SelectionCheckbox.d.ts +11 -0
  682. package/dist/components/shared/SelectionCheckbox.d.ts.map +1 -0
  683. package/dist/components/shared/SelectionCheckbox.js +25 -0
  684. package/dist/components/shared/SelectionCheckbox.js.map +1 -0
  685. package/dist/components/shared/SessionNotificationBanner.d.ts +47 -0
  686. package/dist/components/shared/SessionNotificationBanner.d.ts.map +1 -0
  687. package/dist/components/shared/SessionNotificationBanner.js +231 -0
  688. package/dist/components/shared/SessionNotificationBanner.js.map +1 -0
  689. package/dist/components/shared/StatCard.d.ts +17 -0
  690. package/dist/components/shared/StatCard.d.ts.map +1 -0
  691. package/dist/components/shared/StatCard.js +65 -0
  692. package/dist/components/shared/StatCard.js.map +1 -0
  693. package/dist/components/shared/StatusBadge.d.ts +11 -0
  694. package/dist/components/shared/StatusBadge.d.ts.map +1 -0
  695. package/dist/components/shared/StatusBadge.js +63 -0
  696. package/dist/components/shared/StatusBadge.js.map +1 -0
  697. package/dist/components/shared/TagFilter.d.ts +11 -0
  698. package/dist/components/shared/TagFilter.d.ts.map +1 -0
  699. package/dist/components/shared/TagFilter.js +28 -0
  700. package/dist/components/shared/TagFilter.js.map +1 -0
  701. package/dist/components/shared/index.d.ts +32 -0
  702. package/dist/components/shared/index.d.ts.map +1 -0
  703. package/dist/components/shared/index.js +24 -0
  704. package/dist/components/targets/TargetCard.d.ts +45 -0
  705. package/dist/components/targets/TargetCard.d.ts.map +1 -0
  706. package/dist/components/targets/TargetCard.js +211 -0
  707. package/dist/components/targets/TargetCard.js.map +1 -0
  708. package/dist/components/targets/index.d.ts +3 -0
  709. package/dist/components/targets/index.d.ts.map +1 -0
  710. package/dist/components/targets/index.js +1 -0
  711. package/dist/components/templates/TemplateCard.d.ts +19 -0
  712. package/dist/components/templates/TemplateCard.d.ts.map +1 -0
  713. package/dist/components/templates/TemplateCard.js +81 -0
  714. package/dist/components/templates/TemplateCard.js.map +1 -0
  715. package/dist/components/templates/index.d.ts +3 -0
  716. package/dist/components/templates/index.d.ts.map +1 -0
  717. package/dist/components/templates/index.js +1 -0
  718. package/dist/components/tunnels/DomainVerificationBadge.d.ts +6 -0
  719. package/dist/components/tunnels/DomainVerificationBadge.d.ts.map +1 -0
  720. package/dist/components/tunnels/DomainVerificationBadge.js +19 -0
  721. package/dist/components/tunnels/DomainVerificationBadge.js.map +1 -0
  722. package/dist/components/tunnels/ProviderBadge.d.ts +6 -0
  723. package/dist/components/tunnels/ProviderBadge.d.ts.map +1 -0
  724. package/dist/components/tunnels/ProviderBadge.js +16 -0
  725. package/dist/components/tunnels/ProviderBadge.js.map +1 -0
  726. package/dist/components/tunnels/TunnelCard.d.ts +13 -0
  727. package/dist/components/tunnels/TunnelCard.d.ts.map +1 -0
  728. package/dist/components/tunnels/TunnelCard.js +98 -0
  729. package/dist/components/tunnels/TunnelCard.js.map +1 -0
  730. package/dist/components/tunnels/TunnelCreateWizard.d.ts +2 -0
  731. package/dist/components/tunnels/TunnelCreateWizard.d.ts.map +1 -0
  732. package/dist/components/tunnels/TunnelCreateWizard.js +512 -0
  733. package/dist/components/tunnels/TunnelCreateWizard.js.map +1 -0
  734. package/dist/components/tunnels/TunnelStatusBadge.d.ts +6 -0
  735. package/dist/components/tunnels/TunnelStatusBadge.d.ts.map +1 -0
  736. package/dist/components/tunnels/TunnelStatusBadge.js +21 -0
  737. package/dist/components/tunnels/TunnelStatusBadge.js.map +1 -0
  738. package/dist/components/vibe/VibeAgentEmptyState.d.ts +8 -0
  739. package/dist/components/vibe/VibeAgentEmptyState.d.ts.map +1 -0
  740. package/dist/components/vibe/VibeAgentEmptyState.js +29 -0
  741. package/dist/components/vibe/VibeAgentEmptyState.js.map +1 -0
  742. package/dist/components/vibecalendar/LogsDrawer.d.ts +12 -0
  743. package/dist/components/vibecalendar/LogsDrawer.d.ts.map +1 -0
  744. package/dist/components/vibecalendar/LogsDrawer.js +97 -0
  745. package/dist/components/vibecalendar/LogsDrawer.js.map +1 -0
  746. package/dist/components/vibecalendar/ScheduleTaskModal.d.ts +33 -0
  747. package/dist/components/vibecalendar/ScheduleTaskModal.d.ts.map +1 -0
  748. package/dist/components/vibecalendar/ScheduleTaskModal.js +311 -0
  749. package/dist/components/vibecalendar/ScheduleTaskModal.js.map +1 -0
  750. package/dist/components/vibecalendar/VibeCalAgendaView.d.ts +11 -0
  751. package/dist/components/vibecalendar/VibeCalAgendaView.d.ts.map +1 -0
  752. package/dist/components/vibecalendar/VibeCalAgendaView.js +96 -0
  753. package/dist/components/vibecalendar/VibeCalAgendaView.js.map +1 -0
  754. package/dist/components/vibecalendar/VibeCalDayView.d.ts +12 -0
  755. package/dist/components/vibecalendar/VibeCalDayView.d.ts.map +1 -0
  756. package/dist/components/vibecalendar/VibeCalDayView.js +131 -0
  757. package/dist/components/vibecalendar/VibeCalDayView.js.map +1 -0
  758. package/dist/components/vibecalendar/VibeCalMonthView.d.ts +12 -0
  759. package/dist/components/vibecalendar/VibeCalMonthView.d.ts.map +1 -0
  760. package/dist/components/vibecalendar/VibeCalMonthView.js +66 -0
  761. package/dist/components/vibecalendar/VibeCalMonthView.js.map +1 -0
  762. package/dist/components/vibecalendar/VibeCalWeekView.d.ts +12 -0
  763. package/dist/components/vibecalendar/VibeCalWeekView.d.ts.map +1 -0
  764. package/dist/components/vibecalendar/VibeCalWeekView.js +100 -0
  765. package/dist/components/vibecalendar/VibeCalWeekView.js.map +1 -0
  766. package/dist/components/vibecalendar/VibeCalendarHeader.d.ts +12 -0
  767. package/dist/components/vibecalendar/VibeCalendarHeader.d.ts.map +1 -0
  768. package/dist/components/vibecalendar/VibeCalendarHeader.js +129 -0
  769. package/dist/components/vibecalendar/VibeCalendarHeader.js.map +1 -0
  770. package/dist/components/vibecalendar/VibeTaskBlock.d.ts +12 -0
  771. package/dist/components/vibecalendar/VibeTaskBlock.d.ts.map +1 -0
  772. package/dist/components/vibecalendar/VibeTaskBlock.js +59 -0
  773. package/dist/components/vibecalendar/VibeTaskBlock.js.map +1 -0
  774. package/dist/components/vibecalendar/expandOccurrences.d.ts +37 -0
  775. package/dist/components/vibecalendar/expandOccurrences.d.ts.map +1 -0
  776. package/dist/components/vibecalendar/expandOccurrences.js +103 -0
  777. package/dist/components/vibecalendar/expandOccurrences.js.map +1 -0
  778. package/dist/components/vibecalendar/index.d.ts +11 -0
  779. package/dist/components/vibecalendar/index.d.ts.map +1 -0
  780. package/dist/components/vibecalendar/index.js +8 -0
  781. package/dist/components/vibecalendar/types.d.ts +53 -0
  782. package/dist/components/vibecalendar/types.d.ts.map +1 -0
  783. package/dist/components/vibecalendar/types.js +17 -0
  784. package/dist/components/vibecalendar/types.js.map +1 -0
  785. package/dist/components/vibedeck/VibeDeckButtonForm.d.ts +54 -0
  786. package/dist/components/vibedeck/VibeDeckButtonForm.d.ts.map +1 -0
  787. package/dist/components/vibedeck/VibeDeckButtonForm.js +400 -0
  788. package/dist/components/vibedeck/VibeDeckButtonForm.js.map +1 -0
  789. package/dist/components/vibedeck/VibeDeckButtonTile.d.ts +48 -0
  790. package/dist/components/vibedeck/VibeDeckButtonTile.d.ts.map +1 -0
  791. package/dist/components/vibedeck/VibeDeckButtonTile.js +196 -0
  792. package/dist/components/vibedeck/VibeDeckButtonTile.js.map +1 -0
  793. package/dist/components/vibedeck/VibeDeckExecutionLog.d.ts +25 -0
  794. package/dist/components/vibedeck/VibeDeckExecutionLog.d.ts.map +1 -0
  795. package/dist/components/vibedeck/VibeDeckExecutionLog.js +212 -0
  796. package/dist/components/vibedeck/VibeDeckExecutionLog.js.map +1 -0
  797. package/dist/components/vibedeck/VibeDeckForm.d.ts +21 -0
  798. package/dist/components/vibedeck/VibeDeckForm.d.ts.map +1 -0
  799. package/dist/components/vibedeck/VibeDeckForm.js +233 -0
  800. package/dist/components/vibedeck/VibeDeckForm.js.map +1 -0
  801. package/dist/components/vibedeck/VibeDeckGrid.d.ts +51 -0
  802. package/dist/components/vibedeck/VibeDeckGrid.d.ts.map +1 -0
  803. package/dist/components/vibedeck/VibeDeckGrid.js +127 -0
  804. package/dist/components/vibedeck/VibeDeckGrid.js.map +1 -0
  805. package/dist/components/vibedeck/VibeDeckShareDialog.d.ts +10 -0
  806. package/dist/components/vibedeck/VibeDeckShareDialog.d.ts.map +1 -0
  807. package/dist/components/vibedeck/VibeDeckShareDialog.js +312 -0
  808. package/dist/components/vibedeck/VibeDeckShareDialog.js.map +1 -0
  809. package/dist/components/vibedeck/VibeDeckSwitcher.d.ts +28 -0
  810. package/dist/components/vibedeck/VibeDeckSwitcher.d.ts.map +1 -0
  811. package/dist/components/vibedeck/VibeDeckSwitcher.js +118 -0
  812. package/dist/components/vibedeck/VibeDeckSwitcher.js.map +1 -0
  813. package/dist/components/vibedeck/index.d.ts +9 -0
  814. package/dist/components/vibedeck/index.d.ts.map +1 -0
  815. package/dist/components/vibedeck/index.js +7 -0
  816. package/dist/components/vibes/VibeCard.d.ts +19 -0
  817. package/dist/components/vibes/VibeCard.d.ts.map +1 -0
  818. package/dist/components/vibes/VibeCard.js +162 -0
  819. package/dist/components/vibes/VibeCard.js.map +1 -0
  820. package/dist/components/vibes/VibeForm.d.ts +15 -0
  821. package/dist/components/vibes/VibeForm.d.ts.map +1 -0
  822. package/dist/components/vibes/VibeForm.js +4 -0
  823. package/dist/components/vibes/VibeList.d.ts +20 -0
  824. package/dist/components/vibes/VibeList.d.ts.map +1 -0
  825. package/dist/components/vibes/VibeList.js +321 -0
  826. package/dist/components/vibes/VibeList.js.map +1 -0
  827. package/dist/components/vibes/icons.d.ts +6 -0
  828. package/dist/components/vibes/icons.d.ts.map +1 -0
  829. package/dist/components/vibes/icons.js +14 -0
  830. package/dist/components/vibes/icons.js.map +1 -0
  831. package/dist/components/vibes/index.d.ts +5 -0
  832. package/dist/components/vibes/index.d.ts.map +1 -0
  833. package/dist/components/vibes/index.js +3 -0
  834. package/dist/components/vibes/types.d.ts +71 -0
  835. package/dist/components/vibes/types.d.ts.map +1 -0
  836. package/dist/components/webhooks/WebhookCard.d.ts +12 -0
  837. package/dist/components/webhooks/WebhookCard.d.ts.map +1 -0
  838. package/dist/components/webhooks/WebhookForm.d.ts +11 -0
  839. package/dist/components/webhooks/WebhookForm.d.ts.map +1 -0
  840. package/dist/components/webhooks/WebhookList.d.ts +14 -0
  841. package/dist/components/webhooks/WebhookList.d.ts.map +1 -0
  842. package/dist/components/webhooks/index.d.ts +5 -0
  843. package/dist/components/webhooks/index.d.ts.map +1 -0
  844. package/dist/components/webhooks/types.d.ts +58 -0
  845. package/dist/components/webhooks/types.d.ts.map +1 -0
  846. package/dist/config/assistantUsecases.d.ts +18 -0
  847. package/dist/config/assistantUsecases.d.ts.map +1 -0
  848. package/dist/config/assistantUsecases.js +40 -0
  849. package/dist/config/assistantUsecases.js.map +1 -0
  850. package/dist/config/index.d.ts +24 -0
  851. package/dist/config/index.d.ts.map +1 -0
  852. package/dist/config/index.js +27 -0
  853. package/dist/config/index.js.map +1 -0
  854. package/dist/constants/permissions.d.ts +112 -0
  855. package/dist/constants/permissions.d.ts.map +1 -0
  856. package/dist/constants/permissions.js +92 -0
  857. package/dist/constants/permissions.js.map +1 -0
  858. package/dist/constants/pluginCatalog.d.ts +36 -0
  859. package/dist/constants/pluginCatalog.d.ts.map +1 -0
  860. package/dist/constants/pluginCatalog.js +140 -0
  861. package/dist/constants/pluginCatalog.js.map +1 -0
  862. package/dist/dev/main.d.ts +2 -0
  863. package/dist/dev/main.d.ts.map +1 -0
  864. package/dist/generated/global-operations.d.ts +2 -0
  865. package/dist/generated/global-operations.d.ts.map +1 -0
  866. package/dist/generated/global-types.d.ts +21253 -0
  867. package/dist/generated/global-types.d.ts.map +1 -0
  868. package/dist/generated/wspace-operations.d.ts +15218 -0
  869. package/dist/generated/wspace-operations.d.ts.map +1 -0
  870. package/dist/generated/wspace-operations.js +7326 -0
  871. package/dist/generated/wspace-operations.js.map +1 -0
  872. package/dist/generated/wspace-types.d.ts +55252 -0
  873. package/dist/generated/wspace-types.d.ts.map +1 -0
  874. package/dist/generated/wspace-types.js +30 -0
  875. package/dist/generated/wspace-types.js.map +1 -0
  876. package/dist/hooks/index.d.ts +7 -0
  877. package/dist/hooks/index.d.ts.map +1 -0
  878. package/dist/hooks/useAgentConnectivity.d.ts +47 -0
  879. package/dist/hooks/useAgentConnectivity.d.ts.map +1 -0
  880. package/dist/hooks/useAgentConnectivity.js +56 -0
  881. package/dist/hooks/useAgentConnectivity.js.map +1 -0
  882. package/dist/hooks/useAgentEvents.d.ts +36 -0
  883. package/dist/hooks/useAgentEvents.d.ts.map +1 -0
  884. package/dist/hooks/useAgentEvents.js +101 -0
  885. package/dist/hooks/useAgentEvents.js.map +1 -0
  886. package/dist/hooks/useAgentManagerKeyboard.d.ts +17 -0
  887. package/dist/hooks/useAgentManagerKeyboard.d.ts.map +1 -0
  888. package/dist/hooks/useAgentManagerKeyboard.js +49 -0
  889. package/dist/hooks/useAgentManagerKeyboard.js.map +1 -0
  890. package/dist/hooks/useAgentManagerStreaming.d.ts +19 -0
  891. package/dist/hooks/useAgentManagerStreaming.d.ts.map +1 -0
  892. package/dist/hooks/useAgentManagerStreaming.js +86 -0
  893. package/dist/hooks/useAgentManagerStreaming.js.map +1 -0
  894. package/dist/hooks/useAssistantHeartbeat.d.ts +4 -0
  895. package/dist/hooks/useAssistantHeartbeat.d.ts.map +1 -0
  896. package/dist/hooks/useAssistantHeartbeat.js +40 -0
  897. package/dist/hooks/useAssistantHeartbeat.js.map +1 -0
  898. package/dist/hooks/useAssistantKeyboardShortcuts.d.ts +18 -0
  899. package/dist/hooks/useAssistantKeyboardShortcuts.d.ts.map +1 -0
  900. package/dist/hooks/useAssistantKeyboardShortcuts.js +37 -0
  901. package/dist/hooks/useAssistantKeyboardShortcuts.js.map +1 -0
  902. package/dist/hooks/useCachedInitialData.d.ts +120 -0
  903. package/dist/hooks/useCachedInitialData.d.ts.map +1 -0
  904. package/dist/hooks/useCachedInitialData.js +107 -0
  905. package/dist/hooks/useCachedInitialData.js.map +1 -0
  906. package/dist/hooks/useEntityTags.d.ts +24 -0
  907. package/dist/hooks/useEntityTags.d.ts.map +1 -0
  908. package/dist/hooks/useEntityTags.js +31 -0
  909. package/dist/hooks/useEntityTags.js.map +1 -0
  910. package/dist/hooks/useFileUpload.d.ts +15 -0
  911. package/dist/hooks/useFileUpload.d.ts.map +1 -0
  912. package/dist/hooks/useInitialDataLoader.d.ts +48 -0
  913. package/dist/hooks/useInitialDataLoader.d.ts.map +1 -0
  914. package/dist/hooks/useInitialDataLoader.js +25 -0
  915. package/dist/hooks/useInitialDataLoader.js.map +1 -0
  916. package/dist/hooks/useMcpServers.d.ts +14 -0
  917. package/dist/hooks/useMcpServers.d.ts.map +1 -0
  918. package/dist/hooks/useOpenAssistantHelp.d.ts +2 -0
  919. package/dist/hooks/useOpenAssistantHelp.d.ts.map +1 -0
  920. package/dist/hooks/useOpenAssistantHelp.js +14 -0
  921. package/dist/hooks/useOpenAssistantHelp.js.map +1 -0
  922. package/dist/hooks/usePluginAvailability.d.ts +35 -0
  923. package/dist/hooks/usePluginAvailability.d.ts.map +1 -0
  924. package/dist/hooks/usePluginAvailability.js +112 -0
  925. package/dist/hooks/usePluginAvailability.js.map +1 -0
  926. package/dist/hooks/useQueryBackedTab.d.ts +2 -0
  927. package/dist/hooks/useQueryBackedTab.d.ts.map +1 -0
  928. package/dist/hooks/useQueryBackedTab.js +19 -0
  929. package/dist/hooks/useQueryBackedTab.js.map +1 -0
  930. package/dist/hooks/useSessionSearch.d.ts +24 -0
  931. package/dist/hooks/useSessionSearch.d.ts.map +1 -0
  932. package/dist/hooks/useVoiceMode.d.ts +17 -0
  933. package/dist/hooks/useVoiceMode.d.ts.map +1 -0
  934. package/dist/hooks/useVoiceMode.js +46 -0
  935. package/dist/hooks/useVoiceMode.js.map +1 -0
  936. package/dist/index.d.ts +17 -0
  937. package/dist/index.d.ts.map +1 -0
  938. package/dist/index.js +11 -0
  939. package/dist/lib/vibeFeatures.d.ts +29 -0
  940. package/dist/lib/vibeFeatures.d.ts.map +1 -0
  941. package/dist/lib/vibeFeatures.js +80 -0
  942. package/dist/lib/vibeFeatures.js.map +1 -0
  943. package/dist/microfe-vibecontrols.css +2 -0
  944. package/dist/node_modules/@apollo/client/errors/CombinedGraphQLErrors.js +24 -0
  945. package/dist/node_modules/@apollo/client/errors/CombinedGraphQLErrors.js.map +1 -0
  946. package/dist/node_modules/@apollo/client/errors/utils.js +16 -0
  947. package/dist/node_modules/@apollo/client/errors/utils.js.map +1 -0
  948. package/dist/node_modules/@xyflow/react/dist/esm/index.js +3281 -0
  949. package/dist/node_modules/@xyflow/react/dist/esm/index.js.map +1 -0
  950. package/dist/node_modules/@xyflow/system/dist/esm/index.js +1845 -0
  951. package/dist/node_modules/@xyflow/system/dist/esm/index.js.map +1 -0
  952. package/dist/node_modules/classcat/index.js +12 -0
  953. package/dist/node_modules/classcat/index.js.map +1 -0
  954. package/dist/node_modules/clsx/dist/clsx.js +18 -0
  955. package/dist/node_modules/clsx/dist/clsx.js.map +1 -0
  956. package/dist/node_modules/d3-array/src/ascending.js +8 -0
  957. package/dist/node_modules/d3-array/src/ascending.js.map +1 -0
  958. package/dist/node_modules/d3-array/src/bisect.js +10 -0
  959. package/dist/node_modules/d3-array/src/bisect.js.map +1 -0
  960. package/dist/node_modules/d3-array/src/bisector.js +43 -0
  961. package/dist/node_modules/d3-array/src/bisector.js.map +1 -0
  962. package/dist/node_modules/d3-array/src/descending.js +8 -0
  963. package/dist/node_modules/d3-array/src/descending.js.map +1 -0
  964. package/dist/node_modules/d3-array/src/max.js +14 -0
  965. package/dist/node_modules/d3-array/src/max.js.map +1 -0
  966. package/dist/node_modules/d3-array/src/min.js +14 -0
  967. package/dist/node_modules/d3-array/src/min.js.map +1 -0
  968. package/dist/node_modules/d3-array/src/number.js +15 -0
  969. package/dist/node_modules/d3-array/src/number.js.map +1 -0
  970. package/dist/node_modules/d3-array/src/quantile.js +25 -0
  971. package/dist/node_modules/d3-array/src/quantile.js.map +1 -0
  972. package/dist/node_modules/d3-array/src/quickselect.js +26 -0
  973. package/dist/node_modules/d3-array/src/quickselect.js.map +1 -0
  974. package/dist/node_modules/d3-array/src/range.js +10 -0
  975. package/dist/node_modules/d3-array/src/range.js.map +1 -0
  976. package/dist/node_modules/d3-array/src/sort.js +17 -0
  977. package/dist/node_modules/d3-array/src/sort.js.map +1 -0
  978. package/dist/node_modules/d3-array/src/ticks.js +34 -0
  979. package/dist/node_modules/d3-array/src/ticks.js.map +1 -0
  980. package/dist/node_modules/d3-color/src/color.js +291 -0
  981. package/dist/node_modules/d3-color/src/color.js.map +1 -0
  982. package/dist/node_modules/d3-color/src/define.js +13 -0
  983. package/dist/node_modules/d3-color/src/define.js.map +1 -0
  984. package/dist/node_modules/d3-dispatch/src/dispatch.js +67 -0
  985. package/dist/node_modules/d3-dispatch/src/dispatch.js.map +1 -0
  986. package/dist/node_modules/d3-drag/src/constant.js +6 -0
  987. package/dist/node_modules/d3-drag/src/constant.js.map +1 -0
  988. package/dist/node_modules/d3-drag/src/drag.js +116 -0
  989. package/dist/node_modules/d3-drag/src/drag.js.map +1 -0
  990. package/dist/node_modules/d3-drag/src/event.js +64 -0
  991. package/dist/node_modules/d3-drag/src/event.js.map +1 -0
  992. package/dist/node_modules/d3-drag/src/nodrag.js +17 -0
  993. package/dist/node_modules/d3-drag/src/nodrag.js.map +1 -0
  994. package/dist/node_modules/d3-drag/src/noevent.js +15 -0
  995. package/dist/node_modules/d3-drag/src/noevent.js.map +1 -0
  996. package/dist/node_modules/d3-ease/src/cubic.js +8 -0
  997. package/dist/node_modules/d3-ease/src/cubic.js.map +1 -0
  998. package/dist/node_modules/d3-format/src/defaultLocale.js +15 -0
  999. package/dist/node_modules/d3-format/src/defaultLocale.js.map +1 -0
  1000. package/dist/node_modules/d3-format/src/exponent.js +9 -0
  1001. package/dist/node_modules/d3-format/src/exponent.js.map +1 -0
  1002. package/dist/node_modules/d3-format/src/formatDecimal.js +13 -0
  1003. package/dist/node_modules/d3-format/src/formatDecimal.js.map +1 -0
  1004. package/dist/node_modules/d3-format/src/formatGroup.js +11 -0
  1005. package/dist/node_modules/d3-format/src/formatGroup.js.map +1 -0
  1006. package/dist/node_modules/d3-format/src/formatNumerals.js +12 -0
  1007. package/dist/node_modules/d3-format/src/formatNumerals.js.map +1 -0
  1008. package/dist/node_modules/d3-format/src/formatPrefixAuto.js +13 -0
  1009. package/dist/node_modules/d3-format/src/formatPrefixAuto.js.map +1 -0
  1010. package/dist/node_modules/d3-format/src/formatRounded.js +12 -0
  1011. package/dist/node_modules/d3-format/src/formatRounded.js.map +1 -0
  1012. package/dist/node_modules/d3-format/src/formatSpecifier.js +29 -0
  1013. package/dist/node_modules/d3-format/src/formatSpecifier.js.map +1 -0
  1014. package/dist/node_modules/d3-format/src/formatTrim.js +20 -0
  1015. package/dist/node_modules/d3-format/src/formatTrim.js.map +1 -0
  1016. package/dist/node_modules/d3-format/src/formatTypes.js +23 -0
  1017. package/dist/node_modules/d3-format/src/formatTypes.js.map +1 -0
  1018. package/dist/node_modules/d3-format/src/identity.js +8 -0
  1019. package/dist/node_modules/d3-format/src/identity.js.map +1 -0
  1020. package/dist/node_modules/d3-format/src/locale.js +86 -0
  1021. package/dist/node_modules/d3-format/src/locale.js.map +1 -0
  1022. package/dist/node_modules/d3-format/src/precisionFixed.js +9 -0
  1023. package/dist/node_modules/d3-format/src/precisionFixed.js.map +1 -0
  1024. package/dist/node_modules/d3-format/src/precisionPrefix.js +9 -0
  1025. package/dist/node_modules/d3-format/src/precisionPrefix.js.map +1 -0
  1026. package/dist/node_modules/d3-format/src/precisionRound.js +9 -0
  1027. package/dist/node_modules/d3-format/src/precisionRound.js.map +1 -0
  1028. package/dist/node_modules/d3-interpolate/src/array.js +15 -0
  1029. package/dist/node_modules/d3-interpolate/src/array.js.map +1 -0
  1030. package/dist/node_modules/d3-interpolate/src/basis.js +16 -0
  1031. package/dist/node_modules/d3-interpolate/src/basis.js.map +1 -0
  1032. package/dist/node_modules/d3-interpolate/src/basisClosed.js +13 -0
  1033. package/dist/node_modules/d3-interpolate/src/basisClosed.js.map +1 -0
  1034. package/dist/node_modules/d3-interpolate/src/color.js +25 -0
  1035. package/dist/node_modules/d3-interpolate/src/color.js.map +1 -0
  1036. package/dist/node_modules/d3-interpolate/src/constant.js +6 -0
  1037. package/dist/node_modules/d3-interpolate/src/constant.js.map +1 -0
  1038. package/dist/node_modules/d3-interpolate/src/date.js +11 -0
  1039. package/dist/node_modules/d3-interpolate/src/date.js.map +1 -0
  1040. package/dist/node_modules/d3-interpolate/src/number.js +10 -0
  1041. package/dist/node_modules/d3-interpolate/src/number.js.map +1 -0
  1042. package/dist/node_modules/d3-interpolate/src/numberArray.js +16 -0
  1043. package/dist/node_modules/d3-interpolate/src/numberArray.js.map +1 -0
  1044. package/dist/node_modules/d3-interpolate/src/object.js +14 -0
  1045. package/dist/node_modules/d3-interpolate/src/object.js.map +1 -0
  1046. package/dist/node_modules/d3-interpolate/src/piecewise.js +14 -0
  1047. package/dist/node_modules/d3-interpolate/src/piecewise.js.map +1 -0
  1048. package/dist/node_modules/d3-interpolate/src/rgb.js +19 -0
  1049. package/dist/node_modules/d3-interpolate/src/rgb.js.map +1 -0
  1050. package/dist/node_modules/d3-interpolate/src/round.js +10 -0
  1051. package/dist/node_modules/d3-interpolate/src/round.js.map +1 -0
  1052. package/dist/node_modules/d3-interpolate/src/string.js +28 -0
  1053. package/dist/node_modules/d3-interpolate/src/string.js.map +1 -0
  1054. package/dist/node_modules/d3-interpolate/src/transform/decompose.js +24 -0
  1055. package/dist/node_modules/d3-interpolate/src/transform/decompose.js.map +1 -0
  1056. package/dist/node_modules/d3-interpolate/src/transform/index.js +56 -0
  1057. package/dist/node_modules/d3-interpolate/src/transform/index.js.map +1 -0
  1058. package/dist/node_modules/d3-interpolate/src/transform/parse.js +14 -0
  1059. package/dist/node_modules/d3-interpolate/src/transform/parse.js.map +1 -0
  1060. package/dist/node_modules/d3-interpolate/src/value.js +18 -0
  1061. package/dist/node_modules/d3-interpolate/src/value.js.map +1 -0
  1062. package/dist/node_modules/d3-interpolate/src/zoom.js +43 -0
  1063. package/dist/node_modules/d3-interpolate/src/zoom.js.map +1 -0
  1064. package/dist/node_modules/d3-path/src/path.js +65 -0
  1065. package/dist/node_modules/d3-path/src/path.js.map +1 -0
  1066. package/dist/node_modules/d3-scale/src/band.js +52 -0
  1067. package/dist/node_modules/d3-scale/src/band.js.map +1 -0
  1068. package/dist/node_modules/d3-scale/src/constant.js +10 -0
  1069. package/dist/node_modules/d3-scale/src/constant.js.map +1 -0
  1070. package/dist/node_modules/d3-scale/src/continuous.js +73 -0
  1071. package/dist/node_modules/d3-scale/src/continuous.js.map +1 -0
  1072. package/dist/node_modules/d3-scale/src/diverging.js +82 -0
  1073. package/dist/node_modules/d3-scale/src/diverging.js.map +1 -0
  1074. package/dist/node_modules/d3-scale/src/identity.js +20 -0
  1075. package/dist/node_modules/d3-scale/src/identity.js.map +1 -0
  1076. package/dist/node_modules/d3-scale/src/init.js +29 -0
  1077. package/dist/node_modules/d3-scale/src/init.js.map +1 -0
  1078. package/dist/node_modules/d3-scale/src/linear.js +36 -0
  1079. package/dist/node_modules/d3-scale/src/linear.js.map +1 -0
  1080. package/dist/node_modules/d3-scale/src/log.js +77 -0
  1081. package/dist/node_modules/d3-scale/src/log.js.map +1 -0
  1082. package/dist/node_modules/d3-scale/src/nice.js +10 -0
  1083. package/dist/node_modules/d3-scale/src/nice.js.map +1 -0
  1084. package/dist/node_modules/d3-scale/src/number.js +8 -0
  1085. package/dist/node_modules/d3-scale/src/number.js.map +1 -0
  1086. package/dist/node_modules/d3-scale/src/ordinal.js +31 -0
  1087. package/dist/node_modules/d3-scale/src/ordinal.js.map +1 -0
  1088. package/dist/node_modules/d3-scale/src/pow.js +37 -0
  1089. package/dist/node_modules/d3-scale/src/pow.js.map +1 -0
  1090. package/dist/node_modules/d3-scale/src/quantile.js +37 -0
  1091. package/dist/node_modules/d3-scale/src/quantile.js.map +1 -0
  1092. package/dist/node_modules/d3-scale/src/quantize.js +33 -0
  1093. package/dist/node_modules/d3-scale/src/quantize.js.map +1 -0
  1094. package/dist/node_modules/d3-scale/src/radial.js +39 -0
  1095. package/dist/node_modules/d3-scale/src/radial.js.map +1 -0
  1096. package/dist/node_modules/d3-scale/src/sequential.js +67 -0
  1097. package/dist/node_modules/d3-scale/src/sequential.js.map +1 -0
  1098. package/dist/node_modules/d3-scale/src/sequentialQuantile.js +30 -0
  1099. package/dist/node_modules/d3-scale/src/sequentialQuantile.js.map +1 -0
  1100. package/dist/node_modules/d3-scale/src/symlog.js +30 -0
  1101. package/dist/node_modules/d3-scale/src/symlog.js.map +1 -0
  1102. package/dist/node_modules/d3-scale/src/threshold.js +25 -0
  1103. package/dist/node_modules/d3-scale/src/threshold.js.map +1 -0
  1104. package/dist/node_modules/d3-scale/src/tickFormat.js +31 -0
  1105. package/dist/node_modules/d3-scale/src/tickFormat.js.map +1 -0
  1106. package/dist/node_modules/d3-scale/src/time.js +47 -0
  1107. package/dist/node_modules/d3-scale/src/time.js.map +1 -0
  1108. package/dist/node_modules/d3-scale/src/utcTime.js +19 -0
  1109. package/dist/node_modules/d3-scale/src/utcTime.js.map +1 -0
  1110. package/dist/node_modules/d3-selection/src/array.js +8 -0
  1111. package/dist/node_modules/d3-selection/src/array.js.map +1 -0
  1112. package/dist/node_modules/d3-selection/src/constant.js +10 -0
  1113. package/dist/node_modules/d3-selection/src/constant.js.map +1 -0
  1114. package/dist/node_modules/d3-selection/src/creator.js +22 -0
  1115. package/dist/node_modules/d3-selection/src/creator.js.map +1 -0
  1116. package/dist/node_modules/d3-selection/src/matcher.js +15 -0
  1117. package/dist/node_modules/d3-selection/src/matcher.js.map +1 -0
  1118. package/dist/node_modules/d3-selection/src/namespace.js +13 -0
  1119. package/dist/node_modules/d3-selection/src/namespace.js.map +1 -0
  1120. package/dist/node_modules/d3-selection/src/namespaces.js +12 -0
  1121. package/dist/node_modules/d3-selection/src/namespaces.js.map +1 -0
  1122. package/dist/node_modules/d3-selection/src/pointer.js +20 -0
  1123. package/dist/node_modules/d3-selection/src/pointer.js.map +1 -0
  1124. package/dist/node_modules/d3-selection/src/select.js +9 -0
  1125. package/dist/node_modules/d3-selection/src/select.js.map +1 -0
  1126. package/dist/node_modules/d3-selection/src/selection/append.js +12 -0
  1127. package/dist/node_modules/d3-selection/src/selection/append.js.map +1 -0
  1128. package/dist/node_modules/d3-selection/src/selection/attr.js +46 -0
  1129. package/dist/node_modules/d3-selection/src/selection/attr.js.map +1 -0
  1130. package/dist/node_modules/d3-selection/src/selection/call.js +9 -0
  1131. package/dist/node_modules/d3-selection/src/selection/call.js.map +1 -0
  1132. package/dist/node_modules/d3-selection/src/selection/classed.js +55 -0
  1133. package/dist/node_modules/d3-selection/src/selection/classed.js.map +1 -0
  1134. package/dist/node_modules/d3-selection/src/selection/clone.js +16 -0
  1135. package/dist/node_modules/d3-selection/src/selection/clone.js.map +1 -0
  1136. package/dist/node_modules/d3-selection/src/selection/data.js +38 -0
  1137. package/dist/node_modules/d3-selection/src/selection/data.js.map +1 -0
  1138. package/dist/node_modules/d3-selection/src/selection/datum.js +8 -0
  1139. package/dist/node_modules/d3-selection/src/selection/datum.js.map +1 -0
  1140. package/dist/node_modules/d3-selection/src/selection/dispatch.js +23 -0
  1141. package/dist/node_modules/d3-selection/src/selection/dispatch.js.map +1 -0
  1142. package/dist/node_modules/d3-selection/src/selection/each.js +9 -0
  1143. package/dist/node_modules/d3-selection/src/selection/each.js.map +1 -0
  1144. package/dist/node_modules/d3-selection/src/selection/empty.js +8 -0
  1145. package/dist/node_modules/d3-selection/src/selection/empty.js.map +1 -0
  1146. package/dist/node_modules/d3-selection/src/selection/enter.js +28 -0
  1147. package/dist/node_modules/d3-selection/src/selection/enter.js.map +1 -0
  1148. package/dist/node_modules/d3-selection/src/selection/exit.js +10 -0
  1149. package/dist/node_modules/d3-selection/src/selection/exit.js.map +1 -0
  1150. package/dist/node_modules/d3-selection/src/selection/filter.js +12 -0
  1151. package/dist/node_modules/d3-selection/src/selection/filter.js.map +1 -0
  1152. package/dist/node_modules/d3-selection/src/selection/html.js +21 -0
  1153. package/dist/node_modules/d3-selection/src/selection/html.js.map +1 -0
  1154. package/dist/node_modules/d3-selection/src/selection/index.js +87 -0
  1155. package/dist/node_modules/d3-selection/src/selection/index.js.map +1 -0
  1156. package/dist/node_modules/d3-selection/src/selection/insert.js +16 -0
  1157. package/dist/node_modules/d3-selection/src/selection/insert.js.map +1 -0
  1158. package/dist/node_modules/d3-selection/src/selection/iterator.js +8 -0
  1159. package/dist/node_modules/d3-selection/src/selection/iterator.js.map +1 -0
  1160. package/dist/node_modules/d3-selection/src/selection/join.js +9 -0
  1161. package/dist/node_modules/d3-selection/src/selection/join.js.map +1 -0
  1162. package/dist/node_modules/d3-selection/src/selection/lower.js +11 -0
  1163. package/dist/node_modules/d3-selection/src/selection/lower.js.map +1 -0
  1164. package/dist/node_modules/d3-selection/src/selection/merge.js +11 -0
  1165. package/dist/node_modules/d3-selection/src/selection/merge.js.map +1 -0
  1166. package/dist/node_modules/d3-selection/src/selection/node.js +12 -0
  1167. package/dist/node_modules/d3-selection/src/selection/node.js.map +1 -0
  1168. package/dist/node_modules/d3-selection/src/selection/nodes.js +8 -0
  1169. package/dist/node_modules/d3-selection/src/selection/nodes.js.map +1 -0
  1170. package/dist/node_modules/d3-selection/src/selection/on.js +58 -0
  1171. package/dist/node_modules/d3-selection/src/selection/on.js.map +1 -0
  1172. package/dist/node_modules/d3-selection/src/selection/order.js +9 -0
  1173. package/dist/node_modules/d3-selection/src/selection/order.js.map +1 -0
  1174. package/dist/node_modules/d3-selection/src/selection/property.js +24 -0
  1175. package/dist/node_modules/d3-selection/src/selection/property.js.map +1 -0
  1176. package/dist/node_modules/d3-selection/src/selection/raise.js +11 -0
  1177. package/dist/node_modules/d3-selection/src/selection/raise.js.map +1 -0
  1178. package/dist/node_modules/d3-selection/src/selection/remove.js +12 -0
  1179. package/dist/node_modules/d3-selection/src/selection/remove.js.map +1 -0
  1180. package/dist/node_modules/d3-selection/src/selection/select.js +12 -0
  1181. package/dist/node_modules/d3-selection/src/selection/select.js.map +1 -0
  1182. package/dist/node_modules/d3-selection/src/selection/selectAll.js +18 -0
  1183. package/dist/node_modules/d3-selection/src/selection/selectAll.js.map +1 -0
  1184. package/dist/node_modules/d3-selection/src/selection/selectChild.js +18 -0
  1185. package/dist/node_modules/d3-selection/src/selection/selectChild.js.map +1 -0
  1186. package/dist/node_modules/d3-selection/src/selection/selectChildren.js +18 -0
  1187. package/dist/node_modules/d3-selection/src/selection/selectChildren.js.map +1 -0
  1188. package/dist/node_modules/d3-selection/src/selection/size.js +10 -0
  1189. package/dist/node_modules/d3-selection/src/selection/size.js.map +1 -0
  1190. package/dist/node_modules/d3-selection/src/selection/sort.js +20 -0
  1191. package/dist/node_modules/d3-selection/src/selection/sort.js.map +1 -0
  1192. package/dist/node_modules/d3-selection/src/selection/sparse.js +8 -0
  1193. package/dist/node_modules/d3-selection/src/selection/sparse.js.map +1 -0
  1194. package/dist/node_modules/d3-selection/src/selection/style.js +28 -0
  1195. package/dist/node_modules/d3-selection/src/selection/style.js.map +1 -0
  1196. package/dist/node_modules/d3-selection/src/selection/text.js +21 -0
  1197. package/dist/node_modules/d3-selection/src/selection/text.js.map +1 -0
  1198. package/dist/node_modules/d3-selection/src/selector.js +11 -0
  1199. package/dist/node_modules/d3-selection/src/selector.js.map +1 -0
  1200. package/dist/node_modules/d3-selection/src/selectorAll.js +13 -0
  1201. package/dist/node_modules/d3-selection/src/selectorAll.js.map +1 -0
  1202. package/dist/node_modules/d3-selection/src/sourceEvent.js +10 -0
  1203. package/dist/node_modules/d3-selection/src/sourceEvent.js.map +1 -0
  1204. package/dist/node_modules/d3-selection/src/window.js +8 -0
  1205. package/dist/node_modules/d3-selection/src/window.js.map +1 -0
  1206. package/dist/node_modules/d3-shape/src/area.js +55 -0
  1207. package/dist/node_modules/d3-shape/src/area.js.map +1 -0
  1208. package/dist/node_modules/d3-shape/src/array.js +8 -0
  1209. package/dist/node_modules/d3-shape/src/array.js.map +1 -0
  1210. package/dist/node_modules/d3-shape/src/constant.js +10 -0
  1211. package/dist/node_modules/d3-shape/src/constant.js.map +1 -0
  1212. package/dist/node_modules/d3-shape/src/curve/basis.js +49 -0
  1213. package/dist/node_modules/d3-shape/src/curve/basis.js.map +1 -0
  1214. package/dist/node_modules/d3-shape/src/curve/basisClosed.js +50 -0
  1215. package/dist/node_modules/d3-shape/src/curve/basisClosed.js.map +1 -0
  1216. package/dist/node_modules/d3-shape/src/curve/basisOpen.js +46 -0
  1217. package/dist/node_modules/d3-shape/src/curve/basisOpen.js.map +1 -0
  1218. package/dist/node_modules/d3-shape/src/curve/bump.js +40 -0
  1219. package/dist/node_modules/d3-shape/src/curve/bump.js.map +1 -0
  1220. package/dist/node_modules/d3-shape/src/curve/linear.js +36 -0
  1221. package/dist/node_modules/d3-shape/src/curve/linear.js.map +1 -0
  1222. package/dist/node_modules/d3-shape/src/curve/linearClosed.js +25 -0
  1223. package/dist/node_modules/d3-shape/src/curve/linearClosed.js.map +1 -0
  1224. package/dist/node_modules/d3-shape/src/curve/monotone.js +94 -0
  1225. package/dist/node_modules/d3-shape/src/curve/monotone.js.map +1 -0
  1226. package/dist/node_modules/d3-shape/src/curve/natural.js +39 -0
  1227. package/dist/node_modules/d3-shape/src/curve/natural.js.map +1 -0
  1228. package/dist/node_modules/d3-shape/src/curve/step.js +47 -0
  1229. package/dist/node_modules/d3-shape/src/curve/step.js.map +1 -0
  1230. package/dist/node_modules/d3-shape/src/line.js +30 -0
  1231. package/dist/node_modules/d3-shape/src/line.js.map +1 -0
  1232. package/dist/node_modules/d3-shape/src/math.js +8 -0
  1233. package/dist/node_modules/d3-shape/src/math.js.map +1 -0
  1234. package/dist/node_modules/d3-shape/src/noop.js +6 -0
  1235. package/dist/node_modules/d3-shape/src/noop.js.map +1 -0
  1236. package/dist/node_modules/d3-shape/src/offset/expand.js +15 -0
  1237. package/dist/node_modules/d3-shape/src/offset/expand.js.map +1 -0
  1238. package/dist/node_modules/d3-shape/src/offset/none.js +8 -0
  1239. package/dist/node_modules/d3-shape/src/offset/none.js.map +1 -0
  1240. package/dist/node_modules/d3-shape/src/offset/silhouette.js +15 -0
  1241. package/dist/node_modules/d3-shape/src/offset/silhouette.js.map +1 -0
  1242. package/dist/node_modules/d3-shape/src/offset/wiggle.js +21 -0
  1243. package/dist/node_modules/d3-shape/src/offset/wiggle.js.map +1 -0
  1244. package/dist/node_modules/d3-shape/src/order/none.js +9 -0
  1245. package/dist/node_modules/d3-shape/src/order/none.js.map +1 -0
  1246. package/dist/node_modules/d3-shape/src/path.js +19 -0
  1247. package/dist/node_modules/d3-shape/src/path.js.map +1 -0
  1248. package/dist/node_modules/d3-shape/src/point.js +11 -0
  1249. package/dist/node_modules/d3-shape/src/point.js.map +1 -0
  1250. package/dist/node_modules/d3-shape/src/stack.js +34 -0
  1251. package/dist/node_modules/d3-shape/src/stack.js.map +1 -0
  1252. package/dist/node_modules/d3-shape/src/symbol/circle.js +10 -0
  1253. package/dist/node_modules/d3-shape/src/symbol/circle.js.map +1 -0
  1254. package/dist/node_modules/d3-shape/src/symbol/cross.js +10 -0
  1255. package/dist/node_modules/d3-shape/src/symbol/cross.js.map +1 -0
  1256. package/dist/node_modules/d3-shape/src/symbol/diamond.js +10 -0
  1257. package/dist/node_modules/d3-shape/src/symbol/diamond.js.map +1 -0
  1258. package/dist/node_modules/d3-shape/src/symbol/square.js +10 -0
  1259. package/dist/node_modules/d3-shape/src/symbol/square.js.map +1 -0
  1260. package/dist/node_modules/d3-shape/src/symbol/star.js +15 -0
  1261. package/dist/node_modules/d3-shape/src/symbol/star.js.map +1 -0
  1262. package/dist/node_modules/d3-shape/src/symbol/triangle.js +10 -0
  1263. package/dist/node_modules/d3-shape/src/symbol/triangle.js.map +1 -0
  1264. package/dist/node_modules/d3-shape/src/symbol/wye.js +10 -0
  1265. package/dist/node_modules/d3-shape/src/symbol/wye.js.map +1 -0
  1266. package/dist/node_modules/d3-shape/src/symbol.js +23 -0
  1267. package/dist/node_modules/d3-shape/src/symbol.js.map +1 -0
  1268. package/dist/node_modules/d3-time/src/day.js +21 -0
  1269. package/dist/node_modules/d3-time/src/day.js.map +1 -0
  1270. package/dist/node_modules/d3-time/src/duration.js +6 -0
  1271. package/dist/node_modules/d3-time/src/duration.js.map +1 -0
  1272. package/dist/node_modules/d3-time/src/hour.js +19 -0
  1273. package/dist/node_modules/d3-time/src/hour.js.map +1 -0
  1274. package/dist/node_modules/d3-time/src/interval.js +28 -0
  1275. package/dist/node_modules/d3-time/src/interval.js.map +1 -0
  1276. package/dist/node_modules/d3-time/src/millisecond.js +14 -0
  1277. package/dist/node_modules/d3-time/src/millisecond.js.map +1 -0
  1278. package/dist/node_modules/d3-time/src/minute.js +19 -0
  1279. package/dist/node_modules/d3-time/src/minute.js.map +1 -0
  1280. package/dist/node_modules/d3-time/src/month.js +18 -0
  1281. package/dist/node_modules/d3-time/src/month.js.map +1 -0
  1282. package/dist/node_modules/d3-time/src/second.js +13 -0
  1283. package/dist/node_modules/d3-time/src/second.js.map +1 -0
  1284. package/dist/node_modules/d3-time/src/ticks.js +125 -0
  1285. package/dist/node_modules/d3-time/src/ticks.js.map +1 -0
  1286. package/dist/node_modules/d3-time/src/week.js +25 -0
  1287. package/dist/node_modules/d3-time/src/week.js.map +1 -0
  1288. package/dist/node_modules/d3-time/src/year.js +26 -0
  1289. package/dist/node_modules/d3-time/src/year.js.map +1 -0
  1290. package/dist/node_modules/d3-time-format/src/defaultLocale.js +62 -0
  1291. package/dist/node_modules/d3-time-format/src/defaultLocale.js.map +1 -0
  1292. package/dist/node_modules/d3-time-format/src/locale.js +490 -0
  1293. package/dist/node_modules/d3-time-format/src/locale.js.map +1 -0
  1294. package/dist/node_modules/d3-timer/src/timeout.js +12 -0
  1295. package/dist/node_modules/d3-timer/src/timeout.js.map +1 -0
  1296. package/dist/node_modules/d3-timer/src/timer.js +55 -0
  1297. package/dist/node_modules/d3-timer/src/timer.js.map +1 -0
  1298. package/dist/node_modules/d3-transition/src/index.js +3 -0
  1299. package/dist/node_modules/d3-transition/src/interrupt.js +18 -0
  1300. package/dist/node_modules/d3-transition/src/interrupt.js.map +1 -0
  1301. package/dist/node_modules/d3-transition/src/selection/index.js +7 -0
  1302. package/dist/node_modules/d3-transition/src/selection/index.js.map +1 -0
  1303. package/dist/node_modules/d3-transition/src/selection/interrupt.js +11 -0
  1304. package/dist/node_modules/d3-transition/src/selection/interrupt.js.map +1 -0
  1305. package/dist/node_modules/d3-transition/src/selection/transition.js +25 -0
  1306. package/dist/node_modules/d3-transition/src/selection/transition.js.map +1 -0
  1307. package/dist/node_modules/d3-transition/src/transition/attr.js +51 -0
  1308. package/dist/node_modules/d3-transition/src/transition/attr.js.map +1 -0
  1309. package/dist/node_modules/d3-transition/src/transition/attrTween.js +40 -0
  1310. package/dist/node_modules/d3-transition/src/transition/attrTween.js.map +1 -0
  1311. package/dist/node_modules/d3-transition/src/transition/delay.js +20 -0
  1312. package/dist/node_modules/d3-transition/src/transition/delay.js.map +1 -0
  1313. package/dist/node_modules/d3-transition/src/transition/duration.js +20 -0
  1314. package/dist/node_modules/d3-transition/src/transition/duration.js.map +1 -0
  1315. package/dist/node_modules/d3-transition/src/transition/ease.js +16 -0
  1316. package/dist/node_modules/d3-transition/src/transition/ease.js.map +1 -0
  1317. package/dist/node_modules/d3-transition/src/transition/easeVarying.js +17 -0
  1318. package/dist/node_modules/d3-transition/src/transition/easeVarying.js.map +1 -0
  1319. package/dist/node_modules/d3-transition/src/transition/end.js +18 -0
  1320. package/dist/node_modules/d3-transition/src/transition/end.js.map +1 -0
  1321. package/dist/node_modules/d3-transition/src/transition/filter.js +12 -0
  1322. package/dist/node_modules/d3-transition/src/transition/filter.js.map +1 -0
  1323. package/dist/node_modules/d3-transition/src/transition/index.js +69 -0
  1324. package/dist/node_modules/d3-transition/src/transition/index.js.map +1 -0
  1325. package/dist/node_modules/d3-transition/src/transition/interpolate.js +13 -0
  1326. package/dist/node_modules/d3-transition/src/transition/interpolate.js.map +1 -0
  1327. package/dist/node_modules/d3-transition/src/transition/merge.js +12 -0
  1328. package/dist/node_modules/d3-transition/src/transition/merge.js.map +1 -0
  1329. package/dist/node_modules/d3-transition/src/transition/on.js +23 -0
  1330. package/dist/node_modules/d3-transition/src/transition/on.js.map +1 -0
  1331. package/dist/node_modules/d3-transition/src/transition/remove.js +15 -0
  1332. package/dist/node_modules/d3-transition/src/transition/remove.js.map +1 -0
  1333. package/dist/node_modules/d3-transition/src/transition/schedule.js +71 -0
  1334. package/dist/node_modules/d3-transition/src/transition/schedule.js.map +1 -0
  1335. package/dist/node_modules/d3-transition/src/transition/select.js +14 -0
  1336. package/dist/node_modules/d3-transition/src/transition/select.js.map +1 -0
  1337. package/dist/node_modules/d3-transition/src/transition/selectAll.js +17 -0
  1338. package/dist/node_modules/d3-transition/src/transition/selectAll.js.map +1 -0
  1339. package/dist/node_modules/d3-transition/src/transition/selection.js +10 -0
  1340. package/dist/node_modules/d3-transition/src/transition/selection.js.map +1 -0
  1341. package/dist/node_modules/d3-transition/src/transition/style.js +47 -0
  1342. package/dist/node_modules/d3-transition/src/transition/style.js.map +1 -0
  1343. package/dist/node_modules/d3-transition/src/transition/styleTween.js +25 -0
  1344. package/dist/node_modules/d3-transition/src/transition/styleTween.js.map +1 -0
  1345. package/dist/node_modules/d3-transition/src/transition/text.js +19 -0
  1346. package/dist/node_modules/d3-transition/src/transition/text.js.map +1 -0
  1347. package/dist/node_modules/d3-transition/src/transition/textTween.js +25 -0
  1348. package/dist/node_modules/d3-transition/src/transition/textTween.js.map +1 -0
  1349. package/dist/node_modules/d3-transition/src/transition/transition.js +19 -0
  1350. package/dist/node_modules/d3-transition/src/transition/transition.js.map +1 -0
  1351. package/dist/node_modules/d3-transition/src/transition/tween.js +56 -0
  1352. package/dist/node_modules/d3-transition/src/transition/tween.js.map +1 -0
  1353. package/dist/node_modules/d3-zoom/src/constant.js +6 -0
  1354. package/dist/node_modules/d3-zoom/src/constant.js.map +1 -0
  1355. package/dist/node_modules/d3-zoom/src/event.js +30 -0
  1356. package/dist/node_modules/d3-zoom/src/event.js.map +1 -0
  1357. package/dist/node_modules/d3-zoom/src/index.js +2 -0
  1358. package/dist/node_modules/d3-zoom/src/noevent.js +11 -0
  1359. package/dist/node_modules/d3-zoom/src/noevent.js.map +1 -0
  1360. package/dist/node_modules/d3-zoom/src/transform.js +50 -0
  1361. package/dist/node_modules/d3-zoom/src/transform.js.map +1 -0
  1362. package/dist/node_modules/d3-zoom/src/zoom.js +219 -0
  1363. package/dist/node_modules/d3-zoom/src/zoom.js.map +1 -0
  1364. package/dist/node_modules/decimal.js-light/decimal.js +378 -0
  1365. package/dist/node_modules/decimal.js-light/decimal.js.map +1 -0
  1366. package/dist/node_modules/eventemitter3/index.js +95 -0
  1367. package/dist/node_modules/eventemitter3/index.js.map +1 -0
  1368. package/dist/node_modules/fast-equals/dist/es/index.js +267 -0
  1369. package/dist/node_modules/fast-equals/dist/es/index.js.map +1 -0
  1370. package/dist/node_modules/internmap/src/index.js +40 -0
  1371. package/dist/node_modules/internmap/src/index.js.map +1 -0
  1372. package/dist/node_modules/lodash/_DataView.js +12 -0
  1373. package/dist/node_modules/lodash/_DataView.js.map +1 -0
  1374. package/dist/node_modules/lodash/_Hash.js +23 -0
  1375. package/dist/node_modules/lodash/_Hash.js.map +1 -0
  1376. package/dist/node_modules/lodash/_ListCache.js +23 -0
  1377. package/dist/node_modules/lodash/_ListCache.js.map +1 -0
  1378. package/dist/node_modules/lodash/_Map.js +12 -0
  1379. package/dist/node_modules/lodash/_Map.js.map +1 -0
  1380. package/dist/node_modules/lodash/_MapCache.js +23 -0
  1381. package/dist/node_modules/lodash/_MapCache.js.map +1 -0
  1382. package/dist/node_modules/lodash/_Promise.js +12 -0
  1383. package/dist/node_modules/lodash/_Promise.js.map +1 -0
  1384. package/dist/node_modules/lodash/_Set.js +12 -0
  1385. package/dist/node_modules/lodash/_Set.js.map +1 -0
  1386. package/dist/node_modules/lodash/_SetCache.js +18 -0
  1387. package/dist/node_modules/lodash/_SetCache.js.map +1 -0
  1388. package/dist/node_modules/lodash/_Stack.js +20 -0
  1389. package/dist/node_modules/lodash/_Stack.js.map +1 -0
  1390. package/dist/node_modules/lodash/_Symbol.js +11 -0
  1391. package/dist/node_modules/lodash/_Symbol.js.map +1 -0
  1392. package/dist/node_modules/lodash/_Uint8Array.js +11 -0
  1393. package/dist/node_modules/lodash/_Uint8Array.js.map +1 -0
  1394. package/dist/node_modules/lodash/_WeakMap.js +12 -0
  1395. package/dist/node_modules/lodash/_WeakMap.js.map +1 -0
  1396. package/dist/node_modules/lodash/_apply.js +19 -0
  1397. package/dist/node_modules/lodash/_apply.js.map +1 -0
  1398. package/dist/node_modules/lodash/_arrayEvery.js +14 -0
  1399. package/dist/node_modules/lodash/_arrayEvery.js.map +1 -0
  1400. package/dist/node_modules/lodash/_arrayFilter.js +17 -0
  1401. package/dist/node_modules/lodash/_arrayFilter.js.map +1 -0
  1402. package/dist/node_modules/lodash/_arrayIncludes.js +15 -0
  1403. package/dist/node_modules/lodash/_arrayIncludes.js.map +1 -0
  1404. package/dist/node_modules/lodash/_arrayIncludesWith.js +14 -0
  1405. package/dist/node_modules/lodash/_arrayIncludesWith.js.map +1 -0
  1406. package/dist/node_modules/lodash/_arrayLikeKeys.js +22 -0
  1407. package/dist/node_modules/lodash/_arrayLikeKeys.js.map +1 -0
  1408. package/dist/node_modules/lodash/_arrayMap.js +14 -0
  1409. package/dist/node_modules/lodash/_arrayMap.js.map +1 -0
  1410. package/dist/node_modules/lodash/_arrayPush.js +14 -0
  1411. package/dist/node_modules/lodash/_arrayPush.js.map +1 -0
  1412. package/dist/node_modules/lodash/_arraySome.js +14 -0
  1413. package/dist/node_modules/lodash/_arraySome.js.map +1 -0
  1414. package/dist/node_modules/lodash/_asciiToArray.js +13 -0
  1415. package/dist/node_modules/lodash/_asciiToArray.js.map +1 -0
  1416. package/dist/node_modules/lodash/_assocIndexOf.js +16 -0
  1417. package/dist/node_modules/lodash/_assocIndexOf.js.map +1 -0
  1418. package/dist/node_modules/lodash/_baseAssignValue.js +20 -0
  1419. package/dist/node_modules/lodash/_baseAssignValue.js.map +1 -0
  1420. package/dist/node_modules/lodash/_baseEach.js +13 -0
  1421. package/dist/node_modules/lodash/_baseEach.js.map +1 -0
  1422. package/dist/node_modules/lodash/_baseEvery.js +18 -0
  1423. package/dist/node_modules/lodash/_baseEvery.js.map +1 -0
  1424. package/dist/node_modules/lodash/_baseExtremum.js +19 -0
  1425. package/dist/node_modules/lodash/_baseExtremum.js.map +1 -0
  1426. package/dist/node_modules/lodash/_baseFindIndex.js +14 -0
  1427. package/dist/node_modules/lodash/_baseFindIndex.js.map +1 -0
  1428. package/dist/node_modules/lodash/_baseFlatten.js +21 -0
  1429. package/dist/node_modules/lodash/_baseFlatten.js.map +1 -0
  1430. package/dist/node_modules/lodash/_baseFor.js +11 -0
  1431. package/dist/node_modules/lodash/_baseFor.js.map +1 -0
  1432. package/dist/node_modules/lodash/_baseForOwn.js +16 -0
  1433. package/dist/node_modules/lodash/_baseForOwn.js.map +1 -0
  1434. package/dist/node_modules/lodash/_baseGet.js +18 -0
  1435. package/dist/node_modules/lodash/_baseGet.js.map +1 -0
  1436. package/dist/node_modules/lodash/_baseGetAllKeys.js +17 -0
  1437. package/dist/node_modules/lodash/_baseGetAllKeys.js.map +1 -0
  1438. package/dist/node_modules/lodash/_baseGetTag.js +17 -0
  1439. package/dist/node_modules/lodash/_baseGetTag.js.map +1 -0
  1440. package/dist/node_modules/lodash/_baseGt.js +13 -0
  1441. package/dist/node_modules/lodash/_baseGt.js.map +1 -0
  1442. package/dist/node_modules/lodash/_baseHasIn.js +13 -0
  1443. package/dist/node_modules/lodash/_baseHasIn.js.map +1 -0
  1444. package/dist/node_modules/lodash/_baseIndexOf.js +17 -0
  1445. package/dist/node_modules/lodash/_baseIndexOf.js.map +1 -0
  1446. package/dist/node_modules/lodash/_baseIsArguments.js +16 -0
  1447. package/dist/node_modules/lodash/_baseIsArguments.js.map +1 -0
  1448. package/dist/node_modules/lodash/_baseIsEqual.js +16 -0
  1449. package/dist/node_modules/lodash/_baseIsEqual.js.map +1 -0
  1450. package/dist/node_modules/lodash/_baseIsEqualDeep.js +37 -0
  1451. package/dist/node_modules/lodash/_baseIsEqualDeep.js.map +1 -0
  1452. package/dist/node_modules/lodash/_baseIsMatch.js +33 -0
  1453. package/dist/node_modules/lodash/_baseIsMatch.js.map +1 -0
  1454. package/dist/node_modules/lodash/_baseIsNaN.js +13 -0
  1455. package/dist/node_modules/lodash/_baseIsNaN.js.map +1 -0
  1456. package/dist/node_modules/lodash/_baseIsNative.js +18 -0
  1457. package/dist/node_modules/lodash/_baseIsNative.js.map +1 -0
  1458. package/dist/node_modules/lodash/_baseIsTypedArray.js +18 -0
  1459. package/dist/node_modules/lodash/_baseIsTypedArray.js.map +1 -0
  1460. package/dist/node_modules/lodash/_baseIteratee.js +19 -0
  1461. package/dist/node_modules/lodash/_baseIteratee.js.map +1 -0
  1462. package/dist/node_modules/lodash/_baseKeys.js +19 -0
  1463. package/dist/node_modules/lodash/_baseKeys.js.map +1 -0
  1464. package/dist/node_modules/lodash/_baseLt.js +13 -0
  1465. package/dist/node_modules/lodash/_baseLt.js.map +1 -0
  1466. package/dist/node_modules/lodash/_baseMap.js +19 -0
  1467. package/dist/node_modules/lodash/_baseMap.js.map +1 -0
  1468. package/dist/node_modules/lodash/_baseMatches.js +20 -0
  1469. package/dist/node_modules/lodash/_baseMatches.js.map +1 -0
  1470. package/dist/node_modules/lodash/_baseMatchesProperty.js +24 -0
  1471. package/dist/node_modules/lodash/_baseMatchesProperty.js.map +1 -0
  1472. package/dist/node_modules/lodash/_baseOrderBy.js +39 -0
  1473. package/dist/node_modules/lodash/_baseOrderBy.js.map +1 -0
  1474. package/dist/node_modules/lodash/_baseProperty.js +15 -0
  1475. package/dist/node_modules/lodash/_baseProperty.js.map +1 -0
  1476. package/dist/node_modules/lodash/_basePropertyDeep.js +17 -0
  1477. package/dist/node_modules/lodash/_basePropertyDeep.js.map +1 -0
  1478. package/dist/node_modules/lodash/_baseRange.js +15 -0
  1479. package/dist/node_modules/lodash/_baseRange.js.map +1 -0
  1480. package/dist/node_modules/lodash/_baseRest.js +17 -0
  1481. package/dist/node_modules/lodash/_baseRest.js.map +1 -0
  1482. package/dist/node_modules/lodash/_baseSetToString.js +21 -0
  1483. package/dist/node_modules/lodash/_baseSetToString.js.map +1 -0
  1484. package/dist/node_modules/lodash/_baseSlice.js +16 -0
  1485. package/dist/node_modules/lodash/_baseSlice.js.map +1 -0
  1486. package/dist/node_modules/lodash/_baseSome.js +18 -0
  1487. package/dist/node_modules/lodash/_baseSome.js.map +1 -0
  1488. package/dist/node_modules/lodash/_baseSortBy.js +15 -0
  1489. package/dist/node_modules/lodash/_baseSortBy.js.map +1 -0
  1490. package/dist/node_modules/lodash/_baseTimes.js +14 -0
  1491. package/dist/node_modules/lodash/_baseTimes.js.map +1 -0
  1492. package/dist/node_modules/lodash/_baseToString.js +22 -0
  1493. package/dist/node_modules/lodash/_baseToString.js.map +1 -0
  1494. package/dist/node_modules/lodash/_baseTrim.js +15 -0
  1495. package/dist/node_modules/lodash/_baseTrim.js.map +1 -0
  1496. package/dist/node_modules/lodash/_baseUnary.js +15 -0
  1497. package/dist/node_modules/lodash/_baseUnary.js.map +1 -0
  1498. package/dist/node_modules/lodash/_baseUniq.js +34 -0
  1499. package/dist/node_modules/lodash/_baseUniq.js.map +1 -0
  1500. package/dist/node_modules/lodash/_cacheHas.js +13 -0
  1501. package/dist/node_modules/lodash/_cacheHas.js.map +1 -0
  1502. package/dist/node_modules/lodash/_castPath.js +18 -0
  1503. package/dist/node_modules/lodash/_castPath.js.map +1 -0
  1504. package/dist/node_modules/lodash/_castSlice.js +16 -0
  1505. package/dist/node_modules/lodash/_castSlice.js.map +1 -0
  1506. package/dist/node_modules/lodash/_compareAscending.js +20 -0
  1507. package/dist/node_modules/lodash/_compareAscending.js.map +1 -0
  1508. package/dist/node_modules/lodash/_compareMultiple.js +19 -0
  1509. package/dist/node_modules/lodash/_compareMultiple.js.map +1 -0
  1510. package/dist/node_modules/lodash/_coreJsData.js +11 -0
  1511. package/dist/node_modules/lodash/_coreJsData.js.map +1 -0
  1512. package/dist/node_modules/lodash/_createBaseEach.js +20 -0
  1513. package/dist/node_modules/lodash/_createBaseEach.js.map +1 -0
  1514. package/dist/node_modules/lodash/_createBaseFor.js +19 -0
  1515. package/dist/node_modules/lodash/_createBaseFor.js.map +1 -0
  1516. package/dist/node_modules/lodash/_createCaseFirst.js +22 -0
  1517. package/dist/node_modules/lodash/_createCaseFirst.js.map +1 -0
  1518. package/dist/node_modules/lodash/_createFind.js +27 -0
  1519. package/dist/node_modules/lodash/_createFind.js.map +1 -0
  1520. package/dist/node_modules/lodash/_createRange.js +19 -0
  1521. package/dist/node_modules/lodash/_createRange.js.map +1 -0
  1522. package/dist/node_modules/lodash/_createSet.js +16 -0
  1523. package/dist/node_modules/lodash/_createSet.js.map +1 -0
  1524. package/dist/node_modules/lodash/_defineProperty.js +17 -0
  1525. package/dist/node_modules/lodash/_defineProperty.js.map +1 -0
  1526. package/dist/node_modules/lodash/_equalArrays.js +42 -0
  1527. package/dist/node_modules/lodash/_equalArrays.js.map +1 -0
  1528. package/dist/node_modules/lodash/_equalByTag.js +42 -0
  1529. package/dist/node_modules/lodash/_equalByTag.js.map +1 -0
  1530. package/dist/node_modules/lodash/_equalObjects.js +39 -0
  1531. package/dist/node_modules/lodash/_equalObjects.js.map +1 -0
  1532. package/dist/node_modules/lodash/_freeGlobal.js +10 -0
  1533. package/dist/node_modules/lodash/_freeGlobal.js.map +1 -0
  1534. package/dist/node_modules/lodash/_getAllKeys.js +17 -0
  1535. package/dist/node_modules/lodash/_getAllKeys.js.map +1 -0
  1536. package/dist/node_modules/lodash/_getMapData.js +16 -0
  1537. package/dist/node_modules/lodash/_getMapData.js.map +1 -0
  1538. package/dist/node_modules/lodash/_getMatchData.js +24 -0
  1539. package/dist/node_modules/lodash/_getMatchData.js.map +1 -0
  1540. package/dist/node_modules/lodash/_getNative.js +17 -0
  1541. package/dist/node_modules/lodash/_getNative.js.map +1 -0
  1542. package/dist/node_modules/lodash/_getPrototype.js +11 -0
  1543. package/dist/node_modules/lodash/_getPrototype.js.map +1 -0
  1544. package/dist/node_modules/lodash/_getRawTag.js +21 -0
  1545. package/dist/node_modules/lodash/_getRawTag.js.map +1 -0
  1546. package/dist/node_modules/lodash/_getSymbols.js +17 -0
  1547. package/dist/node_modules/lodash/_getSymbols.js.map +1 -0
  1548. package/dist/node_modules/lodash/_getTag.js +28 -0
  1549. package/dist/node_modules/lodash/_getTag.js.map +1 -0
  1550. package/dist/node_modules/lodash/_getValue.js +13 -0
  1551. package/dist/node_modules/lodash/_getValue.js.map +1 -0
  1552. package/dist/node_modules/lodash/_hasPath.js +26 -0
  1553. package/dist/node_modules/lodash/_hasPath.js.map +1 -0
  1554. package/dist/node_modules/lodash/_hasUnicode.js +14 -0
  1555. package/dist/node_modules/lodash/_hasUnicode.js.map +1 -0
  1556. package/dist/node_modules/lodash/_hashClear.js +15 -0
  1557. package/dist/node_modules/lodash/_hashClear.js.map +1 -0
  1558. package/dist/node_modules/lodash/_hashDelete.js +14 -0
  1559. package/dist/node_modules/lodash/_hashDelete.js.map +1 -0
  1560. package/dist/node_modules/lodash/_hashGet.js +20 -0
  1561. package/dist/node_modules/lodash/_hashGet.js.map +1 -0
  1562. package/dist/node_modules/lodash/_hashHas.js +16 -0
  1563. package/dist/node_modules/lodash/_hashHas.js.map +1 -0
  1564. package/dist/node_modules/lodash/_hashSet.js +16 -0
  1565. package/dist/node_modules/lodash/_hashSet.js.map +1 -0
  1566. package/dist/node_modules/lodash/_isFlattenable.js +17 -0
  1567. package/dist/node_modules/lodash/_isFlattenable.js.map +1 -0
  1568. package/dist/node_modules/lodash/_isIndex.js +15 -0
  1569. package/dist/node_modules/lodash/_isIndex.js.map +1 -0
  1570. package/dist/node_modules/lodash/_isIterateeCall.js +20 -0
  1571. package/dist/node_modules/lodash/_isIterateeCall.js.map +1 -0
  1572. package/dist/node_modules/lodash/_isKey.js +18 -0
  1573. package/dist/node_modules/lodash/_isKey.js.map +1 -0
  1574. package/dist/node_modules/lodash/_isKeyable.js +14 -0
  1575. package/dist/node_modules/lodash/_isKeyable.js.map +1 -0
  1576. package/dist/node_modules/lodash/_isMasked.js +18 -0
  1577. package/dist/node_modules/lodash/_isMasked.js.map +1 -0
  1578. package/dist/node_modules/lodash/_isPrototype.js +15 -0
  1579. package/dist/node_modules/lodash/_isPrototype.js.map +1 -0
  1580. package/dist/node_modules/lodash/_isStrictComparable.js +15 -0
  1581. package/dist/node_modules/lodash/_isStrictComparable.js.map +1 -0
  1582. package/dist/node_modules/lodash/_listCacheClear.js +13 -0
  1583. package/dist/node_modules/lodash/_listCacheClear.js.map +1 -0
  1584. package/dist/node_modules/lodash/_listCacheDelete.js +16 -0
  1585. package/dist/node_modules/lodash/_listCacheDelete.js.map +1 -0
  1586. package/dist/node_modules/lodash/_listCacheGet.js +16 -0
  1587. package/dist/node_modules/lodash/_listCacheGet.js.map +1 -0
  1588. package/dist/node_modules/lodash/_listCacheHas.js +15 -0
  1589. package/dist/node_modules/lodash/_listCacheHas.js.map +1 -0
  1590. package/dist/node_modules/lodash/_listCacheSet.js +16 -0
  1591. package/dist/node_modules/lodash/_listCacheSet.js.map +1 -0
  1592. package/dist/node_modules/lodash/_mapCacheClear.js +21 -0
  1593. package/dist/node_modules/lodash/_mapCacheClear.js.map +1 -0
  1594. package/dist/node_modules/lodash/_mapCacheDelete.js +16 -0
  1595. package/dist/node_modules/lodash/_mapCacheDelete.js.map +1 -0
  1596. package/dist/node_modules/lodash/_mapCacheGet.js +15 -0
  1597. package/dist/node_modules/lodash/_mapCacheGet.js.map +1 -0
  1598. package/dist/node_modules/lodash/_mapCacheHas.js +15 -0
  1599. package/dist/node_modules/lodash/_mapCacheHas.js.map +1 -0
  1600. package/dist/node_modules/lodash/_mapCacheSet.js +16 -0
  1601. package/dist/node_modules/lodash/_mapCacheSet.js.map +1 -0
  1602. package/dist/node_modules/lodash/_mapToArray.js +16 -0
  1603. package/dist/node_modules/lodash/_mapToArray.js.map +1 -0
  1604. package/dist/node_modules/lodash/_matchesStrictComparable.js +15 -0
  1605. package/dist/node_modules/lodash/_matchesStrictComparable.js.map +1 -0
  1606. package/dist/node_modules/lodash/_memoizeCapped.js +18 -0
  1607. package/dist/node_modules/lodash/_memoizeCapped.js.map +1 -0
  1608. package/dist/node_modules/lodash/_nativeCreate.js +11 -0
  1609. package/dist/node_modules/lodash/_nativeCreate.js.map +1 -0
  1610. package/dist/node_modules/lodash/_nativeKeys.js +11 -0
  1611. package/dist/node_modules/lodash/_nativeKeys.js.map +1 -0
  1612. package/dist/node_modules/lodash/_nodeUtil.js +16 -0
  1613. package/dist/node_modules/lodash/_nodeUtil.js.map +1 -0
  1614. package/dist/node_modules/lodash/_objectToString.js +14 -0
  1615. package/dist/node_modules/lodash/_objectToString.js.map +1 -0
  1616. package/dist/node_modules/lodash/_overArg.js +15 -0
  1617. package/dist/node_modules/lodash/_overArg.js.map +1 -0
  1618. package/dist/node_modules/lodash/_overRest.js +20 -0
  1619. package/dist/node_modules/lodash/_overRest.js.map +1 -0
  1620. package/dist/node_modules/lodash/_root.js +12 -0
  1621. package/dist/node_modules/lodash/_root.js.map +1 -0
  1622. package/dist/node_modules/lodash/_setCacheAdd.js +14 -0
  1623. package/dist/node_modules/lodash/_setCacheAdd.js.map +1 -0
  1624. package/dist/node_modules/lodash/_setCacheHas.js +13 -0
  1625. package/dist/node_modules/lodash/_setCacheHas.js.map +1 -0
  1626. package/dist/node_modules/lodash/_setToArray.js +16 -0
  1627. package/dist/node_modules/lodash/_setToArray.js.map +1 -0
  1628. package/dist/node_modules/lodash/_setToString.js +13 -0
  1629. package/dist/node_modules/lodash/_setToString.js.map +1 -0
  1630. package/dist/node_modules/lodash/_shortOut.js +21 -0
  1631. package/dist/node_modules/lodash/_shortOut.js.map +1 -0
  1632. package/dist/node_modules/lodash/_stackClear.js +15 -0
  1633. package/dist/node_modules/lodash/_stackClear.js.map +1 -0
  1634. package/dist/node_modules/lodash/_stackDelete.js +14 -0
  1635. package/dist/node_modules/lodash/_stackDelete.js.map +1 -0
  1636. package/dist/node_modules/lodash/_stackGet.js +13 -0
  1637. package/dist/node_modules/lodash/_stackGet.js.map +1 -0
  1638. package/dist/node_modules/lodash/_stackHas.js +13 -0
  1639. package/dist/node_modules/lodash/_stackHas.js.map +1 -0
  1640. package/dist/node_modules/lodash/_stackSet.js +23 -0
  1641. package/dist/node_modules/lodash/_stackSet.js.map +1 -0
  1642. package/dist/node_modules/lodash/_strictIndexOf.js +14 -0
  1643. package/dist/node_modules/lodash/_strictIndexOf.js.map +1 -0
  1644. package/dist/node_modules/lodash/_stringToArray.js +17 -0
  1645. package/dist/node_modules/lodash/_stringToArray.js.map +1 -0
  1646. package/dist/node_modules/lodash/_stringToPath.js +17 -0
  1647. package/dist/node_modules/lodash/_stringToPath.js.map +1 -0
  1648. package/dist/node_modules/lodash/_toKey.js +17 -0
  1649. package/dist/node_modules/lodash/_toKey.js.map +1 -0
  1650. package/dist/node_modules/lodash/_toSource.js +22 -0
  1651. package/dist/node_modules/lodash/_toSource.js.map +1 -0
  1652. package/dist/node_modules/lodash/_trimmedEndIndex.js +15 -0
  1653. package/dist/node_modules/lodash/_trimmedEndIndex.js.map +1 -0
  1654. package/dist/node_modules/lodash/_unicodeToArray.js +24 -0
  1655. package/dist/node_modules/lodash/_unicodeToArray.js.map +1 -0
  1656. package/dist/node_modules/lodash/constant.js +15 -0
  1657. package/dist/node_modules/lodash/constant.js.map +1 -0
  1658. package/dist/node_modules/lodash/debounce.js +57 -0
  1659. package/dist/node_modules/lodash/debounce.js.map +1 -0
  1660. package/dist/node_modules/lodash/eq.js +13 -0
  1661. package/dist/node_modules/lodash/eq.js.map +1 -0
  1662. package/dist/node_modules/lodash/every.js +20 -0
  1663. package/dist/node_modules/lodash/every.js.map +1 -0
  1664. package/dist/node_modules/lodash/find.js +12 -0
  1665. package/dist/node_modules/lodash/find.js.map +1 -0
  1666. package/dist/node_modules/lodash/findIndex.js +20 -0
  1667. package/dist/node_modules/lodash/findIndex.js.map +1 -0
  1668. package/dist/node_modules/lodash/flatMap.js +16 -0
  1669. package/dist/node_modules/lodash/flatMap.js.map +1 -0
  1670. package/dist/node_modules/lodash/get.js +16 -0
  1671. package/dist/node_modules/lodash/get.js.map +1 -0
  1672. package/dist/node_modules/lodash/hasIn.js +16 -0
  1673. package/dist/node_modules/lodash/hasIn.js.map +1 -0
  1674. package/dist/node_modules/lodash/identity.js +13 -0
  1675. package/dist/node_modules/lodash/identity.js.map +1 -0
  1676. package/dist/node_modules/lodash/isArguments.js +17 -0
  1677. package/dist/node_modules/lodash/isArguments.js.map +1 -0
  1678. package/dist/node_modules/lodash/isArray.js +10 -0
  1679. package/dist/node_modules/lodash/isArray.js.map +1 -0
  1680. package/dist/node_modules/lodash/isArrayLike.js +16 -0
  1681. package/dist/node_modules/lodash/isArrayLike.js.map +1 -0
  1682. package/dist/node_modules/lodash/isBoolean.js +16 -0
  1683. package/dist/node_modules/lodash/isBoolean.js.map +1 -0
  1684. package/dist/node_modules/lodash/isBuffer.js +13 -0
  1685. package/dist/node_modules/lodash/isBuffer.js.map +1 -0
  1686. package/dist/node_modules/lodash/isEqual.js +15 -0
  1687. package/dist/node_modules/lodash/isEqual.js.map +1 -0
  1688. package/dist/node_modules/lodash/isFunction.js +18 -0
  1689. package/dist/node_modules/lodash/isFunction.js.map +1 -0
  1690. package/dist/node_modules/lodash/isLength.js +14 -0
  1691. package/dist/node_modules/lodash/isLength.js.map +1 -0
  1692. package/dist/node_modules/lodash/isNaN.js +15 -0
  1693. package/dist/node_modules/lodash/isNaN.js.map +1 -0
  1694. package/dist/node_modules/lodash/isNil.js +13 -0
  1695. package/dist/node_modules/lodash/isNil.js.map +1 -0
  1696. package/dist/node_modules/lodash/isNumber.js +16 -0
  1697. package/dist/node_modules/lodash/isNumber.js.map +1 -0
  1698. package/dist/node_modules/lodash/isObject.js +14 -0
  1699. package/dist/node_modules/lodash/isObject.js.map +1 -0
  1700. package/dist/node_modules/lodash/isObjectLike.js +13 -0
  1701. package/dist/node_modules/lodash/isObjectLike.js.map +1 -0
  1702. package/dist/node_modules/lodash/isPlainObject.js +21 -0
  1703. package/dist/node_modules/lodash/isPlainObject.js.map +1 -0
  1704. package/dist/node_modules/lodash/isString.js +17 -0
  1705. package/dist/node_modules/lodash/isString.js.map +1 -0
  1706. package/dist/node_modules/lodash/isSymbol.js +16 -0
  1707. package/dist/node_modules/lodash/isSymbol.js.map +1 -0
  1708. package/dist/node_modules/lodash/isTypedArray.js +14 -0
  1709. package/dist/node_modules/lodash/isTypedArray.js.map +1 -0
  1710. package/dist/node_modules/lodash/keys.js +17 -0
  1711. package/dist/node_modules/lodash/keys.js.map +1 -0
  1712. package/dist/node_modules/lodash/last.js +14 -0
  1713. package/dist/node_modules/lodash/last.js.map +1 -0
  1714. package/dist/node_modules/lodash/map.js +18 -0
  1715. package/dist/node_modules/lodash/map.js.map +1 -0
  1716. package/dist/node_modules/lodash/mapValues.js +20 -0
  1717. package/dist/node_modules/lodash/mapValues.js.map +1 -0
  1718. package/dist/node_modules/lodash/max.js +17 -0
  1719. package/dist/node_modules/lodash/max.js.map +1 -0
  1720. package/dist/node_modules/lodash/maxBy.js +17 -0
  1721. package/dist/node_modules/lodash/maxBy.js.map +1 -0
  1722. package/dist/node_modules/lodash/memoize.js +22 -0
  1723. package/dist/node_modules/lodash/memoize.js.map +1 -0
  1724. package/dist/node_modules/lodash/min.js +17 -0
  1725. package/dist/node_modules/lodash/min.js.map +1 -0
  1726. package/dist/node_modules/lodash/minBy.js +17 -0
  1727. package/dist/node_modules/lodash/minBy.js.map +1 -0
  1728. package/dist/node_modules/lodash/noop.js +11 -0
  1729. package/dist/node_modules/lodash/noop.js.map +1 -0
  1730. package/dist/node_modules/lodash/now.js +14 -0
  1731. package/dist/node_modules/lodash/now.js.map +1 -0
  1732. package/dist/node_modules/lodash/property.js +18 -0
  1733. package/dist/node_modules/lodash/property.js.map +1 -0
  1734. package/dist/node_modules/lodash/range.js +11 -0
  1735. package/dist/node_modules/lodash/range.js.map +1 -0
  1736. package/dist/node_modules/lodash/some.js +20 -0
  1737. package/dist/node_modules/lodash/some.js.map +1 -0
  1738. package/dist/node_modules/lodash/sortBy.js +19 -0
  1739. package/dist/node_modules/lodash/sortBy.js.map +1 -0
  1740. package/dist/node_modules/lodash/stubArray.js +13 -0
  1741. package/dist/node_modules/lodash/stubArray.js.map +1 -0
  1742. package/dist/node_modules/lodash/stubFalse.js +13 -0
  1743. package/dist/node_modules/lodash/stubFalse.js.map +1 -0
  1744. package/dist/node_modules/lodash/throttle.js +22 -0
  1745. package/dist/node_modules/lodash/throttle.js.map +1 -0
  1746. package/dist/node_modules/lodash/toFinite.js +15 -0
  1747. package/dist/node_modules/lodash/toFinite.js.map +1 -0
  1748. package/dist/node_modules/lodash/toInteger.js +16 -0
  1749. package/dist/node_modules/lodash/toInteger.js.map +1 -0
  1750. package/dist/node_modules/lodash/toNumber.js +26 -0
  1751. package/dist/node_modules/lodash/toNumber.js.map +1 -0
  1752. package/dist/node_modules/lodash/toString.js +15 -0
  1753. package/dist/node_modules/lodash/toString.js.map +1 -0
  1754. package/dist/node_modules/lodash/uniqBy.js +16 -0
  1755. package/dist/node_modules/lodash/uniqBy.js.map +1 -0
  1756. package/dist/node_modules/lodash/upperFirst.js +11 -0
  1757. package/dist/node_modules/lodash/upperFirst.js.map +1 -0
  1758. package/dist/node_modules/object-assign/index.js +41 -0
  1759. package/dist/node_modules/object-assign/index.js.map +1 -0
  1760. package/dist/node_modules/prop-types/checkPropTypes.js +46 -0
  1761. package/dist/node_modules/prop-types/checkPropTypes.js.map +1 -0
  1762. package/dist/node_modules/prop-types/factoryWithThrowingShims.js +49 -0
  1763. package/dist/node_modules/prop-types/factoryWithThrowingShims.js.map +1 -0
  1764. package/dist/node_modules/prop-types/factoryWithTypeCheckers.js +272 -0
  1765. package/dist/node_modules/prop-types/factoryWithTypeCheckers.js.map +1 -0
  1766. package/dist/node_modules/prop-types/index.js +16 -0
  1767. package/dist/node_modules/prop-types/index.js.map +1 -0
  1768. package/dist/node_modules/prop-types/lib/ReactPropTypesSecret.js +10 -0
  1769. package/dist/node_modules/prop-types/lib/ReactPropTypesSecret.js.map +1 -0
  1770. package/dist/node_modules/prop-types/lib/has.js +10 -0
  1771. package/dist/node_modules/prop-types/lib/has.js.map +1 -0
  1772. package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +84 -0
  1773. package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js.map +1 -0
  1774. package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +64 -0
  1775. package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
  1776. package/dist/node_modules/prop-types/node_modules/react-is/index.js +12 -0
  1777. package/dist/node_modules/prop-types/node_modules/react-is/index.js.map +1 -0
  1778. package/dist/node_modules/react-is/cjs/react-is.development.js +87 -0
  1779. package/dist/node_modules/react-is/cjs/react-is.development.js.map +1 -0
  1780. package/dist/node_modules/react-is/cjs/react-is.production.min.js +65 -0
  1781. package/dist/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
  1782. package/dist/node_modules/react-is/index.js +12 -0
  1783. package/dist/node_modules/react-is/index.js.map +1 -0
  1784. package/dist/node_modules/react-smooth/es6/Animate.js +374 -0
  1785. package/dist/node_modules/react-smooth/es6/Animate.js.map +1 -0
  1786. package/dist/node_modules/react-smooth/es6/AnimateManager.js +73 -0
  1787. package/dist/node_modules/react-smooth/es6/AnimateManager.js.map +1 -0
  1788. package/dist/node_modules/react-smooth/es6/configUpdate.js +173 -0
  1789. package/dist/node_modules/react-smooth/es6/configUpdate.js.map +1 -0
  1790. package/dist/node_modules/react-smooth/es6/easing.js +152 -0
  1791. package/dist/node_modules/react-smooth/es6/easing.js.map +1 -0
  1792. package/dist/node_modules/react-smooth/es6/index.js +9 -0
  1793. package/dist/node_modules/react-smooth/es6/index.js.map +1 -0
  1794. package/dist/node_modules/react-smooth/es6/setRafTimeout.js +14 -0
  1795. package/dist/node_modules/react-smooth/es6/setRafTimeout.js.map +1 -0
  1796. package/dist/node_modules/react-smooth/es6/util.js +92 -0
  1797. package/dist/node_modules/react-smooth/es6/util.js.map +1 -0
  1798. package/dist/node_modules/recharts/es6/cartesian/Area.js +435 -0
  1799. package/dist/node_modules/recharts/es6/cartesian/Area.js.map +1 -0
  1800. package/dist/node_modules/recharts/es6/cartesian/Bar.js +387 -0
  1801. package/dist/node_modules/recharts/es6/cartesian/Bar.js.map +1 -0
  1802. package/dist/node_modules/recharts/es6/cartesian/Brush.js +499 -0
  1803. package/dist/node_modules/recharts/es6/cartesian/Brush.js.map +1 -0
  1804. package/dist/node_modules/recharts/es6/cartesian/CartesianAxis.js +338 -0
  1805. package/dist/node_modules/recharts/es6/cartesian/CartesianAxis.js.map +1 -0
  1806. package/dist/node_modules/recharts/es6/cartesian/CartesianGrid.js +305 -0
  1807. package/dist/node_modules/recharts/es6/cartesian/CartesianGrid.js.map +1 -0
  1808. package/dist/node_modules/recharts/es6/cartesian/ErrorBar.js +243 -0
  1809. package/dist/node_modules/recharts/es6/cartesian/ErrorBar.js.map +1 -0
  1810. package/dist/node_modules/recharts/es6/cartesian/ReferenceArea.js +173 -0
  1811. package/dist/node_modules/recharts/es6/cartesian/ReferenceArea.js.map +1 -0
  1812. package/dist/node_modules/recharts/es6/cartesian/ReferenceDot.js +178 -0
  1813. package/dist/node_modules/recharts/es6/cartesian/ReferenceDot.js.map +1 -0
  1814. package/dist/node_modules/recharts/es6/cartesian/ReferenceLine.js +254 -0
  1815. package/dist/node_modules/recharts/es6/cartesian/ReferenceLine.js.map +1 -0
  1816. package/dist/node_modules/recharts/es6/cartesian/XAxis.js +144 -0
  1817. package/dist/node_modules/recharts/es6/cartesian/XAxis.js.map +1 -0
  1818. package/dist/node_modules/recharts/es6/cartesian/YAxis.js +143 -0
  1819. package/dist/node_modules/recharts/es6/cartesian/YAxis.js.map +1 -0
  1820. package/dist/node_modules/recharts/es6/cartesian/getEquidistantTicks.js +18 -0
  1821. package/dist/node_modules/recharts/es6/cartesian/getEquidistantTicks.js.map +1 -0
  1822. package/dist/node_modules/recharts/es6/cartesian/getTicks.js +121 -0
  1823. package/dist/node_modules/recharts/es6/cartesian/getTicks.js.map +1 -0
  1824. package/dist/node_modules/recharts/es6/chart/AccessibilityManager.js +101 -0
  1825. package/dist/node_modules/recharts/es6/chart/AccessibilityManager.js.map +1 -0
  1826. package/dist/node_modules/recharts/es6/chart/AreaChart.js +22 -0
  1827. package/dist/node_modules/recharts/es6/chart/AreaChart.js.map +1 -0
  1828. package/dist/node_modules/recharts/es6/chart/PieChart.js +34 -0
  1829. package/dist/node_modules/recharts/es6/chart/PieChart.js.map +1 -0
  1830. package/dist/node_modules/recharts/es6/chart/generateCategoricalChart.js +1245 -0
  1831. package/dist/node_modules/recharts/es6/chart/generateCategoricalChart.js.map +1 -0
  1832. package/dist/node_modules/recharts/es6/component/Cell.js +9 -0
  1833. package/dist/node_modules/recharts/es6/component/Cell.js.map +1 -0
  1834. package/dist/node_modules/recharts/es6/component/Cursor.js +93 -0
  1835. package/dist/node_modules/recharts/es6/component/Cursor.js.map +1 -0
  1836. package/dist/node_modules/recharts/es6/component/DefaultLegendContent.js +237 -0
  1837. package/dist/node_modules/recharts/es6/component/DefaultLegendContent.js.map +1 -0
  1838. package/dist/node_modules/recharts/es6/component/DefaultTooltipContent.js +171 -0
  1839. package/dist/node_modules/recharts/es6/component/DefaultTooltipContent.js.map +1 -0
  1840. package/dist/node_modules/recharts/es6/component/Label.js +353 -0
  1841. package/dist/node_modules/recharts/es6/component/Label.js.map +1 -0
  1842. package/dist/node_modules/recharts/es6/component/LabelList.js +166 -0
  1843. package/dist/node_modules/recharts/es6/component/LabelList.js.map +1 -0
  1844. package/dist/node_modules/recharts/es6/component/Legend.js +234 -0
  1845. package/dist/node_modules/recharts/es6/component/Legend.js.map +1 -0
  1846. package/dist/node_modules/recharts/es6/component/ResponsiveContainer.js +187 -0
  1847. package/dist/node_modules/recharts/es6/component/ResponsiveContainer.js.map +1 -0
  1848. package/dist/node_modules/recharts/es6/component/Text.js +225 -0
  1849. package/dist/node_modules/recharts/es6/component/Text.js.map +1 -0
  1850. package/dist/node_modules/recharts/es6/component/Tooltip.js +182 -0
  1851. package/dist/node_modules/recharts/es6/component/Tooltip.js.map +1 -0
  1852. package/dist/node_modules/recharts/es6/component/TooltipBoundingBox.js +198 -0
  1853. package/dist/node_modules/recharts/es6/component/TooltipBoundingBox.js.map +1 -0
  1854. package/dist/node_modules/recharts/es6/container/Layer.js +40 -0
  1855. package/dist/node_modules/recharts/es6/container/Layer.js.map +1 -0
  1856. package/dist/node_modules/recharts/es6/container/Surface.js +60 -0
  1857. package/dist/node_modules/recharts/es6/container/Surface.js.map +1 -0
  1858. package/dist/node_modules/recharts/es6/context/chartLayoutContext.js +57 -0
  1859. package/dist/node_modules/recharts/es6/context/chartLayoutContext.js.map +1 -0
  1860. package/dist/node_modules/recharts/es6/polar/Pie.js +435 -0
  1861. package/dist/node_modules/recharts/es6/polar/Pie.js.map +1 -0
  1862. package/dist/node_modules/recharts/es6/polar/PolarAngleAxis.js +215 -0
  1863. package/dist/node_modules/recharts/es6/polar/PolarAngleAxis.js.map +1 -0
  1864. package/dist/node_modules/recharts/es6/polar/PolarRadiusAxis.js +268 -0
  1865. package/dist/node_modules/recharts/es6/polar/PolarRadiusAxis.js.map +1 -0
  1866. package/dist/node_modules/recharts/es6/shape/Cross.js +112 -0
  1867. package/dist/node_modules/recharts/es6/shape/Cross.js.map +1 -0
  1868. package/dist/node_modules/recharts/es6/shape/Curve.js +136 -0
  1869. package/dist/node_modules/recharts/es6/shape/Curve.js.map +1 -0
  1870. package/dist/node_modules/recharts/es6/shape/Dot.js +27 -0
  1871. package/dist/node_modules/recharts/es6/shape/Dot.js.map +1 -0
  1872. package/dist/node_modules/recharts/es6/shape/Polygon.js +112 -0
  1873. package/dist/node_modules/recharts/es6/shape/Polygon.js.map +1 -0
  1874. package/dist/node_modules/recharts/es6/shape/Rectangle.js +205 -0
  1875. package/dist/node_modules/recharts/es6/shape/Rectangle.js.map +1 -0
  1876. package/dist/node_modules/recharts/es6/shape/Sector.js +192 -0
  1877. package/dist/node_modules/recharts/es6/shape/Sector.js.map +1 -0
  1878. package/dist/node_modules/recharts/es6/shape/Symbols.js +143 -0
  1879. package/dist/node_modules/recharts/es6/shape/Symbols.js.map +1 -0
  1880. package/dist/node_modules/recharts/es6/shape/Trapezoid.js +175 -0
  1881. package/dist/node_modules/recharts/es6/shape/Trapezoid.js.map +1 -0
  1882. package/dist/node_modules/recharts/es6/util/ActiveShapeUtils.js +181 -0
  1883. package/dist/node_modules/recharts/es6/util/ActiveShapeUtils.js.map +1 -0
  1884. package/dist/node_modules/recharts/es6/util/BarUtils.js +112 -0
  1885. package/dist/node_modules/recharts/es6/util/BarUtils.js.map +1 -0
  1886. package/dist/node_modules/recharts/es6/util/CartesianUtils.js +234 -0
  1887. package/dist/node_modules/recharts/es6/util/CartesianUtils.js.map +1 -0
  1888. package/dist/node_modules/recharts/es6/util/ChartUtils.js +562 -0
  1889. package/dist/node_modules/recharts/es6/util/ChartUtils.js.map +1 -0
  1890. package/dist/node_modules/recharts/es6/util/CssPrefixUtils.js +70 -0
  1891. package/dist/node_modules/recharts/es6/util/CssPrefixUtils.js.map +1 -0
  1892. package/dist/node_modules/recharts/es6/util/DOMUtils.js +108 -0
  1893. package/dist/node_modules/recharts/es6/util/DOMUtils.js.map +1 -0
  1894. package/dist/node_modules/recharts/es6/util/DataUtils.js +57 -0
  1895. package/dist/node_modules/recharts/es6/util/DataUtils.js.map +1 -0
  1896. package/dist/node_modules/recharts/es6/util/DetectReferenceElementsDomain.js +58 -0
  1897. package/dist/node_modules/recharts/es6/util/DetectReferenceElementsDomain.js.map +1 -0
  1898. package/dist/node_modules/recharts/es6/util/Events.js +7 -0
  1899. package/dist/node_modules/recharts/es6/util/Events.js.map +1 -0
  1900. package/dist/node_modules/recharts/es6/util/Global.js +21 -0
  1901. package/dist/node_modules/recharts/es6/util/Global.js.map +1 -0
  1902. package/dist/node_modules/recharts/es6/util/IfOverflowMatches.js +9 -0
  1903. package/dist/node_modules/recharts/es6/util/IfOverflowMatches.js.map +1 -0
  1904. package/dist/node_modules/recharts/es6/util/LogUtils.js +15 -0
  1905. package/dist/node_modules/recharts/es6/util/LogUtils.js.map +1 -0
  1906. package/dist/node_modules/recharts/es6/util/PolarUtils.js +198 -0
  1907. package/dist/node_modules/recharts/es6/util/PolarUtils.js.map +1 -0
  1908. package/dist/node_modules/recharts/es6/util/ReactUtils.js +137 -0
  1909. package/dist/node_modules/recharts/es6/util/ReactUtils.js.map +1 -0
  1910. package/dist/node_modules/recharts/es6/util/ReduceCSSCalc.js +181 -0
  1911. package/dist/node_modules/recharts/es6/util/ReduceCSSCalc.js.map +1 -0
  1912. package/dist/node_modules/recharts/es6/util/ShallowEqual.js +10 -0
  1913. package/dist/node_modules/recharts/es6/util/ShallowEqual.js.map +1 -0
  1914. package/dist/node_modules/recharts/es6/util/TickUtils.js +31 -0
  1915. package/dist/node_modules/recharts/es6/util/TickUtils.js.map +1 -0
  1916. package/dist/node_modules/recharts/es6/util/calculateViewBox.js +25 -0
  1917. package/dist/node_modules/recharts/es6/util/calculateViewBox.js.map +1 -0
  1918. package/dist/node_modules/recharts/es6/util/cursor/getCursorPoints.js +23 -0
  1919. package/dist/node_modules/recharts/es6/util/cursor/getCursorPoints.js.map +1 -0
  1920. package/dist/node_modules/recharts/es6/util/cursor/getCursorRectangle.js +16 -0
  1921. package/dist/node_modules/recharts/es6/util/cursor/getCursorRectangle.js.map +1 -0
  1922. package/dist/node_modules/recharts/es6/util/cursor/getRadialCursorPoints.js +17 -0
  1923. package/dist/node_modules/recharts/es6/util/cursor/getRadialCursorPoints.js.map +1 -0
  1924. package/dist/node_modules/recharts/es6/util/getEveryNthWithCondition.js +12 -0
  1925. package/dist/node_modules/recharts/es6/util/getEveryNthWithCondition.js.map +1 -0
  1926. package/dist/node_modules/recharts/es6/util/getLegendProps.js +88 -0
  1927. package/dist/node_modules/recharts/es6/util/getLegendProps.js.map +1 -0
  1928. package/dist/node_modules/recharts/es6/util/isDomainSpecifiedByUser.js +13 -0
  1929. package/dist/node_modules/recharts/es6/util/isDomainSpecifiedByUser.js.map +1 -0
  1930. package/dist/node_modules/recharts/es6/util/payload/getUniqPayload.js +12 -0
  1931. package/dist/node_modules/recharts/es6/util/payload/getUniqPayload.js.map +1 -0
  1932. package/dist/node_modules/recharts/es6/util/tooltip/translate.js +87 -0
  1933. package/dist/node_modules/recharts/es6/util/tooltip/translate.js.map +1 -0
  1934. package/dist/node_modules/recharts/es6/util/types.js +43 -0
  1935. package/dist/node_modules/recharts/es6/util/types.js.map +1 -0
  1936. package/dist/node_modules/recharts-scale/es6/getNiceTickValues.js +132 -0
  1937. package/dist/node_modules/recharts-scale/es6/getNiceTickValues.js.map +1 -0
  1938. package/dist/node_modules/recharts-scale/es6/index.js +1 -0
  1939. package/dist/node_modules/recharts-scale/es6/util/arithmetic.js +32 -0
  1940. package/dist/node_modules/recharts-scale/es6/util/arithmetic.js.map +1 -0
  1941. package/dist/node_modules/recharts-scale/es6/util/utils.js +79 -0
  1942. package/dist/node_modules/recharts-scale/es6/util/utils.js.map +1 -0
  1943. package/dist/node_modules/tiny-invariant/dist/esm/tiny-invariant.js +13 -0
  1944. package/dist/node_modules/tiny-invariant/dist/esm/tiny-invariant.js.map +1 -0
  1945. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js +56 -0
  1946. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js.map +1 -0
  1947. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js +54 -0
  1948. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js.map +1 -0
  1949. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +54 -0
  1950. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +1 -0
  1951. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js +46 -0
  1952. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js.map +1 -0
  1953. package/dist/node_modules/use-sync-external-store/shim/index.js +12 -0
  1954. package/dist/node_modules/use-sync-external-store/shim/index.js.map +1 -0
  1955. package/dist/node_modules/use-sync-external-store/shim/with-selector.js +12 -0
  1956. package/dist/node_modules/use-sync-external-store/shim/with-selector.js.map +1 -0
  1957. package/dist/node_modules/victory-vendor/es/d3-scale.js +53 -0
  1958. package/dist/node_modules/victory-vendor/es/d3-scale.js.map +1 -0
  1959. package/dist/node_modules/zustand/esm/traditional.js +17 -0
  1960. package/dist/node_modules/zustand/esm/traditional.js.map +1 -0
  1961. package/dist/node_modules/zustand/esm/vanilla/shallow.js +21 -0
  1962. package/dist/node_modules/zustand/esm/vanilla/shallow.js.map +1 -0
  1963. package/dist/node_modules/zustand/esm/vanilla.js +20 -0
  1964. package/dist/node_modules/zustand/esm/vanilla.js.map +1 -0
  1965. package/dist/pages/ActionsPage.d.ts +2 -0
  1966. package/dist/pages/ActionsPage.d.ts.map +1 -0
  1967. package/dist/pages/ActionsPage.js +594 -0
  1968. package/dist/pages/ActionsPage.js.map +1 -0
  1969. package/dist/pages/AgentDetailsPage.d.ts +5 -0
  1970. package/dist/pages/AgentDetailsPage.d.ts.map +1 -0
  1971. package/dist/pages/AgentDetailsPage.js +1714 -0
  1972. package/dist/pages/AgentDetailsPage.js.map +1 -0
  1973. package/dist/pages/AgentGraphPage.d.ts +9 -0
  1974. package/dist/pages/AgentGraphPage.d.ts.map +1 -0
  1975. package/dist/pages/AgentGraphPage.js +179 -0
  1976. package/dist/pages/AgentGraphPage.js.map +1 -0
  1977. package/dist/pages/AgentsLandingPage.d.ts +12 -0
  1978. package/dist/pages/AgentsLandingPage.d.ts.map +1 -0
  1979. package/dist/pages/AgentsLandingPage.js +84 -0
  1980. package/dist/pages/AgentsLandingPage.js.map +1 -0
  1981. package/dist/pages/AgentsPage.d.ts +5 -0
  1982. package/dist/pages/AgentsPage.d.ts.map +1 -0
  1983. package/dist/pages/AgentsPage.js +701 -0
  1984. package/dist/pages/AgentsPage.js.map +1 -0
  1985. package/dist/pages/AnalyticsPage.d.ts +2 -0
  1986. package/dist/pages/AnalyticsPage.d.ts.map +1 -0
  1987. package/dist/pages/AnalyticsPage.js +507 -0
  1988. package/dist/pages/AnalyticsPage.js.map +1 -0
  1989. package/dist/pages/CatalogDetailPage.d.ts +2 -0
  1990. package/dist/pages/CatalogDetailPage.d.ts.map +1 -0
  1991. package/dist/pages/CatalogDetailPage.js +842 -0
  1992. package/dist/pages/CatalogDetailPage.js.map +1 -0
  1993. package/dist/pages/CatalogDocsPage.d.ts +2 -0
  1994. package/dist/pages/CatalogDocsPage.d.ts.map +1 -0
  1995. package/dist/pages/CatalogDocsPage.js +154 -0
  1996. package/dist/pages/CatalogDocsPage.js.map +1 -0
  1997. package/dist/pages/CatalogPage.d.ts +2 -0
  1998. package/dist/pages/CatalogPage.d.ts.map +1 -0
  1999. package/dist/pages/CatalogPage.js +189 -0
  2000. package/dist/pages/CatalogPage.js.map +1 -0
  2001. package/dist/pages/ComponentDetailPage.d.ts +2 -0
  2002. package/dist/pages/ComponentDetailPage.d.ts.map +1 -0
  2003. package/dist/pages/ComponentDetailPage.js +557 -0
  2004. package/dist/pages/ComponentDetailPage.js.map +1 -0
  2005. package/dist/pages/ComponentDocsPage.d.ts +2 -0
  2006. package/dist/pages/ComponentDocsPage.d.ts.map +1 -0
  2007. package/dist/pages/ComponentDocsPage.js +154 -0
  2008. package/dist/pages/ComponentDocsPage.js.map +1 -0
  2009. package/dist/pages/ComponentsPage.d.ts +2 -0
  2010. package/dist/pages/ComponentsPage.d.ts.map +1 -0
  2011. package/dist/pages/ComponentsPage.js +250 -0
  2012. package/dist/pages/ComponentsPage.js.map +1 -0
  2013. package/dist/pages/GettingStartedPage.d.ts +16 -0
  2014. package/dist/pages/GettingStartedPage.d.ts.map +1 -0
  2015. package/dist/pages/GettingStartedPage.js +261 -0
  2016. package/dist/pages/GettingStartedPage.js.map +1 -0
  2017. package/dist/pages/HealthPage.d.ts +2 -0
  2018. package/dist/pages/HealthPage.d.ts.map +1 -0
  2019. package/dist/pages/HealthPage.js +383 -0
  2020. package/dist/pages/HealthPage.js.map +1 -0
  2021. package/dist/pages/LogsPage.d.ts +2 -0
  2022. package/dist/pages/LogsPage.d.ts.map +1 -0
  2023. package/dist/pages/NoteDetailsPage.d.ts +2 -0
  2024. package/dist/pages/NoteDetailsPage.d.ts.map +1 -0
  2025. package/dist/pages/NoteDetailsPage.js +163 -0
  2026. package/dist/pages/NoteDetailsPage.js.map +1 -0
  2027. package/dist/pages/OverviewPage.d.ts +9 -0
  2028. package/dist/pages/OverviewPage.d.ts.map +1 -0
  2029. package/dist/pages/OverviewPage.js +419 -0
  2030. package/dist/pages/OverviewPage.js.map +1 -0
  2031. package/dist/pages/SessionDetailsPage.d.ts +6 -0
  2032. package/dist/pages/SessionDetailsPage.d.ts.map +1 -0
  2033. package/dist/pages/SessionDetailsPage.js +707 -0
  2034. package/dist/pages/SessionDetailsPage.js.map +1 -0
  2035. package/dist/pages/SessionsPage.d.ts +6 -0
  2036. package/dist/pages/SessionsPage.d.ts.map +1 -0
  2037. package/dist/pages/SessionsPage.js +1382 -0
  2038. package/dist/pages/SessionsPage.js.map +1 -0
  2039. package/dist/pages/SettingsPage.d.ts +2 -0
  2040. package/dist/pages/SettingsPage.d.ts.map +1 -0
  2041. package/dist/pages/SettingsPage.js +238 -0
  2042. package/dist/pages/SettingsPage.js.map +1 -0
  2043. package/dist/pages/SharedSessionPage.d.ts +13 -0
  2044. package/dist/pages/SharedSessionPage.d.ts.map +1 -0
  2045. package/dist/pages/SharedSessionPage.js +471 -0
  2046. package/dist/pages/SharedSessionPage.js.map +1 -0
  2047. package/dist/pages/SharedVibeDeckPage.d.ts +8 -0
  2048. package/dist/pages/SharedVibeDeckPage.d.ts.map +1 -0
  2049. package/dist/pages/SharedVibeDeckPage.js +262 -0
  2050. package/dist/pages/SharedVibeDeckPage.js.map +1 -0
  2051. package/dist/pages/TargetDetailsPage.d.ts +13 -0
  2052. package/dist/pages/TargetDetailsPage.d.ts.map +1 -0
  2053. package/dist/pages/TargetDetailsPage.js +266 -0
  2054. package/dist/pages/TargetDetailsPage.js.map +1 -0
  2055. package/dist/pages/TargetsPage.d.ts +8 -0
  2056. package/dist/pages/TargetsPage.d.ts.map +1 -0
  2057. package/dist/pages/TargetsPage.js +1113 -0
  2058. package/dist/pages/TargetsPage.js.map +1 -0
  2059. package/dist/pages/TemplateDetailPage.d.ts +2 -0
  2060. package/dist/pages/TemplateDetailPage.d.ts.map +1 -0
  2061. package/dist/pages/TemplateDetailPage.js +302 -0
  2062. package/dist/pages/TemplateDetailPage.js.map +1 -0
  2063. package/dist/pages/TemplatesPage.d.ts +2 -0
  2064. package/dist/pages/TemplatesPage.d.ts.map +1 -0
  2065. package/dist/pages/TemplatesPage.js +173 -0
  2066. package/dist/pages/TemplatesPage.js.map +1 -0
  2067. package/dist/pages/TunnelsLandingPage.d.ts +8 -0
  2068. package/dist/pages/TunnelsLandingPage.d.ts.map +1 -0
  2069. package/dist/pages/TunnelsLandingPage.js +69 -0
  2070. package/dist/pages/TunnelsLandingPage.js.map +1 -0
  2071. package/dist/pages/VibeAuditPage.d.ts +2 -0
  2072. package/dist/pages/VibeAuditPage.d.ts.map +1 -0
  2073. package/dist/pages/VibeAuditPage.js +233 -0
  2074. package/dist/pages/VibeAuditPage.js.map +1 -0
  2075. package/dist/pages/VibeCalendarPage.d.ts +9 -0
  2076. package/dist/pages/VibeCalendarPage.d.ts.map +1 -0
  2077. package/dist/pages/VibeCalendarPage.js +221 -0
  2078. package/dist/pages/VibeCalendarPage.js.map +1 -0
  2079. package/dist/pages/VibeDeckPage.d.ts +2 -0
  2080. package/dist/pages/VibeDeckPage.d.ts.map +1 -0
  2081. package/dist/pages/VibeDeckPage.js +884 -0
  2082. package/dist/pages/VibeDeckPage.js.map +1 -0
  2083. package/dist/pages/VibeDetailsPage.d.ts +5 -0
  2084. package/dist/pages/VibeDetailsPage.d.ts.map +1 -0
  2085. package/dist/pages/VibeDetailsPage.js +1321 -0
  2086. package/dist/pages/VibeDetailsPage.js.map +1 -0
  2087. package/dist/pages/VibeDocsPage.d.ts +2 -0
  2088. package/dist/pages/VibeDocsPage.d.ts.map +1 -0
  2089. package/dist/pages/VibeDocsPage.js +154 -0
  2090. package/dist/pages/VibeDocsPage.js.map +1 -0
  2091. package/dist/pages/VibeTaskDetailPage.d.ts +9 -0
  2092. package/dist/pages/VibeTaskDetailPage.d.ts.map +1 -0
  2093. package/dist/pages/VibeTaskDetailPage.js +264 -0
  2094. package/dist/pages/VibeTaskDetailPage.js.map +1 -0
  2095. package/dist/pages/VibesPage.d.ts +5 -0
  2096. package/dist/pages/VibesPage.d.ts.map +1 -0
  2097. package/dist/pages/VibesPage.js +600 -0
  2098. package/dist/pages/VibesPage.js.map +1 -0
  2099. package/dist/pages/WebhooksPage.d.ts +5 -0
  2100. package/dist/pages/WebhooksPage.d.ts.map +1 -0
  2101. package/dist/pages/ai/AIPage.d.ts +6 -0
  2102. package/dist/pages/ai/AIPage.d.ts.map +1 -0
  2103. package/dist/pages/ai/AIPage.js +187 -0
  2104. package/dist/pages/ai/AIPage.js.map +1 -0
  2105. package/dist/pages/ai/AISessionDetailPage.d.ts +5 -0
  2106. package/dist/pages/ai/AISessionDetailPage.d.ts.map +1 -0
  2107. package/dist/pages/ai/AISessionDetailPage.js +441 -0
  2108. package/dist/pages/ai/AISessionDetailPage.js.map +1 -0
  2109. package/dist/pages/ai/AgentManagerPage.d.ts +9 -0
  2110. package/dist/pages/ai/AgentManagerPage.d.ts.map +1 -0
  2111. package/dist/pages/ai/AgentManagerPage.js +159 -0
  2112. package/dist/pages/ai/AgentManagerPage.js.map +1 -0
  2113. package/dist/pages/index.d.ts +17 -0
  2114. package/dist/pages/index.d.ts.map +1 -0
  2115. package/dist/pages/tunnels/AuditTab.d.ts +8 -0
  2116. package/dist/pages/tunnels/AuditTab.d.ts.map +1 -0
  2117. package/dist/pages/tunnels/AuditTab.js +22 -0
  2118. package/dist/pages/tunnels/AuditTab.js.map +1 -0
  2119. package/dist/pages/tunnels/DomainsTab.d.ts +2 -0
  2120. package/dist/pages/tunnels/DomainsTab.d.ts.map +1 -0
  2121. package/dist/pages/tunnels/DomainsTab.js +110 -0
  2122. package/dist/pages/tunnels/DomainsTab.js.map +1 -0
  2123. package/dist/pages/tunnels/ProvidersTab.d.ts +2 -0
  2124. package/dist/pages/tunnels/ProvidersTab.d.ts.map +1 -0
  2125. package/dist/pages/tunnels/ProvidersTab.js +111 -0
  2126. package/dist/pages/tunnels/ProvidersTab.js.map +1 -0
  2127. package/dist/pages/tunnels/SessionsTab.d.ts +8 -0
  2128. package/dist/pages/tunnels/SessionsTab.d.ts.map +1 -0
  2129. package/dist/pages/tunnels/SessionsTab.js +63 -0
  2130. package/dist/pages/tunnels/SessionsTab.js.map +1 -0
  2131. package/dist/pages/tunnels/TunnelDetailsPage.d.ts +2 -0
  2132. package/dist/pages/tunnels/TunnelDetailsPage.d.ts.map +1 -0
  2133. package/dist/pages/tunnels/TunnelDetailsPage.js +121 -0
  2134. package/dist/pages/tunnels/TunnelDetailsPage.js.map +1 -0
  2135. package/dist/pages/tunnels/TunnelsTab.d.ts +2 -0
  2136. package/dist/pages/tunnels/TunnelsTab.d.ts.map +1 -0
  2137. package/dist/pages/tunnels/TunnelsTab.js +174 -0
  2138. package/dist/pages/tunnels/TunnelsTab.js.map +1 -0
  2139. package/dist/pages/tunnels/UsageTab.d.ts +8 -0
  2140. package/dist/pages/tunnels/UsageTab.d.ts.map +1 -0
  2141. package/dist/pages/tunnels/UsageTab.js +22 -0
  2142. package/dist/pages/tunnels/UsageTab.js.map +1 -0
  2143. package/dist/pages/tunnels/tabs/TunnelAuditTab.d.ts +4 -0
  2144. package/dist/pages/tunnels/tabs/TunnelAuditTab.d.ts.map +1 -0
  2145. package/dist/pages/tunnels/tabs/TunnelAuditTab.js +68 -0
  2146. package/dist/pages/tunnels/tabs/TunnelAuditTab.js.map +1 -0
  2147. package/dist/pages/tunnels/tabs/TunnelCliTab.d.ts +8 -0
  2148. package/dist/pages/tunnels/tabs/TunnelCliTab.d.ts.map +1 -0
  2149. package/dist/pages/tunnels/tabs/TunnelCliTab.js +63 -0
  2150. package/dist/pages/tunnels/tabs/TunnelCliTab.js.map +1 -0
  2151. package/dist/pages/tunnels/tabs/TunnelDomainsTab.d.ts +8 -0
  2152. package/dist/pages/tunnels/tabs/TunnelDomainsTab.d.ts.map +1 -0
  2153. package/dist/pages/tunnels/tabs/TunnelDomainsTab.js +120 -0
  2154. package/dist/pages/tunnels/tabs/TunnelDomainsTab.js.map +1 -0
  2155. package/dist/pages/tunnels/tabs/TunnelEndpointsTab.d.ts +8 -0
  2156. package/dist/pages/tunnels/tabs/TunnelEndpointsTab.d.ts.map +1 -0
  2157. package/dist/pages/tunnels/tabs/TunnelEndpointsTab.js +56 -0
  2158. package/dist/pages/tunnels/tabs/TunnelEndpointsTab.js.map +1 -0
  2159. package/dist/pages/tunnels/tabs/TunnelOverviewTab.d.ts +8 -0
  2160. package/dist/pages/tunnels/tabs/TunnelOverviewTab.d.ts.map +1 -0
  2161. package/dist/pages/tunnels/tabs/TunnelOverviewTab.js +137 -0
  2162. package/dist/pages/tunnels/tabs/TunnelOverviewTab.js.map +1 -0
  2163. package/dist/pages/tunnels/tabs/TunnelSessionsTab.d.ts +4 -0
  2164. package/dist/pages/tunnels/tabs/TunnelSessionsTab.d.ts.map +1 -0
  2165. package/dist/pages/tunnels/tabs/TunnelSessionsTab.js +104 -0
  2166. package/dist/pages/tunnels/tabs/TunnelSessionsTab.js.map +1 -0
  2167. package/dist/pages/tunnels/tabs/TunnelSettingsTab.d.ts +9 -0
  2168. package/dist/pages/tunnels/tabs/TunnelSettingsTab.d.ts.map +1 -0
  2169. package/dist/pages/tunnels/tabs/TunnelSettingsTab.js +67 -0
  2170. package/dist/pages/tunnels/tabs/TunnelSettingsTab.js.map +1 -0
  2171. package/dist/pages/tunnels/tabs/TunnelUsageTab.d.ts +4 -0
  2172. package/dist/pages/tunnels/tabs/TunnelUsageTab.d.ts.map +1 -0
  2173. package/dist/pages/tunnels/tabs/TunnelUsageTab.js +127 -0
  2174. package/dist/pages/tunnels/tabs/TunnelUsageTab.js.map +1 -0
  2175. package/dist/plugin.d.ts +4 -0
  2176. package/dist/plugin.d.ts.map +1 -0
  2177. package/dist/plugin.js +84 -0
  2178. package/dist/plugin.js.map +1 -0
  2179. package/dist/providers/AgentEventsProvider.d.ts +79 -0
  2180. package/dist/providers/AgentEventsProvider.d.ts.map +1 -0
  2181. package/dist/providers/AgentEventsProvider.js +42 -0
  2182. package/dist/providers/AgentEventsProvider.js.map +1 -0
  2183. package/dist/providers/VibeControlsProvider.d.ts +29 -0
  2184. package/dist/providers/VibeControlsProvider.d.ts.map +1 -0
  2185. package/dist/providers/VibeControlsProvider.js +126 -0
  2186. package/dist/providers/VibeControlsProvider.js.map +1 -0
  2187. package/dist/services/aiApi.d.ts +310 -0
  2188. package/dist/services/aiApi.d.ts.map +1 -0
  2189. package/dist/services/aiApi.js +336 -0
  2190. package/dist/services/aiApi.js.map +1 -0
  2191. package/dist/services/assistantApi.d.ts +71 -0
  2192. package/dist/services/assistantApi.d.ts.map +1 -0
  2193. package/dist/services/assistantApi.js +235 -0
  2194. package/dist/services/assistantApi.js.map +1 -0
  2195. package/dist/services/assistantExportService.d.ts +9 -0
  2196. package/dist/services/assistantExportService.d.ts.map +1 -0
  2197. package/dist/services/assistantExportService.js +44 -0
  2198. package/dist/services/assistantExportService.js.map +1 -0
  2199. package/dist/services/schedulerApi.d.ts +18 -0
  2200. package/dist/services/schedulerApi.d.ts.map +1 -0
  2201. package/dist/services/schedulerApi.js +39 -0
  2202. package/dist/services/schedulerApi.js.map +1 -0
  2203. package/dist/shared/hooks/useTr.d.ts +17 -0
  2204. package/dist/shared/hooks/useTr.d.ts.map +1 -0
  2205. package/dist/shared/hooks/useTr.js +14 -0
  2206. package/dist/shared/hooks/useTr.js.map +1 -0
  2207. package/dist/store/agentManagerStore.d.ts +65 -0
  2208. package/dist/store/agentManagerStore.d.ts.map +1 -0
  2209. package/dist/store/agentManagerStore.js +244 -0
  2210. package/dist/store/agentManagerStore.js.map +1 -0
  2211. package/dist/store/assistantStore.d.ts +56 -0
  2212. package/dist/store/assistantStore.d.ts.map +1 -0
  2213. package/dist/store/assistantStore.js +165 -0
  2214. package/dist/store/assistantStore.js.map +1 -0
  2215. package/dist/store/vibeControlsStore.d.ts +68 -0
  2216. package/dist/store/vibeControlsStore.d.ts.map +1 -0
  2217. package/dist/store/vibeControlsStore.js +123 -0
  2218. package/dist/store/vibeControlsStore.js.map +1 -0
  2219. package/dist/translations/en.d.ts +2174 -0
  2220. package/dist/translations/en.d.ts.map +1 -0
  2221. package/dist/translations/en.js +2130 -0
  2222. package/dist/translations/en.js.map +1 -0
  2223. package/dist/types/agentManager.d.ts +72 -0
  2224. package/dist/types/agentManager.d.ts.map +1 -0
  2225. package/dist/types/assistant.d.ts +58 -0
  2226. package/dist/types/assistant.d.ts.map +1 -0
  2227. package/dist/types/assistant.js +7 -0
  2228. package/dist/types/assistant.js.map +1 -0
  2229. package/dist/types/index.d.ts +134 -0
  2230. package/dist/types/index.d.ts.map +1 -0
  2231. package/dist/utils/agentStatus.d.ts +42 -0
  2232. package/dist/utils/agentStatus.d.ts.map +1 -0
  2233. package/dist/utils/agentStatus.js +9 -0
  2234. package/dist/utils/agentStatus.js.map +1 -0
  2235. package/dist/utils/aiSessionNotFound.d.ts +2 -0
  2236. package/dist/utils/aiSessionNotFound.d.ts.map +1 -0
  2237. package/dist/utils/aiSessionNotFound.js +18 -0
  2238. package/dist/utils/aiSessionNotFound.js.map +1 -0
  2239. package/dist/utils/nativeBridge.d.ts +3 -0
  2240. package/dist/utils/nativeBridge.d.ts.map +1 -0
  2241. package/dist/utils/nativeBridge.js +2 -0
  2242. package/dist/utils/pageContext.d.ts +23 -0
  2243. package/dist/utils/pageContext.d.ts.map +1 -0
  2244. package/dist/utils/pageContext.js +16 -0
  2245. package/dist/utils/pageContext.js.map +1 -0
  2246. package/dist/utils/quotaUtils.d.ts +8 -0
  2247. package/dist/utils/quotaUtils.d.ts.map +1 -0
  2248. package/dist/utils/quotaUtils.js +88 -0
  2249. package/dist/utils/quotaUtils.js.map +1 -0
  2250. package/dist/utils/relativeTime.d.ts +3 -0
  2251. package/dist/utils/relativeTime.d.ts.map +1 -0
  2252. package/dist/utils/relativeTime.js +24 -0
  2253. package/dist/utils/relativeTime.js.map +1 -0
  2254. package/package.json +127 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentDetailsPage.js","names":[],"sources":["../../src/pages/AgentDetailsPage.tsx"],"sourcesContent":["import { useState, useRef, useEffect, useCallback, useMemo } from 'react';\nimport { usePermissions } from '@burdenoff/fe-libs/shared/providers/shell';\nimport { VIBE_PERMISSIONS } from '../constants/permissions';\nimport { isNative, nativeCopyText, nativeToast } from '../utils/nativeBridge';\nimport { EntityTagPicker } from '@/components/shared/EntityTagPicker';\nimport { useParams } from 'react-router-dom';\nimport { MotionPage } from '@burdenoff/fe-libs/shared/motion';\nimport { AnimatePresence, motion } from 'framer-motion';\nimport { useVibeControlsStore } from '@/store/vibeControlsStore';\nimport { AgentBackupTab } from '@/components/agents/backup/AgentBackupTab';\nimport {\n ArrowLeft,\n Database,\n Server,\n Play,\n Square,\n Settings,\n Trash2,\n Terminal,\n Zap,\n Cpu,\n HardDrive,\n Clock,\n CheckCircle2,\n RefreshCw,\n Eye,\n EyeOff,\n Key,\n Copy,\n Check,\n Info,\n Puzzle,\n Download,\n X,\n Loader2,\n Shield,\n Link2,\n Unlink,\n Search,\n Monitor,\n FileText,\n Tag,\n ScrollText,\n} from 'lucide-react';\nimport {\n PageHeader,\n Card,\n StatusBadge,\n EmptyState,\n LoadingState,\n ErrorState,\n QuotaExhaustedDialog,\n} from '@/components/shared';\nimport { useI18n } from '@burdenoff/fe-libs/shared/providers/shell/I18nProvider';\nimport { PluginUIPanel, type UIPluginOption, OpenInBrowserEditorButton } from '@/components/agents';\nimport { LogViewer } from '@/components/logs/LogViewer';\nimport { NotesTabPanel } from '@/components/notes';\nimport { useVibeControls, useVibeNavigate } from '@/providers/VibeControlsProvider';\nimport { useQueryBackedTab } from '@/hooks/useQueryBackedTab';\nimport { isQuotaExhaustedError } from '@/utils/quotaUtils';\nimport {\n useGetAgentQuery,\n useAgentHeartbeatMutation,\n useUpdateAgentMutation,\n useDeleteAgentMutation,\n useCheckSessionHealthMutation,\n useAgentPluginsLazyQuery,\n useInstallAgentPluginMutation,\n useRemoveAgentPluginMutation,\n useSetupAgentGatewayAuthMutation,\n} from '@/generated/wspace-operations';\n\n// ─── Gateway Auth Card ─────────────────────────────────────────────────────\n// Shows whether the agent has a linked OAuth2 app for gateway communication.\n// Allows creating a new app via auth-svc and pushing credentials to the agent.\n\ninterface GatewayAuthAgent {\n id: string;\n name: string;\n appId?: string | null;\n appClientId?: string | null;\n tunnelUrl?: string | null;\n agentApiKey?: string | null;\n metadata?: Record<string, unknown> | null;\n}\n\nfunction GatewayAuthCard({ agent, onUpdate }: { agent: GatewayAuthAgent; onUpdate: () => void }) {\n const { t } = useI18n();\n const [updateAgent] = useUpdateAgentMutation();\n const [setupGatewayAuth] = useSetupAgentGatewayAuthMutation();\n const [loading, setLoading] = useState(false);\n const [error, setError] = useState<string | null>(null);\n const [showSecret, setShowSecret] = useState(false);\n const [oneTimeSecret, setOneTimeSecret] = useState<string | null>(null);\n const [secretCopied, setSecretCopied] = useState(false);\n const [clientIdCopied, setClientIdCopied] = useState(false);\n const [unlinking, setUnlinking] = useState(false);\n\n const hasApp = Boolean(agent.appId && agent.appClientId);\n\n const tr = (key: string, fallback: string, params?: Record<string, string | number>): string => {\n const translated = t(key, params);\n const template = translated === key ? fallback : translated;\n\n if (!params) return template;\n\n return Object.entries(params).reduce(\n (acc, [paramKey, paramValue]) => acc.replace(`{{${paramKey}}}`, String(paramValue)),\n template\n );\n };\n const devportalAppId = (agent.metadata as Record<string, unknown> | null)\n ?.devportalApplicationId as string | undefined;\n\n // Single backend-orchestrated mutation: creates auth-svc app + devportal app + pushes creds to agent\n const handleSetupGatewayAuth = async () => {\n setLoading(true);\n setError(null);\n\n try {\n const { data } = await setupGatewayAuth({\n variables: {\n input: {\n agentId: agent.id,\n },\n },\n });\n\n const result = data?.setupAgentGatewayAuth;\n if (!result) {\n throw new Error(\n tr(\n 'agentDetails.gatewayAuthNoResultError',\n 'No result returned from setupAgentGatewayAuth'\n )\n );\n }\n\n // Show the one-time secret\n setOneTimeSecret(result.clientSecret);\n\n // Show warning if push to agent failed (creds still created)\n if (result.error) {\n setError(result.error);\n }\n\n onUpdate();\n } catch (err) {\n setError(\n err instanceof Error\n ? err.message\n : tr('agentDetails.failedSetupGatewayAuth', 'Failed to set up gateway auth')\n );\n } finally {\n setLoading(false);\n }\n };\n\n // Unlink the app (remove appId/appClientId from agent record)\n const handleUnlink = async () => {\n if (\n !window.confirm(\n tr(\n 'agentDetails.confirmUnlinkOauthApp',\n 'Remove the linked OAuth app from this agent? The app will still exist in auth-svc.'\n )\n )\n )\n return;\n setUnlinking(true);\n setError(null);\n try {\n await updateAgent({\n variables: {\n id: agent.id,\n input: { appId: null, appClientId: null },\n },\n });\n setOneTimeSecret(null);\n onUpdate();\n } catch (err) {\n setError(\n err instanceof Error\n ? err.message\n : tr('agentDetails.failedUnlinkApp', 'Failed to unlink app')\n );\n } finally {\n setUnlinking(false);\n }\n };\n\n const handleCopyClientId = async () => {\n if (!agent.appClientId) return;\n try {\n await nativeCopyText(agent.appClientId);\n if (isNative()) void nativeToast('Copied');\n setClientIdCopied(true);\n setTimeout(() => setClientIdCopied(false), 2000);\n } catch {\n // Non-HTTPS fallback\n }\n };\n\n const handleCopySecret = async () => {\n if (!oneTimeSecret) return;\n try {\n await nativeCopyText(oneTimeSecret);\n if (isNative()) void nativeToast('Secret copied');\n setSecretCopied(true);\n setTimeout(() => setSecretCopied(false), 2000);\n } catch {\n // Non-HTTPS fallback\n }\n };\n\n return (\n <Card>\n <div className=\"p-4 border-b border-border-default\">\n <h3 className=\"font-semibold text-text-primary flex items-center gap-2\">\n <Shield className=\"w-5 h-5\" />\n {tr('agentDetails.gatewayAuthTitle', 'Gateway Auth (OAuth2)')}\n </h3>\n </div>\n <div className=\"p-4 space-y-3\">\n {error && (\n <div className=\"flex items-center gap-2 p-3 bg-status-error-bg text-status-error-text rounded-md text-sm\">\n <X className=\"w-4 h-4 flex-shrink-0\" />\n <span className=\"flex-1\">{error}</span>\n <button\n onClick={() => setError(null)}\n className=\"flex-shrink-0 p-0.5 hover:bg-status-error-text/10 rounded\"\n >\n <X className=\"w-3.5 h-3.5\" />\n </button>\n </div>\n )}\n\n {hasApp ? (\n <>\n {/* Linked app info */}\n <div className=\"flex items-start gap-3\">\n <div className=\"w-8 h-8 rounded-lg bg-status-success-bg flex items-center justify-center flex-shrink-0 mt-0.5\">\n <Link2 className=\"w-4 h-4 text-status-success-text\" />\n </div>\n <div className=\"flex-1 min-w-0 space-y-2\">\n <div>\n <p className=\"text-sm font-medium text-text-primary\">\n {tr('agentDetails.linkedToOauthApp', 'Linked to OAuth App')}\n </p>\n <p className=\"text-xs text-text-muted\">\n {tr(\n 'agentDetails.gatewayAuthLinkedDescription',\n 'This agent can authenticate with the API gateway using Client Credentials.'\n )}\n </p>\n </div>\n <div className=\"grid grid-cols-1 sm:grid-cols-2 gap-3\">\n <div>\n <p className=\"text-xs text-text-secondary mb-1\">\n {tr('agentDetails.clientId', 'Client ID')}\n </p>\n <div className=\"flex items-center gap-2\">\n <code className=\"text-xs font-mono text-text-primary bg-bg-sunken px-2 py-1 rounded truncate block flex-1\">\n {agent.appClientId}\n </code>\n <button\n onClick={handleCopyClientId}\n className=\"p-1 rounded hover:bg-bg-sunken transition-colors flex-shrink-0\"\n title={tr('agentDetails.copyClientId', 'Copy Client ID')}\n >\n {clientIdCopied ? (\n <Check className=\"w-3.5 h-3.5 text-status-success-text\" />\n ) : (\n <Copy className=\"w-3.5 h-3.5 text-text-secondary\" />\n )}\n </button>\n </div>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary mb-1\">\n {tr('agentDetails.appId', 'App ID')}\n </p>\n <code className=\"text-xs font-mono text-text-muted bg-bg-sunken px-2 py-1 rounded truncate block\">\n {agent.appId}\n </code>\n </div>\n </div>\n </div>\n </div>\n\n {/* One-time secret display */}\n {oneTimeSecret && (\n <div className=\"p-3 bg-status-warning-bg/20 border border-status-warning-text/20 rounded-lg space-y-2\">\n <p className=\"text-sm font-medium text-status-warning-text\">\n {tr('agentDetails.clientSecretOneTimeTitle', 'Client Secret (one-time display)')}\n </p>\n <p className=\"text-xs text-text-secondary\">\n {tr(\n 'agentDetails.clientSecretOneTimeDescription',\n \"This secret has been automatically sent to the agent. Save it now if you need it — it won't be shown again.\"\n )}\n </p>\n <div className=\"flex items-center gap-2\">\n <code className=\"text-xs font-mono text-text-primary bg-bg-sunken px-2 py-1 rounded flex-1 truncate\">\n {showSecret ? oneTimeSecret : '\\u2022'.repeat(32)}\n </code>\n <button\n onClick={() => setShowSecret(!showSecret)}\n className=\"p-1 rounded hover:bg-bg-sunken transition-colors flex-shrink-0\"\n >\n {showSecret ? (\n <EyeOff className=\"w-3.5 h-3.5 text-text-secondary\" />\n ) : (\n <Eye className=\"w-3.5 h-3.5 text-text-secondary\" />\n )}\n </button>\n <button\n onClick={handleCopySecret}\n className=\"p-1 rounded hover:bg-bg-sunken transition-colors flex-shrink-0\"\n >\n {secretCopied ? (\n <Check className=\"w-3.5 h-3.5 text-status-success-text\" />\n ) : (\n <Copy className=\"w-3.5 h-3.5 text-text-secondary\" />\n )}\n </button>\n </div>\n </div>\n )}\n\n {/* Actions */}\n <div className=\"flex items-center gap-2\">\n {devportalAppId && (\n <a\n href={`/devportal/apps/${devportalAppId}`}\n className=\"flex items-center gap-2 px-3 py-1.5 text-xs text-action-primary-bg bg-action-primary-bg/10 hover:bg-action-primary-bg/20 rounded-md transition-colors\"\n >\n <Monitor className=\"w-3 h-3\" />\n {tr('agentDetails.viewInDeveloperPortal', 'View in Developer Portal')}\n </a>\n )}\n <button\n onClick={handleUnlink}\n disabled={unlinking}\n className=\"flex items-center gap-2 px-3 py-1.5 text-xs text-status-error-text hover:bg-status-error-bg rounded-md transition-colors disabled:opacity-50\"\n >\n {unlinking ? (\n <Loader2 className=\"w-3 h-3 animate-spin\" />\n ) : (\n <Unlink className=\"w-3 h-3\" />\n )}\n {tr('agentDetails.unlinkApp', 'Unlink App')}\n </button>\n </div>\n </>\n ) : (\n <>\n {/* No app linked */}\n <div className=\"flex items-start gap-3\">\n <div className=\"w-8 h-8 rounded-lg bg-bg-sunken flex items-center justify-center flex-shrink-0 mt-0.5\">\n <Shield className=\"w-4 h-4 text-text-muted\" />\n </div>\n <div className=\"flex-1\">\n <p className=\"text-sm font-medium text-text-primary\">\n {tr('agentDetails.noOauthAppLinked', 'No OAuth App Linked')}\n </p>\n <p className=\"text-xs text-text-muted mt-0.5\">\n {tr(\n 'agentDetails.gatewayAuthSetupDescription',\n 'Set up gateway auth to allow this agent to communicate with the API gateways using OAuth2 Client Credentials. This creates an OAuth app, registers it in the Developer Portal, and pushes the credentials to the agent.'\n )}\n </p>\n </div>\n </div>\n\n <button\n onClick={handleSetupGatewayAuth}\n disabled={loading}\n className=\"flex items-center gap-2 px-4 py-2 text-sm font-medium text-action-primary-text bg-action-primary-bg rounded-md hover:bg-action-primary-bg-hover transition-colors disabled:opacity-50\"\n >\n {loading ? (\n <>\n <Loader2 className=\"w-4 h-4 animate-spin\" />\n {tr('agentDetails.settingUp', 'Setting up...')}\n </>\n ) : (\n <>\n <Link2 className=\"w-4 h-4\" />\n {tr('agentDetails.setupGatewayAuth', 'Setup Gateway Auth')}\n </>\n )}\n </button>\n </>\n )}\n </div>\n </Card>\n );\n}\n\n/**\n * Agent details page - shows comprehensive information about a single agent\n */\nexport function AgentDetailsPage() {\n const { t } = useI18n();\n const { id } = useParams<{ id: string }>();\n const { basePath: basePathProp } = useVibeControls();\n const basePath = basePathProp || '';\n const navigate = useVibeNavigate();\n const { hasPermission, isLoading: permissionsLoading } = usePermissions();\n\n const tr = useCallback(\n (key: string, fallback: string, params?: Record<string, string | number>): string => {\n const translated = t(key, params);\n const template = translated === key ? fallback : translated;\n\n if (!params) return template;\n\n return Object.entries(params).reduce(\n (acc, [paramKey, paramValue]) => acc.replace(`{{${paramKey}}}`, String(paramValue)),\n template\n );\n },\n [t]\n );\n\n const [agentHeartbeat] = useAgentHeartbeatMutation({ refetchQueries: ['GetAgent'] });\n const [updateAgent] = useUpdateAgentMutation({ refetchQueries: ['GetAgent'] });\n const [deleteAgent] = useDeleteAgentMutation();\n const [checkSessionHealth] = useCheckSessionHealthMutation({ refetchQueries: ['GetAgent'] });\n\n // ── Sync active context ────────────────────────────────────────────────\n const setActiveAgentId = useVibeControlsStore((s) => s.setActiveAgentId);\n useEffect(() => {\n if (id) setActiveAgentId(id);\n }, [id, setActiveAgentId]);\n\n // ── Tab Navigation ───────────────────────────────────────────────────\n type AgentTab =\n | 'overview'\n | 'security'\n | 'plugins'\n | 'sessions'\n | 'logs'\n | 'vibes'\n | 'notes'\n | 'backup';\n const agentTabIds: readonly AgentTab[] = [\n 'overview',\n 'security',\n 'plugins',\n 'sessions',\n 'logs',\n 'vibes',\n 'notes',\n 'backup',\n ];\n const [activeTab, setActiveTab] = useQueryBackedTab<AgentTab>(agentTabIds, 'overview');\n\n // Configuration modal state\n const [showConfigModal, setShowConfigModal] = useState(false);\n const [configError, setConfigError] = useState<string | null>(null);\n const [configLoading, setConfigLoading] = useState(false);\n const [successMessage, setSuccessMessage] = useState<string | null>(null);\n const [showAiContextInfo, setShowAiContextInfo] = useState(false);\n\n // Config form refs\n const agentNameRef = useRef<HTMLInputElement>(null);\n const agentTunnelUrlRef = useRef<HTMLInputElement>(null);\n const agentApiKeyRef = useRef<HTMLInputElement>(null);\n const agentAiContextRef = useRef<HTMLTextAreaElement>(null);\n const agentMetadataRef = useRef<HTMLTextAreaElement>(null);\n const [showApiKey, setShowApiKey] = useState(false);\n const [apiKeyCopied, setApiKeyCopied] = useState(false);\n\n // Fetch agent by ID from GraphQL API\n const { data, loading, error, refetch } = useGetAgentQuery({\n variables: { id: id || '' },\n skip: !id,\n fetchPolicy: 'cache-and-network',\n });\n\n // Get agent from response\n const agent = data?.vibecontrolsAgent;\n\n // On mount, run a health check to sync stale session states with agent reality\n const healthCheckRanRef = useRef(false);\n useEffect(() => {\n if (agent && !healthCheckRanRef.current) {\n healthCheckRanRef.current = true;\n checkSessionHealth().catch(() => {\n // Best-effort — don't block the page if health check fails\n });\n }\n }, [agent, checkSessionHealth]);\n\n // ── Plugin Management (via backend GraphQL proxy) ──────────────────\n interface InstalledPlugin {\n packageName: string;\n pluginName: string;\n version: string;\n installedAt: string;\n loaded: boolean;\n description?: string;\n tags?: string[];\n isCore: boolean;\n cliCommand?: string;\n apiPrefix?: string;\n hasUI: boolean;\n hasCliSetup: boolean;\n hasServerStart: boolean;\n hasServerStop: boolean;\n hasServerReady: boolean;\n hasProviders: boolean;\n }\n interface AvailablePlugin {\n packageName: string;\n name: string;\n description: string;\n version: string;\n tags: string[];\n installed: boolean;\n }\n\n const [installedPlugins, setInstalledPlugins] = useState<InstalledPlugin[]>([]);\n const [availablePlugins, setAvailablePlugins] = useState<AvailablePlugin[]>([]);\n const [pluginsLoading, setPluginsLoading] = useState(true);\n const [pluginActionLoading, setPluginActionLoading] = useState<string | null>(null);\n const [pluginError, setPluginError] = useState<string | null>(null);\n const [showQuotaExhausted, setShowQuotaExhausted] = useState(false);\n const pluginsFetchedRef = useRef(false);\n\n // ── Plugin Sub-Tabs & Search ──────────────────────────────────────\n type PluginSubTab = 'installed' | 'available' | 'store' | 'ui-plugins';\n const [pluginSubTab, setPluginSubTab] = useState<PluginSubTab>('installed');\n const [pluginSearchQuery, setPluginSearchQuery] = useState('');\n\n // ── Store Plugins ─────────────────────────────────────────────────\n type StoreEntitlement = {\n id: string;\n productId: string;\n licenseKey: string | null;\n product: {\n id: string;\n name: string;\n slug: string;\n icon: string | null;\n description: string | null;\n manifest: Record<string, unknown> | null;\n } | null;\n };\n const [storePlugins, setStorePlugins] = useState<StoreEntitlement[]>([]);\n const [storePluginsLoading, setStorePluginsLoading] = useState(false);\n const [storePluginsError, setStorePluginsError] = useState<string | null>(null);\n const [storeInstallingId, setStoreInstallingId] = useState<string | null>(null);\n\n // Backend-proxied plugin operations\n const [fetchAgentPlugins] = useAgentPluginsLazyQuery();\n const [installPluginMutation] = useInstallAgentPluginMutation();\n const [removePluginMutation] = useRemoveAgentPluginMutation();\n\n const fetchPlugins = useCallback(async () => {\n if (!agent?.id) return;\n setPluginsLoading(true);\n setPluginError(null);\n try {\n const { data } = await fetchAgentPlugins({ variables: { agentId: agent.id } });\n const result = data?.agentPlugins;\n if (result) {\n const installed = (result.installed || []).map(\n (p: {\n packageName: string;\n pluginName: string;\n version: string;\n installedAt?: string | null;\n loaded: boolean;\n description?: string | null;\n tags?: (string | null)[] | null;\n isCore: boolean;\n cliCommand?: string | null;\n apiPrefix?: string | null;\n hasUI: boolean;\n hasCliSetup: boolean;\n hasServerStart: boolean;\n hasServerStop: boolean;\n hasServerReady: boolean;\n hasProviders: boolean;\n }) => ({\n packageName: p.packageName,\n pluginName: p.pluginName,\n version: p.version,\n installedAt: p.installedAt || '',\n loaded: p.loaded,\n description: p.description ?? undefined,\n tags: (p.tags?.filter(Boolean) as string[]) ?? undefined,\n isCore: p.isCore,\n cliCommand: p.cliCommand ?? undefined,\n apiPrefix: p.apiPrefix ?? undefined,\n hasUI: p.hasUI,\n hasCliSetup: p.hasCliSetup,\n hasServerStart: p.hasServerStart,\n hasServerStop: p.hasServerStop,\n hasServerReady: p.hasServerReady,\n hasProviders: p.hasProviders,\n })\n );\n const available = (result.available || []).map(\n (p: {\n packageName: string;\n name: string;\n description: string;\n version: string;\n tags: string[];\n installed: boolean;\n }) => ({\n packageName: p.packageName,\n name: p.name,\n description: p.description,\n version: p.version,\n tags: [...p.tags],\n installed: p.installed,\n })\n );\n setInstalledPlugins(installed);\n setAvailablePlugins(available);\n if (result.error) {\n setPluginError(result.error);\n }\n }\n } catch {\n // Agent unreachable — show error state\n setPluginError('Agent unreachable — unable to fetch plugin list');\n } finally {\n setPluginsLoading(false);\n }\n }, [agent?.id, fetchAgentPlugins]);\n\n // Attempt to fetch live plugins when agent data loads.\n // If the agent is unreachable, an error state is shown instead of fake data.\n useEffect(() => {\n if (agent?.id && !pluginsFetchedRef.current) {\n pluginsFetchedRef.current = true;\n fetchPlugins();\n }\n }, [agent?.id, fetchPlugins]);\n\n const handleInstallPlugin = useCallback(\n async (packageName: string) => {\n if (!agent?.id) return;\n setPluginActionLoading(packageName);\n try {\n const { data } = await installPluginMutation({\n variables: { agentId: agent.id, packageName },\n });\n if (data?.installAgentPlugin?.success) {\n await fetchPlugins();\n } else {\n throw new Error(\n data?.installAgentPlugin?.error || tr('agentDetails.installFailed', 'Install failed')\n );\n }\n } catch (err) {\n if (isQuotaExhaustedError(err)) {\n setShowQuotaExhausted(true);\n return;\n }\n\n setPluginError(\n err instanceof Error\n ? err.message\n : tr('agentDetails.pluginInstallFailed', 'Failed to install plugin')\n );\n setTimeout(() => setPluginError(null), 5000);\n } finally {\n setPluginActionLoading(null);\n }\n },\n [agent?.id, installPluginMutation, fetchPlugins, tr]\n );\n\n const handleRemovePlugin = useCallback(\n async (packageName: string) => {\n if (!agent?.id) return;\n if (\n !window.confirm(\n tr('agentDetails.removePluginConfirm', 'Remove plugin {{packageName}}?', { packageName })\n )\n )\n return;\n setPluginActionLoading(packageName);\n try {\n const { data } = await removePluginMutation({\n variables: { agentId: agent.id, packageName },\n });\n if (data?.removeAgentPlugin?.success) {\n await fetchPlugins();\n } else {\n throw new Error(\n data?.removeAgentPlugin?.error || tr('agentDetails.removeFailed', 'Remove failed')\n );\n }\n } catch (err) {\n setPluginError(\n err instanceof Error\n ? err.message\n : tr('agentDetails.pluginRemoveFailed', 'Failed to remove plugin')\n );\n setTimeout(() => setPluginError(null), 5000);\n } finally {\n setPluginActionLoading(null);\n }\n },\n [agent?.id, removePluginMutation, fetchPlugins, tr]\n );\n\n // Get sessions and vibes from the agent response (already included in the query)\n const agentSessions = agent?.sessions || [];\n const agentVibes = agent?.vibes || [];\n\n // ── Store plugin fetch / install ──────────────────────────────────\n const fetchStorePlugins = useCallback(async () => {\n setStorePluginsLoading(true);\n setStorePluginsError(null);\n try {\n const response = await fetch(\n (typeof window !== 'undefined' &&\n (window as { __BURDENOFF_GLOBAL_GATEWAY__?: string }).__BURDENOFF_GLOBAL_GATEWAY__) ||\n '/global/graphql',\n {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n credentials: 'include',\n body: JSON.stringify({\n query: `query MyStorePlugins {\n myEntitlements {\n id\n productId\n licenseKey\n product {\n id\n name\n slug\n icon\n description\n manifest\n }\n }\n }`,\n }),\n }\n );\n const body = (await response.json()) as {\n data?: { myEntitlements?: StoreEntitlement[] };\n errors?: Array<{ message: string }>;\n };\n if (body.errors?.length)\n throw new Error(body.errors[0]?.message ?? 'Failed to load store plugins');\n const plugins = (body.data?.myEntitlements ?? []).filter((e) => {\n const manifest = e.product?.manifest as Record<string, unknown> | null;\n if (!manifest) return false;\n const itemType = (manifest['itemType'] as string | undefined)?.toLowerCase();\n return itemType === 'vibemodule' || itemType === 'plugin';\n });\n setStorePlugins(plugins);\n } catch (err) {\n setStorePluginsError(err instanceof Error ? err.message : 'Failed to load store plugins');\n } finally {\n setStorePluginsLoading(false);\n }\n }, []);\n\n useEffect(() => {\n if (pluginSubTab === 'store' && storePlugins.length === 0 && !storePluginsLoading) {\n void fetchStorePlugins();\n }\n }, [pluginSubTab, storePlugins.length, storePluginsLoading, fetchStorePlugins]);\n\n const handleInstallStorePlugin = useCallback(\n async (productId: string, licenseKey: string | null) => {\n if (!agent?.id) return;\n setStoreInstallingId(productId);\n try {\n const response = await fetch(\n (typeof window !== 'undefined' &&\n (window as { __BURDENOFF_WSPACE_GATEWAY__?: string }).__BURDENOFF_WSPACE_GATEWAY__) ||\n '/workspaces/graphql',\n {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n credentials: 'include',\n body: JSON.stringify({\n query: `mutation InstallStorePlugin($agentId: ID!, $productId: ID!, $licenseKey: String) {\n installStorePluginOnAgent(agentId: $agentId, productId: $productId, licenseKey: $licenseKey) {\n success\n error\n }\n }`,\n variables: { agentId: agent.id, productId, licenseKey },\n }),\n }\n );\n const body = (await response.json()) as {\n data?: {\n installStorePluginOnAgent?: { success: boolean; error: string | null };\n };\n errors?: Array<{ message: string }>;\n };\n if (body.errors?.length) throw new Error(body.errors[0]?.message ?? 'Install failed');\n const result = body.data?.installStorePluginOnAgent;\n if (!result?.success) {\n throw new Error(result?.error ?? 'Install failed');\n }\n await fetchPlugins();\n setPluginSubTab('installed');\n } catch (err) {\n setStorePluginsError(err instanceof Error ? err.message : 'Install failed');\n } finally {\n setStoreInstallingId(null);\n }\n },\n [agent?.id, fetchPlugins]\n );\n\n // Handle ?install=<productId>&licenseKey=... on page load — automatic install flow\n // when the user arrives here from OrderConfirmationPage\n useEffect(() => {\n if (typeof window === 'undefined' || !agent?.id) return;\n const params = new URLSearchParams(window.location.search);\n const productId = params.get('install');\n const licenseKey = params.get('licenseKey');\n if (productId && productId !== storeInstallingId) {\n setPluginSubTab('store');\n void handleInstallStorePlugin(productId, licenseKey);\n // Clear the query params after initiating\n const url = new URL(window.location.href);\n url.searchParams.delete('install');\n url.searchParams.delete('licenseKey');\n window.history.replaceState({}, '', url.toString());\n }\n }, [agent?.id, handleInstallStorePlugin, storeInstallingId]);\n\n if (permissionsLoading)\n return (\n <div className=\"flex items-center justify-center min-h-[400px]\">\n <p className=\"text-text-secondary\">Loading permissions...</p>\n </div>\n );\n if (!hasPermission(VIBE_PERMISSIONS.AGENT_READ))\n return (\n <div className=\"flex items-center justify-center min-h-[400px]\">\n <div className=\"text-center space-y-2\">\n <h2 className=\"text-lg font-semibold text-foreground\">Access Denied</h2>\n <p className=\"text-sm text-text-secondary\">\n You don't have permission to access this page.\n </p>\n </div>\n </div>\n );\n\n const handleBack = () => {\n navigate('/agents');\n };\n\n const handleStartAgent = async () => {\n if (!agent?.id) return;\n try {\n await agentHeartbeat({ variables: { id: agent.id } });\n } catch (err) {\n console.error('Failed to start agent:', err);\n }\n };\n\n const handleStopAgent = async () => {\n if (!agent?.id) return;\n try {\n await updateAgent({\n variables: { id: agent.id, input: { metadata: { status: 'inactive' } } },\n });\n } catch (err) {\n console.error('Failed to stop agent:', err);\n }\n };\n\n const handleConfigureAgent = () => {\n setConfigError(null);\n setShowConfigModal(true);\n };\n\n const handleSubmitConfig = async () => {\n if (!agent?.id) return;\n\n const name = agentNameRef.current?.value?.trim();\n const tunnelUrl = agentTunnelUrlRef.current?.value?.trim();\n const agentApiKey = agentApiKeyRef.current?.value?.trim();\n const aiContext = agentAiContextRef.current?.value?.trim();\n const metadataStr = agentMetadataRef.current?.value?.trim();\n\n if (!name) {\n setConfigError(tr('agentDetails.agentNameRequired', 'Agent name is required'));\n return;\n }\n\n let metadata: Record<string, unknown> | undefined;\n if (metadataStr) {\n try {\n metadata = JSON.parse(metadataStr);\n } catch {\n setConfigError(tr('agentDetails.metadataJsonRequired', 'Metadata must be valid JSON'));\n return;\n }\n }\n\n setConfigLoading(true);\n setConfigError(null);\n try {\n await updateAgent({\n variables: {\n id: agent.id,\n input: {\n name,\n ...(tunnelUrl !== undefined ? { tunnelUrl: tunnelUrl || null } : {}),\n ...(agentApiKey !== undefined ? { agentApiKey: agentApiKey || null } : {}),\n aiContext: aiContext || null,\n metadata,\n },\n },\n });\n setShowConfigModal(false);\n setSuccessMessage(\n tr('agentDetails.configurationUpdated', 'Agent configuration updated successfully')\n );\n setTimeout(() => setSuccessMessage(null), 3000);\n } catch (err) {\n setConfigError(\n err instanceof Error\n ? err.message\n : tr('agentDetails.configurationUpdateFailed', 'Failed to update agent configuration')\n );\n } finally {\n setConfigLoading(false);\n }\n };\n\n const handleCopyApiKey = async () => {\n if (!agent?.agentApiKey) return;\n try {\n await nativeCopyText(agent.agentApiKey);\n if (isNative()) void nativeToast('API key copied');\n setApiKeyCopied(true);\n setTimeout(() => setApiKeyCopied(false), 2000);\n } catch {\n // Fallback for non-HTTPS contexts\n console.error('Failed to copy API key');\n }\n };\n\n const handleRemoveAgent = async () => {\n if (!agent?.id) return;\n if (\n !window.confirm(\n tr('agentDetails.removeAgentConfirm', 'Are you sure you want to remove agent \"{{name}}\"?', {\n name: agent.name,\n })\n )\n )\n return;\n try {\n await deleteAgent({ variables: { id: agent.id } });\n handleBack();\n } catch (err) {\n console.error('Failed to remove agent:', err);\n }\n };\n\n const handleSessionClick = (sessionId: string) => {\n navigate(`/sessions/${sessionId}`);\n };\n\n const handleVibeClick = (vibeId: string) => {\n navigate(`/vibes/${vibeId}`);\n };\n\n const formatTimestamp = (timestamp: string | null | undefined) => {\n if (!timestamp) return tr('health.never', 'Never');\n const diff = Date.now() - new Date(timestamp).getTime();\n if (diff < 60000) return tr('health.justNow', 'Just now');\n if (diff < 3600000) {\n return tr('agentDetails.minutesAgo', '{{count}}m ago', {\n count: Math.floor(diff / 60000),\n });\n }\n if (diff < 86400000) {\n return tr('agentDetails.hoursAgo', '{{count}}h ago', {\n count: Math.floor(diff / 3600000),\n });\n }\n return new Date(timestamp).toLocaleDateString();\n };\n\n // Loading state - wrapped in MotionPage to prevent unmount/remount animation replay\n if (loading && !agent) {\n return (\n <MotionPage className=\"space-y-6 p-4 sm:p-6 bg-bg-surface min-h-screen\">\n <button\n onClick={handleBack}\n className=\"flex items-center gap-2 text-text-secondary hover:text-text-primary transition-colors\"\n >\n <ArrowLeft className=\"w-4 h-4\" />\n {tr('agentDetails.backToAgents', 'Back to Agents')}\n </button>\n <LoadingState message={tr('agentDetails.loadingDetails', 'Loading agent details...')} />\n </MotionPage>\n );\n }\n\n // Error state\n if (error && !agent) {\n return (\n <MotionPage className=\"space-y-6 p-4 sm:p-6 bg-bg-surface min-h-screen\">\n <button\n onClick={handleBack}\n className=\"flex items-center gap-2 text-text-secondary hover:text-text-primary transition-colors\"\n >\n <ArrowLeft className=\"w-4 h-4\" />\n {tr('agentDetails.backToAgents', 'Back to Agents')}\n </button>\n <ErrorState\n title={tr('agentDetails.failedLoad', 'Failed to load agent')}\n message={error.message}\n onRetry={() => refetch()}\n />\n </MotionPage>\n );\n }\n\n // Not found state\n if (!agent) {\n return (\n <MotionPage className=\"space-y-6 p-4 sm:p-6 bg-bg-surface min-h-screen\">\n <button\n onClick={handleBack}\n className=\"flex items-center gap-2 text-text-secondary hover:text-text-primary transition-colors\"\n >\n <ArrowLeft className=\"w-4 h-4\" />\n {tr('agentDetails.backToAgents', 'Back to Agents')}\n </button>\n <EmptyState\n icon={<Server className=\"w-8 h-8 text-text-secondary\" />}\n title={tr('agentDetails.notFound', 'Agent not found')}\n description={`${tr('agentDetails.notFoundDescriptionPrefix', 'No agent with ID')} \"${id}\" ${tr('agentDetails.notFoundDescriptionSuffix', 'exists')}`}\n action={\n <button\n onClick={handleBack}\n className=\"px-4 py-2 bg-action-primary-bg text-action-primary-text rounded-md hover:bg-action-primary-bg-hover transition-colors\"\n >\n {tr('agentDetails.backToAgents', 'Back to Agents')}\n </button>\n }\n />\n </MotionPage>\n );\n }\n\n const agentTabs: { id: AgentTab; label: string; icon: typeof Server; badge?: string }[] = [\n { id: 'overview', label: tr('nav.overview', 'Overview'), icon: Server },\n { id: 'security', label: tr('agentDetails.security', 'Security'), icon: Shield },\n {\n id: 'plugins',\n label: tr('agentDetails.plugins', 'Plugins'),\n icon: Puzzle,\n badge: `${installedPlugins.length}`,\n },\n {\n id: 'sessions',\n label: tr('nav.sessions', 'Sessions'),\n icon: Terminal,\n badge: `${agentSessions.length}`,\n },\n {\n id: 'logs',\n label: tr('nav.logs', 'Logs'),\n icon: ScrollText,\n },\n {\n id: 'vibes',\n label: tr('nav.vibes', 'Vibes'),\n icon: Zap,\n badge: `${agentVibes.length}`,\n },\n {\n id: 'notes',\n label: tr('vibeDetails.notes', 'Notes'),\n icon: FileText,\n },\n {\n id: 'backup',\n label: tr('agentDetails.backup', 'Backup'),\n icon: Database,\n },\n ];\n\n // Types for sessions and vibes from the query\n type SessionItem = NonNullable<typeof agentSessions>[number];\n type VibeItem = NonNullable<typeof agentVibes>[number];\n\n // Stats\n const runningSessions = agentSessions.filter((s: SessionItem) => s.status === 'RUNNING').length;\n // Declared here (rather than inside JSX) because it's used in the backup tab panel below.\n const backupTunnelUrl = agent?.tunnelUrl;\n return (\n <MotionPage className=\"space-y-6 p-4 sm:p-6 bg-bg-surface min-h-screen\">\n {/* Success Toast */}\n {successMessage && (\n <div className=\"fixed top-4 left-4 right-4 sm:left-auto z-50 bg-status-success-bg text-status-success-text px-4 py-3 rounded-md shadow-lg\">\n {successMessage}\n </div>\n )}\n\n {/* Back Button */}\n <button\n onClick={handleBack}\n className=\"flex items-center gap-2 text-text-secondary hover:text-text-primary transition-colors\"\n >\n <ArrowLeft className=\"w-4 h-4\" />\n {tr('agentDetails.backToAgents', 'Back to Agents')}\n </button>\n\n {/* Header */}\n <PageHeader\n title={agent.name}\n description={\n agent.hostname || tr('agentDetails.noHostnameConfigured', 'No hostname configured')\n }\n breadcrumb={[\n { label: tr('nav.agents', 'Agents'), path: basePath ? `${basePath}/agents` : '/agents' },\n { label: agent.name },\n ]}\n actions={\n <div className=\"flex flex-wrap items-center gap-2\">\n <button\n onClick={() => refetch()}\n disabled={loading}\n className=\"flex items-center gap-2 px-3 py-2 bg-bg-sunken text-text-primary rounded-md hover:bg-bg-sunken/80 transition-colors disabled:opacity-50\"\n title={tr('common.refresh', 'Refresh')}\n >\n <RefreshCw className={`w-4 h-4 ${loading ? 'animate-spin' : ''}`} />\n </button>\n {agent.isActive ? (\n <button\n onClick={handleStopAgent}\n className=\"flex items-center gap-2 px-3 py-2 bg-bg-sunken text-text-primary rounded-md hover:bg-bg-sunken/80 transition-colors\"\n >\n <Square className=\"w-4 h-4\" />\n {tr('sessions.stop', 'Stop')}\n </button>\n ) : (\n <button\n onClick={handleStartAgent}\n className=\"flex items-center gap-2 px-3 py-2 bg-status-success-bg text-status-success-text rounded-md hover:opacity-80 transition-colors\"\n >\n <Play className=\"w-4 h-4\" />\n {tr('agentDetails.start', 'Start')}\n </button>\n )}\n <OpenInBrowserEditorButton\n tunnelUrl={agent.tunnelUrl || null}\n agentApiKey={agent.agentApiKey || null}\n />\n <button\n onClick={handleConfigureAgent}\n className=\"flex items-center gap-2 px-3 py-2 bg-bg-sunken text-text-primary rounded-md hover:bg-bg-sunken/80 transition-colors\"\n >\n <Settings className=\"w-4 h-4\" />\n {tr('agentDetails.configure', 'Configure')}\n </button>\n <button\n onClick={handleRemoveAgent}\n className=\"flex items-center gap-2 px-3 py-2 bg-status-error-bg text-status-error-text rounded-md hover:opacity-80 transition-colors\"\n >\n <Trash2 className=\"w-4 h-4\" />\n {tr('sessions.remove', 'Remove')}\n </button>\n </div>\n }\n />\n\n {/* Status Cards */}\n <div className=\"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4\">\n <Card className=\"p-4\">\n <div className=\"flex items-center gap-3\">\n <div className=\"w-10 h-10 rounded-lg bg-bg-sunken flex items-center justify-center\">\n <Server className=\"w-5 h-5 text-text-secondary\" />\n </div>\n <div>\n <p className=\"text-sm text-text-secondary\">{tr('sessions.filterStatus', 'Status')}</p>\n <StatusBadge status={agent.isActive ? 'ACTIVE' : 'OFFLINE'} size=\"md\" />\n </div>\n </div>\n </Card>\n <Card className=\"p-4\">\n <div className=\"flex items-center gap-3\">\n <div className=\"w-10 h-10 rounded-lg bg-bg-sunken flex items-center justify-center\">\n <Cpu className=\"w-5 h-5 text-text-secondary\" />\n </div>\n <div>\n <p className=\"text-sm text-text-secondary\">{tr('analytics.platform', 'Platform')}</p>\n <p className=\"font-semibold text-text-primary\">\n {agent.platform}/{agent.architecture}\n </p>\n </div>\n </div>\n </Card>\n <Card className=\"p-4\">\n <div className=\"flex items-center gap-3\">\n <div className=\"w-10 h-10 rounded-lg bg-bg-sunken flex items-center justify-center\">\n <HardDrive className=\"w-5 h-5 text-text-secondary\" />\n </div>\n <div>\n <p className=\"text-sm text-text-secondary\">{tr('agentDetails.version', 'Version')}</p>\n <p className=\"font-semibold text-text-primary\">v{agent.version}</p>\n </div>\n </div>\n </Card>\n <Card className=\"p-4\">\n <div className=\"flex items-center gap-3\">\n <div className=\"w-10 h-10 rounded-lg bg-bg-sunken flex items-center justify-center\">\n <Terminal className=\"w-5 h-5 text-text-secondary\" />\n </div>\n <div>\n <p className=\"text-sm text-text-secondary\">{tr('nav.sessions', 'Sessions')}</p>\n <p className=\"font-semibold text-text-primary\">\n {runningSessions} {tr('health.active', 'active')}\n </p>\n </div>\n </div>\n </Card>\n </div>\n\n {/* ── Tab Navigation Bar ─────────────────────────────────────────── */}\n <div className=\"border-b border-border-default\">\n <nav\n className=\"flex gap-1 -mb-px overflow-x-auto pb-1\"\n aria-label={tr('agentDetails.tabsAriaLabel', 'Agent tabs')}\n >\n {agentTabs.map((tab) => {\n const Icon = tab.icon;\n const isActive = activeTab === tab.id;\n return (\n <button\n key={tab.id}\n onClick={() => setActiveTab(tab.id)}\n className={`flex shrink-0 items-center gap-1.5 px-3 py-2.5 text-xs sm:gap-2 sm:px-4 sm:text-sm font-medium border-b-2 transition-colors whitespace-nowrap ${\n isActive\n ? // text-action-primary-bg is the brand blue — used intentionally for text\n // to match the active border color. text-action-primary-text is white,\n // which is invisible on light backgrounds.\n 'border-action-primary-bg text-action-primary-bg'\n : 'border-transparent text-text-secondary hover:text-text-primary hover:border-border-default'\n }`}\n aria-selected={isActive}\n role=\"tab\"\n >\n <Icon className=\"w-4 h-4\" />\n {tab.label}\n {tab.badge && (\n <span\n className={`hidden rounded-full px-1.5 py-0.5 text-[10px] sm:inline-flex sm:text-xs ${\n isActive\n ? 'bg-action-primary-bg/10 text-action-primary-bg'\n : 'bg-bg-sunken text-text-muted'\n }`}\n >\n {tab.badge}\n </span>\n )}\n </button>\n );\n })}\n </nav>\n </div>\n\n {/* ── Tab Panels ─────────────────────────────────────────────────── */}\n <AnimatePresence mode=\"wait\">\n {/* Overview Tab */}\n {activeTab === 'overview' && (\n <motion.div\n key=\"overview\"\n initial={{ opacity: 0, y: 8 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0, y: -8 }}\n transition={{ duration: 0.2 }}\n className=\"space-y-6\"\n >\n {/* Capabilities */}\n <Card>\n <div className=\"p-4 border-b border-border-default\">\n <h3 className=\"font-semibold text-text-primary flex items-center gap-2\">\n <CheckCircle2 className=\"w-5 h-5\" />\n {tr('agentDetails.capabilities', 'Capabilities')}\n </h3>\n </div>\n <div className=\"p-4\">\n <div className=\"flex flex-wrap gap-2\">\n {agent.capabilities &&\n typeof agent.capabilities === 'object' &&\n (Array.isArray(agent.capabilities)\n ? agent.capabilities.length > 0\n : Object.keys(agent.capabilities).length > 0) ? (\n (Array.isArray(agent.capabilities)\n ? (agent.capabilities as string[])\n : (() => {\n const obj = agent.capabilities as Record<string, unknown>;\n const keys = Object.keys(obj);\n const hasNumericKeys =\n keys.length > 0 && keys.every((k) => /^\\d+$/.test(k));\n return hasNumericKeys\n ? (Object.values(obj) as string[])\n : (keys as string[]);\n })()\n ).map((cap) => (\n <span\n key={cap}\n className=\"px-3 py-1 bg-bg-sunken text-text-primary text-sm rounded-full\"\n >\n {cap}\n </span>\n ))\n ) : (\n <p className=\"text-text-secondary\">\n {tr('agentDetails.noCapabilitiesConfigured', 'No capabilities configured')}\n </p>\n )}\n </div>\n </div>\n </Card>\n\n {/* Tags */}\n <Card>\n <div className=\"p-4 border-b border-border-default\">\n <h3 className=\"font-semibold text-text-primary flex items-center gap-2\">\n <Tag className=\"w-5 h-5\" />\n Tags\n </h3>\n </div>\n <div className=\"p-4\">\n <EntityTagPicker entityType=\"VIBECONTROLS_AGENT\" entityId={agent.id} />\n </div>\n </Card>\n\n {/* Tunnel Info */}\n {agent.tunnelUrl && (\n <Card>\n <div className=\"p-4 border-b border-border-default\">\n <h3 className=\"font-semibold text-text-primary flex items-center gap-2\">\n <Zap className=\"w-5 h-5\" />\n {tr('health.tunnel', 'Tunnel')}\n </h3>\n </div>\n <div className=\"p-4\">\n <div className=\"flex flex-col sm:flex-row sm:items-center gap-4\">\n <div className=\"flex-1 min-w-0\">\n <p className=\"text-sm text-text-secondary mb-1\">\n {tr('agentDetails.tunnelUrl', 'Tunnel URL')}\n </p>\n <a\n href={agent.tunnelUrl}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"text-action-primary-text hover:underline break-all\"\n >\n {agent.tunnelUrl}\n </a>\n </div>\n {agent.tunnelStatus && (\n <div className=\"flex-shrink-0\">\n <p className=\"text-sm text-text-secondary mb-1\">\n {tr('sessions.filterStatus', 'Status')}\n </p>\n <span\n className={`px-2 py-1 text-xs rounded-full ${\n agent.tunnelStatus === 'CONNECTED' || agent.tunnelStatus === 'ACTIVE'\n ? 'bg-status-success-bg text-status-success-text'\n : 'bg-bg-sunken text-text-secondary'\n }`}\n >\n {agent.tunnelStatus}\n </span>\n </div>\n )}\n </div>\n </div>\n </Card>\n )}\n\n {/* Configuration */}\n <Card>\n <div className=\"p-4 border-b border-border-default\">\n <h3 className=\"font-semibold text-text-primary flex items-center gap-2\">\n <Settings className=\"w-5 h-5\" />\n {tr('agentDetails.configuration', 'Configuration')}\n </h3>\n </div>\n <div className=\"p-4 space-y-4\">\n <div className=\"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4\">\n <div>\n <p className=\"text-sm text-text-secondary\">\n {tr('analytics.platform', 'Platform')}\n </p>\n <p className=\"font-medium text-text-primary\">{agent.platform}</p>\n </div>\n <div>\n <p className=\"text-sm text-text-secondary\">\n {tr('analytics.architecture', 'Architecture')}\n </p>\n <p className=\"font-medium text-text-primary\">{agent.architecture}</p>\n </div>\n <div>\n <p className=\"text-sm text-text-secondary\">\n {tr('agentDetails.version', 'Version')}\n </p>\n <p className=\"font-medium text-text-primary\">{agent.version}</p>\n </div>\n </div>\n {agent.aiContext && (\n <div>\n <p className=\"text-sm text-text-secondary mb-1\">AI Context</p>\n <pre className=\"text-sm text-text-primary bg-bg-sunken border border-border-default rounded-md p-3 whitespace-pre-wrap font-sans\">\n {agent.aiContext}\n </pre>\n </div>\n )}\n </div>\n </Card>\n\n {/* Timeline */}\n <Card>\n <div className=\"p-4 border-b border-border-default\">\n <h3 className=\"font-semibold text-text-primary flex items-center gap-2\">\n <Clock className=\"w-5 h-5\" />\n {tr('vibeDetails.timeline', 'Timeline')}\n </h3>\n </div>\n <div className=\"p-4\">\n <div className=\"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4 text-sm\">\n <div>\n <p className=\"text-text-secondary\">\n {tr('health.lastHeartbeat', 'Last Heartbeat')}\n </p>\n <p className=\"font-medium text-text-primary\">\n {formatTimestamp(agent.lastHeartbeat)}\n </p>\n </div>\n <div>\n <p className=\"text-text-secondary\">{tr('vibeDetails.created', 'Created')}</p>\n <p className=\"font-medium text-text-primary\">\n {formatTimestamp(agent.createdAt)}\n </p>\n </div>\n <div>\n <p className=\"text-text-secondary\">{tr('vibeDetails.updated', 'Updated')}</p>\n <p className=\"font-medium text-text-primary\">\n {formatTimestamp(agent.updatedAt)}\n </p>\n </div>\n </div>\n </div>\n </Card>\n </motion.div>\n )}\n\n {/* Security Tab */}\n {activeTab === 'security' && (\n <motion.div\n key=\"security\"\n initial={{ opacity: 0, y: 8 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0, y: -8 }}\n transition={{ duration: 0.2 }}\n className=\"space-y-6\"\n >\n {/* Tunnel API Key Usage */}\n {agent.tunnelUrl && agent.agentApiKey && (\n <Card>\n <div className=\"p-4 border-b border-border-default\">\n <h3 className=\"font-semibold text-text-primary flex items-center gap-2\">\n <Info className=\"w-5 h-5\" />\n {tr('agentDetails.apiAuthentication', 'API Authentication')}\n </h3>\n </div>\n <div className=\"p-4 space-y-3\">\n <p className=\"text-sm text-text-secondary\">\n {tr(\n 'agentDetails.apiAuthenticationDescription',\n 'All requests to the agent (except health checks) require authentication. You can pass the API key in two ways:'\n )}\n </p>\n <div className=\"space-y-2\">\n <div>\n <p className=\"text-xs font-medium text-text-primary mb-1\">\n {tr('agentDetails.authHeaderRecommended', 'Header (recommended)')}\n </p>\n <code className=\"block text-xs font-mono bg-bg-sunken px-3 py-2 rounded-md text-text-primary overflow-x-auto\">\n x-agent-api-key: {agent.agentApiKey.slice(0, 12)}...\n </code>\n </div>\n <div>\n <p className=\"text-xs font-medium text-text-primary mb-1\">\n {tr('agentDetails.authQueryParameter', 'URL query parameter')}\n </p>\n <code className=\"block text-xs font-mono bg-bg-sunken px-3 py-2 rounded-md text-text-primary overflow-x-auto break-all\">\n {agent.tunnelUrl}/api/health?apiKey={agent.agentApiKey.slice(0, 12)}...\n </code>\n </div>\n </div>\n <p className=\"text-xs text-text-muted\">\n {tr('agentDetails.authExemptPrefix', 'The')}{' '}\n <code className=\"font-mono\">/health</code>{' '}\n {tr('agentDetails.authExemptAnd', 'and')}{' '}\n <code className=\"font-mono\">/api/agent/identity</code>{' '}\n {tr(\n 'agentDetails.authExemptSuffix',\n 'endpoints are exempt from authentication. The key changes on each agent restart unless a static key is configured.'\n )}\n </p>\n </div>\n </Card>\n )}\n\n {/* Agent API Key */}\n <Card>\n <div className=\"p-4 border-b border-border-default\">\n <h3 className=\"font-semibold text-text-primary flex items-center gap-2\">\n <Key className=\"w-5 h-5\" />\n {tr('agentDetails.agentApiKey', 'Agent API Key')}\n </h3>\n </div>\n <div className=\"p-4\">\n {agent.agentApiKey ? (\n <div className=\"flex items-center gap-3\">\n <div className=\"flex-1 min-w-0\">\n <code className=\"text-sm font-mono text-text-primary bg-bg-sunken px-3 py-2 rounded-md block truncate\">\n {showApiKey\n ? agent.agentApiKey\n : '\\u2022'.repeat(Math.min(agent.agentApiKey.length, 32))}\n </code>\n </div>\n <button\n onClick={() => setShowApiKey(!showApiKey)}\n className=\"p-2 rounded hover:bg-bg-sunken transition-colors flex-shrink-0\"\n title={\n showApiKey\n ? tr('agentDetails.hideApiKey', 'Hide API key')\n : tr('agentDetails.showApiKey', 'Show API key')\n }\n >\n {showApiKey ? (\n <EyeOff className=\"w-4 h-4 text-text-secondary\" />\n ) : (\n <Eye className=\"w-4 h-4 text-text-secondary\" />\n )}\n </button>\n <button\n onClick={handleCopyApiKey}\n className=\"p-2 rounded hover:bg-bg-sunken transition-colors flex-shrink-0\"\n title={tr('agentDetails.copyApiKey', 'Copy API key')}\n >\n {apiKeyCopied ? (\n <Check className=\"w-4 h-4 text-status-success-text\" />\n ) : (\n <Copy className=\"w-4 h-4 text-text-secondary\" />\n )}\n </button>\n </div>\n ) : (\n <p className=\"text-sm text-text-secondary\">\n No API key configured. Set one via the Configure button or agent CLI.\n </p>\n )}\n <p className=\"mt-2 text-xs text-text-muted\">\n This key authenticates requests sent to the agent. It typically changes on each\n agent restart.\n </p>\n </div>\n </Card>\n\n {/* Gateway Auth (OAuth2 App) */}\n <GatewayAuthCard agent={agent} onUpdate={() => refetch()} />\n </motion.div>\n )}\n\n {/* Plugins Tab */}\n {activeTab === 'plugins' &&\n (() => {\n const searchLower = pluginSearchQuery.toLowerCase();\n const filteredInstalled = installedPlugins.filter(\n (p) =>\n !searchLower ||\n p.pluginName.toLowerCase().includes(searchLower) ||\n p.packageName.toLowerCase().includes(searchLower) ||\n p.description?.toLowerCase().includes(searchLower) ||\n p.tags?.some((t) => t.toLowerCase().includes(searchLower))\n );\n const filteredAvailable = availablePlugins.filter(\n (p) =>\n !p.installed &&\n (!searchLower ||\n p.name.toLowerCase().includes(searchLower) ||\n p.packageName.toLowerCase().includes(searchLower) ||\n p.description.toLowerCase().includes(searchLower))\n );\n const uiPlugins = installedPlugins.filter((p) => p.hasUI);\n const filteredUIPlugins = uiPlugins.filter(\n (p) =>\n !searchLower ||\n p.pluginName.toLowerCase().includes(searchLower) ||\n p.packageName.toLowerCase().includes(searchLower)\n );\n\n const pluginSubTabs: {\n id: PluginSubTab;\n label: string;\n count: number;\n icon: typeof Puzzle;\n }[] = [\n {\n id: 'installed',\n label: 'Installed',\n count: filteredInstalled.length,\n icon: Puzzle,\n },\n {\n id: 'available',\n label: 'Available',\n count: filteredAvailable.length,\n icon: Download,\n },\n {\n id: 'store',\n label: 'Store',\n count: storePlugins.length,\n icon: Download,\n },\n {\n id: 'ui-plugins',\n label: 'UI Plugins',\n count: filteredUIPlugins.length,\n icon: Monitor,\n },\n ];\n\n return (\n <motion.div\n key=\"plugins\"\n initial={{ opacity: 0, y: 8 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0, y: -8 }}\n transition={{ duration: 0.2 }}\n className=\"space-y-6\"\n >\n <Card>\n {/* Header with title, search, and refresh */}\n <div className=\"p-4 border-b border-border-default space-y-3\">\n <div className=\"flex items-center justify-between\">\n <h3 className=\"font-semibold text-text-primary flex items-center gap-2\">\n <Puzzle className=\"w-5 h-5\" />\n Plugins\n {installedPlugins.length > 0 && (\n <span className=\"text-sm font-normal text-text-secondary\">\n ({installedPlugins.filter((p) => p.isCore).length} core,{' '}\n {installedPlugins.filter((p) => !p.isCore).length} external)\n </span>\n )}\n </h3>\n <button\n onClick={fetchPlugins}\n disabled={pluginsLoading}\n className=\"p-1.5 text-text-secondary hover:bg-bg-sunken rounded transition-colors disabled:opacity-50\"\n title={tr('agentDetails.refreshPlugins', 'Refresh plugins')}\n >\n <RefreshCw className={`w-4 h-4 ${pluginsLoading ? 'animate-spin' : ''}`} />\n </button>\n </div>\n\n {/* Search bar */}\n <div className=\"relative\">\n <Search className=\"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-text-muted\" />\n <input\n type=\"text\"\n value={pluginSearchQuery}\n onChange={(e) => setPluginSearchQuery(e.target.value)}\n placeholder={tr(\n 'agentDetails.searchPluginsPlaceholder',\n 'Search plugins by name, package, description, or tag...'\n )}\n className=\"w-full pl-9 pr-8 py-2 text-sm bg-bg-sunken border border-border-default rounded-md text-text-primary placeholder:text-text-muted focus:outline-none focus:ring-1 focus:ring-action-primary-bg focus:border-action-primary-bg\"\n />\n {pluginSearchQuery && (\n <button\n onClick={() => setPluginSearchQuery('')}\n className=\"absolute right-2 top-1/2 -translate-y-1/2 p-0.5 text-text-muted hover:text-text-secondary rounded\"\n >\n <X className=\"w-3.5 h-3.5\" />\n </button>\n )}\n </div>\n\n {/* Sub-tabs */}\n <div className=\"flex gap-1 border-b border-border-default -mx-4 overflow-x-auto px-4 pb-1\">\n {pluginSubTabs.map((st) => {\n const isActive = pluginSubTab === st.id;\n const TabIcon = st.icon;\n return (\n <button\n key={st.id}\n onClick={() => setPluginSubTab(st.id)}\n className={`flex shrink-0 items-center gap-1.5 px-3 py-2 text-xs sm:text-sm font-medium border-b-2 transition-colors whitespace-nowrap ${\n isActive\n ? 'border-action-primary-bg text-action-primary-text'\n : 'border-transparent text-text-secondary hover:text-text-primary hover:border-border-default'\n }`}\n >\n <TabIcon className=\"w-3.5 h-3.5\" />\n {st.label}\n <span\n className={`text-xs px-1.5 py-0.5 rounded-full ${\n isActive\n ? 'bg-action-primary-bg/15 text-action-primary-bg'\n : 'bg-bg-secondary text-text-muted'\n }`}\n >\n {st.count}\n </span>\n </button>\n );\n })}\n </div>\n </div>\n\n <div className=\"p-4 space-y-4\">\n {/* Plugin Error */}\n {pluginError && (\n <div className=\"flex items-center gap-2 p-3 bg-status-error-bg text-status-error-text rounded-md text-sm\">\n <X className=\"w-4 h-4 flex-shrink-0\" />\n <span className=\"flex-1\">{pluginError}</span>\n <button\n onClick={() => setPluginError(null)}\n className=\"flex-shrink-0 p-0.5 hover:bg-status-error-text/10 rounded\"\n >\n <X className=\"w-3.5 h-3.5\" />\n </button>\n </div>\n )}\n\n {/* Not reachable banner */}\n {!agent?.isActive && (\n <p className=\"text-sm text-text-muted flex items-center gap-1.5\">\n <Info className=\"w-4 h-4 flex-shrink-0\" />\n Agent is offline — showing known plugin catalog. Live data will load when\n the agent is reachable.\n </p>\n )}\n\n {/* ── Installed Sub-Tab ────────────────────────────────── */}\n {pluginSubTab === 'installed' && (\n <>\n {filteredInstalled.length > 0 ? (\n <div className=\"space-y-2\">\n {filteredInstalled.map((plugin) => (\n <div\n key={plugin.packageName}\n className=\"flex flex-col sm:flex-row sm:items-center justify-between gap-2 p-3 bg-bg-sunken rounded-lg\"\n >\n <div className=\"min-w-0\">\n <p className=\"text-sm font-medium text-text-primary flex items-center gap-1.5 flex-wrap\">\n {plugin.pluginName}\n <span className=\"text-xs text-text-muted font-normal\">\n {plugin.version === 'latest'\n ? plugin.version\n : `v${plugin.version}`}\n </span>\n {plugin.isCore && (\n <span className=\"inline-flex items-center px-1.5 py-0.5 text-xs bg-action-primary-bg/10 text-action-primary-bg rounded border border-action-primary-bg/20\">\n core\n </span>\n )}\n {plugin.loaded && (\n <span className=\"inline-flex items-center px-1.5 py-0.5 text-xs bg-status-success-bg text-status-success-text rounded\">\n loaded\n </span>\n )}\n {plugin.hasProviders && (\n <span className=\"inline-flex items-center px-1.5 py-0.5 text-xs bg-status-warning-bg-subtle text-status-warning-text rounded\">\n provider\n </span>\n )}\n {plugin.hasUI && (\n <span className=\"inline-flex items-center px-1.5 py-0.5 text-xs bg-accent-purple-subtle text-accent-purple rounded\">\n ui\n </span>\n )}\n </p>\n {plugin.description && (\n <p className=\"text-xs text-text-secondary mt-0.5\">\n {plugin.description}\n </p>\n )}\n <div className=\"flex items-center gap-2 mt-0.5 flex-wrap\">\n {!plugin.isCore && (\n <span className=\"text-xs text-text-muted font-mono\">\n {plugin.packageName}\n </span>\n )}\n {plugin.cliCommand && (\n <span className=\"text-xs text-text-muted\">\n cli:{' '}\n <code className=\"text-xs font-mono\">\n vibe {plugin.cliCommand}\n </code>\n </span>\n )}\n {plugin.apiPrefix && (\n <span className=\"text-xs text-text-muted\">\n api:{' '}\n <code className=\"text-xs font-mono\">\n {plugin.apiPrefix}\n </code>\n </span>\n )}\n </div>\n {plugin.tags && plugin.tags.length > 0 && (\n <div className=\"flex gap-1 mt-1 flex-wrap\">\n {plugin.tags.map((tag) => (\n <span\n key={tag}\n className=\"inline-flex px-1.5 py-0.5 text-[10px] bg-bg-secondary text-text-muted rounded\"\n >\n {tag}\n </span>\n ))}\n </div>\n )}\n </div>\n <div className=\"flex items-center gap-2 flex-shrink-0 sm:ml-3\">\n {plugin.hasUI && (\n <button\n onClick={() => setPluginSubTab('ui-plugins')}\n className=\"flex items-center gap-1.5 px-2.5 py-1.5 text-xs text-action-primary-bg bg-action-primary-bg/10 rounded-md hover:bg-action-primary-bg/20 transition-colors border border-action-primary-bg/20\"\n title={`Open ${plugin.pluginName} UI`}\n >\n <Monitor className=\"w-3 h-3\" />\n Open UI\n </button>\n )}\n {!plugin.isCore && (\n <button\n onClick={() => handleRemovePlugin(plugin.packageName)}\n disabled={pluginActionLoading === plugin.packageName}\n className=\"flex items-center gap-1.5 px-2.5 py-1.5 text-xs text-status-error-text bg-status-error-bg rounded-md hover:bg-status-error-bg/80 transition-colors disabled:opacity-50\"\n >\n {pluginActionLoading === plugin.packageName ? (\n <Loader2 className=\"w-3 h-3 animate-spin\" />\n ) : (\n <Trash2 className=\"w-3 h-3\" />\n )}\n Remove\n </button>\n )}\n </div>\n </div>\n ))}\n </div>\n ) : (\n <p className=\"text-sm text-text-muted\">\n {pluginSearchQuery\n ? 'No installed plugins match your search.'\n : 'No plugin data available. Check agent connectivity or refresh.'}\n </p>\n )}\n </>\n )}\n\n {/* ── Available Sub-Tab ────────────────────────────────── */}\n {pluginSubTab === 'available' && (\n <>\n {filteredAvailable.length > 0 ? (\n <div className=\"space-y-2\">\n {filteredAvailable.map((plugin) => (\n <div\n key={plugin.packageName}\n className=\"flex flex-col sm:flex-row sm:items-center justify-between gap-2 p-3 bg-bg-sunken rounded-lg\"\n >\n <div className=\"min-w-0\">\n <p className=\"text-sm font-medium text-text-primary\">\n {plugin.name}\n </p>\n <p className=\"text-xs text-text-secondary mt-0.5\">\n {plugin.description}\n </p>\n <p className=\"text-xs text-text-muted font-mono mt-0.5\">\n {plugin.packageName}\n </p>\n </div>\n <button\n onClick={() => handleInstallPlugin(plugin.packageName)}\n disabled={pluginActionLoading === plugin.packageName}\n className=\"flex items-center gap-1.5 px-2.5 py-1.5 text-xs text-action-primary-text bg-action-primary-bg rounded-md hover:bg-action-primary-bg-hover transition-colors disabled:opacity-50 flex-shrink-0 sm:ml-3\"\n >\n {pluginActionLoading === plugin.packageName ? (\n <Loader2 className=\"w-3 h-3 animate-spin\" />\n ) : (\n <Download className=\"w-3 h-3\" />\n )}\n Install\n </button>\n </div>\n ))}\n </div>\n ) : (\n <p className=\"text-sm text-text-muted\">\n {pluginSearchQuery\n ? 'No available plugins match your search.'\n : availablePlugins.every((p) => p.installed)\n ? 'All available plugins are already installed.'\n : 'No available plugins found.'}\n </p>\n )}\n </>\n )}\n\n {/* ── Store Sub-Tab (Burdenoff Store purchased plugins) ── */}\n {pluginSubTab === 'store' && (\n <>\n {storePluginsError && (\n <div className=\"flex items-center gap-2 p-3 bg-status-error-bg text-status-error-text rounded-md text-sm\">\n <X className=\"w-4 h-4 flex-shrink-0\" />\n <span className=\"flex-1\">{storePluginsError}</span>\n </div>\n )}\n {storePluginsLoading ? (\n <p className=\"text-sm text-text-muted\">Loading purchased plugins…</p>\n ) : storePlugins.length === 0 ? (\n <div className=\"py-8 text-center\">\n <p className=\"text-sm text-text-muted\">\n No plugins purchased from the Burdenoff store yet.\n </p>\n <a\n href=\"/store/marketplace\"\n className=\"mt-2 inline-flex items-center gap-1 text-xs font-semibold text-action-primary-text hover:underline\"\n >\n Browse the store →\n </a>\n </div>\n ) : (\n <div className=\"space-y-2\">\n {storePlugins.map((ent) => {\n const manifest =\n (ent.product?.manifest as Record<string, unknown> | null) ?? {};\n const digital = manifest['digital'] as\n | Record<string, unknown>\n | undefined;\n const install = digital?.['install'] as\n | Record<string, unknown>\n | undefined;\n const packageName =\n typeof install?.['packageName'] === 'string'\n ? (install['packageName'] as string)\n : null;\n const isAlreadyInstalled = installedPlugins.some(\n (p) => p.packageName === packageName\n );\n return (\n <div\n key={ent.id}\n className=\"flex flex-col sm:flex-row sm:items-center justify-between gap-2 p-3 bg-bg-sunken rounded-lg\"\n >\n <div className=\"flex items-start gap-3 min-w-0 flex-1\">\n {ent.product?.icon ? (\n <img\n src={ent.product.icon}\n alt=\"\"\n className=\"w-10 h-10 rounded-md object-cover flex-shrink-0\"\n />\n ) : (\n <div className=\"w-10 h-10 flex-shrink-0 rounded-md bg-bg-secondary flex items-center justify-center\">\n <Puzzle className=\"w-5 h-5 text-text-muted\" />\n </div>\n )}\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex items-center gap-2\">\n <h4 className=\"text-sm font-semibold text-text-primary truncate\">\n {ent.product?.name ?? 'Unknown'}\n </h4>\n {ent.licenseKey && (\n <span className=\"text-[10px] bg-status-success-bg text-status-success-text px-1.5 py-0.5 rounded-full\">\n Licensed\n </span>\n )}\n </div>\n {packageName && (\n <p className=\"text-xs text-text-muted font-mono truncate\">\n {packageName}\n </p>\n )}\n {ent.product?.description && (\n <p className=\"text-xs text-text-secondary line-clamp-2 mt-1\">\n {ent.product.description}\n </p>\n )}\n </div>\n </div>\n <button\n onClick={() =>\n void handleInstallStorePlugin(ent.productId, ent.licenseKey)\n }\n disabled={\n isAlreadyInstalled ||\n storeInstallingId === ent.productId ||\n !packageName\n }\n className=\"inline-flex items-center gap-1.5 px-3 py-1.5 text-xs font-semibold rounded-md bg-action-primary-bg text-action-primary-text hover:opacity-90 disabled:opacity-60 flex-shrink-0\"\n >\n {isAlreadyInstalled\n ? 'Installed'\n : storeInstallingId === ent.productId\n ? 'Installing…'\n : 'Install'}\n </button>\n </div>\n );\n })}\n </div>\n )}\n </>\n )}\n\n {/* ── UI Plugins Sub-Tab (Embedded Browser) ────────────── */}\n {pluginSubTab === 'ui-plugins' && (\n <>\n {uiPlugins.length > 0 || agent?.tunnelUrl ? (\n <PluginUIPanel\n availablePlugins={[\n // Synthetic code-server entry (proxied, not a standard UI plugin)\n ...(agent?.tunnelUrl\n ? [\n {\n pluginName: 'code-server',\n displayName: 'Code Server (VS Code)',\n description: 'Browser-based VS Code editor',\n version: 'latest',\n customUrl: '/code-server/',\n } satisfies UIPluginOption,\n ]\n : []),\n ...uiPlugins.map(\n (p): UIPluginOption => ({\n pluginName: p.pluginName,\n displayName: p.pluginName\n .replace(/^ui-/, '')\n .replace(/-/g, ' ')\n .replace(/\\b\\w/g, (c) => c.toUpperCase()),\n description: p.description,\n version: p.version,\n })\n ),\n ]}\n tunnelUrl={agent?.tunnelUrl || null}\n agentApiKey={agent?.agentApiKey}\n />\n ) : (\n <p className=\"text-sm text-text-muted\">\n {pluginSearchQuery\n ? 'No UI plugins match your search.'\n : 'No plugins with UI are currently installed.'}\n </p>\n )}\n </>\n )}\n\n {/* Loading */}\n {pluginsLoading && installedPlugins.length === 0 && (\n <div className=\"flex items-center gap-2 text-sm text-text-secondary\">\n <Loader2 className=\"w-4 h-4 animate-spin\" />\n Loading plugins...\n </div>\n )}\n </div>\n </Card>\n </motion.div>\n );\n })()}\n\n {/* Sessions Tab */}\n {activeTab === 'sessions' && (\n <motion.div\n key=\"sessions\"\n initial={{ opacity: 0, y: 8 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0, y: -8 }}\n transition={{ duration: 0.2 }}\n >\n <Card>\n <div className=\"p-4 border-b border-border-default flex items-center justify-between\">\n <h3 className=\"font-semibold text-text-primary flex items-center gap-2\">\n <Terminal className=\"w-5 h-5\" />\n {tr('nav.sessions', 'Sessions')} ({agentSessions.length})\n </h3>\n </div>\n {agentSessions.length > 0 ? (\n <div className=\"divide-y divide-border-primary\">\n {agentSessions.map((session: SessionItem) => (\n <div\n key={session.id}\n onClick={() => handleSessionClick(session.id)}\n className=\"p-4 flex flex-col sm:flex-row items-start sm:items-center justify-between gap-2 cursor-pointer hover:bg-bg-sunken/50 transition-colors\"\n >\n <div className=\"flex items-center gap-3 min-w-0\">\n <Terminal className=\"w-5 h-5 text-text-secondary flex-shrink-0\" />\n <div className=\"min-w-0\">\n <p className=\"font-medium text-text-primary truncate\">{session.name}</p>\n <p className=\"text-sm text-text-secondary truncate\">{session.type}</p>\n </div>\n </div>\n <StatusBadge status={session.status} />\n </div>\n ))}\n </div>\n ) : (\n <div className=\"p-6 text-center text-text-secondary\">\n {tr('agentDetails.noSessionsOnAgent', 'No sessions on this agent')}\n </div>\n )}\n </Card>\n </motion.div>\n )}\n\n {activeTab === 'logs' && (\n <motion.div\n key=\"logs\"\n initial={{ opacity: 0, y: 8 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0, y: -8 }}\n transition={{ duration: 0.2 }}\n >\n <Card>\n <div className=\"p-4 border-b border-border-default flex items-center justify-between\">\n <h3 className=\"font-semibold text-text-primary flex items-center gap-2\">\n <ScrollText className=\"w-5 h-5\" />\n {tr('nav.logs', 'Logs')}\n </h3>\n </div>\n <div className=\"p-4\">\n <LogViewer agentId={agent.id} className=\"min-h-[28rem]\" />\n </div>\n </Card>\n </motion.div>\n )}\n\n {/* Vibes Tab */}\n {activeTab === 'vibes' && (\n <motion.div\n key=\"vibes\"\n initial={{ opacity: 0, y: 8 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0, y: -8 }}\n transition={{ duration: 0.2 }}\n >\n <Card>\n <div className=\"p-4 border-b border-border-default flex items-center justify-between\">\n <h3 className=\"font-semibold text-text-primary flex items-center gap-2\">\n <Zap className=\"w-5 h-5\" />\n {tr('nav.vibes', 'Vibes')} ({agentVibes.length})\n </h3>\n </div>\n {agentVibes.length > 0 ? (\n <div className=\"divide-y divide-border-primary\">\n {agentVibes.map((vibe: VibeItem) => (\n <div\n key={vibe.id}\n onClick={() => handleVibeClick(vibe.id)}\n className=\"p-4 flex flex-col sm:flex-row items-start sm:items-center justify-between gap-2 cursor-pointer hover:bg-bg-sunken/50 transition-colors\"\n >\n <div className=\"flex items-center gap-3 min-w-0\">\n <Zap className=\"w-5 h-5 text-text-secondary flex-shrink-0\" />\n <div className=\"min-w-0\">\n <p className=\"font-medium text-text-primary truncate\">{vibe.name}</p>\n <p className=\"text-sm text-text-secondary truncate\">{vibe.type}</p>\n </div>\n </div>\n <StatusBadge status={vibe.status} />\n </div>\n ))}\n </div>\n ) : (\n <div className=\"p-6 text-center text-text-secondary\">\n {tr('agentDetails.noVibesUsingAgent', 'No vibes using this agent')}\n </div>\n )}\n </Card>\n </motion.div>\n )}\n\n {/* Notes Tab */}\n {activeTab === 'notes' && (\n <motion.div\n key=\"notes\"\n initial={{ opacity: 0, y: 8 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0, y: -8 }}\n transition={{ duration: 0.2 }}\n className=\"space-y-6\"\n >\n <NotesTabPanel\n context=\"agent\"\n agentVibes={agentVibes.map((v: VibeItem) => ({ id: v.id, name: v.name }))}\n />\n </motion.div>\n )}\n\n {activeTab === 'backup' && agent.tunnelUrl && agent.agentApiKey && (\n <motion.div\n key=\"backup\"\n initial={{ opacity: 0, y: 8 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0, y: -8 }}\n transition={{ duration: 0.2 }}\n >\n <AgentBackupTab agentTunnelUrl={agent.tunnelUrl} agentApiKey={agent.agentApiKey} />\n </motion.div>\n )}\n\n {activeTab === 'backup' && (!agent.tunnelUrl || !agent.agentApiKey) && (\n <motion.div\n key=\"backup-no-tunnel\"\n initial={{ opacity: 0, y: 8 }}\n animate={{ opacity: 1, y: 0 }}\n exit={{ opacity: 0, y: -8 }}\n transition={{ duration: 0.2 }}\n >\n <Card className=\"p-6 text-center text-text-secondary\">\n <Database className=\"w-8 h-8 mx-auto mb-2 text-text-muted\" />\n <p>\n {tr(\n 'agentDetails.backupRequiresTunnelAndApiKey',\n 'Agent tunnel URL and API key are required for backup management.'\n )}\n </p>\n <p className=\"text-sm mt-1\">\n {tr(\n 'agentDetails.configureConnectionInOverview',\n 'Configure the agent connection in the Overview tab.'\n )}\n </p>\n </Card>\n </motion.div>\n )}\n </AnimatePresence>\n\n {/* Configure Agent Modal */}\n {showConfigModal && (\n <div className=\"fixed inset-0 bg-bg-overlay flex items-center justify-center z-50 p-4\">\n <div className=\"bg-bg-surface rounded-lg p-6 w-full max-w-lg\">\n <h2 className=\"text-lg font-semibold text-text-primary mb-4\">\n {tr('agentDetails.configure', 'Configure')} {agent.name}\n </h2>\n {configError && (\n <div className=\"mb-4 p-3 bg-status-error-bg text-status-error-text rounded-md text-sm\">\n {configError}\n </div>\n )}\n <div className=\"space-y-4\">\n <div>\n <label className=\"block text-sm font-medium text-text-primary mb-1\">\n {tr('webhooks.name', 'Name')}\n </label>\n <input\n ref={agentNameRef}\n type=\"text\"\n defaultValue={agent.name}\n className=\"w-full px-3 py-2 bg-bg-sunken border border-border-default rounded-md text-text-primary\"\n />\n </div>\n <div>\n <label className=\"block text-sm font-medium text-text-primary mb-1\">\n {tr('analytics.platform', 'Platform')}\n </label>\n <input\n type=\"text\"\n value={`${agent.platform} / ${agent.architecture}`}\n disabled\n className=\"w-full px-3 py-2 bg-bg-sunken border border-border-default rounded-md text-text-secondary\"\n />\n </div>\n <div>\n <label className=\"block text-sm font-medium text-text-primary mb-1\">\n {tr('agentDetails.version', 'Version')}\n </label>\n <input\n type=\"text\"\n value={agent.version}\n disabled\n className=\"w-full px-3 py-2 bg-bg-sunken border border-border-default rounded-md text-text-secondary\"\n />\n </div>\n <div>\n <label className=\"block text-sm font-medium text-text-primary mb-1\">\n {tr('agentDetails.tunnelUrl', 'Tunnel URL')}\n </label>\n <input\n ref={agentTunnelUrlRef}\n type=\"text\"\n defaultValue={agent.tunnelUrl ?? ''}\n placeholder={tr(\n 'agentDetails.tunnelUrlPlaceholder',\n 'https://xxx.trycloudflare.com'\n )}\n className=\"w-full px-3 py-2 bg-bg-sunken border border-border-default rounded-md text-text-primary font-mono text-sm\"\n />\n <p className=\"mt-1 text-xs text-text-muted\">\n {tr(\n 'agentDetails.tunnelUrlHint',\n 'The public URL for accessing this agent remotely. Auto-updates when gateway auth is configured.'\n )}\n </p>\n </div>\n <div>\n <label className=\"block text-sm font-medium text-text-primary mb-1\">\n {tr('agentDetails.agentApiKey', 'Agent API Key')}\n </label>\n <input\n ref={agentApiKeyRef}\n type=\"text\"\n defaultValue={agent.agentApiKey ?? ''}\n placeholder={tr('agentDetails.agentApiKeyPlaceholder', 'sk-agent-...')}\n className=\"w-full px-3 py-2 bg-bg-sunken border border-border-default rounded-md text-text-primary font-mono text-sm\"\n />\n <p className=\"mt-1 text-xs text-text-muted\">\n {tr(\n 'agentDetails.agentApiKeyHint',\n 'Used to authenticate requests to the agent. Leave empty to clear.'\n )}\n </p>\n </div>\n <div>\n <div className=\"flex items-center gap-1.5 mb-1\">\n <label className=\"text-sm font-medium text-text-primary\">AI Context</label>\n <div className=\"relative\">\n <button\n type=\"button\"\n onClick={() => setShowAiContextInfo((v) => !v)}\n className=\"p-0.5 rounded-full text-text-muted hover:text-text-secondary transition-colors\"\n aria-label=\"What is AI Context?\"\n >\n <Info className=\"w-3.5 h-3.5\" />\n </button>\n {showAiContextInfo && (\n <>\n <div\n className=\"fixed inset-0 z-10\"\n onClick={() => setShowAiContextInfo(false)}\n />\n <div className=\"absolute left-0 top-6 z-20 w-72 bg-bg-elevated border border-border-default rounded-lg shadow-xl p-3 text-xs text-text-secondary space-y-1.5\">\n <p className=\"font-semibold text-text-primary\">What is AI Context?</p>\n <p>\n A short description (Markdown supported) that AI tools running on this\n agent will read to understand the environment — e.g. what the machine is\n for, what services it runs, or any constraints to follow.\n </p>\n <p className=\"text-text-muted\">\n Example: &quot;Production billing server. Do not modify files outside\n /src. Node 20, Docker installed.&quot;\n </p>\n </div>\n </>\n )}\n </div>\n </div>\n <textarea\n ref={agentAiContextRef}\n defaultValue={agent.aiContext ?? ''}\n rows={4}\n placeholder=\"e.g. This agent runs on the billing server. Node 20, Docker installed. Do not modify files outside /src.\"\n className=\"w-full px-3 py-2 bg-bg-sunken border border-border-default rounded-md text-text-primary text-sm\"\n />\n </div>\n <div>\n <label className=\"block text-sm font-medium text-text-primary mb-1\">\n {tr('agentDetails.metadataLabel', 'Metadata (JSON)')}\n </label>\n <textarea\n ref={agentMetadataRef}\n defaultValue={agent.metadata ? JSON.stringify(agent.metadata, null, 2) : '{}'}\n rows={4}\n className=\"w-full px-3 py-2 bg-bg-sunken border border-border-default rounded-md text-text-primary font-mono text-sm\"\n />\n </div>\n </div>\n <div className=\"flex flex-wrap justify-end gap-3 mt-6\">\n <button\n onClick={() => setShowConfigModal(false)}\n disabled={configLoading}\n className=\"px-4 py-2 text-text-primary hover:bg-bg-sunken rounded-md transition-colors disabled:opacity-50\"\n >\n {tr('common.cancel', 'Cancel')}\n </button>\n <button\n onClick={handleSubmitConfig}\n disabled={configLoading}\n className=\"px-4 py-2 bg-action-primary-bg text-action-primary-text rounded-md hover:bg-action-primary-bg-hover transition-colors disabled:opacity-50\"\n >\n {configLoading\n ? tr('agentDetails.saving', 'Saving...')\n : tr('agentDetails.saveConfiguration', 'Save Configuration')}\n </button>\n </div>\n </div>\n </div>\n )}\n\n <QuotaExhaustedDialog\n isOpen={showQuotaExhausted}\n onClose={() => setShowQuotaExhausted(false)}\n onConfirm={() => {\n setShowQuotaExhausted(false);\n navigate('/billing');\n }}\n title=\"Plugin Install Quota Reached\"\n message=\"You have used the plugin installation quota for your current plan. Upgrade to install more plugins.\"\n />\n </MotionPage>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Agent Graph Page — Dedicated full-page view of the agent connection graph.
3
+ *
4
+ * Shows targets as group nodes with agents inside (sub-flows) and
5
+ * connections as directed edges. Supports root-node scoping and
6
+ * RBAC permission editing.
7
+ */
8
+ export declare function AgentGraphPage(): import("react/jsx-runtime").JSX.Element;
9
+ //# sourceMappingURL=AgentGraphPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentGraphPage.d.ts","sourceRoot":"","sources":["../../src/pages/AgentGraphPage.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAyBH,wBAAgB,cAAc,4CA6Q7B"}
@@ -0,0 +1,179 @@
1
+ import { useAgentConnectionConfigQuery as e, useGetAgentGraphQuery as t, useUpdateConnectionPermissionsMutation as n } from "../generated/wspace-operations.js";
2
+ import { useVibeControls as r, useVibeNavigate as i } from "../providers/VibeControlsProvider.js";
3
+ import a from "../hooks/useCachedInitialData.js";
4
+ import { PageHeader as o } from "../components/shared/PageHeader.js";
5
+ import { LoadingState as s } from "../components/shared/LoadingState.js";
6
+ import { ErrorState as c } from "../components/shared/ErrorState.js";
7
+ import { EmptyState as l } from "../components/shared/EmptyState.js";
8
+ import { GetHelpButton as u } from "../components/shared/GetHelpButton.js";
9
+ import { SearchableSelect as d } from "../components/shared/SearchableSelect.js";
10
+ import "../components/shared/index.js";
11
+ import { VIBE_PERMISSIONS as f } from "../constants/permissions.js";
12
+ import { AgentGraphView as p } from "../components/graph/AgentGraphView.js";
13
+ import { useCallback as m, useMemo as h, useState as g } from "react";
14
+ import { useI18n as _ } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
15
+ import { GitBranch as v, Loader2 as y, Network as b } from "lucide-react";
16
+ import { usePermissions as x } from "@burdenoff/fe-libs/shared/providers/shell";
17
+ import { Fragment as S, jsx as C, jsxs as w } from "react/jsx-runtime";
18
+ import { MotionPage as T } from "@burdenoff/fe-libs/shared/motion";
19
+ //#region src/pages/AgentGraphPage.tsx
20
+ function E() {
21
+ let { workspaceId: E } = r(), D = i(), { t: O } = _(), { hasPermission: k, isLoading: A } = x(), [j, M] = g(null), N = m((e, t, n) => {
22
+ let r = O(e, n), i = r === e ? t : r;
23
+ return n ? Object.entries(n).reduce((e, [t, n]) => e.replace(`{{${t}}}`, String(n)), i) : i;
24
+ }, [O]), { agents: P, targets: F } = a(), I = h(() => {
25
+ let e = P.map((e) => ({
26
+ value: e.id,
27
+ label: N("agentGraph.scopeAgentPrefix", "Agent: {{name}}", { name: e.name })
28
+ }));
29
+ return [...F.map((e) => ({
30
+ value: `target:${e.id}`,
31
+ label: N("agentGraph.scopeTargetPrefix", "Target: {{name}}", { name: e.name })
32
+ })), ...e];
33
+ }, [
34
+ P,
35
+ F,
36
+ N
37
+ ]), [L, R] = g(""), { data: z } = e({ skip: !E }), B = z?.agentConnectionConfig.permissions ?? [], V = z?.agentConnectionConfig.scopes ?? [], { data: H, previousData: U, loading: W, error: G } = t({
38
+ variables: {
39
+ workspaceId: E || "",
40
+ rootAgentId: j || void 0
41
+ },
42
+ skip: !E
43
+ }), K = H?.agentGraph ?? U?.agentGraph, q = K?.targets ?? [], J = K?.connections ?? [], Y = W, X = Y && !K, Z = Y && !!K, [Q] = n(), $ = m((e, t) => {
44
+ if (e === "target") {
45
+ D(`/agents?${new URLSearchParams({
46
+ tab: "targets",
47
+ selectedTargetId: t
48
+ }).toString()}`);
49
+ return;
50
+ }
51
+ D(`/agents/${t}`);
52
+ }, [D]), ee = m((e, t, n) => {
53
+ Q({ variables: {
54
+ connectionId: e,
55
+ input: {
56
+ permissions: t,
57
+ scopes: n
58
+ }
59
+ } });
60
+ }, [Q]);
61
+ return A ? /* @__PURE__ */ C("div", {
62
+ className: "flex items-center justify-center min-h-[400px]",
63
+ children: /* @__PURE__ */ C("p", {
64
+ className: "text-text-secondary",
65
+ children: "Loading permissions..."
66
+ })
67
+ }) : k(f.AGENT_READ) ? /* @__PURE__ */ w(T, { children: [
68
+ /* @__PURE__ */ C(o, {
69
+ title: N("nav.agentGraph", "Agent Graph"),
70
+ description: N("agentGraph.description", "Visualize and manage connections between targets and agents.")
71
+ }),
72
+ X && /* @__PURE__ */ C(s, { message: N("agentGraph.loading", "Loading agent graph...") }),
73
+ !Y && G && q.length === 0 && /* @__PURE__ */ C(c, {
74
+ title: N("agentGraph.failedLoad", "Failed to load agent graph"),
75
+ message: G.message
76
+ }),
77
+ !Y && !G && q.length === 0 && !L && /* @__PURE__ */ C(l, {
78
+ icon: /* @__PURE__ */ C(b, { className: "w-8 h-8 text-text-secondary" }),
79
+ title: N("agentGraph.noTargetsConnected", "No targets connected"),
80
+ description: N("agentGraph.noTargetsDescription", "Register an agent on a target to start visualizing your infrastructure topology."),
81
+ action: /* @__PURE__ */ C(u, { prompt: "What is the Agent Graph in VibeControls and what does it show?" })
82
+ }),
83
+ (q.length > 0 || L || Z) && /* @__PURE__ */ w(S, { children: [
84
+ /* @__PURE__ */ w("div", {
85
+ className: "flex items-center gap-3 mt-4",
86
+ children: [
87
+ /* @__PURE__ */ w("div", {
88
+ className: "flex items-center gap-2",
89
+ children: [
90
+ /* @__PURE__ */ C(v, {
91
+ size: 16,
92
+ className: "text-text-tertiary"
93
+ }),
94
+ /* @__PURE__ */ C("span", {
95
+ className: "text-sm font-medium text-text-secondary",
96
+ children: N("agentGraph.countSummary", "{{targets}} targets, {{connections}} connections", {
97
+ targets: q.length,
98
+ connections: J.length
99
+ })
100
+ }),
101
+ Z && /* @__PURE__ */ w("span", {
102
+ role: "status",
103
+ "aria-live": "polite",
104
+ className: "inline-flex items-center gap-1.5 rounded-full border border-border-default bg-bg-surface px-2.5 py-1 text-xs font-medium text-text-secondary",
105
+ children: [/* @__PURE__ */ C(y, { className: "h-3.5 w-3.5 animate-spin text-action-primary-bg" }), N("agentGraph.refreshing", "Refreshing graph...")]
106
+ })
107
+ ]
108
+ }),
109
+ /* @__PURE__ */ C("div", { className: "flex-1" }),
110
+ /* @__PURE__ */ w("div", {
111
+ className: "flex items-center gap-2",
112
+ children: [/* @__PURE__ */ C("label", {
113
+ className: "text-xs font-medium text-text-secondary",
114
+ children: N("agentGraph.scopeLabel", "Scope:")
115
+ }), /* @__PURE__ */ C(d, {
116
+ value: L,
117
+ onChange: (e) => {
118
+ R(e), e.startsWith("target:") ? M(null) : M(e || null);
119
+ },
120
+ options: I,
121
+ placeholder: N("agentGraph.scopeAll", "All targets & agents"),
122
+ clearable: !0,
123
+ disabled: Y,
124
+ dropdownAlign: "right"
125
+ })]
126
+ })
127
+ ]
128
+ }),
129
+ !Y && G && /* @__PURE__ */ C(c, {
130
+ title: N("agentGraph.failedRefresh", "Failed to refresh agent graph"),
131
+ message: G.message
132
+ }),
133
+ !Y && q.length === 0 && L && /* @__PURE__ */ C(l, {
134
+ icon: /* @__PURE__ */ C(b, { className: "w-8 h-8 text-text-secondary" }),
135
+ title: N("agentGraph.noScopeResults", "No results for this scope"),
136
+ description: N("agentGraph.noScopeDescription", "No targets match the selected scope. Clear the filter to view all targets.")
137
+ }),
138
+ (q.length > 0 || Z) && /* @__PURE__ */ w("div", {
139
+ className: "mt-4 relative",
140
+ style: {
141
+ height: "calc(100vh - 280px)",
142
+ minHeight: "400px"
143
+ },
144
+ "aria-busy": Z,
145
+ children: [/* @__PURE__ */ C(p, {
146
+ targets: q,
147
+ connections: J,
148
+ onUpdatePermissions: ee,
149
+ availablePermissions: B,
150
+ availableScopes: V,
151
+ onNodeClick: $,
152
+ fullHeight: !0
153
+ }), Z && /* @__PURE__ */ C("div", {
154
+ className: "absolute inset-0 z-10 flex items-center justify-center bg-bg-surface/60 backdrop-blur-[1px]",
155
+ children: /* @__PURE__ */ w("div", {
156
+ className: "inline-flex items-center gap-2 rounded-md border border-border-default bg-bg-surface px-3 py-2 text-sm text-text-secondary shadow-md",
157
+ children: [/* @__PURE__ */ C(y, { className: "h-4 w-4 animate-spin text-action-primary-bg" }), /* @__PURE__ */ C("span", { children: L ? N("agentGraph.loadingScope", "Applying selected scope...") : N("agentGraph.refreshing", "Refreshing graph...") })]
158
+ })
159
+ })]
160
+ })
161
+ ] })
162
+ ] }) : /* @__PURE__ */ C("div", {
163
+ className: "flex items-center justify-center min-h-[400px]",
164
+ children: /* @__PURE__ */ w("div", {
165
+ className: "text-center space-y-2",
166
+ children: [/* @__PURE__ */ C("h2", {
167
+ className: "text-lg font-semibold text-foreground",
168
+ children: "Access Denied"
169
+ }), /* @__PURE__ */ C("p", {
170
+ className: "text-sm text-text-secondary",
171
+ children: "You don't have permission to access this page."
172
+ })]
173
+ })
174
+ });
175
+ }
176
+ //#endregion
177
+ export { E as AgentGraphPage };
178
+
179
+ //# sourceMappingURL=AgentGraphPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentGraphPage.js","names":[],"sources":["../../src/pages/AgentGraphPage.tsx"],"sourcesContent":["/**\n * Agent Graph Page — Dedicated full-page view of the agent connection graph.\n *\n * Shows targets as group nodes with agents inside (sub-flows) and\n * connections as directed edges. Supports root-node scoping and\n * RBAC permission editing.\n */\n\nimport { useState, useMemo, useCallback } from 'react';\nimport { usePermissions } from '@burdenoff/fe-libs/shared/providers/shell';\nimport { VIBE_PERMISSIONS } from '../constants/permissions';\nimport { GitBranch, Loader2, Network } from 'lucide-react';\nimport {\n PageHeader,\n SearchableSelect,\n LoadingState,\n ErrorState,\n EmptyState,\n GetHelpButton,\n} from '@/components/shared';\nimport { MotionPage } from '@burdenoff/fe-libs/shared/motion';\nimport { useI18n } from '@burdenoff/fe-libs/shared/providers/shell/I18nProvider';\nimport { useVibeControls, useVibeNavigate } from '@/providers/VibeControlsProvider';\nimport { useCachedInitialData } from '@/hooks/useCachedInitialData';\nimport {\n useGetAgentGraphQuery,\n useUpdateConnectionPermissionsMutation,\n useAgentConnectionConfigQuery,\n} from '@/generated/wspace-operations';\nimport { AgentGraphView } from '@/components/graph/AgentGraphView';\n\nexport function AgentGraphPage() {\n const { workspaceId } = useVibeControls();\n const navigate = useVibeNavigate();\n const { t } = useI18n();\n const { hasPermission, isLoading: permissionsLoading } = usePermissions();\n const [rootAgentId, setRootAgentId] = useState<string | null>(null);\n\n const tr = useCallback(\n (key: string, fallback: string, params?: Record<string, string | number>): string => {\n const translated = t(key, params);\n const template = translated === key ? fallback : translated;\n\n if (!params) return template;\n\n return Object.entries(params).reduce(\n (acc, [paramKey, paramValue]) => acc.replace(`{{${paramKey}}}`, String(paramValue)),\n template\n );\n },\n [t]\n );\n\n // Use cached initial data for agents and targets dropdown\n const { agents: cachedAgents, targets: cachedTargets } = useCachedInitialData();\n const scopeOptions = useMemo(() => {\n const agentOpts = cachedAgents.map((a) => ({\n value: a.id,\n label: tr('agentGraph.scopeAgentPrefix', 'Agent: {{name}}', { name: a.name }),\n }));\n const targetOpts = cachedTargets.map((t) => ({\n value: `target:${t.id}`,\n label: tr('agentGraph.scopeTargetPrefix', 'Target: {{name}}', { name: t.name }),\n }));\n return [...targetOpts, ...agentOpts];\n }, [cachedAgents, cachedTargets, tr]);\n\n const [scopeValue, setScopeValue] = useState<string>('');\n\n const { data: connectionConfigData } = useAgentConnectionConfigQuery({\n skip: !workspaceId,\n });\n\n const availablePermissions = connectionConfigData?.agentConnectionConfig.permissions ?? [];\n const availableScopes = connectionConfigData?.agentConnectionConfig.scopes ?? [];\n\n const {\n data: graphData,\n previousData,\n loading,\n error,\n } = useGetAgentGraphQuery({\n variables: {\n workspaceId: workspaceId || '',\n rootAgentId: rootAgentId || undefined,\n },\n skip: !workspaceId,\n });\n\n const resolvedAgentGraph = graphData?.agentGraph ?? previousData?.agentGraph;\n const graphTargets = resolvedAgentGraph?.targets ?? [];\n const graphConnections = resolvedAgentGraph?.connections ?? [];\n const isGraphLoading = loading;\n // Covers first load (including first scoped load) when no prior graph snapshot exists.\n const isInitialLoad = isGraphLoading && !resolvedAgentGraph;\n const isRefreshingGraph = isGraphLoading && Boolean(resolvedAgentGraph);\n\n const [updateConnectionPerms] = useUpdateConnectionPermissionsMutation();\n\n const handleNodeNavigate = useCallback(\n (nodeType: 'target' | 'agent', id: string) => {\n if (nodeType === 'target') {\n const targetParams = new URLSearchParams({\n tab: 'targets',\n selectedTargetId: id,\n });\n navigate(`/agents?${targetParams.toString()}`);\n return;\n }\n navigate(`/agents/${id}`);\n },\n [navigate]\n );\n\n const handleUpdatePermissions = useCallback(\n (connectionId: string, permissions: string[], scopes: string[]) => {\n void updateConnectionPerms({\n variables: { connectionId, input: { permissions, scopes } },\n });\n },\n [updateConnectionPerms]\n );\n\n if (permissionsLoading)\n return (\n <div className=\"flex items-center justify-center min-h-[400px]\">\n <p className=\"text-text-secondary\">Loading permissions...</p>\n </div>\n );\n if (!hasPermission(VIBE_PERMISSIONS.AGENT_READ))\n return (\n <div className=\"flex items-center justify-center min-h-[400px]\">\n <div className=\"text-center space-y-2\">\n <h2 className=\"text-lg font-semibold text-foreground\">Access Denied</h2>\n <p className=\"text-sm text-text-secondary\">\n You don't have permission to access this page.\n </p>\n </div>\n </div>\n );\n\n return (\n <MotionPage>\n <PageHeader\n title={tr('nav.agentGraph', 'Agent Graph')}\n description={tr(\n 'agentGraph.description',\n 'Visualize and manage connections between targets and agents.'\n )}\n />\n\n {isInitialLoad && (\n <LoadingState message={tr('agentGraph.loading', 'Loading agent graph...')} />\n )}\n\n {/* Non-fatal error: show banner but don't hide graph if data is available */}\n {!isGraphLoading && error && graphTargets.length === 0 && (\n <ErrorState\n title={tr('agentGraph.failedLoad', 'Failed to load agent graph')}\n message={error.message}\n />\n )}\n\n {!isGraphLoading && !error && graphTargets.length === 0 && !scopeValue && (\n <EmptyState\n icon={<Network className=\"w-8 h-8 text-text-secondary\" />}\n title={tr('agentGraph.noTargetsConnected', 'No targets connected')}\n description={tr(\n 'agentGraph.noTargetsDescription',\n 'Register an agent on a target to start visualizing your infrastructure topology.'\n )}\n action={\n <GetHelpButton prompt=\"What is the Agent Graph in VibeControls and what does it show?\" />\n }\n />\n )}\n\n {/* Scope controls + graph: shown whenever we have data, or when a scope filter is\n active (so the user can always clear the filter and recover the full view) */}\n {(graphTargets.length > 0 || scopeValue || isRefreshingGraph) && (\n <>\n {/* Filters — always rendered so user can clear an active scope filter */}\n <div className=\"flex items-center gap-3 mt-4\">\n <div className=\"flex items-center gap-2\">\n <GitBranch size={16} className=\"text-text-tertiary\" />\n <span className=\"text-sm font-medium text-text-secondary\">\n {tr('agentGraph.countSummary', '{{targets}} targets, {{connections}} connections', {\n targets: graphTargets.length,\n connections: graphConnections.length,\n })}\n </span>\n\n {isRefreshingGraph && (\n <span\n role=\"status\"\n aria-live=\"polite\"\n className=\"inline-flex items-center gap-1.5 rounded-full border border-border-default bg-bg-surface px-2.5 py-1 text-xs font-medium text-text-secondary\"\n >\n <Loader2 className=\"h-3.5 w-3.5 animate-spin text-action-primary-bg\" />\n {tr('agentGraph.refreshing', 'Refreshing graph...')}\n </span>\n )}\n </div>\n <div className=\"flex-1\" />\n <div className=\"flex items-center gap-2\">\n <label className=\"text-xs font-medium text-text-secondary\">\n {tr('agentGraph.scopeLabel', 'Scope:')}\n </label>\n <SearchableSelect\n value={scopeValue}\n onChange={(v: string) => {\n setScopeValue(v);\n // If selecting a target, clear rootAgentId; if agent, set it\n if (v.startsWith('target:')) {\n setRootAgentId(null);\n } else {\n setRootAgentId(v || null);\n }\n }}\n options={scopeOptions}\n placeholder={tr('agentGraph.scopeAll', 'All targets & agents')}\n clearable\n disabled={isGraphLoading}\n dropdownAlign=\"right\"\n />\n </div>\n </div>\n\n {!isGraphLoading && error && (\n <ErrorState\n title={tr('agentGraph.failedRefresh', 'Failed to refresh agent graph')}\n message={error.message}\n />\n )}\n\n {!isGraphLoading && graphTargets.length === 0 && scopeValue && (\n <EmptyState\n icon={<Network className=\"w-8 h-8 text-text-secondary\" />}\n title={tr('agentGraph.noScopeResults', 'No results for this scope')}\n description={tr(\n 'agentGraph.noScopeDescription',\n 'No targets match the selected scope. Clear the filter to view all targets.'\n )}\n />\n )}\n\n {(graphTargets.length > 0 || isRefreshingGraph) && (\n <div\n className=\"mt-4 relative\"\n style={{ height: 'calc(100vh - 280px)', minHeight: '400px' }}\n aria-busy={isRefreshingGraph}\n >\n <AgentGraphView\n targets={\n graphTargets as Array<{\n id: string;\n name: string;\n type: string;\n status: string;\n host?: string | null;\n agents: Array<{ id: string; name: string; version: string; isActive: boolean }>;\n }>\n }\n connections={\n graphConnections as Array<{\n id: string;\n protocol: string;\n status: string;\n permissions?: string[];\n scopes?: string[];\n label?: string | null;\n description?: string | null;\n sourceAgent: { id: string; name: string };\n target: { id: string; name: string; type: string };\n }>\n }\n onUpdatePermissions={handleUpdatePermissions}\n availablePermissions={availablePermissions}\n availableScopes={availableScopes}\n onNodeClick={handleNodeNavigate}\n fullHeight\n />\n {isRefreshingGraph && (\n <div className=\"absolute inset-0 z-10 flex items-center justify-center bg-bg-surface/60 backdrop-blur-[1px]\">\n <div className=\"inline-flex items-center gap-2 rounded-md border border-border-default bg-bg-surface px-3 py-2 text-sm text-text-secondary shadow-md\">\n <Loader2 className=\"h-4 w-4 animate-spin text-action-primary-bg\" />\n <span>\n {scopeValue\n ? tr('agentGraph.loadingScope', 'Applying selected scope...')\n : tr('agentGraph.refreshing', 'Refreshing graph...')}\n </span>\n </div>\n </div>\n )}\n </div>\n )}\n </>\n )}\n </MotionPage>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Tabbed landing page for /vibecontrols/agents — exposed as "Targets & Agents"
3
+ * in the UI. Combines the previously-separate Targets, Agents, and Agent Graph
4
+ * screens into a single tabbed landing so users can move fluidly between
5
+ * managing hosts (targets), installed agents, and the topology view without
6
+ * losing context.
7
+ *
8
+ * Tab state is synced to `?tab=` so deep-links (e.g. `?tab=graph`) survive
9
+ * reloads; the default tab (`targets`) omits the query param for clean URLs.
10
+ */
11
+ export declare function AgentsLandingPage(): import("react/jsx-runtime").JSX.Element;
12
+ //# sourceMappingURL=AgentsLandingPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentsLandingPage.d.ts","sourceRoot":"","sources":["../../src/pages/AgentsLandingPage.tsx"],"names":[],"mappings":"AAaA;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,4CAyFhC"}