@revrag-ai/embed-react-native 1.0.27 → 1.0.28

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 (111) hide show
  1. package/README.md +5 -0
  2. package/android/build.gradle +1 -0
  3. package/dist/commonjs/api/api.js.map +1 -1
  4. package/dist/commonjs/assets/fonts/PlaywriteNZBasic-ExtraLight.ttf +0 -0
  5. package/dist/commonjs/assets/fonts/PlaywriteNZBasic-Light.ttf +0 -0
  6. package/dist/commonjs/assets/fonts/PlaywriteNZBasic-Regular.ttf +0 -0
  7. package/dist/commonjs/assets/fonts/PlaywriteNZBasic-Thin.ttf +0 -0
  8. package/dist/commonjs/components/DynamicComponent/Typewriter.js +124 -0
  9. package/dist/commonjs/components/DynamicComponent/Typewriter.js.map +1 -0
  10. package/dist/commonjs/components/Embed/EmbedButton.js +307 -93
  11. package/dist/commonjs/components/Embed/EmbedButton.js.map +1 -1
  12. package/dist/commonjs/components/styles/EmbedButton.style.js +112 -158
  13. package/dist/commonjs/components/styles/EmbedButton.style.js.map +1 -1
  14. package/dist/commonjs/context/EmbedProvider.js +187 -14
  15. package/dist/commonjs/context/EmbedProvider.js.map +1 -1
  16. package/dist/commonjs/events/clickEventTracker.js +210 -0
  17. package/dist/commonjs/events/clickEventTracker.js.map +1 -0
  18. package/dist/commonjs/events/embed.event.js +11 -3
  19. package/dist/commonjs/events/embed.event.js.map +1 -1
  20. package/dist/commonjs/hooks/EmbedButton.animations.js +115 -15
  21. package/dist/commonjs/hooks/EmbedButton.animations.js.map +1 -1
  22. package/dist/commonjs/hooks/EmbedButton.helpers.js +11 -3
  23. package/dist/commonjs/hooks/EmbedButton.helpers.js.map +1 -1
  24. package/dist/commonjs/hooks/EmbedButton.hooks.js +14 -9
  25. package/dist/commonjs/hooks/EmbedButton.hooks.js.map +1 -1
  26. package/dist/commonjs/hooks/voiceagent.js +34 -12
  27. package/dist/commonjs/hooks/voiceagent.js.map +1 -1
  28. package/dist/commonjs/index.js +6 -2
  29. package/dist/commonjs/index.js.map +1 -1
  30. package/dist/commonjs/utils/constant.js +6 -1
  31. package/dist/commonjs/utils/constant.js.map +1 -1
  32. package/dist/commonjs/utils/permision.js +42 -1
  33. package/dist/commonjs/utils/permision.js.map +1 -1
  34. package/dist/commonjs/utils/reanimated.helper.js +4 -0
  35. package/dist/commonjs/utils/reanimated.helper.js.map +1 -1
  36. package/dist/module/api/api.js.map +1 -1
  37. package/dist/module/assets/fonts/PlaywriteNZBasic-ExtraLight.ttf +0 -0
  38. package/dist/module/assets/fonts/PlaywriteNZBasic-Light.ttf +0 -0
  39. package/dist/module/assets/fonts/PlaywriteNZBasic-Regular.ttf +0 -0
  40. package/dist/module/assets/fonts/PlaywriteNZBasic-Thin.ttf +0 -0
  41. package/dist/module/components/DynamicComponent/Typewriter.js +122 -0
  42. package/dist/module/components/DynamicComponent/Typewriter.js.map +1 -0
  43. package/dist/module/components/Embed/EmbedButton.js +312 -98
  44. package/dist/module/components/Embed/EmbedButton.js.map +1 -1
  45. package/dist/module/components/styles/EmbedButton.style.js +111 -157
  46. package/dist/module/components/styles/EmbedButton.style.js.map +1 -1
  47. package/dist/module/context/EmbedProvider.js +187 -14
  48. package/dist/module/context/EmbedProvider.js.map +1 -1
  49. package/dist/module/events/clickEventTracker.js +199 -0
  50. package/dist/module/events/clickEventTracker.js.map +1 -0
  51. package/dist/module/events/embed.event.js +11 -3
  52. package/dist/module/events/embed.event.js.map +1 -1
  53. package/dist/module/hooks/EmbedButton.animations.js +109 -13
  54. package/dist/module/hooks/EmbedButton.animations.js.map +1 -1
  55. package/dist/module/hooks/EmbedButton.helpers.js +10 -2
  56. package/dist/module/hooks/EmbedButton.helpers.js.map +1 -1
  57. package/dist/module/hooks/EmbedButton.hooks.js +14 -9
  58. package/dist/module/hooks/EmbedButton.hooks.js.map +1 -1
  59. package/dist/module/hooks/voiceagent.js +34 -12
  60. package/dist/module/hooks/voiceagent.js.map +1 -1
  61. package/dist/module/index.js +8 -3
  62. package/dist/module/index.js.map +1 -1
  63. package/dist/module/utils/constant.js +6 -1
  64. package/dist/module/utils/constant.js.map +1 -1
  65. package/dist/module/utils/permision.js +42 -1
  66. package/dist/module/utils/permision.js.map +1 -1
  67. package/dist/module/utils/reanimated.helper.js +4 -0
  68. package/dist/module/utils/reanimated.helper.js.map +1 -1
  69. package/dist/typescript/src/api/api.d.ts.map +1 -1
  70. package/dist/typescript/src/components/DynamicComponent/Typewriter.d.ts +15 -0
  71. package/dist/typescript/src/components/DynamicComponent/Typewriter.d.ts.map +1 -0
  72. package/dist/typescript/src/components/Embed/EmbedButton.d.ts +7 -1
  73. package/dist/typescript/src/components/Embed/EmbedButton.d.ts.map +1 -1
  74. package/dist/typescript/src/components/styles/EmbedButton.style.d.ts +22 -114
  75. package/dist/typescript/src/components/styles/EmbedButton.style.d.ts.map +1 -1
  76. package/dist/typescript/src/context/EmbedProvider.d.ts +30 -0
  77. package/dist/typescript/src/context/EmbedProvider.d.ts.map +1 -1
  78. package/dist/typescript/src/events/__tests__/agent-event-emitter.test.d.ts +5 -0
  79. package/dist/typescript/src/events/__tests__/agent-event-emitter.test.d.ts.map +1 -0
  80. package/dist/typescript/src/events/__tests__/clickEventTracker.test.d.ts +5 -0
  81. package/dist/typescript/src/events/__tests__/clickEventTracker.test.d.ts.map +1 -0
  82. package/dist/typescript/src/events/__tests__/embed.event.test.d.ts +5 -0
  83. package/dist/typescript/src/events/__tests__/embed.event.test.d.ts.map +1 -0
  84. package/dist/typescript/src/events/__tests__/embed.validators.test.d.ts +5 -0
  85. package/dist/typescript/src/events/__tests__/embed.validators.test.d.ts.map +1 -0
  86. package/dist/typescript/src/events/clickEventTracker.d.ts +70 -0
  87. package/dist/typescript/src/events/clickEventTracker.d.ts.map +1 -0
  88. package/dist/typescript/src/events/embed.event.d.ts.map +1 -1
  89. package/dist/typescript/src/hooks/EmbedButton.animations.d.ts +29 -6
  90. package/dist/typescript/src/hooks/EmbedButton.animations.d.ts.map +1 -1
  91. package/dist/typescript/src/hooks/EmbedButton.helpers.d.ts +60 -8
  92. package/dist/typescript/src/hooks/EmbedButton.helpers.d.ts.map +1 -1
  93. package/dist/typescript/src/hooks/EmbedButton.hooks.d.ts +2 -1
  94. package/dist/typescript/src/hooks/EmbedButton.hooks.d.ts.map +1 -1
  95. package/dist/typescript/src/hooks/types/voiceAgent.types.d.ts +2 -0
  96. package/dist/typescript/src/hooks/types/voiceAgent.types.d.ts.map +1 -1
  97. package/dist/typescript/src/hooks/voiceagent.d.ts.map +1 -1
  98. package/dist/typescript/src/index.d.ts +8 -9
  99. package/dist/typescript/src/index.d.ts.map +1 -1
  100. package/dist/typescript/src/utils/constant.d.ts +1 -1
  101. package/dist/typescript/src/utils/constant.d.ts.map +1 -1
  102. package/dist/typescript/src/utils/permision.d.ts.map +1 -1
  103. package/dist/typescript/src/utils/reanimated.helper.d.ts +2 -0
  104. package/dist/typescript/src/utils/reanimated.helper.d.ts.map +1 -1
  105. package/package.json +3 -8
  106. package/react-native.config.js +1 -0
  107. package/revrag-ai-embed-react-native.podspec +1 -0
  108. package/src/assets/fonts/PlaywriteNZBasic-ExtraLight.ttf +0 -0
  109. package/src/assets/fonts/PlaywriteNZBasic-Light.ttf +0 -0
  110. package/src/assets/fonts/PlaywriteNZBasic-Regular.ttf +0 -0
  111. package/src/assets/fonts/PlaywriteNZBasic-Thin.ttf +0 -0
@@ -6,29 +6,30 @@
6
6
  * Features: draggable, expandable, animated, with call controls and auto-trigger support.
7
7
  */
8
8
 
9
+ import { ConnectionState } from 'livekit-client';
9
10
  import LottieView from 'lottie-react-native';
10
- import { useEffect, useMemo, useRef, useState } from 'react';
11
+ import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
11
12
  import { Image, Text, TouchableOpacity, View } from 'react-native';
12
- import { GestureDetector } from 'react-native-gesture-handler';
13
+ import { GestureDetector, ScrollView } from 'react-native-gesture-handler';
13
14
  import LinearGradient from 'react-native-linear-gradient';
14
- import { ConnectionState } from 'livekit-client';
15
+ import Embed, { AgentEvent, EventKeys } from "../../events/embed.event.js";
15
16
  import { useVoiceAgent } from "../../hooks/voiceagent.js";
16
17
  import { createEmbedButtonStyles } from "../styles/EmbedButton.style.js";
17
18
  import { WaveformVisualizer } from "./EmbedAudioWave.js";
18
19
  import Voice from "./EmbedVoice.js";
19
- import Embed, { AgentEvent } from "../../events/embed.event.js";
20
20
 
21
21
  // Helpers and constants
22
- import { BUTTON_DIMENSIONS, DEFAULT_GRADIENT_COLORS, formatDuration, ICON_URLS } from "../../hooks/EmbedButton.helpers.js";
22
+ import { BUTTON_DIMENSIONS, DEFAULT_GRADIENT_COLORS, FOOTER_SAFE_INSET, formatDuration, ICON_URLS } from "../../hooks/EmbedButton.helpers.js";
23
+ import Typewriter from "../DynamicComponent/Typewriter.js";
23
24
 
24
25
  // Custom hooks
25
26
  import { useCallDuration, useCallManagement, useConfigData, useInactivityBehavior } from "../../hooks/EmbedButton.hooks.js";
26
27
 
27
28
  // Animation hooks
28
- import { Animated, createPanGesture, useAnimationValues, useBreathingAnimation, useButtonAnimatedStyles, useButtonAnimations, usePopupAnimatedStyles } from "../../hooks/EmbedButton.animations.js";
29
+ import { Animated, createPanGesture, useAnimationValues, useBreathingAnimation, useButtonAnimatedStyles, useButtonAnimations, useExpandedContentAnimatedStyles, useInputSectionAnimations, usePopupAnimatedStyles } from "../../hooks/EmbedButton.animations.js";
29
30
 
30
31
  // ==================== STYLES CONFIG ====================
31
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
32
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
32
33
  const defaultStyles = {
33
34
  buttonWidth: BUTTON_DIMENSIONS.WIDTH,
34
35
  buttonHeight: BUTTON_DIMENSIONS.HEIGHT,
@@ -45,35 +46,57 @@ const defaultStyles = {
45
46
  };
46
47
 
47
48
  // ==================== MAIN COMPONENT ====================
49
+
48
50
  /**
49
51
  * EmbedButton - Main voice agent floating action button
50
52
  *
51
53
  * @example
52
54
  * ```tsx
53
55
  * <EmbedButton />
56
+ * <EmbedButton containerInset={{ right: 16, bottom: 24 }} />
54
57
  * ```
55
58
  */
56
- export function EmbedButton() {
59
+ export function EmbedButton({
60
+ containerInset
61
+ } = {}) {
57
62
  // ==================== VOICE AGENT STATE ====================
58
63
  const {
59
- initializeVoiceAgent,
60
64
  tokenDetails,
61
- endCall,
62
65
  isLoading,
63
66
  isMicMuted,
67
+ connectionState,
68
+ roomRef,
64
69
  muteMic,
70
+ endCall,
65
71
  unmuteMic,
66
- connectionState,
67
- roomRef
72
+ clearDataReceived,
73
+ dataTranscription: livekitData,
74
+ initializeVoiceAgent
68
75
  } = useVoiceAgent();
69
76
 
70
77
  // ==================== LOCAL STATE ====================
71
78
  const [isOpen, setIsOpen] = useState(false);
79
+ const [expandDirection, setExpandDirection] = useState('right');
72
80
  const lottieRef = useRef(null);
73
- const styles = useMemo(() => createEmbedButtonStyles(defaultStyles), []);
81
+ const calculationScrollRef = useRef(null);
82
+ const userScrolledUpRef = useRef(false);
83
+ const SCROLL_END_THRESHOLD = 20;
84
+
85
+ // Reset "user scrolled up" when calculation content changes so new content auto-scrolls to bottom
86
+ useEffect(() => {
87
+ if (livekitData?.type === 'calculation') {
88
+ userScrolledUpRef.current = false;
89
+ }
90
+ }, [livekitData?.list, livekitData?.type]);
74
91
 
75
92
  // ==================== CUSTOM HOOKS ====================
76
93
  const configData = useConfigData();
94
+ const styles = useMemo(() => createEmbedButtonStyles({
95
+ ...defaultStyles,
96
+ ...(containerInset != null && {
97
+ containerInset
98
+ })
99
+ }, configData), [configData, containerInset]);
77
100
  const {
78
101
  callDuration,
79
102
  resetDuration
@@ -83,13 +106,14 @@ export function EmbedButton() {
83
106
  handleEndCall,
84
107
  handleMicToggle
85
108
  } = useCallManagement({
86
- initializeVoiceAgent,
109
+ isOpen,
110
+ isMicMuted,
87
111
  endCall,
88
112
  muteMic,
113
+ setIsOpen,
89
114
  unmuteMic,
90
- isMicMuted,
91
115
  resetDuration,
92
- setIsOpen
116
+ initializeVoiceAgent
93
117
  });
94
118
  const {
95
119
  isAutoOpen,
@@ -110,13 +134,17 @@ export function EmbedButton() {
110
134
  start,
111
135
  menuAnimation,
112
136
  buttonWidth,
113
- buttonScale
137
+ buttonScale,
138
+ buttonHeight,
139
+ inputSectionProgress
114
140
  } = animationValues;
115
- useButtonAnimations(isOpen, menuAnimation, buttonWidth);
141
+ useButtonAnimations(isOpen || livekitData && Object.keys(livekitData).length > 0, menuAnimation, buttonWidth, offset, start, expandDirection);
142
+ useInputSectionAnimations(livekitData && Object.keys(livekitData).length > 0, inputSectionProgress, buttonHeight);
116
143
  useBreathingAnimation(isOpen, isAutoOpen, buttonScale);
117
- const buttonAnimatedStyles = useButtonAnimatedStyles(isOpen, offset, buttonWidth, isPressed, buttonScale);
118
- const popupAnimatedStyles = usePopupAnimatedStyles(offset, isPressed);
119
- const panGesture = useMemo(() => createPanGesture(isPressed, offset, start, isOpen, setIsAutoOpen), [isPressed, offset, start, isOpen, setIsAutoOpen]);
144
+ const buttonAnimatedStyles = useButtonAnimatedStyles(isOpen, offset, buttonWidth, isPressed, buttonScale, buttonHeight);
145
+ const expandedContentAnimatedStyles = useExpandedContentAnimatedStyles(menuAnimation);
146
+ const popupAnimatedStyles = usePopupAnimatedStyles(offset, isPressed, expandDirection);
147
+ const panGesture = useMemo(() => createPanGesture(isPressed, offset, start, isOpen, setIsAutoOpen, setExpandDirection), [isPressed, offset, start, isOpen, setIsAutoOpen]);
120
148
 
121
149
  // ==================== AGENT EVENT EMISSIONS ====================
122
150
  // Emit agent connected/disconnected events based on connection state
@@ -149,6 +177,13 @@ export function EmbedButton() {
149
177
  }).catch(error => {
150
178
  console.error('Error emitting connected event:', error);
151
179
  });
180
+
181
+ // Send analytics to backend when agent conversation has started (connected)
182
+ Embed.Event(EventKeys.ANALYTICS_DATA, {
183
+ event_name: 'agent_conversation_started'
184
+ }).catch(error => {
185
+ console.error('Error sending agent_conversation_started analytics:', error);
186
+ });
152
187
  } else if (prevState === ConnectionState.Connected && connectionState !== ConnectionState.Connected) {
153
188
  // Prevent duplicate disconnected events
154
189
  if (lastEmittedEventRef.current?.type === 'disconnected') {
@@ -178,52 +213,96 @@ export function EmbedButton() {
178
213
  }
179
214
  }, [connectionState, callDuration]); // Include callDuration to get fresh value
180
215
 
181
- // Emit popup visibility events when isAutoOpen changes
216
+ // Emit popup_message_visible when the popup is actually shown (isAutoOpen && !isOpen)
182
217
  useEffect(() => {
218
+ const popupVisible = isAutoOpen && !isOpen;
219
+ if (!popupVisible) return;
183
220
  const emitPopupEvent = async () => {
184
- await Embed.event.emit(AgentEvent.POPUP_MESSAGE_VISIBLE, {
185
- value: isAutoOpen,
221
+ await Embed.Event(EventKeys.ANALYTICS_DATA, {
222
+ event_name: 'popup_message_visible',
186
223
  metadata: {
187
- trigger: isAutoOpen ? 'auto_inactivity' : 'manual_dismiss'
224
+ value: true,
225
+ trigger: 'auto_inactivity'
188
226
  }
189
227
  });
190
228
  };
191
229
  emitPopupEvent().catch(error => {
192
230
  console.error('Error emitting popup visibility event:', error);
193
231
  });
194
- }, [isAutoOpen]);
232
+ }, [isAutoOpen, isOpen]);
233
+
234
+ // Emit gen_tool_triggered analytics when livekit data is first received
235
+ const prevLivekitDataRef = useRef(false);
236
+ useEffect(() => {
237
+ const isLivekitData = livekitData && Object.keys(livekitData).length > 0;
238
+ if (isLivekitData && !prevLivekitDataRef.current) {
239
+ prevLivekitDataRef.current = true;
240
+ Embed.Event(EventKeys.ANALYTICS_DATA, {
241
+ event_name: 'gen_tool_triggered',
242
+ metadata: {
243
+ source: 'livekit_data'
244
+ }
245
+ }).catch(error => {
246
+ console.error('Error sending gen_tool_triggered analytics:', error);
247
+ });
248
+ }
249
+ if (!isLivekitData) {
250
+ prevLivekitDataRef.current = false;
251
+ }
252
+ }, [livekitData]);
195
253
 
196
254
  // ==================== HANDLERS ====================
197
- const handleButtonPress = () => {
198
- setIsOpen(!isOpen);
255
+ const handleButtonPress = useCallback(async () => {
256
+ const eventName = isOpen ? 'agent_tap_to_close' : 'agent_tap_to_open';
257
+ try {
258
+ await Embed.Event(EventKeys.ANALYTICS_DATA, {
259
+ event_name: eventName,
260
+ metadata: {
261
+ button_pressed: 'button_pressed'
262
+ }
263
+ });
264
+ } catch (error) {
265
+ console.error('Error sending button_pressed analytics:', error);
266
+ }
267
+ setIsOpen(prev => !prev);
199
268
  setIsAutoOpen(false);
200
- };
201
- const handleConnected = () => {
202
- // Hook for handling successful connection
203
- };
269
+ }, [isOpen, setIsAutoOpen]);
270
+ const handleConnected = useCallback(() => {
271
+ // Reserved for connection success side effects (e.g. analytics)
272
+ }, []);
204
273
 
205
274
  // ==================== COMPUTED VALUES ====================
206
275
  const lottieSource = useMemo(() => ({
207
- uri: configData?.icon_animation || ICON_URLS.AMPLIFY_ANIMATION
208
- }), [configData?.icon_animation]);
276
+ uri: configData?.agentAvatar?.avatarUrl || ICON_URLS.AMPLIFY_ANIMATION
277
+ }), [configData?.agentAvatar?.avatarUrl]);
278
+ const micIconSource = useMemo(() => ({
279
+ uri: isMicMuted ? ICON_URLS.MIC_OFF : ICON_URLS.MIC_ON
280
+ }), [isMicMuted]);
209
281
  const statusText = useMemo(() => {
210
282
  if (isLoading) return 'Connecting...';
211
283
  if (tokenDetails?.token) return formatDuration(callDuration);
212
- return configData?.agent_type || 'Onboarding Agent';
213
- }, [isLoading, tokenDetails?.token, callDuration, configData?.agent_type]);
214
- const gradientColors = configData?.gradient || DEFAULT_GRADIENT_COLORS;
215
- const agentName = configData?.agent_name || 'Your AI Agent';
216
- const popupText = configData?.popup_description || 'Any doubts? Ask agent now';
217
- const connectButtonText = configData?.connect_button_title || 'Start Call';
284
+ return configData?.agentTextContent?.agentType ?? 'Onboarding Agent';
285
+ }, [isLoading, tokenDetails?.token, callDuration, configData?.agentTextContent?.agentType]);
286
+ const gradientColors = configData?.colorPalette?.grad1 != null && configData?.colorPalette?.grad2 != null ? [configData.colorPalette.grad1, configData.colorPalette.grad2] : configData?.colorPalette?.grad1 != null && configData?.colorPalette?.grad2 != null ? [configData.colorPalette.grad1, configData.colorPalette.grad2] : DEFAULT_GRADIENT_COLORS;
287
+ const agentName = configData?.agentTextContent?.agentName ?? 'Your AI Agent';
288
+ const popupText = configData?.collapsedView?.tooltipMessage ?? 'Any doubts? Ask agent now';
289
+ const connectButtonText = configData?.agentTextContent?.buttonText ?? 'Start Call';
290
+ const isLivekitData = livekitData && Object.keys(livekitData).length > 0;
291
+ const gradientStyle = useMemo(() => [styles.linearGradient, isLivekitData ? styles.linearGradientColumn : isOpen ? styles.expandedLinearGradient : styles.collapsedLinearGradient], [isOpen, isLivekitData, styles]);
292
+ const isConnected = !!tokenDetails?.token;
218
293
 
219
294
  // ==================== EARLY RETURNS ====================
220
295
  if (!configData) return null;
221
296
 
222
297
  // ==================== RENDER ====================
223
298
  return /*#__PURE__*/_jsxs(View, {
224
- style: styles.container,
299
+ style: [styles.container, isLivekitData && {
300
+ bottom: FOOTER_SAFE_INSET
301
+ }],
225
302
  children: [isAutoOpen && !isOpen && /*#__PURE__*/_jsx(Animated.View, {
226
303
  style: [popupAnimatedStyles, styles.popupContainer],
304
+ accessibilityLabel: popupText,
305
+ accessibilityLiveRegion: "polite",
227
306
  children: /*#__PURE__*/_jsx(Text, {
228
307
  style: styles.popupText,
229
308
  children: popupText
@@ -232,7 +311,7 @@ export function EmbedButton() {
232
311
  gesture: panGesture,
233
312
  children: /*#__PURE__*/_jsx(Animated.View, {
234
313
  pointerEvents: "auto",
235
- style: [styles.button, buttonAnimatedStyles, styles.buttonContent],
314
+ style: [styles.button, buttonAnimatedStyles, isLivekitData ? styles.expandedButtonWhite : styles.buttonContent],
236
315
  children: /*#__PURE__*/_jsxs(LinearGradient, {
237
316
  colors: gradientColors,
238
317
  start: {
@@ -243,7 +322,7 @@ export function EmbedButton() {
243
322
  x: 1,
244
323
  y: 0
245
324
  },
246
- style: [styles.linearGradient, isOpen ? styles.expandedLinearGradient : styles.collapsedLinearGradient],
325
+ style: gradientStyle,
247
326
  angle: 0,
248
327
  angleCenter: {
249
328
  x: 0.5,
@@ -255,67 +334,202 @@ export function EmbedButton() {
255
334
  onDisconnected: handleEndCall,
256
335
  roomRef: roomRef,
257
336
  onConnected: handleConnected
258
- }), /*#__PURE__*/_jsx(TouchableOpacity, {
259
- onPress: handleButtonPress,
260
- style: styles.pressable,
261
- children: /*#__PURE__*/_jsx(LottieView, {
262
- ref: lottieRef,
263
- source: lottieSource,
264
- autoPlay: true,
265
- loop: true,
266
- style: styles.iconImage,
267
- enableMergePathsAndroidForKitKatAndAbove: true,
268
- enableSafeModeAndroid: true
269
- })
270
- }), isOpen && /*#__PURE__*/_jsxs(View, {
271
- style: styles.expandedContentContainer,
337
+ }), isLivekitData ? /*#__PURE__*/_jsxs(View, {
338
+ style: styles.expandedCallViewWrapper,
272
339
  children: [/*#__PURE__*/_jsxs(View, {
273
- style: styles.leftContentSection,
274
- children: [/*#__PURE__*/_jsx(Text, {
275
- style: [styles.agentNameText, styles.leftAlignedText],
276
- children: agentName
277
- }), /*#__PURE__*/_jsx(Text, {
278
- style: [styles.leftAlignedText, styles.statusText],
279
- children: statusText
280
- })]
281
- }), /*#__PURE__*/_jsx(View, {
282
- style: styles.middleContentSection,
283
- children: /*#__PURE__*/_jsx(WaveformVisualizer, {
284
- roomRef: roomRef
285
- })
286
- }), /*#__PURE__*/_jsxs(View, {
287
- style: styles.rightContentSection,
288
- children: [!tokenDetails?.token && /*#__PURE__*/_jsx(View, {
289
- style: styles.buttonContainer,
290
- children: /*#__PURE__*/_jsx(TouchableOpacity, {
291
- onPress: handleStartCall,
292
- style: styles.startCallButton,
293
- children: /*#__PURE__*/_jsx(Text, {
294
- style: styles.startCallText,
295
- children: connectButtonText
296
- })
340
+ style: styles.callContentArea,
341
+ children: [/*#__PURE__*/_jsx(TouchableOpacity, {
342
+ onPress: () => clearDataReceived(),
343
+ style: styles.closeButton,
344
+ accessibilityLabel: "Close",
345
+ accessibilityRole: "button",
346
+ children: /*#__PURE__*/_jsx(Image, {
347
+ source: {
348
+ uri: ICON_URLS.CLOSE_ICON
349
+ },
350
+ style: styles.popupCloseIcon
297
351
  })
298
- }), tokenDetails?.token && /*#__PURE__*/_jsxs(View, {
299
- style: styles.buttonContainer,
300
- children: [/*#__PURE__*/_jsx(TouchableOpacity, {
301
- style: styles.muteButton,
302
- onPress: handleMicToggle,
303
- children: /*#__PURE__*/_jsx(Image, {
304
- source: {
305
- uri: isMicMuted ? ICON_URLS.MIC_OFF : ICON_URLS.MIC_ON
352
+ }), livekitData.type === 'calculation' && /*#__PURE__*/_jsx(View, {
353
+ style: styles.callContentTextContainer,
354
+ children: /*#__PURE__*/_jsx(ScrollView, {
355
+ ref: calculationScrollRef,
356
+ style: styles.callContentScrollView,
357
+ contentContainerStyle: styles.callContentScrollViewContent,
358
+ showsVerticalScrollIndicator: true,
359
+ bounces: false,
360
+ nestedScrollEnabled: true,
361
+ onScroll: e => {
362
+ const {
363
+ contentOffset,
364
+ contentSize,
365
+ layoutMeasurement
366
+ } = e.nativeEvent;
367
+ const isAtBottom = contentOffset.y + layoutMeasurement.height >= contentSize.height - SCROLL_END_THRESHOLD;
368
+ userScrolledUpRef.current = !isAtBottom;
369
+ },
370
+ onContentSizeChange: () => {
371
+ if (!userScrolledUpRef.current) {
372
+ calculationScrollRef.current?.scrollToEnd({
373
+ animated: true
374
+ });
375
+ }
376
+ },
377
+ children: /*#__PURE__*/_jsx(Typewriter, {
378
+ lines: Array.isArray(livekitData.list) ? livekitData.list : [],
379
+ typingSpeed: 50,
380
+ textStyle: styles.callContentText,
381
+ showCursor: false,
382
+ onViewClose: flag => {
383
+ if (flag) {
384
+ clearDataReceived();
385
+ }
306
386
  },
307
- style: styles.buttonImage
387
+ viewCloseDelay: livekitData.delay || 15000
308
388
  })
309
- }), /*#__PURE__*/_jsx(TouchableOpacity, {
310
- onPress: handleEndCall,
311
- style: styles.endCallButton,
312
- children: /*#__PURE__*/_jsx(Image, {
313
- source: {
314
- uri: ICON_URLS.END_CALL
315
- },
316
- style: styles.buttonImage
389
+ })
390
+ })]
391
+ }), /*#__PURE__*/_jsxs(View, {
392
+ style: styles.expandedContentContainer,
393
+ children: [/*#__PURE__*/_jsx(TouchableOpacity, {
394
+ onPress: handleButtonPress,
395
+ style: styles.pressable,
396
+ children: configData?.agentAvatar?.avatarType === 'image' ? /*#__PURE__*/_jsx(Image, {
397
+ source: {
398
+ uri: configData?.agentAvatar?.avatarUrl
399
+ },
400
+ style: styles.iconImage
401
+ }) : /*#__PURE__*/_jsx(LottieView, {
402
+ ref: lottieRef,
403
+ source: lottieSource,
404
+ autoPlay: true,
405
+ loop: true,
406
+ style: styles.iconImage,
407
+ enableMergePathsAndroidForKitKatAndAbove: true,
408
+ enableSafeModeAndroid: true
409
+ })
410
+ }), /*#__PURE__*/_jsxs(View, {
411
+ style: styles.leftContentSection,
412
+ children: [/*#__PURE__*/_jsx(Text, {
413
+ style: [styles.agentNameText, styles.leftAlignedText],
414
+ numberOfLines: 1,
415
+ ellipsizeMode: "tail",
416
+ children: agentName
417
+ }), /*#__PURE__*/_jsx(Text, {
418
+ style: [styles.leftAlignedText, styles.statusText],
419
+ numberOfLines: 1,
420
+ ellipsizeMode: "tail",
421
+ children: statusText
422
+ })]
423
+ }), /*#__PURE__*/_jsx(View, {
424
+ style: styles.middleContentSection,
425
+ children: /*#__PURE__*/_jsx(WaveformVisualizer, {
426
+ roomRef: roomRef
427
+ })
428
+ }), /*#__PURE__*/_jsx(View, {
429
+ style: [styles.rightContentSection, styles.rightContentSectionPadded],
430
+ children: /*#__PURE__*/_jsx(View, {
431
+ style: styles.buttonContainer,
432
+ children: !isConnected ? /*#__PURE__*/_jsx(TouchableOpacity, {
433
+ onPress: handleStartCall,
434
+ style: styles.startCallButton,
435
+ accessibilityLabel: `Start call - ${connectButtonText}`,
436
+ accessibilityRole: "button",
437
+ children: /*#__PURE__*/_jsx(Text, {
438
+ style: styles.startCallText,
439
+ children: connectButtonText
440
+ })
441
+ }) : /*#__PURE__*/_jsxs(_Fragment, {
442
+ children: [/*#__PURE__*/_jsx(TouchableOpacity, {
443
+ style: styles.muteButton,
444
+ onPress: handleMicToggle,
445
+ accessibilityLabel: isMicMuted ? 'Unmute microphone' : 'Mute microphone',
446
+ accessibilityRole: "button",
447
+ children: /*#__PURE__*/_jsx(Image, {
448
+ source: micIconSource,
449
+ style: styles.buttonImage
450
+ })
451
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
452
+ onPress: handleEndCall,
453
+ style: styles.endCallButton,
454
+ accessibilityLabel: "End call",
455
+ accessibilityRole: "button",
456
+ children: /*#__PURE__*/_jsx(Image, {
457
+ source: {
458
+ uri: ICON_URLS.END_CALL
459
+ },
460
+ style: styles.buttonImage
461
+ })
462
+ })]
317
463
  })
464
+ })
465
+ })]
466
+ })]
467
+ }) : /*#__PURE__*/_jsxs(_Fragment, {
468
+ children: [/*#__PURE__*/_jsx(TouchableOpacity, {
469
+ onPress: handleButtonPress,
470
+ style: styles.pressable,
471
+ children: /*#__PURE__*/_jsx(LottieView, {
472
+ ref: lottieRef,
473
+ source: lottieSource,
474
+ autoPlay: true,
475
+ loop: true,
476
+ style: styles.iconImage,
477
+ enableMergePathsAndroidForKitKatAndAbove: true,
478
+ enableSafeModeAndroid: true
479
+ })
480
+ }), isOpen && /*#__PURE__*/_jsxs(Animated.View, {
481
+ style: [styles.expandedContentContainer, expandedContentAnimatedStyles],
482
+ children: [/*#__PURE__*/_jsxs(View, {
483
+ style: styles.leftContentSection,
484
+ children: [/*#__PURE__*/_jsx(Text, {
485
+ style: [styles.agentNameText, styles.leftAlignedText],
486
+ children: agentName
487
+ }), /*#__PURE__*/_jsx(Text, {
488
+ style: [styles.leftAlignedText, styles.statusText],
489
+ children: statusText
318
490
  })]
491
+ }), /*#__PURE__*/_jsx(View, {
492
+ style: styles.middleContentSection,
493
+ children: /*#__PURE__*/_jsx(WaveformVisualizer, {
494
+ roomRef: roomRef
495
+ })
496
+ }), /*#__PURE__*/_jsx(View, {
497
+ style: styles.rightContentSection,
498
+ children: /*#__PURE__*/_jsx(View, {
499
+ style: styles.buttonContainer,
500
+ children: !isConnected ? /*#__PURE__*/_jsx(TouchableOpacity, {
501
+ onPress: handleStartCall,
502
+ style: styles.startCallButton,
503
+ accessibilityLabel: `Start call - ${connectButtonText}`,
504
+ accessibilityRole: "button",
505
+ children: /*#__PURE__*/_jsx(Text, {
506
+ style: styles.startCallText,
507
+ children: connectButtonText
508
+ })
509
+ }) : /*#__PURE__*/_jsxs(_Fragment, {
510
+ children: [/*#__PURE__*/_jsx(TouchableOpacity, {
511
+ style: styles.muteButton,
512
+ onPress: handleMicToggle,
513
+ accessibilityLabel: isMicMuted ? 'Unmute microphone' : 'Mute microphone',
514
+ accessibilityRole: "button",
515
+ children: /*#__PURE__*/_jsx(Image, {
516
+ source: micIconSource,
517
+ style: styles.buttonImage
518
+ })
519
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
520
+ onPress: handleEndCall,
521
+ style: styles.endCallButton,
522
+ accessibilityLabel: "End call",
523
+ accessibilityRole: "button",
524
+ children: /*#__PURE__*/_jsx(Image, {
525
+ source: {
526
+ uri: ICON_URLS.END_CALL
527
+ },
528
+ style: styles.buttonImage
529
+ })
530
+ })]
531
+ })
532
+ })
319
533
  })]
320
534
  })]
321
535
  })]
@@ -1 +1 @@
1
- {"version":3,"names":["LottieView","useEffect","useMemo","useRef","useState","Image","Text","TouchableOpacity","View","GestureDetector","LinearGradient","ConnectionState","useVoiceAgent","createEmbedButtonStyles","WaveformVisualizer","Voice","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","prevConnectionStateRef","lastEmittedEventRef","prevState","current","Connected","type","state","event","emit","AGENT_CONNECTED","timestamp","Date","toISOString","metadata","catch","error","console","AGENT_DISCONNECTED","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":[]}
1
+ {"version":3,"names":["ConnectionState","LottieView","useCallback","useEffect","useMemo","useRef","useState","Image","Text","TouchableOpacity","View","GestureDetector","ScrollView","LinearGradient","Embed","AgentEvent","EventKeys","useVoiceAgent","createEmbedButtonStyles","WaveformVisualizer","Voice","BUTTON_DIMENSIONS","DEFAULT_GRADIENT_COLORS","FOOTER_SAFE_INSET","formatDuration","ICON_URLS","Typewriter","useCallDuration","useCallManagement","useConfigData","useInactivityBehavior","Animated","createPanGesture","useAnimationValues","useBreathingAnimation","useButtonAnimatedStyles","useButtonAnimations","useExpandedContentAnimatedStyles","useInputSectionAnimations","usePopupAnimatedStyles","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","defaultStyles","buttonWidth","WIDTH","buttonHeight","HEIGHT","borderRadius","marginBottom","spacing","SMALL","MEDIUM","LARGE","EXTRA_SMALL","EXTRA_LARGE","EXTRA_EXTRA_LARGE","EmbedButton","containerInset","tokenDetails","isLoading","isMicMuted","connectionState","roomRef","muteMic","endCall","unmuteMic","clearDataReceived","dataTranscription","livekitData","initializeVoiceAgent","isOpen","setIsOpen","expandDirection","setExpandDirection","lottieRef","calculationScrollRef","userScrolledUpRef","SCROLL_END_THRESHOLD","type","current","list","configData","styles","callDuration","resetDuration","handleStartCall","handleEndCall","handleMicToggle","isAutoOpen","setIsAutoOpen","hasActiveToken","token","onStartCall","animationValues","isPressed","offset","start","menuAnimation","buttonScale","inputSectionProgress","Object","keys","length","buttonAnimatedStyles","expandedContentAnimatedStyles","popupAnimatedStyles","panGesture","prevConnectionStateRef","lastEmittedEventRef","prevState","Connected","state","event","emit","AGENT_CONNECTED","timestamp","Date","toISOString","metadata","catch","error","console","Event","ANALYTICS_DATA","event_name","AGENT_DISCONNECTED","popupVisible","emitPopupEvent","value","trigger","prevLivekitDataRef","isLivekitData","source","handleButtonPress","eventName","button_pressed","prev","handleConnected","lottieSource","uri","agentAvatar","avatarUrl","AMPLIFY_ANIMATION","micIconSource","MIC_OFF","MIC_ON","statusText","agentTextContent","agentType","gradientColors","colorPalette","grad1","grad2","agentName","popupText","collapsedView","tooltipMessage","connectButtonText","buttonText","gradientStyle","linearGradient","linearGradientColumn","expandedLinearGradient","collapsedLinearGradient","isConnected","style","container","bottom","children","popupContainer","accessibilityLabel","accessibilityLiveRegion","gesture","pointerEvents","button","expandedButtonWhite","buttonContent","colors","x","y","end","angle","angleCenter","url","server_url","onDisconnected","onConnected","expandedCallViewWrapper","callContentArea","onPress","closeButton","accessibilityRole","CLOSE_ICON","popupCloseIcon","callContentTextContainer","ref","callContentScrollView","contentContainerStyle","callContentScrollViewContent","showsVerticalScrollIndicator","bounces","nestedScrollEnabled","onScroll","e","contentOffset","contentSize","layoutMeasurement","nativeEvent","isAtBottom","height","onContentSizeChange","scrollToEnd","animated","lines","Array","isArray","typingSpeed","textStyle","callContentText","showCursor","onViewClose","flag","viewCloseDelay","delay","expandedContentContainer","pressable","avatarType","iconImage","autoPlay","loop","enableMergePathsAndroidForKitKatAndAbove","enableSafeModeAndroid","leftContentSection","agentNameText","leftAlignedText","numberOfLines","ellipsizeMode","middleContentSection","rightContentSection","rightContentSectionPadded","buttonContainer","startCallButton","startCallText","muteButton","buttonImage","endCallButton","END_CALL"],"sourceRoot":"../../../../src","sources":["components/Embed/EmbedButton.tsx"],"mappings":"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","ignoreList":[]}