@memori.ai/memori-react 2.1.0 → 2.2.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.
Files changed (106) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/components/Chat/Chat.d.ts +1 -0
  3. package/dist/components/Chat/Chat.js +2 -2
  4. package/dist/components/Chat/Chat.js.map +1 -1
  5. package/dist/components/ChatBubble/ChatBubble.js +1 -1
  6. package/dist/components/ChatBubble/ChatBubble.js.map +1 -1
  7. package/dist/components/ChatInputs/ChatInputs.css +1 -41
  8. package/dist/components/ChatInputs/ChatInputs.d.ts +1 -0
  9. package/dist/components/ChatInputs/ChatInputs.js +9 -3
  10. package/dist/components/ChatInputs/ChatInputs.js.map +1 -1
  11. package/dist/components/FeedbackButtons/FeedbackButtons.js +1 -1
  12. package/dist/components/FeedbackButtons/FeedbackButtons.js.map +1 -1
  13. package/dist/components/MemoriWidget/MemoriWidget.js +23 -13
  14. package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
  15. package/dist/components/MicrophoneButton/MicrophoneButton.css +101 -0
  16. package/dist/components/MicrophoneButton/MicrophoneButton.d.ts +9 -0
  17. package/dist/components/MicrophoneButton/MicrophoneButton.js +46 -0
  18. package/dist/components/MicrophoneButton/MicrophoneButton.js.map +1 -0
  19. package/dist/components/SettingsDrawer/SettingsDrawer.d.ts +3 -3
  20. package/dist/components/SettingsDrawer/SettingsDrawer.js +8 -6
  21. package/dist/components/SettingsDrawer/SettingsDrawer.js.map +1 -1
  22. package/dist/components/SettingsDrawer/SettingsDrawer.test.js +7 -7
  23. package/dist/components/SettingsDrawer/SettingsDrawer.test.js.map +1 -1
  24. package/dist/components/StartPanel/StartPanel.js +1 -1
  25. package/dist/components/StartPanel/StartPanel.js.map +1 -1
  26. package/dist/components/ui/Button.d.ts +5 -1
  27. package/dist/components/ui/Button.js +1 -1
  28. package/dist/components/ui/Button.js.map +1 -1
  29. package/dist/components/ui/Tooltip.css +33 -2
  30. package/dist/components/ui/Tooltip.d.ts +2 -1
  31. package/dist/components/ui/Tooltip.js +1 -2
  32. package/dist/components/ui/Tooltip.js.map +1 -1
  33. package/dist/components/ui/Tooltip.test.js +16 -0
  34. package/dist/components/ui/Tooltip.test.js.map +1 -1
  35. package/dist/helpers/configuration.js +1 -1
  36. package/dist/helpers/configuration.js.map +1 -1
  37. package/dist/locales/en.json +4 -0
  38. package/dist/locales/it.json +4 -0
  39. package/dist/styles.css +3 -2
  40. package/esm/components/Chat/Chat.d.ts +1 -0
  41. package/esm/components/Chat/Chat.js +2 -2
  42. package/esm/components/Chat/Chat.js.map +1 -1
  43. package/esm/components/ChatBubble/ChatBubble.js +1 -1
  44. package/esm/components/ChatBubble/ChatBubble.js.map +1 -1
  45. package/esm/components/ChatInputs/ChatInputs.css +1 -41
  46. package/esm/components/ChatInputs/ChatInputs.d.ts +1 -0
  47. package/esm/components/ChatInputs/ChatInputs.js +9 -3
  48. package/esm/components/ChatInputs/ChatInputs.js.map +1 -1
  49. package/esm/components/FeedbackButtons/FeedbackButtons.js +1 -1
  50. package/esm/components/FeedbackButtons/FeedbackButtons.js.map +1 -1
  51. package/esm/components/MemoriWidget/MemoriWidget.js +23 -13
  52. package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
  53. package/esm/components/MicrophoneButton/MicrophoneButton.css +101 -0
  54. package/esm/components/MicrophoneButton/MicrophoneButton.d.ts +9 -0
  55. package/esm/components/MicrophoneButton/MicrophoneButton.js +43 -0
  56. package/esm/components/MicrophoneButton/MicrophoneButton.js.map +1 -0
  57. package/esm/components/SettingsDrawer/SettingsDrawer.d.ts +3 -3
  58. package/esm/components/SettingsDrawer/SettingsDrawer.js +9 -7
  59. package/esm/components/SettingsDrawer/SettingsDrawer.js.map +1 -1
  60. package/esm/components/SettingsDrawer/SettingsDrawer.test.js +7 -7
  61. package/esm/components/SettingsDrawer/SettingsDrawer.test.js.map +1 -1
  62. package/esm/components/StartPanel/StartPanel.js +1 -1
  63. package/esm/components/StartPanel/StartPanel.js.map +1 -1
  64. package/esm/components/ui/Button.d.ts +5 -1
  65. package/esm/components/ui/Button.js +1 -1
  66. package/esm/components/ui/Button.js.map +1 -1
  67. package/esm/components/ui/Tooltip.css +33 -2
  68. package/esm/components/ui/Tooltip.d.ts +2 -1
  69. package/esm/components/ui/Tooltip.js +1 -2
  70. package/esm/components/ui/Tooltip.js.map +1 -1
  71. package/esm/components/ui/Tooltip.test.js +16 -0
  72. package/esm/components/ui/Tooltip.test.js.map +1 -1
  73. package/esm/helpers/configuration.js +1 -1
  74. package/esm/helpers/configuration.js.map +1 -1
  75. package/esm/locales/en.json +4 -0
  76. package/esm/locales/it.json +4 -0
  77. package/esm/styles.css +3 -2
  78. package/package.json +1 -1
  79. package/src/components/BlockedMemoriBadge/__snapshots__/BlockedMemoriBadge.test.tsx.snap +4 -4
  80. package/src/components/Chat/Chat.tsx +3 -0
  81. package/src/components/ChatBubble/ChatBubble.tsx +1 -1
  82. package/src/components/ChatBubble/__snapshots__/ChatBubble.test.tsx.snap +1 -1
  83. package/src/components/ChatInputs/ChatInputs.css +1 -41
  84. package/src/components/ChatInputs/ChatInputs.stories.tsx +50 -3
  85. package/src/components/ChatInputs/ChatInputs.tsx +20 -3
  86. package/src/components/ChatInputs/__snapshots__/ChatInputs.test.tsx.snap +160 -85
  87. package/src/components/FeedbackButtons/FeedbackButtons.tsx +1 -1
  88. package/src/components/Header/Header.stories.tsx +3 -0
  89. package/src/components/MemoriWidget/MemoriWidget.tsx +29 -12
  90. package/src/components/MicrophoneButton/MicrophoneButton.css +101 -0
  91. package/src/components/MicrophoneButton/MicrophoneButton.stories.tsx +49 -0
  92. package/src/components/MicrophoneButton/MicrophoneButton.tsx +95 -0
  93. package/src/components/SettingsDrawer/SettingsDrawer.stories.tsx +6 -4
  94. package/src/components/SettingsDrawer/SettingsDrawer.test.tsx +14 -14
  95. package/src/components/SettingsDrawer/SettingsDrawer.tsx +57 -25
  96. package/src/components/StartPanel/StartPanel.tsx +3 -3
  97. package/src/components/ui/Button.tsx +21 -1
  98. package/src/components/ui/Tooltip.css +33 -2
  99. package/src/components/ui/Tooltip.stories.tsx +40 -3
  100. package/src/components/ui/Tooltip.test.tsx +52 -0
  101. package/src/components/ui/Tooltip.tsx +12 -7
  102. package/src/components/ui/__snapshots__/Tooltip.test.tsx.snap +80 -4
  103. package/src/helpers/configuration.ts +1 -1
  104. package/src/locales/en.json +4 -0
  105. package/src/locales/it.json +4 -0
  106. package/src/styles.css +3 -2
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
+ import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import Drawer from '../ui/Drawer';
3
3
  import { useTranslation } from 'react-i18next';
4
4
  import Checkbox from '../ui/Checkbox';
@@ -7,15 +7,17 @@ import { setLocalConfig } from '../../helpers/configuration';
7
7
  import { RadioGroup } from '@headlessui/react';
8
8
  import Button from '../ui/Button';
9
9
  const silenceSeconds = [2, 3, 5, 10, 15, 20, 30, 60];
10
- const SettingsDrawer = ({ open, layout = 'DEFAULT', onClose, continuousSpeech, continuousSpeechTimeout, setContinuousSpeech, setContinuousSpeechTimeout, controlsPosition, setControlsPosition, hideEmissions, setHideEmissions, }) => {
10
+ const SettingsDrawer = ({ open, layout = 'DEFAULT', onClose, microphoneMode = 'HOLD_TO_TALK', continuousSpeechTimeout, setMicrophoneMode, setContinuousSpeechTimeout, controlsPosition, setControlsPosition, hideEmissions, setHideEmissions, }) => {
11
11
  const { t } = useTranslation();
12
- return (_jsxs(Drawer, { className: "memori-settings-drawer", open: open, onClose: onClose, title: t('widget.settings') || 'Settings', description: t('write_and_speak.settingsHeaderLabel'), children: [_jsx("div", { className: "memori-settings-drawer--field", children: _jsx(Checkbox, { label: t('write_and_speak.continuousSpeechLabel'), name: "continuousSpeech", checked: continuousSpeech, onChange: e => {
13
- setContinuousSpeech(e.target.checked);
14
- setLocalConfig('continuousSpeech', e.target.checked);
15
- } }) }), _jsx("div", { className: "memori-settings-drawer--field", children: _jsx(Select, { label: t('write_and_speak.secondsLabel') || 'Seconds', placeholder: t('write_and_speak.secondsLabel') || 'Seconds', options: silenceSeconds.map(s => ({ value: s, label: s })), value: continuousSpeechTimeout, onChange: value => {
12
+ return (_jsxs(Drawer, { className: "memori-settings-drawer", open: open, onClose: onClose, title: t('widget.settings') || 'Settings', description: t('write_and_speak.settingsHeaderLabel'), children: [_jsxs("div", { className: "memori-settings-drawer--field controls", children: [_jsxs("label", { htmlFor: "#microphoneMode", children: [t('write_and_speak.microphoneMode') || 'Microphone mode', ":"] }), _jsxs(RadioGroup, { id: "microphoneMode", name: "microphoneMode", value: microphoneMode, defaultValue: microphoneMode, className: "memori-settings-drawer--microphoneMode-radio", onChange: value => {
13
+ let micMode = value === 'CONTINUOUS' ? 'CONTINUOUS' : 'HOLD_TO_TALK';
14
+ setMicrophoneMode(micMode);
15
+ setLocalConfig('microphoneMode', micMode);
16
+ }, children: [_jsx(RadioGroup.Option, { value: "HOLD_TO_TALK", className: "memori-settings-drawer--microphoneMode-radio-button", children: ({ checked }) => (_jsx(Button, { primary: checked, children: t('write_and_speak.holdToSpeak') || 'Hold to speak' })) }), _jsx(RadioGroup.Option, { value: "CONTINUOUS", className: "memori-settings-drawer--microphoneMode-radio-button", children: ({ checked }) => (_jsx(Button, { primary: checked, children: t('write_and_speak.continuousSpeechLabel') ||
17
+ 'Continuous speech' })) })] })] }), microphoneMode === 'CONTINUOUS' && (_jsx("div", { className: "memori-settings-drawer--field", children: _jsx(Select, { label: t('write_and_speak.secondsLabel') || 'Seconds', placeholder: t('write_and_speak.secondsLabel') || 'Seconds', options: silenceSeconds.map(s => ({ value: s, label: s })), value: continuousSpeechTimeout, onChange: value => {
16
18
  setContinuousSpeechTimeout(value);
17
19
  setLocalConfig('continuousSpeechTimeout', value);
18
- } }) }), layout === 'TOTEM' && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "memori-settings-drawer--field controls", children: [_jsxs("label", { htmlFor: "#controlsPosition", children: [t('write_and_speak.controlsPosition') || 'Controls', ":"] }), _jsxs(RadioGroup, { id: "controlsPosition", name: "controlsPosition", value: controlsPosition, defaultValue: controlsPosition, className: "memori-settings-drawer--controlsposition-radio", onChange: value => {
20
+ } }) })), layout === 'TOTEM' && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "memori-settings-drawer--field controls", children: [_jsxs("label", { htmlFor: "#controlsPosition", children: [t('write_and_speak.controlsPosition') || 'Controls', ":"] }), _jsxs(RadioGroup, { id: "controlsPosition", name: "controlsPosition", value: controlsPosition, defaultValue: controlsPosition, className: "memori-settings-drawer--controlsposition-radio", onChange: value => {
19
21
  setControlsPosition(value);
20
22
  setLocalConfig('controlsPosition', value);
21
23
  }, children: [_jsx(RadioGroup.Option, { value: "center", className: "memori-settings-drawer--controlsposition-radio-button", children: ({ checked }) => (_jsx(Button, { primary: checked, children: t('center') || 'Center' })) }), _jsx(RadioGroup.Option, { value: "bottom", className: "memori-settings-drawer--controlsposition-radio-button", children: ({ checked }) => (_jsx(Button, { primary: checked, children: t('bottom') || 'Bottom' })) })] })] }), _jsx("div", { className: "memori-settings-drawer--field", children: _jsx(Checkbox, { label: t('write_and_speak.hideEmissionsLabel'), name: "hideControls", checked: hideEmissions, onChange: e => {
@@ -1 +1 @@
1
- {"version":3,"file":"SettingsDrawer.js","sourceRoot":"","sources":["../../../src/components/SettingsDrawer/SettingsDrawer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SettingsDrawer.js","sourceRoot":"","sources":["../../../src/components/SettingsDrawer/SettingsDrawer.tsx"],"names":[],"mappings":"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"}
@@ -10,31 +10,31 @@ beforeEach(() => {
10
10
  }));
11
11
  });
12
12
  it('renders SettingsDrawer unchanged', () => {
13
- const { container } = render(_jsx(SettingsDrawer, { open: false, onClose: jest.fn(), continuousSpeech: false, continuousSpeechTimeout: 2, setContinuousSpeech: jest.fn(), setContinuousSpeechTimeout: jest.fn(), controlsPosition: "bottom", setControlsPosition: jest.fn(), hideEmissions: false, setHideEmissions: jest.fn() }));
13
+ const { container } = render(_jsx(SettingsDrawer, { open: false, onClose: jest.fn(), microphoneMode: "HOLD_TO_TALK", setMicrophoneMode: jest.fn(), continuousSpeechTimeout: 2, setContinuousSpeechTimeout: jest.fn(), controlsPosition: "bottom", setControlsPosition: jest.fn(), hideEmissions: false, setHideEmissions: jest.fn() }));
14
14
  expect(container).toMatchSnapshot();
15
15
  });
16
16
  it('renders SettingsDrawer open unchanged', () => {
17
- const { container } = render(_jsx(SettingsDrawer, { open: true, onClose: jest.fn(), continuousSpeech: false, continuousSpeechTimeout: 2, setContinuousSpeech: jest.fn(), setContinuousSpeechTimeout: jest.fn(), controlsPosition: "bottom", setControlsPosition: jest.fn(), hideEmissions: false, setHideEmissions: jest.fn() }));
17
+ const { container } = render(_jsx(SettingsDrawer, { open: true, onClose: jest.fn(), microphoneMode: "HOLD_TO_TALK", setMicrophoneMode: jest.fn(), continuousSpeechTimeout: 2, setContinuousSpeechTimeout: jest.fn(), controlsPosition: "bottom", setControlsPosition: jest.fn(), hideEmissions: false, setHideEmissions: jest.fn() }));
18
18
  expect(container).toMatchSnapshot();
19
19
  });
20
20
  it('renders SettingsDrawer open with continuous speech enabled unchanged', () => {
21
- const { container } = render(_jsx(SettingsDrawer, { open: true, onClose: jest.fn(), continuousSpeech: true, continuousSpeechTimeout: 2, setContinuousSpeech: jest.fn(), setContinuousSpeechTimeout: jest.fn(), controlsPosition: "bottom", setControlsPosition: jest.fn(), hideEmissions: false, setHideEmissions: jest.fn() }));
21
+ const { container } = render(_jsx(SettingsDrawer, { open: true, onClose: jest.fn(), microphoneMode: "CONTINUOUS", setMicrophoneMode: jest.fn(), continuousSpeechTimeout: 2, setContinuousSpeechTimeout: jest.fn(), controlsPosition: "bottom", setControlsPosition: jest.fn(), hideEmissions: false, setHideEmissions: jest.fn() }));
22
22
  expect(container).toMatchSnapshot();
23
23
  });
24
24
  it('renders SettingsDrawer open with non-default continuous speech timeout unchanged', () => {
25
- const { container } = render(_jsx(SettingsDrawer, { open: true, onClose: jest.fn(), continuousSpeech: false, continuousSpeechTimeout: 10, setContinuousSpeech: jest.fn(), setContinuousSpeechTimeout: jest.fn(), controlsPosition: "bottom", setControlsPosition: jest.fn(), hideEmissions: false, setHideEmissions: jest.fn() }));
25
+ const { container } = render(_jsx(SettingsDrawer, { open: true, onClose: jest.fn(), microphoneMode: "CONTINUOUS", setMicrophoneMode: jest.fn(), continuousSpeechTimeout: 10, setContinuousSpeechTimeout: jest.fn(), controlsPosition: "bottom", setControlsPosition: jest.fn(), hideEmissions: false, setHideEmissions: jest.fn() }));
26
26
  expect(container).toMatchSnapshot();
27
27
  });
28
28
  it('renders SettingsDrawer for totem layout open unchanged', () => {
29
- const { container } = render(_jsx(SettingsDrawer, { layout: "TOTEM", open: true, onClose: jest.fn(), continuousSpeech: false, continuousSpeechTimeout: 2, setContinuousSpeech: jest.fn(), setContinuousSpeechTimeout: jest.fn(), controlsPosition: "bottom", setControlsPosition: jest.fn(), hideEmissions: false, setHideEmissions: jest.fn() }));
29
+ const { container } = render(_jsx(SettingsDrawer, { layout: "TOTEM", open: true, onClose: jest.fn(), microphoneMode: "HOLD_TO_TALK", setMicrophoneMode: jest.fn(), continuousSpeechTimeout: 2, setContinuousSpeechTimeout: jest.fn(), controlsPosition: "bottom", setControlsPosition: jest.fn(), hideEmissions: false, setHideEmissions: jest.fn() }));
30
30
  expect(container).toMatchSnapshot();
31
31
  });
32
32
  it('renders SettingsDrawer for totem layout open with controls at center unchanged', () => {
33
- const { container } = render(_jsx(SettingsDrawer, { layout: "TOTEM", open: true, onClose: jest.fn(), continuousSpeech: false, continuousSpeechTimeout: 2, setContinuousSpeech: jest.fn(), setContinuousSpeechTimeout: jest.fn(), controlsPosition: "center", setControlsPosition: jest.fn(), hideEmissions: false, setHideEmissions: jest.fn() }));
33
+ const { container } = render(_jsx(SettingsDrawer, { layout: "TOTEM", open: true, onClose: jest.fn(), microphoneMode: "HOLD_TO_TALK", setMicrophoneMode: jest.fn(), continuousSpeechTimeout: 2, setContinuousSpeechTimeout: jest.fn(), controlsPosition: "center", setControlsPosition: jest.fn(), hideEmissions: false, setHideEmissions: jest.fn() }));
34
34
  expect(container).toMatchSnapshot();
35
35
  });
36
36
  it('renders SettingsDrawer for totem layout with continuous speech and hide emissions unchanged', () => {
37
- const { container } = render(_jsx(SettingsDrawer, { layout: "TOTEM", open: true, onClose: jest.fn(), continuousSpeech: true, continuousSpeechTimeout: 2, setContinuousSpeech: jest.fn(), setContinuousSpeechTimeout: jest.fn(), controlsPosition: "bottom", setControlsPosition: jest.fn(), hideEmissions: true, setHideEmissions: jest.fn() }));
37
+ const { container } = render(_jsx(SettingsDrawer, { layout: "TOTEM", open: true, onClose: jest.fn(), microphoneMode: "HOLD_TO_TALK", setMicrophoneMode: jest.fn(), continuousSpeechTimeout: 2, setContinuousSpeechTimeout: jest.fn(), controlsPosition: "bottom", setControlsPosition: jest.fn(), hideEmissions: true, setHideEmissions: jest.fn() }));
38
38
  expect(container).toMatchSnapshot();
39
39
  });
40
40
  //# sourceMappingURL=SettingsDrawer.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SettingsDrawer.test.js","sourceRoot":"","sources":["../../../src/components/SettingsDrawer/SettingsDrawer.test.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SettingsDrawer.test.js","sourceRoot":"","sources":["../../../src/components/SettingsDrawer/SettingsDrawer.test.tsx"],"names":[],"mappings":"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"}
@@ -43,7 +43,7 @@ const StartPanel = ({ memori, tenant, gamificationLevel, language, userLang, set
43
43
  baseURL: baseUrl,
44
44
  apiURL: apiUrl,
45
45
  })}")`,
46
- }, children: [!!((_a = gamificationLevel === null || gamificationLevel === void 0 ? void 0 : gamificationLevel.badge) === null || _a === void 0 ? void 0 : _a.length) && (_jsx("div", { className: "memori--gamification-badge", children: _jsx(Tooltip, { alignLeft: true, content: `${t('gamification.level')} ${gamificationLevel.badge}, ${gamificationLevel.points} ${t('gamification.points')}`, children: _jsx("span", { "aria-label": `${t('gamification.level')} ${gamificationLevel.badge}, ${gamificationLevel.points} ${t('gamification.points')}`, children: gamificationLevel.badge }) }) })), !!memori.enableCompletions && (_jsx("div", { className: "memori--completions-enabled", children: _jsx(Tooltip, { alignLeft: true, content: t('completionsEnabled'), children: _jsx("span", { "aria-label": t('completionsEnabled') || 'Completions', children: _jsx(AI, {}) }) }) })), !!memori.nsfw && (_jsx("div", { className: "memori--nsfw", children: _jsx(Tooltip, { alignLeft: true, content: t('nsfw'), children: _jsx("span", { title: t('nsfw') || 'NSFW', children: "\uD83D\uDD1E" }) }) }))] }), _jsxs("picture", { className: "memori--avatar", children: [_jsx("source", { src: (_b = memori.avatarURL) !== null && _b !== void 0 ? _b : getResourceUrl({
46
+ }, children: [!!((_a = gamificationLevel === null || gamificationLevel === void 0 ? void 0 : gamificationLevel.badge) === null || _a === void 0 ? void 0 : _a.length) && (_jsx("div", { className: "memori--gamification-badge", children: _jsx(Tooltip, { align: "left", content: `${t('gamification.level')} ${gamificationLevel.badge}, ${gamificationLevel.points} ${t('gamification.points')}`, children: _jsx("span", { "aria-label": `${t('gamification.level')} ${gamificationLevel.badge}, ${gamificationLevel.points} ${t('gamification.points')}`, children: gamificationLevel.badge }) }) })), !!memori.enableCompletions && (_jsx("div", { className: "memori--completions-enabled", children: _jsx(Tooltip, { align: "left", content: t('completionsEnabled'), children: _jsx("span", { "aria-label": t('completionsEnabled') || 'Completions', children: _jsx(AI, {}) }) }) })), !!memori.nsfw && (_jsx("div", { className: "memori--nsfw", children: _jsx(Tooltip, { align: "left", content: t('nsfw'), children: _jsx("span", { title: t('nsfw') || 'NSFW', children: "\uD83D\uDD1E" }) }) }))] }), _jsxs("picture", { className: "memori--avatar", children: [_jsx("source", { src: (_b = memori.avatarURL) !== null && _b !== void 0 ? _b : getResourceUrl({
47
47
  type: 'avatar',
48
48
  tenantID: tenant === null || tenant === void 0 ? void 0 : tenant.id,
49
49
  resourceURI: memori.avatarURL,
@@ -1 +1 @@
1
- {"version":3,"file":"StartPanel.js","sourceRoot":"","sources":["../../../src/components/StartPanel/StartPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StartPanel.js","sourceRoot":"","sources":["../../../src/components/StartPanel/StartPanel.tsx"],"names":[],"mappings":"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"}
@@ -16,7 +16,11 @@ export interface Props {
16
16
  id?: string;
17
17
  htmlType?: 'button' | 'submit' | 'reset';
18
18
  onClick?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
19
- onTouchEnd?: (event: React.TouchEvent<HTMLButtonElement>) => void;
19
+ onMouseDown?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
20
+ onMouseUp?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
21
+ onMouseLeave?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
22
+ onTouchStart?: (event: React.TouchEvent<HTMLButtonElement> | React.MouseEvent) => void;
23
+ onTouchEnd?: (event: React.TouchEvent<HTMLButtonElement> | React.MouseEvent) => void;
20
24
  }
21
25
  declare const Button: FC<Props>;
22
26
  export default Button;
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import cx from 'classnames';
3
3
  import Loading from '../icons/Loading';
4
- const Button = ({ primary = false, outlined = false, ghost = false, padded = true, shape = 'rounded', danger = false, loading = false, disabled = false, block = false, icon, className, title, id, htmlType, onClick, onTouchEnd, children, }) => (_jsxs("button", { id: id, type: htmlType, onClick: onClick, onTouchEnd: onTouchEnd, title: title, disabled: loading || disabled, className: cx('memori-button', {
4
+ const Button = ({ primary = false, outlined = false, ghost = false, padded = true, shape = 'rounded', danger = false, loading = false, disabled = false, block = false, icon, className, title, id, htmlType, onClick, onMouseDown, onMouseUp, onMouseLeave, onTouchStart, onTouchEnd, children, }) => (_jsxs("button", { id: id, type: htmlType, onClick: onClick, onMouseDown: onMouseDown, onMouseUp: onMouseUp, onMouseLeave: onMouseLeave, onTouchStart: onTouchStart, onTouchEnd: onTouchEnd, title: title, disabled: loading || disabled, className: cx('memori-button', {
5
5
  'memori-button--primary': primary,
6
6
  'memori-button--outlined': outlined,
7
7
  'memori-button--ghost': ghost,
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/ui/Button.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,OAAO,MAAM,kBAAkB,CAAC;AA0BvC,MAAM,MAAM,GAAc,CAAC,EACzB,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,KAAK,GAAG,KAAK,EACb,MAAM,GAAG,IAAI,EACb,KAAK,GAAG,SAAS,EACjB,MAAM,GAAG,KAAK,EACd,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,KAAK,GAAG,KAAK,EACb,IAAI,EACJ,SAAS,EACT,KAAK,EACL,EAAE,EACF,QAAQ,EACR,OAAO,EACP,UAAU,EACV,QAAQ,GACT,EAAE,EAAE,CAAC,CACJ,kBACE,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,OAAO,IAAI,QAAQ,EAC7B,SAAS,EAAE,EAAE,CACX,eAAe,EACf;QACE,wBAAwB,EAAE,OAAO;QACjC,yBAAyB,EAAE,QAAQ;QACnC,sBAAsB,EAAE,KAAK;QAC7B,uBAAuB,EAAE,KAAK,KAAK,QAAQ;QAC3C,wBAAwB,EAAE,KAAK,KAAK,SAAS;QAC7C,uBAAuB,EAAE,KAAK,KAAK,QAAQ;QAC3C,uBAAuB,EAAE,MAAM;QAC/B,sBAAsB,EAAE,KAAK;QAC7B,0BAA0B,EAAE,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,QAAQ;QACzD,0BAA0B,EAAE,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ;QAC1D,uBAAuB,EAAE,MAAM;QAC/B,wBAAwB,EAAE,OAAO;KAClC,EACD,SAAS,CACV,aAEA,IAAI,IAAI,CAAC,OAAO,IAAI,eAAM,SAAS,EAAC,qBAAqB,YAAE,IAAI,GAAQ,EACvE,OAAO,IAAI,CACV,eAAM,SAAS,EAAC,kCAAkC,YAChD,KAAC,OAAO,IAAC,OAAO,SAAG,GACd,CACR,EACA,QAAQ,IACF,CACV,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/ui/Button.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAsCvC,MAAM,MAAM,GAAc,CAAC,EACzB,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,KAAK,GAAG,KAAK,EACb,MAAM,GAAG,IAAI,EACb,KAAK,GAAG,SAAS,EACjB,MAAM,GAAG,KAAK,EACd,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,KAAK,GAAG,KAAK,EACb,IAAI,EACJ,SAAS,EACT,KAAK,EACL,EAAE,EACF,QAAQ,EACR,OAAO,EACP,WAAW,EACX,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,QAAQ,GACT,EAAE,EAAE,CAAC,CACJ,kBACE,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,OAAO,IAAI,QAAQ,EAC7B,SAAS,EAAE,EAAE,CACX,eAAe,EACf;QACE,wBAAwB,EAAE,OAAO;QACjC,yBAAyB,EAAE,QAAQ;QACnC,sBAAsB,EAAE,KAAK;QAC7B,uBAAuB,EAAE,KAAK,KAAK,QAAQ;QAC3C,wBAAwB,EAAE,KAAK,KAAK,SAAS;QAC7C,uBAAuB,EAAE,KAAK,KAAK,QAAQ;QAC3C,uBAAuB,EAAE,MAAM;QAC/B,sBAAsB,EAAE,KAAK;QAC7B,0BAA0B,EAAE,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,QAAQ;QACzD,0BAA0B,EAAE,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ;QAC1D,uBAAuB,EAAE,MAAM;QAC/B,wBAAwB,EAAE,OAAO;KAClC,EACD,SAAS,CACV,aAEA,IAAI,IAAI,CAAC,OAAO,IAAI,eAAM,SAAS,EAAC,qBAAqB,YAAE,IAAI,GAAQ,EACvE,OAAO,IAAI,CACV,eAAM,SAAS,EAAC,kCAAkC,YAChD,KAAC,OAAO,IAAC,OAAO,SAAG,GACd,CACR,EACA,QAAQ,IACF,CACV,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -1,3 +1,5 @@
1
+ /* stylelint-disable no-descending-specificity */
2
+
1
3
  .memori-tooltip {
2
4
  position: relative;
3
5
  display: inline-block;
@@ -23,7 +25,8 @@
23
25
  transition: 0.3s 0.1s all ease;
24
26
  }
25
27
 
26
- .memori-tooltip.memori-tooltip--align-left .memori-tooltip--content {
28
+ .memori-tooltip.memori-tooltip--align-left .memori-tooltip--content,
29
+ .memori-tooltip.memori-tooltip--align-topLeft .memori-tooltip--content {
27
30
  right: 100%;
28
31
  left: initial;
29
32
  margin: initial;
@@ -52,6 +55,15 @@
52
55
  margin-left: 0;
53
56
  }
54
57
 
58
+ .memori-tooltip.memori-tooltip--align-topRight .memori-tooltip--content::before {
59
+ top: 100%;
60
+ right: auto;
61
+ left: 10px;
62
+ border-color: rgba(0, 0, 0, 0.8) transparent transparent transparent;
63
+ margin-top: 10px;
64
+ margin-left: 5px;
65
+ }
66
+
55
67
  .memori-tooltip:not(.memori-tooltip--disabled).memori-tooltip--visible .memori-tooltip--content,
56
68
  .memori-tooltip:not(.memori-tooltip--disabled).memori-tooltip--visible .memori-tooltip--content::before {
57
69
  display: block;
@@ -69,6 +81,25 @@
69
81
  opacity: 1;
70
82
  }
71
83
 
84
+ .memori-tooltip.memori-tooltip--align-topRight:not(.memori-tooltip--disabled).memori-tooltip--visible .memori-tooltip--content,
85
+ .memori-tooltip.memori-tooltip--align-topRight:not(.memori-tooltip--disabled):not(.memori-tooltip--visible):hover .memori-tooltip--content {
86
+ transform: translateY(-150%) translateX(-33%);
87
+ }
88
+
89
+ .memori-tooltip.memori-tooltip--align-topLeft .memori-tooltip--content::before {
90
+ top: 100%;
91
+ right: 10px;
92
+ left: auto;
93
+ border-color: rgba(0, 0, 0, 0.8) transparent transparent transparent;
94
+ margin-top: 10px;
95
+ margin-left: 5px;
96
+ }
97
+
98
+ .memori-tooltip.memori-tooltip--align-topLeft:not(.memori-tooltip--disabled).memori-tooltip--visible .memori-tooltip--content,
99
+ .memori-tooltip.memori-tooltip--align-topLeft:not(.memori-tooltip--disabled):not(.memori-tooltip--visible):hover .memori-tooltip--content {
100
+ transform: translateY(-150%) translateX(33%);
101
+ }
102
+
72
103
  .memori-tooltip:not(.memori-tooltip--disabled).memori-tooltip--visible .memori-tooltip--content a,
73
104
  .memori-tooltip:not(.memori-tooltip--disabled):not(.memori-tooltip--visible):hover .memori-tooltip--content a {
74
105
  color: #fff;
@@ -77,4 +108,4 @@
77
108
 
78
109
  .memori-tooltip.memori-tooltip--disabled {
79
110
  cursor: not-allowed;
80
- }
111
+ }
@@ -2,7 +2,8 @@ import React, { FC } from 'react';
2
2
  export interface Props {
3
3
  content: string | JSX.Element | React.ReactNode;
4
4
  className?: string;
5
- alignLeft?: boolean;
5
+ align?: 'left' | 'right' | 'topLeft' | 'topRight';
6
+ alignTop?: boolean;
6
7
  disabled?: boolean;
7
8
  children: React.ReactNode;
8
9
  visible?: boolean;
@@ -1,7 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import cx from 'classnames';
3
- const Tooltip = ({ content, className, alignLeft = false, disabled = false, visible = false, children, }) => (_jsxs("div", { className: cx('memori-tooltip', className, {
4
- 'memori-tooltip--align-left': alignLeft,
3
+ const Tooltip = ({ content, className, align = 'right', disabled = false, visible = false, children, }) => (_jsxs("div", { className: cx('memori-tooltip', `memori-tooltip--align-${align}`, className, {
5
4
  'memori-tooltip--disabled': disabled,
6
5
  'memori-tooltip--visible': visible,
7
6
  }), children: [_jsx("div", { className: "memori-tooltip--content", children: content }), _jsx("div", { className: "memori-tooltip--trigger", children: children })] }));
@@ -1 +1 @@
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,SAAS,GAAG,KAAK,EACjB,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,KAAK,EACf,QAAQ,GACT,EAAE,EAAE,CAAC,CACJ,eACE,SAAS,EAAE,EAAE,CAAC,gBAAgB,EAAE,SAAS,EAAE;QACzC,4BAA4B,EAAE,SAAS;QACvC,0BAA0B,EAAE,QAAQ;QACpC,yBAAyB,EAAE,OAAO;KACnC,CAAC,aAEF,cAAK,SAAS,EAAC,yBAAyB,YAAE,OAAO,GAAO,EACxD,cAAK,SAAS,EAAC,yBAAyB,YAAE,QAAQ,GAAO,IACrD,CACP,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../../../src/components/ui/Tooltip.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,YAAY,CAAC;AAY5B,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"}
@@ -17,4 +17,20 @@ it('renders Tooltip visible unchanged', () => {
17
17
  const { container } = render(_jsx(Tooltip, { content: "Here is some tooltip content by default as I am controlled", visible: true, children: "Hover me" }));
18
18
  expect(container).toMatchSnapshot();
19
19
  });
20
+ it('renders Tooltip aligned left unchanged', () => {
21
+ const { container } = render(_jsx(Tooltip, { content: "Here is some tooltip content by default as I am controlled", visible: true, align: "left", children: "Hover me" }));
22
+ expect(container).toMatchSnapshot();
23
+ });
24
+ it('renders Tooltip aligned top left unchanged', () => {
25
+ const { container } = render(_jsx(Tooltip, { content: "Here is some tooltip content by default as I am controlled", visible: true, align: "topLeft", children: "Hover me" }));
26
+ expect(container).toMatchSnapshot();
27
+ });
28
+ it('renders Tooltip aligned right unchanged', () => {
29
+ const { container } = render(_jsx(Tooltip, { content: "Here is some tooltip content by default as I am controlled", visible: true, align: "right", children: "Hover me" }));
30
+ expect(container).toMatchSnapshot();
31
+ });
32
+ it('renders Tooltip aligned top right unchanged', () => {
33
+ const { container } = render(_jsx(Tooltip, { content: "Here is some tooltip content by default as I am controlled", visible: true, align: "topRight", children: "Hover me" }));
34
+ expect(container).toMatchSnapshot();
35
+ });
20
36
  //# sourceMappingURL=Tooltip.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.test.js","sourceRoot":"","sources":["../../../src/components/ui/Tooltip.test.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,OAAO,MAAM,WAAW,CAAC;AAEhC,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACnC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IAAC,OAAO,EAAC,8BAA8B,yBAAmB,CACnE,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;IACpD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IACN,OAAO,EACL,6DAEE,YAAG,IAAI,EAAC,mBAAmB,EAAC,GAAG,EAAC,qBAAqB,EAAC,MAAM,EAAC,QAAQ,sBAEjE,sBAEF,yBAIE,CACX,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAC5C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IAAC,OAAO,EAAC,gDAAgD,EAAC,QAAQ,+BAEhE,CACX,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;IAC3C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IACN,OAAO,EAAC,4DAA4D,EACpE,OAAO,+BAGC,CACX,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"Tooltip.test.js","sourceRoot":"","sources":["../../../src/components/ui/Tooltip.test.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,OAAO,MAAM,WAAW,CAAC;AAEhC,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACnC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IAAC,OAAO,EAAC,8BAA8B,yBAAmB,CACnE,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;IACpD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IACN,OAAO,EACL,6DAEE,YAAG,IAAI,EAAC,mBAAmB,EAAC,GAAG,EAAC,qBAAqB,EAAC,MAAM,EAAC,QAAQ,sBAEjE,sBAEF,yBAIE,CACX,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAC5C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IAAC,OAAO,EAAC,gDAAgD,EAAC,QAAQ,+BAEhE,CACX,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;IAC3C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IACN,OAAO,EAAC,4DAA4D,EACpE,OAAO,+BAGC,CACX,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;IAChD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IACN,OAAO,EAAC,4DAA4D,EACpE,OAAO,QACP,KAAK,EAAC,MAAM,yBAGJ,CACX,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;IACpD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IACN,OAAO,EAAC,4DAA4D,EACpE,OAAO,QACP,KAAK,EAAC,SAAS,yBAGP,CACX,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACjD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IACN,OAAO,EAAC,4DAA4D,EACpE,OAAO,QACP,KAAK,EAAC,OAAO,yBAGL,CACX,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACrD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IACN,OAAO,EAAC,4DAA4D,EACpE,OAAO,QACP,KAAK,EAAC,UAAU,yBAGR,CACX,CAAC;IACF,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  export const keys = {
2
2
  muteSpeaker: '@memori:muteSpeaker',
3
- continuousSpeech: '@memori:continuousSpeech',
3
+ microphoneMode: '@memori:microphoneMode',
4
4
  continuousSpeechTimeout: '@memori:continuousSpeechTimeout',
5
5
  sendOnEnter: '@memori:sendOnEnter',
6
6
  birthDate: '@memori:birthDate',
@@ -1 +1 @@
1
- {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../src/helpers/configuration.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAA8B;IAC7C,WAAW,EAAE,qBAAqB;IAClC,gBAAgB,EAAE,0BAA0B;IAC5C,uBAAuB,EAAE,iCAAiC;IAC1D,WAAW,EAAE,qBAAqB;IAClC,SAAS,EAAE,mBAAmB;IAC9B,gBAAgB,EAAE,0BAA0B;IAC5C,aAAa,EAAE,uBAAuB;CACvC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAO,GAAW,EAAE,YAAkB,EAAQ,EAAE;;IAC5E,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,MAAA,IAAI,CAAC,GAAG,CAAC,mCAAI,GAAG,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK;QAAE,OAAO,YAAY,CAAC;IAEhC,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAoB,CAAC;KAC7C;IAAC,WAAM;QACN,OAAO,KAAwB,CAAC;KACjC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,KAAU,EAAQ,EAAE;;IAC9D,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,MAAA,IAAI,CAAC,GAAG,CAAC,mCAAI,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;AAClE,CAAC,CAAC"}
1
+ {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../src/helpers/configuration.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAA8B;IAC7C,WAAW,EAAE,qBAAqB;IAClC,cAAc,EAAE,wBAAwB;IACxC,uBAAuB,EAAE,iCAAiC;IAC1D,WAAW,EAAE,qBAAqB;IAClC,SAAS,EAAE,mBAAmB;IAC9B,gBAAgB,EAAE,0BAA0B;IAC5C,aAAa,EAAE,uBAAuB;CACvC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAO,GAAW,EAAE,YAAkB,EAAQ,EAAE;;IAC5E,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,MAAA,IAAI,CAAC,GAAG,CAAC,mCAAI,GAAG,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK;QAAE,OAAO,YAAY,CAAC;IAEhC,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAoB,CAAC;KAC7C;IAAC,WAAM;QACN,OAAO,KAAwB,CAAC;KACjC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,KAAU,EAAQ,EAAE;;IAC9D,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,MAAA,IAAI,CAAC,GAAG,CAAC,mCAAI,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;AAClE,CAAC,CAAC"}
@@ -70,6 +70,10 @@
70
70
  "conversationStartedLabel": "Conversation started on",
71
71
  "settingsHeaderLabel": "Setup here if you want to set the memori as continuous speech, and change the silence seconds if you want to customize them.",
72
72
  "continuousSpeechLabel": "Continuous speech",
73
+ "holdToSpeak": "Hold to speak",
74
+ "releaseToEndListening": "Release to end listening",
75
+ "pressAndHoldToSpeak": "Press and hold to speak",
76
+ "microphoneMode": "Microphone mode",
73
77
  "hideEmissionsLabel": "Hide text emitted by the Twin",
74
78
  "secondsLabel": "Set seconds",
75
79
  "controlsPosition": "Controls position",
@@ -70,6 +70,10 @@
70
70
  "conversationStartedLabel": "Conversazione avvenuta il",
71
71
  "settingsHeaderLabel": "Configura qui il memori se vuoi impostare una conversazione continua. Setta i secondi di silenzio prima dell'invio.",
72
72
  "continuousSpeechLabel": "Conversazione continua",
73
+ "holdToSpeak": "Tieni premuto per parlare",
74
+ "releaseToEndListening": "Rilascia per smettere di parlare",
75
+ "pressAndHoldToSpeak": "Premi e tieni premuto per parlare",
76
+ "microphoneMode": "Modalità microfono",
73
77
  "hideEmissionsLabel": "Nascondi testo emesso dal Twin",
74
78
  "secondsLabel": "Secondi",
75
79
  "controlsPosition": "Posizione dei controlli",
package/esm/styles.css CHANGED
@@ -17,6 +17,7 @@
17
17
  @import url('./components/Chat/Chat.css');
18
18
  @import url('./components/ChatBubble/ChatBubble.css');
19
19
  @import url('./components/ChatInputs/ChatInputs.css');
20
+ @import url('./components/MicrophoneButton/MicrophoneButton.css');
20
21
  @import url('./components/ChatTextArea/ChatTextArea.css');
21
22
  @import url('./components/CustomGLBModelViewer/ModelViewer.css');
22
23
  @import url('./components/SettingsDrawer/SettingsDrawer.css');
@@ -55,7 +56,7 @@
55
56
 
56
57
  memori-client,
57
58
  memori-client #root,
58
- memori-client + #headlessui-portal-root,
59
+ memori-client+#headlessui-portal-root,
59
60
  body.sb-show-main #root,
60
61
  body.sb-show-main #headlessui-portal-root,
61
62
  #storybook-root,
@@ -83,4 +84,4 @@ body.sb-show-main #headlessui-portal-root,
83
84
  --memori-modal--width: 100%;
84
85
  --memori-modal--width--md: 80%;
85
86
  --memori-error-color: #ff4d4f;
86
- }
87
+ }
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "2.1.0",
2
+ "version": "2.2.0",
3
3
  "name": "@memori.ai/memori-react",
4
4
  "author": "Memori Srl",
5
5
  "main": "dist/index.js",
@@ -3,7 +3,7 @@
3
3
  exports[`renders BlockedMemoriBadge unchanged 1`] = `
4
4
  <div>
5
5
  <div
6
- class="memori-tooltip blocked-memori-badge--tooltip"
6
+ class="memori-tooltip memori-tooltip--align-right blocked-memori-badge--tooltip"
7
7
  >
8
8
  <div
9
9
  class="memori-tooltip--content"
@@ -41,7 +41,7 @@ exports[`renders BlockedMemoriBadge unchanged 1`] = `
41
41
  exports[`renders BlockedMemoriBadge with giver info unchanged 1`] = `
42
42
  <div>
43
43
  <div
44
- class="memori-tooltip blocked-memori-badge--tooltip"
44
+ class="memori-tooltip memori-tooltip--align-right blocked-memori-badge--tooltip"
45
45
  >
46
46
  <div
47
47
  class="memori-tooltip--content"
@@ -83,7 +83,7 @@ memoriBlockedGiverHelper
83
83
  exports[`renders BlockedMemoriBadge with margin left unchanged 1`] = `
84
84
  <div>
85
85
  <div
86
- class="memori-tooltip blocked-memori-badge--tooltip"
86
+ class="memori-tooltip memori-tooltip--align-right blocked-memori-badge--tooltip"
87
87
  >
88
88
  <div
89
89
  class="memori-tooltip--content"
@@ -121,7 +121,7 @@ exports[`renders BlockedMemoriBadge with margin left unchanged 1`] = `
121
121
  exports[`renders BlockedMemoriBadge with title unchanged 1`] = `
122
122
  <div>
123
123
  <div
124
- class="memori-tooltip blocked-memori-badge--tooltip"
124
+ class="memori-tooltip memori-tooltip--align-right blocked-memori-badge--tooltip"
125
125
  >
126
126
  <div
127
127
  class="memori-tooltip--content"
@@ -34,6 +34,7 @@ export interface Props {
34
34
  client: ReturnType<typeof memoriApiClient>;
35
35
  selectReceiverTag: (tag: string) => Promise<void>;
36
36
  preview?: boolean;
37
+ microphoneMode?: 'CONTINUOUS' | 'HOLD_TO_TALK';
37
38
  sendOnEnter?: 'keypress' | 'click';
38
39
  setSendOnEnter: (sendOnEnter: 'keypress' | 'click') => void;
39
40
  attachmentsMenuOpen?: 'link' | 'media';
@@ -72,6 +73,7 @@ const Chat: React.FC<Props> = ({
72
73
  instruct = false,
73
74
  showInputs = true,
74
75
  showMicrophone = false,
76
+ microphoneMode = 'HOLD_TO_TALK',
75
77
  sendOnEnter,
76
78
  setSendOnEnter,
77
79
  attachmentsMenuOpen,
@@ -309,6 +311,7 @@ const Chat: React.FC<Props> = ({
309
311
  instruct={instruct}
310
312
  authToken={authToken}
311
313
  sendMessage={sendMessage}
314
+ microphoneMode={microphoneMode}
312
315
  sendOnEnter={sendOnEnter}
313
316
  setSendOnEnter={setSendOnEnter}
314
317
  attachmentsMenuOpen={attachmentsMenuOpen}
@@ -138,7 +138,7 @@ const ChatBubble: React.FC<Props> = ({
138
138
 
139
139
  {message.generatedByAI && showAIicon && (
140
140
  <Tooltip
141
- alignLeft
141
+ align="left"
142
142
  content={t('generatedByAI')}
143
143
  className="memori-chat--bubble-ai-icon"
144
144
  >
@@ -74,7 +74,7 @@ exports[`renders ChatBubble with msg generated by AI unchanged 1`] = `
74
74
  class="memori-chat--bubble-addon"
75
75
  >
76
76
  <div
77
- class="memori-tooltip memori-chat--bubble-ai-icon memori-tooltip--align-left"
77
+ class="memori-tooltip memori-tooltip--align-left memori-chat--bubble-ai-icon"
78
78
  >
79
79
  <div
80
80
  class="memori-tooltip--content"
@@ -18,44 +18,4 @@
18
18
  .memori-chat-inputs .memori--conversation-button {
19
19
  background: #fff;
20
20
  color: #000;
21
- }
22
-
23
- .memori-chat-inputs--mic {
24
- z-index: 1;
25
- margin-left: 0.33rem;
26
- }
27
-
28
- .memori-chat-inputs--mic svg {
29
- color: var(--memori-primary-text, #fff);
30
- font-size: 1em;
31
- }
32
-
33
- .memori-chat-inputs--mic:hover,
34
- .memori-chat-inputs--mic:active,
35
- .memori-chat-inputs--mic:focus {
36
- border-color: var(--memori-primary) !important;
37
- color: var(--memori-primary-text, #fff);
38
- }
39
-
40
- .memori-chat-inputs--mic:active,
41
- .memori-chat-inputs--mic:focus {
42
- box-shadow: 0 0.2rem 0.33rem var(--memori-primary) !important;
43
- }
44
-
45
- .memori-chat-inputs--mic:not(.memori-chat-inputs--mic--listening):active,
46
- .memori-chat-inputs--mic:not(.memori-chat-inputs--mic--listening):focus {
47
- color: var(--memori-primary) !important;
48
- }
49
-
50
- .memori-chat-inputs--mic.memori-chat-inputs--mic--listening {
51
- color: red !important;
52
- }
53
-
54
- .memori-chat-inputs--mic.memori-chat-inputs--mic--listening:active,
55
- .memori-chat-inputs--mic.memori-chat-inputs--mic--listening:focus {
56
- border-color: red !important;
57
- }
58
-
59
- .memori-chat-inputs--mic.memori-chat-inputs--mic--listening svg {
60
- color: red !important;
61
- }
21
+ }
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React, { useEffect } from 'react';
2
2
  import { Meta, Story } from '@storybook/react';
3
3
  import ChatInputs, { Props } from './ChatInputs';
4
4
  import { dialogState } from '../../mocks/data';
@@ -22,13 +22,40 @@ const meta: Meta = {
22
22
 
23
23
  export default meta;
24
24
 
25
+ const text =
26
+ 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.'
27
+ .split(' ')
28
+ .reverse();
29
+
25
30
  const Template: Story<Props> = args => {
26
31
  const [userMessage, setUserMessage] = React.useState(args.userMessage);
32
+ const [listening, setListening] = React.useState(args.listening);
33
+ const startListening = () => setListening(true);
34
+ const stopListening = () => setListening(false);
35
+
36
+ useEffect(() => {
37
+ if (listening) {
38
+ const interval = setInterval(() => {
39
+ let nextWord = text.pop();
40
+
41
+ if (!nextWord) {
42
+ clearInterval(interval);
43
+ return;
44
+ }
45
+
46
+ setUserMessage(prev => `${prev || ''}${prev ? ' ' : ''}${nextWord}`);
47
+ }, Math.random() * 500 + 100);
48
+ return () => clearInterval(interval);
49
+ }
50
+ }, [listening]);
27
51
 
28
52
  return (
29
53
  <div style={{ paddingTop: '10rem' }}>
30
54
  <ChatInputs
31
55
  {...args}
56
+ listening={listening}
57
+ startListening={startListening}
58
+ stopListening={stopListening}
32
59
  userMessage={userMessage}
33
60
  onChangeUserMessage={setUserMessage}
34
61
  />
@@ -159,8 +186,27 @@ Disabled.args = {
159
186
  showMicrophone: true,
160
187
  };
161
188
 
162
- export const Listening = Template.bind({});
163
- Listening.args = {
189
+ export const ContinuousSpeech = Template.bind({});
190
+ ContinuousSpeech.args = {
191
+ dialogState,
192
+ userMessage: 'Suspendisse sit amet volutpat velit.',
193
+ sendMessage: (msg: string) => console.log(msg),
194
+ onTextareaBlur: () => {},
195
+ onTextareaFocus: () => {},
196
+ onTextareaPressEnter: () => {},
197
+ setAttachmentsMenuOpen: () => {},
198
+ setSendOnEnter: () => {},
199
+ listening: false,
200
+ isPlayingAudio: false,
201
+ stopAudio: () => {},
202
+ startListening: () => {},
203
+ stopListening: () => {},
204
+ showMicrophone: true,
205
+ microphoneMode: 'CONTINUOUS',
206
+ };
207
+
208
+ export const ContinuousSpeechListening = Template.bind({});
209
+ ContinuousSpeechListening.args = {
164
210
  dialogState,
165
211
  userMessage: 'Suspendisse sit amet volutpat velit.',
166
212
  sendMessage: (msg: string) => console.log(msg),
@@ -175,6 +221,7 @@ Listening.args = {
175
221
  startListening: () => {},
176
222
  stopListening: () => {},
177
223
  showMicrophone: true,
224
+ microphoneMode: 'CONTINUOUS',
178
225
  };
179
226
 
180
227
  export const WithoutMicrophone = Template.bind({});