@memori.ai/memori-react 8.10.1 → 8.12.0

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 (177) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/dist/components/AgeVerificationModal/AgeVerificationModal.css +41 -14
  3. package/dist/components/AgeVerificationModal/AgeVerificationModal.js +2 -2
  4. package/dist/components/AgeVerificationModal/AgeVerificationModal.js.map +1 -1
  5. package/dist/components/Auth/Auth.js +36 -8
  6. package/dist/components/Auth/Auth.js.map +1 -1
  7. package/dist/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.css +2 -2
  8. package/dist/components/Chat/Chat.js +2 -2
  9. package/dist/components/Chat/Chat.js.map +1 -1
  10. package/dist/components/ChatBubble/ChatBubble.css +81 -13
  11. package/dist/components/ChatBubble/ChatBubble.js +86 -19
  12. package/dist/components/ChatBubble/ChatBubble.js.map +1 -1
  13. package/dist/components/ChatHistoryDrawer/ChatHistory.css +5 -1
  14. package/dist/components/ChatInputs/ChatInputs.d.ts +1 -0
  15. package/dist/components/ChatInputs/ChatInputs.js +8 -3
  16. package/dist/components/ChatInputs/ChatInputs.js.map +1 -1
  17. package/dist/components/DateSelector/DateSelector.css +125 -104
  18. package/dist/components/DateSelector/DateSelector.d.ts +1 -1
  19. package/dist/components/DateSelector/DateSelector.js +110 -52
  20. package/dist/components/DateSelector/DateSelector.js.map +1 -1
  21. package/dist/components/Header/Header.js +1 -1
  22. package/dist/components/Header/Header.js.map +1 -1
  23. package/dist/components/LoginDrawer/LoginDrawer.css +37 -5
  24. package/dist/components/LoginDrawer/LoginDrawer.d.ts +1 -2
  25. package/dist/components/LoginDrawer/LoginDrawer.js +2 -9
  26. package/dist/components/LoginDrawer/LoginDrawer.js.map +1 -1
  27. package/dist/components/MediaWidget/MediaItemWidget.js +40 -5
  28. package/dist/components/MediaWidget/MediaItemWidget.js.map +1 -1
  29. package/dist/components/MediaWidget/MediaWidget.css +4 -0
  30. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.js +1 -1
  31. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.js.map +1 -1
  32. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.js +1 -1
  33. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.js.map +1 -1
  34. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.js +3 -0
  35. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.js.map +1 -1
  36. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js +2 -2
  37. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js.map +1 -1
  38. package/dist/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.css +16 -7
  39. package/dist/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.js +6 -4
  40. package/dist/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.js.map +1 -1
  41. package/dist/components/MemoriWidget/MemoriWidget.js +69 -25
  42. package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
  43. package/dist/components/UploadButton/UploadButton.js +2 -0
  44. package/dist/components/UploadButton/UploadButton.js.map +1 -1
  45. package/dist/components/UploadButton/UploadImages/UploadImages.js +2 -2
  46. package/dist/components/UploadButton/UploadImages/UploadImages.js.map +1 -1
  47. package/dist/components/ui/Drawer.css +8 -0
  48. package/dist/components/ui/Drawer.d.ts +2 -0
  49. package/dist/components/ui/Drawer.js +2 -2
  50. package/dist/components/ui/Drawer.js.map +1 -1
  51. package/dist/components/ui/Tooltip.css +49 -1
  52. package/dist/components/ui/Tooltip.d.ts +1 -1
  53. package/dist/locales/de.json +6 -1
  54. package/dist/locales/en.json +9 -1
  55. package/dist/locales/es.json +6 -1
  56. package/dist/locales/fr.json +5 -1
  57. package/dist/locales/it.json +8 -1
  58. package/dist/styles.css +3 -2
  59. package/esm/components/AgeVerificationModal/AgeVerificationModal.css +41 -14
  60. package/esm/components/AgeVerificationModal/AgeVerificationModal.js +2 -2
  61. package/esm/components/AgeVerificationModal/AgeVerificationModal.js.map +1 -1
  62. package/esm/components/Auth/Auth.js +36 -8
  63. package/esm/components/Auth/Auth.js.map +1 -1
  64. package/esm/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.css +2 -2
  65. package/esm/components/Chat/Chat.js +2 -2
  66. package/esm/components/Chat/Chat.js.map +1 -1
  67. package/esm/components/ChatBubble/ChatBubble.css +81 -13
  68. package/esm/components/ChatBubble/ChatBubble.js +87 -20
  69. package/esm/components/ChatBubble/ChatBubble.js.map +1 -1
  70. package/esm/components/ChatHistoryDrawer/ChatHistory.css +5 -1
  71. package/esm/components/ChatInputs/ChatInputs.d.ts +1 -0
  72. package/esm/components/ChatInputs/ChatInputs.js +8 -3
  73. package/esm/components/ChatInputs/ChatInputs.js.map +1 -1
  74. package/esm/components/DateSelector/DateSelector.css +125 -104
  75. package/esm/components/DateSelector/DateSelector.d.ts +1 -1
  76. package/esm/components/DateSelector/DateSelector.js +111 -52
  77. package/esm/components/DateSelector/DateSelector.js.map +1 -1
  78. package/esm/components/Header/Header.js +1 -1
  79. package/esm/components/Header/Header.js.map +1 -1
  80. package/esm/components/LoginDrawer/LoginDrawer.css +37 -5
  81. package/esm/components/LoginDrawer/LoginDrawer.d.ts +1 -2
  82. package/esm/components/LoginDrawer/LoginDrawer.js +2 -9
  83. package/esm/components/LoginDrawer/LoginDrawer.js.map +1 -1
  84. package/esm/components/MediaWidget/MediaItemWidget.js +40 -5
  85. package/esm/components/MediaWidget/MediaItemWidget.js.map +1 -1
  86. package/esm/components/MediaWidget/MediaWidget.css +4 -0
  87. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.js +1 -1
  88. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.js.map +1 -1
  89. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.js +1 -1
  90. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.js.map +1 -1
  91. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.js +3 -0
  92. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.js.map +1 -1
  93. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js +2 -2
  94. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js.map +1 -1
  95. package/esm/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.css +16 -7
  96. package/esm/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.js +6 -4
  97. package/esm/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.js.map +1 -1
  98. package/esm/components/MemoriWidget/MemoriWidget.js +69 -25
  99. package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
  100. package/esm/components/UploadButton/UploadButton.js +2 -0
  101. package/esm/components/UploadButton/UploadButton.js.map +1 -1
  102. package/esm/components/UploadButton/UploadImages/UploadImages.js +2 -2
  103. package/esm/components/UploadButton/UploadImages/UploadImages.js.map +1 -1
  104. package/esm/components/ui/Drawer.css +8 -0
  105. package/esm/components/ui/Drawer.d.ts +2 -0
  106. package/esm/components/ui/Drawer.js +2 -2
  107. package/esm/components/ui/Drawer.js.map +1 -1
  108. package/esm/components/ui/Tooltip.css +49 -1
  109. package/esm/components/ui/Tooltip.d.ts +1 -1
  110. package/esm/locales/de.json +6 -1
  111. package/esm/locales/en.json +9 -1
  112. package/esm/locales/es.json +6 -1
  113. package/esm/locales/fr.json +5 -1
  114. package/esm/locales/it.json +8 -1
  115. package/esm/styles.css +3 -2
  116. package/package.json +2 -2
  117. package/src/components/AgeVerificationModal/AgeVerificationModal.css +41 -14
  118. package/src/components/AgeVerificationModal/AgeVerificationModal.tsx +3 -1
  119. package/src/components/Auth/Auth.tsx +55 -11
  120. package/src/components/Avatar/Avatar.stories.tsx +3 -0
  121. package/src/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.css +2 -2
  122. package/src/components/Chat/Chat.stories.tsx +16 -2
  123. package/src/components/Chat/Chat.tsx +2 -1
  124. package/src/components/Chat/__snapshots__/Chat.test.tsx.snap +1036 -36
  125. package/src/components/ChatBubble/ChatBubble.css +81 -13
  126. package/src/components/ChatBubble/ChatBubble.stories.tsx +16 -2
  127. package/src/components/ChatBubble/ChatBubble.test.tsx +17 -0
  128. package/src/components/ChatBubble/ChatBubble.tsx +144 -31
  129. package/src/components/ChatBubble/__snapshots__/ChatBubble.test.tsx.snap +304 -8
  130. package/src/components/ChatHistoryDrawer/ChatHistory.css +5 -1
  131. package/src/components/ChatInputs/ChatInputs.tsx +14 -1
  132. package/src/components/DateSelector/DateSelector.css +125 -104
  133. package/src/components/DateSelector/DateSelector.stories.tsx +1 -1
  134. package/src/components/DateSelector/DateSelector.test.tsx +137 -23
  135. package/src/components/DateSelector/DateSelector.tsx +203 -177
  136. package/src/components/Header/Header.stories.tsx +5 -1
  137. package/src/components/Header/Header.tsx +1 -1
  138. package/src/components/Header/__snapshots__/Header.test.tsx.snap +1 -1
  139. package/src/components/LoginDrawer/LoginDrawer.css +37 -5
  140. package/src/components/LoginDrawer/LoginDrawer.stories.tsx +0 -1
  141. package/src/components/LoginDrawer/LoginDrawer.test.tsx +0 -1
  142. package/src/components/LoginDrawer/LoginDrawer.tsx +0 -19
  143. package/src/components/MediaWidget/MediaItemWidget.stories.tsx +69 -0
  144. package/src/components/MediaWidget/MediaItemWidget.tsx +66 -18
  145. package/src/components/MediaWidget/MediaWidget.css +4 -0
  146. package/src/components/MediaWidget/__snapshots__/MediaItemWidget.test.tsx.snap +10 -10
  147. package/src/components/MediaWidget/__snapshots__/MediaWidget.test.tsx.snap +2 -2
  148. package/src/components/MemoriArtifactSystem/ArtifactDrawer.stories.tsx +996 -204
  149. package/src/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.tsx +2 -2
  150. package/src/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.tsx +1 -1
  151. package/src/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.tsx +3 -0
  152. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.tsx +56 -54
  153. package/src/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.css +16 -7
  154. package/src/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.tsx +12 -3
  155. package/src/components/MemoriWidget/MemoriWidget.stories.tsx +6 -3
  156. package/src/components/MemoriWidget/MemoriWidget.tsx +123 -48
  157. package/src/components/UploadButton/UploadButton.tsx +2 -0
  158. package/src/components/UploadButton/UploadImages/UploadImages.tsx +3 -2
  159. package/src/components/layouts/FullBody/FullBody.stories.tsx +110 -0
  160. package/src/components/layouts/Totem/Totem.stories.tsx +131 -0
  161. package/src/components/layouts/ZoomedFullBody/ZoomedFullBody.stories.tsx +131 -0
  162. package/src/components/layouts/layouts.stories.tsx +55 -508
  163. package/src/components/ui/Drawer.css +8 -0
  164. package/src/components/ui/Drawer.tsx +16 -12
  165. package/src/components/ui/Tooltip.css +49 -1
  166. package/src/components/ui/Tooltip.tsx +1 -1
  167. package/src/index.stories.tsx +13 -320
  168. package/src/locales/de.json +6 -1
  169. package/src/locales/en.json +9 -1
  170. package/src/locales/es.json +6 -1
  171. package/src/locales/fr.json +5 -1
  172. package/src/locales/it.json +8 -1
  173. package/src/mocks/data.ts +4 -2
  174. package/src/styles.css +3 -2
  175. package/src/components/SignupForm/SignupForm.test.tsx +0 -40
  176. package/src/components/SignupForm/SignupForm.tsx +0 -457
  177. package/src/components/SignupForm/__snapshots__/SignupForm.test.tsx.snap +0 -247
@@ -2,12 +2,13 @@
2
2
 
3
3
  .memori-tooltip {
4
4
  position: relative;
5
+ z-index: 1000;
5
6
  display: inline-block;
6
7
  }
7
8
 
8
9
  .memori-tooltip--content {
9
10
  position: absolute;
10
- z-index: 100;
11
+ z-index: 1000;
11
12
  top: 50%;
12
13
  left: 100%;
13
14
  display: none;
@@ -47,6 +48,7 @@
47
48
  transition: 0.3s;
48
49
  }
49
50
 
51
+
50
52
  .memori-tooltip.memori-tooltip--align-left .memori-tooltip--content::before {
51
53
  right: -15px;
52
54
  left: auto;
@@ -113,3 +115,49 @@
113
115
  .memori-tooltip.memori-tooltip--disabled {
114
116
  cursor: not-allowed;
115
117
  }
118
+
119
+ .memori-tooltip.memori-tooltip--align-bottomLeft .memori-tooltip--content,
120
+ .memori-tooltip.memori-tooltip--align-bottomRight .memori-tooltip--content {
121
+ top: 100%;
122
+ right: initial;
123
+ left: 50%;
124
+ margin: initial;
125
+ margin-top: 15px;
126
+ }
127
+
128
+ .memori-tooltip.memori-tooltip--align-bottomLeft .memori-tooltip--content::before {
129
+ z-index: 1001;
130
+ top: -15px;
131
+ bottom: initial;
132
+ left: 66%;
133
+ border-color: transparent transparent rgba(0, 0, 0, 0.8) transparent;
134
+ margin-top: 0px;
135
+ margin-bottom: initial;
136
+ margin-left: 5px;
137
+ }
138
+
139
+ .memori-tooltip.memori-tooltip--align-bottomRight .memori-tooltip--content::before {
140
+ z-index: 1001;
141
+ top: -15px;
142
+ right: 10px;
143
+ bottom: initial;
144
+ left: auto;
145
+ border-color: transparent transparent rgba(0, 0, 0, 0.8) transparent;
146
+ margin-top: -5px;
147
+ margin-right: 5px;
148
+ margin-bottom: initial;
149
+ }
150
+
151
+ .memori-tooltip.memori-tooltip--align-bottomLeft:not(.memori-tooltip--disabled).memori-tooltip--visible
152
+ .memori-tooltip--content,
153
+ .memori-tooltip.memori-tooltip--align-bottomLeft:not(.memori-tooltip--disabled):not(.memori-tooltip--visible):hover
154
+ .memori-tooltip--content {
155
+ transform: translateX(-73%);
156
+ }
157
+
158
+ .memori-tooltip.memori-tooltip--align-bottomRight:not(.memori-tooltip--disabled).memori-tooltip--visible
159
+ .memori-tooltip--content,
160
+ .memori-tooltip.memori-tooltip--align-bottomRight:not(.memori-tooltip--disabled):not(.memori-tooltip--visible):hover
161
+ .memori-tooltip--content {
162
+ transform: translateX(33%);
163
+ }
@@ -2,7 +2,7 @@ import React, { FC } from 'react';
2
2
  export interface Props {
3
3
  content: string | JSX.Element | React.ReactNode;
4
4
  className?: string;
5
- align?: 'left' | 'right' | 'topLeft' | 'topRight';
5
+ align?: 'left' | 'right' | 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight';
6
6
  disabled?: boolean;
7
7
  children: React.ReactNode;
8
8
  visible?: boolean;
@@ -24,7 +24,9 @@
24
24
  "last_7_days": "Letzte 7 Tage",
25
25
  "last_30_days": "Letzte 30 Tage",
26
26
  "missingData": "Fehlende Informationen",
27
+ "date": "Geburtsdatum",
27
28
  "day": "Tag",
29
+ "copied": "Kopiert!",
28
30
  "month": "Monat",
29
31
  "year": "Jahr",
30
32
  "createdAt": "Erstellungsdatum",
@@ -106,6 +108,8 @@
106
108
  "tokens": "Token",
107
109
  "addToken": "Token hinzufügen",
108
110
  "usePassword": "Passwort verwenden",
111
+ "passwordRequired": "Passwort erforderlich",
112
+ "invalidCredentials": "Ungültige Zugangsdaten",
109
113
  "atLeast": "Mindestens"
110
114
  },
111
115
  "widget": {
@@ -342,7 +346,8 @@
342
346
  "termsOfService": "Nutzungsbedingungen",
343
347
  "pAndCUAccepted": "Ich akzeptiere die Nutzungsbedingungen von Deep Thought",
344
348
  "editAccount": "Konto bearbeiten",
345
- "save": "Speichern"
349
+ "save": "Speichern",
350
+ "successfullyLoggedIn": "{{username}} hat sich erfolgreich angemeldet"
346
351
  },
347
352
  "chatLogs": {
348
353
  "anyMessage": "Jede Nachricht",
@@ -25,8 +25,13 @@
25
25
  "last_7_days": "Last 7 days",
26
26
  "last_30_days": "Last 30 days",
27
27
  "month": "Month",
28
+ "copied": "Copied!",
28
29
  "year": "Year",
30
+ "dayPlaceholder": "DD",
31
+ "monthPlaceholder": "MM",
32
+ "yearPlaceholder": "YYYY",
29
33
  "createdAt": "Creation date",
34
+ "date": "Birth date",
30
35
  "selected": "Selected",
31
36
  "page": "page",
32
37
  "actions": "Actions",
@@ -105,6 +110,8 @@
105
110
  "tokens": "Tokens",
106
111
  "addToken": "Add token",
107
112
  "usePassword": "Use password",
113
+ "passwordRequired": "Password required",
114
+ "invalidCredentials": "Invalid credentials",
108
115
  "atLeast": "At least"
109
116
  },
110
117
  "widget": {
@@ -406,7 +413,8 @@
406
413
  "termsStatus": "Terms Status",
407
414
  "enabled": "Enabled",
408
415
  "disabled": "Disabled",
409
- "advancedFeatures": "Advanced Features"
416
+ "advancedFeatures": "Advanced Features",
417
+ "successfullyLoggedIn": "{{username}} has successfully logged in"
410
418
  },
411
419
  "chatLogs": {
412
420
  "anyMessage": "Any message",
@@ -24,7 +24,9 @@
24
24
  "yesterday": "Ayer",
25
25
  "last_7_days": "Últimos 7 días",
26
26
  "last_30_days": "Últimos 30 días",
27
+ "date": "Fecha de nacimiento",
27
28
  "month": "Mes",
29
+ "copied": "¡Copiado!",
28
30
  "missingData": "Información faltante",
29
31
  "year": "Año",
30
32
  "createdAt": "Fecha de creación",
@@ -106,6 +108,8 @@
106
108
  "tokens": "Fichas",
107
109
  "addToken": "Agregar token",
108
110
  "usePassword": "Usar contraseña",
111
+ "passwordRequired": "Contraseña obligatoria",
112
+ "invalidCredentials": "Credenciales no válidas",
109
113
  "atLeast": "Al menos"
110
114
  },
111
115
  "widget": {
@@ -369,7 +373,8 @@
369
373
  "termsOfService": "Términos de servicio",
370
374
  "pAndCUAccepted": "Acepto los términos de servicio sobre Deep Thought",
371
375
  "editAccount": "Editar cuenta",
372
- "save": "Ahorrar"
376
+ "save": "Ahorrar",
377
+ "successfullyLoggedIn": "{{username}} ha iniciado sesión correctamente"
373
378
  },
374
379
  "chatLogs": {
375
380
  "anyMessage": "Cualquier mensaje",
@@ -24,8 +24,10 @@
24
24
  "createdAt": "Date de création",
25
25
  "all": "Tous",
26
26
  "today": "Aujourd'hui",
27
+ "date": "Date de naissance",
27
28
  "yesterday": "Hier",
28
29
  "last_7_days": "7 derniers jours",
30
+ "copied": "Copié !",
29
31
  "missingData": "Informations manquantes",
30
32
  "last_30_days": "30 derniers jours",
31
33
  "selected": "Choisi",
@@ -104,6 +106,7 @@
104
106
  "useRecoveryTokens": "Utiliser des jetons de récupération",
105
107
  "tokens": "Jetons",
106
108
  "addToken": "Ajouter un jeton",
109
+ "invalidCredentials": "Identifiants invalides",
107
110
  "usePassword": "Utiliser le mot de passe",
108
111
  "atLeast": "Au moins"
109
112
  },
@@ -378,7 +381,8 @@
378
381
  "termsOfService": "Conditions d'utilisation",
379
382
  "pAndCUAccepted": "J'accepte les conditions d'utilisation de Deep Thought",
380
383
  "editAccount": "Modifier le compte",
381
- "save": "Sauvegarder"
384
+ "save": "Sauvegarder",
385
+ "successfullyLoggedIn": "{{username}} s'est connecté avec succès"
382
386
  },
383
387
  "chatLogs": {
384
388
  "anyMessage": "Tout message",
@@ -21,14 +21,19 @@
21
21
  "day": "Giorno",
22
22
  "month": "Mese",
23
23
  "year": "Anno",
24
+ "dayPlaceholder": "GG",
25
+ "monthPlaceholder": "MM",
26
+ "yearPlaceholder": "AAAA",
24
27
  "createdAt": "Data creazione",
25
28
  "selected": "Selezionati",
26
29
  "page": "pagina",
27
30
  "actions": "Azioni",
28
31
  "next": "Successivo",
29
32
  "all": "Tutti",
33
+ "copied": "Copiato!",
30
34
  "today": "Oggi",
31
35
  "yesterday": "Ieri",
36
+ "date": "Data di nascita",
32
37
  "last_7_days": "Ultimi 7 giorni",
33
38
  "last_30_days": "Ultimi 30 giorni",
34
39
  "previous": "Precedente",
@@ -106,6 +111,7 @@
106
111
  "tokens": "Token",
107
112
  "addToken": "Aggiungi token",
108
113
  "usePassword": "Utilizza la password",
114
+ "invalidCredentials": "Credenziali non valide",
109
115
  "atLeast": "Almeno"
110
116
  },
111
117
  "widget": {
@@ -405,7 +411,8 @@
405
411
  "termsOfService": "i termini del servizio",
406
412
  "pAndCUAccepted": "Accetto le condizioni di utilizzo relative a Pensiero Profondo",
407
413
  "editAccount": "Modifica account",
408
- "save": "Salva"
414
+ "save": "Salva",
415
+ "successfullyLoggedIn": "{{username}} ha effettuato l'accesso con successo"
409
416
  },
410
417
  "chatLogs": {
411
418
  "atLeast": "Almeno {{count}} messaggi",
package/esm/styles.css CHANGED
@@ -89,7 +89,8 @@ body.sb-show-main #root,
89
89
  #storybook-docs,
90
90
  .memori-widget {
91
91
  --memori-font-family: 'Lexend Deca Variable', 'Lexend Deca', sans-serif;
92
- --memori-primary: rgb(130, 70, 175);
92
+ --memori-primary-rgb: 130, 70, 175;
93
+ --memori-primary: rgb(var(--memori-primary-rgb));
93
94
  --memori-primary-text: #fff;
94
95
  --memori-inner-content-pad: 1rem;
95
96
  --memori-inner-bg: transparent;
@@ -123,4 +124,4 @@ body.sb-show-main #root,
123
124
  .mobile-hidden {
124
125
  display: none;
125
126
  }
126
- }
127
+ }
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "8.10.1",
2
+ "version": "8.12.0",
3
3
  "name": "@memori.ai/memori-react",
4
4
  "author": "Memori Srl",
5
5
  "main": "dist/index.js",
@@ -292,7 +292,7 @@
292
292
  },
293
293
  "dependencies": {
294
294
  "@headlessui/react": "1.7.4",
295
- "@memori.ai/memori-api-client": "6.13.3",
295
+ "@memori.ai/memori-api-client": "6.17.0",
296
296
  "@react-three/drei": "8.20.2",
297
297
  "@react-three/fiber": "7.0.25",
298
298
  "classnames": "2.5.1",
@@ -13,12 +13,12 @@
13
13
  flex-direction: column;
14
14
  align-items: center;
15
15
  }
16
-
16
+ /*
17
17
  @media (min-width: 640px) {
18
18
  .age-verification-form {
19
19
  min-width: 600px;
20
20
  }
21
- }
21
+ } */
22
22
 
23
23
  .age-verification-form fieldset {
24
24
  padding-right: 0;
@@ -53,15 +53,42 @@
53
53
  color: var(--memori-error-color);
54
54
  }
55
55
 
56
- button.age-verisfication-submit {
57
- display: inline-flex;
58
- height: auto;
59
- align-items: center;
60
- justify-content: center;
61
- padding: 4px 15px;
62
- margin-right: auto;
63
- margin-left: auto;
64
- font-weight: 700;
65
- text-transform: uppercase;
66
- white-space: normal;
67
- }
56
+ button.age-verification-submit {
57
+ position: relative;
58
+ overflow: hidden;
59
+ width: 100%;
60
+ min-width: 220px;
61
+ max-width: 220px;
62
+ min-height: 42px;
63
+ padding: 1rem 2rem;
64
+ border: none;
65
+ border-radius: 12px;
66
+ border-radius: 8px;
67
+ margin-top: 1rem;
68
+ background: var(--memori-primary);
69
+ color: white;
70
+ cursor: pointer;
71
+ font-size: 1rem;
72
+ font-weight: 600;
73
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
74
+ }
75
+
76
+ button.age-verification-submit::before {
77
+ position: absolute;
78
+ top: 0;
79
+ left: -100%;
80
+ width: 100%;
81
+ height: 100%;
82
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
83
+ content: '';
84
+ transition: left 0.5s ease;
85
+ }
86
+
87
+ button.age-verification-submit:hover::before {
88
+ left: 100%;
89
+ }
90
+
91
+
92
+ button.age-verification-submit:active {
93
+ transform: translateY(0);
94
+ }
@@ -46,6 +46,8 @@ const AgeVerificationModal = ({ visible = false, onClose, minAge }: Props) => {
46
46
  return (
47
47
  <Modal
48
48
  open={visible}
49
+ width="600px"
50
+ widthMd="600px"
49
51
  title={t('ageVerification')}
50
52
  className="age-verification-modal"
51
53
  closable
@@ -65,7 +67,7 @@ const AgeVerificationModal = ({ visible = false, onClose, minAge }: Props) => {
65
67
  <legend className="sr-only">{t('birthDate')}</legend>
66
68
 
67
69
  <DateSelector
68
- defaultDate={new Date(Date.now())}
70
+ //defaultDate={new Date(Date.now())}
69
71
  onChange={date => {
70
72
  setBirthDate(date);
71
73
  }}
@@ -43,25 +43,53 @@ export const AuthWidget = ({
43
43
  const [numTokens, setNumTokens] = useState(1);
44
44
 
45
45
  const [showModal, setShowModal] = useState(!!pwdOrTokens);
46
+ const [isSubmitting, setIsSubmitting] = useState(false);
46
47
 
47
48
  const onSubmit: SubmitHandler<AuthInputs> = data => {
48
- if (
49
- (pwdOrTokens === 'password' && !data.password?.length) ||
50
- (pwdOrTokens === 'tokens' &&
51
- ((data?.tokens?.length || 0) < minimumNumberOfRecoveryTokens ||
52
- !data?.tokens?.every(t => t.length)))
53
- ) {
49
+ const missingPassword = pwdOrTokens === 'password' && !data.password?.length;
50
+ const invalidTokens =
51
+ pwdOrTokens === 'tokens' &&
52
+ ((data?.tokens?.length || 0) < minimumNumberOfRecoveryTokens ||
53
+ !data?.tokens?.every(t => t.length));
54
+
55
+ if (missingPassword) {
56
+ setError('password', {
57
+ type: 'required',
58
+ message: t('auth.passwordRequired') || 'Password required',
59
+ });
60
+ return;
61
+ }
62
+
63
+ if (invalidTokens) {
54
64
  setError('tokens', {
55
65
  type: 'minLength',
56
- message: 'Tokens',
66
+ message: t('auth.tokens') || 'Tokens',
57
67
  });
58
68
  return;
59
69
  }
60
70
 
61
71
  if (onFinish) {
62
- onFinish(data).then(() => {
63
- setShowModal(false);
64
- });
72
+ setIsSubmitting(true);
73
+ onFinish(data)
74
+ .then(() => {
75
+ setShowModal(false);
76
+ })
77
+ .catch(() => {
78
+ if (pwdOrTokens === 'password') {
79
+ setError('password', {
80
+ type: 'auth',
81
+ message: t('auth.invalidCredentials') || 'Invalid credentials',
82
+ });
83
+ } else if (pwdOrTokens === 'tokens') {
84
+ setError('tokens', {
85
+ type: 'auth',
86
+ message: t('auth.invalidCredentials') || 'Invalid credentials',
87
+ });
88
+ }
89
+ })
90
+ .finally(() => {
91
+ setIsSubmitting(false);
92
+ });
65
93
  }
66
94
  };
67
95
 
@@ -134,7 +162,23 @@ export const AuthWidget = ({
134
162
  </div>
135
163
  )}
136
164
 
137
- <Button htmlType="submit" primary className="memori-auth-widget--submit">
165
+ {errors.password?.type === 'auth' && (
166
+ <div className="memori-auth-widget--error">
167
+ {errors.password.message}
168
+ </div>
169
+ )}
170
+ {errors.tokens?.type === 'auth' && (
171
+ <div className="memori-auth-widget--error">
172
+ {errors.tokens.message}
173
+ </div>
174
+ )}
175
+
176
+ <Button
177
+ htmlType="submit"
178
+ primary
179
+ className="memori-auth-widget--submit"
180
+ loading={isSubmitting}
181
+ >
138
182
  {t('confirm') || 'Submit'}
139
183
  </Button>
140
184
  </form>
@@ -5,6 +5,7 @@ import I18nWrapper from '../../I18nWrapper';
5
5
  import Avatar, { Props } from './Avatar';
6
6
 
7
7
  import './Avatar.css';
8
+ import { ArtifactProvider } from '../MemoriArtifactSystem/context/ArtifactContext';
8
9
 
9
10
  const meta: Meta = {
10
11
  title: 'Widget/Avatar',
@@ -32,6 +33,7 @@ const Template: Story<Props> = args => {
32
33
 
33
34
  return (
34
35
  <I18nWrapper>
36
+ <ArtifactProvider>
35
37
  <div
36
38
  style={
37
39
  args.integrationConfig?.avatar === 'customglb' ||
@@ -58,6 +60,7 @@ const Template: Story<Props> = args => {
58
60
  key={Date.now()}
59
61
  />
60
62
  </div>
63
+ </ArtifactProvider>
61
64
  </I18nWrapper>
62
65
  );
63
66
  };
@@ -7,8 +7,8 @@
7
7
  display: flex;
8
8
  width: 380px; /* Fixed width */
9
9
  max-width: 100%; /* Maximum width relative to screen */
10
- height: 320px;
11
- max-height: 320px;
10
+ height: 340px;
11
+ max-height: 340px;
12
12
  flex-direction: column;
13
13
  padding: 16px;
14
14
  border-radius: 16px;
@@ -980,6 +980,20 @@ def process_data(df):
980
980
  setSendOnEnter: () => {},
981
981
  };
982
982
 
983
+ export const WithTyping = Template.bind({});
984
+ WithTyping.args = {
985
+ memori,
986
+ tenant,
987
+ sessionID,
988
+ history,
989
+ dialogState: {
990
+ state: 'X2a',
991
+ },
992
+ layout: 'DEFAULT',
993
+ memoriTyping: true,
994
+ typingText: 'Sto pensando...',
995
+ };
996
+
983
997
  export const WithAllMediaTypes = Template.bind({});
984
998
  WithAllMediaTypes.args = {
985
999
  memori,
@@ -1325,8 +1339,8 @@ build-storybook = "build-storybook"`,
1325
1339
  setSendOnEnter: () => {},
1326
1340
  };
1327
1341
 
1328
- export const withBase64Image = Template.bind({});
1329
- withBase64Image.args = {
1342
+ export const WithBase64Image = Template.bind({});
1343
+ WithBase64Image.args = {
1330
1344
  memori,
1331
1345
  tenant,
1332
1346
  sessionID,
@@ -317,7 +317,7 @@ const Chat: React.FC<Props> = ({
317
317
  // Filter out HTML and plain text media items from the message
318
318
  ...(message?.media?.filter(
319
319
  m =>
320
- m.mimeType !== 'text/html' && m.mimeType !== 'text/plain'
320
+ m.mimeType !== 'text/html' && !m.properties?.functionSignature
321
321
  ) || []),
322
322
 
323
323
  // Extract document attachments that are embedded in the message text
@@ -431,6 +431,7 @@ const Chat: React.FC<Props> = ({
431
431
  instruct={instruct}
432
432
  authToken={authToken}
433
433
  sendMessage={sendMessage}
434
+ isTyping={memoriTyping}
434
435
  microphoneMode={microphoneMode}
435
436
  sendOnEnter={sendOnEnter}
436
437
  setSendOnEnter={setSendOnEnter}