@memori.ai/memori-react 8.45.6 → 8.46.1

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 (270) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/components/ChatBubble/ChatBubble.css +94 -9
  3. package/dist/components/ChatInputs/ChatInputs.css +7 -5
  4. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +27 -0
  5. package/dist/components/MemoriWidget/MemoriWidget.js +36 -29
  6. package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
  7. package/dist/components/layouts/chat.css +11 -1
  8. package/dist/components/layouts/totem.css +2 -0
  9. package/dist/helpers/message.js +45 -1
  10. package/dist/helpers/message.js.map +1 -1
  11. package/dist/styles.css +19 -0
  12. package/dist/version.d.ts +1 -1
  13. package/dist/version.js +1 -1
  14. package/esm/components/ChatBubble/ChatBubble.css +94 -9
  15. package/esm/components/ChatInputs/ChatInputs.css +7 -5
  16. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +27 -0
  17. package/esm/components/MemoriWidget/MemoriWidget.js +36 -29
  18. package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
  19. package/esm/components/layouts/chat.css +11 -1
  20. package/esm/components/layouts/totem.css +2 -0
  21. package/esm/helpers/message.js +45 -1
  22. package/esm/helpers/message.js.map +1 -1
  23. package/esm/styles.css +19 -0
  24. package/esm/version.d.ts +1 -1
  25. package/esm/version.js +1 -1
  26. package/package.json +2 -2
  27. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.css +0 -78
  28. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.d.ts +0 -39
  29. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.js +0 -43
  30. package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.js.map +0 -1
  31. package/dist/components/ContentPreviewModal/DocumentMarkdown.d.ts +0 -7
  32. package/dist/components/ContentPreviewModal/DocumentMarkdown.js +0 -31
  33. package/dist/components/ContentPreviewModal/DocumentMarkdown.js.map +0 -1
  34. package/dist/components/DrawerFooter/DrawerFooter.css +0 -62
  35. package/dist/components/DrawerFooter/DrawerFooter.d.ts +0 -12
  36. package/dist/components/DrawerFooter/DrawerFooter.js +0 -10
  37. package/dist/components/DrawerFooter/DrawerFooter.js.map +0 -1
  38. package/dist/components/IconButton/IconButton.css +0 -135
  39. package/dist/components/IconButton/IconButton.d.ts +0 -9
  40. package/dist/components/IconButton/IconButton.js +0 -36
  41. package/dist/components/IconButton/IconButton.js.map +0 -1
  42. package/dist/components/LoginModal/LoginModal.css +0 -270
  43. package/dist/components/LoginModal/LoginModal.d.ts +0 -19
  44. package/dist/components/LoginModal/LoginModal.js +0 -355
  45. package/dist/components/LoginModal/LoginModal.js.map +0 -1
  46. package/dist/components/MobileSessionPanel/MobileSessionPanel.css +0 -540
  47. package/dist/components/MobileSessionPanel/MobileSessionPanel.d.ts +0 -65
  48. package/dist/components/MobileSessionPanel/MobileSessionPanel.js +0 -254
  49. package/dist/components/MobileSessionPanel/MobileSessionPanel.js.map +0 -1
  50. package/dist/components/PositionPopover/PositionPopover.css +0 -218
  51. package/dist/components/PositionPopover/PositionPopover.d.ts +0 -22
  52. package/dist/components/PositionPopover/PositionPopover.js +0 -208
  53. package/dist/components/PositionPopover/PositionPopover.js.map +0 -1
  54. package/dist/components/ReasoningBlock/ReasoningBlock.css +0 -156
  55. package/dist/components/ReasoningBlock/ReasoningBlock.d.ts +0 -7
  56. package/dist/components/ReasoningBlock/ReasoningBlock.js +0 -61
  57. package/dist/components/ReasoningBlock/ReasoningBlock.js.map +0 -1
  58. package/dist/components/SideDrawer/SideDrawer.css +0 -112
  59. package/dist/components/SideDrawer/SideDrawer.d.ts +0 -22
  60. package/dist/components/SideDrawer/SideDrawer.js +0 -17
  61. package/dist/components/SideDrawer/SideDrawer.js.map +0 -1
  62. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.d.ts +0 -4
  63. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js +0 -144
  64. package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +0 -1
  65. package/dist/components/layouts/WebsiteAssistant/website-assistant.css +0 -889
  66. package/dist/components/layouts/fullpage.css +0 -628
  67. package/dist/helpers/artifactPanel.d.ts +0 -6
  68. package/dist/helpers/artifactPanel.js +0 -42
  69. package/dist/helpers/artifactPanel.js.map +0 -1
  70. package/dist/helpers/chatScroll.d.ts +0 -12
  71. package/dist/helpers/chatScroll.js +0 -14
  72. package/dist/helpers/chatScroll.js.map +0 -1
  73. package/dist/helpers/conversationHistory.d.ts +0 -16
  74. package/dist/helpers/conversationHistory.js +0 -89
  75. package/dist/helpers/conversationHistory.js.map +0 -1
  76. package/dist/helpers/conversationTitle.d.ts +0 -8
  77. package/dist/helpers/conversationTitle.js +0 -27
  78. package/dist/helpers/conversationTitle.js.map +0 -1
  79. package/dist/helpers/enhanceBubbleCodeBlocks.d.ts +0 -5
  80. package/dist/helpers/enhanceBubbleCodeBlocks.js +0 -97
  81. package/dist/helpers/enhanceBubbleCodeBlocks.js.map +0 -1
  82. package/dist/helpers/highlightMatches.d.ts +0 -2
  83. package/dist/helpers/highlightMatches.js +0 -54
  84. package/dist/helpers/highlightMatches.js.map +0 -1
  85. package/dist/helpers/positionPopover.d.ts +0 -3
  86. package/dist/helpers/positionPopover.js +0 -22
  87. package/dist/helpers/positionPopover.js.map +0 -1
  88. package/dist/helpers/prism.d.ts +0 -16
  89. package/dist/helpers/prism.js +0 -78
  90. package/dist/helpers/prism.js.map +0 -1
  91. package/dist/helpers/reasoning.d.ts +0 -7
  92. package/dist/helpers/reasoning.js +0 -43
  93. package/dist/helpers/reasoning.js.map +0 -1
  94. package/dist/helpers/relativeTime.d.ts +0 -3
  95. package/dist/helpers/relativeTime.js +0 -56
  96. package/dist/helpers/relativeTime.js.map +0 -1
  97. package/dist/helpers/sourcesCount.d.ts +0 -2
  98. package/dist/helpers/sourcesCount.js +0 -22
  99. package/dist/helpers/sourcesCount.js.map +0 -1
  100. package/dist/helpers/tts/muteSpeaker.d.ts +0 -13
  101. package/dist/helpers/tts/muteSpeaker.js +0 -26
  102. package/dist/helpers/tts/muteSpeaker.js.map +0 -1
  103. package/dist/helpers/usePressTooltip.d.ts +0 -18
  104. package/dist/helpers/usePressTooltip.js +0 -38
  105. package/dist/helpers/usePressTooltip.js.map +0 -1
  106. package/dist/icons/FacebookIcon.d.ts +0 -3
  107. package/dist/icons/FacebookIcon.js +0 -6
  108. package/dist/icons/FacebookIcon.js.map +0 -1
  109. package/dist/icons/LinkedinIcon.d.ts +0 -3
  110. package/dist/icons/LinkedinIcon.js +0 -6
  111. package/dist/icons/LinkedinIcon.js.map +0 -1
  112. package/dist/icons/MemoriIcon.d.ts +0 -3
  113. package/dist/icons/MemoriIcon.js +0 -8
  114. package/dist/icons/MemoriIcon.js.map +0 -1
  115. package/dist/icons/TelegramIcon.d.ts +0 -3
  116. package/dist/icons/TelegramIcon.js +0 -6
  117. package/dist/icons/TelegramIcon.js.map +0 -1
  118. package/dist/icons/TwitterIcon.d.ts +0 -3
  119. package/dist/icons/TwitterIcon.js +0 -6
  120. package/dist/icons/TwitterIcon.js.map +0 -1
  121. package/dist/icons/WhatsappIcon.d.ts +0 -3
  122. package/dist/icons/WhatsappIcon.js +0 -6
  123. package/dist/icons/WhatsappIcon.js.map +0 -1
  124. package/dist/icons/artifacts/DocumentIcon.d.ts +0 -3
  125. package/dist/icons/artifacts/DocumentIcon.js +0 -6
  126. package/dist/icons/artifacts/DocumentIcon.js.map +0 -1
  127. package/dist/icons/artifacts/HtmlIcon.d.ts +0 -3
  128. package/dist/icons/artifacts/HtmlIcon.js +0 -6
  129. package/dist/icons/artifacts/HtmlIcon.js.map +0 -1
  130. package/dist/icons/artifacts/JavascriptIcon.d.ts +0 -3
  131. package/dist/icons/artifacts/JavascriptIcon.js +0 -6
  132. package/dist/icons/artifacts/JavascriptIcon.js.map +0 -1
  133. package/dist/icons/artifacts/MarkdownIcon.d.ts +0 -3
  134. package/dist/icons/artifacts/MarkdownIcon.js +0 -6
  135. package/dist/icons/artifacts/MarkdownIcon.js.map +0 -1
  136. package/dist/icons/artifacts/PythonIcon.d.ts +0 -3
  137. package/dist/icons/artifacts/PythonIcon.js +0 -6
  138. package/dist/icons/artifacts/PythonIcon.js.map +0 -1
  139. package/dist/icons/artifacts/SvgIcon.d.ts +0 -3
  140. package/dist/icons/artifacts/SvgIcon.js +0 -6
  141. package/dist/icons/artifacts/SvgIcon.js.map +0 -1
  142. package/dist/icons/artifacts/XmlIcon.d.ts +0 -3
  143. package/dist/icons/artifacts/XmlIcon.js +0 -6
  144. package/dist/icons/artifacts/XmlIcon.js.map +0 -1
  145. package/dist/icons/artifacts/cssIcon.d.ts +0 -3
  146. package/dist/icons/artifacts/cssIcon.js +0 -6
  147. package/dist/icons/artifacts/cssIcon.js.map +0 -1
  148. package/dist/styles/motion.css +0 -25
  149. package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.css +0 -78
  150. package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.d.ts +0 -39
  151. package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.js +0 -40
  152. package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.js.map +0 -1
  153. package/esm/components/ContentPreviewModal/DocumentMarkdown.d.ts +0 -7
  154. package/esm/components/ContentPreviewModal/DocumentMarkdown.js +0 -28
  155. package/esm/components/ContentPreviewModal/DocumentMarkdown.js.map +0 -1
  156. package/esm/components/DrawerFooter/DrawerFooter.css +0 -62
  157. package/esm/components/DrawerFooter/DrawerFooter.d.ts +0 -12
  158. package/esm/components/DrawerFooter/DrawerFooter.js +0 -8
  159. package/esm/components/DrawerFooter/DrawerFooter.js.map +0 -1
  160. package/esm/components/IconButton/IconButton.css +0 -135
  161. package/esm/components/IconButton/IconButton.d.ts +0 -9
  162. package/esm/components/IconButton/IconButton.js +0 -33
  163. package/esm/components/IconButton/IconButton.js.map +0 -1
  164. package/esm/components/LoginModal/LoginModal.css +0 -270
  165. package/esm/components/LoginModal/LoginModal.d.ts +0 -19
  166. package/esm/components/LoginModal/LoginModal.js +0 -352
  167. package/esm/components/LoginModal/LoginModal.js.map +0 -1
  168. package/esm/components/MobileSessionPanel/MobileSessionPanel.css +0 -540
  169. package/esm/components/MobileSessionPanel/MobileSessionPanel.d.ts +0 -65
  170. package/esm/components/MobileSessionPanel/MobileSessionPanel.js +0 -251
  171. package/esm/components/MobileSessionPanel/MobileSessionPanel.js.map +0 -1
  172. package/esm/components/PositionPopover/PositionPopover.css +0 -218
  173. package/esm/components/PositionPopover/PositionPopover.d.ts +0 -22
  174. package/esm/components/PositionPopover/PositionPopover.js +0 -203
  175. package/esm/components/PositionPopover/PositionPopover.js.map +0 -1
  176. package/esm/components/ReasoningBlock/ReasoningBlock.css +0 -156
  177. package/esm/components/ReasoningBlock/ReasoningBlock.d.ts +0 -7
  178. package/esm/components/ReasoningBlock/ReasoningBlock.js +0 -58
  179. package/esm/components/ReasoningBlock/ReasoningBlock.js.map +0 -1
  180. package/esm/components/SideDrawer/SideDrawer.css +0 -112
  181. package/esm/components/SideDrawer/SideDrawer.d.ts +0 -22
  182. package/esm/components/SideDrawer/SideDrawer.js +0 -12
  183. package/esm/components/SideDrawer/SideDrawer.js.map +0 -1
  184. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.d.ts +0 -4
  185. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js +0 -141
  186. package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +0 -1
  187. package/esm/components/layouts/WebsiteAssistant/website-assistant.css +0 -889
  188. package/esm/components/layouts/fullpage.css +0 -628
  189. package/esm/helpers/artifactPanel.d.ts +0 -6
  190. package/esm/helpers/artifactPanel.js +0 -37
  191. package/esm/helpers/artifactPanel.js.map +0 -1
  192. package/esm/helpers/chatScroll.d.ts +0 -12
  193. package/esm/helpers/chatScroll.js +0 -9
  194. package/esm/helpers/chatScroll.js.map +0 -1
  195. package/esm/helpers/conversationHistory.d.ts +0 -16
  196. package/esm/helpers/conversationHistory.js +0 -82
  197. package/esm/helpers/conversationHistory.js.map +0 -1
  198. package/esm/helpers/conversationTitle.d.ts +0 -8
  199. package/esm/helpers/conversationTitle.js +0 -23
  200. package/esm/helpers/conversationTitle.js.map +0 -1
  201. package/esm/helpers/enhanceBubbleCodeBlocks.d.ts +0 -5
  202. package/esm/helpers/enhanceBubbleCodeBlocks.js +0 -94
  203. package/esm/helpers/enhanceBubbleCodeBlocks.js.map +0 -1
  204. package/esm/helpers/highlightMatches.d.ts +0 -2
  205. package/esm/helpers/highlightMatches.js +0 -49
  206. package/esm/helpers/highlightMatches.js.map +0 -1
  207. package/esm/helpers/positionPopover.d.ts +0 -3
  208. package/esm/helpers/positionPopover.js +0 -17
  209. package/esm/helpers/positionPopover.js.map +0 -1
  210. package/esm/helpers/prism.d.ts +0 -16
  211. package/esm/helpers/prism.js +0 -74
  212. package/esm/helpers/prism.js.map +0 -1
  213. package/esm/helpers/reasoning.d.ts +0 -7
  214. package/esm/helpers/reasoning.js +0 -39
  215. package/esm/helpers/reasoning.js.map +0 -1
  216. package/esm/helpers/relativeTime.d.ts +0 -3
  217. package/esm/helpers/relativeTime.js +0 -50
  218. package/esm/helpers/relativeTime.js.map +0 -1
  219. package/esm/helpers/sourcesCount.d.ts +0 -2
  220. package/esm/helpers/sourcesCount.js +0 -18
  221. package/esm/helpers/sourcesCount.js.map +0 -1
  222. package/esm/helpers/tts/muteSpeaker.d.ts +0 -13
  223. package/esm/helpers/tts/muteSpeaker.js +0 -21
  224. package/esm/helpers/tts/muteSpeaker.js.map +0 -1
  225. package/esm/helpers/usePressTooltip.d.ts +0 -18
  226. package/esm/helpers/usePressTooltip.js +0 -35
  227. package/esm/helpers/usePressTooltip.js.map +0 -1
  228. package/esm/icons/FacebookIcon.d.ts +0 -3
  229. package/esm/icons/FacebookIcon.js +0 -4
  230. package/esm/icons/FacebookIcon.js.map +0 -1
  231. package/esm/icons/LinkedinIcon.d.ts +0 -3
  232. package/esm/icons/LinkedinIcon.js +0 -4
  233. package/esm/icons/LinkedinIcon.js.map +0 -1
  234. package/esm/icons/MemoriIcon.d.ts +0 -3
  235. package/esm/icons/MemoriIcon.js +0 -6
  236. package/esm/icons/MemoriIcon.js.map +0 -1
  237. package/esm/icons/TelegramIcon.d.ts +0 -3
  238. package/esm/icons/TelegramIcon.js +0 -4
  239. package/esm/icons/TelegramIcon.js.map +0 -1
  240. package/esm/icons/TwitterIcon.d.ts +0 -3
  241. package/esm/icons/TwitterIcon.js +0 -4
  242. package/esm/icons/TwitterIcon.js.map +0 -1
  243. package/esm/icons/WhatsappIcon.d.ts +0 -3
  244. package/esm/icons/WhatsappIcon.js +0 -4
  245. package/esm/icons/WhatsappIcon.js.map +0 -1
  246. package/esm/icons/artifacts/DocumentIcon.d.ts +0 -3
  247. package/esm/icons/artifacts/DocumentIcon.js +0 -4
  248. package/esm/icons/artifacts/DocumentIcon.js.map +0 -1
  249. package/esm/icons/artifacts/HtmlIcon.d.ts +0 -3
  250. package/esm/icons/artifacts/HtmlIcon.js +0 -4
  251. package/esm/icons/artifacts/HtmlIcon.js.map +0 -1
  252. package/esm/icons/artifacts/JavascriptIcon.d.ts +0 -3
  253. package/esm/icons/artifacts/JavascriptIcon.js +0 -4
  254. package/esm/icons/artifacts/JavascriptIcon.js.map +0 -1
  255. package/esm/icons/artifacts/MarkdownIcon.d.ts +0 -3
  256. package/esm/icons/artifacts/MarkdownIcon.js +0 -4
  257. package/esm/icons/artifacts/MarkdownIcon.js.map +0 -1
  258. package/esm/icons/artifacts/PythonIcon.d.ts +0 -3
  259. package/esm/icons/artifacts/PythonIcon.js +0 -4
  260. package/esm/icons/artifacts/PythonIcon.js.map +0 -1
  261. package/esm/icons/artifacts/SvgIcon.d.ts +0 -3
  262. package/esm/icons/artifacts/SvgIcon.js +0 -4
  263. package/esm/icons/artifacts/SvgIcon.js.map +0 -1
  264. package/esm/icons/artifacts/XmlIcon.d.ts +0 -3
  265. package/esm/icons/artifacts/XmlIcon.js +0 -4
  266. package/esm/icons/artifacts/XmlIcon.js.map +0 -1
  267. package/esm/icons/artifacts/cssIcon.d.ts +0 -3
  268. package/esm/icons/artifacts/cssIcon.js +0 -4
  269. package/esm/icons/artifacts/cssIcon.js.map +0 -1
  270. package/esm/styles/motion.css +0 -25
@@ -1,208 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PositionPopoverContent = void 0;
4
- const tslib_1 = require("tslib");
5
- const jsx_runtime_1 = require("react/jsx-runtime");
6
- const ui_1 = require("@memori.ai/ui");
7
- const IconButton_1 = tslib_1.__importDefault(require("../IconButton/IconButton"));
8
- const lucide_react_1 = require("lucide-react");
9
- const react_1 = require("react");
10
- const react_i18next_1 = require("react-i18next");
11
- const venue_1 = require("../../helpers/venue");
12
- const utils_1 = require("../../helpers/utils");
13
- const VenueWidget_1 = require("../VenueWidget/VenueWidget");
14
- const classnames_1 = tslib_1.__importDefault(require("classnames"));
15
- const GEOCODE_TIMEOUT_MS = 8000;
16
- function hasShareableCoords(v) {
17
- return !!((v === null || v === void 0 ? void 0 : v.latitude) && (v === null || v === void 0 ? void 0 : v.longitude));
18
- }
19
- const PositionPopoverContent = ({ venue, setVenue, autoStartGeolocation = false, }) => {
20
- var _a;
21
- const { t } = (0, react_i18next_1.useTranslation)();
22
- const [geolocationLoading, setGeolocationLoading] = (0, react_1.useState)(false);
23
- const [editingLocation, setEditingLocation] = (0, react_1.useState)(false);
24
- const [permissionDeniedMessage, setPermissionDeniedMessage] = (0, react_1.useState)(null);
25
- const [geocodingError, setGeocodingError] = (0, react_1.useState)(null);
26
- const [fetching, setFetching] = (0, react_1.useState)(false);
27
- const [query, setQuery] = (0, react_1.useState)('');
28
- const [suggestions, setSuggestions] = (0, react_1.useState)([]);
29
- const geoGenRef = (0, react_1.useRef)(0);
30
- const autocompleteInputRef = (0, react_1.useRef)(null);
31
- const autoStartedRef = (0, react_1.useRef)(false);
32
- const sharingActive = geolocationLoading || hasShareableCoords(venue);
33
- const handleSearch = (0, utils_1.useDebounceFn)(async (value) => {
34
- setFetching(true);
35
- try {
36
- const response = await fetch(`https://nominatim.openstreetmap.org/search?q=${encodeURIComponent(value)}&format=jsonv2&limit=5&addressdetails=1`);
37
- const data = await response.json();
38
- setSuggestions(data);
39
- }
40
- catch (_a) {
41
- setGeocodingError(String(t('widget.geocodingFailed')));
42
- }
43
- finally {
44
- setFetching(false);
45
- }
46
- }, 1000);
47
- const onQueryChange = (0, react_1.useCallback)((value, opts) => {
48
- setQuery(value);
49
- if (opts === null || opts === void 0 ? void 0 : opts.skipSearch)
50
- return;
51
- if (!value.trim()) {
52
- setSuggestions([]);
53
- return;
54
- }
55
- handleSearch(value);
56
- }, [handleSearch]);
57
- const handleAutocompletePick = (0, react_1.useCallback)((value) => {
58
- const placeName = (0, VenueWidget_1.getPlaceName)(value);
59
- setVenue({
60
- latitude: value.lat,
61
- longitude: value.lon,
62
- placeName,
63
- uncertainty: (value === null || value === void 0 ? void 0 : value.boundingbox)
64
- ? (0, venue_1.getUncertaintyByViewport)(value.boundingbox)
65
- : 2,
66
- });
67
- setEditingLocation(false);
68
- setQuery('');
69
- setSuggestions([]);
70
- setGeocodingError(null);
71
- setPermissionDeniedMessage(null);
72
- }, [setVenue, t]);
73
- const startGeolocation = (0, react_1.useCallback)(() => {
74
- const gen = ++geoGenRef.current;
75
- setPermissionDeniedMessage(null);
76
- setGeocodingError(null);
77
- if (!navigator.geolocation) {
78
- setGeolocationLoading(false);
79
- setPermissionDeniedMessage(String(t('widget.positionUnavailableManual')));
80
- setEditingLocation(true);
81
- return;
82
- }
83
- setGeolocationLoading(true);
84
- navigator.geolocation.getCurrentPosition(pos => {
85
- if (gen !== geoGenRef.current)
86
- return;
87
- const next = {
88
- latitude: pos.coords.latitude,
89
- longitude: pos.coords.longitude,
90
- placeName: '',
91
- uncertainty: pos.coords.accuracy / 1000,
92
- };
93
- setVenue(next);
94
- setGeolocationLoading(false);
95
- const controller = new AbortController();
96
- const timeoutId = window.setTimeout(() => controller.abort(), GEOCODE_TIMEOUT_MS);
97
- void (async () => {
98
- try {
99
- const result = await fetch(`https://nominatim.openstreetmap.org/reverse?lat=${pos.coords.latitude}&lon=${pos.coords.longitude}&format=jsonv2&addressdetails=1`, { signal: controller.signal });
100
- if (gen !== geoGenRef.current)
101
- return;
102
- const response = (await result.json());
103
- const placeName = (0, VenueWidget_1.getPlaceName)(response);
104
- setVenue({
105
- ...next,
106
- placeName,
107
- });
108
- }
109
- catch (e) {
110
- if (gen !== geoGenRef.current)
111
- return;
112
- if (e.name === 'AbortError')
113
- return;
114
- console.error('[PositionPopover] reverse geocode failed', e);
115
- setGeocodingError(String(t('widget.geocodingFailed')));
116
- }
117
- finally {
118
- window.clearTimeout(timeoutId);
119
- }
120
- })();
121
- }, err => {
122
- if (gen !== geoGenRef.current)
123
- return;
124
- setGeolocationLoading(false);
125
- setVenue(undefined);
126
- const code = err.code;
127
- if (code === 1) {
128
- setPermissionDeniedMessage(String(t('widget.positionUnavailableManual')));
129
- setEditingLocation(true);
130
- }
131
- else {
132
- setGeocodingError(String(t('widget.geocodingFailed')));
133
- }
134
- }, { enableHighAccuracy: true, timeout: 15000, maximumAge: 0 });
135
- }, [setVenue, t]);
136
- const toggleSharing = (0, react_1.useCallback)(() => {
137
- setPermissionDeniedMessage(null);
138
- setGeocodingError(null);
139
- if (sharingActive && !geolocationLoading) {
140
- geoGenRef.current += 1;
141
- setVenue({
142
- latitude: 0,
143
- longitude: 0,
144
- placeName: '',
145
- uncertainty: 0,
146
- });
147
- setEditingLocation(false);
148
- setQuery('');
149
- setSuggestions([]);
150
- return;
151
- }
152
- if (geolocationLoading) {
153
- geoGenRef.current += 1;
154
- setGeolocationLoading(false);
155
- setVenue(undefined);
156
- return;
157
- }
158
- startGeolocation();
159
- }, [geolocationLoading, setVenue, sharingActive, startGeolocation]);
160
- (0, react_1.useEffect)(() => {
161
- if (!autoStartGeolocation) {
162
- autoStartedRef.current = false;
163
- return;
164
- }
165
- if (autoStartedRef.current)
166
- return;
167
- if (hasShareableCoords(venue) || geolocationLoading)
168
- return;
169
- autoStartedRef.current = true;
170
- startGeolocation();
171
- }, [autoStartGeolocation, geolocationLoading, startGeolocation, venue]);
172
- (0, react_1.useEffect)(() => {
173
- if (!editingLocation)
174
- return;
175
- const id = requestAnimationFrame(() => {
176
- var _a;
177
- (_a = autocompleteInputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
178
- });
179
- return () => cancelAnimationFrame(id);
180
- }, [editingLocation]);
181
- const inlineError = permissionDeniedMessage || geocodingError;
182
- const shareLocationHint = t('widget.shareLocationHint') || 'Get answers tailored to where you are';
183
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", { className: "memori-position-popover__row memori-position-popover__switch-row", children: (0, jsx_runtime_1.jsxs)("button", { type: "button", className: "memori-dropdown--auth-row", onClick: () => {
184
- toggleSharing();
185
- }, children: [(0, jsx_runtime_1.jsx)("span", { className: "memori-dropdown--auth-icon-wrap", children: (0, jsx_runtime_1.jsx)(lucide_react_1.MapPin, { size: 16 }) }), (0, jsx_runtime_1.jsxs)("span", { className: "memori-dropdown--auth-copy", children: [(0, jsx_runtime_1.jsx)("span", { className: "memori-dropdown--auth-title", children: t('widget.shareLocation') || 'Share my location' }), (0, jsx_runtime_1.jsx)(ui_1.Tooltip, { title: shareLocationHint, placement: "top", children: (0, jsx_runtime_1.jsx)("span", { className: "memori-dropdown--auth-subtitle", children: shareLocationHint }) })] }), (0, jsx_runtime_1.jsx)("span", { className: (0, classnames_1.default)('memori-dropdown--switch', sharingActive && 'memori-dropdown--switch--on'), "aria-hidden": true })] }) }), (sharingActive || geolocationLoading || editingLocation) && ((0, jsx_runtime_1.jsx)("div", { className: "memori-position-popover__tag-block", children: geolocationLoading ? ((0, jsx_runtime_1.jsxs)("div", { className: "memori-position-popover__tag memori-position-popover__tag--loading", "aria-busy": "true", "aria-live": "polite", children: [(0, jsx_runtime_1.jsx)("span", { className: "memori-position-popover__spinner", "aria-hidden": true }), (0, jsx_runtime_1.jsx)("span", { className: "memori-position-popover__tag-skeleton" })] })) : editingLocation ? ((0, jsx_runtime_1.jsx)("div", { className: "memori-position-popover__autocomplete-wrap", children: (0, jsx_runtime_1.jsx)(VenueWidget_1.VenueCombobox, { venue: venue, query: query, fetching: fetching, suggestions: suggestions, onQueryChange: onQueryChange, onChange: handleAutocompletePick, getPlaceName: VenueWidget_1.getPlaceName, t: t, autocompleteRootId: "memori-position-popover-venue-search", inputRef: autocompleteInputRef }) })) : ((0, jsx_runtime_1.jsxs)("div", { className: "memori-position-popover__tag", children: [(0, jsx_runtime_1.jsx)("span", { className: "memori-position-popover__tag-text", children: ((_a = venue === null || venue === void 0 ? void 0 : venue.placeName) === null || _a === void 0 ? void 0 : _a.trim())
186
- ? venue.placeName
187
- : t('widget.positionResolving') }), (0, jsx_runtime_1.jsx)(ui_1.Button, { type: "button", variant: "ghost", icon: (0, jsx_runtime_1.jsx)(lucide_react_1.Pencil, { size: 16, strokeWidth: 2, "aria-hidden": true }), size: "sm", className: "memori-position-popover__tag-edit", "aria-label": String(t('widget.editPositionAria')), onClick: () => {
188
- setEditingLocation(true);
189
- setPermissionDeniedMessage(null);
190
- } })] })) })), inlineError && ((0, jsx_runtime_1.jsx)("p", { className: "memori-position-popover__error", role: "alert", children: inlineError })), hasShareableCoords(venue) && !geolocationLoading && ((0, jsx_runtime_1.jsx)("div", { className: "memori-position-popover__map", children: (0, jsx_runtime_1.jsx)(VenueWidget_1.VenueMapPreview, { venue: venue }) }))] }));
191
- };
192
- exports.PositionPopoverContent = PositionPopoverContent;
193
- const PositionPopover = ({ venue, setVenue, open, onOpenChange, triggerClassName, triggerButtonVariant = 'toolbar', triggerAriaLabel, positionerClassName, autoStartGeolocation = false, }) => {
194
- const sharingActive = hasShareableCoords(venue);
195
- return ((0, jsx_runtime_1.jsx)(ui_1.Popover, { open: open, onOpenChange: onOpenChange, modal: false, closable: false, placement: "bottom-end", sideOffset: 8, contentClassName: "memori-position-popover__popup", slotProps: {
196
- trigger: {
197
- className: triggerClassName,
198
- render: (props) => {
199
- return ((0, jsx_runtime_1.jsx)(IconButton_1.default, { ...props, type: "button", variant: triggerButtonVariant, active: open, className: (0, classnames_1.default)('memori-header--button', 'memori-header--button--position', sharingActive && 'memori-header--button--position--active', triggerClassName), "aria-label": triggerAriaLabel, "aria-expanded": open, icon: (0, jsx_runtime_1.jsx)(lucide_react_1.MapPin, { "aria-hidden": true }) }));
200
- },
201
- },
202
- positioner: {
203
- className: (0, classnames_1.default)('memori-position-popover__positioner', positionerClassName),
204
- },
205
- }, content: (0, jsx_runtime_1.jsx)(exports.PositionPopoverContent, { venue: venue, setVenue: setVenue, autoStartGeolocation: open && autoStartGeolocation }), children: null }));
206
- };
207
- exports.default = PositionPopover;
208
- //# sourceMappingURL=PositionPopover.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PositionPopover.js","sourceRoot":"","sources":["../../../src/components/PositionPopover/PositionPopover.tsx"],"names":[],"mappings":"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"}
@@ -1,156 +0,0 @@
1
- .memori-reasoning {
2
- display: flex;
3
- width: 100%;
4
- max-width: 100%;
5
- flex-direction: column;
6
- align-items: flex-start;
7
- margin-bottom: 0;
8
- }
9
-
10
- .memori-reasoning__trigger {
11
- display: inline-flex;
12
- align-items: center;
13
- padding: 2px 4px 2px 0;
14
- border: 0;
15
- border-radius: 6px;
16
- margin: 0;
17
- background: transparent;
18
- color: color-mix(in oklch, var(--memori-text-color) 52%, transparent);
19
- cursor: pointer;
20
- font-family: inherit;
21
- font-size: 13px;
22
- font-weight: 500;
23
- gap: 4px;
24
- letter-spacing: -0.01em;
25
- line-height: 1.4;
26
- transition: color 0.16s ease;
27
- }
28
-
29
- .memori-reasoning__trigger:hover,
30
- .memori-reasoning__trigger:focus-visible {
31
- color: color-mix(in oklch, var(--memori-text-color) 82%, transparent);
32
- }
33
-
34
- .memori-reasoning__trigger:focus-visible {
35
- outline: 2px solid var(--memori-primary, currentColor);
36
- outline-offset: 2px;
37
- }
38
-
39
- .memori-reasoning__chevron {
40
- width: 14px;
41
- height: 14px;
42
- flex-shrink: 0;
43
- opacity: 0.85;
44
- transform: rotate(0deg);
45
- transform-origin: 50% 50%;
46
- transition: transform 0.2s ease;
47
- }
48
-
49
- .memori-reasoning--open .memori-reasoning__chevron {
50
- transform: rotate(90deg);
51
- }
52
-
53
- .memori-reasoning__label {
54
- min-width: 0;
55
- }
56
-
57
- .memori-reasoning__label--thinking {
58
- animation: memori-reasoning-shimmer 1.8s ease-in-out infinite;
59
- -webkit-background-clip: text;
60
- background-clip: text;
61
- background-image: linear-gradient(
62
- 90deg,
63
- color-mix(in oklch, var(--memori-text-color) 38%, transparent) 0%,
64
- color-mix(in oklch, var(--memori-text-color) 38%, transparent) 36%,
65
- var(--memori-text-color) 50%,
66
- color-mix(in oklch, var(--memori-text-color) 38%, transparent) 64%,
67
- color-mix(in oklch, var(--memori-text-color) 38%, transparent) 100%
68
- );
69
- background-size: 220% 100%;
70
- color: transparent;
71
- }
72
-
73
- .memori-reasoning__collapsible {
74
- display: grid;
75
- width: 100%;
76
- grid-template-rows: 0fr;
77
- opacity: 0;
78
- transition:
79
- grid-template-rows 0.22s ease,
80
- opacity 0.18s ease;
81
- }
82
-
83
- .memori-reasoning--open .memori-reasoning__collapsible {
84
- grid-template-rows: 1fr;
85
- opacity: 1;
86
- }
87
-
88
- .memori-reasoning__clip {
89
- overflow: hidden;
90
- min-height: 0;
91
- }
92
-
93
- .memori-reasoning__panel {
94
- display: grid;
95
- width: 100%;
96
- padding: 4px 0 8px;
97
- grid-template-columns: 12px minmax(0, 1fr);
98
- }
99
-
100
- .memori-reasoning__panel::before {
101
- width: 1px;
102
- border-radius: 1px;
103
- margin: 2px 0;
104
- background: color-mix(in oklch, var(--memori-text-color) 16%, transparent);
105
- content: '';
106
- justify-self: center;
107
- }
108
-
109
- .memori-reasoning__body {
110
- min-width: 0;
111
- color: color-mix(in oklch, var(--memori-text-color) 62%, transparent);
112
- font-size: 13px;
113
- font-style: normal;
114
- font-weight: 400;
115
- letter-spacing: 0;
116
- line-height: 1.65;
117
- overflow-wrap: anywhere;
118
- white-space: pre-wrap;
119
- }
120
-
121
- .memori-reasoning--streaming.memori-reasoning--overflow .memori-reasoning__body {
122
- overflow: hidden;
123
- max-height: 9.5rem;
124
- -webkit-mask-image: linear-gradient(to bottom, #000 48%, transparent 100%);
125
- mask-image: linear-gradient(to bottom, #000 48%, transparent 100%);
126
- }
127
-
128
- .memori-reasoning--open:not(.memori-reasoning--streaming) .memori-reasoning__body {
129
- max-height: min(40vh, 22rem);
130
- overflow-x: hidden;
131
- overflow-y: auto;
132
- }
133
-
134
- @keyframes memori-reasoning-shimmer {
135
- 0% {
136
- background-position: 100% 50%;
137
- }
138
-
139
- 100% {
140
- background-position: 0% 50%;
141
- }
142
- }
143
-
144
- @media (prefers-reduced-motion: reduce) {
145
- .memori-reasoning__chevron,
146
- .memori-reasoning__collapsible {
147
- transition: none;
148
- }
149
-
150
- .memori-reasoning__label--thinking {
151
- animation: none;
152
- background: none;
153
- color: color-mix(in oklch, var(--memori-text-color) 58%, transparent);
154
- -webkit-text-fill-color: unset;
155
- }
156
- }
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- export interface ReasoningBlockProps {
3
- content: string;
4
- complete: boolean;
5
- }
6
- declare const ReasoningBlock: React.FC<ReasoningBlockProps>;
7
- export default ReasoningBlock;
@@ -1,61 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const react_1 = require("react");
6
- const classnames_1 = tslib_1.__importDefault(require("classnames"));
7
- const lucide_react_1 = require("lucide-react");
8
- const react_i18next_1 = require("react-i18next");
9
- const ReasoningBlock = ({ content, complete, }) => {
10
- const { t } = (0, react_i18next_1.useTranslation)();
11
- const panelId = (0, react_1.useId)();
12
- const userToggled = (0, react_1.useRef)(false);
13
- const startedAt = (0, react_1.useRef)(null);
14
- const bodyRef = (0, react_1.useRef)(null);
15
- const [open, setOpen] = (0, react_1.useState)(!complete);
16
- const [elapsedSeconds, setElapsedSeconds] = (0, react_1.useState)(null);
17
- const [overflowing, setOverflowing] = (0, react_1.useState)(false);
18
- (0, react_1.useEffect)(() => {
19
- if (!complete && startedAt.current == null) {
20
- startedAt.current = Date.now();
21
- }
22
- }, [complete]);
23
- (0, react_1.useEffect)(() => {
24
- if (!complete || startedAt.current == null || elapsedSeconds != null) {
25
- return;
26
- }
27
- setElapsedSeconds(Math.max(1, Math.round((Date.now() - startedAt.current) / 1000)));
28
- }, [complete, elapsedSeconds]);
29
- (0, react_1.useEffect)(() => {
30
- if (userToggled.current)
31
- return;
32
- setOpen(!complete);
33
- }, [complete]);
34
- (0, react_1.useLayoutEffect)(() => {
35
- const el = bodyRef.current;
36
- if (!el)
37
- return;
38
- if (open && !complete) {
39
- el.scrollTop = el.scrollHeight;
40
- }
41
- setOverflowing(el.scrollHeight > el.clientHeight + 1);
42
- }, [content, open, complete]);
43
- const label = !complete
44
- ? t('thinking') || 'Thinking'
45
- : elapsedSeconds != null
46
- ? t('thoughtFor', { count: elapsedSeconds }) ||
47
- `Thought for ${elapsedSeconds}s`
48
- : t('thought') || 'Thought';
49
- return ((0, jsx_runtime_1.jsxs)("div", { className: (0, classnames_1.default)('memori-reasoning', {
50
- 'memori-reasoning--open': open,
51
- 'memori-reasoning--streaming': !complete,
52
- 'memori-reasoning--overflow': overflowing,
53
- }), children: [(0, jsx_runtime_1.jsxs)("button", { type: "button", className: "memori-reasoning__trigger", "aria-expanded": open, "aria-controls": panelId, onClick: () => {
54
- userToggled.current = true;
55
- setOpen(value => !value);
56
- }, children: [(0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { className: "memori-reasoning__chevron", "aria-hidden": true, size: 14, strokeWidth: 2.25 }), (0, jsx_runtime_1.jsx)("span", { className: (0, classnames_1.default)('memori-reasoning__label', {
57
- 'memori-reasoning__label--thinking': !complete,
58
- }), children: label })] }), (0, jsx_runtime_1.jsx)("div", { id: panelId, className: "memori-reasoning__collapsible", role: "region", "aria-hidden": !open, children: (0, jsx_runtime_1.jsx)("div", { className: "memori-reasoning__clip", children: (0, jsx_runtime_1.jsx)("div", { className: "memori-reasoning__panel", children: (0, jsx_runtime_1.jsx)("div", { className: "memori-reasoning__body", ref: bodyRef, children: content }) }) }) })] }));
59
- };
60
- exports.default = ReasoningBlock;
61
- //# sourceMappingURL=ReasoningBlock.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReasoningBlock.js","sourceRoot":"","sources":["../../../src/components/ReasoningBlock/ReasoningBlock.tsx"],"names":[],"mappings":"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"}
@@ -1,112 +0,0 @@
1
- .memori-side-drawer.memori-drawer {
2
- display: flex;
3
- min-height: 0;
4
- flex-direction: column;
5
- }
6
-
7
- .memori-side-drawer .memori-drawer__header {
8
- align-items: flex-start;
9
- gap: var(--memori-spacing-md);
10
- }
11
-
12
- .memori-side-drawer .memori-drawer__header > :first-child {
13
- min-width: 0;
14
- flex: 1 1 auto;
15
- }
16
-
17
- .memori-side-drawer .memori-drawer__title {
18
- font-size: var(--memori-text-size-2xl);
19
- }
20
-
21
- .memori-side-drawer .memori-drawer__description {
22
- color: color-mix(in oklch, var(--memori-text-color) 64%, transparent);
23
- }
24
-
25
- .memori-side-drawer .memori-drawer__body {
26
- display: flex;
27
- overflow: hidden;
28
- min-height: 0;
29
- flex: 1 1 auto;
30
- flex-direction: column;
31
- padding: 0;
32
- padding-bottom: var(--memori-spacing-lg);
33
- }
34
-
35
- .memori-side-drawer__body {
36
- display: flex;
37
- overflow: auto;
38
- min-height: 0;
39
- flex: 1 1 auto;
40
- flex-direction: column;
41
- padding: var(--memori-spacing-md) var(--memori-spacing-lg);
42
- gap: var(--memori-spacing-md);
43
- scrollbar-color: color-mix(in oklch, var(--memori-neutral, #6b7280) 55%, transparent) transparent;
44
- scrollbar-width: thin;
45
- }
46
-
47
- .memori-side-drawer__body::-webkit-scrollbar {
48
- width: 8px;
49
- }
50
-
51
- .memori-side-drawer__body::-webkit-scrollbar-track {
52
- background: transparent;
53
- }
54
-
55
- .memori-side-drawer__body::-webkit-scrollbar-thumb {
56
- border-radius: 999px;
57
- background-color: color-mix(in oklch, var(--memori-neutral, #6b7280) 45%, transparent);
58
- }
59
-
60
- .memori-side-drawer__body::-webkit-scrollbar-thumb:hover {
61
- background-color: color-mix(in oklch, var(--memori-neutral, #6b7280) 60%, transparent);
62
- }
63
-
64
- .memori-side-drawer .memori-drawer__footer {
65
- display: block;
66
- justify-content: stretch;
67
- padding: var(--memori-spacing-md) var(--memori-spacing-lg);
68
- }
69
-
70
- .memori-side-drawer .memori-drawer__footer .memori-drawer-footer {
71
- width: 100%;
72
- padding: 0;
73
- border-top: none;
74
- box-shadow: none;
75
- }
76
-
77
- .memori-side-drawer-empty {
78
- display: flex;
79
- flex-direction: column;
80
- align-items: center;
81
- padding: var(--memori-spacing-xl) var(--memori-spacing-md);
82
- color: var(--memori-text-color);
83
- gap: var(--memori-spacing-sm);
84
- text-align: center;
85
- }
86
-
87
- .memori-side-drawer-empty__icon {
88
- display: inline-flex;
89
- width: 3.25rem;
90
- height: 3.25rem;
91
- align-items: center;
92
- justify-content: center;
93
- border-radius: var(--memori-radius-surface);
94
- margin-bottom: var(--memori-spacing-xs);
95
- background: var(--memori-main-background);
96
- color: color-mix(in oklch, var(--memori-text-color) 55%, transparent);
97
- }
98
-
99
- .memori-side-drawer-empty__title {
100
- margin: 0;
101
- font-size: var(--memori-text-size-lg);
102
- font-weight: var(--memori-text-weight-semibold);
103
- line-height: var(--memori-text-line-tight);
104
- }
105
-
106
- .memori-side-drawer-empty__text {
107
- max-width: 22.5rem;
108
- margin: 0;
109
- color: color-mix(in oklch, var(--memori-text-color) 64%, transparent);
110
- font-size: var(--memori-text-size-sm);
111
- line-height: var(--memori-text-line-relaxed);
112
- }
@@ -1,22 +0,0 @@
1
- import React from 'react';
2
- export interface SideDrawerProps {
3
- open?: boolean;
4
- onClose: () => void;
5
- title: React.ReactNode;
6
- description?: React.ReactNode;
7
- footer?: React.ReactNode;
8
- children?: React.ReactNode;
9
- className?: string;
10
- size?: 'sm' | 'md' | 'lg';
11
- loading?: boolean;
12
- closeLabel?: string;
13
- }
14
- declare const SideDrawer: React.FC<SideDrawerProps>;
15
- export interface SideDrawerEmptyProps {
16
- icon?: React.ReactNode;
17
- title: React.ReactNode;
18
- description?: React.ReactNode;
19
- children?: React.ReactNode;
20
- }
21
- export declare const SideDrawerEmpty: React.FC<SideDrawerEmptyProps>;
22
- export default SideDrawer;
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SideDrawerEmpty = void 0;
4
- const tslib_1 = require("tslib");
5
- const jsx_runtime_1 = require("react/jsx-runtime");
6
- const classnames_1 = tslib_1.__importDefault(require("classnames"));
7
- const ui_1 = require("@memori.ai/ui");
8
- const SideDrawer = ({ open = true, onClose, title, description, footer, children, className, size = 'md', loading, closeLabel, }) => {
9
- return ((0, jsx_runtime_1.jsx)(ui_1.Drawer, { open: open, anchor: "right", size: size, loading: loading, closeLabel: closeLabel, className: (0, classnames_1.default)('memori-side-drawer', className), title: title, description: description, footer: footer, onClose: onClose, onOpenChange: nextOpen => {
10
- if (!nextOpen)
11
- onClose();
12
- }, children: (0, jsx_runtime_1.jsx)("div", { className: "memori-side-drawer__body", children: children }) }));
13
- };
14
- const SideDrawerEmpty = ({ icon, title, description, children, }) => ((0, jsx_runtime_1.jsxs)("div", { className: "memori-side-drawer-empty", role: "status", children: [icon != null && ((0, jsx_runtime_1.jsx)("span", { className: "memori-side-drawer-empty__icon", "aria-hidden": true, children: icon })), (0, jsx_runtime_1.jsx)("p", { className: "memori-side-drawer-empty__title", children: title }), description != null && ((0, jsx_runtime_1.jsx)("p", { className: "memori-side-drawer-empty__text", children: description })), children] }));
15
- exports.SideDrawerEmpty = SideDrawerEmpty;
16
- exports.default = SideDrawer;
17
- //# sourceMappingURL=SideDrawer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SideDrawer.js","sourceRoot":"","sources":["../../../src/components/SideDrawer/SideDrawer.tsx"],"names":[],"mappings":";;;;;AACA,oEAA4B;AAC5B,sCAAuC;AAoBvC,MAAM,UAAU,GAA8B,CAAC,EAC7C,IAAI,GAAG,IAAI,EACX,OAAO,EACP,KAAK,EACL,WAAW,EACX,MAAM,EACN,QAAQ,EACR,SAAS,EACT,IAAI,GAAG,IAAI,EACX,OAAO,EACP,UAAU,GACX,EAAE,EAAE;IACH,OAAO,CACL,uBAAC,WAAM,IACL,IAAI,EAAE,IAAI,EACV,MAAM,EAAC,OAAO,EACd,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,IAAA,oBAAE,EAAC,oBAAoB,EAAE,SAAS,CAAC,EAC9C,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,QAAQ,CAAC,EAAE;YACvB,IAAI,CAAC,QAAQ;gBAAE,OAAO,EAAE,CAAC;QAC3B,CAAC,YAED,gCAAK,SAAS,EAAC,0BAA0B,YAAE,QAAQ,GAAO,GACnD,CACV,CAAC;AACJ,CAAC,CAAC;AASK,MAAM,eAAe,GAAmC,CAAC,EAC9D,IAAI,EACJ,KAAK,EACL,WAAW,EACX,QAAQ,GACT,EAAE,EAAE,CAAC,CACJ,iCAAK,SAAS,EAAC,0BAA0B,EAAC,IAAI,EAAC,QAAQ,aACpD,IAAI,IAAI,IAAI,IAAI,CACf,iCAAM,SAAS,EAAC,gCAAgC,iCAC7C,IAAI,GACA,CACR,EACD,8BAAG,SAAS,EAAC,iCAAiC,YAAE,KAAK,GAAK,EACzD,WAAW,IAAI,IAAI,IAAI,CACtB,8BAAG,SAAS,EAAC,gCAAgC,YAAE,WAAW,GAAK,CAChE,EACA,QAAQ,IACL,CACP,CAAC;AAlBW,QAAA,eAAe,mBAkB1B;AAEF,kBAAe,UAAU,CAAC"}
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import { LayoutProps } from '../../MemoriWidget/MemoriWidget';
3
- declare const WebsiteAssistantLayout: React.FC<LayoutProps>;
4
- export default WebsiteAssistantLayout;