@memori.ai/memori-react 7.1.3 → 7.3.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 +29 -0
- package/README.md +2 -0
- package/dist/components/Chat/Chat.d.ts +2 -0
- package/dist/components/Chat/Chat.js +3 -3
- package/dist/components/Chat/Chat.js.map +1 -1
- package/dist/components/ChatBubble/ChatBubble.css +15 -10
- package/dist/components/ChatBubble/ChatBubble.d.ts +2 -0
- package/dist/components/ChatBubble/ChatBubble.js +23 -8
- package/dist/components/ChatBubble/ChatBubble.js.map +1 -1
- package/dist/components/MemoriWidget/MemoriWidget.d.ts +3 -1
- package/dist/components/MemoriWidget/MemoriWidget.js +76 -42
- package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
- package/dist/components/icons/Code.d.ts +5 -0
- package/dist/components/icons/Code.js +6 -0
- package/dist/components/icons/Code.js.map +1 -0
- package/dist/components/icons/Copy.js +1 -1
- package/dist/components/icons/Copy.js.map +1 -1
- package/dist/helpers/translations.js +5 -1
- package/dist/helpers/translations.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/locales/en.json +1 -0
- package/dist/locales/it.json +1 -0
- package/esm/components/Chat/Chat.d.ts +2 -0
- package/esm/components/Chat/Chat.js +3 -3
- package/esm/components/Chat/Chat.js.map +1 -1
- package/esm/components/ChatBubble/ChatBubble.css +15 -10
- package/esm/components/ChatBubble/ChatBubble.d.ts +2 -0
- package/esm/components/ChatBubble/ChatBubble.js +23 -8
- package/esm/components/ChatBubble/ChatBubble.js.map +1 -1
- package/esm/components/MemoriWidget/MemoriWidget.d.ts +3 -1
- package/esm/components/MemoriWidget/MemoriWidget.js +76 -42
- package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
- package/esm/components/icons/Code.d.ts +5 -0
- package/esm/components/icons/Code.js +4 -0
- package/esm/components/icons/Code.js.map +1 -0
- package/esm/components/icons/Copy.js +2 -2
- package/esm/components/icons/Copy.js.map +1 -1
- package/esm/helpers/translations.js +5 -1
- package/esm/helpers/translations.js.map +1 -1
- package/esm/index.d.ts +2 -0
- package/esm/index.js +4 -2
- package/esm/index.js.map +1 -1
- package/esm/locales/en.json +1 -0
- package/esm/locales/it.json +1 -0
- package/package.json +2 -2
- package/src/components/Chat/Chat.tsx +6 -0
- package/src/components/Chat/__snapshots__/Chat.test.tsx.snap +1672 -44
- package/src/components/ChatBubble/ChatBubble.css +15 -10
- package/src/components/ChatBubble/ChatBubble.stories.tsx +25 -0
- package/src/components/ChatBubble/ChatBubble.test.tsx +35 -0
- package/src/components/ChatBubble/ChatBubble.tsx +66 -4
- package/src/components/ChatBubble/__snapshots__/ChatBubble.test.tsx.snap +896 -11
- package/src/components/MediaWidget/__snapshots__/MediaItemWidget.test.tsx.snap +30 -4
- package/src/components/MemoriWidget/MemoriWidget.tsx +86 -49
- package/src/components/Snippet/__snapshots__/Snippet.test.tsx.snap +120 -16
- package/src/components/icons/Code.tsx +24 -0
- package/src/components/icons/Copy.tsx +8 -2
- package/src/helpers/translations.ts +10 -2
- package/src/index.stories.tsx +3 -17
- package/src/index.tsx +8 -0
- package/src/locales/en.json +1 -0
- package/src/locales/it.json +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,34 @@
|
|
|
1
1
|
|
|
2
2
|
|
|
3
|
+
## [7.3.0](https://github.com/memori-ai/memori-react/compare/v7.2.0...v7.3.0) (2024-08-02)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* add showTranslationOriginal, keep emission as from engine and use translatedEmission in msg and state ([38a4302](https://github.com/memori-ai/memori-react/commit/38a4302392a2e960776769b68af074d7b696266d))
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* prevent <output> tags from translations, use correct default endpoint to skip redirections ([8107c00](https://github.com/memori-ai/memori-react/commit/8107c00f23a85d7ae95505e69690c080ec70f169))
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
### Changes
|
|
17
|
+
|
|
18
|
+
* make message and state handling resilient on translations failures ([919e126](https://github.com/memori-ai/memori-react/commit/919e1268d22a16fc1270c54db4a38db5e87cffbb))
|
|
19
|
+
|
|
20
|
+
## [7.2.0](https://github.com/memori-ai/memori-react/compare/v7.1.3...v7.2.0) (2024-07-31)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
### Features
|
|
24
|
+
|
|
25
|
+
* add copy buttons ([e80d12c](https://github.com/memori-ai/memori-react/commit/e80d12c2a373f786a3e65932b06dc34b9474ee38))
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
### Changes
|
|
29
|
+
|
|
30
|
+
* change copy icon ([6d6fd26](https://github.com/memori-ai/memori-react/commit/6d6fd263a6150a4a6d0a5767aa31b140b0493a71))
|
|
31
|
+
|
|
3
32
|
## [7.1.3](https://github.com/memori-ai/memori-react/compare/v7.1.2...v7.1.3) (2024-07-30)
|
|
4
33
|
|
|
5
34
|
|
package/README.md
CHANGED
|
@@ -66,6 +66,8 @@ const App = () => (
|
|
|
66
66
|
| `secretToken` | | `string` | | Secret token, the password of a private or secret Memori |
|
|
67
67
|
| `height` | | `string` | "100%" | Height of the Memori |
|
|
68
68
|
| `showShare` | | `bool` | `true` | Show the share button |
|
|
69
|
+
| `showCopyButton` | | `bool` | `true` | Show the copy button on messages |
|
|
70
|
+
| `showTranslationOriginal` | | `bool` | `false` | Show button to see original text when translated |
|
|
69
71
|
| `showSettings` | | `bool` | `true` | Show the settings panel button |
|
|
70
72
|
| `showTypingText` | | `bool` | `false` | Show default sentences while loading text (see: Typing stories) |
|
|
71
73
|
| `showInstruct` | | `bool` | `false` | Show the switch selecting between test mode or instruct mode, needs an administrative session as a giver |
|
|
@@ -22,6 +22,7 @@ export interface Props {
|
|
|
22
22
|
showDates?: boolean;
|
|
23
23
|
showContextPerLine?: boolean;
|
|
24
24
|
showAIicon?: boolean;
|
|
25
|
+
showTranslationOriginal?: boolean;
|
|
25
26
|
showWhyThisAnswer?: boolean;
|
|
26
27
|
client: ReturnType<typeof memoriApiClient>;
|
|
27
28
|
selectReceiverTag: (tag: string) => Promise<void>;
|
|
@@ -32,6 +33,7 @@ export interface Props {
|
|
|
32
33
|
attachmentsMenuOpen?: 'link' | 'media';
|
|
33
34
|
setAttachmentsMenuOpen: (attachmentsMenuOpen: 'link' | 'media') => void;
|
|
34
35
|
instruct?: boolean;
|
|
36
|
+
showCopyButton?: boolean;
|
|
35
37
|
showInputs?: boolean;
|
|
36
38
|
showMicrophone?: boolean;
|
|
37
39
|
userMessage?: string;
|
|
@@ -12,7 +12,7 @@ const Button_1 = tslib_1.__importDefault(require("../ui/Button"));
|
|
|
12
12
|
const ChatInputs_1 = tslib_1.__importDefault(require("../ChatInputs/ChatInputs"));
|
|
13
13
|
const Typing_1 = tslib_1.__importDefault(require("../Typing/Typing"));
|
|
14
14
|
const constants_1 = require("../../helpers/constants");
|
|
15
|
-
const Chat = ({ memori, tenant, sessionID, baseUrl, apiUrl, translateTo, memoriTyping, typingText, showTypingText = false, history = [], authToken, dialogState, simulateUserPrompt, showDates = false, showContextPerLine = false, showAIicon = true, showWhyThisAnswer = true, selectReceiverTag, preview = false, instruct = false, showInputs = true, showMicrophone = false, microphoneMode = 'HOLD_TO_TALK', sendOnEnter, setSendOnEnter, attachmentsMenuOpen, setAttachmentsMenuOpen, userMessage = '', onChangeUserMessage, sendMessage, listening, isPlayingAudio, stopAudio, startListening, stopListening, resetTranscript, customMediaRenderer, user, userAvatar, experts, }) => {
|
|
15
|
+
const Chat = ({ memori, tenant, sessionID, baseUrl, apiUrl, translateTo, memoriTyping, typingText, showTypingText = false, history = [], authToken, dialogState, simulateUserPrompt, showDates = false, showContextPerLine = false, showAIicon = true, showWhyThisAnswer = true, showCopyButton = true, showTranslationOriginal = false, selectReceiverTag, preview = false, instruct = false, showInputs = true, showMicrophone = false, microphoneMode = 'HOLD_TO_TALK', sendOnEnter, setSendOnEnter, attachmentsMenuOpen, setAttachmentsMenuOpen, userMessage = '', onChangeUserMessage, sendMessage, listening, isPlayingAudio, stopAudio, startListening, stopListening, resetTranscript, customMediaRenderer, user, userAvatar, experts, }) => {
|
|
16
16
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
17
17
|
const scrollToBottom = () => {
|
|
18
18
|
setTimeout(() => {
|
|
@@ -75,9 +75,9 @@ const Chat = ({ memori, tenant, sessionID, baseUrl, apiUrl, translateTo, memoriT
|
|
|
75
75
|
})}")`,
|
|
76
76
|
} }), history.map((message, index) => {
|
|
77
77
|
var _a, _b, _c, _d;
|
|
78
|
-
return ((0, jsx_runtime_1.jsxs)(react_1.default.Fragment, { children: [(0, jsx_runtime_1.jsx)(ChatBubble_1.default, { isFirst: index === 0, message: message, memori: memori, tenant: tenant, baseUrl: baseUrl, apiUrl: apiUrl, sessionID: sessionID, simulateUserPrompt: simulateUserPrompt, showAIicon: showAIicon, showWhyThisAnswer: showWhyThisAnswer, showFeedback: index === history.length - 1 &&
|
|
78
|
+
return ((0, jsx_runtime_1.jsxs)(react_1.default.Fragment, { children: [(0, jsx_runtime_1.jsx)(ChatBubble_1.default, { isFirst: index === 0, message: message, memori: memori, tenant: tenant, baseUrl: baseUrl, apiUrl: apiUrl, sessionID: sessionID, simulateUserPrompt: simulateUserPrompt, showAIicon: showAIicon, showWhyThisAnswer: showWhyThisAnswer, showTranslationOriginal: showTranslationOriginal, showFeedback: index === history.length - 1 &&
|
|
79
79
|
!message.fromUser &&
|
|
80
|
-
(dialogState === null || dialogState === void 0 ? void 0 : dialogState.acceptsFeedback), user: user, userAvatar: userAvatar, experts: experts }), showDates && !!message.timestamp && ((0, jsx_runtime_1.jsx)("small", { className: `memori-chat--timestamp ${message.fromUser ? 'text-right' : 'text-left'}`, children: new Intl.DateTimeFormat('it', {
|
|
80
|
+
(dialogState === null || dialogState === void 0 ? void 0 : dialogState.acceptsFeedback), user: user, userAvatar: userAvatar, experts: experts, showCopyButton: showCopyButton }), showDates && !!message.timestamp && ((0, jsx_runtime_1.jsx)("small", { className: `memori-chat--timestamp ${message.fromUser ? 'text-right' : 'text-left'}`, children: new Intl.DateTimeFormat('it', {
|
|
81
81
|
hour: '2-digit',
|
|
82
82
|
minute: '2-digit',
|
|
83
83
|
second: '2-digit',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chat.js","sourceRoot":"","sources":["../../../src/components/Chat/Chat.tsx"],"names":[],"mappings":";;;;AAAA,uDAA+C;AAC/C,oEAA4B;AAS5B,+CAAqD;AACrD,+CAAqD;AACrD,kFAAkD;AAClD,qFAEoC;AACpC,kEAAkC;AAGlC,kFAAkD;AAClD,sEAAsC;AACtC,uDAAyE;
|
|
1
|
+
{"version":3,"file":"Chat.js","sourceRoot":"","sources":["../../../src/components/Chat/Chat.tsx"],"names":[],"mappings":"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"}
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
103
|
|
|
104
|
-
.memori-chat--bubble p
|
|
104
|
+
.memori-chat--bubble p+p {
|
|
105
105
|
margin-top: 0.5em;
|
|
106
106
|
}
|
|
107
107
|
|
|
@@ -148,18 +148,18 @@
|
|
|
148
148
|
margin-left: auto;
|
|
149
149
|
}
|
|
150
150
|
|
|
151
|
-
.memori-chat--bubble
|
|
151
|
+
.memori-chat--bubble .memori-chat--bubble-action-icon {
|
|
152
152
|
display: flex;
|
|
153
153
|
justify-content: flex-end;
|
|
154
154
|
padding: 0;
|
|
155
155
|
text-align: right;
|
|
156
156
|
}
|
|
157
157
|
|
|
158
|
-
.memori-chat--bubble
|
|
158
|
+
.memori-chat--bubble .memori-chat--bubble-action-icon.memori-chat--bubble-action-icon--ai {
|
|
159
159
|
padding: 3px;
|
|
160
160
|
}
|
|
161
161
|
|
|
162
|
-
.memori-chat--bubble
|
|
162
|
+
.memori-chat--bubble .memori-chat--bubble-action-icon svg {
|
|
163
163
|
overflow: visible;
|
|
164
164
|
width: 1rem;
|
|
165
165
|
height: 1rem;
|
|
@@ -182,16 +182,20 @@
|
|
|
182
182
|
color: #333;
|
|
183
183
|
}
|
|
184
184
|
|
|
185
|
+
.memori-chat--bubble .memori-chat--bubble-action-icon.memori-chat--bubble-action-icon--ai svg {
|
|
186
|
+
width: 0.85rem;
|
|
187
|
+
height: 0.85rem;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
.memori-chat--bubble-addon button.memori-chat--bubble-action-icon {
|
|
191
|
+
padding: 2.5px;
|
|
192
|
+
}
|
|
193
|
+
|
|
185
194
|
.memori-chat--bubble-addon .memori-chat--feedback button .memori-button--icon svg {
|
|
186
195
|
width: 0.9rem;
|
|
187
196
|
height: 0.9rem;
|
|
188
197
|
}
|
|
189
198
|
|
|
190
|
-
.memori-chat--bubble.memori-chat--with-addon .memori-chat--bubble-action-icon.memori-chat--bubble-action-icon--ai svg {
|
|
191
|
-
width: 0.85rem;
|
|
192
|
-
height: 0.85rem;
|
|
193
|
-
}
|
|
194
|
-
|
|
195
199
|
.memori-chat--bubble-addon-separator {
|
|
196
200
|
width: 1px;
|
|
197
201
|
height: 1.5em;
|
|
@@ -262,6 +266,7 @@
|
|
|
262
266
|
}
|
|
263
267
|
|
|
264
268
|
@keyframes wave {
|
|
269
|
+
|
|
265
270
|
0%,
|
|
266
271
|
60%,
|
|
267
272
|
100% {
|
|
@@ -279,4 +284,4 @@
|
|
|
279
284
|
|
|
280
285
|
.memori-chat--bubble mjx-container[jax='CHTML'][display='true'] {
|
|
281
286
|
text-align: left;
|
|
282
|
-
}
|
|
287
|
+
}
|
|
@@ -10,6 +10,8 @@ export interface Props {
|
|
|
10
10
|
apiUrl?: string;
|
|
11
11
|
showFeedback?: boolean;
|
|
12
12
|
showWhyThisAnswer?: boolean;
|
|
13
|
+
showCopyButton?: boolean;
|
|
14
|
+
showTranslationOriginal?: boolean;
|
|
13
15
|
simulateUserPrompt?: (msg: string) => void;
|
|
14
16
|
showAIicon?: boolean;
|
|
15
17
|
isFirst?: boolean;
|
|
@@ -8,6 +8,7 @@ const react_2 = require("@headlessui/react");
|
|
|
8
8
|
const media_1 = require("../../helpers/media");
|
|
9
9
|
const User_1 = tslib_1.__importDefault(require("../icons/User"));
|
|
10
10
|
const AI_1 = tslib_1.__importDefault(require("../icons/AI"));
|
|
11
|
+
const Translation_1 = tslib_1.__importDefault(require("../icons/Translation"));
|
|
11
12
|
const Tooltip_1 = tslib_1.__importDefault(require("../ui/Tooltip"));
|
|
12
13
|
const FeedbackButtons_1 = tslib_1.__importDefault(require("../FeedbackButtons/FeedbackButtons"));
|
|
13
14
|
const react_i18next_1 = require("react-i18next");
|
|
@@ -16,7 +17,10 @@ const dompurify_1 = tslib_1.__importDefault(require("dompurify"));
|
|
|
16
17
|
const utils_1 = require("../../helpers/utils");
|
|
17
18
|
const Button_1 = tslib_1.__importDefault(require("../ui/Button"));
|
|
18
19
|
const QuestionHelp_1 = tslib_1.__importDefault(require("../icons/QuestionHelp"));
|
|
20
|
+
const Copy_1 = tslib_1.__importDefault(require("../icons/Copy"));
|
|
21
|
+
const Code_1 = tslib_1.__importDefault(require("../icons/Code"));
|
|
19
22
|
const WhyThisAnswer_1 = tslib_1.__importDefault(require("../WhyThisAnswer/WhyThisAnswer"));
|
|
23
|
+
const utils_2 = require("../../helpers/utils");
|
|
20
24
|
const marked_linkify_it_1 = tslib_1.__importDefault(require("marked-linkify-it"));
|
|
21
25
|
const marked_katex_extension_1 = tslib_1.__importDefault(require("marked-katex-extension"));
|
|
22
26
|
const markedExtendedTables_1 = tslib_1.__importDefault(require("../../helpers/markedExtendedTables"));
|
|
@@ -46,13 +50,15 @@ marked_1.marked.use((0, marked_katex_extension_1.default)({
|
|
|
46
50
|
output: 'htmlAndMathml',
|
|
47
51
|
}));
|
|
48
52
|
marked_1.marked.use((0, markedExtendedTables_1.default)());
|
|
49
|
-
const ChatBubble = ({ message, memori, tenant, baseUrl, apiUrl, sessionID, showFeedback, showWhyThisAnswer = true, simulateUserPrompt, showAIicon = true, isFirst = false, user, userAvatar, experts, }) => {
|
|
53
|
+
const ChatBubble = ({ message, memori, tenant, baseUrl, apiUrl, sessionID, showFeedback, showWhyThisAnswer = true, showCopyButton = true, showTranslationOriginal = false, simulateUserPrompt, showAIicon = true, isFirst = false, user, userAvatar, experts, }) => {
|
|
50
54
|
var _a, _b, _c, _d, _e, _f;
|
|
51
|
-
const { t } = (0, react_i18next_1.useTranslation)();
|
|
55
|
+
const { t, i18n } = (0, react_i18next_1.useTranslation)();
|
|
56
|
+
const lang = i18n.language || 'en';
|
|
52
57
|
const [showingWhyThisAnswer, setShowingWhyThisAnswer] = (0, react_1.useState)(false);
|
|
58
|
+
const text = message.translatedText || message.text;
|
|
53
59
|
const renderedText = message.fromUser
|
|
54
|
-
?
|
|
55
|
-
: dompurify_1.default.sanitize(marked_1.marked.parse(
|
|
60
|
+
? text
|
|
61
|
+
: dompurify_1.default.sanitize(marked_1.marked.parse(text
|
|
56
62
|
.trim()
|
|
57
63
|
.replaceAll(/\[([^\]]+)\]\(([^\)]+)\)/g, '<a href="$2" target="_blank" rel="noopener noreferrer">$1</a>')
|
|
58
64
|
.replaceAll(/```markdown([^```]+)```/g, '$1')
|
|
@@ -67,6 +73,9 @@ const ChatBubble = ({ message, memori, tenant, baseUrl, apiUrl, sessionID, showF
|
|
|
67
73
|
.replace(/(<br>)+/g, '<br>')
|
|
68
74
|
.replace(/<p><\/p>/g, '<br>')
|
|
69
75
|
.replace(/<p><br><\/p>/g, '<br>');
|
|
76
|
+
const plainText = message.fromUser
|
|
77
|
+
? text
|
|
78
|
+
: (0, utils_2.escapeHTML)((0, utils_2.stripMarkdown)((0, utils_2.stripEmojis)(text)));
|
|
70
79
|
(0, react_1.useLayoutEffect)(() => {
|
|
71
80
|
if (typeof window !== 'undefined' && !message.fromUser) {
|
|
72
81
|
if ('MathJax' in window && window.MathJax.typesetPromise)
|
|
@@ -115,15 +124,21 @@ const ChatBubble = ({ message, memori, tenant, baseUrl, apiUrl, sessionID, showF
|
|
|
115
124
|
e.currentTarget.onerror = null;
|
|
116
125
|
} }) })), (0, jsx_runtime_1.jsxs)(react_2.Transition.Child, { as: "div", className: (0, classnames_1.default)('memori-chat--bubble', {
|
|
117
126
|
'memori-chat--user-bubble': !!message.fromUser,
|
|
118
|
-
'memori-chat--with-addon': (message.
|
|
127
|
+
'memori-chat--with-addon': (!message.fromUser && showCopyButton) ||
|
|
128
|
+
(message.generatedByAI && showAIicon) ||
|
|
119
129
|
(showFeedback && simulateUserPrompt),
|
|
120
130
|
'memori-chat--ai-generated': message.generatedByAI && showAIicon,
|
|
121
131
|
'memori-chat--with-feedback': showFeedback,
|
|
122
|
-
}), enter: "transition ease-in-out duration-300", enterFrom: `opacity-0 scale-09 translate-x-${message.fromUser ? '30' : '-30'}`, enterTo: "opacity-1 scale-1 translate-x-0", leave: "transition ease-in-out duration-300", leaveFrom: "opacity-1 scale-1 translate-x-0", leaveTo: `opacity-0 scale-09 translate-x-${message.fromUser ? '30' : '-30'}`, children: [(0, jsx_runtime_1.jsx)("div", { dir: "auto", className: "memori-chat--bubble-content", dangerouslySetInnerHTML: { __html: renderedText } }), ((message.
|
|
123
|
-
(
|
|
132
|
+
}), enter: "transition ease-in-out duration-300", enterFrom: `opacity-0 scale-09 translate-x-${message.fromUser ? '30' : '-30'}`, enterTo: "opacity-1 scale-1 translate-x-0", leave: "transition ease-in-out duration-300", leaveFrom: "opacity-1 scale-1 translate-x-0", leaveTo: `opacity-0 scale-09 translate-x-${message.fromUser ? '30' : '-30'}`, children: [(0, jsx_runtime_1.jsx)("div", { dir: "auto", className: "memori-chat--bubble-content", dangerouslySetInnerHTML: { __html: renderedText } }), ((!message.fromUser && showCopyButton) ||
|
|
133
|
+
(message.generatedByAI && showAIicon) ||
|
|
134
|
+
(showFeedback && simulateUserPrompt)) && ((0, jsx_runtime_1.jsxs)("div", { className: "memori-chat--bubble-addon", children: [!message.fromUser && showCopyButton && ((0, jsx_runtime_1.jsx)(Button_1.default, { ghost: true, shape: "circle", title: t('copy') || 'Copy', className: "memori-chat--bubble-action-icon", icon: (0, jsx_runtime_1.jsx)(Copy_1.default, { "aria-label": t('copy') || 'Copy' }), onClick: () => navigator.clipboard.writeText(plainText) })), !message.fromUser &&
|
|
135
|
+
showCopyButton &&
|
|
136
|
+
plainText !== message.text && ((0, jsx_runtime_1.jsx)(Button_1.default, { ghost: true, shape: "circle", title: t('copyRawCode') || 'Copy raw code', className: "memori-chat--bubble-action-icon", icon: (0, jsx_runtime_1.jsx)(Code_1.default, { "aria-label": t('copyRawCode') || 'Copy raw code' }), onClick: () => navigator.clipboard.writeText(message.text) })), showFeedback && !!simulateUserPrompt && ((0, jsx_runtime_1.jsx)(FeedbackButtons_1.default, { memori: memori, className: "memori-chat--bubble-feedback", dropdown: true, onNegativeClick: msg => {
|
|
124
137
|
if (msg)
|
|
125
138
|
simulateUserPrompt(msg);
|
|
126
|
-
} })), message.generatedByAI && showAIicon && ((0, jsx_runtime_1.jsx)(Tooltip_1.default, { align: "left", content: t('generatedByAI'), className: "memori-chat--bubble-action-icon memori-chat--bubble-action-icon--ai", children: (0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(AI_1.default, { title: t('generatedByAI') || undefined }) }) })),
|
|
139
|
+
} })), message.generatedByAI && showAIicon && ((0, jsx_runtime_1.jsx)(Tooltip_1.default, { align: "left", content: t('generatedByAI'), className: "memori-chat--bubble-action-icon memori-chat--bubble-action-icon--ai", children: (0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(AI_1.default, { title: t('generatedByAI') || undefined }) }) })), showTranslationOriginal &&
|
|
140
|
+
message.translatedText &&
|
|
141
|
+
message.translatedText !== message.text && ((0, jsx_runtime_1.jsx)(Tooltip_1.default, { align: "left", content: `${lang === 'it' ? 'Testo originale' : 'Original text'}: ${message.text}`, className: "memori-chat--bubble-action-icon memori-chat--bubble-action-icon--ai", children: (0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(Translation_1.default, { "aria-label": lang === 'it' ? 'Testo originale' : 'Original text' }) }) })), !message.fromUser &&
|
|
127
142
|
message.questionAnswered &&
|
|
128
143
|
apiUrl &&
|
|
129
144
|
showWhyThisAnswer && ((0, jsx_runtime_1.jsx)(Button_1.default, { ghost: true, shape: "circle", title: t('whyThisAnswer') || undefined, className: "memori-chat--bubble-action-icon", onClick: () => setShowingWhyThisAnswer(true), disabled: showingWhyThisAnswer, icon: (0, jsx_runtime_1.jsx)(QuestionHelp_1.default, { title: t('whyThisAnswer') || undefined }) }))] }))] }), message.fromUser && ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (!!userAvatar && typeof userAvatar === 'string') ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatBubble.js","sourceRoot":"","sources":["../../../src/components/ChatBubble/ChatBubble.tsx"],"names":[],"mappings":";;;;AAAA,iCAAiE;AACjE,oEAA4B;AAS5B,6CAA+C;AAC/C,+CAAqD;AACrD,iEAAqC;AACrC,6DAA6B;AAC7B,oEAAoC;AACpC,iGAAiE;AACjE,iDAA+C;AAC/C,mCAAgC;AAChC,kEAAkC;AAClC,+CAA+C;AAC/C,kEAAkC;AAClC,iFAAiD;AACjD,2FAA2D;
|
|
1
|
+
{"version":3,"file":"ChatBubble.js","sourceRoot":"","sources":["../../../src/components/ChatBubble/ChatBubble.tsx"],"names":[],"mappings":"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"}
|
|
@@ -74,6 +74,8 @@ export interface Props {
|
|
|
74
74
|
layout?: 'DEFAULT' | 'FULLPAGE' | 'TOTEM' | 'CHAT' | 'WEBSITE_ASSISTANT';
|
|
75
75
|
customLayout?: React.FC<LayoutProps>;
|
|
76
76
|
showShare?: boolean;
|
|
77
|
+
showCopyButton?: boolean;
|
|
78
|
+
showTranslationOriginal?: boolean;
|
|
77
79
|
showInstruct?: boolean;
|
|
78
80
|
showInputs?: boolean;
|
|
79
81
|
showDates?: boolean;
|
|
@@ -113,5 +115,5 @@ export interface Props {
|
|
|
113
115
|
additionalSettings?: JSX.Element | null;
|
|
114
116
|
userAvatar?: string | JSX.Element;
|
|
115
117
|
}
|
|
116
|
-
declare const MemoriWidget: ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenantID, memoriLang, multilingual, integration, layout, customLayout, showInstruct, showShare, preview, embed, showInputs, showDates, showContextPerLine, showSettings, showTypingText, showClear, showLogin, showOnlyLastMessages, height, secret, baseUrl, apiUrl, initialContextVars, initialQuestion, ogImage, sessionID: initialSessionID, tenant, personification, authToken, AZURE_COGNITIVE_SERVICES_TTS_KEY, defaultSpeakerActive, disableTextEnteredEvents, onStateChange, additionalInfo, additionalSettings, customMediaRenderer, userAvatar, }: Props) => JSX.Element;
|
|
118
|
+
declare const MemoriWidget: ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenantID, memoriLang, multilingual, integration, layout, customLayout, showInstruct, showShare, preview, embed, showCopyButton, showTranslationOriginal, showInputs, showDates, showContextPerLine, showSettings, showTypingText, showClear, showLogin, showOnlyLastMessages, height, secret, baseUrl, apiUrl, initialContextVars, initialQuestion, ogImage, sessionID: initialSessionID, tenant, personification, authToken, AZURE_COGNITIVE_SERVICES_TTS_KEY, defaultSpeakerActive, disableTextEnteredEvents, onStateChange, additionalInfo, additionalSettings, customMediaRenderer, userAvatar, }: Props) => JSX.Element;
|
|
117
119
|
export default MemoriWidget;
|
|
@@ -153,7 +153,7 @@ let memoriPassword;
|
|
|
153
153
|
let speakerMuted = false;
|
|
154
154
|
let memoriSpeaking = false;
|
|
155
155
|
let userToken;
|
|
156
|
-
const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenantID, memoriLang, multilingual, integration, layout = 'DEFAULT', customLayout, showInstruct = false, showShare, preview = false, embed = false, showInputs = true, showDates = false, showContextPerLine = false, showSettings = true, showTypingText = false, showClear = false, showLogin = false, showOnlyLastMessages, height = '100vh', secret, baseUrl = 'https://aisuru.com', apiUrl = 'https://backend.memori.ai', initialContextVars, initialQuestion, ogImage, sessionID: initialSessionID, tenant, personification, authToken, AZURE_COGNITIVE_SERVICES_TTS_KEY, defaultSpeakerActive = true, disableTextEnteredEvents = false, onStateChange, additionalInfo, additionalSettings, customMediaRenderer, userAvatar, }) => {
|
|
156
|
+
const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenantID, memoriLang, multilingual, integration, layout = 'DEFAULT', customLayout, showInstruct = false, showShare, preview = false, embed = false, showCopyButton = true, showTranslationOriginal = false, showInputs = true, showDates = false, showContextPerLine = false, showSettings = true, showTypingText = false, showClear = false, showLogin = false, showOnlyLastMessages, height = '100vh', secret, baseUrl = 'https://aisuru.com', apiUrl = 'https://backend.memori.ai', initialContextVars, initialQuestion, ogImage, sessionID: initialSessionID, tenant, personification, authToken, AZURE_COGNITIVE_SERVICES_TTS_KEY, defaultSpeakerActive = true, disableTextEnteredEvents = false, onStateChange, additionalInfo, additionalSettings, customMediaRenderer, userAvatar, }) => {
|
|
157
157
|
var _a, _b, _c, _d, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _t, _u, _v, _w, _x, _y, _z, _0, _1;
|
|
158
158
|
const { t, i18n } = (0, react_i18next_1.useTranslation)();
|
|
159
159
|
const [isClient, setIsClient] = (0, react_1.useState)(false);
|
|
@@ -327,7 +327,8 @@ const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenan
|
|
|
327
327
|
let msg = text;
|
|
328
328
|
let gotError = false;
|
|
329
329
|
try {
|
|
330
|
-
if (
|
|
330
|
+
if (!hidden &&
|
|
331
|
+
translate &&
|
|
331
332
|
!instruct &&
|
|
332
333
|
isMultilanguageEnabled &&
|
|
333
334
|
userLang.toUpperCase() !== language.toUpperCase()) {
|
|
@@ -416,8 +417,9 @@ const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenan
|
|
|
416
417
|
!instruct &&
|
|
417
418
|
isMultilanguageEnabled) {
|
|
418
419
|
translateDialogState(currentState, userLang, msg).then(ts => {
|
|
419
|
-
|
|
420
|
-
|
|
420
|
+
let text = ts.translatedEmission || ts.emission;
|
|
421
|
+
if (text) {
|
|
422
|
+
speak(text);
|
|
421
423
|
}
|
|
422
424
|
});
|
|
423
425
|
}
|
|
@@ -503,37 +505,59 @@ const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenan
|
|
|
503
505
|
}
|
|
504
506
|
}
|
|
505
507
|
else {
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
508
|
+
try {
|
|
509
|
+
const t = await (0, translations_1.getTranslation)(emission, userLang, language, baseUrl);
|
|
510
|
+
if (state.hints && state.hints.length > 0) {
|
|
511
|
+
const translatedHints = await Promise.all(((_b = state.hints) !== null && _b !== void 0 ? _b : []).map(async (hint) => {
|
|
512
|
+
var _a;
|
|
513
|
+
const tHint = await (0, translations_1.getTranslation)(hint, userLang, language, baseUrl);
|
|
514
|
+
return {
|
|
515
|
+
text: (_a = tHint === null || tHint === void 0 ? void 0 : tHint.text) !== null && _a !== void 0 ? _a : hint,
|
|
516
|
+
originalText: hint,
|
|
517
|
+
};
|
|
518
|
+
}));
|
|
519
|
+
translatedState = {
|
|
520
|
+
...state,
|
|
521
|
+
emission: t.text,
|
|
522
|
+
translatedHints,
|
|
523
|
+
};
|
|
524
|
+
}
|
|
525
|
+
else {
|
|
526
|
+
translatedState = {
|
|
527
|
+
...state,
|
|
528
|
+
emission: emission,
|
|
529
|
+
translatedEmission: t.text,
|
|
530
|
+
hints: (_c = state.hints) !== null && _c !== void 0 ? _c : (state.state === 'G1' ? currentDialogState === null || currentDialogState === void 0 ? void 0 : currentDialogState.hints : []),
|
|
531
|
+
};
|
|
532
|
+
}
|
|
533
|
+
if (t.text.length > 0)
|
|
534
|
+
translatedMsg = {
|
|
535
|
+
text: emission,
|
|
536
|
+
translatedText: t.text,
|
|
537
|
+
emitter: state.emitter,
|
|
538
|
+
media: state.media,
|
|
539
|
+
fromUser: false,
|
|
540
|
+
questionAnswered: msg,
|
|
541
|
+
generatedByAI: !!state.completion,
|
|
542
|
+
contextVars: state.contextVars,
|
|
543
|
+
date: state.currentDate,
|
|
544
|
+
placeName: state.currentPlaceName,
|
|
545
|
+
placeLatitude: state.currentLatitude,
|
|
546
|
+
placeLongitude: state.currentLongitude,
|
|
547
|
+
placeUncertaintyKm: state.currentUncertaintyKm,
|
|
548
|
+
tag: state.currentTag,
|
|
549
|
+
memoryTags: state.memoryTags,
|
|
514
550
|
};
|
|
515
|
-
}));
|
|
516
|
-
translatedState = {
|
|
517
|
-
...state,
|
|
518
|
-
emission: t.text,
|
|
519
|
-
translatedHints,
|
|
520
|
-
};
|
|
521
|
-
}
|
|
522
|
-
else {
|
|
523
|
-
translatedState = {
|
|
524
|
-
...state,
|
|
525
|
-
emission: t.text,
|
|
526
|
-
hints: (_c = state.hints) !== null && _c !== void 0 ? _c : (state.state === 'G1' ? currentDialogState === null || currentDialogState === void 0 ? void 0 : currentDialogState.hints : []),
|
|
527
|
-
};
|
|
528
551
|
}
|
|
529
|
-
|
|
552
|
+
catch (error) {
|
|
553
|
+
console.error(error);
|
|
554
|
+
translatedState = { ...state, emission };
|
|
530
555
|
translatedMsg = {
|
|
531
|
-
text:
|
|
556
|
+
text: emission,
|
|
532
557
|
emitter: state.emitter,
|
|
533
558
|
media: state.media,
|
|
534
559
|
fromUser: false,
|
|
535
560
|
questionAnswered: msg,
|
|
536
|
-
generatedByAI: !!state.completion,
|
|
537
561
|
contextVars: state.contextVars,
|
|
538
562
|
date: state.currentDate,
|
|
539
563
|
placeName: state.currentPlaceName,
|
|
@@ -543,6 +567,7 @@ const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenan
|
|
|
543
567
|
tag: state.currentTag,
|
|
544
568
|
memoryTags: state.memoryTags,
|
|
545
569
|
};
|
|
570
|
+
}
|
|
546
571
|
}
|
|
547
572
|
setCurrentDialogState(translatedState);
|
|
548
573
|
if (translatedMsg) {
|
|
@@ -950,8 +975,9 @@ const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenan
|
|
|
950
975
|
emission &&
|
|
951
976
|
emission.length > 0) {
|
|
952
977
|
translateDialogState({ ...currentState, emission: emission }, userLang).then(ts => {
|
|
953
|
-
|
|
954
|
-
|
|
978
|
+
let text = ts.translatedEmission || ts.emission;
|
|
979
|
+
if (text) {
|
|
980
|
+
speak(text);
|
|
955
981
|
}
|
|
956
982
|
});
|
|
957
983
|
}
|
|
@@ -1809,8 +1835,9 @@ const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenan
|
|
|
1809
1835
|
setHistory([]);
|
|
1810
1836
|
translateDialogState(session.dialogState, userLang)
|
|
1811
1837
|
.then(ts => {
|
|
1812
|
-
|
|
1813
|
-
|
|
1838
|
+
let text = ts.translatedEmission || ts.emission;
|
|
1839
|
+
if (text) {
|
|
1840
|
+
speak(text);
|
|
1814
1841
|
}
|
|
1815
1842
|
})
|
|
1816
1843
|
.finally(() => {
|
|
@@ -1847,8 +1874,9 @@ const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenan
|
|
|
1847
1874
|
if (session && session.resultCode === 0) {
|
|
1848
1875
|
translateDialogState(session.currentState, userLang)
|
|
1849
1876
|
.then(ts => {
|
|
1850
|
-
|
|
1851
|
-
|
|
1877
|
+
let text = ts.translatedEmission || ts.emission;
|
|
1878
|
+
if (text) {
|
|
1879
|
+
speak(text);
|
|
1852
1880
|
}
|
|
1853
1881
|
})
|
|
1854
1882
|
.finally(() => {
|
|
@@ -1882,8 +1910,9 @@ const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenan
|
|
|
1882
1910
|
if (session && session.resultCode === 0) {
|
|
1883
1911
|
translateDialogState(session.currentState, userLang)
|
|
1884
1912
|
.then(ts => {
|
|
1885
|
-
|
|
1886
|
-
|
|
1913
|
+
let text = ts.translatedEmission || ts.emission;
|
|
1914
|
+
if (text) {
|
|
1915
|
+
speak(text);
|
|
1887
1916
|
}
|
|
1888
1917
|
})
|
|
1889
1918
|
.finally(() => {
|
|
@@ -1917,8 +1946,9 @@ const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenan
|
|
|
1917
1946
|
if (session && session.resultCode === 0) {
|
|
1918
1947
|
translateDialogState(session.currentState, userLang)
|
|
1919
1948
|
.then(ts => {
|
|
1920
|
-
|
|
1921
|
-
|
|
1949
|
+
let text = ts.translatedEmission || ts.emission;
|
|
1950
|
+
if (text) {
|
|
1951
|
+
speak(text);
|
|
1922
1952
|
}
|
|
1923
1953
|
})
|
|
1924
1954
|
.finally(() => {
|
|
@@ -1945,8 +1975,9 @@ const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenan
|
|
|
1945
1975
|
else {
|
|
1946
1976
|
translateDialogState(currentState, userLang)
|
|
1947
1977
|
.then(ts => {
|
|
1948
|
-
|
|
1949
|
-
|
|
1978
|
+
let text = ts.translatedEmission || ts.emission;
|
|
1979
|
+
if (text) {
|
|
1980
|
+
speak(text);
|
|
1950
1981
|
}
|
|
1951
1982
|
})
|
|
1952
1983
|
.finally(() => {
|
|
@@ -1962,8 +1993,9 @@ const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenan
|
|
|
1962
1993
|
setHistory([]);
|
|
1963
1994
|
translateDialogState(dialogState, userLang)
|
|
1964
1995
|
.then(ts => {
|
|
1965
|
-
|
|
1966
|
-
|
|
1996
|
+
let text = ts.translatedEmission || ts.emission;
|
|
1997
|
+
if (text) {
|
|
1998
|
+
speak(text);
|
|
1967
1999
|
}
|
|
1968
2000
|
})
|
|
1969
2001
|
.finally(() => {
|
|
@@ -2162,6 +2194,8 @@ const MemoriWidget = ({ memori, memoriConfigs, ownerUserID, ownerUserName, tenan
|
|
|
2162
2194
|
showContextPerLine,
|
|
2163
2195
|
showAIicon,
|
|
2164
2196
|
showWhyThisAnswer,
|
|
2197
|
+
showCopyButton,
|
|
2198
|
+
showTranslationOriginal,
|
|
2165
2199
|
client,
|
|
2166
2200
|
selectReceiverTag,
|
|
2167
2201
|
preview,
|