@memori.ai/memori-react 7.8.8 → 7.9.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 +61 -0
- package/dist/components/AccountForm/AccountForm.d.ts +3 -2
- package/dist/components/AccountForm/AccountForm.js +2 -4
- package/dist/components/AccountForm/AccountForm.js.map +1 -1
- package/dist/components/Avatar/Avatar.d.ts +4 -0
- package/dist/components/Avatar/Avatar.js +6 -6
- package/dist/components/Avatar/Avatar.js.map +1 -1
- package/dist/components/Avatar/AvatarView/AvatarComponent/avatarComponent.d.ts +3 -0
- package/dist/components/Avatar/AvatarView/AvatarComponent/avatarComponent.js +3 -3
- package/dist/components/Avatar/AvatarView/AvatarComponent/avatarComponent.js.map +1 -1
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/AnimationController.js +1 -1
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/AnimationController.js.map +1 -1
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.d.ts +1 -1
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.js +48 -10
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.js.map +1 -1
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/types.d.ts +4 -1
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/MorphTargetController.d.ts +17 -0
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/MorphTargetController.js +73 -0
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/MorphTargetController.js.map +1 -0
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/PositionController.d.ts +19 -0
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/PositionController.js +60 -0
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/PositionController.js.map +1 -0
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/constants.d.ts +18 -0
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/constants.js +26 -0
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/constants.js.map +1 -0
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/halfbodyAvatar.d.ts +8 -7
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/halfbodyAvatar.js +65 -78
- package/dist/components/Avatar/AvatarView/AvatarComponent/components/halfbodyAvatar.js.map +1 -1
- package/dist/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.css +99 -0
- package/dist/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.d.ts +12 -0
- package/dist/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.js +98 -0
- package/dist/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.js.map +1 -0
- package/dist/components/Avatar/AvatarView/index.d.ts +4 -1
- package/dist/components/Avatar/AvatarView/index.js +36 -13
- package/dist/components/Avatar/AvatarView/index.js.map +1 -1
- package/dist/components/Avatar/AvatarView/utils/hideHands.d.ts +2 -0
- package/dist/components/Avatar/AvatarView/utils/hideHands.js +14 -0
- package/dist/components/Avatar/AvatarView/utils/hideHands.js.map +1 -0
- package/dist/components/Chat/Chat.d.ts +1 -0
- package/dist/components/Chat/Chat.js +5 -2
- package/dist/components/Chat/Chat.js.map +1 -1
- package/dist/components/KnownFacts/KnownFacts.d.ts +3 -2
- package/dist/components/KnownFacts/KnownFacts.js +2 -4
- package/dist/components/KnownFacts/KnownFacts.js.map +1 -1
- package/dist/components/LoginDrawer/LoginDrawer.d.ts +3 -2
- package/dist/components/LoginDrawer/LoginDrawer.js +4 -6
- package/dist/components/LoginDrawer/LoginDrawer.js.map +1 -1
- package/dist/components/MemoriWidget/MemoriWidget.d.ts +3 -2
- package/dist/components/MemoriWidget/MemoriWidget.js +36 -10
- package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
- package/dist/components/SettingsDrawer/SettingsDrawer.css +4 -2
- package/dist/components/SettingsDrawer/SettingsDrawer.d.ts +6 -1
- package/dist/components/SettingsDrawer/SettingsDrawer.js +10 -4
- package/dist/components/SettingsDrawer/SettingsDrawer.js.map +1 -1
- package/dist/components/SignupForm/SignupForm.d.ts +3 -2
- package/dist/components/SignupForm/SignupForm.js +2 -4
- package/dist/components/SignupForm/SignupForm.js.map +1 -1
- package/dist/components/layouts/Totem.js +1 -1
- package/dist/components/layouts/Totem.js.map +1 -1
- package/dist/components/layouts/totem.css +9 -9
- package/dist/components/ui/Button.css +4 -0
- package/dist/components/ui/Button.d.ts +1 -0
- package/dist/components/ui/Button.js +2 -1
- package/dist/components/ui/Button.js.map +1 -1
- package/dist/components/ui/Slider.css +177 -0
- package/dist/components/ui/Slider.d.ts +12 -0
- package/dist/components/ui/Slider.js +78 -0
- package/dist/components/ui/Slider.js.map +1 -0
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/locales/en.json +11 -0
- package/dist/locales/it.json +11 -0
- package/dist/styles.css +1 -0
- package/esm/components/AccountForm/AccountForm.d.ts +3 -2
- package/esm/components/AccountForm/AccountForm.js +2 -4
- package/esm/components/AccountForm/AccountForm.js.map +1 -1
- package/esm/components/Avatar/Avatar.d.ts +4 -0
- package/esm/components/Avatar/Avatar.js +6 -6
- package/esm/components/Avatar/Avatar.js.map +1 -1
- package/esm/components/Avatar/AvatarView/AvatarComponent/avatarComponent.d.ts +3 -0
- package/esm/components/Avatar/AvatarView/AvatarComponent/avatarComponent.js +3 -3
- package/esm/components/Avatar/AvatarView/AvatarComponent/avatarComponent.js.map +1 -1
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/AnimationController.js +1 -1
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/AnimationController.js.map +1 -1
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.d.ts +1 -1
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.js +45 -8
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.js.map +1 -1
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/types.d.ts +4 -1
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/MorphTargetController.d.ts +17 -0
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/MorphTargetController.js +69 -0
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/MorphTargetController.js.map +1 -0
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/PositionController.d.ts +19 -0
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/PositionController.js +56 -0
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/PositionController.js.map +1 -0
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/constants.d.ts +18 -0
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/constants.js +23 -0
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/constants.js.map +1 -0
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/halfbodyAvatar.d.ts +8 -7
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/halfbodyAvatar.js +66 -80
- package/esm/components/Avatar/AvatarView/AvatarComponent/components/halfbodyAvatar.js.map +1 -1
- package/esm/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.css +99 -0
- package/esm/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.d.ts +12 -0
- package/esm/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.js +95 -0
- package/esm/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.js.map +1 -0
- package/esm/components/Avatar/AvatarView/index.d.ts +4 -1
- package/esm/components/Avatar/AvatarView/index.js +38 -15
- package/esm/components/Avatar/AvatarView/index.js.map +1 -1
- package/esm/components/Avatar/AvatarView/utils/hideHands.d.ts +2 -0
- package/esm/components/Avatar/AvatarView/utils/hideHands.js +10 -0
- package/esm/components/Avatar/AvatarView/utils/hideHands.js.map +1 -0
- package/esm/components/Chat/Chat.d.ts +1 -0
- package/esm/components/Chat/Chat.js +5 -2
- package/esm/components/Chat/Chat.js.map +1 -1
- package/esm/components/KnownFacts/KnownFacts.d.ts +3 -2
- package/esm/components/KnownFacts/KnownFacts.js +2 -4
- package/esm/components/KnownFacts/KnownFacts.js.map +1 -1
- package/esm/components/LoginDrawer/LoginDrawer.d.ts +3 -2
- package/esm/components/LoginDrawer/LoginDrawer.js +4 -6
- package/esm/components/LoginDrawer/LoginDrawer.js.map +1 -1
- package/esm/components/MemoriWidget/MemoriWidget.d.ts +3 -2
- package/esm/components/MemoriWidget/MemoriWidget.js +36 -10
- package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
- package/esm/components/SettingsDrawer/SettingsDrawer.css +4 -2
- package/esm/components/SettingsDrawer/SettingsDrawer.d.ts +6 -1
- package/esm/components/SettingsDrawer/SettingsDrawer.js +10 -4
- package/esm/components/SettingsDrawer/SettingsDrawer.js.map +1 -1
- package/esm/components/SignupForm/SignupForm.d.ts +3 -2
- package/esm/components/SignupForm/SignupForm.js +2 -4
- package/esm/components/SignupForm/SignupForm.js.map +1 -1
- package/esm/components/layouts/Totem.js +1 -1
- package/esm/components/layouts/Totem.js.map +1 -1
- package/esm/components/layouts/totem.css +9 -9
- package/esm/components/ui/Button.css +4 -0
- package/esm/components/ui/Button.d.ts +1 -0
- package/esm/components/ui/Button.js +2 -1
- package/esm/components/ui/Button.js.map +1 -1
- package/esm/components/ui/Slider.css +177 -0
- package/esm/components/ui/Slider.d.ts +12 -0
- package/esm/components/ui/Slider.js +75 -0
- package/esm/components/ui/Slider.js.map +1 -0
- package/esm/index.js +4 -1
- package/esm/index.js.map +1 -1
- package/esm/locales/en.json +11 -0
- package/esm/locales/it.json +11 -0
- package/esm/styles.css +1 -0
- package/package.json +3 -2
- package/src/components/AccountForm/AccountForm.test.tsx +2 -1
- package/src/components/AccountForm/AccountForm.tsx +3 -5
- package/src/components/Avatar/Avatar.test.tsx +8 -0
- package/src/components/Avatar/Avatar.tsx +19 -6
- package/src/components/Avatar/AvatarView/AvatarComponent/avatarComponent.tsx +17 -8
- package/src/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/AnimationController.ts +1 -1
- package/src/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.tsx +69 -18
- package/src/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/types.ts +4 -1
- package/src/components/Avatar/AvatarView/AvatarComponent/components/PositionController.ts +83 -0
- package/src/components/Avatar/AvatarView/AvatarComponent/components/{FullbodyAvatar/constants.ts → constants.ts} +2 -1
- package/src/components/Avatar/AvatarView/AvatarComponent/components/halfbodyAvatar.tsx +106 -124
- package/src/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.css +99 -0
- package/src/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.tsx +187 -0
- package/src/components/Avatar/AvatarView/index.tsx +115 -43
- package/src/components/Avatar/AvatarView/utils/hideHands.ts +11 -0
- package/src/components/Avatar/__snapshots__/Avatar.test.tsx.snap +32 -93
- package/src/components/Chat/Chat.test.tsx +11 -0
- package/src/components/Chat/Chat.tsx +8 -1
- package/src/components/KnownFacts/KnownFacts.stories.tsx +5 -4
- package/src/components/KnownFacts/KnownFacts.test.tsx +6 -3
- package/src/components/KnownFacts/KnownFacts.tsx +3 -4
- package/src/components/LoginDrawer/LoginDrawer.stories.tsx +2 -1
- package/src/components/LoginDrawer/LoginDrawer.test.tsx +9 -8
- package/src/components/LoginDrawer/LoginDrawer.tsx +5 -6
- package/src/components/MemoriWidget/MemoriWidget.tsx +56 -14
- package/src/components/SettingsDrawer/SettingsDrawer.css +4 -2
- package/src/components/SettingsDrawer/SettingsDrawer.test.tsx +24 -0
- package/src/components/SettingsDrawer/SettingsDrawer.tsx +76 -4
- package/src/components/SignupForm/SignupForm.test.tsx +3 -2
- package/src/components/SignupForm/SignupForm.tsx +3 -4
- package/src/components/layouts/Totem.tsx +1 -1
- package/src/components/layouts/layouts.stories.tsx +111 -3
- package/src/components/layouts/totem.css +9 -9
- package/src/components/ui/Button.css +4 -0
- package/src/components/ui/Button.tsx +3 -0
- package/src/components/ui/Slider.css +177 -0
- package/src/components/ui/Slider.stories.tsx +63 -0
- package/src/components/ui/Slider.tsx +142 -0
- package/src/index.stories.tsx +1 -1
- package/src/index.tsx +5 -1
- package/src/locales/en.json +11 -0
- package/src/locales/it.json +11 -0
- package/src/styles.css +1 -0
- /package/src/components/Avatar/AvatarView/AvatarComponent/components/{FullbodyAvatar/MorhTargetController.ts → MorphTargetController.ts} +0 -0
package/dist/locales/en.json
CHANGED
|
@@ -122,6 +122,17 @@
|
|
|
122
122
|
"hideEmissionsLabel": "Hide text emitted by the Twin",
|
|
123
123
|
"secondsLabel": "Set seconds",
|
|
124
124
|
"controlsPosition": "Controls position",
|
|
125
|
+
"avatarControls": "Avatar controls",
|
|
126
|
+
"height": "Height",
|
|
127
|
+
"depth": "Depth",
|
|
128
|
+
"avatarType": "Avatar type",
|
|
129
|
+
"suggestions": "Use the arrow keys to adjust the avatar height\nUse +/- to adjust the avatar depth",
|
|
130
|
+
"blob": "Blob",
|
|
131
|
+
"avatar3d": "3D Avatar",
|
|
132
|
+
"zoomed": "Zoomed",
|
|
133
|
+
"normal": "Normal",
|
|
134
|
+
"far": "Far",
|
|
135
|
+
"enablePositionControls": "Enable position controls",
|
|
125
136
|
"tryMeHeaderLabel": "TRY",
|
|
126
137
|
"unknownPosition": "Unknown position",
|
|
127
138
|
"fieldPlace": "Write the place (eg 'Milano')",
|
package/dist/locales/it.json
CHANGED
|
@@ -122,6 +122,17 @@
|
|
|
122
122
|
"hideEmissionsLabel": "Nascondi testo emesso dal Twin",
|
|
123
123
|
"secondsLabel": "Secondi",
|
|
124
124
|
"controlsPosition": "Posizione dei controlli",
|
|
125
|
+
"avatarControls": "Controlli Avatar",
|
|
126
|
+
"height": "Altezza",
|
|
127
|
+
"depth": "Profondità",
|
|
128
|
+
"avatarType": "Tipo Avatar",
|
|
129
|
+
"blob": "Blob",
|
|
130
|
+
"avatar3d": "Avatar 3D",
|
|
131
|
+
"zoomed": "Vicino",
|
|
132
|
+
"normal": "Normale",
|
|
133
|
+
"far": "Lontano",
|
|
134
|
+
"suggestions": "Usa le frecce per regolare l'altezza dell'avatar\nUsa +/- per regolare la profondità dell'avatar",
|
|
135
|
+
"enablePositionControls": "Abilita controlli posizione",
|
|
125
136
|
"tryMeHeaderLabel": "PROVA",
|
|
126
137
|
"unknownPosition": "Posizione sconosciuta",
|
|
127
138
|
"fieldPlace": "Indica la posizione (es 'Milano')",
|
package/dist/styles.css
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
@import url('./components/ui/Table.css');
|
|
10
10
|
@import url('./components/ui/Details.css');
|
|
11
11
|
@import url('./components/ui/Expandable.css');
|
|
12
|
+
@import url('./components/ui/Slider.css');
|
|
12
13
|
|
|
13
14
|
@import url('./components/CompletionProviderStatus/CompletionProviderStatus.css');
|
|
14
15
|
@import url('./components/PoweredBy/PoweredBy.css');
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { User } from '@memori.ai/memori-api-client/dist/types';
|
|
2
|
+
import memoriApiClient from '@memori.ai/memori-api-client';
|
|
2
3
|
export interface Props {
|
|
3
4
|
user: User;
|
|
4
5
|
loginToken: string;
|
|
5
|
-
|
|
6
|
+
apiClient: ReturnType<typeof memoriApiClient>;
|
|
6
7
|
onUserUpdate: (user: User) => void;
|
|
7
8
|
}
|
|
8
|
-
declare const AccountForm: ({ user, loginToken,
|
|
9
|
+
declare const AccountForm: ({ user, loginToken, apiClient, onUserUpdate }: Props) => JSX.Element;
|
|
9
10
|
export default AccountForm;
|
|
@@ -2,17 +2,15 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
|
2
2
|
import { useState } from 'react';
|
|
3
3
|
import Button from '../ui/Button';
|
|
4
4
|
import { useTranslation } from 'react-i18next';
|
|
5
|
-
import memoriApiClient from '@memori.ai/memori-api-client';
|
|
6
5
|
import toast from 'react-hot-toast';
|
|
7
6
|
import { mailRegEx, pwdRegEx } from '../../helpers/utils';
|
|
8
7
|
import { getErrori18nKey } from '../../helpers/error';
|
|
9
8
|
import Tooltip from '../ui/Tooltip';
|
|
10
9
|
const imgMimeTypes = ['image/jpeg', 'image/png', 'image/jpg', 'image/gif'];
|
|
11
|
-
const AccountForm = ({ user, loginToken,
|
|
10
|
+
const AccountForm = ({ user, loginToken, apiClient, onUserUpdate }) => {
|
|
12
11
|
const { t, i18n } = useTranslation();
|
|
13
12
|
const lang = i18n.language === 'it' ? 'it' : 'en';
|
|
14
|
-
const
|
|
15
|
-
const { updateUser, uploadAsset } = client.backend;
|
|
13
|
+
const { updateUser, uploadAsset } = apiClient.backend;
|
|
16
14
|
const [email, setEmail] = useState();
|
|
17
15
|
const [password, setPassword] = useState();
|
|
18
16
|
const [confirmPassword, setConfirmPassword] = useState();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountForm.js","sourceRoot":"","sources":["../../../src/components/AccountForm/AccountForm.tsx"],"names":[],"mappings":";AACA,OAAc,EAAa,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,MAAM,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"AccountForm.js","sourceRoot":"","sources":["../../../src/components/AccountForm/AccountForm.tsx"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,10 @@ export interface Props {
|
|
|
18
18
|
animation?: string;
|
|
19
19
|
isZoomed?: boolean;
|
|
20
20
|
chatProps?: any;
|
|
21
|
+
enablePositionControls?: boolean;
|
|
22
|
+
setEnablePositionControls: (value: boolean) => void;
|
|
23
|
+
avatarType?: 'blob' | 'avatar3d' | null;
|
|
24
|
+
isTotem?: boolean;
|
|
21
25
|
}
|
|
22
26
|
declare const _default: React.NamedExoticComponent<Props>;
|
|
23
27
|
export default _default;
|
|
@@ -13,7 +13,7 @@ import Edit from '../icons/Edit';
|
|
|
13
13
|
import cx from 'classnames';
|
|
14
14
|
import ContainerAvatarView from './AvatarView';
|
|
15
15
|
import { useViseme } from '../../context/visemeContext';
|
|
16
|
-
const Avatar = ({ memori, integration, integrationConfig, tenant, instruct = false, avatar3dVisible = false, setAvatar3dVisible, hasUserActivatedSpeak = false, isPlayingAudio = false, loading = false, baseUrl, apiUrl, animation, isZoomed = false, chatProps, }) => {
|
|
16
|
+
const Avatar = ({ memori, integration, integrationConfig, tenant, instruct = false, avatar3dVisible = false, setAvatar3dVisible, hasUserActivatedSpeak = false, isPlayingAudio = false, loading = false, baseUrl, apiUrl, animation, isZoomed = false, chatProps, avatarType = null, enablePositionControls, setEnablePositionControls, isTotem = false, }) => {
|
|
17
17
|
const { t } = useTranslation();
|
|
18
18
|
const [isClient, setIsClient] = useState(false);
|
|
19
19
|
const { stopProcessing, updateCurrentViseme, resetVisemeQueue } = useViseme();
|
|
@@ -39,7 +39,8 @@ const Avatar = ({ memori, integration, integrationConfig, tenant, instruct = fal
|
|
|
39
39
|
(integrationConfig === null || integrationConfig === void 0 ? void 0 : integrationConfig.avatar) === 'readyplayerme-full' ||
|
|
40
40
|
(integrationConfig === null || integrationConfig === void 0 ? void 0 : integrationConfig.avatar) === 'customglb' ||
|
|
41
41
|
(integrationConfig === null || integrationConfig === void 0 ? void 0 : integrationConfig.avatar) === 'customrpm') &&
|
|
42
|
-
(integrationConfig === null || integrationConfig === void 0 ? void 0 : integrationConfig.avatarURL)
|
|
42
|
+
(integrationConfig === null || integrationConfig === void 0 ? void 0 : integrationConfig.avatarURL) &&
|
|
43
|
+
(avatarType && avatarType !== 'blob')) {
|
|
43
44
|
return (_jsxs(_Fragment, { children: [_jsx("div", { className: cx('memori--avatar-wrapper', `memori--avatar-${(integrationConfig === null || integrationConfig === void 0 ? void 0 : integrationConfig.avatar) || 'default'}`, {
|
|
44
45
|
hidden: !avatar3dVisible,
|
|
45
46
|
}), children: renderAvatarContent() }), renderAvatarToggle()] }));
|
|
@@ -53,7 +54,7 @@ const Avatar = ({ memori, integration, integrationConfig, tenant, instruct = fal
|
|
|
53
54
|
if ((integrationConfig === null || integrationConfig === void 0 ? void 0 : integrationConfig.avatar) === 'readyplayerme' ||
|
|
54
55
|
(integrationConfig === null || integrationConfig === void 0 ? void 0 : integrationConfig.avatar) === 'readyplayerme-full' ||
|
|
55
56
|
(integrationConfig === null || integrationConfig === void 0 ? void 0 : integrationConfig.avatar) === 'customrpm') {
|
|
56
|
-
return (_jsx(ErrorBoundary, { fallback: _jsx("div", { className: "memori--blob-container", children: isClient && (_jsx(Blob, { speaking: isPlayingAudio, avatar: getAvatarUrl() })) }), children: _jsx(ContainerAvatarView, { updateCurrentViseme: updateCurrentViseme, url: integrationConfig.avatarURL, sex: memori.voiceType === 'FEMALE' ? 'FEMALE' : 'MALE', fallbackImg: getAvatarUrl(), headMovement: true, eyeBlink: true, animation: animation, halfBody: integrationConfig.avatar === 'readyplayerme', speaking: isPlayingAudio, loading: loading, style: getAvatarStyle(), stopProcessing: stopProcessing, resetVisemeQueue: resetVisemeQueue, isZoomed: isZoomed, chatEmission: (_a = chatProps === null || chatProps === void 0 ? void 0 : chatProps.dialogState) === null || _a === void 0 ? void 0 : _a.emission }) }));
|
|
57
|
+
return (_jsx(ErrorBoundary, { fallback: _jsx("div", { className: "memori--blob-container", children: isClient && (_jsx(Blob, { speaking: isPlayingAudio, avatar: getAvatarUrl() })) }), children: _jsx(ContainerAvatarView, { enablePositionControls: enablePositionControls, updateCurrentViseme: updateCurrentViseme, url: integrationConfig.avatarURL, sex: memori.voiceType === 'FEMALE' ? 'FEMALE' : 'MALE', fallbackImg: getAvatarUrl(), headMovement: true, eyeBlink: true, animation: animation, halfBody: integrationConfig.avatar === 'readyplayerme', speaking: isPlayingAudio, loading: loading, style: getAvatarStyle(), stopProcessing: stopProcessing, resetVisemeQueue: resetVisemeQueue, isZoomed: isZoomed, isTotem: isTotem, chatEmission: (_a = chatProps === null || chatProps === void 0 ? void 0 : chatProps.dialogState) === null || _a === void 0 ? void 0 : _a.emission, setEnablePositionControls: setEnablePositionControls }) }));
|
|
57
58
|
}
|
|
58
59
|
if ((integrationConfig === null || integrationConfig === void 0 ? void 0 : integrationConfig.avatar) === 'customglb') {
|
|
59
60
|
return (_jsx(ModelViewer, { poster: getAvatarUrl() || '', src: integrationConfig.avatarURL, alt: "" }));
|
|
@@ -64,10 +65,9 @@ const Avatar = ({ memori, integration, integrationConfig, tenant, instruct = fal
|
|
|
64
65
|
const getAvatarStyle = () => {
|
|
65
66
|
if ((integrationConfig === null || integrationConfig === void 0 ? void 0 : integrationConfig.avatar) === 'readyplayerme') {
|
|
66
67
|
return {
|
|
67
|
-
width: '
|
|
68
|
-
height: '
|
|
68
|
+
width: '100%',
|
|
69
|
+
height: '100%',
|
|
69
70
|
backgroundColor: 'none',
|
|
70
|
-
borderRadius: '100%',
|
|
71
71
|
boxShadow: 'none',
|
|
72
72
|
};
|
|
73
73
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../../../src/components/Avatar/Avatar.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAMzD,OAAO,aAAa,MAAM,gCAAgC,CAAC;AAC3D,OAAO,OAAO,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,IAAI,MAAM,cAAc,CAAC;AAChC,OAAO,WAAW,MAAM,qCAAqC,CAAC;AAC9D,OAAO,MAAM,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,GAAG,MAAM,cAAc,CAAC;AAC/B,OAAO,YAAY,MAAM,uBAAuB,CAAC;AACjD,OAAO,IAAI,MAAM,eAAe,CAAC;AACjC,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,mBAAmB,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../../../src/components/Avatar/Avatar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -10,12 +10,15 @@ interface Props {
|
|
|
10
10
|
speaking: boolean;
|
|
11
11
|
isZoomed: boolean;
|
|
12
12
|
chatEmission: any;
|
|
13
|
+
avatarHeight?: number;
|
|
14
|
+
avatarDepth?: number;
|
|
13
15
|
stopProcessing: () => void;
|
|
14
16
|
resetVisemeQueue: () => void;
|
|
15
17
|
updateCurrentViseme: (currentTime: number) => {
|
|
16
18
|
name: string;
|
|
17
19
|
weight: number;
|
|
18
20
|
} | null;
|
|
21
|
+
setCameraZ: (value: number) => void;
|
|
19
22
|
}
|
|
20
23
|
export declare const AvatarView: React.FC<Props & {
|
|
21
24
|
halfBody: boolean;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useState, useEffect, useCallback } from 'react';
|
|
3
3
|
import AnimationControlPanel from './components/controls';
|
|
4
|
-
import FullbodyAvatar from './components/FullbodyAvatar/fullbodyAvatar';
|
|
4
|
+
import { FullbodyAvatar } from './components/FullbodyAvatar/fullbodyAvatar';
|
|
5
5
|
import HalfBodyAvatar from './components/halfbodyAvatar';
|
|
6
6
|
const baseActions = {
|
|
7
7
|
Gioia1: { weight: 0 },
|
|
@@ -28,7 +28,7 @@ const baseActions = {
|
|
|
28
28
|
Loading2: { weight: 0 },
|
|
29
29
|
Loading3: { weight: 0 },
|
|
30
30
|
};
|
|
31
|
-
export const AvatarView = ({ stopProcessing, chatEmission, showControls, animation, url, sex, eyeBlink, headMovement,
|
|
31
|
+
export const AvatarView = ({ stopProcessing, chatEmission, showControls, animation, url, sex, eyeBlink, headMovement, halfBody, loading, avatarHeight, avatarDepth, updateCurrentViseme, resetVisemeQueue, setCameraZ, }) => {
|
|
32
32
|
const [currentBaseAction, setCurrentBaseAction] = useState({
|
|
33
33
|
action: animation || 'Idle1',
|
|
34
34
|
weight: 1,
|
|
@@ -104,6 +104,6 @@ export const AvatarView = ({ stopProcessing, chatEmission, showControls, animati
|
|
|
104
104
|
onBaseActionChange(animation);
|
|
105
105
|
}
|
|
106
106
|
}, [loading]);
|
|
107
|
-
return (_jsxs(_Fragment, { children: [showControls && (_jsx(AnimationControlPanel, { timeScale: timeScale, morphTargetDictionary: morphTargetDictionary, onBaseActionChange: onBaseActionChange, onMorphTargetInfluencesChange: onMorphTargetInfluencesChange, onMorphTargetDictionaryChange: onMorphTargetDictionaryChange, baseActions: baseActions, currentBaseAction: currentBaseAction, modifyTimeScale: modifyTimeScale })), halfBody ? (_jsx(HalfBodyAvatar, { url: url,
|
|
107
|
+
return (_jsxs(_Fragment, { children: [showControls && (_jsx(AnimationControlPanel, { timeScale: timeScale, morphTargetDictionary: morphTargetDictionary, onBaseActionChange: onBaseActionChange, onMorphTargetInfluencesChange: onMorphTargetInfluencesChange, onMorphTargetDictionaryChange: onMorphTargetDictionaryChange, baseActions: baseActions, currentBaseAction: currentBaseAction, modifyTimeScale: modifyTimeScale })), halfBody ? (_jsx(HalfBodyAvatar, { url: url, onCameraZChange: setCameraZ, setMorphTargetInfluences: setMorphTargetInfluences, setMorphTargetDictionary: setMorphTargetDictionary, updateCurrentViseme: updateCurrentViseme, avatarHeight: avatarHeight || 50, avatarDepth: avatarDepth || -50, headMovement: headMovement })) : (_jsx(FullbodyAvatar, { url: url, sex: sex, resetVisemeQueue: resetVisemeQueue, eyeBlink: eyeBlink, currentBaseAction: currentBaseAction, timeScale: timeScale, morphTargetInfluences: morphTargetInfluences, updateCurrentViseme: updateCurrentViseme, stopProcessing: stopProcessing, setMorphTargetDictionary: setMorphTargetDictionary, setMorphTargetInfluences: setMorphTargetInfluences, emotionMorphTargets: emotionMorphTargets, halfBody: halfBody, onCameraZChange: setCameraZ, avatarHeight: avatarHeight || 50, avatarDepth: avatarDepth || -50 }))] }));
|
|
108
108
|
};
|
|
109
109
|
//# sourceMappingURL=avatarComponent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"avatarComponent.js","sourceRoot":"","sources":["../../../../../src/components/Avatar/AvatarView/AvatarComponent/avatarComponent.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,qBAAqB,MAAM,uBAAuB,CAAC;AAC1D,OAAO,cAAc,MAAM,4CAA4C,
|
|
1
|
+
{"version":3,"file":"avatarComponent.js","sourceRoot":"","sources":["../../../../../src/components/Avatar/AvatarView/AvatarComponent/avatarComponent.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AnimationState } from './types';
|
|
2
2
|
import { LoopOnce } from 'three';
|
|
3
|
-
import { DEFAULT_CONFIG } from '
|
|
3
|
+
import { DEFAULT_CONFIG } from '../constants';
|
|
4
4
|
export class AnimationController {
|
|
5
5
|
constructor(mixer, actions, config = DEFAULT_CONFIG) {
|
|
6
6
|
this.currentState = AnimationState.LOADING;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnimationController.js","sourceRoot":"","sources":["../../../../../../../src/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/AnimationController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAmB,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAmC,QAAQ,EAAE,MAAM,OAAO,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"AnimationController.js","sourceRoot":"","sources":["../../../../../../../src/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/AnimationController.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { FullbodyAvatarProps } from './types';
|
|
2
|
-
export
|
|
2
|
+
export declare function FullbodyAvatar({ url, sex, currentBaseAction, timeScale, eyeBlink, updateCurrentViseme, setMorphTargetDictionary, setMorphTargetInfluences, emotionMorphTargets, avatarHeight, avatarDepth, onCameraZChange, }: FullbodyAvatarProps): JSX.Element;
|
package/esm/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.js
CHANGED
|
@@ -5,23 +5,55 @@ import { useAnimations, useGLTF } from '@react-three/drei';
|
|
|
5
5
|
import { useFrame } from '@react-three/fiber';
|
|
6
6
|
import { AnimationState } from './types';
|
|
7
7
|
import { AnimationController } from './AnimationController';
|
|
8
|
-
import { MorphTargetController } from '
|
|
9
|
-
import {
|
|
10
|
-
|
|
8
|
+
import { MorphTargetController } from '../MorphTargetController';
|
|
9
|
+
import { AvatarPositionController } from '../PositionController';
|
|
10
|
+
import { AVATAR_POSITION, AVATAR_ROTATION, ANIMATION_URLS, DEFAULT_CONFIG, SCALE_LERP_FACTOR, } from '../constants';
|
|
11
|
+
export function FullbodyAvatar({ url, sex, currentBaseAction, timeScale, eyeBlink, updateCurrentViseme, setMorphTargetDictionary, setMorphTargetInfluences, emotionMorphTargets, avatarHeight = 50, avatarDepth = 0, onCameraZChange, }) {
|
|
12
|
+
var _a;
|
|
11
13
|
const { scene } = useGLTF(url);
|
|
12
14
|
const { animations } = useGLTF(ANIMATION_URLS[sex]);
|
|
13
15
|
const { actions } = useAnimations(animations, scene);
|
|
14
16
|
const animationControllerRef = useRef();
|
|
15
17
|
const morphTargetControllerRef = useRef();
|
|
18
|
+
const positionControllerRef = useRef();
|
|
16
19
|
const blinkStateRef = useRef({
|
|
17
20
|
isBlinking: false,
|
|
18
21
|
lastBlinkTime: 0,
|
|
19
22
|
nextBlinkTime: 0,
|
|
20
23
|
blinkStartTime: 0,
|
|
21
24
|
});
|
|
25
|
+
useEffect(() => {
|
|
26
|
+
if (!positionControllerRef.current) {
|
|
27
|
+
positionControllerRef.current = new AvatarPositionController(AVATAR_POSITION);
|
|
28
|
+
}
|
|
29
|
+
if (!actions || !scene)
|
|
30
|
+
return;
|
|
31
|
+
const mixer = new AnimationMixer(scene);
|
|
32
|
+
animationControllerRef.current = new AnimationController(mixer, actions, { ...DEFAULT_CONFIG });
|
|
33
|
+
if (headMesh) {
|
|
34
|
+
morphTargetControllerRef.current = new MorphTargetController(headMesh);
|
|
35
|
+
if (headMesh.morphTargetDictionary && headMesh.morphTargetInfluences) {
|
|
36
|
+
setMorphTargetDictionary(headMesh.morphTargetDictionary);
|
|
37
|
+
const initialInfluences = Object.keys(headMesh.morphTargetDictionary)
|
|
38
|
+
.reduce((acc, key) => ({ ...acc, [key]: 0 }), {});
|
|
39
|
+
setMorphTargetInfluences(initialInfluences);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}, [actions, scene]);
|
|
43
|
+
useEffect(() => {
|
|
44
|
+
if (positionControllerRef.current) {
|
|
45
|
+
positionControllerRef.current.updateHeight(avatarHeight, false);
|
|
46
|
+
}
|
|
47
|
+
}, [avatarHeight]);
|
|
48
|
+
useEffect(() => {
|
|
49
|
+
if (positionControllerRef.current && onCameraZChange) {
|
|
50
|
+
const newCameraZ = positionControllerRef.current.updateDepth(avatarDepth, false);
|
|
51
|
+
onCameraZChange(newCameraZ);
|
|
52
|
+
}
|
|
53
|
+
}, [avatarDepth, onCameraZChange]);
|
|
22
54
|
const headMesh = useMemo(() => {
|
|
23
55
|
let foundMesh;
|
|
24
|
-
scene.traverse((object) => {
|
|
56
|
+
scene === null || scene === void 0 ? void 0 : scene.traverse((object) => {
|
|
25
57
|
if (object instanceof SkinnedMesh &&
|
|
26
58
|
(object.name === 'GBNL__Head' || object.name === 'Wolf3D_Avatar')) {
|
|
27
59
|
foundMesh = object;
|
|
@@ -52,13 +84,13 @@ export default function FullbodyAvatar({ url, sex, currentBaseAction, timeScale,
|
|
|
52
84
|
if (!animationControllerRef.current)
|
|
53
85
|
return;
|
|
54
86
|
if (currentBaseAction.action.startsWith('Loading')) {
|
|
87
|
+
animationControllerRef.current.updateIsChatAlreadyStarted(true);
|
|
55
88
|
animationControllerRef.current.transitionTo(AnimationState.LOADING, currentBaseAction.action);
|
|
56
89
|
}
|
|
57
90
|
else if (currentBaseAction.action.startsWith('Idle')) {
|
|
58
91
|
animationControllerRef.current.transitionTo(AnimationState.IDLE);
|
|
59
92
|
}
|
|
60
93
|
else {
|
|
61
|
-
animationControllerRef.current.updateIsChatAlreadyStarted(true);
|
|
62
94
|
animationControllerRef.current.transitionTo(AnimationState.EMOTION, currentBaseAction.action);
|
|
63
95
|
}
|
|
64
96
|
}, [currentBaseAction]);
|
|
@@ -66,15 +98,20 @@ export default function FullbodyAvatar({ url, sex, currentBaseAction, timeScale,
|
|
|
66
98
|
var _a;
|
|
67
99
|
(_a = animationControllerRef.current) === null || _a === void 0 ? void 0 : _a.setTimeScale(timeScale);
|
|
68
100
|
}, [timeScale]);
|
|
69
|
-
useFrame(state => {
|
|
101
|
+
useFrame((state, delta) => {
|
|
70
102
|
var _a;
|
|
71
103
|
const currentTime = state.clock.elapsedTime * 1000;
|
|
72
|
-
(_a = animationControllerRef.current) === null || _a === void 0 ? void 0 : _a.update(
|
|
104
|
+
(_a = animationControllerRef.current) === null || _a === void 0 ? void 0 : _a.update(delta);
|
|
73
105
|
if (morphTargetControllerRef.current) {
|
|
74
106
|
const currentViseme = updateCurrentViseme(currentTime / 1000);
|
|
75
107
|
morphTargetControllerRef.current.updateMorphTargets(currentTime, emotionMorphTargets, currentViseme, eyeBlink || false, blinkStateRef.current);
|
|
76
108
|
}
|
|
109
|
+
if (scene && positionControllerRef.current) {
|
|
110
|
+
const newScale = positionControllerRef.current.updateScale(SCALE_LERP_FACTOR);
|
|
111
|
+
scene.scale.copy(newScale);
|
|
112
|
+
}
|
|
77
113
|
});
|
|
78
|
-
|
|
114
|
+
const position = ((_a = positionControllerRef.current) === null || _a === void 0 ? void 0 : _a.getPosition()) || AVATAR_POSITION;
|
|
115
|
+
return (_jsx("group", { position: position, rotation: AVATAR_ROTATION, children: _jsx("primitive", { object: scene }) }));
|
|
79
116
|
}
|
|
80
117
|
//# sourceMappingURL=fullbodyAvatar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fullbodyAvatar.js","sourceRoot":"","sources":["../../../../../../../src/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.tsx"],"names":[],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"fullbodyAvatar.js","sourceRoot":"","sources":["../../../../../../../src/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/fullbodyAvatar.tsx"],"names":[],"mappings":"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"}
|
package/esm/components/Avatar/AvatarView/AvatarComponent/components/FullbodyAvatar/types.d.ts
CHANGED
|
@@ -18,8 +18,10 @@ export interface FullbodyAvatarProps {
|
|
|
18
18
|
weight: number;
|
|
19
19
|
};
|
|
20
20
|
timeScale: number;
|
|
21
|
-
|
|
21
|
+
onCameraZChange: (value: number) => void;
|
|
22
22
|
eyeBlink?: boolean;
|
|
23
|
+
avatarDepth?: number;
|
|
24
|
+
avatarHeight?: number;
|
|
23
25
|
stopProcessing: () => void;
|
|
24
26
|
resetVisemeQueue: () => void;
|
|
25
27
|
updateCurrentViseme: (currentTime: number) => {
|
|
@@ -32,4 +34,5 @@ export interface FullbodyAvatarProps {
|
|
|
32
34
|
setMorphTargetDictionary: (morphTargetDictionary: Record<string, number>) => void;
|
|
33
35
|
setMorphTargetInfluences: (morphTargetInfluences: Record<string, number>) => void;
|
|
34
36
|
emotionMorphTargets: Record<string, number>;
|
|
37
|
+
halfBody: boolean;
|
|
35
38
|
}
|
package/esm/components/Avatar/AvatarView/AvatarComponent/components/MorphTargetController.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { SkinnedMesh } from 'three';
|
|
2
|
+
export declare class MorphTargetController {
|
|
3
|
+
private headMesh;
|
|
4
|
+
private currentEmotionValues;
|
|
5
|
+
private previousEmotionKeys;
|
|
6
|
+
constructor(headMesh: SkinnedMesh);
|
|
7
|
+
updateMorphTargets(currentTime: number, emotionMorphTargets: Record<string, number>, currentViseme: {
|
|
8
|
+
name: string;
|
|
9
|
+
weight: number;
|
|
10
|
+
} | null, eyeBlink: boolean, blinkState: {
|
|
11
|
+
isBlinking: boolean;
|
|
12
|
+
lastBlinkTime: number;
|
|
13
|
+
nextBlinkTime: number;
|
|
14
|
+
blinkStartTime: number;
|
|
15
|
+
}): void;
|
|
16
|
+
private calculateBlinkValue;
|
|
17
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { MathUtils } from 'three';
|
|
2
|
+
import { EMOTION_SMOOTHING, VISEME_SMOOTHING, BLINK_CONFIG } from './constants';
|
|
3
|
+
export class MorphTargetController {
|
|
4
|
+
constructor(headMesh) {
|
|
5
|
+
this.currentEmotionValues = {};
|
|
6
|
+
this.previousEmotionKeys = new Set();
|
|
7
|
+
this.headMesh = headMesh;
|
|
8
|
+
}
|
|
9
|
+
updateMorphTargets(currentTime, emotionMorphTargets, currentViseme, eyeBlink, blinkState) {
|
|
10
|
+
if (!this.headMesh.morphTargetDictionary ||
|
|
11
|
+
!this.headMesh.morphTargetInfluences) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
const blinkValue = this.calculateBlinkValue(currentTime, blinkState, eyeBlink);
|
|
15
|
+
const currentEmotionKeys = new Set(Object.keys(emotionMorphTargets));
|
|
16
|
+
Object.entries(this.headMesh.morphTargetDictionary).forEach(([key, index]) => {
|
|
17
|
+
if (typeof index !== 'number')
|
|
18
|
+
return;
|
|
19
|
+
let targetValue = 0;
|
|
20
|
+
if (currentEmotionKeys.has(key)) {
|
|
21
|
+
const targetEmotionValue = emotionMorphTargets[key];
|
|
22
|
+
const currentEmotionValue = this.currentEmotionValues[key] || 0;
|
|
23
|
+
const newEmotionValue = MathUtils.lerp(currentEmotionValue, targetEmotionValue * 2.5, EMOTION_SMOOTHING);
|
|
24
|
+
this.currentEmotionValues[key] = newEmotionValue;
|
|
25
|
+
targetValue += newEmotionValue;
|
|
26
|
+
}
|
|
27
|
+
if (currentViseme && key === currentViseme.name) {
|
|
28
|
+
targetValue += currentViseme.weight;
|
|
29
|
+
}
|
|
30
|
+
if (key === 'eyesClosed' && eyeBlink) {
|
|
31
|
+
targetValue += blinkValue;
|
|
32
|
+
}
|
|
33
|
+
targetValue = MathUtils.clamp(targetValue, 0, 1);
|
|
34
|
+
if (this.headMesh.morphTargetInfluences) {
|
|
35
|
+
this.headMesh.morphTargetInfluences[index] = MathUtils.lerp(this.headMesh.morphTargetInfluences[index] || 0, targetValue, VISEME_SMOOTHING);
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
this.previousEmotionKeys = currentEmotionKeys;
|
|
39
|
+
}
|
|
40
|
+
calculateBlinkValue(currentTime, blinkState, eyeBlink) {
|
|
41
|
+
if (!eyeBlink)
|
|
42
|
+
return 0;
|
|
43
|
+
let blinkValue = 0;
|
|
44
|
+
if (currentTime >= blinkState.nextBlinkTime && !blinkState.isBlinking) {
|
|
45
|
+
blinkState.isBlinking = true;
|
|
46
|
+
blinkState.blinkStartTime = currentTime;
|
|
47
|
+
blinkState.lastBlinkTime = currentTime;
|
|
48
|
+
blinkState.nextBlinkTime =
|
|
49
|
+
currentTime +
|
|
50
|
+
Math.random() * (BLINK_CONFIG.maxInterval - BLINK_CONFIG.minInterval) +
|
|
51
|
+
BLINK_CONFIG.minInterval;
|
|
52
|
+
}
|
|
53
|
+
if (blinkState.isBlinking) {
|
|
54
|
+
const blinkProgress = (currentTime - blinkState.blinkStartTime) / BLINK_CONFIG.blinkDuration;
|
|
55
|
+
if (blinkProgress <= 0.5) {
|
|
56
|
+
blinkValue = blinkProgress * 2;
|
|
57
|
+
}
|
|
58
|
+
else if (blinkProgress <= 1) {
|
|
59
|
+
blinkValue = 2 - blinkProgress * 2;
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
blinkState.isBlinking = false;
|
|
63
|
+
blinkValue = 0;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return blinkValue;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=MorphTargetController.js.map
|
package/esm/components/Avatar/AvatarView/AvatarComponent/components/MorphTargetController.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MorphTargetController.js","sourceRoot":"","sources":["../../../../../../src/components/Avatar/AvatarView/AvatarComponent/components/MorphTargetController.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Vector3 } from 'three';
|
|
2
|
+
export declare class AvatarPositionController {
|
|
3
|
+
private currentScale;
|
|
4
|
+
private targetScale;
|
|
5
|
+
private currentPosition;
|
|
6
|
+
private basePosition;
|
|
7
|
+
private defaultPosition;
|
|
8
|
+
private zoomedPosition;
|
|
9
|
+
private initialCameraPosition;
|
|
10
|
+
constructor(defaultPosition?: Vector3, zoomedPosition?: Vector3, initialCameraZ?: number);
|
|
11
|
+
private mapHeightToScale;
|
|
12
|
+
private mapDepthToCamera;
|
|
13
|
+
updateHeight(heightValue: number, isHalfBody: boolean): void;
|
|
14
|
+
updateDepth(depthValue: number, isHalfBody: boolean): number;
|
|
15
|
+
updateBasePosition(isZoomed: boolean): void;
|
|
16
|
+
updateScale(lerpFactor: number): Vector3;
|
|
17
|
+
getPosition(): Vector3;
|
|
18
|
+
reset(): void;
|
|
19
|
+
}
|