@stigmer/react 3.12.3 → 3.12.5

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 (493) hide show
  1. package/agent/steps/IdentityStep.d.ts.map +1 -1
  2. package/agent/steps/IdentityStep.js +2 -1
  3. package/agent/steps/IdentityStep.js.map +1 -1
  4. package/agent-instance/AgentInstanceDetailPanel.d.ts.map +1 -1
  5. package/agent-instance/AgentInstanceDetailPanel.js +2 -1
  6. package/agent-instance/AgentInstanceDetailPanel.js.map +1 -1
  7. package/api-key/CreateApiKeyForm.d.ts.map +1 -1
  8. package/api-key/CreateApiKeyForm.js +2 -1
  9. package/api-key/CreateApiKeyForm.js.map +1 -1
  10. package/attachment/AttachmentChipList.js +16 -6
  11. package/attachment/AttachmentChipList.js.map +1 -1
  12. package/attachment/index.d.ts +1 -1
  13. package/attachment/index.d.ts.map +1 -1
  14. package/attachment/index.js.map +1 -1
  15. package/attachment/useAttachments.d.ts +51 -8
  16. package/attachment/useAttachments.d.ts.map +1 -1
  17. package/attachment/useAttachments.js +74 -3
  18. package/attachment/useAttachments.js.map +1 -1
  19. package/channel/ChannelConversationsDialog.d.ts.map +1 -1
  20. package/channel/ChannelConversationsDialog.js +2 -1
  21. package/channel/ChannelConversationsDialog.js.map +1 -1
  22. package/channel/ChannelTemplatesDialog.d.ts.map +1 -1
  23. package/channel/ChannelTemplatesDialog.js +2 -1
  24. package/channel/ChannelTemplatesDialog.js.map +1 -1
  25. package/channel/ConnectSlackDialog.d.ts.map +1 -1
  26. package/channel/ConnectSlackDialog.js +2 -1
  27. package/channel/ConnectSlackDialog.js.map +1 -1
  28. package/channel/connect/ServingAppSection.d.ts.map +1 -1
  29. package/channel/connect/ServingAppSection.js +2 -1
  30. package/channel/connect/ServingAppSection.js.map +1 -1
  31. package/channel-app/CreateChannelAppForm.d.ts.map +1 -1
  32. package/channel-app/CreateChannelAppForm.js +2 -1
  33. package/channel-app/CreateChannelAppForm.js.map +1 -1
  34. package/composer/SessionComposer.d.ts.map +1 -1
  35. package/composer/SessionComposer.js +17 -10
  36. package/composer/SessionComposer.js.map +1 -1
  37. package/conversation/ConversationComposer.d.ts +19 -3
  38. package/conversation/ConversationComposer.d.ts.map +1 -1
  39. package/conversation/ConversationComposer.js +4 -4
  40. package/conversation/ConversationComposer.js.map +1 -1
  41. package/conversation/ConversationListPane.d.ts.map +1 -1
  42. package/conversation/ConversationListPane.js +2 -1
  43. package/conversation/ConversationListPane.js.map +1 -1
  44. package/conversation/ConversationTemplatePickerDialog.d.ts +63 -0
  45. package/conversation/ConversationTemplatePickerDialog.d.ts.map +1 -0
  46. package/conversation/ConversationTemplatePickerDialog.js +151 -0
  47. package/conversation/ConversationTemplatePickerDialog.js.map +1 -0
  48. package/conversation/ConversationTimelineView.d.ts.map +1 -1
  49. package/conversation/ConversationTimelineView.js +2 -1
  50. package/conversation/ConversationTimelineView.js.map +1 -1
  51. package/conversation/ConversationsWorkbench.d.ts.map +1 -1
  52. package/conversation/ConversationsWorkbench.js +16 -5
  53. package/conversation/ConversationsWorkbench.js.map +1 -1
  54. package/conversation/index.d.ts +3 -1
  55. package/conversation/index.d.ts.map +1 -1
  56. package/conversation/index.js +1 -0
  57. package/conversation/index.js.map +1 -1
  58. package/conversation/useConversationParticipation.d.ts +41 -4
  59. package/conversation/useConversationParticipation.d.ts.map +1 -1
  60. package/conversation/useConversationParticipation.js +13 -2
  61. package/conversation/useConversationParticipation.js.map +1 -1
  62. package/cursor-accounts/CursorAccountsConsole.d.ts.map +1 -1
  63. package/cursor-accounts/CursorAccountsConsole.js +2 -1
  64. package/cursor-accounts/CursorAccountsConsole.js.map +1 -1
  65. package/cursor-accounts/MemberKeysPanel.d.ts.map +1 -1
  66. package/cursor-accounts/MemberKeysPanel.js +2 -1
  67. package/cursor-accounts/MemberKeysPanel.js.map +1 -1
  68. package/dashboard/DashboardFailedRuns.d.ts.map +1 -1
  69. package/dashboard/DashboardFailedRuns.js +2 -1
  70. package/dashboard/DashboardFailedRuns.js.map +1 -1
  71. package/dependency-graph/DependencyGraph.d.ts.map +1 -1
  72. package/dependency-graph/DependencyGraph.js +2 -1
  73. package/dependency-graph/DependencyGraph.js.map +1 -1
  74. package/dependency-graph/DependencyTreeNode.d.ts.map +1 -1
  75. package/dependency-graph/DependencyTreeNode.js +2 -1
  76. package/dependency-graph/DependencyTreeNode.js.map +1 -1
  77. package/environment/EnvironmentPicker.d.ts.map +1 -1
  78. package/environment/EnvironmentPicker.js +2 -1
  79. package/environment/EnvironmentPicker.js.map +1 -1
  80. package/error/SecretFlowErrorGuide.d.ts.map +1 -1
  81. package/error/SecretFlowErrorGuide.js +2 -1
  82. package/error/SecretFlowErrorGuide.js.map +1 -1
  83. package/execution/ArtifactContentBody.d.ts.map +1 -1
  84. package/execution/ArtifactContentBody.js +2 -1
  85. package/execution/ArtifactContentBody.js.map +1 -1
  86. package/execution/ArtifactsWidget.d.ts.map +1 -1
  87. package/execution/ArtifactsWidget.js +2 -1
  88. package/execution/ArtifactsWidget.js.map +1 -1
  89. package/execution/FileChangeProgressBar.d.ts.map +1 -1
  90. package/execution/FileChangeProgressBar.js +2 -1
  91. package/execution/FileChangeProgressBar.js.map +1 -1
  92. package/execution/TodoList.d.ts.map +1 -1
  93. package/execution/TodoList.js +2 -1
  94. package/execution/TodoList.js.map +1 -1
  95. package/execution/WriteBacksWidget.d.ts.map +1 -1
  96. package/execution/WriteBacksWidget.js +2 -1
  97. package/execution/WriteBacksWidget.js.map +1 -1
  98. package/execution/tool-categories.d.ts +5 -22
  99. package/execution/tool-categories.d.ts.map +1 -1
  100. package/execution/tool-categories.js +8 -38
  101. package/execution/tool-categories.js.map +1 -1
  102. package/iam-policy/PeopleWithAccess.d.ts.map +1 -1
  103. package/iam-policy/PeopleWithAccess.js +2 -1
  104. package/iam-policy/PeopleWithAccess.js.map +1 -1
  105. package/iam-policy/PrincipalPicker.d.ts.map +1 -1
  106. package/iam-policy/PrincipalPicker.js +2 -1
  107. package/iam-policy/PrincipalPicker.js.map +1 -1
  108. package/iam-policy/RoleSelector.d.ts.map +1 -1
  109. package/iam-policy/RoleSelector.js +2 -1
  110. package/iam-policy/RoleSelector.js.map +1 -1
  111. package/identity-account/AccountPreferencesPanel.d.ts +35 -0
  112. package/identity-account/AccountPreferencesPanel.d.ts.map +1 -0
  113. package/identity-account/AccountPreferencesPanel.js +187 -0
  114. package/identity-account/AccountPreferencesPanel.js.map +1 -0
  115. package/identity-account/index.d.ts +8 -0
  116. package/identity-account/index.d.ts.map +1 -1
  117. package/identity-account/index.js +4 -0
  118. package/identity-account/index.js.map +1 -1
  119. package/identity-account/useAccountExecutionDefaults.d.ts +36 -0
  120. package/identity-account/useAccountExecutionDefaults.d.ts.map +1 -0
  121. package/identity-account/useAccountExecutionDefaults.js +46 -0
  122. package/identity-account/useAccountExecutionDefaults.js.map +1 -0
  123. package/identity-account/useMyIdentityAccount.d.ts +55 -0
  124. package/identity-account/useMyIdentityAccount.d.ts.map +1 -0
  125. package/identity-account/useMyIdentityAccount.js +37 -0
  126. package/identity-account/useMyIdentityAccount.js.map +1 -0
  127. package/identity-account/useUpdateIdentityAccount.d.ts +42 -0
  128. package/identity-account/useUpdateIdentityAccount.d.ts.map +1 -0
  129. package/identity-account/useUpdateIdentityAccount.js +53 -0
  130. package/identity-account/useUpdateIdentityAccount.js.map +1 -0
  131. package/identity-provider/CreateIdentityProviderForm.d.ts.map +1 -1
  132. package/identity-provider/CreateIdentityProviderForm.js +2 -1
  133. package/identity-provider/CreateIdentityProviderForm.js.map +1 -1
  134. package/identity-provider/IdentityProviderDetailPanel.d.ts.map +1 -1
  135. package/identity-provider/IdentityProviderDetailPanel.js +2 -1
  136. package/identity-provider/IdentityProviderDetailPanel.js.map +1 -1
  137. package/identity-provider/IdentityProviderWizard.d.ts.map +1 -1
  138. package/identity-provider/IdentityProviderWizard.js +2 -1
  139. package/identity-provider/IdentityProviderWizard.js.map +1 -1
  140. package/index.d.ts +14 -10
  141. package/index.d.ts.map +1 -1
  142. package/index.js +11 -5
  143. package/index.js.map +1 -1
  144. package/internal/StandingContextField.d.ts +37 -0
  145. package/internal/StandingContextField.d.ts.map +1 -0
  146. package/internal/StandingContextField.js +24 -0
  147. package/internal/StandingContextField.js.map +1 -0
  148. package/internal/element-resets.d.ts +17 -0
  149. package/internal/element-resets.d.ts.map +1 -0
  150. package/internal/element-resets.js +32 -0
  151. package/internal/element-resets.js.map +1 -0
  152. package/internal/file-tree/FileTreeNode.d.ts.map +1 -1
  153. package/internal/file-tree/FileTreeNode.js +2 -1
  154. package/internal/file-tree/FileTreeNode.js.map +1 -1
  155. package/internal/markdown-components.d.ts +7 -0
  156. package/internal/markdown-components.d.ts.map +1 -1
  157. package/internal/markdown-components.js +15 -5
  158. package/internal/markdown-components.js.map +1 -1
  159. package/invitation/InvitationManager.d.ts.map +1 -1
  160. package/invitation/InvitationManager.js +2 -1
  161. package/invitation/InvitationManager.js.map +1 -1
  162. package/library/InstanceVisibilitySelector.d.ts.map +1 -1
  163. package/library/InstanceVisibilitySelector.js +9 -2
  164. package/library/InstanceVisibilitySelector.js.map +1 -1
  165. package/library/ResourceVisibilityControl.d.ts +13 -3
  166. package/library/ResourceVisibilityControl.d.ts.map +1 -1
  167. package/library/ResourceVisibilityControl.js +33 -5
  168. package/library/ResourceVisibilityControl.js.map +1 -1
  169. package/library/VisibilityOptionRow.d.ts +6 -0
  170. package/library/VisibilityOptionRow.d.ts.map +1 -1
  171. package/library/VisibilityOptionRow.js +11 -1
  172. package/library/VisibilityOptionRow.js.map +1 -1
  173. package/library/VisibilitySelector.d.ts.map +1 -1
  174. package/library/VisibilitySelector.js +14 -2
  175. package/library/VisibilitySelector.js.map +1 -1
  176. package/library/index.d.ts +4 -2
  177. package/library/index.d.ts.map +1 -1
  178. package/library/index.js +2 -1
  179. package/library/index.js.map +1 -1
  180. package/library/useCanSetPublicVisibility.d.ts +30 -0
  181. package/library/useCanSetPublicVisibility.d.ts.map +1 -0
  182. package/library/useCanSetPublicVisibility.js +41 -0
  183. package/library/useCanSetPublicVisibility.js.map +1 -0
  184. package/library/visibilityLevels.d.ts +32 -1
  185. package/library/visibilityLevels.d.ts.map +1 -1
  186. package/library/visibilityLevels.js +34 -14
  187. package/library/visibilityLevels.js.map +1 -1
  188. package/manifest/ApplyManifestDialog.d.ts.map +1 -1
  189. package/manifest/ApplyManifestDialog.js +2 -1
  190. package/manifest/ApplyManifestDialog.js.map +1 -1
  191. package/mcp-server/steps/IdentityTransportStep.d.ts.map +1 -1
  192. package/mcp-server/steps/IdentityTransportStep.js +2 -1
  193. package/mcp-server/steps/IdentityTransportStep.js.map +1 -1
  194. package/mcp-server/useMcpServerConnect.d.ts +8 -5
  195. package/mcp-server/useMcpServerConnect.d.ts.map +1 -1
  196. package/mcp-server/useMcpServerConnect.js +2 -1
  197. package/mcp-server/useMcpServerConnect.js.map +1 -1
  198. package/mcp-server/useMcpServerOAuthConnect.d.ts.map +1 -1
  199. package/mcp-server/useMcpServerOAuthConnect.js +7 -2
  200. package/mcp-server/useMcpServerOAuthConnect.js.map +1 -1
  201. package/oauth-app/CreateOAuthAppForm.d.ts +2 -2
  202. package/oauth-app/CreateOAuthAppForm.d.ts.map +1 -1
  203. package/oauth-app/CreateOAuthAppForm.js +13 -4
  204. package/oauth-app/CreateOAuthAppForm.js.map +1 -1
  205. package/oauth-app/OAuthAppDetailPanel.d.ts.map +1 -1
  206. package/oauth-app/OAuthAppDetailPanel.js +32 -5
  207. package/oauth-app/OAuthAppDetailPanel.js.map +1 -1
  208. package/organization/OrgPreferencesPanel.d.ts +32 -0
  209. package/organization/OrgPreferencesPanel.d.ts.map +1 -0
  210. package/organization/OrgPreferencesPanel.js +90 -0
  211. package/organization/OrgPreferencesPanel.js.map +1 -0
  212. package/organization/OrgProfilePanel.d.ts.map +1 -1
  213. package/organization/OrgProfilePanel.js +5 -4
  214. package/organization/OrgProfilePanel.js.map +1 -1
  215. package/organization/index.d.ts +2 -0
  216. package/organization/index.d.ts.map +1 -1
  217. package/organization/index.js +1 -0
  218. package/organization/index.js.map +1 -1
  219. package/package.json +4 -4
  220. package/platform-client/CreatePlatformClientForm.d.ts.map +1 -1
  221. package/platform-client/CreatePlatformClientForm.js +2 -1
  222. package/platform-client/CreatePlatformClientForm.js.map +1 -1
  223. package/platform-client/PlatformClientDetailPanel.d.ts.map +1 -1
  224. package/platform-client/PlatformClientDetailPanel.js +2 -1
  225. package/platform-client/PlatformClientDetailPanel.js.map +1 -1
  226. package/pricing-governance/BaselineEditor.d.ts.map +1 -1
  227. package/pricing-governance/BaselineEditor.js +2 -1
  228. package/pricing-governance/BaselineEditor.js.map +1 -1
  229. package/pricing-governance/PricingGovernanceConsole.d.ts.map +1 -1
  230. package/pricing-governance/PricingGovernanceConsole.js +2 -1
  231. package/pricing-governance/PricingGovernanceConsole.js.map +1 -1
  232. package/provider-standing/ProviderStandingAccessNotice.d.ts +11 -0
  233. package/provider-standing/ProviderStandingAccessNotice.d.ts.map +1 -0
  234. package/provider-standing/ProviderStandingAccessNotice.js +14 -0
  235. package/provider-standing/ProviderStandingAccessNotice.js.map +1 -0
  236. package/provider-standing/ProviderStandingConsole.d.ts +24 -0
  237. package/provider-standing/ProviderStandingConsole.d.ts.map +1 -0
  238. package/provider-standing/ProviderStandingConsole.js +98 -0
  239. package/provider-standing/ProviderStandingConsole.js.map +1 -0
  240. package/provider-standing/index.d.ts +6 -0
  241. package/provider-standing/index.d.ts.map +1 -0
  242. package/provider-standing/index.js +6 -0
  243. package/provider-standing/index.js.map +1 -0
  244. package/provider-standing/useProviderStanding.d.ts +34 -0
  245. package/provider-standing/useProviderStanding.d.ts.map +1 -0
  246. package/provider-standing/useProviderStanding.js +26 -0
  247. package/provider-standing/useProviderStanding.js.map +1 -0
  248. package/provider.d.ts +12 -0
  249. package/provider.d.ts.map +1 -1
  250. package/provider.js +12 -0
  251. package/provider.js.map +1 -1
  252. package/resource-creation/StepIndicator.d.ts.map +1 -1
  253. package/resource-creation/StepIndicator.js +2 -1
  254. package/resource-creation/StepIndicator.js.map +1 -1
  255. package/schedule/ScheduleDetailView.d.ts.map +1 -1
  256. package/schedule/ScheduleDetailView.js +3 -2
  257. package/schedule/ScheduleDetailView.js.map +1 -1
  258. package/schedule/ScheduleRunsTable.d.ts.map +1 -1
  259. package/schedule/ScheduleRunsTable.js +2 -1
  260. package/schedule/ScheduleRunsTable.js.map +1 -1
  261. package/session/NewSessionViewer.d.ts +10 -1
  262. package/session/NewSessionViewer.d.ts.map +1 -1
  263. package/session/NewSessionViewer.js +2 -1
  264. package/session/NewSessionViewer.js.map +1 -1
  265. package/session/facets/ArtifactsTab.d.ts.map +1 -1
  266. package/session/facets/ArtifactsTab.js +2 -1
  267. package/session/facets/ArtifactsTab.js.map +1 -1
  268. package/session/facets/ChangesTab.d.ts.map +1 -1
  269. package/session/facets/ChangesTab.js +2 -1
  270. package/session/facets/ChangesTab.js.map +1 -1
  271. package/session/facets/UsageTab.d.ts +10 -3
  272. package/session/facets/UsageTab.d.ts.map +1 -1
  273. package/session/facets/UsageTab.js +42 -6
  274. package/session/facets/UsageTab.js.map +1 -1
  275. package/session/index.d.ts +1 -1
  276. package/session/index.d.ts.map +1 -1
  277. package/session/index.js.map +1 -1
  278. package/session/useNewSessionFlow.d.ts +27 -1
  279. package/session/useNewSessionFlow.d.ts.map +1 -1
  280. package/session/useNewSessionFlow.js +45 -8
  281. package/session/useNewSessionFlow.js.map +1 -1
  282. package/session/useSessionUsage.d.ts +25 -0
  283. package/session/useSessionUsage.d.ts.map +1 -1
  284. package/session/useSessionUsage.js +11 -0
  285. package/session/useSessionUsage.js.map +1 -1
  286. package/settings/AccountPreferencesSection.d.ts +3 -0
  287. package/settings/AccountPreferencesSection.d.ts.map +1 -0
  288. package/settings/AccountPreferencesSection.js +10 -0
  289. package/settings/AccountPreferencesSection.js.map +1 -0
  290. package/settings/OrgPreferencesSection.d.ts +3 -0
  291. package/settings/OrgPreferencesSection.d.ts.map +1 -0
  292. package/settings/OrgPreferencesSection.js +13 -0
  293. package/settings/OrgPreferencesSection.js.map +1 -0
  294. package/settings/index.d.ts +2 -0
  295. package/settings/index.d.ts.map +1 -1
  296. package/settings/index.js +2 -0
  297. package/settings/index.js.map +1 -1
  298. package/settings/settings-nav.d.ts.map +1 -1
  299. package/settings/settings-nav.js +23 -1
  300. package/settings/settings-nav.js.map +1 -1
  301. package/settings/useSettingsNavGroups.d.ts.map +1 -1
  302. package/settings/useSettingsNavGroups.js +4 -1
  303. package/settings/useSettingsNavGroups.js.map +1 -1
  304. package/sharing/ShareAgentDialog.d.ts.map +1 -1
  305. package/sharing/ShareAgentDialog.js +2 -1
  306. package/sharing/ShareAgentDialog.js.map +1 -1
  307. package/sidebar/WorkspaceSidebar.d.ts.map +1 -1
  308. package/sidebar/WorkspaceSidebar.js +2 -1
  309. package/sidebar/WorkspaceSidebar.js.map +1 -1
  310. package/skill/SkillFileBrowser.d.ts.map +1 -1
  311. package/skill/SkillFileBrowser.js +2 -1
  312. package/skill/SkillFileBrowser.js.map +1 -1
  313. package/skill/internal/fetchAndUnpackArtifact.d.ts +1 -1
  314. package/skill/internal/fetchAndUnpackArtifact.d.ts.map +1 -1
  315. package/skill/internal/fetchAndUnpackArtifact.js +47 -3
  316. package/skill/internal/fetchAndUnpackArtifact.js.map +1 -1
  317. package/skill/useSkillDiff.d.ts.map +1 -1
  318. package/skill/useSkillDiff.js +7 -1
  319. package/skill/useSkillDiff.js.map +1 -1
  320. package/skill/useSkillUpload.d.ts.map +1 -1
  321. package/skill/useSkillUpload.js +22 -4
  322. package/skill/useSkillUpload.js.map +1 -1
  323. package/src/__tests__/bare-host-resets.layout.test.tsx +184 -0
  324. package/src/agent/steps/IdentityStep.tsx +2 -1
  325. package/src/agent-instance/AgentInstanceDetailPanel.tsx +2 -1
  326. package/src/api-key/CreateApiKeyForm.tsx +2 -1
  327. package/src/attachment/AttachmentChipList.tsx +19 -8
  328. package/src/attachment/__tests__/AttachmentChipList.test.tsx +12 -0
  329. package/src/attachment/__tests__/useAttachments.test.ts +293 -0
  330. package/src/attachment/index.ts +1 -0
  331. package/src/attachment/useAttachments.ts +143 -11
  332. package/src/channel/ChannelConversationsDialog.tsx +2 -1
  333. package/src/channel/ChannelTemplatesDialog.tsx +2 -1
  334. package/src/channel/ConnectSlackDialog.tsx +2 -1
  335. package/src/channel/connect/ServingAppSection.tsx +2 -1
  336. package/src/channel-app/CreateChannelAppForm.tsx +2 -1
  337. package/src/composer/SessionComposer.tsx +23 -14
  338. package/src/conversation/ConversationComposer.tsx +38 -4
  339. package/src/conversation/ConversationListPane.tsx +2 -5
  340. package/src/conversation/ConversationTemplatePickerDialog.tsx +441 -0
  341. package/src/conversation/ConversationTimelineView.tsx +2 -1
  342. package/src/conversation/ConversationsWorkbench.tsx +40 -4
  343. package/src/conversation/__tests__/ConversationComposer.test.tsx +56 -1
  344. package/src/conversation/__tests__/ConversationTemplatePickerDialog.test.tsx +224 -0
  345. package/src/conversation/__tests__/useConversationParticipation.test.tsx +45 -4
  346. package/src/conversation/index.ts +4 -0
  347. package/src/conversation/useConversationParticipation.ts +58 -6
  348. package/src/cursor-accounts/CursorAccountsConsole.tsx +2 -1
  349. package/src/cursor-accounts/MemberKeysPanel.tsx +2 -1
  350. package/src/dashboard/DashboardFailedRuns.tsx +2 -1
  351. package/src/dependency-graph/DependencyGraph.tsx +2 -1
  352. package/src/dependency-graph/DependencyTreeNode.tsx +2 -1
  353. package/src/environment/EnvironmentPicker.tsx +2 -1
  354. package/src/error/SecretFlowErrorGuide.tsx +3 -2
  355. package/src/execution/ArtifactContentBody.tsx +2 -1
  356. package/src/execution/ArtifactsWidget.tsx +2 -1
  357. package/src/execution/FileChangeProgressBar.tsx +2 -1
  358. package/src/execution/TodoList.tsx +2 -1
  359. package/src/execution/WriteBacksWidget.tsx +2 -1
  360. package/src/execution/tool-categories.ts +17 -41
  361. package/src/iam-policy/PeopleWithAccess.tsx +2 -1
  362. package/src/iam-policy/PrincipalPicker.tsx +2 -0
  363. package/src/iam-policy/RoleSelector.tsx +2 -1
  364. package/src/identity-account/AccountPreferencesPanel.tsx +446 -0
  365. package/src/identity-account/__tests__/AccountPreferencesPanel.test.tsx +233 -0
  366. package/src/identity-account/__tests__/useAccountExecutionDefaults.test.tsx +116 -0
  367. package/src/identity-account/__tests__/useMyIdentityAccount.test.tsx +121 -0
  368. package/src/identity-account/index.ts +11 -0
  369. package/src/identity-account/useAccountExecutionDefaults.ts +63 -0
  370. package/src/identity-account/useMyIdentityAccount.ts +75 -0
  371. package/src/identity-account/useUpdateIdentityAccount.ts +73 -0
  372. package/src/identity-provider/CreateIdentityProviderForm.tsx +2 -1
  373. package/src/identity-provider/IdentityProviderDetailPanel.tsx +2 -1
  374. package/src/identity-provider/IdentityProviderWizard.tsx +2 -1
  375. package/src/index.ts +37 -2
  376. package/src/internal/StandingContextField.tsx +92 -0
  377. package/src/internal/element-resets.ts +33 -0
  378. package/src/internal/file-tree/FileTreeNode.tsx +2 -1
  379. package/src/internal/markdown-components.tsx +15 -5
  380. package/src/invitation/InvitationManager.tsx +3 -2
  381. package/src/library/InstanceVisibilitySelector.tsx +9 -2
  382. package/src/library/ResourceVisibilityControl.tsx +46 -13
  383. package/src/library/VisibilityOptionRow.tsx +28 -6
  384. package/src/library/VisibilitySelector.tsx +14 -2
  385. package/src/library/__tests__/VisibilitySelector.test.tsx +48 -1
  386. package/src/library/__tests__/visibilityLevels.test.ts +67 -1
  387. package/src/library/index.ts +6 -1
  388. package/src/library/useCanSetPublicVisibility.ts +56 -0
  389. package/src/library/visibilityLevels.ts +65 -14
  390. package/src/manifest/ApplyManifestDialog.tsx +2 -1
  391. package/src/mcp-server/__tests__/useMcpServerConnect.asyncLane.test.tsx +117 -0
  392. package/src/mcp-server/steps/IdentityTransportStep.tsx +3 -2
  393. package/src/mcp-server/useMcpServerConnect.ts +9 -6
  394. package/src/mcp-server/useMcpServerOAuthConnect.ts +7 -2
  395. package/src/oauth-app/CreateOAuthAppForm.tsx +58 -3
  396. package/src/oauth-app/OAuthAppDetailPanel.tsx +84 -3
  397. package/src/organization/OrgPreferencesPanel.tsx +221 -0
  398. package/src/organization/OrgProfilePanel.tsx +5 -4
  399. package/src/organization/__tests__/OrgPreferencesPanel.test.tsx +145 -0
  400. package/src/organization/__tests__/OrgProfilePanel.test.tsx +108 -0
  401. package/src/organization/index.ts +2 -0
  402. package/src/platform-client/CreatePlatformClientForm.tsx +4 -3
  403. package/src/platform-client/PlatformClientDetailPanel.tsx +4 -3
  404. package/src/pricing-governance/BaselineEditor.tsx +3 -2
  405. package/src/pricing-governance/PricingGovernanceConsole.tsx +2 -1
  406. package/src/provider-standing/ProviderStandingAccessNotice.tsx +36 -0
  407. package/src/provider-standing/ProviderStandingConsole.tsx +216 -0
  408. package/src/provider-standing/__tests__/ProviderStandingConsole.test.tsx +143 -0
  409. package/src/provider-standing/index.ts +8 -0
  410. package/src/provider-standing/useProviderStanding.ts +50 -0
  411. package/src/provider.tsx +12 -0
  412. package/src/resource-creation/StepIndicator.tsx +2 -1
  413. package/src/schedule/ScheduleDetailView.tsx +3 -2
  414. package/src/schedule/ScheduleRunsTable.tsx +2 -1
  415. package/src/session/NewSessionViewer.tsx +12 -0
  416. package/src/session/__tests__/UsageTab.test.tsx +136 -0
  417. package/src/session/__tests__/useNewSessionFlow.test.tsx +151 -0
  418. package/src/session/__tests__/useSessionUsage.test.ts +19 -0
  419. package/src/session/facets/ArtifactsTab.tsx +2 -1
  420. package/src/session/facets/ChangesTab.tsx +2 -1
  421. package/src/session/facets/UsageTab.tsx +98 -6
  422. package/src/session/index.ts +1 -0
  423. package/src/session/useNewSessionFlow.ts +76 -9
  424. package/src/session/useSessionUsage.ts +37 -0
  425. package/src/settings/AccountPreferencesSection.tsx +25 -0
  426. package/src/settings/OrgPreferencesSection.tsx +35 -0
  427. package/src/settings/__tests__/settings-nav.test.ts +27 -0
  428. package/src/settings/__tests__/useSettingsNavGroups.test.tsx +11 -1
  429. package/src/settings/index.ts +2 -0
  430. package/src/settings/settings-nav.ts +25 -0
  431. package/src/settings/useSettingsNavGroups.ts +8 -1
  432. package/src/sharing/ShareAgentDialog.tsx +2 -1
  433. package/src/sidebar/WorkspaceSidebar.tsx +2 -1
  434. package/src/skill/SkillFileBrowser.tsx +2 -1
  435. package/src/skill/__tests__/SkillFileBrowser.test.tsx +10 -2
  436. package/src/skill/__tests__/fetchAndUnpackArtifact.test.ts +90 -0
  437. package/src/skill/__tests__/useSkillUpload.test.ts +69 -0
  438. package/src/skill/internal/fetchAndUnpackArtifact.ts +54 -4
  439. package/src/skill/useSkillDiff.ts +7 -1
  440. package/src/skill/useSkillUpload.ts +25 -6
  441. package/src/workflow/ApprovalFormBuilder.tsx +5 -27
  442. package/src/workflow/FailedRunsWidget.tsx +2 -1
  443. package/src/workflow/PendingApprovalsWidget.tsx +2 -1
  444. package/src/workflow/facets/WorkflowArtifactsTab.tsx +2 -1
  445. package/src/workflow/facets/WorkflowUsageTab.tsx +2 -1
  446. package/src/workflow/inspector/WorkflowSummaryPanel.tsx +2 -1
  447. package/src/workflow/inspector/tabs/BranchesTab.tsx +2 -1
  448. package/src/workflow/inspector/tabs/IterationTab.tsx +2 -1
  449. package/src/workflow/instance/WorkflowInstanceDetailPanel.tsx +2 -1
  450. package/src/workspace/ExplorerTree.tsx +2 -1
  451. package/src/workspace/WorkspaceContentSearch.tsx +2 -1
  452. package/src/workspace/WorkspaceFileSearch.tsx +2 -1
  453. package/src/workspace/WorkspaceSummary.tsx +2 -1
  454. package/styles.css +1 -1
  455. package/workflow/ApprovalFormBuilder.d.ts.map +1 -1
  456. package/workflow/ApprovalFormBuilder.js +8 -5
  457. package/workflow/ApprovalFormBuilder.js.map +1 -1
  458. package/workflow/FailedRunsWidget.d.ts.map +1 -1
  459. package/workflow/FailedRunsWidget.js +2 -1
  460. package/workflow/FailedRunsWidget.js.map +1 -1
  461. package/workflow/PendingApprovalsWidget.d.ts.map +1 -1
  462. package/workflow/PendingApprovalsWidget.js +2 -1
  463. package/workflow/PendingApprovalsWidget.js.map +1 -1
  464. package/workflow/facets/WorkflowArtifactsTab.d.ts.map +1 -1
  465. package/workflow/facets/WorkflowArtifactsTab.js +2 -1
  466. package/workflow/facets/WorkflowArtifactsTab.js.map +1 -1
  467. package/workflow/facets/WorkflowUsageTab.d.ts.map +1 -1
  468. package/workflow/facets/WorkflowUsageTab.js +2 -1
  469. package/workflow/facets/WorkflowUsageTab.js.map +1 -1
  470. package/workflow/inspector/WorkflowSummaryPanel.d.ts.map +1 -1
  471. package/workflow/inspector/WorkflowSummaryPanel.js +2 -1
  472. package/workflow/inspector/WorkflowSummaryPanel.js.map +1 -1
  473. package/workflow/inspector/tabs/BranchesTab.d.ts.map +1 -1
  474. package/workflow/inspector/tabs/BranchesTab.js +2 -1
  475. package/workflow/inspector/tabs/BranchesTab.js.map +1 -1
  476. package/workflow/inspector/tabs/IterationTab.d.ts.map +1 -1
  477. package/workflow/inspector/tabs/IterationTab.js +2 -1
  478. package/workflow/inspector/tabs/IterationTab.js.map +1 -1
  479. package/workflow/instance/WorkflowInstanceDetailPanel.d.ts.map +1 -1
  480. package/workflow/instance/WorkflowInstanceDetailPanel.js +2 -1
  481. package/workflow/instance/WorkflowInstanceDetailPanel.js.map +1 -1
  482. package/workspace/ExplorerTree.d.ts.map +1 -1
  483. package/workspace/ExplorerTree.js +2 -1
  484. package/workspace/ExplorerTree.js.map +1 -1
  485. package/workspace/WorkspaceContentSearch.d.ts.map +1 -1
  486. package/workspace/WorkspaceContentSearch.js +2 -1
  487. package/workspace/WorkspaceContentSearch.js.map +1 -1
  488. package/workspace/WorkspaceFileSearch.d.ts.map +1 -1
  489. package/workspace/WorkspaceFileSearch.js +2 -1
  490. package/workspace/WorkspaceFileSearch.js.map +1 -1
  491. package/workspace/WorkspaceSummary.d.ts.map +1 -1
  492. package/workspace/WorkspaceSummary.js +2 -1
  493. package/workspace/WorkspaceSummary.js.map +1 -1
@@ -1,10 +1,26 @@
1
1
  import type { SendChannelMessageOutput } from "@stigmer/protos/ai/stigmer/agentic/agentchannel/v1/message_io_pb";
2
+ import type { ConversationReplyPayload } from "./useConversationParticipation.js";
2
3
  /** Props for {@link ConversationComposer}. */
3
4
  export interface ConversationComposerProps {
4
- /** Send a staff reply (from `useConversationParticipation().reply`). */
5
- readonly onSend: (text: string) => Promise<SendChannelMessageOutput>;
5
+ /**
6
+ * Send a staff reply (from `useConversationParticipation().reply`).
7
+ * The composer's own textarea always submits the `text` lane; hosts
8
+ * wiring a template picker send the `template` lane through the same
9
+ * seam — one command, one busy state, one outcome contract.
10
+ */
11
+ readonly onSend: (payload: ConversationReplyPayload) => Promise<SendChannelMessageOutput>;
6
12
  /** `true` while a reply is in flight. */
7
13
  readonly isSending: boolean;
14
+ /**
15
+ * Opens the host's template picker. When present, a persistent
16
+ * template affordance renders beside Send — templates are the one
17
+ * lane WhatsApp offers for a closed window, so the surface must
18
+ * offer the door, not just the advisory's warning (hosts should
19
+ * point at the button in the advisory copy; the advisory itself
20
+ * stays interaction-free — it is the input's description, F-18).
21
+ * Omit on channels whose provider has no template registry.
22
+ */
23
+ readonly onOpenTemplatePicker?: () => void;
8
24
  /**
9
25
  * Why replying is unavailable, when it is — rendered in place of the
10
26
  * input (a senderless provider, or a conversation the customer has
@@ -37,5 +53,5 @@ export interface ConversationComposerProps {
37
53
  * renders the error. The timeline shows the delivered item via its own
38
54
  * read — this component never fabricates one.
39
55
  */
40
- export declare function ConversationComposer({ onSend, isSending, disabledReason, advisory, className, }: ConversationComposerProps): import("react/jsx-runtime").JSX.Element;
56
+ export declare function ConversationComposer({ onSend, isSending, onOpenTemplatePicker, disabledReason, advisory, className, }: ConversationComposerProps): import("react/jsx-runtime").JSX.Element;
41
57
  //# sourceMappingURL=ConversationComposer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationComposer.d.ts","sourceRoot":"","sources":["../../src/conversation/ConversationComposer.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kEAAkE,CAAC;AAKjH,8CAA8C;AAC9C,MAAM,WAAW,yBAAyB;IACxC,wEAAwE;IACxE,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACrE,yCAAyC;IACzC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC;;;;;;;;;OASG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,qDAAqD;IACrD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,MAAM,EACN,SAAS,EACT,cAAc,EACd,QAAQ,EACR,SAAS,GACV,EAAE,yBAAyB,2CAkG3B"}
1
+ {"version":3,"file":"ConversationComposer.d.ts","sourceRoot":"","sources":["../../src/conversation/ConversationComposer.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kEAAkE,CAAC;AAIjH,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAElF,8CAA8C;AAC9C,MAAM,WAAW,yBAAyB;IACxC;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAC1F,yCAAyC;IACzC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B;;;;;;;;OAQG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3C;;;;OAIG;IACH,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC;;;;;;;;;OASG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,qDAAqD;IACrD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,MAAM,EACN,SAAS,EACT,oBAAoB,EACpB,cAAc,EACd,QAAQ,EACR,SAAS,GACV,EAAE,yBAAyB,2CAmH3B"}
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { useId, useState } from "react";
4
- import { Send, TriangleAlert } from "lucide-react";
4
+ import { LayoutTemplate, Send, TriangleAlert } from "lucide-react";
5
5
  import { cn } from "@stigmer/theme";
6
6
  import { getUserMessage } from "@stigmer/sdk";
7
7
  import { ChannelSendOutcome } from "@stigmer/protos/ai/stigmer/agentic/agentchannel/v1/message_io_pb";
@@ -20,14 +20,14 @@ import { useComposer } from "../composer/useComposer.js";
20
20
  * renders the error. The timeline shows the delivered item via its own
21
21
  * read — this component never fabricates one.
22
22
  */
23
- export function ConversationComposer({ onSend, isSending, disabledReason, advisory, className, }) {
23
+ export function ConversationComposer({ onSend, isSending, onOpenTemplatePicker, disabledReason, advisory, className, }) {
24
24
  const advisoryId = useId();
25
25
  const hasAdvisory = advisory != null && advisory !== "";
26
26
  const [notice, setNotice] = useState(null);
27
27
  const composer = useComposer({
28
28
  onSubmit: (message) => {
29
29
  setNotice(null);
30
- onSend(message).then((output) => {
30
+ onSend({ kind: "text", body: message }).then((output) => {
31
31
  if (output.outcome === ChannelSendOutcome.refused) {
32
32
  // The words never left; keep them so the user can adjust.
33
33
  composer.setMessage(message);
@@ -52,6 +52,6 @@ export function ConversationComposer({ onSend, isSending, disabledReason, adviso
52
52
  if (disabledReason !== null) {
53
53
  return (_jsx("div", { className: cn("stg:border-t stg:border-border stg:px-4 stg:py-3", className), children: _jsx("p", { className: "stg:text-center stg:text-xs stg:text-muted-foreground", children: disabledReason }) }));
54
54
  }
55
- return (_jsxs("div", { className: cn("stg:border-t stg:border-border stg:px-4 stg:py-3", className), children: [hasAdvisory && (_jsxs("p", { id: advisoryId, className: "stg:mb-2 stg:flex stg:items-start stg:gap-1.5 stg:rounded-md stg:bg-status-degraded-subtle stg:px-2.5 stg:py-1.5 stg:text-xs stg:text-status-degraded", children: [_jsx(TriangleAlert, { "aria-hidden": "true", className: "stg:mt-0.5 stg:size-3.5 stg:shrink-0" }), _jsx("span", { className: "stg:min-w-0", children: advisory })] })), notice && (_jsx("p", { className: cn("stg:mb-2 stg:text-xs", notice.kind === "queued" ? "stg:text-muted-foreground" : "stg:text-destructive"), role: "status", children: notice.text })), _jsxs("div", { className: "stg:flex stg:items-end stg:gap-2", children: [_jsx("textarea", { ...composer.textareaProps, rows: 1, placeholder: "Reply as your business\u2026", "aria-label": "Reply to the customer", "aria-describedby": hasAdvisory ? advisoryId : undefined, className: cn("stg:min-h-9 stg:flex-1 stg:resize-none stg:rounded-md stg:border stg:border-border stg:bg-background", "stg:px-3 stg:py-2 stg:text-sm stg:text-foreground stg:placeholder:text-muted-foreground-faint", "stg:focus-visible:outline-none stg:focus-visible:ring-2 stg:focus-visible:ring-ring") }), _jsxs(Button, { variant: "primary", size: "sm", onClick: composer.submit, disabled: !composer.canSubmit || isSending, "aria-label": "Send reply", children: [isSending ? _jsx(SpinnerIcon, {}) : _jsx(Send, { "aria-hidden": "true", className: "stg:size-4" }), isSending ? "Sending…" : "Send"] })] })] }));
55
+ return (_jsxs("div", { className: cn("stg:border-t stg:border-border stg:px-4 stg:py-3", className), children: [hasAdvisory && (_jsxs("p", { id: advisoryId, className: "stg:mb-2 stg:flex stg:items-start stg:gap-1.5 stg:rounded-md stg:bg-status-degraded-subtle stg:px-2.5 stg:py-1.5 stg:text-xs stg:text-status-degraded", children: [_jsx(TriangleAlert, { "aria-hidden": "true", className: "stg:mt-0.5 stg:size-3.5 stg:shrink-0" }), _jsx("span", { className: "stg:min-w-0", children: advisory })] })), notice && (_jsx("p", { className: cn("stg:mb-2 stg:text-xs", notice.kind === "queued" ? "stg:text-muted-foreground" : "stg:text-destructive"), role: "status", children: notice.text })), _jsxs("div", { className: "stg:flex stg:items-end stg:gap-2", children: [_jsx("textarea", { ...composer.textareaProps, rows: 1, placeholder: "Reply as your business\u2026", "aria-label": "Reply to the customer", "aria-describedby": hasAdvisory ? advisoryId : undefined, className: cn("stg:min-h-9 stg:flex-1 stg:resize-none stg:rounded-md stg:border stg:border-border stg:bg-background", "stg:px-3 stg:py-2 stg:text-sm stg:text-foreground stg:placeholder:text-muted-foreground-faint", "stg:focus-visible:outline-none stg:focus-visible:ring-2 stg:focus-visible:ring-ring") }), onOpenTemplatePicker && (_jsx(Button, { variant: "outline", size: "sm", onClick: onOpenTemplatePicker, disabled: isSending, "aria-label": "Send a template reply", children: _jsx(LayoutTemplate, { "aria-hidden": "true", className: "stg:size-4" }) })), _jsxs(Button, { variant: "primary", size: "sm", onClick: composer.submit, disabled: !composer.canSubmit || isSending, "aria-label": "Send reply", children: [isSending ? _jsx(SpinnerIcon, {}) : _jsx(Send, { "aria-hidden": "true", className: "stg:size-4" }), isSending ? "Sending…" : "Send"] })] })] }));
56
56
  }
57
57
  //# sourceMappingURL=ConversationComposer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationComposer.js","sourceRoot":"","sources":["../../src/conversation/ConversationComposer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConversationComposer.js","sourceRoot":"","sources":["../../src/conversation/ConversationComposer.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationListPane.d.ts","sourceRoot":"","sources":["../../src/conversation/ConversationListPane.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2DAA2D,CAAC;AAC9F,OAAO,EACL,6BAA6B,EAE7B,KAAK,mBAAmB,EACzB,MAAM,uEAAuE,CAAC;AAiB/E,4DAA4D;AAC5D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED,8CAA8C;AAC9C,MAAM,WAAW,yBAAyB;IACxC,yEAAyE;IACzE,QAAQ,CAAC,aAAa,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACvD,yCAAyC;IACzC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAC7B,mEAAmE;IACnE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,0BAA0B;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;IAC9B,+CAA+C;IAC/C,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,+DAA+D;IAC/D,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,mDAAmD;IACnD,QAAQ,CAAC,qBAAqB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;IACjE;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,6BAA6B,CAAC;IAChD;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,6BAA6B,KAAK,IAAI,CAAC;IAC1E,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC/C,iDAAiD;IACjD,QAAQ,CAAC,QAAQ,EAAE,CAAC,YAAY,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC/D,2EAA2E;IAC3E,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;IACpB,iDAAiD;IACjD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,aAAa,EACb,SAAS,EACT,KAAK,EACL,OAAO,EACP,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,aAAa,EACb,qBAAqB,EACrB,MAAmF,EACnF,cAAc,EACd,QAAQ,EACR,QAAQ,EACR,GAAG,EACH,SAAS,GACV,EAAE,yBAAyB,2CAgI3B"}
1
+ {"version":3,"file":"ConversationListPane.d.ts","sourceRoot":"","sources":["../../src/conversation/ConversationListPane.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2DAA2D,CAAC;AAC9F,OAAO,EACL,6BAA6B,EAE7B,KAAK,mBAAmB,EACzB,MAAM,uEAAuE,CAAC;AAiB/E,4DAA4D;AAC5D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED,8CAA8C;AAC9C,MAAM,WAAW,yBAAyB;IACxC,yEAAyE;IACzE,QAAQ,CAAC,aAAa,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACvD,yCAAyC;IACzC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAC7B,mEAAmE;IACnE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,0BAA0B;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;IAC9B,+CAA+C;IAC/C,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,+DAA+D;IAC/D,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,mDAAmD;IACnD,QAAQ,CAAC,qBAAqB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;IACjE;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,6BAA6B,CAAC;IAChD;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,6BAA6B,KAAK,IAAI,CAAC;IAC1E,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC/C,iDAAiD;IACjD,QAAQ,CAAC,QAAQ,EAAE,CAAC,YAAY,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC/D,2EAA2E;IAC3E,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;IACpB,iDAAiD;IACjD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,aAAa,EACb,SAAS,EACT,KAAK,EACL,OAAO,EACP,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,aAAa,EACb,qBAAqB,EACrB,MAAmF,EACnF,cAAc,EACd,QAAQ,EACR,QAAQ,EACR,GAAG,EACH,SAAS,GACV,EAAE,yBAAyB,2CA4H3B"}
@@ -4,6 +4,7 @@ import { memo, useCallback, useId, useRef } from "react";
4
4
  import { timestampDate } from "@bufbuild/protobuf/wkt";
5
5
  import { MessageSquare, TriangleAlert, User } from "lucide-react";
6
6
  import { cn } from "@stigmer/theme";
7
+ import { UNSTYLED_LIST } from "../internal/element-resets.js";
7
8
  import { getUserMessage } from "@stigmer/sdk";
8
9
  import { ChannelConversationListFilter, ConversationControl, } from "@stigmer/protos/ai/stigmer/agentic/agentchannel/v1/conversation_io_pb";
9
10
  import { formatRelativeTime } from "../activity/format-relative-time.js";
@@ -34,7 +35,7 @@ export function ConversationListPane({ conversations, isLoading, error, hasMore,
34
35
  // Its own empty state on purpose: under the filter, "No
35
36
  // conversations yet — when a customer messages…" would lie
36
37
  // to an org with a full inbox and nothing needing a person.
37
- _jsx(EmptyState, { variant: "first-use", icon: _jsx(MessageSquare, { className: "stg:size-8" }), title: "Nothing needs a human right now", description: "Conversations appear here when the agent asks for attention, or when a human-held conversation has a customer message awaiting a reply." })) : (_jsx(EmptyState, { variant: "first-use", icon: _jsx(MessageSquare, { className: "stg:size-8" }), title: "No conversations yet", description: "When a customer messages one of your channels, their conversation appears here." }))) : (_jsxs(_Fragment, { children: [_jsx(TooltipProvider, { children: _jsx("ul", { className: "stg:m-0 stg:list-none stg:space-y-0.5 stg:p-0", children: conversations.map((conversation) => (_jsx(ConversationRow, { conversation: conversation, label: conversationLabelOf(conversation, providerById.get(conversation.agentChannelId)?.id ?? null), contact: conversationContactOf(conversation, providerById.get(conversation.agentChannelId)?.id ?? null), isSelected: selected?.agentChannelId === conversation.agentChannelId &&
38
+ _jsx(EmptyState, { variant: "first-use", icon: _jsx(MessageSquare, { className: "stg:size-8" }), title: "Nothing needs a human right now", description: "Conversations appear here when the agent asks for attention, or when a human-held conversation has a customer message awaiting a reply." })) : (_jsx(EmptyState, { variant: "first-use", icon: _jsx(MessageSquare, { className: "stg:size-8" }), title: "No conversations yet", description: "When a customer messages one of your channels, their conversation appears here." }))) : (_jsxs(_Fragment, { children: [_jsx(TooltipProvider, { children: _jsx("ul", { className: cn(UNSTYLED_LIST, "stg:space-y-0.5"), children: conversations.map((conversation) => (_jsx(ConversationRow, { conversation: conversation, label: conversationLabelOf(conversation, providerById.get(conversation.agentChannelId)?.id ?? null), contact: conversationContactOf(conversation, providerById.get(conversation.agentChannelId)?.id ?? null), isSelected: selected?.agentChannelId === conversation.agentChannelId &&
38
39
  selected?.conversationKey === conversation.conversationKey, onSelect: onSelect, now: now }, `${conversation.agentChannelId}:${conversation.conversationKey}`))) }) }), hasMore && (_jsx("div", { className: "stg:flex stg:justify-center stg:py-2", children: _jsx(Button, { variant: "ghost", size: "xs", onClick: loadMore, disabled: isLoadingMore, children: isLoadingMore ? "Loading…" : "Show more" }) }))] })) })] }));
39
40
  }
40
41
  const FILTER_OPTIONS = [
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationListPane.js","sourceRoot":"","sources":["../../src/conversation/ConversationListPane.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConversationListPane.js","sourceRoot":"","sources":["../../src/conversation/ConversationListPane.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import type { SendChannelMessageOutput } from "@stigmer/protos/ai/stigmer/agentic/agentchannel/v1/message_io_pb";
2
+ import type { ConversationReplyPayload } from "./useConversationParticipation.js";
3
+ /** Props for {@link ConversationTemplatePickerDialog}. */
4
+ export interface ConversationTemplatePickerDialogProps {
5
+ /** Whether the dialog is open. */
6
+ readonly open: boolean;
7
+ /** Called when the dialog requests an open-state change. */
8
+ readonly onOpenChange: (open: boolean) => void;
9
+ /**
10
+ * The conversation's channel, addressed as the template registry
11
+ * addresses it: `metadata.slug` + `metadata.org` (the registry is
12
+ * derived from the channel's phone number, not stored on a resource).
13
+ */
14
+ readonly channelSlug: string;
15
+ readonly org: string;
16
+ /**
17
+ * Send the chosen template as a staff reply — the SAME seam the
18
+ * composer's textarea uses (`useConversationParticipation().reply`
19
+ * or the host's wrapper around it), so a template send takes over,
20
+ * settles, and reports outcomes exactly like a text send.
21
+ */
22
+ readonly onSend: (payload: ConversationReplyPayload) => Promise<SendChannelMessageOutput>;
23
+ /** `true` while a reply is in flight. */
24
+ readonly isSending: boolean;
25
+ /**
26
+ * When `false`, renders as an in-flow open dialog instead of a
27
+ * top-layer modal — for embedding in constrained surfaces
28
+ * (documentation demos, visual tests). Interactive hosts keep the
29
+ * default.
30
+ * @default true
31
+ */
32
+ readonly modal?: boolean;
33
+ }
34
+ /**
35
+ * Pick a provider-approved template, fill its variables, and send it as
36
+ * a staff reply — the one lane WhatsApp offers a business once the
37
+ * customer's 24-hour service window has closed (cloud#260).
38
+ *
39
+ * Where {@link ChannelTemplatesDialog} is the channel surface's
40
+ * read-only registry *viewer* (every status, diagnosis copy), this is
41
+ * the conversation surface's *picker*: it lists only approved
42
+ * templates, marks the ones this platform version cannot send (an
43
+ * `unsupported_reason` from the server, or an IMAGE header — the send
44
+ * payload needs a public HTTPS asset no console surface can supply
45
+ * yet), and walks the two steps of a send: choose, then fill the
46
+ * `{{...}}` variables with a live preview of the exact body the
47
+ * customer will receive.
48
+ *
49
+ * Outcome honesty mirrors the composer's contract: a `refused` outcome
50
+ * keeps the dialog open with every filled value intact and renders the
51
+ * server's corrective detail verbatim (the pre-check names missing
52
+ * parameters, wrong languages, paused templates); a thrown failure does
53
+ * the same with the transport error. `accepted` and `queued` close the
54
+ * dialog — the ledger row exists, so the timeline shows the real item
55
+ * with its true delivery status (the SDK never fabricates one).
56
+ *
57
+ * The body mounts only while open, so each opening fetches the registry
58
+ * fresh (approval statuses change on the provider's side at any time)
59
+ * and a closed dialog holds no draft — the same clean-reset rule that
60
+ * keys the workbench's detail column (F-22).
61
+ */
62
+ export declare function ConversationTemplatePickerDialog({ open, onOpenChange, channelSlug, org, onSend, isSending, modal, }: ConversationTemplatePickerDialogProps): import("react/jsx-runtime").JSX.Element;
63
+ //# sourceMappingURL=ConversationTemplatePickerDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConversationTemplatePickerDialog.d.ts","sourceRoot":"","sources":["../../src/conversation/ConversationTemplatePickerDialog.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAEV,wBAAwB,EACzB,MAAM,kEAAkE,CAAC;AAS1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAElF,0DAA0D;AAC1D,MAAM,WAAW,qCAAqC;IACpD,kCAAkC;IAClC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,4DAA4D;IAC5D,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/C;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAC1F,yCAAyC;IACzC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,gCAAgC,CAAC,EAC/C,IAAI,EACJ,YAAY,EACZ,WAAW,EACX,GAAG,EACH,MAAM,EACN,SAAS,EACT,KAAY,GACb,EAAE,qCAAqC,2CAwBvC"}
@@ -0,0 +1,151 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useId, useMemo, useState } from "react";
4
+ import { ArrowLeft, LayoutTemplate, Send, X } from "lucide-react";
5
+ import { cn } from "@stigmer/theme";
6
+ import { getUserMessage } from "@stigmer/sdk";
7
+ import { ChannelSendOutcome } from "@stigmer/protos/ai/stigmer/agentic/agentchannel/v1/message_io_pb";
8
+ import { Button } from "../button/Button.js";
9
+ import { EmptyState } from "../empty-state/EmptyState.js";
10
+ import { DialogShell } from "../internal/DialogShell.js";
11
+ import { SpinnerIcon } from "../internal/SpinnerIcon.js";
12
+ import { UNSTYLED_LIST } from "../internal/element-resets.js";
13
+ import { TruncatedText } from "../internal/truncated-text.js";
14
+ import { splitTemplateBody } from "../channel/templatePresentation.js";
15
+ import { useChannelTemplateList } from "../channel/useChannelTemplateList.js";
16
+ /**
17
+ * Pick a provider-approved template, fill its variables, and send it as
18
+ * a staff reply — the one lane WhatsApp offers a business once the
19
+ * customer's 24-hour service window has closed (cloud#260).
20
+ *
21
+ * Where {@link ChannelTemplatesDialog} is the channel surface's
22
+ * read-only registry *viewer* (every status, diagnosis copy), this is
23
+ * the conversation surface's *picker*: it lists only approved
24
+ * templates, marks the ones this platform version cannot send (an
25
+ * `unsupported_reason` from the server, or an IMAGE header — the send
26
+ * payload needs a public HTTPS asset no console surface can supply
27
+ * yet), and walks the two steps of a send: choose, then fill the
28
+ * `{{...}}` variables with a live preview of the exact body the
29
+ * customer will receive.
30
+ *
31
+ * Outcome honesty mirrors the composer's contract: a `refused` outcome
32
+ * keeps the dialog open with every filled value intact and renders the
33
+ * server's corrective detail verbatim (the pre-check names missing
34
+ * parameters, wrong languages, paused templates); a thrown failure does
35
+ * the same with the transport error. `accepted` and `queued` close the
36
+ * dialog — the ledger row exists, so the timeline shows the real item
37
+ * with its true delivery status (the SDK never fabricates one).
38
+ *
39
+ * The body mounts only while open, so each opening fetches the registry
40
+ * fresh (approval statuses change on the provider's side at any time)
41
+ * and a closed dialog holds no draft — the same clean-reset rule that
42
+ * keys the workbench's detail column (F-22).
43
+ */
44
+ export function ConversationTemplatePickerDialog({ open, onOpenChange, channelSlug, org, onSend, isSending, modal = true, }) {
45
+ const titleId = useId();
46
+ return (_jsx(DialogShell, { open: open, onOpenChange: onOpenChange, modal: modal,
47
+ // Template bodies are the content — the templates-dialog width.
48
+ width: "2xl", "aria-labelledby": titleId, children: open && (_jsx(PickerBody, { titleId: titleId, channelSlug: channelSlug, org: org, onSend: onSend, isSending: isSending, onClose: () => onOpenChange(false) })) }));
49
+ }
50
+ /** Why a listed template cannot be sent from here, or null when it can. */
51
+ function unsendableReasonOf(template) {
52
+ if (template.unsupportedReason) {
53
+ return `Not sendable: ${template.unsupportedReason}`;
54
+ }
55
+ if (template.headerFormat === "IMAGE") {
56
+ // The wire's header_image_link needs a public HTTPS asset at send
57
+ // time; no console surface can supply one yet (v1 scope cut,
58
+ // recorded on cloud#260).
59
+ return "Not sendable from the console yet: this template's image header needs a hosted image at send time.";
60
+ }
61
+ return null;
62
+ }
63
+ /** The verbatim `{{ key }}` placeholder's inner key. */
64
+ function placeholderKeyOf(placeholder) {
65
+ return placeholder.replace(/^\{\{\s*|\s*\}\}$/g, "");
66
+ }
67
+ function PickerBody({ titleId, channelSlug, org, onSend, isSending, onClose, }) {
68
+ // Approved-only is the wire filter; unsupported/image-header entries
69
+ // still list (marked unsendable) so "why is my template missing"
70
+ // never needs a second surface.
71
+ const { templates, isLoading, error } = useChannelTemplateList(channelSlug, org, {
72
+ approvedOnly: true,
73
+ });
74
+ const [selected, setSelected] = useState(null);
75
+ return (_jsxs("div", { className: "stg:flex stg:max-h-[75vh] stg:flex-col", children: [_jsxs("div", { className: "stg:flex stg:items-start stg:justify-between stg:gap-3 stg:border-b stg:border-border stg:px-5 stg:py-4", children: [_jsxs("div", { className: "stg:flex stg:min-w-0 stg:items-center stg:gap-2", children: [selected !== null && (_jsx(Button, { variant: "ghost", size: "xs", onClick: () => setSelected(null), disabled: isSending, "aria-label": "Back to the template list", children: _jsx(ArrowLeft, { className: "stg:size-4" }) })), _jsxs("div", { className: "stg:min-w-0", children: [_jsx("h2", { id: titleId, className: "stg:text-sm stg:font-semibold stg:text-popover-foreground", children: selected === null ? "Send a template" : selected.name }), _jsx("p", { className: "stg:mt-0.5 stg:text-xs stg:text-muted-foreground", children: selected === null
76
+ ? "Approved templates deliver even after the 24-hour reply window closes."
77
+ : "Fill the template's variables — the preview is the exact message the customer receives." })] })] }), _jsx(Button, { variant: "ghost", size: "xs", onClick: onClose, "aria-label": "Close template picker", children: _jsx(X, { className: "stg:size-4" }) })] }), _jsx("div", { className: "stg:min-h-0 stg:flex-1 stg:overflow-y-auto stg:p-4", children: selected === null ? (_jsx(TemplateChoiceList, { templates: templates, isLoading: isLoading, error: error, onChoose: setSelected })) : (_jsx(TemplateFillForm, { template: selected, onSend: onSend, isSending: isSending, onClose: onClose })) })] }));
78
+ }
79
+ function TemplateChoiceList({ templates, isLoading, error, onChoose, }) {
80
+ if (isLoading) {
81
+ return (_jsx("div", { className: "stg:space-y-2 stg:p-1", children: [1, 2, 3].map((i) => (_jsx("div", { className: "stg:h-16 stg:animate-pulse stg:rounded-lg stg:bg-muted-faint" }, i))) }));
82
+ }
83
+ if (error) {
84
+ // Past the fetch, the server's copy is the teaching state — its
85
+ // refusals name the fix verbatim (the templates-dialog posture).
86
+ return (_jsx("p", { className: "stg:px-2 stg:py-6 stg:text-center stg:text-sm stg:text-destructive", children: getUserMessage(error) }));
87
+ }
88
+ if (templates.length === 0) {
89
+ // "found", never "you have none": an empty success is
90
+ // indistinguishable from a filtered or truncated one on the wire.
91
+ return (_jsx(EmptyState, { variant: "first-use", icon: _jsx(LayoutTemplate, { className: "stg:size-8" }), title: "No approved templates found", description: "Templates are authored and approved in WhatsApp Manager — " +
92
+ "Stigmer keeps no copy. Approved templates appear here " +
93
+ "automatically; the channel card's Templates dialog shows every " +
94
+ "status, including pending and rejected ones." }));
95
+ }
96
+ return (_jsx("ul", { className: cn(UNSTYLED_LIST, "stg:space-y-2"), children: templates.map((template) => {
97
+ const unsendable = unsendableReasonOf(template);
98
+ return (_jsx("li", { children: _jsxs("button", { type: "button", onClick: () => onChoose(template), disabled: unsendable !== null, className: cn("stg:w-full stg:rounded-lg stg:border stg:border-border stg:p-3 stg:text-left", "stg:focus-visible:outline-none stg:focus-visible:ring-2 stg:focus-visible:ring-ring", unsendable === null
99
+ ? "stg:hover:border-ring stg:hover:bg-muted-faint"
100
+ : "stg:opacity-60"), children: [_jsxs("div", { className: "stg:flex stg:min-w-0 stg:flex-wrap stg:items-center stg:gap-x-2 stg:gap-y-1", children: [_jsx(TruncatedText, { text: template.name, className: "stg:text-sm stg:font-medium stg:text-foreground" }), _jsx("span", { className: "stg:shrink-0 stg:text-xs stg:text-muted-foreground", children: template.language }), template.headerFormat && (_jsxs("span", { className: "stg:shrink-0 stg:rounded stg:bg-muted-subtle stg:px-1.5 stg:py-0.5 stg:text-xs stg:text-muted-foreground", children: [template.headerFormat, " header"] }))] }), template.bodyText && (_jsx("p", { className: "stg:mt-1.5 stg:line-clamp-2 stg:whitespace-pre-wrap stg:text-xs stg:leading-relaxed stg:text-muted-foreground", children: template.bodyText })), unsendable !== null && (_jsx("p", { className: "stg:mt-1.5 stg:text-xs stg:text-warning", children: unsendable }))] }) }, `${template.name}\u0000${template.language}`));
101
+ }) }));
102
+ }
103
+ function TemplateFillForm({ template, onSend, isSending, onClose, }) {
104
+ const fieldIdPrefix = useId();
105
+ const [values, setValues] = useState({});
106
+ const [notice, setNotice] = useState(null);
107
+ const segments = useMemo(() => splitTemplateBody(template.bodyText), [template.bodyText]);
108
+ // The declared parameters are the contract: names for NAMED
109
+ // templates, positions ("1", "2", …) for POSITIONAL — the pre-check
110
+ // refuses anything missing or extra, so the form asks for exactly
111
+ // this list.
112
+ const parameterKeys = template.parameterNames;
113
+ const allFilled = parameterKeys.every((key) => (values[key] ?? "").trim() !== "");
114
+ const handleSend = () => {
115
+ setNotice(null);
116
+ const parameters = Object.fromEntries(parameterKeys.map((key) => [key, (values[key] ?? "").trim()]));
117
+ onSend({
118
+ kind: "template",
119
+ name: template.name,
120
+ // Always the chosen entry's language: (name, language) is the
121
+ // identity we listed, and sending it structurally avoids the
122
+ // wire's ambiguous-language refusal.
123
+ language: template.language,
124
+ parameters,
125
+ }).then((output) => {
126
+ if (output.outcome === ChannelSendOutcome.refused) {
127
+ // The words never left; every filled value stays for the
128
+ // correction the detail asks for (the composer's contract).
129
+ setNotice({
130
+ kind: "refused",
131
+ text: output.detail || "The provider refused this template.",
132
+ });
133
+ }
134
+ else {
135
+ // accepted or queued: the ledger row exists — the timeline
136
+ // shows the real item with its true delivery status.
137
+ onClose();
138
+ }
139
+ }, (err) => {
140
+ setNotice({ kind: "error", text: getUserMessage(err) });
141
+ });
142
+ };
143
+ return (_jsxs("div", { className: "stg:space-y-4", children: [notice && (_jsx("p", { className: "stg:text-xs stg:text-destructive", role: "status", children: notice.text })), parameterKeys.length > 0 && (_jsx("div", { className: "stg:space-y-3", children: parameterKeys.map((key) => (_jsxs("div", { children: [_jsx("label", { htmlFor: `${fieldIdPrefix}-${key}`, className: "stg:mb-1 stg:block stg:text-xs stg:font-medium stg:text-foreground", children: key }), _jsx("input", { id: `${fieldIdPrefix}-${key}`, type: "text", value: values[key] ?? "", onChange: (e) => setValues((v) => ({ ...v, [key]: e.target.value })), disabled: isSending, className: cn("stg:w-full stg:rounded-md stg:border stg:border-border stg:bg-background", "stg:px-3 stg:py-2 stg:text-sm stg:text-foreground stg:placeholder:text-muted-foreground-faint", "stg:focus-visible:outline-none stg:focus-visible:ring-2 stg:focus-visible:ring-ring") })] }, key))) })), _jsxs("div", { children: [_jsx("p", { className: "stg:mb-1 stg:text-xs stg:font-medium stg:text-foreground", children: "Preview" }), _jsx("p", { className: "stg:whitespace-pre-wrap stg:rounded-md stg:border stg:border-border stg:bg-muted-faint stg:p-3 stg:text-sm stg:leading-relaxed stg:text-foreground", children: segments.map((segment, i) => {
144
+ if (segment.kind === "text") {
145
+ return _jsx("span", { children: segment.value }, i);
146
+ }
147
+ const value = (values[placeholderKeyOf(segment.value)] ?? "").trim();
148
+ return value !== "" ? (_jsx("span", { children: value }, i)) : (_jsx("code", { className: "stg:rounded stg:bg-muted-subtle stg:px-1 stg:font-mono stg:text-muted-foreground", children: segment.value }, i));
149
+ }) })] }), _jsx("div", { className: "stg:flex stg:justify-end", children: _jsxs(Button, { variant: "primary", size: "sm", onClick: handleSend, disabled: !allFilled || isSending, "aria-label": "Send template", children: [isSending ? _jsx(SpinnerIcon, {}) : _jsx(Send, { "aria-hidden": "true", className: "stg:size-4" }), isSending ? "Sending…" : "Send template"] }) })] }));
150
+ }
151
+ //# sourceMappingURL=ConversationTemplatePickerDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConversationTemplatePickerDialog.js","sourceRoot":"","sources":["../../src/conversation/ConversationTemplatePickerDialog.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationTimelineView.d.ts","sourceRoot":"","sources":["../../src/conversation/ConversationTimelineView.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uEAAuE,CAAC;AACtH,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAsBpF,kDAAkD;AAClD,MAAM,WAAW,6BAA6B;IAC5C,8EAA8E;IAC9E,QAAQ,CAAC,KAAK,EAAE,SAAS,wBAAwB,EAAE,CAAC;IACpD;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,kEAAkE;IAClE,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,yCAAyC;IACzC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,+CAA+C;IAC/C,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAC7B,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,gCAAgC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC;IAC/B,+CAA+C;IAC/C,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAC5C,2EAA2E;IAC3E,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;IACpB,iDAAiD;IACjD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,KAAK,EACL,cAAc,EACd,eAAe,EACf,SAAS,EACT,KAAK,EACL,QAAQ,EACR,SAAS,EACT,cAAc,EACd,QAAQ,EACR,GAAG,EACH,SAAS,GACV,EAAE,6BAA6B,2CAqF/B"}
1
+ {"version":3,"file":"ConversationTimelineView.d.ts","sourceRoot":"","sources":["../../src/conversation/ConversationTimelineView.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uEAAuE,CAAC;AACtH,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAsBpF,kDAAkD;AAClD,MAAM,WAAW,6BAA6B;IAC5C,8EAA8E;IAC9E,QAAQ,CAAC,KAAK,EAAE,SAAS,wBAAwB,EAAE,CAAC;IACpD;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,kEAAkE;IAClE,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,yCAAyC;IACzC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,+CAA+C;IAC/C,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAC7B,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,gCAAgC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC;IAC/B,+CAA+C;IAC/C,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAC5C,2EAA2E;IAC3E,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;IACpB,iDAAiD;IACjD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,KAAK,EACL,cAAc,EACd,eAAe,EACf,SAAS,EACT,KAAK,EACL,QAAQ,EACR,SAAS,EACT,cAAc,EACd,QAAQ,EACR,GAAG,EACH,SAAS,GACV,EAAE,6BAA6B,2CAqF/B"}
@@ -4,6 +4,7 @@ import { memo, useMemo } from "react";
4
4
  import { timestampDate } from "@bufbuild/protobuf/wkt";
5
5
  import { Ban, Check, CheckCheck, Clock, Info, MessageSquare, TriangleAlert } from "lucide-react";
6
6
  import { cn } from "@stigmer/theme";
7
+ import { UNSTYLED_LIST } from "../internal/element-resets.js";
7
8
  import { getUserMessage } from "@stigmer/sdk";
8
9
  import { channelProviderOf } from "../channel/providers.js";
9
10
  import { Button } from "../button/Button.js";
@@ -37,7 +38,7 @@ export function ConversationTimelineView({ items, agentChannelId, conversationKe
37
38
  return (
38
39
  // The provider is context-only (no DOM node); one per view arms
39
40
  // every status-glyph tooltip below (the WorkspaceSidebar precedent).
40
- _jsx(TooltipProvider, { children: _jsxs("div", { "aria-label": "Conversation timeline", className: cn("stg:relative stg:flex stg:min-h-0 stg:flex-1 stg:flex-col", className), children: [_jsxs("div", { ref: scrollRef, className: "stg:min-h-0 stg:flex-1 stg:overflow-y-auto stg:[overflow-anchor:none] stg:px-4 stg:py-3", children: [!showsCustomerMessages && descriptor && (_jsxs("div", { className: "stg:mb-3 stg:flex stg:items-start stg:gap-2 stg:rounded-md stg:border stg:border-border stg:bg-muted-faint stg:px-3 stg:py-2 stg:text-xs stg:text-muted-foreground", children: [_jsx(Info, { "aria-hidden": "true", className: "stg:mt-0.5 stg:size-3.5 stg:shrink-0" }), _jsxs("p", { children: ["Customer messages on ", descriptor.label, " channels aren't shown here yet \u2014 this thread has replies, sends, and internal events only."] })] })), isLoading ? (_jsx(TimelineSkeleton, {})) : error ? (_jsx("p", { className: "stg:px-2 stg:py-6 stg:text-center stg:text-sm stg:text-destructive", children: getUserMessage(error) })) : items.length === 0 ? (_jsx(EmptyState, { variant: "first-use", icon: _jsx(MessageSquare, { className: "stg:size-8" }), title: "No messages yet", description: "The conversation's messages appear here as they happen." })) : (_jsxs("div", { ref: contentRef, children: [hasOlder && (_jsx("div", { className: "stg:flex stg:justify-center stg:pb-2", children: _jsx(Button, { variant: "ghost", size: "xs", onClick: loadOlder, disabled: isLoadingOlder, children: isLoadingOlder ? "Loading…" : "Load earlier messages" }) })), days.map((day) => (_jsxs("div", { children: [_jsx("div", { className: "stg:my-2 stg:text-center stg:text-xs stg:text-muted-foreground-faint", role: "separator", children: day.label }), _jsx("ul", { className: "stg:space-y-1.5", children: day.items.map((item) => (_jsx(TimelineItemRow, { item: item, agentChannelId: agentChannelId, conversationKey: conversationKey }, item.itemId))) })] }, day.label)))] })), _jsx("div", { ref: sentinelRef, "aria-hidden": "true" })] }), _jsx(JumpToLatestButton, { visible: !isFollowing, onClick: jumpToLatest })] }) }));
41
+ _jsx(TooltipProvider, { children: _jsxs("div", { "aria-label": "Conversation timeline", className: cn("stg:relative stg:flex stg:min-h-0 stg:flex-1 stg:flex-col", className), children: [_jsxs("div", { ref: scrollRef, className: "stg:min-h-0 stg:flex-1 stg:overflow-y-auto stg:[overflow-anchor:none] stg:px-4 stg:py-3", children: [!showsCustomerMessages && descriptor && (_jsxs("div", { className: "stg:mb-3 stg:flex stg:items-start stg:gap-2 stg:rounded-md stg:border stg:border-border stg:bg-muted-faint stg:px-3 stg:py-2 stg:text-xs stg:text-muted-foreground", children: [_jsx(Info, { "aria-hidden": "true", className: "stg:mt-0.5 stg:size-3.5 stg:shrink-0" }), _jsxs("p", { children: ["Customer messages on ", descriptor.label, " channels aren't shown here yet \u2014 this thread has replies, sends, and internal events only."] })] })), isLoading ? (_jsx(TimelineSkeleton, {})) : error ? (_jsx("p", { className: "stg:px-2 stg:py-6 stg:text-center stg:text-sm stg:text-destructive", children: getUserMessage(error) })) : items.length === 0 ? (_jsx(EmptyState, { variant: "first-use", icon: _jsx(MessageSquare, { className: "stg:size-8" }), title: "No messages yet", description: "The conversation's messages appear here as they happen." })) : (_jsxs("div", { ref: contentRef, children: [hasOlder && (_jsx("div", { className: "stg:flex stg:justify-center stg:pb-2", children: _jsx(Button, { variant: "ghost", size: "xs", onClick: loadOlder, disabled: isLoadingOlder, children: isLoadingOlder ? "Loading…" : "Load earlier messages" }) })), days.map((day) => (_jsxs("div", { children: [_jsx("div", { className: "stg:my-2 stg:text-center stg:text-xs stg:text-muted-foreground-faint", role: "separator", children: day.label }), _jsx("ul", { className: cn(UNSTYLED_LIST, "stg:space-y-1.5"), children: day.items.map((item) => (_jsx(TimelineItemRow, { item: item, agentChannelId: agentChannelId, conversationKey: conversationKey }, item.itemId))) })] }, day.label)))] })), _jsx("div", { ref: sentinelRef, "aria-hidden": "true" })] }), _jsx(JumpToLatestButton, { visible: !isFollowing, onClick: jumpToLatest })] }) }));
41
42
  }
42
43
  const BUSINESS_CAPTION = {
43
44
  agent: "Agent",
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationTimelineView.js","sourceRoot":"","sources":["../../src/conversation/ConversationTimelineView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConversationTimelineView.js","sourceRoot":"","sources":["../../src/conversation/ConversationTimelineView.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationsWorkbench.d.ts","sourceRoot":"","sources":["../../src/conversation/ConversationsWorkbench.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2DAA2D,CAAC;AAY9F,OAAO,EAAwB,KAAK,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAa5F;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;CACvC;AAED,gDAAgD;AAChD,MAAM,WAAW,2BAA2B;IAC1C,gDAAgD;IAChD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC/C,2DAA2D;IAC3D,QAAQ,CAAC,iBAAiB,EAAE,CAAC,SAAS,EAAE,oBAAoB,GAAG,IAAI,KAAK,IAAI,CAAC;IAC7E;;;OAGG;IACH,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,CAAC,EACrB,KAAK,CAAC,SAAS,GACf,CAAC,CAAC,OAAO,EAAE,yBAAyB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9D;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,MAAM,GAAG,IAAI,CAAC;IAChE,2EAA2E;IAC3E,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;IACpB,sDAAsD;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,GAAG,EACH,QAAQ,EACR,iBAAiB,EACjB,wBAAwB,EACxB,eAAe,EACf,WAAW,EACX,GAAG,EACH,SAAS,GACV,EAAE,2BAA2B,2CAsR7B"}
1
+ {"version":3,"file":"ConversationsWorkbench.d.ts","sourceRoot":"","sources":["../../src/conversation/ConversationsWorkbench.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2DAA2D,CAAC;AAY9F,OAAO,EAAwB,KAAK,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAiB5F;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;CACvC;AAED,gDAAgD;AAChD,MAAM,WAAW,2BAA2B;IAC1C,gDAAgD;IAChD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC/C,2DAA2D;IAC3D,QAAQ,CAAC,iBAAiB,EAAE,CAAC,SAAS,EAAE,oBAAoB,GAAG,IAAI,KAAK,IAAI,CAAC;IAC7E;;;OAGG;IACH,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,CAAC,EACrB,KAAK,CAAC,SAAS,GACf,CAAC,CAAC,OAAO,EAAE,yBAAyB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9D;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,MAAM,GAAG,IAAI,CAAC;IAChE,2EAA2E;IAC3E,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;IACpB,sDAAsD;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,GAAG,EACH,QAAQ,EACR,iBAAiB,EACjB,wBAAwB,EACxB,eAAe,EACf,WAAW,EACX,GAAG,EACH,SAAS,GACV,EAAE,2BAA2B,2CAsT7B"}
@@ -12,11 +12,12 @@ import { ConversationAttentionBanner } from "./ConversationAttentionBanner.js";
12
12
  import { ConversationComposer } from "./ConversationComposer.js";
13
13
  import { ConversationControlBanner } from "./ConversationControlBanner.js";
14
14
  import { ConversationListPane } from "./ConversationListPane.js";
15
+ import { ConversationTemplatePickerDialog } from "./ConversationTemplatePickerDialog.js";
15
16
  import { ConversationTimelineView } from "./ConversationTimelineView.js";
16
17
  import { conversationContactOf, conversationLabelOf, outboundItemIdOf, serviceWindowOf, } from "./conversationPresentation.js";
17
18
  import { useConversation } from "./useConversation.js";
18
19
  import { useConversationList } from "./useConversationList.js";
19
- import { useConversationParticipation } from "./useConversationParticipation.js";
20
+ import { useConversationParticipation, } from "./useConversationParticipation.js";
20
21
  import { useConversationTimeline } from "./useConversationTimeline.js";
21
22
  /**
22
23
  * The Conversations console surface (channel-conversations T04), fully
@@ -84,8 +85,16 @@ export function ConversationsWorkbench({ org, selected, onSelectionChange, curre
84
85
  const serviceWindow = detail.conversation
85
86
  ? serviceWindowOf(detail.conversation, descriptor?.id ?? null, now ?? new Date())
86
87
  : null;
88
+ // cloud#260: templates are the lane that SUCCEEDS on a closed window,
89
+ // offered from the persistent affordance beside Send — the advisory
90
+ // points at it in copy only (it is the input's description with zero
91
+ // tab stops, F-18; a control inside it would be unreachable context).
92
+ const [templatePickerOpen, setTemplatePickerOpen] = useState(false);
93
+ const templatesAvailable = (descriptor?.supportsMessageTemplates ?? false) && selectedChannel !== null;
87
94
  const composerAdvisory = serviceWindow === "closed" && descriptor
88
- ? `${descriptor.label} closes free-form replies 24 hours after the customer's last message — a reply sent now will probably fail. The window reopens when the customer writes again.`
95
+ ? `${descriptor.label} closes free-form replies 24 hours after the customer's last message — a reply sent now will probably fail. The window reopens when the customer writes again.${templatesAvailable
96
+ ? " Approved templates still deliver — use the template button beside Send."
97
+ : ""}`
89
98
  : null;
90
99
  const handleSelect = useCallback((conversation) => onSelectionChange({
91
100
  agentChannelId: conversation.agentChannelId,
@@ -112,8 +121,8 @@ export function ConversationsWorkbench({ org, selected, onSelectionChange, curre
112
121
  setReplySettling(null);
113
122
  }
114
123
  }, [timeline.items, settlingItemId]);
115
- const handleSend = useCallback(async (text) => {
116
- const output = await participation.reply(text);
124
+ const handleSend = useCallback(async (payload) => {
125
+ const output = await participation.reply(payload);
117
126
  // The ledger row is committed before reply answers, so one head
118
127
  // refresh renders the REAL item (with its true status) — the SDK
119
128
  // never fabricates an optimistic item that might misstate what
@@ -160,6 +169,8 @@ export function ConversationsWorkbench({ org, selected, onSelectionChange, curre
160
169
  // The path from a conversation to its channel (F-11):
161
170
  // the channel name links to the host's channel surface
162
171
  // when a route exists.
163
- (selectedChannelHref ? (_jsx("a", { href: selectedChannelHref, className: "stg:hover:text-foreground stg:hover:underline", children: channelName })) : (channelName))] }))] }), headerAccessoryNode] }), detail.conversation && (_jsx(ConversationAttentionBanner, { conversation: detail.conversation, participation: participation, supportsStaffReplies: descriptor?.supportsStaffReplies ?? true })), detail.conversation && (_jsx(ConversationControlBanner, { conversation: detail.conversation, participation: participation, unansweredCustomer: unansweredCustomer, supportsStaffReplies: descriptor?.supportsStaffReplies ?? true, currentIdentityAccountId: currentIdentityAccountId })), _jsx(ConversationTimelineView, { items: timeline.items, agentChannelId: selected.agentChannelId, conversationKey: selected.conversationKey, isLoading: timeline.isLoading, error: timeline.error, hasOlder: timeline.hasOlder, loadOlder: timeline.loadOlder, isLoadingOlder: timeline.isLoadingOlder, provider: descriptor?.id ?? null, now: now }), _jsx(ConversationComposer, { onSend: handleSend, isSending: participation.pendingCommands.has("reply") || settlingItemId !== null, disabledReason: composerDisabledReason, advisory: composerAdvisory })] }, `${selected.agentChannelId}:${selected.conversationKey}`))] }));
172
+ (selectedChannelHref ? (_jsx("a", { href: selectedChannelHref, className: "stg:hover:text-foreground stg:hover:underline", children: channelName })) : (channelName))] }))] }), headerAccessoryNode] }), detail.conversation && (_jsx(ConversationAttentionBanner, { conversation: detail.conversation, participation: participation, supportsStaffReplies: descriptor?.supportsStaffReplies ?? true })), detail.conversation && (_jsx(ConversationControlBanner, { conversation: detail.conversation, participation: participation, unansweredCustomer: unansweredCustomer, supportsStaffReplies: descriptor?.supportsStaffReplies ?? true, currentIdentityAccountId: currentIdentityAccountId })), _jsx(ConversationTimelineView, { items: timeline.items, agentChannelId: selected.agentChannelId, conversationKey: selected.conversationKey, isLoading: timeline.isLoading, error: timeline.error, hasOlder: timeline.hasOlder, loadOlder: timeline.loadOlder, isLoadingOlder: timeline.isLoadingOlder, provider: descriptor?.id ?? null, now: now }), _jsx(ConversationComposer, { onSend: handleSend, isSending: participation.pendingCommands.has("reply") || settlingItemId !== null, onOpenTemplatePicker: templatesAvailable && composerDisabledReason === null
173
+ ? () => setTemplatePickerOpen(true)
174
+ : undefined, disabledReason: composerDisabledReason, advisory: composerAdvisory }), templatesAvailable && (_jsx(ConversationTemplatePickerDialog, { open: templatePickerOpen, onOpenChange: setTemplatePickerOpen, channelSlug: selectedChannel?.metadata?.slug ?? "", org: selectedChannel?.metadata?.org ?? "", onSend: handleSend, isSending: participation.pendingCommands.has("reply") || settlingItemId !== null }))] }, `${selected.agentChannelId}:${selected.conversationKey}`))] }));
164
175
  }
165
176
  //# sourceMappingURL=ConversationsWorkbench.js.map