@memori.ai/memori-react 9.0.0-alpha.0 → 9.0.0-alpha.10

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 (942) hide show
  1. package/CHANGELOG.md +381 -0
  2. package/dist/components/AgeVerificationModal/AgeVerificationModal.js +8 -3
  3. package/dist/components/AgeVerificationModal/AgeVerificationModal.js.map +1 -1
  4. package/dist/components/Auth/Auth.js +3 -1
  5. package/dist/components/Auth/Auth.js.map +1 -1
  6. package/dist/components/Avatar/Avatar.js +5 -10
  7. package/dist/components/Avatar/Avatar.js.map +1 -1
  8. package/dist/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.js +8 -1
  9. package/dist/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.js.map +1 -1
  10. package/dist/components/Avatar/AvatarView/AvatarComponent/components/controllers/MorphTargetController.js +1 -1
  11. package/dist/components/Avatar/AvatarView/AvatarComponent/components/controllers/MorphTargetController.js.map +1 -1
  12. package/dist/components/Avatar/AvatarView/AvatarComponent/constants.d.ts +2 -0
  13. package/dist/components/Avatar/AvatarView/AvatarComponent/constants.js +14 -5
  14. package/dist/components/Avatar/AvatarView/AvatarComponent/constants.js.map +1 -1
  15. package/dist/components/Chat/Chat.css +108 -20
  16. package/dist/components/Chat/Chat.d.ts +3 -0
  17. package/dist/components/Chat/Chat.js +63 -55
  18. package/dist/components/Chat/Chat.js.map +1 -1
  19. package/dist/components/ChatBubble/ChatBubble.css +42 -14
  20. package/dist/components/ChatBubble/ChatBubble.js +24 -16
  21. package/dist/components/ChatBubble/ChatBubble.js.map +1 -1
  22. package/dist/components/ChatHistoryDrawer/ChatHistory.css +4 -0
  23. package/dist/components/ChatHistoryDrawer/ChatHistory.js +27 -10
  24. package/dist/components/ChatHistoryDrawer/ChatHistory.js.map +1 -1
  25. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.d.ts +0 -1
  26. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.js +0 -1
  27. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.js.map +1 -1
  28. package/dist/components/ChatInputs/ChatInputs.css +292 -108
  29. package/dist/components/ChatInputs/ChatInputs.d.ts +1 -0
  30. package/dist/components/ChatInputs/ChatInputs.js +2 -2
  31. package/dist/components/ChatInputs/ChatInputs.js.map +1 -1
  32. package/dist/components/ChatTextArea/ChatTextArea.css +30 -6
  33. package/dist/components/CompletionProviderStatus/CompletionProviderStatus.js +6 -3
  34. package/dist/components/CompletionProviderStatus/CompletionProviderStatus.js.map +1 -1
  35. package/dist/components/ContentPreviewModal/ContentPreviewModal.js +3 -1
  36. package/dist/components/ContentPreviewModal/ContentPreviewModal.js.map +1 -1
  37. package/dist/components/DateSelector/DateSelector.d.ts +2 -1
  38. package/dist/components/DateSelector/DateSelector.js +17 -7
  39. package/dist/components/DateSelector/DateSelector.js.map +1 -1
  40. package/dist/components/ExpertsDrawer/ExpertsDrawer.js +3 -1
  41. package/dist/components/ExpertsDrawer/ExpertsDrawer.js.map +1 -1
  42. package/dist/components/FilePreview/FilePreview.js +22 -5
  43. package/dist/components/FilePreview/FilePreview.js.map +1 -1
  44. package/dist/components/Header/ChatConsumptionDropdown.d.ts +3 -1
  45. package/dist/components/Header/ChatConsumptionDropdown.js +4 -3
  46. package/dist/components/Header/ChatConsumptionDropdown.js.map +1 -1
  47. package/dist/components/Header/Header.css +16 -10
  48. package/dist/components/Header/Header.js +103 -22
  49. package/dist/components/Header/Header.js.map +1 -1
  50. package/dist/components/KnownFacts/KnownFacts.js +7 -5
  51. package/dist/components/KnownFacts/KnownFacts.js.map +1 -1
  52. package/dist/components/LoginDrawer/LoginDrawer.css +1 -0
  53. package/dist/components/LoginDrawer/LoginDrawer.js +3 -1
  54. package/dist/components/LoginDrawer/LoginDrawer.js.map +1 -1
  55. package/dist/components/MediaWidget/MediaItemWidget.js +14 -12
  56. package/dist/components/MediaWidget/MediaItemWidget.js.map +1 -1
  57. package/dist/components/MediaWidget/MediaItemWidget.utils.d.ts +3 -2
  58. package/dist/components/MediaWidget/MediaItemWidget.utils.js +28 -6
  59. package/dist/components/MediaWidget/MediaItemWidget.utils.js.map +1 -1
  60. package/dist/components/MediaWidget/MediaPreviewModal.js +6 -7
  61. package/dist/components/MediaWidget/MediaPreviewModal.js.map +1 -1
  62. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/styles.css +5 -4
  63. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +108 -42
  64. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.d.ts +1 -0
  65. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js +18 -10
  66. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js.map +1 -1
  67. package/dist/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.js +2 -2
  68. package/dist/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.js.map +1 -1
  69. package/dist/components/MemoriWidget/MemoriWidget.css +5 -5
  70. package/dist/components/MemoriWidget/MemoriWidget.d.ts +1 -0
  71. package/dist/components/MemoriWidget/MemoriWidget.js +788 -430
  72. package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
  73. package/dist/components/MicrophoneButton/MicrophoneButton.css +50 -18
  74. package/dist/components/MobileSessionPanel/MobileSessionPanel.d.ts +3 -2
  75. package/dist/components/MobileSessionPanel/MobileSessionPanel.js +5 -5
  76. package/dist/components/MobileSessionPanel/MobileSessionPanel.js.map +1 -1
  77. package/dist/components/PoweredBy/PoweredBy.css +10 -2
  78. package/dist/components/SettingsDrawer/SettingsDrawer.js +3 -1
  79. package/dist/components/SettingsDrawer/SettingsDrawer.js.map +1 -1
  80. package/dist/components/ShareButton/ShareButton.js +2 -4
  81. package/dist/components/ShareButton/ShareButton.js.map +1 -1
  82. package/dist/components/StartPanel/StartPanel.js +13 -6
  83. package/dist/components/StartPanel/StartPanel.js.map +1 -1
  84. package/dist/components/UploadButton/UploadButton.js +21 -5
  85. package/dist/components/UploadButton/UploadButton.js.map +1 -1
  86. package/dist/components/UploadButton/UploadDocuments/UploadDocuments.js +126 -60
  87. package/dist/components/UploadButton/UploadDocuments/UploadDocuments.js.map +1 -1
  88. package/dist/components/UploadButton/UploadImages/UploadImages.js +4 -2
  89. package/dist/components/UploadButton/UploadImages/UploadImages.js.map +1 -1
  90. package/dist/components/WhyThisAnswer/WhyThisAnswer.js +3 -1
  91. package/dist/components/WhyThisAnswer/WhyThisAnswer.js.map +1 -1
  92. package/dist/components/layouts/Chat.js +25 -30
  93. package/dist/components/layouts/Chat.js.map +1 -1
  94. package/dist/components/layouts/FullPage.js +36 -9
  95. package/dist/components/layouts/FullPage.js.map +1 -1
  96. package/dist/components/layouts/HiddenChat.js +12 -237
  97. package/dist/components/layouts/HiddenChat.js.map +1 -1
  98. package/dist/components/layouts/Totem.js +10 -1
  99. package/dist/components/layouts/Totem.js.map +1 -1
  100. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js +29 -2
  101. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +1 -1
  102. package/dist/components/layouts/WebsiteAssistant/website-assistant.css +160 -59
  103. package/dist/components/layouts/ZoomedFullBody.js +36 -9
  104. package/dist/components/layouts/ZoomedFullBody.js.map +1 -1
  105. package/dist/components/layouts/chat.css +77 -63
  106. package/dist/components/layouts/fullpage.css +229 -84
  107. package/dist/components/layouts/hidden-chat.css +148 -33
  108. package/dist/components/layouts/totem.css +151 -50
  109. package/dist/components/layouts/zoomed-full-body.css +332 -33
  110. package/dist/context/widgetSurfaceContext.d.ts +3 -0
  111. package/dist/context/widgetSurfaceContext.js +11 -0
  112. package/dist/context/widgetSurfaceContext.js.map +1 -0
  113. package/dist/helpers/constants.d.ts +3 -0
  114. package/dist/helpers/constants.js +27 -1
  115. package/dist/helpers/constants.js.map +1 -1
  116. package/dist/helpers/credits.d.ts +5 -2
  117. package/dist/helpers/credits.js +5 -1
  118. package/dist/helpers/credits.js.map +1 -1
  119. package/dist/helpers/message.d.ts +1 -1
  120. package/dist/helpers/message.js +4 -4
  121. package/dist/helpers/message.js.map +1 -1
  122. package/dist/helpers/nats/getNatsConfig.d.ts +9 -0
  123. package/dist/helpers/nats/getNatsConfig.js +65 -0
  124. package/dist/helpers/nats/getNatsConfig.js.map +1 -0
  125. package/dist/helpers/nats/isSessionExpiredError.d.ts +3 -0
  126. package/dist/helpers/nats/isSessionExpiredError.js +36 -0
  127. package/dist/helpers/nats/isSessionExpiredError.js.map +1 -0
  128. package/dist/helpers/nats/useNats.d.ts +12 -0
  129. package/dist/helpers/nats/useNats.js +75 -0
  130. package/dist/helpers/nats/useNats.js.map +1 -0
  131. package/dist/helpers/nats/useNatsSession.d.ts +28 -0
  132. package/dist/helpers/nats/useNatsSession.js +212 -0
  133. package/dist/helpers/nats/useNatsSession.js.map +1 -0
  134. package/dist/helpers/positionPopover.d.ts +1 -0
  135. package/dist/helpers/positionPopover.js +7 -0
  136. package/dist/helpers/positionPopover.js.map +1 -0
  137. package/dist/helpers/usePressTooltip.d.ts +13 -0
  138. package/dist/helpers/usePressTooltip.js +23 -0
  139. package/dist/helpers/usePressTooltip.js.map +1 -0
  140. package/dist/helpers/utils.d.ts +21 -0
  141. package/dist/helpers/utils.js +75 -4
  142. package/dist/helpers/utils.js.map +1 -1
  143. package/dist/locales/de.json +11 -1
  144. package/dist/locales/en.json +12 -2
  145. package/dist/locales/es.json +11 -1
  146. package/dist/locales/fr.json +11 -1
  147. package/dist/locales/it.json +12 -2
  148. package/dist/styles.css +1 -161
  149. package/dist/types/integration.d.ts +3 -0
  150. package/dist/types/integration.js +16 -0
  151. package/dist/types/integration.js.map +1 -0
  152. package/dist/version.d.ts +1 -1
  153. package/dist/version.js +1 -1
  154. package/dist/version.js.map +1 -1
  155. package/esm/components/AgeVerificationModal/AgeVerificationModal.js +8 -3
  156. package/esm/components/AgeVerificationModal/AgeVerificationModal.js.map +1 -1
  157. package/esm/components/Auth/Auth.js +3 -1
  158. package/esm/components/Auth/Auth.js.map +1 -1
  159. package/esm/components/Avatar/Avatar.js +5 -10
  160. package/esm/components/Avatar/Avatar.js.map +1 -1
  161. package/esm/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.js +9 -2
  162. package/esm/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.js.map +1 -1
  163. package/esm/components/Avatar/AvatarView/AvatarComponent/components/controllers/MorphTargetController.js +2 -2
  164. package/esm/components/Avatar/AvatarView/AvatarComponent/components/controllers/MorphTargetController.js.map +1 -1
  165. package/esm/components/Avatar/AvatarView/AvatarComponent/constants.d.ts +2 -0
  166. package/esm/components/Avatar/AvatarView/AvatarComponent/constants.js +13 -4
  167. package/esm/components/Avatar/AvatarView/AvatarComponent/constants.js.map +1 -1
  168. package/esm/components/Chat/Chat.css +108 -20
  169. package/esm/components/Chat/Chat.d.ts +3 -0
  170. package/esm/components/Chat/Chat.js +63 -55
  171. package/esm/components/Chat/Chat.js.map +1 -1
  172. package/esm/components/ChatBubble/ChatBubble.css +42 -14
  173. package/esm/components/ChatBubble/ChatBubble.js +24 -16
  174. package/esm/components/ChatBubble/ChatBubble.js.map +1 -1
  175. package/esm/components/ChatHistoryDrawer/ChatHistory.css +4 -0
  176. package/esm/components/ChatHistoryDrawer/ChatHistory.js +27 -10
  177. package/esm/components/ChatHistoryDrawer/ChatHistory.js.map +1 -1
  178. package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.d.ts +0 -1
  179. package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.js +0 -1
  180. package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.js.map +1 -1
  181. package/esm/components/ChatInputs/ChatInputs.css +292 -108
  182. package/esm/components/ChatInputs/ChatInputs.d.ts +1 -0
  183. package/esm/components/ChatInputs/ChatInputs.js +2 -2
  184. package/esm/components/ChatInputs/ChatInputs.js.map +1 -1
  185. package/esm/components/ChatTextArea/ChatTextArea.css +30 -6
  186. package/esm/components/CompletionProviderStatus/CompletionProviderStatus.js +6 -3
  187. package/esm/components/CompletionProviderStatus/CompletionProviderStatus.js.map +1 -1
  188. package/esm/components/ContentPreviewModal/ContentPreviewModal.js +3 -1
  189. package/esm/components/ContentPreviewModal/ContentPreviewModal.js.map +1 -1
  190. package/esm/components/DateSelector/DateSelector.d.ts +2 -1
  191. package/esm/components/DateSelector/DateSelector.js +17 -7
  192. package/esm/components/DateSelector/DateSelector.js.map +1 -1
  193. package/esm/components/ExpertsDrawer/ExpertsDrawer.js +3 -1
  194. package/esm/components/ExpertsDrawer/ExpertsDrawer.js.map +1 -1
  195. package/esm/components/FilePreview/FilePreview.js +24 -7
  196. package/esm/components/FilePreview/FilePreview.js.map +1 -1
  197. package/esm/components/Header/ChatConsumptionDropdown.d.ts +3 -1
  198. package/esm/components/Header/ChatConsumptionDropdown.js +5 -4
  199. package/esm/components/Header/ChatConsumptionDropdown.js.map +1 -1
  200. package/esm/components/Header/Header.css +16 -10
  201. package/esm/components/Header/Header.js +104 -23
  202. package/esm/components/Header/Header.js.map +1 -1
  203. package/esm/components/KnownFacts/KnownFacts.js +7 -5
  204. package/esm/components/KnownFacts/KnownFacts.js.map +1 -1
  205. package/esm/components/LoginDrawer/LoginDrawer.css +1 -0
  206. package/esm/components/LoginDrawer/LoginDrawer.js +3 -1
  207. package/esm/components/LoginDrawer/LoginDrawer.js.map +1 -1
  208. package/esm/components/MediaWidget/MediaItemWidget.js +16 -14
  209. package/esm/components/MediaWidget/MediaItemWidget.js.map +1 -1
  210. package/esm/components/MediaWidget/MediaItemWidget.utils.d.ts +3 -2
  211. package/esm/components/MediaWidget/MediaItemWidget.utils.js +27 -6
  212. package/esm/components/MediaWidget/MediaItemWidget.utils.js.map +1 -1
  213. package/esm/components/MediaWidget/MediaPreviewModal.js +6 -7
  214. package/esm/components/MediaWidget/MediaPreviewModal.js.map +1 -1
  215. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/styles.css +5 -4
  216. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +108 -42
  217. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.d.ts +1 -0
  218. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js +18 -10
  219. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js.map +1 -1
  220. package/esm/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.js +2 -2
  221. package/esm/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.js.map +1 -1
  222. package/esm/components/MemoriWidget/MemoriWidget.css +5 -5
  223. package/esm/components/MemoriWidget/MemoriWidget.d.ts +1 -0
  224. package/esm/components/MemoriWidget/MemoriWidget.js +789 -431
  225. package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
  226. package/esm/components/MicrophoneButton/MicrophoneButton.css +50 -18
  227. package/esm/components/MobileSessionPanel/MobileSessionPanel.d.ts +3 -2
  228. package/esm/components/MobileSessionPanel/MobileSessionPanel.js +5 -5
  229. package/esm/components/MobileSessionPanel/MobileSessionPanel.js.map +1 -1
  230. package/esm/components/PoweredBy/PoweredBy.css +10 -2
  231. package/esm/components/SettingsDrawer/SettingsDrawer.js +3 -1
  232. package/esm/components/SettingsDrawer/SettingsDrawer.js.map +1 -1
  233. package/esm/components/ShareButton/ShareButton.js +2 -4
  234. package/esm/components/ShareButton/ShareButton.js.map +1 -1
  235. package/esm/components/StartPanel/StartPanel.js +13 -6
  236. package/esm/components/StartPanel/StartPanel.js.map +1 -1
  237. package/esm/components/UploadButton/UploadButton.js +21 -5
  238. package/esm/components/UploadButton/UploadButton.js.map +1 -1
  239. package/esm/components/UploadButton/UploadDocuments/UploadDocuments.js +126 -60
  240. package/esm/components/UploadButton/UploadDocuments/UploadDocuments.js.map +1 -1
  241. package/esm/components/UploadButton/UploadImages/UploadImages.js +4 -2
  242. package/esm/components/UploadButton/UploadImages/UploadImages.js.map +1 -1
  243. package/esm/components/WhyThisAnswer/WhyThisAnswer.js +3 -1
  244. package/esm/components/WhyThisAnswer/WhyThisAnswer.js.map +1 -1
  245. package/esm/components/layouts/Chat.js +25 -30
  246. package/esm/components/layouts/Chat.js.map +1 -1
  247. package/esm/components/layouts/FullPage.js +36 -9
  248. package/esm/components/layouts/FullPage.js.map +1 -1
  249. package/esm/components/layouts/HiddenChat.js +14 -239
  250. package/esm/components/layouts/HiddenChat.js.map +1 -1
  251. package/esm/components/layouts/Totem.js +10 -1
  252. package/esm/components/layouts/Totem.js.map +1 -1
  253. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js +29 -2
  254. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +1 -1
  255. package/esm/components/layouts/WebsiteAssistant/website-assistant.css +160 -59
  256. package/esm/components/layouts/ZoomedFullBody.js +36 -9
  257. package/esm/components/layouts/ZoomedFullBody.js.map +1 -1
  258. package/esm/components/layouts/chat.css +77 -63
  259. package/esm/components/layouts/fullpage.css +229 -84
  260. package/esm/components/layouts/hidden-chat.css +148 -33
  261. package/esm/components/layouts/totem.css +151 -50
  262. package/esm/components/layouts/zoomed-full-body.css +332 -33
  263. package/esm/context/widgetSurfaceContext.d.ts +3 -0
  264. package/esm/context/widgetSurfaceContext.js +7 -0
  265. package/esm/context/widgetSurfaceContext.js.map +1 -0
  266. package/esm/helpers/constants.d.ts +3 -0
  267. package/esm/helpers/constants.js +26 -0
  268. package/esm/helpers/constants.js.map +1 -1
  269. package/esm/helpers/credits.d.ts +5 -2
  270. package/esm/helpers/credits.js +5 -1
  271. package/esm/helpers/credits.js.map +1 -1
  272. package/esm/helpers/message.d.ts +1 -1
  273. package/esm/helpers/message.js +2 -2
  274. package/esm/helpers/message.js.map +1 -1
  275. package/esm/helpers/nats/getNatsConfig.d.ts +9 -0
  276. package/esm/helpers/nats/getNatsConfig.js +61 -0
  277. package/esm/helpers/nats/getNatsConfig.js.map +1 -0
  278. package/esm/helpers/nats/isSessionExpiredError.d.ts +3 -0
  279. package/esm/helpers/nats/isSessionExpiredError.js +32 -0
  280. package/esm/helpers/nats/isSessionExpiredError.js.map +1 -0
  281. package/esm/helpers/nats/useNats.d.ts +12 -0
  282. package/esm/helpers/nats/useNats.js +72 -0
  283. package/esm/helpers/nats/useNats.js.map +1 -0
  284. package/esm/helpers/nats/useNatsSession.d.ts +28 -0
  285. package/esm/helpers/nats/useNatsSession.js +208 -0
  286. package/esm/helpers/nats/useNatsSession.js.map +1 -0
  287. package/esm/helpers/positionPopover.d.ts +1 -0
  288. package/esm/helpers/positionPopover.js +4 -0
  289. package/esm/helpers/positionPopover.js.map +1 -0
  290. package/esm/helpers/usePressTooltip.d.ts +13 -0
  291. package/esm/helpers/usePressTooltip.js +20 -0
  292. package/esm/helpers/usePressTooltip.js.map +1 -0
  293. package/esm/helpers/utils.d.ts +21 -0
  294. package/esm/helpers/utils.js +68 -3
  295. package/esm/helpers/utils.js.map +1 -1
  296. package/esm/locales/de.json +11 -1
  297. package/esm/locales/en.json +12 -2
  298. package/esm/locales/es.json +11 -1
  299. package/esm/locales/fr.json +11 -1
  300. package/esm/locales/it.json +12 -2
  301. package/esm/styles.css +1 -161
  302. package/esm/types/integration.d.ts +3 -0
  303. package/esm/types/integration.js +11 -0
  304. package/esm/types/integration.js.map +1 -0
  305. package/esm/version.d.ts +1 -1
  306. package/esm/version.js +1 -1
  307. package/esm/version.js.map +1 -1
  308. package/package.json +13 -6
  309. package/src/components/AgeVerificationModal/AgeVerificationModal.tsx +9 -1
  310. package/src/components/Auth/Auth.tsx +3 -0
  311. package/src/components/Avatar/Avatar.stories.tsx +45 -28
  312. package/src/components/Avatar/Avatar.test.tsx +54 -0
  313. package/src/components/Avatar/Avatar.tsx +8 -12
  314. package/src/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.tsx +12 -5
  315. package/src/components/Avatar/AvatarView/AvatarComponent/components/controllers/MorphTargetController.ts +2 -1
  316. package/src/components/Avatar/AvatarView/AvatarComponent/constants.ts +16 -4
  317. package/src/components/Avatar/__snapshots__/Avatar.test.tsx.snap +164 -0
  318. package/src/components/BlockedMemoriBadge/__snapshots__/BlockedMemoriBadge.test.tsx.snap +10 -10
  319. package/src/components/Chat/Chat.css +108 -20
  320. package/src/components/Chat/Chat.tsx +28 -0
  321. package/src/components/Chat/__snapshots__/Chat.test.tsx.snap +7449 -7369
  322. package/src/components/ChatBubble/ChatBubble.css +42 -14
  323. package/src/components/ChatBubble/ChatBubble.tsx +44 -12
  324. package/src/components/ChatBubble/__snapshots__/ChatBubble.test.tsx.snap +90 -90
  325. package/src/components/ChatHistoryDrawer/ChatHistory.css +4 -0
  326. package/src/components/ChatHistoryDrawer/ChatHistory.test.tsx +77 -1
  327. package/src/components/ChatHistoryDrawer/ChatHistory.tsx +59 -27
  328. package/src/components/ChatHistoryDrawer/ChatResumeDrawer.tsx +0 -1
  329. package/src/components/ChatInputs/ChatInputs.css +292 -108
  330. package/src/components/ChatInputs/ChatInputs.tsx +14 -4
  331. package/src/components/ChatTextArea/ChatTextArea.css +30 -6
  332. package/src/components/CompletionProviderStatus/CompletionProviderStatus.tsx +8 -4
  333. package/src/components/CompletionProviderStatus/__snapshots__/CompletionProviderStatus.test.tsx.snap +6 -6
  334. package/src/components/ContentPreviewModal/ContentPreviewModal.tsx +3 -0
  335. package/src/components/DateSelector/DateSelector.stories.tsx +11 -2
  336. package/src/components/DateSelector/DateSelector.tsx +28 -9
  337. package/src/components/ExpertsDrawer/ExpertsDrawer.tsx +3 -0
  338. package/src/components/FeedbackButtons/__snapshots__/FeedbackButtons.test.tsx.snap +2 -2
  339. package/src/components/FilePreview/FilePreview.tsx +28 -7
  340. package/src/components/Header/ChatConsumptionDropdown.tsx +16 -5
  341. package/src/components/Header/Header.css +16 -10
  342. package/src/components/Header/Header.tsx +331 -53
  343. package/src/components/Header/__snapshots__/Header.test.tsx.snap +109 -83
  344. package/src/components/KnownFacts/KnownFacts.tsx +7 -0
  345. package/src/components/LoginDrawer/LoginDrawer.css +1 -0
  346. package/src/components/LoginDrawer/LoginDrawer.tsx +3 -0
  347. package/src/components/MediaWidget/MediaItemWidget.tsx +26 -13
  348. package/src/components/MediaWidget/MediaItemWidget.utils.test.ts +45 -2
  349. package/src/components/MediaWidget/MediaItemWidget.utils.ts +39 -6
  350. package/src/components/MediaWidget/MediaPreviewModal.tsx +9 -7
  351. package/src/components/MemoriArtifactSystem/ArtifactDrawer.stories.tsx +218 -2252
  352. package/src/components/MemoriArtifactSystem/components/ArtifactActions/styles.css +5 -4
  353. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +108 -42
  354. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.tsx +35 -14
  355. package/src/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.tsx +4 -3
  356. package/src/components/MemoriWidget/MemoriWidget.css +5 -5
  357. package/src/components/MemoriWidget/MemoriWidget.tsx +1234 -729
  358. package/src/components/MicrophoneButton/MicrophoneButton.css +50 -18
  359. package/src/components/MobileSessionPanel/MobileSessionPanel.tsx +44 -31
  360. package/src/components/PoweredBy/PoweredBy.css +10 -2
  361. package/src/components/SettingsDrawer/SettingsDrawer.tsx +3 -0
  362. package/src/components/ShareButton/ShareButton.tsx +6 -3
  363. package/src/components/ShareButton/__snapshots__/ShareButton.test.tsx.snap +27 -18
  364. package/src/components/StartPanel/StartPanel.stories.tsx +22 -0
  365. package/src/components/StartPanel/StartPanel.test.tsx +64 -1
  366. package/src/components/StartPanel/StartPanel.tsx +29 -3
  367. package/src/components/StartPanel/__snapshots__/StartPanel.test.tsx.snap +293 -32
  368. package/src/components/UploadButton/UploadButton.tsx +30 -11
  369. package/src/components/UploadButton/UploadDocuments/UploadDocuments.tsx +151 -61
  370. package/src/components/UploadButton/UploadImages/UploadImages.tsx +4 -1
  371. package/src/components/UploadButton/__snapshots__/UploadButton.test.tsx.snap +4 -4
  372. package/src/components/WhyThisAnswer/WhyThisAnswer.tsx +3 -0
  373. package/src/components/layouts/Chat.tsx +147 -148
  374. package/src/components/layouts/FullPage.tsx +92 -25
  375. package/src/components/layouts/HiddenChat.tsx +21 -413
  376. package/src/components/layouts/Totem.tsx +20 -3
  377. package/src/components/layouts/WebsiteAssistant/WebsiteAssistant.tsx +71 -15
  378. package/src/components/layouts/WebsiteAssistant/__snapshots__/WebsiteAssistant.test.tsx.snap +48 -44
  379. package/src/components/layouts/WebsiteAssistant/website-assistant.css +160 -59
  380. package/src/components/layouts/ZoomedFullBody.tsx +95 -27
  381. package/src/components/layouts/__snapshots__/Chat.test.tsx.snap +610 -582
  382. package/src/components/layouts/__snapshots__/FullPage.test.tsx.snap +1235 -1165
  383. package/src/components/layouts/__snapshots__/HiddenChat.test.tsx.snap +542 -438
  384. package/src/components/layouts/__snapshots__/Totem.test.tsx.snap +579 -602
  385. package/src/components/layouts/__snapshots__/ZoomedFullBody.test.tsx.snap +599 -564
  386. package/src/components/layouts/chat.css +77 -63
  387. package/src/components/layouts/fullpage.css +229 -84
  388. package/src/components/layouts/hidden-chat.css +148 -33
  389. package/src/components/layouts/layouts.stories.tsx +133 -13
  390. package/src/components/layouts/totem.css +151 -50
  391. package/src/components/layouts/zoomed-full-body.css +332 -33
  392. package/src/context/widgetSurfaceContext.tsx +14 -0
  393. package/src/helpers/constants.ts +32 -1
  394. package/src/helpers/credits.ts +16 -1
  395. package/src/helpers/message.test.ts +28 -1
  396. package/src/helpers/message.ts +4 -4
  397. package/src/helpers/nats/getNatsConfig.ts +145 -0
  398. package/src/helpers/nats/isSessionExpiredError.test.ts +38 -0
  399. package/src/helpers/nats/isSessionExpiredError.ts +51 -0
  400. package/src/helpers/nats/useNats.ts +124 -0
  401. package/src/helpers/nats/useNatsSession.ts +394 -0
  402. package/src/helpers/positionPopover.test.ts +33 -0
  403. package/src/helpers/positionPopover.ts +13 -0
  404. package/src/helpers/usePressTooltip.ts +29 -0
  405. package/src/helpers/utils.test.ts +162 -0
  406. package/src/helpers/utils.ts +108 -3
  407. package/src/index.stories.tsx +32 -0
  408. package/src/locales/de.json +11 -1
  409. package/src/locales/en.json +12 -2
  410. package/src/locales/es.json +11 -1
  411. package/src/locales/fr.json +11 -1
  412. package/src/locales/it.json +12 -2
  413. package/src/styles.css +98 -12
  414. package/src/types/integration.test.ts +32 -0
  415. package/src/types/integration.ts +31 -0
  416. package/src/version.ts +1 -1
  417. package/dist/components/PositionDrawer/PositionDrawer.d.ts +0 -12
  418. package/dist/components/PositionDrawer/PositionDrawer.js +0 -17
  419. package/dist/components/PositionDrawer/PositionDrawer.js.map +0 -1
  420. package/dist/components/icons/AI.d.ts +0 -6
  421. package/dist/components/icons/AI.js +0 -6
  422. package/dist/components/icons/AI.js.map +0 -1
  423. package/dist/components/icons/Alert.d.ts +0 -6
  424. package/dist/components/icons/Alert.js +0 -6
  425. package/dist/components/icons/Alert.js.map +0 -1
  426. package/dist/components/icons/ArrowUp.d.ts +0 -6
  427. package/dist/components/icons/ArrowUp.js +0 -6
  428. package/dist/components/icons/ArrowUp.js.map +0 -1
  429. package/dist/components/icons/Bug.d.ts +0 -6
  430. package/dist/components/icons/Bug.js +0 -6
  431. package/dist/components/icons/Bug.js.map +0 -1
  432. package/dist/components/icons/Chat.d.ts +0 -6
  433. package/dist/components/icons/Chat.js +0 -6
  434. package/dist/components/icons/Chat.js.map +0 -1
  435. package/dist/components/icons/ChevronDown.d.ts +0 -6
  436. package/dist/components/icons/ChevronDown.js +0 -6
  437. package/dist/components/icons/ChevronDown.js.map +0 -1
  438. package/dist/components/icons/ChevronLeft.d.ts +0 -6
  439. package/dist/components/icons/ChevronLeft.js +0 -6
  440. package/dist/components/icons/ChevronLeft.js.map +0 -1
  441. package/dist/components/icons/ChevronRight.d.ts +0 -6
  442. package/dist/components/icons/ChevronRight.js +0 -6
  443. package/dist/components/icons/ChevronRight.js.map +0 -1
  444. package/dist/components/icons/ChevronUp.d.ts +0 -6
  445. package/dist/components/icons/ChevronUp.js +0 -6
  446. package/dist/components/icons/ChevronUp.js.map +0 -1
  447. package/dist/components/icons/Clear.d.ts +0 -6
  448. package/dist/components/icons/Clear.js +0 -6
  449. package/dist/components/icons/Clear.js.map +0 -1
  450. package/dist/components/icons/Close.d.ts +0 -7
  451. package/dist/components/icons/Close.js +0 -6
  452. package/dist/components/icons/Close.js.map +0 -1
  453. package/dist/components/icons/Code.d.ts +0 -6
  454. package/dist/components/icons/Code.js +0 -6
  455. package/dist/components/icons/Code.js.map +0 -1
  456. package/dist/components/icons/Copy.d.ts +0 -6
  457. package/dist/components/icons/Copy.js +0 -6
  458. package/dist/components/icons/Copy.js.map +0 -1
  459. package/dist/components/icons/DeepThought.d.ts +0 -6
  460. package/dist/components/icons/DeepThought.js +0 -6
  461. package/dist/components/icons/DeepThought.js.map +0 -1
  462. package/dist/components/icons/Delete.d.ts +0 -6
  463. package/dist/components/icons/Delete.js +0 -6
  464. package/dist/components/icons/Delete.js.map +0 -1
  465. package/dist/components/icons/Document.d.ts +0 -5
  466. package/dist/components/icons/Document.js +0 -10
  467. package/dist/components/icons/Document.js.map +0 -1
  468. package/dist/components/icons/Download.d.ts +0 -6
  469. package/dist/components/icons/Download.js +0 -6
  470. package/dist/components/icons/Download.js.map +0 -1
  471. package/dist/components/icons/Edit.d.ts +0 -6
  472. package/dist/components/icons/Edit.js +0 -6
  473. package/dist/components/icons/Edit.js.map +0 -1
  474. package/dist/components/icons/Expand.d.ts +0 -6
  475. package/dist/components/icons/Expand.js +0 -6
  476. package/dist/components/icons/Expand.js.map +0 -1
  477. package/dist/components/icons/Eye.d.ts +0 -6
  478. package/dist/components/icons/Eye.js +0 -6
  479. package/dist/components/icons/Eye.js.map +0 -1
  480. package/dist/components/icons/EyeInvisible.d.ts +0 -6
  481. package/dist/components/icons/EyeInvisible.js +0 -6
  482. package/dist/components/icons/EyeInvisible.js.map +0 -1
  483. package/dist/components/icons/Facebook.d.ts +0 -6
  484. package/dist/components/icons/Facebook.js +0 -6
  485. package/dist/components/icons/Facebook.js.map +0 -1
  486. package/dist/components/icons/Feedback.d.ts +0 -6
  487. package/dist/components/icons/Feedback.js +0 -6
  488. package/dist/components/icons/Feedback.js.map +0 -1
  489. package/dist/components/icons/File.d.ts +0 -6
  490. package/dist/components/icons/File.js +0 -6
  491. package/dist/components/icons/File.js.map +0 -1
  492. package/dist/components/icons/FileExcel.d.ts +0 -6
  493. package/dist/components/icons/FileExcel.js +0 -6
  494. package/dist/components/icons/FileExcel.js.map +0 -1
  495. package/dist/components/icons/FilePdf.d.ts +0 -6
  496. package/dist/components/icons/FilePdf.js +0 -6
  497. package/dist/components/icons/FilePdf.js.map +0 -1
  498. package/dist/components/icons/FileWord.d.ts +0 -6
  499. package/dist/components/icons/FileWord.js +0 -6
  500. package/dist/components/icons/FileWord.js.map +0 -1
  501. package/dist/components/icons/Fullscreen.d.ts +0 -6
  502. package/dist/components/icons/Fullscreen.js +0 -6
  503. package/dist/components/icons/Fullscreen.js.map +0 -1
  504. package/dist/components/icons/FullscreenExit.d.ts +0 -6
  505. package/dist/components/icons/FullscreenExit.js +0 -6
  506. package/dist/components/icons/FullscreenExit.js.map +0 -1
  507. package/dist/components/icons/Group.d.ts +0 -6
  508. package/dist/components/icons/Group.js +0 -6
  509. package/dist/components/icons/Group.js.map +0 -1
  510. package/dist/components/icons/History.d.ts +0 -7
  511. package/dist/components/icons/History.js +0 -6
  512. package/dist/components/icons/History.js.map +0 -1
  513. package/dist/components/icons/Image.d.ts +0 -4
  514. package/dist/components/icons/Image.js +0 -9
  515. package/dist/components/icons/Image.js.map +0 -1
  516. package/dist/components/icons/Info.d.ts +0 -6
  517. package/dist/components/icons/Info.js +0 -6
  518. package/dist/components/icons/Info.js.map +0 -1
  519. package/dist/components/icons/Link.d.ts +0 -6
  520. package/dist/components/icons/Link.js +0 -6
  521. package/dist/components/icons/Link.js.map +0 -1
  522. package/dist/components/icons/Linkedin.d.ts +0 -6
  523. package/dist/components/icons/Linkedin.js +0 -6
  524. package/dist/components/icons/Linkedin.js.map +0 -1
  525. package/dist/components/icons/Loading.d.ts +0 -7
  526. package/dist/components/icons/Loading.js +0 -10
  527. package/dist/components/icons/Loading.js.map +0 -1
  528. package/dist/components/icons/Logout.d.ts +0 -6
  529. package/dist/components/icons/Logout.js +0 -6
  530. package/dist/components/icons/Logout.js.map +0 -1
  531. package/dist/components/icons/Mail.d.ts +0 -6
  532. package/dist/components/icons/Mail.js +0 -6
  533. package/dist/components/icons/Mail.js.map +0 -1
  534. package/dist/components/icons/MapMarker.d.ts +0 -6
  535. package/dist/components/icons/MapMarker.js +0 -6
  536. package/dist/components/icons/MapMarker.js.map +0 -1
  537. package/dist/components/icons/MenuHorizontal.d.ts +0 -7
  538. package/dist/components/icons/MenuHorizontal.js +0 -6
  539. package/dist/components/icons/MenuHorizontal.js.map +0 -1
  540. package/dist/components/icons/MenuVertical.d.ts +0 -7
  541. package/dist/components/icons/MenuVertical.js +0 -6
  542. package/dist/components/icons/MenuVertical.js.map +0 -1
  543. package/dist/components/icons/Message.d.ts +0 -6
  544. package/dist/components/icons/Message.js +0 -6
  545. package/dist/components/icons/Message.js.map +0 -1
  546. package/dist/components/icons/Microphone.d.ts +0 -6
  547. package/dist/components/icons/Microphone.js +0 -6
  548. package/dist/components/icons/Microphone.js.map +0 -1
  549. package/dist/components/icons/Minus.d.ts +0 -6
  550. package/dist/components/icons/Minus.js +0 -6
  551. package/dist/components/icons/Minus.js.map +0 -1
  552. package/dist/components/icons/MinusCircle.d.ts +0 -6
  553. package/dist/components/icons/MinusCircle.js +0 -6
  554. package/dist/components/icons/MinusCircle.js.map +0 -1
  555. package/dist/components/icons/PaperClip.d.ts +0 -6
  556. package/dist/components/icons/PaperClip.js +0 -6
  557. package/dist/components/icons/PaperClip.js.map +0 -1
  558. package/dist/components/icons/Picture.d.ts +0 -6
  559. package/dist/components/icons/Picture.js +0 -6
  560. package/dist/components/icons/Picture.js.map +0 -1
  561. package/dist/components/icons/Plus.d.ts +0 -6
  562. package/dist/components/icons/Plus.js +0 -6
  563. package/dist/components/icons/Plus.js.map +0 -1
  564. package/dist/components/icons/Preview.d.ts +0 -4
  565. package/dist/components/icons/Preview.js +0 -9
  566. package/dist/components/icons/Preview.js.map +0 -1
  567. package/dist/components/icons/Print.d.ts +0 -6
  568. package/dist/components/icons/Print.js +0 -6
  569. package/dist/components/icons/Print.js.map +0 -1
  570. package/dist/components/icons/QuestionHelp.d.ts +0 -6
  571. package/dist/components/icons/QuestionHelp.js +0 -6
  572. package/dist/components/icons/QuestionHelp.js.map +0 -1
  573. package/dist/components/icons/Refresh.d.ts +0 -6
  574. package/dist/components/icons/Refresh.js +0 -6
  575. package/dist/components/icons/Refresh.js.map +0 -1
  576. package/dist/components/icons/SelectIcon.d.ts +0 -6
  577. package/dist/components/icons/SelectIcon.js +0 -6
  578. package/dist/components/icons/SelectIcon.js.map +0 -1
  579. package/dist/components/icons/Send.d.ts +0 -6
  580. package/dist/components/icons/Send.js +0 -6
  581. package/dist/components/icons/Send.js.map +0 -1
  582. package/dist/components/icons/Setting.d.ts +0 -6
  583. package/dist/components/icons/Setting.js +0 -6
  584. package/dist/components/icons/Setting.js.map +0 -1
  585. package/dist/components/icons/Share.d.ts +0 -6
  586. package/dist/components/icons/Share.js +0 -6
  587. package/dist/components/icons/Share.js.map +0 -1
  588. package/dist/components/icons/Sound.d.ts +0 -6
  589. package/dist/components/icons/Sound.js +0 -6
  590. package/dist/components/icons/Sound.js.map +0 -1
  591. package/dist/components/icons/SoundDeactivated.d.ts +0 -6
  592. package/dist/components/icons/SoundDeactivated.js +0 -6
  593. package/dist/components/icons/SoundDeactivated.js.map +0 -1
  594. package/dist/components/icons/Telegram.d.ts +0 -6
  595. package/dist/components/icons/Telegram.js +0 -6
  596. package/dist/components/icons/Telegram.js.map +0 -1
  597. package/dist/components/icons/ThumbDown.d.ts +0 -6
  598. package/dist/components/icons/ThumbDown.js +0 -6
  599. package/dist/components/icons/ThumbDown.js.map +0 -1
  600. package/dist/components/icons/ThumbUp.d.ts +0 -6
  601. package/dist/components/icons/ThumbUp.js +0 -6
  602. package/dist/components/icons/ThumbUp.js.map +0 -1
  603. package/dist/components/icons/Translation.d.ts +0 -6
  604. package/dist/components/icons/Translation.js +0 -6
  605. package/dist/components/icons/Translation.js.map +0 -1
  606. package/dist/components/icons/Twitter.d.ts +0 -6
  607. package/dist/components/icons/Twitter.js +0 -6
  608. package/dist/components/icons/Twitter.js.map +0 -1
  609. package/dist/components/icons/Upload.d.ts +0 -4
  610. package/dist/components/icons/Upload.js +0 -9
  611. package/dist/components/icons/Upload.js.map +0 -1
  612. package/dist/components/icons/User.d.ts +0 -6
  613. package/dist/components/icons/User.js +0 -6
  614. package/dist/components/icons/User.js.map +0 -1
  615. package/dist/components/icons/Warning.d.ts +0 -6
  616. package/dist/components/icons/Warning.js +0 -6
  617. package/dist/components/icons/Warning.js.map +0 -1
  618. package/dist/components/icons/WhatsApp.d.ts +0 -6
  619. package/dist/components/icons/WhatsApp.js +0 -6
  620. package/dist/components/icons/WhatsApp.js.map +0 -1
  621. package/dist/components/icons/loading.css +0 -14
  622. package/dist/components/layouts/WebsiteAssistant.d.ts +0 -4
  623. package/dist/components/layouts/WebsiteAssistant.js +0 -38
  624. package/dist/components/layouts/WebsiteAssistant.js.map +0 -1
  625. package/dist/components/layouts/website-assistant.css +0 -676
  626. package/dist/components/ui/Alert.css +0 -93
  627. package/dist/components/ui/Alert.d.ts +0 -18
  628. package/dist/components/ui/Alert.js +0 -42
  629. package/dist/components/ui/Alert.js.map +0 -1
  630. package/dist/components/ui/Button.css +0 -167
  631. package/dist/components/ui/Button.d.ts +0 -27
  632. package/dist/components/ui/Button.js +0 -23
  633. package/dist/components/ui/Button.js.map +0 -1
  634. package/dist/components/ui/Card.css +0 -65
  635. package/dist/components/ui/Card.d.ts +0 -13
  636. package/dist/components/ui/Card.js +0 -14
  637. package/dist/components/ui/Card.js.map +0 -1
  638. package/dist/components/ui/Checkbox.css +0 -116
  639. package/dist/components/ui/Checkbox.d.ts +0 -11
  640. package/dist/components/ui/Checkbox.js +0 -20
  641. package/dist/components/ui/Checkbox.js.map +0 -1
  642. package/dist/components/ui/ConfirmDialog.css +0 -42
  643. package/dist/components/ui/ConfirmDialog.d.ts +0 -11
  644. package/dist/components/ui/ConfirmDialog.js +0 -12
  645. package/dist/components/ui/ConfirmDialog.js.map +0 -1
  646. package/dist/components/ui/Details.css +0 -66
  647. package/dist/components/ui/Drawer.css +0 -270
  648. package/dist/components/ui/Drawer.d.ts +0 -46
  649. package/dist/components/ui/Drawer.js +0 -60
  650. package/dist/components/ui/Drawer.js.map +0 -1
  651. package/dist/components/ui/Dropdown.css +0 -173
  652. package/dist/components/ui/Dropdown.d.ts +0 -11
  653. package/dist/components/ui/Dropdown.js +0 -33
  654. package/dist/components/ui/Dropdown.js.map +0 -1
  655. package/dist/components/ui/Expandable.css +0 -15
  656. package/dist/components/ui/Expandable.d.ts +0 -15
  657. package/dist/components/ui/Expandable.js +0 -59
  658. package/dist/components/ui/Expandable.js.map +0 -1
  659. package/dist/components/ui/Modal.css +0 -98
  660. package/dist/components/ui/Modal.d.ts +0 -16
  661. package/dist/components/ui/Modal.js +0 -24
  662. package/dist/components/ui/Modal.js.map +0 -1
  663. package/dist/components/ui/Select.css +0 -138
  664. package/dist/components/ui/Select.d.ts +0 -17
  665. package/dist/components/ui/Select.js +0 -17
  666. package/dist/components/ui/Select.js.map +0 -1
  667. package/dist/components/ui/Slider.css +0 -192
  668. package/dist/components/ui/Slider.d.ts +0 -12
  669. package/dist/components/ui/Slider.js +0 -78
  670. package/dist/components/ui/Slider.js.map +0 -1
  671. package/dist/components/ui/Spin.css +0 -31
  672. package/dist/components/ui/Spin.d.ts +0 -9
  673. package/dist/components/ui/Spin.js +0 -12
  674. package/dist/components/ui/Spin.js.map +0 -1
  675. package/dist/components/ui/Table.css +0 -132
  676. package/dist/components/ui/Tooltip.css +0 -171
  677. package/dist/components/ui/Tooltip.d.ts +0 -11
  678. package/dist/components/ui/Tooltip.js +0 -90
  679. package/dist/components/ui/Tooltip.js.map +0 -1
  680. package/esm/components/PositionDrawer/PositionDrawer.d.ts +0 -12
  681. package/esm/components/PositionDrawer/PositionDrawer.js +0 -14
  682. package/esm/components/PositionDrawer/PositionDrawer.js.map +0 -1
  683. package/esm/components/icons/AI.d.ts +0 -6
  684. package/esm/components/icons/AI.js +0 -4
  685. package/esm/components/icons/AI.js.map +0 -1
  686. package/esm/components/icons/Alert.d.ts +0 -6
  687. package/esm/components/icons/Alert.js +0 -4
  688. package/esm/components/icons/Alert.js.map +0 -1
  689. package/esm/components/icons/ArrowUp.d.ts +0 -6
  690. package/esm/components/icons/ArrowUp.js +0 -4
  691. package/esm/components/icons/ArrowUp.js.map +0 -1
  692. package/esm/components/icons/Bug.d.ts +0 -6
  693. package/esm/components/icons/Bug.js +0 -4
  694. package/esm/components/icons/Bug.js.map +0 -1
  695. package/esm/components/icons/Chat.d.ts +0 -6
  696. package/esm/components/icons/Chat.js +0 -4
  697. package/esm/components/icons/Chat.js.map +0 -1
  698. package/esm/components/icons/ChevronDown.d.ts +0 -6
  699. package/esm/components/icons/ChevronDown.js +0 -4
  700. package/esm/components/icons/ChevronDown.js.map +0 -1
  701. package/esm/components/icons/ChevronLeft.d.ts +0 -6
  702. package/esm/components/icons/ChevronLeft.js +0 -4
  703. package/esm/components/icons/ChevronLeft.js.map +0 -1
  704. package/esm/components/icons/ChevronRight.d.ts +0 -6
  705. package/esm/components/icons/ChevronRight.js +0 -4
  706. package/esm/components/icons/ChevronRight.js.map +0 -1
  707. package/esm/components/icons/ChevronUp.d.ts +0 -6
  708. package/esm/components/icons/ChevronUp.js +0 -4
  709. package/esm/components/icons/ChevronUp.js.map +0 -1
  710. package/esm/components/icons/Clear.d.ts +0 -6
  711. package/esm/components/icons/Clear.js +0 -4
  712. package/esm/components/icons/Clear.js.map +0 -1
  713. package/esm/components/icons/Close.d.ts +0 -7
  714. package/esm/components/icons/Close.js +0 -4
  715. package/esm/components/icons/Close.js.map +0 -1
  716. package/esm/components/icons/Code.d.ts +0 -6
  717. package/esm/components/icons/Code.js +0 -4
  718. package/esm/components/icons/Code.js.map +0 -1
  719. package/esm/components/icons/Copy.d.ts +0 -6
  720. package/esm/components/icons/Copy.js +0 -4
  721. package/esm/components/icons/Copy.js.map +0 -1
  722. package/esm/components/icons/DeepThought.d.ts +0 -6
  723. package/esm/components/icons/DeepThought.js +0 -4
  724. package/esm/components/icons/DeepThought.js.map +0 -1
  725. package/esm/components/icons/Delete.d.ts +0 -6
  726. package/esm/components/icons/Delete.js +0 -4
  727. package/esm/components/icons/Delete.js.map +0 -1
  728. package/esm/components/icons/Document.d.ts +0 -5
  729. package/esm/components/icons/Document.js +0 -6
  730. package/esm/components/icons/Document.js.map +0 -1
  731. package/esm/components/icons/Download.d.ts +0 -6
  732. package/esm/components/icons/Download.js +0 -4
  733. package/esm/components/icons/Download.js.map +0 -1
  734. package/esm/components/icons/Edit.d.ts +0 -6
  735. package/esm/components/icons/Edit.js +0 -4
  736. package/esm/components/icons/Edit.js.map +0 -1
  737. package/esm/components/icons/Expand.d.ts +0 -6
  738. package/esm/components/icons/Expand.js +0 -4
  739. package/esm/components/icons/Expand.js.map +0 -1
  740. package/esm/components/icons/Eye.d.ts +0 -6
  741. package/esm/components/icons/Eye.js +0 -4
  742. package/esm/components/icons/Eye.js.map +0 -1
  743. package/esm/components/icons/EyeInvisible.d.ts +0 -6
  744. package/esm/components/icons/EyeInvisible.js +0 -4
  745. package/esm/components/icons/EyeInvisible.js.map +0 -1
  746. package/esm/components/icons/Facebook.d.ts +0 -6
  747. package/esm/components/icons/Facebook.js +0 -4
  748. package/esm/components/icons/Facebook.js.map +0 -1
  749. package/esm/components/icons/Feedback.d.ts +0 -6
  750. package/esm/components/icons/Feedback.js +0 -4
  751. package/esm/components/icons/Feedback.js.map +0 -1
  752. package/esm/components/icons/File.d.ts +0 -6
  753. package/esm/components/icons/File.js +0 -4
  754. package/esm/components/icons/File.js.map +0 -1
  755. package/esm/components/icons/FileExcel.d.ts +0 -6
  756. package/esm/components/icons/FileExcel.js +0 -4
  757. package/esm/components/icons/FileExcel.js.map +0 -1
  758. package/esm/components/icons/FilePdf.d.ts +0 -6
  759. package/esm/components/icons/FilePdf.js +0 -4
  760. package/esm/components/icons/FilePdf.js.map +0 -1
  761. package/esm/components/icons/FileWord.d.ts +0 -6
  762. package/esm/components/icons/FileWord.js +0 -4
  763. package/esm/components/icons/FileWord.js.map +0 -1
  764. package/esm/components/icons/Fullscreen.d.ts +0 -6
  765. package/esm/components/icons/Fullscreen.js +0 -4
  766. package/esm/components/icons/Fullscreen.js.map +0 -1
  767. package/esm/components/icons/FullscreenExit.d.ts +0 -6
  768. package/esm/components/icons/FullscreenExit.js +0 -4
  769. package/esm/components/icons/FullscreenExit.js.map +0 -1
  770. package/esm/components/icons/Group.d.ts +0 -6
  771. package/esm/components/icons/Group.js +0 -4
  772. package/esm/components/icons/Group.js.map +0 -1
  773. package/esm/components/icons/History.d.ts +0 -7
  774. package/esm/components/icons/History.js +0 -4
  775. package/esm/components/icons/History.js.map +0 -1
  776. package/esm/components/icons/Image.d.ts +0 -4
  777. package/esm/components/icons/Image.js +0 -5
  778. package/esm/components/icons/Image.js.map +0 -1
  779. package/esm/components/icons/Info.d.ts +0 -6
  780. package/esm/components/icons/Info.js +0 -4
  781. package/esm/components/icons/Info.js.map +0 -1
  782. package/esm/components/icons/Link.d.ts +0 -6
  783. package/esm/components/icons/Link.js +0 -4
  784. package/esm/components/icons/Link.js.map +0 -1
  785. package/esm/components/icons/Linkedin.d.ts +0 -6
  786. package/esm/components/icons/Linkedin.js +0 -4
  787. package/esm/components/icons/Linkedin.js.map +0 -1
  788. package/esm/components/icons/Loading.d.ts +0 -7
  789. package/esm/components/icons/Loading.js +0 -7
  790. package/esm/components/icons/Loading.js.map +0 -1
  791. package/esm/components/icons/Logout.d.ts +0 -6
  792. package/esm/components/icons/Logout.js +0 -4
  793. package/esm/components/icons/Logout.js.map +0 -1
  794. package/esm/components/icons/Mail.d.ts +0 -6
  795. package/esm/components/icons/Mail.js +0 -4
  796. package/esm/components/icons/Mail.js.map +0 -1
  797. package/esm/components/icons/MapMarker.d.ts +0 -6
  798. package/esm/components/icons/MapMarker.js +0 -4
  799. package/esm/components/icons/MapMarker.js.map +0 -1
  800. package/esm/components/icons/MenuHorizontal.d.ts +0 -7
  801. package/esm/components/icons/MenuHorizontal.js +0 -4
  802. package/esm/components/icons/MenuHorizontal.js.map +0 -1
  803. package/esm/components/icons/MenuVertical.d.ts +0 -7
  804. package/esm/components/icons/MenuVertical.js +0 -4
  805. package/esm/components/icons/MenuVertical.js.map +0 -1
  806. package/esm/components/icons/Message.d.ts +0 -6
  807. package/esm/components/icons/Message.js +0 -4
  808. package/esm/components/icons/Message.js.map +0 -1
  809. package/esm/components/icons/Microphone.d.ts +0 -6
  810. package/esm/components/icons/Microphone.js +0 -4
  811. package/esm/components/icons/Microphone.js.map +0 -1
  812. package/esm/components/icons/Minus.d.ts +0 -6
  813. package/esm/components/icons/Minus.js +0 -4
  814. package/esm/components/icons/Minus.js.map +0 -1
  815. package/esm/components/icons/MinusCircle.d.ts +0 -6
  816. package/esm/components/icons/MinusCircle.js +0 -4
  817. package/esm/components/icons/MinusCircle.js.map +0 -1
  818. package/esm/components/icons/PaperClip.d.ts +0 -6
  819. package/esm/components/icons/PaperClip.js +0 -4
  820. package/esm/components/icons/PaperClip.js.map +0 -1
  821. package/esm/components/icons/Picture.d.ts +0 -6
  822. package/esm/components/icons/Picture.js +0 -4
  823. package/esm/components/icons/Picture.js.map +0 -1
  824. package/esm/components/icons/Plus.d.ts +0 -6
  825. package/esm/components/icons/Plus.js +0 -4
  826. package/esm/components/icons/Plus.js.map +0 -1
  827. package/esm/components/icons/Preview.d.ts +0 -4
  828. package/esm/components/icons/Preview.js +0 -5
  829. package/esm/components/icons/Preview.js.map +0 -1
  830. package/esm/components/icons/Print.d.ts +0 -6
  831. package/esm/components/icons/Print.js +0 -4
  832. package/esm/components/icons/Print.js.map +0 -1
  833. package/esm/components/icons/QuestionHelp.d.ts +0 -6
  834. package/esm/components/icons/QuestionHelp.js +0 -4
  835. package/esm/components/icons/QuestionHelp.js.map +0 -1
  836. package/esm/components/icons/Refresh.d.ts +0 -6
  837. package/esm/components/icons/Refresh.js +0 -4
  838. package/esm/components/icons/Refresh.js.map +0 -1
  839. package/esm/components/icons/SelectIcon.d.ts +0 -6
  840. package/esm/components/icons/SelectIcon.js +0 -4
  841. package/esm/components/icons/SelectIcon.js.map +0 -1
  842. package/esm/components/icons/Send.d.ts +0 -6
  843. package/esm/components/icons/Send.js +0 -4
  844. package/esm/components/icons/Send.js.map +0 -1
  845. package/esm/components/icons/Setting.d.ts +0 -6
  846. package/esm/components/icons/Setting.js +0 -4
  847. package/esm/components/icons/Setting.js.map +0 -1
  848. package/esm/components/icons/Share.d.ts +0 -6
  849. package/esm/components/icons/Share.js +0 -4
  850. package/esm/components/icons/Share.js.map +0 -1
  851. package/esm/components/icons/Sound.d.ts +0 -6
  852. package/esm/components/icons/Sound.js +0 -4
  853. package/esm/components/icons/Sound.js.map +0 -1
  854. package/esm/components/icons/SoundDeactivated.d.ts +0 -6
  855. package/esm/components/icons/SoundDeactivated.js +0 -4
  856. package/esm/components/icons/SoundDeactivated.js.map +0 -1
  857. package/esm/components/icons/Telegram.d.ts +0 -6
  858. package/esm/components/icons/Telegram.js +0 -4
  859. package/esm/components/icons/Telegram.js.map +0 -1
  860. package/esm/components/icons/ThumbDown.d.ts +0 -6
  861. package/esm/components/icons/ThumbDown.js +0 -4
  862. package/esm/components/icons/ThumbDown.js.map +0 -1
  863. package/esm/components/icons/ThumbUp.d.ts +0 -6
  864. package/esm/components/icons/ThumbUp.js +0 -4
  865. package/esm/components/icons/ThumbUp.js.map +0 -1
  866. package/esm/components/icons/Translation.d.ts +0 -6
  867. package/esm/components/icons/Translation.js +0 -4
  868. package/esm/components/icons/Translation.js.map +0 -1
  869. package/esm/components/icons/Twitter.d.ts +0 -6
  870. package/esm/components/icons/Twitter.js +0 -4
  871. package/esm/components/icons/Twitter.js.map +0 -1
  872. package/esm/components/icons/Upload.d.ts +0 -4
  873. package/esm/components/icons/Upload.js +0 -5
  874. package/esm/components/icons/Upload.js.map +0 -1
  875. package/esm/components/icons/User.d.ts +0 -6
  876. package/esm/components/icons/User.js +0 -4
  877. package/esm/components/icons/User.js.map +0 -1
  878. package/esm/components/icons/Warning.d.ts +0 -6
  879. package/esm/components/icons/Warning.js +0 -4
  880. package/esm/components/icons/Warning.js.map +0 -1
  881. package/esm/components/icons/WhatsApp.d.ts +0 -6
  882. package/esm/components/icons/WhatsApp.js +0 -4
  883. package/esm/components/icons/WhatsApp.js.map +0 -1
  884. package/esm/components/icons/loading.css +0 -14
  885. package/esm/components/layouts/WebsiteAssistant.d.ts +0 -4
  886. package/esm/components/layouts/WebsiteAssistant.js +0 -35
  887. package/esm/components/layouts/WebsiteAssistant.js.map +0 -1
  888. package/esm/components/layouts/website-assistant.css +0 -676
  889. package/esm/components/ui/Alert.css +0 -93
  890. package/esm/components/ui/Alert.d.ts +0 -18
  891. package/esm/components/ui/Alert.js +0 -39
  892. package/esm/components/ui/Alert.js.map +0 -1
  893. package/esm/components/ui/Button.css +0 -167
  894. package/esm/components/ui/Button.d.ts +0 -27
  895. package/esm/components/ui/Button.js +0 -20
  896. package/esm/components/ui/Button.js.map +0 -1
  897. package/esm/components/ui/Card.css +0 -65
  898. package/esm/components/ui/Card.d.ts +0 -13
  899. package/esm/components/ui/Card.js +0 -11
  900. package/esm/components/ui/Card.js.map +0 -1
  901. package/esm/components/ui/Checkbox.css +0 -116
  902. package/esm/components/ui/Checkbox.d.ts +0 -11
  903. package/esm/components/ui/Checkbox.js +0 -17
  904. package/esm/components/ui/Checkbox.js.map +0 -1
  905. package/esm/components/ui/ConfirmDialog.css +0 -42
  906. package/esm/components/ui/ConfirmDialog.d.ts +0 -11
  907. package/esm/components/ui/ConfirmDialog.js +0 -9
  908. package/esm/components/ui/ConfirmDialog.js.map +0 -1
  909. package/esm/components/ui/Details.css +0 -66
  910. package/esm/components/ui/Drawer.css +0 -270
  911. package/esm/components/ui/Drawer.d.ts +0 -46
  912. package/esm/components/ui/Drawer.js +0 -57
  913. package/esm/components/ui/Drawer.js.map +0 -1
  914. package/esm/components/ui/Dropdown.css +0 -173
  915. package/esm/components/ui/Dropdown.d.ts +0 -11
  916. package/esm/components/ui/Dropdown.js +0 -30
  917. package/esm/components/ui/Dropdown.js.map +0 -1
  918. package/esm/components/ui/Expandable.css +0 -15
  919. package/esm/components/ui/Expandable.d.ts +0 -15
  920. package/esm/components/ui/Expandable.js +0 -56
  921. package/esm/components/ui/Expandable.js.map +0 -1
  922. package/esm/components/ui/Modal.css +0 -98
  923. package/esm/components/ui/Modal.d.ts +0 -16
  924. package/esm/components/ui/Modal.js +0 -21
  925. package/esm/components/ui/Modal.js.map +0 -1
  926. package/esm/components/ui/Select.css +0 -138
  927. package/esm/components/ui/Select.d.ts +0 -17
  928. package/esm/components/ui/Select.js +0 -14
  929. package/esm/components/ui/Select.js.map +0 -1
  930. package/esm/components/ui/Slider.css +0 -192
  931. package/esm/components/ui/Slider.d.ts +0 -12
  932. package/esm/components/ui/Slider.js +0 -75
  933. package/esm/components/ui/Slider.js.map +0 -1
  934. package/esm/components/ui/Spin.css +0 -31
  935. package/esm/components/ui/Spin.d.ts +0 -9
  936. package/esm/components/ui/Spin.js +0 -9
  937. package/esm/components/ui/Spin.js.map +0 -1
  938. package/esm/components/ui/Table.css +0 -132
  939. package/esm/components/ui/Tooltip.css +0 -171
  940. package/esm/components/ui/Tooltip.d.ts +0 -11
  941. package/esm/components/ui/Tooltip.js +0 -87
  942. package/esm/components/ui/Tooltip.js.map +0 -1
@@ -1,6 +1,7 @@
1
1
  import { useState, useEffect, useRef, useMemo } from 'react';
2
2
  import { Material, MeshStandardMaterial, SkinnedMesh } from 'three';
3
3
  import * as THREE from 'three';
4
+ import { officeNativeExtensions } from './constants';
4
5
 
5
6
  export const hasTouchscreen = (): boolean => {
6
7
  let hasTouchScreen = false;
@@ -237,6 +238,67 @@ export const stripMarkdown = (text: string) => {
237
238
  return text;
238
239
  };
239
240
 
241
+ export const OFFICE_NATIVE_EXTENSIONS = officeNativeExtensions;
242
+
243
+ export const isOfficeNativeFilename = (filename: string): boolean => {
244
+ const ext = `.${filename.split('.').pop()?.toLowerCase() || ''}`;
245
+ return (officeNativeExtensions as readonly string[]).includes(ext);
246
+ };
247
+
248
+ export type ParsedDocumentAttachment = {
249
+ filename: string;
250
+ type: string;
251
+ content: string;
252
+ url: string;
253
+ };
254
+
255
+ const DOCUMENT_ATTACHMENT_REGEX =
256
+ /<document_attachment filename="([^"]+)" type="([^"]+)">([\s\S]*?)<\/document_attachment>/g;
257
+
258
+ const ATTACHMENT_LINK_AFTER_REGEX =
259
+ /<attachment_link>\s*([\s\S]*?)\s*<\/attachment_link>/;
260
+
261
+ export const parseDocumentAttachmentsFromMessage = (
262
+ text: string
263
+ ): ParsedDocumentAttachment[] => {
264
+ if (!text) return [];
265
+
266
+ const attachments: ParsedDocumentAttachment[] = [];
267
+ const regex = new RegExp(DOCUMENT_ATTACHMENT_REGEX.source, 'g');
268
+ let match;
269
+
270
+ while ((match = regex.exec(text)) !== null) {
271
+ const [, filename, type, content] = match;
272
+ const afterTag = text.slice(match.index + match[0].length);
273
+ const linkMatch = afterTag.match(ATTACHMENT_LINK_AFTER_REGEX);
274
+ const rawUrl = linkMatch?.[1]?.trim() || '';
275
+ const url = /^https?:\/\//.test(rawUrl) ? rawUrl : '';
276
+
277
+ attachments.push({
278
+ filename,
279
+ type,
280
+ content: content.trim(),
281
+ url,
282
+ });
283
+ }
284
+
285
+ return attachments;
286
+ };
287
+
288
+ export const extractAttachmentLinks = (content: string): string[] => {
289
+ return parseDocumentAttachmentsFromMessage(content).map(
290
+ attachment => attachment.url
291
+ );
292
+ };
293
+
294
+ export const extractAttachmentLink = (content: string): string | null => {
295
+ const match = content?.match(
296
+ /<attachment_link>\s*([\s\S]*?)\s*<\/attachment_link>/
297
+ );
298
+ const rawUrl = match?.[1]?.trim() || '';
299
+ return /^https?:\/\//.test(rawUrl) ? rawUrl : null;
300
+ };
301
+
240
302
  export const stripDocumentAttachmentTags = (text: string): string => {
241
303
  const documentAttachmentTagRegex = /<document_attachment filename="([^"]+)" type="([^"]+)">([\s\S]*?)<\/document_attachment>/g;
242
304
  return text
@@ -245,6 +307,36 @@ export const stripDocumentAttachmentTags = (text: string): string => {
245
307
  .replace(/<attachment_link>\s*[\s\S]*?\s*<\/attachment_link>/g, '');
246
308
  };
247
309
 
310
+ export const getDocumentAttachmentAssetUrl = (attachment: {
311
+ content?: string | null;
312
+ url?: string | null;
313
+ }): string =>
314
+ attachment.url?.trim() ||
315
+ extractAttachmentLink(attachment.content || '') ||
316
+ '';
317
+
318
+ export const isAssetOnlyDocumentAttachment = (attachment: {
319
+ title?: string;
320
+ name?: string;
321
+ content?: string | null;
322
+ url?: string | null;
323
+ }): boolean => {
324
+ const filename = attachment.title || attachment.name || '';
325
+ const assetUrl = getDocumentAttachmentAssetUrl(attachment);
326
+
327
+ if (!assetUrl) return false;
328
+
329
+ if (isOfficeNativeFilename(filename)) {
330
+ return true;
331
+ }
332
+
333
+ const strippedContent = attachment.content
334
+ ? stripDocumentAttachmentTags(attachment.content).trim()
335
+ : '';
336
+
337
+ return !strippedContent;
338
+ };
339
+
248
340
  export const stripOutputTags = (text: string): string => {
249
341
  const outputTagRegex = /<output.*?<\/output>/gs;
250
342
 
@@ -271,10 +363,23 @@ export const stripReasoningTags = (text: string) => {
271
363
  return strippedText;
272
364
  };
273
365
 
366
+ /**
367
+ * Strip HTML tags / decode entities without executing scripts or event handlers.
368
+ * Uses an inert DOMParser document (no resource loads / onerror), unlike live innerHTML.
369
+ */
274
370
  export const stripHTML = (text: string) => {
275
- const el = document.createElement('div');
276
- el.innerHTML = text;
277
- return el.textContent || '';
371
+ if (typeof DOMParser !== 'undefined') {
372
+ try {
373
+ return (
374
+ new DOMParser().parseFromString(text, 'text/html').body.textContent ||
375
+ ''
376
+ );
377
+ } catch {
378
+ // fall through
379
+ }
380
+ }
381
+ // Non-DOM / parse failure: strip tags only (does not decode entities)
382
+ return text.replace(/<[^>]*>/g, '');
278
383
  };
279
384
 
280
385
  /** Ensures all <a> tags in HTML open in a new tab (target="_blank" rel="noopener noreferrer"). */
@@ -192,3 +192,35 @@ WithPiiDetection.args = {
192
192
  }),
193
193
  },
194
194
  };
195
+
196
+ export const WithLocalNats = Template.bind({});
197
+ WithLocalNats.args = {
198
+ memoriName: 'test324',
199
+ ownerUserName: 'andrea.patini',
200
+ memoriID: 'd661a9ca-e907-4396-a986-5095ccd582d6',
201
+ ownerUserID: '69fcc557-9cb6-4e5e-b8ab-140cff975492',
202
+ tenantID: 'localhost:3000',
203
+ engineURL: 'http://localhost:7778/memori/v2',
204
+ apiURL: 'http://localhost:7778/api/v2',
205
+ baseURL: 'http://localhost:3000',
206
+ layout: 'FULLPAGE',
207
+ uiLang: 'IT',
208
+ spokenLang: 'IT',
209
+ integrationID: 'ee1c3d98-7819-4506-ba28-818e79ba86cb',
210
+ };
211
+
212
+ export const WithFunctionalities = Template.bind({});
213
+ WithFunctionalities.args = {
214
+ memoriName: 'test324',
215
+ ownerUserName: 'andrea.patini',
216
+ memoriID: 'd661a9ca-e907-4396-a986-5095ccd582d6',
217
+ ownerUserID: '69fcc557-9cb6-4e5e-b8ab-140cff975492',
218
+ tenantID: 'localhost:3000',
219
+ engineURL: 'http://localhost:7778/memori/v2',
220
+ apiURL: 'http://localhost:7778/api/v2',
221
+ baseURL: 'http://localhost:3000',
222
+ layout: 'FULLPAGE',
223
+ uiLang: 'IT',
224
+ spokenLang: 'IT',
225
+ integrationID: 'ee1c3d98-7819-4506-ba28-818e79ba86cb',
226
+ };
@@ -87,6 +87,7 @@
87
87
  "errorFetchingSession": "Fehler beim Laden der Sitzung",
88
88
  "errorGettingReferralURL": "Fehler beim Laden des Referrals",
89
89
  "errorReopeningSession": "Fehler beim erneuten Öffnen der Sitzung",
90
+ "sessionExpiredReopening": "Sitzung abgelaufen, Sitzung wird neu geöffnet",
90
91
  "ageVerification": "Altersüberprüfung",
91
92
  "ageVerificationText": "Um mit diesem Zwilling interagieren zu können, müssen Sie mindestens sein {{minAge}} Jahre alt.",
92
93
  "ageVerificationSuccess": "Altersprüfung bestanden mit Erfolg.",
@@ -131,6 +132,7 @@
131
132
  "instruct": "Anleiten",
132
133
  "test": "Testen",
133
134
  "sound": "Ton",
135
+ "soundOff": "Ton aus",
134
136
  "position": "Positionspräferenzen",
135
137
  "settings": "Einstellungen",
136
138
  "share": "Teilen",
@@ -142,6 +144,9 @@
142
144
  "expertsInTheBoard": "Experten in diesem Rat",
143
145
  "goToIntegrationsToCustomizeAvatar": "Um den Avatar anzupassen, gehen Sie zu \"Teilen\" und passen Sie die öffentliche Seite an",
144
146
  "chatAssistantStatus": "Aktiv • Antwortet in wenigen Sekunden",
147
+ "agentStatusListening": "hört zu",
148
+ "agentStatusSpeaking": "spricht",
149
+ "agentStatusProcessing": "verarbeitet",
145
150
  "shareLocation": "Standort teilen",
146
151
  "shareLocationHint": "Erhalte Antworten passend zu deinem Standort",
147
152
  "shareLocationAria": "Standort mit dem Assistenten teilen",
@@ -152,7 +157,7 @@
152
157
  "geocodingFailed": "Adresse konnte nicht ermittelt werden. Bitte erneut versuchen oder manuell suchen.",
153
158
  "positionUnavailableManual": "Standort nicht verfügbar. Bitte manuell eingeben.",
154
159
  "positionSharingEnabled": "Standort geteilt.",
155
- "headerHistory": "Chatverlauf",
160
+ "headerHistory": "Verlauf",
156
161
  "headerProfile": "Profil",
157
162
  "headerLogin": "Anmelden",
158
163
  "downloadQrCode": "QR-Code herunterladen",
@@ -243,6 +248,8 @@
243
248
  "images": "Bilder",
244
249
  "file": "Datei",
245
250
  "files": "Dateien",
251
+ "function": "Funktion",
252
+ "functions": "Funktionen",
246
253
  "iWantToTalkToIn": "Ich möchte mit reden {{name}} In",
247
254
  "chatLanguageLabel": "Wählen Sie die Sprache der Unterhaltung",
248
255
  "chatResumed": "Unterhaltung erfolgreich fortgesetzt.",
@@ -250,6 +257,9 @@
250
257
  "messages": "nachrichten",
251
258
  "page": "Seite {{current}} von {{total}}"
252
259
  },
260
+ "chatResume": {
261
+ "resume": "Unterhaltung fortsetzen"
262
+ },
253
263
  "artifact": {
254
264
  "close": "Schließen",
255
265
  "size": "Größe",
@@ -89,6 +89,7 @@
89
89
  "errorFetchingSession": "Error during session loading",
90
90
  "errorGettingReferralURL": "Error during referral loading",
91
91
  "errorReopeningSession": "Error during session reopening",
92
+ "sessionExpiredReopening": "Session expired, reopening session",
92
93
  "ageVerification": "Age verification",
93
94
  "ageVerificationText": "To interact with this agent, you must be at least {{minAge}} years old.",
94
95
  "ageVerificationSuccess": "Age verified with success.",
@@ -132,7 +133,8 @@
132
133
  "widget": {
133
134
  "instruct": "Instruct",
134
135
  "test": "Test",
135
- "sound": "Sound",
136
+ "sound": "Audio",
137
+ "soundOff": "Audio off",
136
138
  "position": "Position preferences",
137
139
  "settings": "Settings",
138
140
  "share": "Share",
@@ -144,6 +146,9 @@
144
146
  "expertsInTheBoard": "Experts in this board",
145
147
  "goToIntegrationsToCustomizeAvatar": "To customize the avatar, go to Share and customize the public page",
146
148
  "chatAssistantStatus": "Active • Replies in a few seconds",
149
+ "agentStatusListening": "listening",
150
+ "agentStatusSpeaking": "speaking",
151
+ "agentStatusProcessing": "processing",
147
152
  "shareLocation": "Share location",
148
153
  "shareLocationHint": "Get answers tailored to where you are",
149
154
  "shareLocationAria": "Share location with the assistant",
@@ -154,7 +159,7 @@
154
159
  "geocodingFailed": "Could not resolve the address. Try again or search manually.",
155
160
  "positionUnavailableManual": "Location unavailable. Please enter it manually.",
156
161
  "positionSharingEnabled": "Location shared.",
157
- "headerHistory": "Chat history",
162
+ "headerHistory": "History",
158
163
  "headerProfile": "Profile",
159
164
  "headerLogin": "Log in",
160
165
  "downloadQrCode": "Download QR Code",
@@ -256,6 +261,8 @@
256
261
  "images": "images",
257
262
  "file": "file",
258
263
  "files": "files",
264
+ "function": "function",
265
+ "functions": "functions",
259
266
  "iWantToTalkToIn": "I want to talk to {{name}} in",
260
267
  "chatLanguageLabel": "Choose the conversation language",
261
268
  "chatResumed": "Conversation resumed successfully.",
@@ -263,6 +270,9 @@
263
270
  "messages": "messages",
264
271
  "page": "Page {{current}} of {{total}}"
265
272
  },
273
+ "chatResume": {
274
+ "resume": "Resume conversation"
275
+ },
266
276
  "artifact": {
267
277
  "close": "Close",
268
278
  "size": "Size",
@@ -87,6 +87,7 @@
87
87
  "errorFetchingSession": "Error durante el cargamento de la sesión",
88
88
  "errorGettingReferralURL": "Error durante el cargamento del référent",
89
89
  "errorReopeningSession": "Error durante el re-abrir la sesión",
90
+ "sessionExpiredReopening": "Sesión expirada, reabriendo sesión",
90
91
  "ageVerification": "Verificación de edad",
91
92
  "ageVerificationText": "Para interactuar con este Gemelo, debes tener al menos {{minAge}} años.",
92
93
  "ageVerificationSuccess": "Edad verificada con éxito.",
@@ -131,6 +132,7 @@
131
132
  "instruct": "Instruir",
132
133
  "test": "Probar",
133
134
  "sound": "Sonido",
135
+ "soundOff": "Sonido desactivado",
134
136
  "position": "Preferencias de posición",
135
137
  "settings": "Ajustes",
136
138
  "share": "Compartir",
@@ -142,6 +144,9 @@
142
144
  "expertsInTheBoard": "Expertos en este panel",
143
145
  "goToIntegrationsToCustomizeAvatar": "Para personalizar el avatar, ve a Compartir y personaliza la página pública",
144
146
  "chatAssistantStatus": "Activa • Responde en pocos segundos",
147
+ "agentStatusListening": "escuchando",
148
+ "agentStatusSpeaking": "hablando",
149
+ "agentStatusProcessing": "procesando",
145
150
  "shareLocation": "Compartir ubicación",
146
151
  "shareLocationHint": "Recibe respuestas adaptadas a dónde estás",
147
152
  "shareLocationAria": "Compartir ubicación con el asistente",
@@ -152,7 +157,7 @@
152
157
  "geocodingFailed": "No se pudo obtener la dirección. Inténtalo de nuevo o busca manualmente.",
153
158
  "positionUnavailableManual": "Ubicación no disponible. Introdúcela manualmente.",
154
159
  "positionSharingEnabled": "Ubicación compartida.",
155
- "headerHistory": "Historial de chat",
160
+ "headerHistory": "Historial",
156
161
  "headerProfile": "Perfil",
157
162
  "headerLogin": "Iniciar sesión",
158
163
  "expandToImmersive": "Expandir para vista inmersiva",
@@ -242,6 +247,8 @@
242
247
  "images": "imagenes",
243
248
  "file": "archivo",
244
249
  "files": "archivos",
250
+ "function": "función",
251
+ "functions": "funciones",
245
252
  "iWantToTalkToIn": "quiero hablar con {{name}} en",
246
253
  "chatLanguageLabel": "Elige el idioma de la conversación",
247
254
  "chatResumed": "Conversación reanudada correctamente.",
@@ -249,6 +256,9 @@
249
256
  "messages": "mensajes",
250
257
  "page": "Página {{current}} de {{total}}"
251
258
  },
259
+ "chatResume": {
260
+ "resume": "Reanudar la conversación"
261
+ },
252
262
  "artifact": {
253
263
  "close": "Cerrar",
254
264
  "size": "Tamaño",
@@ -86,6 +86,7 @@
86
86
  "errorFetchingSession": "Erreur lors du chargement de la session",
87
87
  "errorGettingReferralURL": "Erreur lors du chargement du référent",
88
88
  "errorReopeningSession": "Erreur lors de la re-ouverture de la session",
89
+ "sessionExpiredReopening": "Session expirée, réouverture en cours",
89
90
  "ageVerification": "Vérification de l'âge",
90
91
  "ageVerificationText": "Pour interagir avec ce Agent, vous devez être au minimum {{minAge}} ans.",
91
92
  "ageVerificationSuccess": "Âge vérifié avec succès.",
@@ -129,6 +130,7 @@
129
130
  "instruct": "Instruire",
130
131
  "test": "Tester",
131
132
  "sound": "Son",
133
+ "soundOff": "Son désactivé",
132
134
  "position": "Préférences de position",
133
135
  "settings": "Paramètres",
134
136
  "share": "Partager",
@@ -140,6 +142,9 @@
140
142
  "expertsInTheBoard": "Experts dans ce conseil",
141
143
  "goToIntegrationsToCustomizeAvatar": "Pour personnaliser l'avatar, allez dans Partager et personnalisez la page publique",
142
144
  "chatAssistantStatus": "Actif • Répond en quelques secondes",
145
+ "agentStatusListening": "à l'écoute",
146
+ "agentStatusSpeaking": "parle",
147
+ "agentStatusProcessing": "en traitement",
143
148
  "shareLocation": "Partager la position",
144
149
  "shareLocationHint": "Obtenez des réponses adaptées à votre position",
145
150
  "shareLocationAria": "Partager la position avec l'assistant",
@@ -150,7 +155,7 @@
150
155
  "geocodingFailed": "Impossible de déterminer l'adresse. Réessayez ou recherchez manuellement.",
151
156
  "positionUnavailableManual": "Position indisponible. Saisissez-la manuellement.",
152
157
  "positionSharingEnabled": "Position partagée.",
153
- "headerHistory": "Historique de chat",
158
+ "headerHistory": "Historique",
154
159
  "headerProfile": "Profil",
155
160
  "headerLogin": "Connexion",
156
161
  "downloadQrCode": "Télécharger le QR Code",
@@ -242,6 +247,8 @@
242
247
  "images": "images",
243
248
  "file": "fichier",
244
249
  "files": "fichiers",
250
+ "function": "fonction",
251
+ "functions": "fonctions",
245
252
  "iWantToTalkToIn": "je veux parler à {{name}} dans",
246
253
  "chatLanguageLabel": "Choisissez la langue de la conversation",
247
254
  "chatResumed": "Conversation reprise avec succès.",
@@ -249,6 +256,9 @@
249
256
  "messages": "messages",
250
257
  "page": "Page {{current}} de {{total}}"
251
258
  },
259
+ "chatResume": {
260
+ "resume": "Reprendre la conversation"
261
+ },
252
262
  "artifact": {
253
263
  "close": "Fermer",
254
264
  "size": "Taille",
@@ -90,6 +90,7 @@
90
90
  "errorFetchingSession": "Errore durante il caricamento della sessione",
91
91
  "errorGettingReferralURL": "Errore durante il caricamento del riferimento",
92
92
  "errorReopeningSession": "Errore durante il riapertura della sessione",
93
+ "sessionExpiredReopening": "Sessione scaduta, riapertura in corso",
93
94
  "ageVerification": "Verifica dell'età",
94
95
  "ageVerificationText": "Per interagire con questo agente, devi aver almeno {{minAge}} anni.",
95
96
  "ageVerificationSuccess": "Età verificata con successo.",
@@ -132,7 +133,8 @@
132
133
  "widget": {
133
134
  "instruct": "Istruisci",
134
135
  "test": "Prova",
135
- "sound": "Suono",
136
+ "sound": "Audio",
137
+ "soundOff": "Audio disattivato",
136
138
  "position": "Preferenze posizione",
137
139
  "settings": "Impostazioni",
138
140
  "share": "Condividi",
@@ -144,6 +146,9 @@
144
146
  "expertsInTheBoard": "Esperti in questa board",
145
147
  "goToIntegrationsToCustomizeAvatar": "Per personalizzare l'avatar, vai a Condividimi e configura la pagina pubblica",
146
148
  "chatAssistantStatus": "Attiva • Risponde in pochi secondi",
149
+ "agentStatusListening": "in ascolto",
150
+ "agentStatusSpeaking": "sta parlando",
151
+ "agentStatusProcessing": "in elaborazione",
147
152
  "shareLocation": "Condividi posizione",
148
153
  "shareLocationHint": "Ricevi risposte in base a dove ti trovi",
149
154
  "shareLocationAria": "Condividi la posizione con l'assistente",
@@ -154,7 +159,7 @@
154
159
  "geocodingFailed": "Impossibile ottenere l'indirizzo. Riprova o cerca manualmente.",
155
160
  "positionUnavailableManual": "Posizione non disponibile. Inseriscila manualmente.",
156
161
  "positionSharingEnabled": "Posizione condivisa.",
157
- "headerHistory": "Cronologia chat",
162
+ "headerHistory": "Cronologia",
158
163
  "headerProfile": "Profilo",
159
164
  "headerLogin": "Accedi",
160
165
  "downloadQrCode": "Scarica QR Code",
@@ -258,6 +263,8 @@
258
263
  "images": "immagini",
259
264
  "file": "file",
260
265
  "files": "file",
266
+ "function": "funzione",
267
+ "functions": "funzioni",
261
268
  "iWantToTalkToIn": "Voglio parlare con {{name}} in",
262
269
  "chatLanguageLabel": "Scegli la lingua della conversazione",
263
270
  "chatResumed": "Chat ripresa con successo.",
@@ -265,6 +272,9 @@
265
272
  "messages": "messaggi",
266
273
  "page": "Pagina {{current}} di {{total}}"
267
274
  },
275
+ "chatResume": {
276
+ "resume": "Riprendi la conversazione"
277
+ },
268
278
  "artifact": {
269
279
  "close": "Chiudi",
270
280
  "size": "Dimensione",
package/src/styles.css CHANGED
@@ -4,7 +4,10 @@
4
4
  /* Layer order: theme (defaults) < integration (integrationConfig overrides) */
5
5
  @layer theme, integration;
6
6
 
7
- /* --- 1. Design system esterno (variabili, reset, token) --- */
7
+ /* --- 1. Design system esterno (variabili, reset, token) ---
8
+ NOTE: the bundler-style specifier below is intentional for dev/Storybook.
9
+ Published `dist/styles.css` and `esm/styles.css` are bundled by PostCSS
10
+ (`postcss-import`) so this import is inlined before publishing. */
8
11
  @import url('@memori.ai/ui/dist/memori-ai-ui.css');
9
12
 
10
13
  /* --- 2. Stili per componente (ordine: componenti UI, poi layout) --- */
@@ -24,6 +27,7 @@
24
27
  @import url('./components/CustomGLBModelViewer/ModelViewer.css');
25
28
  @import url('./components/SettingsDrawer/SettingsDrawer.css');
26
29
  @import url('./components/ChatHistoryDrawer/ChatHistory.css');
30
+ @import url('./components/ChatHistoryDrawer/ChatResumeDrawer.css');
27
31
  @import url('./components/ExpertsDrawer/ExpertsDrawer.css');
28
32
  @import url('./components/ExportHistoryButton/ExportHistoryButton.css');
29
33
  @import url('./components/FeedbackButtons/FeedbackButtons.css');
@@ -40,6 +44,7 @@
40
44
  @import url('./components/AgeVerificationModal/AgeVerificationModal.css');
41
45
  @import url('./components/KnownFacts/KnownFacts.css');
42
46
  @import url('./components/LoginDrawer/LoginDrawer.css');
47
+ @import url('./components/MobileSessionPanel/MobileSessionPanel.css');
43
48
  @import url('./components/VenueWidget/VenueWidget.css');
44
49
  @import url('./components/WhyThisAnswer/WhyThisAnswer.css');
45
50
  @import url('./components/MemoriWidget/MemoriWidget.css');
@@ -76,13 +81,64 @@
76
81
  clip: rect(0, 0, 0, 0);
77
82
  white-space: nowrap;
78
83
  }
84
+ .memori.memori-widget.memori-layout-chat,
85
+ .memori.memori-widget.memori-layout-fullpage,
86
+ .memori.memori-widget.memori-layout-zoomed_full_body {
87
+ /* Portal root for Floating UI menus — do NOT set contain here.
88
+ Use 100dvh (not height:100% alone): Storybook’s root often has no
89
+ definite height, and % / flex children do not resolve against min-height. */
90
+ position: relative;
91
+ display: flex;
92
+ overflow: hidden;
93
+ height: 100vh;
94
+ height: 100dvh;
95
+ max-height: 100vh;
96
+ max-height: 100dvh;
97
+ flex-direction: column;
98
+ }
79
99
 
80
- /* --- 5. Light mode: colori superficie (prima del base così memori-client #root < body.sb-show-main #root) --- */
81
- memori-client,
82
- memori-client #root,
83
- .memori-widget {
84
- --memori-surface-contrast: white;
85
- --memori-surface-contrast-inverse: black;
100
+ /*
101
+ * Layout containment lives on the inner surface so fixed Drawers/Modals stay
102
+ * clipped to the chat widget, while Select/Popover menus can portal to the
103
+ * outer .memori-widget (MemoriUIProvider container) without the left-offset bug.
104
+ */
105
+ .memori-widget__surface {
106
+ position: relative;
107
+ display: flex;
108
+ width: 100%;
109
+ height: 100%;
110
+ min-height: 0;
111
+ flex: 1 1 0%;
112
+ flex-direction: column;
113
+ }
114
+
115
+ .memori.memori-widget.memori-layout-chat > .memori-widget__surface,
116
+ .memori.memori-widget.memori-layout-fullpage > .memori-widget__surface,
117
+ .memori.memori-widget.memori-layout-zoomed_full_body > .memori-widget__surface {
118
+ contain: layout;
119
+ }
120
+
121
+ /* After inserting .memori-widget__surface, Spin is no longer a direct child of
122
+ .memori-widget — keep it a stretching flex column so fullpage/chat fill the viewport. */
123
+ .memori-widget > .memori-widget__surface > .memori-spin {
124
+ display: flex !important;
125
+ overflow: hidden;
126
+ width: 100%;
127
+ height: 100% !important;
128
+ min-height: 0;
129
+ flex: 1 1 0% !important;
130
+ flex-direction: column !important;
131
+ }
132
+
133
+ .memori-widget > .memori-widget__surface > .memori-spin > .memori-fullpage-content-row,
134
+ .memori-widget > .memori-widget__surface > .memori-spin.memori-chat-layout > .memori-chat-layout--main {
135
+ height: 100% !important;
136
+ min-height: 0;
137
+ flex: 1 1 0% !important;
138
+ }
139
+
140
+ .memori-widget > .memori-widget__surface > .memori-spin > .memori-fullpage-top-header {
141
+ flex-shrink: 0;
86
142
  }
87
143
 
88
144
  /* --- 6. Base: brand e tema di default (in layer così integration può sovrascrivere --memori-primary) --- */
@@ -99,6 +155,9 @@ memori-client #root,
99
155
  --memori-primary-color: rgb(var(--memori-primary-rgb, 130 70 175));
100
156
  --memori-primary: var(--memori-primary-color);
101
157
  --memori-layout-max-width: 1280px;
158
+ /* Shared conversation axis (message list, empty state, input) */
159
+ --memori-conversation-max-width: 48rem; /* 768px */
160
+ --memori-conversation-inline-padding: var(--memori-spacing-md);
102
161
  font-family: var(--memori-font-family, 'Lexend Deca', sans-serif);
103
162
  font-size: var(--memori-text-size-base);
104
163
  }
@@ -121,8 +180,9 @@ memori-client #root,
121
180
  memori-client[data-theme='dark'],
122
181
  .memori-widget[data-theme='dark'] {
123
182
  --memori-primary: var(--memori-primary-hover);
124
- --memori-surface-contrast: black;
125
- --memori-surface-contrast-inverse: white;
183
+ /* Align with @memori.ai/ui: contrast = ink, inverse = surface */
184
+ --memori-surface-contrast: #fff;
185
+ --memori-surface-contrast-inverse: #000;
126
186
  }
127
187
  }
128
188
 
@@ -139,16 +199,41 @@ memori-client #root,
139
199
  );
140
200
  } */
141
201
 
142
- /* --- 10. Utility responsive --- */
202
+ /* --- 10. HIDDEN_CHAT / WEBSITE_ASSISTANT tooltip labels ---
203
+ * Both layouts park their UI in position:fixed children, so .memori-widget
204
+ * (MemoriUIProvider portal root) often collapses to a near-zero in-flow box.
205
+ * Base UI tooltips position with position:absolute inside that root, so the
206
+ * popup shrink-to-fits to a tiny width and overflow-wrap:anywhere (from
207
+ * @memori.ai/ui) stacks each letter vertically. Force content-sized popups. */
208
+ .memori-widget.memori-layout-hidden_chat .memori-tooltip__popup,
209
+ .memori-widget.memori-layout-website_assistant .memori-tooltip__popup {
210
+ width: max-content;
211
+ max-width: min(20rem, calc(100vw - 2rem));
212
+ overflow-wrap: break-word;
213
+ text-orientation: mixed;
214
+ word-break: normal;
215
+ writing-mode: horizontal-tb;
216
+ }
217
+
218
+ .memori-widget.memori-layout-hidden_chat .memori-tooltip__surface,
219
+ .memori-widget.memori-layout-website_assistant .memori-tooltip__surface {
220
+ max-width: none;
221
+ }
222
+
223
+ /* --- 11. Utility responsive --- */
143
224
  @media (max-width: 768px) {
144
225
  .mobile-hidden {
145
226
  display: none;
146
227
  }
147
228
  }
148
229
 
149
- /* Keep toast feedback below the header actions area. */
230
+ /* Keep toast feedback below the header actions area.
231
+ Fixed width — do not set left+right together (that stretches full-bleed). */
150
232
  .memori-alert-viewport.memori-alert-viewport--top-end {
151
233
  top: 4.75rem !important;
234
+ left: auto !important;
235
+ width: 300px !important;
236
+ max-width: calc(100vw - 2 * var(--memori-spacing-sm));
152
237
  }
153
238
 
154
239
  @media (max-width: 768px) {
@@ -156,6 +241,7 @@ memori-client #root,
156
241
  top: auto !important;
157
242
  right: var(--memori-spacing-sm) !important;
158
243
  bottom: calc(5.5rem + env(safe-area-inset-bottom, 0px)) !important;
159
- left: var(--memori-spacing-sm) !important;
244
+ left: auto !important;
245
+ width: min(300px, calc(100vw - 2 * var(--memori-spacing-sm))) !important;
160
246
  }
161
247
  }
@@ -0,0 +1,32 @@
1
+ import {
2
+ is3dAvatarWithUrl,
3
+ usesRpmAvatarView,
4
+ } from './integration';
5
+
6
+ describe('integration avatar helpers', () => {
7
+ const avatarURL = 'https://example.com/avatar.glb';
8
+
9
+ describe('is3dAvatarWithUrl', () => {
10
+ it('returns true for avatar-configurator with avatarURL', () => {
11
+ expect(is3dAvatarWithUrl('avatar-configurator', avatarURL)).toBe(true);
12
+ });
13
+
14
+ it('returns false for avatar-configurator without avatarURL', () => {
15
+ expect(is3dAvatarWithUrl('avatar-configurator', undefined)).toBe(false);
16
+ });
17
+ });
18
+
19
+ describe('usesRpmAvatarView', () => {
20
+ it('returns true for avatar-configurator', () => {
21
+ expect(usesRpmAvatarView('avatar-configurator')).toBe(true);
22
+ });
23
+
24
+ it('returns true for readyplayerme-full', () => {
25
+ expect(usesRpmAvatarView('readyplayerme-full')).toBe(true);
26
+ });
27
+
28
+ it('returns false for customglb', () => {
29
+ expect(usesRpmAvatarView('customglb')).toBe(false);
30
+ });
31
+ });
32
+ });