@memori.ai/memori-react 8.45.2 → 8.45.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (729) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/dist/components/Chat/Chat.d.ts +1 -0
  3. package/dist/components/Chat/Chat.js +6 -3
  4. package/dist/components/Chat/Chat.js.map +1 -1
  5. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.css +78 -0
  6. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.d.ts +39 -0
  7. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.js +43 -0
  8. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.js.map +1 -0
  9. package/dist/components/ChatInputs/ChatInputs.d.ts +1 -0
  10. package/dist/components/ChatInputs/ChatInputs.js +2 -2
  11. package/dist/components/ChatInputs/ChatInputs.js.map +1 -1
  12. package/dist/components/ContentPreviewModal/DocumentMarkdown.d.ts +7 -0
  13. package/dist/components/ContentPreviewModal/DocumentMarkdown.js +31 -0
  14. package/dist/components/ContentPreviewModal/DocumentMarkdown.js.map +1 -0
  15. package/dist/components/DrawerFooter/DrawerFooter.css +62 -0
  16. package/dist/components/DrawerFooter/DrawerFooter.d.ts +12 -0
  17. package/dist/components/DrawerFooter/DrawerFooter.js +10 -0
  18. package/dist/components/DrawerFooter/DrawerFooter.js.map +1 -0
  19. package/dist/components/IconButton/IconButton.css +135 -0
  20. package/dist/components/IconButton/IconButton.d.ts +9 -0
  21. package/dist/components/IconButton/IconButton.js +36 -0
  22. package/dist/components/IconButton/IconButton.js.map +1 -0
  23. package/dist/components/LoginModal/LoginModal.css +270 -0
  24. package/dist/components/LoginModal/LoginModal.d.ts +19 -0
  25. package/dist/components/LoginModal/LoginModal.js +355 -0
  26. package/dist/components/LoginModal/LoginModal.js.map +1 -0
  27. package/dist/components/MemoriWidget/MemoriWidget.d.ts +2 -2
  28. package/dist/components/MemoriWidget/MemoriWidget.js +13 -21
  29. package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
  30. package/dist/components/MobileSessionPanel/MobileSessionPanel.css +540 -0
  31. package/dist/components/MobileSessionPanel/MobileSessionPanel.d.ts +65 -0
  32. package/dist/components/MobileSessionPanel/MobileSessionPanel.js +254 -0
  33. package/dist/components/MobileSessionPanel/MobileSessionPanel.js.map +1 -0
  34. package/dist/components/PositionPopover/PositionPopover.css +218 -0
  35. package/dist/components/PositionPopover/PositionPopover.d.ts +22 -0
  36. package/dist/components/PositionPopover/PositionPopover.js +208 -0
  37. package/dist/components/PositionPopover/PositionPopover.js.map +1 -0
  38. package/dist/components/ReasoningBlock/ReasoningBlock.css +156 -0
  39. package/dist/components/ReasoningBlock/ReasoningBlock.d.ts +7 -0
  40. package/dist/components/ReasoningBlock/ReasoningBlock.js +61 -0
  41. package/dist/components/ReasoningBlock/ReasoningBlock.js.map +1 -0
  42. package/dist/components/SideDrawer/SideDrawer.css +112 -0
  43. package/dist/components/SideDrawer/SideDrawer.d.ts +22 -0
  44. package/dist/components/SideDrawer/SideDrawer.js +17 -0
  45. package/dist/components/SideDrawer/SideDrawer.js.map +1 -0
  46. package/dist/components/UploadButton/UploadButton.d.ts +2 -0
  47. package/dist/components/UploadButton/UploadButton.js +2 -2
  48. package/dist/components/UploadButton/UploadButton.js.map +1 -1
  49. package/dist/components/UploadButton/UploadImages/UploadImages.d.ts +2 -0
  50. package/dist/components/UploadButton/UploadImages/UploadImages.js +7 -1
  51. package/dist/components/UploadButton/UploadImages/UploadImages.js.map +1 -1
  52. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.d.ts +4 -0
  53. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js +144 -0
  54. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +1 -0
  55. package/{src/components/layouts → dist/components/layouts/WebsiteAssistant}/website-assistant.css +298 -86
  56. package/dist/components/layouts/chat.css +27 -4
  57. package/dist/components/layouts/fullpage.css +628 -0
  58. package/dist/helpers/artifactPanel.d.ts +6 -0
  59. package/dist/helpers/artifactPanel.js +42 -0
  60. package/dist/helpers/artifactPanel.js.map +1 -0
  61. package/dist/helpers/chatScroll.d.ts +12 -0
  62. package/dist/helpers/chatScroll.js +14 -0
  63. package/dist/helpers/chatScroll.js.map +1 -0
  64. package/dist/helpers/conversationHistory.d.ts +16 -0
  65. package/dist/helpers/conversationHistory.js +89 -0
  66. package/dist/helpers/conversationHistory.js.map +1 -0
  67. package/dist/helpers/conversationTitle.d.ts +8 -0
  68. package/dist/helpers/conversationTitle.js +27 -0
  69. package/dist/helpers/conversationTitle.js.map +1 -0
  70. package/dist/helpers/enhanceBubbleCodeBlocks.d.ts +5 -0
  71. package/dist/helpers/enhanceBubbleCodeBlocks.js +97 -0
  72. package/dist/helpers/enhanceBubbleCodeBlocks.js.map +1 -0
  73. package/dist/helpers/highlightMatches.d.ts +2 -0
  74. package/dist/helpers/highlightMatches.js +54 -0
  75. package/dist/helpers/highlightMatches.js.map +1 -0
  76. package/dist/helpers/nats/dialogStateCatchUp.d.ts +3 -0
  77. package/dist/helpers/nats/dialogStateCatchUp.js +40 -0
  78. package/dist/helpers/nats/dialogStateCatchUp.js.map +1 -0
  79. package/dist/helpers/positionPopover.d.ts +3 -0
  80. package/dist/helpers/positionPopover.js +22 -0
  81. package/dist/helpers/positionPopover.js.map +1 -0
  82. package/dist/helpers/prism.d.ts +16 -0
  83. package/dist/helpers/prism.js +78 -0
  84. package/dist/helpers/prism.js.map +1 -0
  85. package/dist/helpers/reasoning.d.ts +7 -0
  86. package/dist/helpers/reasoning.js +43 -0
  87. package/dist/helpers/reasoning.js.map +1 -0
  88. package/dist/helpers/relativeTime.d.ts +3 -0
  89. package/dist/helpers/relativeTime.js +56 -0
  90. package/dist/helpers/relativeTime.js.map +1 -0
  91. package/dist/helpers/sourcesCount.d.ts +2 -0
  92. package/dist/helpers/sourcesCount.js +22 -0
  93. package/dist/helpers/sourcesCount.js.map +1 -0
  94. package/dist/helpers/tts/muteSpeaker.d.ts +13 -0
  95. package/dist/helpers/tts/muteSpeaker.js +26 -0
  96. package/dist/helpers/tts/muteSpeaker.js.map +1 -0
  97. package/dist/helpers/usePressTooltip.d.ts +18 -0
  98. package/dist/helpers/usePressTooltip.js +38 -0
  99. package/dist/helpers/usePressTooltip.js.map +1 -0
  100. package/dist/icons/FacebookIcon.d.ts +3 -0
  101. package/dist/icons/FacebookIcon.js +6 -0
  102. package/dist/icons/FacebookIcon.js.map +1 -0
  103. package/dist/icons/LinkedinIcon.d.ts +3 -0
  104. package/dist/icons/LinkedinIcon.js +6 -0
  105. package/dist/icons/LinkedinIcon.js.map +1 -0
  106. package/dist/icons/MemoriIcon.d.ts +3 -0
  107. package/dist/icons/MemoriIcon.js +8 -0
  108. package/dist/icons/MemoriIcon.js.map +1 -0
  109. package/dist/icons/TelegramIcon.d.ts +3 -0
  110. package/dist/icons/TelegramIcon.js +6 -0
  111. package/dist/icons/TelegramIcon.js.map +1 -0
  112. package/dist/icons/TwitterIcon.d.ts +3 -0
  113. package/dist/icons/TwitterIcon.js +6 -0
  114. package/dist/icons/TwitterIcon.js.map +1 -0
  115. package/dist/icons/WhatsappIcon.d.ts +3 -0
  116. package/dist/icons/WhatsappIcon.js +6 -0
  117. package/dist/icons/WhatsappIcon.js.map +1 -0
  118. package/dist/icons/artifacts/DocumentIcon.d.ts +3 -0
  119. package/dist/icons/artifacts/DocumentIcon.js +6 -0
  120. package/dist/icons/artifacts/DocumentIcon.js.map +1 -0
  121. package/dist/icons/artifacts/HtmlIcon.d.ts +3 -0
  122. package/dist/icons/artifacts/HtmlIcon.js +6 -0
  123. package/dist/icons/artifacts/HtmlIcon.js.map +1 -0
  124. package/dist/icons/artifacts/JavascriptIcon.d.ts +3 -0
  125. package/dist/icons/artifacts/JavascriptIcon.js +6 -0
  126. package/dist/icons/artifacts/JavascriptIcon.js.map +1 -0
  127. package/dist/icons/artifacts/MarkdownIcon.d.ts +3 -0
  128. package/dist/icons/artifacts/MarkdownIcon.js +6 -0
  129. package/dist/icons/artifacts/MarkdownIcon.js.map +1 -0
  130. package/dist/icons/artifacts/PythonIcon.d.ts +3 -0
  131. package/dist/icons/artifacts/PythonIcon.js +6 -0
  132. package/dist/icons/artifacts/PythonIcon.js.map +1 -0
  133. package/dist/icons/artifacts/SvgIcon.d.ts +3 -0
  134. package/dist/icons/artifacts/SvgIcon.js +6 -0
  135. package/dist/icons/artifacts/SvgIcon.js.map +1 -0
  136. package/dist/icons/artifacts/XmlIcon.d.ts +3 -0
  137. package/dist/icons/artifacts/XmlIcon.js +6 -0
  138. package/dist/icons/artifacts/XmlIcon.js.map +1 -0
  139. package/dist/icons/artifacts/cssIcon.d.ts +3 -0
  140. package/dist/icons/artifacts/cssIcon.js +6 -0
  141. package/dist/icons/artifacts/cssIcon.js.map +1 -0
  142. package/dist/styles/motion.css +25 -0
  143. package/dist/styles.css +1 -2
  144. package/dist/version.d.ts +1 -1
  145. package/dist/version.js +1 -1
  146. package/esm/components/Chat/Chat.d.ts +1 -0
  147. package/esm/components/Chat/Chat.js +6 -3
  148. package/esm/components/Chat/Chat.js.map +1 -1
  149. package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.d.ts +39 -0
  150. package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.js +40 -0
  151. package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.js.map +1 -0
  152. package/esm/components/ChatInputs/ChatInputs.d.ts +1 -0
  153. package/esm/components/ChatInputs/ChatInputs.js +2 -2
  154. package/esm/components/ChatInputs/ChatInputs.js.map +1 -1
  155. package/esm/components/ContentPreviewModal/DocumentMarkdown.d.ts +7 -0
  156. package/esm/components/ContentPreviewModal/DocumentMarkdown.js +28 -0
  157. package/esm/components/ContentPreviewModal/DocumentMarkdown.js.map +1 -0
  158. package/esm/components/DrawerFooter/DrawerFooter.d.ts +12 -0
  159. package/esm/components/DrawerFooter/DrawerFooter.js +8 -0
  160. package/esm/components/DrawerFooter/DrawerFooter.js.map +1 -0
  161. package/esm/components/IconButton/IconButton.d.ts +9 -0
  162. package/esm/components/IconButton/IconButton.js +33 -0
  163. package/esm/components/IconButton/IconButton.js.map +1 -0
  164. package/esm/components/LoginModal/LoginModal.d.ts +19 -0
  165. package/esm/components/LoginModal/LoginModal.js +352 -0
  166. package/esm/components/LoginModal/LoginModal.js.map +1 -0
  167. package/esm/components/MemoriWidget/MemoriWidget.d.ts +2 -2
  168. package/esm/components/MemoriWidget/MemoriWidget.js +8 -17
  169. package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
  170. package/esm/components/MobileSessionPanel/MobileSessionPanel.d.ts +65 -0
  171. package/esm/components/MobileSessionPanel/MobileSessionPanel.js +251 -0
  172. package/esm/components/MobileSessionPanel/MobileSessionPanel.js.map +1 -0
  173. package/esm/components/PositionPopover/PositionPopover.d.ts +22 -0
  174. package/esm/components/PositionPopover/PositionPopover.js +203 -0
  175. package/esm/components/PositionPopover/PositionPopover.js.map +1 -0
  176. package/esm/components/ReasoningBlock/ReasoningBlock.d.ts +7 -0
  177. package/esm/components/ReasoningBlock/ReasoningBlock.js +58 -0
  178. package/esm/components/ReasoningBlock/ReasoningBlock.js.map +1 -0
  179. package/esm/components/SideDrawer/SideDrawer.d.ts +22 -0
  180. package/esm/components/SideDrawer/SideDrawer.js +12 -0
  181. package/esm/components/SideDrawer/SideDrawer.js.map +1 -0
  182. package/esm/components/UploadButton/UploadButton.d.ts +2 -0
  183. package/esm/components/UploadButton/UploadButton.js +2 -2
  184. package/esm/components/UploadButton/UploadButton.js.map +1 -1
  185. package/esm/components/UploadButton/UploadImages/UploadImages.d.ts +2 -0
  186. package/esm/components/UploadButton/UploadImages/UploadImages.js +7 -1
  187. package/esm/components/UploadButton/UploadImages/UploadImages.js.map +1 -1
  188. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.d.ts +4 -0
  189. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js +141 -0
  190. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +1 -0
  191. package/esm/components/layouts/chat.css +27 -4
  192. package/esm/helpers/artifactPanel.d.ts +6 -0
  193. package/esm/helpers/artifactPanel.js +37 -0
  194. package/esm/helpers/artifactPanel.js.map +1 -0
  195. package/esm/helpers/chatScroll.d.ts +12 -0
  196. package/esm/helpers/chatScroll.js +9 -0
  197. package/esm/helpers/chatScroll.js.map +1 -0
  198. package/esm/helpers/conversationHistory.d.ts +16 -0
  199. package/esm/helpers/conversationHistory.js +82 -0
  200. package/esm/helpers/conversationHistory.js.map +1 -0
  201. package/esm/helpers/conversationTitle.d.ts +8 -0
  202. package/esm/helpers/conversationTitle.js +23 -0
  203. package/esm/helpers/conversationTitle.js.map +1 -0
  204. package/esm/helpers/enhanceBubbleCodeBlocks.d.ts +5 -0
  205. package/esm/helpers/enhanceBubbleCodeBlocks.js +94 -0
  206. package/esm/helpers/enhanceBubbleCodeBlocks.js.map +1 -0
  207. package/esm/helpers/highlightMatches.d.ts +2 -0
  208. package/esm/helpers/highlightMatches.js +49 -0
  209. package/esm/helpers/highlightMatches.js.map +1 -0
  210. package/esm/helpers/nats/dialogStateCatchUp.d.ts +3 -0
  211. package/esm/helpers/nats/dialogStateCatchUp.js +35 -0
  212. package/esm/helpers/nats/dialogStateCatchUp.js.map +1 -0
  213. package/esm/helpers/positionPopover.d.ts +3 -0
  214. package/esm/helpers/positionPopover.js +17 -0
  215. package/esm/helpers/positionPopover.js.map +1 -0
  216. package/esm/helpers/prism.d.ts +16 -0
  217. package/esm/helpers/prism.js +74 -0
  218. package/esm/helpers/prism.js.map +1 -0
  219. package/esm/helpers/reasoning.d.ts +7 -0
  220. package/esm/helpers/reasoning.js +39 -0
  221. package/esm/helpers/reasoning.js.map +1 -0
  222. package/esm/helpers/relativeTime.d.ts +3 -0
  223. package/esm/helpers/relativeTime.js +50 -0
  224. package/esm/helpers/relativeTime.js.map +1 -0
  225. package/esm/helpers/sourcesCount.d.ts +2 -0
  226. package/esm/helpers/sourcesCount.js +18 -0
  227. package/esm/helpers/sourcesCount.js.map +1 -0
  228. package/esm/helpers/tts/muteSpeaker.d.ts +13 -0
  229. package/esm/helpers/tts/muteSpeaker.js +21 -0
  230. package/esm/helpers/tts/muteSpeaker.js.map +1 -0
  231. package/esm/helpers/usePressTooltip.d.ts +18 -0
  232. package/esm/helpers/usePressTooltip.js +35 -0
  233. package/esm/helpers/usePressTooltip.js.map +1 -0
  234. package/esm/icons/FacebookIcon.d.ts +3 -0
  235. package/esm/icons/FacebookIcon.js +4 -0
  236. package/esm/icons/FacebookIcon.js.map +1 -0
  237. package/esm/icons/LinkedinIcon.d.ts +3 -0
  238. package/esm/icons/LinkedinIcon.js +4 -0
  239. package/esm/icons/LinkedinIcon.js.map +1 -0
  240. package/esm/icons/MemoriIcon.d.ts +3 -0
  241. package/esm/icons/MemoriIcon.js +6 -0
  242. package/esm/icons/MemoriIcon.js.map +1 -0
  243. package/esm/icons/TelegramIcon.d.ts +3 -0
  244. package/esm/icons/TelegramIcon.js +4 -0
  245. package/esm/icons/TelegramIcon.js.map +1 -0
  246. package/esm/icons/TwitterIcon.d.ts +3 -0
  247. package/esm/icons/TwitterIcon.js +4 -0
  248. package/esm/icons/TwitterIcon.js.map +1 -0
  249. package/esm/icons/WhatsappIcon.d.ts +3 -0
  250. package/esm/icons/WhatsappIcon.js +4 -0
  251. package/esm/icons/WhatsappIcon.js.map +1 -0
  252. package/esm/icons/artifacts/DocumentIcon.d.ts +3 -0
  253. package/esm/icons/artifacts/DocumentIcon.js +4 -0
  254. package/esm/icons/artifacts/DocumentIcon.js.map +1 -0
  255. package/esm/icons/artifacts/HtmlIcon.d.ts +3 -0
  256. package/esm/icons/artifacts/HtmlIcon.js +4 -0
  257. package/esm/icons/artifacts/HtmlIcon.js.map +1 -0
  258. package/esm/icons/artifacts/JavascriptIcon.d.ts +3 -0
  259. package/esm/icons/artifacts/JavascriptIcon.js +4 -0
  260. package/esm/icons/artifacts/JavascriptIcon.js.map +1 -0
  261. package/esm/icons/artifacts/MarkdownIcon.d.ts +3 -0
  262. package/esm/icons/artifacts/MarkdownIcon.js +4 -0
  263. package/esm/icons/artifacts/MarkdownIcon.js.map +1 -0
  264. package/esm/icons/artifacts/PythonIcon.d.ts +3 -0
  265. package/esm/icons/artifacts/PythonIcon.js +4 -0
  266. package/esm/icons/artifacts/PythonIcon.js.map +1 -0
  267. package/esm/icons/artifacts/SvgIcon.d.ts +3 -0
  268. package/esm/icons/artifacts/SvgIcon.js +4 -0
  269. package/esm/icons/artifacts/SvgIcon.js.map +1 -0
  270. package/esm/icons/artifacts/XmlIcon.d.ts +3 -0
  271. package/esm/icons/artifacts/XmlIcon.js +4 -0
  272. package/esm/icons/artifacts/XmlIcon.js.map +1 -0
  273. package/esm/icons/artifacts/cssIcon.d.ts +3 -0
  274. package/esm/icons/artifacts/cssIcon.js +4 -0
  275. package/esm/icons/artifacts/cssIcon.js.map +1 -0
  276. package/esm/styles.css +1 -2
  277. package/esm/version.d.ts +1 -1
  278. package/esm/version.js +1 -1
  279. package/package.json +7 -7
  280. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.d.ts +0 -3
  281. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.js +0 -64
  282. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.js.map +0 -1
  283. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.d.ts +0 -3
  284. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.js +0 -62
  285. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.js.map +0 -1
  286. package/src/I18nWrapper.tsx +0 -13
  287. package/src/__snapshots__/index.test.tsx.snap +0 -96
  288. package/src/components/AgeVerificationModal/AgeVerificationModal.css +0 -95
  289. package/src/components/AgeVerificationModal/AgeVerificationModal.stories.tsx +0 -46
  290. package/src/components/AgeVerificationModal/AgeVerificationModal.test.tsx +0 -33
  291. package/src/components/AgeVerificationModal/AgeVerificationModal.tsx +0 -99
  292. package/src/components/AgeVerificationModal/__snapshots__/AgeVerificationModal.test.tsx.snap +0 -19
  293. package/src/components/Auth/Auth.css +0 -57
  294. package/src/components/Auth/Auth.stories.tsx +0 -90
  295. package/src/components/Auth/Auth.test.tsx +0 -63
  296. package/src/components/Auth/Auth.tsx +0 -201
  297. package/src/components/Auth/__snapshots__/Auth.test.tsx.snap +0 -143
  298. package/src/components/Avatar/Avatar.css +0 -151
  299. package/src/components/Avatar/Avatar.stories.tsx +0 -160
  300. package/src/components/Avatar/Avatar.test.tsx +0 -158
  301. package/src/components/Avatar/Avatar.tsx +0 -245
  302. package/src/components/Avatar/AvatarView/AvatarComponent/Shadow/DynamicShadow.tsx +0 -103
  303. package/src/components/Avatar/AvatarView/AvatarComponent/avatarComponent.tsx +0 -105
  304. package/src/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.tsx +0 -338
  305. package/src/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/types.ts +0 -44
  306. package/src/components/Avatar/AvatarView/AvatarComponent/components/controllers/AvatarAnimator.ts +0 -1091
  307. package/src/components/Avatar/AvatarView/AvatarComponent/components/controllers/AvatarPositionController.ts +0 -83
  308. package/src/components/Avatar/AvatarView/AvatarComponent/components/controllers/MorphTargetController.ts +0 -301
  309. package/src/components/Avatar/AvatarView/AvatarComponent/components/controls.tsx +0 -100
  310. package/src/components/Avatar/AvatarView/AvatarComponent/components/halfbodyAvatar.tsx +0 -152
  311. package/src/components/Avatar/AvatarView/AvatarComponent/components/loader.tsx +0 -31
  312. package/src/components/Avatar/AvatarView/AvatarComponent/constants.ts +0 -141
  313. package/src/components/Avatar/AvatarView/AvatarComponent/lights/Lights.tsx +0 -145
  314. package/src/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.css +0 -111
  315. package/src/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.tsx +0 -201
  316. package/src/components/Avatar/AvatarView/AvatarView.stories.tsx +0 -254
  317. package/src/components/Avatar/AvatarView/index.tsx +0 -194
  318. package/src/components/Avatar/AvatarView/utils/hideHands.ts +0 -11
  319. package/src/components/Avatar/AvatarView/utils/useEyeBlink.ts +0 -100
  320. package/src/components/Avatar/AvatarView/utils/useHeadMovement.ts +0 -72
  321. package/src/components/Avatar/AvatarView/utils/useLoadingMorphAnim.ts +0 -38
  322. package/src/components/Avatar/AvatarView/utils/useMouthAnimation.ts +0 -93
  323. package/src/components/Avatar/AvatarView/utils/useSmile.ts +0 -39
  324. package/src/components/Avatar/AvatarView/utils/utils.ts +0 -55
  325. package/src/components/Avatar/__snapshots__/Avatar.test.tsx.snap +0 -246
  326. package/src/components/Blob/Blob.css +0 -286
  327. package/src/components/Blob/Blob.stories.tsx +0 -53
  328. package/src/components/Blob/Blob.test.tsx +0 -18
  329. package/src/components/Blob/Blob.tsx +0 -26
  330. package/src/components/Blob/__snapshots__/Blob.test.tsx.snap +0 -80
  331. package/src/components/BlockedMemoriBadge/BlockedMemoriBadge.css +0 -40
  332. package/src/components/BlockedMemoriBadge/BlockedMemoriBadge.stories.tsx +0 -58
  333. package/src/components/BlockedMemoriBadge/BlockedMemoriBadge.test.tsx +0 -53
  334. package/src/components/BlockedMemoriBadge/BlockedMemoriBadge.tsx +0 -74
  335. package/src/components/BlockedMemoriBadge/__snapshots__/BlockedMemoriBadge.test.tsx.snap +0 -181
  336. package/src/components/ChangeMode/ChangeMode.css +0 -22
  337. package/src/components/ChangeMode/ChangeMode.stories.tsx +0 -50
  338. package/src/components/ChangeMode/ChangeMode.test.tsx +0 -24
  339. package/src/components/ChangeMode/ChangeMode.tsx +0 -51
  340. package/src/components/ChangeMode/__snapshots__/ChangeMode.test.tsx.snap +0 -107
  341. package/src/components/Chat/Chat.css +0 -285
  342. package/src/components/Chat/Chat.stories.tsx +0 -1684
  343. package/src/components/Chat/Chat.test.tsx +0 -372
  344. package/src/components/Chat/Chat.tsx +0 -778
  345. package/src/components/Chat/__snapshots__/Chat.test.tsx.snap +0 -6816
  346. package/src/components/ChatBubble/ChatBubble.css +0 -430
  347. package/src/components/ChatBubble/ChatBubble.stories.tsx +0 -1192
  348. package/src/components/ChatBubble/ChatBubble.test.tsx +0 -481
  349. package/src/components/ChatBubble/ChatBubble.tsx +0 -776
  350. package/src/components/ChatBubble/__snapshots__/ChatBubble.test.tsx.snap +0 -8734
  351. package/src/components/ChatHistoryDrawer/ChatHistory.css +0 -587
  352. package/src/components/ChatHistoryDrawer/ChatHistory.stories.tsx +0 -410
  353. package/src/components/ChatHistoryDrawer/ChatHistory.test.tsx +0 -107
  354. package/src/components/ChatHistoryDrawer/ChatHistory.tsx +0 -1298
  355. package/src/components/ChatHistoryDrawer/__snapshots__/ChatHistory.test.tsx.snap +0 -27
  356. package/src/components/ChatInputs/ChatInputs.css +0 -340
  357. package/src/components/ChatInputs/ChatInputs.stories.tsx +0 -251
  358. package/src/components/ChatInputs/ChatInputs.tsx +0 -487
  359. package/src/components/ChatTextArea/ChatTextArea.css +0 -185
  360. package/src/components/ChatTextArea/ChatTextArea.stories.tsx +0 -55
  361. package/src/components/ChatTextArea/ChatTextArea.test.tsx +0 -28
  362. package/src/components/ChatTextArea/ChatTextArea.tsx +0 -171
  363. package/src/components/ChatTextArea/__snapshots__/ChatTextArea.test.tsx.snap +0 -68
  364. package/src/components/CompletionProviderStatus/CompletionProviderStatus.css +0 -36
  365. package/src/components/CompletionProviderStatus/CompletionProviderStatus.stories.tsx +0 -296
  366. package/src/components/CompletionProviderStatus/CompletionProviderStatus.test.tsx +0 -31
  367. package/src/components/CompletionProviderStatus/CompletionProviderStatus.tsx +0 -232
  368. package/src/components/CompletionProviderStatus/__snapshots__/CompletionProviderStatus.test.tsx.snap +0 -96
  369. package/src/components/ContentPreviewModal/ContentPreviewModal.css +0 -128
  370. package/src/components/ContentPreviewModal/ContentPreviewModal.tsx +0 -67
  371. package/src/components/ContentPreviewModal/index.ts +0 -2
  372. package/src/components/CustomGLBModelViewer/ModelViewer.css +0 -11
  373. package/src/components/CustomGLBModelViewer/ModelViewer.stories.tsx +0 -58
  374. package/src/components/CustomGLBModelViewer/ModelViewer.test.tsx +0 -13
  375. package/src/components/CustomGLBModelViewer/ModelViewer.tsx +0 -37
  376. package/src/components/CustomGLBModelViewer/__snapshots__/ModelViewer.test.tsx.snap +0 -20
  377. package/src/components/DateSelector/DateSelector.css +0 -158
  378. package/src/components/DateSelector/DateSelector.stories.tsx +0 -47
  379. package/src/components/DateSelector/DateSelector.test.tsx +0 -149
  380. package/src/components/DateSelector/DateSelector.tsx +0 -251
  381. package/src/components/DateSelector/__snapshots__/DateSelector.test.tsx.snap +0 -1954
  382. package/src/components/ErrorBoundary/ErrorBoundary.tsx +0 -54
  383. package/src/components/ExpertsDrawer/ExpertsDrawer.css +0 -67
  384. package/src/components/ExpertsDrawer/ExpertsDrawer.stories.tsx +0 -54
  385. package/src/components/ExpertsDrawer/ExpertsDrawer.test.tsx +0 -53
  386. package/src/components/ExpertsDrawer/ExpertsDrawer.tsx +0 -69
  387. package/src/components/ExpertsDrawer/__snapshots__/ExpertsDrawer.test.tsx.snap +0 -11
  388. package/src/components/ExportHistoryButton/ExportHistoryButton.css +0 -22
  389. package/src/components/FeedbackButtons/FeedbackButtons.css +0 -107
  390. package/src/components/FeedbackButtons/FeedbackButtons.stories.tsx +0 -52
  391. package/src/components/FeedbackButtons/FeedbackButtons.test.tsx +0 -11
  392. package/src/components/FeedbackButtons/FeedbackButtons.tsx +0 -152
  393. package/src/components/FeedbackButtons/__snapshots__/FeedbackButtons.test.tsx.snap +0 -42
  394. package/src/components/FilePreview/FilePreview.css +0 -358
  395. package/src/components/FilePreview/FilePreview.stories.tsx +0 -63
  396. package/src/components/FilePreview/FilePreview.test.tsx +0 -26
  397. package/src/components/FilePreview/FilePreview.tsx +0 -277
  398. package/src/components/FilePreview/__snapshots__/FilePreview.test.tsx.snap +0 -185
  399. package/src/components/Header/ChatConsumptionDropdown.test.tsx +0 -117
  400. package/src/components/Header/ChatConsumptionDropdown.tsx +0 -275
  401. package/src/components/Header/Header.css +0 -282
  402. package/src/components/Header/Header.stories.tsx +0 -338
  403. package/src/components/Header/Header.test.tsx +0 -371
  404. package/src/components/Header/Header.tsx +0 -442
  405. package/src/components/Header/__snapshots__/Header.test.tsx.snap +0 -964
  406. package/src/components/KnownFacts/KnownFacts.css +0 -19
  407. package/src/components/KnownFacts/KnownFacts.stories.tsx +0 -80
  408. package/src/components/KnownFacts/KnownFacts.test.tsx +0 -57
  409. package/src/components/KnownFacts/KnownFacts.tsx +0 -376
  410. package/src/components/KnownFacts/__snapshots__/KnownFacts.test.tsx.snap +0 -19
  411. package/src/components/LoginDrawer/LoginDrawer.css +0 -1616
  412. package/src/components/LoginDrawer/LoginDrawer.stories.tsx +0 -102
  413. package/src/components/LoginDrawer/LoginDrawer.test.tsx +0 -199
  414. package/src/components/LoginDrawer/LoginDrawer.tsx +0 -600
  415. package/src/components/LoginDrawer/__snapshots__/LoginDrawer.test.tsx.snap +0 -91
  416. package/src/components/MediaWidget/DocumentCard.test.tsx +0 -45
  417. package/src/components/MediaWidget/DocumentCard.tsx +0 -19
  418. package/src/components/MediaWidget/MediaItemWidget.css +0 -1398
  419. package/src/components/MediaWidget/MediaItemWidget.stories.tsx +0 -423
  420. package/src/components/MediaWidget/MediaItemWidget.test.tsx +0 -248
  421. package/src/components/MediaWidget/MediaItemWidget.tsx +0 -997
  422. package/src/components/MediaWidget/MediaItemWidget.types.ts +0 -65
  423. package/src/components/MediaWidget/MediaItemWidget.utils.test.ts +0 -367
  424. package/src/components/MediaWidget/MediaItemWidget.utils.ts +0 -227
  425. package/src/components/MediaWidget/MediaPreviewModal.test.tsx +0 -271
  426. package/src/components/MediaWidget/MediaPreviewModal.tsx +0 -425
  427. package/src/components/MediaWidget/MediaWidget.css +0 -131
  428. package/src/components/MediaWidget/MediaWidget.stories.tsx +0 -319
  429. package/src/components/MediaWidget/MediaWidget.test.tsx +0 -41
  430. package/src/components/MediaWidget/MediaWidget.tsx +0 -107
  431. package/src/components/MediaWidget/__snapshots__/DocumentCard.test.tsx.snap +0 -24
  432. package/src/components/MediaWidget/__snapshots__/MediaItemWidget.test.tsx.snap +0 -791
  433. package/src/components/MediaWidget/__snapshots__/MediaWidget.test.tsx.snap +0 -154
  434. package/src/components/MemoriArtifactSystem/ArtifactDrawer.stories.tsx +0 -2299
  435. package/src/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.css +0 -163
  436. package/src/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.tsx +0 -250
  437. package/src/components/MemoriArtifactSystem/components/ArtifactActions/CopyButton.stories.tsx +0 -30
  438. package/src/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.tsx +0 -467
  439. package/src/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.tsx +0 -89
  440. package/src/components/MemoriArtifactSystem/components/ArtifactActions/hooks/useCopyArtifact.ts +0 -619
  441. package/src/components/MemoriArtifactSystem/components/ArtifactActions/index.ts +0 -9
  442. package/src/components/MemoriArtifactSystem/components/ArtifactActions/styles.css +0 -489
  443. package/src/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.tsx +0 -90
  444. package/src/components/MemoriArtifactSystem/components/ArtifactActions/types.ts +0 -73
  445. package/src/components/MemoriArtifactSystem/components/ArtifactActions/utils/PDFExporter.ts +0 -454
  446. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +0 -1059
  447. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.tsx +0 -431
  448. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.css +0 -150
  449. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.tsx +0 -79
  450. package/src/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.css +0 -253
  451. package/src/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.tsx +0 -561
  452. package/src/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.css +0 -355
  453. package/src/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.tsx +0 -160
  454. package/src/components/MemoriArtifactSystem/context/ArtifactContext.tsx +0 -167
  455. package/src/components/MemoriArtifactSystem/types/artifact.types.ts +0 -35
  456. package/src/components/MemoriArtifactSystem/utils/ArtifactAPI.test.tsx +0 -308
  457. package/src/components/MemoriArtifactSystem/utils/ArtifactAPI.tsx +0 -379
  458. package/src/components/MemoriArtifactSystem/utils/applyEdits.test.ts +0 -85
  459. package/src/components/MemoriArtifactSystem/utils/applyEdits.ts +0 -173
  460. package/src/components/MemoriWidget/MemoriWidget.css +0 -220
  461. package/src/components/MemoriWidget/MemoriWidget.stories.tsx +0 -274
  462. package/src/components/MemoriWidget/MemoriWidget.tsx +0 -3930
  463. package/src/components/MicrophoneButton/MicrophoneButton.css +0 -142
  464. package/src/components/MicrophoneButton/MicrophoneButton.stories.tsx +0 -52
  465. package/src/components/MicrophoneButton/MicrophoneButton.tsx +0 -128
  466. package/src/components/PositionDrawer/PositionDrawer.stories.tsx +0 -51
  467. package/src/components/PositionDrawer/PositionDrawer.test.tsx +0 -39
  468. package/src/components/PositionDrawer/PositionDrawer.tsx +0 -50
  469. package/src/components/PositionDrawer/__snapshots__/PositionDrawer.test.tsx.snap +0 -17
  470. package/src/components/PoweredBy/PoweredBy.css +0 -47
  471. package/src/components/PoweredBy/PoweredBy.stories.tsx +0 -75
  472. package/src/components/PoweredBy/PoweredBy.test.tsx +0 -15
  473. package/src/components/PoweredBy/PoweredBy.tsx +0 -44
  474. package/src/components/PoweredBy/__snapshots__/PoweredBy.test.tsx.snap +0 -55
  475. package/src/components/SendOnEnterMenu/SendOnEnterMenu.css +0 -47
  476. package/src/components/SendOnEnterMenu/SendOnEnterMenu.stories.tsx +0 -58
  477. package/src/components/SendOnEnterMenu/SendOnEnterMenu.test.tsx +0 -17
  478. package/src/components/SendOnEnterMenu/SendOnEnterMenu.tsx +0 -82
  479. package/src/components/SendOnEnterMenu/__snapshots__/SendOnEnterMenu.test.tsx.snap +0 -57
  480. package/src/components/SettingsDrawer/SettingsDrawer.css +0 -24
  481. package/src/components/SettingsDrawer/SettingsDrawer.stories.tsx +0 -94
  482. package/src/components/SettingsDrawer/SettingsDrawer.test.tsx +0 -202
  483. package/src/components/SettingsDrawer/SettingsDrawer.tsx +0 -255
  484. package/src/components/SettingsDrawer/__snapshots__/SettingsDrawer.test.tsx.snap +0 -59
  485. package/src/components/ShareButton/ShareButton.css +0 -73
  486. package/src/components/ShareButton/ShareButton.stories.tsx +0 -98
  487. package/src/components/ShareButton/ShareButton.test.tsx +0 -53
  488. package/src/components/ShareButton/ShareButton.tsx +0 -395
  489. package/src/components/ShareButton/__snapshots__/ShareButton.test.tsx.snap +0 -316
  490. package/src/components/Snippet/Snippet.css +0 -142
  491. package/src/components/Snippet/Snippet.stories.tsx +0 -286
  492. package/src/components/Snippet/Snippet.test.tsx +0 -176
  493. package/src/components/Snippet/Snippet.tsx +0 -148
  494. package/src/components/Snippet/__snapshots__/Snippet.test.tsx.snap +0 -603
  495. package/src/components/StartPanel/StartPanel.css +0 -273
  496. package/src/components/StartPanel/StartPanel.stories.tsx +0 -404
  497. package/src/components/StartPanel/StartPanel.test.tsx +0 -360
  498. package/src/components/StartPanel/StartPanel.tsx +0 -426
  499. package/src/components/StartPanel/__snapshots__/StartPanel.test.tsx.snap +0 -1986
  500. package/src/components/Typing/Typing.stories.tsx +0 -130
  501. package/src/components/Typing/Typing.test.tsx +0 -62
  502. package/src/components/Typing/Typing.tsx +0 -154
  503. package/src/components/Typing/__snapshots__/Typing.test.tsx.snap +0 -133
  504. package/src/components/UploadButton/UploadButton.css +0 -542
  505. package/src/components/UploadButton/UploadButton.stories.tsx +0 -376
  506. package/src/components/UploadButton/UploadButton.test.tsx +0 -11
  507. package/src/components/UploadButton/UploadButton.tsx +0 -688
  508. package/src/components/UploadButton/UploadDocuments/UploadDocuments.tsx +0 -421
  509. package/src/components/UploadButton/UploadImages/UploadImages.tsx +0 -538
  510. package/src/components/UploadButton/__snapshots__/UploadButton.test.tsx.snap +0 -165
  511. package/src/components/VenueWidget/VenueWidget.css +0 -163
  512. package/src/components/VenueWidget/VenueWidget.stories.tsx +0 -66
  513. package/src/components/VenueWidget/VenueWidget.test.tsx +0 -49
  514. package/src/components/VenueWidget/VenueWidget.tsx +0 -458
  515. package/src/components/VenueWidget/__snapshots__/VenueWidget.test.tsx.snap +0 -370
  516. package/src/components/WhyThisAnswer/WhyThisAnswer.css +0 -171
  517. package/src/components/WhyThisAnswer/WhyThisAnswer.stories.tsx +0 -285
  518. package/src/components/WhyThisAnswer/WhyThisAnswer.test.tsx +0 -245
  519. package/src/components/WhyThisAnswer/WhyThisAnswer.tsx +0 -233
  520. package/src/components/WhyThisAnswer/__snapshots__/WhyThisAnswer.test.tsx.snap +0 -27
  521. package/src/components/icons/AI.tsx +0 -34
  522. package/src/components/icons/Alert.tsx +0 -31
  523. package/src/components/icons/ArrowUp.tsx +0 -28
  524. package/src/components/icons/Bug.tsx +0 -81
  525. package/src/components/icons/Chat.tsx +0 -30
  526. package/src/components/icons/ChevronDown.tsx +0 -26
  527. package/src/components/icons/ChevronLeft.tsx +0 -28
  528. package/src/components/icons/ChevronRight.tsx +0 -28
  529. package/src/components/icons/ChevronUp.tsx +0 -24
  530. package/src/components/icons/Clear.tsx +0 -23
  531. package/src/components/icons/Close.tsx +0 -30
  532. package/src/components/icons/Code.tsx +0 -24
  533. package/src/components/icons/Copy.tsx +0 -23
  534. package/src/components/icons/DeepThought.tsx +0 -38
  535. package/src/components/icons/Delete.tsx +0 -23
  536. package/src/components/icons/Document.tsx +0 -50
  537. package/src/components/icons/Download.tsx +0 -23
  538. package/src/components/icons/Edit.tsx +0 -17
  539. package/src/components/icons/Expand.tsx +0 -23
  540. package/src/components/icons/Eye.tsx +0 -17
  541. package/src/components/icons/EyeInvisible.tsx +0 -24
  542. package/src/components/icons/Facebook.tsx +0 -23
  543. package/src/components/icons/Feedback.tsx +0 -24
  544. package/src/components/icons/File.tsx +0 -17
  545. package/src/components/icons/FileExcel.tsx +0 -23
  546. package/src/components/icons/FilePdf.tsx +0 -23
  547. package/src/components/icons/FileWord.tsx +0 -23
  548. package/src/components/icons/Fullscreen.tsx +0 -23
  549. package/src/components/icons/FullscreenExit.tsx +0 -23
  550. package/src/components/icons/GasStation.tsx +0 -36
  551. package/src/components/icons/Group.tsx +0 -30
  552. package/src/components/icons/History.tsx +0 -33
  553. package/src/components/icons/Image.tsx +0 -37
  554. package/src/components/icons/Info.tsx +0 -31
  555. package/src/components/icons/Link.tsx +0 -17
  556. package/src/components/icons/Linkedin.tsx +0 -23
  557. package/src/components/icons/Loading.tsx +0 -28
  558. package/src/components/icons/Logout.tsx +0 -27
  559. package/src/components/icons/Mail.tsx +0 -17
  560. package/src/components/icons/MapMarker.tsx +0 -26
  561. package/src/components/icons/MenuHorizontal.tsx +0 -29
  562. package/src/components/icons/MenuVertical.tsx +0 -29
  563. package/src/components/icons/Message.tsx +0 -23
  564. package/src/components/icons/Microphone.tsx +0 -23
  565. package/src/components/icons/Minus.tsx +0 -23
  566. package/src/components/icons/MinusCircle.tsx +0 -24
  567. package/src/components/icons/PaperClip.tsx +0 -23
  568. package/src/components/icons/Picture.tsx +0 -23
  569. package/src/components/icons/Plus.tsx +0 -18
  570. package/src/components/icons/Preview.tsx +0 -29
  571. package/src/components/icons/Print.tsx +0 -38
  572. package/src/components/icons/QuestionHelp.tsx +0 -30
  573. package/src/components/icons/Refresh.tsx +0 -30
  574. package/src/components/icons/SelectIcon.tsx +0 -28
  575. package/src/components/icons/Send.tsx +0 -17
  576. package/src/components/icons/Setting.tsx +0 -23
  577. package/src/components/icons/Share.tsx +0 -23
  578. package/src/components/icons/Sound.tsx +0 -23
  579. package/src/components/icons/SoundDeactivated.tsx +0 -27
  580. package/src/components/icons/Telegram.tsx +0 -26
  581. package/src/components/icons/ThumbDown.tsx +0 -29
  582. package/src/components/icons/ThumbUp.tsx +0 -29
  583. package/src/components/icons/Translation.tsx +0 -24
  584. package/src/components/icons/Twitter.tsx +0 -23
  585. package/src/components/icons/Upload.tsx +0 -34
  586. package/src/components/icons/User.tsx +0 -17
  587. package/src/components/icons/Warning.tsx +0 -24
  588. package/src/components/icons/WhatsApp.tsx +0 -24
  589. package/src/components/icons/icons.stories.css +0 -5
  590. package/src/components/icons/icons.stories.tsx +0 -81
  591. package/src/components/icons/loading.css +0 -14
  592. package/src/components/layouts/Chat.test.tsx +0 -40
  593. package/src/components/layouts/Chat.tsx +0 -69
  594. package/src/components/layouts/FullBody/FullBody.stories.tsx +0 -110
  595. package/src/components/layouts/FullPage.test.tsx +0 -65
  596. package/src/components/layouts/FullPage.tsx +0 -80
  597. package/src/components/layouts/HiddenChat.test.tsx +0 -40
  598. package/src/components/layouts/HiddenChat.tsx +0 -233
  599. package/src/components/layouts/Totem/Totem.stories.tsx +0 -131
  600. package/src/components/layouts/Totem.test.tsx +0 -40
  601. package/src/components/layouts/Totem.tsx +0 -49
  602. package/src/components/layouts/WebsiteAssistant.test.tsx +0 -40
  603. package/src/components/layouts/WebsiteAssistant.tsx +0 -132
  604. package/src/components/layouts/ZoomedFullBody/ZoomedFullBody.stories.tsx +0 -131
  605. package/src/components/layouts/ZoomedFullBody.test.tsx +0 -40
  606. package/src/components/layouts/ZoomedFullBody.tsx +0 -81
  607. package/src/components/layouts/__snapshots__/Chat.test.tsx.snap +0 -457
  608. package/src/components/layouts/__snapshots__/FullPage.test.tsx.snap +0 -1045
  609. package/src/components/layouts/__snapshots__/HiddenChat.test.tsx.snap +0 -460
  610. package/src/components/layouts/__snapshots__/Totem.test.tsx.snap +0 -566
  611. package/src/components/layouts/__snapshots__/WebsiteAssistant.test.tsx.snap +0 -59
  612. package/src/components/layouts/__snapshots__/ZoomedFullBody.test.tsx.snap +0 -523
  613. package/src/components/layouts/chat.css +0 -451
  614. package/src/components/layouts/hidden-chat.css +0 -276
  615. package/src/components/layouts/layouts.stories.tsx +0 -231
  616. package/src/components/layouts/totem.css +0 -221
  617. package/src/components/layouts/zoomed-full-body.css +0 -18
  618. package/src/components/ui/Alert.css +0 -93
  619. package/src/components/ui/Alert.stories.tsx +0 -137
  620. package/src/components/ui/Alert.test.tsx +0 -129
  621. package/src/components/ui/Alert.tsx +0 -123
  622. package/src/components/ui/Button.css +0 -167
  623. package/src/components/ui/Button.stories.tsx +0 -156
  624. package/src/components/ui/Button.test.tsx +0 -74
  625. package/src/components/ui/Button.tsx +0 -107
  626. package/src/components/ui/Card.css +0 -65
  627. package/src/components/ui/Card.stories.tsx +0 -95
  628. package/src/components/ui/Card.test.tsx +0 -47
  629. package/src/components/ui/Card.tsx +0 -48
  630. package/src/components/ui/Checkbox.css +0 -116
  631. package/src/components/ui/Checkbox.stories.tsx +0 -74
  632. package/src/components/ui/Checkbox.test.tsx +0 -28
  633. package/src/components/ui/Checkbox.tsx +0 -58
  634. package/src/components/ui/ConfirmDialog.css +0 -42
  635. package/src/components/ui/ConfirmDialog.stories.tsx +0 -216
  636. package/src/components/ui/ConfirmDialog.test.tsx +0 -124
  637. package/src/components/ui/ConfirmDialog.tsx +0 -58
  638. package/src/components/ui/Details.css +0 -66
  639. package/src/components/ui/Drawer.css +0 -270
  640. package/src/components/ui/Drawer.stories.tsx +0 -267
  641. package/src/components/ui/Drawer.test.tsx +0 -130
  642. package/src/components/ui/Drawer.tsx +0 -293
  643. package/src/components/ui/Dropdown.css +0 -173
  644. package/src/components/ui/Dropdown.tsx +0 -63
  645. package/src/components/ui/Expandable.css +0 -15
  646. package/src/components/ui/Expandable.stories.tsx +0 -180
  647. package/src/components/ui/Expandable.test.tsx +0 -107
  648. package/src/components/ui/Expandable.tsx +0 -121
  649. package/src/components/ui/Modal.css +0 -98
  650. package/src/components/ui/Modal.stories.tsx +0 -171
  651. package/src/components/ui/Modal.test.tsx +0 -111
  652. package/src/components/ui/Modal.tsx +0 -117
  653. package/src/components/ui/Select.css +0 -138
  654. package/src/components/ui/Select.stories.tsx +0 -79
  655. package/src/components/ui/Select.test.tsx +0 -84
  656. package/src/components/ui/Select.tsx +0 -79
  657. package/src/components/ui/Slider.css +0 -192
  658. package/src/components/ui/Slider.stories.tsx +0 -63
  659. package/src/components/ui/Slider.tsx +0 -142
  660. package/src/components/ui/Spin.css +0 -31
  661. package/src/components/ui/Spin.stories.tsx +0 -64
  662. package/src/components/ui/Spin.test.tsx +0 -41
  663. package/src/components/ui/Spin.tsx +0 -31
  664. package/src/components/ui/Table.css +0 -132
  665. package/src/components/ui/Tooltip.css +0 -171
  666. package/src/components/ui/Tooltip.stories.tsx +0 -109
  667. package/src/components/ui/Tooltip.test.tsx +0 -102
  668. package/src/components/ui/Tooltip.tsx +0 -163
  669. package/src/components/ui/__snapshots__/Alert.test.tsx.snap +0 -59
  670. package/src/components/ui/__snapshots__/Button.test.tsx.snap +0 -204
  671. package/src/components/ui/__snapshots__/Card.test.tsx.snap +0 -321
  672. package/src/components/ui/__snapshots__/Checkbox.test.tsx.snap +0 -131
  673. package/src/components/ui/__snapshots__/ConfirmDialog.test.tsx.snap +0 -35
  674. package/src/components/ui/__snapshots__/Drawer.test.tsx.snap +0 -67
  675. package/src/components/ui/__snapshots__/Expandable.test.tsx.snap +0 -159
  676. package/src/components/ui/__snapshots__/Modal.test.tsx.snap +0 -59
  677. package/src/components/ui/__snapshots__/Select.test.tsx.snap +0 -254
  678. package/src/components/ui/__snapshots__/Spin.test.tsx.snap +0 -193
  679. package/src/components/ui/__snapshots__/Tooltip.test.tsx.snap +0 -113
  680. package/src/components/ui/definitions.stories.tsx +0 -139
  681. package/src/context/visemeContext.tsx +0 -384
  682. package/src/helpers/chatPdfExport.ts +0 -544
  683. package/src/helpers/configuration.ts +0 -42
  684. package/src/helpers/constants.ts +0 -268
  685. package/src/helpers/convertDocument.test.ts +0 -67
  686. package/src/helpers/convertDocument.ts +0 -35
  687. package/src/helpers/credits.ts +0 -54
  688. package/src/helpers/error.test.ts +0 -29
  689. package/src/helpers/error.ts +0 -278
  690. package/src/helpers/imageCompression.ts +0 -230
  691. package/src/helpers/llmUsage.ts +0 -328
  692. package/src/helpers/markedExtendedTables.js +0 -217
  693. package/src/helpers/media.test.ts +0 -169
  694. package/src/helpers/media.ts +0 -81
  695. package/src/helpers/message.test.ts +0 -126
  696. package/src/helpers/message.ts +0 -219
  697. package/src/helpers/nats/getNatsConfig.ts +0 -148
  698. package/src/helpers/nats/isSessionExpiredError.test.ts +0 -38
  699. package/src/helpers/nats/isSessionExpiredError.ts +0 -51
  700. package/src/helpers/nats/useNats.test.tsx +0 -81
  701. package/src/helpers/nats/useNats.ts +0 -204
  702. package/src/helpers/nats/useNatsSession.test.ts +0 -16
  703. package/src/helpers/nats/useNatsSession.ts +0 -460
  704. package/src/helpers/piiDetection.test.ts +0 -186
  705. package/src/helpers/piiDetection.ts +0 -91
  706. package/src/helpers/sanitizer.ts +0 -17
  707. package/src/helpers/statistics.ts +0 -58
  708. package/src/helpers/stt/useSTT.ts +0 -515
  709. package/src/helpers/translations.ts +0 -39
  710. package/src/helpers/tts/ttsVoiceUtility.ts +0 -275
  711. package/src/helpers/tts/useTTS.ts +0 -621
  712. package/src/helpers/utils.test.ts +0 -331
  713. package/src/helpers/utils.ts +0 -591
  714. package/src/helpers/venue.ts +0 -36
  715. package/src/i18n.ts +0 -39
  716. package/src/index.stories.tsx +0 -220
  717. package/src/index.test.tsx +0 -156
  718. package/src/index.tsx +0 -592
  719. package/src/locales/de.json +0 -680
  720. package/src/locales/en.json +0 -754
  721. package/src/locales/es.json +0 -682
  722. package/src/locales/fr.json +0 -682
  723. package/src/locales/it.json +0 -750
  724. package/src/mocks/data.ts +0 -790
  725. package/src/styles.css +0 -126
  726. package/src/types/integration.test.ts +0 -32
  727. package/src/types/integration.ts +0 -31
  728. package/src/types/layout.ts +0 -50
  729. package/src/version.ts +0 -2
@@ -1,308 +0,0 @@
1
- import React from 'react';
2
- import { render, screen, waitFor } from '@testing-library/react';
3
- import { ArtifactProvider } from '../context/ArtifactContext';
4
- import { ArtifactAPIBridge } from './ArtifactAPI';
5
- import { ArtifactData } from '../types/artifact.types';
6
- import MemoriWidget from '../../MemoriWidget/MemoriWidget';
7
- import { Memori } from '@memori.ai/memori-api-client/dist/types';
8
- import { VisemeProvider } from '../../../context/visemeContext';
9
-
10
- const mockMemori: Memori = {
11
- memoriID: 'test-memori-id',
12
- name: 'Test Memori',
13
- culture: 'en-US',
14
- coverURL: '',
15
- enableBoardOfExperts: false,
16
- } as Memori;
17
-
18
- // Helper function to wrap component with all required providers
19
- const renderWithProviders = (component: React.ReactElement) => {
20
- return render(
21
- <VisemeProvider>
22
- <ArtifactProvider>
23
- {component}
24
- </ArtifactProvider>
25
- </VisemeProvider>
26
- );
27
- };
28
-
29
- describe('ArtifactAPIBridge', () => {
30
- beforeEach(() => {
31
- // Clean up any previous API instance
32
- if (window.MemoriArtifactAPI) {
33
- delete window.MemoriArtifactAPI;
34
- }
35
-
36
- // Mock window.matchMedia
37
- Object.defineProperty(window, 'matchMedia', {
38
- writable: true,
39
- value: jest.fn().mockImplementation(query => ({
40
- matches: false,
41
- media: query,
42
- onchange: null,
43
- addListener: jest.fn(), // deprecated
44
- removeListener: jest.fn(), // deprecated
45
- addEventListener: jest.fn(),
46
- removeEventListener: jest.fn(),
47
- dispatchEvent: jest.fn(),
48
- })),
49
- });
50
- });
51
-
52
- afterEach(() => {
53
- // Clean up after each test
54
- if (window.MemoriArtifactAPI) {
55
- delete window.MemoriArtifactAPI;
56
- }
57
- });
58
-
59
- it('should expose MemoriArtifactAPI on window', () => {
60
- renderWithProviders(
61
- <MemoriWidget memori={mockMemori} tenantID="test-tenant-id" />
62
- );
63
-
64
- expect(window.MemoriArtifactAPI).toBeDefined();
65
- expect(typeof window.MemoriArtifactAPI?.createAndOpenArtifact).toBe('function');
66
- expect(typeof window.MemoriArtifactAPI?.openArtifact).toBe('function');
67
- expect(typeof window.MemoriArtifactAPI?.closeArtifact).toBe('function');
68
- expect(typeof window.MemoriArtifactAPI?.toggleFullscreen).toBe('function');
69
- expect(typeof window.MemoriArtifactAPI?.getState).toBe('function');
70
- expect(typeof window.MemoriArtifactAPI?.createFromOutputElement).toBe('function');
71
- });
72
-
73
- it('should create and open artifact with simple parameters', async () => {
74
- renderWithProviders(
75
- <MemoriWidget memori={mockMemori} tenantID="test-tenant-id" />
76
- );
77
-
78
- const testContent = '<h1>Test Content</h1><p>This is a test</p>';
79
- const testTitle = 'Test Artifact';
80
-
81
- window.MemoriArtifactAPI!.createAndOpenArtifact(
82
- testContent,
83
- 'html',
84
- testTitle
85
- );
86
-
87
- await waitFor(() => {
88
- const state = window.MemoriArtifactAPI!.getState();
89
- expect(state.isDrawerOpen).toBe(true);
90
- expect(state.currentArtifact?.title).toBe(testTitle);
91
- expect(state.currentArtifact?.content).toBe(testContent);
92
- expect(state.currentArtifact?.mimeType).toBe('html');
93
- });
94
- });
95
-
96
- it('should generate default title from mime type when not provided', async () => {
97
- renderWithProviders(
98
- <MemoriWidget memori={mockMemori} tenantID="test-tenant-id" />
99
- );
100
-
101
- window.MemoriArtifactAPI!.createAndOpenArtifact(
102
- 'console.log("test")',
103
- 'javascript'
104
- );
105
-
106
- await waitFor(() => {
107
- const state = window.MemoriArtifactAPI!.getState();
108
- expect(state.currentArtifact?.title).toBe('JavaScript Code');
109
- });
110
- });
111
-
112
- it('should open artifact with full ArtifactData object', async () => {
113
- renderWithProviders(
114
- <MemoriWidget memori={mockMemori} tenantID="test-tenant-id" />
115
- );
116
-
117
- const artifact: ArtifactData = {
118
- id: 'test-artifact-123',
119
- artifactId: 'test-artifact',
120
- content: '<div>Full artifact</div>',
121
- mimeType: 'html',
122
- title: 'Full Artifact Test',
123
- timestamp: new Date(),
124
- size: 100,
125
- };
126
-
127
- window.MemoriArtifactAPI!.openArtifact(artifact);
128
-
129
- await waitFor(() => {
130
- const state = window.MemoriArtifactAPI!.getState();
131
- expect(state.isDrawerOpen).toBe(true);
132
- expect(state.currentArtifact?.id).toBe('test-artifact-123');
133
- expect(state.currentArtifact?.title).toBe('Full Artifact Test');
134
- });
135
- });
136
-
137
- it('should close artifact', async () => {
138
- renderWithProviders(
139
- <MemoriWidget memori={mockMemori} tenantID="test-tenant-id" />
140
- );
141
-
142
- // First open an artifact
143
- window.MemoriArtifactAPI!.createAndOpenArtifact(
144
- '<h1>Test</h1>',
145
- 'html',
146
- 'Test'
147
- );
148
-
149
- await waitFor(() => {
150
- const state = window.MemoriArtifactAPI!.getState();
151
- expect(state.isDrawerOpen).toBe(true);
152
- });
153
-
154
- // Then close it
155
- window.MemoriArtifactAPI!.closeArtifact();
156
-
157
- await waitFor(() => {
158
- const state = window.MemoriArtifactAPI!.getState();
159
- expect(state.isDrawerOpen).toBe(false);
160
- expect(state.currentArtifact).toBeNull();
161
- });
162
- });
163
-
164
- it('should toggle fullscreen', async () => {
165
- renderWithProviders(
166
- <MemoriWidget memori={mockMemori} tenantID="test-tenant-id" />
167
- );
168
-
169
- // Open an artifact first
170
- window.MemoriArtifactAPI!.createAndOpenArtifact(
171
- '<h1>Test</h1>',
172
- 'html',
173
- 'Test'
174
- );
175
-
176
- await waitFor(() => {
177
- const state = window.MemoriArtifactAPI!.getState();
178
- expect(state.isFullscreen).toBe(false);
179
- });
180
-
181
- // Toggle fullscreen
182
- window.MemoriArtifactAPI!.toggleFullscreen();
183
-
184
- await waitFor(() => {
185
- const state = window.MemoriArtifactAPI!.getState();
186
- expect(state.isFullscreen).toBe(true);
187
- });
188
-
189
- // Toggle back
190
- window.MemoriArtifactAPI!.toggleFullscreen();
191
-
192
- await waitFor(() => {
193
- const state = window.MemoriArtifactAPI!.getState();
194
- expect(state.isFullscreen).toBe(false);
195
- });
196
- });
197
-
198
- it('should create artifact from output element', async () => {
199
- renderWithProviders(
200
- <MemoriWidget memori={mockMemori} tenantID="test-tenant-id" />
201
- );
202
-
203
- // Create a mock output element
204
- const outputElement = document.createElement('output');
205
- outputElement.className = 'memori-artifact';
206
- outputElement.innerHTML = '<div>Content from output</div>';
207
- outputElement.setAttribute('data-mimetype', 'html');
208
- outputElement.setAttribute('data-title', 'Output Artifact');
209
- document.body.appendChild(outputElement);
210
-
211
- const artifactId = window.MemoriArtifactAPI!.createFromOutputElement(outputElement);
212
-
213
- expect(artifactId).toBeDefined();
214
- expect(outputElement.style.display).toBe('none');
215
- expect(outputElement.getAttribute('data-memori-processed')).toBe('true');
216
-
217
- await waitFor(() => {
218
- const state = window.MemoriArtifactAPI!.getState();
219
- expect(state.isDrawerOpen).toBe(true);
220
- expect(state.currentArtifact?.content).toBe('<div>Content from output</div>');
221
- expect(state.currentArtifact?.title).toBe('Output Artifact');
222
- });
223
-
224
- // Clean up
225
- document.body.removeChild(outputElement);
226
- });
227
-
228
- it('should handle multiple artifacts in the same message', async () => {
229
- renderWithProviders(
230
- <MemoriWidget memori={mockMemori} tenantID="test-tenant-id" />
231
- );
232
-
233
- // Create a message with multiple output elements
234
- const messageContent = `
235
- <output class="memori-artifact" data-mimetype="html" data-title="Artifact 1">
236
- <div>Content 1</div>
237
- </output>
238
- <output class="memori-artifact" data-mimetype="javascript" data-title="Artifact 2">
239
- console.log("test");
240
- </output>
241
- `;
242
-
243
- window.MemoriArtifactAPI!.createAndOpenArtifact(messageContent, 'html');
244
-
245
- await waitFor(() => {
246
- const state = window.MemoriArtifactAPI!.getState();
247
- // The first artifact should be opened
248
- expect(state.isDrawerOpen).toBe(true);
249
- expect(state.currentArtifact).toBeDefined();
250
- });
251
- });
252
-
253
- it('should return initial state correctly', () => {
254
- renderWithProviders(
255
- <MemoriWidget memori={mockMemori} tenantID="test-tenant-id" />
256
- );
257
-
258
- const state = window.MemoriArtifactAPI!.getState();
259
-
260
- expect(state.currentArtifact).toBeNull();
261
- expect(state.isDrawerOpen).toBe(false);
262
- expect(state.isFullscreen).toBe(false);
263
- });
264
-
265
- it('should clean up API on unmount', () => {
266
- const { unmount } = renderWithProviders(
267
- <MemoriWidget memori={mockMemori} tenantID="test-tenant-id" />
268
- );
269
-
270
- expect(window.MemoriArtifactAPI).toBeDefined();
271
-
272
- unmount();
273
-
274
- expect(window.MemoriArtifactAPI).toBeUndefined();
275
- });
276
-
277
- it('should handle different mime types with correct titles', async () => {
278
- renderWithProviders(
279
- <MemoriWidget memori={mockMemori} tenantID="test-tenant-id" />
280
- );
281
-
282
- const testCases = [
283
- { mimeType: 'html', expectedTitle: 'HTML Document' },
284
- { mimeType: 'markdown', expectedTitle: 'Markdown Document' },
285
- { mimeType: 'javascript', expectedTitle: 'JavaScript Code' },
286
- { mimeType: 'python', expectedTitle: 'Python Code' },
287
- { mimeType: 'json', expectedTitle: 'JSON Data' },
288
- { mimeType: 'css', expectedTitle: 'CSS Stylesheet' },
289
- { mimeType: 'typescript', expectedTitle: 'TypeScript Code' },
290
- { mimeType: 'xml', expectedTitle: 'XML Document' },
291
- { mimeType: 'svg', expectedTitle: 'SVG Image' },
292
- { mimeType: 'unknown', expectedTitle: 'Document' },
293
- ];
294
-
295
- for (const testCase of testCases) {
296
- window.MemoriArtifactAPI!.createAndOpenArtifact(
297
- 'test content',
298
- testCase.mimeType
299
- );
300
-
301
- await waitFor(() => {
302
- const state = window.MemoriArtifactAPI!.getState();
303
- expect(state.currentArtifact?.title).toBe(testCase.expectedTitle);
304
- });
305
- }
306
- });
307
- });
308
-
@@ -1,379 +0,0 @@
1
- import { useEffect, useRef } from 'react';
2
- import { useArtifact } from '../context/ArtifactContext';
3
- import type { ArtifactData } from '../types/artifact.types';
4
- import { Message } from '@memori.ai/memori-api-client/dist/types';
5
-
6
- // Queue for calls made before the component is ready
7
- const pendingCalls: Array<{ method: string; args: any[] }> = [];
8
- let isReady = false;
9
-
10
- /**
11
- * Initialize the MemoriArtifactAPI stub on window
12
- * This should be called as early as possible to prevent "undefined" errors
13
- */
14
- export const initMemoriArtifactAPI = () => {
15
- if (typeof window === 'undefined') return;
16
-
17
- // Only initialize if not already present
18
- if ((window as any).MemoriArtifactAPI) {
19
- return;
20
- }
21
-
22
- (window as any).MemoriArtifactAPI = {
23
- _isReady: () => isReady,
24
- _setReady: (ready: boolean) => { isReady = ready; },
25
- _getPendingCalls: () => pendingCalls,
26
- _clearPendingCalls: () => { pendingCalls.length = 0; },
27
-
28
- openArtifact: (artifact: ArtifactData) => {
29
- if (!isReady) {
30
- pendingCalls.push({ method: 'openArtifact', args: [artifact] });
31
- }
32
- },
33
- createAndOpenArtifact: (content: string, mimeType?: string, title?: string) => {
34
- if (!isReady) {
35
- pendingCalls.push({ method: 'createAndOpenArtifact', args: [content, mimeType, title] });
36
- }
37
- },
38
- createFromOutputElement: (outputElement: HTMLOutputElement) => {
39
- if (!isReady) {
40
- pendingCalls.push({ method: 'createFromOutputElement', args: [outputElement] });
41
- return 'pending';
42
- }
43
- return 'not-ready';
44
- },
45
- closeArtifact: () => {
46
- if (!isReady) {
47
- pendingCalls.push({ method: 'closeArtifact', args: [] });
48
- }
49
- },
50
- toggleFullscreen: () => {
51
- if (!isReady) {
52
- pendingCalls.push({ method: 'toggleFullscreen', args: [] });
53
- }
54
- },
55
- getState: () => {
56
- if (!isReady) {
57
- return { currentArtifact: null, isDrawerOpen: false, isFullscreen: false };
58
- }
59
- return { currentArtifact: null, isDrawerOpen: false, isFullscreen: false };
60
- },
61
- };
62
- };
63
-
64
- // Initialize immediately when this module is loaded
65
- initMemoriArtifactAPI();
66
-
67
- /**
68
- * Componente che espone le funzioni dell'Artifact System come API globale
69
- * Questo permette di controllare gli artifacts da JavaScript vanilla esterno
70
- */
71
- export const ArtifactAPIBridge = ({
72
- pushMessage,
73
- }: {
74
- pushMessage: (message: Message) => void;
75
- }) => {
76
- const { openArtifact, closeArtifact, toggleFullscreen, state, registerArtifact } =
77
- useArtifact();
78
-
79
- const apiRef = useRef<any>(null);
80
-
81
- useEffect(() => {
82
- // Update API with actual implementations
83
- if (typeof window !== 'undefined') {
84
- const windowApi = (window as any).MemoriArtifactAPI;
85
-
86
- // Store reference to actual implementations
87
- apiRef.current = {
88
- /**
89
- * Apri un artifact esistente
90
- * @param artifact - Oggetto ArtifactData completo
91
- */
92
- openArtifact: (artifact: ArtifactData) => {
93
- openArtifact(artifact);
94
- },
95
-
96
- /**
97
- * Crea e apri un artifact con parametri semplici
98
- * @param content - Contenuto dell'artifact (HTML, markdown, ecc.)
99
- * @param mimeType - Tipo MIME (default: 'html')
100
- * @param title - Titolo da mostrare (default: auto-generato)
101
- */
102
- createAndOpenArtifact: (
103
- content: string,
104
- mimeType: string = 'html',
105
- title?: string
106
- ) => {
107
- const autoTitle = title || getTitleFromMimeType(mimeType);
108
- const artifactId = `api-${Date.now()}-${Math.random()
109
- .toString(36)
110
- .substr(2, 9)}`;
111
-
112
- // Create the artifact object
113
- const artifact: ArtifactData = {
114
- id: `artifact-ui-${artifactId}`,
115
- artifactId,
116
- content,
117
- mimeType,
118
- title: autoTitle,
119
- timestamp: new Date(),
120
- size: content.length,
121
- };
122
-
123
- // Create wrapped message text for artifact detection
124
- // Don't reassign content parameter - use a new variable
125
- let messageText = content;
126
- if (!messageText.includes('class="memori-artifact"')) {
127
- messageText = `<output class="memori-artifact" data-action="create" data-artifact-id="${artifactId}" data-mimetype="${mimeType}" data-title="${autoTitle}">${content}</output>`;
128
- }
129
-
130
- //we have to push in the history the artifact as message
131
- pushMessage({
132
- text: messageText,
133
- timestamp: new Date().toISOString(),
134
- fromUser: false as const,
135
- media: [],
136
- initial: false,
137
- translatedText: undefined,
138
- questionAnswered: undefined,
139
- generatedByAI: false,
140
- contextVars: undefined,
141
- date: undefined,
142
- placeName: undefined,
143
- placeLatitude: undefined,
144
- placeLongitude: undefined,
145
- placeUncertaintyKm: undefined,
146
- });
147
-
148
- registerArtifact(artifact);
149
- // Open the artifact immediately
150
- openArtifact(artifact);
151
- },
152
-
153
- /**
154
- * Crea un artifact da un elemento <output> esistente nel DOM
155
- * @param outputElement - Elemento DOM <output class="memori-artifact">
156
- * @returns artifactId
157
- */
158
- createFromOutputElement: (outputElement: HTMLOutputElement) => {
159
- const content = outputElement.innerHTML;
160
- const mimeType =
161
- outputElement.getAttribute('data-mimetype') || 'html';
162
- const title =
163
- outputElement.getAttribute('data-title') ||
164
- getTitleFromMimeType(mimeType);
165
- const artifactId =
166
- outputElement.getAttribute('data-artifact-id') ||
167
- `api-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
168
-
169
- // Nascondi l'elemento originale
170
- outputElement.style.display = 'none';
171
- outputElement.setAttribute('data-memori-processed', 'true');
172
-
173
- const artifact: ArtifactData = {
174
- id: `artifact-ui-${artifactId}`,
175
- artifactId,
176
- content,
177
- mimeType,
178
- title,
179
- timestamp: new Date(),
180
- size: content.length,
181
- };
182
-
183
- // Create wrapped message text for artifact detection
184
- // Don't reassign content - use a new variable
185
- let messageText = content;
186
- if (!messageText.includes('class="memori-artifact"')) {
187
- messageText = `<output class="memori-artifact" data-action="create" data-artifact-id="${artifactId}" data-mimetype="${mimeType}" data-title="${title}">${content}</output>`;
188
- }
189
-
190
- pushMessage({
191
- text: messageText,
192
- timestamp: new Date().toISOString(),
193
- fromUser: false as const,
194
- media: [],
195
- initial: false,
196
- translatedText: undefined,
197
- questionAnswered: undefined,
198
- generatedByAI: false,
199
- contextVars: undefined,
200
- date: undefined,
201
- placeName: undefined,
202
- placeLatitude: undefined,
203
- placeLongitude: undefined,
204
- placeUncertaintyKm: undefined,
205
- });
206
-
207
- registerArtifact(artifact);
208
- // Open the artifact immediately
209
- openArtifact(artifact);
210
-
211
- return artifact.artifactId;
212
- },
213
-
214
- /**
215
- * Chiudi l'artifact drawer corrente
216
- */
217
- closeArtifact: () => {
218
- closeArtifact();
219
- },
220
-
221
- /**
222
- * Toggle fullscreen dell'artifact drawer
223
- */
224
- toggleFullscreen: () => {
225
- toggleFullscreen();
226
- },
227
-
228
- /**
229
- * Ottieni lo stato corrente del sistema artifacts
230
- */
231
- getState: () => {
232
- return {
233
- currentArtifact: state.currentArtifact,
234
- isDrawerOpen: state.isDrawerOpen,
235
- isFullscreen: state.isFullscreen,
236
- };
237
- },
238
- };
239
-
240
- // Update window API methods to use the real implementations
241
- if (windowApi) {
242
- windowApi.openArtifact = apiRef.current.openArtifact;
243
- windowApi.createAndOpenArtifact = apiRef.current.createAndOpenArtifact;
244
- windowApi.createFromOutputElement = apiRef.current.createFromOutputElement;
245
- windowApi.closeArtifact = apiRef.current.closeArtifact;
246
- windowApi.toggleFullscreen = apiRef.current.toggleFullscreen;
247
- windowApi.getState = apiRef.current.getState;
248
-
249
- // Mark API as ready
250
- windowApi._setReady(true);
251
-
252
- // Process any pending calls that were queued before ready
253
- const pendingCalls = windowApi._getPendingCalls();
254
- if (pendingCalls.length > 0) {
255
- pendingCalls.forEach((call: { method: string; args: any[] }) => {
256
- try {
257
- const method = (apiRef.current as any)[call.method];
258
- if (method) {
259
- method(...call.args);
260
- }
261
- } catch (error) {
262
- // Swallow error, remove log
263
- }
264
- });
265
- windowApi._clearPendingCalls();
266
- }
267
- } else {
268
- // If windowApi doesn't exist yet, initialize it now
269
- (window as any).MemoriArtifactAPI = {
270
- ...apiRef.current,
271
- _isReady: true,
272
- _pendingCalls: [],
273
- _setReady: (ready: boolean) => {
274
- (window as any).MemoriArtifactAPI._isReady = ready;
275
- },
276
- _getPendingCalls: () => {
277
- return (window as any).MemoriArtifactAPI._pendingCalls;
278
- },
279
- _clearPendingCalls: () => {
280
- (window as any).MemoriArtifactAPI._pendingCalls = [];
281
- },
282
- };
283
- }
284
- }
285
-
286
- return () => {
287
- // Clean up the API on unmount
288
- if (typeof window !== 'undefined') {
289
- delete (window as any).MemoriArtifactAPI;
290
- }
291
- };
292
- }, [openArtifact, closeArtifact, toggleFullscreen, state, pushMessage, registerArtifact]);
293
-
294
- return null;
295
- };
296
-
297
- // Helper functions
298
- function getTitleFromMimeType(mimeType: string): string {
299
- if (mimeType.includes('html')) return 'HTML Document';
300
- if (mimeType.includes('markdown')) return 'Markdown Document';
301
- if (mimeType.includes('javascript')) return 'JavaScript Code';
302
- if (mimeType.includes('python')) return 'Python Code';
303
- if (mimeType.includes('json')) return 'JSON Data';
304
- if (mimeType.includes('css')) return 'CSS Stylesheet';
305
- if (mimeType.includes('typescript')) return 'TypeScript Code';
306
- if (mimeType.includes('xml')) return 'XML Document';
307
- if (mimeType.includes('svg')) return 'SVG Image';
308
- return 'Document';
309
- }
310
-
311
- function createArtifactHandler(
312
- content: string,
313
- mimeType: string,
314
- title: string
315
- ): HTMLDivElement {
316
- const handler = document.createElement('div');
317
- handler.className = 'memori-artifact-handler';
318
- handler.style.cssText = `
319
- display: flex;
320
- align-items: center;
321
- gap: 12px;
322
- padding: 16px;
323
- margin: 12px 0;
324
- background: white;
325
- border: 1px solid #e5e7eb;
326
- border-radius: 12px;
327
- cursor: pointer;
328
- transition: all 0.2s ease;
329
- `;
330
-
331
- const icon = getIconForMimeType(mimeType);
332
- const size = `${(content.length / 1024).toFixed(1)} KB`;
333
-
334
- handler.innerHTML = `
335
- <div style="font-size: 32px;">${icon}</div>
336
- <div style="flex: 1;">
337
- <div style="font-weight: 600; margin-bottom: 4px;">${escapeHtml(
338
- title
339
- )}</div>
340
- <div style="font-size: 13px; color: #6b7280;">${mimeType} • ${size}</div>
341
- </div>
342
- <div>
343
- <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
344
- <polyline points="9 18 15 12 9 6"></polyline>
345
- </svg>
346
- </div>
347
- `;
348
-
349
- handler.addEventListener('mouseenter', () => {
350
- handler.style.background = '#faf5ff';
351
- handler.style.borderColor = '#9333ea';
352
- });
353
-
354
- handler.addEventListener('mouseleave', () => {
355
- handler.style.background = 'white';
356
- handler.style.borderColor = '#e5e7eb';
357
- });
358
-
359
- return handler;
360
- }
361
-
362
- function getIconForMimeType(mimeType: string): string {
363
- if (mimeType.includes('html')) return '🌐';
364
- if (mimeType.includes('markdown')) return '📝';
365
- if (mimeType.includes('javascript') || mimeType.includes('typescript'))
366
- return '📜';
367
- if (mimeType.includes('python')) return '🐍';
368
- if (mimeType.includes('json')) return '📊';
369
- if (mimeType.includes('css')) return '🎨';
370
- if (mimeType.includes('xml')) return '📋';
371
- if (mimeType.includes('svg')) return '🖼️';
372
- return '📄';
373
- }
374
-
375
- function escapeHtml(text: string): string {
376
- const div = document.createElement('div');
377
- div.textContent = text;
378
- return div.innerHTML;
379
- }