@memori.ai/memori-react 8.45.2 → 8.45.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (729) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/dist/components/Chat/Chat.d.ts +1 -0
  3. package/dist/components/Chat/Chat.js +6 -3
  4. package/dist/components/Chat/Chat.js.map +1 -1
  5. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.css +78 -0
  6. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.d.ts +39 -0
  7. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.js +43 -0
  8. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.js.map +1 -0
  9. package/dist/components/ChatInputs/ChatInputs.d.ts +1 -0
  10. package/dist/components/ChatInputs/ChatInputs.js +2 -2
  11. package/dist/components/ChatInputs/ChatInputs.js.map +1 -1
  12. package/dist/components/ContentPreviewModal/DocumentMarkdown.d.ts +7 -0
  13. package/dist/components/ContentPreviewModal/DocumentMarkdown.js +31 -0
  14. package/dist/components/ContentPreviewModal/DocumentMarkdown.js.map +1 -0
  15. package/dist/components/DrawerFooter/DrawerFooter.css +62 -0
  16. package/dist/components/DrawerFooter/DrawerFooter.d.ts +12 -0
  17. package/dist/components/DrawerFooter/DrawerFooter.js +10 -0
  18. package/dist/components/DrawerFooter/DrawerFooter.js.map +1 -0
  19. package/dist/components/IconButton/IconButton.css +135 -0
  20. package/dist/components/IconButton/IconButton.d.ts +9 -0
  21. package/dist/components/IconButton/IconButton.js +36 -0
  22. package/dist/components/IconButton/IconButton.js.map +1 -0
  23. package/dist/components/LoginModal/LoginModal.css +270 -0
  24. package/dist/components/LoginModal/LoginModal.d.ts +19 -0
  25. package/dist/components/LoginModal/LoginModal.js +355 -0
  26. package/dist/components/LoginModal/LoginModal.js.map +1 -0
  27. package/dist/components/MemoriWidget/MemoriWidget.d.ts +2 -2
  28. package/dist/components/MemoriWidget/MemoriWidget.js +13 -21
  29. package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
  30. package/dist/components/MobileSessionPanel/MobileSessionPanel.css +540 -0
  31. package/dist/components/MobileSessionPanel/MobileSessionPanel.d.ts +65 -0
  32. package/dist/components/MobileSessionPanel/MobileSessionPanel.js +254 -0
  33. package/dist/components/MobileSessionPanel/MobileSessionPanel.js.map +1 -0
  34. package/dist/components/PositionPopover/PositionPopover.css +218 -0
  35. package/dist/components/PositionPopover/PositionPopover.d.ts +22 -0
  36. package/dist/components/PositionPopover/PositionPopover.js +208 -0
  37. package/dist/components/PositionPopover/PositionPopover.js.map +1 -0
  38. package/dist/components/ReasoningBlock/ReasoningBlock.css +156 -0
  39. package/dist/components/ReasoningBlock/ReasoningBlock.d.ts +7 -0
  40. package/dist/components/ReasoningBlock/ReasoningBlock.js +61 -0
  41. package/dist/components/ReasoningBlock/ReasoningBlock.js.map +1 -0
  42. package/dist/components/SideDrawer/SideDrawer.css +112 -0
  43. package/dist/components/SideDrawer/SideDrawer.d.ts +22 -0
  44. package/dist/components/SideDrawer/SideDrawer.js +17 -0
  45. package/dist/components/SideDrawer/SideDrawer.js.map +1 -0
  46. package/dist/components/UploadButton/UploadButton.d.ts +2 -0
  47. package/dist/components/UploadButton/UploadButton.js +2 -2
  48. package/dist/components/UploadButton/UploadButton.js.map +1 -1
  49. package/dist/components/UploadButton/UploadImages/UploadImages.d.ts +2 -0
  50. package/dist/components/UploadButton/UploadImages/UploadImages.js +7 -1
  51. package/dist/components/UploadButton/UploadImages/UploadImages.js.map +1 -1
  52. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.d.ts +4 -0
  53. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js +144 -0
  54. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +1 -0
  55. package/{src/components/layouts → dist/components/layouts/WebsiteAssistant}/website-assistant.css +298 -86
  56. package/dist/components/layouts/chat.css +27 -4
  57. package/dist/components/layouts/fullpage.css +628 -0
  58. package/dist/helpers/artifactPanel.d.ts +6 -0
  59. package/dist/helpers/artifactPanel.js +42 -0
  60. package/dist/helpers/artifactPanel.js.map +1 -0
  61. package/dist/helpers/chatScroll.d.ts +12 -0
  62. package/dist/helpers/chatScroll.js +14 -0
  63. package/dist/helpers/chatScroll.js.map +1 -0
  64. package/dist/helpers/conversationHistory.d.ts +16 -0
  65. package/dist/helpers/conversationHistory.js +89 -0
  66. package/dist/helpers/conversationHistory.js.map +1 -0
  67. package/dist/helpers/conversationTitle.d.ts +8 -0
  68. package/dist/helpers/conversationTitle.js +27 -0
  69. package/dist/helpers/conversationTitle.js.map +1 -0
  70. package/dist/helpers/enhanceBubbleCodeBlocks.d.ts +5 -0
  71. package/dist/helpers/enhanceBubbleCodeBlocks.js +97 -0
  72. package/dist/helpers/enhanceBubbleCodeBlocks.js.map +1 -0
  73. package/dist/helpers/highlightMatches.d.ts +2 -0
  74. package/dist/helpers/highlightMatches.js +54 -0
  75. package/dist/helpers/highlightMatches.js.map +1 -0
  76. package/dist/helpers/nats/dialogStateCatchUp.d.ts +3 -0
  77. package/dist/helpers/nats/dialogStateCatchUp.js +40 -0
  78. package/dist/helpers/nats/dialogStateCatchUp.js.map +1 -0
  79. package/dist/helpers/positionPopover.d.ts +3 -0
  80. package/dist/helpers/positionPopover.js +22 -0
  81. package/dist/helpers/positionPopover.js.map +1 -0
  82. package/dist/helpers/prism.d.ts +16 -0
  83. package/dist/helpers/prism.js +78 -0
  84. package/dist/helpers/prism.js.map +1 -0
  85. package/dist/helpers/reasoning.d.ts +7 -0
  86. package/dist/helpers/reasoning.js +43 -0
  87. package/dist/helpers/reasoning.js.map +1 -0
  88. package/dist/helpers/relativeTime.d.ts +3 -0
  89. package/dist/helpers/relativeTime.js +56 -0
  90. package/dist/helpers/relativeTime.js.map +1 -0
  91. package/dist/helpers/sourcesCount.d.ts +2 -0
  92. package/dist/helpers/sourcesCount.js +22 -0
  93. package/dist/helpers/sourcesCount.js.map +1 -0
  94. package/dist/helpers/tts/muteSpeaker.d.ts +13 -0
  95. package/dist/helpers/tts/muteSpeaker.js +26 -0
  96. package/dist/helpers/tts/muteSpeaker.js.map +1 -0
  97. package/dist/helpers/usePressTooltip.d.ts +18 -0
  98. package/dist/helpers/usePressTooltip.js +38 -0
  99. package/dist/helpers/usePressTooltip.js.map +1 -0
  100. package/dist/icons/FacebookIcon.d.ts +3 -0
  101. package/dist/icons/FacebookIcon.js +6 -0
  102. package/dist/icons/FacebookIcon.js.map +1 -0
  103. package/dist/icons/LinkedinIcon.d.ts +3 -0
  104. package/dist/icons/LinkedinIcon.js +6 -0
  105. package/dist/icons/LinkedinIcon.js.map +1 -0
  106. package/dist/icons/MemoriIcon.d.ts +3 -0
  107. package/dist/icons/MemoriIcon.js +8 -0
  108. package/dist/icons/MemoriIcon.js.map +1 -0
  109. package/dist/icons/TelegramIcon.d.ts +3 -0
  110. package/dist/icons/TelegramIcon.js +6 -0
  111. package/dist/icons/TelegramIcon.js.map +1 -0
  112. package/dist/icons/TwitterIcon.d.ts +3 -0
  113. package/dist/icons/TwitterIcon.js +6 -0
  114. package/dist/icons/TwitterIcon.js.map +1 -0
  115. package/dist/icons/WhatsappIcon.d.ts +3 -0
  116. package/dist/icons/WhatsappIcon.js +6 -0
  117. package/dist/icons/WhatsappIcon.js.map +1 -0
  118. package/dist/icons/artifacts/DocumentIcon.d.ts +3 -0
  119. package/dist/icons/artifacts/DocumentIcon.js +6 -0
  120. package/dist/icons/artifacts/DocumentIcon.js.map +1 -0
  121. package/dist/icons/artifacts/HtmlIcon.d.ts +3 -0
  122. package/dist/icons/artifacts/HtmlIcon.js +6 -0
  123. package/dist/icons/artifacts/HtmlIcon.js.map +1 -0
  124. package/dist/icons/artifacts/JavascriptIcon.d.ts +3 -0
  125. package/dist/icons/artifacts/JavascriptIcon.js +6 -0
  126. package/dist/icons/artifacts/JavascriptIcon.js.map +1 -0
  127. package/dist/icons/artifacts/MarkdownIcon.d.ts +3 -0
  128. package/dist/icons/artifacts/MarkdownIcon.js +6 -0
  129. package/dist/icons/artifacts/MarkdownIcon.js.map +1 -0
  130. package/dist/icons/artifacts/PythonIcon.d.ts +3 -0
  131. package/dist/icons/artifacts/PythonIcon.js +6 -0
  132. package/dist/icons/artifacts/PythonIcon.js.map +1 -0
  133. package/dist/icons/artifacts/SvgIcon.d.ts +3 -0
  134. package/dist/icons/artifacts/SvgIcon.js +6 -0
  135. package/dist/icons/artifacts/SvgIcon.js.map +1 -0
  136. package/dist/icons/artifacts/XmlIcon.d.ts +3 -0
  137. package/dist/icons/artifacts/XmlIcon.js +6 -0
  138. package/dist/icons/artifacts/XmlIcon.js.map +1 -0
  139. package/dist/icons/artifacts/cssIcon.d.ts +3 -0
  140. package/dist/icons/artifacts/cssIcon.js +6 -0
  141. package/dist/icons/artifacts/cssIcon.js.map +1 -0
  142. package/dist/styles/motion.css +25 -0
  143. package/dist/styles.css +1 -2
  144. package/dist/version.d.ts +1 -1
  145. package/dist/version.js +1 -1
  146. package/esm/components/Chat/Chat.d.ts +1 -0
  147. package/esm/components/Chat/Chat.js +6 -3
  148. package/esm/components/Chat/Chat.js.map +1 -1
  149. package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.d.ts +39 -0
  150. package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.js +40 -0
  151. package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.js.map +1 -0
  152. package/esm/components/ChatInputs/ChatInputs.d.ts +1 -0
  153. package/esm/components/ChatInputs/ChatInputs.js +2 -2
  154. package/esm/components/ChatInputs/ChatInputs.js.map +1 -1
  155. package/esm/components/ContentPreviewModal/DocumentMarkdown.d.ts +7 -0
  156. package/esm/components/ContentPreviewModal/DocumentMarkdown.js +28 -0
  157. package/esm/components/ContentPreviewModal/DocumentMarkdown.js.map +1 -0
  158. package/esm/components/DrawerFooter/DrawerFooter.d.ts +12 -0
  159. package/esm/components/DrawerFooter/DrawerFooter.js +8 -0
  160. package/esm/components/DrawerFooter/DrawerFooter.js.map +1 -0
  161. package/esm/components/IconButton/IconButton.d.ts +9 -0
  162. package/esm/components/IconButton/IconButton.js +33 -0
  163. package/esm/components/IconButton/IconButton.js.map +1 -0
  164. package/esm/components/LoginModal/LoginModal.d.ts +19 -0
  165. package/esm/components/LoginModal/LoginModal.js +352 -0
  166. package/esm/components/LoginModal/LoginModal.js.map +1 -0
  167. package/esm/components/MemoriWidget/MemoriWidget.d.ts +2 -2
  168. package/esm/components/MemoriWidget/MemoriWidget.js +8 -17
  169. package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
  170. package/esm/components/MobileSessionPanel/MobileSessionPanel.d.ts +65 -0
  171. package/esm/components/MobileSessionPanel/MobileSessionPanel.js +251 -0
  172. package/esm/components/MobileSessionPanel/MobileSessionPanel.js.map +1 -0
  173. package/esm/components/PositionPopover/PositionPopover.d.ts +22 -0
  174. package/esm/components/PositionPopover/PositionPopover.js +203 -0
  175. package/esm/components/PositionPopover/PositionPopover.js.map +1 -0
  176. package/esm/components/ReasoningBlock/ReasoningBlock.d.ts +7 -0
  177. package/esm/components/ReasoningBlock/ReasoningBlock.js +58 -0
  178. package/esm/components/ReasoningBlock/ReasoningBlock.js.map +1 -0
  179. package/esm/components/SideDrawer/SideDrawer.d.ts +22 -0
  180. package/esm/components/SideDrawer/SideDrawer.js +12 -0
  181. package/esm/components/SideDrawer/SideDrawer.js.map +1 -0
  182. package/esm/components/UploadButton/UploadButton.d.ts +2 -0
  183. package/esm/components/UploadButton/UploadButton.js +2 -2
  184. package/esm/components/UploadButton/UploadButton.js.map +1 -1
  185. package/esm/components/UploadButton/UploadImages/UploadImages.d.ts +2 -0
  186. package/esm/components/UploadButton/UploadImages/UploadImages.js +7 -1
  187. package/esm/components/UploadButton/UploadImages/UploadImages.js.map +1 -1
  188. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.d.ts +4 -0
  189. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js +141 -0
  190. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +1 -0
  191. package/esm/components/layouts/chat.css +27 -4
  192. package/esm/helpers/artifactPanel.d.ts +6 -0
  193. package/esm/helpers/artifactPanel.js +37 -0
  194. package/esm/helpers/artifactPanel.js.map +1 -0
  195. package/esm/helpers/chatScroll.d.ts +12 -0
  196. package/esm/helpers/chatScroll.js +9 -0
  197. package/esm/helpers/chatScroll.js.map +1 -0
  198. package/esm/helpers/conversationHistory.d.ts +16 -0
  199. package/esm/helpers/conversationHistory.js +82 -0
  200. package/esm/helpers/conversationHistory.js.map +1 -0
  201. package/esm/helpers/conversationTitle.d.ts +8 -0
  202. package/esm/helpers/conversationTitle.js +23 -0
  203. package/esm/helpers/conversationTitle.js.map +1 -0
  204. package/esm/helpers/enhanceBubbleCodeBlocks.d.ts +5 -0
  205. package/esm/helpers/enhanceBubbleCodeBlocks.js +94 -0
  206. package/esm/helpers/enhanceBubbleCodeBlocks.js.map +1 -0
  207. package/esm/helpers/highlightMatches.d.ts +2 -0
  208. package/esm/helpers/highlightMatches.js +49 -0
  209. package/esm/helpers/highlightMatches.js.map +1 -0
  210. package/esm/helpers/nats/dialogStateCatchUp.d.ts +3 -0
  211. package/esm/helpers/nats/dialogStateCatchUp.js +35 -0
  212. package/esm/helpers/nats/dialogStateCatchUp.js.map +1 -0
  213. package/esm/helpers/positionPopover.d.ts +3 -0
  214. package/esm/helpers/positionPopover.js +17 -0
  215. package/esm/helpers/positionPopover.js.map +1 -0
  216. package/esm/helpers/prism.d.ts +16 -0
  217. package/esm/helpers/prism.js +74 -0
  218. package/esm/helpers/prism.js.map +1 -0
  219. package/esm/helpers/reasoning.d.ts +7 -0
  220. package/esm/helpers/reasoning.js +39 -0
  221. package/esm/helpers/reasoning.js.map +1 -0
  222. package/esm/helpers/relativeTime.d.ts +3 -0
  223. package/esm/helpers/relativeTime.js +50 -0
  224. package/esm/helpers/relativeTime.js.map +1 -0
  225. package/esm/helpers/sourcesCount.d.ts +2 -0
  226. package/esm/helpers/sourcesCount.js +18 -0
  227. package/esm/helpers/sourcesCount.js.map +1 -0
  228. package/esm/helpers/tts/muteSpeaker.d.ts +13 -0
  229. package/esm/helpers/tts/muteSpeaker.js +21 -0
  230. package/esm/helpers/tts/muteSpeaker.js.map +1 -0
  231. package/esm/helpers/usePressTooltip.d.ts +18 -0
  232. package/esm/helpers/usePressTooltip.js +35 -0
  233. package/esm/helpers/usePressTooltip.js.map +1 -0
  234. package/esm/icons/FacebookIcon.d.ts +3 -0
  235. package/esm/icons/FacebookIcon.js +4 -0
  236. package/esm/icons/FacebookIcon.js.map +1 -0
  237. package/esm/icons/LinkedinIcon.d.ts +3 -0
  238. package/esm/icons/LinkedinIcon.js +4 -0
  239. package/esm/icons/LinkedinIcon.js.map +1 -0
  240. package/esm/icons/MemoriIcon.d.ts +3 -0
  241. package/esm/icons/MemoriIcon.js +6 -0
  242. package/esm/icons/MemoriIcon.js.map +1 -0
  243. package/esm/icons/TelegramIcon.d.ts +3 -0
  244. package/esm/icons/TelegramIcon.js +4 -0
  245. package/esm/icons/TelegramIcon.js.map +1 -0
  246. package/esm/icons/TwitterIcon.d.ts +3 -0
  247. package/esm/icons/TwitterIcon.js +4 -0
  248. package/esm/icons/TwitterIcon.js.map +1 -0
  249. package/esm/icons/WhatsappIcon.d.ts +3 -0
  250. package/esm/icons/WhatsappIcon.js +4 -0
  251. package/esm/icons/WhatsappIcon.js.map +1 -0
  252. package/esm/icons/artifacts/DocumentIcon.d.ts +3 -0
  253. package/esm/icons/artifacts/DocumentIcon.js +4 -0
  254. package/esm/icons/artifacts/DocumentIcon.js.map +1 -0
  255. package/esm/icons/artifacts/HtmlIcon.d.ts +3 -0
  256. package/esm/icons/artifacts/HtmlIcon.js +4 -0
  257. package/esm/icons/artifacts/HtmlIcon.js.map +1 -0
  258. package/esm/icons/artifacts/JavascriptIcon.d.ts +3 -0
  259. package/esm/icons/artifacts/JavascriptIcon.js +4 -0
  260. package/esm/icons/artifacts/JavascriptIcon.js.map +1 -0
  261. package/esm/icons/artifacts/MarkdownIcon.d.ts +3 -0
  262. package/esm/icons/artifacts/MarkdownIcon.js +4 -0
  263. package/esm/icons/artifacts/MarkdownIcon.js.map +1 -0
  264. package/esm/icons/artifacts/PythonIcon.d.ts +3 -0
  265. package/esm/icons/artifacts/PythonIcon.js +4 -0
  266. package/esm/icons/artifacts/PythonIcon.js.map +1 -0
  267. package/esm/icons/artifacts/SvgIcon.d.ts +3 -0
  268. package/esm/icons/artifacts/SvgIcon.js +4 -0
  269. package/esm/icons/artifacts/SvgIcon.js.map +1 -0
  270. package/esm/icons/artifacts/XmlIcon.d.ts +3 -0
  271. package/esm/icons/artifacts/XmlIcon.js +4 -0
  272. package/esm/icons/artifacts/XmlIcon.js.map +1 -0
  273. package/esm/icons/artifacts/cssIcon.d.ts +3 -0
  274. package/esm/icons/artifacts/cssIcon.js +4 -0
  275. package/esm/icons/artifacts/cssIcon.js.map +1 -0
  276. package/esm/styles.css +1 -2
  277. package/esm/version.d.ts +1 -1
  278. package/esm/version.js +1 -1
  279. package/package.json +7 -7
  280. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.d.ts +0 -3
  281. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.js +0 -64
  282. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.js.map +0 -1
  283. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.d.ts +0 -3
  284. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.js +0 -62
  285. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.js.map +0 -1
  286. package/src/I18nWrapper.tsx +0 -13
  287. package/src/__snapshots__/index.test.tsx.snap +0 -96
  288. package/src/components/AgeVerificationModal/AgeVerificationModal.css +0 -95
  289. package/src/components/AgeVerificationModal/AgeVerificationModal.stories.tsx +0 -46
  290. package/src/components/AgeVerificationModal/AgeVerificationModal.test.tsx +0 -33
  291. package/src/components/AgeVerificationModal/AgeVerificationModal.tsx +0 -99
  292. package/src/components/AgeVerificationModal/__snapshots__/AgeVerificationModal.test.tsx.snap +0 -19
  293. package/src/components/Auth/Auth.css +0 -57
  294. package/src/components/Auth/Auth.stories.tsx +0 -90
  295. package/src/components/Auth/Auth.test.tsx +0 -63
  296. package/src/components/Auth/Auth.tsx +0 -201
  297. package/src/components/Auth/__snapshots__/Auth.test.tsx.snap +0 -143
  298. package/src/components/Avatar/Avatar.css +0 -151
  299. package/src/components/Avatar/Avatar.stories.tsx +0 -160
  300. package/src/components/Avatar/Avatar.test.tsx +0 -158
  301. package/src/components/Avatar/Avatar.tsx +0 -245
  302. package/src/components/Avatar/AvatarView/AvatarComponent/Shadow/DynamicShadow.tsx +0 -103
  303. package/src/components/Avatar/AvatarView/AvatarComponent/avatarComponent.tsx +0 -105
  304. package/src/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.tsx +0 -338
  305. package/src/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/types.ts +0 -44
  306. package/src/components/Avatar/AvatarView/AvatarComponent/components/controllers/AvatarAnimator.ts +0 -1091
  307. package/src/components/Avatar/AvatarView/AvatarComponent/components/controllers/AvatarPositionController.ts +0 -83
  308. package/src/components/Avatar/AvatarView/AvatarComponent/components/controllers/MorphTargetController.ts +0 -301
  309. package/src/components/Avatar/AvatarView/AvatarComponent/components/controls.tsx +0 -100
  310. package/src/components/Avatar/AvatarView/AvatarComponent/components/halfbodyAvatar.tsx +0 -152
  311. package/src/components/Avatar/AvatarView/AvatarComponent/components/loader.tsx +0 -31
  312. package/src/components/Avatar/AvatarView/AvatarComponent/constants.ts +0 -141
  313. package/src/components/Avatar/AvatarView/AvatarComponent/lights/Lights.tsx +0 -145
  314. package/src/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.css +0 -111
  315. package/src/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.tsx +0 -201
  316. package/src/components/Avatar/AvatarView/AvatarView.stories.tsx +0 -254
  317. package/src/components/Avatar/AvatarView/index.tsx +0 -194
  318. package/src/components/Avatar/AvatarView/utils/hideHands.ts +0 -11
  319. package/src/components/Avatar/AvatarView/utils/useEyeBlink.ts +0 -100
  320. package/src/components/Avatar/AvatarView/utils/useHeadMovement.ts +0 -72
  321. package/src/components/Avatar/AvatarView/utils/useLoadingMorphAnim.ts +0 -38
  322. package/src/components/Avatar/AvatarView/utils/useMouthAnimation.ts +0 -93
  323. package/src/components/Avatar/AvatarView/utils/useSmile.ts +0 -39
  324. package/src/components/Avatar/AvatarView/utils/utils.ts +0 -55
  325. package/src/components/Avatar/__snapshots__/Avatar.test.tsx.snap +0 -246
  326. package/src/components/Blob/Blob.css +0 -286
  327. package/src/components/Blob/Blob.stories.tsx +0 -53
  328. package/src/components/Blob/Blob.test.tsx +0 -18
  329. package/src/components/Blob/Blob.tsx +0 -26
  330. package/src/components/Blob/__snapshots__/Blob.test.tsx.snap +0 -80
  331. package/src/components/BlockedMemoriBadge/BlockedMemoriBadge.css +0 -40
  332. package/src/components/BlockedMemoriBadge/BlockedMemoriBadge.stories.tsx +0 -58
  333. package/src/components/BlockedMemoriBadge/BlockedMemoriBadge.test.tsx +0 -53
  334. package/src/components/BlockedMemoriBadge/BlockedMemoriBadge.tsx +0 -74
  335. package/src/components/BlockedMemoriBadge/__snapshots__/BlockedMemoriBadge.test.tsx.snap +0 -181
  336. package/src/components/ChangeMode/ChangeMode.css +0 -22
  337. package/src/components/ChangeMode/ChangeMode.stories.tsx +0 -50
  338. package/src/components/ChangeMode/ChangeMode.test.tsx +0 -24
  339. package/src/components/ChangeMode/ChangeMode.tsx +0 -51
  340. package/src/components/ChangeMode/__snapshots__/ChangeMode.test.tsx.snap +0 -107
  341. package/src/components/Chat/Chat.css +0 -285
  342. package/src/components/Chat/Chat.stories.tsx +0 -1684
  343. package/src/components/Chat/Chat.test.tsx +0 -372
  344. package/src/components/Chat/Chat.tsx +0 -778
  345. package/src/components/Chat/__snapshots__/Chat.test.tsx.snap +0 -6816
  346. package/src/components/ChatBubble/ChatBubble.css +0 -430
  347. package/src/components/ChatBubble/ChatBubble.stories.tsx +0 -1192
  348. package/src/components/ChatBubble/ChatBubble.test.tsx +0 -481
  349. package/src/components/ChatBubble/ChatBubble.tsx +0 -776
  350. package/src/components/ChatBubble/__snapshots__/ChatBubble.test.tsx.snap +0 -8734
  351. package/src/components/ChatHistoryDrawer/ChatHistory.css +0 -587
  352. package/src/components/ChatHistoryDrawer/ChatHistory.stories.tsx +0 -410
  353. package/src/components/ChatHistoryDrawer/ChatHistory.test.tsx +0 -107
  354. package/src/components/ChatHistoryDrawer/ChatHistory.tsx +0 -1298
  355. package/src/components/ChatHistoryDrawer/__snapshots__/ChatHistory.test.tsx.snap +0 -27
  356. package/src/components/ChatInputs/ChatInputs.css +0 -340
  357. package/src/components/ChatInputs/ChatInputs.stories.tsx +0 -251
  358. package/src/components/ChatInputs/ChatInputs.tsx +0 -487
  359. package/src/components/ChatTextArea/ChatTextArea.css +0 -185
  360. package/src/components/ChatTextArea/ChatTextArea.stories.tsx +0 -55
  361. package/src/components/ChatTextArea/ChatTextArea.test.tsx +0 -28
  362. package/src/components/ChatTextArea/ChatTextArea.tsx +0 -171
  363. package/src/components/ChatTextArea/__snapshots__/ChatTextArea.test.tsx.snap +0 -68
  364. package/src/components/CompletionProviderStatus/CompletionProviderStatus.css +0 -36
  365. package/src/components/CompletionProviderStatus/CompletionProviderStatus.stories.tsx +0 -296
  366. package/src/components/CompletionProviderStatus/CompletionProviderStatus.test.tsx +0 -31
  367. package/src/components/CompletionProviderStatus/CompletionProviderStatus.tsx +0 -232
  368. package/src/components/CompletionProviderStatus/__snapshots__/CompletionProviderStatus.test.tsx.snap +0 -96
  369. package/src/components/ContentPreviewModal/ContentPreviewModal.css +0 -128
  370. package/src/components/ContentPreviewModal/ContentPreviewModal.tsx +0 -67
  371. package/src/components/ContentPreviewModal/index.ts +0 -2
  372. package/src/components/CustomGLBModelViewer/ModelViewer.css +0 -11
  373. package/src/components/CustomGLBModelViewer/ModelViewer.stories.tsx +0 -58
  374. package/src/components/CustomGLBModelViewer/ModelViewer.test.tsx +0 -13
  375. package/src/components/CustomGLBModelViewer/ModelViewer.tsx +0 -37
  376. package/src/components/CustomGLBModelViewer/__snapshots__/ModelViewer.test.tsx.snap +0 -20
  377. package/src/components/DateSelector/DateSelector.css +0 -158
  378. package/src/components/DateSelector/DateSelector.stories.tsx +0 -47
  379. package/src/components/DateSelector/DateSelector.test.tsx +0 -149
  380. package/src/components/DateSelector/DateSelector.tsx +0 -251
  381. package/src/components/DateSelector/__snapshots__/DateSelector.test.tsx.snap +0 -1954
  382. package/src/components/ErrorBoundary/ErrorBoundary.tsx +0 -54
  383. package/src/components/ExpertsDrawer/ExpertsDrawer.css +0 -67
  384. package/src/components/ExpertsDrawer/ExpertsDrawer.stories.tsx +0 -54
  385. package/src/components/ExpertsDrawer/ExpertsDrawer.test.tsx +0 -53
  386. package/src/components/ExpertsDrawer/ExpertsDrawer.tsx +0 -69
  387. package/src/components/ExpertsDrawer/__snapshots__/ExpertsDrawer.test.tsx.snap +0 -11
  388. package/src/components/ExportHistoryButton/ExportHistoryButton.css +0 -22
  389. package/src/components/FeedbackButtons/FeedbackButtons.css +0 -107
  390. package/src/components/FeedbackButtons/FeedbackButtons.stories.tsx +0 -52
  391. package/src/components/FeedbackButtons/FeedbackButtons.test.tsx +0 -11
  392. package/src/components/FeedbackButtons/FeedbackButtons.tsx +0 -152
  393. package/src/components/FeedbackButtons/__snapshots__/FeedbackButtons.test.tsx.snap +0 -42
  394. package/src/components/FilePreview/FilePreview.css +0 -358
  395. package/src/components/FilePreview/FilePreview.stories.tsx +0 -63
  396. package/src/components/FilePreview/FilePreview.test.tsx +0 -26
  397. package/src/components/FilePreview/FilePreview.tsx +0 -277
  398. package/src/components/FilePreview/__snapshots__/FilePreview.test.tsx.snap +0 -185
  399. package/src/components/Header/ChatConsumptionDropdown.test.tsx +0 -117
  400. package/src/components/Header/ChatConsumptionDropdown.tsx +0 -275
  401. package/src/components/Header/Header.css +0 -282
  402. package/src/components/Header/Header.stories.tsx +0 -338
  403. package/src/components/Header/Header.test.tsx +0 -371
  404. package/src/components/Header/Header.tsx +0 -442
  405. package/src/components/Header/__snapshots__/Header.test.tsx.snap +0 -964
  406. package/src/components/KnownFacts/KnownFacts.css +0 -19
  407. package/src/components/KnownFacts/KnownFacts.stories.tsx +0 -80
  408. package/src/components/KnownFacts/KnownFacts.test.tsx +0 -57
  409. package/src/components/KnownFacts/KnownFacts.tsx +0 -376
  410. package/src/components/KnownFacts/__snapshots__/KnownFacts.test.tsx.snap +0 -19
  411. package/src/components/LoginDrawer/LoginDrawer.css +0 -1616
  412. package/src/components/LoginDrawer/LoginDrawer.stories.tsx +0 -102
  413. package/src/components/LoginDrawer/LoginDrawer.test.tsx +0 -199
  414. package/src/components/LoginDrawer/LoginDrawer.tsx +0 -600
  415. package/src/components/LoginDrawer/__snapshots__/LoginDrawer.test.tsx.snap +0 -91
  416. package/src/components/MediaWidget/DocumentCard.test.tsx +0 -45
  417. package/src/components/MediaWidget/DocumentCard.tsx +0 -19
  418. package/src/components/MediaWidget/MediaItemWidget.css +0 -1398
  419. package/src/components/MediaWidget/MediaItemWidget.stories.tsx +0 -423
  420. package/src/components/MediaWidget/MediaItemWidget.test.tsx +0 -248
  421. package/src/components/MediaWidget/MediaItemWidget.tsx +0 -997
  422. package/src/components/MediaWidget/MediaItemWidget.types.ts +0 -65
  423. package/src/components/MediaWidget/MediaItemWidget.utils.test.ts +0 -367
  424. package/src/components/MediaWidget/MediaItemWidget.utils.ts +0 -227
  425. package/src/components/MediaWidget/MediaPreviewModal.test.tsx +0 -271
  426. package/src/components/MediaWidget/MediaPreviewModal.tsx +0 -425
  427. package/src/components/MediaWidget/MediaWidget.css +0 -131
  428. package/src/components/MediaWidget/MediaWidget.stories.tsx +0 -319
  429. package/src/components/MediaWidget/MediaWidget.test.tsx +0 -41
  430. package/src/components/MediaWidget/MediaWidget.tsx +0 -107
  431. package/src/components/MediaWidget/__snapshots__/DocumentCard.test.tsx.snap +0 -24
  432. package/src/components/MediaWidget/__snapshots__/MediaItemWidget.test.tsx.snap +0 -791
  433. package/src/components/MediaWidget/__snapshots__/MediaWidget.test.tsx.snap +0 -154
  434. package/src/components/MemoriArtifactSystem/ArtifactDrawer.stories.tsx +0 -2299
  435. package/src/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.css +0 -163
  436. package/src/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.tsx +0 -250
  437. package/src/components/MemoriArtifactSystem/components/ArtifactActions/CopyButton.stories.tsx +0 -30
  438. package/src/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.tsx +0 -467
  439. package/src/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.tsx +0 -89
  440. package/src/components/MemoriArtifactSystem/components/ArtifactActions/hooks/useCopyArtifact.ts +0 -619
  441. package/src/components/MemoriArtifactSystem/components/ArtifactActions/index.ts +0 -9
  442. package/src/components/MemoriArtifactSystem/components/ArtifactActions/styles.css +0 -489
  443. package/src/components/MemoriArtifactSystem/components/ArtifactActions/test/CopyButtonTest.tsx +0 -90
  444. package/src/components/MemoriArtifactSystem/components/ArtifactActions/types.ts +0 -73
  445. package/src/components/MemoriArtifactSystem/components/ArtifactActions/utils/PDFExporter.ts +0 -454
  446. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +0 -1059
  447. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.tsx +0 -431
  448. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.css +0 -150
  449. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.tsx +0 -79
  450. package/src/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.css +0 -253
  451. package/src/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.tsx +0 -561
  452. package/src/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.css +0 -355
  453. package/src/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.tsx +0 -160
  454. package/src/components/MemoriArtifactSystem/context/ArtifactContext.tsx +0 -167
  455. package/src/components/MemoriArtifactSystem/types/artifact.types.ts +0 -35
  456. package/src/components/MemoriArtifactSystem/utils/ArtifactAPI.test.tsx +0 -308
  457. package/src/components/MemoriArtifactSystem/utils/ArtifactAPI.tsx +0 -379
  458. package/src/components/MemoriArtifactSystem/utils/applyEdits.test.ts +0 -85
  459. package/src/components/MemoriArtifactSystem/utils/applyEdits.ts +0 -173
  460. package/src/components/MemoriWidget/MemoriWidget.css +0 -220
  461. package/src/components/MemoriWidget/MemoriWidget.stories.tsx +0 -274
  462. package/src/components/MemoriWidget/MemoriWidget.tsx +0 -3930
  463. package/src/components/MicrophoneButton/MicrophoneButton.css +0 -142
  464. package/src/components/MicrophoneButton/MicrophoneButton.stories.tsx +0 -52
  465. package/src/components/MicrophoneButton/MicrophoneButton.tsx +0 -128
  466. package/src/components/PositionDrawer/PositionDrawer.stories.tsx +0 -51
  467. package/src/components/PositionDrawer/PositionDrawer.test.tsx +0 -39
  468. package/src/components/PositionDrawer/PositionDrawer.tsx +0 -50
  469. package/src/components/PositionDrawer/__snapshots__/PositionDrawer.test.tsx.snap +0 -17
  470. package/src/components/PoweredBy/PoweredBy.css +0 -47
  471. package/src/components/PoweredBy/PoweredBy.stories.tsx +0 -75
  472. package/src/components/PoweredBy/PoweredBy.test.tsx +0 -15
  473. package/src/components/PoweredBy/PoweredBy.tsx +0 -44
  474. package/src/components/PoweredBy/__snapshots__/PoweredBy.test.tsx.snap +0 -55
  475. package/src/components/SendOnEnterMenu/SendOnEnterMenu.css +0 -47
  476. package/src/components/SendOnEnterMenu/SendOnEnterMenu.stories.tsx +0 -58
  477. package/src/components/SendOnEnterMenu/SendOnEnterMenu.test.tsx +0 -17
  478. package/src/components/SendOnEnterMenu/SendOnEnterMenu.tsx +0 -82
  479. package/src/components/SendOnEnterMenu/__snapshots__/SendOnEnterMenu.test.tsx.snap +0 -57
  480. package/src/components/SettingsDrawer/SettingsDrawer.css +0 -24
  481. package/src/components/SettingsDrawer/SettingsDrawer.stories.tsx +0 -94
  482. package/src/components/SettingsDrawer/SettingsDrawer.test.tsx +0 -202
  483. package/src/components/SettingsDrawer/SettingsDrawer.tsx +0 -255
  484. package/src/components/SettingsDrawer/__snapshots__/SettingsDrawer.test.tsx.snap +0 -59
  485. package/src/components/ShareButton/ShareButton.css +0 -73
  486. package/src/components/ShareButton/ShareButton.stories.tsx +0 -98
  487. package/src/components/ShareButton/ShareButton.test.tsx +0 -53
  488. package/src/components/ShareButton/ShareButton.tsx +0 -395
  489. package/src/components/ShareButton/__snapshots__/ShareButton.test.tsx.snap +0 -316
  490. package/src/components/Snippet/Snippet.css +0 -142
  491. package/src/components/Snippet/Snippet.stories.tsx +0 -286
  492. package/src/components/Snippet/Snippet.test.tsx +0 -176
  493. package/src/components/Snippet/Snippet.tsx +0 -148
  494. package/src/components/Snippet/__snapshots__/Snippet.test.tsx.snap +0 -603
  495. package/src/components/StartPanel/StartPanel.css +0 -273
  496. package/src/components/StartPanel/StartPanel.stories.tsx +0 -404
  497. package/src/components/StartPanel/StartPanel.test.tsx +0 -360
  498. package/src/components/StartPanel/StartPanel.tsx +0 -426
  499. package/src/components/StartPanel/__snapshots__/StartPanel.test.tsx.snap +0 -1986
  500. package/src/components/Typing/Typing.stories.tsx +0 -130
  501. package/src/components/Typing/Typing.test.tsx +0 -62
  502. package/src/components/Typing/Typing.tsx +0 -154
  503. package/src/components/Typing/__snapshots__/Typing.test.tsx.snap +0 -133
  504. package/src/components/UploadButton/UploadButton.css +0 -542
  505. package/src/components/UploadButton/UploadButton.stories.tsx +0 -376
  506. package/src/components/UploadButton/UploadButton.test.tsx +0 -11
  507. package/src/components/UploadButton/UploadButton.tsx +0 -688
  508. package/src/components/UploadButton/UploadDocuments/UploadDocuments.tsx +0 -421
  509. package/src/components/UploadButton/UploadImages/UploadImages.tsx +0 -538
  510. package/src/components/UploadButton/__snapshots__/UploadButton.test.tsx.snap +0 -165
  511. package/src/components/VenueWidget/VenueWidget.css +0 -163
  512. package/src/components/VenueWidget/VenueWidget.stories.tsx +0 -66
  513. package/src/components/VenueWidget/VenueWidget.test.tsx +0 -49
  514. package/src/components/VenueWidget/VenueWidget.tsx +0 -458
  515. package/src/components/VenueWidget/__snapshots__/VenueWidget.test.tsx.snap +0 -370
  516. package/src/components/WhyThisAnswer/WhyThisAnswer.css +0 -171
  517. package/src/components/WhyThisAnswer/WhyThisAnswer.stories.tsx +0 -285
  518. package/src/components/WhyThisAnswer/WhyThisAnswer.test.tsx +0 -245
  519. package/src/components/WhyThisAnswer/WhyThisAnswer.tsx +0 -233
  520. package/src/components/WhyThisAnswer/__snapshots__/WhyThisAnswer.test.tsx.snap +0 -27
  521. package/src/components/icons/AI.tsx +0 -34
  522. package/src/components/icons/Alert.tsx +0 -31
  523. package/src/components/icons/ArrowUp.tsx +0 -28
  524. package/src/components/icons/Bug.tsx +0 -81
  525. package/src/components/icons/Chat.tsx +0 -30
  526. package/src/components/icons/ChevronDown.tsx +0 -26
  527. package/src/components/icons/ChevronLeft.tsx +0 -28
  528. package/src/components/icons/ChevronRight.tsx +0 -28
  529. package/src/components/icons/ChevronUp.tsx +0 -24
  530. package/src/components/icons/Clear.tsx +0 -23
  531. package/src/components/icons/Close.tsx +0 -30
  532. package/src/components/icons/Code.tsx +0 -24
  533. package/src/components/icons/Copy.tsx +0 -23
  534. package/src/components/icons/DeepThought.tsx +0 -38
  535. package/src/components/icons/Delete.tsx +0 -23
  536. package/src/components/icons/Document.tsx +0 -50
  537. package/src/components/icons/Download.tsx +0 -23
  538. package/src/components/icons/Edit.tsx +0 -17
  539. package/src/components/icons/Expand.tsx +0 -23
  540. package/src/components/icons/Eye.tsx +0 -17
  541. package/src/components/icons/EyeInvisible.tsx +0 -24
  542. package/src/components/icons/Facebook.tsx +0 -23
  543. package/src/components/icons/Feedback.tsx +0 -24
  544. package/src/components/icons/File.tsx +0 -17
  545. package/src/components/icons/FileExcel.tsx +0 -23
  546. package/src/components/icons/FilePdf.tsx +0 -23
  547. package/src/components/icons/FileWord.tsx +0 -23
  548. package/src/components/icons/Fullscreen.tsx +0 -23
  549. package/src/components/icons/FullscreenExit.tsx +0 -23
  550. package/src/components/icons/GasStation.tsx +0 -36
  551. package/src/components/icons/Group.tsx +0 -30
  552. package/src/components/icons/History.tsx +0 -33
  553. package/src/components/icons/Image.tsx +0 -37
  554. package/src/components/icons/Info.tsx +0 -31
  555. package/src/components/icons/Link.tsx +0 -17
  556. package/src/components/icons/Linkedin.tsx +0 -23
  557. package/src/components/icons/Loading.tsx +0 -28
  558. package/src/components/icons/Logout.tsx +0 -27
  559. package/src/components/icons/Mail.tsx +0 -17
  560. package/src/components/icons/MapMarker.tsx +0 -26
  561. package/src/components/icons/MenuHorizontal.tsx +0 -29
  562. package/src/components/icons/MenuVertical.tsx +0 -29
  563. package/src/components/icons/Message.tsx +0 -23
  564. package/src/components/icons/Microphone.tsx +0 -23
  565. package/src/components/icons/Minus.tsx +0 -23
  566. package/src/components/icons/MinusCircle.tsx +0 -24
  567. package/src/components/icons/PaperClip.tsx +0 -23
  568. package/src/components/icons/Picture.tsx +0 -23
  569. package/src/components/icons/Plus.tsx +0 -18
  570. package/src/components/icons/Preview.tsx +0 -29
  571. package/src/components/icons/Print.tsx +0 -38
  572. package/src/components/icons/QuestionHelp.tsx +0 -30
  573. package/src/components/icons/Refresh.tsx +0 -30
  574. package/src/components/icons/SelectIcon.tsx +0 -28
  575. package/src/components/icons/Send.tsx +0 -17
  576. package/src/components/icons/Setting.tsx +0 -23
  577. package/src/components/icons/Share.tsx +0 -23
  578. package/src/components/icons/Sound.tsx +0 -23
  579. package/src/components/icons/SoundDeactivated.tsx +0 -27
  580. package/src/components/icons/Telegram.tsx +0 -26
  581. package/src/components/icons/ThumbDown.tsx +0 -29
  582. package/src/components/icons/ThumbUp.tsx +0 -29
  583. package/src/components/icons/Translation.tsx +0 -24
  584. package/src/components/icons/Twitter.tsx +0 -23
  585. package/src/components/icons/Upload.tsx +0 -34
  586. package/src/components/icons/User.tsx +0 -17
  587. package/src/components/icons/Warning.tsx +0 -24
  588. package/src/components/icons/WhatsApp.tsx +0 -24
  589. package/src/components/icons/icons.stories.css +0 -5
  590. package/src/components/icons/icons.stories.tsx +0 -81
  591. package/src/components/icons/loading.css +0 -14
  592. package/src/components/layouts/Chat.test.tsx +0 -40
  593. package/src/components/layouts/Chat.tsx +0 -69
  594. package/src/components/layouts/FullBody/FullBody.stories.tsx +0 -110
  595. package/src/components/layouts/FullPage.test.tsx +0 -65
  596. package/src/components/layouts/FullPage.tsx +0 -80
  597. package/src/components/layouts/HiddenChat.test.tsx +0 -40
  598. package/src/components/layouts/HiddenChat.tsx +0 -233
  599. package/src/components/layouts/Totem/Totem.stories.tsx +0 -131
  600. package/src/components/layouts/Totem.test.tsx +0 -40
  601. package/src/components/layouts/Totem.tsx +0 -49
  602. package/src/components/layouts/WebsiteAssistant.test.tsx +0 -40
  603. package/src/components/layouts/WebsiteAssistant.tsx +0 -132
  604. package/src/components/layouts/ZoomedFullBody/ZoomedFullBody.stories.tsx +0 -131
  605. package/src/components/layouts/ZoomedFullBody.test.tsx +0 -40
  606. package/src/components/layouts/ZoomedFullBody.tsx +0 -81
  607. package/src/components/layouts/__snapshots__/Chat.test.tsx.snap +0 -457
  608. package/src/components/layouts/__snapshots__/FullPage.test.tsx.snap +0 -1045
  609. package/src/components/layouts/__snapshots__/HiddenChat.test.tsx.snap +0 -460
  610. package/src/components/layouts/__snapshots__/Totem.test.tsx.snap +0 -566
  611. package/src/components/layouts/__snapshots__/WebsiteAssistant.test.tsx.snap +0 -59
  612. package/src/components/layouts/__snapshots__/ZoomedFullBody.test.tsx.snap +0 -523
  613. package/src/components/layouts/chat.css +0 -451
  614. package/src/components/layouts/hidden-chat.css +0 -276
  615. package/src/components/layouts/layouts.stories.tsx +0 -231
  616. package/src/components/layouts/totem.css +0 -221
  617. package/src/components/layouts/zoomed-full-body.css +0 -18
  618. package/src/components/ui/Alert.css +0 -93
  619. package/src/components/ui/Alert.stories.tsx +0 -137
  620. package/src/components/ui/Alert.test.tsx +0 -129
  621. package/src/components/ui/Alert.tsx +0 -123
  622. package/src/components/ui/Button.css +0 -167
  623. package/src/components/ui/Button.stories.tsx +0 -156
  624. package/src/components/ui/Button.test.tsx +0 -74
  625. package/src/components/ui/Button.tsx +0 -107
  626. package/src/components/ui/Card.css +0 -65
  627. package/src/components/ui/Card.stories.tsx +0 -95
  628. package/src/components/ui/Card.test.tsx +0 -47
  629. package/src/components/ui/Card.tsx +0 -48
  630. package/src/components/ui/Checkbox.css +0 -116
  631. package/src/components/ui/Checkbox.stories.tsx +0 -74
  632. package/src/components/ui/Checkbox.test.tsx +0 -28
  633. package/src/components/ui/Checkbox.tsx +0 -58
  634. package/src/components/ui/ConfirmDialog.css +0 -42
  635. package/src/components/ui/ConfirmDialog.stories.tsx +0 -216
  636. package/src/components/ui/ConfirmDialog.test.tsx +0 -124
  637. package/src/components/ui/ConfirmDialog.tsx +0 -58
  638. package/src/components/ui/Details.css +0 -66
  639. package/src/components/ui/Drawer.css +0 -270
  640. package/src/components/ui/Drawer.stories.tsx +0 -267
  641. package/src/components/ui/Drawer.test.tsx +0 -130
  642. package/src/components/ui/Drawer.tsx +0 -293
  643. package/src/components/ui/Dropdown.css +0 -173
  644. package/src/components/ui/Dropdown.tsx +0 -63
  645. package/src/components/ui/Expandable.css +0 -15
  646. package/src/components/ui/Expandable.stories.tsx +0 -180
  647. package/src/components/ui/Expandable.test.tsx +0 -107
  648. package/src/components/ui/Expandable.tsx +0 -121
  649. package/src/components/ui/Modal.css +0 -98
  650. package/src/components/ui/Modal.stories.tsx +0 -171
  651. package/src/components/ui/Modal.test.tsx +0 -111
  652. package/src/components/ui/Modal.tsx +0 -117
  653. package/src/components/ui/Select.css +0 -138
  654. package/src/components/ui/Select.stories.tsx +0 -79
  655. package/src/components/ui/Select.test.tsx +0 -84
  656. package/src/components/ui/Select.tsx +0 -79
  657. package/src/components/ui/Slider.css +0 -192
  658. package/src/components/ui/Slider.stories.tsx +0 -63
  659. package/src/components/ui/Slider.tsx +0 -142
  660. package/src/components/ui/Spin.css +0 -31
  661. package/src/components/ui/Spin.stories.tsx +0 -64
  662. package/src/components/ui/Spin.test.tsx +0 -41
  663. package/src/components/ui/Spin.tsx +0 -31
  664. package/src/components/ui/Table.css +0 -132
  665. package/src/components/ui/Tooltip.css +0 -171
  666. package/src/components/ui/Tooltip.stories.tsx +0 -109
  667. package/src/components/ui/Tooltip.test.tsx +0 -102
  668. package/src/components/ui/Tooltip.tsx +0 -163
  669. package/src/components/ui/__snapshots__/Alert.test.tsx.snap +0 -59
  670. package/src/components/ui/__snapshots__/Button.test.tsx.snap +0 -204
  671. package/src/components/ui/__snapshots__/Card.test.tsx.snap +0 -321
  672. package/src/components/ui/__snapshots__/Checkbox.test.tsx.snap +0 -131
  673. package/src/components/ui/__snapshots__/ConfirmDialog.test.tsx.snap +0 -35
  674. package/src/components/ui/__snapshots__/Drawer.test.tsx.snap +0 -67
  675. package/src/components/ui/__snapshots__/Expandable.test.tsx.snap +0 -159
  676. package/src/components/ui/__snapshots__/Modal.test.tsx.snap +0 -59
  677. package/src/components/ui/__snapshots__/Select.test.tsx.snap +0 -254
  678. package/src/components/ui/__snapshots__/Spin.test.tsx.snap +0 -193
  679. package/src/components/ui/__snapshots__/Tooltip.test.tsx.snap +0 -113
  680. package/src/components/ui/definitions.stories.tsx +0 -139
  681. package/src/context/visemeContext.tsx +0 -384
  682. package/src/helpers/chatPdfExport.ts +0 -544
  683. package/src/helpers/configuration.ts +0 -42
  684. package/src/helpers/constants.ts +0 -268
  685. package/src/helpers/convertDocument.test.ts +0 -67
  686. package/src/helpers/convertDocument.ts +0 -35
  687. package/src/helpers/credits.ts +0 -54
  688. package/src/helpers/error.test.ts +0 -29
  689. package/src/helpers/error.ts +0 -278
  690. package/src/helpers/imageCompression.ts +0 -230
  691. package/src/helpers/llmUsage.ts +0 -328
  692. package/src/helpers/markedExtendedTables.js +0 -217
  693. package/src/helpers/media.test.ts +0 -169
  694. package/src/helpers/media.ts +0 -81
  695. package/src/helpers/message.test.ts +0 -126
  696. package/src/helpers/message.ts +0 -219
  697. package/src/helpers/nats/getNatsConfig.ts +0 -148
  698. package/src/helpers/nats/isSessionExpiredError.test.ts +0 -38
  699. package/src/helpers/nats/isSessionExpiredError.ts +0 -51
  700. package/src/helpers/nats/useNats.test.tsx +0 -81
  701. package/src/helpers/nats/useNats.ts +0 -204
  702. package/src/helpers/nats/useNatsSession.test.ts +0 -16
  703. package/src/helpers/nats/useNatsSession.ts +0 -460
  704. package/src/helpers/piiDetection.test.ts +0 -186
  705. package/src/helpers/piiDetection.ts +0 -91
  706. package/src/helpers/sanitizer.ts +0 -17
  707. package/src/helpers/statistics.ts +0 -58
  708. package/src/helpers/stt/useSTT.ts +0 -515
  709. package/src/helpers/translations.ts +0 -39
  710. package/src/helpers/tts/ttsVoiceUtility.ts +0 -275
  711. package/src/helpers/tts/useTTS.ts +0 -621
  712. package/src/helpers/utils.test.ts +0 -331
  713. package/src/helpers/utils.ts +0 -591
  714. package/src/helpers/venue.ts +0 -36
  715. package/src/i18n.ts +0 -39
  716. package/src/index.stories.tsx +0 -220
  717. package/src/index.test.tsx +0 -156
  718. package/src/index.tsx +0 -592
  719. package/src/locales/de.json +0 -680
  720. package/src/locales/en.json +0 -754
  721. package/src/locales/es.json +0 -682
  722. package/src/locales/fr.json +0 -682
  723. package/src/locales/it.json +0 -750
  724. package/src/mocks/data.ts +0 -790
  725. package/src/styles.css +0 -126
  726. package/src/types/integration.test.ts +0 -32
  727. package/src/types/integration.ts +0 -31
  728. package/src/types/layout.ts +0 -50
  729. package/src/version.ts +0 -2
@@ -1,1192 +0,0 @@
1
- import React, { useEffect } from 'react';
2
- import { Meta, Story } from '@storybook/react';
3
- import { memori, tenant } from '../../mocks/data';
4
- import I18nWrapper from '../../I18nWrapper';
5
- import ChatBubble, { Props } from './ChatBubble';
6
- import { installMathJax } from '../../helpers/utils';
7
-
8
- import './ChatBubble.css';
9
-
10
- const meta: Meta = {
11
- title: 'Widget/Chat bubble',
12
- component: ChatBubble,
13
- argTypes: {
14
- fromUser: {
15
- control: {
16
- type: 'boolean',
17
- },
18
- },
19
- text: {
20
- control: {
21
- type: 'text',
22
- },
23
- },
24
- initial: {
25
- control: {
26
- type: 'boolean',
27
- },
28
- },
29
- useMathFormatting: {
30
- control: {
31
- type: 'boolean',
32
- },
33
- },
34
- },
35
- parameters: {
36
- controls: { expanded: true },
37
- },
38
- };
39
-
40
- export default meta;
41
-
42
- const Template: Story<Props> = args => {
43
- useEffect(() => {
44
- // @ts-ignore
45
- if (args.useMathFormatting && !window.MathJax) installMathJax();
46
- }, [args.useMathFormatting]);
47
-
48
- return (
49
- <I18nWrapper>
50
- <ChatBubble {...args} />
51
- </I18nWrapper>
52
- );
53
- };
54
-
55
- // By passing using the Args format for exported stories, you can control the props for a component for reuse in a test
56
- // https://storybook.js.org/docs/react/workflows/unit-testing
57
- export const Default = Template.bind({});
58
- Default.args = {
59
- memori,
60
- tenant,
61
- message: {
62
- fromUser: false,
63
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
64
- initial: false,
65
- translatedText:
66
- 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
67
- },
68
- };
69
-
70
- export const Test = Template.bind({});
71
- Test.args = {
72
- memori,
73
- tenant,
74
- message: {
75
- memoryID: 'a8fa7fc4-8e1d-41bb-824f-b78e647cac7e',
76
- text: '<think>L\'utente vuole che io elenchi i parametri dell\'ALBERO ESISTENTE. Devo fare una Rails Query per recuperare tutti i parametri specifici di questo oggetto dal project snapshot.</think>\n\n<output class="rails-query" style="display:none">\nproject = Project.find("68d99b05783713e16737d32b")\nsnapshot = project.project_snapshots.where(:total_objects.gt => 0).order(snapshot_date: :desc).first\n\noggetto = snapshot.technical_objects_data.find { |obj| obj["object_definition"] == "ALBERO ESISTENTE" }\nparametri = snapshot.parameters_data.select { |p| p["technical_object_id"] == oggetto["id"] }\n\nrisultato = parametri.map do |p|\n {\n categoria: p["category"],\n parametro: p["parameter_name"],\n nome_ifc: p["ifc_parameter_name"],\n unita_misura: p["measurement_unit"],\n tipo: p["parameter_type"],\n descrizione: p["description"],\n esempio: p["example"],\n loi_b: p["loi_b"],\n loi_c: p["loi_c"],\n loi_d: p["loi_d"],\n loi_e: p["loi_e"],\n loi_f: p["loi_f"],\n loi_g: p["loi_g"],\n pset: p["pset"]\n }\nend\n\n{ status: \'success\', data: { oggetto: oggetto, parametri: risultato }, count: risultato.size }\n</output>\n\nRecupero tutti i 7 parametri dell\'ALBERO ESISTENTE...',
77
- media: [],
78
- fromUser: false,
79
- timestamp: '2025-10-13T07:08:11.871262Z',
80
- initial: false,
81
- contextVars: {
82
- BIM: 'PARAMETRI LOI',
83
- ENV: 'LOCALE',
84
- ROUTE: 'YBU6W9QGUREN5JVL',
85
- PATHNAME: '/BIM-AI/YBU6W9QGUREN5JVL',
86
- PROJECT_ID: '68d99b05783713e16737d32b',
87
- CLIENT_NAME: 'Cliente Test',
88
- },
89
- generatedByAI: true,
90
- acceptsFeedback: false,
91
- },
92
- showReasoning: true,
93
- };
94
-
95
- export const FromUser = Template.bind({});
96
- FromUser.args = {
97
- memori,
98
- tenant,
99
- message: {
100
- fromUser: true,
101
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
102
- initial: false,
103
- translatedText:
104
- 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
105
- },
106
- };
107
-
108
- export const FromUserWithLink = Template.bind({});
109
- FromUserWithLink.args = {
110
- memori,
111
- tenant,
112
- message: {
113
- fromUser: true,
114
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor. [Vedi altro](https://memori.ai)',
115
- initial: false,
116
- },
117
- };
118
-
119
- export const Initial = Template.bind({});
120
- Initial.args = {
121
- memori,
122
- tenant,
123
- message: {
124
- fromUser: false,
125
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
126
- initial: true,
127
- translatedText:
128
- 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
129
- },
130
- };
131
-
132
- export const CopyDisabled = Template.bind({});
133
- CopyDisabled.args = {
134
- memori,
135
- tenant,
136
- message: {
137
- fromUser: false,
138
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
139
- },
140
- showCopyButton: false,
141
- };
142
-
143
- export const GeneratedByAI = Template.bind({});
144
- GeneratedByAI.args = {
145
- memori,
146
- tenant,
147
- message: {
148
- fromUser: false,
149
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
150
- initial: false,
151
- translatedText:
152
- 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
153
- generatedByAI: true,
154
- },
155
- };
156
-
157
- export const WithTranslationAndOriginal = Template.bind({});
158
- WithTranslationAndOriginal.args = {
159
- memori,
160
- tenant,
161
- message: {
162
- fromUser: false,
163
- text: 'Hello, this is a translated text so you can talk to me in different languages',
164
- initial: false,
165
- translatedText:
166
- 'Ciao, questo è un testo tradotto in modo che tu possa parlarmi in diverse lingue',
167
- },
168
- showTranslationOriginal: true,
169
- };
170
-
171
- export const WithLongLink = Template.bind({});
172
- WithLongLink.args = {
173
- memori,
174
- tenant,
175
- message: {
176
- fromUser: false,
177
- initial: false,
178
- text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor. Vedi altro su: https://aisuru.aclambda.online/it/memoridev/MANUALE%20DI%20RICHIEDENTE%20CENTRO%20DI%20COSTOAWANAGANAQUESTOLINKNONESISTEMADIVENTAMOLTOLUNGOESENZASPAZI',
179
- },
180
- };
181
-
182
- export const WithFeedbackButtons = Template.bind({});
183
- WithFeedbackButtons.args = {
184
- memori,
185
- tenant,
186
- message: {
187
- fromUser: false,
188
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
189
- initial: false,
190
- translatedText:
191
- 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
192
- generatedByAI: false,
193
- },
194
- showFeedback: true,
195
- simulateUserPrompt: () => {},
196
- };
197
-
198
- export const WithAllAddonsContents = Template.bind({});
199
- WithAllAddonsContents.args = {
200
- memori,
201
- tenant,
202
- message: {
203
- fromUser: false,
204
- text: 'Proin libero ante.',
205
- initial: false,
206
- translatedText:
207
- 'Proin libero ter.',
208
- generatedByAI: true,
209
- },
210
- showFeedback: true,
211
- simulateUserPrompt: () => {},
212
- };
213
-
214
- export const WithDebugButton = Template.bind({});
215
- WithDebugButton.args = {
216
- memori,
217
- tenant,
218
- message: {
219
- fromUser: false,
220
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
221
- initial: false,
222
- generatedByAI: true,
223
- media: [
224
- {
225
- mediumID: 'c6851968-5d4d-409a-ae75-f22ec077efcd',
226
- mimeType: 'text/plain',
227
- content: 'Lorem ipsum dolor sit amet',
228
- title: 'Function Cache Lorem ispum',
229
- properties: {
230
- functionCache: 'true',
231
- },
232
- },
233
- ],
234
- },
235
- showFeedback: true,
236
- showFunctionCache: true,
237
- simulateUserPrompt: () => {},
238
- };
239
-
240
- export const WithMultipleFunctionCache = Template.bind({});
241
- WithMultipleFunctionCache.args = {
242
- memori,
243
- tenant,
244
- message: {
245
- fromUser: false,
246
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
247
- initial: false,
248
- generatedByAI: true,
249
- media: [
250
- {
251
- mediumID: 'c6851968-5d4d-409a-ae75-f22ec077efcd',
252
- mimeType: 'text/plain',
253
- content: 'Lorem ipsum dolor sit amet',
254
- title: 'Function Cache Lorem ispum',
255
- properties: {
256
- functionCache: 'true',
257
- },
258
- },
259
- {
260
- mediumID: 'c6851968-5d4d-409a-ae75-f22ec077efce',
261
- mimeType: 'text/plain',
262
- content: 'Lorem ipsum dolor sit amet 2',
263
- title: 'Function Cache 2',
264
- properties: {
265
- functionCache: 'true',
266
- },
267
- },
268
- ],
269
- },
270
- showFeedback: true,
271
- showFunctionCache: true,
272
- simulateUserPrompt: () => {},
273
- };
274
-
275
- export const FromUserWithAvatar = Template.bind({});
276
- FromUserWithAvatar.args = {
277
- memori,
278
- tenant,
279
- user: { avatarURL: 'https://picsum.photos/200' },
280
- message: {
281
- fromUser: true,
282
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
283
- initial: false,
284
- translatedText:
285
- 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
286
- },
287
- };
288
-
289
- export const FromUserWithCustomAvatar = Template.bind({});
290
- FromUserWithCustomAvatar.args = {
291
- memori,
292
- tenant,
293
- userAvatar: 'https://picsum.photos/200',
294
- message: {
295
- fromUser: true,
296
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
297
- initial: false,
298
- translatedText:
299
- 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
300
- },
301
- };
302
-
303
- export const FromUserWithCustomAvatarElement = Template.bind({});
304
- FromUserWithCustomAvatarElement.args = {
305
- memori,
306
- tenant,
307
- userAvatar: <span>USER</span>,
308
- message: {
309
- fromUser: true,
310
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
311
- initial: false,
312
- translatedText:
313
- 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
314
- },
315
- };
316
-
317
- export const FromUserWithCopyButtons = Template.bind({});
318
- FromUserWithCopyButtons.args = {
319
- memori,
320
- tenant,
321
- message: {
322
- fromUser: true,
323
- text: '<p>Questo messaggio mostra i pulsanti di copia anche per gli utenti finali.</p>',
324
- initial: false,
325
- translatedText:
326
- 'Questo messaggio mostra i pulsanti di copia anche per gli utenti finali.',
327
- },
328
- showCopyButton: true,
329
- };
330
-
331
- export const FromUserWithAvatarAndCustomAvatar = Template.bind({});
332
- FromUserWithAvatarAndCustomAvatar.args = {
333
- memori,
334
- tenant,
335
- userAvatar: () => <span>USER</span>,
336
- user: { avatarURL: 'https://picsum.photos/200' },
337
- message: {
338
- fromUser: true,
339
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
340
- initial: false,
341
- translatedText:
342
- 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
343
- },
344
- };
345
-
346
- export const FromExpertOfABoard = Template.bind({});
347
- FromExpertOfABoard.args = {
348
- memori: {
349
- ...memori,
350
- enableBoardOfExperts: true,
351
- },
352
- apiUrl: 'https://backend.memori.ai',
353
- tenant,
354
- experts: [
355
- {
356
- expertID: '9b0a2913-d3d8-4e98-a49d-6e1c99479e1b',
357
- name: 'Expert name',
358
- description: 'Expert description',
359
- expertMemoriID: '9b0a2913-d3d8-4e98-a49d-6e1c99479e1b',
360
- expertBaseURL: 'https://engine.memori.ai',
361
- },
362
- ],
363
- message: {
364
- fromUser: false,
365
- text: 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
366
- initial: false,
367
- generatedByAI: true,
368
- emitter: 'Expert name',
369
- translatedText:
370
- 'Proin libero ante, dignissim sit amet turpis a, pretium condimentum dolor.',
371
- },
372
- };
373
-
374
- export const WithMarkdown = Template.bind({});
375
- WithMarkdown.args = {
376
- memori,
377
- apiUrl: 'https://backend.memori.ai',
378
- tenant,
379
- message: {
380
- fromUser: false,
381
- text: `## Test
382
-
383
- Ecco tutte le possibili personalizzazioni che puoi applicare:
384
-
385
- - **Colletto**:
386
- - Girocollo
387
- - Scollo a V
388
- - **Manica**:
389
- - Manica Lunga
390
- - Manica Corta
391
- - **Taglia**:
392
- - XS
393
- - S\
394
- - M
395
- - L
396
- - XL
397
- - XXL
398
- - 3XL
399
- - **Posizione Stampa**:
400
- - Fronte Petto
401
- - Retro Schiena
402
- - Fronte DX
403
- - Fronte SX
404
- - **Generazione Immagine**:
405
- - Prompt generazione immagine
406
-
407
- Seleziona le personalizzazioni che desideri applicare.
408
-
409
- [Vedi altro](https://memori.ai)`,
410
- initial: false,
411
- generatedByAI: true,
412
- },
413
- };
414
-
415
- export const WithMarkdownAndBreakLine = Template.bind({});
416
- WithMarkdownAndBreakLine.args = {
417
- memori,
418
- apiUrl: 'https://backend.memori.ai',
419
- tenant,
420
- message: {
421
- fromUser: false,
422
- text: "Per l'avvio di una progettualità è necessario fornire le seguenti informazioni:\n- Natura dell'esigenza progettuale e obiettivi\n- Descrizione del progetto\n- Prima identificazione delle risorse necessarie\n- Costi stimati\n- Benefici attesi\n- Rischi identificati.\n\n\n",
423
- initial: false,
424
- generatedByAI: true,
425
- },
426
- };
427
-
428
- export const WithMarkdownAndMultipleBreakLine = Template.bind({});
429
- WithMarkdownAndMultipleBreakLine.args = {
430
- memori,
431
- apiUrl: 'https://backend.memori.ai',
432
- tenant,
433
- message: {
434
- fromUser: false,
435
- initial: false,
436
- generatedByAI: true,
437
- text: `Ah, ottima domanda! Stavo giusto riflettendo su come spiegare al meglio le funzionalità di questo sistema. \n\nDa qui puoi fare diverse cose interessanti:\n\n1. Puoi conversare con me, Nunzio Fiore, e io risponderò basandomi sulle mie conoscenze ed esperienze.\n\n2. Puoi aggiungere nuove "memorie" o informazioni al mio database. Questo significa che puoi insegnarmi cose nuove o aggiornare le mie conoscenze esistenti.\n\n3. Puoi creare, modificare o eliminare "ricevitori". Questi sono come utenti specifici che possono interagire con me in modo personalizzato.\n\n4. Puoi associare determinate memorie a ricevitori specifici, creando così contenuti personalizzati per diverse persone.\n\n5. Puoi cercare tra le memorie esistenti, visualizzare le ultime aggiunte, o modificare quelle già presenti.\n\nIn pratica, stai interagendo con un sistema che permette di creare e gestire un "gemello digitale" - in questo caso, me stesso. È un po' come scrivere un libro interattivo sulla mia vita e le mie conoscenze.\n\nC'è qualcosa in particolare che ti interessa esplorare o su cui vorresti saperne di più?`,
438
- },
439
- };
440
-
441
- export const WithMarkdownCode = Template.bind({});
442
- WithMarkdownCode.args = {
443
- memori,
444
- apiUrl: 'https://backend.memori.ai',
445
- tenant,
446
- message: {
447
- fromUser: false,
448
- text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.\n\n```markdown\n# titolo\n```\n\nSed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
449
- initial: false,
450
- generatedByAI: true,
451
- },
452
- };
453
-
454
- export const WithOutputCode = Template.bind({});
455
- WithOutputCode.args = {
456
- memori,
457
- apiUrl: 'https://backend.memori.ai',
458
- tenant,
459
- message: {
460
- fromUser: false,
461
- text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.\n\n```markdown\n# titolo\n```\n\nSed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n\n<output class="memori-output">{ "data": [ 0, 1, 2 ] }</output>',
462
- initial: false,
463
- generatedByAI: true,
464
- },
465
- };
466
-
467
- export const WithReasoning = Template.bind({});
468
- WithReasoning.args = {
469
- memori,
470
- apiUrl: 'https://backend.memori.ai',
471
- tenant,
472
- message: {
473
- fromUser: false,
474
- text: `<think>
475
- Okay, the user is asking for a couple of relevant links to help them show the product to the girl. Let me think about what they need.
476
-
477
- First, they want to present the Lenovo tablet and accessories. The user mentioned using visual materials, so links to product pages or guides would be useful. They might need official Lenovo sources for accuracy.
478
-
479
- I should check if there are official Lenovo pages for the Yoga Tab 10 Pro and ThinkPad X1 Tablet. Those would be the main products. Also, maybe a guide on how to use the tablet for video calls, especially for elderly users.
480
-
481
- Wait, the user is a girl who wants to give a gift to her grandmother. The links should be trustworthy and in Italian. Let me make sure the links are in Italian and from Lenovo's official site.
482
-
483
- I remember that Lenovo has a website with product details. The Yoga Tab 10 Pro and ThinkPad X1 Tablet are both available there. Also, there might be a guide or FAQ section on their site that explains how to use the tablet for video calls, which would be helpful for the grandmother.
484
-
485
- I should also consider if there are any official guides or videos from Lenovo that demonstrate the tablet's features, especially for elderly users. Maybe a video tutorial on setting up the tablet for video calls.
486
-
487
- Wait, the user might need links that are in Italian. So I should check if Lenovo's Italian site has these resources. If not, maybe a general guide in Italian from a reliable source. But the user wants to use Lenovo's official materials, so sticking to their site is better.
488
-
489
- Also, the user might need links to the product pages, the accessories, and a guide on using the tablet for video calls. Let me verify the URLs for the Yoga Tab 10 Pro and ThinkPad X1 Tablet on Lenovo's Italian site.
490
-
491
- Once I have those, I can provide them as the main links. Then, a guide or FAQ that explains how to use the tablet for video calls, especially for elderly users.
492
-
493
- I should make sure the links are up-to-date and correct. If there's a specific page on Lenovo's site that's relevant, that's the best. If not, maybe a general guide from a trusted source, but the user prefers Lenovo's official resources.
494
-
495
- So, the two main links would be the product pages for the Yoga Tab 10 Pro and ThinkPad X1 Tablet. Then, a guide or video on using the tablet for video calls.
496
-
497
- Wait, the user asked for a couple of links. Maybe two main ones: the product pages and a guide. That should cover the essentials.
498
-
499
- I need to present these links in a clear way, making sure they are from Lenovo's official site and in Italian. Also, mention that they can use these to show the product and its features to the girl.
500
-
501
- Double-check the URLs to ensure they are correct. If there's a specific page for the accessories, that could be another link, but the user might need the main product pages first.
502
-
503
- Alright, I think that's it. Provide the product pages and a guide on using the tablet for video calls, both from Lenovo's official site in Italian.
504
- </think>
505
-
506
- Ecco due link rilevanti che puoi utilizzare per aiutare la ragazza a mostrare il prodotto e i suoi accessori. Questi link puntano a risorse ufficiali Lenovo in italiano, che forniscono informazioni dettagliate e accurate su i prodotti e le loro funzionalità:
507
-
508
- ---
509
-
510
- ### **1. Pagina ufficiale del Lenovo Yoga Tab 10 Pro (10.1" - 2024)**
511
- **Link**: [https://www.lenovo.com/it/it/products/tablets/yoga-tab-10-pro/](https://www.lenovo.com/it/it/products/tablets/yoga-tab-10-pro/)
512
- **Descrizione**:
513
- - Informazioni complete sul tablet, inclusi i dettagli tecnici (display, batteria, sistema operativo), le caratteristiche principali e le opzioni di personalizzazione.
514
- - Include una sezione dedicata alle videochiamate, con spiegazioni su come utilizzare il tablet per chiamate in alta definizione.
515
- - Ideale per mostrare la compatibilità con app di videochiamate come Zoom, Skype e FaceTime.
516
-
517
- **Utilizzo consigliato**:
518
- - Mostra la pagina per spiegare le caratteristiche tecniche del tablet.
519
- - Fornisci un'immagine del tablet con il filtro di privacy attivo per illustrare la protezione della privacy.
520
-
521
- ---
522
-
523
- ### **2. Guida ufficiale per l'uso del tablet per videochiamate (in italiano)**
524
- **Link**: [https://www.lenovo.com/it/it/support/faq/](https://www.lenovo.com/it/it/support/faq/)
525
- **Descrizione**:
526
- - Una sezione FAQ (Frequently Asked Questions) che risponde a domande comuni su come utilizzare il tablet per videochiamate, inclusi:
527
- - Come iniziare una chiamata.
528
- - Come utilizzare il filtro di privacy.
529
- - Come gestire la batteria e le connessioni.
530
- - Include video tutorial e immagini per spiegare passaggi semplici.
531
- - Adatto per un pubblico non esperto, come la nonna.
532
-
533
- **Utilizzo consigliato**:
534
- - Mostra la guida per spiegare come usare il tablet in modo semplice.
535
- - Usa i video tutorial per dimostrare l'esperienza di videochiamate.
536
-
537
- ---
538
-
539
- ### **Altri consigli per il materiale visivo**
540
- Se vuoi aggiungere ulteriori risorse, puoi consultare:
541
- - **Pagina ufficiale degli accessori Lenovo**: [https://www.lenovo.com/it/it/products/accessories/](https://www.lenovo.com/it/it/products/accessories/)
542
- - **Video tutorial ufficiali su YouTube**: Cerca "Lenovo Yoga Tab 10 Pro videochiamate" o "Lenovo ThinkPad X1 Tablet uso per videochiamate".
543
-
544
- Questi link ti permettono di creare un materiale visivo coerente e basato su informazioni verificate, che aiuterà la ragazza a spiegare il prodotto e gli accessori in modo chiaro e professionale. Se hai bisogno di aiuto per personalizzare ulteriormente il materiale, posso aiutarti! 😊`,
545
- initial: false,
546
- generatedByAI: true,
547
- },
548
- };
549
-
550
- export const WithReasoningShown = Template.bind({});
551
- WithReasoningShown.args = {
552
- memori,
553
- apiUrl: 'https://backend.memori.ai',
554
- tenant,
555
- showReasoning: true,
556
- message: {
557
- fromUser: false,
558
- text: `<think>
559
- Okay, the user is asking for a couple of relevant links to help them show the product to the girl. Let me think about what they need.
560
-
561
- First, they want to present the Lenovo tablet and accessories. The user mentioned using visual materials, so links to product pages or guides would be useful. They might need official Lenovo sources for accuracy.
562
-
563
- I should check if there are official Lenovo pages for the Yoga Tab 10 Pro and ThinkPad X1 Tablet. Those would be the main products. Also, maybe a guide on how to use the tablet for video calls, especially for elderly users.
564
-
565
- Wait, the user is a girl who wants to give a gift to her grandmother. The links should be trustworthy and in Italian. Let me make sure the links are in Italian and from Lenovo's official site.
566
-
567
- I remember that Lenovo has a website with product details. The Yoga Tab 10 Pro and ThinkPad X1 Tablet are both available there. Also, there might be a guide or FAQ section on their site that explains how to use the tablet for video calls, which would be helpful for the grandmother.
568
-
569
- I should also consider if there are any official guides or videos from Lenovo that demonstrate the tablet's features, especially for elderly users. Maybe a video tutorial on setting up the tablet for video calls.
570
-
571
- Wait, the user might need links that are in Italian. So I should check if Lenovo's Italian site has these resources. If not, maybe a general guide in Italian from a reliable source. But the user wants to use Lenovo's official materials, so sticking to their site is better.
572
-
573
- Also, the user might need links to the product pages, the accessories, and a guide on using the tablet for video calls. Let me verify the URLs for the Yoga Tab 10 Pro and ThinkPad X1 Tablet on Lenovo's Italian site.
574
-
575
- Once I have those, I can provide them as the main links. Then, a guide or FAQ that explains how to use the tablet for video calls, especially for elderly users.
576
-
577
- I should make sure the links are up-to-date and correct. If there's a specific page on Lenovo's site that's relevant, that's the best. If not, maybe a general guide from a trusted source, but the user prefers Lenovo's official resources.
578
-
579
- So, the two main links would be the product pages for the Yoga Tab 10 Pro and ThinkPad X1 Tablet. Then, a guide or video on using the tablet for video calls.
580
-
581
- Wait, the user asked for a couple of links. Maybe two main ones: the product pages and a guide. That should cover the essentials.
582
-
583
- I need to present these links in a clear way, making sure they are from Lenovo's official site and in Italian. Also, mention that they can use these to show the product and its features to the girl.
584
-
585
- Double-check the URLs to ensure they are correct. If there's a specific page for the accessories, that could be another link, but the user might need the main product pages first.
586
-
587
- Alright, I think that's it. Provide the product pages and a guide on using the tablet for video calls, both from Lenovo's official site in Italian.
588
- </think>
589
-
590
- Ecco due link rilevanti che puoi utilizzare per aiutare la ragazza a mostrare il prodotto e i suoi accessori. Questi link puntano a risorse ufficiali Lenovo in italiano, che forniscono informazioni dettagliate e accurate su i prodotti e le loro funzionalità:
591
-
592
- ---
593
-
594
- ### **1. Pagina ufficiale del Lenovo Yoga Tab 10 Pro (10.1" - 2024)**
595
- **Link**: [https://www.lenovo.com/it/it/products/tablets/yoga-tab-10-pro/](https://www.lenovo.com/it/it/products/tablets/yoga-tab-10-pro/)
596
- **Descrizione**:
597
- - Informazioni complete sul tablet, inclusi i dettagli tecnici (display, batteria, sistema operativo), le caratteristiche principali e le opzioni di personalizzazione.
598
- - Include una sezione dedicata alle videochiamate, con spiegazioni su come utilizzare il tablet per chiamate in alta definizione.
599
- - Ideale per mostrare la compatibilità con app di videochiamate come Zoom, Skype e FaceTime.
600
-
601
- **Utilizzo consigliato**:
602
- - Mostra la pagina per spiegare le caratteristiche tecniche del tablet.
603
- - Fornisci un'immagine del tablet con il filtro di privacy attivo per illustrare la protezione della privacy.
604
-
605
- ---
606
-
607
- ### **2. Guida ufficiale per l'uso del tablet per videochiamate (in italiano)**
608
- **Link**: [https://www.lenovo.com/it/it/support/faq/](https://www.lenovo.com/it/it/support/faq/)
609
- **Descrizione**:
610
- - Una sezione FAQ (Frequently Asked Questions) che risponde a domande comuni su come utilizzare il tablet per videochiamate, inclusi:
611
- - Come iniziare una chiamata.
612
- - Come utilizzare il filtro di privacy.
613
- - Come gestire la batteria e le connessioni.
614
- - Include video tutorial e immagini per spiegare passaggi semplici.
615
- - Adatto per un pubblico non esperto, come la nonna.
616
-
617
- **Utilizzo consigliato**:
618
- - Mostra la guida per spiegare come usare il tablet in modo semplice.
619
- - Usa i video tutorial per dimostrare l'esperienza di videochiamate.
620
-
621
- ---
622
-
623
- ### **Altri consigli per il materiale visivo**
624
- Se vuoi aggiungere ulteriori risorse, puoi consultare:
625
- - **Pagina ufficiale degli accessori Lenovo**: [https://www.lenovo.com/it/it/products/accessories/](https://www.lenovo.com/it/it/products/accessories/)
626
- - **Video tutorial ufficiali su YouTube**: Cerca "Lenovo Yoga Tab 10 Pro videochiamate" o "Lenovo ThinkPad X1 Tablet uso per videochiamate".
627
-
628
- Questi link ti permettono di creare un materiale visivo coerente e basato su informazioni verificate, che aiuterà la ragazza a spiegare il prodotto e gli accessori in modo chiaro e professionale. Se hai bisogno di aiuto per personalizzare ulteriormente il materiale, posso aiutarti! 😊`,
629
- initial: false,
630
- generatedByAI: true,
631
- },
632
- };
633
-
634
- export const WithMarkdownTable = Template.bind({});
635
- WithMarkdownTable.args = {
636
- memori,
637
- apiUrl: 'https://backend.memori.ai',
638
- tenant,
639
- message: {
640
- fromUser: false,
641
- text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.\n\n| Header 1 | Header 2 | Header 3 |\n| -------- | -------- | -------- |\n| Cell 1 | Cell 2 | Cell 3 |\n| Cell 4 | Cell 5 | Cell 6 |\n\nSed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
642
- initial: false,
643
- generatedByAI: true,
644
- },
645
- };
646
-
647
- export const MarkdownWithSquareBrackets = Template.bind({});
648
- MarkdownWithSquareBrackets.args = {
649
- memori,
650
- apiUrl: 'https://backend.memori.ai',
651
- tenant,
652
- message: {
653
- fromUser: false,
654
- text: `B. Funzione per lo stock:
655
- - Nome: "check_stock"
656
- - Descrizione: "Usa questa funzione per verificare la disponibilità di un prodotto nel magazzino"
657
- - Webhook: [URL del tuo gestionale]
658
- - Parametro: "product_id" (string)`,
659
- initial: false,
660
- generatedByAI: true,
661
- },
662
- };
663
-
664
- export const MarkdownWithSquareBracketsAndTable = Template.bind({});
665
- MarkdownWithSquareBracketsAndTable.args = {
666
- memori,
667
- apiUrl: 'https://backend.memori.ai',
668
- tenant,
669
- message: {
670
- fromUser: false,
671
- initial: false,
672
- generatedByAI: true,
673
- text: `<table border="1" style="border-collapse: collapse; width: 100%; table-layout: fixed; font-family: Arial, sans-serif;">
674
- <tr style="background-color: #f0f0f0;">
675
- <th style="text-align: left; padding: 8px; width: 200px;">Attività</th>
676
- <th colspan="4" style="text-align: center; padding: 8px;">Dic 2024</th>
677
- <th colspan="4" style="text-align: center; padding: 8px;">Gen 2025</th>
678
- <th colspan="4" style="text-align: center; padding: 8px;">Feb 2025</th>
679
- <th colspan="4" style="text-align: center; padding: 8px;">Mar 2025</th>
680
- <th colspan="4" style="text-align: center; padding: 8px;">Apr 2025</th>
681
- <th colspan="4" style="text-align: center; padding: 8px;">Mag 2025</th>
682
- <th colspan="4" style="text-align: center; padding: 8px;">Giu 2025</th>
683
- </tr>
684
- </table>
685
-
686
- [Vuoi che continui con l'intera tabella mantenendo lo stesso formato della precedente ma con table-layout: fixed per garantire celle di uguale dimensione?]`,
687
- },
688
- };
689
-
690
- export const MarkdownWithLists = Template.bind({});
691
- MarkdownWithLists.args = {
692
- memori,
693
- apiUrl: 'https://backend.memori.ai',
694
- tenant,
695
- message: {
696
- fromUser: false,
697
- initial: false,
698
- generatedByAI: true,
699
- text: `I buoni spesa sono acquistabili con il credito Fringe Benefit (pari a 1.000 € per l'anno 2024) e si distinguono in 3 tipologie:
700
-
701
- 1. **Buoni Elettronici**:
702
- - Emessi digitalmente
703
- - Scaricabili/stampabili dalla piattaforma
704
- - Consegna in 3-4 giorni lavorativi
705
-
706
- 2. **Buoni Fisici**:
707
- - Tessere fisiche inviate direttamente
708
- - Tempi di consegna più lunghi
709
-
710
- 3. **Buoni Elettronici Locali**:
711
- - Emessi da fornitori della zona
712
- - Inviati in formato PDF
713
-
714
- **NOTA IMPORTANTE**: Non è possibile acquistare buoni Amazon sulla piattaforma TreCuori.
715
-
716
- Se hai bisogno di vedere quali buoni sono disponibili e dove spenderli, fammi sapere!`,
717
- },
718
- };
719
-
720
- export const ComplexMarkdownMath1 = Template.bind({});
721
- ComplexMarkdownMath1.args = {
722
- memori,
723
- apiUrl: 'https://backend.memori.ai',
724
- tenant,
725
- useMathFormatting: true,
726
- message: {
727
- fromUser: false,
728
- initial: false,
729
- generatedByAI: true,
730
- text: `Per calcolare l'ipotenusa di un triangolo rettangolo, puoi usare il Teorema di Pitagora. Il teorema afferma che in un triangolo rettangolo, il quadrato dell'ipotenusa (la lato opposto all'angolo retto) è uguale alla somma dei quadrati degli altri due lati.\n\nLa formula è:\n\n\\[ c = \\sqrt{a^2 + b^2} \\]\n\nDove:\n- $c$ è l'ipotenusa.\n- $a$ e $ b $ sono i due cateti del triangolo.\n\n### Passaggi per il Calcolo\n\n1. **Misura o identifica i cateti $ a $ e $ b $**:\n I cateti sono i due lati che formano l'angolo retto.\n\n2. **Calcola i quadrati dei cateti**:\n Eleva al quadrato entrambe le misure dei cateti: $ a^2 $ e $ b^2 $.\n\n3. **Somma i quadrati dei cateti**:\n Somma i risultati ottenuti: $ a^2 + b^2 $.\n\n4. **Calcola la radice quadrata della somma**:\n Prendi la radice quadrata della somma per trovare l'ipotenusa: [ c = \\sqrt{a^2 + b^2} ].\n\n### Esempio di Calcolo\n\nSupponiamo di avere un triangolo rettangolo con i cateti di lunghezza 3 cm e 4 cm.\n\n1. **Cateto $ a $**: 3 cm\n2. **Cateto $ b $**: 4 cm\n\nUsiamo la formula:\n\n\\[ c = \\sqrt{a^2 + b^2} \\]\n\n\\[ c = \\sqrt{(3 \\, \\text{cm})^2 + (4 \\, \\text{cm})^2} \\]\n\n\\[ c = \\sqrt{9 \\, \\text{cm}^2 + 16 \\, \\text{cm}^2} \\]\n\n\\[ c = \\sqrt{25 \\, \\text{cm}^2} \\]\n\n\\[ c = 5 \\, \\text{cm} \\]\n\nQuindi, l'ipotenusa del triangolo è di 5 cm.`,
731
- },
732
- };
733
-
734
- export const ComplexMarkdownMath2 = Template.bind({});
735
- ComplexMarkdownMath2.args = {
736
- memori,
737
- apiUrl: 'https://backend.memori.ai',
738
- tenant,
739
- useMathFormatting: true,
740
- message: {
741
- fromUser: false,
742
- initial: false,
743
- generatedByAI: true,
744
- text: "Per calcolare le resistenze dei materiali per le verifiche rispetto ad azioni antropiche e ambientali secondo la Specifica Tecnica ST-VAL4, si procede in questo modo:\n\n1. **Determinazione della resistenza dei materiali:**\n La resistenza dei materiali da utilizzare nelle verifiche accurate si determina a partire dalle indagini sull’opera. La caratterizzazione deve essere distinta per tutti i materiali presenti nell'opera, in accordo con la ST-PI. Le resistenze per verifiche rispetto ad azioni antropiche come i carichi da traffico e le azioni ambientali sono definite dalle LG20. Questo include la distinzione rispetto a quelle utilizzate per le azioni sismiche, come dettagliato dalle NTC18 e CIR19 .\n\n2. **Calcolo della resistenza:**\n Il valore della resistenza dei materiali $ f_d $ da utilizzare nelle verifiche per carichi gravitazionali si ottiene mediante la seguente espressione:\n\n \\[\n f_d = \\min \\left( \\frac{f_m}{FC \\cdot \\gamma_M}, \\frac{f_k}{FC} \\right)\n \\]\n\n Dove:\n - $ f_m $ è il valor medio della resistenza valutato dai risultati delle prove effettuate sui campioni prelevati in situ;\n - $ f_k $ è la resistenza caratteristica calcolata sulla base dei risultati delle prove sui campioni prelevati in situ;\n - $ FC $ è il Fattore di Confidenza associato al Livello di Conoscenza raggiunto;\n - $ \\gamma_M $ è il fattore parziale di sicurezza del materiale .\n\n3. **Caratterizzazione dei materiali:**\n I valori medi, caratteristici e di progetto delle resistenze a compressione e trazione per il calcestruzzo, e delle resistenze a snervamento per l’acciaio ordinario sono determinati a partire dai risultati delle prove. Specifiche espressioni e metodi sono forniti per diversi materiali nell'Appendice 13 della ST-VAL4 .\n\n4. **Stima della resistenza da prove non distruttive:**\n Per valutare le resistenze dei materiali, si possono anche utilizzare prove non distruttive come le prove SonReb per il calcestruzzo e le prove di durezza per l'acciaio ordinario e armonico. Formulazioni specifiche per queste prove si trovano in Appendice al §13.1 della ST-VAL4 .\n\n5. **Analisi dei risultati delle indagini:**\n Gli esiti delle prove devono essere attentamente analizzati per confermare le caratteristiche originarie o rilevare eventuali decadimenti del materiale. Questo processo include anche l'identificazione delle cause di dispersione significative nei risultati delle prove .\n\nSeguendo questi passaggi, si ottiene una stima accurata delle resistenze dei materiali che possono essere utilizzate per le verifiche di sicurezza rispetto ad azioni antropiche e ambientali.",
745
- },
746
- };
747
-
748
- export const ComplexMarkdownMath3 = Template.bind({});
749
- ComplexMarkdownMath3.args = {
750
- memori,
751
- apiUrl: 'https://backend.memori.ai',
752
- tenant,
753
- useMathFormatting: true,
754
- message: {
755
- fromUser: false,
756
- initial: false,
757
- generatedByAI: true,
758
- text: "Ok. \n\nPer calcolare l'urto su barriere metalliche, il documento *\"Ponti, viadotti e cavalcavia - Specifica Tecnica per la redazione delle Verifiche Accurate di sicurezza di Livello 4 (ST-VAL4)\"* fornisce un metodo specifico. Ecco l'iter riassunto:\n\n1. **Determinazione del sistema di forze orizzontali:** Partendo dal momento di plasticizzazione del montante (§5.1.3.10 delle NTC18). La forza orizzontale che plasticizza il montante può essere determinata con riferimento alla resistenza caratteristica degli elementi strutturali principali della barriera.\n\n2. **Quota di applicazione della forza:** La forza orizzontale deve essere applicata ad una quota h, che è il minimo tra (altezza della barriera - 0,10 m) e 1,00 m.\n\n3. **Amplificazione delle forze orizzontali:** Per il dimensionamento dell'impalcato, le forze orizzontali sono amplificate di un fattore di 1,50, e il coefficiente parziale di sicurezza per la combinazione di carico agli SLU per l’urto di veicolo in svio è assunto unitario.\n\n4. **Calcolo della massima azione tagliante:** Alla base del montante (estradosso cordolo):\n\n \\[\n F_{\\text{urto}} = \\frac{M_{\\text{pl}}}{h^*}\n \\]\n\n Dove:\n - $M_{\\text{pl}}$ è il momento plastico calcolato con la resistenza caratteristica.\n - $h^* = h - h_R - h_C$\n - $h$ è pari all’altezza della forza di urto sulla superficie di rotolamento (1.00 m), $h_B$ è l’altezza della forza rispetto all’estradosso del cordolo, $h_C$ è l’altezza del cordolo, e $h_R$ è l’altezza dell’irrigidimento del nodo e della piastra di base.\n\n5. **Determinazione del momento trasferito all’estradosso del cordolo:**\n\n \\[\n M_{\\text{urto}} = F_{\\text{urto}} \\cdot h_B = M_{\\text{pl}} \\cdot \\left(1 + \\frac{h_R}{h^*}\\right)\n \\]\n\n6. **Amplificazione per le incertezze:** Il valore caratteristico è amplificato di un fattore parziale pari a 1,50 per tenere conto delle incertezze e possibili deformabilità della lamiera irrigidita.\n\n7. **Considerazione della plasticizzazione:** Nel caso di barriere ordinarie, si considera la piena plasticizzazione di tre montanti consecutivi a seguito dell’urto, salvo diversa valutazione motivata.\n\n8. **Normative alternative:** In assenza di informazioni, si può fare riferimento al valore normativo della forza d’urto di 100 kN (NTC18) da collocarsi a 100 mm sotto la sommità dell’elemento o 1,0 m sopra il livello del piano di marcia【4:0†source】【4:1†source】【4:4†source】【4:9†source】【4:5†source】. \n\nPer ulteriori dettagli o chiarimenti, puoi consultare la sezione del documento ST-VAL4 o scrivere a anna.sganzerla@tecneautostrade.it.",
759
- },
760
- };
761
-
762
- export const ComplexMarkdownMath4 = Template.bind({});
763
- ComplexMarkdownMath4.args = {
764
- memori,
765
- apiUrl: 'https://backend.memori.ai',
766
- tenant,
767
- useMathFormatting: true,
768
- message: {
769
- fromUser: false,
770
- initial: false,
771
- generatedByAI: true,
772
- text: "Per calcolare l'urto su barriere metalliche, è necessario considerare diversi fattori come la massa del veicolo, la velocità dell'impatto, l'angolo di impatto e le caratteristiche della barriera stessa. Di seguito è riportata una descrizione generale del processo di calcolo:\n\n1. **Determinazione dei parametri dell'urto:**\n - **Massa del veicolo (m):** La massa del veicolo che colpisce la barriera.\n - **Velocità dell'impatto (v):** La velocità del veicolo al momento dell'impatto.\n - **Angolo di impatto (θ):** L'angolo con cui il veicolo colpisce la barriera.\n\n2. **Calcolo dell'energia cinetica:**\n L'energia cinetica del veicolo al momento dell'impatto è data dalla formula:\n \\[\n E_k = \\frac{1}{2} m v^2\n \\]\n dove $E_k$ è l'energia cinetica, $m$ è la massa del veicolo e $v$ è la velocità del veicolo.\n\n3. **Calcolo della forza d'impatto:**\n La forza d'impatto può essere calcolata considerando la decelerazione del veicolo e il tempo di contatto con la barriera. Una formula semplificata per la forza d'impatto $F$ è:\n \\[\n F = \\frac{m \\Delta v}{\\Delta t}\n \\]\n dove $ \\Delta v $ è la variazione di velocità (che può essere considerata uguale alla velocità iniziale \\(v\\) se il veicolo si ferma completamente), e $ \\Delta t $ è il tempo di contatto.\n\n4. **Considerazioni sulla barriera:**\n Le barriere metalliche sono progettate per assorbire energia e ridurre la forza trasmessa ai veicoli e agli occupanti. La capacità di assorbimento dell'energia della barriera dipende dal materiale, dalla geometria e dalla costruzione della barriera stessa.\n\n5. **Normative e standard:**\n È importante seguire le normative e gli standard specifici per la progettazione e il calcolo delle barriere di sicurezza. Questi possono variare a seconda del paese e dell'applicazione specifica (ad esempio, autostrade, ponti, ecc.).\n\nPer calcoli più dettagliati e specifici, si consiglia di consultare le normative tecniche locali e di utilizzare software di simulazione specializzati che possono prendere in considerazione tutti i fattori rilevanti.",
773
- },
774
- };
775
-
776
- export const ComplexMarkdownMath5 = Template.bind({});
777
- ComplexMarkdownMath5.args = {
778
- memori,
779
- tenant,
780
- useMathFormatting: true,
781
- apiUrl: 'https://backend.memori.ai',
782
- message: {
783
- fromUser: false,
784
- initial: false,
785
- generatedByAI: true,
786
- text: "Per calcolare l'ipotenusa di un triangolo rettangolo, puoi utilizzare il teorema di Pitagora. La formula è:\n\n\\\\[ c = \\\\sqrt{a^2 + b^2} \\\\]\n\nDove:\n- \\\\( c \\\\) è l'ipotenusa,\n- \\\\( a \\\\) e \\\\( b \\\\) sono i due cateti del triangolo.\n\nAd esempio, se hai un triangolo con i cateti di lunghezza 3 e 4, l'ipotenusa sarà:\n\n\\\\[ c = \\\\sqrt{3^2 + 4^2} = \\\\sqrt{9 + 16} = \\\\sqrt{25} = 5 \\\\]\n\nSe hai altre domande o dubbi, sono qui per aiutarti!",
787
- },
788
- };
789
-
790
- export const ComplexMarkdownMath6 = Template.bind({});
791
- ComplexMarkdownMath6.args = {
792
- memori,
793
- tenant,
794
- useMathFormatting: true,
795
- apiUrl: 'https://backend.memori.ai',
796
- message: {
797
- fromUser: false,
798
- initial: false,
799
- generatedByAI: true,
800
- text: `La formula per il calcolo della spinta passiva non è riportata precisamente nel documento, ma in base alle informazioni presenti nella Specifica Tecnica per la redazione delle Verifiche Accurate di sicurezza di Livello 4 (ST-VAL4), il contesto del calcolo delle spinte passive può essere richiamato come segue:
801
-
802
- Il calcolo della spinta passiva in geotecnica solitamente coinvolge il coefficiente di spinta passiva, che può esser calcolato usando diverse formulazioni a seconda delle condizioni (statiche o sismiche).
803
-
804
- 1. **In condizioni statiche**, il calcolo della pressione del terreno avviene considerando il coefficiente passivo $k_p$:$k_p = \frac{1 + sin(\phi)}{1 - sin(\phi)}$
805
-
806
- 2. **In condizioni sismiche**, si può utilizzare la formulazione di Mononobe-Okabe:
807
- \[
808
- k_h = \beta \cdot \frac{a_{\max}}{g}
809
- \]
810
- dove:
811
- - $\beta$ è il coefficiente di riduzione della accelerazione massima attesa al sito
812
- - $a_{\max}$ è l'accelerazione massima
813
- - $g$ è l'accelerazione di gravità .
814
-
815
- Se hai bisogno di dettagli più specifici o ulteriori informazioni su un altro argomento, fammi sapere!`,
816
- },
817
- };
818
-
819
- export const ComplexMarkdownMath7 = Template.bind({});
820
- ComplexMarkdownMath7.args = {
821
- memori,
822
- tenant,
823
- apiUrl: 'https://backend.memori.ai',
824
- useMathFormatting: true,
825
- message: {
826
- fromUser: false,
827
- initial: false,
828
- generatedByAI: true,
829
- text: `Il coefficiente di adeguatezza $𝜁_V$ è definito dalle normative NTC18 come il rapporto tra il valore massimo del sovraccarico verticale variabile sopportabile dalla parte i-esima della costruzione e il valore del sovraccarico verticale variabile che si utilizzerebbe nel progetto di una nuova costruzione.
830
-
831
- Tale parametro viene calcolato tramite la seguente espressione:
832
-
833
- $$
834
- 𝜁_V = \frac{𝑅_d - (𝐸_{d,G} + 𝐸_{d,Q𝑡,𝑜𝑟𝑖𝑧𝑧𝑜𝑛𝑡𝑎𝑙𝑖} + 𝐸_{d,Q𝑣𝑎𝑟𝑖𝑎𝑏𝑖𝑙𝑖})}{𝐸_{d,Q𝑡,𝑣𝑒𝑟𝑡𝑖𝑐𝑎𝑙𝑖}}
835
- $$
836
-
837
- dove:
838
-
839
- - $𝑅_d$ è la capacità della sezione resistente;
840
- - $𝐸_{d,G}$ è l’azione sollecitante derivante dai carichi permanenti;
841
- - $𝐸_{d,Q𝑣𝑎𝑟𝑖𝑎𝑏𝑖𝑙𝑖}$ è l’azione sollecitante derivante dai carichi accidentali non da traffico (vento, azioni termiche, ecc.);
842
- - $𝐸_{d,Q𝑡,𝑣𝑒𝑟𝑡𝑖𝑐𝑎𝑙𝑖}$ è l’azione sollecitante derivante dalla componente verticale dei carichi da traffico;
843
- - $𝐸_{d,Q𝑡,𝑜𝑟𝑖𝑧𝑧𝑜𝑛𝑡𝑎𝑙𝑖}$ è l’azione sollecitante derivante dalla componente orizzontale dei carichi da traffico (frenatura o azione centrifuga).
844
-
845
- In accordo con il §6.1.5 delle LG20, il coefficiente $𝜁_V$ ha significato solo per il livello di analisi di "Adeguamento" in quanto per i livelli di "Operatività" e "Transitabilità" la domanda per la quale si svolgono le valutazioni di sicurezza è determinata in condizioni differenti da quelle che si avrebbero per nuove costruzioni ($𝑡_{r𝑒𝑓}$ ridotto, restrizioni all’uso, limitazioni di carico).
846
-
847
- I coefficienti $𝜁_V$ possono essere valutati per le combinazioni che considerano carichi da traffico con componente d’azione verticale .`,
848
- },
849
- };
850
-
851
- export const WithHTML = Template.bind({});
852
- WithHTML.args = {
853
- memori,
854
- tenant,
855
- apiUrl: 'https://backend.memori.ai',
856
- message: {
857
- fromUser: false,
858
- initial: false,
859
- generatedByAI: true,
860
- text: `
861
- <div>
862
- <div style="width: 30%; margin-bottom: 20px;">
863
- <img src="https://www.e-stayon.com/images/thumbs/0244280_lenovo-ideapad-3-chromebook-15-intel-celeron-4gb-64gb_360.jpeg" style="width:100%">
864
- <h3>Lenovo IdeaPad 3 Chromebook</h3>
865
- <p>Intel Celeron, 15", 4GB RAM, 64GB</p>
866
- <p>Prezzo: €194,88 (sconto 12% da €221,59)</p>
867
- </div>
868
-
869
- <div style="width: 30%; margin-bottom: 20px;">
870
- <img src="https://www.e-stayon.com/images/thumbs/0244280_lenovo-ideapad-3-chromebook-15-intel-celeron-4gb-64gb_360.jpeg" style="width:100%">
871
- <h3>Lenovo IdeaPad 3 Chromebook</h3>
872
- <p>Intel Celeron, 15", 4GB RAM, 64GB</p>
873
- <p>Prezzo: €194,88 (sconto 12% da €221,59)</p>
874
- </div>
875
-
876
- <div style="width: 30%; margin-bottom: 20px;">
877
- <img src="https://www.e-stayon.com/images/thumbs/0244280_lenovo-ideapad-3-chromebook-15-intel-celeron-4gb-64gb_360.jpeg" style="width:100%">
878
- <h3>Lenovo IdeaPad 3 Chromebook</h3>
879
- <p>Intel Celeron, 15", 4GB RAM, 64GB</p>
880
- <p>Prezzo: €194,88 (sconto 12% da €221,59)</p>
881
- </div>
882
- </div>
883
- `,
884
- },
885
- };
886
-
887
- // 9. Complex HTML Table
888
- export const ComplexHTMLTable = Template.bind({});
889
- ComplexHTMLTable.args = {
890
- memori,
891
- tenant,
892
- message: {
893
- fromUser: false,
894
- text: `<table border="1" style="border-collapse: collapse; width: 100%;">
895
- <thead>
896
- <tr style="background-color: #f2f2f2;">
897
- <th colspan="3" style="text-align: center; padding: 8px;">Project Timeline</th>
898
- </tr>
899
- <tr style="background-color: #f2f2f2;">
900
- <th style="text-align: left; padding: 8px;">Phase</th>
901
- <th style="text-align: left; padding: 8px;">Start Date</th>
902
- <th style="text-align: left; padding: 8px;">End Date</th>
903
- </tr>
904
- </thead>
905
- <tbody>
906
- <tr>
907
- <td style="padding: 8px;">Planning</td>
908
- <td style="padding: 8px;">Jan 15, 2025</td>
909
- <td style="padding: 8px;">Feb 28, 2025</td>
910
- </tr>
911
- <tr style="background-color: #f9f9f9;">
912
- <td style="padding: 8px;">Development</td>
913
- <td style="padding: 8px;">Mar 1, 2025</td>
914
- <td style="padding: 8px;">Jun 30, 2025</td>
915
- </tr>
916
- <tr>
917
- <td style="padding: 8px;">Testing</td>
918
- <td style="padding: 8px;">Jul 1, 2025</td>
919
- <td style="padding: 8px;">Aug 15, 2025</td>
920
- </tr>
921
- <tr style="background-color: #f9f9f9;">
922
- <td style="padding: 8px;">Deployment</td>
923
- <td style="padding: 8px;">Aug 16, 2025</td>
924
- <td style="padding: 8px;">Sep 30, 2025</td>
925
- </tr>
926
- </tbody>
927
- <tfoot>
928
- <tr style="background-color: #f2f2f2;">
929
- <td colspan="3" style="text-align: center; padding: 8px;">Total Duration: 8.5 months</td>
930
- </tr>
931
- </tfoot>
932
- </table>`,
933
- initial: false,
934
- },
935
- };
936
- ComplexHTMLTable.parameters = {
937
- docs: {
938
- description: {
939
- story:
940
- 'A message containing a complex HTML table that should trigger the loading spinner before rendering.',
941
- },
942
- },
943
- };
944
-
945
- //10. Long text message
946
- export const MediumLongTextMessage = Template.bind({});
947
- MediumLongTextMessage.args = {
948
- memori,
949
- tenant,
950
- message: {
951
- fromUser: false,
952
- text: Array(100)
953
- .fill(
954
- 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non risus. Suspendisse lectus tortor, dignissim sit amet, adipiscing nec, ultricies sed, dolor.'
955
- )
956
- .join('\n\n'),
957
- initial: false,
958
- },
959
- };
960
-
961
- export const LongTextMessage = Template.bind({});
962
- LongTextMessage.args = {
963
- memori,
964
- tenant,
965
- message: {
966
- fromUser: false,
967
- text: Array(200)
968
- .fill(
969
- 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non risus. Suspendisse lectus tortor, dignissim sit amet, adipiscing nec, ultricies sed, dolor. Cras elementum ultrices diam. Maecenas ligula massa, varius a, semper congue, euismod non, mi.'
970
- )
971
- .join('\n\n'),
972
- initial: false,
973
- },
974
- };
975
-
976
- export const LongTextMessageWithHTML = Template.bind({});
977
- LongTextMessageWithHTML.args = {
978
- memori,
979
- tenant,
980
- message: {
981
- fromUser: false,
982
- text:
983
- Array(200)
984
- .fill(
985
- 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non risus. Suspendisse lectus tortor, dignissim sit amet, adipiscing nec, ultricies sed, dolor. Cras elementum ultrices diam. Maecenas ligula massa, varius a, semper congue, euismod non, mi. Proin porttitor, orci nec nonummy molestie, enim est eleifend mi, non fermentum diam nisl sit amet erat.'
986
- )
987
- .join('\n\n') +
988
- `
989
- <div>
990
- <div style="width: 30%; margin-bottom: 20px;">
991
- <img src="https://www.e-stayon.com/images/thumbs/0244280_lenovo-ideapad-3-chromebook-15-intel-celeron-4gb-64gb_360.jpeg" style="width:100%">
992
- <h3>Lenovo IdeaPad 3 Chromebook</h3>
993
- <p>Intel Celeron, 15", 4GB RAM, 64GB</p>
994
- <p>Prezzo: €194,88 (sconto 12% da €221,59)</p>
995
- </div>`,
996
- },
997
- };
998
-
999
- // 10. Message with an embedded helper function to show requiresFormatting detection
1000
- export const FormattingDetectionDemo = Template.bind({});
1001
- FormattingDetectionDemo.args = {
1002
- memori,
1003
- tenant,
1004
- message: {
1005
- fromUser: false,
1006
- text: 'This message demonstrates how the formatting detection works.\n\nBelow are some examples of content that will be detected as requiring formatting:\n\n1. HTML tags: <div>Example</div>\n2. Markdown tables: | Header | Content |\n3. Code blocks: ```javascript\nconst x = 1;\n```\n4. Math formulas: $E = mc^2$\n5. Tabbed data: Name\tAge\tLocation\n\nThe requiresFormatting function will detect these patterns and show a loading spinner.',
1007
- initial: false,
1008
- },
1009
- };
1010
- FormattingDetectionDemo.parameters = {
1011
- docs: {
1012
- description: {
1013
- story:
1014
- 'A demonstration of different content patterns that trigger the loading spinner.',
1015
- },
1016
- },
1017
- };
1018
-
1019
- export const HTMLTable = Template.bind({});
1020
- HTMLTable.args = {
1021
- memori,
1022
- tenant,
1023
- message: {
1024
- fromUser: false,
1025
- text: `Ecco la lista formattata in HTML dei task e dei relativi assegnatari:
1026
- <table>
1027
- <tr>
1028
- <th>Task</th>
1029
- <th>Assegnato a</th>
1030
- </tr>
1031
- <tr><td>Market Research</td><td>Alice</td></tr>
1032
- <tr><td>Content Creation</td><td>Bob</td></tr>
1033
- <tr><td>Social Media Planning</td><td>Charlie</td></tr>
1034
- <tr><td>Campaign Analysis</td><td>Daisy</td></tr>
1035
- <tr><td>Prototype Development</td><td>Ethan</td></tr>
1036
- <tr><td>Quality Assurance</td><td>Fiona</td></tr>
1037
- <tr><td>User Interface Design</td><td>Gabriel</td></tr>
1038
- <tr><td>Service Improvement</td><td>Hannah</td></tr>
1039
- <tr><td>Ticket Resolution</td><td>Ian</td></tr>
1040
- <tr><td>Customer Feedback</td><td>Julia</td></tr>
1041
- <tr><td>Budget Analysis</td><td>Kevin</td></tr>
1042
- <tr><td>Financial Reporting</td><td>Mark</td></tr>
1043
- <tr><td>Investment Planning</td><td>Mark</td></tr>
1044
- <tr><td>Market Trends Analysis</td><td>Nathan</td></tr>
1045
- <tr><td>Data Collection</td><td>Olivia</td></tr>
1046
- <tr><td>Research Paper Writing</td><td>Peter</td></tr>
1047
- <tr><td>Software Development</td><td>Quinn</td></tr>
1048
- <tr><td>Feature Enhancement</td><td>Rachel</td></tr>
1049
- <tr><td>Code Review</td><td>Sam</td></tr>
1050
- <tr><td>Manufacturing</td><td>Tim</td></tr>
1051
- <tr><td>Product Design</td><td>Uma</td></tr>
1052
- <tr><td>UX Research</td><td>Victor</td></tr>
1053
- <tr><td>API Development</td><td>Wendy</td></tr>
1054
- <tr><td>Database Management</td><td>Xavier</td></tr>
1055
- <tr><td>Cloud Infrastructure</td><td>Yara</td></tr>
1056
- <tr><td>Security Testing</td><td>Zack</td></tr>
1057
- <tr><td>Documentation</td><td>Adam</td></tr>
1058
- <tr><td>Technical Support</td><td>Beth</td></tr>
1059
- <tr><td>Project Management</td><td>Carl</td></tr>
1060
- <tr><td>Business Analysis</td><td>Diana</td></tr>
1061
- <tr><td>DevOps Engineering</td><td>Erik</td></tr>
1062
- <tr><td>Mobile Development</td><td>Faith</td></tr>
1063
- <tr><td>Frontend Development</td><td>George</td></tr>
1064
- <tr><td>Backend Development</td><td>Helen</td></tr>
1065
- <tr><td>System Architecture</td><td>Isaac</td></tr>
1066
- <tr><td>Data Analysis</td><td>Jane</td></tr>
1067
- <tr><td>Machine Learning</td><td>Kyle</td></tr>
1068
- <tr><td>AI Development</td><td>Lisa</td></tr>
1069
- <tr><td>Network Security</td><td>Mike</td></tr>
1070
- <tr><td>Performance Testing</td><td>Nina</td></tr>
1071
- <tr><td>Load Testing</td><td>Oscar</td></tr>
1072
- <tr><td>Penetration Testing</td><td>Penny</td></tr>
1073
- <tr><td>Automation Testing</td><td>Quentin</td></tr>
1074
- <tr><td>Release Management</td><td>Rose</td></tr>
1075
- <tr><td>Configuration Management</td><td>Steve</td></tr>
1076
- <tr><td>Change Management</td><td>Tina</td></tr>
1077
- <tr><td>Risk Management</td><td>Ulysses</td></tr>
1078
- <tr><td>Resource Planning</td><td>Violet</td></tr>
1079
- <tr><td>Capacity Planning</td><td>Walter</td></tr>
1080
- <tr><td>Strategic Planning</td><td>Xena</td></tr>
1081
- <tr><td>Operations Management</td><td>Yuki</td></tr>
1082
- <tr><td>Quality Management</td><td>Zara</td></tr>
1083
- </table>
1084
-
1085
- Ho mostrato i primi 20 task per brevità. La tabella include il nome del task e la persona assegnata.`,
1086
- initial: false,
1087
- },
1088
- };
1089
-
1090
- // --- Tag stripping edge-case stories ---
1091
-
1092
- const DIRTY_MESSAGE_TEXT = [
1093
- '<documents>',
1094
- '<document name="note.md">',
1095
- 'un altro test',
1096
- '',
1097
- '# Note nuova UI',
1098
- '',
1099
- '- Allineamento chat bubble e avatar',
1100
- '- Togliamo avatar se non BoE?',
1101
- '</document>',
1102
- '</documents>',
1103
- '<attachment_source>https://assets-staging.memori.ai/api/v2/asset/34631fb2-c58f-4406-aa81-ae57fe26314a.md</attachment_source>',
1104
- '<attachment_link>https://assets-staging.memori.ai/api/v2/asset/fe037cc0-96c7-48d9-97ef-bb5b2ef4b88b.txt</attachment_link>',
1105
- '',
1106
- 'https://assets-staging.memori.ai/api/v2/asset/34631fb2-c58f-4406-aa81-ae57fe26314a.md',
1107
- '',
1108
- 'https://assets-staging.memori.ai/api/v2/asset/fe037cc0-96c7-48d9-97ef-bb5b2ef4b88b.txt',
1109
- ].join('\n');
1110
-
1111
- export const WithDocumentTags = Template.bind({});
1112
- WithDocumentTags.args = {
1113
- memori,
1114
- tenant,
1115
- message: {
1116
- fromUser: true,
1117
- text: DIRTY_MESSAGE_TEXT,
1118
- initial: false,
1119
- },
1120
- showCopyButton: true,
1121
- };
1122
- WithDocumentTags.parameters = {
1123
- docs: {
1124
- description: {
1125
- story:
1126
- 'User message containing <documents>, <attachment_source>, <attachment_link> tags and bare asset URLs. All should be stripped from the rendered bubble and from copy actions.',
1127
- },
1128
- },
1129
- };
1130
-
1131
- export const AssistantWithDocumentTags = Template.bind({});
1132
- AssistantWithDocumentTags.args = {
1133
- memori,
1134
- tenant,
1135
- message: {
1136
- fromUser: false,
1137
- text: 'Ecco il contenuto richiesto.\n\n' + DIRTY_MESSAGE_TEXT,
1138
- initial: false,
1139
- generatedByAI: true,
1140
- },
1141
- showCopyButton: true,
1142
- };
1143
- AssistantWithDocumentTags.parameters = {
1144
- docs: {
1145
- description: {
1146
- story:
1147
- 'Assistant message with document/attachment tags. Tags and asset URLs should not appear in the bubble, copy-plain, or copy-raw.',
1148
- },
1149
- },
1150
- };
1151
-
1152
- export const TranslationTooltipWithDocumentTags = Template.bind({});
1153
- TranslationTooltipWithDocumentTags.args = {
1154
- memori,
1155
- tenant,
1156
- message: {
1157
- fromUser: false,
1158
- text: 'Original text with tags\n<attachment_source>https://assets-staging.memori.ai/api/v2/asset/abc.md</attachment_source>',
1159
- translatedText: 'Testo tradotto senza tag',
1160
- initial: false,
1161
- },
1162
- showTranslationOriginal: true,
1163
- };
1164
- TranslationTooltipWithDocumentTags.parameters = {
1165
- docs: {
1166
- description: {
1167
- story:
1168
- 'When showing the original text tooltip for a translated message, document/attachment tags should be stripped from the tooltip content.',
1169
- },
1170
- },
1171
- };
1172
-
1173
- export const WithDocumentAttachmentTag = Template.bind({});
1174
- WithDocumentAttachmentTag.args = {
1175
- memori,
1176
- tenant,
1177
- message: {
1178
- fromUser: false,
1179
- text: 'Here is the document you requested.\n\n<document_attachment filename="report.pdf" type="application/pdf">Full report content here...</document_attachment>\n\nLet me know if you need anything else.',
1180
- initial: false,
1181
- generatedByAI: true,
1182
- },
1183
- showCopyButton: true,
1184
- };
1185
- WithDocumentAttachmentTag.parameters = {
1186
- docs: {
1187
- description: {
1188
- story:
1189
- 'Message with <document_attachment> tag. The tag content should be stripped from the bubble and copy actions.',
1190
- },
1191
- },
1192
- };