@burdenoff/microfe-botmanor 2026.1108.1 → 2026.1109.2

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 (335) hide show
  1. package/dist/botlit/BotlitRoutes.d.ts +2 -0
  2. package/dist/botlit/BotlitRoutes.js +40 -52
  3. package/dist/botlit/BotlitRoutes.js.map +1 -1
  4. package/dist/botlit/BotmanorRoot.d.ts +3 -0
  5. package/dist/botlit/BotmanorRoot.js +1 -2
  6. package/dist/botlit/BotmanorRoot.js.map +1 -1
  7. package/dist/botlit/BotmanorRootInner.d.ts +3 -0
  8. package/dist/botlit/BotmanorRootInner.js +9 -10
  9. package/dist/botlit/BotmanorRootInner.js.map +1 -1
  10. package/dist/botlit/components/AgentApprovalPanel.d.ts +20 -0
  11. package/dist/botlit/components/AgentApprovalPanel.js +49 -50
  12. package/dist/botlit/components/AgentApprovalPanel.js.map +1 -1
  13. package/dist/botlit/components/AiOperationsPanel.d.ts +14 -0
  14. package/dist/botlit/components/AiOperationsPanel.js +54 -55
  15. package/dist/botlit/components/AiOperationsPanel.js.map +1 -1
  16. package/dist/botlit/components/AssistantChannelPanel.d.ts +3 -0
  17. package/dist/botlit/components/AssistantChannelPanel.js +12 -13
  18. package/dist/botlit/components/AssistantChannelPanel.js.map +1 -1
  19. package/dist/botlit/components/AssistantRuntimeSetupPanel.d.ts +4 -0
  20. package/dist/botlit/components/AssistantRuntimeSetupPanel.js +14 -14
  21. package/dist/botlit/components/AssistantRuntimeSetupPanel.js.map +1 -1
  22. package/dist/botlit/components/AssistantWebsitePanel.d.ts +5 -0
  23. package/dist/botlit/components/AssistantWebsitePanel.js +15 -16
  24. package/dist/botlit/components/AssistantWebsitePanel.js.map +1 -1
  25. package/dist/botlit/components/Badge.d.ts +9 -0
  26. package/dist/botlit/components/Badge.js +1 -2
  27. package/dist/botlit/components/Badge.js.map +1 -1
  28. package/dist/botlit/components/Button.d.ts +10 -0
  29. package/dist/botlit/components/Button.js +1 -2
  30. package/dist/botlit/components/Button.js.map +1 -1
  31. package/dist/botlit/components/Card.d.ts +16 -0
  32. package/dist/botlit/components/Card.js +1 -2
  33. package/dist/botlit/components/Card.js.map +1 -1
  34. package/dist/botlit/components/ChannelSelectorSheet.d.ts +23 -0
  35. package/dist/botlit/components/ChannelSelectorSheet.js +1 -2
  36. package/dist/botlit/components/ChannelSelectorSheet.js.map +1 -1
  37. package/dist/botlit/components/EmptyState.d.ts +12 -0
  38. package/dist/botlit/components/EmptyState.js +1 -2
  39. package/dist/botlit/components/EmptyState.js.map +1 -1
  40. package/dist/botlit/components/ErrorState.d.ts +10 -0
  41. package/dist/botlit/components/ErrorState.js +5 -6
  42. package/dist/botlit/components/ErrorState.js.map +1 -1
  43. package/dist/botlit/components/Input.d.ts +27 -0
  44. package/dist/botlit/components/Input.js +1 -2
  45. package/dist/botlit/components/Input.js.map +1 -1
  46. package/dist/botlit/components/KnowledgeSourceImportPanel.d.ts +3 -0
  47. package/dist/botlit/components/KnowledgeSourceImportPanel.js +12 -13
  48. package/dist/botlit/components/KnowledgeSourceImportPanel.js.map +1 -1
  49. package/dist/botlit/components/ModelRegistrationPanel.d.ts +5 -0
  50. package/dist/botlit/components/ModelRegistrationPanel.js +1 -2
  51. package/dist/botlit/components/ModelRegistrationPanel.js.map +1 -1
  52. package/dist/botlit/components/PageLayout.d.ts +12 -0
  53. package/dist/botlit/components/PageLayout.js +1 -2
  54. package/dist/botlit/components/PageLayout.js.map +1 -1
  55. package/dist/botlit/components/QuotaExhaustedDialog.d.ts +9 -0
  56. package/dist/botlit/components/QuotaExhaustedDialog.js +1 -2
  57. package/dist/botlit/components/QuotaExhaustedDialog.js.map +1 -1
  58. package/dist/botlit/components/RetentionStatusPanel.d.ts +2 -0
  59. package/dist/botlit/components/RetentionStatusPanel.js +18 -19
  60. package/dist/botlit/components/RetentionStatusPanel.js.map +1 -1
  61. package/dist/botlit/components/RouteLoader.d.ts +23 -0
  62. package/dist/botlit/components/RouteLoader.js +1 -2
  63. package/dist/botlit/components/RouteLoader.js.map +1 -1
  64. package/dist/botlit/components/VersionHistoryPanel.d.ts +12 -0
  65. package/dist/botlit/components/VersionHistoryPanel.js +23 -24
  66. package/dist/botlit/components/VersionHistoryPanel.js.map +1 -1
  67. package/dist/botlit/components/WorkspaceRequired.d.ts +18 -0
  68. package/dist/botlit/components/WorkspaceRequired.js +1 -2
  69. package/dist/botlit/components/WorkspaceRequired.js.map +1 -1
  70. package/dist/botlit/components/index.d.ts +14 -0
  71. package/dist/botlit/hooks/index.d.ts +35 -0
  72. package/dist/botlit/hooks/index.js +16 -16
  73. package/dist/botlit/hooks/internal/mutationInput.d.ts +56 -0
  74. package/dist/botlit/hooks/internal/mutationInput.js +1 -2
  75. package/dist/botlit/hooks/internal/mutationInput.js.map +1 -1
  76. package/dist/botlit/hooks/internal/workspaceGateway.d.ts +54 -0
  77. package/dist/botlit/hooks/internal/workspaceGateway.js +17 -19
  78. package/dist/botlit/hooks/internal/workspaceGateway.js.map +1 -1
  79. package/dist/botlit/hooks/useA2A.d.ts +104 -0
  80. package/dist/botlit/hooks/useA2A.js +45 -45
  81. package/dist/botlit/hooks/useA2A.js.map +1 -1
  82. package/dist/botlit/hooks/useAgentApprovals.d.ts +62 -0
  83. package/dist/botlit/hooks/useAgentApprovals.js +38 -39
  84. package/dist/botlit/hooks/useAgentApprovals.js.map +1 -1
  85. package/dist/botlit/hooks/useAgents.d.ts +105 -0
  86. package/dist/botlit/hooks/useAgents.js +53 -54
  87. package/dist/botlit/hooks/useAgents.js.map +1 -1
  88. package/dist/botlit/hooks/useAiOperations.d.ts +95 -0
  89. package/dist/botlit/hooks/useAiOperations.js +20 -19
  90. package/dist/botlit/hooks/useAiOperations.js.map +1 -1
  91. package/dist/botlit/hooks/useAssistantChannels.d.ts +16 -0
  92. package/dist/botlit/hooks/useAssistantChannels.js +1 -2
  93. package/dist/botlit/hooks/useAssistantChannels.js.map +1 -1
  94. package/dist/botlit/hooks/useAssistantRuntimeSetup.d.ts +17 -0
  95. package/dist/botlit/hooks/useAssistantRuntimeSetup.js +1 -2
  96. package/dist/botlit/hooks/useAssistantRuntimeSetup.js.map +1 -1
  97. package/dist/botlit/hooks/useAssistantWebsites.d.ts +18 -0
  98. package/dist/botlit/hooks/useAssistantWebsites.js +1 -2
  99. package/dist/botlit/hooks/useAssistantWebsites.js.map +1 -1
  100. package/dist/botlit/hooks/useBotWorkflow.d.ts +22 -0
  101. package/dist/botlit/hooks/useBotWorkflow.js +1 -2
  102. package/dist/botlit/hooks/useBotWorkflow.js.map +1 -1
  103. package/dist/botlit/hooks/useBots.d.ts +68 -0
  104. package/dist/botlit/hooks/useBots.js +32 -33
  105. package/dist/botlit/hooks/useBots.js.map +1 -1
  106. package/dist/botlit/hooks/useBuckets.d.ts +62 -0
  107. package/dist/botlit/hooks/useBuckets.js +91 -58
  108. package/dist/botlit/hooks/useBuckets.js.map +1 -1
  109. package/dist/botlit/hooks/useChannels.d.ts +87 -0
  110. package/dist/botlit/hooks/useChannels.js +73 -73
  111. package/dist/botlit/hooks/useChannels.js.map +1 -1
  112. package/dist/botlit/hooks/useExecutions.d.ts +87 -0
  113. package/dist/botlit/hooks/useExecutions.js +37 -37
  114. package/dist/botlit/hooks/useExecutions.js.map +1 -1
  115. package/dist/botlit/hooks/useKnowledgeBases.d.ts +79 -0
  116. package/dist/botlit/hooks/useKnowledgeBases.js +40 -39
  117. package/dist/botlit/hooks/useKnowledgeBases.js.map +1 -1
  118. package/dist/botlit/hooks/useKnowledgeSourceImports.d.ts +21 -0
  119. package/dist/botlit/hooks/useKnowledgeSourceImports.js +1 -2
  120. package/dist/botlit/hooks/useKnowledgeSourceImports.js.map +1 -1
  121. package/dist/botlit/hooks/useLLMProviders.d.ts +66 -0
  122. package/dist/botlit/hooks/useLLMProviders.js +25 -26
  123. package/dist/botlit/hooks/useLLMProviders.js.map +1 -1
  124. package/dist/botlit/hooks/useMCPServers.d.ts +71 -0
  125. package/dist/botlit/hooks/useMCPServers.js +40 -38
  126. package/dist/botlit/hooks/useMCPServers.js.map +1 -1
  127. package/dist/botlit/hooks/usePolicies.d.ts +60 -0
  128. package/dist/botlit/hooks/usePolicies.js +49 -49
  129. package/dist/botlit/hooks/usePolicies.js.map +1 -1
  130. package/dist/botlit/hooks/usePromptTemplates.d.ts +88 -0
  131. package/dist/botlit/hooks/usePromptTemplates.js +57 -57
  132. package/dist/botlit/hooks/usePromptTemplates.js.map +1 -1
  133. package/dist/botlit/hooks/useRetention.d.ts +26 -0
  134. package/dist/botlit/hooks/useRetention.js +3 -3
  135. package/dist/botlit/hooks/useRetention.js.map +1 -1
  136. package/dist/botlit/hooks/useRetrievalProfiles.d.ts +75 -0
  137. package/dist/botlit/hooks/useRetrievalProfiles.js +47 -47
  138. package/dist/botlit/hooks/useRetrievalProfiles.js.map +1 -1
  139. package/dist/botlit/hooks/useSkills.d.ts +64 -0
  140. package/dist/botlit/hooks/useSkills.js +53 -53
  141. package/dist/botlit/hooks/useSkills.js.map +1 -1
  142. package/dist/botlit/hooks/useStore.d.ts +112 -0
  143. package/dist/botlit/hooks/useStore.js +55 -55
  144. package/dist/botlit/hooks/useStore.js.map +1 -1
  145. package/dist/botlit/hooks/useUserPlatformConnection.d.ts +80 -0
  146. package/dist/botlit/hooks/useUserPlatformConnection.js +19 -19
  147. package/dist/botlit/hooks/useUserPlatformConnection.js.map +1 -1
  148. package/dist/botlit/index.d.ts +15 -0
  149. package/dist/botlit/index.js +11 -11
  150. package/dist/botlit/pages/A2AAgentDetailPage.d.ts +6 -0
  151. package/dist/botlit/pages/A2AAgentDetailPage.js +171 -178
  152. package/dist/botlit/pages/A2AAgentDetailPage.js.map +1 -1
  153. package/dist/botlit/pages/A2ARegistryPage.d.ts +2 -0
  154. package/dist/botlit/pages/A2ARegistryPage.js +25 -26
  155. package/dist/botlit/pages/A2ARegistryPage.js.map +1 -1
  156. package/dist/botlit/pages/AgentApprovalsPage.d.ts +2 -0
  157. package/dist/botlit/pages/AgentApprovalsPage.js +32 -33
  158. package/dist/botlit/pages/AgentApprovalsPage.js.map +1 -1
  159. package/dist/botlit/pages/AgentBuilderPage.d.ts +2 -0
  160. package/dist/botlit/pages/AgentBuilderPage.js +59 -60
  161. package/dist/botlit/pages/AgentBuilderPage.js.map +1 -1
  162. package/dist/botlit/pages/AgentDetailPage.d.ts +2 -0
  163. package/dist/botlit/pages/AgentDetailPage.js +83 -84
  164. package/dist/botlit/pages/AgentDetailPage.js.map +1 -1
  165. package/dist/botlit/pages/AgentsListPage.d.ts +2 -0
  166. package/dist/botlit/pages/AgentsListPage.js +71 -72
  167. package/dist/botlit/pages/AgentsListPage.js.map +1 -1
  168. package/dist/botlit/pages/AiOperationsPage.d.ts +2 -0
  169. package/dist/botlit/pages/AiOperationsPage.js +52 -53
  170. package/dist/botlit/pages/AiOperationsPage.js.map +1 -1
  171. package/dist/botlit/pages/BotChannelsTab.d.ts +7 -0
  172. package/dist/botlit/pages/BotChannelsTab.js +120 -122
  173. package/dist/botlit/pages/BotChannelsTab.js.map +1 -1
  174. package/dist/botlit/pages/BotDetailPage.d.ts +7 -0
  175. package/dist/botlit/pages/BotDetailPage.js +353 -358
  176. package/dist/botlit/pages/BotDetailPage.js.map +1 -1
  177. package/dist/botlit/pages/BotWorkflowTab.d.ts +11 -0
  178. package/dist/botlit/pages/BotWorkflowTab.js +20 -21
  179. package/dist/botlit/pages/BotWorkflowTab.js.map +1 -1
  180. package/dist/botlit/pages/BotsListPage.d.ts +2 -0
  181. package/dist/botlit/pages/BotsListPage.js +52 -53
  182. package/dist/botlit/pages/BotsListPage.js.map +1 -1
  183. package/dist/botlit/pages/BucketDetailPage.d.ts +2 -0
  184. package/dist/botlit/pages/BucketDetailPage.js +251 -0
  185. package/dist/botlit/pages/BucketDetailPage.js.map +1 -0
  186. package/dist/botlit/pages/BucketsPage.d.ts +2 -0
  187. package/dist/botlit/pages/BucketsPage.js +260 -261
  188. package/dist/botlit/pages/BucketsPage.js.map +1 -1
  189. package/dist/botlit/pages/ChannelDetailPage.d.ts +6 -0
  190. package/dist/botlit/pages/ChannelDetailPage.js +97 -96
  191. package/dist/botlit/pages/ChannelDetailPage.js.map +1 -1
  192. package/dist/botlit/pages/ChannelRoutesPage.d.ts +2 -0
  193. package/dist/botlit/pages/ChannelRoutesPage.js +23 -24
  194. package/dist/botlit/pages/ChannelRoutesPage.js.map +1 -1
  195. package/dist/botlit/pages/ChannelsPage.d.ts +2 -0
  196. package/dist/botlit/pages/ChannelsPage.js +44 -45
  197. package/dist/botlit/pages/ChannelsPage.js.map +1 -1
  198. package/dist/botlit/pages/ChatPage.d.ts +1 -0
  199. package/dist/botlit/pages/ChatPage.js +10 -11
  200. package/dist/botlit/pages/ChatPage.js.map +1 -1
  201. package/dist/botlit/pages/DashboardPage.d.ts +2 -0
  202. package/dist/botlit/pages/DashboardPage.js +37 -38
  203. package/dist/botlit/pages/DashboardPage.js.map +1 -1
  204. package/dist/botlit/pages/ExecutionDetailPage.d.ts +2 -0
  205. package/dist/botlit/pages/ExecutionDetailPage.js +47 -48
  206. package/dist/botlit/pages/ExecutionDetailPage.js.map +1 -1
  207. package/dist/botlit/pages/ExecutionsPage.d.ts +2 -0
  208. package/dist/botlit/pages/ExecutionsPage.js +72 -70
  209. package/dist/botlit/pages/ExecutionsPage.js.map +1 -1
  210. package/dist/botlit/pages/InstalledPackagesPage.d.ts +2 -0
  211. package/dist/botlit/pages/InstalledPackagesPage.js +77 -78
  212. package/dist/botlit/pages/InstalledPackagesPage.js.map +1 -1
  213. package/dist/botlit/pages/KnowledgeBaseDetailPage.d.ts +6 -0
  214. package/dist/botlit/pages/KnowledgeBaseDetailPage.js +171 -181
  215. package/dist/botlit/pages/KnowledgeBaseDetailPage.js.map +1 -1
  216. package/dist/botlit/pages/KnowledgeBasesPage.d.ts +2 -0
  217. package/dist/botlit/pages/KnowledgeBasesPage.js +30 -31
  218. package/dist/botlit/pages/KnowledgeBasesPage.js.map +1 -1
  219. package/dist/botlit/pages/MCPServerDetailPage.d.ts +6 -0
  220. package/dist/botlit/pages/MCPServerDetailPage.js +82 -83
  221. package/dist/botlit/pages/MCPServerDetailPage.js.map +1 -1
  222. package/dist/botlit/pages/MCPServersPage.d.ts +2 -0
  223. package/dist/botlit/pages/MCPServersPage.js +54 -55
  224. package/dist/botlit/pages/MCPServersPage.js.map +1 -1
  225. package/dist/botlit/pages/PoliciesPage.d.ts +2 -0
  226. package/dist/botlit/pages/PoliciesPage.js +25 -26
  227. package/dist/botlit/pages/PoliciesPage.js.map +1 -1
  228. package/dist/botlit/pages/PolicyDetailPage.d.ts +6 -0
  229. package/dist/botlit/pages/PolicyDetailPage.js +257 -259
  230. package/dist/botlit/pages/PolicyDetailPage.js.map +1 -1
  231. package/dist/botlit/pages/PromptStudioPage.d.ts +2 -0
  232. package/dist/botlit/pages/PromptStudioPage.js +35 -35
  233. package/dist/botlit/pages/PromptStudioPage.js.map +1 -1
  234. package/dist/botlit/pages/PromptTemplateDetailPage.d.ts +6 -0
  235. package/dist/botlit/pages/PromptTemplateDetailPage.js +363 -362
  236. package/dist/botlit/pages/PromptTemplateDetailPage.js.map +1 -1
  237. package/dist/botlit/pages/PromptTemplatesPage.d.ts +2 -0
  238. package/dist/botlit/pages/PromptTemplatesPage.js +26 -27
  239. package/dist/botlit/pages/PromptTemplatesPage.js.map +1 -1
  240. package/dist/botlit/pages/RetrievalProfileDetailPage.d.ts +6 -0
  241. package/dist/botlit/pages/RetrievalProfileDetailPage.js +150 -158
  242. package/dist/botlit/pages/RetrievalProfileDetailPage.js.map +1 -1
  243. package/dist/botlit/pages/RetrievalProfilesPage.d.ts +2 -0
  244. package/dist/botlit/pages/RetrievalProfilesPage.js +24 -25
  245. package/dist/botlit/pages/RetrievalProfilesPage.js.map +1 -1
  246. package/dist/botlit/pages/SettingsPage.d.ts +2 -0
  247. package/dist/botlit/pages/SettingsPage.js +124 -125
  248. package/dist/botlit/pages/SettingsPage.js.map +1 -1
  249. package/dist/botlit/pages/SkillDetailPage.d.ts +6 -0
  250. package/dist/botlit/pages/SkillDetailPage.js +216 -217
  251. package/dist/botlit/pages/SkillDetailPage.js.map +1 -1
  252. package/dist/botlit/pages/SkillsPage.d.ts +2 -0
  253. package/dist/botlit/pages/SkillsPage.js +24 -25
  254. package/dist/botlit/pages/SkillsPage.js.map +1 -1
  255. package/dist/botlit/pages/StorePackageDetailPage.d.ts +2 -0
  256. package/dist/botlit/pages/StorePackageDetailPage.js +38 -39
  257. package/dist/botlit/pages/StorePackageDetailPage.js.map +1 -1
  258. package/dist/botlit/pages/StorePage.d.ts +2 -0
  259. package/dist/botlit/pages/StorePage.js +135 -136
  260. package/dist/botlit/pages/StorePage.js.map +1 -1
  261. package/dist/botlit/pages/index.d.ts +38 -0
  262. package/dist/botlit/permissions/PermissionRequired.d.ts +20 -0
  263. package/dist/botlit/permissions/PermissionRequired.js +10 -11
  264. package/dist/botlit/permissions/PermissionRequired.js.map +1 -1
  265. package/dist/botlit/permissions/botmanorPermissions.d.ts +82 -0
  266. package/dist/botlit/permissions/botmanorPermissions.js +1 -2
  267. package/dist/botlit/permissions/botmanorPermissions.js.map +1 -1
  268. package/dist/botlit/permissions/index.d.ts +7 -0
  269. package/dist/botlit/permissions/index.js +4 -3
  270. package/dist/botlit/permissions/useBotmanorPermissions.d.ts +41 -0
  271. package/dist/botlit/permissions/useBotmanorPermissions.js +1 -2
  272. package/dist/botlit/permissions/useBotmanorPermissions.js.map +1 -1
  273. package/dist/botlit/providers/BotlitProvider.d.ts +14 -0
  274. package/dist/botlit/providers/BotlitProvider.js +3 -3
  275. package/dist/botlit/providers/BotlitProvider.js.map +1 -1
  276. package/dist/botlit/store/botlitStore.d.ts +85 -0
  277. package/dist/botlit/store/botlitStore.js +1 -2
  278. package/dist/botlit/store/botlitStore.js.map +1 -1
  279. package/dist/botlit/store/renamedKeyStorage.d.ts +13 -0
  280. package/dist/botlit/store/renamedKeyStorage.js +1 -2
  281. package/dist/botlit/store/renamedKeyStorage.js.map +1 -1
  282. package/dist/botlit/types/index.d.ts +1008 -0
  283. package/dist/botlit/utils/cn.d.ts +2 -0
  284. package/dist/botlit/utils/cn.js +1 -2
  285. package/dist/botlit/utils/cn.js.map +1 -1
  286. package/dist/botlit/utils/embedding-models.d.ts +9 -0
  287. package/dist/botlit/utils/embedding-models.js +1 -2
  288. package/dist/botlit/utils/embedding-models.js.map +1 -1
  289. package/dist/botlit/utils/errors.d.ts +19 -0
  290. package/dist/botlit/utils/errors.js +1 -2
  291. package/dist/botlit/utils/errors.js.map +1 -1
  292. package/dist/botlit/utils/formatters.d.ts +38 -0
  293. package/dist/botlit/utils/formatters.js +0 -1
  294. package/dist/botlit/utils/formatters.js.map +1 -1
  295. package/dist/botlit/utils/navigation.d.ts +19 -0
  296. package/dist/botlit/utils/navigation.js +1 -2
  297. package/dist/botlit/utils/navigation.js.map +1 -1
  298. package/dist/botlit/utils/policyConfig.d.ts +68 -0
  299. package/dist/botlit/utils/policyConfig.js +2 -3
  300. package/dist/botlit/utils/policyConfig.js.map +1 -1
  301. package/dist/botlit/utils/unions.d.ts +25 -0
  302. package/dist/botlit/utils/unions.js +1 -2
  303. package/dist/botlit/utils/unions.js.map +1 -1
  304. package/dist/dev/App.d.ts +2 -0
  305. package/dist/dev/main.d.ts +0 -0
  306. package/dist/generated/global-operations.d.ts +197 -0
  307. package/dist/generated/global-operations.js +1 -2
  308. package/dist/generated/global-operations.js.map +1 -1
  309. package/dist/generated/global-types.d.ts +27678 -0
  310. package/dist/generated/global-types.js +1 -2
  311. package/dist/generated/global-types.js.map +1 -1
  312. package/dist/generated/wspace-operations.d.ts +5489 -0
  313. package/dist/generated/wspace-operations.js +88 -84
  314. package/dist/generated/wspace-operations.js.map +1 -1
  315. package/dist/generated/wspace-types.d.ts +152017 -0
  316. package/dist/generated/wspace-types.js +1 -2
  317. package/dist/generated/wspace-types.js.map +1 -1
  318. package/dist/index.d.ts +5 -0
  319. package/dist/index.js +5 -6
  320. package/dist/shared/hooks/useTr.d.ts +16 -0
  321. package/dist/shared/hooks/useTr.js +1 -2
  322. package/dist/shared/hooks/useTr.js.map +1 -1
  323. package/dist/stories/Badge.stories.d.ts +11 -0
  324. package/dist/stories/Button.stories.d.ts +13 -0
  325. package/dist/stories/EmptyState.stories.d.ts +8 -0
  326. package/dist/stories/StatusBadge.stories.d.ts +9 -0
  327. package/dist/test/fixtures.d.ts +39 -0
  328. package/dist/test/happydom.d.ts +1 -0
  329. package/dist/test/renderPage.d.ts +18 -0
  330. package/dist/test/setup.d.ts +9 -0
  331. package/dist/utils/nativeBridge.d.ts +2 -0
  332. package/dist/utils/nativeBridge.js +1 -2
  333. package/package.json +87 -60
  334. package/dist/botlit/hooks/useConversations.js +0 -64
  335. package/dist/botlit/hooks/useConversations.js.map +0 -1
@@ -0,0 +1,80 @@
1
+ import { ChannelPlatform, ChannelStatus, AdapterType, ChannelFilterInput, ChannelPaginationInput } from '../../generated/global-types';
2
+ type ChannelType = string;
3
+ export interface UserPlatformConnectionData {
4
+ id: string;
5
+ channelId: string;
6
+ platform: string;
7
+ externalUserId: string;
8
+ externalUsername?: string | null;
9
+ externalDisplayName?: string | null;
10
+ dmAllowed: boolean;
11
+ notificationsEnabled: boolean;
12
+ connectedAt?: string | null;
13
+ canReceiveDm: boolean;
14
+ isTokenExpired: boolean;
15
+ userTokenExpiresAt?: string | null;
16
+ integrationConnectionId?: string | null;
17
+ }
18
+ interface UseMyUserPlatformConnectionResult {
19
+ data: UserPlatformConnectionData | null;
20
+ loading: boolean;
21
+ error: Error | null;
22
+ refetch: () => Promise<void>;
23
+ }
24
+ export declare function useMyUserPlatformConnection(channelId: string | undefined): UseMyUserPlatformConnectionResult;
25
+ interface UseInitiateSlackConnectResult {
26
+ initiate: (channelId: string, redirectUri: string) => void;
27
+ loading: boolean;
28
+ error: Error | null;
29
+ }
30
+ /**
31
+ * @deprecated Use integrations UI OAuth flow + useLinkIntegrationConnection instead
32
+ */
33
+ export declare function useInitiateSlackConnect(): UseInitiateSlackConnectResult;
34
+ interface UseToggleSlackNotificationsResult {
35
+ toggle: (id: string, notificationsEnabled: boolean) => Promise<UserPlatformConnectionData | null>;
36
+ loading: boolean;
37
+ error: Error | null;
38
+ }
39
+ export declare function useToggleSlackNotifications(): UseToggleSlackNotificationsResult;
40
+ interface UseRevokeSlackConnectionResult {
41
+ revoke: (id: string) => Promise<boolean>;
42
+ loading: boolean;
43
+ error: Error | null;
44
+ }
45
+ export declare function useRevokeSlackConnection(): UseRevokeSlackConnectionResult;
46
+ interface UseCompleteSlackConnectResult {
47
+ complete: (code: string, state: string) => Promise<UserPlatformConnectionData | null>;
48
+ loading: boolean;
49
+ error: Error | null;
50
+ }
51
+ /**
52
+ * @deprecated OAuth is now handled by integrations UI. Use useLinkIntegrationConnection instead.
53
+ */
54
+ export declare function useCompleteSlackConnect(): UseCompleteSlackConnectResult;
55
+ interface UseLinkIntegrationConnectionResult {
56
+ link: (integrationConnectionId: string, channelId: string) => Promise<UserPlatformConnectionData | null>;
57
+ loading: boolean;
58
+ error: Error | null;
59
+ }
60
+ export declare function useLinkIntegrationConnection(): UseLinkIntegrationConnectionResult;
61
+ export interface GlobalChannelData {
62
+ id: string;
63
+ name: string;
64
+ platform: ChannelPlatform;
65
+ adapterType: AdapterType | null;
66
+ channelType: ChannelType;
67
+ status: ChannelStatus;
68
+ isConnected: boolean;
69
+ description?: string | null;
70
+ priority: number;
71
+ connectionHealth: string;
72
+ }
73
+ interface UseGlobalChannelsResult {
74
+ data: GlobalChannelData[];
75
+ loading: boolean;
76
+ error: Error | null;
77
+ refetch: () => Promise<void>;
78
+ }
79
+ export declare function useGlobalChannels(filter?: ChannelFilterInput, pagination?: ChannelPaginationInput): UseGlobalChannelsResult;
80
+ export {};
@@ -3,27 +3,27 @@ import { ChannelType as i } from "../../generated/global-types.js";
3
3
  import { useCallback as a, useEffect as o, useMemo as s, useState as c } from "react";
4
4
  import { gql as l } from "@apollo/client";
5
5
  import { useGatewayClient as u } from "@burdenoff/fe-libs/shared/graphql";
6
- //#region src/botlit/hooks/useUserPlatformConnection.ts
6
+ // src/botlit/hooks/useUserPlatformConnection.ts
7
7
  function d() {
8
8
  return u("global");
9
9
  }
10
10
  function f(e) {
11
11
  let n = d(), [r, i] = c(null), [s, l] = c(!1), [u, f] = c(null), p = a(async () => {
12
- if (!e) {
13
- i(null), l(!1), f(null);
14
- return;
15
- }
16
- l(!0), f(null);
17
- try {
18
- i((await n.query({
19
- query: t,
20
- variables: { channelId: e },
21
- fetchPolicy: "network-only"
22
- })).data?.myUserPlatformConnection ?? null);
23
- } catch (e) {
24
- f(e);
25
- } finally {
26
- l(!1);
12
+ if (!e) i(null), l(!1), f(null);
13
+ else {
14
+ l(!0), f(null);
15
+ try {
16
+ let r = await n.query({
17
+ query: t,
18
+ variables: { channelId: e },
19
+ fetchPolicy: "network-only"
20
+ });
21
+ i(r.data?.myUserPlatformConnection ?? null);
22
+ } catch (e) {
23
+ f(e);
24
+ } finally {
25
+ l(!1);
26
+ }
27
27
  }
28
28
  }, [e, n]);
29
29
  return o(() => {
@@ -139,14 +139,15 @@ function b(e, t) {
139
139
  let n = d(), [r, i] = c([]), [l, u] = c(!1), [f, p] = c(null), m = s(() => e ?? v, [e]), h = s(() => t ?? y, [t]), g = a(async () => {
140
140
  u(!0), p(null);
141
141
  try {
142
- i((await n.query({
142
+ let e = await n.query({
143
143
  query: _,
144
144
  variables: {
145
145
  filter: m,
146
146
  pagination: h
147
147
  },
148
148
  fetchPolicy: "network-only"
149
- })).data?.getChannels?.items ?? []);
149
+ });
150
+ i(e.data?.getChannels?.items ?? []);
150
151
  } catch (e) {
151
152
  p(e);
152
153
  } finally {
@@ -166,7 +167,6 @@ function b(e, t) {
166
167
  refetch: g
167
168
  };
168
169
  }
169
- //#endregion
170
170
  export { b as useGlobalChannels, p as useInitiateSlackConnect, g as useLinkIntegrationConnection, f as useMyUserPlatformConnection, h as useRevokeSlackConnection, m as useToggleSlackNotifications };
171
171
 
172
172
  //# sourceMappingURL=useUserPlatformConnection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useUserPlatformConnection.js","names":[],"sources":["../../../src/botlit/hooks/useUserPlatformConnection.ts"],"sourcesContent":["/**\n * UserPlatformConnection Hooks\n * Phase 7: Slack personal account connect for channel users\n * @module botlit/hooks\n */\n\nimport { useState, useEffect, useCallback, useMemo } from 'react';\nimport { gql, type ApolloClient } from '@apollo/client';\nimport { useGatewayClient } from '@burdenoff/fe-libs/shared/graphql';\nimport {\n MyUserPlatformConnectionDocument,\n UpdateUserPlatformConnectionNotificationsDocument,\n RevokeUserPlatformConnectionDocument,\n LinkIntegrationConnectionDocument,\n} from '../../generated/global-operations';\nimport type {\n MyUserPlatformConnectionQuery,\n MyUserPlatformConnectionQueryVariables,\n UpdateUserPlatformConnectionNotificationsMutation,\n UpdateUserPlatformConnectionNotificationsMutationVariables,\n RevokeUserPlatformConnectionMutation,\n RevokeUserPlatformConnectionMutationVariables,\n LinkIntegrationConnectionMutation,\n LinkIntegrationConnectionMutationVariables,\n} from '../../generated/global-operations';\nimport type {\n ChannelPlatform,\n ChannelStatus,\n AdapterType,\n ChannelFilterInput,\n ChannelPaginationInput,\n} from '../../generated/global-types';\n// Value import: `channelType` on the filter is the generated enum, not the\n// local display-only `ChannelType` alias declared below.\nimport { ChannelType as GlobalChannelType } from '../../generated/global-types';\n\n// BOFF-1866 resolved: linkIntegrationConnection is published on global-channel-svc and\n// already codegen'd (see src/operations/global/channel/user-platform-connection.graphql).\n// Use the generated document/types instead of a hand-rolled one — the previous inline\n// gql selected a non-existent `success` field on UserPlatformConnection, which always\n// failed GraphQL validation server-side (BOFF-4691).\n\ntype ChannelType = string;\n\n// ============================================================================\n// Internal: global gateway client\n//\n// BOFF-5428: this module used to build its own ApolloClient defaulting to the\n// local-dev global gateway (port 4000) whenever the shell did not pass a\n// `globalApiGatewayUrl` prop — which it never did, so production shipped every\n// call to the caller's own machine. The shell already installs a configured\n// global-gateway client (correct URL, `x-workspace-id`, auth refresh + retry),\n// so use that and only that. Do NOT reintroduce a bespoke client or a\n// hardcoded gateway host here.\n// ============================================================================\n\nfunction useGlobalApolloClient(): ApolloClient {\n return useGatewayClient('global');\n}\n\n// ============================================================================\n// Exported types\n// ============================================================================\n\nexport interface UserPlatformConnectionData {\n id: string;\n channelId: string;\n platform: string;\n externalUserId: string;\n externalUsername?: string | null;\n externalDisplayName?: string | null;\n dmAllowed: boolean;\n notificationsEnabled: boolean;\n connectedAt?: string | null;\n canReceiveDm: boolean;\n isTokenExpired: boolean;\n userTokenExpiresAt?: string | null;\n integrationConnectionId?: string | null;\n}\n\n// ============================================================================\n// Hook: useMyUserPlatformConnection\n// ============================================================================\n\ninterface UseMyUserPlatformConnectionResult {\n data: UserPlatformConnectionData | null;\n loading: boolean;\n error: Error | null;\n refetch: () => Promise<void>;\n}\n\nexport function useMyUserPlatformConnection(\n channelId: string | undefined\n): UseMyUserPlatformConnectionResult {\n const globalClient = useGlobalApolloClient();\n\n const [data, setData] = useState<UserPlatformConnectionData | null>(null);\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<Error | null>(null);\n\n const fetch = useCallback(async () => {\n if (!channelId) {\n setData(null);\n setLoading(false);\n setError(null);\n return;\n }\n setLoading(true);\n setError(null);\n try {\n const result = await globalClient.query<\n MyUserPlatformConnectionQuery,\n MyUserPlatformConnectionQueryVariables\n >({\n query: MyUserPlatformConnectionDocument,\n variables: { channelId },\n fetchPolicy: 'network-only',\n });\n setData(\n (result.data?.myUserPlatformConnection as UserPlatformConnectionData | null | undefined) ??\n null\n );\n } catch (err) {\n setError(err as Error);\n } finally {\n setLoading(false);\n }\n }, [channelId, globalClient]);\n\n useEffect(() => {\n fetch();\n }, [fetch]);\n\n return { data, loading, error, refetch: fetch };\n}\n\n// ============================================================================\n// Hook: useInitiateSlackConnect\n// DEPRECATED: Use integrations UI flow instead\n// Redirect user to: /integrations/connections?provider=slack-user&returnUrl=<current-page>&channelId=<channel-id>\n// After OAuth completes, integrations will redirect back with ?integrationConnectionId=<id>\n// Then call useLinkIntegrationConnection to link the connection to the channel\n// ============================================================================\n\ninterface UseInitiateSlackConnectResult {\n initiate: (channelId: string, redirectUri: string) => void;\n loading: boolean;\n error: Error | null;\n}\n\n/**\n * @deprecated Use integrations UI OAuth flow + useLinkIntegrationConnection instead\n */\nexport function useInitiateSlackConnect(): UseInitiateSlackConnectResult {\n const [loading] = useState<boolean>(false);\n const [error] = useState<Error | null>(null);\n\n const initiate = useCallback((channelId: string, redirectUri: string): void => {\n // Construct integrations URL with return parameters\n const integrationsUrl = new URL('/integrations/connections', window.location.origin);\n integrationsUrl.searchParams.set('provider', 'slack-user');\n integrationsUrl.searchParams.set('returnUrl', redirectUri);\n integrationsUrl.searchParams.set('channelId', channelId);\n\n // Redirect to integrations UI\n window.location.href = integrationsUrl.toString();\n }, []);\n\n return { initiate, loading, error };\n}\n\n// ============================================================================\n// Hook: useToggleSlackNotifications\n// ============================================================================\n\ninterface UseToggleSlackNotificationsResult {\n toggle: (id: string, notificationsEnabled: boolean) => Promise<UserPlatformConnectionData | null>;\n loading: boolean;\n error: Error | null;\n}\n\nexport function useToggleSlackNotifications(): UseToggleSlackNotificationsResult {\n const globalClient = useGlobalApolloClient();\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<Error | null>(null);\n\n const toggle = useCallback(\n async (\n id: string,\n notificationsEnabled: boolean\n ): Promise<UserPlatformConnectionData | null> => {\n setLoading(true);\n setError(null);\n try {\n const result = await globalClient.mutate<\n UpdateUserPlatformConnectionNotificationsMutation,\n UpdateUserPlatformConnectionNotificationsMutationVariables\n >({\n mutation: UpdateUserPlatformConnectionNotificationsDocument,\n variables: { id, notificationsEnabled },\n });\n return (\n (result.data?.updateUserPlatformConnectionNotifications as\n | UserPlatformConnectionData\n | null\n | undefined) ?? null\n );\n } catch (err) {\n setError(err as Error);\n return null;\n } finally {\n setLoading(false);\n }\n },\n [globalClient]\n );\n\n return { toggle, loading, error };\n}\n\n// ============================================================================\n// Hook: useRevokeSlackConnection\n// ============================================================================\n\ninterface UseRevokeSlackConnectionResult {\n revoke: (id: string) => Promise<boolean>;\n loading: boolean;\n error: Error | null;\n}\n\nexport function useRevokeSlackConnection(): UseRevokeSlackConnectionResult {\n const globalClient = useGlobalApolloClient();\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<Error | null>(null);\n\n const revoke = useCallback(\n async (id: string): Promise<boolean> => {\n setLoading(true);\n setError(null);\n try {\n const result = await globalClient.mutate<\n RevokeUserPlatformConnectionMutation,\n RevokeUserPlatformConnectionMutationVariables\n >({\n mutation: RevokeUserPlatformConnectionDocument,\n variables: { id },\n });\n return result.data?.revokeUserPlatformConnection?.dmAllowed === false;\n } catch (err) {\n setError(err as Error);\n return false;\n } finally {\n setLoading(false);\n }\n },\n [globalClient]\n );\n\n return { revoke, loading, error };\n}\n\n// ============================================================================\n// Hook: useCompleteSlackConnect\n// DEPRECATED: OAuth now handled by integrations UI\n// After integrations OAuth completes, use useLinkIntegrationConnection instead\n// ============================================================================\n\ninterface UseCompleteSlackConnectResult {\n complete: (code: string, state: string) => Promise<UserPlatformConnectionData | null>;\n loading: boolean;\n error: Error | null;\n}\n\n/**\n * @deprecated OAuth is now handled by integrations UI. Use useLinkIntegrationConnection instead.\n */\nexport function useCompleteSlackConnect(): UseCompleteSlackConnectResult {\n const [loading] = useState<boolean>(false);\n const [error] = useState<Error | null>(null);\n\n const complete = useCallback(\n async (_code: string, _state: string): Promise<UserPlatformConnectionData | null> => {\n console.warn(\n 'useCompleteSlackConnect is deprecated. Use useLinkIntegrationConnection instead.'\n );\n return null;\n },\n []\n );\n\n return { complete, loading, error };\n}\n\n// ============================================================================\n// Hook: useLinkIntegrationConnection\n// Links a completed IntegrationConnection (from wspace-integrations-svc) to a\n// bot channel, creating/upserting a UserPlatformConnection on global-channel-svc.\n// Called by BotChannelsTab after the user returns from microfe-integrations with\n// ?integrationConnectionId=<id>&channelId=<id> in the URL.\n// Uses the generated LinkIntegrationConnectionDocument (schema-pulled + codegenned).\n// ============================================================================\n\ninterface UseLinkIntegrationConnectionResult {\n link: (\n integrationConnectionId: string,\n channelId: string\n ) => Promise<UserPlatformConnectionData | null>;\n loading: boolean;\n error: Error | null;\n}\n\nexport function useLinkIntegrationConnection(): UseLinkIntegrationConnectionResult {\n const globalClient = useGlobalApolloClient();\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<Error | null>(null);\n\n const link = useCallback(\n async (\n integrationConnectionId: string,\n channelId: string\n ): Promise<UserPlatformConnectionData | null> => {\n setLoading(true);\n setError(null);\n try {\n const result = await globalClient.mutate<\n LinkIntegrationConnectionMutation,\n LinkIntegrationConnectionMutationVariables\n >({\n mutation: LinkIntegrationConnectionDocument,\n variables: { integrationConnectionId, channelId },\n });\n return (\n (result.data?.linkIntegrationConnection as\n | UserPlatformConnectionData\n | null\n | undefined) ?? null\n );\n } catch (err) {\n setError(err as Error);\n return null;\n } finally {\n setLoading(false);\n }\n },\n [globalClient]\n );\n\n return { link, loading, error };\n}\n\n// ============================================================================\n// GQL document: getChannels (queried directly — no codegen needed)\n// ============================================================================\n\nconst GetChannelsDocument = gql`\n query GetChannels($filter: ChannelFilterInput, $pagination: ChannelPaginationInput) {\n getChannels(filter: $filter, pagination: $pagination) {\n items {\n id\n name\n platform\n adapterType\n channelType\n status\n isConnected\n description\n priority\n connectionHealth\n }\n total\n hasMore\n }\n }\n`;\n\n// ============================================================================\n// Exported types: GlobalChannelData\n// ============================================================================\n\nexport interface GlobalChannelData {\n id: string;\n name: string;\n platform: ChannelPlatform;\n adapterType: AdapterType | null;\n channelType: ChannelType;\n status: ChannelStatus;\n isConnected: boolean;\n description?: string | null;\n priority: number;\n connectionHealth: string;\n}\n\ninterface GetChannelsQueryResult {\n getChannels: {\n items: GlobalChannelData[];\n total: number;\n hasMore: boolean;\n };\n}\n\n// ============================================================================\n// Hook: useGlobalChannels\n// Fetches all ACTIVE channels from global-channel-svc via the global GraphQL gateway\n// ============================================================================\n\ninterface UseGlobalChannelsResult {\n data: GlobalChannelData[];\n loading: boolean;\n error: Error | null;\n refetch: () => Promise<void>;\n}\n\n/** Bot channels are the COMMUNICATION ones; the rest are not addressable here. */\nconst DEFAULT_CHANNEL_FILTER: ChannelFilterInput = {\n channelType: GlobalChannelType.Communication,\n};\nconst DEFAULT_CHANNEL_PAGINATION: ChannelPaginationInput = { offset: 0, limit: 50 };\n\nexport function useGlobalChannels(\n filter?: ChannelFilterInput,\n pagination?: ChannelPaginationInput\n): UseGlobalChannelsResult {\n const globalClient = useGlobalApolloClient();\n\n const [data, setData] = useState<GlobalChannelData[]>([]);\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<Error | null>(null);\n\n // Stable references so useCallback doesn't re-create on every render. The\n // defaults are module constants, so an omitted argument yields the same\n // object every render without hiding the argument from the dependency list.\n const stableFilter = useMemo(() => filter ?? DEFAULT_CHANNEL_FILTER, [filter]);\n const stablePagination = useMemo(() => pagination ?? DEFAULT_CHANNEL_PAGINATION, [pagination]);\n\n const fetch = useCallback(async () => {\n setLoading(true);\n setError(null);\n try {\n const result = await globalClient.query<GetChannelsQueryResult>({\n query: GetChannelsDocument,\n variables: { filter: stableFilter, pagination: stablePagination },\n fetchPolicy: 'network-only',\n });\n setData(result.data?.getChannels?.items ?? []);\n } catch (err) {\n setError(err as Error);\n } finally {\n setLoading(false);\n }\n }, [globalClient, stableFilter, stablePagination]);\n\n useEffect(() => {\n fetch();\n }, [fetch]);\n\n return { data, loading, error, refetch: fetch };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useUserPlatformConnection.js","names":["GlobalChannelType","useGlobalApolloClient","useGatewayClient","useMyUserPlatformConnection","globalClient","data","setData","useState","loading","setLoading","error","setError","fetch","useCallback","channelId","result","MyUserPlatformConnectionDocument","err","useEffect","useInitiateSlackConnect","integrationsUrl","redirectUri","useToggleSlackNotifications","UpdateUserPlatformConnectionNotificationsDocument","useRevokeSlackConnection","RevokeUserPlatformConnectionDocument","useLinkIntegrationConnection","LinkIntegrationConnectionDocument","GetChannelsDocument","DEFAULT_CHANNEL_FILTER","ChannelType","DEFAULT_CHANNEL_PAGINATION","useGlobalChannels","stableFilter","useMemo","filter","stablePagination","pagination"],"sources":["../../../src/botlit/hooks/useUserPlatformConnection.ts"],"sourcesContent":["/**\n * UserPlatformConnection Hooks\n * Phase 7: Slack personal account connect for channel users\n * @module botlit/hooks\n */\n\nimport { useState, useEffect, useCallback, useMemo } from 'react';\nimport { gql, type ApolloClient } from '@apollo/client';\nimport { useGatewayClient } from '@burdenoff/fe-libs/shared/graphql';\nimport {\n MyUserPlatformConnectionDocument,\n UpdateUserPlatformConnectionNotificationsDocument,\n RevokeUserPlatformConnectionDocument,\n LinkIntegrationConnectionDocument,\n} from '../../generated/global-operations';\nimport type {\n MyUserPlatformConnectionQuery,\n MyUserPlatformConnectionQueryVariables,\n UpdateUserPlatformConnectionNotificationsMutation,\n UpdateUserPlatformConnectionNotificationsMutationVariables,\n RevokeUserPlatformConnectionMutation,\n RevokeUserPlatformConnectionMutationVariables,\n LinkIntegrationConnectionMutation,\n LinkIntegrationConnectionMutationVariables,\n} from '../../generated/global-operations';\nimport type {\n ChannelPlatform,\n ChannelStatus,\n AdapterType,\n ChannelFilterInput,\n ChannelPaginationInput,\n} from '../../generated/global-types';\n// Value import: `channelType` on the filter is the generated enum, not the\n// local display-only `ChannelType` alias declared below.\nimport { ChannelType as GlobalChannelType } from '../../generated/global-types';\n\n// BOFF-1866 resolved: linkIntegrationConnection is published on global-channel-svc and\n// already codegen'd (see src/operations/global/channel/user-platform-connection.graphql).\n// Use the generated document/types instead of a hand-rolled one — the previous inline\n// gql selected a non-existent `success` field on UserPlatformConnection, which always\n// failed GraphQL validation server-side (BOFF-4691).\n\ntype ChannelType = string;\n\n// ============================================================================\n// Internal: global gateway client\n//\n// BOFF-5428: this module used to build its own ApolloClient defaulting to the\n// local-dev global gateway (port 4000) whenever the shell did not pass a\n// `globalApiGatewayUrl` prop — which it never did, so production shipped every\n// call to the caller's own machine. The shell already installs a configured\n// global-gateway client (correct URL, `x-workspace-id`, auth refresh + retry),\n// so use that and only that. Do NOT reintroduce a bespoke client or a\n// hardcoded gateway host here.\n// ============================================================================\n\nfunction useGlobalApolloClient(): ApolloClient {\n return useGatewayClient('global');\n}\n\n// ============================================================================\n// Exported types\n// ============================================================================\n\nexport interface UserPlatformConnectionData {\n id: string;\n channelId: string;\n platform: string;\n externalUserId: string;\n externalUsername?: string | null;\n externalDisplayName?: string | null;\n dmAllowed: boolean;\n notificationsEnabled: boolean;\n connectedAt?: string | null;\n canReceiveDm: boolean;\n isTokenExpired: boolean;\n userTokenExpiresAt?: string | null;\n integrationConnectionId?: string | null;\n}\n\n// ============================================================================\n// Hook: useMyUserPlatformConnection\n// ============================================================================\n\ninterface UseMyUserPlatformConnectionResult {\n data: UserPlatformConnectionData | null;\n loading: boolean;\n error: Error | null;\n refetch: () => Promise<void>;\n}\n\nexport function useMyUserPlatformConnection(\n channelId: string | undefined\n): UseMyUserPlatformConnectionResult {\n const globalClient = useGlobalApolloClient();\n\n const [data, setData] = useState<UserPlatformConnectionData | null>(null);\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<Error | null>(null);\n\n const fetch = useCallback(async () => {\n if (!channelId) {\n setData(null);\n setLoading(false);\n setError(null);\n return;\n }\n setLoading(true);\n setError(null);\n try {\n const result = await globalClient.query<\n MyUserPlatformConnectionQuery,\n MyUserPlatformConnectionQueryVariables\n >({\n query: MyUserPlatformConnectionDocument,\n variables: { channelId },\n fetchPolicy: 'network-only',\n });\n setData(\n (result.data?.myUserPlatformConnection as UserPlatformConnectionData | null | undefined) ??\n null\n );\n } catch (err) {\n setError(err as Error);\n } finally {\n setLoading(false);\n }\n }, [channelId, globalClient]);\n\n useEffect(() => {\n fetch();\n }, [fetch]);\n\n return { data, loading, error, refetch: fetch };\n}\n\n// ============================================================================\n// Hook: useInitiateSlackConnect\n// DEPRECATED: Use integrations UI flow instead\n// Redirect user to: /integrations/connections?provider=slack-user&returnUrl=<current-page>&channelId=<channel-id>\n// After OAuth completes, integrations will redirect back with ?integrationConnectionId=<id>\n// Then call useLinkIntegrationConnection to link the connection to the channel\n// ============================================================================\n\ninterface UseInitiateSlackConnectResult {\n initiate: (channelId: string, redirectUri: string) => void;\n loading: boolean;\n error: Error | null;\n}\n\n/**\n * @deprecated Use integrations UI OAuth flow + useLinkIntegrationConnection instead\n */\nexport function useInitiateSlackConnect(): UseInitiateSlackConnectResult {\n const [loading] = useState<boolean>(false);\n const [error] = useState<Error | null>(null);\n\n const initiate = useCallback((channelId: string, redirectUri: string): void => {\n // Construct integrations URL with return parameters\n const integrationsUrl = new URL('/integrations/connections', window.location.origin);\n integrationsUrl.searchParams.set('provider', 'slack-user');\n integrationsUrl.searchParams.set('returnUrl', redirectUri);\n integrationsUrl.searchParams.set('channelId', channelId);\n\n // Redirect to integrations UI\n window.location.href = integrationsUrl.toString();\n }, []);\n\n return { initiate, loading, error };\n}\n\n// ============================================================================\n// Hook: useToggleSlackNotifications\n// ============================================================================\n\ninterface UseToggleSlackNotificationsResult {\n toggle: (id: string, notificationsEnabled: boolean) => Promise<UserPlatformConnectionData | null>;\n loading: boolean;\n error: Error | null;\n}\n\nexport function useToggleSlackNotifications(): UseToggleSlackNotificationsResult {\n const globalClient = useGlobalApolloClient();\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<Error | null>(null);\n\n const toggle = useCallback(\n async (\n id: string,\n notificationsEnabled: boolean\n ): Promise<UserPlatformConnectionData | null> => {\n setLoading(true);\n setError(null);\n try {\n const result = await globalClient.mutate<\n UpdateUserPlatformConnectionNotificationsMutation,\n UpdateUserPlatformConnectionNotificationsMutationVariables\n >({\n mutation: UpdateUserPlatformConnectionNotificationsDocument,\n variables: { id, notificationsEnabled },\n });\n return (\n (result.data?.updateUserPlatformConnectionNotifications as\n UserPlatformConnectionData | null | undefined) ?? null\n );\n } catch (err) {\n setError(err as Error);\n return null;\n } finally {\n setLoading(false);\n }\n },\n [globalClient]\n );\n\n return { toggle, loading, error };\n}\n\n// ============================================================================\n// Hook: useRevokeSlackConnection\n// ============================================================================\n\ninterface UseRevokeSlackConnectionResult {\n revoke: (id: string) => Promise<boolean>;\n loading: boolean;\n error: Error | null;\n}\n\nexport function useRevokeSlackConnection(): UseRevokeSlackConnectionResult {\n const globalClient = useGlobalApolloClient();\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<Error | null>(null);\n\n const revoke = useCallback(\n async (id: string): Promise<boolean> => {\n setLoading(true);\n setError(null);\n try {\n const result = await globalClient.mutate<\n RevokeUserPlatformConnectionMutation,\n RevokeUserPlatformConnectionMutationVariables\n >({\n mutation: RevokeUserPlatformConnectionDocument,\n variables: { id },\n });\n return result.data?.revokeUserPlatformConnection?.dmAllowed === false;\n } catch (err) {\n setError(err as Error);\n return false;\n } finally {\n setLoading(false);\n }\n },\n [globalClient]\n );\n\n return { revoke, loading, error };\n}\n\n// ============================================================================\n// Hook: useCompleteSlackConnect\n// DEPRECATED: OAuth now handled by integrations UI\n// After integrations OAuth completes, use useLinkIntegrationConnection instead\n// ============================================================================\n\ninterface UseCompleteSlackConnectResult {\n complete: (code: string, state: string) => Promise<UserPlatformConnectionData | null>;\n loading: boolean;\n error: Error | null;\n}\n\n/**\n * @deprecated OAuth is now handled by integrations UI. Use useLinkIntegrationConnection instead.\n */\nexport function useCompleteSlackConnect(): UseCompleteSlackConnectResult {\n const [loading] = useState<boolean>(false);\n const [error] = useState<Error | null>(null);\n\n const complete = useCallback(\n async (_code: string, _state: string): Promise<UserPlatformConnectionData | null> => {\n console.warn(\n 'useCompleteSlackConnect is deprecated. Use useLinkIntegrationConnection instead.'\n );\n return null;\n },\n []\n );\n\n return { complete, loading, error };\n}\n\n// ============================================================================\n// Hook: useLinkIntegrationConnection\n// Links a completed IntegrationConnection (from wspace-integrations-svc) to a\n// bot channel, creating/upserting a UserPlatformConnection on global-channel-svc.\n// Called by BotChannelsTab after the user returns from microfe-integrations with\n// ?integrationConnectionId=<id>&channelId=<id> in the URL.\n// Uses the generated LinkIntegrationConnectionDocument (schema-pulled + codegenned).\n// ============================================================================\n\ninterface UseLinkIntegrationConnectionResult {\n link: (\n integrationConnectionId: string,\n channelId: string\n ) => Promise<UserPlatformConnectionData | null>;\n loading: boolean;\n error: Error | null;\n}\n\nexport function useLinkIntegrationConnection(): UseLinkIntegrationConnectionResult {\n const globalClient = useGlobalApolloClient();\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<Error | null>(null);\n\n const link = useCallback(\n async (\n integrationConnectionId: string,\n channelId: string\n ): Promise<UserPlatformConnectionData | null> => {\n setLoading(true);\n setError(null);\n try {\n const result = await globalClient.mutate<\n LinkIntegrationConnectionMutation,\n LinkIntegrationConnectionMutationVariables\n >({\n mutation: LinkIntegrationConnectionDocument,\n variables: { integrationConnectionId, channelId },\n });\n return (\n (result.data?.linkIntegrationConnection as\n UserPlatformConnectionData | null | undefined) ?? null\n );\n } catch (err) {\n setError(err as Error);\n return null;\n } finally {\n setLoading(false);\n }\n },\n [globalClient]\n );\n\n return { link, loading, error };\n}\n\n// ============================================================================\n// GQL document: getChannels (queried directly — no codegen needed)\n// ============================================================================\n\nconst GetChannelsDocument = gql`\n query GetChannels($filter: ChannelFilterInput, $pagination: ChannelPaginationInput) {\n getChannels(filter: $filter, pagination: $pagination) {\n items {\n id\n name\n platform\n adapterType\n channelType\n status\n isConnected\n description\n priority\n connectionHealth\n }\n total\n hasMore\n }\n }\n`;\n\n// ============================================================================\n// Exported types: GlobalChannelData\n// ============================================================================\n\nexport interface GlobalChannelData {\n id: string;\n name: string;\n platform: ChannelPlatform;\n adapterType: AdapterType | null;\n channelType: ChannelType;\n status: ChannelStatus;\n isConnected: boolean;\n description?: string | null;\n priority: number;\n connectionHealth: string;\n}\n\ninterface GetChannelsQueryResult {\n getChannels: {\n items: GlobalChannelData[];\n total: number;\n hasMore: boolean;\n };\n}\n\n// ============================================================================\n// Hook: useGlobalChannels\n// Fetches all ACTIVE channels from global-channel-svc via the global GraphQL gateway\n// ============================================================================\n\ninterface UseGlobalChannelsResult {\n data: GlobalChannelData[];\n loading: boolean;\n error: Error | null;\n refetch: () => Promise<void>;\n}\n\n/** Bot channels are the COMMUNICATION ones; the rest are not addressable here. */\nconst DEFAULT_CHANNEL_FILTER: ChannelFilterInput = {\n channelType: GlobalChannelType.Communication,\n};\nconst DEFAULT_CHANNEL_PAGINATION: ChannelPaginationInput = { offset: 0, limit: 50 };\n\nexport function useGlobalChannels(\n filter?: ChannelFilterInput,\n pagination?: ChannelPaginationInput\n): UseGlobalChannelsResult {\n const globalClient = useGlobalApolloClient();\n\n const [data, setData] = useState<GlobalChannelData[]>([]);\n const [loading, setLoading] = useState<boolean>(false);\n const [error, setError] = useState<Error | null>(null);\n\n // Stable references so useCallback doesn't re-create on every render. The\n // defaults are module constants, so an omitted argument yields the same\n // object every render without hiding the argument from the dependency list.\n const stableFilter = useMemo(() => filter ?? DEFAULT_CHANNEL_FILTER, [filter]);\n const stablePagination = useMemo(() => pagination ?? DEFAULT_CHANNEL_PAGINATION, [pagination]);\n\n const fetch = useCallback(async () => {\n setLoading(true);\n setError(null);\n try {\n const result = await globalClient.query<GetChannelsQueryResult>({\n query: GetChannelsDocument,\n variables: { filter: stableFilter, pagination: stablePagination },\n fetchPolicy: 'network-only',\n });\n setData(result.data?.getChannels?.items ?? []);\n } catch (err) {\n setError(err as Error);\n } finally {\n setLoading(false);\n }\n }, [globalClient, stableFilter, stablePagination]);\n\n useEffect(() => {\n fetch();\n }, [fetch]);\n\n return { data, loading, error, refetch: fetch };\n}\n"],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * BotManor Module Exports
3
+ * @module botlit
4
+ */
5
+ export { BotmanorRoot } from './BotmanorRoot';
6
+ export type { BotmanorRootProps, Bot, BotSummary, Agent, AgentSummary, KnowledgeBase, KnowledgeBaseSummary, Conversation, Message, LLMProvider, MCPServer, MCPTool, PromptTemplate, Execution, ExecutionSummary, UsageMetrics, EntityStatus, MessageRole, LLMProviderType, ViewMode, } from './types';
7
+ export { BotlitProvider, useBotlit } from './providers/BotlitProvider';
8
+ export { useBotlitStore } from './store/botlitStore';
9
+ export { useBots, useBot, useCreateBot, useUpdateBot, useDeleteBot } from './hooks/useBots';
10
+ export { useAgents, useAgent, useCreateAgent, useUpdateAgent, useDeleteAgent, } from './hooks/useAgents';
11
+ export { useKnowledgeBases, useKnowledgeBase, useKnowledgeDocuments, useCreateKnowledgeBase, } from './hooks/useKnowledgeBases';
12
+ export { useLLMProviders, useConfigureLLMProvider } from './hooks/useLLMProviders';
13
+ export { useMCPServers, useCreateMCPServer } from './hooks/useMCPServers';
14
+ export { cn } from './utils/cn';
15
+ export { formatDate, formatRelativeTime } from './utils/formatters';
@@ -1,11 +1,11 @@
1
- import "./BotmanorRoot.js";
2
- import "./providers/BotlitProvider.js";
3
- import "./store/botlitStore.js";
4
- import "./hooks/useBots.js";
5
- import "./hooks/useAgents.js";
6
- import "./hooks/useKnowledgeBases.js";
7
- import "./hooks/useConversations.js";
8
- import "./hooks/useLLMProviders.js";
9
- import "./hooks/useMCPServers.js";
10
- import "./utils/cn.js";
11
- import "./utils/formatters.js";
1
+ import { BotmanorRoot as e } from "./BotmanorRoot.js";
2
+ import { BotlitProvider as t, useBotlit as n } from "./providers/BotlitProvider.js";
3
+ import { useBotlitStore as r } from "./store/botlitStore.js";
4
+ import { useBot as i, useBots as a, useCreateBot as o, useDeleteBot as s, useUpdateBot as c } from "./hooks/useBots.js";
5
+ import { useAgent as l, useAgents as u, useCreateAgent as d, useDeleteAgent as f, useUpdateAgent as p } from "./hooks/useAgents.js";
6
+ import { useCreateKnowledgeBase as m, useKnowledgeBase as h, useKnowledgeBases as g, useKnowledgeDocuments as _ } from "./hooks/useKnowledgeBases.js";
7
+ import { useConfigureLLMProvider as v, useLLMProviders as y } from "./hooks/useLLMProviders.js";
8
+ import { useCreateMCPServer as b, useMCPServers as x } from "./hooks/useMCPServers.js";
9
+ import { cn as S } from "./utils/cn.js";
10
+ import { formatDate as C, formatRelativeTime as w } from "./utils/formatters.js";
11
+ export { t as BotlitProvider, e as BotmanorRoot, S as cn, C as formatDate, w as formatRelativeTime, l as useAgent, u as useAgents, i as useBot, n as useBotlit, r as useBotlitStore, a as useBots, v as useConfigureLLMProvider, d as useCreateAgent, o as useCreateBot, m as useCreateKnowledgeBase, b as useCreateMCPServer, f as useDeleteAgent, s as useDeleteBot, h as useKnowledgeBase, g as useKnowledgeBases, _ as useKnowledgeDocuments, y as useLLMProviders, x as useMCPServers, p as useUpdateAgent, c as useUpdateBot };
@@ -0,0 +1,6 @@
1
+ import { FC } from 'react';
2
+ interface A2AAgentDetailPageProps {
3
+ isNew?: boolean;
4
+ }
5
+ export declare const A2AAgentDetailPage: FC<A2AAgentDetailPageProps>;
6
+ export {};