@revrag-ai/embed-react-native 1.0.5 → 1.0.7

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 (94) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +13 -382
  3. package/android/CMakeLists.txt +15 -0
  4. package/android/build.gradle +77 -25
  5. package/android/cpp-adapter.cpp +8 -0
  6. package/android/generated/java/com/revragai/embedreactnative/NativeEmbedReactNativeSpec.java +37 -0
  7. package/android/generated/jni/CMakeLists.txt +49 -0
  8. package/android/generated/jni/RNEmbedReactNativeSpec-generated.cpp +32 -0
  9. package/android/generated/jni/RNEmbedReactNativeSpec.h +31 -0
  10. package/android/generated/jni/react/renderer/components/RNEmbedReactNativeSpec/RNEmbedReactNativeSpecJSI-generated.cpp +28 -0
  11. package/android/generated/jni/react/renderer/components/RNEmbedReactNativeSpec/RNEmbedReactNativeSpecJSI.h +67 -0
  12. package/android/gradle.properties +5 -5
  13. package/cpp/revrag-ai-embed-react-native.cpp +7 -0
  14. package/cpp/revrag-ai-embed-react-native.h +8 -0
  15. package/ios/EmbedReactNative.h +9 -0
  16. package/ios/{Onwid.mm → EmbedReactNative.mm} +4 -4
  17. package/ios/generated/RNEmbedReactNativeSpec/RNEmbedReactNativeSpec-generated.mm +29 -0
  18. package/ios/generated/RNEmbedReactNativeSpec/RNEmbedReactNativeSpec.h +50 -0
  19. package/ios/generated/RNEmbedReactNativeSpecJSI-generated.cpp +28 -0
  20. package/ios/generated/RNEmbedReactNativeSpecJSI.h +67 -0
  21. package/lib/commonjs/NativeEmbedReactNative.js +9 -0
  22. package/lib/commonjs/api/api.js +256 -0
  23. package/lib/commonjs/api/types/embed.api.types.js +2 -0
  24. package/lib/commonjs/components/Embed/EmbedAudioWave.js +157 -0
  25. package/lib/commonjs/components/Embed/EmbedButton.js +511 -0
  26. package/lib/commonjs/components/Embed/EmbedVoice.js +131 -0
  27. package/lib/commonjs/components/styles/EmbedButton.style.js +248 -0
  28. package/lib/commonjs/events/embed.event.js +74 -0
  29. package/lib/commonjs/hooks/initialize.js +102 -0
  30. package/lib/commonjs/hooks/initialize.livekit.js +20 -0
  31. package/lib/commonjs/hooks/types/initialize.types.js +2 -0
  32. package/lib/commonjs/hooks/types/voiceAgent.types.js +6 -0
  33. package/lib/commonjs/hooks/voiceagent.js +358 -0
  34. package/lib/commonjs/index.js +34 -0
  35. package/lib/commonjs/index.types.js +22 -0
  36. package/lib/commonjs/store/store.key.js +46 -0
  37. package/lib/commonjs/utils/reanimated.helper.js +100 -0
  38. package/lib/module/NativeEmbedReactNative.js +5 -0
  39. package/lib/module/api/api.js +248 -0
  40. package/lib/module/api/types/embed.api.types.js +2 -0
  41. package/lib/module/components/Embed/EmbedAudioWave.js +152 -0
  42. package/lib/module/components/Embed/EmbedButton.js +506 -0
  43. package/lib/module/components/Embed/EmbedVoice.js +127 -0
  44. package/lib/module/components/styles/EmbedButton.style.js +243 -0
  45. package/lib/module/events/embed.event.js +70 -0
  46. package/lib/module/hooks/initialize.js +79 -75
  47. package/lib/module/hooks/{initializelivekit.js → initialize.livekit.js} +7 -4
  48. package/lib/module/hooks/types/initialize.types.js +2 -0
  49. package/lib/module/hooks/types/voiceAgent.types.js +4 -0
  50. package/lib/module/hooks/voiceagent.js +353 -0
  51. package/lib/module/index.js +6 -60
  52. package/lib/module/index.types.js +23 -0
  53. package/lib/module/store/store.key.js +38 -0
  54. package/lib/module/utils/reanimated.helper.js +94 -0
  55. package/lib/typescript/commonjs/package.json +1 -0
  56. package/lib/typescript/module/package.json +1 -0
  57. package/package.json +69 -27
  58. package/react-native.config.js +8 -14
  59. package/revrag-ai-embed-react-native.podspec +41 -0
  60. package/Onwid.podspec +0 -20
  61. package/ios/Onwid.h +0 -5
  62. package/lib/index.d.ts +0 -77
  63. package/lib/module/Event/onwid.js +0 -74
  64. package/lib/module/NativeOnwid.js +0 -4
  65. package/lib/module/component/OnwidButton.js +0 -366
  66. package/lib/module/component/audiowave.js +0 -137
  67. package/lib/module/component/voice.js +0 -103
  68. package/lib/module/hooks/initialize.types.js +0 -2
  69. package/lib/module/hooks/voiceAgent.js +0 -334
  70. package/lib/module/hooks/voiceAgent.types.js +0 -2
  71. package/lib/module/onwidApi/api.js +0 -184
  72. package/lib/module/onwidApi/api.types.js +0 -2
  73. package/lib/module/store.key.js +0 -47
  74. package/lib/module/style/onwidButton.style.js +0 -230
  75. package/lib/module/utils/reanimatedHelpers.js +0 -87
  76. package/lib/module/utils/utils.js +0 -1
  77. package/lib/typescript/Event/onwid.d.ts +0 -13
  78. package/lib/typescript/NativeOnwid.d.ts +0 -6
  79. package/lib/typescript/component/OnwidButton.d.ts +0 -28
  80. package/lib/typescript/component/audiowave.d.ts +0 -6
  81. package/lib/typescript/component/voice.d.ts +0 -15
  82. package/lib/typescript/hooks/initialize.d.ts +0 -2
  83. package/lib/typescript/hooks/initialize.types.d.ts +0 -5
  84. package/lib/typescript/hooks/initializelivekit.d.ts +0 -3
  85. package/lib/typescript/hooks/voiceAgent.d.ts +0 -2
  86. package/lib/typescript/hooks/voiceAgent.types.d.ts +0 -16
  87. package/lib/typescript/index.d.ts +0 -27
  88. package/lib/typescript/onwidApi/api.d.ts +0 -53
  89. package/lib/typescript/onwidApi/api.types.d.ts +0 -21
  90. package/lib/typescript/store.key.d.ts +0 -3
  91. package/lib/typescript/style/onwidButton.style.d.ts +0 -98
  92. package/lib/typescript/utils/reanimatedHelpers.d.ts +0 -29
  93. package/lib/typescript/utils/utils.d.ts +0 -0
  94. package/scripts/verify-setup.js +0 -90
@@ -0,0 +1,243 @@
1
+ "use strict";
2
+
3
+ import { StyleSheet, Dimensions } from 'react-native';
4
+ const {
5
+ width: SCREEN_WIDTH
6
+ } = Dimensions.get('window');
7
+
8
+ // Calculate dynamic dimensions based on screen size
9
+ const calculateDimensions = () => {
10
+ const isSmallScreen = SCREEN_WIDTH < 375;
11
+ const isLargeScreen = SCREEN_WIDTH > 768;
12
+ return {
13
+ BUTTON_WIDTH: isSmallScreen ? 60 : isLargeScreen ? 60 : 60,
14
+ EXPANDED_WIDTH: SCREEN_WIDTH * (isSmallScreen ? 0.9 : isLargeScreen ? 0.7 : 0.8),
15
+ BUTTON_HEIGHT: isSmallScreen ? 60 : isLargeScreen ? 60 : 60,
16
+ SPACING: {
17
+ SMALL: isSmallScreen ? 8 : isLargeScreen ? 16 : 12,
18
+ MEDIUM: isSmallScreen ? 12 : isLargeScreen ? 20 : 16,
19
+ LARGE: isSmallScreen ? 16 : isLargeScreen ? 24 : 20
20
+ },
21
+ BORDER_RADIUS: {
22
+ SMALL: isSmallScreen ? 20 : isLargeScreen ? 30 : 25,
23
+ MEDIUM: isSmallScreen ? 25 : isLargeScreen ? 35 : 30,
24
+ LARGE: isSmallScreen ? 30 : isLargeScreen ? 40 : 35
25
+ }
26
+ };
27
+ };
28
+ const dimensions = calculateDimensions();
29
+ export const BUTTON_WIDTH = dimensions.BUTTON_WIDTH;
30
+ export const EXPANDED_WIDTH = dimensions.EXPANDED_WIDTH;
31
+ export const BUTTON_HEIGHT = dimensions.BUTTON_HEIGHT;
32
+ export const createEmbedButtonStyles = customStyles => {
33
+ const {
34
+ buttonWidth = BUTTON_WIDTH,
35
+ buttonHeight = BUTTON_HEIGHT,
36
+ backgroundColor = 'transparent',
37
+ borderRadius = dimensions.BORDER_RADIUS.MEDIUM,
38
+ marginBottom = dimensions.SPACING.LARGE,
39
+ spacing = dimensions.SPACING
40
+ } = customStyles || {};
41
+ return StyleSheet.create({
42
+ container: {
43
+ position: 'absolute',
44
+ bottom: 0,
45
+ right: 0,
46
+ height: '100%',
47
+ width: '100%',
48
+ flexDirection: 'row',
49
+ justifyContent: 'flex-end',
50
+ alignItems: 'flex-end',
51
+ padding: spacing.MEDIUM,
52
+ backgroundColor: 'transparent',
53
+ pointerEvents: 'box-none'
54
+ },
55
+ button: {
56
+ width: buttonWidth,
57
+ height: buttonHeight,
58
+ borderRadius: borderRadius,
59
+ marginBottom: marginBottom,
60
+ backgroundColor: backgroundColor
61
+ },
62
+ pressable: {
63
+ borderRadius: 100,
64
+ padding: 5,
65
+ margin: 0,
66
+ justifyContent: 'center',
67
+ alignItems: 'center',
68
+ height: '100%',
69
+ width: '100%'
70
+ },
71
+ menu: {
72
+ position: 'absolute',
73
+ top: 0,
74
+ backgroundColor: 'white',
75
+ borderRadius: dimensions.BORDER_RADIUS.SMALL,
76
+ padding: spacing.MEDIUM
77
+ },
78
+ menuLeft: {
79
+ right: '100%',
80
+ marginRight: spacing.SMALL
81
+ },
82
+ menuRight: {
83
+ left: '100%',
84
+ marginLeft: spacing.SMALL
85
+ },
86
+ iconText: {
87
+ color: 'white',
88
+ fontSize: 20
89
+ },
90
+ buttonContent: {
91
+ flexDirection: 'row',
92
+ alignItems: 'center'
93
+ // height: '100%',
94
+ },
95
+ iconImage: {
96
+ width: buttonWidth - 10,
97
+ height: buttonHeight - 10,
98
+ resizeMode: 'contain',
99
+ justifyContent: 'center',
100
+ alignItems: 'center',
101
+ alignSelf: 'center',
102
+ margin: 0,
103
+ padding: 0
104
+ },
105
+ startCallButton: {
106
+ height: 36,
107
+ borderRadius: dimensions.BORDER_RADIUS.MEDIUM,
108
+ backgroundColor: '#000',
109
+ justifyContent: 'center',
110
+ alignItems: 'center',
111
+ paddingHorizontal: spacing.SMALL + 1,
112
+ minWidth: 80,
113
+ maxWidth: '90%'
114
+ },
115
+ startCallText: {
116
+ color: 'white',
117
+ fontSize: 12,
118
+ fontWeight: '500'
119
+ },
120
+ rowContainer: {
121
+ flexDirection: 'row',
122
+ alignItems: 'center',
123
+ justifyContent: 'center',
124
+ height: '100%',
125
+ margin: 0,
126
+ padding: 0
127
+ },
128
+ linearGradient: {
129
+ flex: 1,
130
+ borderRadius: dimensions.BORDER_RADIUS.LARGE,
131
+ flexDirection: 'row',
132
+ width: BUTTON_WIDTH
133
+ },
134
+ buttonContainer: {
135
+ flexDirection: 'row',
136
+ alignItems: 'center',
137
+ gap: 4
138
+ },
139
+ endCallButton: {
140
+ justifyContent: 'center',
141
+ alignItems: 'center',
142
+ width: 44,
143
+ height: 44
144
+ },
145
+ muteButton: {
146
+ borderRadius: 100,
147
+ justifyContent: 'center',
148
+ alignItems: 'center',
149
+ width: 44,
150
+ height: 44
151
+ },
152
+ micIcon: {
153
+ width: 24,
154
+ height: 24,
155
+ tintColor: 'white'
156
+ },
157
+ endCallIcon: {
158
+ width: 24,
159
+ height: 24,
160
+ tintColor: 'white'
161
+ },
162
+ buttonImage: {
163
+ width: '100%',
164
+ height: '100%',
165
+ resizeMode: 'contain'
166
+ },
167
+ // New styles for expanded button layout
168
+ expandedContent: {
169
+ flexDirection: 'row',
170
+ flex: 1,
171
+ alignItems: 'center',
172
+ width: '100%',
173
+ justifyContent: 'space-between'
174
+ },
175
+ leftSection: {
176
+ alignItems: 'flex-start'
177
+ },
178
+ centerSection: {
179
+ alignItems: 'center',
180
+ height: '100%'
181
+ },
182
+ rightSection: {
183
+ justifyContent: 'flex-end',
184
+ alignItems: 'center'
185
+ },
186
+ agentInfoContainer: {
187
+ height: BUTTON_HEIGHT,
188
+ flexDirection: 'row',
189
+ alignItems: 'center',
190
+ overflow: 'hidden'
191
+ },
192
+ agentTextContainer: {
193
+ justifyContent: 'center',
194
+ height: '100%',
195
+ flex: 1
196
+ },
197
+ agentNameText: {
198
+ fontFamily: 'Inter-Medium',
199
+ fontSize: 14,
200
+ fontWeight: '500',
201
+ color: 'white'
202
+ },
203
+ statusText: {
204
+ fontFamily: 'Inter-Regular',
205
+ fontSize: 10,
206
+ fontWeight: '300',
207
+ color: 'white'
208
+ },
209
+ // Chip styles
210
+ chip: {
211
+ height: 30,
212
+ borderRadius: dimensions.BORDER_RADIUS.SMALL,
213
+ marginBottom: 10,
214
+ alignSelf: 'flex-end',
215
+ overflow: 'hidden',
216
+ elevation: 3,
217
+ shadowColor: '#000',
218
+ shadowOffset: {
219
+ width: 0,
220
+ height: 2
221
+ },
222
+ shadowOpacity: 0.3,
223
+ shadowRadius: 2
224
+ },
225
+ chipGradient: {
226
+ height: '100%',
227
+ paddingHorizontal: spacing.MEDIUM,
228
+ paddingVertical: spacing.SMALL / 2,
229
+ borderRadius: dimensions.BORDER_RADIUS.SMALL,
230
+ justifyContent: 'center',
231
+ alignItems: 'center'
232
+ },
233
+ chipText: {
234
+ color: 'white',
235
+ fontSize: 12,
236
+ fontWeight: '500'
237
+ }
238
+ });
239
+ };
240
+
241
+ // Default styles export with dynamic dimensions
242
+ export const onwidButtonStyles = createEmbedButtonStyles();
243
+ //# sourceMappingURL=EmbedButton.style.js.map
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+
3
+ import { getAgentData, setAgentData } from "../store/store.key.js";
4
+ import { APIService } from "../api/api.js";
5
+ // Predefined event keys
6
+ export let EventKeys = /*#__PURE__*/function (EventKeys) {
7
+ EventKeys["USER_DATA"] = "user_data";
8
+ EventKeys["SCREEN_STATE"] = "state_data";
9
+ return EventKeys;
10
+ }({});
11
+ class Embed {
12
+ events = {};
13
+
14
+ // Automatically adds a default listener if none exists
15
+ ensureDefaultListener(eventKey) {
16
+ if (!this.events[eventKey]) {
17
+ this.events[eventKey] = [data => {
18
+ console.log(`[Default] Event handled for ${eventKey}:`, data);
19
+ }];
20
+ }
21
+ }
22
+ async Event(eventKey, data) {
23
+ if (!Object.values(EventKeys).includes(eventKey)) {
24
+ console.error(`Invalid event key: ${eventKey}`);
25
+ throw new Error(`Invalid event key: ${eventKey}. Must be one of: ${Object.values(EventKeys).join(', ')}`);
26
+ }
27
+ const key = eventKey;
28
+ if (key !== EventKeys.USER_DATA) {
29
+ const userIdentity = await getAgentData(EventKeys.USER_DATA);
30
+ if (userIdentity) {
31
+ data.app_user_id = userIdentity.app_user_id;
32
+ } else {
33
+ throw new Error('User identity not found');
34
+ }
35
+ }
36
+
37
+ // Ensure a default listener is registered if not already
38
+ this.ensureDefaultListener(key);
39
+ console.log('response,updateUserDatniuioioioa');
40
+ // Trigger API call
41
+ try {
42
+ const apiService = APIService.getInstance();
43
+ const response = await apiService.updateUserData({
44
+ eventKey: key,
45
+ data
46
+ });
47
+ console.log('response,updateUserData', response);
48
+ if (!response.success) {
49
+ console.error('Failed to trigger API for event:', eventKey);
50
+ }
51
+ setAgentData(data, key);
52
+ } catch (error) {
53
+ console.error('Error triggering API:', error);
54
+ }
55
+
56
+ // Trigger event listeners
57
+ this.events[key]?.forEach(callback => callback(data));
58
+ }
59
+
60
+ // Still allow custom listeners (optional)
61
+ on(eventKey, callback) {
62
+ if (!this.events[eventKey]) {
63
+ this.events[eventKey] = [];
64
+ }
65
+ this.events[eventKey]?.push(callback);
66
+ }
67
+ }
68
+ const embed = new Embed();
69
+ export default embed;
70
+ //# sourceMappingURL=embed.event.js.map
@@ -1,9 +1,5 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.useInitialize = useInitialize;
2
+
7
3
  /**
8
4
  * Custom hook for initializing the OnWid SDK
9
5
  *
@@ -17,76 +13,84 @@ exports.useInitialize = useInitialize;
17
13
  * 2. Stores API key securely in keychain
18
14
  * 3. Registers the device with provided details
19
15
  */
20
- const store_key_1 = require("../store.key");
21
- const api_1 = require("../onwidApi/api");
22
- const initializelivekit_1 = __importDefault(require("./initializelivekit"));
23
- const react_native_1 = require("react-native");
24
- function useInitialize({ apiKey, onwidUrl, metadata, }) {
25
- const checkPermissions = async () => {
26
- try {
27
- // Check for required permissions on Android
28
- if (react_native_1.Platform.OS === 'android') {
29
- const recordAudioPermission = react_native_1.PermissionsAndroid.PERMISSIONS.RECORD_AUDIO;
30
- if (!recordAudioPermission) {
31
- throw new Error('RECORD_AUDIO permission not available');
32
- }
33
- const permissions = [recordAudioPermission];
34
- const results = await Promise.all(permissions.map((permission) => react_native_1.PermissionsAndroid.request(permission)));
35
- const allGranted = results.every((result) => result === react_native_1.PermissionsAndroid.RESULTS.GRANTED);
36
- if (!allGranted) {
37
- throw new Error('Required permissions not granted');
38
- }
39
- }
16
+ import { setAgentData } from "../store/store.key.js";
17
+ import { APIService } from "../api/api.js";
18
+ import registerAgent from "./initialize.livekit.js";
19
+ import { PermissionsAndroid, Platform } from 'react-native';
20
+ export function useInitialize({
21
+ apiKey,
22
+ onwidUrl,
23
+ metadata
24
+ }) {
25
+ const checkPermissions = async () => {
26
+ try {
27
+ // Check for required permissions on Android
28
+ if (Platform.OS === 'android') {
29
+ const recordAudioPermission = PermissionsAndroid.PERMISSIONS.RECORD_AUDIO;
30
+ if (!recordAudioPermission) {
31
+ throw new Error('RECORD_AUDIO permission not available');
40
32
  }
41
- catch (err) {
42
- const errorMessage = err instanceof Error ? err.message : 'Failed to check permissions';
43
- throw new Error(errorMessage);
33
+ const permissions = [recordAudioPermission];
34
+ const results = await Promise.all(permissions.map(permission => PermissionsAndroid.request(permission)));
35
+ const allGranted = results.every(result => result === PermissionsAndroid.RESULTS.GRANTED);
36
+ if (!allGranted) {
37
+ throw new Error('Required permissions not granted');
44
38
  }
45
- };
46
- /**
47
- * Validates required initialization parameters
48
- * @throws Error if any required parameter is missing or invalid
49
- */
50
- const validateInputs = () => {
51
- if (!apiKey || typeof apiKey !== 'string') {
52
- throw new Error('apiKey is required and must be a string');
53
- }
54
- if (!onwidUrl || typeof onwidUrl !== 'string') {
55
- throw new Error('onwidUrl is required and must be a string');
56
- }
57
- if (metadata && typeof metadata === 'object' && !metadata.config) {
58
- throw new Error('metadata must contain a config object');
59
- }
60
- };
61
- const initialize = async () => {
62
- try {
63
- await checkPermissions();
64
- (0, initializelivekit_1.default)();
65
- // Validate required parameters before proceeding
66
- validateInputs();
67
- // Store API key in keychain
68
- await (0, store_key_1.setAgentData)({
69
- apiKey,
70
- onwidUrl,
71
- });
72
- // Get the APIService instance and initialize it
73
- const apiService = api_1.APIService.getInstance();
74
- await apiService.initialize();
75
- console.log('registerOnInitialize');
76
- // Register new device with provided details
77
- const registerResponse = await apiService.registerOnInitialize();
78
- if (!registerResponse.success) {
79
- throw new Error(registerResponse.error || 'Device registration failed');
80
- }
81
- if (registerResponse.data) {
82
- // todo: store config
83
- }
84
- }
85
- catch (err) {
86
- const errorMessage = err instanceof Error ? err.message : 'Initialization failed';
87
- throw new Error(errorMessage);
88
- }
89
- };
90
- // Initialize immediately when hook is called
91
- initialize().catch(console.error);
39
+ }
40
+ } catch (err) {
41
+ const errorMessage = err instanceof Error ? err.message : 'Failed to check permissions';
42
+ throw new Error(errorMessage);
43
+ }
44
+ };
45
+
46
+ /**
47
+ * Validates required initialization parameters
48
+ * @throws Error if any required parameter is missing or invalid
49
+ */
50
+ const validateInputs = () => {
51
+ if (!apiKey || typeof apiKey !== 'string') {
52
+ throw new Error('apiKey is required and must be a string');
53
+ }
54
+ if (!onwidUrl || typeof onwidUrl !== 'string') {
55
+ throw new Error('onwidUrl is required and must be a string');
56
+ }
57
+ if (metadata && typeof metadata === 'object' && !metadata.config) {
58
+ throw new Error('metadata must contain a config object');
59
+ }
60
+ };
61
+ const initialize = async () => {
62
+ try {
63
+ await checkPermissions();
64
+ registerAgent();
65
+
66
+ // Validate required parameters before proceeding
67
+ validateInputs();
68
+
69
+ // Store API key in keychain
70
+ await setAgentData({
71
+ apiKey,
72
+ onwidUrl
73
+ });
74
+
75
+ // Get the APIService instance and initialize it
76
+ const apiService = APIService.getInstance();
77
+ await apiService.initialize();
78
+ console.log('registerOnInitialize');
79
+ // Register new device with provided details
80
+ const registerResponse = await apiService.registerOnInitialize();
81
+ if (!registerResponse.success) {
82
+ throw new Error(registerResponse.error || 'Device registration failed');
83
+ }
84
+ if (registerResponse.data) {
85
+ // todo: store config
86
+ }
87
+ } catch (err) {
88
+ const errorMessage = err instanceof Error ? err.message : 'Initialization failed';
89
+ throw new Error(errorMessage);
90
+ }
91
+ };
92
+
93
+ // Initialize immediately when hook is called
94
+ initialize().catch(console.error);
92
95
  }
96
+ //# sourceMappingURL=initialize.js.map
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+
2
3
  // This module imports the `registerGlobals` function from the LiveKit React Native library.
3
4
  // The `registerGlobals` function is used to register global settings and configurations
4
5
  // for the LiveKit service, which is essential for managing real-time audio and video
@@ -6,9 +7,11 @@
6
7
  // for `registerGlobals`, allowing for easier reference in other parts of the application.
7
8
  // Finally, the `registerAgent` is exported as the default export of this module, making
8
9
  // it available for use in other modules that require the registration of LiveKit globals.
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- const react_native_1 = require("@livekit/react-native");
10
+
11
+ import { registerGlobals } from '@livekit/react-native';
12
+
11
13
  // The registerAgent constant is an alias for the registerGlobals function,
12
14
  // which is used to set up global configurations for the LiveKit service.
13
- const registerAgent = react_native_1.registerGlobals;
14
- exports.default = registerAgent;
15
+ const registerAgent = registerGlobals;
16
+ export default registerAgent;
17
+ //# sourceMappingURL=initialize.livekit.js.map
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=initialize.types.js.map
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=voiceAgent.types.js.map