@stigmer/react 3.1.17 → 3.2.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 (832) hide show
  1. package/agent-instance/AgentInstanceList.d.ts.map +1 -1
  2. package/agent-instance/AgentInstanceList.js +11 -3
  3. package/agent-instance/AgentInstanceList.js.map +1 -1
  4. package/channel/AgentChannelsPanel.d.ts +60 -0
  5. package/channel/AgentChannelsPanel.d.ts.map +1 -0
  6. package/channel/AgentChannelsPanel.js +255 -0
  7. package/channel/AgentChannelsPanel.js.map +1 -0
  8. package/channel/ChannelConversationsDialog.d.ts +41 -0
  9. package/channel/ChannelConversationsDialog.d.ts.map +1 -0
  10. package/channel/ChannelConversationsDialog.js +94 -0
  11. package/channel/ChannelConversationsDialog.js.map +1 -0
  12. package/channel/ChannelCredentialsDialog.d.ts +37 -0
  13. package/channel/ChannelCredentialsDialog.d.ts.map +1 -0
  14. package/channel/ChannelCredentialsDialog.js +75 -0
  15. package/channel/ChannelCredentialsDialog.js.map +1 -0
  16. package/channel/ChannelToolCredentials.d.ts +31 -0
  17. package/channel/ChannelToolCredentials.d.ts.map +1 -0
  18. package/channel/ChannelToolCredentials.js +41 -0
  19. package/channel/ChannelToolCredentials.js.map +1 -0
  20. package/channel/ConnectSlackDialog.d.ts +61 -0
  21. package/channel/ConnectSlackDialog.d.ts.map +1 -0
  22. package/channel/ConnectSlackDialog.js +238 -0
  23. package/channel/ConnectSlackDialog.js.map +1 -0
  24. package/channel/ConnectWhatsAppDialog.d.ts +70 -0
  25. package/channel/ConnectWhatsAppDialog.d.ts.map +1 -0
  26. package/channel/ConnectWhatsAppDialog.js +256 -0
  27. package/channel/ConnectWhatsAppDialog.js.map +1 -0
  28. package/channel/SlackMarkIcon.d.ts +11 -0
  29. package/channel/SlackMarkIcon.d.ts.map +1 -0
  30. package/channel/SlackMarkIcon.js +13 -0
  31. package/channel/SlackMarkIcon.js.map +1 -0
  32. package/channel/WhatsAppMarkIcon.d.ts +12 -0
  33. package/channel/WhatsAppMarkIcon.d.ts.map +1 -0
  34. package/channel/WhatsAppMarkIcon.js +14 -0
  35. package/channel/WhatsAppMarkIcon.js.map +1 -0
  36. package/channel/connect/ServingAppSection.d.ts +57 -0
  37. package/channel/connect/ServingAppSection.d.ts.map +1 -0
  38. package/channel/connect/ServingAppSection.js +49 -0
  39. package/channel/connect/ServingAppSection.js.map +1 -0
  40. package/channel/connect/ToolCredentialsSection.d.ts +20 -0
  41. package/channel/connect/ToolCredentialsSection.d.ts.map +1 -0
  42. package/channel/connect/ToolCredentialsSection.js +22 -0
  43. package/channel/connect/ToolCredentialsSection.js.map +1 -0
  44. package/channel/connect/VerbatimRefusal.d.ts +16 -0
  45. package/channel/connect/VerbatimRefusal.d.ts.map +1 -0
  46. package/channel/connect/VerbatimRefusal.js +18 -0
  47. package/channel/connect/VerbatimRefusal.js.map +1 -0
  48. package/channel/connect/icons.d.ts +16 -0
  49. package/channel/connect/icons.d.ts.map +1 -0
  50. package/channel/connect/icons.js +21 -0
  51. package/channel/connect/icons.js.map +1 -0
  52. package/channel/index.d.ts +36 -0
  53. package/channel/index.d.ts.map +1 -0
  54. package/channel/index.js +19 -0
  55. package/channel/index.js.map +1 -0
  56. package/channel/providerPresentation.d.ts +44 -0
  57. package/channel/providerPresentation.d.ts.map +1 -0
  58. package/channel/providerPresentation.js +106 -0
  59. package/channel/providerPresentation.js.map +1 -0
  60. package/channel/providers.d.ts +62 -0
  61. package/channel/providers.d.ts.map +1 -0
  62. package/channel/providers.js +26 -0
  63. package/channel/providers.js.map +1 -0
  64. package/channel/useAgentChannel.d.ts +31 -0
  65. package/channel/useAgentChannel.d.ts.map +1 -0
  66. package/channel/useAgentChannel.js +34 -0
  67. package/channel/useAgentChannel.js.map +1 -0
  68. package/channel/useAgentChannelList.d.ts +43 -0
  69. package/channel/useAgentChannelList.d.ts.map +1 -0
  70. package/channel/useAgentChannelList.js +39 -0
  71. package/channel/useAgentChannelList.js.map +1 -0
  72. package/channel/useChannelSessions.d.ts +47 -0
  73. package/channel/useChannelSessions.d.ts.map +1 -0
  74. package/channel/useChannelSessions.js +38 -0
  75. package/channel/useChannelSessions.js.map +1 -0
  76. package/channel/useChannelToolReadiness.d.ts +23 -0
  77. package/channel/useChannelToolReadiness.d.ts.map +1 -0
  78. package/channel/useChannelToolReadiness.js +28 -0
  79. package/channel/useChannelToolReadiness.js.map +1 -0
  80. package/channel/useConnectSlackChannel.d.ts +75 -0
  81. package/channel/useConnectSlackChannel.d.ts.map +1 -0
  82. package/channel/useConnectSlackChannel.js +115 -0
  83. package/channel/useConnectSlackChannel.js.map +1 -0
  84. package/channel/useCreateAgentChannel.d.ts +42 -0
  85. package/channel/useCreateAgentChannel.d.ts.map +1 -0
  86. package/channel/useCreateAgentChannel.js +48 -0
  87. package/channel/useCreateAgentChannel.js.map +1 -0
  88. package/channel/useDeleteAgentChannel.d.ts +40 -0
  89. package/channel/useDeleteAgentChannel.d.ts.map +1 -0
  90. package/channel/useDeleteAgentChannel.js +44 -0
  91. package/channel/useDeleteAgentChannel.js.map +1 -0
  92. package/channel/useInstallChannel.d.ts +60 -0
  93. package/channel/useInstallChannel.d.ts.map +1 -0
  94. package/channel/useInstallChannel.js +63 -0
  95. package/channel/useInstallChannel.js.map +1 -0
  96. package/channel/useOrgAgentChannelList.d.ts +32 -0
  97. package/channel/useOrgAgentChannelList.d.ts.map +1 -0
  98. package/channel/useOrgAgentChannelList.js +29 -0
  99. package/channel/useOrgAgentChannelList.js.map +1 -0
  100. package/channel/useSaveAgentChannel.d.ts +63 -0
  101. package/channel/useSaveAgentChannel.d.ts.map +1 -0
  102. package/channel/useSaveAgentChannel.js +104 -0
  103. package/channel/useSaveAgentChannel.js.map +1 -0
  104. package/channel-app/ChannelAppDetailPanel.d.ts +46 -0
  105. package/channel-app/ChannelAppDetailPanel.d.ts.map +1 -0
  106. package/channel-app/ChannelAppDetailPanel.js +142 -0
  107. package/channel-app/ChannelAppDetailPanel.js.map +1 -0
  108. package/channel-app/ChannelAppListPanel.d.ts +36 -0
  109. package/channel-app/ChannelAppListPanel.d.ts.map +1 -0
  110. package/channel-app/ChannelAppListPanel.js +63 -0
  111. package/channel-app/ChannelAppListPanel.js.map +1 -0
  112. package/channel-app/CreateChannelAppForm.d.ts +54 -0
  113. package/channel-app/CreateChannelAppForm.d.ts.map +1 -0
  114. package/channel-app/CreateChannelAppForm.js +140 -0
  115. package/channel-app/CreateChannelAppForm.js.map +1 -0
  116. package/channel-app/index.d.ts +18 -0
  117. package/channel-app/index.d.ts.map +1 -0
  118. package/channel-app/index.js +10 -0
  119. package/channel-app/index.js.map +1 -0
  120. package/channel-app/internal.d.ts +33 -0
  121. package/channel-app/internal.d.ts.map +1 -0
  122. package/channel-app/internal.js +44 -0
  123. package/channel-app/internal.js.map +1 -0
  124. package/channel-app/slackAppSetup.d.ts +80 -0
  125. package/channel-app/slackAppSetup.d.ts.map +1 -0
  126. package/channel-app/slackAppSetup.js +123 -0
  127. package/channel-app/slackAppSetup.js.map +1 -0
  128. package/channel-app/useChannelAppList.d.ts +35 -0
  129. package/channel-app/useChannelAppList.d.ts.map +1 -0
  130. package/channel-app/useChannelAppList.js +34 -0
  131. package/channel-app/useChannelAppList.js.map +1 -0
  132. package/channel-app/useCreateChannelApp.d.ts +39 -0
  133. package/channel-app/useCreateChannelApp.d.ts.map +1 -0
  134. package/channel-app/useCreateChannelApp.js +50 -0
  135. package/channel-app/useCreateChannelApp.js.map +1 -0
  136. package/channel-app/useDeleteChannelApp.d.ts +31 -0
  137. package/channel-app/useDeleteChannelApp.d.ts.map +1 -0
  138. package/channel-app/useDeleteChannelApp.js +43 -0
  139. package/channel-app/useDeleteChannelApp.js.map +1 -0
  140. package/channel-app/useUpdateChannelApp.d.ts +39 -0
  141. package/channel-app/useUpdateChannelApp.d.ts.map +1 -0
  142. package/channel-app/useUpdateChannelApp.js +50 -0
  143. package/channel-app/useUpdateChannelApp.js.map +1 -0
  144. package/channel-app/whatsappAppSetup.d.ts +51 -0
  145. package/channel-app/whatsappAppSetup.d.ts.map +1 -0
  146. package/channel-app/whatsappAppSetup.js +57 -0
  147. package/channel-app/whatsappAppSetup.js.map +1 -0
  148. package/environment/index.d.ts +2 -0
  149. package/environment/index.d.ts.map +1 -1
  150. package/environment/index.js +1 -0
  151. package/environment/index.js.map +1 -1
  152. package/environment/useToolCredentialsReadiness.d.ts +52 -0
  153. package/environment/useToolCredentialsReadiness.d.ts.map +1 -0
  154. package/environment/useToolCredentialsReadiness.js +84 -0
  155. package/environment/useToolCredentialsReadiness.js.map +1 -0
  156. package/execution/ArtifactContentBody.d.ts.map +1 -1
  157. package/execution/ArtifactContentBody.js +5 -21
  158. package/execution/ArtifactContentBody.js.map +1 -1
  159. package/execution/ArtifactFileContent.d.ts +28 -0
  160. package/execution/ArtifactFileContent.d.ts.map +1 -0
  161. package/execution/ArtifactFileContent.js +36 -0
  162. package/execution/ArtifactFileContent.js.map +1 -0
  163. package/execution/ArtifactRow.d.ts +8 -20
  164. package/execution/ArtifactRow.d.ts.map +1 -1
  165. package/execution/ArtifactRow.js +12 -45
  166. package/execution/ArtifactRow.js.map +1 -1
  167. package/execution/ArtifactRowView.d.ts +43 -0
  168. package/execution/ArtifactRowView.d.ts.map +1 -0
  169. package/execution/ArtifactRowView.js +35 -0
  170. package/execution/ArtifactRowView.js.map +1 -0
  171. package/execution/FileChangesView.d.ts.map +1 -1
  172. package/execution/FileChangesView.js +1 -61
  173. package/execution/FileChangesView.js.map +1 -1
  174. package/execution/SubAgentSection.d.ts.map +1 -1
  175. package/execution/SubAgentSection.js +4 -15
  176. package/execution/SubAgentSection.js.map +1 -1
  177. package/execution/ToolCallItem.d.ts.map +1 -1
  178. package/execution/ToolCallItem.js +16 -61
  179. package/execution/ToolCallItem.js.map +1 -1
  180. package/execution/agent-execution-document.d.ts +31 -0
  181. package/execution/agent-execution-document.d.ts.map +1 -0
  182. package/execution/agent-execution-document.js +48 -0
  183. package/execution/agent-execution-document.js.map +1 -0
  184. package/{session → execution}/artifact-document.d.ts +2 -3
  185. package/execution/artifact-document.d.ts.map +1 -0
  186. package/execution/artifact-document.js +23 -0
  187. package/execution/artifact-document.js.map +1 -0
  188. package/execution/artifact-row-item.d.ts +56 -0
  189. package/execution/artifact-row-item.d.ts.map +1 -0
  190. package/execution/artifact-row-item.js +57 -0
  191. package/execution/artifact-row-item.js.map +1 -0
  192. package/execution/deriveExecutionFileChanges.d.ts +55 -0
  193. package/execution/deriveExecutionFileChanges.d.ts.map +1 -0
  194. package/execution/deriveExecutionFileChanges.js +216 -0
  195. package/execution/deriveExecutionFileChanges.js.map +1 -0
  196. package/execution/file-change-document.d.ts +22 -0
  197. package/execution/file-change-document.d.ts.map +1 -0
  198. package/execution/file-change-document.js +34 -0
  199. package/execution/file-change-document.js.map +1 -0
  200. package/execution/index.d.ts +14 -0
  201. package/execution/index.d.ts.map +1 -1
  202. package/execution/index.js +9 -0
  203. package/execution/index.js.map +1 -1
  204. package/execution/useArtifactContentById.d.ts +61 -0
  205. package/execution/useArtifactContentById.d.ts.map +1 -0
  206. package/execution/useArtifactContentById.js +63 -0
  207. package/execution/useArtifactContentById.js.map +1 -0
  208. package/execution/useArtifactDownload.d.ts +4 -3
  209. package/execution/useArtifactDownload.d.ts.map +1 -1
  210. package/execution/useArtifactDownload.js +4 -3
  211. package/execution/useArtifactDownload.js.map +1 -1
  212. package/execution/useCreateAgentExecution.d.ts +1 -1
  213. package/execution/useLiveAgentExecution.d.ts +59 -0
  214. package/execution/useLiveAgentExecution.d.ts.map +1 -0
  215. package/execution/useLiveAgentExecution.js +73 -0
  216. package/execution/useLiveAgentExecution.js.map +1 -0
  217. package/index.d.ts +15 -10
  218. package/index.d.ts.map +1 -1
  219. package/index.js +21 -6
  220. package/index.js.map +1 -1
  221. package/internal/DecisionButton.d.ts +4 -3
  222. package/internal/DecisionButton.d.ts.map +1 -1
  223. package/internal/DecisionButton.js +4 -3
  224. package/internal/DecisionButton.js.map +1 -1
  225. package/internal/oauthPopup.d.ts +101 -0
  226. package/internal/oauthPopup.d.ts.map +1 -0
  227. package/internal/oauthPopup.js +208 -0
  228. package/internal/oauthPopup.js.map +1 -0
  229. package/internal/store/index.d.ts +0 -2
  230. package/internal/store/index.d.ts.map +1 -1
  231. package/internal/store/index.js +0 -1
  232. package/internal/store/index.js.map +1 -1
  233. package/internal/store/workflow-execution-event-store.d.ts +34 -1
  234. package/internal/store/workflow-execution-event-store.d.ts.map +1 -1
  235. package/internal/store/workflow-execution-event-store.js +81 -3
  236. package/internal/store/workflow-execution-event-store.js.map +1 -1
  237. package/internal/store/workspace-file-selection-store.d.ts +1 -2
  238. package/internal/store/workspace-file-selection-store.d.ts.map +1 -1
  239. package/internal/store/workspace-file-selection-store.js +2 -5
  240. package/internal/store/workspace-file-selection-store.js.map +1 -1
  241. package/internal/thread-card/ThreadCardShell.d.ts +91 -0
  242. package/internal/thread-card/ThreadCardShell.d.ts.map +1 -0
  243. package/internal/thread-card/ThreadCardShell.js +41 -0
  244. package/internal/thread-card/ThreadCardShell.js.map +1 -0
  245. package/internal/thread-card/glyphs.d.ts +34 -0
  246. package/internal/thread-card/glyphs.d.ts.map +1 -0
  247. package/internal/thread-card/glyphs.js +50 -0
  248. package/internal/thread-card/glyphs.js.map +1 -0
  249. package/internal/thread-card/index.d.ts +3 -0
  250. package/internal/thread-card/index.d.ts.map +1 -0
  251. package/internal/thread-card/index.js +3 -0
  252. package/internal/thread-card/index.js.map +1 -0
  253. package/internal/useRevealLine.d.ts +2 -2
  254. package/internal/useRevealLine.js +2 -2
  255. package/mcp-server/OAuthCallbackHandler.js +1 -1
  256. package/mcp-server/OAuthCallbackHandler.js.map +1 -1
  257. package/mcp-server/useMcpServerOAuthConnect.d.ts +4 -23
  258. package/mcp-server/useMcpServerOAuthConnect.d.ts.map +1 -1
  259. package/mcp-server/useMcpServerOAuthConnect.js +12 -145
  260. package/mcp-server/useMcpServerOAuthConnect.js.map +1 -1
  261. package/package.json +4 -4
  262. package/session/NewSessionViewer.d.ts.map +1 -1
  263. package/session/NewSessionViewer.js +0 -1
  264. package/session/NewSessionViewer.js.map +1 -1
  265. package/session/SessionPanelChip.d.ts +7 -22
  266. package/session/SessionPanelChip.d.ts.map +1 -1
  267. package/session/SessionPanelChip.js +8 -36
  268. package/session/SessionPanelChip.js.map +1 -1
  269. package/session/SessionViewer.d.ts +7 -4
  270. package/session/SessionViewer.d.ts.map +1 -1
  271. package/session/SessionViewer.js +32 -30
  272. package/session/SessionViewer.js.map +1 -1
  273. package/session/audience.d.ts +15 -1
  274. package/session/audience.d.ts.map +1 -1
  275. package/session/channelOrigin.d.ts +33 -0
  276. package/session/channelOrigin.d.ts.map +1 -0
  277. package/session/channelOrigin.js +36 -0
  278. package/session/channelOrigin.js.map +1 -0
  279. package/session/facets/index.d.ts +0 -2
  280. package/session/facets/index.d.ts.map +1 -1
  281. package/session/facets/index.js +0 -1
  282. package/session/facets/index.js.map +1 -1
  283. package/session/index.d.ts +2 -2
  284. package/session/index.d.ts.map +1 -1
  285. package/session/index.js +5 -3
  286. package/session/index.js.map +1 -1
  287. package/session/useNewSessionFlow.d.ts +4 -0
  288. package/session/useNewSessionFlow.d.ts.map +1 -1
  289. package/session/useNewSessionFlow.js +33 -4
  290. package/session/useNewSessionFlow.js.map +1 -1
  291. package/session/usePersistedModel.d.ts +11 -0
  292. package/session/usePersistedModel.d.ts.map +1 -1
  293. package/session/usePersistedModel.js +14 -3
  294. package/session/usePersistedModel.js.map +1 -1
  295. package/session/useSessionFileChanges.d.ts +10 -34
  296. package/session/useSessionFileChanges.d.ts.map +1 -1
  297. package/session/useSessionFileChanges.js +9 -141
  298. package/session/useSessionFileChanges.js.map +1 -1
  299. package/session/useSessionPageFlow.d.ts.map +1 -1
  300. package/session/useSessionPageFlow.js +12 -1
  301. package/session/useSessionPageFlow.js.map +1 -1
  302. package/session/useSessionPanel.d.ts +5 -15
  303. package/session/useSessionPanel.d.ts.map +1 -1
  304. package/session/useSessionPanel.js +3 -35
  305. package/session/useSessionPanel.js.map +1 -1
  306. package/session/useSessionRailViews.d.ts +3 -6
  307. package/session/useSessionRailViews.d.ts.map +1 -1
  308. package/session/useSessionRailViews.js +3 -17
  309. package/session/useSessionRailViews.js.map +1 -1
  310. package/settings/ChannelAppsSection.d.ts +13 -0
  311. package/settings/ChannelAppsSection.d.ts.map +1 -0
  312. package/settings/ChannelAppsSection.js +48 -0
  313. package/settings/ChannelAppsSection.js.map +1 -0
  314. package/settings/index.d.ts +1 -0
  315. package/settings/index.d.ts.map +1 -1
  316. package/settings/index.js +1 -0
  317. package/settings/index.js.map +1 -1
  318. package/settings/settings-nav.d.ts.map +1 -1
  319. package/settings/settings-nav.js +6 -1
  320. package/settings/settings-nav.js.map +1 -1
  321. package/sharing/AgentShareList.d.ts.map +1 -1
  322. package/sharing/AgentShareList.js +11 -3
  323. package/sharing/AgentShareList.js.map +1 -1
  324. package/sharing/ShareAgentDialog.js +1 -1
  325. package/sharing/useShareToolReadiness.d.ts +9 -38
  326. package/sharing/useShareToolReadiness.d.ts.map +1 -1
  327. package/sharing/useShareToolReadiness.js +7 -72
  328. package/sharing/useShareToolReadiness.js.map +1 -1
  329. package/src/agent-instance/AgentInstanceList.tsx +60 -42
  330. package/src/agent-instance/__tests__/AgentInstanceList.test.tsx +161 -0
  331. package/src/channel/AgentChannelsPanel.tsx +688 -0
  332. package/src/channel/ChannelConversationsDialog.tsx +267 -0
  333. package/src/channel/ChannelCredentialsDialog.tsx +219 -0
  334. package/src/channel/ChannelToolCredentials.tsx +124 -0
  335. package/src/channel/ConnectSlackDialog.tsx +611 -0
  336. package/src/channel/ConnectWhatsAppDialog.tsx +624 -0
  337. package/src/channel/SlackMarkIcon.tsx +21 -0
  338. package/src/channel/WhatsAppMarkIcon.tsx +22 -0
  339. package/src/channel/__tests__/AgentChannelsPanel.test.tsx +638 -0
  340. package/src/channel/__tests__/ChannelConversationsDialog.test.tsx +114 -0
  341. package/src/channel/__tests__/ChannelCredentialsDialog.test.tsx +240 -0
  342. package/src/channel/__tests__/ConnectSlackDialog.test.tsx +659 -0
  343. package/src/channel/__tests__/ConnectWhatsAppDialog.test.tsx +564 -0
  344. package/src/channel/__tests__/providers.test.ts +118 -0
  345. package/src/channel/__tests__/useAgentChannel.test.tsx +116 -0
  346. package/src/channel/__tests__/useAgentChannelList.test.tsx +166 -0
  347. package/src/channel/__tests__/useChannelSessions.test.tsx +95 -0
  348. package/src/channel/__tests__/useChannelToolReadiness.test.tsx +158 -0
  349. package/src/channel/__tests__/useConnectSlackChannel.test.tsx +276 -0
  350. package/src/channel/__tests__/useDeleteAgentChannel.test.tsx +97 -0
  351. package/src/channel/__tests__/useInstallChannel.test.tsx +177 -0
  352. package/src/channel/__tests__/useSaveAgentChannel.test.tsx +294 -0
  353. package/src/channel/connect/ServingAppSection.tsx +185 -0
  354. package/src/channel/connect/ToolCredentialsSection.tsx +67 -0
  355. package/src/channel/connect/VerbatimRefusal.tsx +27 -0
  356. package/src/channel/connect/icons.tsx +42 -0
  357. package/src/channel/index.ts +65 -0
  358. package/src/channel/providerPresentation.ts +154 -0
  359. package/src/channel/providers.ts +73 -0
  360. package/src/channel/useAgentChannel.ts +58 -0
  361. package/src/channel/useAgentChannelList.ts +69 -0
  362. package/src/channel/useChannelSessions.ts +73 -0
  363. package/src/channel/useChannelToolReadiness.ts +39 -0
  364. package/src/channel/useConnectSlackChannel.ts +195 -0
  365. package/src/channel/useCreateAgentChannel.ts +73 -0
  366. package/src/channel/useDeleteAgentChannel.ts +71 -0
  367. package/src/channel/useInstallChannel.ts +117 -0
  368. package/src/channel/useOrgAgentChannelList.ts +60 -0
  369. package/src/channel/useSaveAgentChannel.ts +133 -0
  370. package/src/channel-app/ChannelAppDetailPanel.tsx +510 -0
  371. package/src/channel-app/ChannelAppListPanel.tsx +201 -0
  372. package/src/channel-app/CreateChannelAppForm.tsx +529 -0
  373. package/src/channel-app/__tests__/channelAppWhatsApp.test.tsx +270 -0
  374. package/src/channel-app/__tests__/slackAppSetup.test.ts +75 -0
  375. package/src/channel-app/__tests__/useChannelAppHooks.test.tsx +157 -0
  376. package/src/channel-app/__tests__/whatsappAppSetup.test.ts +39 -0
  377. package/src/channel-app/index.ts +30 -0
  378. package/src/channel-app/internal.tsx +180 -0
  379. package/src/channel-app/slackAppSetup.ts +153 -0
  380. package/src/channel-app/useChannelAppList.ts +59 -0
  381. package/src/channel-app/useCreateChannelApp.ts +70 -0
  382. package/src/channel-app/useDeleteChannelApp.ts +62 -0
  383. package/src/channel-app/useUpdateChannelApp.ts +70 -0
  384. package/src/channel-app/whatsappAppSetup.ts +62 -0
  385. package/src/environment/index.ts +2 -0
  386. package/src/environment/useToolCredentialsReadiness.ts +122 -0
  387. package/src/execution/ArtifactContentBody.tsx +6 -88
  388. package/src/execution/ArtifactFileContent.tsx +110 -0
  389. package/src/execution/ArtifactRow.tsx +28 -118
  390. package/src/execution/ArtifactRowView.tsx +137 -0
  391. package/src/execution/FileChangesView.tsx +4 -69
  392. package/src/execution/SubAgentSection.tsx +2 -36
  393. package/src/execution/ToolCallItem.tsx +48 -175
  394. package/src/execution/__tests__/ArtifactFileContent.test.tsx +60 -0
  395. package/src/execution/__tests__/ArtifactRowView.test.tsx +78 -0
  396. package/src/execution/__tests__/agent-execution-document.test.ts +45 -0
  397. package/src/execution/__tests__/artifact-row-item.test.ts +128 -0
  398. package/src/execution/__tests__/deriveExecutionFileChanges.test.ts +270 -0
  399. package/src/execution/__tests__/useArtifactContentById.test.tsx +85 -0
  400. package/src/execution/__tests__/useLiveAgentExecution.test.tsx +202 -0
  401. package/src/execution/agent-execution-document.ts +54 -0
  402. package/src/execution/artifact-document.ts +24 -0
  403. package/src/execution/artifact-row-item.ts +97 -0
  404. package/src/execution/deriveExecutionFileChanges.ts +237 -0
  405. package/src/execution/file-change-document.ts +37 -0
  406. package/src/execution/index.ts +36 -0
  407. package/src/execution/useArtifactContentById.ts +120 -0
  408. package/src/execution/useArtifactDownload.ts +4 -3
  409. package/src/execution/useCreateAgentExecution.ts +1 -1
  410. package/src/execution/useLiveAgentExecution.ts +127 -0
  411. package/src/index.ts +155 -11
  412. package/src/internal/DecisionButton.tsx +4 -3
  413. package/src/internal/__tests__/ThreadCardShell.test.tsx +105 -0
  414. package/src/internal/__tests__/oauthPopup.test.ts +245 -0
  415. package/src/internal/oauthPopup.ts +261 -0
  416. package/src/internal/store/__tests__/workflow-execution-event-store.test.ts +375 -5
  417. package/src/internal/store/index.ts +0 -3
  418. package/src/internal/store/workflow-execution-event-store.ts +123 -4
  419. package/src/internal/store/workspace-file-selection-store.ts +2 -5
  420. package/src/internal/thread-card/ThreadCardShell.tsx +189 -0
  421. package/src/internal/thread-card/glyphs.tsx +108 -0
  422. package/src/internal/thread-card/index.ts +19 -0
  423. package/src/internal/useRevealLine.ts +2 -2
  424. package/src/mcp-server/OAuthCallbackHandler.tsx +2 -2
  425. package/src/mcp-server/useMcpServerOAuthConnect.ts +22 -184
  426. package/src/session/NewSessionViewer.tsx +0 -1
  427. package/src/session/SessionPanelChip.tsx +10 -96
  428. package/src/session/SessionViewer.tsx +170 -144
  429. package/src/session/__tests__/SessionViewer-artifactTabs.test.tsx +1 -1
  430. package/src/session/__tests__/observerAudience.test.tsx +241 -0
  431. package/src/session/__tests__/useNewSessionFlow.test.tsx +64 -0
  432. package/src/session/__tests__/usePersistedModel.test.tsx +36 -0
  433. package/src/session/__tests__/useSessionPageFlow.guest.test.tsx +48 -1
  434. package/src/session/__tests__/useSessionPanel.test.ts +6 -61
  435. package/src/session/__tests__/useSessionRailViews.test.tsx +5 -27
  436. package/src/session/audience.ts +15 -1
  437. package/src/session/channelOrigin.ts +45 -0
  438. package/src/session/facets/index.ts +0 -3
  439. package/src/session/index.ts +9 -6
  440. package/src/session/useNewSessionFlow.ts +35 -4
  441. package/src/session/usePersistedModel.ts +25 -3
  442. package/src/session/useSessionFileChanges.ts +12 -153
  443. package/src/session/useSessionPageFlow.ts +13 -2
  444. package/src/session/useSessionPanel.ts +8 -51
  445. package/src/session/useSessionRailViews.tsx +2 -27
  446. package/src/settings/ChannelAppsSection.tsx +133 -0
  447. package/src/settings/index.ts +1 -0
  448. package/src/settings/settings-nav.ts +6 -0
  449. package/src/sharing/AgentShareList.tsx +85 -64
  450. package/src/sharing/ShareAgentDialog.tsx +1 -1
  451. package/src/sharing/__tests__/AgentShareList.test.tsx +92 -12
  452. package/src/sharing/useShareToolReadiness.ts +13 -101
  453. package/src/workflow/WorkflowAgentExecutionDocument.tsx +283 -0
  454. package/src/workflow/WorkflowApprovalList.tsx +158 -0
  455. package/src/workflow/WorkflowArtifactDocument.tsx +257 -0
  456. package/src/workflow/WorkflowExecutionGraph.tsx +40 -78
  457. package/src/workflow/WorkflowExecutionViewer.tsx +610 -287
  458. package/src/workflow/WorkflowFileReviewList.tsx +1 -1
  459. package/src/workflow/WorkflowTaskApprovalCard.tsx +5 -4
  460. package/src/workflow/WorkflowTaskApprovalSummary.tsx +6 -6
  461. package/src/workflow/__tests__/WorkflowAgentExecutionDocument.test.tsx +651 -0
  462. package/src/workflow/__tests__/WorkflowApprovalList.test.tsx +229 -0
  463. package/src/workflow/__tests__/WorkflowArtifactDocument.test.tsx +90 -0
  464. package/src/workflow/__tests__/WorkflowArtifactsTab.test.tsx +85 -0
  465. package/src/workflow/__tests__/WorkflowChangesTab.test.tsx +113 -0
  466. package/src/workflow/__tests__/WorkflowExecutionViewer.approvals.test.tsx +473 -0
  467. package/src/workflow/__tests__/WorkflowExecutionViewer.reconciliation.test.tsx +632 -0
  468. package/src/workflow/__tests__/WorkflowTaskApprovalSummary.test.tsx +1 -1
  469. package/src/workflow/__tests__/WorkflowTaskThread.test.tsx +947 -0
  470. package/src/workflow/__tests__/WorkflowUsageTab.test.tsx +163 -0
  471. package/src/workflow/__tests__/agent-call-live-experience.test.ts +6 -53
  472. package/src/workflow/__tests__/derive-execution-overlays.test.ts +4 -0
  473. package/src/workflow/__tests__/deriveWorkflowArtifactItems.test.ts +71 -0
  474. package/src/workflow/__tests__/deriveWorkflowUsageItems.test.ts +132 -0
  475. package/src/workflow/__tests__/execution-graph.test.ts +8 -0
  476. package/src/workflow/__tests__/project-thread-items.test.ts +428 -0
  477. package/src/workflow/__tests__/structured-data-viewer.test.tsx +1 -1
  478. package/src/workflow/__tests__/task-approval.test.ts +149 -0
  479. package/src/workflow/__tests__/task-detail-io.test.ts +40 -0
  480. package/src/workflow/__tests__/task-presentation.test.ts +479 -0
  481. package/src/workflow/__tests__/useActiveTaskName.test.ts +4 -0
  482. package/src/workflow/__tests__/useApprovalBoundary.test.ts +158 -0
  483. package/src/workflow/__tests__/useExecutionAnnouncements.test.ts +4 -0
  484. package/src/workflow/__tests__/useFollowExecution.test.ts +2 -89
  485. package/src/workflow/__tests__/useWorkflowExecutionFileChanges.test.tsx +412 -0
  486. package/src/workflow/__tests__/useWorkflowExecutionPanel.test.ts +297 -0
  487. package/src/workflow/__tests__/useWorkflowExecutionRailViews.test.tsx +115 -0
  488. package/src/workflow/deriveWorkflowArtifactItems.ts +59 -0
  489. package/src/workflow/deriveWorkflowUsageItems.ts +73 -0
  490. package/src/workflow/diagnosis-document.ts +31 -0
  491. package/src/workflow/execution/index.ts +0 -15
  492. package/src/workflow/facets/WorkflowArtifactsTab.tsx +99 -0
  493. package/src/workflow/facets/WorkflowChangesTab.tsx +129 -0
  494. package/src/workflow/facets/WorkflowUsageTab.tsx +258 -0
  495. package/src/workflow/format-utils.ts +2 -3
  496. package/src/workflow/index.ts +106 -62
  497. package/src/workflow/inspector/index.ts +0 -4
  498. package/src/workflow/instance/WorkflowInstanceList.tsx +59 -41
  499. package/src/workflow/instance/__tests__/WorkflowInstanceList.test.tsx +156 -0
  500. package/src/workflow/task-detail/index.ts +11 -0
  501. package/src/workflow/task-detail/task-approval.ts +158 -0
  502. package/src/workflow/task-detail/task-detail-io.ts +65 -0
  503. package/src/workflow/thread/WorkflowTaskThread.tsx +845 -0
  504. package/src/workflow/thread/project-thread-items.ts +235 -0
  505. package/src/workflow/thread/task-presentation.ts +427 -0
  506. package/src/workflow/thread/thread-presentation.ts +59 -0
  507. package/src/workflow/thread/useWorkflowThreadItems.ts +34 -0
  508. package/src/workflow/useApprovalBoundary.ts +72 -0
  509. package/src/workflow/useFollowExecution.ts +0 -26
  510. package/src/workflow/useWorkflowArtifactDownload.ts +68 -0
  511. package/src/workflow/useWorkflowExecutionActions.ts +3 -2
  512. package/src/workflow/useWorkflowExecutionFileChanges.ts +341 -0
  513. package/src/workflow/useWorkflowExecutionGraph.ts +3 -43
  514. package/src/workflow/useWorkflowExecutionPanel.ts +292 -0
  515. package/src/workflow/useWorkflowExecutionRailViews.tsx +173 -0
  516. package/src/workspace/FileViewer.tsx +3 -3
  517. package/src/workspace/PanelChip.tsx +103 -0
  518. package/src/workspace/WorkspaceSurface.tsx +50 -6
  519. package/src/workspace/__tests__/WorkspaceSurface.test.tsx +110 -0
  520. package/src/workspace/index.ts +3 -0
  521. package/styles.css +1 -1
  522. package/workflow/WorkflowAgentExecutionDocument.d.ts +79 -0
  523. package/workflow/WorkflowAgentExecutionDocument.d.ts.map +1 -0
  524. package/workflow/WorkflowAgentExecutionDocument.js +87 -0
  525. package/workflow/WorkflowAgentExecutionDocument.js.map +1 -0
  526. package/workflow/WorkflowApprovalList.d.ts +62 -0
  527. package/workflow/WorkflowApprovalList.d.ts.map +1 -0
  528. package/workflow/WorkflowApprovalList.js +52 -0
  529. package/workflow/WorkflowApprovalList.js.map +1 -0
  530. package/workflow/WorkflowArtifactDocument.d.ts +29 -0
  531. package/workflow/WorkflowArtifactDocument.d.ts.map +1 -0
  532. package/workflow/WorkflowArtifactDocument.js +89 -0
  533. package/workflow/WorkflowArtifactDocument.js.map +1 -0
  534. package/workflow/WorkflowExecutionGraph.d.ts +15 -13
  535. package/workflow/WorkflowExecutionGraph.d.ts.map +1 -1
  536. package/workflow/WorkflowExecutionGraph.js +18 -53
  537. package/workflow/WorkflowExecutionGraph.js.map +1 -1
  538. package/workflow/WorkflowExecutionViewer.d.ts +8 -5
  539. package/workflow/WorkflowExecutionViewer.d.ts.map +1 -1
  540. package/workflow/WorkflowExecutionViewer.js +329 -54
  541. package/workflow/WorkflowExecutionViewer.js.map +1 -1
  542. package/workflow/WorkflowFileReviewList.d.ts +1 -1
  543. package/workflow/WorkflowFileReviewList.js +1 -1
  544. package/workflow/WorkflowTaskApprovalCard.d.ts +4 -3
  545. package/workflow/WorkflowTaskApprovalCard.d.ts.map +1 -1
  546. package/workflow/WorkflowTaskApprovalCard.js +5 -4
  547. package/workflow/WorkflowTaskApprovalCard.js.map +1 -1
  548. package/workflow/WorkflowTaskApprovalSummary.d.ts +6 -6
  549. package/workflow/WorkflowTaskApprovalSummary.js +5 -5
  550. package/workflow/deriveWorkflowArtifactItems.d.ts +30 -0
  551. package/workflow/deriveWorkflowArtifactItems.d.ts.map +1 -0
  552. package/workflow/deriveWorkflowArtifactItems.js +38 -0
  553. package/workflow/deriveWorkflowArtifactItems.js.map +1 -0
  554. package/workflow/deriveWorkflowUsageItems.d.ts +36 -0
  555. package/workflow/deriveWorkflowUsageItems.d.ts.map +1 -0
  556. package/workflow/deriveWorkflowUsageItems.js +50 -0
  557. package/workflow/deriveWorkflowUsageItems.js.map +1 -0
  558. package/workflow/diagnosis-document.d.ts +17 -0
  559. package/workflow/diagnosis-document.d.ts.map +1 -0
  560. package/workflow/diagnosis-document.js +29 -0
  561. package/workflow/diagnosis-document.js.map +1 -0
  562. package/workflow/execution/index.d.ts +0 -2
  563. package/workflow/execution/index.d.ts.map +1 -1
  564. package/workflow/execution/index.js +0 -2
  565. package/workflow/execution/index.js.map +1 -1
  566. package/workflow/facets/WorkflowArtifactsTab.d.ts +26 -0
  567. package/workflow/facets/WorkflowArtifactsTab.d.ts.map +1 -0
  568. package/workflow/facets/WorkflowArtifactsTab.js +34 -0
  569. package/workflow/facets/WorkflowArtifactsTab.js.map +1 -0
  570. package/workflow/facets/WorkflowChangesTab.d.ts +37 -0
  571. package/workflow/facets/WorkflowChangesTab.d.ts.map +1 -0
  572. package/workflow/facets/WorkflowChangesTab.js +50 -0
  573. package/workflow/facets/WorkflowChangesTab.js.map +1 -0
  574. package/workflow/facets/WorkflowUsageTab.d.ts +27 -0
  575. package/workflow/facets/WorkflowUsageTab.d.ts.map +1 -0
  576. package/workflow/facets/WorkflowUsageTab.js +87 -0
  577. package/workflow/facets/WorkflowUsageTab.js.map +1 -0
  578. package/workflow/format-utils.d.ts +2 -3
  579. package/workflow/format-utils.d.ts.map +1 -1
  580. package/workflow/format-utils.js +2 -3
  581. package/workflow/format-utils.js.map +1 -1
  582. package/workflow/index.d.ts +21 -10
  583. package/workflow/index.d.ts.map +1 -1
  584. package/workflow/index.js +29 -14
  585. package/workflow/index.js.map +1 -1
  586. package/workflow/inspector/index.d.ts +0 -2
  587. package/workflow/inspector/index.d.ts.map +1 -1
  588. package/workflow/inspector/index.js +0 -2
  589. package/workflow/inspector/index.js.map +1 -1
  590. package/workflow/instance/WorkflowInstanceList.d.ts.map +1 -1
  591. package/workflow/instance/WorkflowInstanceList.js +11 -3
  592. package/workflow/instance/WorkflowInstanceList.js.map +1 -1
  593. package/workflow/task-detail/StructuredDataViewer.d.ts.map +1 -0
  594. package/workflow/task-detail/StructuredDataViewer.js.map +1 -0
  595. package/workflow/task-detail/index.d.ts +4 -0
  596. package/workflow/task-detail/index.d.ts.map +1 -0
  597. package/workflow/task-detail/index.js +4 -0
  598. package/workflow/task-detail/index.js.map +1 -0
  599. package/workflow/task-detail/task-approval.d.ts +89 -0
  600. package/workflow/task-detail/task-approval.d.ts.map +1 -0
  601. package/workflow/task-detail/task-approval.js +84 -0
  602. package/workflow/task-detail/task-approval.js.map +1 -0
  603. package/workflow/task-detail/task-detail-io.d.ts +39 -0
  604. package/workflow/task-detail/task-detail-io.d.ts.map +1 -0
  605. package/workflow/task-detail/task-detail-io.js +42 -0
  606. package/workflow/task-detail/task-detail-io.js.map +1 -0
  607. package/workflow/thread/WorkflowTaskThread.d.ts +91 -0
  608. package/workflow/thread/WorkflowTaskThread.d.ts.map +1 -0
  609. package/workflow/thread/WorkflowTaskThread.js +318 -0
  610. package/workflow/thread/WorkflowTaskThread.js.map +1 -0
  611. package/workflow/thread/project-thread-items.d.ts +108 -0
  612. package/workflow/thread/project-thread-items.d.ts.map +1 -0
  613. package/workflow/thread/project-thread-items.js +126 -0
  614. package/workflow/thread/project-thread-items.js.map +1 -0
  615. package/workflow/thread/task-presentation.d.ts +73 -0
  616. package/workflow/thread/task-presentation.d.ts.map +1 -0
  617. package/workflow/thread/task-presentation.js +331 -0
  618. package/workflow/thread/task-presentation.js.map +1 -0
  619. package/workflow/thread/thread-presentation.d.ts +28 -0
  620. package/workflow/thread/thread-presentation.d.ts.map +1 -0
  621. package/workflow/thread/thread-presentation.js +28 -0
  622. package/workflow/thread/thread-presentation.js.map +1 -0
  623. package/workflow/thread/useWorkflowThreadItems.d.ts +16 -0
  624. package/workflow/thread/useWorkflowThreadItems.d.ts.map +1 -0
  625. package/workflow/thread/useWorkflowThreadItems.js +22 -0
  626. package/workflow/thread/useWorkflowThreadItems.js.map +1 -0
  627. package/workflow/useApprovalBoundary.d.ts +38 -0
  628. package/workflow/useApprovalBoundary.d.ts.map +1 -0
  629. package/workflow/useApprovalBoundary.js +55 -0
  630. package/workflow/useApprovalBoundary.js.map +1 -0
  631. package/workflow/useFollowExecution.d.ts +0 -20
  632. package/workflow/useFollowExecution.d.ts.map +1 -1
  633. package/workflow/useFollowExecution.js +0 -17
  634. package/workflow/useFollowExecution.js.map +1 -1
  635. package/workflow/useWorkflowArtifactDownload.d.ts +28 -0
  636. package/workflow/useWorkflowArtifactDownload.d.ts.map +1 -0
  637. package/workflow/useWorkflowArtifactDownload.js +45 -0
  638. package/workflow/useWorkflowArtifactDownload.js.map +1 -0
  639. package/workflow/useWorkflowExecutionActions.d.ts +3 -2
  640. package/workflow/useWorkflowExecutionActions.d.ts.map +1 -1
  641. package/workflow/useWorkflowExecutionActions.js.map +1 -1
  642. package/workflow/useWorkflowExecutionFileChanges.d.ts +107 -0
  643. package/workflow/useWorkflowExecutionFileChanges.d.ts.map +1 -0
  644. package/workflow/useWorkflowExecutionFileChanges.js +244 -0
  645. package/workflow/useWorkflowExecutionFileChanges.js.map +1 -0
  646. package/workflow/useWorkflowExecutionGraph.d.ts +1 -14
  647. package/workflow/useWorkflowExecutionGraph.d.ts.map +1 -1
  648. package/workflow/useWorkflowExecutionGraph.js +2 -25
  649. package/workflow/useWorkflowExecutionGraph.js.map +1 -1
  650. package/workflow/useWorkflowExecutionPanel.d.ts +108 -0
  651. package/workflow/useWorkflowExecutionPanel.d.ts.map +1 -0
  652. package/workflow/useWorkflowExecutionPanel.js +103 -0
  653. package/workflow/useWorkflowExecutionPanel.js.map +1 -0
  654. package/workflow/useWorkflowExecutionRailViews.d.ts +46 -0
  655. package/workflow/useWorkflowExecutionRailViews.d.ts.map +1 -0
  656. package/workflow/useWorkflowExecutionRailViews.js +81 -0
  657. package/workflow/useWorkflowExecutionRailViews.js.map +1 -0
  658. package/workspace/FileViewer.d.ts +1 -1
  659. package/workspace/FileViewer.js +3 -3
  660. package/workspace/FileViewer.js.map +1 -1
  661. package/workspace/PanelChip.d.ts +27 -0
  662. package/workspace/PanelChip.d.ts.map +1 -0
  663. package/workspace/PanelChip.js +42 -0
  664. package/workspace/PanelChip.js.map +1 -0
  665. package/workspace/WorkspaceSurface.d.ts +25 -1
  666. package/workspace/WorkspaceSurface.d.ts.map +1 -1
  667. package/workspace/WorkspaceSurface.js +21 -9
  668. package/workspace/WorkspaceSurface.js.map +1 -1
  669. package/workspace/index.d.ts +3 -1
  670. package/workspace/index.d.ts.map +1 -1
  671. package/workspace/index.js +1 -0
  672. package/workspace/index.js.map +1 -1
  673. package/execution/ThreadSelectionContext.d.ts +0 -17
  674. package/execution/ThreadSelectionContext.d.ts.map +0 -1
  675. package/execution/ThreadSelectionContext.js +0 -18
  676. package/execution/ThreadSelectionContext.js.map +0 -1
  677. package/execution/useThreadSelection.d.ts +0 -35
  678. package/execution/useThreadSelection.d.ts.map +0 -1
  679. package/execution/useThreadSelection.js +0 -65
  680. package/execution/useThreadSelection.js.map +0 -1
  681. package/internal/store/selection-store.d.ts +0 -53
  682. package/internal/store/selection-store.d.ts.map +0 -1
  683. package/internal/store/selection-store.js +0 -88
  684. package/internal/store/selection-store.js.map +0 -1
  685. package/session/artifact-document.d.ts.map +0 -1
  686. package/session/artifact-document.js +0 -22
  687. package/session/artifact-document.js.map +0 -1
  688. package/session/facets/InspectTab.d.ts +0 -13
  689. package/session/facets/InspectTab.d.ts.map +0 -1
  690. package/session/facets/InspectTab.js +0 -19
  691. package/session/facets/InspectTab.js.map +0 -1
  692. package/src/execution/ThreadSelectionContext.tsx +0 -20
  693. package/src/execution/useThreadSelection.ts +0 -95
  694. package/src/internal/store/__tests__/selection-store.test.ts +0 -115
  695. package/src/internal/store/selection-store.ts +0 -112
  696. package/src/session/artifact-document.ts +0 -23
  697. package/src/session/facets/InspectTab.tsx +0 -57
  698. package/src/workflow/WorkflowExecutionApprovalCard.tsx +0 -154
  699. package/src/workflow/WorkflowExecutionArtifactPanel.tsx +0 -107
  700. package/src/workflow/WorkflowExecutionCostPanel.tsx +0 -120
  701. package/src/workflow/WorkflowExecutionTaskPanel.tsx +0 -129
  702. package/src/workflow/WorkflowExecutionTimeline.tsx +0 -151
  703. package/src/workflow/WorkflowExecutionTimelineEvent.tsx +0 -497
  704. package/src/workflow/__tests__/ExecutionInspector.test.tsx +0 -155
  705. package/src/workflow/__tests__/WorkflowExecutionApprovalCard.test.tsx +0 -129
  706. package/src/workflow/__tests__/derive-task-detail.test.ts +0 -1265
  707. package/src/workflow/__tests__/derive-waterfall-entries.test.ts +0 -521
  708. package/src/workflow/__tests__/execution-inspector.test.tsx +0 -332
  709. package/src/workflow/execution/derive-waterfall-entries.ts +0 -377
  710. package/src/workflow/execution/useWaterfallEntries.ts +0 -125
  711. package/src/workflow/execution-inspector/AgentCallTab.tsx +0 -169
  712. package/src/workflow/execution-inspector/ErrorTab.tsx +0 -110
  713. package/src/workflow/execution-inspector/EventLogTab.tsx +0 -79
  714. package/src/workflow/execution-inspector/ExecutionInspector.tsx +0 -341
  715. package/src/workflow/execution-inspector/InputOutputTab.tsx +0 -325
  716. package/src/workflow/execution-inspector/RetriesTab.tsx +0 -68
  717. package/src/workflow/execution-inspector/SummaryTab.tsx +0 -62
  718. package/src/workflow/execution-inspector/derive-task-detail.ts +0 -584
  719. package/src/workflow/execution-inspector/index.ts +0 -14
  720. package/src/workflow/execution-inspector/useExecutionTaskDetail.ts +0 -55
  721. package/src/workflow/inspector/ExecutionInspectorAdapter.tsx +0 -40
  722. package/src/workflow/waterfall/WaterfallBar.tsx +0 -167
  723. package/src/workflow/waterfall/WaterfallRow.tsx +0 -112
  724. package/src/workflow/waterfall/WaterfallScale.tsx +0 -52
  725. package/src/workflow/waterfall/WaterfallTimeline.tsx +0 -138
  726. package/src/workflow/waterfall/WaterfallTooltip.tsx +0 -74
  727. package/src/workflow/waterfall/index.ts +0 -5
  728. package/workflow/WorkflowExecutionApprovalCard.d.ts +0 -34
  729. package/workflow/WorkflowExecutionApprovalCard.d.ts.map +0 -1
  730. package/workflow/WorkflowExecutionApprovalCard.js +0 -46
  731. package/workflow/WorkflowExecutionApprovalCard.js.map +0 -1
  732. package/workflow/WorkflowExecutionArtifactPanel.d.ts +0 -15
  733. package/workflow/WorkflowExecutionArtifactPanel.d.ts.map +0 -1
  734. package/workflow/WorkflowExecutionArtifactPanel.js +0 -46
  735. package/workflow/WorkflowExecutionArtifactPanel.js.map +0 -1
  736. package/workflow/WorkflowExecutionCostPanel.d.ts +0 -18
  737. package/workflow/WorkflowExecutionCostPanel.d.ts.map +0 -1
  738. package/workflow/WorkflowExecutionCostPanel.js +0 -31
  739. package/workflow/WorkflowExecutionCostPanel.js.map +0 -1
  740. package/workflow/WorkflowExecutionTaskPanel.d.ts +0 -24
  741. package/workflow/WorkflowExecutionTaskPanel.d.ts.map +0 -1
  742. package/workflow/WorkflowExecutionTaskPanel.js +0 -51
  743. package/workflow/WorkflowExecutionTaskPanel.js.map +0 -1
  744. package/workflow/WorkflowExecutionTimeline.d.ts +0 -42
  745. package/workflow/WorkflowExecutionTimeline.d.ts.map +0 -1
  746. package/workflow/WorkflowExecutionTimeline.js +0 -52
  747. package/workflow/WorkflowExecutionTimeline.js.map +0 -1
  748. package/workflow/WorkflowExecutionTimelineEvent.d.ts +0 -25
  749. package/workflow/WorkflowExecutionTimelineEvent.d.ts.map +0 -1
  750. package/workflow/WorkflowExecutionTimelineEvent.js +0 -179
  751. package/workflow/WorkflowExecutionTimelineEvent.js.map +0 -1
  752. package/workflow/execution/derive-waterfall-entries.d.ts +0 -85
  753. package/workflow/execution/derive-waterfall-entries.d.ts.map +0 -1
  754. package/workflow/execution/derive-waterfall-entries.js +0 -268
  755. package/workflow/execution/derive-waterfall-entries.js.map +0 -1
  756. package/workflow/execution/useWaterfallEntries.d.ts +0 -25
  757. package/workflow/execution/useWaterfallEntries.d.ts.map +0 -1
  758. package/workflow/execution/useWaterfallEntries.js +0 -67
  759. package/workflow/execution/useWaterfallEntries.js.map +0 -1
  760. package/workflow/execution-inspector/AgentCallTab.d.ts +0 -21
  761. package/workflow/execution-inspector/AgentCallTab.d.ts.map +0 -1
  762. package/workflow/execution-inspector/AgentCallTab.js +0 -36
  763. package/workflow/execution-inspector/AgentCallTab.js.map +0 -1
  764. package/workflow/execution-inspector/ErrorTab.d.ts +0 -9
  765. package/workflow/execution-inspector/ErrorTab.d.ts.map +0 -1
  766. package/workflow/execution-inspector/ErrorTab.js +0 -29
  767. package/workflow/execution-inspector/ErrorTab.js.map +0 -1
  768. package/workflow/execution-inspector/EventLogTab.d.ts +0 -11
  769. package/workflow/execution-inspector/EventLogTab.d.ts.map +0 -1
  770. package/workflow/execution-inspector/EventLogTab.js +0 -47
  771. package/workflow/execution-inspector/EventLogTab.js.map +0 -1
  772. package/workflow/execution-inspector/ExecutionInspector.d.ts +0 -69
  773. package/workflow/execution-inspector/ExecutionInspector.d.ts.map +0 -1
  774. package/workflow/execution-inspector/ExecutionInspector.js +0 -145
  775. package/workflow/execution-inspector/ExecutionInspector.js.map +0 -1
  776. package/workflow/execution-inspector/InputOutputTab.d.ts +0 -20
  777. package/workflow/execution-inspector/InputOutputTab.d.ts.map +0 -1
  778. package/workflow/execution-inspector/InputOutputTab.js +0 -124
  779. package/workflow/execution-inspector/InputOutputTab.js.map +0 -1
  780. package/workflow/execution-inspector/RetriesTab.d.ts +0 -7
  781. package/workflow/execution-inspector/RetriesTab.d.ts.map +0 -1
  782. package/workflow/execution-inspector/RetriesTab.js +0 -11
  783. package/workflow/execution-inspector/RetriesTab.js.map +0 -1
  784. package/workflow/execution-inspector/StructuredDataViewer.d.ts.map +0 -1
  785. package/workflow/execution-inspector/StructuredDataViewer.js.map +0 -1
  786. package/workflow/execution-inspector/SummaryTab.d.ts +0 -7
  787. package/workflow/execution-inspector/SummaryTab.d.ts.map +0 -1
  788. package/workflow/execution-inspector/SummaryTab.js +0 -10
  789. package/workflow/execution-inspector/SummaryTab.js.map +0 -1
  790. package/workflow/execution-inspector/derive-task-detail.d.ts +0 -140
  791. package/workflow/execution-inspector/derive-task-detail.d.ts.map +0 -1
  792. package/workflow/execution-inspector/derive-task-detail.js +0 -366
  793. package/workflow/execution-inspector/derive-task-detail.js.map +0 -1
  794. package/workflow/execution-inspector/index.d.ts +0 -4
  795. package/workflow/execution-inspector/index.d.ts.map +0 -1
  796. package/workflow/execution-inspector/index.js +0 -4
  797. package/workflow/execution-inspector/index.js.map +0 -1
  798. package/workflow/execution-inspector/useExecutionTaskDetail.d.ts +0 -38
  799. package/workflow/execution-inspector/useExecutionTaskDetail.d.ts.map +0 -1
  800. package/workflow/execution-inspector/useExecutionTaskDetail.js +0 -37
  801. package/workflow/execution-inspector/useExecutionTaskDetail.js.map +0 -1
  802. package/workflow/inspector/ExecutionInspectorAdapter.d.ts +0 -26
  803. package/workflow/inspector/ExecutionInspectorAdapter.d.ts.map +0 -1
  804. package/workflow/inspector/ExecutionInspectorAdapter.js +0 -23
  805. package/workflow/inspector/ExecutionInspectorAdapter.js.map +0 -1
  806. package/workflow/waterfall/WaterfallBar.d.ts +0 -19
  807. package/workflow/waterfall/WaterfallBar.d.ts.map +0 -1
  808. package/workflow/waterfall/WaterfallBar.js +0 -70
  809. package/workflow/waterfall/WaterfallBar.js.map +0 -1
  810. package/workflow/waterfall/WaterfallRow.d.ts +0 -18
  811. package/workflow/waterfall/WaterfallRow.d.ts.map +0 -1
  812. package/workflow/waterfall/WaterfallRow.js +0 -45
  813. package/workflow/waterfall/WaterfallRow.js.map +0 -1
  814. package/workflow/waterfall/WaterfallScale.d.ts +0 -14
  815. package/workflow/waterfall/WaterfallScale.d.ts.map +0 -1
  816. package/workflow/waterfall/WaterfallScale.js +0 -22
  817. package/workflow/waterfall/WaterfallScale.js.map +0 -1
  818. package/workflow/waterfall/WaterfallTimeline.d.ts +0 -46
  819. package/workflow/waterfall/WaterfallTimeline.d.ts.map +0 -1
  820. package/workflow/waterfall/WaterfallTimeline.js +0 -60
  821. package/workflow/waterfall/WaterfallTimeline.js.map +0 -1
  822. package/workflow/waterfall/WaterfallTooltip.d.ts +0 -15
  823. package/workflow/waterfall/WaterfallTooltip.d.ts.map +0 -1
  824. package/workflow/waterfall/WaterfallTooltip.js +0 -20
  825. package/workflow/waterfall/WaterfallTooltip.js.map +0 -1
  826. package/workflow/waterfall/index.d.ts +0 -6
  827. package/workflow/waterfall/index.d.ts.map +0 -1
  828. package/workflow/waterfall/index.js +0 -6
  829. package/workflow/waterfall/index.js.map +0 -1
  830. /package/src/workflow/{execution-inspector → task-detail}/StructuredDataViewer.tsx +0 -0
  831. /package/workflow/{execution-inspector → task-detail}/StructuredDataViewer.d.ts +0 -0
  832. /package/workflow/{execution-inspector → task-detail}/StructuredDataViewer.js +0 -0
@@ -0,0 +1,140 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import { useCallback, useMemo, useState } from "react";
4
+ import { cn } from "@stigmer/theme";
5
+ import { getUserMessage } from "@stigmer/sdk";
6
+ import { CHANNEL_PROVIDERS, } from "../channel/providers.js";
7
+ import { useCreateChannelApp } from "./useCreateChannelApp.js";
8
+ import { buildSlackChannelAppManifest, slackChannelAppRedirectUrl, } from "./slackAppSetup.js";
9
+ import { generateWhatsAppVerifyToken } from "./whatsappAppSetup.js";
10
+ import { CopyBlock, FormField, SpinnerIcon } from "./internal.js";
11
+ /**
12
+ * Form for registering a customer-owned provider app as a
13
+ * {@link ChannelApp} (bring your own app — the bot carries your name
14
+ * and identity, and each app is its own bot identity).
15
+ *
16
+ * Provider-shaped: a Slack app brings OAuth credentials plus a
17
+ * ready-to-paste manifest; a Meta (WhatsApp) app brings dashboard
18
+ * credentials plus a generated verify token — Meta has no manifest
19
+ * equivalent, so the guidance is a checklist.
20
+ *
21
+ * Setup is two-phase by nature for both providers (the provider mints
22
+ * the credentials, Stigmer mints the per-app webhook URL): this form
23
+ * covers phase one — the credentials. The detail panel shown after
24
+ * creation carries phase two (the events webhook URL, plus the verify
25
+ * token for WhatsApp).
26
+ *
27
+ * This is a pure presentational component with no dialog wrapper
28
+ * (headless-first). All visual properties flow through `--stgm-*`
29
+ * design tokens.
30
+ */
31
+ export function CreateChannelAppForm({ org, consoleOrigin, onCreated, onCancel, className, }) {
32
+ const { create, isCreating, error, clearError } = useCreateChannelApp();
33
+ const [provider, setProvider] = useState("slack");
34
+ const [name, setName] = useState("");
35
+ // Slack credentials (Basic Information page on api.slack.com).
36
+ const [clientId, setClientId] = useState("");
37
+ const [clientSecret, setClientSecret] = useState("");
38
+ const [signingSecret, setSigningSecret] = useState("");
39
+ // WhatsApp credentials (Meta app dashboard). The verify token is
40
+ // customer-authored like every WhatsApp credential (DD-WA-3) —
41
+ // pre-generated here as a strong default, editable for users bringing
42
+ // their own.
43
+ const [appId, setAppId] = useState("");
44
+ const [appSecret, setAppSecret] = useState("");
45
+ const [accessToken, setAccessToken] = useState("");
46
+ const [verifyToken, setVerifyToken] = useState(generateWhatsAppVerifyToken);
47
+ const trimmedName = name.trim();
48
+ const manifest = useMemo(() => buildSlackChannelAppManifest({
49
+ name: trimmedName || "Your Bot Name",
50
+ redirectUrl: slackChannelAppRedirectUrl(consoleOrigin),
51
+ }), [trimmedName, consoleOrigin]);
52
+ const providerFieldsComplete = provider === "slack"
53
+ ? clientId.trim() !== "" &&
54
+ clientSecret.trim() !== "" &&
55
+ signingSecret.trim() !== ""
56
+ : appId.trim() !== "" &&
57
+ appSecret.trim() !== "" &&
58
+ accessToken.trim() !== "" &&
59
+ verifyToken.trim() !== "";
60
+ const canSubmit = trimmedName !== "" && providerFieldsComplete && !isCreating;
61
+ const handleSubmit = useCallback(async (e) => {
62
+ e.preventDefault();
63
+ if (!canSubmit)
64
+ return;
65
+ clearError();
66
+ try {
67
+ const app = await create({
68
+ name: trimmedName,
69
+ org,
70
+ ...(provider === "slack"
71
+ ? {
72
+ slack: {
73
+ clientId: clientId.trim(),
74
+ clientSecret: clientSecret.trim(),
75
+ signingSecret: signingSecret.trim(),
76
+ },
77
+ }
78
+ : {
79
+ whatsapp: {
80
+ appId: appId.trim(),
81
+ appSecret: appSecret.trim(),
82
+ accessToken: accessToken.trim(),
83
+ verifyToken: verifyToken.trim(),
84
+ },
85
+ }),
86
+ });
87
+ onCreated?.(app, provider === "whatsapp" ? { verifyToken: verifyToken.trim() } : {});
88
+ }
89
+ catch {
90
+ // error state is managed by useCreateChannelApp
91
+ }
92
+ }, [
93
+ canSubmit,
94
+ trimmedName,
95
+ org,
96
+ provider,
97
+ clientId,
98
+ clientSecret,
99
+ signingSecret,
100
+ appId,
101
+ appSecret,
102
+ accessToken,
103
+ verifyToken,
104
+ create,
105
+ clearError,
106
+ onCreated,
107
+ ]);
108
+ return (_jsxs("form", { onSubmit: handleSubmit, className: cn("space-y-4", className), children: [_jsxs("div", { className: "space-y-3", children: [_jsx(ProviderPicker, { value: provider, onChange: setProvider, disabled: isCreating }), _jsx(FormField, { id: "stgm-chapp-name", label: "Name", value: name, onChange: setName, placeholder: provider === "slack" ? "e.g. Acme Support Bot" : "e.g. Acme WhatsApp", hint: provider === "slack"
109
+ ? "The bot name your workspace will @mention"
110
+ : "Names the app in Stigmer — pick something that identifies the Meta app", disabled: isCreating, required: true }), provider === "slack" ? (_jsx(SlackCreateSection, { manifest: manifest, clientId: clientId, onClientIdChange: setClientId, clientSecret: clientSecret, onClientSecretChange: setClientSecret, signingSecret: signingSecret, onSigningSecretChange: setSigningSecret, disabled: isCreating })) : (_jsx(WhatsAppCreateSection, { appId: appId, onAppIdChange: setAppId, appSecret: appSecret, onAppSecretChange: setAppSecret, accessToken: accessToken, onAccessTokenChange: setAccessToken, verifyToken: verifyToken, onVerifyTokenChange: setVerifyToken, disabled: isCreating }))] }), error && (_jsx("p", { className: "text-destructive text-[0.65rem]", role: "alert", children: getUserMessage(error) })), _jsxs("div", { className: "flex items-center gap-2", children: [_jsxs("button", { type: "submit", disabled: !canSubmit, className: cn("inline-flex items-center gap-1.5 rounded-md px-3 py-1.5 text-xs font-medium", "bg-primary text-primary-foreground hover:bg-primary-hover", "disabled:pointer-events-none disabled:opacity-40"), children: [isCreating && _jsx(SpinnerIcon, {}), "Register channel app"] }), onCancel && (_jsx("button", { type: "button", onClick: onCancel, disabled: isCreating, className: cn("rounded-md px-3 py-1.5 text-xs", "text-muted-foreground hover:text-foreground hover:bg-accent-hover", "disabled:pointer-events-none disabled:opacity-50"), children: "Cancel" }))] })] }));
111
+ }
112
+ // ---------------------------------------------------------------------------
113
+ // Provider picker
114
+ // ---------------------------------------------------------------------------
115
+ /**
116
+ * Which provider the app belongs to — mutually exclusive and fixed for
117
+ * the resource's lifetime (the spec oneof), so a radio group, chosen
118
+ * before the fields it shapes.
119
+ */
120
+ function ProviderPicker({ value, onChange, disabled, }) {
121
+ return (_jsxs("fieldset", { children: [_jsx("legend", { className: "mb-1.5 block text-xs font-medium text-foreground", children: "Provider" }), _jsx("div", { role: "radiogroup", className: "flex gap-1.5", children: CHANNEL_PROVIDERS.map((p) => {
122
+ const checked = value === p.id;
123
+ return (_jsxs("label", { htmlFor: `stgm-chapp-provider-${p.id}`, className: cn("flex flex-1 cursor-pointer items-center gap-2 rounded-md border px-2.5 py-1.5", checked ? "border-ring bg-accent" : "border-border hover:bg-accent-hover", disabled && "pointer-events-none opacity-50"), children: [_jsx("input", { id: `stgm-chapp-provider-${p.id}`, type: "radio", name: "stgm-chapp-provider", checked: checked, onChange: () => onChange(p.id), disabled: disabled, className: "accent-current" }), _jsx(p.Icon, { className: "size-3.5 shrink-0 text-foreground" }), _jsx("span", { className: "text-xs font-medium text-foreground", children: p.label })] }, p.id));
124
+ }) })] }));
125
+ }
126
+ // ---------------------------------------------------------------------------
127
+ // Slack — manifest + Basic Information credentials
128
+ // ---------------------------------------------------------------------------
129
+ function SlackCreateSection({ manifest, clientId, onClientIdChange, clientSecret, onClientSecretChange, signingSecret, onSigningSecretChange, disabled, }) {
130
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "space-y-1.5", children: [_jsx("p", { className: "text-xs font-medium text-foreground", children: "1. Create the Slack app" }), _jsxs("p", { className: "text-[0.65rem] text-muted-foreground", children: ["On", " ", _jsx("a", { href: "https://api.slack.com/apps?new_app=1", target: "_blank", rel: "noreferrer", className: "text-primary hover:text-foreground underline transition-colors", children: "api.slack.com/apps" }), ", choose ", _jsx("span", { className: "font-medium", children: "From a manifest" }), " and paste this. Event subscriptions come after the next step \u2014 the webhook URL is minted when this form is saved."] }), _jsx(CopyBlock, { label: "Slack app manifest", value: manifest, copyTargetId: "stgm-chapp-manifest-copy" })] }), _jsxs("div", { className: "space-y-3", children: [_jsx("p", { className: "text-xs font-medium text-foreground", children: "2. Paste the app's credentials" }), _jsxs("p", { className: "-mt-2 text-[0.65rem] text-muted-foreground", children: ["From the app's ", _jsx("span", { className: "font-medium", children: "Basic Information" }), " page. They are encrypted at rest and never shown again."] }), _jsx(FormField, { id: "stgm-chapp-client-id", label: "Client ID", value: clientId, onChange: onClientIdChange, placeholder: "1234567890.0987654321", disabled: disabled, required: true }), _jsx(FormField, { id: "stgm-chapp-client-secret", label: "Client secret", value: clientSecret, onChange: onClientSecretChange, placeholder: "Client secret", type: "password", disabled: disabled, required: true }), _jsx(FormField, { id: "stgm-chapp-signing-secret", label: "Signing secret", value: signingSecret, onChange: onSigningSecretChange, placeholder: "Signing secret", type: "password", hint: "Verifies that webhook events really come from your app", disabled: disabled, required: true })] })] }));
131
+ }
132
+ // ---------------------------------------------------------------------------
133
+ // WhatsApp — Meta dashboard credentials + generated verify token
134
+ // ---------------------------------------------------------------------------
135
+ function WhatsAppCreateSection({ appId, onAppIdChange, appSecret, onAppSecretChange, accessToken, onAccessTokenChange, verifyToken, onVerifyTokenChange, disabled, }) {
136
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "space-y-1.5", children: [_jsx("p", { className: "text-xs font-medium text-foreground", children: "1. Create the Meta app" }), _jsxs("p", { className: "text-[0.65rem] text-muted-foreground", children: ["On", " ", _jsx("a", { href: "https://developers.facebook.com/apps", target: "_blank", rel: "noreferrer", className: "text-primary hover:text-foreground underline transition-colors", children: "developers.facebook.com" }), ", create a ", _jsx("span", { className: "font-medium", children: "Business" }), "-type app and add the ", _jsx("span", { className: "font-medium", children: "WhatsApp" }), " product. The webhook setup comes after the next step \u2014 the webhook URL is minted when this form is saved."] })] }), _jsxs("div", { className: "space-y-3", children: [_jsx("p", { className: "text-xs font-medium text-foreground", children: "2. Paste the app's credentials" }), _jsxs("p", { className: "-mt-2 text-[0.65rem] text-muted-foreground", children: ["The app ID and secret are on ", _jsx("span", { className: "font-medium", children: "App settings \u2192 Basic" }), "; mint a long-lived system-user access token with WhatsApp permissions in Meta Business settings. The secrets are encrypted at rest and never shown again."] }), _jsx(FormField, { id: "stgm-chapp-app-id", label: "App ID", value: appId, onChange: onAppIdChange, placeholder: "1234567890123456", disabled: disabled, required: true }), _jsx(FormField, { id: "stgm-chapp-app-secret", label: "App secret", value: appSecret, onChange: onAppSecretChange, placeholder: "App secret", type: "password", hint: "Verifies that webhook events really come from your app", disabled: disabled, required: true }), _jsx(FormField, { id: "stgm-chapp-access-token", label: "Access token", value: accessToken, onChange: onAccessTokenChange, placeholder: "Long-lived system-user access token", type: "password", hint: "Sends messages on behalf of your WhatsApp Business account", disabled: disabled, required: true }), _jsx(FormField, { id: "stgm-chapp-verify-token", label: "Verify token", value: verifyToken, onChange: onVerifyTokenChange, placeholder: "Verify token", hint: "Generated for you — you'll paste this same value into Meta's " +
137
+ "webhook configuration after registering. Replace it if your " +
138
+ "Meta app already has one.", disabled: disabled, required: true })] })] }));
139
+ }
140
+ //# sourceMappingURL=CreateChannelAppForm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateChannelAppForm.js","sourceRoot":"","sources":["../../src/channel-app/CreateChannelAppForm.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ export { useChannelAppList } from "./useChannelAppList.js";
2
+ export type { UseChannelAppListReturn } from "./useChannelAppList.js";
3
+ export { useCreateChannelApp } from "./useCreateChannelApp.js";
4
+ export type { UseCreateChannelAppReturn } from "./useCreateChannelApp.js";
5
+ export { useUpdateChannelApp } from "./useUpdateChannelApp.js";
6
+ export type { UseUpdateChannelAppReturn } from "./useUpdateChannelApp.js";
7
+ export { useDeleteChannelApp } from "./useDeleteChannelApp.js";
8
+ export type { UseDeleteChannelAppReturn } from "./useDeleteChannelApp.js";
9
+ export { ChannelAppListPanel } from "./ChannelAppListPanel.js";
10
+ export type { ChannelAppListPanelProps } from "./ChannelAppListPanel.js";
11
+ export { CreateChannelAppForm } from "./CreateChannelAppForm.js";
12
+ export type { CreateChannelAppFormProps, ChannelAppCreateHandoff, } from "./CreateChannelAppForm.js";
13
+ export { ChannelAppDetailPanel } from "./ChannelAppDetailPanel.js";
14
+ export type { ChannelAppDetailPanelProps } from "./ChannelAppDetailPanel.js";
15
+ export { buildSlackChannelAppManifest, slackChannelAppRedirectUrl, slackChannelAppWebhookUrl, SLACK_CHANNEL_APP_BOT_EVENTS, SLACK_CHANNEL_APP_BOT_SCOPES, } from "./slackAppSetup.js";
16
+ export type { SlackChannelAppManifestInput } from "./slackAppSetup.js";
17
+ export { generateWhatsAppVerifyToken, whatsappChannelAppWebhookUrl, WHATSAPP_CHANNEL_APP_WEBHOOK_FIELDS, } from "./whatsappAppSetup.js";
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/channel-app/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,YAAY,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,YAAY,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,YAAY,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,YAAY,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,YAAY,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,YAAY,EACV,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,YAAY,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,EAC1B,yBAAyB,EACzB,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,10 @@
1
+ export { useChannelAppList } from "./useChannelAppList.js";
2
+ export { useCreateChannelApp } from "./useCreateChannelApp.js";
3
+ export { useUpdateChannelApp } from "./useUpdateChannelApp.js";
4
+ export { useDeleteChannelApp } from "./useDeleteChannelApp.js";
5
+ export { ChannelAppListPanel } from "./ChannelAppListPanel.js";
6
+ export { CreateChannelAppForm } from "./CreateChannelAppForm.js";
7
+ export { ChannelAppDetailPanel } from "./ChannelAppDetailPanel.js";
8
+ export { buildSlackChannelAppManifest, slackChannelAppRedirectUrl, slackChannelAppWebhookUrl, SLACK_CHANNEL_APP_BOT_EVENTS, SLACK_CHANNEL_APP_BOT_SCOPES, } from "./slackAppSetup.js";
9
+ export { generateWhatsAppVerifyToken, whatsappChannelAppWebhookUrl, WHATSAPP_CHANNEL_APP_WEBHOOK_FIELDS, } from "./whatsappAppSetup.js";
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/channel-app/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAKjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,EAC1B,yBAAyB,EACzB,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Internal building blocks shared by the channel-app forms and panels.
3
+ * Not exported from the package — content-level pieces stay domain-local.
4
+ */
5
+ /** Labeled text/password input with an optional hint line. */
6
+ export declare function FormField({ id, label, value, onChange, placeholder, hint, type, disabled, required, }: {
7
+ id: string;
8
+ label: string;
9
+ value: string;
10
+ onChange: (v: string) => void;
11
+ placeholder: string;
12
+ hint?: string;
13
+ type?: "text" | "password";
14
+ disabled: boolean;
15
+ required?: boolean;
16
+ }): import("react/jsx-runtime").JSX.Element;
17
+ /**
18
+ * A single-line copyable value (webhook URL, redirect URL) with a copy
19
+ * button that confirms briefly.
20
+ */
21
+ export declare function CopyRow({ label, value, copyTargetId, }: {
22
+ label: string;
23
+ value: string;
24
+ copyTargetId?: string;
25
+ }): import("react/jsx-runtime").JSX.Element;
26
+ /** A multi-line copyable value (the app manifest) in a scrollable block. */
27
+ export declare function CopyBlock({ label, value, copyTargetId, }: {
28
+ label: string;
29
+ value: string;
30
+ copyTargetId?: string;
31
+ }): import("react/jsx-runtime").JSX.Element;
32
+ export declare function SpinnerIcon(): import("react/jsx-runtime").JSX.Element;
33
+ //# sourceMappingURL=internal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/channel-app/internal.tsx"],"names":[],"mappings":"AAKA;;;GAGG;AAEH,8DAA8D;AAC9D,wBAAgB,SAAS,CAAC,EACxB,EAAE,EACF,KAAK,EACL,KAAK,EACL,QAAQ,EACR,WAAW,EACX,IAAI,EACJ,IAAa,EACb,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,2CAwBA;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,EACtB,KAAK,EACL,KAAK,EACL,YAAY,GACb,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,2CAoBA;AAED,4EAA4E;AAC5E,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,KAAK,EACL,YAAY,GACb,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,2CAqBA;AA0CD,wBAAgB,WAAW,4CAgB1B"}
@@ -0,0 +1,44 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useCallback, useState } from "react";
4
+ import { cn } from "@stigmer/theme";
5
+ /**
6
+ * Internal building blocks shared by the channel-app forms and panels.
7
+ * Not exported from the package — content-level pieces stay domain-local.
8
+ */
9
+ /** Labeled text/password input with an optional hint line. */
10
+ export function FormField({ id, label, value, onChange, placeholder, hint, type = "text", disabled, required, }) {
11
+ return (_jsxs("div", { className: "space-y-1", children: [_jsx("label", { htmlFor: id, className: "text-xs font-medium text-foreground", children: label }), _jsx("input", { id: id, type: type, value: value, onChange: (e) => onChange(e.target.value), placeholder: placeholder, disabled: disabled, required: required, className: cn("w-full rounded-md border border-input bg-background px-2.5 py-1.5 text-xs text-foreground", "placeholder:text-muted-foreground", "focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring", "disabled:pointer-events-none disabled:opacity-50") }), hint && _jsx("p", { className: "text-[0.65rem] text-muted-foreground", children: hint })] }));
12
+ }
13
+ /**
14
+ * A single-line copyable value (webhook URL, redirect URL) with a copy
15
+ * button that confirms briefly.
16
+ */
17
+ export function CopyRow({ label, value, copyTargetId, }) {
18
+ const { copied, copy } = useCopy(value);
19
+ return (_jsxs("div", { className: "space-y-1", children: [_jsx("p", { className: "text-xs font-medium text-foreground", children: label }), _jsxs("div", { className: "flex items-center gap-1.5", children: [_jsx("code", { className: cn("min-w-0 flex-1 truncate rounded-md border border-border bg-muted-subtle", "px-2 py-1.5 font-mono text-[0.65rem] text-foreground"), title: value, children: value }), _jsx(CopyButton, { copied: copied, onCopy: copy, copyTargetId: copyTargetId })] })] }));
20
+ }
21
+ /** A multi-line copyable value (the app manifest) in a scrollable block. */
22
+ export function CopyBlock({ label, value, copyTargetId, }) {
23
+ const { copied, copy } = useCopy(value);
24
+ return (_jsxs("div", { className: "space-y-1", children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("p", { className: "text-[0.65rem] font-medium text-muted-foreground", children: label }), _jsx(CopyButton, { copied: copied, onCopy: copy, copyTargetId: copyTargetId })] }), _jsx("pre", { className: cn("max-h-40 overflow-auto rounded-md border border-border bg-muted-subtle", "px-2.5 py-2 font-mono text-[0.65rem] leading-relaxed text-foreground"), children: value })] }));
25
+ }
26
+ function CopyButton({ copied, onCopy, copyTargetId, }) {
27
+ return (_jsx("button", { type: "button", onClick: onCopy, "data-cursor-target": copyTargetId, className: cn("shrink-0 rounded-md border border-border px-2 py-1 text-[0.65rem] font-medium transition-colors", copied
28
+ ? "text-success"
29
+ : "text-muted-foreground hover:text-foreground hover:bg-accent-hover"), "aria-live": "polite", children: copied ? "Copied" : "Copy" }));
30
+ }
31
+ function useCopy(value) {
32
+ const [copied, setCopied] = useState(false);
33
+ const copy = useCallback(() => {
34
+ void navigator.clipboard.writeText(value).then(() => {
35
+ setCopied(true);
36
+ window.setTimeout(() => setCopied(false), 1500);
37
+ });
38
+ }, [value]);
39
+ return { copied, copy };
40
+ }
41
+ export function SpinnerIcon() {
42
+ return (_jsx("svg", { width: "12", height: "12", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", className: "animate-spin", "aria-hidden": "true", children: _jsx("path", { d: "M8 2a6 6 0 1 0 6 6" }) }));
43
+ }
44
+ //# sourceMappingURL=internal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../src/channel-app/internal.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Pure helpers for the "bring your own Slack app" setup surface
3
+ * (T04 item 2).
4
+ *
5
+ * A customer-owned Slack app needs three Stigmer-side values wired into
6
+ * its configuration on api.slack.com: the OAuth redirect URL (shared by
7
+ * every app — the console's callback route), the app's own events
8
+ * webhook URL (per-app by design: the path is how the receiver knows
9
+ * which signing secret verifies the request), and the fixed scope/event
10
+ * sets. These helpers derive those values and render a ready-to-paste
11
+ * Slack app manifest so creating the app is one paste instead of a dozen
12
+ * dashboard steps.
13
+ *
14
+ * Setup is inherently two-phase — Slack mints the credentials, Stigmer
15
+ * mints the webhook URL, and each needs the other's output:
16
+ *
17
+ * 1. Create the Slack app from {@link buildSlackChannelAppManifest}
18
+ * WITHOUT a webhook URL (events come later), then paste its
19
+ * credentials into `CreateChannelAppForm`.
20
+ * 2. The saved ChannelApp has an id, so `ChannelAppDetailPanel` can show
21
+ * the webhook URL — paste it into the app's Event Subscriptions (or
22
+ * re-apply the completed manifest).
23
+ */
24
+ /**
25
+ * The bot scopes every Stigmer channel app requests — the platform app's
26
+ * exact set (scope minimalism is deliberate: it is the first thing a
27
+ * workspace admin reviews on the consent screen).
28
+ */
29
+ export declare const SLACK_CHANNEL_APP_BOT_SCOPES: readonly ["app_mentions:read", "assistant:write", "chat:write", "im:history"];
30
+ /**
31
+ * The bot events every Stigmer channel app subscribes to — the platform
32
+ * app's exact set (mentions, DMs, assistant surface, and the uninstall/
33
+ * revocation lifecycle events).
34
+ */
35
+ export declare const SLACK_CHANNEL_APP_BOT_EVENTS: readonly ["app_home_opened", "app_mention", "app_uninstalled", "assistant_thread_context_changed", "assistant_thread_started", "message.im", "tokens_revoked"];
36
+ /**
37
+ * The events webhook URL for one ChannelApp: the per-app route the
38
+ * receiver resolves the app's signing secret by.
39
+ *
40
+ * @param apiBaseUrl the Stigmer API origin (`stigmer.baseUrl`)
41
+ * @param channelAppId the ChannelApp resource id (`chapp_...`)
42
+ */
43
+ export declare function slackChannelAppWebhookUrl(apiBaseUrl: string, channelAppId: string): string;
44
+ /**
45
+ * The OAuth redirect URL a customer registers on their Slack app — the
46
+ * console's install-callback route, shared by every app (the platform
47
+ * completes the code exchange server-side with the app's own
48
+ * credentials).
49
+ *
50
+ * @param consoleOrigin the console origin (defaults to the current
51
+ * window's origin; pass explicitly in non-browser
52
+ * hosts)
53
+ */
54
+ export declare function slackChannelAppRedirectUrl(consoleOrigin?: string): string;
55
+ /** Inputs for {@link buildSlackChannelAppManifest}. */
56
+ export interface SlackChannelAppManifestInput {
57
+ /** Bot display name — what the workspace @mentions. */
58
+ readonly name: string;
59
+ /** One-line app description shown on the consent screen. */
60
+ readonly description?: string;
61
+ /** The console's OAuth redirect URL ({@link slackChannelAppRedirectUrl}). */
62
+ readonly redirectUrl: string;
63
+ /**
64
+ * The app's events webhook URL ({@link slackChannelAppWebhookUrl}).
65
+ * Omit before the ChannelApp exists — the manifest then skips event
66
+ * subscriptions, which are completed from the detail panel after
67
+ * creation.
68
+ */
69
+ readonly webhookUrl?: string;
70
+ }
71
+ /**
72
+ * Render the ready-to-paste Slack app manifest for a customer channel
73
+ * app — the platform app's manifest with the customer's identity.
74
+ *
75
+ * Deliberate mirrors of the platform manifest (do not "fix" them):
76
+ * four bot scopes only, `org_deploy_enabled: false` (Enterprise Grid
77
+ * org-wide installs are unsupported), no interactivity, no socket mode.
78
+ */
79
+ export declare function buildSlackChannelAppManifest(input: SlackChannelAppManifestInput): string;
80
+ //# sourceMappingURL=slackAppSetup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slackAppSetup.d.ts","sourceRoot":"","sources":["../../src/channel-app/slackAppSetup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,+EAK/B,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,gKAQ/B,CAAC;AAEX;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GACnB,MAAM,CAER;AAED;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAKzE;AAED,uDAAuD;AACvD,MAAM,WAAW,4BAA4B;IAC3C,uDAAuD;IACvD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,6EAA6E;IAC7E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,4BAA4B,GAClC,MAAM,CA2CR"}
@@ -0,0 +1,123 @@
1
+ /**
2
+ * Pure helpers for the "bring your own Slack app" setup surface
3
+ * (T04 item 2).
4
+ *
5
+ * A customer-owned Slack app needs three Stigmer-side values wired into
6
+ * its configuration on api.slack.com: the OAuth redirect URL (shared by
7
+ * every app — the console's callback route), the app's own events
8
+ * webhook URL (per-app by design: the path is how the receiver knows
9
+ * which signing secret verifies the request), and the fixed scope/event
10
+ * sets. These helpers derive those values and render a ready-to-paste
11
+ * Slack app manifest so creating the app is one paste instead of a dozen
12
+ * dashboard steps.
13
+ *
14
+ * Setup is inherently two-phase — Slack mints the credentials, Stigmer
15
+ * mints the webhook URL, and each needs the other's output:
16
+ *
17
+ * 1. Create the Slack app from {@link buildSlackChannelAppManifest}
18
+ * WITHOUT a webhook URL (events come later), then paste its
19
+ * credentials into `CreateChannelAppForm`.
20
+ * 2. The saved ChannelApp has an id, so `ChannelAppDetailPanel` can show
21
+ * the webhook URL — paste it into the app's Event Subscriptions (or
22
+ * re-apply the completed manifest).
23
+ */
24
+ /**
25
+ * The bot scopes every Stigmer channel app requests — the platform app's
26
+ * exact set (scope minimalism is deliberate: it is the first thing a
27
+ * workspace admin reviews on the consent screen).
28
+ */
29
+ export const SLACK_CHANNEL_APP_BOT_SCOPES = [
30
+ "app_mentions:read",
31
+ "assistant:write",
32
+ "chat:write",
33
+ "im:history",
34
+ ];
35
+ /**
36
+ * The bot events every Stigmer channel app subscribes to — the platform
37
+ * app's exact set (mentions, DMs, assistant surface, and the uninstall/
38
+ * revocation lifecycle events).
39
+ */
40
+ export const SLACK_CHANNEL_APP_BOT_EVENTS = [
41
+ "app_home_opened",
42
+ "app_mention",
43
+ "app_uninstalled",
44
+ "assistant_thread_context_changed",
45
+ "assistant_thread_started",
46
+ "message.im",
47
+ "tokens_revoked",
48
+ ];
49
+ /**
50
+ * The events webhook URL for one ChannelApp: the per-app route the
51
+ * receiver resolves the app's signing secret by.
52
+ *
53
+ * @param apiBaseUrl the Stigmer API origin (`stigmer.baseUrl`)
54
+ * @param channelAppId the ChannelApp resource id (`chapp_...`)
55
+ */
56
+ export function slackChannelAppWebhookUrl(apiBaseUrl, channelAppId) {
57
+ return `${apiBaseUrl.replace(/\/+$/, "")}/webhook/slack/${channelAppId}`;
58
+ }
59
+ /**
60
+ * The OAuth redirect URL a customer registers on their Slack app — the
61
+ * console's install-callback route, shared by every app (the platform
62
+ * completes the code exchange server-side with the app's own
63
+ * credentials).
64
+ *
65
+ * @param consoleOrigin the console origin (defaults to the current
66
+ * window's origin; pass explicitly in non-browser
67
+ * hosts)
68
+ */
69
+ export function slackChannelAppRedirectUrl(consoleOrigin) {
70
+ const origin = consoleOrigin ??
71
+ (typeof window !== "undefined" ? window.location.origin : "");
72
+ return `${origin.replace(/\/+$/, "")}/oauth/slack/callback`;
73
+ }
74
+ /**
75
+ * Render the ready-to-paste Slack app manifest for a customer channel
76
+ * app — the platform app's manifest with the customer's identity.
77
+ *
78
+ * Deliberate mirrors of the platform manifest (do not "fix" them):
79
+ * four bot scopes only, `org_deploy_enabled: false` (Enterprise Grid
80
+ * org-wide installs are unsupported), no interactivity, no socket mode.
81
+ */
82
+ export function buildSlackChannelAppManifest(input) {
83
+ const description = input.description ??
84
+ "Chat with your organization's Stigmer agent without leaving Slack.";
85
+ const eventSubscriptions = input.webhookUrl
86
+ ? ` event_subscriptions:
87
+ request_url: "${input.webhookUrl}"
88
+ bot_events:
89
+ ${SLACK_CHANNEL_APP_BOT_EVENTS.map((e) => ` - ${e}`).join("\n")}
90
+ `
91
+ : "";
92
+ return `display_information:
93
+ name: ${input.name}
94
+ description: ${description}
95
+
96
+ features:
97
+ app_home:
98
+ home_tab_enabled: false
99
+ messages_tab_enabled: true
100
+ messages_tab_read_only_enabled: false
101
+ bot_user:
102
+ display_name: ${input.name}
103
+ always_online: true
104
+ assistant_view:
105
+ assistant_description: ${description}
106
+ suggested_prompts: []
107
+
108
+ oauth_config:
109
+ redirect_urls:
110
+ - "${input.redirectUrl}"
111
+ scopes:
112
+ bot:
113
+ ${SLACK_CHANNEL_APP_BOT_SCOPES.map((s) => ` - ${s}`).join("\n")}
114
+
115
+ settings:
116
+ ${eventSubscriptions} interactivity:
117
+ is_enabled: false
118
+ org_deploy_enabled: false
119
+ socket_mode_enabled: false
120
+ token_rotation_enabled: false
121
+ `;
122
+ }
123
+ //# sourceMappingURL=slackAppSetup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slackAppSetup.js","sourceRoot":"","sources":["../../src/channel-app/slackAppSetup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,mBAAmB;IACnB,iBAAiB;IACjB,YAAY;IACZ,YAAY;CACJ,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,iBAAiB;IACjB,aAAa;IACb,iBAAiB;IACjB,kCAAkC;IAClC,0BAA0B;IAC1B,YAAY;IACZ,gBAAgB;CACR,CAAC;AAEX;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CACvC,UAAkB,EAClB,YAAoB;IAEpB,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,kBAAkB,YAAY,EAAE,CAAC;AAC3E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,0BAA0B,CAAC,aAAsB;IAC/D,MAAM,MAAM,GACV,aAAa;QACb,CAAC,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAChE,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,uBAAuB,CAAC;AAC9D,CAAC;AAmBD;;;;;;;GAOG;AACH,MAAM,UAAU,4BAA4B,CAC1C,KAAmC;IAEnC,MAAM,WAAW,GACf,KAAK,CAAC,WAAW;QACjB,oEAAoE,CAAC;IAEvE,MAAM,kBAAkB,GAAG,KAAK,CAAC,UAAU;QACzC,CAAC,CAAC;oBACc,KAAK,CAAC,UAAU;;EAElC,4BAA4B,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;CACnE;QACG,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO;UACC,KAAK,CAAC,IAAI;iBACH,WAAW;;;;;;;;oBAQR,KAAK,CAAC,IAAI;;;6BAGD,WAAW;;;;;SAK/B,KAAK,CAAC,WAAW;;;EAGxB,4BAA4B,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;EAGlE,kBAAkB;;;;;CAKnB,CAAC;AACF,CAAC"}
@@ -0,0 +1,35 @@
1
+ import type { ChannelApp } from "@stigmer/protos/ai/stigmer/agentic/channelapp/v1/api_pb";
2
+ /** Return value of {@link useChannelAppList}. */
3
+ export interface UseChannelAppListReturn {
4
+ /** Channel apps owned by the organization. Empty while loading or on error. */
5
+ readonly channelApps: readonly ChannelApp[];
6
+ /** `true` while the initial fetch or a refetch is in flight. */
7
+ readonly isLoading: boolean;
8
+ /** `true` while a background refetch is in flight and stale data is shown. */
9
+ readonly isRefetching: boolean;
10
+ /** Error from the last failed request, or `null` when healthy. */
11
+ readonly error: Error | null;
12
+ /** Discard cached data and re-fetch the list from the server. */
13
+ readonly refetch: () => void;
14
+ }
15
+ /**
16
+ * Data hook that fetches all {@link ChannelApp} entries for an
17
+ * organization.
18
+ *
19
+ * These are the customer-owned messaging-platform apps (bring-your-own
20
+ * Slack apps) that agent channels can install through instead of the
21
+ * shared Stigmer app. Secret fields arrive redacted.
22
+ *
23
+ * Pass `null` for `org` to skip fetching (stable no-op). Useful when
24
+ * the active organization has not been resolved yet.
25
+ *
26
+ * @example
27
+ * ```tsx
28
+ * const { channelApps, isLoading, error } = useChannelAppList(org);
29
+ *
30
+ * if (isLoading) return <Spinner />;
31
+ * channelApps.map((app) => app.metadata?.name);
32
+ * ```
33
+ */
34
+ export declare function useChannelAppList(org: string | null): UseChannelAppListReturn;
35
+ //# sourceMappingURL=useChannelAppList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useChannelAppList.d.ts","sourceRoot":"","sources":["../../src/channel-app/useChannelAppList.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yDAAyD,CAAC;AAI1F,iDAAiD;AACjD,MAAM,WAAW,uBAAuB;IACtC,+EAA+E;IAC/E,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;IAC5C,gEAAgE;IAChE,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,8EAA8E;IAC9E,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,kEAAkE;IAClE,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAC7B,iEAAiE;IACjE,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,MAAM,GAAG,IAAI,GACjB,uBAAuB,CAezB"}
@@ -0,0 +1,34 @@
1
+ "use client";
2
+ import { create } from "@bufbuild/protobuf";
3
+ import { ListChannelAppsByOrgInputSchema } from "@stigmer/protos/ai/stigmer/agentic/channelapp/v1/io_pb";
4
+ import { useStigmer } from "../hooks.js";
5
+ import { useFetch } from "../internal/useFetch.js";
6
+ /**
7
+ * Data hook that fetches all {@link ChannelApp} entries for an
8
+ * organization.
9
+ *
10
+ * These are the customer-owned messaging-platform apps (bring-your-own
11
+ * Slack apps) that agent channels can install through instead of the
12
+ * shared Stigmer app. Secret fields arrive redacted.
13
+ *
14
+ * Pass `null` for `org` to skip fetching (stable no-op). Useful when
15
+ * the active organization has not been resolved yet.
16
+ *
17
+ * @example
18
+ * ```tsx
19
+ * const { channelApps, isLoading, error } = useChannelAppList(org);
20
+ *
21
+ * if (isLoading) return <Spinner />;
22
+ * channelApps.map((app) => app.metadata?.name);
23
+ * ```
24
+ */
25
+ export function useChannelAppList(org) {
26
+ const stigmer = useStigmer();
27
+ const { data: channelApps, isLoading, isRefetching, error, refetch } = useFetch(org
28
+ ? () => stigmer.channelapp
29
+ .listByOrg(create(ListChannelAppsByOrgInputSchema, { org }))
30
+ .then((r) => [...r.entries])
31
+ : null, [org, stigmer], []);
32
+ return { channelApps, isLoading, isRefetching, error, refetch };
33
+ }
34
+ //# sourceMappingURL=useChannelAppList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useChannelAppList.js","sourceRoot":"","sources":["../../src/channel-app/useChannelAppList.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,+BAA+B,EAAE,MAAM,wDAAwD,CAAC;AAEzG,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAgBnD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,iBAAiB,CAC/B,GAAkB;IAElB,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,QAAQ,CAC7E,GAAG;QACD,CAAC,CAAC,GAAG,EAAE,CACH,OAAO,CAAC,UAAU;aACf,SAAS,CAAC,MAAM,CAAC,+BAA+B,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;aAC3D,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC,CAAC,IAAI,EACR,CAAC,GAAG,EAAE,OAAO,CAAC,EACd,EAAkB,CACnB,CAAC;IAEF,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAClE,CAAC"}
@@ -0,0 +1,39 @@
1
+ import type { ChannelAppInput } from "@stigmer/sdk";
2
+ import type { ChannelApp } from "@stigmer/protos/ai/stigmer/agentic/channelapp/v1/api_pb";
3
+ /** Return value of {@link useCreateChannelApp}. */
4
+ export interface UseCreateChannelAppReturn {
5
+ /** Submit a {@link ChannelAppInput} to create a new channel app. Resolves with the server-created resource. */
6
+ readonly create: (input: ChannelAppInput) => Promise<ChannelApp>;
7
+ /** `true` while the create request is in flight. */
8
+ readonly isCreating: boolean;
9
+ /** Error from the last failed create, or `null` when healthy. */
10
+ readonly error: Error | null;
11
+ /** Reset `error` to `null`. */
12
+ readonly clearError: () => void;
13
+ }
14
+ /**
15
+ * Mutation hook that wraps `channelapp.create()` with loading and error
16
+ * state.
17
+ *
18
+ * Creates a channel app — a customer-owned messaging-platform app whose
19
+ * credentials agent channels can install through instead of the shared
20
+ * Stigmer app. The secret fields (`clientSecret`, `signingSecret`) are
21
+ * encrypted server-side and come back redacted in the response.
22
+ *
23
+ * @example
24
+ * ```tsx
25
+ * const { create, isCreating, error } = useCreateChannelApp();
26
+ *
27
+ * const app = await create({
28
+ * name: "Acme Support Bot",
29
+ * org: "acme",
30
+ * slack: {
31
+ * clientId: "123456.789012",
32
+ * clientSecret: "…",
33
+ * signingSecret: "…",
34
+ * },
35
+ * });
36
+ * ```
37
+ */
38
+ export declare function useCreateChannelApp(): UseCreateChannelAppReturn;
39
+ //# sourceMappingURL=useCreateChannelApp.d.ts.map