@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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chatScroll.js","sourceRoot":"","sources":["../../src/helpers/chatScroll.ts"],"names":[],"mappings":";;;AAQA,wDAQC;AAED,gDAKC;AAvBY,QAAA,+BAA+B,GAAG,EAAE,CAAC;AAQlD,SAAgB,sBAAsB,CACpC,OAAsB,EACtB,WAAW,GAAG,uCAA+B;IAE7C,OAAO,CACL,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,YAAY;QAC/D,WAAW,CACZ,CAAC;AACJ,CAAC;AAED,SAAgB,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,89 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.groupConversations = exports.getConversationGroupKey = exports.formatConversationListDate = exports.getLastMessageDate = void 0;
|
|
4
|
-
const relativeTime_1 = require("./relativeTime");
|
|
5
|
-
const DAY = 24 * 60 * 60 * 1000;
|
|
6
|
-
const startOfDay = (date) => {
|
|
7
|
-
const next = new Date(date);
|
|
8
|
-
next.setHours(0, 0, 0, 0);
|
|
9
|
-
return next;
|
|
10
|
-
};
|
|
11
|
-
const startOfWeek = (date) => {
|
|
12
|
-
const next = startOfDay(date);
|
|
13
|
-
const weekday = next.getDay();
|
|
14
|
-
const mondayOffset = (weekday + 6) % 7;
|
|
15
|
-
next.setDate(next.getDate() - mondayOffset);
|
|
16
|
-
return next;
|
|
17
|
-
};
|
|
18
|
-
const capitalize = (value) => value ? `${value.charAt(0).toUpperCase()}${value.slice(1)}` : value;
|
|
19
|
-
const getLastMessageDate = (lines) => {
|
|
20
|
-
let latest = null;
|
|
21
|
-
for (const line of lines) {
|
|
22
|
-
const date = (0, relativeTime_1.parseTimestamp)(line.timestamp);
|
|
23
|
-
if (!date)
|
|
24
|
-
continue;
|
|
25
|
-
if (!latest || date.getTime() > latest.getTime())
|
|
26
|
-
latest = date;
|
|
27
|
-
}
|
|
28
|
-
return latest;
|
|
29
|
-
};
|
|
30
|
-
exports.getLastMessageDate = getLastMessageDate;
|
|
31
|
-
const formatConversationListDate = (value, locale, now = new Date()) => {
|
|
32
|
-
const date = (0, relativeTime_1.parseTimestamp)(value);
|
|
33
|
-
if (!date)
|
|
34
|
-
return '';
|
|
35
|
-
const time = new Intl.DateTimeFormat(locale, {
|
|
36
|
-
hour: '2-digit',
|
|
37
|
-
minute: '2-digit',
|
|
38
|
-
}).format(date);
|
|
39
|
-
const dayDiff = Math.round((startOfDay(date).getTime() - startOfDay(now).getTime()) / DAY);
|
|
40
|
-
if (dayDiff === 0 || dayDiff === -1) {
|
|
41
|
-
const dayLabel = new Intl.RelativeTimeFormat(locale, {
|
|
42
|
-
numeric: 'auto',
|
|
43
|
-
}).format(dayDiff, 'day');
|
|
44
|
-
return `${capitalize(dayLabel)}, ${time}`;
|
|
45
|
-
}
|
|
46
|
-
const datePart = new Intl.DateTimeFormat(locale, {
|
|
47
|
-
day: 'numeric',
|
|
48
|
-
month: 'short',
|
|
49
|
-
...(date.getFullYear() === now.getFullYear() ? {} : { year: 'numeric' }),
|
|
50
|
-
}).format(date);
|
|
51
|
-
return `${datePart}, ${time}`;
|
|
52
|
-
};
|
|
53
|
-
exports.formatConversationListDate = formatConversationListDate;
|
|
54
|
-
const getConversationGroupKey = (date, now = new Date()) => {
|
|
55
|
-
if (date.getTime() >= startOfWeek(now).getTime()) {
|
|
56
|
-
return { type: 'thisWeek' };
|
|
57
|
-
}
|
|
58
|
-
return {
|
|
59
|
-
type: 'month',
|
|
60
|
-
year: date.getFullYear(),
|
|
61
|
-
month: date.getMonth(),
|
|
62
|
-
};
|
|
63
|
-
};
|
|
64
|
-
exports.getConversationGroupKey = getConversationGroupKey;
|
|
65
|
-
const groupConversations = (items, getDate, now = new Date()) => {
|
|
66
|
-
const groups = [];
|
|
67
|
-
for (const item of items) {
|
|
68
|
-
const date = getDate(item);
|
|
69
|
-
if (!date)
|
|
70
|
-
continue;
|
|
71
|
-
const key = (0, exports.getConversationGroupKey)(date, now);
|
|
72
|
-
const last = groups[groups.length - 1];
|
|
73
|
-
const sameGroup = last &&
|
|
74
|
-
((key.type === 'thisWeek' && last.key.type === 'thisWeek') ||
|
|
75
|
-
(key.type === 'month' &&
|
|
76
|
-
last.key.type === 'month' &&
|
|
77
|
-
key.year === last.key.year &&
|
|
78
|
-
key.month === last.key.month));
|
|
79
|
-
if (sameGroup) {
|
|
80
|
-
last.items.push(item);
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
groups.push({ key, items: [item] });
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
return groups;
|
|
87
|
-
};
|
|
88
|
-
exports.groupConversations = groupConversations;
|
|
89
|
-
//# 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,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getConversationTitle = void 0;
|
|
4
|
-
const utils_1 = require("./utils");
|
|
5
|
-
const message_1 = require("./message");
|
|
6
|
-
const TITLE_MAX_LENGTH = 140;
|
|
7
|
-
const toSingleLine = (value) => value.replace(/\s+/g, ' ').trim();
|
|
8
|
-
const truncateTitle = (value, maxLength = TITLE_MAX_LENGTH) => {
|
|
9
|
-
if (value.length <= maxLength)
|
|
10
|
-
return value;
|
|
11
|
-
const sliced = value.slice(0, maxLength).trimEnd();
|
|
12
|
-
const lastSpace = sliced.lastIndexOf(' ');
|
|
13
|
-
const cut = lastSpace > maxLength * 0.7 ? sliced.slice(0, lastSpace) : sliced;
|
|
14
|
-
return `${cut}...`;
|
|
15
|
-
};
|
|
16
|
-
const cleanText = (value) => toSingleLine((0, utils_1.stripHTML)((0, message_1.stripAllInternalTags)(value)));
|
|
17
|
-
const getConversationTitle = ({ title, lines, }) => {
|
|
18
|
-
const backendTitle = title ? cleanText(title) : '';
|
|
19
|
-
if (backendTitle)
|
|
20
|
-
return backendTitle;
|
|
21
|
-
const firstUserMessage = lines.find(line => line.inbound && cleanText(line.text || ''));
|
|
22
|
-
if (!(firstUserMessage === null || firstUserMessage === void 0 ? void 0 : firstUserMessage.text))
|
|
23
|
-
return '';
|
|
24
|
-
return truncateTitle(cleanText(firstUserMessage.text));
|
|
25
|
-
};
|
|
26
|
-
exports.getConversationTitle = getConversationTitle;
|
|
27
|
-
//# sourceMappingURL=conversationTitle.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"conversationTitle.js","sourceRoot":"","sources":["../../src/helpers/conversationTitle.ts"],"names":[],"mappings":";;;AAAA,mCAAoC;AACpC,uCAAiD;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,IAAA,iBAAS,EAAC,IAAA,8BAAoB,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAOhD,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;AAhBW,QAAA,oBAAoB,wBAgB/B"}
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.enhanceBubbleCodeBlocks = enhanceBubbleCodeBlocks;
|
|
4
|
-
const prism_1 = require("./prism");
|
|
5
|
-
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>`;
|
|
6
|
-
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>`;
|
|
7
|
-
function languageFromCode(code) {
|
|
8
|
-
if (!code)
|
|
9
|
-
return '';
|
|
10
|
-
const match = Array.from(code.classList)
|
|
11
|
-
.map(c => { var _a; return (_a = c.match(/^language-([\w+-]+)/)) === null || _a === void 0 ? void 0 : _a[1]; })
|
|
12
|
-
.find(Boolean);
|
|
13
|
-
return match && match !== 'plaintext' && match !== 'text' ? match : '';
|
|
14
|
-
}
|
|
15
|
-
function enhanceBubbleCodeBlocks(root, labels) {
|
|
16
|
-
const cleanups = [];
|
|
17
|
-
const timers = [];
|
|
18
|
-
root.querySelectorAll('pre').forEach(pre => {
|
|
19
|
-
if (pre.closest('.memori-chat--code-block'))
|
|
20
|
-
return;
|
|
21
|
-
const code = pre.querySelector('code');
|
|
22
|
-
const lang = languageFromCode(code);
|
|
23
|
-
const wrapper = document.createElement('div');
|
|
24
|
-
wrapper.className = 'memori-chat--code-block';
|
|
25
|
-
const toolbar = document.createElement('div');
|
|
26
|
-
toolbar.className = 'memori-chat--code-block-toolbar';
|
|
27
|
-
if (lang) {
|
|
28
|
-
const langEl = document.createElement('span');
|
|
29
|
-
langEl.className = 'memori-chat--code-block-lang';
|
|
30
|
-
langEl.textContent = lang;
|
|
31
|
-
toolbar.appendChild(langEl);
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
const spacer = document.createElement('span');
|
|
35
|
-
spacer.className = 'memori-chat--code-block-lang memori-chat--code-block-lang--empty';
|
|
36
|
-
toolbar.appendChild(spacer);
|
|
37
|
-
}
|
|
38
|
-
const copyBtn = document.createElement('button');
|
|
39
|
-
copyBtn.type = 'button';
|
|
40
|
-
copyBtn.className = 'memori-chat--code-block-copy';
|
|
41
|
-
copyBtn.setAttribute('aria-label', labels.copy);
|
|
42
|
-
copyBtn.title = labels.copy;
|
|
43
|
-
copyBtn.innerHTML = COPY_ICON;
|
|
44
|
-
let resetTimer;
|
|
45
|
-
const onCopy = async (event) => {
|
|
46
|
-
var _a, _b, _c;
|
|
47
|
-
event.preventDefault();
|
|
48
|
-
event.stopPropagation();
|
|
49
|
-
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 : '';
|
|
50
|
-
try {
|
|
51
|
-
if ((_c = navigator.clipboard) === null || _c === void 0 ? void 0 : _c.writeText) {
|
|
52
|
-
await navigator.clipboard.writeText(text);
|
|
53
|
-
}
|
|
54
|
-
else {
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
copyBtn.classList.add('memori-chat--code-block-copy--copied');
|
|
58
|
-
copyBtn.setAttribute('aria-label', labels.copied);
|
|
59
|
-
copyBtn.title = labels.copied;
|
|
60
|
-
copyBtn.innerHTML = CHECK_ICON;
|
|
61
|
-
if (resetTimer)
|
|
62
|
-
window.clearTimeout(resetTimer);
|
|
63
|
-
resetTimer = window.setTimeout(() => {
|
|
64
|
-
copyBtn.classList.remove('memori-chat--code-block-copy--copied');
|
|
65
|
-
copyBtn.setAttribute('aria-label', labels.copy);
|
|
66
|
-
copyBtn.title = labels.copy;
|
|
67
|
-
copyBtn.innerHTML = COPY_ICON;
|
|
68
|
-
}, 2000);
|
|
69
|
-
timers.push(resetTimer);
|
|
70
|
-
}
|
|
71
|
-
catch (err) {
|
|
72
|
-
console.error('Failed to copy code block:', err);
|
|
73
|
-
}
|
|
74
|
-
};
|
|
75
|
-
copyBtn.addEventListener('click', onCopy);
|
|
76
|
-
cleanups.push(() => {
|
|
77
|
-
copyBtn.removeEventListener('click', onCopy);
|
|
78
|
-
if (resetTimer)
|
|
79
|
-
window.clearTimeout(resetTimer);
|
|
80
|
-
});
|
|
81
|
-
toolbar.appendChild(copyBtn);
|
|
82
|
-
const parent = pre.parentNode;
|
|
83
|
-
if (!parent)
|
|
84
|
-
return;
|
|
85
|
-
parent.insertBefore(wrapper, pre);
|
|
86
|
-
wrapper.appendChild(toolbar);
|
|
87
|
-
wrapper.appendChild(pre);
|
|
88
|
-
});
|
|
89
|
-
void (0, prism_1.loadPrism)().then(() => {
|
|
90
|
-
(0, prism_1.highlightUnder)(root);
|
|
91
|
-
});
|
|
92
|
-
return () => {
|
|
93
|
-
cleanups.forEach(fn => fn());
|
|
94
|
-
timers.forEach(id => window.clearTimeout(id));
|
|
95
|
-
};
|
|
96
|
-
}
|
|
97
|
-
//# 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,54 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.highlightMatches = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
-
const react_1 = tslib_1.__importDefault(require("react"));
|
|
7
|
-
const escapeRegExp = (value) => value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
8
|
-
const STOPWORDS = new Set([
|
|
9
|
-
'the',
|
|
10
|
-
'and',
|
|
11
|
-
'for',
|
|
12
|
-
'are',
|
|
13
|
-
'but',
|
|
14
|
-
'not',
|
|
15
|
-
'you',
|
|
16
|
-
'that',
|
|
17
|
-
'this',
|
|
18
|
-
'with',
|
|
19
|
-
'from',
|
|
20
|
-
'was',
|
|
21
|
-
'have',
|
|
22
|
-
'has',
|
|
23
|
-
'had',
|
|
24
|
-
'per',
|
|
25
|
-
'del',
|
|
26
|
-
'della',
|
|
27
|
-
'delle',
|
|
28
|
-
'che',
|
|
29
|
-
'non',
|
|
30
|
-
'una',
|
|
31
|
-
'uno',
|
|
32
|
-
'con',
|
|
33
|
-
'come',
|
|
34
|
-
'quali',
|
|
35
|
-
'quale',
|
|
36
|
-
'questa',
|
|
37
|
-
'questo',
|
|
38
|
-
]);
|
|
39
|
-
const tokenize = (query) => query
|
|
40
|
-
.split(/\s+/)
|
|
41
|
-
.map(token => token.replace(/[^\p{L}\p{N}]+/gu, ''))
|
|
42
|
-
.filter(token => token.length >= 3 && !STOPWORDS.has(token.toLowerCase()));
|
|
43
|
-
const highlightMatches = (text, query) => {
|
|
44
|
-
const terms = Array.from(new Set(tokenize(query)));
|
|
45
|
-
if (!text || terms.length === 0)
|
|
46
|
-
return text;
|
|
47
|
-
const pattern = new RegExp(`(${terms.map(escapeRegExp).join('|')})`, 'gi');
|
|
48
|
-
const parts = text.split(pattern);
|
|
49
|
-
if (parts.length === 1)
|
|
50
|
-
return text;
|
|
51
|
-
return parts.map((part, index) => terms.some(term => part.toLowerCase() === term.toLowerCase()) ? ((0, jsx_runtime_1.jsx)("mark", { className: "memori-whythisanswer-mark", children: part }, `${part}-${index}`)) : ((0, jsx_runtime_1.jsx)(react_1.default.Fragment, { children: part }, `${part}-${index}`)));
|
|
52
|
-
};
|
|
53
|
-
exports.highlightMatches = highlightMatches;
|
|
54
|
-
//# sourceMappingURL=highlightMatches.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"highlightMatches.js","sourceRoot":"","sources":["../../src/helpers/highlightMatches.tsx"],"names":[],"mappings":";;;;;AAAA,0DAA0B;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;AAEC,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,iCAA+B,SAAS,EAAC,2BAA2B,YACjE,IAAI,IADI,GAAG,IAAI,IAAI,KAAK,EAAE,CAEtB,CACR,CAAC,CAAC,CAAC,CACF,uBAAC,eAAK,CAAC,QAAQ,cAA2B,IAAI,IAAzB,GAAG,IAAI,IAAI,KAAK,EAAE,CAAyB,CACjE,CACF,CAAC;AACJ,CAAC,CAAC;AApBW,QAAA,gBAAgB,oBAoB3B"}
|
|
@@ -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,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.shouldHoldAutoStartForPosition = shouldHoldAutoStartForPosition;
|
|
4
|
-
exports.isHeaderPositionPopoverAvailable = isHeaderPositionPopoverAvailable;
|
|
5
|
-
exports.shouldRestartSessionOnPositionPopoverClose = shouldRestartSessionOnPositionPopoverClose;
|
|
6
|
-
function shouldHoldAutoStartForPosition(needsPosition, hasPosition) {
|
|
7
|
-
return !!needsPosition && !hasPosition;
|
|
8
|
-
}
|
|
9
|
-
function isHeaderPositionPopoverAvailable(isMobile, layoutStripsNeedsPositionOnMobile) {
|
|
10
|
-
if (isMobile && layoutStripsNeedsPositionOnMobile) {
|
|
11
|
-
return false;
|
|
12
|
-
}
|
|
13
|
-
return true;
|
|
14
|
-
}
|
|
15
|
-
function shouldRestartSessionOnPositionPopoverClose(wasOpen, nextOpen, autoStart, sessionAlreadyStarted = false, hasPosition = true) {
|
|
16
|
-
return (wasOpen &&
|
|
17
|
-
!nextOpen &&
|
|
18
|
-
!!autoStart &&
|
|
19
|
-
!sessionAlreadyStarted &&
|
|
20
|
-
hasPosition);
|
|
21
|
-
}
|
|
22
|
-
//# sourceMappingURL=positionPopover.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"positionPopover.js","sourceRoot":"","sources":["../../src/helpers/positionPopover.ts"],"names":[],"mappings":";;AAKA,wEAKC;AAQD,4EAQC;AAQD,gGAcC;AA3CD,SAAgB,8BAA8B,CAC5C,aAAsB,EACtB,WAAoB;IAEpB,OAAO,CAAC,CAAC,aAAa,IAAI,CAAC,WAAW,CAAC;AACzC,CAAC;AAQD,SAAgB,gCAAgC,CAC9C,QAAiB,EACjB,iCAA0C;IAE1C,IAAI,QAAQ,IAAI,iCAAiC,EAAE,CAAC;QAClD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAQD,SAAgB,0CAA0C,CACxD,OAAgB,EAChB,QAAiB,EACjB,SAAkB,EAClB,qBAAqB,GAAG,KAAK,EAC7B,WAAW,GAAG,IAAI;IAElB,OAAO,CACL,OAAO;QACP,CAAC,QAAQ;QACT,CAAC,CAAC,SAAS;QACX,CAAC,qBAAqB;QACtB,WAAW,CACZ,CAAC;AACJ,CAAC"}
|
package/dist/helpers/prism.d.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
declare global {
|
|
2
|
-
interface Window {
|
|
3
|
-
Prism?: {
|
|
4
|
-
highlightAll?: () => void;
|
|
5
|
-
highlightAllUnder?: (element: HTMLElement) => void;
|
|
6
|
-
highlightElement?: (element: Element) => void;
|
|
7
|
-
plugins?: {
|
|
8
|
-
autoloader?: {
|
|
9
|
-
languages_path?: string;
|
|
10
|
-
};
|
|
11
|
-
};
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
export declare function loadPrism(): Promise<void>;
|
|
16
|
-
export declare function highlightUnder(root: HTMLElement): void;
|
package/dist/helpers/prism.js
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.loadPrism = loadPrism;
|
|
4
|
-
exports.highlightUnder = highlightUnder;
|
|
5
|
-
const PRISM_SCRIPT_ID = 'memori-prism-script';
|
|
6
|
-
const PRISM_AUTOLOADER_ID = 'memori-prism-autoloader-script';
|
|
7
|
-
const PRISM_CSS_ID = 'memori-prism-css';
|
|
8
|
-
let prismLoadPromise = null;
|
|
9
|
-
function loadPrism() {
|
|
10
|
-
var _a;
|
|
11
|
-
if (typeof document === 'undefined') {
|
|
12
|
-
return Promise.resolve();
|
|
13
|
-
}
|
|
14
|
-
if ((_a = window.Prism) === null || _a === void 0 ? void 0 : _a.highlightAll) {
|
|
15
|
-
return Promise.resolve();
|
|
16
|
-
}
|
|
17
|
-
if (prismLoadPromise) {
|
|
18
|
-
return prismLoadPromise;
|
|
19
|
-
}
|
|
20
|
-
prismLoadPromise = new Promise(resolve => {
|
|
21
|
-
var _a;
|
|
22
|
-
const existingScript = document.getElementById(PRISM_SCRIPT_ID);
|
|
23
|
-
if (existingScript) {
|
|
24
|
-
const finish = () => resolve();
|
|
25
|
-
if ((_a = window.Prism) === null || _a === void 0 ? void 0 : _a.highlightAll) {
|
|
26
|
-
finish();
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
existingScript.addEventListener('load', finish);
|
|
30
|
-
setTimeout(finish, 2000);
|
|
31
|
-
return;
|
|
32
|
-
}
|
|
33
|
-
if (!document.getElementById(PRISM_CSS_ID)) {
|
|
34
|
-
const prismCss = document.createElement('link');
|
|
35
|
-
prismCss.id = PRISM_CSS_ID;
|
|
36
|
-
prismCss.rel = 'stylesheet';
|
|
37
|
-
prismCss.href =
|
|
38
|
-
'https://cdn.jsdelivr.net/npm/prismjs@1.29.0/themes/prism-tomorrow.min.css';
|
|
39
|
-
document.head.appendChild(prismCss);
|
|
40
|
-
}
|
|
41
|
-
const script = document.createElement('script');
|
|
42
|
-
script.src = 'https://cdn.jsdelivr.net/npm/prismjs@1.29.0/prism.min.js';
|
|
43
|
-
script.async = true;
|
|
44
|
-
script.id = PRISM_SCRIPT_ID;
|
|
45
|
-
script.onload = () => {
|
|
46
|
-
const autoloaderScript = document.createElement('script');
|
|
47
|
-
autoloaderScript.src =
|
|
48
|
-
'https://cdn.jsdelivr.net/npm/prismjs@1.29.0/plugins/autoloader/prism-autoloader.min.js';
|
|
49
|
-
autoloaderScript.async = true;
|
|
50
|
-
autoloaderScript.id = PRISM_AUTOLOADER_ID;
|
|
51
|
-
autoloaderScript.onload = () => {
|
|
52
|
-
var _a, _b;
|
|
53
|
-
if ((_b = (_a = window.Prism) === null || _a === void 0 ? void 0 : _a.plugins) === null || _b === void 0 ? void 0 : _b.autoloader) {
|
|
54
|
-
window.Prism.plugins.autoloader.languages_path =
|
|
55
|
-
'https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/';
|
|
56
|
-
}
|
|
57
|
-
resolve();
|
|
58
|
-
};
|
|
59
|
-
autoloaderScript.onerror = () => resolve();
|
|
60
|
-
document.head.appendChild(autoloaderScript);
|
|
61
|
-
};
|
|
62
|
-
script.onerror = () => resolve();
|
|
63
|
-
document.head.appendChild(script);
|
|
64
|
-
});
|
|
65
|
-
return prismLoadPromise;
|
|
66
|
-
}
|
|
67
|
-
function highlightUnder(root) {
|
|
68
|
-
if (!window.Prism)
|
|
69
|
-
return;
|
|
70
|
-
if (window.Prism.highlightAllUnder) {
|
|
71
|
-
window.Prism.highlightAllUnder(root);
|
|
72
|
-
return;
|
|
73
|
-
}
|
|
74
|
-
if (window.Prism.highlightAll) {
|
|
75
|
-
window.Prism.highlightAll();
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
//# sourceMappingURL=prism.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prism.js","sourceRoot":"","sources":["../../src/helpers/prism.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.extractReasoning = void 0;
|
|
4
|
-
const THINK_BLOCK_RE = /<think\b[^>]*>([\s\S]*?)(<\/think>|$)/gi;
|
|
5
|
-
const extractReasoning = (text) => {
|
|
6
|
-
var _a;
|
|
7
|
-
if (!text || !/<think\b/i.test(text)) {
|
|
8
|
-
return {
|
|
9
|
-
content: '',
|
|
10
|
-
complete: true,
|
|
11
|
-
remaining: text !== null && text !== void 0 ? text : '',
|
|
12
|
-
hasReasoning: false,
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
const pieces = [];
|
|
16
|
-
let complete = true;
|
|
17
|
-
let remaining = '';
|
|
18
|
-
let lastIndex = 0;
|
|
19
|
-
const re = new RegExp(THINK_BLOCK_RE.source, 'gi');
|
|
20
|
-
let match;
|
|
21
|
-
while ((match = re.exec(text)) !== null) {
|
|
22
|
-
remaining += text.slice(lastIndex, match.index);
|
|
23
|
-
pieces.push((_a = match[1]) !== null && _a !== void 0 ? _a : '');
|
|
24
|
-
if (match[2] !== '</think>') {
|
|
25
|
-
complete = false;
|
|
26
|
-
lastIndex = text.length;
|
|
27
|
-
break;
|
|
28
|
-
}
|
|
29
|
-
lastIndex = match.index + match[0].length;
|
|
30
|
-
}
|
|
31
|
-
remaining += text.slice(lastIndex);
|
|
32
|
-
return {
|
|
33
|
-
content: pieces
|
|
34
|
-
.map(piece => piece.trim())
|
|
35
|
-
.filter(Boolean)
|
|
36
|
-
.join('\n\n'),
|
|
37
|
-
complete,
|
|
38
|
-
remaining,
|
|
39
|
-
hasReasoning: true,
|
|
40
|
-
};
|
|
41
|
-
};
|
|
42
|
-
exports.extractReasoning = extractReasoning;
|
|
43
|
-
//# sourceMappingURL=reasoning.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reasoning.js","sourceRoot":"","sources":["../../src/helpers/reasoning.ts"],"names":[],"mappings":";;;AAOA,MAAM,cAAc,GAAG,yCAAyC,CAAC;AAE1D,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAoB,EAAE;;IACjE,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,OAAO;YACL,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE;YACrB,YAAY,EAAE,KAAK;SACpB,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACnD,IAAI,KAA6B,CAAC;IAElC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACxC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC,MAAA,KAAK,CAAC,CAAC,CAAC,mCAAI,EAAE,CAAC,CAAC;QAC5B,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC;YACjB,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;YACxB,MAAM;QACR,CAAC;QACD,SAAS,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC5C,CAAC;IAED,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAEnC,OAAO;QACL,OAAO,EAAE,MAAM;aACZ,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;aAC1B,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,MAAM,CAAC;QACf,QAAQ;QACR,SAAS;QACT,YAAY,EAAE,IAAI;KACnB,CAAC;AACJ,CAAC,CAAC;AAxCW,QAAA,gBAAgB,oBAwC3B"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export declare const parseTimestamp: (value?: string | Date | null) => Date | null;
|
|
2
|
-
export declare const formatExactDateTime: (value: string | Date, locale: string) => string;
|
|
3
|
-
export declare const formatRelativeTime: (value: string | Date, locale: string, now?: Date) => string;
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.formatRelativeTime = exports.formatExactDateTime = exports.parseTimestamp = void 0;
|
|
4
|
-
const SECOND = 1000;
|
|
5
|
-
const MINUTE = 60 * SECOND;
|
|
6
|
-
const HOUR = 60 * MINUTE;
|
|
7
|
-
const DAY = 24 * HOUR;
|
|
8
|
-
const WEEK = 7 * DAY;
|
|
9
|
-
const MONTH = 30 * DAY;
|
|
10
|
-
const YEAR = 365 * DAY;
|
|
11
|
-
const parseTimestamp = (value) => {
|
|
12
|
-
if (!value)
|
|
13
|
-
return null;
|
|
14
|
-
const date = value instanceof Date ? value : new Date(value);
|
|
15
|
-
return Number.isNaN(date.getTime()) ? null : date;
|
|
16
|
-
};
|
|
17
|
-
exports.parseTimestamp = parseTimestamp;
|
|
18
|
-
const formatExactDateTime = (value, locale) => {
|
|
19
|
-
const date = (0, exports.parseTimestamp)(value);
|
|
20
|
-
if (!date)
|
|
21
|
-
return '';
|
|
22
|
-
return new Intl.DateTimeFormat(locale, {
|
|
23
|
-
dateStyle: 'short',
|
|
24
|
-
timeStyle: 'short',
|
|
25
|
-
}).format(date);
|
|
26
|
-
};
|
|
27
|
-
exports.formatExactDateTime = formatExactDateTime;
|
|
28
|
-
const formatRelativeTime = (value, locale, now = new Date()) => {
|
|
29
|
-
const date = (0, exports.parseTimestamp)(value);
|
|
30
|
-
if (!date)
|
|
31
|
-
return '';
|
|
32
|
-
const diff = date.getTime() - now.getTime();
|
|
33
|
-
const abs = Math.abs(diff);
|
|
34
|
-
const rtf = new Intl.RelativeTimeFormat(locale, { numeric: 'auto' });
|
|
35
|
-
if (abs < MINUTE) {
|
|
36
|
-
return rtf.format(Math.round(diff / SECOND), 'second');
|
|
37
|
-
}
|
|
38
|
-
if (abs < HOUR) {
|
|
39
|
-
return rtf.format(Math.round(diff / MINUTE), 'minute');
|
|
40
|
-
}
|
|
41
|
-
if (abs < DAY) {
|
|
42
|
-
return rtf.format(Math.round(diff / HOUR), 'hour');
|
|
43
|
-
}
|
|
44
|
-
if (abs < WEEK) {
|
|
45
|
-
return rtf.format(Math.round(diff / DAY), 'day');
|
|
46
|
-
}
|
|
47
|
-
if (abs < MONTH) {
|
|
48
|
-
return rtf.format(Math.round(diff / WEEK), 'week');
|
|
49
|
-
}
|
|
50
|
-
if (abs < YEAR) {
|
|
51
|
-
return rtf.format(Math.round(diff / MONTH), 'month');
|
|
52
|
-
}
|
|
53
|
-
return rtf.format(Math.round(diff / YEAR), 'year');
|
|
54
|
-
};
|
|
55
|
-
exports.formatRelativeTime = formatRelativeTime;
|
|
56
|
-
//# sourceMappingURL=relativeTime.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"relativeTime.js","sourceRoot":"","sources":["../../src/helpers/relativeTime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getExposedSourcesCount = void 0;
|
|
4
|
-
const isNonNegativeNumber = (value) => typeof value === 'number' && Number.isFinite(value) && value >= 0;
|
|
5
|
-
const getExposedSourcesCount = (message) => {
|
|
6
|
-
if (!message)
|
|
7
|
-
return undefined;
|
|
8
|
-
const extra = message;
|
|
9
|
-
if (isNonNegativeNumber(extra.sourcesCount))
|
|
10
|
-
return extra.sourcesCount;
|
|
11
|
-
if (isNonNegativeNumber(extra.sourceCount))
|
|
12
|
-
return extra.sourceCount;
|
|
13
|
-
if (isNonNegativeNumber(extra.matchesCount))
|
|
14
|
-
return extra.matchesCount;
|
|
15
|
-
if (Array.isArray(extra.matches))
|
|
16
|
-
return extra.matches.length;
|
|
17
|
-
if (Array.isArray(extra.sources))
|
|
18
|
-
return extra.sources.length;
|
|
19
|
-
return undefined;
|
|
20
|
-
};
|
|
21
|
-
exports.getExposedSourcesCount = getExposedSourcesCount;
|
|
22
|
-
//# sourceMappingURL=sourcesCount.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sourcesCount.js","sourceRoot":"","sources":["../../src/helpers/sourcesCount.ts"],"names":[],"mappings":";;;AAUA,MAAM,mBAAmB,GAAG,CAAC,KAAc,EAAmB,EAAE,CAC9D,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAM7D,MAAM,sBAAsB,GAAG,CACpC,OAAwB,EACJ,EAAE;IACtB,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAE/B,MAAM,KAAK,GAAG,OAAqC,CAAC;IAEpD,IAAI,mBAAmB,CAAC,KAAK,CAAC,YAAY,CAAC;QAAE,OAAO,KAAK,CAAC,YAAY,CAAC;IACvE,IAAI,mBAAmB,CAAC,KAAK,CAAC,WAAW,CAAC;QAAE,OAAO,KAAK,CAAC,WAAW,CAAC;IACrE,IAAI,mBAAmB,CAAC,KAAK,CAAC,YAAY,CAAC;QAAE,OAAO,KAAK,CAAC,YAAY,CAAC;IACvE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;IAC9D,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;IAE9D,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAdW,QAAA,sBAAsB,0BAcjC"}
|