@memori.ai/memori-react 9.0.0-alpha.1 → 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 (935) hide show
  1. package/CHANGELOG.md +374 -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/ChatInputs/ChatInputs.css +292 -108
  26. package/dist/components/ChatInputs/ChatInputs.d.ts +1 -0
  27. package/dist/components/ChatInputs/ChatInputs.js +2 -2
  28. package/dist/components/ChatInputs/ChatInputs.js.map +1 -1
  29. package/dist/components/ChatTextArea/ChatTextArea.css +30 -6
  30. package/dist/components/CompletionProviderStatus/CompletionProviderStatus.js +6 -3
  31. package/dist/components/CompletionProviderStatus/CompletionProviderStatus.js.map +1 -1
  32. package/dist/components/ContentPreviewModal/ContentPreviewModal.js +3 -1
  33. package/dist/components/ContentPreviewModal/ContentPreviewModal.js.map +1 -1
  34. package/dist/components/DateSelector/DateSelector.d.ts +2 -1
  35. package/dist/components/DateSelector/DateSelector.js +17 -7
  36. package/dist/components/DateSelector/DateSelector.js.map +1 -1
  37. package/dist/components/ExpertsDrawer/ExpertsDrawer.js +3 -1
  38. package/dist/components/ExpertsDrawer/ExpertsDrawer.js.map +1 -1
  39. package/dist/components/FilePreview/FilePreview.js +22 -5
  40. package/dist/components/FilePreview/FilePreview.js.map +1 -1
  41. package/dist/components/Header/ChatConsumptionDropdown.d.ts +3 -1
  42. package/dist/components/Header/ChatConsumptionDropdown.js +4 -3
  43. package/dist/components/Header/ChatConsumptionDropdown.js.map +1 -1
  44. package/dist/components/Header/Header.css +16 -10
  45. package/dist/components/Header/Header.js +103 -22
  46. package/dist/components/Header/Header.js.map +1 -1
  47. package/dist/components/KnownFacts/KnownFacts.js +7 -5
  48. package/dist/components/KnownFacts/KnownFacts.js.map +1 -1
  49. package/dist/components/LoginDrawer/LoginDrawer.css +1 -0
  50. package/dist/components/LoginDrawer/LoginDrawer.js +3 -1
  51. package/dist/components/LoginDrawer/LoginDrawer.js.map +1 -1
  52. package/dist/components/MediaWidget/MediaItemWidget.js +14 -12
  53. package/dist/components/MediaWidget/MediaItemWidget.js.map +1 -1
  54. package/dist/components/MediaWidget/MediaItemWidget.utils.d.ts +3 -2
  55. package/dist/components/MediaWidget/MediaItemWidget.utils.js +28 -6
  56. package/dist/components/MediaWidget/MediaItemWidget.utils.js.map +1 -1
  57. package/dist/components/MediaWidget/MediaPreviewModal.js +6 -7
  58. package/dist/components/MediaWidget/MediaPreviewModal.js.map +1 -1
  59. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/styles.css +5 -4
  60. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +108 -42
  61. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.d.ts +1 -0
  62. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js +18 -10
  63. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js.map +1 -1
  64. package/dist/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.js +2 -2
  65. package/dist/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.js.map +1 -1
  66. package/dist/components/MemoriWidget/MemoriWidget.css +5 -5
  67. package/dist/components/MemoriWidget/MemoriWidget.d.ts +1 -0
  68. package/dist/components/MemoriWidget/MemoriWidget.js +788 -430
  69. package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
  70. package/dist/components/MicrophoneButton/MicrophoneButton.css +50 -18
  71. package/dist/components/MobileSessionPanel/MobileSessionPanel.d.ts +3 -1
  72. package/dist/components/MobileSessionPanel/MobileSessionPanel.js +5 -4
  73. package/dist/components/MobileSessionPanel/MobileSessionPanel.js.map +1 -1
  74. package/dist/components/PoweredBy/PoweredBy.css +10 -2
  75. package/dist/components/SettingsDrawer/SettingsDrawer.js +3 -1
  76. package/dist/components/SettingsDrawer/SettingsDrawer.js.map +1 -1
  77. package/dist/components/ShareButton/ShareButton.js +2 -4
  78. package/dist/components/ShareButton/ShareButton.js.map +1 -1
  79. package/dist/components/StartPanel/StartPanel.js +13 -6
  80. package/dist/components/StartPanel/StartPanel.js.map +1 -1
  81. package/dist/components/UploadButton/UploadButton.js +21 -5
  82. package/dist/components/UploadButton/UploadButton.js.map +1 -1
  83. package/dist/components/UploadButton/UploadDocuments/UploadDocuments.js +126 -60
  84. package/dist/components/UploadButton/UploadDocuments/UploadDocuments.js.map +1 -1
  85. package/dist/components/UploadButton/UploadImages/UploadImages.js +4 -2
  86. package/dist/components/UploadButton/UploadImages/UploadImages.js.map +1 -1
  87. package/dist/components/WhyThisAnswer/WhyThisAnswer.js +3 -1
  88. package/dist/components/WhyThisAnswer/WhyThisAnswer.js.map +1 -1
  89. package/dist/components/layouts/Chat.js +25 -30
  90. package/dist/components/layouts/Chat.js.map +1 -1
  91. package/dist/components/layouts/FullPage.js +36 -9
  92. package/dist/components/layouts/FullPage.js.map +1 -1
  93. package/dist/components/layouts/HiddenChat.js +12 -237
  94. package/dist/components/layouts/HiddenChat.js.map +1 -1
  95. package/dist/components/layouts/Totem.js +10 -1
  96. package/dist/components/layouts/Totem.js.map +1 -1
  97. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js +29 -2
  98. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +1 -1
  99. package/dist/components/layouts/WebsiteAssistant/website-assistant.css +160 -59
  100. package/dist/components/layouts/ZoomedFullBody.js +36 -9
  101. package/dist/components/layouts/ZoomedFullBody.js.map +1 -1
  102. package/dist/components/layouts/chat.css +77 -63
  103. package/dist/components/layouts/fullpage.css +229 -84
  104. package/dist/components/layouts/hidden-chat.css +148 -33
  105. package/dist/components/layouts/totem.css +151 -50
  106. package/dist/components/layouts/zoomed-full-body.css +332 -33
  107. package/dist/context/widgetSurfaceContext.d.ts +3 -0
  108. package/dist/context/widgetSurfaceContext.js +11 -0
  109. package/dist/context/widgetSurfaceContext.js.map +1 -0
  110. package/dist/helpers/constants.d.ts +3 -0
  111. package/dist/helpers/constants.js +27 -1
  112. package/dist/helpers/constants.js.map +1 -1
  113. package/dist/helpers/credits.d.ts +5 -2
  114. package/dist/helpers/credits.js +5 -1
  115. package/dist/helpers/credits.js.map +1 -1
  116. package/dist/helpers/message.d.ts +1 -1
  117. package/dist/helpers/message.js +4 -4
  118. package/dist/helpers/message.js.map +1 -1
  119. package/dist/helpers/nats/getNatsConfig.d.ts +9 -0
  120. package/dist/helpers/nats/getNatsConfig.js +65 -0
  121. package/dist/helpers/nats/getNatsConfig.js.map +1 -0
  122. package/dist/helpers/nats/isSessionExpiredError.d.ts +3 -0
  123. package/dist/helpers/nats/isSessionExpiredError.js +36 -0
  124. package/dist/helpers/nats/isSessionExpiredError.js.map +1 -0
  125. package/dist/helpers/nats/useNats.d.ts +12 -0
  126. package/dist/helpers/nats/useNats.js +75 -0
  127. package/dist/helpers/nats/useNats.js.map +1 -0
  128. package/dist/helpers/nats/useNatsSession.d.ts +28 -0
  129. package/dist/helpers/nats/useNatsSession.js +212 -0
  130. package/dist/helpers/nats/useNatsSession.js.map +1 -0
  131. package/dist/helpers/positionPopover.d.ts +1 -0
  132. package/dist/helpers/positionPopover.js +7 -0
  133. package/dist/helpers/positionPopover.js.map +1 -0
  134. package/dist/helpers/usePressTooltip.d.ts +13 -0
  135. package/dist/helpers/usePressTooltip.js +23 -0
  136. package/dist/helpers/usePressTooltip.js.map +1 -0
  137. package/dist/helpers/utils.d.ts +21 -0
  138. package/dist/helpers/utils.js +75 -4
  139. package/dist/helpers/utils.js.map +1 -1
  140. package/dist/locales/de.json +11 -1
  141. package/dist/locales/en.json +12 -2
  142. package/dist/locales/es.json +11 -1
  143. package/dist/locales/fr.json +11 -1
  144. package/dist/locales/it.json +12 -2
  145. package/dist/styles.css +1 -163
  146. package/dist/types/integration.d.ts +3 -0
  147. package/dist/types/integration.js +16 -0
  148. package/dist/types/integration.js.map +1 -0
  149. package/dist/version.d.ts +1 -1
  150. package/dist/version.js +1 -1
  151. package/dist/version.js.map +1 -1
  152. package/esm/components/AgeVerificationModal/AgeVerificationModal.js +8 -3
  153. package/esm/components/AgeVerificationModal/AgeVerificationModal.js.map +1 -1
  154. package/esm/components/Auth/Auth.js +3 -1
  155. package/esm/components/Auth/Auth.js.map +1 -1
  156. package/esm/components/Avatar/Avatar.js +5 -10
  157. package/esm/components/Avatar/Avatar.js.map +1 -1
  158. package/esm/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.js +9 -2
  159. package/esm/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.js.map +1 -1
  160. package/esm/components/Avatar/AvatarView/AvatarComponent/components/controllers/MorphTargetController.js +2 -2
  161. package/esm/components/Avatar/AvatarView/AvatarComponent/components/controllers/MorphTargetController.js.map +1 -1
  162. package/esm/components/Avatar/AvatarView/AvatarComponent/constants.d.ts +2 -0
  163. package/esm/components/Avatar/AvatarView/AvatarComponent/constants.js +13 -4
  164. package/esm/components/Avatar/AvatarView/AvatarComponent/constants.js.map +1 -1
  165. package/esm/components/Chat/Chat.css +108 -20
  166. package/esm/components/Chat/Chat.d.ts +3 -0
  167. package/esm/components/Chat/Chat.js +63 -55
  168. package/esm/components/Chat/Chat.js.map +1 -1
  169. package/esm/components/ChatBubble/ChatBubble.css +42 -14
  170. package/esm/components/ChatBubble/ChatBubble.js +24 -16
  171. package/esm/components/ChatBubble/ChatBubble.js.map +1 -1
  172. package/esm/components/ChatHistoryDrawer/ChatHistory.css +4 -0
  173. package/esm/components/ChatHistoryDrawer/ChatHistory.js +27 -10
  174. package/esm/components/ChatHistoryDrawer/ChatHistory.js.map +1 -1
  175. package/esm/components/ChatInputs/ChatInputs.css +292 -108
  176. package/esm/components/ChatInputs/ChatInputs.d.ts +1 -0
  177. package/esm/components/ChatInputs/ChatInputs.js +2 -2
  178. package/esm/components/ChatInputs/ChatInputs.js.map +1 -1
  179. package/esm/components/ChatTextArea/ChatTextArea.css +30 -6
  180. package/esm/components/CompletionProviderStatus/CompletionProviderStatus.js +6 -3
  181. package/esm/components/CompletionProviderStatus/CompletionProviderStatus.js.map +1 -1
  182. package/esm/components/ContentPreviewModal/ContentPreviewModal.js +3 -1
  183. package/esm/components/ContentPreviewModal/ContentPreviewModal.js.map +1 -1
  184. package/esm/components/DateSelector/DateSelector.d.ts +2 -1
  185. package/esm/components/DateSelector/DateSelector.js +17 -7
  186. package/esm/components/DateSelector/DateSelector.js.map +1 -1
  187. package/esm/components/ExpertsDrawer/ExpertsDrawer.js +3 -1
  188. package/esm/components/ExpertsDrawer/ExpertsDrawer.js.map +1 -1
  189. package/esm/components/FilePreview/FilePreview.js +24 -7
  190. package/esm/components/FilePreview/FilePreview.js.map +1 -1
  191. package/esm/components/Header/ChatConsumptionDropdown.d.ts +3 -1
  192. package/esm/components/Header/ChatConsumptionDropdown.js +5 -4
  193. package/esm/components/Header/ChatConsumptionDropdown.js.map +1 -1
  194. package/esm/components/Header/Header.css +16 -10
  195. package/esm/components/Header/Header.js +104 -23
  196. package/esm/components/Header/Header.js.map +1 -1
  197. package/esm/components/KnownFacts/KnownFacts.js +7 -5
  198. package/esm/components/KnownFacts/KnownFacts.js.map +1 -1
  199. package/esm/components/LoginDrawer/LoginDrawer.css +1 -0
  200. package/esm/components/LoginDrawer/LoginDrawer.js +3 -1
  201. package/esm/components/LoginDrawer/LoginDrawer.js.map +1 -1
  202. package/esm/components/MediaWidget/MediaItemWidget.js +16 -14
  203. package/esm/components/MediaWidget/MediaItemWidget.js.map +1 -1
  204. package/esm/components/MediaWidget/MediaItemWidget.utils.d.ts +3 -2
  205. package/esm/components/MediaWidget/MediaItemWidget.utils.js +27 -6
  206. package/esm/components/MediaWidget/MediaItemWidget.utils.js.map +1 -1
  207. package/esm/components/MediaWidget/MediaPreviewModal.js +6 -7
  208. package/esm/components/MediaWidget/MediaPreviewModal.js.map +1 -1
  209. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/styles.css +5 -4
  210. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +108 -42
  211. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.d.ts +1 -0
  212. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js +18 -10
  213. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js.map +1 -1
  214. package/esm/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.js +2 -2
  215. package/esm/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.js.map +1 -1
  216. package/esm/components/MemoriWidget/MemoriWidget.css +5 -5
  217. package/esm/components/MemoriWidget/MemoriWidget.d.ts +1 -0
  218. package/esm/components/MemoriWidget/MemoriWidget.js +789 -431
  219. package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
  220. package/esm/components/MicrophoneButton/MicrophoneButton.css +50 -18
  221. package/esm/components/MobileSessionPanel/MobileSessionPanel.d.ts +3 -1
  222. package/esm/components/MobileSessionPanel/MobileSessionPanel.js +5 -4
  223. package/esm/components/MobileSessionPanel/MobileSessionPanel.js.map +1 -1
  224. package/esm/components/PoweredBy/PoweredBy.css +10 -2
  225. package/esm/components/SettingsDrawer/SettingsDrawer.js +3 -1
  226. package/esm/components/SettingsDrawer/SettingsDrawer.js.map +1 -1
  227. package/esm/components/ShareButton/ShareButton.js +2 -4
  228. package/esm/components/ShareButton/ShareButton.js.map +1 -1
  229. package/esm/components/StartPanel/StartPanel.js +13 -6
  230. package/esm/components/StartPanel/StartPanel.js.map +1 -1
  231. package/esm/components/UploadButton/UploadButton.js +21 -5
  232. package/esm/components/UploadButton/UploadButton.js.map +1 -1
  233. package/esm/components/UploadButton/UploadDocuments/UploadDocuments.js +126 -60
  234. package/esm/components/UploadButton/UploadDocuments/UploadDocuments.js.map +1 -1
  235. package/esm/components/UploadButton/UploadImages/UploadImages.js +4 -2
  236. package/esm/components/UploadButton/UploadImages/UploadImages.js.map +1 -1
  237. package/esm/components/WhyThisAnswer/WhyThisAnswer.js +3 -1
  238. package/esm/components/WhyThisAnswer/WhyThisAnswer.js.map +1 -1
  239. package/esm/components/layouts/Chat.js +25 -30
  240. package/esm/components/layouts/Chat.js.map +1 -1
  241. package/esm/components/layouts/FullPage.js +36 -9
  242. package/esm/components/layouts/FullPage.js.map +1 -1
  243. package/esm/components/layouts/HiddenChat.js +14 -239
  244. package/esm/components/layouts/HiddenChat.js.map +1 -1
  245. package/esm/components/layouts/Totem.js +10 -1
  246. package/esm/components/layouts/Totem.js.map +1 -1
  247. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js +29 -2
  248. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +1 -1
  249. package/esm/components/layouts/WebsiteAssistant/website-assistant.css +160 -59
  250. package/esm/components/layouts/ZoomedFullBody.js +36 -9
  251. package/esm/components/layouts/ZoomedFullBody.js.map +1 -1
  252. package/esm/components/layouts/chat.css +77 -63
  253. package/esm/components/layouts/fullpage.css +229 -84
  254. package/esm/components/layouts/hidden-chat.css +148 -33
  255. package/esm/components/layouts/totem.css +151 -50
  256. package/esm/components/layouts/zoomed-full-body.css +332 -33
  257. package/esm/context/widgetSurfaceContext.d.ts +3 -0
  258. package/esm/context/widgetSurfaceContext.js +7 -0
  259. package/esm/context/widgetSurfaceContext.js.map +1 -0
  260. package/esm/helpers/constants.d.ts +3 -0
  261. package/esm/helpers/constants.js +26 -0
  262. package/esm/helpers/constants.js.map +1 -1
  263. package/esm/helpers/credits.d.ts +5 -2
  264. package/esm/helpers/credits.js +5 -1
  265. package/esm/helpers/credits.js.map +1 -1
  266. package/esm/helpers/message.d.ts +1 -1
  267. package/esm/helpers/message.js +2 -2
  268. package/esm/helpers/message.js.map +1 -1
  269. package/esm/helpers/nats/getNatsConfig.d.ts +9 -0
  270. package/esm/helpers/nats/getNatsConfig.js +61 -0
  271. package/esm/helpers/nats/getNatsConfig.js.map +1 -0
  272. package/esm/helpers/nats/isSessionExpiredError.d.ts +3 -0
  273. package/esm/helpers/nats/isSessionExpiredError.js +32 -0
  274. package/esm/helpers/nats/isSessionExpiredError.js.map +1 -0
  275. package/esm/helpers/nats/useNats.d.ts +12 -0
  276. package/esm/helpers/nats/useNats.js +72 -0
  277. package/esm/helpers/nats/useNats.js.map +1 -0
  278. package/esm/helpers/nats/useNatsSession.d.ts +28 -0
  279. package/esm/helpers/nats/useNatsSession.js +208 -0
  280. package/esm/helpers/nats/useNatsSession.js.map +1 -0
  281. package/esm/helpers/positionPopover.d.ts +1 -0
  282. package/esm/helpers/positionPopover.js +4 -0
  283. package/esm/helpers/positionPopover.js.map +1 -0
  284. package/esm/helpers/usePressTooltip.d.ts +13 -0
  285. package/esm/helpers/usePressTooltip.js +20 -0
  286. package/esm/helpers/usePressTooltip.js.map +1 -0
  287. package/esm/helpers/utils.d.ts +21 -0
  288. package/esm/helpers/utils.js +68 -3
  289. package/esm/helpers/utils.js.map +1 -1
  290. package/esm/locales/de.json +11 -1
  291. package/esm/locales/en.json +12 -2
  292. package/esm/locales/es.json +11 -1
  293. package/esm/locales/fr.json +11 -1
  294. package/esm/locales/it.json +12 -2
  295. package/esm/styles.css +1 -163
  296. package/esm/types/integration.d.ts +3 -0
  297. package/esm/types/integration.js +11 -0
  298. package/esm/types/integration.js.map +1 -0
  299. package/esm/version.d.ts +1 -1
  300. package/esm/version.js +1 -1
  301. package/esm/version.js.map +1 -1
  302. package/package.json +13 -6
  303. package/src/components/AgeVerificationModal/AgeVerificationModal.tsx +9 -1
  304. package/src/components/Auth/Auth.tsx +3 -0
  305. package/src/components/Avatar/Avatar.stories.tsx +45 -28
  306. package/src/components/Avatar/Avatar.test.tsx +54 -0
  307. package/src/components/Avatar/Avatar.tsx +8 -12
  308. package/src/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.tsx +12 -5
  309. package/src/components/Avatar/AvatarView/AvatarComponent/components/controllers/MorphTargetController.ts +2 -1
  310. package/src/components/Avatar/AvatarView/AvatarComponent/constants.ts +16 -4
  311. package/src/components/Avatar/__snapshots__/Avatar.test.tsx.snap +164 -0
  312. package/src/components/BlockedMemoriBadge/__snapshots__/BlockedMemoriBadge.test.tsx.snap +10 -10
  313. package/src/components/Chat/Chat.css +108 -20
  314. package/src/components/Chat/Chat.tsx +28 -0
  315. package/src/components/Chat/__snapshots__/Chat.test.tsx.snap +7449 -7369
  316. package/src/components/ChatBubble/ChatBubble.css +42 -14
  317. package/src/components/ChatBubble/ChatBubble.tsx +44 -12
  318. package/src/components/ChatBubble/__snapshots__/ChatBubble.test.tsx.snap +90 -90
  319. package/src/components/ChatHistoryDrawer/ChatHistory.css +4 -0
  320. package/src/components/ChatHistoryDrawer/ChatHistory.test.tsx +77 -1
  321. package/src/components/ChatHistoryDrawer/ChatHistory.tsx +59 -27
  322. package/src/components/ChatInputs/ChatInputs.css +292 -108
  323. package/src/components/ChatInputs/ChatInputs.tsx +14 -4
  324. package/src/components/ChatTextArea/ChatTextArea.css +30 -6
  325. package/src/components/CompletionProviderStatus/CompletionProviderStatus.tsx +8 -4
  326. package/src/components/CompletionProviderStatus/__snapshots__/CompletionProviderStatus.test.tsx.snap +6 -6
  327. package/src/components/ContentPreviewModal/ContentPreviewModal.tsx +3 -0
  328. package/src/components/DateSelector/DateSelector.stories.tsx +11 -2
  329. package/src/components/DateSelector/DateSelector.tsx +28 -9
  330. package/src/components/ExpertsDrawer/ExpertsDrawer.tsx +3 -0
  331. package/src/components/FeedbackButtons/__snapshots__/FeedbackButtons.test.tsx.snap +2 -2
  332. package/src/components/FilePreview/FilePreview.tsx +28 -7
  333. package/src/components/Header/ChatConsumptionDropdown.tsx +16 -5
  334. package/src/components/Header/Header.css +16 -10
  335. package/src/components/Header/Header.tsx +331 -53
  336. package/src/components/Header/__snapshots__/Header.test.tsx.snap +109 -83
  337. package/src/components/KnownFacts/KnownFacts.tsx +7 -0
  338. package/src/components/LoginDrawer/LoginDrawer.css +1 -0
  339. package/src/components/LoginDrawer/LoginDrawer.tsx +3 -0
  340. package/src/components/MediaWidget/MediaItemWidget.tsx +26 -13
  341. package/src/components/MediaWidget/MediaItemWidget.utils.test.ts +45 -2
  342. package/src/components/MediaWidget/MediaItemWidget.utils.ts +39 -6
  343. package/src/components/MediaWidget/MediaPreviewModal.tsx +9 -7
  344. package/src/components/MemoriArtifactSystem/ArtifactDrawer.stories.tsx +218 -2252
  345. package/src/components/MemoriArtifactSystem/components/ArtifactActions/styles.css +5 -4
  346. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +108 -42
  347. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.tsx +35 -14
  348. package/src/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.tsx +4 -3
  349. package/src/components/MemoriWidget/MemoriWidget.css +5 -5
  350. package/src/components/MemoriWidget/MemoriWidget.tsx +1234 -729
  351. package/src/components/MicrophoneButton/MicrophoneButton.css +50 -18
  352. package/src/components/MobileSessionPanel/MobileSessionPanel.tsx +44 -30
  353. package/src/components/PoweredBy/PoweredBy.css +10 -2
  354. package/src/components/SettingsDrawer/SettingsDrawer.tsx +3 -0
  355. package/src/components/ShareButton/ShareButton.tsx +6 -3
  356. package/src/components/ShareButton/__snapshots__/ShareButton.test.tsx.snap +27 -18
  357. package/src/components/StartPanel/StartPanel.stories.tsx +22 -0
  358. package/src/components/StartPanel/StartPanel.test.tsx +64 -1
  359. package/src/components/StartPanel/StartPanel.tsx +29 -3
  360. package/src/components/StartPanel/__snapshots__/StartPanel.test.tsx.snap +293 -32
  361. package/src/components/UploadButton/UploadButton.tsx +30 -11
  362. package/src/components/UploadButton/UploadDocuments/UploadDocuments.tsx +151 -61
  363. package/src/components/UploadButton/UploadImages/UploadImages.tsx +4 -1
  364. package/src/components/UploadButton/__snapshots__/UploadButton.test.tsx.snap +4 -4
  365. package/src/components/WhyThisAnswer/WhyThisAnswer.tsx +3 -0
  366. package/src/components/layouts/Chat.tsx +147 -148
  367. package/src/components/layouts/FullPage.tsx +92 -25
  368. package/src/components/layouts/HiddenChat.tsx +21 -413
  369. package/src/components/layouts/Totem.tsx +20 -3
  370. package/src/components/layouts/WebsiteAssistant/WebsiteAssistant.tsx +71 -15
  371. package/src/components/layouts/WebsiteAssistant/__snapshots__/WebsiteAssistant.test.tsx.snap +48 -44
  372. package/src/components/layouts/WebsiteAssistant/website-assistant.css +160 -59
  373. package/src/components/layouts/ZoomedFullBody.tsx +95 -27
  374. package/src/components/layouts/__snapshots__/Chat.test.tsx.snap +610 -582
  375. package/src/components/layouts/__snapshots__/FullPage.test.tsx.snap +1235 -1165
  376. package/src/components/layouts/__snapshots__/HiddenChat.test.tsx.snap +542 -438
  377. package/src/components/layouts/__snapshots__/Totem.test.tsx.snap +579 -602
  378. package/src/components/layouts/__snapshots__/ZoomedFullBody.test.tsx.snap +599 -564
  379. package/src/components/layouts/chat.css +77 -63
  380. package/src/components/layouts/fullpage.css +229 -84
  381. package/src/components/layouts/hidden-chat.css +148 -33
  382. package/src/components/layouts/layouts.stories.tsx +133 -13
  383. package/src/components/layouts/totem.css +151 -50
  384. package/src/components/layouts/zoomed-full-body.css +332 -33
  385. package/src/context/widgetSurfaceContext.tsx +14 -0
  386. package/src/helpers/constants.ts +32 -1
  387. package/src/helpers/credits.ts +16 -1
  388. package/src/helpers/message.test.ts +28 -1
  389. package/src/helpers/message.ts +4 -4
  390. package/src/helpers/nats/getNatsConfig.ts +145 -0
  391. package/src/helpers/nats/isSessionExpiredError.test.ts +38 -0
  392. package/src/helpers/nats/isSessionExpiredError.ts +51 -0
  393. package/src/helpers/nats/useNats.ts +124 -0
  394. package/src/helpers/nats/useNatsSession.ts +394 -0
  395. package/src/helpers/positionPopover.test.ts +33 -0
  396. package/src/helpers/positionPopover.ts +13 -0
  397. package/src/helpers/usePressTooltip.ts +29 -0
  398. package/src/helpers/utils.test.ts +162 -0
  399. package/src/helpers/utils.ts +108 -3
  400. package/src/index.stories.tsx +32 -0
  401. package/src/locales/de.json +11 -1
  402. package/src/locales/en.json +12 -2
  403. package/src/locales/es.json +11 -1
  404. package/src/locales/fr.json +11 -1
  405. package/src/locales/it.json +12 -2
  406. package/src/styles.css +96 -12
  407. package/src/types/integration.test.ts +32 -0
  408. package/src/types/integration.ts +31 -0
  409. package/src/version.ts +1 -1
  410. package/dist/components/PositionDrawer/PositionDrawer.d.ts +0 -12
  411. package/dist/components/PositionDrawer/PositionDrawer.js +0 -17
  412. package/dist/components/PositionDrawer/PositionDrawer.js.map +0 -1
  413. package/dist/components/icons/AI.d.ts +0 -6
  414. package/dist/components/icons/AI.js +0 -6
  415. package/dist/components/icons/AI.js.map +0 -1
  416. package/dist/components/icons/Alert.d.ts +0 -6
  417. package/dist/components/icons/Alert.js +0 -6
  418. package/dist/components/icons/Alert.js.map +0 -1
  419. package/dist/components/icons/ArrowUp.d.ts +0 -6
  420. package/dist/components/icons/ArrowUp.js +0 -6
  421. package/dist/components/icons/ArrowUp.js.map +0 -1
  422. package/dist/components/icons/Bug.d.ts +0 -6
  423. package/dist/components/icons/Bug.js +0 -6
  424. package/dist/components/icons/Bug.js.map +0 -1
  425. package/dist/components/icons/Chat.d.ts +0 -6
  426. package/dist/components/icons/Chat.js +0 -6
  427. package/dist/components/icons/Chat.js.map +0 -1
  428. package/dist/components/icons/ChevronDown.d.ts +0 -6
  429. package/dist/components/icons/ChevronDown.js +0 -6
  430. package/dist/components/icons/ChevronDown.js.map +0 -1
  431. package/dist/components/icons/ChevronLeft.d.ts +0 -6
  432. package/dist/components/icons/ChevronLeft.js +0 -6
  433. package/dist/components/icons/ChevronLeft.js.map +0 -1
  434. package/dist/components/icons/ChevronRight.d.ts +0 -6
  435. package/dist/components/icons/ChevronRight.js +0 -6
  436. package/dist/components/icons/ChevronRight.js.map +0 -1
  437. package/dist/components/icons/ChevronUp.d.ts +0 -6
  438. package/dist/components/icons/ChevronUp.js +0 -6
  439. package/dist/components/icons/ChevronUp.js.map +0 -1
  440. package/dist/components/icons/Clear.d.ts +0 -6
  441. package/dist/components/icons/Clear.js +0 -6
  442. package/dist/components/icons/Clear.js.map +0 -1
  443. package/dist/components/icons/Close.d.ts +0 -7
  444. package/dist/components/icons/Close.js +0 -6
  445. package/dist/components/icons/Close.js.map +0 -1
  446. package/dist/components/icons/Code.d.ts +0 -6
  447. package/dist/components/icons/Code.js +0 -6
  448. package/dist/components/icons/Code.js.map +0 -1
  449. package/dist/components/icons/Copy.d.ts +0 -6
  450. package/dist/components/icons/Copy.js +0 -6
  451. package/dist/components/icons/Copy.js.map +0 -1
  452. package/dist/components/icons/DeepThought.d.ts +0 -6
  453. package/dist/components/icons/DeepThought.js +0 -6
  454. package/dist/components/icons/DeepThought.js.map +0 -1
  455. package/dist/components/icons/Delete.d.ts +0 -6
  456. package/dist/components/icons/Delete.js +0 -6
  457. package/dist/components/icons/Delete.js.map +0 -1
  458. package/dist/components/icons/Document.d.ts +0 -5
  459. package/dist/components/icons/Document.js +0 -10
  460. package/dist/components/icons/Document.js.map +0 -1
  461. package/dist/components/icons/Download.d.ts +0 -6
  462. package/dist/components/icons/Download.js +0 -6
  463. package/dist/components/icons/Download.js.map +0 -1
  464. package/dist/components/icons/Edit.d.ts +0 -6
  465. package/dist/components/icons/Edit.js +0 -6
  466. package/dist/components/icons/Edit.js.map +0 -1
  467. package/dist/components/icons/Expand.d.ts +0 -6
  468. package/dist/components/icons/Expand.js +0 -6
  469. package/dist/components/icons/Expand.js.map +0 -1
  470. package/dist/components/icons/Eye.d.ts +0 -6
  471. package/dist/components/icons/Eye.js +0 -6
  472. package/dist/components/icons/Eye.js.map +0 -1
  473. package/dist/components/icons/EyeInvisible.d.ts +0 -6
  474. package/dist/components/icons/EyeInvisible.js +0 -6
  475. package/dist/components/icons/EyeInvisible.js.map +0 -1
  476. package/dist/components/icons/Facebook.d.ts +0 -6
  477. package/dist/components/icons/Facebook.js +0 -6
  478. package/dist/components/icons/Facebook.js.map +0 -1
  479. package/dist/components/icons/Feedback.d.ts +0 -6
  480. package/dist/components/icons/Feedback.js +0 -6
  481. package/dist/components/icons/Feedback.js.map +0 -1
  482. package/dist/components/icons/File.d.ts +0 -6
  483. package/dist/components/icons/File.js +0 -6
  484. package/dist/components/icons/File.js.map +0 -1
  485. package/dist/components/icons/FileExcel.d.ts +0 -6
  486. package/dist/components/icons/FileExcel.js +0 -6
  487. package/dist/components/icons/FileExcel.js.map +0 -1
  488. package/dist/components/icons/FilePdf.d.ts +0 -6
  489. package/dist/components/icons/FilePdf.js +0 -6
  490. package/dist/components/icons/FilePdf.js.map +0 -1
  491. package/dist/components/icons/FileWord.d.ts +0 -6
  492. package/dist/components/icons/FileWord.js +0 -6
  493. package/dist/components/icons/FileWord.js.map +0 -1
  494. package/dist/components/icons/Fullscreen.d.ts +0 -6
  495. package/dist/components/icons/Fullscreen.js +0 -6
  496. package/dist/components/icons/Fullscreen.js.map +0 -1
  497. package/dist/components/icons/FullscreenExit.d.ts +0 -6
  498. package/dist/components/icons/FullscreenExit.js +0 -6
  499. package/dist/components/icons/FullscreenExit.js.map +0 -1
  500. package/dist/components/icons/Group.d.ts +0 -6
  501. package/dist/components/icons/Group.js +0 -6
  502. package/dist/components/icons/Group.js.map +0 -1
  503. package/dist/components/icons/History.d.ts +0 -7
  504. package/dist/components/icons/History.js +0 -6
  505. package/dist/components/icons/History.js.map +0 -1
  506. package/dist/components/icons/Image.d.ts +0 -4
  507. package/dist/components/icons/Image.js +0 -9
  508. package/dist/components/icons/Image.js.map +0 -1
  509. package/dist/components/icons/Info.d.ts +0 -6
  510. package/dist/components/icons/Info.js +0 -6
  511. package/dist/components/icons/Info.js.map +0 -1
  512. package/dist/components/icons/Link.d.ts +0 -6
  513. package/dist/components/icons/Link.js +0 -6
  514. package/dist/components/icons/Link.js.map +0 -1
  515. package/dist/components/icons/Linkedin.d.ts +0 -6
  516. package/dist/components/icons/Linkedin.js +0 -6
  517. package/dist/components/icons/Linkedin.js.map +0 -1
  518. package/dist/components/icons/Loading.d.ts +0 -7
  519. package/dist/components/icons/Loading.js +0 -10
  520. package/dist/components/icons/Loading.js.map +0 -1
  521. package/dist/components/icons/Logout.d.ts +0 -6
  522. package/dist/components/icons/Logout.js +0 -6
  523. package/dist/components/icons/Logout.js.map +0 -1
  524. package/dist/components/icons/Mail.d.ts +0 -6
  525. package/dist/components/icons/Mail.js +0 -6
  526. package/dist/components/icons/Mail.js.map +0 -1
  527. package/dist/components/icons/MapMarker.d.ts +0 -6
  528. package/dist/components/icons/MapMarker.js +0 -6
  529. package/dist/components/icons/MapMarker.js.map +0 -1
  530. package/dist/components/icons/MenuHorizontal.d.ts +0 -7
  531. package/dist/components/icons/MenuHorizontal.js +0 -6
  532. package/dist/components/icons/MenuHorizontal.js.map +0 -1
  533. package/dist/components/icons/MenuVertical.d.ts +0 -7
  534. package/dist/components/icons/MenuVertical.js +0 -6
  535. package/dist/components/icons/MenuVertical.js.map +0 -1
  536. package/dist/components/icons/Message.d.ts +0 -6
  537. package/dist/components/icons/Message.js +0 -6
  538. package/dist/components/icons/Message.js.map +0 -1
  539. package/dist/components/icons/Microphone.d.ts +0 -6
  540. package/dist/components/icons/Microphone.js +0 -6
  541. package/dist/components/icons/Microphone.js.map +0 -1
  542. package/dist/components/icons/Minus.d.ts +0 -6
  543. package/dist/components/icons/Minus.js +0 -6
  544. package/dist/components/icons/Minus.js.map +0 -1
  545. package/dist/components/icons/MinusCircle.d.ts +0 -6
  546. package/dist/components/icons/MinusCircle.js +0 -6
  547. package/dist/components/icons/MinusCircle.js.map +0 -1
  548. package/dist/components/icons/PaperClip.d.ts +0 -6
  549. package/dist/components/icons/PaperClip.js +0 -6
  550. package/dist/components/icons/PaperClip.js.map +0 -1
  551. package/dist/components/icons/Picture.d.ts +0 -6
  552. package/dist/components/icons/Picture.js +0 -6
  553. package/dist/components/icons/Picture.js.map +0 -1
  554. package/dist/components/icons/Plus.d.ts +0 -6
  555. package/dist/components/icons/Plus.js +0 -6
  556. package/dist/components/icons/Plus.js.map +0 -1
  557. package/dist/components/icons/Preview.d.ts +0 -4
  558. package/dist/components/icons/Preview.js +0 -9
  559. package/dist/components/icons/Preview.js.map +0 -1
  560. package/dist/components/icons/Print.d.ts +0 -6
  561. package/dist/components/icons/Print.js +0 -6
  562. package/dist/components/icons/Print.js.map +0 -1
  563. package/dist/components/icons/QuestionHelp.d.ts +0 -6
  564. package/dist/components/icons/QuestionHelp.js +0 -6
  565. package/dist/components/icons/QuestionHelp.js.map +0 -1
  566. package/dist/components/icons/Refresh.d.ts +0 -6
  567. package/dist/components/icons/Refresh.js +0 -6
  568. package/dist/components/icons/Refresh.js.map +0 -1
  569. package/dist/components/icons/SelectIcon.d.ts +0 -6
  570. package/dist/components/icons/SelectIcon.js +0 -6
  571. package/dist/components/icons/SelectIcon.js.map +0 -1
  572. package/dist/components/icons/Send.d.ts +0 -6
  573. package/dist/components/icons/Send.js +0 -6
  574. package/dist/components/icons/Send.js.map +0 -1
  575. package/dist/components/icons/Setting.d.ts +0 -6
  576. package/dist/components/icons/Setting.js +0 -6
  577. package/dist/components/icons/Setting.js.map +0 -1
  578. package/dist/components/icons/Share.d.ts +0 -6
  579. package/dist/components/icons/Share.js +0 -6
  580. package/dist/components/icons/Share.js.map +0 -1
  581. package/dist/components/icons/Sound.d.ts +0 -6
  582. package/dist/components/icons/Sound.js +0 -6
  583. package/dist/components/icons/Sound.js.map +0 -1
  584. package/dist/components/icons/SoundDeactivated.d.ts +0 -6
  585. package/dist/components/icons/SoundDeactivated.js +0 -6
  586. package/dist/components/icons/SoundDeactivated.js.map +0 -1
  587. package/dist/components/icons/Telegram.d.ts +0 -6
  588. package/dist/components/icons/Telegram.js +0 -6
  589. package/dist/components/icons/Telegram.js.map +0 -1
  590. package/dist/components/icons/ThumbDown.d.ts +0 -6
  591. package/dist/components/icons/ThumbDown.js +0 -6
  592. package/dist/components/icons/ThumbDown.js.map +0 -1
  593. package/dist/components/icons/ThumbUp.d.ts +0 -6
  594. package/dist/components/icons/ThumbUp.js +0 -6
  595. package/dist/components/icons/ThumbUp.js.map +0 -1
  596. package/dist/components/icons/Translation.d.ts +0 -6
  597. package/dist/components/icons/Translation.js +0 -6
  598. package/dist/components/icons/Translation.js.map +0 -1
  599. package/dist/components/icons/Twitter.d.ts +0 -6
  600. package/dist/components/icons/Twitter.js +0 -6
  601. package/dist/components/icons/Twitter.js.map +0 -1
  602. package/dist/components/icons/Upload.d.ts +0 -4
  603. package/dist/components/icons/Upload.js +0 -9
  604. package/dist/components/icons/Upload.js.map +0 -1
  605. package/dist/components/icons/User.d.ts +0 -6
  606. package/dist/components/icons/User.js +0 -6
  607. package/dist/components/icons/User.js.map +0 -1
  608. package/dist/components/icons/Warning.d.ts +0 -6
  609. package/dist/components/icons/Warning.js +0 -6
  610. package/dist/components/icons/Warning.js.map +0 -1
  611. package/dist/components/icons/WhatsApp.d.ts +0 -6
  612. package/dist/components/icons/WhatsApp.js +0 -6
  613. package/dist/components/icons/WhatsApp.js.map +0 -1
  614. package/dist/components/icons/loading.css +0 -14
  615. package/dist/components/layouts/WebsiteAssistant.d.ts +0 -4
  616. package/dist/components/layouts/WebsiteAssistant.js +0 -38
  617. package/dist/components/layouts/WebsiteAssistant.js.map +0 -1
  618. package/dist/components/layouts/website-assistant.css +0 -676
  619. package/dist/components/ui/Alert.css +0 -93
  620. package/dist/components/ui/Alert.d.ts +0 -18
  621. package/dist/components/ui/Alert.js +0 -42
  622. package/dist/components/ui/Alert.js.map +0 -1
  623. package/dist/components/ui/Button.css +0 -167
  624. package/dist/components/ui/Button.d.ts +0 -27
  625. package/dist/components/ui/Button.js +0 -23
  626. package/dist/components/ui/Button.js.map +0 -1
  627. package/dist/components/ui/Card.css +0 -65
  628. package/dist/components/ui/Card.d.ts +0 -13
  629. package/dist/components/ui/Card.js +0 -14
  630. package/dist/components/ui/Card.js.map +0 -1
  631. package/dist/components/ui/Checkbox.css +0 -116
  632. package/dist/components/ui/Checkbox.d.ts +0 -11
  633. package/dist/components/ui/Checkbox.js +0 -20
  634. package/dist/components/ui/Checkbox.js.map +0 -1
  635. package/dist/components/ui/ConfirmDialog.css +0 -42
  636. package/dist/components/ui/ConfirmDialog.d.ts +0 -11
  637. package/dist/components/ui/ConfirmDialog.js +0 -12
  638. package/dist/components/ui/ConfirmDialog.js.map +0 -1
  639. package/dist/components/ui/Details.css +0 -66
  640. package/dist/components/ui/Drawer.css +0 -270
  641. package/dist/components/ui/Drawer.d.ts +0 -46
  642. package/dist/components/ui/Drawer.js +0 -60
  643. package/dist/components/ui/Drawer.js.map +0 -1
  644. package/dist/components/ui/Dropdown.css +0 -173
  645. package/dist/components/ui/Dropdown.d.ts +0 -11
  646. package/dist/components/ui/Dropdown.js +0 -33
  647. package/dist/components/ui/Dropdown.js.map +0 -1
  648. package/dist/components/ui/Expandable.css +0 -15
  649. package/dist/components/ui/Expandable.d.ts +0 -15
  650. package/dist/components/ui/Expandable.js +0 -59
  651. package/dist/components/ui/Expandable.js.map +0 -1
  652. package/dist/components/ui/Modal.css +0 -98
  653. package/dist/components/ui/Modal.d.ts +0 -16
  654. package/dist/components/ui/Modal.js +0 -24
  655. package/dist/components/ui/Modal.js.map +0 -1
  656. package/dist/components/ui/Select.css +0 -138
  657. package/dist/components/ui/Select.d.ts +0 -17
  658. package/dist/components/ui/Select.js +0 -17
  659. package/dist/components/ui/Select.js.map +0 -1
  660. package/dist/components/ui/Slider.css +0 -192
  661. package/dist/components/ui/Slider.d.ts +0 -12
  662. package/dist/components/ui/Slider.js +0 -78
  663. package/dist/components/ui/Slider.js.map +0 -1
  664. package/dist/components/ui/Spin.css +0 -31
  665. package/dist/components/ui/Spin.d.ts +0 -9
  666. package/dist/components/ui/Spin.js +0 -12
  667. package/dist/components/ui/Spin.js.map +0 -1
  668. package/dist/components/ui/Table.css +0 -132
  669. package/dist/components/ui/Tooltip.css +0 -171
  670. package/dist/components/ui/Tooltip.d.ts +0 -11
  671. package/dist/components/ui/Tooltip.js +0 -90
  672. package/dist/components/ui/Tooltip.js.map +0 -1
  673. package/esm/components/PositionDrawer/PositionDrawer.d.ts +0 -12
  674. package/esm/components/PositionDrawer/PositionDrawer.js +0 -14
  675. package/esm/components/PositionDrawer/PositionDrawer.js.map +0 -1
  676. package/esm/components/icons/AI.d.ts +0 -6
  677. package/esm/components/icons/AI.js +0 -4
  678. package/esm/components/icons/AI.js.map +0 -1
  679. package/esm/components/icons/Alert.d.ts +0 -6
  680. package/esm/components/icons/Alert.js +0 -4
  681. package/esm/components/icons/Alert.js.map +0 -1
  682. package/esm/components/icons/ArrowUp.d.ts +0 -6
  683. package/esm/components/icons/ArrowUp.js +0 -4
  684. package/esm/components/icons/ArrowUp.js.map +0 -1
  685. package/esm/components/icons/Bug.d.ts +0 -6
  686. package/esm/components/icons/Bug.js +0 -4
  687. package/esm/components/icons/Bug.js.map +0 -1
  688. package/esm/components/icons/Chat.d.ts +0 -6
  689. package/esm/components/icons/Chat.js +0 -4
  690. package/esm/components/icons/Chat.js.map +0 -1
  691. package/esm/components/icons/ChevronDown.d.ts +0 -6
  692. package/esm/components/icons/ChevronDown.js +0 -4
  693. package/esm/components/icons/ChevronDown.js.map +0 -1
  694. package/esm/components/icons/ChevronLeft.d.ts +0 -6
  695. package/esm/components/icons/ChevronLeft.js +0 -4
  696. package/esm/components/icons/ChevronLeft.js.map +0 -1
  697. package/esm/components/icons/ChevronRight.d.ts +0 -6
  698. package/esm/components/icons/ChevronRight.js +0 -4
  699. package/esm/components/icons/ChevronRight.js.map +0 -1
  700. package/esm/components/icons/ChevronUp.d.ts +0 -6
  701. package/esm/components/icons/ChevronUp.js +0 -4
  702. package/esm/components/icons/ChevronUp.js.map +0 -1
  703. package/esm/components/icons/Clear.d.ts +0 -6
  704. package/esm/components/icons/Clear.js +0 -4
  705. package/esm/components/icons/Clear.js.map +0 -1
  706. package/esm/components/icons/Close.d.ts +0 -7
  707. package/esm/components/icons/Close.js +0 -4
  708. package/esm/components/icons/Close.js.map +0 -1
  709. package/esm/components/icons/Code.d.ts +0 -6
  710. package/esm/components/icons/Code.js +0 -4
  711. package/esm/components/icons/Code.js.map +0 -1
  712. package/esm/components/icons/Copy.d.ts +0 -6
  713. package/esm/components/icons/Copy.js +0 -4
  714. package/esm/components/icons/Copy.js.map +0 -1
  715. package/esm/components/icons/DeepThought.d.ts +0 -6
  716. package/esm/components/icons/DeepThought.js +0 -4
  717. package/esm/components/icons/DeepThought.js.map +0 -1
  718. package/esm/components/icons/Delete.d.ts +0 -6
  719. package/esm/components/icons/Delete.js +0 -4
  720. package/esm/components/icons/Delete.js.map +0 -1
  721. package/esm/components/icons/Document.d.ts +0 -5
  722. package/esm/components/icons/Document.js +0 -6
  723. package/esm/components/icons/Document.js.map +0 -1
  724. package/esm/components/icons/Download.d.ts +0 -6
  725. package/esm/components/icons/Download.js +0 -4
  726. package/esm/components/icons/Download.js.map +0 -1
  727. package/esm/components/icons/Edit.d.ts +0 -6
  728. package/esm/components/icons/Edit.js +0 -4
  729. package/esm/components/icons/Edit.js.map +0 -1
  730. package/esm/components/icons/Expand.d.ts +0 -6
  731. package/esm/components/icons/Expand.js +0 -4
  732. package/esm/components/icons/Expand.js.map +0 -1
  733. package/esm/components/icons/Eye.d.ts +0 -6
  734. package/esm/components/icons/Eye.js +0 -4
  735. package/esm/components/icons/Eye.js.map +0 -1
  736. package/esm/components/icons/EyeInvisible.d.ts +0 -6
  737. package/esm/components/icons/EyeInvisible.js +0 -4
  738. package/esm/components/icons/EyeInvisible.js.map +0 -1
  739. package/esm/components/icons/Facebook.d.ts +0 -6
  740. package/esm/components/icons/Facebook.js +0 -4
  741. package/esm/components/icons/Facebook.js.map +0 -1
  742. package/esm/components/icons/Feedback.d.ts +0 -6
  743. package/esm/components/icons/Feedback.js +0 -4
  744. package/esm/components/icons/Feedback.js.map +0 -1
  745. package/esm/components/icons/File.d.ts +0 -6
  746. package/esm/components/icons/File.js +0 -4
  747. package/esm/components/icons/File.js.map +0 -1
  748. package/esm/components/icons/FileExcel.d.ts +0 -6
  749. package/esm/components/icons/FileExcel.js +0 -4
  750. package/esm/components/icons/FileExcel.js.map +0 -1
  751. package/esm/components/icons/FilePdf.d.ts +0 -6
  752. package/esm/components/icons/FilePdf.js +0 -4
  753. package/esm/components/icons/FilePdf.js.map +0 -1
  754. package/esm/components/icons/FileWord.d.ts +0 -6
  755. package/esm/components/icons/FileWord.js +0 -4
  756. package/esm/components/icons/FileWord.js.map +0 -1
  757. package/esm/components/icons/Fullscreen.d.ts +0 -6
  758. package/esm/components/icons/Fullscreen.js +0 -4
  759. package/esm/components/icons/Fullscreen.js.map +0 -1
  760. package/esm/components/icons/FullscreenExit.d.ts +0 -6
  761. package/esm/components/icons/FullscreenExit.js +0 -4
  762. package/esm/components/icons/FullscreenExit.js.map +0 -1
  763. package/esm/components/icons/Group.d.ts +0 -6
  764. package/esm/components/icons/Group.js +0 -4
  765. package/esm/components/icons/Group.js.map +0 -1
  766. package/esm/components/icons/History.d.ts +0 -7
  767. package/esm/components/icons/History.js +0 -4
  768. package/esm/components/icons/History.js.map +0 -1
  769. package/esm/components/icons/Image.d.ts +0 -4
  770. package/esm/components/icons/Image.js +0 -5
  771. package/esm/components/icons/Image.js.map +0 -1
  772. package/esm/components/icons/Info.d.ts +0 -6
  773. package/esm/components/icons/Info.js +0 -4
  774. package/esm/components/icons/Info.js.map +0 -1
  775. package/esm/components/icons/Link.d.ts +0 -6
  776. package/esm/components/icons/Link.js +0 -4
  777. package/esm/components/icons/Link.js.map +0 -1
  778. package/esm/components/icons/Linkedin.d.ts +0 -6
  779. package/esm/components/icons/Linkedin.js +0 -4
  780. package/esm/components/icons/Linkedin.js.map +0 -1
  781. package/esm/components/icons/Loading.d.ts +0 -7
  782. package/esm/components/icons/Loading.js +0 -7
  783. package/esm/components/icons/Loading.js.map +0 -1
  784. package/esm/components/icons/Logout.d.ts +0 -6
  785. package/esm/components/icons/Logout.js +0 -4
  786. package/esm/components/icons/Logout.js.map +0 -1
  787. package/esm/components/icons/Mail.d.ts +0 -6
  788. package/esm/components/icons/Mail.js +0 -4
  789. package/esm/components/icons/Mail.js.map +0 -1
  790. package/esm/components/icons/MapMarker.d.ts +0 -6
  791. package/esm/components/icons/MapMarker.js +0 -4
  792. package/esm/components/icons/MapMarker.js.map +0 -1
  793. package/esm/components/icons/MenuHorizontal.d.ts +0 -7
  794. package/esm/components/icons/MenuHorizontal.js +0 -4
  795. package/esm/components/icons/MenuHorizontal.js.map +0 -1
  796. package/esm/components/icons/MenuVertical.d.ts +0 -7
  797. package/esm/components/icons/MenuVertical.js +0 -4
  798. package/esm/components/icons/MenuVertical.js.map +0 -1
  799. package/esm/components/icons/Message.d.ts +0 -6
  800. package/esm/components/icons/Message.js +0 -4
  801. package/esm/components/icons/Message.js.map +0 -1
  802. package/esm/components/icons/Microphone.d.ts +0 -6
  803. package/esm/components/icons/Microphone.js +0 -4
  804. package/esm/components/icons/Microphone.js.map +0 -1
  805. package/esm/components/icons/Minus.d.ts +0 -6
  806. package/esm/components/icons/Minus.js +0 -4
  807. package/esm/components/icons/Minus.js.map +0 -1
  808. package/esm/components/icons/MinusCircle.d.ts +0 -6
  809. package/esm/components/icons/MinusCircle.js +0 -4
  810. package/esm/components/icons/MinusCircle.js.map +0 -1
  811. package/esm/components/icons/PaperClip.d.ts +0 -6
  812. package/esm/components/icons/PaperClip.js +0 -4
  813. package/esm/components/icons/PaperClip.js.map +0 -1
  814. package/esm/components/icons/Picture.d.ts +0 -6
  815. package/esm/components/icons/Picture.js +0 -4
  816. package/esm/components/icons/Picture.js.map +0 -1
  817. package/esm/components/icons/Plus.d.ts +0 -6
  818. package/esm/components/icons/Plus.js +0 -4
  819. package/esm/components/icons/Plus.js.map +0 -1
  820. package/esm/components/icons/Preview.d.ts +0 -4
  821. package/esm/components/icons/Preview.js +0 -5
  822. package/esm/components/icons/Preview.js.map +0 -1
  823. package/esm/components/icons/Print.d.ts +0 -6
  824. package/esm/components/icons/Print.js +0 -4
  825. package/esm/components/icons/Print.js.map +0 -1
  826. package/esm/components/icons/QuestionHelp.d.ts +0 -6
  827. package/esm/components/icons/QuestionHelp.js +0 -4
  828. package/esm/components/icons/QuestionHelp.js.map +0 -1
  829. package/esm/components/icons/Refresh.d.ts +0 -6
  830. package/esm/components/icons/Refresh.js +0 -4
  831. package/esm/components/icons/Refresh.js.map +0 -1
  832. package/esm/components/icons/SelectIcon.d.ts +0 -6
  833. package/esm/components/icons/SelectIcon.js +0 -4
  834. package/esm/components/icons/SelectIcon.js.map +0 -1
  835. package/esm/components/icons/Send.d.ts +0 -6
  836. package/esm/components/icons/Send.js +0 -4
  837. package/esm/components/icons/Send.js.map +0 -1
  838. package/esm/components/icons/Setting.d.ts +0 -6
  839. package/esm/components/icons/Setting.js +0 -4
  840. package/esm/components/icons/Setting.js.map +0 -1
  841. package/esm/components/icons/Share.d.ts +0 -6
  842. package/esm/components/icons/Share.js +0 -4
  843. package/esm/components/icons/Share.js.map +0 -1
  844. package/esm/components/icons/Sound.d.ts +0 -6
  845. package/esm/components/icons/Sound.js +0 -4
  846. package/esm/components/icons/Sound.js.map +0 -1
  847. package/esm/components/icons/SoundDeactivated.d.ts +0 -6
  848. package/esm/components/icons/SoundDeactivated.js +0 -4
  849. package/esm/components/icons/SoundDeactivated.js.map +0 -1
  850. package/esm/components/icons/Telegram.d.ts +0 -6
  851. package/esm/components/icons/Telegram.js +0 -4
  852. package/esm/components/icons/Telegram.js.map +0 -1
  853. package/esm/components/icons/ThumbDown.d.ts +0 -6
  854. package/esm/components/icons/ThumbDown.js +0 -4
  855. package/esm/components/icons/ThumbDown.js.map +0 -1
  856. package/esm/components/icons/ThumbUp.d.ts +0 -6
  857. package/esm/components/icons/ThumbUp.js +0 -4
  858. package/esm/components/icons/ThumbUp.js.map +0 -1
  859. package/esm/components/icons/Translation.d.ts +0 -6
  860. package/esm/components/icons/Translation.js +0 -4
  861. package/esm/components/icons/Translation.js.map +0 -1
  862. package/esm/components/icons/Twitter.d.ts +0 -6
  863. package/esm/components/icons/Twitter.js +0 -4
  864. package/esm/components/icons/Twitter.js.map +0 -1
  865. package/esm/components/icons/Upload.d.ts +0 -4
  866. package/esm/components/icons/Upload.js +0 -5
  867. package/esm/components/icons/Upload.js.map +0 -1
  868. package/esm/components/icons/User.d.ts +0 -6
  869. package/esm/components/icons/User.js +0 -4
  870. package/esm/components/icons/User.js.map +0 -1
  871. package/esm/components/icons/Warning.d.ts +0 -6
  872. package/esm/components/icons/Warning.js +0 -4
  873. package/esm/components/icons/Warning.js.map +0 -1
  874. package/esm/components/icons/WhatsApp.d.ts +0 -6
  875. package/esm/components/icons/WhatsApp.js +0 -4
  876. package/esm/components/icons/WhatsApp.js.map +0 -1
  877. package/esm/components/icons/loading.css +0 -14
  878. package/esm/components/layouts/WebsiteAssistant.d.ts +0 -4
  879. package/esm/components/layouts/WebsiteAssistant.js +0 -35
  880. package/esm/components/layouts/WebsiteAssistant.js.map +0 -1
  881. package/esm/components/layouts/website-assistant.css +0 -676
  882. package/esm/components/ui/Alert.css +0 -93
  883. package/esm/components/ui/Alert.d.ts +0 -18
  884. package/esm/components/ui/Alert.js +0 -39
  885. package/esm/components/ui/Alert.js.map +0 -1
  886. package/esm/components/ui/Button.css +0 -167
  887. package/esm/components/ui/Button.d.ts +0 -27
  888. package/esm/components/ui/Button.js +0 -20
  889. package/esm/components/ui/Button.js.map +0 -1
  890. package/esm/components/ui/Card.css +0 -65
  891. package/esm/components/ui/Card.d.ts +0 -13
  892. package/esm/components/ui/Card.js +0 -11
  893. package/esm/components/ui/Card.js.map +0 -1
  894. package/esm/components/ui/Checkbox.css +0 -116
  895. package/esm/components/ui/Checkbox.d.ts +0 -11
  896. package/esm/components/ui/Checkbox.js +0 -17
  897. package/esm/components/ui/Checkbox.js.map +0 -1
  898. package/esm/components/ui/ConfirmDialog.css +0 -42
  899. package/esm/components/ui/ConfirmDialog.d.ts +0 -11
  900. package/esm/components/ui/ConfirmDialog.js +0 -9
  901. package/esm/components/ui/ConfirmDialog.js.map +0 -1
  902. package/esm/components/ui/Details.css +0 -66
  903. package/esm/components/ui/Drawer.css +0 -270
  904. package/esm/components/ui/Drawer.d.ts +0 -46
  905. package/esm/components/ui/Drawer.js +0 -57
  906. package/esm/components/ui/Drawer.js.map +0 -1
  907. package/esm/components/ui/Dropdown.css +0 -173
  908. package/esm/components/ui/Dropdown.d.ts +0 -11
  909. package/esm/components/ui/Dropdown.js +0 -30
  910. package/esm/components/ui/Dropdown.js.map +0 -1
  911. package/esm/components/ui/Expandable.css +0 -15
  912. package/esm/components/ui/Expandable.d.ts +0 -15
  913. package/esm/components/ui/Expandable.js +0 -56
  914. package/esm/components/ui/Expandable.js.map +0 -1
  915. package/esm/components/ui/Modal.css +0 -98
  916. package/esm/components/ui/Modal.d.ts +0 -16
  917. package/esm/components/ui/Modal.js +0 -21
  918. package/esm/components/ui/Modal.js.map +0 -1
  919. package/esm/components/ui/Select.css +0 -138
  920. package/esm/components/ui/Select.d.ts +0 -17
  921. package/esm/components/ui/Select.js +0 -14
  922. package/esm/components/ui/Select.js.map +0 -1
  923. package/esm/components/ui/Slider.css +0 -192
  924. package/esm/components/ui/Slider.d.ts +0 -12
  925. package/esm/components/ui/Slider.js +0 -75
  926. package/esm/components/ui/Slider.js.map +0 -1
  927. package/esm/components/ui/Spin.css +0 -31
  928. package/esm/components/ui/Spin.d.ts +0 -9
  929. package/esm/components/ui/Spin.js +0 -9
  930. package/esm/components/ui/Spin.js.map +0 -1
  931. package/esm/components/ui/Table.css +0 -132
  932. package/esm/components/ui/Tooltip.css +0 -171
  933. package/esm/components/ui/Tooltip.d.ts +0 -11
  934. package/esm/components/ui/Tooltip.js +0 -87
  935. package/esm/components/ui/Tooltip.js.map +0 -1
@@ -26,6 +26,7 @@ import {
26
26
  Brain,
27
27
  MapPin,
28
28
  ChevronDown,
29
+ ChevronUp,
29
30
  ChevronRight,
30
31
  Users,
31
32
  User as UserIcon,
@@ -377,19 +378,61 @@ const Header: React.FC<Props> = ({
377
378
  const isFullPageChrome = layout === 'FULLPAGE' || layout === 'CHAT';
378
379
  const showFullpageChromeDividers = layout !== 'CHAT' && showFullpageDividers;
379
380
  const fullpageGuestChrome = layout === 'FULLPAGE' && !loginToken;
381
+
382
+ // Sticky header solid background when the conversation list scrolls.
383
+ useEffect(() => {
384
+ if (!isFullPageChrome) return;
385
+
386
+ const historyEl = document.querySelector(
387
+ '.memori-widget .memori-chat--history'
388
+ ) as HTMLElement | null;
389
+ if (!historyEl) return;
390
+
391
+ const syncScrolled = () => {
392
+ const scrolled = historyEl.scrollTop > 2;
393
+ document
394
+ .querySelectorAll(
395
+ '.memori-widget .memori-chat-layout--header, .memori-widget .memori-fullpage-top-header, .memori-widget .memori-fullpage-header-row'
396
+ )
397
+ .forEach(node => {
398
+ node.classList.toggle('memori-header--scrolled', scrolled);
399
+ });
400
+ };
401
+
402
+ syncScrolled();
403
+ historyEl.addEventListener('scroll', syncScrolled, { passive: true });
404
+ return () => {
405
+ historyEl.removeEventListener('scroll', syncScrolled);
406
+ document
407
+ .querySelectorAll('.memori-header--scrolled')
408
+ .forEach(node => node.classList.remove('memori-header--scrolled'));
409
+ };
410
+ }, [isFullPageChrome, sessionID, hasUserActivatedSpeak]);
411
+
380
412
  const chatHistoryButtonLabel =
381
- layout === 'TOTEM'
382
- ? undefined
383
- : layout === 'FULLPAGE' || layout === 'CHAT' || layout === 'HIDDEN_CHAT'
384
- ? t('widget.headerHistory') || t('write_and_speak.chatHistory')
385
- : t('write_and_speak.chatHistory');
386
- const fullpageHeaderProfileLabel =
387
- t('widget.headerProfile') || t('login.user') || 'Profile';
413
+ layout === 'TOTEM' ? undefined : t('widget.headerHistory') || 'History';
388
414
  const fullpageHeaderLoginLabel =
389
415
  t('widget.headerLogin') || t('login.login') || 'Login';
416
+ const soundLabel = speakerMuted
417
+ ? t('widget.soundOff', { defaultValue: 'Audio off' })
418
+ : t('widget.sound', { defaultValue: 'Audio' });
419
+ const fullscreenLabel = fullScreen
420
+ ? t('fullscreenExit') || 'Exit fullscreen'
421
+ : t('fullscreenEnter') || 'Full screen';
390
422
  const isAuthenticated = !!loginToken && !!user;
391
423
  const isConversationStarted = Boolean(sessionID && hasUserActivatedSpeak);
392
424
 
425
+ const brandTitle = memori?.name?.trim() || '';
426
+ const brandRole = useMemo(() => {
427
+ const raw = memori?.description?.trim();
428
+ if (!raw) return '';
429
+ return raw
430
+ .replace(/<[^>]+>/g, ' ')
431
+ .replace(/\s+/g, ' ')
432
+ .trim()
433
+ .slice(0, 140);
434
+ }, [memori?.description]);
435
+
393
436
  const brandAvatarSrc = useMemo(() => {
394
437
  if (!isFullPageChrome || !memori) return undefined;
395
438
 
@@ -481,15 +524,11 @@ const Header: React.FC<Props> = ({
481
524
  variant={buttonVariant}
482
525
  className={cx(
483
526
  'memori-dropdown--user-trigger-button',
484
- isFullPageChrome &&
485
- 'memori-header--fullpage-labeled-trigger',
486
527
  userPopoverOpen && 'memori-button--active'
487
528
  )}
488
529
  aria-label={t('login.user') || 'User'}
489
530
  icon={<UserIcon />}
490
- >
491
- {isFullPageChrome ? fullpageHeaderProfileLabel : null}
492
- </Button>
531
+ />
493
532
  </span>
494
533
  </Tooltip>
495
534
  ),
@@ -594,9 +633,10 @@ const Header: React.FC<Props> = ({
594
633
  <Tooltip title={t('login.login') || 'Login'} placement="bottom">
595
634
  <span style={{ display: 'inline-flex' }}>
596
635
  <Button
597
- variant={buttonVariant}
636
+ variant={isFullPageChrome ? 'primary' : buttonVariant}
598
637
  className="memori-header--button memori-header--button-login"
599
638
  icon={<UserIcon />}
639
+ title={t('login.login') || 'Login'}
600
640
  aria-label={t('login.login') || 'Login'}
601
641
  onClick={() => setShowLoginDrawer(true)}
602
642
  >
@@ -686,22 +726,12 @@ const Header: React.FC<Props> = ({
686
726
  />
687
727
  )}
688
728
  {showFullscreen && fullScreenAvailable && (
689
- <Tooltip
690
- title={
691
- fullScreen
692
- ? t('fullscreenExit') || 'Exit fullscreen'
693
- : t('fullscreenEnter') || 'Enter fullscreen'
694
- }
695
- placement="bottom"
696
- >
729
+ <Tooltip title={fullscreenLabel} placement="bottom">
697
730
  <span style={{ display: 'inline-flex' }}>
698
731
  <Button
699
732
  variant={buttonVariant}
700
- aria-label={
701
- fullScreen
702
- ? t('fullscreenExit') || 'Exit fullscreen'
703
- : t('fullscreenEnter') || 'Enter fullscreen'
704
- }
733
+ title={fullscreenLabel}
734
+ aria-label={fullscreenLabel}
705
735
  icon={fullScreen ? <Maximize /> : <Minimize />}
706
736
  onClick={
707
737
  fullScreenHandler ||
@@ -805,12 +835,13 @@ const Header: React.FC<Props> = ({
805
835
  </Tooltip>
806
836
  )}
807
837
  {enableAudio && (
808
- <Tooltip title={t('widget.sound') || 'Sound'} placement="bottom">
838
+ <Tooltip title={soundLabel} placement="bottom">
809
839
  <span style={{ display: 'inline-flex' }}>
810
840
  <Button
811
841
  variant={buttonVariant}
812
842
  icon={speakerMuted ? <VolumeX /> : <Volume2 />}
813
- aria-label={t('widget.sound') || 'Sound'}
843
+ title={soundLabel}
844
+ aria-label={soundLabel}
814
845
  onClick={() => setSpeakerMuted(!speakerMuted)}
815
846
  />
816
847
  </span>
@@ -927,13 +958,14 @@ const Header: React.FC<Props> = ({
927
958
  history={history}
928
959
  triggerVariant={buttonVariant}
929
960
  menuAlign="start"
930
- trigger={triggerProps => (
961
+ trigger={(triggerProps, { open }) => (
931
962
  <button
932
963
  {...triggerProps}
933
964
  type="button"
934
965
  className={cx(
935
966
  'memori-dropdown--auth-row',
936
967
  'memori-dropdown--auth-row--navigable',
968
+ open && 'memori-dropdown--auth-row--active',
937
969
  triggerProps.className
938
970
  )}
939
971
  >
@@ -948,7 +980,11 @@ const Header: React.FC<Props> = ({
948
980
  {sessionInfoConsumptionSubtitle}
949
981
  </span>
950
982
  </span>
951
- <ChevronDown size={16} aria-hidden />
983
+ {open ? (
984
+ <ChevronDown size={16} aria-hidden />
985
+ ) : (
986
+ <ChevronUp size={16} aria-hidden />
987
+ )}
952
988
  </button>
953
989
  )}
954
990
  />
@@ -969,7 +1005,7 @@ const Header: React.FC<Props> = ({
969
1005
  {sessionInfoConsumptionSubtitle}
970
1006
  </span>
971
1007
  </span>
972
- <ChevronDown size={16} aria-hidden />
1008
+ <ChevronUp size={16} aria-hidden />
973
1009
  </button>
974
1010
  )}
975
1011
  </div>
@@ -979,23 +1015,13 @@ const Header: React.FC<Props> = ({
979
1015
  </Popover>
980
1016
  )}
981
1017
  {showFullscreen && fullScreenAvailable && (
982
- <Tooltip
983
- title={
984
- fullScreen
985
- ? t('fullscreenExit') || 'Exit fullscreen'
986
- : t('fullscreenEnter') || 'Enter fullscreen'
987
- }
988
- placement="bottom"
989
- >
1018
+ <Tooltip title={fullscreenLabel} placement="bottom">
990
1019
  <span style={{ display: 'inline-flex' }}>
991
1020
  <Button
992
1021
  variant={buttonVariant}
993
1022
  className="memori-header--auth-icon-button"
994
- aria-label={
995
- fullScreen
996
- ? t('fullscreenExit') || 'Exit fullscreen'
997
- : t('fullscreenEnter') || 'Enter fullscreen'
998
- }
1023
+ title={fullscreenLabel}
1024
+ aria-label={fullscreenLabel}
999
1025
  icon={fullScreen ? <Minimize /> : <Maximize />}
1000
1026
  onClick={
1001
1027
  fullScreenHandler ||
@@ -1057,12 +1083,13 @@ const Header: React.FC<Props> = ({
1057
1083
  </Tooltip>
1058
1084
  )}
1059
1085
  {enableAudio && (
1060
- <Tooltip title={t('widget.sound') || 'Sound'} placement="bottom">
1086
+ <Tooltip title={soundLabel} placement="bottom">
1061
1087
  <span style={{ display: 'inline-flex' }}>
1062
1088
  <Button
1063
1089
  variant={buttonVariant}
1064
1090
  className="memori-header--auth-icon-button"
1065
- aria-label={t('widget.sound') || 'Sound'}
1091
+ title={soundLabel}
1092
+ aria-label={soundLabel}
1066
1093
  icon={speakerMuted ? <VolumeX /> : <Volume2 />}
1067
1094
  onClick={() => setSpeakerMuted(!speakerMuted)}
1068
1095
  />
@@ -1114,6 +1141,241 @@ const Header: React.FC<Props> = ({
1114
1141
  </div>
1115
1142
  );
1116
1143
 
1144
+ const handleTotemFullscreen = (
1145
+ e: React.MouseEvent<HTMLButtonElement>
1146
+ ) => {
1147
+ if (fullScreenHandler) {
1148
+ fullScreenHandler(e);
1149
+ return;
1150
+ }
1151
+ if (!document.fullscreenElement) {
1152
+ document.documentElement
1153
+ .requestFullscreen?.()
1154
+ .then(() => setFullScreen(true))
1155
+ .catch(() => {});
1156
+ } else {
1157
+ document
1158
+ .exitFullscreen?.()
1159
+ .then(() => setFullScreen(false))
1160
+ .catch(() => {});
1161
+ }
1162
+ };
1163
+
1164
+ const totemAccountLabel = t('login.user') || 'Account';
1165
+ const totemResetLabel = t('reload') || 'Restart conversation';
1166
+ const totemSettingsLabel = t('widget.settings') || 'Settings';
1167
+ const totemKnownFactsLabel = t('knownFacts.title') || 'Known facts';
1168
+ const totemShowSettings =
1169
+ showSettings && hasSettingsContent(layout, additionalSettings);
1170
+ const totemShowKnownFacts =
1171
+ !!memori.enableDeepThought &&
1172
+ !!loginToken &&
1173
+ !!user?.pAndCUAccepted &&
1174
+ hasUserActivatedSpeak &&
1175
+ !!sessionID;
1176
+
1177
+ // TOTEM rail: two-tier grouping inside one bordered container (section 5).
1178
+ // Tier 1 (visible): session utilities — audio, fullscreen, share.
1179
+ // Tier 2 (profile menu): account items — reset, settings, user data, logout.
1180
+ const totemRail = (
1181
+ <div
1182
+ className={cx('memori-totem-rail', className)}
1183
+ role="toolbar"
1184
+ aria-label={String(
1185
+ t('widget.sessionControls', { defaultValue: 'Controlli' })
1186
+ )}
1187
+ aria-orientation="vertical"
1188
+ >
1189
+ <div className="memori-totem-rail--group">
1190
+ {enableAudio && (
1191
+ <Tooltip title={soundLabel} placement="left">
1192
+ <span style={{ display: 'inline-flex' }}>
1193
+ <Button
1194
+ variant={buttonVariant}
1195
+ className="memori-totem-rail--button"
1196
+ icon={speakerMuted ? <VolumeX /> : <Volume2 />}
1197
+ title={soundLabel}
1198
+ aria-label={soundLabel}
1199
+ aria-pressed={speakerMuted}
1200
+ onClick={() => setSpeakerMuted(!speakerMuted)}
1201
+ />
1202
+ </span>
1203
+ </Tooltip>
1204
+ )}
1205
+ {showFullscreen && fullScreenAvailable && (
1206
+ <Tooltip title={fullscreenLabel} placement="left">
1207
+ <span style={{ display: 'inline-flex' }}>
1208
+ <Button
1209
+ variant={buttonVariant}
1210
+ className="memori-totem-rail--button"
1211
+ icon={fullScreen ? <Minimize /> : <Maximize />}
1212
+ title={fullscreenLabel}
1213
+ aria-label={fullscreenLabel}
1214
+ aria-pressed={fullScreen}
1215
+ onClick={handleTotemFullscreen}
1216
+ />
1217
+ </span>
1218
+ </Tooltip>
1219
+ )}
1220
+ {showShare && (
1221
+ <ShareButton
1222
+ title={memori.name}
1223
+ memori={memori}
1224
+ sessionID={sessionID}
1225
+ tenant={tenant}
1226
+ showQrCode
1227
+ align="left"
1228
+ baseUrl={baseUrl}
1229
+ history={history}
1230
+ triggerVariant={buttonVariant}
1231
+ className="memori-totem-rail--button"
1232
+ />
1233
+ )}
1234
+ </div>
1235
+
1236
+ <div className="memori-totem-rail--divider" aria-hidden="true" />
1237
+
1238
+ <div className="memori-totem-rail--group">
1239
+ <Popover
1240
+ className="memori-header--dropdown"
1241
+ open={userPopoverOpen}
1242
+ onOpenChange={open => {
1243
+ setUserPopoverOpen(open);
1244
+ if (open) {
1245
+ setInfoPopoverOpen(false);
1246
+ setPositionPopoverOpen(false);
1247
+ }
1248
+ }}
1249
+ placement="left-start"
1250
+ sideOffset={8}
1251
+ closable={false}
1252
+ contentClassName="memori-dropdown--menu memori-totem-rail--menu"
1253
+ slotProps={{
1254
+ trigger: {
1255
+ render: (props: React.ComponentProps<typeof Button>) => (
1256
+ <Tooltip title={totemAccountLabel} placement="left">
1257
+ <span style={{ display: 'inline-flex' }}>
1258
+ <Button
1259
+ {...props}
1260
+ variant={buttonVariant}
1261
+ className={cx(
1262
+ 'memori-totem-rail--button',
1263
+ 'memori-totem-rail--account-trigger',
1264
+ userPopoverOpen && 'memori-button--active'
1265
+ )}
1266
+ title={totemAccountLabel}
1267
+ aria-label={totemAccountLabel}
1268
+ icon={<UserIcon />}
1269
+ />
1270
+ </span>
1271
+ </Tooltip>
1272
+ ),
1273
+ },
1274
+ }}
1275
+ content={
1276
+ <div className="memori-totem-rail--menu-content">
1277
+ {isAuthenticated && (
1278
+ <div className="memori-totem-rail--menu-identity">
1279
+ <span className="memori-totem-rail--menu-identity-name">
1280
+ {user?.userName || t('login.welcomeUser')}
1281
+ </span>
1282
+ {user?.eMail && (
1283
+ <span className="memori-totem-rail--menu-identity-email">
1284
+ {user.eMail}
1285
+ </span>
1286
+ )}
1287
+ </div>
1288
+ )}
1289
+ {showReload && (
1290
+ <Button
1291
+ type="button"
1292
+ variant="ghost"
1293
+ className="memori-totem-rail--menu-item"
1294
+ icon={<RefreshCw size={18} aria-hidden />}
1295
+ title={totemResetLabel}
1296
+ aria-label={totemResetLabel}
1297
+ onClick={() => {
1298
+ setUserPopoverOpen(false);
1299
+ window.location.reload();
1300
+ }}
1301
+ >
1302
+ {totemResetLabel}
1303
+ </Button>
1304
+ )}
1305
+ {totemShowSettings && (
1306
+ <Button
1307
+ type="button"
1308
+ variant="ghost"
1309
+ className="memori-totem-rail--menu-item"
1310
+ icon={<Settings size={18} aria-hidden />}
1311
+ title={totemSettingsLabel}
1312
+ aria-label={totemSettingsLabel}
1313
+ onClick={() => {
1314
+ setUserPopoverOpen(false);
1315
+ setShowSettingsDrawer(true);
1316
+ }}
1317
+ >
1318
+ {totemSettingsLabel}
1319
+ </Button>
1320
+ )}
1321
+ {totemShowKnownFacts && (
1322
+ <Button
1323
+ type="button"
1324
+ variant="ghost"
1325
+ className="memori-totem-rail--menu-item"
1326
+ icon={<Brain size={18} aria-hidden />}
1327
+ title={totemKnownFactsLabel}
1328
+ aria-label={totemKnownFactsLabel}
1329
+ onClick={() => {
1330
+ setUserPopoverOpen(false);
1331
+ setShowKnownFactsDrawer(true);
1332
+ }}
1333
+ >
1334
+ {totemKnownFactsLabel}
1335
+ </Button>
1336
+ )}
1337
+ {isAuthenticated ? (
1338
+ <Button
1339
+ type="button"
1340
+ variant="ghost"
1341
+ className="memori-totem-rail--menu-item memori-totem-rail--menu-item--logout"
1342
+ icon={<LogOut size={18} aria-hidden />}
1343
+ title={t('login.logout') || 'Logout'}
1344
+ aria-label={t('login.logout') || 'Logout'}
1345
+ onClick={() => {
1346
+ setUserPopoverOpen(false);
1347
+ onLogout?.();
1348
+ }}
1349
+ >
1350
+ {t('login.logout') || 'Logout'}
1351
+ </Button>
1352
+ ) : (
1353
+ showLogin && (
1354
+ <Button
1355
+ type="button"
1356
+ variant="ghost"
1357
+ className="memori-totem-rail--menu-item"
1358
+ icon={<UserIcon size={18} aria-hidden />}
1359
+ title={t('login.login') || 'Login'}
1360
+ aria-label={t('login.login') || 'Login'}
1361
+ onClick={() => {
1362
+ setUserPopoverOpen(false);
1363
+ setShowLoginDrawer(true);
1364
+ }}
1365
+ >
1366
+ {t('login.login') || 'Login'}
1367
+ </Button>
1368
+ )
1369
+ )}
1370
+ </div>
1371
+ }
1372
+ >
1373
+ {null}
1374
+ </Popover>
1375
+ </div>
1376
+ </div>
1377
+ );
1378
+
1117
1379
  const headerControls = (
1118
1380
  <div
1119
1381
  className={cx(
@@ -1193,6 +1455,10 @@ const Header: React.FC<Props> = ({
1193
1455
  </div>
1194
1456
  );
1195
1457
 
1458
+ if (layout === 'TOTEM') {
1459
+ return totemRail;
1460
+ }
1461
+
1196
1462
  if (!isFullPageChrome) {
1197
1463
  return headerControls;
1198
1464
  }
@@ -1211,13 +1477,25 @@ const Header: React.FC<Props> = ({
1211
1477
  ) : (
1212
1478
  <span className="memori-fullpage-header-brand-icon" aria-hidden />
1213
1479
  )}
1214
- {isConversationStarted && (
1215
- <span
1216
- className="memori-fullpage-header-brand-name"
1217
- title={memori.name}
1218
- >
1219
- {memori.name}
1220
- </span>
1480
+ {(brandTitle || brandRole) && (
1481
+ <div className="memori-fullpage-header-brand-text">
1482
+ {brandTitle ? (
1483
+ <span
1484
+ className="memori-fullpage-header-brand-name"
1485
+ title={brandTitle}
1486
+ >
1487
+ {brandTitle}
1488
+ </span>
1489
+ ) : null}
1490
+ {brandRole ? (
1491
+ <span
1492
+ className="memori-fullpage-header-brand-role"
1493
+ title={brandRole}
1494
+ >
1495
+ {brandRole}
1496
+ </span>
1497
+ ) : null}
1498
+ </div>
1221
1499
  )}
1222
1500
  </div>
1223
1501
  )}