@revrag-ai/embed-react-native 1.0.15 → 1.0.17
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/dist/commonjs/api/api.js +6 -5
- package/dist/commonjs/api/api.js.map +1 -1
- package/dist/commonjs/components/Embed/EmbedButton.js +140 -318
- package/dist/commonjs/components/Embed/EmbedButton.js.map +1 -1
- package/dist/commonjs/components/Embed/EmbedVoice.js +16 -4
- package/dist/commonjs/components/Embed/EmbedVoice.js.map +1 -1
- package/dist/commonjs/context/EmbedProvider.js +638 -0
- package/dist/commonjs/context/EmbedProvider.js.map +1 -0
- package/dist/commonjs/events/embed.event.js +141 -7
- package/dist/commonjs/events/embed.event.js.map +1 -1
- package/dist/commonjs/hooks/EmbedButton.animations.js +181 -0
- package/dist/commonjs/hooks/EmbedButton.animations.js.map +1 -0
- package/dist/commonjs/hooks/EmbedButton.helpers.js +90 -0
- package/dist/commonjs/hooks/EmbedButton.helpers.js.map +1 -0
- package/dist/commonjs/hooks/EmbedButton.hooks.js +165 -0
- package/dist/commonjs/hooks/EmbedButton.hooks.js.map +1 -0
- package/dist/commonjs/hooks/initialize.js +65 -25
- package/dist/commonjs/hooks/initialize.js.map +1 -1
- package/dist/commonjs/index.js +14 -0
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/utils/constant.js +88 -0
- package/dist/commonjs/utils/constant.js.map +1 -0
- package/dist/commonjs/utils/reanimated.helper.js +2 -3
- package/dist/commonjs/utils/reanimated.helper.js.map +1 -1
- package/dist/module/api/api.js +6 -6
- package/dist/module/api/api.js.map +1 -1
- package/dist/module/components/Embed/EmbedButton.js +141 -320
- package/dist/module/components/Embed/EmbedButton.js.map +1 -1
- package/dist/module/components/Embed/EmbedVoice.js +16 -4
- package/dist/module/components/Embed/EmbedVoice.js.map +1 -1
- package/dist/module/context/EmbedProvider.js +626 -0
- package/dist/module/context/EmbedProvider.js.map +1 -0
- package/dist/module/events/embed.event.js +144 -5
- package/dist/module/events/embed.event.js.map +1 -1
- package/dist/module/hooks/EmbedButton.animations.js +172 -0
- package/dist/module/hooks/EmbedButton.animations.js.map +1 -0
- package/dist/module/hooks/EmbedButton.helpers.js +80 -0
- package/dist/module/hooks/EmbedButton.helpers.js.map +1 -0
- package/dist/module/hooks/EmbedButton.hooks.js +160 -0
- package/dist/module/hooks/EmbedButton.hooks.js.map +1 -0
- package/dist/module/hooks/initialize.js +66 -26
- package/dist/module/hooks/initialize.js.map +1 -1
- package/dist/module/index.js +3 -2
- package/dist/module/index.js.map +1 -1
- package/dist/module/utils/constant.js +82 -0
- package/dist/module/utils/constant.js.map +1 -0
- package/dist/module/utils/reanimated.helper.js +2 -3
- package/dist/module/utils/reanimated.helper.js.map +1 -1
- package/dist/typescript/src/api/api.d.ts +4 -3
- package/dist/typescript/src/api/api.d.ts.map +1 -1
- package/dist/typescript/src/api/types/embed.api.types.d.ts +1 -1
- package/dist/typescript/src/api/types/embed.api.types.d.ts.map +1 -1
- package/dist/typescript/src/components/Embed/EmbedButton.d.ts +5 -25
- package/dist/typescript/src/components/Embed/EmbedButton.d.ts.map +1 -1
- package/dist/typescript/src/components/Embed/EmbedVoice.d.ts.map +1 -1
- package/dist/typescript/src/context/EmbedProvider.d.ts +306 -0
- package/dist/typescript/src/context/EmbedProvider.d.ts.map +1 -0
- package/dist/typescript/src/events/embed.event.d.ts +79 -1
- package/dist/typescript/src/events/embed.event.d.ts.map +1 -1
- package/dist/typescript/src/hooks/EmbedButton.animations.d.ts +38 -0
- package/dist/typescript/src/hooks/EmbedButton.animations.d.ts.map +1 -0
- package/dist/typescript/src/hooks/EmbedButton.helpers.d.ts +49 -0
- package/dist/typescript/src/hooks/EmbedButton.helpers.d.ts.map +1 -0
- package/dist/typescript/src/hooks/EmbedButton.hooks.d.ts +49 -0
- package/dist/typescript/src/hooks/EmbedButton.hooks.d.ts.map +1 -0
- package/dist/typescript/src/hooks/initialize.d.ts.map +1 -1
- package/dist/typescript/src/hooks/types/initialize.types.d.ts +1 -1
- package/dist/typescript/src/hooks/types/initialize.types.d.ts.map +1 -1
- package/dist/typescript/src/index.d.ts +5 -3
- package/dist/typescript/src/index.d.ts.map +1 -1
- package/dist/typescript/src/index.types.d.ts +1 -1
- package/dist/typescript/src/index.types.d.ts.map +1 -1
- package/dist/typescript/src/utils/constant.d.ts +45 -0
- package/dist/typescript/src/utils/constant.d.ts.map +1 -0
- package/dist/typescript/src/utils/reanimated.helper.d.ts.map +1 -1
- package/package.json +6 -2
|
@@ -1,66 +1,36 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
|
-
* @file
|
|
5
|
-
* @description A customizable floating action button component for
|
|
6
|
-
*
|
|
4
|
+
* @file EmbedButton.tsx
|
|
5
|
+
* @description A customizable floating action button component for voice agent interactions.
|
|
6
|
+
* Features: draggable, expandable, animated, with call controls and auto-trigger support.
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
import LottieView from 'lottie-react-native';
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
10
|
+
import { useMemo, useRef, useState, useEffect } from 'react';
|
|
11
|
+
import { Image, Text, TouchableOpacity, View } from 'react-native';
|
|
12
|
+
import { GestureDetector } from 'react-native-gesture-handler';
|
|
13
13
|
import LinearGradient from 'react-native-linear-gradient';
|
|
14
14
|
import { useVoiceAgent } from "../../hooks/voiceagent.js";
|
|
15
|
-
import { getAgentData } from "../../store/store.key.js";
|
|
16
15
|
import { createEmbedButtonStyles } from "../styles/EmbedButton.style.js";
|
|
17
|
-
import { getReanimatedAPI, showReanimatedSetupError } from "../../utils/reanimated.helper.js";
|
|
18
16
|
import Voice from "./EmbedVoice.js";
|
|
19
17
|
import { WaveformVisualizer } from "./EmbedAudioWave.js";
|
|
20
|
-
import {
|
|
18
|
+
import Embed, { AgentEvent } from "../../events/embed.event.js";
|
|
21
19
|
|
|
22
|
-
//
|
|
23
|
-
import {
|
|
24
|
-
const {
|
|
25
|
-
useSharedValue,
|
|
26
|
-
useAnimatedStyle,
|
|
27
|
-
withTiming,
|
|
28
|
-
withSpring,
|
|
29
|
-
withRepeat,
|
|
30
|
-
withSequence,
|
|
31
|
-
runOnJS,
|
|
32
|
-
Easing,
|
|
33
|
-
Animated,
|
|
34
|
-
isAvailable: isReanimatedAvailable
|
|
35
|
-
} = getReanimatedAPI();
|
|
36
|
-
|
|
37
|
-
// Show warning if reanimated is not available
|
|
38
|
-
if (!isReanimatedAvailable) {
|
|
39
|
-
showReanimatedSetupError();
|
|
40
|
-
}
|
|
41
|
-
const {
|
|
42
|
-
width: SCREEN_WIDTH,
|
|
43
|
-
height: SCREEN_HEIGHT
|
|
44
|
-
} = Dimensions.get('window');
|
|
45
|
-
const BUTTON_WIDTH = 60;
|
|
46
|
-
const EXPANDED_WIDTH = SCREEN_WIDTH * 0.9;
|
|
47
|
-
const BUTTON_HEIGHT = 60;
|
|
48
|
-
const GRADIENT_COLORS = ['#1E0844', '#B391F3'];
|
|
20
|
+
// Helpers and constants
|
|
21
|
+
import { BUTTON_DIMENSIONS, DEFAULT_GRADIENT_COLORS, formatDuration, ICON_URLS } from "../../hooks/EmbedButton.helpers.js";
|
|
49
22
|
|
|
50
|
-
//
|
|
51
|
-
|
|
52
|
-
const MIC_OFF_ICON = 'https://revrag-dev.s3.ap-south-1.amazonaws.com/Avatars/unmute.png';
|
|
23
|
+
// Custom hooks
|
|
24
|
+
import { useCallDuration, useCallManagement, useConfigData, useInactivityBehavior } from "../../hooks/EmbedButton.hooks.js";
|
|
53
25
|
|
|
54
|
-
//
|
|
55
|
-
|
|
56
|
-
const AMPLIFY_ANIMATION = 'https://revrag-dev.s3.ap-south-1.amazonaws.com/Avatars/amplify.json';
|
|
26
|
+
// Animation hooks
|
|
27
|
+
import { Animated, createPanGesture, useAnimationValues, useBreathingAnimation, useButtonAnimatedStyles, useButtonAnimations, usePopupAnimatedStyles } from "../../hooks/EmbedButton.animations.js";
|
|
57
28
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
*/
|
|
29
|
+
// ==================== STYLES CONFIG ====================
|
|
30
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
61
31
|
const defaultStyles = {
|
|
62
|
-
buttonWidth:
|
|
63
|
-
buttonHeight:
|
|
32
|
+
buttonWidth: BUTTON_DIMENSIONS.WIDTH,
|
|
33
|
+
buttonHeight: BUTTON_DIMENSIONS.HEIGHT,
|
|
64
34
|
borderRadius: 100,
|
|
65
35
|
marginBottom: 20,
|
|
66
36
|
spacing: {
|
|
@@ -73,37 +43,17 @@ const defaultStyles = {
|
|
|
73
43
|
}
|
|
74
44
|
};
|
|
75
45
|
|
|
46
|
+
// ==================== MAIN COMPONENT ====================
|
|
76
47
|
/**
|
|
77
|
-
*
|
|
48
|
+
* EmbedButton - Main voice agent floating action button
|
|
78
49
|
*
|
|
79
|
-
* A floating action button that can be dragged around the screen and expanded to show additional content.
|
|
80
|
-
* Features include:
|
|
81
|
-
* - Draggable functionality
|
|
82
|
-
* - Expandable menu
|
|
83
|
-
* - Animated transitions
|
|
84
|
-
* - Gradient background
|
|
85
|
-
* - Customizable styling
|
|
86
|
-
*
|
|
87
|
-
* @component
|
|
88
50
|
* @example
|
|
89
51
|
* ```tsx
|
|
90
|
-
* <
|
|
91
|
-
* isOpen={false}
|
|
92
|
-
* onPress={(isOpen) => console.log('Button pressed:', isOpen)}
|
|
93
|
-
* menuComponent={<YourMenuComponent />}
|
|
94
|
-
* />
|
|
52
|
+
* <EmbedButton />
|
|
95
53
|
* ```
|
|
96
54
|
*/
|
|
97
|
-
|
|
98
|
-
/**
|
|
99
|
-
* Generates random sentences for testing or placeholder content
|
|
100
|
-
* @param count - Number of sentences to generate (default: 1)
|
|
101
|
-
* @param minWords - Minimum words per sentence (default: 5)
|
|
102
|
-
* @param maxWords - Maximum words per sentence (default: 15)
|
|
103
|
-
* @returns Array of random sentences
|
|
104
|
-
*/
|
|
105
|
-
|
|
106
55
|
export function EmbedButton() {
|
|
56
|
+
// ==================== VOICE AGENT STATE ====================
|
|
107
57
|
const {
|
|
108
58
|
initializeVoiceAgent,
|
|
109
59
|
tokenDetails,
|
|
@@ -113,278 +63,143 @@ export function EmbedButton() {
|
|
|
113
63
|
muteMic,
|
|
114
64
|
unmuteMic,
|
|
115
65
|
connectionState,
|
|
116
|
-
roomRef
|
|
117
|
-
getPopupDescription
|
|
66
|
+
roomRef
|
|
118
67
|
} = useVoiceAgent();
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
const [popupDescription, setPopupDescription] = useState('');
|
|
68
|
+
|
|
69
|
+
// ==================== LOCAL STATE ====================
|
|
122
70
|
const [isOpen, setIsOpen] = useState(false);
|
|
123
|
-
const [callDuration, setCallDuration] = useState(0);
|
|
124
|
-
const timerRef = useRef(null);
|
|
125
71
|
const lottieRef = useRef(null);
|
|
72
|
+
const styles = useMemo(() => createEmbedButtonStyles(defaultStyles), []);
|
|
126
73
|
|
|
127
|
-
//
|
|
128
|
-
const
|
|
129
|
-
const
|
|
130
|
-
|
|
131
|
-
|
|
74
|
+
// ==================== CUSTOM HOOKS ====================
|
|
75
|
+
const configData = useConfigData();
|
|
76
|
+
const {
|
|
77
|
+
callDuration,
|
|
78
|
+
resetDuration
|
|
79
|
+
} = useCallDuration(connectionState);
|
|
80
|
+
const {
|
|
81
|
+
handleStartCall,
|
|
82
|
+
handleEndCall,
|
|
83
|
+
handleMicToggle
|
|
84
|
+
} = useCallManagement({
|
|
85
|
+
initializeVoiceAgent,
|
|
86
|
+
endCall,
|
|
87
|
+
muteMic,
|
|
88
|
+
unmuteMic,
|
|
89
|
+
isMicMuted,
|
|
90
|
+
resetDuration,
|
|
91
|
+
setIsOpen
|
|
132
92
|
});
|
|
133
|
-
const
|
|
134
|
-
|
|
135
|
-
|
|
93
|
+
const {
|
|
94
|
+
isAutoOpen,
|
|
95
|
+
setIsAutoOpen
|
|
96
|
+
} = useInactivityBehavior({
|
|
97
|
+
configData,
|
|
98
|
+
isOpen,
|
|
99
|
+
isLoading,
|
|
100
|
+
hasActiveToken: !!tokenDetails?.token,
|
|
101
|
+
onStartCall: handleStartCall
|
|
136
102
|
});
|
|
137
|
-
const menuAnimation = useSharedValue(0);
|
|
138
|
-
const buttonWidth = useSharedValue(BUTTON_WIDTH);
|
|
139
|
-
const buttonScale = useSharedValue(1);
|
|
140
|
-
// Styles
|
|
141
|
-
const styles = createEmbedButtonStyles(defaultStyles);
|
|
142
|
-
const [isAutoOpen, setIsAutoOpen] = useState(false);
|
|
143
|
-
useEffect(() => {
|
|
144
|
-
const autoOpenTimer = setTimeout(async () => {
|
|
145
|
-
if (!isOpen) {
|
|
146
|
-
const response = await getPopupDescription();
|
|
147
|
-
if (response) {
|
|
148
|
-
setPopupDescription(response);
|
|
149
|
-
setIsAutoOpen(true);
|
|
150
|
-
} else {
|
|
151
|
-
// todo: handle no popup description found
|
|
152
|
-
console.warn('No popup description found');
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
}, 15000); // 15 seconds
|
|
156
103
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
104
|
+
// ==================== ANIMATIONS ====================
|
|
105
|
+
const animationValues = useAnimationValues();
|
|
106
|
+
const {
|
|
107
|
+
isPressed,
|
|
108
|
+
offset,
|
|
109
|
+
start,
|
|
110
|
+
menuAnimation,
|
|
111
|
+
buttonWidth,
|
|
112
|
+
buttonScale
|
|
113
|
+
} = animationValues;
|
|
114
|
+
useButtonAnimations(isOpen, menuAnimation, buttonWidth);
|
|
115
|
+
useBreathingAnimation(isOpen, isAutoOpen, buttonScale);
|
|
116
|
+
const buttonAnimatedStyles = useButtonAnimatedStyles(isOpen, offset, buttonWidth, isPressed, buttonScale);
|
|
117
|
+
const popupAnimatedStyles = usePopupAnimatedStyles(offset, isPressed);
|
|
118
|
+
const panGesture = useMemo(() => createPanGesture(isPressed, offset, start, isOpen, setIsAutoOpen), [isPressed, offset, start, isOpen, setIsAutoOpen]);
|
|
161
119
|
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
*/
|
|
120
|
+
// ==================== AGENT EVENT EMISSIONS ====================
|
|
121
|
+
// Emit agent connected/disconnected events based on connection state
|
|
165
122
|
useEffect(() => {
|
|
166
|
-
const
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
123
|
+
const emitConnectionEvent = async () => {
|
|
124
|
+
if (connectionState === 'connected') {
|
|
125
|
+
await Embed.event.emit(AgentEvent.AGENT_CONNECTED, {
|
|
126
|
+
timestamp: new Date().toISOString(),
|
|
127
|
+
metadata: {
|
|
128
|
+
callDuration: 0
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
|
+
} else if (connectionState === 'disconnected' && callDuration > 0) {
|
|
132
|
+
// Only emit disconnected if we were previously connected
|
|
133
|
+
await Embed.event.emit(AgentEvent.AGENT_DISCONNECTED, {
|
|
134
|
+
timestamp: new Date().toISOString(),
|
|
135
|
+
metadata: {
|
|
136
|
+
callDuration
|
|
137
|
+
}
|
|
138
|
+
});
|
|
172
139
|
}
|
|
173
140
|
};
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
/**
|
|
178
|
-
* Set up a timer to track call duration when connected
|
|
179
|
-
*/
|
|
180
|
-
useEffect(() => {
|
|
181
|
-
if (connectionState === 'connected' && !timerRef.current) {
|
|
182
|
-
timerRef.current = setInterval(() => {
|
|
183
|
-
setCallDuration(prev => prev + 1);
|
|
184
|
-
}, 1000);
|
|
185
|
-
} else if (connectionState !== 'connected' && timerRef.current) {
|
|
186
|
-
clearInterval(timerRef.current);
|
|
187
|
-
timerRef.current = null;
|
|
188
|
-
|
|
189
|
-
// If we were previously connected and now disconnected, show an error
|
|
190
|
-
if (callDuration > 0) {
|
|
191
|
-
// todo: handle call disconnected
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
return () => {
|
|
195
|
-
if (timerRef.current) {
|
|
196
|
-
clearInterval(timerRef.current);
|
|
197
|
-
timerRef.current = null;
|
|
198
|
-
}
|
|
199
|
-
};
|
|
200
|
-
}, [connectionState, callDuration]);
|
|
201
|
-
|
|
202
|
-
/**
|
|
203
|
-
* Handle menu animation and button width transitions
|
|
204
|
-
*/
|
|
205
|
-
useEffect(() => {
|
|
206
|
-
menuAnimation.value = withTiming(isOpen ? 0.8 : 0, {
|
|
207
|
-
duration: 300
|
|
141
|
+
emitConnectionEvent().catch(error => {
|
|
142
|
+
console.error('Error emitting connection event:', error);
|
|
208
143
|
});
|
|
209
|
-
|
|
210
|
-
}, [isOpen, menuAnimation, buttonWidth]);
|
|
144
|
+
}, [connectionState, callDuration]);
|
|
211
145
|
|
|
212
|
-
//
|
|
146
|
+
// Emit popup visibility events when isAutoOpen changes
|
|
213
147
|
useEffect(() => {
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
}), withTiming(1, {
|
|
221
|
-
duration: 1500,
|
|
222
|
-
// Reduced from 1000ms to 600ms
|
|
223
|
-
easing: Easing.inOut(Easing.ease)
|
|
224
|
-
})), -1,
|
|
225
|
-
// Infinite repeat
|
|
226
|
-
false // Don't reverse
|
|
227
|
-
);
|
|
228
|
-
} else {
|
|
229
|
-
// Reset animation
|
|
230
|
-
buttonScale.value = withTiming(1, {
|
|
231
|
-
duration: 300
|
|
148
|
+
const emitPopupEvent = async () => {
|
|
149
|
+
await Embed.event.emit(AgentEvent.POPUP_MESSAGE_VISIBLE, {
|
|
150
|
+
value: isAutoOpen,
|
|
151
|
+
metadata: {
|
|
152
|
+
trigger: isAutoOpen ? 'auto_inactivity' : 'manual_dismiss'
|
|
153
|
+
}
|
|
232
154
|
});
|
|
233
|
-
}
|
|
234
|
-
}, [isOpen, isAutoOpen]);
|
|
235
|
-
|
|
236
|
-
/**
|
|
237
|
-
* Animated styles for the button
|
|
238
|
-
*/
|
|
239
|
-
const animatedStyles = useAnimatedStyle(() => {
|
|
240
|
-
const maxX = SCREEN_WIDTH - (isOpen ? EXPANDED_WIDTH : BUTTON_WIDTH) - 35;
|
|
241
|
-
const clampedX = Math.min(Math.max(offset.value.x, -maxX), 0);
|
|
242
|
-
return {
|
|
243
|
-
width: buttonWidth.value,
|
|
244
|
-
height: BUTTON_HEIGHT,
|
|
245
|
-
transform: [{
|
|
246
|
-
translateX: clampedX
|
|
247
|
-
}, {
|
|
248
|
-
translateY: offset.value.y
|
|
249
|
-
}, {
|
|
250
|
-
scale: withSpring(isPressed.value ? 0.95 : buttonScale.value)
|
|
251
|
-
}],
|
|
252
|
-
justifyContent: isOpen ? 'space-between' : 'flex-start',
|
|
253
|
-
overflow: 'hidden'
|
|
254
155
|
};
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
*/
|
|
260
|
-
const animatedTextStyles = useAnimatedStyle(() => {
|
|
261
|
-
const maxX = SCREEN_WIDTH;
|
|
262
|
-
const clampedX = Math.min(Math.max(offset.value.x, -maxX), 0);
|
|
263
|
-
return {
|
|
264
|
-
transform: [{
|
|
265
|
-
translateX: clampedX
|
|
266
|
-
}, {
|
|
267
|
-
translateY: offset.value.y
|
|
268
|
-
}, {
|
|
269
|
-
scale: withSpring(isPressed.value ? 1 : 1)
|
|
270
|
-
}]
|
|
271
|
-
};
|
|
272
|
-
});
|
|
273
|
-
|
|
274
|
-
/**
|
|
275
|
-
* Pan gesture handler for drag functionality
|
|
276
|
-
*/
|
|
277
|
-
const gesture = Gesture.Pan().onBegin(() => {
|
|
278
|
-
isPressed.value = true;
|
|
279
|
-
if (isAutoOpen) {
|
|
280
|
-
runOnJS(setIsAutoOpen)(false);
|
|
281
|
-
}
|
|
282
|
-
}).onUpdate(e => {
|
|
283
|
-
const maxX = SCREEN_WIDTH - (isOpen ? EXPANDED_WIDTH : BUTTON_WIDTH) - 0;
|
|
284
|
-
const newX = Math.min(Math.max(e.translationX + start.value.x, -maxX), 0);
|
|
285
|
-
const maxY = SCREEN_HEIGHT - 150;
|
|
286
|
-
const newY = Math.min(Math.max(e.translationY + start.value.y, -maxY), 0);
|
|
287
|
-
offset.value = {
|
|
288
|
-
x: newX,
|
|
289
|
-
y: newY
|
|
290
|
-
};
|
|
291
|
-
}).onEnd(() => {
|
|
292
|
-
start.value = {
|
|
293
|
-
x: offset.value.x,
|
|
294
|
-
y: offset.value.y
|
|
295
|
-
};
|
|
296
|
-
}).onFinalize(() => {
|
|
297
|
-
isPressed.value = false;
|
|
298
|
-
});
|
|
156
|
+
emitPopupEvent().catch(error => {
|
|
157
|
+
console.error('Error emitting popup visibility event:', error);
|
|
158
|
+
});
|
|
159
|
+
}, [isAutoOpen]);
|
|
299
160
|
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
*/
|
|
303
|
-
const handlePress = () => {
|
|
161
|
+
// ==================== HANDLERS ====================
|
|
162
|
+
const handleButtonPress = () => {
|
|
304
163
|
setIsOpen(!isOpen);
|
|
305
164
|
setIsAutoOpen(false);
|
|
306
165
|
};
|
|
307
|
-
const handleStartCall = async () => {
|
|
308
|
-
await checkPermissions();
|
|
309
|
-
setCallDuration(0);
|
|
310
|
-
await initializeVoiceAgent();
|
|
311
|
-
};
|
|
312
|
-
|
|
313
|
-
/**
|
|
314
|
-
* Render the button icon/animation
|
|
315
|
-
*/
|
|
316
|
-
|
|
317
|
-
const remoteSource = useMemo(() => ({
|
|
318
|
-
uri: configData?.icon_animation || AMPLIFY_ANIMATION
|
|
319
|
-
}), [configData?.icon_animation]);
|
|
320
|
-
const renderIcon = () => {
|
|
321
|
-
// When isAutoOpen is true, we don't play the Lottie animation
|
|
322
|
-
return /*#__PURE__*/_jsx(View, {
|
|
323
|
-
children: /*#__PURE__*/_jsx(LottieView, {
|
|
324
|
-
ref: lottieRef,
|
|
325
|
-
source: remoteSource,
|
|
326
|
-
autoPlay: true,
|
|
327
|
-
loop: true,
|
|
328
|
-
style: styles.iconImage,
|
|
329
|
-
enableMergePathsAndroidForKitKatAndAbove: true,
|
|
330
|
-
enableSafeModeAndroid: true
|
|
331
|
-
})
|
|
332
|
-
});
|
|
333
|
-
};
|
|
334
166
|
const handleConnected = () => {
|
|
335
|
-
//
|
|
336
|
-
};
|
|
337
|
-
const handleEndCall = async () => {
|
|
338
|
-
setIsOpen(false);
|
|
339
|
-
if (timerRef.current) {
|
|
340
|
-
clearInterval(timerRef.current);
|
|
341
|
-
timerRef.current = null;
|
|
342
|
-
}
|
|
343
|
-
setCallDuration(0);
|
|
344
|
-
await endCall();
|
|
345
|
-
};
|
|
346
|
-
const handleMicToggle = () => {
|
|
347
|
-
if (isMicMuted) {
|
|
348
|
-
unmuteMic();
|
|
349
|
-
} else {
|
|
350
|
-
muteMic();
|
|
351
|
-
}
|
|
167
|
+
// Hook for handling successful connection
|
|
352
168
|
};
|
|
353
169
|
|
|
354
|
-
//
|
|
355
|
-
const
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
170
|
+
// ==================== COMPUTED VALUES ====================
|
|
171
|
+
const lottieSource = useMemo(() => ({
|
|
172
|
+
uri: configData?.icon_animation || ICON_URLS.AMPLIFY_ANIMATION
|
|
173
|
+
}), [configData?.icon_animation]);
|
|
174
|
+
const statusText = useMemo(() => {
|
|
175
|
+
if (isLoading) return 'Connecting...';
|
|
176
|
+
if (tokenDetails?.token) return formatDuration(callDuration);
|
|
177
|
+
return configData?.agent_type || 'Onboarding Agent';
|
|
178
|
+
}, [isLoading, tokenDetails?.token, callDuration, configData?.agent_type]);
|
|
179
|
+
const gradientColors = configData?.gradient || DEFAULT_GRADIENT_COLORS;
|
|
180
|
+
const agentName = configData?.agent_name || 'Your AI Agent';
|
|
181
|
+
const popupText = configData?.popup_description || 'Any doubts? Ask agent now';
|
|
182
|
+
const connectButtonText = configData?.connect_button_title || 'Start Call';
|
|
360
183
|
|
|
361
|
-
//
|
|
362
|
-
const getStatusText = () => {
|
|
363
|
-
if (isLoading) {
|
|
364
|
-
return 'Connecting...';
|
|
365
|
-
} else if (tokenDetails?.token) {
|
|
366
|
-
return `${formatDuration(callDuration)}`;
|
|
367
|
-
} else {
|
|
368
|
-
return configData?.agent_type || 'Onboarding Agent';
|
|
369
|
-
}
|
|
370
|
-
};
|
|
184
|
+
// ==================== EARLY RETURNS ====================
|
|
371
185
|
if (!configData) return null;
|
|
186
|
+
|
|
187
|
+
// ==================== RENDER ====================
|
|
372
188
|
return /*#__PURE__*/_jsxs(View, {
|
|
373
189
|
style: styles.container,
|
|
374
190
|
children: [isAutoOpen && !isOpen && /*#__PURE__*/_jsx(Animated.View, {
|
|
375
|
-
style: [
|
|
191
|
+
style: [popupAnimatedStyles, styles.popupContainer],
|
|
376
192
|
children: /*#__PURE__*/_jsx(Text, {
|
|
377
193
|
style: styles.popupText,
|
|
378
|
-
children:
|
|
194
|
+
children: popupText
|
|
379
195
|
})
|
|
380
196
|
}), /*#__PURE__*/_jsx(GestureDetector, {
|
|
381
|
-
gesture:
|
|
197
|
+
gesture: panGesture,
|
|
382
198
|
children: /*#__PURE__*/_jsx(Animated.View, {
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
}],
|
|
199
|
+
pointerEvents: "auto",
|
|
200
|
+
style: [styles.button, buttonAnimatedStyles, styles.buttonContent],
|
|
386
201
|
children: /*#__PURE__*/_jsxs(LinearGradient, {
|
|
387
|
-
colors:
|
|
202
|
+
colors: gradientColors,
|
|
388
203
|
start: {
|
|
389
204
|
x: 0,
|
|
390
205
|
y: 0
|
|
@@ -400,25 +215,33 @@ export function EmbedButton() {
|
|
|
400
215
|
y: 0.5
|
|
401
216
|
},
|
|
402
217
|
children: [tokenDetails?.token && /*#__PURE__*/_jsx(Voice, {
|
|
403
|
-
url: tokenDetails
|
|
404
|
-
token: tokenDetails
|
|
218
|
+
url: tokenDetails.server_url,
|
|
219
|
+
token: tokenDetails.token,
|
|
405
220
|
onDisconnected: handleEndCall,
|
|
406
221
|
roomRef: roomRef,
|
|
407
222
|
onConnected: handleConnected
|
|
408
223
|
}), /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
409
|
-
onPress:
|
|
224
|
+
onPress: handleButtonPress,
|
|
410
225
|
style: styles.pressable,
|
|
411
|
-
children:
|
|
226
|
+
children: /*#__PURE__*/_jsx(LottieView, {
|
|
227
|
+
ref: lottieRef,
|
|
228
|
+
source: lottieSource,
|
|
229
|
+
autoPlay: true,
|
|
230
|
+
loop: true,
|
|
231
|
+
style: styles.iconImage,
|
|
232
|
+
enableMergePathsAndroidForKitKatAndAbove: true,
|
|
233
|
+
enableSafeModeAndroid: true
|
|
234
|
+
})
|
|
412
235
|
}), isOpen && /*#__PURE__*/_jsxs(View, {
|
|
413
236
|
style: styles.expandedContentContainer,
|
|
414
237
|
children: [/*#__PURE__*/_jsxs(View, {
|
|
415
238
|
style: styles.leftContentSection,
|
|
416
239
|
children: [/*#__PURE__*/_jsx(Text, {
|
|
417
240
|
style: [styles.agentNameText, styles.leftAlignedText],
|
|
418
|
-
children:
|
|
241
|
+
children: agentName
|
|
419
242
|
}), /*#__PURE__*/_jsx(Text, {
|
|
420
243
|
style: [styles.leftAlignedText, styles.statusText],
|
|
421
|
-
children:
|
|
244
|
+
children: statusText
|
|
422
245
|
})]
|
|
423
246
|
}), /*#__PURE__*/_jsx(View, {
|
|
424
247
|
style: styles.middleContentSection,
|
|
@@ -434,7 +257,7 @@ export function EmbedButton() {
|
|
|
434
257
|
style: styles.startCallButton,
|
|
435
258
|
children: /*#__PURE__*/_jsx(Text, {
|
|
436
259
|
style: styles.startCallText,
|
|
437
|
-
children:
|
|
260
|
+
children: connectButtonText
|
|
438
261
|
})
|
|
439
262
|
})
|
|
440
263
|
}), tokenDetails?.token && /*#__PURE__*/_jsxs(View, {
|
|
@@ -444,7 +267,7 @@ export function EmbedButton() {
|
|
|
444
267
|
onPress: handleMicToggle,
|
|
445
268
|
children: /*#__PURE__*/_jsx(Image, {
|
|
446
269
|
source: {
|
|
447
|
-
uri: isMicMuted ?
|
|
270
|
+
uri: isMicMuted ? ICON_URLS.MIC_OFF : ICON_URLS.MIC_ON
|
|
448
271
|
},
|
|
449
272
|
style: styles.buttonImage
|
|
450
273
|
})
|
|
@@ -453,7 +276,7 @@ export function EmbedButton() {
|
|
|
453
276
|
style: styles.endCallButton,
|
|
454
277
|
children: /*#__PURE__*/_jsx(Image, {
|
|
455
278
|
source: {
|
|
456
|
-
uri:
|
|
279
|
+
uri: ICON_URLS.END_CALL
|
|
457
280
|
},
|
|
458
281
|
style: styles.buttonImage
|
|
459
282
|
})
|
|
@@ -466,7 +289,5 @@ export function EmbedButton() {
|
|
|
466
289
|
})]
|
|
467
290
|
});
|
|
468
291
|
}
|
|
469
|
-
|
|
470
|
-
// Export default for easier imports
|
|
471
292
|
export default EmbedButton;
|
|
472
293
|
//# sourceMappingURL=EmbedButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["LottieView","useEffect","useMemo","useRef","useState","Dimensions","Image","Text","TouchableOpacity","View","Gesture","GestureDetector","LinearGradient","useVoiceAgent","getAgentData","createEmbedButtonStyles","getReanimatedAPI","showReanimatedSetupError","Voice","WaveformVisualizer","checkPermissions","jsx","_jsx","jsxs","_jsxs","useSharedValue","useAnimatedStyle","withTiming","withSpring","withRepeat","withSequence","runOnJS","Easing","Animated","isAvailable","isReanimatedAvailable","width","SCREEN_WIDTH","height","SCREEN_HEIGHT","get","BUTTON_WIDTH","EXPANDED_WIDTH","BUTTON_HEIGHT","GRADIENT_COLORS","MIC_ON_ICON","MIC_OFF_ICON","END_CALL_ICON","AMPLIFY_ANIMATION","defaultStyles","buttonWidth","buttonHeight","borderRadius","marginBottom","spacing","SMALL","MEDIUM","LARGE","EXTRA_SMALL","EXTRA_LARGE","EXTRA_EXTRA_LARGE","EmbedButton","initializeVoiceAgent","tokenDetails","endCall","isLoading","isMicMuted","muteMic","unmuteMic","connectionState","roomRef","getPopupDescription","configData","setConfigData","popupDescription","setPopupDescription","isOpen","setIsOpen","callDuration","setCallDuration","timerRef","lottieRef","isPressed","offset","x","y","start","menuAnimation","buttonScale","styles","isAutoOpen","setIsAutoOpen","autoOpenTimer","setTimeout","response","console","warn","clearTimeout","fetchAgentData","data","ui_config","error","current","setInterval","prev","clearInterval","value","duration","easing","inOut","ease","animatedStyles","maxX","clampedX","Math","min","max","transform","translateX","translateY","scale","justifyContent","overflow","animatedTextStyles","gesture","Pan","onBegin","onUpdate","e","newX","translationX","maxY","newY","translationY","onEnd","onFinalize","handlePress","handleStartCall","remoteSource","uri","icon_animation","renderIcon","children","ref","source","autoPlay","loop","style","iconImage","enableMergePathsAndroidForKitKatAndAbove","enableSafeModeAndroid","handleConnected","handleEndCall","handleMicToggle","formatDuration","seconds","minutes","floor","remainingSeconds","toString","padStart","getStatusText","token","agent_type","container","popupContainer","popupText","button","buttonContent","pointerEvents","colors","gradient","end","linearGradient","expandedLinearGradient","collapsedLinearGradient","angle","angleCenter","url","server_url","onDisconnected","onConnected","onPress","pressable","expandedContentContainer","leftContentSection","agentNameText","leftAlignedText","agent_name","statusText","middleContentSection","rightContentSection","buttonContainer","startCallButton","startCallText","start_call_text","muteButton","buttonImage","endCallButton"],"sourceRoot":"../../../../src","sources":["components/Embed/EmbedButton.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["LottieView","useMemo","useRef","useState","useEffect","Image","Text","TouchableOpacity","View","GestureDetector","LinearGradient","useVoiceAgent","createEmbedButtonStyles","Voice","WaveformVisualizer","Embed","AgentEvent","BUTTON_DIMENSIONS","DEFAULT_GRADIENT_COLORS","formatDuration","ICON_URLS","useCallDuration","useCallManagement","useConfigData","useInactivityBehavior","Animated","createPanGesture","useAnimationValues","useBreathingAnimation","useButtonAnimatedStyles","useButtonAnimations","usePopupAnimatedStyles","jsx","_jsx","jsxs","_jsxs","defaultStyles","buttonWidth","WIDTH","buttonHeight","HEIGHT","borderRadius","marginBottom","spacing","SMALL","MEDIUM","LARGE","EXTRA_SMALL","EXTRA_LARGE","EXTRA_EXTRA_LARGE","EmbedButton","initializeVoiceAgent","tokenDetails","endCall","isLoading","isMicMuted","muteMic","unmuteMic","connectionState","roomRef","isOpen","setIsOpen","lottieRef","styles","configData","callDuration","resetDuration","handleStartCall","handleEndCall","handleMicToggle","isAutoOpen","setIsAutoOpen","hasActiveToken","token","onStartCall","animationValues","isPressed","offset","start","menuAnimation","buttonScale","buttonAnimatedStyles","popupAnimatedStyles","panGesture","emitConnectionEvent","event","emit","AGENT_CONNECTED","timestamp","Date","toISOString","metadata","AGENT_DISCONNECTED","catch","error","console","emitPopupEvent","POPUP_MESSAGE_VISIBLE","value","trigger","handleButtonPress","handleConnected","lottieSource","uri","icon_animation","AMPLIFY_ANIMATION","statusText","agent_type","gradientColors","gradient","agentName","agent_name","popupText","popup_description","connectButtonText","connect_button_title","style","container","children","popupContainer","gesture","pointerEvents","button","buttonContent","colors","x","y","end","linearGradient","expandedLinearGradient","collapsedLinearGradient","angle","angleCenter","url","server_url","onDisconnected","onConnected","onPress","pressable","ref","source","autoPlay","loop","iconImage","enableMergePathsAndroidForKitKatAndAbove","enableSafeModeAndroid","expandedContentContainer","leftContentSection","agentNameText","leftAlignedText","middleContentSection","rightContentSection","buttonContainer","startCallButton","startCallText","muteButton","MIC_OFF","MIC_ON","buttonImage","endCallButton","END_CALL"],"sourceRoot":"../../../../src","sources":["components/Embed/EmbedButton.tsx"],"mappings":"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","ignoreList":[]}
|