@memori.ai/memori-react 8.45.5 → 8.46.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.
- package/CHANGELOG.md +14 -0
- package/dist/components/MemoriWidget/MemoriWidget.js +61 -32
- package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
- package/dist/helpers/speech/speechRequest.d.ts +15 -0
- package/dist/helpers/speech/speechRequest.js +76 -0
- package/dist/helpers/speech/speechRequest.js.map +1 -0
- package/dist/helpers/stt/useSTT.d.ts +4 -0
- package/dist/helpers/stt/useSTT.js +20 -13
- package/dist/helpers/stt/useSTT.js.map +1 -1
- package/dist/helpers/tts/useTTS.d.ts +5 -0
- package/dist/helpers/tts/useTTS.js +12 -4
- package/dist/helpers/tts/useTTS.js.map +1 -1
- package/dist/locales/de.json +4 -0
- package/dist/locales/en.json +4 -0
- package/dist/locales/es.json +4 -0
- package/dist/locales/fr.json +4 -0
- package/dist/locales/it.json +4 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/esm/components/MemoriWidget/MemoriWidget.js +61 -32
- package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
- package/esm/helpers/speech/speechRequest.d.ts +15 -0
- package/esm/helpers/speech/speechRequest.js +68 -0
- package/esm/helpers/speech/speechRequest.js.map +1 -0
- package/esm/helpers/stt/useSTT.d.ts +4 -0
- package/esm/helpers/stt/useSTT.js +20 -13
- package/esm/helpers/stt/useSTT.js.map +1 -1
- package/esm/helpers/tts/useTTS.d.ts +5 -0
- package/esm/helpers/tts/useTTS.js +12 -4
- package/esm/helpers/tts/useTTS.js.map +1 -1
- package/esm/locales/de.json +4 -0
- package/esm/locales/en.json +4 -0
- package/esm/locales/es.json +4 -0
- package/esm/locales/fr.json +4 -0
- package/esm/locales/it.json +4 -0
- package/esm/version.d.ts +1 -1
- package/esm/version.js +1 -1
- package/package.json +1 -1
- package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.css +0 -78
- package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.d.ts +0 -39
- package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.js +0 -43
- package/dist/components/ChatHistoryDrawer/ChatResumeDrawer.js.map +0 -1
- package/dist/components/ContentPreviewModal/DocumentMarkdown.d.ts +0 -7
- package/dist/components/ContentPreviewModal/DocumentMarkdown.js +0 -31
- package/dist/components/ContentPreviewModal/DocumentMarkdown.js.map +0 -1
- package/dist/components/DrawerFooter/DrawerFooter.css +0 -62
- package/dist/components/DrawerFooter/DrawerFooter.d.ts +0 -12
- package/dist/components/DrawerFooter/DrawerFooter.js +0 -10
- package/dist/components/DrawerFooter/DrawerFooter.js.map +0 -1
- package/dist/components/IconButton/IconButton.css +0 -135
- package/dist/components/IconButton/IconButton.d.ts +0 -9
- package/dist/components/IconButton/IconButton.js +0 -36
- package/dist/components/IconButton/IconButton.js.map +0 -1
- package/dist/components/LoginModal/LoginModal.css +0 -270
- package/dist/components/LoginModal/LoginModal.d.ts +0 -19
- package/dist/components/LoginModal/LoginModal.js +0 -355
- package/dist/components/LoginModal/LoginModal.js.map +0 -1
- package/dist/components/MobileSessionPanel/MobileSessionPanel.css +0 -540
- package/dist/components/MobileSessionPanel/MobileSessionPanel.d.ts +0 -65
- package/dist/components/MobileSessionPanel/MobileSessionPanel.js +0 -254
- package/dist/components/MobileSessionPanel/MobileSessionPanel.js.map +0 -1
- package/dist/components/PositionPopover/PositionPopover.css +0 -218
- package/dist/components/PositionPopover/PositionPopover.d.ts +0 -22
- package/dist/components/PositionPopover/PositionPopover.js +0 -208
- package/dist/components/PositionPopover/PositionPopover.js.map +0 -1
- package/dist/components/ReasoningBlock/ReasoningBlock.css +0 -156
- package/dist/components/ReasoningBlock/ReasoningBlock.d.ts +0 -7
- package/dist/components/ReasoningBlock/ReasoningBlock.js +0 -61
- package/dist/components/ReasoningBlock/ReasoningBlock.js.map +0 -1
- package/dist/components/SideDrawer/SideDrawer.css +0 -112
- package/dist/components/SideDrawer/SideDrawer.d.ts +0 -22
- package/dist/components/SideDrawer/SideDrawer.js +0 -17
- package/dist/components/SideDrawer/SideDrawer.js.map +0 -1
- package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.d.ts +0 -4
- package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js +0 -144
- package/dist/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +0 -1
- package/dist/components/layouts/WebsiteAssistant/website-assistant.css +0 -889
- package/dist/components/layouts/fullpage.css +0 -628
- package/dist/helpers/artifactPanel.d.ts +0 -6
- package/dist/helpers/artifactPanel.js +0 -42
- package/dist/helpers/artifactPanel.js.map +0 -1
- package/dist/helpers/chatScroll.d.ts +0 -12
- package/dist/helpers/chatScroll.js +0 -14
- package/dist/helpers/chatScroll.js.map +0 -1
- package/dist/helpers/conversationHistory.d.ts +0 -16
- package/dist/helpers/conversationHistory.js +0 -89
- package/dist/helpers/conversationHistory.js.map +0 -1
- package/dist/helpers/conversationTitle.d.ts +0 -8
- package/dist/helpers/conversationTitle.js +0 -27
- package/dist/helpers/conversationTitle.js.map +0 -1
- package/dist/helpers/enhanceBubbleCodeBlocks.d.ts +0 -5
- package/dist/helpers/enhanceBubbleCodeBlocks.js +0 -97
- package/dist/helpers/enhanceBubbleCodeBlocks.js.map +0 -1
- package/dist/helpers/highlightMatches.d.ts +0 -2
- package/dist/helpers/highlightMatches.js +0 -54
- package/dist/helpers/highlightMatches.js.map +0 -1
- package/dist/helpers/positionPopover.d.ts +0 -3
- package/dist/helpers/positionPopover.js +0 -22
- package/dist/helpers/positionPopover.js.map +0 -1
- package/dist/helpers/prism.d.ts +0 -16
- package/dist/helpers/prism.js +0 -78
- package/dist/helpers/prism.js.map +0 -1
- package/dist/helpers/reasoning.d.ts +0 -7
- package/dist/helpers/reasoning.js +0 -43
- package/dist/helpers/reasoning.js.map +0 -1
- package/dist/helpers/relativeTime.d.ts +0 -3
- package/dist/helpers/relativeTime.js +0 -56
- package/dist/helpers/relativeTime.js.map +0 -1
- package/dist/helpers/sourcesCount.d.ts +0 -2
- package/dist/helpers/sourcesCount.js +0 -22
- package/dist/helpers/sourcesCount.js.map +0 -1
- package/dist/helpers/tts/muteSpeaker.d.ts +0 -13
- package/dist/helpers/tts/muteSpeaker.js +0 -26
- package/dist/helpers/tts/muteSpeaker.js.map +0 -1
- package/dist/helpers/usePressTooltip.d.ts +0 -18
- package/dist/helpers/usePressTooltip.js +0 -38
- package/dist/helpers/usePressTooltip.js.map +0 -1
- package/dist/icons/FacebookIcon.d.ts +0 -3
- package/dist/icons/FacebookIcon.js +0 -6
- package/dist/icons/FacebookIcon.js.map +0 -1
- package/dist/icons/LinkedinIcon.d.ts +0 -3
- package/dist/icons/LinkedinIcon.js +0 -6
- package/dist/icons/LinkedinIcon.js.map +0 -1
- package/dist/icons/MemoriIcon.d.ts +0 -3
- package/dist/icons/MemoriIcon.js +0 -8
- package/dist/icons/MemoriIcon.js.map +0 -1
- package/dist/icons/TelegramIcon.d.ts +0 -3
- package/dist/icons/TelegramIcon.js +0 -6
- package/dist/icons/TelegramIcon.js.map +0 -1
- package/dist/icons/TwitterIcon.d.ts +0 -3
- package/dist/icons/TwitterIcon.js +0 -6
- package/dist/icons/TwitterIcon.js.map +0 -1
- package/dist/icons/WhatsappIcon.d.ts +0 -3
- package/dist/icons/WhatsappIcon.js +0 -6
- package/dist/icons/WhatsappIcon.js.map +0 -1
- package/dist/icons/artifacts/DocumentIcon.d.ts +0 -3
- package/dist/icons/artifacts/DocumentIcon.js +0 -6
- package/dist/icons/artifacts/DocumentIcon.js.map +0 -1
- package/dist/icons/artifacts/HtmlIcon.d.ts +0 -3
- package/dist/icons/artifacts/HtmlIcon.js +0 -6
- package/dist/icons/artifacts/HtmlIcon.js.map +0 -1
- package/dist/icons/artifacts/JavascriptIcon.d.ts +0 -3
- package/dist/icons/artifacts/JavascriptIcon.js +0 -6
- package/dist/icons/artifacts/JavascriptIcon.js.map +0 -1
- package/dist/icons/artifacts/MarkdownIcon.d.ts +0 -3
- package/dist/icons/artifacts/MarkdownIcon.js +0 -6
- package/dist/icons/artifacts/MarkdownIcon.js.map +0 -1
- package/dist/icons/artifacts/PythonIcon.d.ts +0 -3
- package/dist/icons/artifacts/PythonIcon.js +0 -6
- package/dist/icons/artifacts/PythonIcon.js.map +0 -1
- package/dist/icons/artifacts/SvgIcon.d.ts +0 -3
- package/dist/icons/artifacts/SvgIcon.js +0 -6
- package/dist/icons/artifacts/SvgIcon.js.map +0 -1
- package/dist/icons/artifacts/XmlIcon.d.ts +0 -3
- package/dist/icons/artifacts/XmlIcon.js +0 -6
- package/dist/icons/artifacts/XmlIcon.js.map +0 -1
- package/dist/icons/artifacts/cssIcon.d.ts +0 -3
- package/dist/icons/artifacts/cssIcon.js +0 -6
- package/dist/icons/artifacts/cssIcon.js.map +0 -1
- package/dist/styles/motion.css +0 -25
- package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.d.ts +0 -39
- package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.js +0 -40
- package/esm/components/ChatHistoryDrawer/ChatResumeDrawer.js.map +0 -1
- package/esm/components/ContentPreviewModal/DocumentMarkdown.d.ts +0 -7
- package/esm/components/ContentPreviewModal/DocumentMarkdown.js +0 -28
- package/esm/components/ContentPreviewModal/DocumentMarkdown.js.map +0 -1
- package/esm/components/DrawerFooter/DrawerFooter.d.ts +0 -12
- package/esm/components/DrawerFooter/DrawerFooter.js +0 -8
- package/esm/components/DrawerFooter/DrawerFooter.js.map +0 -1
- package/esm/components/IconButton/IconButton.d.ts +0 -9
- package/esm/components/IconButton/IconButton.js +0 -33
- package/esm/components/IconButton/IconButton.js.map +0 -1
- package/esm/components/LoginModal/LoginModal.d.ts +0 -19
- package/esm/components/LoginModal/LoginModal.js +0 -352
- package/esm/components/LoginModal/LoginModal.js.map +0 -1
- package/esm/components/MobileSessionPanel/MobileSessionPanel.d.ts +0 -65
- package/esm/components/MobileSessionPanel/MobileSessionPanel.js +0 -251
- package/esm/components/MobileSessionPanel/MobileSessionPanel.js.map +0 -1
- package/esm/components/PositionPopover/PositionPopover.d.ts +0 -22
- package/esm/components/PositionPopover/PositionPopover.js +0 -203
- package/esm/components/PositionPopover/PositionPopover.js.map +0 -1
- package/esm/components/ReasoningBlock/ReasoningBlock.d.ts +0 -7
- package/esm/components/ReasoningBlock/ReasoningBlock.js +0 -58
- package/esm/components/ReasoningBlock/ReasoningBlock.js.map +0 -1
- package/esm/components/SideDrawer/SideDrawer.d.ts +0 -22
- package/esm/components/SideDrawer/SideDrawer.js +0 -12
- package/esm/components/SideDrawer/SideDrawer.js.map +0 -1
- package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.d.ts +0 -4
- package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js +0 -141
- package/esm/components/layouts/WebsiteAssistant/WebsiteAssistant.js.map +0 -1
- package/esm/helpers/artifactPanel.d.ts +0 -6
- package/esm/helpers/artifactPanel.js +0 -37
- package/esm/helpers/artifactPanel.js.map +0 -1
- package/esm/helpers/chatScroll.d.ts +0 -12
- package/esm/helpers/chatScroll.js +0 -9
- package/esm/helpers/chatScroll.js.map +0 -1
- package/esm/helpers/conversationHistory.d.ts +0 -16
- package/esm/helpers/conversationHistory.js +0 -82
- package/esm/helpers/conversationHistory.js.map +0 -1
- package/esm/helpers/conversationTitle.d.ts +0 -8
- package/esm/helpers/conversationTitle.js +0 -23
- package/esm/helpers/conversationTitle.js.map +0 -1
- package/esm/helpers/enhanceBubbleCodeBlocks.d.ts +0 -5
- package/esm/helpers/enhanceBubbleCodeBlocks.js +0 -94
- package/esm/helpers/enhanceBubbleCodeBlocks.js.map +0 -1
- package/esm/helpers/highlightMatches.d.ts +0 -2
- package/esm/helpers/highlightMatches.js +0 -49
- package/esm/helpers/highlightMatches.js.map +0 -1
- package/esm/helpers/positionPopover.d.ts +0 -3
- package/esm/helpers/positionPopover.js +0 -17
- package/esm/helpers/positionPopover.js.map +0 -1
- package/esm/helpers/prism.d.ts +0 -16
- package/esm/helpers/prism.js +0 -74
- package/esm/helpers/prism.js.map +0 -1
- package/esm/helpers/reasoning.d.ts +0 -7
- package/esm/helpers/reasoning.js +0 -39
- package/esm/helpers/reasoning.js.map +0 -1
- package/esm/helpers/relativeTime.d.ts +0 -3
- package/esm/helpers/relativeTime.js +0 -50
- package/esm/helpers/relativeTime.js.map +0 -1
- package/esm/helpers/sourcesCount.d.ts +0 -2
- package/esm/helpers/sourcesCount.js +0 -18
- package/esm/helpers/sourcesCount.js.map +0 -1
- package/esm/helpers/tts/muteSpeaker.d.ts +0 -13
- package/esm/helpers/tts/muteSpeaker.js +0 -21
- package/esm/helpers/tts/muteSpeaker.js.map +0 -1
- package/esm/helpers/usePressTooltip.d.ts +0 -18
- package/esm/helpers/usePressTooltip.js +0 -35
- package/esm/helpers/usePressTooltip.js.map +0 -1
- package/esm/icons/FacebookIcon.d.ts +0 -3
- package/esm/icons/FacebookIcon.js +0 -4
- package/esm/icons/FacebookIcon.js.map +0 -1
- package/esm/icons/LinkedinIcon.d.ts +0 -3
- package/esm/icons/LinkedinIcon.js +0 -4
- package/esm/icons/LinkedinIcon.js.map +0 -1
- package/esm/icons/MemoriIcon.d.ts +0 -3
- package/esm/icons/MemoriIcon.js +0 -6
- package/esm/icons/MemoriIcon.js.map +0 -1
- package/esm/icons/TelegramIcon.d.ts +0 -3
- package/esm/icons/TelegramIcon.js +0 -4
- package/esm/icons/TelegramIcon.js.map +0 -1
- package/esm/icons/TwitterIcon.d.ts +0 -3
- package/esm/icons/TwitterIcon.js +0 -4
- package/esm/icons/TwitterIcon.js.map +0 -1
- package/esm/icons/WhatsappIcon.d.ts +0 -3
- package/esm/icons/WhatsappIcon.js +0 -4
- package/esm/icons/WhatsappIcon.js.map +0 -1
- package/esm/icons/artifacts/DocumentIcon.d.ts +0 -3
- package/esm/icons/artifacts/DocumentIcon.js +0 -4
- package/esm/icons/artifacts/DocumentIcon.js.map +0 -1
- package/esm/icons/artifacts/HtmlIcon.d.ts +0 -3
- package/esm/icons/artifacts/HtmlIcon.js +0 -4
- package/esm/icons/artifacts/HtmlIcon.js.map +0 -1
- package/esm/icons/artifacts/JavascriptIcon.d.ts +0 -3
- package/esm/icons/artifacts/JavascriptIcon.js +0 -4
- package/esm/icons/artifacts/JavascriptIcon.js.map +0 -1
- package/esm/icons/artifacts/MarkdownIcon.d.ts +0 -3
- package/esm/icons/artifacts/MarkdownIcon.js +0 -4
- package/esm/icons/artifacts/MarkdownIcon.js.map +0 -1
- package/esm/icons/artifacts/PythonIcon.d.ts +0 -3
- package/esm/icons/artifacts/PythonIcon.js +0 -4
- package/esm/icons/artifacts/PythonIcon.js.map +0 -1
- package/esm/icons/artifacts/SvgIcon.d.ts +0 -3
- package/esm/icons/artifacts/SvgIcon.js +0 -4
- package/esm/icons/artifacts/SvgIcon.js.map +0 -1
- package/esm/icons/artifacts/XmlIcon.d.ts +0 -3
- package/esm/icons/artifacts/XmlIcon.js +0 -4
- package/esm/icons/artifacts/XmlIcon.js.map +0 -1
- package/esm/icons/artifacts/cssIcon.d.ts +0 -3
- package/esm/icons/artifacts/cssIcon.js +0 -4
- package/esm/icons/artifacts/cssIcon.js.map +0 -1
|
@@ -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,12 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import cx from 'classnames';
|
|
3
|
-
import { Drawer } from '@memori.ai/ui';
|
|
4
|
-
const SideDrawer = ({ open = true, onClose, title, description, footer, children, className, size = 'md', loading, closeLabel, }) => {
|
|
5
|
-
return (_jsx(Drawer, { open: open, anchor: "right", size: size, loading: loading, closeLabel: closeLabel, className: cx('memori-side-drawer', className), title: title, description: description, footer: footer, onClose: onClose, onOpenChange: nextOpen => {
|
|
6
|
-
if (!nextOpen)
|
|
7
|
-
onClose();
|
|
8
|
-
}, children: _jsx("div", { className: "memori-side-drawer__body", children: children }) }));
|
|
9
|
-
};
|
|
10
|
-
export const SideDrawerEmpty = ({ icon, title, description, children, }) => (_jsxs("div", { className: "memori-side-drawer-empty", role: "status", children: [icon != null && (_jsx("span", { className: "memori-side-drawer-empty__icon", "aria-hidden": true, children: icon })), _jsx("p", { className: "memori-side-drawer-empty__title", children: title }), description != null && (_jsx("p", { className: "memori-side-drawer-empty__text", children: description })), children] }));
|
|
11
|
-
export default SideDrawer;
|
|
12
|
-
//# sourceMappingURL=SideDrawer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SideDrawer.js","sourceRoot":"","sources":["../../../src/components/SideDrawer/SideDrawer.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;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,KAAC,MAAM,IACL,IAAI,EAAE,IAAI,EACV,MAAM,EAAC,OAAO,EACd,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,EAAE,CAAC,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,cAAK,SAAS,EAAC,0BAA0B,YAAE,QAAQ,GAAO,GACnD,CACV,CAAC;AACJ,CAAC,CAAC;AASF,MAAM,CAAC,MAAM,eAAe,GAAmC,CAAC,EAC9D,IAAI,EACJ,KAAK,EACL,WAAW,EACX,QAAQ,GACT,EAAE,EAAE,CAAC,CACJ,eAAK,SAAS,EAAC,0BAA0B,EAAC,IAAI,EAAC,QAAQ,aACpD,IAAI,IAAI,IAAI,IAAI,CACf,eAAM,SAAS,EAAC,gCAAgC,iCAC7C,IAAI,GACA,CACR,EACD,YAAG,SAAS,EAAC,iCAAiC,YAAE,KAAK,GAAK,EACzD,WAAW,IAAI,IAAI,IAAI,CACtB,YAAG,SAAS,EAAC,gCAAgC,YAAE,WAAW,GAAK,CAChE,EACA,QAAQ,IACL,CACP,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
import { createElement as _createElement } from "react";
|
|
2
|
-
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
-
import { useState, useMemo, useEffect, useRef } from 'react';
|
|
4
|
-
import { Spin, Button } from '@memori.ai/ui';
|
|
5
|
-
import Blob from '../../Blob/Blob';
|
|
6
|
-
import { X } from 'lucide-react';
|
|
7
|
-
import { useTranslation } from 'react-i18next';
|
|
8
|
-
import { useArtifact } from '../../MemoriArtifactSystem/context/ArtifactContext';
|
|
9
|
-
import ArtifactDrawer from '../../MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer';
|
|
10
|
-
import { getResourceUrl } from '../../../helpers/media';
|
|
11
|
-
const PANEL_SELECTOR = '.memori-website_assistant--expanded';
|
|
12
|
-
const FULLSCREEN_CLASS = 'memori-website_assistant--fullscreen';
|
|
13
|
-
const WebsiteAssistantLayout = ({ Header, headerProps, Avatar, avatarProps, Chat, chatProps, StartPanel, startPanelProps, integrationStyle, sessionId, hasUserActivatedSpeak, loading = false, avatar3dHidden = true, sideDrawerOpen = false, }) => {
|
|
14
|
-
var _a, _b;
|
|
15
|
-
const { t } = useTranslation();
|
|
16
|
-
const { state: artifactState } = useArtifact();
|
|
17
|
-
const useSideArtifactChrome = artifactState.isDrawerOpen && !artifactState.isChatLogPanelPresentation;
|
|
18
|
-
const useSideDrawerChrome = useSideArtifactChrome || sideDrawerOpen;
|
|
19
|
-
const [collapsed, _setCollapsed] = useState(true);
|
|
20
|
-
const [expandedKey, setExpandedKey] = useState();
|
|
21
|
-
const [fullScreen, setFullScreen] = useState(false);
|
|
22
|
-
const originalPanelStyles = useRef({
|
|
23
|
-
left: '',
|
|
24
|
-
right: '',
|
|
25
|
-
width: '',
|
|
26
|
-
maxWidth: '',
|
|
27
|
-
height: '',
|
|
28
|
-
backgroundColor: '',
|
|
29
|
-
});
|
|
30
|
-
const stopAudio = useMemo(() => chatProps === null || chatProps === void 0 ? void 0 : chatProps.stopAudio, [chatProps === null || chatProps === void 0 ? void 0 : chatProps.stopAudio]);
|
|
31
|
-
const memori = headerProps === null || headerProps === void 0 ? void 0 : headerProps.memori;
|
|
32
|
-
const tenant = headerProps === null || headerProps === void 0 ? void 0 : headerProps.tenant;
|
|
33
|
-
const baseUrl = headerProps === null || headerProps === void 0 ? void 0 : headerProps.baseUrl;
|
|
34
|
-
const isSessionStarted = Boolean(sessionId && hasUserActivatedSpeak);
|
|
35
|
-
const brandAvatarSrc = memori
|
|
36
|
-
? memori.avatarURL && memori.avatarURL.length > 0
|
|
37
|
-
? getResourceUrl({
|
|
38
|
-
type: 'avatar',
|
|
39
|
-
tenantID: tenant === null || tenant === void 0 ? void 0 : tenant.name,
|
|
40
|
-
resourceURI: memori.avatarURL,
|
|
41
|
-
baseURL: baseUrl,
|
|
42
|
-
apiURL: '',
|
|
43
|
-
})
|
|
44
|
-
: getResourceUrl({
|
|
45
|
-
type: 'avatar',
|
|
46
|
-
tenantID: tenant === null || tenant === void 0 ? void 0 : tenant.name,
|
|
47
|
-
baseURL: baseUrl,
|
|
48
|
-
apiURL: '',
|
|
49
|
-
})
|
|
50
|
-
: undefined;
|
|
51
|
-
const restoreFromFullscreen = () => {
|
|
52
|
-
const panelElement = document.querySelector(PANEL_SELECTOR);
|
|
53
|
-
if (panelElement) {
|
|
54
|
-
const panel = panelElement;
|
|
55
|
-
panel.style.left = originalPanelStyles.current.left;
|
|
56
|
-
panel.style.right = originalPanelStyles.current.right;
|
|
57
|
-
panel.style.width = originalPanelStyles.current.width;
|
|
58
|
-
panel.style.maxWidth = originalPanelStyles.current.maxWidth;
|
|
59
|
-
panel.style.height = originalPanelStyles.current.height;
|
|
60
|
-
panel.style.backgroundColor = originalPanelStyles.current.backgroundColor;
|
|
61
|
-
panel.classList.remove(FULLSCREEN_CLASS);
|
|
62
|
-
}
|
|
63
|
-
setFullScreen(false);
|
|
64
|
-
};
|
|
65
|
-
useEffect(() => {
|
|
66
|
-
const handleFullscreenChange = () => {
|
|
67
|
-
if (!document.fullscreenElement && fullScreen) {
|
|
68
|
-
restoreFromFullscreen();
|
|
69
|
-
}
|
|
70
|
-
};
|
|
71
|
-
document.addEventListener('fullscreenchange', handleFullscreenChange);
|
|
72
|
-
return () => {
|
|
73
|
-
document.removeEventListener('fullscreenchange', handleFullscreenChange);
|
|
74
|
-
};
|
|
75
|
-
}, [fullScreen]);
|
|
76
|
-
const handleFullscreenToggle = () => {
|
|
77
|
-
if (!document.fullscreenElement) {
|
|
78
|
-
const panelElement = document.querySelector(PANEL_SELECTOR);
|
|
79
|
-
if (panelElement) {
|
|
80
|
-
const panel = panelElement;
|
|
81
|
-
originalPanelStyles.current = {
|
|
82
|
-
left: panel.style.left,
|
|
83
|
-
right: panel.style.right,
|
|
84
|
-
width: panel.style.width,
|
|
85
|
-
maxWidth: panel.style.maxWidth,
|
|
86
|
-
height: panel.style.height,
|
|
87
|
-
backgroundColor: panel.style.backgroundColor,
|
|
88
|
-
};
|
|
89
|
-
panel.style.left = '0';
|
|
90
|
-
panel.style.right = '0';
|
|
91
|
-
panel.style.width = '100%';
|
|
92
|
-
panel.style.maxWidth = 'none';
|
|
93
|
-
panel.style.height = '100%';
|
|
94
|
-
panel.style.backgroundColor = '';
|
|
95
|
-
panel.classList.add(FULLSCREEN_CLASS);
|
|
96
|
-
panel.requestFullscreen().catch(err => {
|
|
97
|
-
console.warn('[WebsiteAssistantLayout] Error enabling fullscreen:', err);
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
setFullScreen(true);
|
|
101
|
-
}
|
|
102
|
-
else {
|
|
103
|
-
if (document.exitFullscreen) {
|
|
104
|
-
document.exitFullscreen().catch(err => {
|
|
105
|
-
console.warn('[WebsiteAssistantLayout] Error exiting fullscreen:', err);
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
restoreFromFullscreen();
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
const setCollapsed = (nextCollapsed) => {
|
|
112
|
-
if (nextCollapsed && fullScreen) {
|
|
113
|
-
if (document.fullscreenElement) {
|
|
114
|
-
document.exitFullscreen().catch(err => {
|
|
115
|
-
console.warn('[WebsiteAssistantLayout] Error exiting fullscreen:', err);
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
restoreFromFullscreen();
|
|
119
|
-
}
|
|
120
|
-
_setCollapsed(nextCollapsed);
|
|
121
|
-
setExpandedKey(nextCollapsed ? undefined : new Date().toISOString());
|
|
122
|
-
try {
|
|
123
|
-
stopAudio === null || stopAudio === void 0 ? void 0 : stopAudio();
|
|
124
|
-
}
|
|
125
|
-
catch (e) {
|
|
126
|
-
console.log(e);
|
|
127
|
-
}
|
|
128
|
-
};
|
|
129
|
-
return (_jsxs(_Fragment, { children: [collapsed && (_jsx("div", { className: "memori-website_assistant--trigger", children: _jsx(Button, { className: "memori-website_assistant--trigger-button", variant: "ghost", shape: "circle", onClick: () => setCollapsed(false), "aria-label": t('expand') || 'Expand', "aria-expanded": false, title: t('expand') || 'Expand', children: _jsx(Blob, { avatar: avatarProps === null || avatarProps === void 0 ? void 0 : avatarProps.memori.avatarURL }) }) })), _jsx("div", { className: `memori-website_assistant--${collapsed ? 'collapsed' : 'expanded'}${useSideDrawerChrome
|
|
130
|
-
? ' memori-website_assistant--drawer-open memori-website_assistant--artifact-open'
|
|
131
|
-
: ''}${fullScreen ? ` ${FULLSCREEN_CLASS}` : ''}`, children: !collapsed && (_jsxs(_Fragment, { children: [integrationStyle, _jsxs(Spin, { spinning: loading, className: "memori-website_assistant-layout", children: [_jsxs("div", { className: "memori-website_assistant-layout--header-row", children: [memori && brandAvatarSrc && (_jsxs("div", { className: "memori-chat-layout--brand", children: [_jsx("img", { className: "memori-chat-layout--brand-avatar", src: brandAvatarSrc, alt: "", role: "presentation" }), _jsx("div", { className: "memori-chat-layout--brand-text", children: isSessionStarted && (_jsx("span", { className: "memori-chat-layout--brand-name", title: memori.name, children: memori.name })) })] })), _jsxs("div", { className: "memori-website_assistant-layout--header-actions", children: [Header && headerProps && (_jsx(Header, { buttonVariant: "outline", ...headerProps, showSettings: false, showReload: false, showChatHistory: false, fullScreenHandler: handleFullscreenToggle })), _jsx("button", { type: "button", className: "memori-website_assistant--close-button", onClick: () => setCollapsed(true), "aria-label": t('collapse') || 'Close', title: t('collapse') || 'Close', children: _jsx(X, { className: "memori-icon-close", "aria-hidden": true }) })] })] }), !(avatar3dHidden === true || avatar3dHidden === 'true') && (_jsx("div", { className: "memori-website_assistant-layout--avatar", children: Avatar && avatarProps && (_createElement(Avatar, { ...avatarProps, integrationConfig: avatarProps.integrationConfig
|
|
132
|
-
? {
|
|
133
|
-
...avatarProps.integrationConfig,
|
|
134
|
-
avatarURL: ((_a = avatarProps.integrationConfig) === null || _a === void 0 ? void 0 : _a.avatarURL)
|
|
135
|
-
? `${(_b = avatarProps.integrationConfig) === null || _b === void 0 ? void 0 : _b.avatarURL.split('#')[0]}#${expandedKey}`
|
|
136
|
-
: undefined,
|
|
137
|
-
}
|
|
138
|
-
: {}, key: expandedKey })) })), _jsx("div", { id: "extension" }), _jsx("div", { className: "memori-website_assistant-layout--controls", children: sessionId && hasUserActivatedSpeak && Chat && chatProps ? (_jsx(Chat, { ...chatProps })) : startPanelProps ? (_jsx(StartPanel, { ...startPanelProps, showFullDescriptionOnMobile: true, showChatHistory: false })) : null })] })] })) }), useSideArtifactChrome && _jsx(ArtifactDrawer, {})] }));
|
|
139
|
-
};
|
|
140
|
-
export default WebsiteAssistantLayout;
|
|
141
|
-
//# sourceMappingURL=WebsiteAssistant.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"WebsiteAssistant.js","sourceRoot":"","sources":["../../../../src/components/layouts/WebsiteAssistant/WebsiteAssistant.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export declare const ARTIFACT_COLUMN_DEFAULT_WIDTH = 720;
|
|
2
|
-
export declare const ARTIFACT_CHAT_MIN_WIDTH = 400;
|
|
3
|
-
export declare const ARTIFACT_COLUMN_MIN_WIDTH = 360;
|
|
4
|
-
export declare const ARTIFACT_OVERLAY_BREAKPOINT = 1200;
|
|
5
|
-
export declare function formatArtifactType(mimeType: string): string;
|
|
6
|
-
export declare function clampArtifactColumnWidth(requestedWidth: number, containerWidth: number, overlay: boolean): number;
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
export const ARTIFACT_COLUMN_DEFAULT_WIDTH = 720;
|
|
2
|
-
export const ARTIFACT_CHAT_MIN_WIDTH = 400;
|
|
3
|
-
export const ARTIFACT_COLUMN_MIN_WIDTH = 360;
|
|
4
|
-
export const ARTIFACT_OVERLAY_BREAKPOINT = 1200;
|
|
5
|
-
const MIME_LABELS = {
|
|
6
|
-
html: 'HTML',
|
|
7
|
-
markdown: 'Markdown',
|
|
8
|
-
json: 'JSON',
|
|
9
|
-
css: 'CSS',
|
|
10
|
-
javascript: 'JavaScript',
|
|
11
|
-
typescript: 'TypeScript',
|
|
12
|
-
svg: 'SVG',
|
|
13
|
-
xml: 'XML',
|
|
14
|
-
text: 'Text',
|
|
15
|
-
python: 'Python',
|
|
16
|
-
java: 'Java',
|
|
17
|
-
cpp: 'C++',
|
|
18
|
-
csharp: 'C#',
|
|
19
|
-
php: 'PHP',
|
|
20
|
-
ruby: 'Ruby',
|
|
21
|
-
go: 'Go',
|
|
22
|
-
rust: 'Rust',
|
|
23
|
-
yaml: 'YAML',
|
|
24
|
-
sql: 'SQL',
|
|
25
|
-
};
|
|
26
|
-
export function formatArtifactType(mimeType) {
|
|
27
|
-
return MIME_LABELS[mimeType.toLowerCase()] || mimeType;
|
|
28
|
-
}
|
|
29
|
-
export function clampArtifactColumnWidth(requestedWidth, containerWidth, overlay) {
|
|
30
|
-
const reserved = overlay ? 0 : ARTIFACT_CHAT_MIN_WIDTH;
|
|
31
|
-
const upperBound = Math.max(0, containerWidth - reserved);
|
|
32
|
-
if (upperBound <= ARTIFACT_COLUMN_MIN_WIDTH) {
|
|
33
|
-
return upperBound;
|
|
34
|
-
}
|
|
35
|
-
return Math.min(Math.max(requestedWidth, ARTIFACT_COLUMN_MIN_WIDTH), upperBound);
|
|
36
|
-
}
|
|
37
|
-
//# sourceMappingURL=artifactPanel.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"artifactPanel.js","sourceRoot":"","sources":["../../src/helpers/artifactPanel.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,CAAC;AACjD,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAC7C,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAEhD,MAAM,WAAW,GAA2B;IAC1C,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,IAAI;IACZ,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,EAAE,EAAE,IAAI;IACR,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;CACX,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IACjD,OAAO,WAAW,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,QAAQ,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,cAAsB,EACtB,cAAsB,EACtB,OAAgB;IAEhB,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC;IACvD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,GAAG,QAAQ,CAAC,CAAC;IAE1D,IAAI,UAAU,IAAI,yBAAyB,EAAE,CAAC;QAC5C,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CACb,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,yBAAyB,CAAC,EACnD,UAAU,CACX,CAAC;AACJ,CAAC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export declare const CHAT_SCROLL_BOTTOM_THRESHOLD_PX = 80;
|
|
2
|
-
type ScrollMetrics = {
|
|
3
|
-
scrollTop: number;
|
|
4
|
-
scrollHeight: number;
|
|
5
|
-
clientHeight: number;
|
|
6
|
-
};
|
|
7
|
-
export declare function isChatScrolledToBottom(element: ScrollMetrics, thresholdPx?: number): boolean;
|
|
8
|
-
export declare function scrollChatToBottom(element: {
|
|
9
|
-
scrollTop: number;
|
|
10
|
-
scrollHeight: number;
|
|
11
|
-
}): void;
|
|
12
|
-
export {};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export const CHAT_SCROLL_BOTTOM_THRESHOLD_PX = 80;
|
|
2
|
-
export function isChatScrolledToBottom(element, thresholdPx = CHAT_SCROLL_BOTTOM_THRESHOLD_PX) {
|
|
3
|
-
return (element.scrollHeight - element.scrollTop - element.clientHeight <=
|
|
4
|
-
thresholdPx);
|
|
5
|
-
}
|
|
6
|
-
export function scrollChatToBottom(element) {
|
|
7
|
-
element.scrollTop = element.scrollHeight;
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=chatScroll.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chatScroll.js","sourceRoot":"","sources":["../../src/helpers/chatScroll.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,+BAA+B,GAAG,EAAE,CAAC;AAQlD,MAAM,UAAU,sBAAsB,CACpC,OAAsB,EACtB,WAAW,GAAG,+BAA+B;IAE7C,OAAO,CACL,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,YAAY;QAC/D,WAAW,CACZ,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAGlC;IACC,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC;AAC3C,CAAC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export type ConversationGroupKey = {
|
|
2
|
-
type: 'thisWeek';
|
|
3
|
-
} | {
|
|
4
|
-
type: 'month';
|
|
5
|
-
year: number;
|
|
6
|
-
month: number;
|
|
7
|
-
};
|
|
8
|
-
export declare const getLastMessageDate: (lines: Array<{
|
|
9
|
-
timestamp?: string;
|
|
10
|
-
}>) => Date | null;
|
|
11
|
-
export declare const formatConversationListDate: (value: string | Date, locale: string, now?: Date) => string;
|
|
12
|
-
export declare const getConversationGroupKey: (date: Date, now?: Date) => ConversationGroupKey;
|
|
13
|
-
export declare const groupConversations: <T>(items: T[], getDate: (item: T) => Date | null, now?: Date) => Array<{
|
|
14
|
-
key: ConversationGroupKey;
|
|
15
|
-
items: T[];
|
|
16
|
-
}>;
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import { parseTimestamp } from './relativeTime';
|
|
2
|
-
const DAY = 24 * 60 * 60 * 1000;
|
|
3
|
-
const startOfDay = (date) => {
|
|
4
|
-
const next = new Date(date);
|
|
5
|
-
next.setHours(0, 0, 0, 0);
|
|
6
|
-
return next;
|
|
7
|
-
};
|
|
8
|
-
const startOfWeek = (date) => {
|
|
9
|
-
const next = startOfDay(date);
|
|
10
|
-
const weekday = next.getDay();
|
|
11
|
-
const mondayOffset = (weekday + 6) % 7;
|
|
12
|
-
next.setDate(next.getDate() - mondayOffset);
|
|
13
|
-
return next;
|
|
14
|
-
};
|
|
15
|
-
const capitalize = (value) => value ? `${value.charAt(0).toUpperCase()}${value.slice(1)}` : value;
|
|
16
|
-
export const getLastMessageDate = (lines) => {
|
|
17
|
-
let latest = null;
|
|
18
|
-
for (const line of lines) {
|
|
19
|
-
const date = parseTimestamp(line.timestamp);
|
|
20
|
-
if (!date)
|
|
21
|
-
continue;
|
|
22
|
-
if (!latest || date.getTime() > latest.getTime())
|
|
23
|
-
latest = date;
|
|
24
|
-
}
|
|
25
|
-
return latest;
|
|
26
|
-
};
|
|
27
|
-
export const formatConversationListDate = (value, locale, now = new Date()) => {
|
|
28
|
-
const date = parseTimestamp(value);
|
|
29
|
-
if (!date)
|
|
30
|
-
return '';
|
|
31
|
-
const time = new Intl.DateTimeFormat(locale, {
|
|
32
|
-
hour: '2-digit',
|
|
33
|
-
minute: '2-digit',
|
|
34
|
-
}).format(date);
|
|
35
|
-
const dayDiff = Math.round((startOfDay(date).getTime() - startOfDay(now).getTime()) / DAY);
|
|
36
|
-
if (dayDiff === 0 || dayDiff === -1) {
|
|
37
|
-
const dayLabel = new Intl.RelativeTimeFormat(locale, {
|
|
38
|
-
numeric: 'auto',
|
|
39
|
-
}).format(dayDiff, 'day');
|
|
40
|
-
return `${capitalize(dayLabel)}, ${time}`;
|
|
41
|
-
}
|
|
42
|
-
const datePart = new Intl.DateTimeFormat(locale, {
|
|
43
|
-
day: 'numeric',
|
|
44
|
-
month: 'short',
|
|
45
|
-
...(date.getFullYear() === now.getFullYear() ? {} : { year: 'numeric' }),
|
|
46
|
-
}).format(date);
|
|
47
|
-
return `${datePart}, ${time}`;
|
|
48
|
-
};
|
|
49
|
-
export const getConversationGroupKey = (date, now = new Date()) => {
|
|
50
|
-
if (date.getTime() >= startOfWeek(now).getTime()) {
|
|
51
|
-
return { type: 'thisWeek' };
|
|
52
|
-
}
|
|
53
|
-
return {
|
|
54
|
-
type: 'month',
|
|
55
|
-
year: date.getFullYear(),
|
|
56
|
-
month: date.getMonth(),
|
|
57
|
-
};
|
|
58
|
-
};
|
|
59
|
-
export const groupConversations = (items, getDate, now = new Date()) => {
|
|
60
|
-
const groups = [];
|
|
61
|
-
for (const item of items) {
|
|
62
|
-
const date = getDate(item);
|
|
63
|
-
if (!date)
|
|
64
|
-
continue;
|
|
65
|
-
const key = getConversationGroupKey(date, now);
|
|
66
|
-
const last = groups[groups.length - 1];
|
|
67
|
-
const sameGroup = last &&
|
|
68
|
-
((key.type === 'thisWeek' && last.key.type === 'thisWeek') ||
|
|
69
|
-
(key.type === 'month' &&
|
|
70
|
-
last.key.type === 'month' &&
|
|
71
|
-
key.year === last.key.year &&
|
|
72
|
-
key.month === last.key.month));
|
|
73
|
-
if (sameGroup) {
|
|
74
|
-
last.items.push(item);
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
groups.push({ key, items: [item] });
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
return groups;
|
|
81
|
-
};
|
|
82
|
-
//# sourceMappingURL=conversationHistory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"conversationHistory.js","sourceRoot":"","sources":["../../src/helpers/conversationHistory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { stripHTML } from './utils';
|
|
2
|
-
import { stripAllInternalTags } from './message';
|
|
3
|
-
const TITLE_MAX_LENGTH = 140;
|
|
4
|
-
const toSingleLine = (value) => value.replace(/\s+/g, ' ').trim();
|
|
5
|
-
const truncateTitle = (value, maxLength = TITLE_MAX_LENGTH) => {
|
|
6
|
-
if (value.length <= maxLength)
|
|
7
|
-
return value;
|
|
8
|
-
const sliced = value.slice(0, maxLength).trimEnd();
|
|
9
|
-
const lastSpace = sliced.lastIndexOf(' ');
|
|
10
|
-
const cut = lastSpace > maxLength * 0.7 ? sliced.slice(0, lastSpace) : sliced;
|
|
11
|
-
return `${cut}...`;
|
|
12
|
-
};
|
|
13
|
-
const cleanText = (value) => toSingleLine(stripHTML(stripAllInternalTags(value)));
|
|
14
|
-
export const getConversationTitle = ({ title, lines, }) => {
|
|
15
|
-
const backendTitle = title ? cleanText(title) : '';
|
|
16
|
-
if (backendTitle)
|
|
17
|
-
return backendTitle;
|
|
18
|
-
const firstUserMessage = lines.find(line => line.inbound && cleanText(line.text || ''));
|
|
19
|
-
if (!(firstUserMessage === null || firstUserMessage === void 0 ? void 0 : firstUserMessage.text))
|
|
20
|
-
return '';
|
|
21
|
-
return truncateTitle(cleanText(firstUserMessage.text));
|
|
22
|
-
};
|
|
23
|
-
//# sourceMappingURL=conversationTitle.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"conversationTitle.js","sourceRoot":"","sources":["../../src/helpers/conversationTitle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEjD,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAO7B,MAAM,YAAY,GAAG,CAAC,KAAa,EAAU,EAAE,CAC7C,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAEpC,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,SAAS,GAAG,gBAAgB,EAAU,EAAE;IAC5E,IAAI,KAAK,CAAC,MAAM,IAAI,SAAS;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;IACnD,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAG,SAAS,GAAG,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC9E,OAAO,GAAG,GAAG,KAAK,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,KAAa,EAAU,EAAE,CAC1C,YAAY,CAAC,SAAS,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAOvD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EACnC,KAAK,EACL,KAAK,GAIN,EAAU,EAAE;IACX,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnD,IAAI,YAAY;QAAE,OAAO,YAAY,CAAC;IAEtC,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CACjC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CACnD,CAAC;IACF,IAAI,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,CAAA;QAAE,OAAO,EAAE,CAAC;IAEvC,OAAO,aAAa,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC"}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { highlightUnder, loadPrism } from './prism';
|
|
2
|
-
const COPY_ICON = `<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg>`;
|
|
3
|
-
const CHECK_ICON = `<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 6 9 17l-5-5"/></svg>`;
|
|
4
|
-
function languageFromCode(code) {
|
|
5
|
-
if (!code)
|
|
6
|
-
return '';
|
|
7
|
-
const match = Array.from(code.classList)
|
|
8
|
-
.map(c => { var _a; return (_a = c.match(/^language-([\w+-]+)/)) === null || _a === void 0 ? void 0 : _a[1]; })
|
|
9
|
-
.find(Boolean);
|
|
10
|
-
return match && match !== 'plaintext' && match !== 'text' ? match : '';
|
|
11
|
-
}
|
|
12
|
-
export function enhanceBubbleCodeBlocks(root, labels) {
|
|
13
|
-
const cleanups = [];
|
|
14
|
-
const timers = [];
|
|
15
|
-
root.querySelectorAll('pre').forEach(pre => {
|
|
16
|
-
if (pre.closest('.memori-chat--code-block'))
|
|
17
|
-
return;
|
|
18
|
-
const code = pre.querySelector('code');
|
|
19
|
-
const lang = languageFromCode(code);
|
|
20
|
-
const wrapper = document.createElement('div');
|
|
21
|
-
wrapper.className = 'memori-chat--code-block';
|
|
22
|
-
const toolbar = document.createElement('div');
|
|
23
|
-
toolbar.className = 'memori-chat--code-block-toolbar';
|
|
24
|
-
if (lang) {
|
|
25
|
-
const langEl = document.createElement('span');
|
|
26
|
-
langEl.className = 'memori-chat--code-block-lang';
|
|
27
|
-
langEl.textContent = lang;
|
|
28
|
-
toolbar.appendChild(langEl);
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
const spacer = document.createElement('span');
|
|
32
|
-
spacer.className = 'memori-chat--code-block-lang memori-chat--code-block-lang--empty';
|
|
33
|
-
toolbar.appendChild(spacer);
|
|
34
|
-
}
|
|
35
|
-
const copyBtn = document.createElement('button');
|
|
36
|
-
copyBtn.type = 'button';
|
|
37
|
-
copyBtn.className = 'memori-chat--code-block-copy';
|
|
38
|
-
copyBtn.setAttribute('aria-label', labels.copy);
|
|
39
|
-
copyBtn.title = labels.copy;
|
|
40
|
-
copyBtn.innerHTML = COPY_ICON;
|
|
41
|
-
let resetTimer;
|
|
42
|
-
const onCopy = async (event) => {
|
|
43
|
-
var _a, _b, _c;
|
|
44
|
-
event.preventDefault();
|
|
45
|
-
event.stopPropagation();
|
|
46
|
-
const text = (_b = (_a = code === null || code === void 0 ? void 0 : code.textContent) !== null && _a !== void 0 ? _a : pre.textContent) !== null && _b !== void 0 ? _b : '';
|
|
47
|
-
try {
|
|
48
|
-
if ((_c = navigator.clipboard) === null || _c === void 0 ? void 0 : _c.writeText) {
|
|
49
|
-
await navigator.clipboard.writeText(text);
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
return;
|
|
53
|
-
}
|
|
54
|
-
copyBtn.classList.add('memori-chat--code-block-copy--copied');
|
|
55
|
-
copyBtn.setAttribute('aria-label', labels.copied);
|
|
56
|
-
copyBtn.title = labels.copied;
|
|
57
|
-
copyBtn.innerHTML = CHECK_ICON;
|
|
58
|
-
if (resetTimer)
|
|
59
|
-
window.clearTimeout(resetTimer);
|
|
60
|
-
resetTimer = window.setTimeout(() => {
|
|
61
|
-
copyBtn.classList.remove('memori-chat--code-block-copy--copied');
|
|
62
|
-
copyBtn.setAttribute('aria-label', labels.copy);
|
|
63
|
-
copyBtn.title = labels.copy;
|
|
64
|
-
copyBtn.innerHTML = COPY_ICON;
|
|
65
|
-
}, 2000);
|
|
66
|
-
timers.push(resetTimer);
|
|
67
|
-
}
|
|
68
|
-
catch (err) {
|
|
69
|
-
console.error('Failed to copy code block:', err);
|
|
70
|
-
}
|
|
71
|
-
};
|
|
72
|
-
copyBtn.addEventListener('click', onCopy);
|
|
73
|
-
cleanups.push(() => {
|
|
74
|
-
copyBtn.removeEventListener('click', onCopy);
|
|
75
|
-
if (resetTimer)
|
|
76
|
-
window.clearTimeout(resetTimer);
|
|
77
|
-
});
|
|
78
|
-
toolbar.appendChild(copyBtn);
|
|
79
|
-
const parent = pre.parentNode;
|
|
80
|
-
if (!parent)
|
|
81
|
-
return;
|
|
82
|
-
parent.insertBefore(wrapper, pre);
|
|
83
|
-
wrapper.appendChild(toolbar);
|
|
84
|
-
wrapper.appendChild(pre);
|
|
85
|
-
});
|
|
86
|
-
void loadPrism().then(() => {
|
|
87
|
-
highlightUnder(root);
|
|
88
|
-
});
|
|
89
|
-
return () => {
|
|
90
|
-
cleanups.forEach(fn => fn());
|
|
91
|
-
timers.forEach(id => window.clearTimeout(id));
|
|
92
|
-
};
|
|
93
|
-
}
|
|
94
|
-
//# sourceMappingURL=enhanceBubbleCodeBlocks.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enhanceBubbleCodeBlocks.js","sourceRoot":"","sources":["../../src/helpers/enhanceBubbleCodeBlocks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import React from 'react';
|
|
3
|
-
const escapeRegExp = (value) => value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
4
|
-
const STOPWORDS = new Set([
|
|
5
|
-
'the',
|
|
6
|
-
'and',
|
|
7
|
-
'for',
|
|
8
|
-
'are',
|
|
9
|
-
'but',
|
|
10
|
-
'not',
|
|
11
|
-
'you',
|
|
12
|
-
'that',
|
|
13
|
-
'this',
|
|
14
|
-
'with',
|
|
15
|
-
'from',
|
|
16
|
-
'was',
|
|
17
|
-
'have',
|
|
18
|
-
'has',
|
|
19
|
-
'had',
|
|
20
|
-
'per',
|
|
21
|
-
'del',
|
|
22
|
-
'della',
|
|
23
|
-
'delle',
|
|
24
|
-
'che',
|
|
25
|
-
'non',
|
|
26
|
-
'una',
|
|
27
|
-
'uno',
|
|
28
|
-
'con',
|
|
29
|
-
'come',
|
|
30
|
-
'quali',
|
|
31
|
-
'quale',
|
|
32
|
-
'questa',
|
|
33
|
-
'questo',
|
|
34
|
-
]);
|
|
35
|
-
const tokenize = (query) => query
|
|
36
|
-
.split(/\s+/)
|
|
37
|
-
.map(token => token.replace(/[^\p{L}\p{N}]+/gu, ''))
|
|
38
|
-
.filter(token => token.length >= 3 && !STOPWORDS.has(token.toLowerCase()));
|
|
39
|
-
export const highlightMatches = (text, query) => {
|
|
40
|
-
const terms = Array.from(new Set(tokenize(query)));
|
|
41
|
-
if (!text || terms.length === 0)
|
|
42
|
-
return text;
|
|
43
|
-
const pattern = new RegExp(`(${terms.map(escapeRegExp).join('|')})`, 'gi');
|
|
44
|
-
const parts = text.split(pattern);
|
|
45
|
-
if (parts.length === 1)
|
|
46
|
-
return text;
|
|
47
|
-
return parts.map((part, index) => terms.some(term => part.toLowerCase() === term.toLowerCase()) ? (_jsx("mark", { className: "memori-whythisanswer-mark", children: part }, `${part}-${index}`)) : (_jsx(React.Fragment, { children: part }, `${part}-${index}`)));
|
|
48
|
-
};
|
|
49
|
-
//# sourceMappingURL=highlightMatches.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"highlightMatches.js","sourceRoot":"","sources":["../../src/helpers/highlightMatches.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,EAAE,CACrC,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AAE/C,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;IACxB,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,OAAO;IACP,OAAO;IACP,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,OAAO;IACP,OAAO;IACP,QAAQ;IACR,QAAQ;CACT,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAY,EAAE,CAC3C,KAAK;KACF,KAAK,CAAC,KAAK,CAAC;KACZ,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;KACnD,MAAM,CACL,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAClE,CAAC;AAEN,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,IAAY,EACZ,KAAa,EACI,EAAE;IACnB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnD,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE7C,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAC/B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAC9D,eAA+B,SAAS,EAAC,2BAA2B,YACjE,IAAI,IADI,GAAG,IAAI,IAAI,KAAK,EAAE,CAEtB,CACR,CAAC,CAAC,CAAC,CACF,KAAC,KAAK,CAAC,QAAQ,cAA2B,IAAI,IAAzB,GAAG,IAAI,IAAI,KAAK,EAAE,CAAyB,CACjE,CACF,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export declare function shouldHoldAutoStartForPosition(needsPosition: boolean, hasPosition: boolean): boolean;
|
|
2
|
-
export declare function isHeaderPositionPopoverAvailable(isMobile: boolean, layoutStripsNeedsPositionOnMobile: boolean): boolean;
|
|
3
|
-
export declare function shouldRestartSessionOnPositionPopoverClose(wasOpen: boolean, nextOpen: boolean, autoStart: boolean, sessionAlreadyStarted?: boolean, hasPosition?: boolean): boolean;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
export function shouldHoldAutoStartForPosition(needsPosition, hasPosition) {
|
|
2
|
-
return !!needsPosition && !hasPosition;
|
|
3
|
-
}
|
|
4
|
-
export function isHeaderPositionPopoverAvailable(isMobile, layoutStripsNeedsPositionOnMobile) {
|
|
5
|
-
if (isMobile && layoutStripsNeedsPositionOnMobile) {
|
|
6
|
-
return false;
|
|
7
|
-
}
|
|
8
|
-
return true;
|
|
9
|
-
}
|
|
10
|
-
export function shouldRestartSessionOnPositionPopoverClose(wasOpen, nextOpen, autoStart, sessionAlreadyStarted = false, hasPosition = true) {
|
|
11
|
-
return (wasOpen &&
|
|
12
|
-
!nextOpen &&
|
|
13
|
-
!!autoStart &&
|
|
14
|
-
!sessionAlreadyStarted &&
|
|
15
|
-
hasPosition);
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=positionPopover.js.map
|