@data-club/ai-hub 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (344) hide show
  1. package/dist/auth/passwordPolicy.d.ts +55 -0
  2. package/dist/auth/passwordPolicy.d.ts.map +1 -0
  3. package/dist/auth/passwordPolicy.js +63 -0
  4. package/dist/auth/passwordPolicy.js.map +1 -0
  5. package/dist/auth/texts.d.ts +815 -0
  6. package/dist/auth/texts.d.ts.map +1 -0
  7. package/dist/auth/texts.js +429 -0
  8. package/dist/auth/texts.js.map +1 -0
  9. package/dist/client/AIHubClient.d.ts +1058 -0
  10. package/dist/client/AIHubClient.d.ts.map +1 -0
  11. package/dist/client/AIHubClient.js +950 -0
  12. package/dist/client/AIHubClient.js.map +1 -0
  13. package/dist/client/index.d.ts +11 -0
  14. package/dist/client/index.d.ts.map +1 -0
  15. package/dist/client/index.js +9 -0
  16. package/dist/client/index.js.map +1 -0
  17. package/dist/client/sseParser.d.ts +41 -0
  18. package/dist/client/sseParser.d.ts.map +1 -0
  19. package/dist/client/sseParser.js +153 -0
  20. package/dist/client/sseParser.js.map +1 -0
  21. package/dist/client/tokenStorage.d.ts +56 -0
  22. package/dist/client/tokenStorage.d.ts.map +1 -0
  23. package/dist/client/tokenStorage.js +116 -0
  24. package/dist/client/tokenStorage.js.map +1 -0
  25. package/dist/components/AgentsPicker/index.d.ts +70 -0
  26. package/dist/components/AgentsPicker/index.d.ts.map +1 -0
  27. package/dist/components/AgentsPicker/index.js +63 -0
  28. package/dist/components/AgentsPicker/index.js.map +1 -0
  29. package/dist/components/AuthGate/index.d.ts +79 -0
  30. package/dist/components/AuthGate/index.d.ts.map +1 -0
  31. package/dist/components/AuthGate/index.js +61 -0
  32. package/dist/components/AuthGate/index.js.map +1 -0
  33. package/dist/components/CacheBadge/index.d.ts +88 -0
  34. package/dist/components/CacheBadge/index.d.ts.map +1 -0
  35. package/dist/components/CacheBadge/index.js +127 -0
  36. package/dist/components/CacheBadge/index.js.map +1 -0
  37. package/dist/components/ChangePassword/index.d.ts +109 -0
  38. package/dist/components/ChangePassword/index.d.ts.map +1 -0
  39. package/dist/components/ChangePassword/index.js +142 -0
  40. package/dist/components/ChangePassword/index.js.map +1 -0
  41. package/dist/components/ChatShell/ShellHeader.d.ts +44 -0
  42. package/dist/components/ChatShell/ShellHeader.d.ts.map +1 -0
  43. package/dist/components/ChatShell/ShellHeader.js +14 -0
  44. package/dist/components/ChatShell/ShellHeader.js.map +1 -0
  45. package/dist/components/ChatShell/UserMenu.d.ts +48 -0
  46. package/dist/components/ChatShell/UserMenu.d.ts.map +1 -0
  47. package/dist/components/ChatShell/UserMenu.js +86 -0
  48. package/dist/components/ChatShell/UserMenu.js.map +1 -0
  49. package/dist/components/ChatShell/index.d.ts +98 -0
  50. package/dist/components/ChatShell/index.d.ts.map +1 -0
  51. package/dist/components/ChatShell/index.js +124 -0
  52. package/dist/components/ChatShell/index.js.map +1 -0
  53. package/dist/components/DataClubAIHub/index.d.ts +132 -0
  54. package/dist/components/DataClubAIHub/index.d.ts.map +1 -0
  55. package/dist/components/DataClubAIHub/index.js +124 -0
  56. package/dist/components/DataClubAIHub/index.js.map +1 -0
  57. package/dist/components/DataClubAIHubAdmin/AgentEditorModal.d.ts +89 -0
  58. package/dist/components/DataClubAIHubAdmin/AgentEditorModal.d.ts.map +1 -0
  59. package/dist/components/DataClubAIHubAdmin/AgentEditorModal.js +199 -0
  60. package/dist/components/DataClubAIHubAdmin/AgentEditorModal.js.map +1 -0
  61. package/dist/components/DataClubAIHubAdmin/AgentsPage.d.ts +33 -0
  62. package/dist/components/DataClubAIHubAdmin/AgentsPage.d.ts.map +1 -0
  63. package/dist/components/DataClubAIHubAdmin/AgentsPage.js +137 -0
  64. package/dist/components/DataClubAIHubAdmin/AgentsPage.js.map +1 -0
  65. package/dist/components/DataClubAIHubAdmin/CreateUserModal.d.ts +50 -0
  66. package/dist/components/DataClubAIHubAdmin/CreateUserModal.d.ts.map +1 -0
  67. package/dist/components/DataClubAIHubAdmin/CreateUserModal.js +93 -0
  68. package/dist/components/DataClubAIHubAdmin/CreateUserModal.js.map +1 -0
  69. package/dist/components/DataClubAIHubAdmin/PasswordRevealModal.d.ts +49 -0
  70. package/dist/components/DataClubAIHubAdmin/PasswordRevealModal.d.ts.map +1 -0
  71. package/dist/components/DataClubAIHubAdmin/PasswordRevealModal.js +94 -0
  72. package/dist/components/DataClubAIHubAdmin/PasswordRevealModal.js.map +1 -0
  73. package/dist/components/DataClubAIHubAdmin/ResetPasswordModal.d.ts +37 -0
  74. package/dist/components/DataClubAIHubAdmin/ResetPasswordModal.d.ts.map +1 -0
  75. package/dist/components/DataClubAIHubAdmin/ResetPasswordModal.js +44 -0
  76. package/dist/components/DataClubAIHubAdmin/ResetPasswordModal.js.map +1 -0
  77. package/dist/components/DataClubAIHubAdmin/RotatingMessageEditorModal.d.ts +56 -0
  78. package/dist/components/DataClubAIHubAdmin/RotatingMessageEditorModal.d.ts.map +1 -0
  79. package/dist/components/DataClubAIHubAdmin/RotatingMessageEditorModal.js +158 -0
  80. package/dist/components/DataClubAIHubAdmin/RotatingMessageEditorModal.js.map +1 -0
  81. package/dist/components/DataClubAIHubAdmin/RotatingMessagesPage.d.ts +29 -0
  82. package/dist/components/DataClubAIHubAdmin/RotatingMessagesPage.d.ts.map +1 -0
  83. package/dist/components/DataClubAIHubAdmin/RotatingMessagesPage.js +183 -0
  84. package/dist/components/DataClubAIHubAdmin/RotatingMessagesPage.js.map +1 -0
  85. package/dist/components/DataClubAIHubAdmin/SessionsOverviewPage.d.ts +38 -0
  86. package/dist/components/DataClubAIHubAdmin/SessionsOverviewPage.d.ts.map +1 -0
  87. package/dist/components/DataClubAIHubAdmin/SessionsOverviewPage.js +294 -0
  88. package/dist/components/DataClubAIHubAdmin/SessionsOverviewPage.js.map +1 -0
  89. package/dist/components/DataClubAIHubAdmin/SettingsPage.d.ts +36 -0
  90. package/dist/components/DataClubAIHubAdmin/SettingsPage.d.ts.map +1 -0
  91. package/dist/components/DataClubAIHubAdmin/SettingsPage.js +373 -0
  92. package/dist/components/DataClubAIHubAdmin/SettingsPage.js.map +1 -0
  93. package/dist/components/DataClubAIHubAdmin/UsersPage.d.ts +47 -0
  94. package/dist/components/DataClubAIHubAdmin/UsersPage.d.ts.map +1 -0
  95. package/dist/components/DataClubAIHubAdmin/UsersPage.js +233 -0
  96. package/dist/components/DataClubAIHubAdmin/UsersPage.js.map +1 -0
  97. package/dist/components/DataClubAIHubAdmin/index.d.ts +87 -0
  98. package/dist/components/DataClubAIHubAdmin/index.d.ts.map +1 -0
  99. package/dist/components/DataClubAIHubAdmin/index.js +137 -0
  100. package/dist/components/DataClubAIHubAdmin/index.js.map +1 -0
  101. package/dist/components/DataClubAIHubLogin/index.d.ts +113 -0
  102. package/dist/components/DataClubAIHubLogin/index.d.ts.map +1 -0
  103. package/dist/components/DataClubAIHubLogin/index.js +123 -0
  104. package/dist/components/DataClubAIHubLogin/index.js.map +1 -0
  105. package/dist/components/EffortControl/index.d.ts +57 -0
  106. package/dist/components/EffortControl/index.d.ts.map +1 -0
  107. package/dist/components/EffortControl/index.js +84 -0
  108. package/dist/components/EffortControl/index.js.map +1 -0
  109. package/dist/components/Layout/index.d.ts +63 -0
  110. package/dist/components/Layout/index.d.ts.map +1 -0
  111. package/dist/components/Layout/index.js +45 -0
  112. package/dist/components/Layout/index.js.map +1 -0
  113. package/dist/components/MainColumn/index.d.ts +69 -0
  114. package/dist/components/MainColumn/index.d.ts.map +1 -0
  115. package/dist/components/MainColumn/index.js +47 -0
  116. package/dist/components/MainColumn/index.js.map +1 -0
  117. package/dist/components/MarkdownRenderer/index.d.ts +66 -0
  118. package/dist/components/MarkdownRenderer/index.d.ts.map +1 -0
  119. package/dist/components/MarkdownRenderer/index.js +153 -0
  120. package/dist/components/MarkdownRenderer/index.js.map +1 -0
  121. package/dist/components/MessageInput/index.d.ts +85 -0
  122. package/dist/components/MessageInput/index.d.ts.map +1 -0
  123. package/dist/components/MessageInput/index.js +139 -0
  124. package/dist/components/MessageInput/index.js.map +1 -0
  125. package/dist/components/MessageList/index.d.ts +156 -0
  126. package/dist/components/MessageList/index.d.ts.map +1 -0
  127. package/dist/components/MessageList/index.js +352 -0
  128. package/dist/components/MessageList/index.js.map +1 -0
  129. package/dist/components/ReasoningSelector/index.d.ts +77 -0
  130. package/dist/components/ReasoningSelector/index.d.ts.map +1 -0
  131. package/dist/components/ReasoningSelector/index.js +156 -0
  132. package/dist/components/ReasoningSelector/index.js.map +1 -0
  133. package/dist/components/ReasoningView/index.d.ts +94 -0
  134. package/dist/components/ReasoningView/index.d.ts.map +1 -0
  135. package/dist/components/ReasoningView/index.js +83 -0
  136. package/dist/components/ReasoningView/index.js.map +1 -0
  137. package/dist/components/ScrollToPresentButton/index.d.ts +54 -0
  138. package/dist/components/ScrollToPresentButton/index.d.ts.map +1 -0
  139. package/dist/components/ScrollToPresentButton/index.js +44 -0
  140. package/dist/components/ScrollToPresentButton/index.js.map +1 -0
  141. package/dist/components/SessionsPanel/SessionTitleModal.d.ts +79 -0
  142. package/dist/components/SessionsPanel/SessionTitleModal.d.ts.map +1 -0
  143. package/dist/components/SessionsPanel/SessionTitleModal.js +102 -0
  144. package/dist/components/SessionsPanel/SessionTitleModal.js.map +1 -0
  145. package/dist/components/SessionsPanel/index.d.ts +100 -0
  146. package/dist/components/SessionsPanel/index.d.ts.map +1 -0
  147. package/dist/components/SessionsPanel/index.js +176 -0
  148. package/dist/components/SessionsPanel/index.js.map +1 -0
  149. package/dist/components/SystemNotice/index.d.ts +66 -0
  150. package/dist/components/SystemNotice/index.d.ts.map +1 -0
  151. package/dist/components/SystemNotice/index.js +81 -0
  152. package/dist/components/SystemNotice/index.js.map +1 -0
  153. package/dist/components/ThemeSwitcher/index.d.ts +66 -0
  154. package/dist/components/ThemeSwitcher/index.d.ts.map +1 -0
  155. package/dist/components/ThemeSwitcher/index.js +73 -0
  156. package/dist/components/ThemeSwitcher/index.js.map +1 -0
  157. package/dist/components/ToolCallView/formatContent.d.ts +36 -0
  158. package/dist/components/ToolCallView/formatContent.d.ts.map +1 -0
  159. package/dist/components/ToolCallView/formatContent.js +53 -0
  160. package/dist/components/ToolCallView/formatContent.js.map +1 -0
  161. package/dist/components/ToolCallView/index.d.ts +120 -0
  162. package/dist/components/ToolCallView/index.d.ts.map +1 -0
  163. package/dist/components/ToolCallView/index.js +104 -0
  164. package/dist/components/ToolCallView/index.js.map +1 -0
  165. package/dist/components/TpmBanner/index.d.ts +53 -0
  166. package/dist/components/TpmBanner/index.d.ts.map +1 -0
  167. package/dist/components/TpmBanner/index.js +116 -0
  168. package/dist/components/TpmBanner/index.js.map +1 -0
  169. package/dist/components/TurnStatusIndicator/index.d.ts +77 -0
  170. package/dist/components/TurnStatusIndicator/index.d.ts.map +1 -0
  171. package/dist/components/TurnStatusIndicator/index.js +122 -0
  172. package/dist/components/TurnStatusIndicator/index.js.map +1 -0
  173. package/dist/components/internal/PasswordInput.d.ts +62 -0
  174. package/dist/components/internal/PasswordInput.d.ts.map +1 -0
  175. package/dist/components/internal/PasswordInput.js +42 -0
  176. package/dist/components/internal/PasswordInput.js.map +1 -0
  177. package/dist/context/AIHubContext.d.ts +220 -0
  178. package/dist/context/AIHubContext.d.ts.map +1 -0
  179. package/dist/context/AIHubContext.js +19 -0
  180. package/dist/context/AIHubContext.js.map +1 -0
  181. package/dist/context/AIHubProvider.d.ts +75 -0
  182. package/dist/context/AIHubProvider.d.ts.map +1 -0
  183. package/dist/context/AIHubProvider.js +954 -0
  184. package/dist/context/AIHubProvider.js.map +1 -0
  185. package/dist/context/index.d.ts +9 -0
  186. package/dist/context/index.d.ts.map +1 -0
  187. package/dist/context/index.js +9 -0
  188. package/dist/context/index.js.map +1 -0
  189. package/dist/context/theme.d.ts +43 -0
  190. package/dist/context/theme.d.ts.map +1 -0
  191. package/dist/context/theme.js +70 -0
  192. package/dist/context/theme.js.map +1 -0
  193. package/dist/context/useAIHub.d.ts +104 -0
  194. package/dist/context/useAIHub.d.ts.map +1 -0
  195. package/dist/context/useAIHub.js +63 -0
  196. package/dist/context/useAIHub.js.map +1 -0
  197. package/dist/context/useAIHubAuth.d.ts +44 -0
  198. package/dist/context/useAIHubAuth.d.ts.map +1 -0
  199. package/dist/context/useAIHubAuth.js +35 -0
  200. package/dist/context/useAIHubAuth.js.map +1 -0
  201. package/dist/index.d.ts +76 -0
  202. package/dist/index.d.ts.map +1 -0
  203. package/dist/index.js +57 -0
  204. package/dist/index.js.map +1 -0
  205. package/dist/primitives/index.d.ts +99 -0
  206. package/dist/primitives/index.d.ts.map +1 -0
  207. package/dist/primitives/index.js +97 -0
  208. package/dist/primitives/index.js.map +1 -0
  209. package/dist/state/affordances.d.ts +182 -0
  210. package/dist/state/affordances.d.ts.map +1 -0
  211. package/dist/state/affordances.js +189 -0
  212. package/dist/state/affordances.js.map +1 -0
  213. package/dist/state/stateReducer.d.ts +72 -0
  214. package/dist/state/stateReducer.d.ts.map +1 -0
  215. package/dist/state/stateReducer.js +122 -0
  216. package/dist/state/stateReducer.js.map +1 -0
  217. package/dist/stories/EffortControl.stories.d.ts +14 -0
  218. package/dist/stories/EffortControl.stories.d.ts.map +1 -0
  219. package/dist/stories/EffortControl.stories.js +43 -0
  220. package/dist/stories/EffortControl.stories.js.map +1 -0
  221. package/dist/stories/MarkdownRenderer.stories.d.ts +25 -0
  222. package/dist/stories/MarkdownRenderer.stories.d.ts.map +1 -0
  223. package/dist/stories/MarkdownRenderer.stories.js +178 -0
  224. package/dist/stories/MarkdownRenderer.stories.js.map +1 -0
  225. package/dist/stories/MessageBubble.stories.d.ts +21 -0
  226. package/dist/stories/MessageBubble.stories.d.ts.map +1 -0
  227. package/dist/stories/MessageBubble.stories.js +59 -0
  228. package/dist/stories/MessageBubble.stories.js.map +1 -0
  229. package/dist/stories/ReasoningView.stories.d.ts +18 -0
  230. package/dist/stories/ReasoningView.stories.d.ts.map +1 -0
  231. package/dist/stories/ReasoningView.stories.js +62 -0
  232. package/dist/stories/ReasoningView.stories.js.map +1 -0
  233. package/dist/stories/ScrollToPresentButton.stories.d.ts +18 -0
  234. package/dist/stories/ScrollToPresentButton.stories.d.ts.map +1 -0
  235. package/dist/stories/ScrollToPresentButton.stories.js +34 -0
  236. package/dist/stories/ScrollToPresentButton.stories.js.map +1 -0
  237. package/dist/stories/SystemNotice.stories.d.ts +17 -0
  238. package/dist/stories/SystemNotice.stories.d.ts.map +1 -0
  239. package/dist/stories/SystemNotice.stories.js +42 -0
  240. package/dist/stories/SystemNotice.stories.js.map +1 -0
  241. package/dist/stories/ThemeSwitcher.stories.d.ts +15 -0
  242. package/dist/stories/ThemeSwitcher.stories.d.ts.map +1 -0
  243. package/dist/stories/ThemeSwitcher.stories.js +35 -0
  244. package/dist/stories/ThemeSwitcher.stories.js.map +1 -0
  245. package/dist/stories/ToolCallView.stories.d.ts +20 -0
  246. package/dist/stories/ToolCallView.stories.d.ts.map +1 -0
  247. package/dist/stories/ToolCallView.stories.js +65 -0
  248. package/dist/stories/ToolCallView.stories.js.map +1 -0
  249. package/dist/stories/TpmBanner.stories.d.ts +24 -0
  250. package/dist/stories/TpmBanner.stories.d.ts.map +1 -0
  251. package/dist/stories/TpmBanner.stories.js +63 -0
  252. package/dist/stories/TpmBanner.stories.js.map +1 -0
  253. package/dist/stories/TurnStatusIndicator.stories.d.ts +25 -0
  254. package/dist/stories/TurnStatusIndicator.stories.d.ts.map +1 -0
  255. package/dist/stories/TurnStatusIndicator.stories.js +56 -0
  256. package/dist/stories/TurnStatusIndicator.stories.js.map +1 -0
  257. package/dist/stories/_mockProvider.d.ts +44 -0
  258. package/dist/stories/_mockProvider.d.ts.map +1 -0
  259. package/dist/stories/_mockProvider.js +84 -0
  260. package/dist/stories/_mockProvider.js.map +1 -0
  261. package/dist/types.d.ts +787 -0
  262. package/dist/types.d.ts.map +1 -0
  263. package/dist/types.js +19 -0
  264. package/dist/types.js.map +1 -0
  265. package/dist/webcomponent/defineWebComponent.d.ts +106 -0
  266. package/dist/webcomponent/defineWebComponent.d.ts.map +1 -0
  267. package/dist/webcomponent/defineWebComponent.js +126 -0
  268. package/dist/webcomponent/defineWebComponent.js.map +1 -0
  269. package/dist/webcomponent/index.d.ts +7 -0
  270. package/dist/webcomponent/index.d.ts.map +1 -0
  271. package/dist/webcomponent/index.js +7 -0
  272. package/dist/webcomponent/index.js.map +1 -0
  273. package/package.json +63 -0
  274. package/src/__lint-canary__/step1-lint-canary.ts.disabled +28 -0
  275. package/src/auth/passwordPolicy.ts +75 -0
  276. package/src/auth/texts.ts +1294 -0
  277. package/src/client/AIHubClient.ts +1718 -0
  278. package/src/client/index.ts +30 -0
  279. package/src/client/sseParser.ts +168 -0
  280. package/src/client/tokenStorage.ts +131 -0
  281. package/src/components/AgentsPicker/index.tsx +147 -0
  282. package/src/components/AuthGate/index.tsx +132 -0
  283. package/src/components/CacheBadge/index.tsx +245 -0
  284. package/src/components/ChangePassword/index.tsx +375 -0
  285. package/src/components/ChatShell/ShellHeader.tsx +80 -0
  286. package/src/components/ChatShell/UserMenu.tsx +196 -0
  287. package/src/components/ChatShell/index.tsx +307 -0
  288. package/src/components/DataClubAIHub/index.tsx +300 -0
  289. package/src/components/DataClubAIHubAdmin/AgentEditorModal.tsx +505 -0
  290. package/src/components/DataClubAIHubAdmin/AgentsPage.tsx +342 -0
  291. package/src/components/DataClubAIHubAdmin/CreateUserModal.tsx +214 -0
  292. package/src/components/DataClubAIHubAdmin/PasswordRevealModal.tsx +204 -0
  293. package/src/components/DataClubAIHubAdmin/ResetPasswordModal.tsx +122 -0
  294. package/src/components/DataClubAIHubAdmin/RotatingMessageEditorModal.tsx +408 -0
  295. package/src/components/DataClubAIHubAdmin/RotatingMessagesPage.tsx +373 -0
  296. package/src/components/DataClubAIHubAdmin/SessionsOverviewPage.tsx +639 -0
  297. package/src/components/DataClubAIHubAdmin/SettingsPage.tsx +979 -0
  298. package/src/components/DataClubAIHubAdmin/UsersPage.tsx +495 -0
  299. package/src/components/DataClubAIHubAdmin/index.tsx +277 -0
  300. package/src/components/DataClubAIHubLogin/index.tsx +282 -0
  301. package/src/components/EffortControl/index.tsx +138 -0
  302. package/src/components/Layout/index.tsx +92 -0
  303. package/src/components/MainColumn/index.tsx +131 -0
  304. package/src/components/MarkdownRenderer/index.tsx +256 -0
  305. package/src/components/MessageInput/index.tsx +283 -0
  306. package/src/components/MessageList/index.tsx +753 -0
  307. package/src/components/ReasoningSelector/index.tsx +268 -0
  308. package/src/components/ReasoningView/index.tsx +183 -0
  309. package/src/components/ScrollToPresentButton/index.tsx +85 -0
  310. package/src/components/SessionsPanel/SessionTitleModal.tsx +256 -0
  311. package/src/components/SessionsPanel/index.tsx +406 -0
  312. package/src/components/SystemNotice/index.tsx +151 -0
  313. package/src/components/ThemeSwitcher/index.tsx +136 -0
  314. package/src/components/ToolCallView/formatContent.ts +50 -0
  315. package/src/components/ToolCallView/index.tsx +274 -0
  316. package/src/components/TpmBanner/index.tsx +172 -0
  317. package/src/components/TurnStatusIndicator/index.tsx +203 -0
  318. package/src/components/internal/PasswordInput.tsx +145 -0
  319. package/src/context/AIHubContext.ts +249 -0
  320. package/src/context/AIHubProvider.tsx +1084 -0
  321. package/src/context/index.ts +9 -0
  322. package/src/context/theme.ts +76 -0
  323. package/src/context/useAIHub.ts +151 -0
  324. package/src/context/useAIHubAuth.ts +65 -0
  325. package/src/index.ts +275 -0
  326. package/src/primitives/index.ts +101 -0
  327. package/src/state/affordances.ts +321 -0
  328. package/src/state/stateReducer.ts +131 -0
  329. package/src/stories/EffortControl.stories.tsx +63 -0
  330. package/src/stories/MarkdownRenderer.stories.tsx +201 -0
  331. package/src/stories/MessageBubble.stories.tsx +101 -0
  332. package/src/stories/ReasoningView.stories.tsx +81 -0
  333. package/src/stories/ScrollToPresentButton.stories.tsx +52 -0
  334. package/src/stories/SystemNotice.stories.tsx +59 -0
  335. package/src/stories/ThemeSwitcher.stories.tsx +55 -0
  336. package/src/stories/ToolCallView.stories.tsx +95 -0
  337. package/src/stories/TpmBanner.stories.tsx +93 -0
  338. package/src/stories/TurnStatusIndicator.stories.tsx +86 -0
  339. package/src/stories/_mockProvider.tsx +116 -0
  340. package/src/styles/CLASSES.md +356 -0
  341. package/src/styles/default.css +2937 -0
  342. package/src/types.ts +867 -0
  343. package/src/webcomponent/defineWebComponent.tsx +193 -0
  344. package/src/webcomponent/index.ts +11 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AIHubClient.js","sourceRoot":"","sources":["../../src/client/AIHubClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Public re-exports for the `client/` directory.
3
+ *
4
+ * @see SPECIFICATIONS.md §7.8 — client SDK
5
+ */
6
+ export { AIHubClient, AIHubRequestError } from "./AIHubClient.js";
7
+ export type { AIHubClientOptions, LoginResponse, ListSessionsOptions, CreateSessionOptions, PatchSessionOptions, PatchSessionReasoningOptions, AIHubEffort, StreamChatBody, StreamChatOptions, AgentSummary, CancelTurnResponse, AdminUserView, CreateUserBody, AdminUserPasswordReveal, CreateUserResponse, } from "./AIHubClient.js";
8
+ export { createMemoryTokenStorage, resolveTokenStorage, } from "./tokenStorage.js";
9
+ export type { TokenStorage, TokenStorageMode } from "./tokenStorage.js";
10
+ export { parseSseStream } from "./sseParser.js";
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAClE,YAAY,EACV,kBAAkB,EAClB,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,4BAA4B,EAC5B,WAAW,EACX,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Public re-exports for the `client/` directory.
3
+ *
4
+ * @see SPECIFICATIONS.md §7.8 — client SDK
5
+ */
6
+ export { AIHubClient, AIHubRequestError } from "./AIHubClient.js";
7
+ export { createMemoryTokenStorage, resolveTokenStorage, } from "./tokenStorage.js";
8
+ export { parseSseStream } from "./sseParser.js";
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAkBlE,OAAO,EACL,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * SSE → `AIHubEvent` parser.
3
+ *
4
+ * The ai-hub server emits each event as:
5
+ *
6
+ * ```
7
+ * event: <event-name>
8
+ * data: <json-payload>
9
+ *
10
+ * ```
11
+ *
12
+ * where `<json-payload>` is `{ seq, data?, state }` (see
13
+ * `packages/ai-hub-server/src/handlers/sse.ts`). The library does not use
14
+ * the browser's `EventSource` API (§9.5 — it can't carry custom auth
15
+ * headers); instead the SDK consumes the response body via
16
+ * `fetch` + `ReadableStream` and runs it through this parser.
17
+ *
18
+ * Heartbeat lines (`:hb\n\n`) are SSE comments and are skipped entirely —
19
+ * they reach the parser as a block whose only line starts with `:` and
20
+ * produce no event.
21
+ *
22
+ * @see SPECIFICATIONS.md §9.5 — why SSE (not EventSource)
23
+ */
24
+ import type { AIHubEvent } from "../types.js";
25
+ /**
26
+ * Parses a streaming `ReadableStream<Uint8Array>` of SSE bytes into an
27
+ * `AsyncIterable<AIHubEvent>`.
28
+ *
29
+ * The async generator stops when the underlying stream ends or when the
30
+ * stream's reader is released (e.g. on `AbortSignal` abort upstream).
31
+ * Malformed event blocks (no `event:` line, or `data:` JSON that doesn't
32
+ * parse) are skipped silently — the contract is "yield every valid event,"
33
+ * not "throw on the first garbage chunk." Real network corruption surfaces
34
+ * as a `stream_end` from the server (or a transport-level error from
35
+ * fetch, which the caller catches separately).
36
+ *
37
+ * @param body - the response body to parse.
38
+ * @yields each `AIHubEvent` decoded from the byte stream, in emission order.
39
+ */
40
+ export declare function parseSseStream(body: ReadableStream<Uint8Array>): AsyncIterable<AIHubEvent>;
41
+ //# sourceMappingURL=sseParser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sseParser.d.ts","sourceRoot":"","sources":["../../src/client/sseParser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;;;;;;;;;;;;GAcG;AACH,wBAAuB,cAAc,CACnC,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,GAC/B,aAAa,CAAC,UAAU,CAAC,CA0C3B"}
@@ -0,0 +1,153 @@
1
+ /**
2
+ * SSE → `AIHubEvent` parser.
3
+ *
4
+ * The ai-hub server emits each event as:
5
+ *
6
+ * ```
7
+ * event: <event-name>
8
+ * data: <json-payload>
9
+ *
10
+ * ```
11
+ *
12
+ * where `<json-payload>` is `{ seq, data?, state }` (see
13
+ * `packages/ai-hub-server/src/handlers/sse.ts`). The library does not use
14
+ * the browser's `EventSource` API (§9.5 — it can't carry custom auth
15
+ * headers); instead the SDK consumes the response body via
16
+ * `fetch` + `ReadableStream` and runs it through this parser.
17
+ *
18
+ * Heartbeat lines (`:hb\n\n`) are SSE comments and are skipped entirely —
19
+ * they reach the parser as a block whose only line starts with `:` and
20
+ * produce no event.
21
+ *
22
+ * @see SPECIFICATIONS.md §9.5 — why SSE (not EventSource)
23
+ */
24
+ /**
25
+ * Parses a streaming `ReadableStream<Uint8Array>` of SSE bytes into an
26
+ * `AsyncIterable<AIHubEvent>`.
27
+ *
28
+ * The async generator stops when the underlying stream ends or when the
29
+ * stream's reader is released (e.g. on `AbortSignal` abort upstream).
30
+ * Malformed event blocks (no `event:` line, or `data:` JSON that doesn't
31
+ * parse) are skipped silently — the contract is "yield every valid event,"
32
+ * not "throw on the first garbage chunk." Real network corruption surfaces
33
+ * as a `stream_end` from the server (or a transport-level error from
34
+ * fetch, which the caller catches separately).
35
+ *
36
+ * @param body - the response body to parse.
37
+ * @yields each `AIHubEvent` decoded from the byte stream, in emission order.
38
+ */
39
+ export async function* parseSseStream(body) {
40
+ const reader = body.getReader();
41
+ const decoder = new TextDecoder("utf-8");
42
+ let buffer = "";
43
+ try {
44
+ while (true) {
45
+ const { done, value } = await reader.read();
46
+ if (done) {
47
+ // Flush any trailing block (server didn't send the terminating
48
+ // blank line). Defensive — the server always closes cleanly.
49
+ const tail = buffer.trim();
50
+ if (tail.length > 0) {
51
+ const event = parseEventBlock(tail);
52
+ if (event)
53
+ yield event;
54
+ }
55
+ return;
56
+ }
57
+ buffer += decoder.decode(value, { stream: true });
58
+ // Event blocks are separated by a blank line. Handle both `\n\n`
59
+ // (what our server emits) and `\r\n\r\n` (what some intermediaries
60
+ // and the spec officially require) for resilience.
61
+ // eslint-disable-next-line no-constant-condition
62
+ while (true) {
63
+ const sep = findBlockSeparator(buffer);
64
+ if (sep === null)
65
+ break;
66
+ const block = buffer.slice(0, sep.end);
67
+ buffer = buffer.slice(sep.next);
68
+ const event = parseEventBlock(block);
69
+ if (event)
70
+ yield event;
71
+ }
72
+ }
73
+ }
74
+ finally {
75
+ // Release the reader so the stream can be cancelled cleanly upstream.
76
+ try {
77
+ reader.releaseLock();
78
+ }
79
+ catch {
80
+ /* already released */
81
+ }
82
+ }
83
+ }
84
+ /** Standalone helper so `parseSseStream` stays readable. */
85
+ function findBlockSeparator(s) {
86
+ const lf = s.indexOf("\n\n");
87
+ const crlf = s.indexOf("\r\n\r\n");
88
+ if (lf === -1 && crlf === -1)
89
+ return null;
90
+ if (crlf !== -1 && (lf === -1 || crlf < lf)) {
91
+ return { end: crlf, next: crlf + 4 };
92
+ }
93
+ return { end: lf, next: lf + 2 };
94
+ }
95
+ /**
96
+ * Parses one event block (lines up to but not including the blank-line
97
+ * separator) into an `AIHubEvent`, or returns null if the block is a
98
+ * comment / malformed.
99
+ *
100
+ * @param block - the raw text of one block.
101
+ * @returns the parsed event, or null on skip.
102
+ */
103
+ function parseEventBlock(block) {
104
+ let eventName = null;
105
+ // Per the SSE spec, multi-line `data:` payloads are concatenated with
106
+ // newlines. Our server only ever emits single-line JSON, but accept
107
+ // multi-line payloads defensively.
108
+ const dataLines = [];
109
+ for (const line of block.split(/\r?\n/)) {
110
+ if (line.length === 0)
111
+ continue;
112
+ if (line.startsWith(":"))
113
+ continue; // SSE comment — skip
114
+ const colonIdx = line.indexOf(":");
115
+ if (colonIdx === -1)
116
+ continue;
117
+ const field = line.slice(0, colonIdx);
118
+ // Per the spec, a single space after the colon is stripped if present.
119
+ const valueStart = line.charAt(colonIdx + 1) === " " ? colonIdx + 2 : colonIdx + 1;
120
+ const value = line.slice(valueStart);
121
+ if (field === "event")
122
+ eventName = value;
123
+ else if (field === "data")
124
+ dataLines.push(value);
125
+ // id / retry fields are unused — ignore them.
126
+ }
127
+ if (!eventName || dataLines.length === 0)
128
+ return null;
129
+ let payload;
130
+ try {
131
+ payload = JSON.parse(dataLines.join("\n"));
132
+ }
133
+ catch {
134
+ return null;
135
+ }
136
+ if (typeof payload !== "object" ||
137
+ payload === null ||
138
+ typeof payload.seq !== "number" ||
139
+ typeof payload.state !== "object" ||
140
+ payload.state === null) {
141
+ return null;
142
+ }
143
+ // The shape on the wire mirrors `AIHubEvent` exactly minus the discriminator
144
+ // (which lives on the `event:` line, not in the JSON payload). Re-attach it
145
+ // here. `heartbeat` events carry no `data` field per the union.
146
+ return {
147
+ event: eventName,
148
+ seq: payload.seq,
149
+ state: payload.state,
150
+ ...(payload.data !== undefined ? { data: payload.data } : {}),
151
+ };
152
+ }
153
+ //# sourceMappingURL=sseParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sseParser.js","sourceRoot":"","sources":["../../src/client/sseParser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Token storage adapters for `AIHubClient`.
3
+ *
4
+ * Three modes per §7.2 (the `tokenStorage` prop on `<AIHubProvider>`):
5
+ *
6
+ * - `"localStorage"` (default) — persists across tabs and browser restarts.
7
+ * - `"sessionStorage"` — persists across reloads within a tab; cleared on
8
+ * tab close. Useful for embeds where the embedding page is itself
9
+ * ephemeral.
10
+ * - `"memory"` — never persisted. Useful for tests, server-side rendering,
11
+ * and embedding contexts where the host page provides its own persistence
12
+ * strategy.
13
+ *
14
+ * The adapter is a tiny three-method interface so future modes (e.g. an
15
+ * IndexedDB-backed one for very-large session counts, or a host-supplied
16
+ * one for embedding contexts that want to share storage with the parent
17
+ * page) are an additive change.
18
+ *
19
+ * @see SPECIFICATIONS.md §7.2 — `<AIHubProvider>` props
20
+ * @see SPECIFICATIONS.md §6.7 — token lifetimes
21
+ */
22
+ /**
23
+ * The storage adapter `AIHubClient` reads/writes the session JWT through.
24
+ * The contract is intentionally minimal — three pure methods, no async.
25
+ */
26
+ export interface TokenStorage {
27
+ /** Returns the stored token, or `null` if none is set. */
28
+ get(): string | null;
29
+ /** Replaces any existing token. */
30
+ set(token: string): void;
31
+ /** Removes the stored token (idempotent — no-op when none was set). */
32
+ clear(): void;
33
+ }
34
+ /** Identifier strings for the three built-in adapters. */
35
+ export type TokenStorageMode = "localStorage" | "sessionStorage" | "memory";
36
+ /**
37
+ * Builds an in-memory token storage. Used by the `"memory"` mode and as a
38
+ * fallback when the browser's storage APIs throw (Safari private mode, etc.).
39
+ *
40
+ * @returns a fresh in-memory storage adapter.
41
+ */
42
+ export declare function createMemoryTokenStorage(): TokenStorage;
43
+ /**
44
+ * Resolves a `TokenStorageMode` (or a custom `TokenStorage` instance) into
45
+ * a concrete adapter.
46
+ *
47
+ * In non-browser environments (SSR, Node tests without jsdom), the
48
+ * `"localStorage"` / `"sessionStorage"` modes silently fall back to
49
+ * `"memory"` — this is what keeps SSR-rendering an `<AIHubProvider>` from
50
+ * crashing on missing globals.
51
+ *
52
+ * @param mode - either one of the three mode strings or a custom adapter.
53
+ * @returns the concrete adapter.
54
+ */
55
+ export declare function resolveTokenStorage(mode: TokenStorageMode | TokenStorage): TokenStorage;
56
+ //# sourceMappingURL=tokenStorage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenStorage.d.ts","sourceRoot":"","sources":["../../src/client/tokenStorage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,0DAA0D;IAC1D,GAAG,IAAI,MAAM,GAAG,IAAI,CAAC;IACrB,mCAAmC;IACnC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,uEAAuE;IACvE,KAAK,IAAI,IAAI,CAAC;CACf;AAED,0DAA0D;AAC1D,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG,gBAAgB,GAAG,QAAQ,CAAC;AAI5E;;;;;GAKG;AACH,wBAAgB,wBAAwB,IAAI,YAAY,CAWvD;AA2CD;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,gBAAgB,GAAG,YAAY,GACpC,YAAY,CAgBd"}
@@ -0,0 +1,116 @@
1
+ /**
2
+ * Token storage adapters for `AIHubClient`.
3
+ *
4
+ * Three modes per §7.2 (the `tokenStorage` prop on `<AIHubProvider>`):
5
+ *
6
+ * - `"localStorage"` (default) — persists across tabs and browser restarts.
7
+ * - `"sessionStorage"` — persists across reloads within a tab; cleared on
8
+ * tab close. Useful for embeds where the embedding page is itself
9
+ * ephemeral.
10
+ * - `"memory"` — never persisted. Useful for tests, server-side rendering,
11
+ * and embedding contexts where the host page provides its own persistence
12
+ * strategy.
13
+ *
14
+ * The adapter is a tiny three-method interface so future modes (e.g. an
15
+ * IndexedDB-backed one for very-large session counts, or a host-supplied
16
+ * one for embedding contexts that want to share storage with the parent
17
+ * page) are an additive change.
18
+ *
19
+ * @see SPECIFICATIONS.md §7.2 — `<AIHubProvider>` props
20
+ * @see SPECIFICATIONS.md §6.7 — token lifetimes
21
+ */
22
+ const STORAGE_KEY = "data-club-ai-hub:token";
23
+ /**
24
+ * Builds an in-memory token storage. Used by the `"memory"` mode and as a
25
+ * fallback when the browser's storage APIs throw (Safari private mode, etc.).
26
+ *
27
+ * @returns a fresh in-memory storage adapter.
28
+ */
29
+ export function createMemoryTokenStorage() {
30
+ let value = null;
31
+ return {
32
+ get: () => value,
33
+ set: (token) => {
34
+ value = token;
35
+ },
36
+ clear: () => {
37
+ value = null;
38
+ },
39
+ };
40
+ }
41
+ /**
42
+ * Builds a `Storage`-backed adapter (localStorage or sessionStorage).
43
+ *
44
+ * Falls back to an in-memory adapter if the underlying storage throws on
45
+ * the first call (Safari private mode, embedded iframe with storage
46
+ * blocked, etc.) — we'd rather degrade silently than break the auth flow.
47
+ *
48
+ * @param storage - the underlying `Storage` instance.
49
+ * @returns an adapter that reads/writes through the given storage.
50
+ */
51
+ function createWebStorageTokenStorage(storage) {
52
+ try {
53
+ storage.getItem(STORAGE_KEY);
54
+ }
55
+ catch {
56
+ return createMemoryTokenStorage();
57
+ }
58
+ return {
59
+ get: () => {
60
+ try {
61
+ return storage.getItem(STORAGE_KEY);
62
+ }
63
+ catch {
64
+ return null;
65
+ }
66
+ },
67
+ set: (token) => {
68
+ try {
69
+ storage.setItem(STORAGE_KEY, token);
70
+ }
71
+ catch {
72
+ /* ignore */
73
+ }
74
+ },
75
+ clear: () => {
76
+ try {
77
+ storage.removeItem(STORAGE_KEY);
78
+ }
79
+ catch {
80
+ /* ignore */
81
+ }
82
+ },
83
+ };
84
+ }
85
+ /**
86
+ * Resolves a `TokenStorageMode` (or a custom `TokenStorage` instance) into
87
+ * a concrete adapter.
88
+ *
89
+ * In non-browser environments (SSR, Node tests without jsdom), the
90
+ * `"localStorage"` / `"sessionStorage"` modes silently fall back to
91
+ * `"memory"` — this is what keeps SSR-rendering an `<AIHubProvider>` from
92
+ * crashing on missing globals.
93
+ *
94
+ * @param mode - either one of the three mode strings or a custom adapter.
95
+ * @returns the concrete adapter.
96
+ */
97
+ export function resolveTokenStorage(mode) {
98
+ if (typeof mode === "object")
99
+ return mode;
100
+ if (mode === "memory")
101
+ return createMemoryTokenStorage();
102
+ const globalRef = typeof globalThis !== "undefined" ? globalThis : undefined;
103
+ const win = globalRef && "window" in globalRef
104
+ ? globalRef.window
105
+ : undefined;
106
+ if (!win)
107
+ return createMemoryTokenStorage();
108
+ if (mode === "localStorage" && win.localStorage) {
109
+ return createWebStorageTokenStorage(win.localStorage);
110
+ }
111
+ if (mode === "sessionStorage" && win.sessionStorage) {
112
+ return createWebStorageTokenStorage(win.sessionStorage);
113
+ }
114
+ return createMemoryTokenStorage();
115
+ }
116
+ //# sourceMappingURL=tokenStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenStorage.js","sourceRoot":"","sources":["../../src/client/tokenStorage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAkBH,MAAM,WAAW,GAAG,wBAAwB,CAAC;AAE7C;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB;IACtC,IAAI,KAAK,GAAkB,IAAI,CAAC;IAChC,OAAO;QACL,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK;QAChB,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE;YACb,KAAK,GAAG,KAAK,CAAC;QAChB,CAAC;QACD,KAAK,EAAE,GAAG,EAAE;YACV,KAAK,GAAG,IAAI,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,4BAA4B,CAAC,OAAgB;IACpD,IAAI,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,wBAAwB,EAAE,CAAC;IACpC,CAAC;IACD,OAAO;QACL,GAAG,EAAE,GAAG,EAAE;YACR,IAAI,CAAC;gBACH,OAAO,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACtC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE;YACb,IAAI,CAAC;gBACH,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACtC,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY;YACd,CAAC;QACH,CAAC;QACD,KAAK,EAAE,GAAG,EAAE;YACV,IAAI,CAAC;gBACH,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAClC,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY;YACd,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CACjC,IAAqC;IAErC,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1C,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,wBAAwB,EAAE,CAAC;IACzD,MAAM,SAAS,GAAG,OAAO,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7E,MAAM,GAAG,GACP,SAAS,IAAI,QAAQ,IAAI,SAAS;QAChC,CAAC,CAAE,SAAiC,CAAC,MAAM;QAC3C,CAAC,CAAC,SAAS,CAAC;IAChB,IAAI,CAAC,GAAG;QAAE,OAAO,wBAAwB,EAAE,CAAC;IAC5C,IAAI,IAAI,KAAK,cAAc,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;QAChD,OAAO,4BAA4B,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,IAAI,KAAK,gBAAgB,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC;QACpD,OAAO,4BAA4B,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,wBAAwB,EAAE,CAAC;AACpC,CAAC"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * `<AgentsPicker />` — the post-login landing view.
3
+ *
4
+ * Renders one card per non-archived ai-hub agent the caller has access to,
5
+ * with the caller-scoped `session_count` baked into the subtitle so a
6
+ * single round-trip populates the entire picker (§6.3.3). Clicking a card
7
+ * calls `useAIHub().setActiveAgent(id)` — the parent shell then renders
8
+ * the chat layout for that agent.
9
+ *
10
+ * Auto-skip behaviour (consumed by `ChatShell` above): the picker is
11
+ * skipped entirely when `showAgentsPicker={false}` *or* when the
12
+ * deployment ships exactly one agent — those skips happen at the
13
+ * `ChatShell` level so this component stays a pure listing view.
14
+ *
15
+ * Exported under the `AIHub.AgentsPicker` Tier-3 primitive.
16
+ *
17
+ * @see SPECIFICATIONS.md §7.1 — exports
18
+ * @see SPECIFICATIONS.md §6.3.3 — `/agents`
19
+ * @see ui-sketches/03-chat.md — visual contract for the picker
20
+ */
21
+ import { type ReactNode } from "react";
22
+ import { type AIHubTexts, type DeepPartial } from "../../auth/texts.js";
23
+ /**
24
+ * BEM class names emitted by `<AgentsPicker />`. Per-customer wrappers
25
+ * pass a partial of this map via the `classNames` prop to override
26
+ * individual names for utility-CSS frameworks.
27
+ */
28
+ export interface AgentsPickerClassNames {
29
+ /** Outer wrapper (centers the picker, scrolls when too tall). */
30
+ root: string;
31
+ /** Page heading at the top. */
32
+ heading: string;
33
+ /** Loading line shown while `/agents` is in flight. */
34
+ loading: string;
35
+ /** Error banner shown when `/agents` fails. */
36
+ error: string;
37
+ /** Empty-state container. */
38
+ empty: string;
39
+ /** Empty-state heading. */
40
+ emptyHeading: string;
41
+ /** Empty-state body. */
42
+ emptyBody: string;
43
+ /** Card grid wrapper. */
44
+ grid: string;
45
+ /** A single agent card (the clickable tile). */
46
+ card: string;
47
+ /** Card display name. */
48
+ cardName: string;
49
+ /** Card subtitle line (session count). */
50
+ cardSubtitle: string;
51
+ }
52
+ /**
53
+ * Props for `<AgentsPicker />`.
54
+ */
55
+ export interface AgentsPickerProps {
56
+ /** Extra class merged onto the root wrapper. */
57
+ className?: string;
58
+ /** Per-element class-name overrides. */
59
+ classNames?: Partial<AgentsPickerClassNames>;
60
+ /** Wrapper-supplied i18n. */
61
+ texts?: DeepPartial<AIHubTexts>;
62
+ }
63
+ /**
64
+ * Renders the agents picker.
65
+ *
66
+ * @param props - see `AgentsPickerProps`.
67
+ * @returns the rendered picker.
68
+ */
69
+ export declare function AgentsPicker(props: AgentsPickerProps): ReactNode;
70
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/AgentsPicker/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAqB,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAG3F;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,iEAAiE;IACjE,IAAI,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,wBAAwB;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,yBAAyB;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,0CAA0C;IAC1C,YAAY,EAAE,MAAM,CAAC;CACtB;AAqBD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,UAAU,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC7C,6BAA6B;IAC7B,KAAK,CAAC,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;CACjC;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,SAAS,CAqDhE"}
@@ -0,0 +1,63 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * `<AgentsPicker />` — the post-login landing view.
4
+ *
5
+ * Renders one card per non-archived ai-hub agent the caller has access to,
6
+ * with the caller-scoped `session_count` baked into the subtitle so a
7
+ * single round-trip populates the entire picker (§6.3.3). Clicking a card
8
+ * calls `useAIHub().setActiveAgent(id)` — the parent shell then renders
9
+ * the chat layout for that agent.
10
+ *
11
+ * Auto-skip behaviour (consumed by `ChatShell` above): the picker is
12
+ * skipped entirely when `showAgentsPicker={false}` *or* when the
13
+ * deployment ships exactly one agent — those skips happen at the
14
+ * `ChatShell` level so this component stays a pure listing view.
15
+ *
16
+ * Exported under the `AIHub.AgentsPicker` Tier-3 primitive.
17
+ *
18
+ * @see SPECIFICATIONS.md §7.1 — exports
19
+ * @see SPECIFICATIONS.md §6.3.3 — `/agents`
20
+ * @see ui-sketches/03-chat.md — visual contract for the picker
21
+ */
22
+ import {} from "react";
23
+ import { resolveAIHubTexts } from "../../auth/texts.js";
24
+ import { useAIHub } from "../../context/useAIHub.js";
25
+ /**
26
+ * Default BEM class names. Stable, kebab-case, scoped under
27
+ * `data-club-ai-hub__agents-picker`. Wrappers override individual entries
28
+ * via the `classNames` prop.
29
+ */
30
+ const DEFAULT_CLASS_NAMES = Object.freeze({
31
+ root: "data-club-ai-hub__agents-picker",
32
+ heading: "data-club-ai-hub__agents-picker__heading",
33
+ loading: "data-club-ai-hub__agents-picker__loading",
34
+ error: "data-club-ai-hub__agents-picker__error",
35
+ empty: "data-club-ai-hub__agents-picker__empty",
36
+ emptyHeading: "data-club-ai-hub__agents-picker__empty-heading",
37
+ emptyBody: "data-club-ai-hub__agents-picker__empty-body",
38
+ grid: "data-club-ai-hub__agents-picker__grid",
39
+ card: "data-club-ai-hub__agent-card",
40
+ cardName: "data-club-ai-hub__agent-card__name",
41
+ cardSubtitle: "data-club-ai-hub__agent-card__subtitle",
42
+ });
43
+ /**
44
+ * Renders the agents picker.
45
+ *
46
+ * @param props - see `AgentsPickerProps`.
47
+ * @returns the rendered picker.
48
+ */
49
+ export function AgentsPicker(props) {
50
+ const { agents, agentsLoading, setActiveAgent } = useAIHub();
51
+ const texts = resolveAIHubTexts(props.texts);
52
+ const cls = { ...DEFAULT_CLASS_NAMES, ...(props.classNames ?? {}) };
53
+ const rootClass = props.className
54
+ ? `${cls.root} ${props.className}`
55
+ : cls.root;
56
+ return (_jsxs("div", { className: rootClass, "data-testid": "agents-picker", children: [_jsx("h1", { className: cls.heading, children: texts.chat.agentsPickerHeading }), agentsLoading && agents.length === 0 ? (_jsx("p", { className: cls.loading, "data-testid": "agents-picker-loading", children: texts.chat.agentsPickerLoading })) : null, !agentsLoading && agents.length === 0 ? (_jsxs("div", { className: cls.empty, "data-testid": "agents-picker-empty", children: [_jsx("h2", { className: cls.emptyHeading, children: texts.chat.agentsPickerEmptyHeading }), _jsx("p", { className: cls.emptyBody, children: texts.chat.agentsPickerEmptyBody })] })) : null, agents.length > 0 ? (_jsx("div", { className: cls.grid, role: "list", children: agents.map((agent) => {
57
+ const subtitle = agent.session_count === 0
58
+ ? texts.chat.agentCardNoSessionsSubtitle
59
+ : texts.chat.agentCardSessionsSubtitle.replace("{count}", String(agent.session_count));
60
+ return (_jsxs("button", { type: "button", role: "listitem", className: cls.card, "data-testid": "agent-card", "data-agent-id": agent.id, onClick: () => setActiveAgent(agent.id), children: [_jsx("span", { className: cls.cardName, children: agent.display_name }), _jsx("span", { className: cls.cardSubtitle, children: subtitle })] }, agent.id));
61
+ }) })) : null] }));
62
+ }
63
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/AgentsPicker/index.tsx"],"names":[],"mappings":"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"}