@stack-spot/ai-chat-widget 0.11.0 → 1.0.0-dev.1768324407795

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 (779) hide show
  1. package/CHANGELOG.md +972 -0
  2. package/README.md +1 -0
  3. package/dist/StackspotAIWidget.d.ts +48 -7
  4. package/dist/StackspotAIWidget.d.ts.map +1 -1
  5. package/dist/StackspotAIWidget.js +22 -23
  6. package/dist/StackspotAIWidget.js.map +1 -1
  7. package/dist/app-metadata.json +175 -0
  8. package/dist/assets/placeholder.png +0 -0
  9. package/dist/chat-interceptors/CustomInputs.d.ts +4 -1
  10. package/dist/chat-interceptors/CustomInputs.d.ts.map +1 -1
  11. package/dist/chat-interceptors/CustomInputs.js +10 -1
  12. package/dist/chat-interceptors/CustomInputs.js.map +1 -1
  13. package/dist/chat-interceptors/quick-command-questions.d.ts +10 -0
  14. package/dist/chat-interceptors/quick-command-questions.d.ts.map +1 -1
  15. package/dist/chat-interceptors/quick-command-questions.js +12 -2
  16. package/dist/chat-interceptors/quick-command-questions.js.map +1 -1
  17. package/dist/chat-interceptors/quick-commands.d.ts +11 -0
  18. package/dist/chat-interceptors/quick-commands.d.ts.map +1 -1
  19. package/dist/chat-interceptors/quick-commands.js +241 -48
  20. package/dist/chat-interceptors/quick-commands.js.map +1 -1
  21. package/dist/chat-interceptors/send-message.d.ts +26 -1
  22. package/dist/chat-interceptors/send-message.d.ts.map +1 -1
  23. package/dist/chat-interceptors/send-message.js +227 -26
  24. package/dist/chat-interceptors/send-message.js.map +1 -1
  25. package/dist/components/AdaptiveTextArea.d.ts +15 -3
  26. package/dist/components/AdaptiveTextArea.d.ts.map +1 -1
  27. package/dist/components/AdaptiveTextArea.js +22 -10
  28. package/dist/components/AdaptiveTextArea.js.map +1 -1
  29. package/dist/components/AgentCard/AgentCardCreate.d.ts +4 -0
  30. package/dist/components/AgentCard/AgentCardCreate.d.ts.map +1 -0
  31. package/dist/components/AgentCard/AgentCardCreate.js +33 -0
  32. package/dist/components/AgentCard/AgentCardCreate.js.map +1 -0
  33. package/dist/components/AgentCard/dictionary.d.ts +23 -0
  34. package/dist/components/AgentCard/dictionary.d.ts.map +1 -0
  35. package/dist/components/AgentCard/dictionary.js +23 -0
  36. package/dist/components/AgentCard/dictionary.js.map +1 -0
  37. package/dist/components/AgentCard/index.d.ts +5 -0
  38. package/dist/components/AgentCard/index.d.ts.map +1 -0
  39. package/dist/components/AgentCard/index.js +55 -0
  40. package/dist/components/AgentCard/index.js.map +1 -0
  41. package/dist/components/AnimatedOpacity.d.ts +8 -0
  42. package/dist/components/AnimatedOpacity.d.ts.map +1 -0
  43. package/dist/components/AnimatedOpacity.js +46 -0
  44. package/dist/components/AnimatedOpacity.js.map +1 -0
  45. package/dist/components/AutoFocus.d.ts +23 -0
  46. package/dist/components/AutoFocus.d.ts.map +1 -0
  47. package/dist/components/AutoFocus.js +23 -0
  48. package/dist/components/AutoFocus.js.map +1 -0
  49. package/dist/components/ButtonFavorite.d.ts +40 -0
  50. package/dist/components/ButtonFavorite.d.ts.map +1 -0
  51. package/dist/components/ButtonFavorite.js +25 -0
  52. package/dist/components/ButtonFavorite.js.map +1 -0
  53. package/dist/components/Code.d.ts +2 -1
  54. package/dist/components/Code.d.ts.map +1 -1
  55. package/dist/components/Code.js +52 -24
  56. package/dist/components/Code.js.map +1 -1
  57. package/dist/components/ComponentNavigator.d.ts +38 -0
  58. package/dist/components/ComponentNavigator.d.ts.map +1 -0
  59. package/dist/components/ComponentNavigator.js +31 -0
  60. package/dist/components/ComponentNavigator.js.map +1 -0
  61. package/dist/components/Fading.d.ts +32 -0
  62. package/dist/components/Fading.d.ts.map +1 -0
  63. package/dist/components/Fading.js +33 -0
  64. package/dist/components/Fading.js.map +1 -0
  65. package/dist/components/FadingOverflow.d.ts +25 -0
  66. package/dist/components/FadingOverflow.d.ts.map +1 -1
  67. package/dist/components/FadingOverflow.js +16 -8
  68. package/dist/components/FadingOverflow.js.map +1 -1
  69. package/dist/components/FileDescription.d.ts +10 -0
  70. package/dist/components/FileDescription.d.ts.map +1 -0
  71. package/dist/components/FileDescription.js +84 -0
  72. package/dist/components/FileDescription.js.map +1 -0
  73. package/dist/components/HistoryList.d.ts +15 -0
  74. package/dist/components/HistoryList.d.ts.map +1 -1
  75. package/dist/components/HistoryList.js +6 -2
  76. package/dist/components/HistoryList.js.map +1 -1
  77. package/dist/components/ListResource.d.ts +29 -0
  78. package/dist/components/ListResource.d.ts.map +1 -0
  79. package/dist/components/ListResource.js +17 -0
  80. package/dist/components/ListResource.js.map +1 -0
  81. package/dist/components/Markdown.d.ts.map +1 -1
  82. package/dist/components/Markdown.js +2 -2
  83. package/dist/components/Markdown.js.map +1 -1
  84. package/dist/components/Modal.d.ts +9 -0
  85. package/dist/components/Modal.d.ts.map +1 -0
  86. package/dist/components/Modal.js +56 -0
  87. package/dist/components/Modal.js.map +1 -0
  88. package/dist/components/QuickStartButton.d.ts +2 -4
  89. package/dist/components/QuickStartButton.d.ts.map +1 -1
  90. package/dist/components/QuickStartButton.js +7 -39
  91. package/dist/components/QuickStartButton.js.map +1 -1
  92. package/dist/components/RightPanelContentList.d.ts +10 -0
  93. package/dist/components/RightPanelContentList.d.ts.map +1 -0
  94. package/dist/components/RightPanelContentList.js +7 -0
  95. package/dist/components/RightPanelContentList.js.map +1 -0
  96. package/dist/components/RightPanelForm.d.ts +3 -0
  97. package/dist/components/RightPanelForm.d.ts.map +1 -1
  98. package/dist/components/RightPanelForm.js +57 -17
  99. package/dist/components/RightPanelForm.js.map +1 -1
  100. package/dist/components/RightPanelTabs.d.ts +4 -4
  101. package/dist/components/RightPanelTabs.d.ts.map +1 -1
  102. package/dist/components/RightPanelTabs.js +7 -16
  103. package/dist/components/RightPanelTabs.js.map +1 -1
  104. package/dist/components/Selector/index.d.ts +54 -0
  105. package/dist/components/Selector/index.d.ts.map +1 -0
  106. package/dist/components/Selector/index.js +143 -0
  107. package/dist/components/Selector/index.js.map +1 -0
  108. package/dist/components/Selector/styled.d.ts +4 -0
  109. package/dist/components/Selector/styled.d.ts.map +1 -0
  110. package/dist/components/Selector/styled.js +157 -0
  111. package/dist/components/Selector/styled.js.map +1 -0
  112. package/dist/components/StackedBadge.d.ts +14 -0
  113. package/dist/components/StackedBadge.d.ts.map +1 -0
  114. package/dist/components/StackedBadge.js +56 -0
  115. package/dist/components/StackedBadge.js.map +1 -0
  116. package/dist/components/TabManager.d.ts +6 -0
  117. package/dist/components/TabManager.d.ts.map +1 -1
  118. package/dist/components/TabManager.js +16 -28
  119. package/dist/components/TabManager.js.map +1 -1
  120. package/dist/components/ToolBadge.d.ts +9 -0
  121. package/dist/components/ToolBadge.d.ts.map +1 -0
  122. package/dist/components/ToolBadge.js +34 -0
  123. package/dist/components/ToolBadge.js.map +1 -0
  124. package/dist/components/WorkspaceTabNavigator.d.ts +17 -0
  125. package/dist/components/WorkspaceTabNavigator.d.ts.map +1 -0
  126. package/dist/components/WorkspaceTabNavigator.js +93 -0
  127. package/dist/components/WorkspaceTabNavigator.js.map +1 -0
  128. package/dist/components/form/DescribedCheckboxGroup.d.ts +30 -2
  129. package/dist/components/form/DescribedCheckboxGroup.d.ts.map +1 -1
  130. package/dist/components/form/DescribedCheckboxGroup.js +75 -21
  131. package/dist/components/form/DescribedCheckboxGroup.js.map +1 -1
  132. package/dist/components/form/DescribedRadioGroup.d.ts +31 -2
  133. package/dist/components/form/DescribedRadioGroup.d.ts.map +1 -1
  134. package/dist/components/form/DescribedRadioGroup.js +65 -16
  135. package/dist/components/form/DescribedRadioGroup.js.map +1 -1
  136. package/dist/components/form/dictionary.d.ts +19 -0
  137. package/dist/components/form/dictionary.d.ts.map +1 -0
  138. package/dist/components/form/dictionary.js +19 -0
  139. package/dist/components/form/dictionary.js.map +1 -0
  140. package/dist/components/form/styled.d.ts.map +1 -1
  141. package/dist/components/form/styled.js +1 -2
  142. package/dist/components/form/styled.js.map +1 -1
  143. package/dist/components/form/types.d.ts +42 -0
  144. package/dist/components/form/types.d.ts.map +1 -1
  145. package/dist/context/AIWidgetProvider.d.ts +19 -0
  146. package/dist/context/AIWidgetProvider.d.ts.map +1 -1
  147. package/dist/context/AIWidgetProvider.js +19 -0
  148. package/dist/context/AIWidgetProvider.js.map +1 -1
  149. package/dist/context/hooks.d.ts +61 -4
  150. package/dist/context/hooks.d.ts.map +1 -1
  151. package/dist/context/hooks.js +83 -13
  152. package/dist/context/hooks.js.map +1 -1
  153. package/dist/features.d.ts +72 -10
  154. package/dist/features.d.ts.map +1 -1
  155. package/dist/features.js +23 -8
  156. package/dist/features.js.map +1 -1
  157. package/dist/hooks/midnight-update-view.d.ts +5 -0
  158. package/dist/hooks/midnight-update-view.d.ts.map +1 -0
  159. package/dist/hooks/midnight-update-view.js +30 -0
  160. package/dist/hooks/midnight-update-view.js.map +1 -0
  161. package/dist/index.d.ts +12 -0
  162. package/dist/index.d.ts.map +1 -1
  163. package/dist/index.js +7 -0
  164. package/dist/index.js.map +1 -1
  165. package/dist/layout.css +95 -28
  166. package/dist/regex.d.ts +3 -0
  167. package/dist/regex.d.ts.map +1 -0
  168. package/dist/regex.js +3 -0
  169. package/dist/regex.js.map +1 -0
  170. package/dist/right-panel/DefaultPanel.d.ts +3 -0
  171. package/dist/right-panel/DefaultPanel.d.ts.map +1 -1
  172. package/dist/right-panel/DefaultPanel.js +5 -4
  173. package/dist/right-panel/DefaultPanel.js.map +1 -1
  174. package/dist/right-panel/RightPanel.d.ts +3 -0
  175. package/dist/right-panel/RightPanel.d.ts.map +1 -1
  176. package/dist/right-panel/RightPanel.js +3 -0
  177. package/dist/right-panel/RightPanel.js.map +1 -1
  178. package/dist/right-panel/RightPanelProvider.d.ts +15 -0
  179. package/dist/right-panel/RightPanelProvider.d.ts.map +1 -1
  180. package/dist/right-panel/RightPanelProvider.js.map +1 -1
  181. package/dist/right-panel/constants.d.ts +2 -0
  182. package/dist/right-panel/constants.d.ts.map +1 -0
  183. package/dist/right-panel/constants.js +2 -0
  184. package/dist/right-panel/constants.js.map +1 -0
  185. package/dist/right-panel/hooks.d.ts +6 -0
  186. package/dist/right-panel/hooks.d.ts.map +1 -1
  187. package/dist/right-panel/hooks.js +8 -1
  188. package/dist/right-panel/hooks.js.map +1 -1
  189. package/dist/state/ChatEntry.d.ts +182 -8
  190. package/dist/state/ChatEntry.d.ts.map +1 -1
  191. package/dist/state/ChatEntry.js +26 -3
  192. package/dist/state/ChatEntry.js.map +1 -1
  193. package/dist/state/ChatState.d.ts +116 -14
  194. package/dist/state/ChatState.d.ts.map +1 -1
  195. package/dist/state/ChatState.js +49 -8
  196. package/dist/state/ChatState.js.map +1 -1
  197. package/dist/state/ChatTabsController.d.ts +50 -1
  198. package/dist/state/ChatTabsController.d.ts.map +1 -1
  199. package/dist/state/ChatTabsController.js +77 -8
  200. package/dist/state/ChatTabsController.js.map +1 -1
  201. package/dist/state/ObservableState.d.ts +14 -0
  202. package/dist/state/ObservableState.d.ts.map +1 -1
  203. package/dist/state/ObservableState.js +14 -0
  204. package/dist/state/ObservableState.js.map +1 -1
  205. package/dist/state/WidgetState.d.ts +62 -2
  206. package/dist/state/WidgetState.d.ts.map +1 -1
  207. package/dist/state/WidgetState.js +49 -2
  208. package/dist/state/WidgetState.js.map +1 -1
  209. package/dist/state/constants.d.ts +5 -0
  210. package/dist/state/constants.d.ts.map +1 -0
  211. package/dist/state/constants.js +10 -0
  212. package/dist/state/constants.js.map +1 -0
  213. package/dist/state/types.d.ts +10 -1
  214. package/dist/state/types.d.ts.map +1 -1
  215. package/dist/types.d.ts +20 -4
  216. package/dist/types.d.ts.map +1 -1
  217. package/dist/utils/chat.d.ts +11 -4
  218. package/dist/utils/chat.d.ts.map +1 -1
  219. package/dist/utils/chat.js +13 -11
  220. package/dist/utils/chat.js.map +1 -1
  221. package/dist/utils/check-is-trial.d.ts +2 -0
  222. package/dist/utils/check-is-trial.d.ts.map +1 -0
  223. package/dist/utils/check-is-trial.js +6 -0
  224. package/dist/utils/check-is-trial.js.map +1 -0
  225. package/dist/utils/copy-to-clipboard.d.ts +6 -0
  226. package/dist/utils/copy-to-clipboard.d.ts.map +1 -0
  227. package/dist/utils/copy-to-clipboard.js +30 -0
  228. package/dist/utils/copy-to-clipboard.js.map +1 -0
  229. package/dist/utils/date.d.ts +26 -2
  230. package/dist/utils/date.d.ts.map +1 -1
  231. package/dist/utils/date.js +28 -3
  232. package/dist/utils/date.js.map +1 -1
  233. package/dist/utils/download.d.ts +5 -0
  234. package/dist/utils/download.d.ts.map +1 -1
  235. package/dist/utils/download.js +5 -0
  236. package/dist/utils/download.js.map +1 -1
  237. package/dist/utils/error.d.ts +2 -0
  238. package/dist/utils/error.d.ts.map +1 -0
  239. package/dist/utils/error.js +54 -0
  240. package/dist/utils/error.js.map +1 -0
  241. package/dist/utils/knowledge-source.d.ts +12 -2
  242. package/dist/utils/knowledge-source.d.ts.map +1 -1
  243. package/dist/utils/knowledge-source.js +16 -0
  244. package/dist/utils/knowledge-source.js.map +1 -1
  245. package/dist/utils/planning-tool.d.ts +17 -0
  246. package/dist/utils/planning-tool.d.ts.map +1 -0
  247. package/dist/utils/planning-tool.js +32 -0
  248. package/dist/utils/planning-tool.js.map +1 -0
  249. package/dist/utils/programming-languages.d.ts.map +1 -1
  250. package/dist/utils/programming-languages.js +10 -0
  251. package/dist/utils/programming-languages.js.map +1 -1
  252. package/dist/utils/string.d.ts +5 -0
  253. package/dist/utils/string.d.ts.map +1 -1
  254. package/dist/utils/string.js +5 -1
  255. package/dist/utils/string.js.map +1 -1
  256. package/dist/utils/tools.d.ts +23 -0
  257. package/dist/utils/tools.d.ts.map +1 -0
  258. package/dist/utils/tools.js +23 -0
  259. package/dist/utils/tools.js.map +1 -0
  260. package/dist/utils/update-tool-step.d.ts +3 -0
  261. package/dist/utils/update-tool-step.d.ts.map +1 -0
  262. package/dist/utils/update-tool-step.js +23 -0
  263. package/dist/utils/update-tool-step.js.map +1 -0
  264. package/dist/utils/upload/FileUpload.d.ts +21 -0
  265. package/dist/utils/upload/FileUpload.d.ts.map +1 -0
  266. package/dist/utils/upload/FileUpload.js +54 -0
  267. package/dist/utils/upload/FileUpload.js.map +1 -0
  268. package/dist/utils/upload/UploadManager.d.ts +42 -0
  269. package/dist/utils/upload/UploadManager.d.ts.map +1 -0
  270. package/dist/utils/upload/UploadManager.js +138 -0
  271. package/dist/utils/upload/UploadManager.js.map +1 -0
  272. package/dist/utils/upload/context.d.ts +15 -0
  273. package/dist/utils/upload/context.d.ts.map +1 -0
  274. package/dist/utils/upload/context.js +37 -0
  275. package/dist/utils/upload/context.js.map +1 -0
  276. package/dist/utils/upload/errors.d.ts +17 -0
  277. package/dist/utils/upload/errors.d.ts.map +1 -0
  278. package/dist/utils/upload/errors.js +27 -0
  279. package/dist/utils/upload/errors.js.map +1 -0
  280. package/dist/utils/upload/types.d.ts +7 -0
  281. package/dist/utils/upload/types.d.ts.map +1 -0
  282. package/dist/{components/Tooltip → utils/upload}/types.js.map +1 -1
  283. package/dist/utils/upload/use-paste-upload.d.ts +8 -0
  284. package/dist/utils/upload/use-paste-upload.d.ts.map +1 -0
  285. package/dist/utils/upload/use-paste-upload.js +19 -0
  286. package/dist/utils/upload/use-paste-upload.js.map +1 -0
  287. package/dist/utils/upload/utils.d.ts +4 -0
  288. package/dist/utils/upload/utils.d.ts.map +1 -0
  289. package/dist/utils/upload/utils.js +10 -0
  290. package/dist/utils/upload/utils.js.map +1 -0
  291. package/dist/utils/url.d.ts +2 -0
  292. package/dist/utils/url.d.ts.map +1 -0
  293. package/dist/utils/url.js +8 -0
  294. package/dist/utils/url.js.map +1 -0
  295. package/dist/views/Agents/AgentDescription.d.ts +4 -0
  296. package/dist/views/Agents/AgentDescription.d.ts.map +1 -0
  297. package/dist/views/Agents/AgentDescription.js +38 -0
  298. package/dist/views/Agents/AgentDescription.js.map +1 -0
  299. package/dist/views/Agents/AgentsPanel.d.ts +5 -0
  300. package/dist/views/Agents/AgentsPanel.d.ts.map +1 -0
  301. package/dist/views/Agents/AgentsPanel.js +45 -0
  302. package/dist/views/Agents/AgentsPanel.js.map +1 -0
  303. package/dist/views/Agents/AgentsTab.d.ts +11 -0
  304. package/dist/views/Agents/AgentsTab.d.ts.map +1 -0
  305. package/dist/views/Agents/AgentsTab.js +82 -0
  306. package/dist/views/Agents/AgentsTab.js.map +1 -0
  307. package/dist/views/Agents/dictionary.d.ts +2 -0
  308. package/dist/views/Agents/dictionary.d.ts.map +1 -0
  309. package/dist/views/Agents/dictionary.js +43 -0
  310. package/dist/views/Agents/dictionary.js.map +1 -0
  311. package/dist/views/Agents/index.d.ts +5 -0
  312. package/dist/views/Agents/index.d.ts.map +1 -0
  313. package/dist/views/Agents/index.js +21 -0
  314. package/dist/views/Agents/index.js.map +1 -0
  315. package/dist/views/Agents/styled.d.ts +3 -0
  316. package/dist/views/Agents/styled.d.ts.map +1 -0
  317. package/dist/views/Agents/styled.js +68 -0
  318. package/dist/views/Agents/styled.js.map +1 -0
  319. package/dist/views/Agents/useAgentFavorites.d.ts +8 -0
  320. package/dist/views/Agents/useAgentFavorites.d.ts.map +1 -0
  321. package/dist/views/Agents/useAgentFavorites.js +59 -0
  322. package/dist/views/Agents/useAgentFavorites.js.map +1 -0
  323. package/dist/views/Chat/AgentInfo.d.ts +5 -1
  324. package/dist/views/Chat/AgentInfo.d.ts.map +1 -1
  325. package/dist/views/Chat/AgentInfo.js +6 -5
  326. package/dist/views/Chat/AgentInfo.js.map +1 -1
  327. package/dist/views/Chat/ButtonExecutionDetail.d.ts +5 -0
  328. package/dist/views/Chat/ButtonExecutionDetail.d.ts.map +1 -0
  329. package/dist/views/Chat/ButtonExecutionDetail.js +34 -0
  330. package/dist/views/Chat/ButtonExecutionDetail.js.map +1 -0
  331. package/dist/views/Chat/ChatMessage.d.ts +56 -4
  332. package/dist/views/Chat/ChatMessage.d.ts.map +1 -1
  333. package/dist/views/Chat/ChatMessage.js +160 -24
  334. package/dist/views/Chat/ChatMessage.js.map +1 -1
  335. package/dist/views/Chat/ChatMessages.d.ts +6 -2
  336. package/dist/views/Chat/ChatMessages.d.ts.map +1 -1
  337. package/dist/views/Chat/ChatMessages.js +5 -2
  338. package/dist/views/Chat/ChatMessages.js.map +1 -1
  339. package/dist/views/Chat/StepsList.d.ts +14 -0
  340. package/dist/views/Chat/StepsList.d.ts.map +1 -0
  341. package/dist/views/Chat/StepsList.js +192 -0
  342. package/dist/views/Chat/StepsList.js.map +1 -0
  343. package/dist/views/Chat/chat-scroll.d.ts +1 -1
  344. package/dist/views/Chat/chat-scroll.js +1 -1
  345. package/dist/views/Chat/events.d.ts +22 -0
  346. package/dist/views/Chat/events.d.ts.map +1 -0
  347. package/dist/views/Chat/events.js +67 -0
  348. package/dist/views/Chat/events.js.map +1 -0
  349. package/dist/views/Chat/index.d.ts +9 -2
  350. package/dist/views/Chat/index.d.ts.map +1 -1
  351. package/dist/views/Chat/index.js +5 -2
  352. package/dist/views/Chat/index.js.map +1 -1
  353. package/dist/views/Chat/styled.d.ts +3 -1
  354. package/dist/views/Chat/styled.d.ts.map +1 -1
  355. package/dist/views/Chat/styled.js +152 -31
  356. package/dist/views/Chat/styled.js.map +1 -1
  357. package/dist/views/ChatHistory/ChatHistoryPanel.d.ts +4 -4
  358. package/dist/views/ChatHistory/ChatHistoryPanel.d.ts.map +1 -1
  359. package/dist/views/ChatHistory/ChatHistoryPanel.js +6 -2
  360. package/dist/views/ChatHistory/ChatHistoryPanel.js.map +1 -1
  361. package/dist/views/ChatHistory/HistoryItem.d.ts +4 -3
  362. package/dist/views/ChatHistory/HistoryItem.d.ts.map +1 -1
  363. package/dist/views/ChatHistory/HistoryItem.js +16 -37
  364. package/dist/views/ChatHistory/HistoryItem.js.map +1 -1
  365. package/dist/views/ChatHistory/dictionary.d.ts +1 -1
  366. package/dist/views/ChatHistory/index.d.ts +4 -4
  367. package/dist/views/ChatHistory/index.d.ts.map +1 -1
  368. package/dist/views/ChatHistory/index.js +6 -3
  369. package/dist/views/ChatHistory/index.js.map +1 -1
  370. package/dist/views/ChatHistory/styled.d.ts.map +1 -1
  371. package/dist/views/ChatHistory/styled.js +3 -5
  372. package/dist/views/ChatHistory/styled.js.map +1 -1
  373. package/dist/views/ChatHistory/utils.d.ts +17 -2
  374. package/dist/views/ChatHistory/utils.d.ts.map +1 -1
  375. package/dist/views/ChatHistory/utils.js +140 -9
  376. package/dist/views/ChatHistory/utils.js.map +1 -1
  377. package/dist/views/ChatTabSelection.d.ts +6 -4
  378. package/dist/views/ChatTabSelection.d.ts.map +1 -1
  379. package/dist/views/ChatTabSelection.js +40 -15
  380. package/dist/views/ChatTabSelection.js.map +1 -1
  381. package/dist/views/Editor.d.ts +3 -0
  382. package/dist/views/Editor.d.ts.map +1 -1
  383. package/dist/views/Editor.js +23 -16
  384. package/dist/views/Editor.js.map +1 -1
  385. package/dist/views/Home/BuiltInAgent.d.ts +6 -0
  386. package/dist/views/Home/BuiltInAgent.d.ts.map +1 -0
  387. package/dist/views/Home/BuiltInAgent.js +37 -0
  388. package/dist/views/Home/BuiltInAgent.js.map +1 -0
  389. package/dist/views/Home/CustomAgent.d.ts +5 -0
  390. package/dist/views/Home/CustomAgent.d.ts.map +1 -0
  391. package/dist/views/Home/CustomAgent.js +23 -0
  392. package/dist/views/Home/CustomAgent.js.map +1 -0
  393. package/dist/views/Home/index.d.ts +8 -0
  394. package/dist/views/Home/index.d.ts.map +1 -0
  395. package/dist/views/Home/index.js +34 -0
  396. package/dist/views/Home/index.js.map +1 -0
  397. package/dist/views/Home/styled.d.ts +2 -0
  398. package/dist/views/Home/styled.d.ts.map +1 -0
  399. package/dist/views/Home/styled.js +74 -0
  400. package/dist/views/Home/styled.js.map +1 -0
  401. package/dist/views/Home/types.d.ts +16 -0
  402. package/dist/views/Home/types.d.ts.map +1 -0
  403. package/dist/views/Home/types.js +2 -0
  404. package/dist/views/Home/types.js.map +1 -0
  405. package/dist/views/KSDocument.d.ts +3 -0
  406. package/dist/views/KSDocument.d.ts.map +1 -1
  407. package/dist/views/KSDocument.js +7 -4
  408. package/dist/views/KSDocument.js.map +1 -1
  409. package/dist/views/KnowledgeSources.d.ts +12 -0
  410. package/dist/views/KnowledgeSources.d.ts.map +1 -1
  411. package/dist/views/KnowledgeSources.js +123 -33
  412. package/dist/views/KnowledgeSources.js.map +1 -1
  413. package/dist/views/MessageInput/AgentSelector.d.ts +5 -0
  414. package/dist/views/MessageInput/AgentSelector.d.ts.map +1 -0
  415. package/dist/views/MessageInput/AgentSelector.js +66 -0
  416. package/dist/views/MessageInput/AgentSelector.js.map +1 -0
  417. package/dist/views/MessageInput/ButtonAgent.d.ts +2 -0
  418. package/dist/views/MessageInput/ButtonAgent.d.ts.map +1 -0
  419. package/dist/views/MessageInput/ButtonAgent.js +35 -0
  420. package/dist/views/MessageInput/ButtonAgent.js.map +1 -0
  421. package/dist/views/MessageInput/ButtonBar.d.ts +13 -0
  422. package/dist/views/MessageInput/ButtonBar.d.ts.map +1 -0
  423. package/dist/views/MessageInput/ButtonBar.js +15 -0
  424. package/dist/views/MessageInput/ButtonBar.js.map +1 -0
  425. package/dist/views/MessageInput/ContextBar.d.ts +9 -0
  426. package/dist/views/MessageInput/ContextBar.d.ts.map +1 -0
  427. package/dist/views/MessageInput/ContextBar.js +51 -0
  428. package/dist/views/MessageInput/ContextBar.js.map +1 -0
  429. package/dist/views/MessageInput/ModelSwitcher/index.d.ts +2 -0
  430. package/dist/views/MessageInput/ModelSwitcher/index.d.ts.map +1 -0
  431. package/dist/views/MessageInput/ModelSwitcher/index.js +25 -0
  432. package/dist/views/MessageInput/ModelSwitcher/index.js.map +1 -0
  433. package/dist/views/MessageInput/ModelSwitcher/utils.d.ts +30 -0
  434. package/dist/views/MessageInput/ModelSwitcher/utils.d.ts.map +1 -0
  435. package/dist/views/MessageInput/ModelSwitcher/utils.js +91 -0
  436. package/dist/views/MessageInput/ModelSwitcher/utils.js.map +1 -0
  437. package/dist/views/MessageInput/QuickCommandSelector.d.ts +5 -0
  438. package/dist/views/MessageInput/QuickCommandSelector.d.ts.map +1 -0
  439. package/dist/views/MessageInput/QuickCommandSelector.js +104 -0
  440. package/dist/views/MessageInput/QuickCommandSelector.js.map +1 -0
  441. package/dist/views/MessageInput/SelectContent.d.ts +2 -0
  442. package/dist/views/MessageInput/SelectContent.d.ts.map +1 -0
  443. package/dist/views/MessageInput/SelectContent.js +84 -0
  444. package/dist/views/MessageInput/SelectContent.js.map +1 -0
  445. package/dist/views/MessageInput/UploadBar.d.ts +2 -0
  446. package/dist/views/MessageInput/UploadBar.d.ts.map +1 -0
  447. package/dist/views/MessageInput/UploadBar.js +74 -0
  448. package/dist/views/MessageInput/UploadBar.js.map +1 -0
  449. package/dist/views/MessageInput/UploadDragNDrop.d.ts +14 -0
  450. package/dist/views/MessageInput/UploadDragNDrop.d.ts.map +1 -0
  451. package/dist/views/MessageInput/UploadDragNDrop.js +51 -0
  452. package/dist/views/MessageInput/UploadDragNDrop.js.map +1 -0
  453. package/dist/views/MessageInput/chat-entry-history.d.ts +11 -0
  454. package/dist/views/MessageInput/chat-entry-history.d.ts.map +1 -0
  455. package/dist/views/MessageInput/chat-entry-history.js +78 -0
  456. package/dist/views/MessageInput/chat-entry-history.js.map +1 -0
  457. package/dist/views/MessageInput/dictionary.d.ts +1 -1
  458. package/dist/views/MessageInput/dictionary.d.ts.map +1 -1
  459. package/dist/views/MessageInput/dictionary.js +52 -10
  460. package/dist/views/MessageInput/dictionary.js.map +1 -1
  461. package/dist/views/MessageInput/index.d.ts +9 -6
  462. package/dist/views/MessageInput/index.d.ts.map +1 -1
  463. package/dist/views/MessageInput/index.js +112 -20
  464. package/dist/views/MessageInput/index.js.map +1 -1
  465. package/dist/views/MessageInput/styled.d.ts +13 -1
  466. package/dist/views/MessageInput/styled.d.ts.map +1 -1
  467. package/dist/views/MessageInput/styled.js +223 -85
  468. package/dist/views/MessageInput/styled.js.map +1 -1
  469. package/dist/views/MinimizedHeader.d.ts +4 -0
  470. package/dist/views/MinimizedHeader.d.ts.map +1 -1
  471. package/dist/views/MinimizedHeader.js +9 -7
  472. package/dist/views/MinimizedHeader.js.map +1 -1
  473. package/dist/views/Resources.d.ts +2 -0
  474. package/dist/views/Resources.d.ts.map +1 -0
  475. package/dist/views/Resources.js +69 -0
  476. package/dist/views/Resources.js.map +1 -0
  477. package/dist/views/Stacks.d.ts +12 -0
  478. package/dist/views/Stacks.d.ts.map +1 -1
  479. package/dist/views/Stacks.js +117 -21
  480. package/dist/views/Stacks.js.map +1 -1
  481. package/dist/views/Steps/FlowChart/HandleGroup.d.ts +10 -0
  482. package/dist/views/Steps/FlowChart/HandleGroup.d.ts.map +1 -0
  483. package/dist/views/Steps/FlowChart/HandleGroup.js +4 -0
  484. package/dist/views/Steps/FlowChart/HandleGroup.js.map +1 -0
  485. package/dist/views/Steps/FlowChart/NodeDynamic.d.ts +15 -0
  486. package/dist/views/Steps/FlowChart/NodeDynamic.d.ts.map +1 -0
  487. package/dist/views/Steps/FlowChart/NodeDynamic.js +41 -0
  488. package/dist/views/Steps/FlowChart/NodeDynamic.js.map +1 -0
  489. package/dist/views/Steps/FlowChart/NodeStep.d.ts +10 -0
  490. package/dist/views/Steps/FlowChart/NodeStep.d.ts.map +1 -0
  491. package/dist/views/Steps/FlowChart/NodeStep.js +13 -0
  492. package/dist/views/Steps/FlowChart/NodeStep.js.map +1 -0
  493. package/dist/views/Steps/FlowChart/hooks.d.ts +7 -0
  494. package/dist/views/Steps/FlowChart/hooks.d.ts.map +1 -0
  495. package/dist/views/Steps/FlowChart/hooks.js +31 -0
  496. package/dist/views/Steps/FlowChart/hooks.js.map +1 -0
  497. package/dist/views/Steps/FlowChart/index.d.ts +12 -0
  498. package/dist/views/Steps/FlowChart/index.d.ts.map +1 -0
  499. package/dist/views/Steps/FlowChart/index.js +78 -0
  500. package/dist/views/Steps/FlowChart/index.js.map +1 -0
  501. package/dist/views/Steps/FlowChart/layout.d.ts +8 -0
  502. package/dist/views/Steps/FlowChart/layout.d.ts.map +1 -0
  503. package/dist/views/Steps/FlowChart/layout.js +59 -0
  504. package/dist/views/Steps/FlowChart/layout.js.map +1 -0
  505. package/dist/views/Steps/FlowChart/styled.d.ts +14 -0
  506. package/dist/views/Steps/FlowChart/styled.d.ts.map +1 -0
  507. package/dist/views/Steps/FlowChart/styled.js +156 -0
  508. package/dist/views/Steps/FlowChart/styled.js.map +1 -0
  509. package/dist/views/Steps/FlowChart/types.d.ts +25 -0
  510. package/dist/views/Steps/FlowChart/types.d.ts.map +1 -0
  511. package/dist/views/Steps/FlowChart/types.js +2 -0
  512. package/dist/views/Steps/FlowChart/types.js.map +1 -0
  513. package/dist/views/Steps/StepModal.d.ts +10 -0
  514. package/dist/views/Steps/StepModal.d.ts.map +1 -0
  515. package/dist/views/Steps/StepModal.js +139 -0
  516. package/dist/views/Steps/StepModal.js.map +1 -0
  517. package/dist/views/Steps/StepsPanel.d.ts +6 -0
  518. package/dist/views/Steps/StepsPanel.d.ts.map +1 -0
  519. package/dist/views/Steps/StepsPanel.js +18 -0
  520. package/dist/views/Steps/StepsPanel.js.map +1 -0
  521. package/dist/views/Steps/dictionary.d.ts +43 -0
  522. package/dist/views/Steps/dictionary.d.ts.map +1 -0
  523. package/dist/views/Steps/dictionary.js +45 -0
  524. package/dist/views/Steps/dictionary.js.map +1 -0
  525. package/dist/views/Steps/index.d.ts +5 -0
  526. package/dist/views/Steps/index.d.ts.map +1 -0
  527. package/dist/views/Steps/index.js +30 -0
  528. package/dist/views/Steps/index.js.map +1 -0
  529. package/dist/views/Steps/utils.d.ts +7 -0
  530. package/dist/views/Steps/utils.d.ts.map +1 -0
  531. package/dist/views/Steps/utils.js +32 -0
  532. package/dist/views/Steps/utils.js.map +1 -0
  533. package/dist/views/Tools.d.ts +2 -0
  534. package/dist/views/Tools.d.ts.map +1 -0
  535. package/dist/views/Tools.js +53 -0
  536. package/dist/views/Tools.js.map +1 -0
  537. package/dist/views/Workspaces/WorkspacesTab.d.ts +20 -0
  538. package/dist/views/Workspaces/WorkspacesTab.d.ts.map +1 -0
  539. package/dist/views/Workspaces/WorkspacesTab.js +61 -0
  540. package/dist/views/Workspaces/WorkspacesTab.js.map +1 -0
  541. package/dist/views/Workspaces/index.d.ts +5 -0
  542. package/dist/views/Workspaces/index.d.ts.map +1 -0
  543. package/dist/views/Workspaces/index.js +69 -0
  544. package/dist/views/Workspaces/index.js.map +1 -0
  545. package/package.dev.json +3 -0
  546. package/package.json +21 -13
  547. package/package.stg.json +4 -0
  548. package/src/StackspotAIWidget.tsx +96 -37
  549. package/src/app-metadata.json +175 -0
  550. package/src/assets/placeholder.png +0 -0
  551. package/src/chat-interceptors/CustomInputs.ts +14 -1
  552. package/src/chat-interceptors/quick-command-questions.ts +12 -2
  553. package/src/chat-interceptors/quick-commands.ts +286 -52
  554. package/src/chat-interceptors/send-message.ts +253 -25
  555. package/src/components/AdaptiveTextArea.tsx +36 -11
  556. package/src/components/AgentCard/AgentCardCreate.tsx +42 -0
  557. package/src/components/AgentCard/dictionary.ts +25 -0
  558. package/src/components/AgentCard/index.tsx +82 -0
  559. package/src/components/AnimatedOpacity.tsx +55 -0
  560. package/src/components/AutoFocus.tsx +42 -0
  561. package/src/components/ButtonFavorite.tsx +78 -0
  562. package/src/components/Code.tsx +94 -59
  563. package/src/components/ComponentNavigator.tsx +99 -0
  564. package/src/components/Fading.tsx +66 -0
  565. package/src/components/FadingOverflow.tsx +39 -12
  566. package/src/components/FileDescription.tsx +118 -0
  567. package/src/components/HistoryList.tsx +19 -2
  568. package/src/components/ListResource.tsx +60 -0
  569. package/src/components/Markdown.tsx +2 -1
  570. package/src/components/Modal.tsx +85 -0
  571. package/src/components/QuickStartButton.tsx +15 -47
  572. package/src/components/RightPanelContentList.tsx +15 -0
  573. package/src/components/RightPanelForm.tsx +64 -22
  574. package/src/components/RightPanelTabs.tsx +7 -32
  575. package/src/components/Selector/index.tsx +312 -0
  576. package/src/components/Selector/styled.ts +158 -0
  577. package/src/components/StackedBadge.tsx +77 -0
  578. package/src/components/TabManager.tsx +36 -36
  579. package/src/components/ToolBadge.tsx +67 -0
  580. package/src/components/WorkspaceTabNavigator.tsx +172 -0
  581. package/src/components/form/DescribedCheckboxGroup.tsx +135 -33
  582. package/src/components/form/DescribedRadioGroup.tsx +136 -32
  583. package/src/components/form/dictionary.ts +18 -0
  584. package/src/components/form/styled.ts +1 -2
  585. package/src/components/form/types.ts +45 -1
  586. package/src/context/AIWidgetProvider.tsx +19 -0
  587. package/src/context/hooks.ts +86 -16
  588. package/src/features.ts +90 -16
  589. package/src/hooks/midnight-update-view.ts +36 -0
  590. package/src/images.d.ts +5 -0
  591. package/src/index.ts +16 -0
  592. package/src/layout.css +95 -28
  593. package/src/regex.ts +2 -0
  594. package/src/right-panel/DefaultPanel.tsx +7 -7
  595. package/src/right-panel/RightPanel.tsx +3 -0
  596. package/src/right-panel/RightPanelProvider.tsx +15 -0
  597. package/src/right-panel/constants.ts +1 -0
  598. package/src/right-panel/hooks.tsx +8 -1
  599. package/src/state/ChatEntry.ts +189 -9
  600. package/src/state/ChatState.ts +131 -14
  601. package/src/state/ChatTabsController.ts +78 -8
  602. package/src/state/ObservableState.ts +14 -0
  603. package/src/state/WidgetState.ts +86 -3
  604. package/src/state/constants.ts +13 -0
  605. package/src/state/types.ts +12 -1
  606. package/src/types.ts +21 -4
  607. package/src/utils/chat.ts +15 -14
  608. package/src/utils/check-is-trial.ts +6 -0
  609. package/src/utils/copy-to-clipboard.ts +29 -0
  610. package/src/utils/date.ts +28 -4
  611. package/src/utils/download.ts +5 -0
  612. package/src/utils/error.ts +56 -0
  613. package/src/utils/knowledge-source.ts +18 -2
  614. package/src/utils/planning-tool.ts +41 -0
  615. package/src/utils/programming-languages.ts +10 -0
  616. package/src/utils/string.ts +5 -1
  617. package/src/utils/tools.ts +32 -0
  618. package/src/utils/update-tool-step.tsx +27 -0
  619. package/src/utils/upload/FileUpload.ts +63 -0
  620. package/src/utils/upload/UploadManager.ts +156 -0
  621. package/src/utils/upload/context.tsx +44 -0
  622. package/src/utils/upload/errors.ts +34 -0
  623. package/src/utils/upload/types.ts +7 -0
  624. package/src/utils/upload/use-paste-upload.tsx +30 -0
  625. package/src/utils/upload/utils.ts +12 -0
  626. package/src/utils/url.ts +8 -0
  627. package/src/views/Agents/AgentDescription.tsx +107 -0
  628. package/src/views/Agents/AgentsPanel.tsx +57 -0
  629. package/src/views/Agents/AgentsTab.tsx +126 -0
  630. package/src/views/Agents/dictionary.ts +45 -0
  631. package/src/views/Agents/index.tsx +26 -0
  632. package/src/views/Agents/styled.ts +69 -0
  633. package/src/views/Agents/useAgentFavorites.ts +63 -0
  634. package/src/views/Chat/AgentInfo.tsx +13 -8
  635. package/src/views/Chat/ButtonExecutionDetail.tsx +46 -0
  636. package/src/views/Chat/ChatMessage.tsx +465 -79
  637. package/src/views/Chat/ChatMessages.tsx +15 -4
  638. package/src/views/Chat/StepsList.tsx +394 -0
  639. package/src/views/Chat/chat-scroll.ts +1 -1
  640. package/src/views/Chat/events.ts +71 -0
  641. package/src/views/Chat/index.tsx +17 -3
  642. package/src/views/Chat/styled.ts +158 -32
  643. package/src/views/ChatHistory/ChatHistoryPanel.tsx +8 -5
  644. package/src/views/ChatHistory/HistoryItem.tsx +23 -44
  645. package/src/views/ChatHistory/index.tsx +6 -4
  646. package/src/views/ChatHistory/styled.ts +3 -5
  647. package/src/views/ChatHistory/utils.ts +144 -11
  648. package/src/views/ChatTabSelection.tsx +47 -20
  649. package/src/views/Editor.tsx +28 -18
  650. package/src/views/Home/BuiltInAgent.tsx +67 -0
  651. package/src/views/Home/CustomAgent.tsx +36 -0
  652. package/src/views/Home/index.tsx +48 -0
  653. package/src/views/Home/styled.ts +74 -0
  654. package/src/views/Home/types.ts +16 -0
  655. package/src/views/KSDocument.tsx +11 -8
  656. package/src/views/KnowledgeSources.tsx +169 -62
  657. package/src/views/MessageInput/AgentSelector.tsx +92 -0
  658. package/src/views/MessageInput/ButtonAgent.tsx +73 -0
  659. package/src/views/MessageInput/ButtonBar.tsx +57 -0
  660. package/src/views/MessageInput/ContextBar.tsx +117 -0
  661. package/src/views/MessageInput/ModelSwitcher/index.tsx +69 -0
  662. package/src/views/MessageInput/ModelSwitcher/utils.tsx +143 -0
  663. package/src/views/MessageInput/QuickCommandSelector.tsx +137 -0
  664. package/src/views/MessageInput/SelectContent.tsx +99 -0
  665. package/src/views/MessageInput/UploadBar.tsx +107 -0
  666. package/src/views/MessageInput/UploadDragNDrop.tsx +79 -0
  667. package/src/views/MessageInput/chat-entry-history.ts +97 -0
  668. package/src/views/MessageInput/dictionary.ts +52 -10
  669. package/src/views/MessageInput/index.tsx +154 -51
  670. package/src/views/MessageInput/styled.ts +226 -85
  671. package/src/views/MinimizedHeader.tsx +11 -10
  672. package/src/views/Resources.tsx +108 -0
  673. package/src/views/Stacks.tsx +152 -39
  674. package/src/views/Steps/FlowChart/HandleGroup.tsx +14 -0
  675. package/src/views/Steps/FlowChart/NodeDynamic.tsx +97 -0
  676. package/src/views/Steps/FlowChart/NodeStep.tsx +49 -0
  677. package/src/views/Steps/FlowChart/hooks.ts +41 -0
  678. package/src/views/Steps/FlowChart/index.tsx +111 -0
  679. package/src/views/Steps/FlowChart/layout.ts +73 -0
  680. package/src/views/Steps/FlowChart/styled.ts +157 -0
  681. package/src/views/Steps/FlowChart/types.ts +28 -0
  682. package/src/views/Steps/StepModal.tsx +233 -0
  683. package/src/views/Steps/StepsPanel.tsx +31 -0
  684. package/src/views/Steps/dictionary.ts +48 -0
  685. package/src/views/Steps/index.tsx +36 -0
  686. package/src/views/Steps/utils.tsx +34 -0
  687. package/src/views/Tools.tsx +77 -0
  688. package/src/views/Workspaces/WorkspacesTab.tsx +116 -0
  689. package/src/views/Workspaces/index.tsx +78 -0
  690. package/tsconfig.json +8 -3
  691. package/dist/components/Accordion.d.ts +0 -10
  692. package/dist/components/Accordion.d.ts.map +0 -1
  693. package/dist/components/Accordion.js +0 -46
  694. package/dist/components/Accordion.js.map +0 -1
  695. package/dist/components/FallbackBoundary/ErrorBoundary.d.ts +0 -30
  696. package/dist/components/FallbackBoundary/ErrorBoundary.d.ts.map +0 -1
  697. package/dist/components/FallbackBoundary/ErrorBoundary.js +0 -38
  698. package/dist/components/FallbackBoundary/ErrorBoundary.js.map +0 -1
  699. package/dist/components/FallbackBoundary/Loading.d.ts +0 -2
  700. package/dist/components/FallbackBoundary/Loading.d.ts.map +0 -1
  701. package/dist/components/FallbackBoundary/Loading.js +0 -12
  702. package/dist/components/FallbackBoundary/Loading.js.map +0 -1
  703. package/dist/components/FallbackBoundary/index.d.ts +0 -6
  704. package/dist/components/FallbackBoundary/index.d.ts.map +0 -1
  705. package/dist/components/FallbackBoundary/index.js +0 -9
  706. package/dist/components/FallbackBoundary/index.js.map +0 -1
  707. package/dist/components/IconInput.d.ts +0 -7
  708. package/dist/components/IconInput.d.ts.map +0 -1
  709. package/dist/components/IconInput.js +0 -58
  710. package/dist/components/IconInput.js.map +0 -1
  711. package/dist/components/OverlayMenu.d.ts +0 -10
  712. package/dist/components/OverlayMenu.d.ts.map +0 -1
  713. package/dist/components/OverlayMenu.js +0 -58
  714. package/dist/components/OverlayMenu.js.map +0 -1
  715. package/dist/components/ProgressBar.d.ts +0 -11
  716. package/dist/components/ProgressBar.d.ts.map +0 -1
  717. package/dist/components/ProgressBar.js +0 -126
  718. package/dist/components/ProgressBar.js.map +0 -1
  719. package/dist/components/Tooltip/Tooltip.d.ts +0 -12
  720. package/dist/components/Tooltip/Tooltip.d.ts.map +0 -1
  721. package/dist/components/Tooltip/Tooltip.js +0 -17
  722. package/dist/components/Tooltip/Tooltip.js.map +0 -1
  723. package/dist/components/Tooltip/TooltipAPI.d.ts +0 -13
  724. package/dist/components/Tooltip/TooltipAPI.d.ts.map +0 -1
  725. package/dist/components/Tooltip/TooltipAPI.js +0 -90
  726. package/dist/components/Tooltip/TooltipAPI.js.map +0 -1
  727. package/dist/components/Tooltip/context.d.ts +0 -5
  728. package/dist/components/Tooltip/context.d.ts.map +0 -1
  729. package/dist/components/Tooltip/context.js +0 -18
  730. package/dist/components/Tooltip/context.js.map +0 -1
  731. package/dist/components/Tooltip/index.d.ts +0 -3
  732. package/dist/components/Tooltip/index.d.ts.map +0 -1
  733. package/dist/components/Tooltip/index.js +0 -3
  734. package/dist/components/Tooltip/index.js.map +0 -1
  735. package/dist/components/Tooltip/style.d.ts +0 -4
  736. package/dist/components/Tooltip/style.d.ts.map +0 -1
  737. package/dist/components/Tooltip/style.js +0 -22
  738. package/dist/components/Tooltip/style.js.map +0 -1
  739. package/dist/components/Tooltip/types.d.ts +0 -14
  740. package/dist/components/Tooltip/types.d.ts.map +0 -1
  741. package/dist/views/Agents.d.ts +0 -2
  742. package/dist/views/Agents.d.ts.map +0 -1
  743. package/dist/views/Agents.js +0 -143
  744. package/dist/views/Agents.js.map +0 -1
  745. package/dist/views/Home.d.ts +0 -6
  746. package/dist/views/Home.d.ts.map +0 -1
  747. package/dist/views/Home.js +0 -68
  748. package/dist/views/Home.js.map +0 -1
  749. package/dist/views/MessageInput/ButtonGroup.d.ts +0 -12
  750. package/dist/views/MessageInput/ButtonGroup.d.ts.map +0 -1
  751. package/dist/views/MessageInput/ButtonGroup.js +0 -24
  752. package/dist/views/MessageInput/ButtonGroup.js.map +0 -1
  753. package/dist/views/MessageInput/InfoBar.d.ts +0 -2
  754. package/dist/views/MessageInput/InfoBar.d.ts.map +0 -1
  755. package/dist/views/MessageInput/InfoBar.js +0 -35
  756. package/dist/views/MessageInput/InfoBar.js.map +0 -1
  757. package/dist/views/Workspaces.d.ts +0 -2
  758. package/dist/views/Workspaces.d.ts.map +0 -1
  759. package/dist/views/Workspaces.js +0 -62
  760. package/dist/views/Workspaces.js.map +0 -1
  761. package/src/components/Accordion.tsx +0 -64
  762. package/src/components/FallbackBoundary/ErrorBoundary.tsx +0 -48
  763. package/src/components/FallbackBoundary/Loading.tsx +0 -14
  764. package/src/components/FallbackBoundary/index.tsx +0 -15
  765. package/src/components/IconInput.tsx +0 -70
  766. package/src/components/OverlayMenu.tsx +0 -77
  767. package/src/components/ProgressBar.tsx +0 -153
  768. package/src/components/Tooltip/Tooltip.tsx +0 -36
  769. package/src/components/Tooltip/TooltipAPI.ts +0 -84
  770. package/src/components/Tooltip/context.tsx +0 -24
  771. package/src/components/Tooltip/index.ts +0 -2
  772. package/src/components/Tooltip/style.tsx +0 -24
  773. package/src/components/Tooltip/types.ts +0 -15
  774. package/src/views/Agents.tsx +0 -200
  775. package/src/views/Home.tsx +0 -109
  776. package/src/views/MessageInput/ButtonGroup.tsx +0 -91
  777. package/src/views/MessageInput/InfoBar.tsx +0 -82
  778. package/src/views/Workspaces.tsx +0 -92
  779. /package/dist/{components/Tooltip → utils/upload}/types.js +0 -0
@@ -1,21 +1,65 @@
1
1
  import { WithStyle } from '@stack-spot/portal-theme'
2
2
 
3
3
  interface RadioCheckProps<T> extends WithStyle {
4
+ /**
5
+ * The options available.
6
+ */
4
7
  options: T[],
8
+ /**
9
+ * A function that renders an option as a label. This can either return a string or a React Element.
10
+ */
5
11
  renderLabel: (option: T) => React.ReactNode,
12
+ /**
13
+ * A function that renders an option as a description. This can either return a string or a React Element.
14
+ */
6
15
  renderDescription: (option: T) => React.ReactNode,
16
+ /**
17
+ * A function that renders a element before the content
18
+ */
19
+ renderBeforeElement?: (option: T) => React.ReactNode,
20
+ /**
21
+ * A function that renders a element after the content
22
+ */
23
+ renderAfterElement?: (option: T) => React.ReactNode,
24
+ /**
25
+ * A function that gives a custom className to the rendered option.
26
+ */
7
27
  optionClassName?: (option: T) => string | undefined,
28
+ /**
29
+ * A function that gives a custom style to the rendered option.
30
+ */
8
31
  optionStyle?: (option: T) => React.CSSProperties | undefined,
32
+ /**
33
+ * A function that generates a unique id for the option.
34
+ */
9
35
  keygen: (option: T) => React.Key,
10
-
36
+ /**
37
+ * An object containing favorite items and related operations.
38
+ */
11
39
  }
12
40
 
13
41
  export interface RadioProps<T> extends RadioCheckProps<T> {
42
+ /**
43
+ * The current value of the radio group. This is one of the options.
44
+ *
45
+ * Comparisons use the same-value-zero algorithm (`===`).
46
+ */
14
47
  value: T | undefined,
48
+ /**
49
+ * A function to call whenever the value changes.
50
+ */
15
51
  onChange: (option: T) => void,
16
52
  }
17
53
 
18
54
  export interface CheckProps<T> extends RadioCheckProps<T> {
55
+ /**
56
+ * The current value of the checkbox group. This is sub-array of the array of options.
57
+ *
58
+ * Comparisons use the same-value-zero algorithm (`===`).
59
+ */
19
60
  value: T[],
61
+ /**
62
+ * A function to call whenever the value changes.
63
+ */
20
64
  onChange: (option: T[]) => void,
21
65
  }
@@ -3,4 +3,23 @@ import { WidgetState } from '../state/WidgetState'
3
3
 
4
4
  export const AIWidgetContext = createContext<WidgetState | undefined>(undefined)
5
5
 
6
+ /**
7
+ * Creates a new context for the AI Chat Widget.
8
+ *
9
+ * This is not required, but makes it much easier to control the chat and is the only way to have multiple instances of the chat model in
10
+ * the same application.
11
+ *
12
+ * To control the chat widget in any component descendant from the `AIWidgetProvider`, you can call the hook `useWidget()`.
13
+ *
14
+ * Example:
15
+ * ```
16
+ * const widget = useMemo(() => new WidgetState(), [])
17
+ *
18
+ * return (
19
+ * <AIWidgetProvider value={widget}>
20
+ * {children}
21
+ * </AIWidgetProvider>
22
+ * ```
23
+ *
24
+ */
6
25
  export const AIWidgetProvider = AIWidgetContext.Provider
@@ -1,14 +1,16 @@
1
- /* eslint-disable react-hooks/rules-of-hooks */
1
+ import { last } from 'lodash'
2
2
  import { useContext, useEffect, useState } from 'react'
3
3
  import { ChatEntry } from '../state/ChatEntry'
4
- import { ChatProperties, ChatState, MessageInterceptor } from '../state/ChatState'
4
+ import { ChatProperties, ChatState } from '../state/ChatState'
5
5
  import { ObservableState } from '../state/ObservableState'
6
6
  import { WidgetProperties, WidgetState } from '../state/WidgetState'
7
- import { createNewChat } from '../utils/chat'
8
7
  import { AIWidgetContext } from './AIWidgetProvider'
9
8
 
10
9
  let globalWidgetState: WidgetState | undefined
11
10
 
11
+ /**
12
+ * Returns the closest instance of a WidgetState (React Context). If no context is available, uses a global instance of the chat widget.
13
+ */
12
14
  export function useWidget(): WidgetState {
13
15
  const fromContext = useContext(AIWidgetContext)
14
16
  if (fromContext) return fromContext
@@ -16,7 +18,10 @@ export function useWidget(): WidgetState {
16
18
  return globalWidgetState
17
19
  }
18
20
 
19
- function useObservableState<T, K extends keyof T>(state: ObservableState<T>, key: K): T[K] {
21
+ /**
22
+ * Watches an ObservableState.
23
+ */
24
+ export function useObservableState<T, K extends keyof T>(state: ObservableState<T>, key: K): T[K] {
20
25
  const [value, setValue] = useState(state.get(key))
21
26
  useEffect(() => {
22
27
  setValue(state.get(key))
@@ -25,43 +30,80 @@ function useObservableState<T, K extends keyof T>(state: ObservableState<T>, key
25
30
  return value
26
31
  }
27
32
 
33
+ /**
34
+ * Watches one of the widget states.
35
+ * @param key the key watch changes for.
36
+ * @returns the value of the state referred by the key.
37
+ */
28
38
  export function useWidgetState<K extends keyof WidgetProperties>(key: K): WidgetProperties[K] {
29
39
  const widget = useWidget()
30
40
  return useObservableState(widget, key)
31
41
  }
32
42
 
33
- export function useChatTabs(): { chats: ChatState[], active: string } {
43
+ /**
44
+ * Watches the tabs of a ChatState. The value is updated whenever a tab is added, removed or selected.
45
+ */
46
+ export function useChatTabs(): { chats: ChatState[], active: ChatState } {
34
47
  const widget = useWidget()
35
- const [tabs, setTabs] = useState<{ chats: ChatState[], active: string }>({
36
- chats: widget.chatTabs.getAll(),
37
- active: widget.chatTabs.getActiveChatId(),
48
+ const [tabs, setTabs] = useState<{ chats: ChatState[], active: ChatState }>({
49
+ chats: widget.chatTabs.getAll(),
50
+ active: widget.chatTabs.getActiveChat(),
38
51
  })
39
52
  useEffect(() => widget.chatTabs.onChange((chats, active) => setTabs({ chats, active })), [])
40
53
  return tabs
41
54
  }
42
55
 
56
+ /**
57
+ * Gets a chat according to its identifier (conversation id).
58
+ *
59
+ * An error is thrown if the id doesn't correspond to any chat currently opened.
60
+ *
61
+ * @returns the chat state.
62
+ */
43
63
  export function useChat(chatId: string): ChatState {
44
64
  const widget = useWidget()
45
65
  const chat = widget.chatTabs.get(chatId)
46
- if (!chat) throw new Error(`No chat with id ${chatId} was found. Maybe there are no chats opened, try to call useFirstChat first.`)
66
+ if (!chat) throw new Error(`No chat with id ${chatId} was found. Maybe there are no chats opened.`)
47
67
  return chat
48
68
  }
49
69
 
70
+ /**
71
+ * Watches the current chat (selected in the chat tabs.)
72
+ *
73
+ * The value changes whenever a new chat is selected.
74
+ *
75
+ * @returns the currently active chat.
76
+ */
50
77
  export function useCurrentChat(): ChatState {
51
- const { active } = useChatTabs()
52
- return useChat(active)
78
+ return useChatTabs().active
53
79
  }
54
80
 
81
+ /**
82
+ * Watches one of the chat states.
83
+ * @param chatId the id of chat to watch.
84
+ * @param key the key of the state to watch.
85
+ * @returns the value of the state referred by the key.
86
+ */
55
87
  export function useChatState<K extends keyof ChatProperties>(chatId: string, key: K): ChatProperties[K] {
56
88
  const chat = useChat(chatId)
57
89
  return useObservableState(chat, key)
58
90
  }
59
91
 
92
+ /**
93
+ * Watches one of the current chat states. This is the same as calling `useChatState` with the id of the current chat.
94
+ * @param key the key of the state to watch.
95
+ * @returns the value of the state referred by the key.
96
+ */
60
97
  export function useCurrentChatState<K extends keyof ChatProperties>(key: K): ChatProperties[K] {
61
98
  const chat = useCurrentChat()
62
99
  return useObservableState(chat, key)
63
100
  }
64
101
 
102
+ /**
103
+ * Watches a chat state for changes in the list of messages (chat entries).
104
+ * @param chatId the id of the chat to watch.
105
+ * @returns the list of messages in the chat.
106
+ */
65
107
  export function useChatMessages(chatId: string): ChatEntry[] {
66
108
  const chat = useChat(chatId)
67
109
  const [entries, setEntries] = useState(chat.getMessages())
@@ -72,19 +114,47 @@ export function useChatMessages(chatId: string): ChatEntry[] {
72
114
  return entries
73
115
  }
74
116
 
117
+ /**
118
+ * Watches the chat state currently active for changes in the list of messages (chat entries). This is the same as calling `useChatMessages`
119
+ * with the id of the current chat.
120
+ * @returns the list of messages in the chat.
121
+ */
75
122
  export function useCurrentChatMessages(): ChatEntry[] {
76
123
  const { active } = useChatTabs()
77
- return useChatMessages(active)
124
+ return useChatMessages(active.id)
78
125
  }
79
126
 
127
+ /**
128
+ * Watches a chat message (chat entry) for changes in its composition. This allows messages to be streamed: each part of the stream will
129
+ * change the current value of the entry.
130
+ * @param entry the message to watch.
131
+ * @returns the current value of the message.
132
+ */
80
133
  export function useChatEntry(entry: ChatEntry) {
81
134
  const [content, setContent] = useState(entry.getValue())
82
135
  useEffect(() => entry.onChange(setContent), [])
83
136
  return content
84
137
  }
85
138
 
86
- export function useFirstChat(interceptors: MessageInterceptor[]) {
87
- const widget = useWidget()
88
- const tabs = widget.chatTabs
89
- if (!tabs.getAll().length) createNewChat(widget, interceptors)
139
+ /*
140
+ * An efficient hook that returns true when the current chat entry is the last entry and false when it's not.
141
+ *
142
+ * For efficiency purposes, this hook assumes that:
143
+ * - Any change to the list of messages makes it grow.
144
+ * - Once a message is no longer the last, it will never be the last entry again.
145
+ *
146
+ * @param id: the id of the entry.
147
+ **/
148
+ export function useIsLastEntryInCurrentChat(id: number) {
149
+ const chat = useCurrentChat()
150
+ const [isLast, setLast] = useState(last(chat.getMessages())?.id === id)
151
+ useEffect(() => {
152
+ if (!isLast) return
153
+ const removeListener = chat.onChangeMessages(() => {
154
+ setLast(false)
155
+ removeListener()
156
+ })
157
+ return removeListener
158
+ }, [chat])
159
+ return isLast
90
160
  }
package/src/features.ts CHANGED
@@ -1,21 +1,95 @@
1
- export interface MessageInputFeatures {
2
- stack?: boolean,
3
- workspace?: boolean,
4
- knowledgeSource?: boolean,
5
- agent?: boolean,
6
- quickCommands?: boolean,
7
- editor?: boolean,
1
+ export interface ChatFeatures {
2
+ /**
3
+ * Enables stack selection.
4
+ */
5
+ stack: boolean,
6
+ /**
7
+ * Enables workspace selection.
8
+ */
9
+ workspace: boolean,
10
+ /**
11
+ * Enables knowledge source selection.
12
+ */
13
+ knowledgeSource: boolean,
14
+ /**
15
+ * Enables agent selection.
16
+ */
17
+ agent: boolean,
18
+ /**
19
+ * Enables quick commands.
20
+ */
21
+ quickCommands: boolean,
22
+ /**
23
+ * Enables the editor.
24
+ */
25
+ editor: boolean,
26
+ /**
27
+ * Enables chat message. Default: true
28
+ */
29
+ messageInput: boolean,
30
+ /**
31
+ * Enables file uploads.
32
+ */
33
+ upload: boolean,
34
+ /**
35
+ * Enables the listing of sources when writing a chat response.
36
+ */
37
+ showSourcesInResponse: boolean,
38
+ /**
39
+ * Enables streaming in chat responses.
40
+ */
41
+ streaming: boolean,
42
+ /**
43
+ * Enables LLM select.
44
+ */
45
+ showLLMSelect: boolean,
8
46
  }
9
47
 
10
- export interface AIWidgetFeatures extends MessageInputFeatures {
11
- chatHistory?: boolean,
48
+ export type Scope = 'favorite' | 'builtin' | 'personal' | 'shared' | 'workspace' | 'account'
49
+
50
+ export interface GlobalFeatures {
51
+ /**
52
+ * Enables the chat history.
53
+ */
54
+ chatHistory: boolean,
55
+ /**
56
+ * When selecting a resource, they're separated by scope (account, personal, workspace, etc.).
57
+ *
58
+ * If this is set, only the scopes in this list will be enabled.
59
+ */
60
+ scopes?: Scope[],
61
+ /**
62
+ * When set, only items(knowledge sources, agents, stacks ai, quick commands) from that workspace will be shown to the user.
63
+ */
64
+ workspaceId?: string,
65
+ /**
66
+ * when set to false it does not show tab by scope, it shows a single list.
67
+ */
68
+ groupResourcesByScope?: boolean,
12
69
  }
13
70
 
14
- export const defaultFeatures: AIWidgetFeatures = {
15
- stack: true,
16
- workspace: true,
17
- knowledgeSource: true,
18
- agent: true,
19
- chatHistory: true,
20
- editor: true,
71
+ export type AIWidgetFeatures = ChatFeatures & GlobalFeatures
72
+
73
+ /**
74
+ * Receives a partial feature object and returns a full feature object, setting to true any missing property.
75
+ * @param features the partial features object.
76
+ * @returns a full features object.
77
+ */
78
+ export function getFeaturesWithDefaults(features?: Partial<AIWidgetFeatures>): AIWidgetFeatures {
79
+ return {
80
+ agent: true,
81
+ editor: true,
82
+ knowledgeSource: true,
83
+ quickCommands: true,
84
+ stack: true,
85
+ workspace: true,
86
+ chatHistory: true,
87
+ messageInput: true,
88
+ upload: true,
89
+ streaming: true,
90
+ showLLMSelect: true,
91
+ showSourcesInResponse: true,
92
+ groupResourcesByScope: true,
93
+ ...features,
94
+ }
21
95
  }
@@ -0,0 +1,36 @@
1
+ import { useManualRender } from '@stack-spot/portal-components'
2
+ import { useEffect } from 'react'
3
+
4
+ /**
5
+ * Returns the number of milliseconds remaining until the next midnight.
6
+ */
7
+ function getTimeUntilMidnight() {
8
+ const now = new Date()
9
+ const midnight = new Date(now)
10
+ midnight.setHours(24, 0, 0, 0)
11
+ return midnight.getTime() - now.getTime()
12
+ }
13
+
14
+ /**
15
+ * Hook that triggers a component re-render at midnight every day.
16
+ */
17
+ export function useMidnightUpdateView() {
18
+ const { repaint } = useManualRender()
19
+
20
+ useEffect(() => {
21
+ let timer: ReturnType<typeof setTimeout> | undefined
22
+
23
+ const scheduleUpdate = () => {
24
+ const timeUntilMidnight = getTimeUntilMidnight()
25
+
26
+ timer = setTimeout(() => {
27
+ repaint()
28
+ scheduleUpdate()
29
+ }, timeUntilMidnight)
30
+ }
31
+
32
+ scheduleUpdate()
33
+
34
+ return () => { timer && clearTimeout(timer) }
35
+ }, [])
36
+ }
@@ -0,0 +1,5 @@
1
+ declare module '*.png' {
2
+ const value: string
3
+ // eslint-disable-next-line import/no-default-export
4
+ export default value
5
+ }
package/src/index.ts CHANGED
@@ -1,8 +1,24 @@
1
+ /* Attention: in order for the package "page" to work without linking the lib, we must export types separately, using the "type" keyword */
2
+
3
+
4
+ export { createEntryValueFromChatResponse, helperSendMessage } from './chat-interceptors/send-message'
5
+ export { QuickStartButton } from './components/QuickStartButton'
1
6
  export { AIWidgetProvider } from './context/AIWidgetProvider'
2
7
  export * from './context/hooks'
8
+ export { getFeaturesWithDefaults } from './features'
9
+ export type { AIWidgetFeatures, ChatFeatures } from './features'
3
10
  export { StackspotAIWidget } from './StackspotAIWidget'
4
11
  export { ChatEntry } from './state/ChatEntry'
12
+ export type { ChatAction, TextChatEntry } from './state/ChatEntry'
5
13
  export { ChatState } from './state/ChatState'
14
+ export type { MessageInterceptor } from './state/ChatState'
6
15
  export { ChatTabsController } from './state/ChatTabsController'
16
+ export { acceptedFileTypes } from './state/constants'
7
17
  export { ObservableState } from './state/ObservableState'
18
+ export type { Labeled, LabeledAgent, LabeledWithImage } from './state/types'
8
19
  export { WidgetState } from './state/WidgetState'
20
+ export type { ButtonAction } from './types'
21
+ export { defaultLanguage, languages } from './utils/programming-languages'
22
+ export type { CustomRenderResult } from './views/Chat/ChatMessage'
23
+ export { loadChat } from './views/ChatHistory/utils'
24
+
package/src/layout.css CHANGED
@@ -1,29 +1,3 @@
1
- @font-face {
2
- font-family: "San Francisco";
3
- font-weight: 400;
4
- src: url("https://applesocial.s3.amazonaws.com/assets/styles/fonts/sanfrancisco/sanfranciscodisplay-regular-webfont.woff");
5
- }
6
-
7
- /* Scroll bars */
8
-
9
- ::-webkit-scrollbar-track {
10
- background-color: transparent;
11
- }
12
-
13
- ::-webkit-scrollbar {
14
- width: 0.25rem;
15
- height: 0.5rem;
16
- background-color: transparent;
17
- }
18
-
19
- ::-webkit-scrollbar-thumb {
20
- background-color: var(--light-600);
21
- }
22
-
23
- ::-webkit-scrollbar-corner {
24
- background-color: transparent;
25
- }
26
-
27
1
  /* Classes */
28
2
 
29
3
  .ai-chat-widget {
@@ -31,7 +5,7 @@
31
5
  background-color: var(--light-400);
32
6
  border-radius: 4px;
33
7
  position: relative;
34
- overflow: hidden;
8
+ overflow: clip;
35
9
  width: 100%;
36
10
  height: 100%;
37
11
 
@@ -53,7 +27,6 @@
53
27
  .home-page {
54
28
  .title {
55
29
  margin-top: 40px;
56
- font-size: 18px;
57
30
  }
58
31
  .subtitle {
59
32
  font-size: 14px;
@@ -73,6 +46,11 @@
73
46
  display: none;
74
47
  }
75
48
  }
49
+ .quick-command-selector {
50
+ width: auto;
51
+ left: 10px;
52
+ right: 10px;
53
+ }
76
54
  }
77
55
  }
78
56
 
@@ -90,20 +68,40 @@
90
68
  }
91
69
 
92
70
  .chat-container {
71
+ position: relative;
93
72
  padding: 20px;
94
73
  max-width: 1200px;
95
74
  width: calc(100% - 40px);
96
75
  display: flex;
97
76
  flex-direction: column;
98
77
  flex: 1;
78
+ .agent-list .agent-card {
79
+ flex-direction: row;
80
+ align-items: center;
81
+ gap: 8px;
82
+ border-radius: 4px;
83
+ padding: 10px 8px;
84
+ img {
85
+ width: 32px;
86
+ height: 32px;
87
+ border-radius: 4px;
88
+ }
89
+ h6 {
90
+ font-weight: 400;
91
+ font-size: 13px;
92
+ line-height: 14px;
93
+ }
94
+ }
99
95
  }
100
96
 
101
97
  .chat-content {
98
+ padding-bottom: 16px;
102
99
  display: flex;
103
100
  flex-direction: column;
104
101
  flex: 1;
105
102
  flex-basis: 0;
106
103
  overflow: auto;
104
+ padding-right: 12px;
107
105
  }
108
106
 
109
107
  .chat-right-panel {
@@ -119,7 +117,76 @@
119
117
  display: flex;
120
118
  flex-direction: column;
121
119
 
120
+ code {
121
+ overflow: auto;
122
+ }
123
+
122
124
  &.visible {
123
125
  left: 50%;
124
126
  }
125
127
  }
128
+
129
+ .chat-modal {
130
+ position: absolute;
131
+ top: 90px;
132
+ bottom: 20px;
133
+ right: 20px;
134
+ width: 20%;
135
+ min-width: 400px;
136
+ border-radius: 6px;
137
+ background-color: var(--light-400);
138
+ border: 1px solid var(--light-600);
139
+ overflow: auto;
140
+
141
+ > header {
142
+ padding: 14px;
143
+ display: flex;
144
+ align-items: center;
145
+ justify-content: space-between;
146
+ gap: 6px;
147
+ }
148
+ }
149
+
150
+ /* fixes placeholder description */
151
+ .no-data-placeholder {
152
+ > div > p {
153
+ text-align: center;
154
+ }
155
+ }
156
+
157
+ .input-phone .react-international-phone-country-selector-button {
158
+ background-color: var(--light-300);
159
+ border: 1px solid var(--primary-500);
160
+ border-right: none;
161
+ }
162
+
163
+ .input-phone.react-international-phone-input-container .react-international-phone-input {
164
+ background-color: var(--light-300);
165
+ border: 1px solid var(--primary-500);
166
+ border-left: none;
167
+ color: var(--light-contrastText);
168
+ }
169
+
170
+ .upload-drag-drop {
171
+ display: flex;
172
+ background-color: #00000090;
173
+ background-color: color-mix(in srgb, var(--light-300) 80%, transparent);
174
+ position: absolute;
175
+ width: 99%;
176
+ height: 99%;
177
+ top: 0;
178
+ left: 0;
179
+ flex-direction: column;
180
+ justify-content: center;
181
+ align-items: center;
182
+ border: 1px dashed var(--secondary-500);
183
+ z-index: 9999;
184
+ pointer-events: auto;
185
+ color: var(--light-contrastText)
186
+ }
187
+
188
+ .menu-citric-hr {
189
+ hr {
190
+ margin: 0;
191
+ }
192
+ }
package/src/regex.ts ADDED
@@ -0,0 +1,2 @@
1
+ export const quickCommandRegex = /^\/[\w\d-_]+$/
2
+ export const agentRegex = /^@[\w\d-_]+$/
@@ -1,6 +1,4 @@
1
- import { Text } from '@citric/core'
2
- import { Times } from '@citric/icons'
3
- import { IconButton } from '@citric/ui'
1
+ import { IconButton, Text } from '@stack-spot/citric-react'
4
2
  import { Dictionary, useTranslate } from '@stack-spot/portal-translate'
5
3
  import { styled } from 'styled-components'
6
4
  import { WithChildren } from '../types'
@@ -40,18 +38,20 @@ const PanelBox = styled.div`
40
38
  }
41
39
  `
42
40
 
41
+ /**
42
+ * Default layout for a right panel.
43
+ */
43
44
  export const DefaultPanel = ({ description, onClose, title, children }: Props) => {
44
45
  const t = useTranslate(dictionary)
46
+
45
47
  return (
46
48
  <PanelBox>
47
49
  <header>
48
50
  <div className="title">
49
51
  {typeof title === 'string' ? <Text appearance="h5">{title}</Text> : title}
50
- {typeof description === 'string' ? <Text colorScheme="light.700">{description}</Text> : description}
52
+ {typeof description === 'string' ? <Text color="light.700">{description}</Text> : description}
51
53
  </div>
52
- <IconButton title={t.close} aria-label={t.close} onClick={onClose}>
53
- <Times />
54
- </IconButton>
54
+ <IconButton icon="Times" title={t.close} aria-label={t.close} onClick={onClose} />
55
55
  </header>
56
56
  <article>{children}</article>
57
57
  </PanelBox>
@@ -1,5 +1,8 @@
1
1
  import { useRightPanelContent } from './hooks'
2
2
 
3
+ /**
4
+ * Renders the content of the right panel.
5
+ */
3
6
  export const RightPanel = () => {
4
7
  const content = useRightPanelContent()
5
8
  return content
@@ -1,10 +1,25 @@
1
1
  import { createContext, useMemo, useRef, useState } from 'react'
2
2
 
3
3
  interface ContextValue {
4
+ /**
5
+ * The current content of the right panel.
6
+ */
4
7
  content?: React.ReactNode,
8
+ /**
9
+ * Sets the current content of the right panel.
10
+ */
5
11
  setContent?: (content: React.ReactNode) => void,
12
+ /**
13
+ * A reference to the right panel HTML Element.
14
+ */
6
15
  panel?: React.RefObject<HTMLDivElement>,
16
+ /**
17
+ * A reference to the chat window at the left of the right panel.
18
+ */
7
19
  chatWindow?: React.RefObject<HTMLDivElement>,
20
+ /**
21
+ * A function to run when the right panel is closed for the next time.
22
+ */
8
23
  onCloseNext: React.MutableRefObject<(() => void) | undefined>,
9
24
  }
10
25
 
@@ -0,0 +1 @@
1
+ export const panelAnimationTime = 300