@memori.ai/memori-react 2.19.2 → 2.20.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/dist/components/Chat/Chat.js +6 -2
- package/dist/components/Chat/Chat.js.map +1 -1
- package/dist/components/CompletionProviderStatus/CompletionProviderStatus.css +18 -0
- package/dist/components/CompletionProviderStatus/CompletionProviderStatus.d.ts +6 -0
- package/dist/components/CompletionProviderStatus/CompletionProviderStatus.js +44 -0
- package/dist/components/CompletionProviderStatus/CompletionProviderStatus.js.map +1 -0
- package/dist/components/CompletionProviderStatus/CompletionProviderStatus.test.d.ts +1 -0
- package/dist/components/CompletionProviderStatus/CompletionProviderStatus.test.js +23 -0
- package/dist/components/CompletionProviderStatus/CompletionProviderStatus.test.js.map +1 -0
- package/dist/components/MemoriWidget/MemoriWidget.css +7 -2
- package/dist/components/MemoriWidget/MemoriWidget.js +11 -11
- package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
- package/dist/components/StartPanel/StartPanel.css +4 -0
- package/dist/components/StartPanel/StartPanel.d.ts +1 -0
- package/dist/components/StartPanel/StartPanel.js +3 -2
- package/dist/components/StartPanel/StartPanel.js.map +1 -1
- package/dist/components/StartPanel/StartPanel.test.js +7 -0
- package/dist/components/StartPanel/StartPanel.test.js.map +1 -1
- package/dist/components/ui/Tooltip.d.ts +0 -1
- package/dist/components/ui/Tooltip.js.map +1 -1
- package/dist/locales/en.json +3 -0
- package/dist/locales/it.json +3 -0
- package/dist/styles.css +1 -0
- package/esm/components/Chat/Chat.js +6 -2
- package/esm/components/Chat/Chat.js.map +1 -1
- package/esm/components/CompletionProviderStatus/CompletionProviderStatus.css +18 -0
- package/esm/components/CompletionProviderStatus/CompletionProviderStatus.d.ts +6 -0
- package/esm/components/CompletionProviderStatus/CompletionProviderStatus.js +41 -0
- package/esm/components/CompletionProviderStatus/CompletionProviderStatus.js.map +1 -0
- package/esm/components/CompletionProviderStatus/CompletionProviderStatus.test.d.ts +1 -0
- package/esm/components/CompletionProviderStatus/CompletionProviderStatus.test.js +20 -0
- package/esm/components/CompletionProviderStatus/CompletionProviderStatus.test.js.map +1 -0
- package/esm/components/MemoriWidget/MemoriWidget.css +7 -2
- package/esm/components/MemoriWidget/MemoriWidget.js +11 -11
- package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
- package/esm/components/StartPanel/StartPanel.css +4 -0
- package/esm/components/StartPanel/StartPanel.d.ts +1 -0
- package/esm/components/StartPanel/StartPanel.js +3 -2
- package/esm/components/StartPanel/StartPanel.js.map +1 -1
- package/esm/components/StartPanel/StartPanel.test.js +7 -0
- package/esm/components/StartPanel/StartPanel.test.js.map +1 -1
- package/esm/components/ui/Tooltip.d.ts +0 -1
- package/esm/components/ui/Tooltip.js.map +1 -1
- package/esm/locales/en.json +3 -0
- package/esm/locales/it.json +3 -0
- package/esm/styles.css +1 -0
- package/package.json +1 -1
- package/src/components/Chat/Chat.tsx +6 -0
- package/src/components/CompletionProviderStatus/CompletionProviderStatus.css +18 -0
- package/src/components/CompletionProviderStatus/CompletionProviderStatus.stories.tsx +38 -0
- package/src/components/CompletionProviderStatus/CompletionProviderStatus.test.tsx +29 -0
- package/src/components/CompletionProviderStatus/CompletionProviderStatus.tsx +75 -0
- package/src/components/CompletionProviderStatus/__snapshots__/CompletionProviderStatus.test.tsx.snap +82 -0
- package/src/components/MemoriWidget/MemoriWidget.css +7 -2
- package/src/components/MemoriWidget/MemoriWidget.tsx +6 -4
- package/src/components/StartPanel/StartPanel.css +4 -0
- package/src/components/StartPanel/StartPanel.stories.tsx +19 -0
- package/src/components/StartPanel/StartPanel.test.tsx +22 -0
- package/src/components/StartPanel/StartPanel.tsx +8 -0
- package/src/components/StartPanel/__snapshots__/StartPanel.test.tsx.snap +139 -0
- package/src/components/ui/Tooltip.tsx +0 -1
- package/src/locales/en.json +3 -0
- package/src/locales/it.json +3 -0
- package/src/styles.css +1 -0
|
@@ -45,4 +45,11 @@ it('renders StartPanel with integrationConfig unchanged', () => {
|
|
|
45
45
|
const { container } = render(_jsx(StartPanel, { memori: memori, tenant: tenant, integrationConfig: JSON.parse((_a = integration.customData) !== null && _a !== void 0 ? _a : '{}'), language: "it", userLang: "en", setUserLang: () => { }, openPositionDrawer: () => { }, instruct: false, sessionId: sessionID, clickedStart: false, onClickStart: () => { } }));
|
|
46
46
|
expect(container).toMatchSnapshot();
|
|
47
47
|
});
|
|
48
|
+
it('renders StartPanel with completion provider down unchanged', () => {
|
|
49
|
+
const { container } = render(_jsx(StartPanel, { memori: {
|
|
50
|
+
...memori,
|
|
51
|
+
completionProvider: 'OpenAI',
|
|
52
|
+
}, tenant: tenant, language: "it", userLang: "en", setUserLang: () => { }, openPositionDrawer: () => { }, instruct: false, sessionId: sessionID, clickedStart: false, onClickStart: () => { }, _TEST_forceProviderStatus: "major" }));
|
|
53
|
+
expect(container).toMatchSnapshot();
|
|
54
|
+
});
|
|
48
55
|
//# sourceMappingURL=StartPanel.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StartPanel.test.js","sourceRoot":"","sources":["../../../src/components/StartPanel/StartPanel.test.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StartPanel.test.js","sourceRoot":"","sources":["../../../src/components/StartPanel/StartPanel.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../../../src/components/ui/Tooltip.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../../../src/components/ui/Tooltip.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,YAAY,CAAC;AAW5B,MAAM,OAAO,GAAc,CAAC,EAC1B,OAAO,EACP,SAAS,EACT,KAAK,GAAG,OAAO,EACf,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,KAAK,EACf,QAAQ,GACT,EAAE,EAAE,CAAC,CACJ,eACE,SAAS,EAAE,EAAE,CACX,gBAAgB,EAChB,yBAAyB,KAAK,EAAE,EAChC,SAAS,EACT;QACE,0BAA0B,EAAE,QAAQ;QACpC,yBAAyB,EAAE,OAAO;KACnC,CACF,aAED,cAAK,SAAS,EAAC,yBAAyB,YAAE,OAAO,GAAO,EACxD,cAAK,SAAS,EAAC,yBAAyB,YAAE,QAAQ,GAAO,IACrD,CACP,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
package/esm/locales/en.json
CHANGED
|
@@ -31,6 +31,9 @@
|
|
|
31
31
|
"memoriBlockedGiverHelper": "You can still manage it as administrator, but other users will not be able to interact with it.",
|
|
32
32
|
"generatedByAI": "Answer generated by AI, may occasionally generate incorrect informations",
|
|
33
33
|
"completionsEnabled": "Advanced AI, can respond with automatically generated answers that may sometimes contain incorrect information",
|
|
34
|
+
"completionProviderDown": "This Twin is integrated with a generative AI from {{provider}}, but it is currently unavailable. Try again later.",
|
|
35
|
+
"completionProviderFallbackName": "an external provider",
|
|
36
|
+
"completionProviderCheckStatusPage": "Check status page",
|
|
34
37
|
"birthDate": "Birth date",
|
|
35
38
|
"birthDateHelper": "We ask for your birth date only to enable or disable functionalities that have age restrictions",
|
|
36
39
|
"underage": "You must be at least {{age}} years old to sign up.",
|
package/esm/locales/it.json
CHANGED
|
@@ -31,6 +31,9 @@
|
|
|
31
31
|
"memoriBlockedGiverHelper": "Puoi sempre gestirlo in qualità di amministratore, ma altri utenti non potranno interrogarlo.",
|
|
32
32
|
"generatedByAI": "Risposta generata da IA, può talvolta generare informazioni non corrette",
|
|
33
33
|
"completionsEnabled": "IA evoluta, può rispondere con risposte generate automaticamente che talvolta potrebbero contenere informazioni non corrette",
|
|
34
|
+
"completionProviderDown": "Questo Twin è integrato con una IA generativa di {{provider}}, ma al momento non è disponibile. Riprova più tardi.",
|
|
35
|
+
"completionProviderFallbackName": "un provider esterno",
|
|
36
|
+
"completionProviderCheckStatusPage": "Vedi pagina di stato",
|
|
34
37
|
"birthDate": "Data di nascita",
|
|
35
38
|
"birthDateHelper": "Ti chiediamo la data di nascita esclusivamente per abilitare o disabilitare le funzionalità che hanno restrizioni in base all'età",
|
|
36
39
|
"underage": "Devi avere almeno {{age}} anni per registrarti.",
|
package/esm/styles.css
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
@import url('./components/ui/Tooltip.css');
|
|
8
8
|
@import url('./components/ui/Select.css');
|
|
9
9
|
|
|
10
|
+
@import url('./components/CompletionProviderStatus/CompletionProviderStatus.css');
|
|
10
11
|
@import url('./components/PoweredBy/PoweredBy.css');
|
|
11
12
|
@import url('./components/AttachmentLinkModal/AttachmentLinkModal.css');
|
|
12
13
|
@import url('./components/Auth/Auth.css');
|
package/package.json
CHANGED
|
@@ -122,6 +122,9 @@ const Chat: React.FC<Props> = ({
|
|
|
122
122
|
stopListening();
|
|
123
123
|
if (hasTouchscreen() && window.innerWidth <= 768) {
|
|
124
124
|
document.getElementById('chat-wrapper')?.classList?.add('chat-focused');
|
|
125
|
+
document
|
|
126
|
+
.querySelector('.memori.memori-widget')
|
|
127
|
+
?.classList?.add('chat-focused');
|
|
125
128
|
setTimeout(() => {
|
|
126
129
|
scrollToBottom();
|
|
127
130
|
}, 300);
|
|
@@ -134,6 +137,9 @@ const Chat: React.FC<Props> = ({
|
|
|
134
137
|
?.classList?.contains('chat-focused')
|
|
135
138
|
) {
|
|
136
139
|
document.getElementById('chat-wrapper')?.classList.remove('chat-focused');
|
|
140
|
+
document
|
|
141
|
+
.querySelector('.memori.memori-widget')
|
|
142
|
+
?.classList?.remove('chat-focused');
|
|
137
143
|
scrollToBottom();
|
|
138
144
|
}
|
|
139
145
|
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
.memori--completion-provider-status--icon {
|
|
2
|
+
width: 1em;
|
|
3
|
+
height: 1em;
|
|
4
|
+
fill: var(--memori-error-color, red);
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.memori--completion-provider-status--tooltip.memori-tooltip.memori-tooltip--align-topLeft:not(.memori-tooltip--disabled).memori-tooltip--visible .memori-tooltip--content,
|
|
8
|
+
.memori--completion-provider-status--tooltip.memori-tooltip.memori-tooltip--align-topLeft:not(.memori-tooltip--disabled):not(.memori-tooltip--visible):hover .memori-tooltip--content {
|
|
9
|
+
transform: translateY(calc(-100% - 2em)) translateX(3em);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.memori--completion-provider-status--tooltip.memori-tooltip .memori-tooltip--content p {
|
|
13
|
+
margin: 0.5em auto;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.memori--completion-provider-status--tooltip.memori-tooltip .memori-tooltip--content p+p {
|
|
17
|
+
margin-top: 1em;
|
|
18
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Meta, Story } from '@storybook/react';
|
|
3
|
+
import CompletionProviderStatus, { Props } from './CompletionProviderStatus';
|
|
4
|
+
|
|
5
|
+
import './CompletionProviderStatus.css';
|
|
6
|
+
|
|
7
|
+
const meta: Meta = {
|
|
8
|
+
title: 'Completion Provider Status',
|
|
9
|
+
component: CompletionProviderStatus,
|
|
10
|
+
argTypes: {},
|
|
11
|
+
parameters: {
|
|
12
|
+
layout: 'centered',
|
|
13
|
+
controls: { expanded: true },
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export default meta;
|
|
18
|
+
|
|
19
|
+
const Template: Story<Props> = args => <CompletionProviderStatus {...args} />;
|
|
20
|
+
|
|
21
|
+
export const Default = Template.bind({});
|
|
22
|
+
Default.args = {};
|
|
23
|
+
|
|
24
|
+
export const Errored = Template.bind({});
|
|
25
|
+
Errored.args = {
|
|
26
|
+
forceStatus: 'major',
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
export const WithSpecifiedProvider = Template.bind({});
|
|
30
|
+
WithSpecifiedProvider.args = {
|
|
31
|
+
provider: 'OpenAI',
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
export const ErroredWithSpecifiedProvider = Template.bind({});
|
|
35
|
+
ErroredWithSpecifiedProvider.args = {
|
|
36
|
+
forceStatus: 'major',
|
|
37
|
+
provider: 'OpenAI',
|
|
38
|
+
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { render } from '@testing-library/react';
|
|
3
|
+
import CompletionProviderStatus from './CompletionProviderStatus';
|
|
4
|
+
|
|
5
|
+
it('renders CompletionProviderStatus unchanged', () => {
|
|
6
|
+
const { container } = render(<CompletionProviderStatus forceStatus="none" />);
|
|
7
|
+
expect(container).toMatchSnapshot();
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
it('renders CompletionProviderStatus errored unchanged', () => {
|
|
11
|
+
const { container } = render(
|
|
12
|
+
<CompletionProviderStatus forceStatus="major" />
|
|
13
|
+
);
|
|
14
|
+
expect(container).toMatchSnapshot();
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
it('renders CompletionProviderStatus with provider specified unchanged', () => {
|
|
18
|
+
const { container } = render(
|
|
19
|
+
<CompletionProviderStatus provider="OpenAI" forceStatus="none" />
|
|
20
|
+
);
|
|
21
|
+
expect(container).toMatchSnapshot();
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
it('renders CompletionProviderStatus errored with provider specified unchanged', () => {
|
|
25
|
+
const { container } = render(
|
|
26
|
+
<CompletionProviderStatus provider="OpenAI" forceStatus="major" />
|
|
27
|
+
);
|
|
28
|
+
expect(container).toMatchSnapshot();
|
|
29
|
+
});
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { useEffect, useState } from 'react';
|
|
2
|
+
import Tooltip from '../ui/Tooltip';
|
|
3
|
+
import Warning from '../icons/Warning';
|
|
4
|
+
import { useTranslation } from 'react-i18next';
|
|
5
|
+
|
|
6
|
+
export interface Props {
|
|
7
|
+
forceStatus?: string;
|
|
8
|
+
provider?: 'OpenAI' | string | null;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
const initProviderStatus = (provider?: Props['provider']) => {
|
|
12
|
+
switch (provider) {
|
|
13
|
+
case 'DEFAULT':
|
|
14
|
+
case 'OpenAI':
|
|
15
|
+
return {
|
|
16
|
+
getStatus: async () => {
|
|
17
|
+
const res = await fetch(
|
|
18
|
+
'https://status.openai.com/api/v2/summary.json'
|
|
19
|
+
);
|
|
20
|
+
const data = await res.json();
|
|
21
|
+
return data.status.indicator ?? 'none';
|
|
22
|
+
},
|
|
23
|
+
statusPage: 'https://status.openai.com/',
|
|
24
|
+
};
|
|
25
|
+
default:
|
|
26
|
+
return {
|
|
27
|
+
getStatus: async () => 'none',
|
|
28
|
+
statusPage: '',
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
const CompletionProviderStatus = ({ forceStatus, provider }: Props) => {
|
|
34
|
+
const { t } = useTranslation();
|
|
35
|
+
const [status, setStatus] = useState(forceStatus ?? 'none');
|
|
36
|
+
|
|
37
|
+
const providerStatus = initProviderStatus(provider);
|
|
38
|
+
|
|
39
|
+
useEffect(() => {
|
|
40
|
+
if (forceStatus) return;
|
|
41
|
+
|
|
42
|
+
providerStatus.getStatus().then(status => setStatus(status));
|
|
43
|
+
}, [forceStatus, provider]);
|
|
44
|
+
|
|
45
|
+
return status !== 'none' ? (
|
|
46
|
+
<Tooltip
|
|
47
|
+
className="memori--completion-provider-status--tooltip"
|
|
48
|
+
align="topLeft"
|
|
49
|
+
content={
|
|
50
|
+
<div>
|
|
51
|
+
<p>
|
|
52
|
+
{t('completionProviderDown', {
|
|
53
|
+
provider: provider ?? t('completionProviderFallbackName'),
|
|
54
|
+
})}
|
|
55
|
+
</p>
|
|
56
|
+
{!!providerStatus.statusPage?.length && (
|
|
57
|
+
<p>
|
|
58
|
+
<a
|
|
59
|
+
href={providerStatus.statusPage}
|
|
60
|
+
rel="noopener noreferrer"
|
|
61
|
+
target="_blank"
|
|
62
|
+
>
|
|
63
|
+
{t('completionProviderCheckStatusPage')}
|
|
64
|
+
</a>
|
|
65
|
+
</p>
|
|
66
|
+
)}
|
|
67
|
+
</div>
|
|
68
|
+
}
|
|
69
|
+
>
|
|
70
|
+
<Warning className="memori--completion-provider-status--icon" />
|
|
71
|
+
</Tooltip>
|
|
72
|
+
) : null;
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
export default CompletionProviderStatus;
|
package/src/components/CompletionProviderStatus/__snapshots__/CompletionProviderStatus.test.tsx.snap
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
+
|
|
3
|
+
exports[`renders CompletionProviderStatus errored unchanged 1`] = `
|
|
4
|
+
<div>
|
|
5
|
+
<div
|
|
6
|
+
class="memori-tooltip memori-tooltip--align-topLeft memori--completion-provider-status--tooltip"
|
|
7
|
+
>
|
|
8
|
+
<div
|
|
9
|
+
class="memori-tooltip--content"
|
|
10
|
+
>
|
|
11
|
+
<div>
|
|
12
|
+
<p>
|
|
13
|
+
completionProviderDown
|
|
14
|
+
</p>
|
|
15
|
+
</div>
|
|
16
|
+
</div>
|
|
17
|
+
<div
|
|
18
|
+
class="memori-tooltip--trigger"
|
|
19
|
+
>
|
|
20
|
+
<svg
|
|
21
|
+
aria-hidden="true"
|
|
22
|
+
class="memori--completion-provider-status--icon"
|
|
23
|
+
focusable="false"
|
|
24
|
+
role="img"
|
|
25
|
+
viewBox="0 0 1024 1024"
|
|
26
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
27
|
+
>
|
|
28
|
+
<path
|
|
29
|
+
d="M464 720a48 48 0 1096 0 48 48 0 10-96 0zm16-304v184c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V416c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8zm475.7 440l-416-720c-6.2-10.7-16.9-16-27.7-16s-21.6 5.3-27.7 16l-416 720C56 877.4 71.4 904 96 904h832c24.6 0 40-26.6 27.7-48zm-783.5-27.9L512 239.9l339.8 588.2H172.2z"
|
|
30
|
+
/>
|
|
31
|
+
</svg>
|
|
32
|
+
</div>
|
|
33
|
+
</div>
|
|
34
|
+
</div>
|
|
35
|
+
`;
|
|
36
|
+
|
|
37
|
+
exports[`renders CompletionProviderStatus errored with provider specified unchanged 1`] = `
|
|
38
|
+
<div>
|
|
39
|
+
<div
|
|
40
|
+
class="memori-tooltip memori-tooltip--align-topLeft memori--completion-provider-status--tooltip"
|
|
41
|
+
>
|
|
42
|
+
<div
|
|
43
|
+
class="memori-tooltip--content"
|
|
44
|
+
>
|
|
45
|
+
<div>
|
|
46
|
+
<p>
|
|
47
|
+
completionProviderDown
|
|
48
|
+
</p>
|
|
49
|
+
<p>
|
|
50
|
+
<a
|
|
51
|
+
href="https://status.openai.com/"
|
|
52
|
+
rel="noopener noreferrer"
|
|
53
|
+
target="_blank"
|
|
54
|
+
>
|
|
55
|
+
completionProviderCheckStatusPage
|
|
56
|
+
</a>
|
|
57
|
+
</p>
|
|
58
|
+
</div>
|
|
59
|
+
</div>
|
|
60
|
+
<div
|
|
61
|
+
class="memori-tooltip--trigger"
|
|
62
|
+
>
|
|
63
|
+
<svg
|
|
64
|
+
aria-hidden="true"
|
|
65
|
+
class="memori--completion-provider-status--icon"
|
|
66
|
+
focusable="false"
|
|
67
|
+
role="img"
|
|
68
|
+
viewBox="0 0 1024 1024"
|
|
69
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
70
|
+
>
|
|
71
|
+
<path
|
|
72
|
+
d="M464 720a48 48 0 1096 0 48 48 0 10-96 0zm16-304v184c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V416c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8zm475.7 440l-416-720c-6.2-10.7-16.9-16-27.7-16s-21.6 5.3-27.7 16l-416 720C56 877.4 71.4 904 96 904h832c24.6 0 40-26.6 27.7-48zm-783.5-27.9L512 239.9l339.8 588.2H172.2z"
|
|
73
|
+
/>
|
|
74
|
+
</svg>
|
|
75
|
+
</div>
|
|
76
|
+
</div>
|
|
77
|
+
</div>
|
|
78
|
+
`;
|
|
79
|
+
|
|
80
|
+
exports[`renders CompletionProviderStatus unchanged 1`] = `<div />`;
|
|
81
|
+
|
|
82
|
+
exports[`renders CompletionProviderStatus with provider specified unchanged 1`] = `<div />`;
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
box-sizing: border-box;
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
-
.memori-widget
|
|
13
|
+
.memori-widget>.memori-spin {
|
|
14
14
|
height: calc(100vh - 50px);
|
|
15
15
|
}
|
|
16
16
|
|
|
@@ -175,7 +175,7 @@
|
|
|
175
175
|
font-size: 1rem;
|
|
176
176
|
}
|
|
177
177
|
|
|
178
|
-
.memori--conversation-button
|
|
178
|
+
.memori--conversation-button+.memori--conversation-button {
|
|
179
179
|
margin-left: 0.33rem;
|
|
180
180
|
}
|
|
181
181
|
|
|
@@ -190,3 +190,8 @@
|
|
|
190
190
|
box-shadow: 0 0.2rem 0.33rem #b5b6c4 !important;
|
|
191
191
|
color: var(--memori-primary) !important;
|
|
192
192
|
}
|
|
193
|
+
|
|
194
|
+
.memori.memori-widget.chat-focused .memori--powered-by,
|
|
195
|
+
.memori.memori-widget.chat-focused .memori-website_assistant--close-button-wrapper button.memori-website_assistant--close-button {
|
|
196
|
+
display: none;
|
|
197
|
+
}
|
|
@@ -914,7 +914,7 @@ const MemoriWidget = ({
|
|
|
914
914
|
pin: params.pin ?? personification?.pin,
|
|
915
915
|
additionalInfo: {
|
|
916
916
|
...(additionalInfo || {}),
|
|
917
|
-
loginToken: additionalInfo?.loginToken ?? authToken,
|
|
917
|
+
loginToken: additionalInfo?.loginToken ?? loginToken ?? authToken,
|
|
918
918
|
language: getCultureCodeByLanguage(userLang),
|
|
919
919
|
referral: referral,
|
|
920
920
|
},
|
|
@@ -1009,7 +1009,7 @@ const MemoriWidget = ({
|
|
|
1009
1009
|
birthDate: birthDate || storageBirthDate || undefined,
|
|
1010
1010
|
additionalInfo: {
|
|
1011
1011
|
...(additionalInfo || {}),
|
|
1012
|
-
loginToken: additionalInfo?.loginToken ?? authToken,
|
|
1012
|
+
loginToken: additionalInfo?.loginToken ?? loginToken ?? authToken,
|
|
1013
1013
|
language: getCultureCodeByLanguage(userLang),
|
|
1014
1014
|
referral: referral,
|
|
1015
1015
|
},
|
|
@@ -1139,7 +1139,7 @@ const MemoriWidget = ({
|
|
|
1139
1139
|
birthDate: birthDate || storageBirthDate || undefined,
|
|
1140
1140
|
additionalInfo: {
|
|
1141
1141
|
...(additionalInfo || {}),
|
|
1142
|
-
loginToken: additionalInfo?.loginToken ?? authToken,
|
|
1142
|
+
loginToken: additionalInfo?.loginToken ?? loginToken ?? authToken,
|
|
1143
1143
|
language: getCultureCodeByLanguage(userLang),
|
|
1144
1144
|
referral: referral,
|
|
1145
1145
|
},
|
|
@@ -2506,7 +2506,9 @@ const MemoriWidget = ({
|
|
|
2506
2506
|
[memoriPwd, memori, memoriTokens, birthDate, sessionId, userLang]
|
|
2507
2507
|
);
|
|
2508
2508
|
|
|
2509
|
-
const [loginToken, setLoginToken] = useState<string | undefined>(
|
|
2509
|
+
const [loginToken, setLoginToken] = useState<string | undefined>(
|
|
2510
|
+
additionalInfo?.loginToken ?? authToken
|
|
2511
|
+
);
|
|
2510
2512
|
useEffect(() => {
|
|
2511
2513
|
const targetNode =
|
|
2512
2514
|
document.querySelector(`memori-client[memoriname="${memori.name}"]`) ||
|
|
@@ -237,3 +237,22 @@ WithIntegration.args = {
|
|
|
237
237
|
clickedStart: false,
|
|
238
238
|
onClickStart: () => {},
|
|
239
239
|
};
|
|
240
|
+
|
|
241
|
+
export const WithCompletionProviderDown = Template.bind({});
|
|
242
|
+
WithCompletionProviderDown.args = {
|
|
243
|
+
memori: {
|
|
244
|
+
...memori,
|
|
245
|
+
enableCompletions: false,
|
|
246
|
+
completionProvider: 'OpenAI',
|
|
247
|
+
},
|
|
248
|
+
tenant,
|
|
249
|
+
language: 'it',
|
|
250
|
+
userLang: 'en',
|
|
251
|
+
setUserLang: () => {},
|
|
252
|
+
openPositionDrawer: () => {},
|
|
253
|
+
instruct: false,
|
|
254
|
+
sessionId: sessionID,
|
|
255
|
+
clickedStart: false,
|
|
256
|
+
onClickStart: () => {},
|
|
257
|
+
_TEST_forceProviderStatus: 'major',
|
|
258
|
+
};
|
|
@@ -132,3 +132,25 @@ it('renders StartPanel with integrationConfig unchanged', () => {
|
|
|
132
132
|
);
|
|
133
133
|
expect(container).toMatchSnapshot();
|
|
134
134
|
});
|
|
135
|
+
|
|
136
|
+
it('renders StartPanel with completion provider down unchanged', () => {
|
|
137
|
+
const { container } = render(
|
|
138
|
+
<StartPanel
|
|
139
|
+
memori={{
|
|
140
|
+
...memori,
|
|
141
|
+
completionProvider: 'OpenAI',
|
|
142
|
+
}}
|
|
143
|
+
tenant={tenant}
|
|
144
|
+
language="it"
|
|
145
|
+
userLang="en"
|
|
146
|
+
setUserLang={() => {}}
|
|
147
|
+
openPositionDrawer={() => {}}
|
|
148
|
+
instruct={false}
|
|
149
|
+
sessionId={sessionID}
|
|
150
|
+
clickedStart={false}
|
|
151
|
+
onClickStart={() => {}}
|
|
152
|
+
_TEST_forceProviderStatus="major"
|
|
153
|
+
/>
|
|
154
|
+
);
|
|
155
|
+
expect(container).toMatchSnapshot();
|
|
156
|
+
});
|
|
@@ -14,6 +14,7 @@ import Translation from '../icons/Translation';
|
|
|
14
14
|
import { chatLanguages } from '../../helpers/constants';
|
|
15
15
|
import BlockedMemoriBadge from '../BlockedMemoriBadge/BlockedMemoriBadge';
|
|
16
16
|
import AI from '../icons/AI';
|
|
17
|
+
import CompletionProviderStatus from '../CompletionProviderStatus/CompletionProviderStatus';
|
|
17
18
|
|
|
18
19
|
export interface Props {
|
|
19
20
|
memori: Memori;
|
|
@@ -32,6 +33,7 @@ export interface Props {
|
|
|
32
33
|
clickedStart?: boolean;
|
|
33
34
|
onClickStart?: () => void;
|
|
34
35
|
initializeTTS?: () => void;
|
|
36
|
+
_TEST_forceProviderStatus?: string;
|
|
35
37
|
}
|
|
36
38
|
|
|
37
39
|
const StartPanel: React.FC<Props> = ({
|
|
@@ -50,6 +52,7 @@ const StartPanel: React.FC<Props> = ({
|
|
|
50
52
|
clickedStart,
|
|
51
53
|
onClickStart,
|
|
52
54
|
initializeTTS,
|
|
55
|
+
_TEST_forceProviderStatus,
|
|
53
56
|
}) => {
|
|
54
57
|
const { t, i18n } = useTranslation();
|
|
55
58
|
const [translatedDescription, setTranslatedDescription] = useState(
|
|
@@ -254,6 +257,11 @@ const StartPanel: React.FC<Props> = ({
|
|
|
254
257
|
)}
|
|
255
258
|
</Button>
|
|
256
259
|
|
|
260
|
+
<CompletionProviderStatus
|
|
261
|
+
provider={memori.completionProvider}
|
|
262
|
+
forceStatus={_TEST_forceProviderStatus}
|
|
263
|
+
/>
|
|
264
|
+
|
|
257
265
|
<p className="memori--start-description">
|
|
258
266
|
{instruct
|
|
259
267
|
? t('write_and_speak.pageInstructExplanation')
|
|
@@ -224,6 +224,145 @@ exports[`renders StartPanel unchanged 1`] = `
|
|
|
224
224
|
</div>
|
|
225
225
|
`;
|
|
226
226
|
|
|
227
|
+
exports[`renders StartPanel with completion provider down unchanged 1`] = `
|
|
228
|
+
<div>
|
|
229
|
+
<div
|
|
230
|
+
class="memori--start-panel"
|
|
231
|
+
>
|
|
232
|
+
<div
|
|
233
|
+
class="memori--cover"
|
|
234
|
+
>
|
|
235
|
+
<div
|
|
236
|
+
class="memori--completions-enabled"
|
|
237
|
+
>
|
|
238
|
+
<div
|
|
239
|
+
class="memori-tooltip memori-tooltip--align-left"
|
|
240
|
+
>
|
|
241
|
+
<div
|
|
242
|
+
class="memori-tooltip--content"
|
|
243
|
+
>
|
|
244
|
+
completionsEnabled
|
|
245
|
+
</div>
|
|
246
|
+
<div
|
|
247
|
+
class="memori-tooltip--trigger"
|
|
248
|
+
>
|
|
249
|
+
<span
|
|
250
|
+
aria-label="completionsEnabled"
|
|
251
|
+
>
|
|
252
|
+
<svg
|
|
253
|
+
aria-hidden="true"
|
|
254
|
+
fill="none"
|
|
255
|
+
focusable="false"
|
|
256
|
+
role="img"
|
|
257
|
+
viewBox="0 0 24 24"
|
|
258
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
259
|
+
>
|
|
260
|
+
<g
|
|
261
|
+
clip-rule="evenodd"
|
|
262
|
+
fill="currentColor"
|
|
263
|
+
fill-rule="evenodd"
|
|
264
|
+
>
|
|
265
|
+
<path
|
|
266
|
+
clip-rule="evenodd"
|
|
267
|
+
d="M0 4a4 4 0 014-4h16a4 4 0 014 4v16a4 4 0 01-4 4H4a4 4 0 01-4-4zm4-2.4A2.4 2.4 0 001.6 4v16A2.4 2.4 0 004 22.4h16a2.4 2.4 0 002.4-2.4V4A2.4 2.4 0 0020 1.6z"
|
|
268
|
+
fill-rule="evenodd"
|
|
269
|
+
/>
|
|
270
|
+
<path
|
|
271
|
+
clip-rule="evenodd"
|
|
272
|
+
d="M9.715 8.442a.798.798 0 00-1.43 0l-3.2 6.4a.799.799 0 101.431.716l.579-1.158h3.811l.578 1.158a.8.8 0 001.431-.716zm.391 4.358L9 10.589 7.894 12.8z"
|
|
273
|
+
fill-rule="evenodd"
|
|
274
|
+
/>
|
|
275
|
+
<path
|
|
276
|
+
clip-rule="evenodd"
|
|
277
|
+
d="M17 8c.552 0 1 .358 1 .8v6.4c0 .442-.448.8-1 .8s-1-.358-1-.8V8.8c0-.442.448-.8 1-.8z"
|
|
278
|
+
fill-rule="evenodd"
|
|
279
|
+
/>
|
|
280
|
+
</g>
|
|
281
|
+
</svg>
|
|
282
|
+
</span>
|
|
283
|
+
</div>
|
|
284
|
+
</div>
|
|
285
|
+
</div>
|
|
286
|
+
</div>
|
|
287
|
+
<picture
|
|
288
|
+
class="memori--avatar"
|
|
289
|
+
>
|
|
290
|
+
<source
|
|
291
|
+
src="https://app.twincreator.com/images/twincreator/square_logo.png"
|
|
292
|
+
/>
|
|
293
|
+
<img
|
|
294
|
+
alt="Memori"
|
|
295
|
+
src="https://app.twincreator.com/images/twincreator/square_logo.png"
|
|
296
|
+
/>
|
|
297
|
+
</picture>
|
|
298
|
+
<h2
|
|
299
|
+
class="memori--title"
|
|
300
|
+
>
|
|
301
|
+
Memori
|
|
302
|
+
</h2>
|
|
303
|
+
<div
|
|
304
|
+
class="memori--description"
|
|
305
|
+
>
|
|
306
|
+
<p>
|
|
307
|
+
<span
|
|
308
|
+
class="memori--description-text"
|
|
309
|
+
>
|
|
310
|
+
Lorem ipsum.
|
|
311
|
+
</span>
|
|
312
|
+
</p>
|
|
313
|
+
<button
|
|
314
|
+
class="memori-button memori-button--primary memori-button--rounded memori-button--padded memori--start-button"
|
|
315
|
+
>
|
|
316
|
+
write_and_speak.tryMeButton
|
|
317
|
+
</button>
|
|
318
|
+
<div
|
|
319
|
+
class="memori-tooltip memori-tooltip--align-topLeft memori--completion-provider-status--tooltip"
|
|
320
|
+
>
|
|
321
|
+
<div
|
|
322
|
+
class="memori-tooltip--content"
|
|
323
|
+
>
|
|
324
|
+
<div>
|
|
325
|
+
<p>
|
|
326
|
+
completionProviderDown
|
|
327
|
+
</p>
|
|
328
|
+
<p>
|
|
329
|
+
<a
|
|
330
|
+
href="https://status.openai.com/"
|
|
331
|
+
rel="noopener noreferrer"
|
|
332
|
+
target="_blank"
|
|
333
|
+
>
|
|
334
|
+
completionProviderCheckStatusPage
|
|
335
|
+
</a>
|
|
336
|
+
</p>
|
|
337
|
+
</div>
|
|
338
|
+
</div>
|
|
339
|
+
<div
|
|
340
|
+
class="memori-tooltip--trigger"
|
|
341
|
+
>
|
|
342
|
+
<svg
|
|
343
|
+
aria-hidden="true"
|
|
344
|
+
class="memori--completion-provider-status--icon"
|
|
345
|
+
focusable="false"
|
|
346
|
+
role="img"
|
|
347
|
+
viewBox="0 0 1024 1024"
|
|
348
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
349
|
+
>
|
|
350
|
+
<path
|
|
351
|
+
d="M464 720a48 48 0 1096 0 48 48 0 10-96 0zm16-304v184c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V416c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8zm475.7 440l-416-720c-6.2-10.7-16.9-16-27.7-16s-21.6 5.3-27.7 16l-416 720C56 877.4 71.4 904 96 904h832c24.6 0 40-26.6 27.7-48zm-783.5-27.9L512 239.9l339.8 588.2H172.2z"
|
|
352
|
+
/>
|
|
353
|
+
</svg>
|
|
354
|
+
</div>
|
|
355
|
+
</div>
|
|
356
|
+
<p
|
|
357
|
+
class="memori--start-description"
|
|
358
|
+
>
|
|
359
|
+
write_and_speak.pageTryMeExplanation
|
|
360
|
+
</p>
|
|
361
|
+
</div>
|
|
362
|
+
</div>
|
|
363
|
+
</div>
|
|
364
|
+
`;
|
|
365
|
+
|
|
227
366
|
exports[`renders StartPanel with completions enabled unchanged 1`] = `
|
|
228
367
|
<div>
|
|
229
368
|
<div
|