@memori.ai/memori-react 9.0.0-alpha.16 → 9.0.0-alpha.18

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 (186) hide show
  1. package/CHANGELOG.md +4 -6944
  2. package/dist/components/Chat/Chat.css +11 -15
  3. package/dist/components/Chat/Chat.js +11 -3
  4. package/dist/components/Chat/Chat.js.map +1 -1
  5. package/dist/components/ChatBubble/ChatBubble.css +96 -22
  6. package/dist/components/ChatBubble/ChatBubble.js +31 -2
  7. package/dist/components/ChatBubble/ChatBubble.js.map +1 -1
  8. package/dist/components/ChatHistoryDrawer/ChatHistory.css +1 -0
  9. package/dist/components/ChatInputs/ChatInputs.css +72 -147
  10. package/dist/components/ChatInputs/ChatInputs.js +3 -4
  11. package/dist/components/ChatInputs/ChatInputs.js.map +1 -1
  12. package/dist/components/Header/ChatConsumptionDropdown.js +2 -1
  13. package/dist/components/Header/ChatConsumptionDropdown.js.map +1 -1
  14. package/dist/components/Header/Header.css +199 -34
  15. package/dist/components/Header/Header.d.ts +1 -0
  16. package/dist/components/Header/Header.js +42 -34
  17. package/dist/components/Header/Header.js.map +1 -1
  18. package/dist/components/IconButton/IconButton.css +144 -0
  19. package/dist/components/IconButton/IconButton.d.ts +9 -0
  20. package/dist/components/IconButton/IconButton.js +36 -0
  21. package/dist/components/IconButton/IconButton.js.map +1 -0
  22. package/dist/components/KnownFacts/KnownFacts.css +22 -9
  23. package/dist/components/KnownFacts/KnownFacts.js +13 -4
  24. package/dist/components/KnownFacts/KnownFacts.js.map +1 -1
  25. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +29 -44
  26. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js +3 -2
  27. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js.map +1 -1
  28. package/dist/components/MemoriWidget/MemoriWidget.css +2 -1
  29. package/dist/components/MemoriWidget/MemoriWidget.js +27 -30
  30. package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
  31. package/dist/components/MicrophoneButton/MicrophoneButton.css +2 -183
  32. package/dist/components/MicrophoneButton/MicrophoneButton.js +3 -1
  33. package/dist/components/MicrophoneButton/MicrophoneButton.js.map +1 -1
  34. package/dist/components/MobileSessionPanel/MobileSessionPanel.css +22 -7
  35. package/dist/components/MobileSessionPanel/MobileSessionPanel.d.ts +1 -0
  36. package/dist/components/MobileSessionPanel/MobileSessionPanel.js +6 -4
  37. package/dist/components/MobileSessionPanel/MobileSessionPanel.js.map +1 -1
  38. package/dist/components/PositionPopover/PositionPopover.d.ts +2 -0
  39. package/dist/components/PositionPopover/PositionPopover.js +18 -4
  40. package/dist/components/PositionPopover/PositionPopover.js.map +1 -1
  41. package/dist/components/ShareButton/ShareButton.css +3 -2
  42. package/dist/components/ShareButton/ShareButton.js +3 -2
  43. package/dist/components/ShareButton/ShareButton.js.map +1 -1
  44. package/dist/components/UploadButton/UploadButton.css +2 -20
  45. package/dist/components/UploadButton/UploadButton.js +2 -1
  46. package/dist/components/UploadButton/UploadButton.js.map +1 -1
  47. package/dist/components/layouts/Chat.js +59 -73
  48. package/dist/components/layouts/Chat.js.map +1 -1
  49. package/dist/components/layouts/FullPage.js +53 -34
  50. package/dist/components/layouts/FullPage.js.map +1 -1
  51. package/dist/components/layouts/HiddenChat.js +3 -3
  52. package/dist/components/layouts/HiddenChat.js.map +1 -1
  53. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js +3 -3
  54. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +1 -1
  55. package/dist/components/layouts/WebsiteAssistant/website-assistant.css +28 -15
  56. package/dist/components/layouts/ZoomedFullBody.js +53 -34
  57. package/dist/components/layouts/ZoomedFullBody.js.map +1 -1
  58. package/dist/components/layouts/chat.css +76 -41
  59. package/dist/components/layouts/fullpage.css +18 -9
  60. package/dist/components/layouts/hidden-chat.css +45 -69
  61. package/dist/components/layouts/zoomed-full-body.css +6 -5
  62. package/dist/helpers/positionPopover.d.ts +1 -1
  63. package/dist/helpers/positionPopover.js +2 -2
  64. package/dist/helpers/positionPopover.js.map +1 -1
  65. package/dist/styles.css +1 -1
  66. package/dist/version.d.ts +1 -1
  67. package/dist/version.js +1 -1
  68. package/esm/components/Chat/Chat.css +11 -15
  69. package/esm/components/Chat/Chat.js +11 -3
  70. package/esm/components/Chat/Chat.js.map +1 -1
  71. package/esm/components/ChatBubble/ChatBubble.css +96 -22
  72. package/esm/components/ChatBubble/ChatBubble.js +31 -2
  73. package/esm/components/ChatBubble/ChatBubble.js.map +1 -1
  74. package/esm/components/ChatHistoryDrawer/ChatHistory.css +1 -0
  75. package/esm/components/ChatInputs/ChatInputs.css +72 -147
  76. package/esm/components/ChatInputs/ChatInputs.js +3 -4
  77. package/esm/components/ChatInputs/ChatInputs.js.map +1 -1
  78. package/esm/components/Header/ChatConsumptionDropdown.js +3 -2
  79. package/esm/components/Header/ChatConsumptionDropdown.js.map +1 -1
  80. package/esm/components/Header/Header.css +199 -34
  81. package/esm/components/Header/Header.d.ts +1 -0
  82. package/esm/components/Header/Header.js +42 -34
  83. package/esm/components/Header/Header.js.map +1 -1
  84. package/esm/components/IconButton/IconButton.css +144 -0
  85. package/esm/components/IconButton/IconButton.d.ts +9 -0
  86. package/esm/components/IconButton/IconButton.js +33 -0
  87. package/esm/components/IconButton/IconButton.js.map +1 -0
  88. package/esm/components/KnownFacts/KnownFacts.css +22 -9
  89. package/esm/components/KnownFacts/KnownFacts.js +13 -4
  90. package/esm/components/KnownFacts/KnownFacts.js.map +1 -1
  91. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +29 -44
  92. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js +3 -2
  93. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js.map +1 -1
  94. package/esm/components/MemoriWidget/MemoriWidget.css +2 -1
  95. package/esm/components/MemoriWidget/MemoriWidget.js +27 -30
  96. package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
  97. package/esm/components/MicrophoneButton/MicrophoneButton.css +2 -183
  98. package/esm/components/MicrophoneButton/MicrophoneButton.js +3 -2
  99. package/esm/components/MicrophoneButton/MicrophoneButton.js.map +1 -1
  100. package/esm/components/MobileSessionPanel/MobileSessionPanel.css +22 -7
  101. package/esm/components/MobileSessionPanel/MobileSessionPanel.d.ts +1 -0
  102. package/esm/components/MobileSessionPanel/MobileSessionPanel.js +6 -4
  103. package/esm/components/MobileSessionPanel/MobileSessionPanel.js.map +1 -1
  104. package/esm/components/PositionPopover/PositionPopover.d.ts +2 -0
  105. package/esm/components/PositionPopover/PositionPopover.js +18 -4
  106. package/esm/components/PositionPopover/PositionPopover.js.map +1 -1
  107. package/esm/components/ShareButton/ShareButton.css +3 -2
  108. package/esm/components/ShareButton/ShareButton.js +4 -3
  109. package/esm/components/ShareButton/ShareButton.js.map +1 -1
  110. package/esm/components/UploadButton/UploadButton.css +2 -20
  111. package/esm/components/UploadButton/UploadButton.js +2 -1
  112. package/esm/components/UploadButton/UploadButton.js.map +1 -1
  113. package/esm/components/layouts/Chat.js +62 -76
  114. package/esm/components/layouts/Chat.js.map +1 -1
  115. package/esm/components/layouts/FullPage.js +54 -35
  116. package/esm/components/layouts/FullPage.js.map +1 -1
  117. package/esm/components/layouts/HiddenChat.js +3 -3
  118. package/esm/components/layouts/HiddenChat.js.map +1 -1
  119. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js +3 -3
  120. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +1 -1
  121. package/esm/components/layouts/WebsiteAssistant/website-assistant.css +28 -15
  122. package/esm/components/layouts/ZoomedFullBody.js +54 -35
  123. package/esm/components/layouts/ZoomedFullBody.js.map +1 -1
  124. package/esm/components/layouts/chat.css +76 -41
  125. package/esm/components/layouts/fullpage.css +18 -9
  126. package/esm/components/layouts/hidden-chat.css +45 -69
  127. package/esm/components/layouts/zoomed-full-body.css +6 -5
  128. package/esm/helpers/positionPopover.d.ts +1 -1
  129. package/esm/helpers/positionPopover.js +2 -2
  130. package/esm/helpers/positionPopover.js.map +1 -1
  131. package/esm/styles.css +1 -1
  132. package/esm/version.d.ts +1 -1
  133. package/esm/version.js +1 -1
  134. package/package.json +1 -1
  135. package/src/components/Chat/Chat.css +11 -15
  136. package/src/components/Chat/Chat.tsx +13 -2
  137. package/src/components/ChatBubble/ChatBubble.css +96 -22
  138. package/src/components/ChatBubble/ChatBubble.tsx +39 -0
  139. package/src/components/ChatHistoryDrawer/ChatHistory.css +1 -0
  140. package/src/components/ChatInputs/ChatInputs.css +72 -147
  141. package/src/components/ChatInputs/ChatInputs.tsx +7 -7
  142. package/src/components/Header/ChatConsumptionDropdown.tsx +3 -2
  143. package/src/components/Header/Header.css +199 -34
  144. package/src/components/Header/Header.tsx +120 -100
  145. package/src/components/Header/__snapshots__/Header.test.tsx.snap +90 -57
  146. package/src/components/IconButton/IconButton.css +144 -0
  147. package/src/components/IconButton/IconButton.tsx +89 -0
  148. package/src/components/KnownFacts/KnownFacts.css +22 -9
  149. package/src/components/KnownFacts/KnownFacts.tsx +13 -3
  150. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +29 -44
  151. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.tsx +11 -20
  152. package/src/components/MemoriWidget/MemoriWidget.css +2 -1
  153. package/src/components/MemoriWidget/MemoriWidget.tsx +38 -31
  154. package/src/components/MicrophoneButton/MicrophoneButton.css +2 -183
  155. package/src/components/MicrophoneButton/MicrophoneButton.tsx +5 -5
  156. package/src/components/MobileSessionPanel/MobileSessionPanel.css +22 -7
  157. package/src/components/MobileSessionPanel/MobileSessionPanel.tsx +8 -6
  158. package/src/components/PositionPopover/PositionPopover.tsx +30 -4
  159. package/src/components/ShareButton/ShareButton.css +3 -2
  160. package/src/components/ShareButton/ShareButton.tsx +8 -9
  161. package/src/components/ShareButton/__snapshots__/ShareButton.test.tsx.snap +9 -9
  162. package/src/components/StartPanel/StartPanel.stories.tsx +1 -1
  163. package/src/components/UploadButton/UploadButton.css +2 -20
  164. package/src/components/UploadButton/UploadButton.tsx +3 -5
  165. package/src/components/UploadButton/__snapshots__/UploadButton.test.tsx.snap +29 -25
  166. package/src/components/layouts/Chat.tsx +210 -232
  167. package/src/components/layouts/FullPage.tsx +61 -40
  168. package/src/components/layouts/HiddenChat.tsx +5 -6
  169. package/src/components/layouts/WebsiteAssistant/WebsiteAssistant.tsx +2 -2
  170. package/src/components/layouts/WebsiteAssistant/__snapshots__/WebsiteAssistant.test.tsx.snap +2 -0
  171. package/src/components/layouts/WebsiteAssistant/website-assistant.css +28 -15
  172. package/src/components/layouts/ZoomedFullBody.tsx +61 -40
  173. package/src/components/layouts/__snapshots__/Chat.test.tsx.snap +145 -143
  174. package/src/components/layouts/__snapshots__/FullPage.test.tsx.snap +22 -18
  175. package/src/components/layouts/__snapshots__/HiddenChat.test.tsx.snap +10 -145
  176. package/src/components/layouts/__snapshots__/Totem.test.tsx.snap +12 -10
  177. package/src/components/layouts/__snapshots__/ZoomedFullBody.test.tsx.snap +11 -9
  178. package/src/components/layouts/chat.css +76 -41
  179. package/src/components/layouts/fullpage.css +18 -9
  180. package/src/components/layouts/hidden-chat.css +45 -69
  181. package/src/components/layouts/layouts.stories.tsx +1 -1
  182. package/src/components/layouts/zoomed-full-body.css +6 -5
  183. package/src/helpers/positionPopover.test.ts +10 -4
  184. package/src/helpers/positionPopover.ts +8 -5
  185. package/src/styles.css +1 -0
  186. package/src/version.ts +1 -1
@@ -162,21 +162,25 @@
162
162
  justify-content: flex-end;
163
163
  }
164
164
 
165
- /* FullPage header controls: compact square actions + rounded login CTA */
166
- .memori-widget.memori-layout-fullpage .memori-header.memori-header--fullpage {
165
+ /* FullPage / Chat / Zoomed header controls: compact square actions + rounded login CTA */
166
+ .memori-widget.memori-layout-fullpage .memori-header.memori-header--fullpage,
167
+ .memori-widget.memori-layout-chat .memori-header.memori-header--fullpage {
167
168
  min-width: 0;
168
169
  flex-wrap: nowrap;
169
170
  justify-content: flex-end;
170
- gap: 0.5rem;
171
+ gap: 0.75rem;
171
172
  }
172
173
 
173
174
  .memori-widget.memori-layout-fullpage .memori-header--fullpage-primary,
174
- .memori-widget.memori-layout-fullpage .memori-header--fullpage-secondary {
175
+ .memori-widget.memori-layout-fullpage .memori-header--fullpage-secondary,
176
+ .memori-widget.memori-layout-chat .memori-header--fullpage-primary,
177
+ .memori-widget.memori-layout-chat .memori-header--fullpage-secondary {
175
178
  flex-wrap: nowrap;
176
179
  gap: 0.5rem;
177
180
  }
178
181
 
179
- .memori-widget.memori-layout-fullpage .memori-header--fullpage-divider {
182
+ .memori-widget.memori-layout-fullpage .memori-header--fullpage-divider,
183
+ .memori-widget.memori-layout-chat .memori-header--fullpage-divider {
180
184
  min-height: 26px;
181
185
  margin: 0;
182
186
  }
@@ -478,8 +482,7 @@
478
482
  flex: 1 1 auto;
479
483
  }
480
484
 
481
- .memori-widget.memori-layout-fullpage .memori-fullpage-header-actions,
482
- .memori-widget.memori-layout-chat .memori-fullpage-header-actions {
485
+ .memori-widget.memori-layout-fullpage .memori-fullpage-header-actions {
483
486
  flex: 0 0 auto;
484
487
  justify-content: flex-end;
485
488
  }
@@ -492,7 +495,7 @@
492
495
 
493
496
  .memori-widget.memori-layout-chat .memori-fullpage-header-actions {
494
497
  min-width: 0;
495
- flex: 0 0 auto;
498
+ flex: 1 1 auto;
496
499
  flex-wrap: nowrap;
497
500
  justify-content: flex-end;
498
501
  -webkit-overflow-scrolling: touch;
@@ -501,7 +504,13 @@
501
504
  }
502
505
 
503
506
  .memori-widget.memori-layout-chat .memori-fullpage-header-actions .memori-header.memori-header--fullpage {
504
- min-width: 0;
507
+ min-width: max-content;
508
+ flex-shrink: 0;
505
509
  flex-wrap: nowrap;
506
510
  }
511
+
512
+ .memori-widget.memori-layout-chat .memori-fullpage-header-actions .memori-icon-button,
513
+ .memori-widget.memori-layout-chat .memori-fullpage-header-actions .memori-button {
514
+ flex-shrink: 0;
515
+ }
507
516
  }
@@ -70,42 +70,19 @@
70
70
  transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out, right 0.3s ease-in-out;
71
71
  }
72
72
 
73
- /* Close control lives in the header icon group (next to mute), not as a mid-page float */
73
+ /* Close control lives in the header icon group (next to mute), not as a mid-page float.
74
+ Visuals come from `.memori-website_assistant--close-button` (shared with WEBSITE_ASSISTANT). */
74
75
  .memori-widget.memori-layout-hidden_chat
75
76
  .memori-sidebar
76
- .memori-hidden-chat-layout--header-close.memori-sidebar-toggle-label {
77
+ .memori-hidden-chat-layout--header-close.memori-website_assistant--close-button {
77
78
  position: relative;
79
+ z-index: 2;
78
80
  top: auto;
79
81
  right: auto;
80
- display: inline-flex;
81
- width: 2.5rem;
82
- min-width: 2.5rem;
83
- height: 2.5rem;
84
- min-height: 2.5rem;
85
- align-items: center;
86
- justify-content: center;
87
- padding: 0;
88
- border: var(--memori-border, 1px) solid color-mix(in srgb, var(--memori-text-color, #111827) 18%, transparent);
89
- border-radius: var(--memori-radius-box, 0.5rem);
90
- margin: 0;
91
- background: transparent;
92
- color: var(--memori-text-color, #111827);
93
- cursor: pointer;
94
- font-size: inherit;
95
- font-weight: inherit;
96
- line-height: 1;
82
+ flex-shrink: 0;
97
83
  opacity: 1;
98
84
  pointer-events: auto;
99
- text-orientation: mixed;
100
- transform: none;
101
- transition: background-color 0.15s ease, border-color 0.15s ease;
102
- writing-mode: horizontal-tb;
103
- }
104
-
105
- .memori-widget.memori-layout-hidden_chat
106
- .memori-sidebar
107
- .memori-hidden-chat-layout--header-close.memori-sidebar-toggle-label:hover {
108
- background: color-mix(in srgb, var(--memori-text-color, #111827) 6%, transparent);
85
+ visibility: visible;
109
86
  }
110
87
 
111
88
  .memori-button--icon > svg {
@@ -127,30 +104,30 @@
127
104
  fill: none;
128
105
  }
129
106
 
130
- .memori-widget.memori-layout-hidden_chat .memori-sidebar .memori-hidden-chat-layout--header-close .memori-icon-close {
131
- width: 1.125rem;
132
- height: 1.125rem;
133
- fill: none;
134
- stroke: currentColor;
107
+ /* Powered-by is not shown in HIDDEN_CHAT; AI disclaimer wraps under the input. */
108
+ .memori-widget.memori-layout-hidden_chat .memori-sidebar .memori--powered-by {
109
+ display: none !important;
135
110
  }
136
111
 
137
- /* Powered-by footer under the input on --memori-secondary-background */
138
- .memori-widget.memori-layout-hidden_chat .memori-sidebar .memori--powered-by {
139
- position: relative;
140
- z-index: 5;
141
- top: auto;
142
- right: auto;
143
- bottom: auto;
144
- left: auto;
145
- display: flex;
146
- width: 100%;
147
- flex-shrink: 0;
112
+ .memori-widget.memori-layout-hidden_chat .memori-conversation-footer {
113
+ flex-wrap: wrap;
148
114
  justify-content: center;
149
- padding: 0.35rem 1rem 0.85rem;
150
- border-radius: 0;
151
- margin: 0;
152
- background: var(--memori-secondary-background);
153
- transform: none;
115
+ }
116
+
117
+ .memori-widget.memori-layout-hidden_chat
118
+ .memori-conversation-footer
119
+ .memori-chat-inputs--ai-note {
120
+ overflow: visible;
121
+ flex: 1 1 100%;
122
+ text-align: center;
123
+ text-overflow: unset;
124
+ white-space: normal;
125
+ }
126
+
127
+ .memori-widget.memori--active.memori-layout-hidden_chat
128
+ .memori-conversation-footer
129
+ .memori-chat-inputs--ai-note {
130
+ text-align: left;
154
131
  }
155
132
 
156
133
  .memori-sidebar {
@@ -165,10 +142,6 @@
165
142
  transition: all 0.3s ease-in-out;
166
143
  }
167
144
 
168
- .memori-widget.memori-layout-hidden_chat .memori-sidebar .memori-chat--content {
169
- padding: var(--memori-spacing-xl);
170
- }
171
-
172
145
  .memori-widget.memori-layout-hidden_chat .memori-sidebar .memori-chat-history {
173
146
  height: calc(100% - var(--memori-spacing-5xl));
174
147
  padding: 0;
@@ -336,6 +309,8 @@
336
309
 
337
310
  .memori-widget.memori-layout-hidden_chat .memori-sidebar .memori-chat-layout--header {
338
311
  width: 100%;
312
+ max-width: 100%;
313
+ box-sizing: border-box;
339
314
  flex-shrink: 0;
340
315
  padding: 0.75rem 1rem;
341
316
  border-bottom: 1px solid var(--memori-border-color);
@@ -346,7 +321,10 @@
346
321
 
347
322
  .memori-widget.memori-layout-hidden_chat .memori-sidebar .memori-chat-layout--header-row {
348
323
  display: flex;
324
+ overflow: hidden;
349
325
  width: 100%;
326
+ min-width: 0;
327
+ max-width: 100%;
350
328
  align-items: center;
351
329
  justify-content: space-between;
352
330
  gap: 0.75rem;
@@ -354,7 +332,10 @@
354
332
 
355
333
  .memori-widget.memori-layout-hidden_chat .memori-sidebar .memori-hidden-chat-layout--header-actions {
356
334
  display: inline-flex;
357
- flex: 0 0 auto;
335
+ min-width: 0;
336
+ max-width: 100%;
337
+ flex: 0 1 auto;
338
+ flex-shrink: 0;
358
339
  align-items: center;
359
340
  margin-left: auto;
360
341
  gap: 0.35rem;
@@ -445,6 +426,7 @@
445
426
  display: flex;
446
427
  overflow: hidden;
447
428
  min-width: 0;
429
+ max-width: calc(100% - 7.5rem);
448
430
  flex: 1 1 auto;
449
431
  align-items: center;
450
432
  gap: 0.75rem;
@@ -586,39 +568,33 @@
586
568
  color: var(--memori-primary-content, #fff);
587
569
  }
588
570
 
589
- /* Dark theme: header controls — white outline and icon (incl. share + position popover) */
571
+ /* Dark theme: header controls — white outline and icon (incl. share + position popover).
572
+ Soft-active / recording IconButtons keep primary/error chrome from IconButton.css. */
590
573
  .memori-widget.memori-layout-hidden_chat[data-theme='dark']
591
574
  .memori-header
592
- .memori-button:not(:disabled):not(.memori-button--disabled),
575
+ .memori-button:not(.memori-icon-button--active, .memori-icon-button--recording, :disabled, .memori-button--disabled),
593
576
  [data-theme='dark']
594
577
  .memori-widget.memori-layout-hidden_chat
595
578
  .memori-header
596
- .memori-button:not(:disabled):not(.memori-button--disabled) {
579
+ .memori-button:not(.memori-icon-button--active, .memori-icon-button--recording, :disabled, .memori-button--disabled) {
597
580
  border: var(--memori-border) solid #fff;
598
581
  color: #fff;
599
582
  }
600
583
 
601
584
  .memori-widget.memori-layout-hidden_chat[data-theme='dark']
602
585
  .memori-header
603
- .memori-button:hover:not(:disabled, .memori-button--disabled),
604
- .memori-widget.memori-layout-hidden_chat[data-theme='dark']
605
- .memori-header
606
- .memori-button:active:not(:disabled, .memori-button--disabled),
586
+ .memori-button:hover:not(.memori-icon-button, .memori-icon-button--active, .memori-icon-button--recording, :disabled, .memori-button--disabled),
607
587
  .memori-widget.memori-layout-hidden_chat[data-theme='dark']
608
588
  .memori-header
609
- .memori-button.memori-button--active:not(:disabled, .memori-button--disabled),
610
- [data-theme='dark']
611
- .memori-widget.memori-layout-hidden_chat
612
- .memori-header
613
- .memori-button:hover:not(:disabled, .memori-button--disabled),
589
+ .memori-button:active:not(.memori-icon-button, .memori-icon-button--active, .memori-icon-button--recording, :disabled, .memori-button--disabled),
614
590
  [data-theme='dark']
615
591
  .memori-widget.memori-layout-hidden_chat
616
592
  .memori-header
617
- .memori-button:active:not(:disabled, .memori-button--disabled),
593
+ .memori-button:hover:not(.memori-icon-button, .memori-icon-button--active, .memori-icon-button--recording, :disabled, .memori-button--disabled),
618
594
  [data-theme='dark']
619
595
  .memori-widget.memori-layout-hidden_chat
620
596
  .memori-header
621
- .memori-button.memori-button--active:not(:disabled, .memori-button--disabled) {
597
+ .memori-button:active:not(.memori-icon-button, .memori-icon-button--active, .memori-icon-button--recording, :disabled, .memori-button--disabled) {
622
598
  border: var(--memori-border) solid #fff;
623
599
  color: #fff;
624
600
  }
@@ -43,7 +43,7 @@ DefaultLayout.args = {
43
43
  layout: 'ZOOMED_FULL_BODY',
44
44
  uiLang: 'IT',
45
45
  spokenLang: 'IT',
46
- // integrationID: '32922e14-24d6-4f5f-a06b-d963da14a658',
46
+ integrationID: '32922e14-24d6-4f5f-a06b-d963da14a658',
47
47
  showSettings: true,
48
48
  };
49
49
 
@@ -61,8 +61,7 @@
61
61
  margin-left: auto;
62
62
  background: transparent;
63
63
  gap: var(--memori-spacing-md);
64
- transition: background-color var(--memori-motion-duration-fast, 0.15s)
65
- var(--memori-motion-ease, ease);
64
+ transition: background-color var(--memori-motion-duration-fast, 0.15s) var(--memori-motion-ease, ease);
66
65
  }
67
66
 
68
67
  .memori-widget.memori-layout-zoomed_full_body .memori-fullpage-header-row.memori-header--scrolled,
@@ -83,7 +82,7 @@
83
82
  min-height: 0;
84
83
  flex: 1 1 auto;
85
84
  border: none;
86
- border-radius: 0;
85
+ border-radius: var(--memori-radius-box);
87
86
  margin-bottom: 0;
88
87
  background-color: var(--memori-secondary-background);
89
88
  }
@@ -163,7 +162,7 @@
163
162
  min-width: 0;
164
163
  flex-wrap: nowrap;
165
164
  justify-content: flex-end;
166
- gap: 0.5rem;
165
+ gap: 0.75rem;
167
166
  }
168
167
 
169
168
  .memori-widget.memori-layout-zoomed_full_body .memori-header--fullpage-primary,
@@ -313,7 +312,9 @@
313
312
  }
314
313
 
315
314
  /* Hide avatar column when artifact drawer is open */
316
- .memori-widget.memori-layout-zoomed_full_body .memori-fullpage-content-row:has(.memori--grid-column-artifact--open) .memori--grid-column-left {
315
+ .memori-widget.memori-layout-zoomed_full_body
316
+ .memori-fullpage-content-row:has(.memori--grid-column-artifact--open)
317
+ .memori--grid-column-left {
317
318
  display: none;
318
319
  }
319
320
 
@@ -1,10 +1,16 @@
1
1
  import { shouldRestartSessionOnPositionPopoverClose } from './positionPopover';
2
2
 
3
3
  describe('shouldRestartSessionOnPositionPopoverClose', () => {
4
- it('restarts only when closing an open popover with autoStart', () => {
5
- expect(shouldRestartSessionOnPositionPopoverClose(true, false, true)).toBe(
6
- true
7
- );
4
+ it('restarts only when closing an open popover with autoStart and no session', () => {
5
+ expect(
6
+ shouldRestartSessionOnPositionPopoverClose(true, false, true, false)
7
+ ).toBe(true);
8
+ });
9
+
10
+ it('does not restart when a session is already started', () => {
11
+ expect(
12
+ shouldRestartSessionOnPositionPopoverClose(true, false, true, true)
13
+ ).toBe(false);
8
14
  });
9
15
 
10
16
  it('does not restart when already closed (user/info popover dismiss)', () => {
@@ -1,13 +1,16 @@
1
1
  /**
2
2
  * Whether closing the position popover should re-run autoStart (`onClickStart`).
3
- * Only true on a real open → closed transition, so incidental
4
- * `setPositionPopoverOpen(false)` calls (e.g. opening user/info popovers)
5
- * do not wipe chat history.
3
+ * Only true on a real open → closed transition when a session has not started yet
4
+ * (e.g. autostart blocked waiting for position). Closing during an active session
5
+ * must not wipe chat history.
6
6
  */
7
7
  export function shouldRestartSessionOnPositionPopoverClose(
8
8
  wasOpen: boolean,
9
9
  nextOpen: boolean,
10
- autoStart: boolean
10
+ autoStart: boolean,
11
+ sessionAlreadyStarted = false
11
12
  ): boolean {
12
- return wasOpen && !nextOpen && !!autoStart;
13
+ return (
14
+ wasOpen && !nextOpen && !!autoStart && !sessionAlreadyStarted
15
+ );
13
16
  }
package/src/styles.css CHANGED
@@ -31,6 +31,7 @@
31
31
  @import url('./components/ExpertsDrawer/ExpertsDrawer.css');
32
32
  @import url('./components/ExportHistoryButton/ExportHistoryButton.css');
33
33
  @import url('./components/FeedbackButtons/FeedbackButtons.css');
34
+ @import url('./components/IconButton/IconButton.css');
34
35
  @import url('./components/Header/Header.css');
35
36
  @import url('./components/PositionPopover/PositionPopover.css');
36
37
  @import url('./components/MediaWidget/MediaItemWidget.css');
package/src/version.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  // This file is auto-generated. Do not edit manually.
2
- export const version = '9.0.0-alpha.16';
2
+ export const version = '9.0.0-alpha.18';