@revrag-ai/embed-react-native 1.0.16 → 1.0.18

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 (123) hide show
  1. package/README.md +6 -108
  2. package/android/build.gradle +3 -3
  3. package/dist/commonjs/api/api.js +6 -5
  4. package/dist/commonjs/api/api.js.map +1 -1
  5. package/dist/commonjs/components/Embed/EmbedButton.js +138 -345
  6. package/dist/commonjs/components/Embed/EmbedButton.js.map +1 -1
  7. package/dist/commonjs/components/Embed/EmbedVoice.js +16 -4
  8. package/dist/commonjs/components/Embed/EmbedVoice.js.map +1 -1
  9. package/dist/commonjs/context/EmbedProvider.js +638 -0
  10. package/dist/commonjs/context/EmbedProvider.js.map +1 -0
  11. package/dist/commonjs/events/agent-event-emitter.js +114 -0
  12. package/dist/commonjs/events/agent-event-emitter.js.map +1 -0
  13. package/dist/commonjs/events/embed.event.js +93 -79
  14. package/dist/commonjs/events/embed.event.js.map +1 -1
  15. package/dist/commonjs/events/embed.types.js +32 -0
  16. package/dist/commonjs/events/embed.types.js.map +1 -0
  17. package/dist/commonjs/events/embed.validators.js +36 -0
  18. package/dist/commonjs/events/embed.validators.js.map +1 -0
  19. package/dist/commonjs/events/index.js +47 -0
  20. package/dist/commonjs/events/index.js.map +1 -0
  21. package/dist/commonjs/hooks/EmbedButton.animations.js +181 -0
  22. package/dist/commonjs/hooks/EmbedButton.animations.js.map +1 -0
  23. package/dist/commonjs/hooks/EmbedButton.helpers.js +90 -0
  24. package/dist/commonjs/hooks/EmbedButton.helpers.js.map +1 -0
  25. package/dist/commonjs/hooks/EmbedButton.hooks.js +165 -0
  26. package/dist/commonjs/hooks/EmbedButton.hooks.js.map +1 -0
  27. package/dist/commonjs/hooks/initialize.js +65 -25
  28. package/dist/commonjs/hooks/initialize.js.map +1 -1
  29. package/dist/commonjs/hooks/voiceagent.js +1 -18
  30. package/dist/commonjs/hooks/voiceagent.js.map +1 -1
  31. package/dist/commonjs/index.js +16 -1
  32. package/dist/commonjs/index.js.map +1 -1
  33. package/dist/commonjs/index.types.js +1 -2
  34. package/dist/commonjs/index.types.js.map +1 -1
  35. package/dist/commonjs/utils/constant.js +99 -0
  36. package/dist/commonjs/utils/constant.js.map +1 -0
  37. package/dist/commonjs/utils/permision.js +48 -1
  38. package/dist/commonjs/utils/permision.js.map +1 -1
  39. package/dist/commonjs/utils/reanimated.helper.js +2 -3
  40. package/dist/commonjs/utils/reanimated.helper.js.map +1 -1
  41. package/dist/module/api/api.js +6 -6
  42. package/dist/module/api/api.js.map +1 -1
  43. package/dist/module/components/Embed/EmbedButton.js +140 -347
  44. package/dist/module/components/Embed/EmbedButton.js.map +1 -1
  45. package/dist/module/components/Embed/EmbedVoice.js +16 -4
  46. package/dist/module/components/Embed/EmbedVoice.js.map +1 -1
  47. package/dist/module/context/EmbedProvider.js +626 -0
  48. package/dist/module/context/EmbedProvider.js.map +1 -0
  49. package/dist/module/events/agent-event-emitter.js +109 -0
  50. package/dist/module/events/agent-event-emitter.js.map +1 -0
  51. package/dist/module/events/embed.event.js +82 -80
  52. package/dist/module/events/embed.event.js.map +1 -1
  53. package/dist/module/events/embed.types.js +33 -0
  54. package/dist/module/events/embed.types.js.map +1 -0
  55. package/dist/module/events/embed.validators.js +32 -0
  56. package/dist/module/events/embed.validators.js.map +1 -0
  57. package/dist/module/events/index.js +12 -0
  58. package/dist/module/events/index.js.map +1 -0
  59. package/dist/module/hooks/EmbedButton.animations.js +172 -0
  60. package/dist/module/hooks/EmbedButton.animations.js.map +1 -0
  61. package/dist/module/hooks/EmbedButton.helpers.js +80 -0
  62. package/dist/module/hooks/EmbedButton.helpers.js.map +1 -0
  63. package/dist/module/hooks/EmbedButton.hooks.js +160 -0
  64. package/dist/module/hooks/EmbedButton.hooks.js.map +1 -0
  65. package/dist/module/hooks/initialize.js +66 -26
  66. package/dist/module/hooks/initialize.js.map +1 -1
  67. package/dist/module/hooks/voiceagent.js +1 -17
  68. package/dist/module/hooks/voiceagent.js.map +1 -1
  69. package/dist/module/index.js +4 -2
  70. package/dist/module/index.js.map +1 -1
  71. package/dist/module/index.types.js +1 -2
  72. package/dist/module/index.types.js.map +1 -1
  73. package/dist/module/utils/constant.js +93 -0
  74. package/dist/module/utils/constant.js.map +1 -0
  75. package/dist/module/utils/permision.js +48 -1
  76. package/dist/module/utils/permision.js.map +1 -1
  77. package/dist/module/utils/reanimated.helper.js +2 -3
  78. package/dist/module/utils/reanimated.helper.js.map +1 -1
  79. package/dist/typescript/src/api/api.d.ts +4 -3
  80. package/dist/typescript/src/api/api.d.ts.map +1 -1
  81. package/dist/typescript/src/api/types/embed.api.types.d.ts +1 -1
  82. package/dist/typescript/src/api/types/embed.api.types.d.ts.map +1 -1
  83. package/dist/typescript/src/components/Embed/EmbedButton.d.ts +5 -25
  84. package/dist/typescript/src/components/Embed/EmbedButton.d.ts.map +1 -1
  85. package/dist/typescript/src/components/Embed/EmbedVoice.d.ts.map +1 -1
  86. package/dist/typescript/src/context/EmbedProvider.d.ts +306 -0
  87. package/dist/typescript/src/context/EmbedProvider.d.ts.map +1 -0
  88. package/dist/typescript/src/events/agent-event-emitter.d.ts +41 -0
  89. package/dist/typescript/src/events/agent-event-emitter.d.ts.map +1 -0
  90. package/dist/typescript/src/events/embed.event.d.ts +39 -21
  91. package/dist/typescript/src/events/embed.event.d.ts.map +1 -1
  92. package/dist/typescript/src/events/embed.types.d.ts +39 -0
  93. package/dist/typescript/src/events/embed.types.d.ts.map +1 -0
  94. package/dist/typescript/src/events/embed.validators.d.ts +17 -0
  95. package/dist/typescript/src/events/embed.validators.d.ts.map +1 -0
  96. package/dist/typescript/src/events/index.d.ts +10 -0
  97. package/dist/typescript/src/events/index.d.ts.map +1 -0
  98. package/dist/typescript/src/hooks/EmbedButton.animations.d.ts +38 -0
  99. package/dist/typescript/src/hooks/EmbedButton.animations.d.ts.map +1 -0
  100. package/dist/typescript/src/hooks/EmbedButton.helpers.d.ts +49 -0
  101. package/dist/typescript/src/hooks/EmbedButton.helpers.d.ts.map +1 -0
  102. package/dist/typescript/src/hooks/EmbedButton.hooks.d.ts +49 -0
  103. package/dist/typescript/src/hooks/EmbedButton.hooks.d.ts.map +1 -0
  104. package/dist/typescript/src/hooks/initialize.d.ts.map +1 -1
  105. package/dist/typescript/src/hooks/types/initialize.types.d.ts +1 -1
  106. package/dist/typescript/src/hooks/types/initialize.types.d.ts.map +1 -1
  107. package/dist/typescript/src/hooks/voiceagent.d.ts.map +1 -1
  108. package/dist/typescript/src/index.d.ts +10 -4
  109. package/dist/typescript/src/index.d.ts.map +1 -1
  110. package/dist/typescript/src/index.types.d.ts +2 -3
  111. package/dist/typescript/src/index.types.d.ts.map +1 -1
  112. package/dist/typescript/src/utils/constant.d.ts +46 -0
  113. package/dist/typescript/src/utils/constant.d.ts.map +1 -0
  114. package/dist/typescript/src/utils/permision.d.ts.map +1 -1
  115. package/dist/typescript/src/utils/reanimated.helper.d.ts.map +1 -1
  116. package/package.json +16 -8
  117. package/react-native.config.js +1 -0
  118. package/dist/commonjs/events/eventEmitter.js +0 -43
  119. package/dist/commonjs/events/eventEmitter.js.map +0 -1
  120. package/dist/module/events/eventEmitter.js +0 -39
  121. package/dist/module/events/eventEmitter.js.map +0 -1
  122. package/dist/typescript/src/events/eventEmitter.d.ts +0 -9
  123. package/dist/typescript/src/events/eventEmitter.d.ts.map +0 -1
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Types and interfaces for Embed events
3
+ */
4
+ export type EventCallback = (data: any) => void;
5
+ export declare enum EventKeys {
6
+ USER_DATA = "user_data",
7
+ SCREEN_STATE = "screen_state",
8
+ OFFER_STATE = "offer_state",
9
+ CUSTOM_EVENT = "custom_event",
10
+ FORM_STATE = "form_state",
11
+ ANALYTICS_DATA = "analytics_data",
12
+ ACTION_STATE = "action_state",
13
+ ERROR_STATE = "error_state",
14
+ SUCCESS_STATE = "success_state",
15
+ WARNING_STATE = "warning_state",
16
+ INFO_STATE = "info_state",
17
+ DEBUG_STATE = "debug_state"
18
+ }
19
+ export declare enum AgentEvent {
20
+ AGENT_CONNECTED = "agent_connected",
21
+ AGENT_DISCONNECTED = "agent_disconnected",
22
+ POPUP_MESSAGE_VISIBLE = "popup_message_visible"
23
+ }
24
+ export interface AgentConnectedData {
25
+ timestamp: string;
26
+ metadata?: Record<string, any>;
27
+ }
28
+ export interface AgentDisconnectedData {
29
+ timestamp: string;
30
+ metadata?: Record<string, any>;
31
+ }
32
+ export interface PopupMessageVisibleData {
33
+ value: boolean;
34
+ metadata?: {
35
+ trigger?: string;
36
+ [key: string]: any;
37
+ };
38
+ }
39
+ //# sourceMappingURL=embed.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embed.types.d.ts","sourceRoot":"","sources":["../../../../src/events/embed.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;AAGhD,oBAAY,SAAS;IACnB,SAAS,cAAc;IACvB,YAAY,iBAAiB;IAC7B,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;IAC7B,UAAU,eAAe;IACzB,cAAc,mBAAmB;IACjC,YAAY,iBAAiB;IAC7B,WAAW,gBAAgB;IAC3B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,UAAU,eAAe;IACzB,WAAW,gBAAgB;CAC5B;AAGD,oBAAY,UAAU;IACpB,eAAe,oBAAoB;IACnC,kBAAkB,uBAAuB;IACzC,qBAAqB,0BAA0B;CAChD;AAGD,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE;QACT,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Validation helpers for Embed events
3
+ */
4
+ import type { EventPayload } from '../utils/constant';
5
+ /**
6
+ * Validates event key is valid
7
+ * @param eventKey - The event key to validate
8
+ * @throws Error if event key is invalid
9
+ */
10
+ export declare function validateEventKey(eventKey: string): void;
11
+ /**
12
+ * Validates analytics events have required event_name
13
+ * @param paramsData - The event payload to validate
14
+ * @throws Error if analytics event is missing event_name
15
+ */
16
+ export declare function validateAnalyticsEvent(paramsData: EventPayload): void;
17
+ //# sourceMappingURL=embed.validators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embed.validators.d.ts","sourceRoot":"","sources":["../../../../src/events/embed.validators.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAMvD;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,YAAY,GAAG,IAAI,CAQrE"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Events module
3
+ * Exports the main Embed event manager and related types
4
+ */
5
+ export { default } from './embed.event';
6
+ export { EventKeys, AgentEvent } from './embed.types';
7
+ export type { EventCallback, AgentConnectedData, AgentDisconnectedData, PopupMessageVisibleData, } from './embed.types';
8
+ export { AgentEventEmitter } from './agent-event-emitter';
9
+ export { validateEventKey, validateAnalyticsEvent } from './embed.validators';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/events/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACtD,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * @file EmbedButton.animations.ts
3
+ * @description Animation logic and hooks for the EmbedButton component
4
+ */
5
+ declare const Animated: any;
6
+ export { Animated };
7
+ /**
8
+ * Hook to initialize and manage all animation shared values
9
+ */
10
+ export declare const useAnimationValues: () => {
11
+ isPressed: any;
12
+ offset: any;
13
+ start: any;
14
+ menuAnimation: any;
15
+ buttonWidth: any;
16
+ buttonScale: any;
17
+ };
18
+ /**
19
+ * Hook to handle button expand/collapse animations
20
+ */
21
+ export declare const useButtonAnimations: (isOpen: boolean, menuAnimation: any, buttonWidth: any) => void;
22
+ /**
23
+ * Hook to handle breathing animation when auto-popup is shown
24
+ */
25
+ export declare const useBreathingAnimation: (isOpen: boolean, isAutoOpen: boolean, buttonScale: any) => void;
26
+ /**
27
+ * Hook to create animated styles for the button
28
+ */
29
+ export declare const useButtonAnimatedStyles: (isOpen: boolean, offset: any, buttonWidth: any, isPressed: any, buttonScale: any) => any;
30
+ /**
31
+ * Hook to create animated styles for the popup text
32
+ */
33
+ export declare const usePopupAnimatedStyles: (offset: any, isPressed: any) => any;
34
+ /**
35
+ * Create pan gesture for drag functionality
36
+ */
37
+ export declare const createPanGesture: (isPressed: any, offset: any, start: any, isOpen: boolean, setIsAutoOpen: (value: boolean) => void) => import("react-native-gesture-handler/lib/typescript/handlers/gestures/panGesture").PanGesture;
38
+ //# sourceMappingURL=EmbedButton.animations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmbedButton.animations.d.ts","sourceRoot":"","sources":["../../../../src/hooks/EmbedButton.animations.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAkBH,QAAA,MASE,QAAQ,KAEY,CAAC;AAQvB,OAAO,EAAE,QAAQ,EAAE,CAAC;AAGpB;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;CAgB9B,CAAC;AAGF;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAC9B,QAAQ,OAAO,EACf,eAAe,GAAG,EAClB,aAAa,GAAG,SAUjB,CAAC;AAGF;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAChC,QAAQ,OAAO,EACf,YAAY,OAAO,EACnB,aAAa,GAAG,SAwBjB,CAAC;AAGF;;GAEG;AACH,eAAO,MAAM,uBAAuB,GAClC,QAAQ,OAAO,EACf,QAAQ,GAAG,EACX,aAAa,GAAG,EAChB,WAAW,GAAG,EACd,aAAa,GAAG,QAkBjB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,GAAG,EAAE,WAAW,GAAG,QAajE,CAAC;AAGF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAC3B,WAAW,GAAG,EACd,QAAQ,GAAG,EACX,OAAO,GAAG,EACV,QAAQ,OAAO,EACf,eAAe,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,kGA2BxC,CAAC"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * @file EmbedButton.helpers.ts
3
+ * @description Helper functions and utilities for the EmbedButton component
4
+ */
5
+ export declare const SCREEN_WIDTH: number, SCREEN_HEIGHT: number;
6
+ export declare const BUTTON_DIMENSIONS: {
7
+ readonly WIDTH: 60;
8
+ readonly HEIGHT: 60;
9
+ readonly EXPANDED_WIDTH: number;
10
+ };
11
+ export declare const ICON_URLS: {
12
+ readonly MIC_ON: "https://revrag-dev.s3.ap-south-1.amazonaws.com/Avatars/Mute+button.png";
13
+ readonly MIC_OFF: "https://revrag-dev.s3.ap-south-1.amazonaws.com/Avatars/unmute.png";
14
+ readonly END_CALL: "https://revrag-dev.s3.ap-south-1.amazonaws.com/Avatars/end+button.png";
15
+ readonly AMPLIFY_ANIMATION: "https://revrag-dev.s3.ap-south-1.amazonaws.com/Avatars/amplify.json";
16
+ };
17
+ export declare const DEFAULT_GRADIENT_COLORS: string[];
18
+ export declare const DEFAULT_POPUP_DELAY_MS = 15000;
19
+ export interface ConfigData {
20
+ inactivity_behaviour?: 'show_popup' | 'auto_trigger' | 'none';
21
+ popup_delay_ms?: number | string;
22
+ popup_description?: string;
23
+ icon_animation?: string;
24
+ gradient?: string[];
25
+ agent_name?: string;
26
+ agent_type?: string;
27
+ connect_button_title?: string;
28
+ }
29
+ /**
30
+ * Safely parse delay value to ensure it's a valid number
31
+ */
32
+ export declare const parseDelayMs: (delay: number | string | undefined) => number;
33
+ /**
34
+ * Format seconds to MM:SS format
35
+ */
36
+ export declare const formatDuration: (seconds: number) => string;
37
+ /**
38
+ * Calculate the max X position for button drag constraints
39
+ */
40
+ export declare const calculateMaxX: (isOpen: boolean) => number;
41
+ /**
42
+ * Calculate the max Y position for button drag constraints
43
+ */
44
+ export declare const calculateMaxY: () => number;
45
+ /**
46
+ * Clamp a value between a min and max
47
+ */
48
+ export declare const clamp: (value: number, min: number, max: number) => number;
49
+ //# sourceMappingURL=EmbedButton.helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmbedButton.helpers.d.ts","sourceRoot":"","sources":["../../../../src/hooks/EmbedButton.helpers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,eAAO,MAAe,YAAY,UAAU,aAAa,QAC/B,CAAC;AAE3B,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AAEX,eAAO,MAAM,SAAS;;;;;CAQZ,CAAC;AAEX,eAAO,MAAM,uBAAuB,UAAyB,CAAC;AAE9D,eAAO,MAAM,sBAAsB,QAAQ,CAAC;AAG5C,MAAM,WAAW,UAAU;IACzB,oBAAoB,CAAC,EAAE,YAAY,GAAG,cAAc,GAAG,MAAM,CAAC;IAC9D,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAID;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,GAAG,MAAM,GAAG,SAAS,KAAG,MAOjE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,KAAG,MAMhD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,GAAI,QAAQ,OAAO,KAAG,MAM/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,QAAO,MAGhC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,GAAI,OAAO,MAAM,EAAE,KAAK,MAAM,EAAE,KAAK,MAAM,KAAG,MAG/D,CAAC"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * @file EmbedButton.hooks.ts
3
+ * @description Custom hooks for the EmbedButton component
4
+ */
5
+ import type { ConfigData } from './EmbedButton.helpers';
6
+ /**
7
+ * Hook to fetch and manage agent configuration data
8
+ */
9
+ export declare const useConfigData: () => ConfigData | null;
10
+ /**
11
+ * Hook to track call duration when connected
12
+ */
13
+ export declare const useCallDuration: (connectionState: string) => {
14
+ callDuration: number;
15
+ resetDuration: () => void;
16
+ };
17
+ /**
18
+ * Hook to handle inactivity behavior (show_popup or auto_trigger)
19
+ */
20
+ interface UseInactivityBehaviorParams {
21
+ configData: ConfigData | null;
22
+ isOpen: boolean;
23
+ isLoading: boolean;
24
+ hasActiveToken: boolean;
25
+ onStartCall: () => Promise<void>;
26
+ }
27
+ export declare const useInactivityBehavior: ({ configData, isOpen, isLoading, hasActiveToken, onStartCall, }: UseInactivityBehaviorParams) => {
28
+ isAutoOpen: boolean;
29
+ setIsAutoOpen: import("react").Dispatch<import("react").SetStateAction<boolean>>;
30
+ };
31
+ /**
32
+ * Hook to manage call lifecycle (start, end, mute)
33
+ */
34
+ interface UseCallManagementParams {
35
+ initializeVoiceAgent: () => Promise<void>;
36
+ endCall: () => Promise<void>;
37
+ muteMic: () => void;
38
+ unmuteMic: () => void;
39
+ isMicMuted: boolean;
40
+ resetDuration: () => void;
41
+ setIsOpen: (open: boolean) => void;
42
+ }
43
+ export declare const useCallManagement: ({ initializeVoiceAgent, endCall, muteMic, unmuteMic, isMicMuted, resetDuration, setIsOpen, }: UseCallManagementParams) => {
44
+ handleStartCall: () => Promise<void>;
45
+ handleEndCall: () => Promise<void>;
46
+ handleMicToggle: () => void;
47
+ };
48
+ export {};
49
+ //# sourceMappingURL=EmbedButton.hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmbedButton.hooks.d.ts","sourceRoot":"","sources":["../../../../src/hooks/EmbedButton.hooks.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAIxD;;GAEG;AACH,eAAO,MAAM,aAAa,yBAiBzB,CAAC;AAGF;;GAEG;AACH,eAAO,MAAM,eAAe,GAAI,iBAAiB,MAAM;;;CAiCtD,CAAC;AAGF;;GAEG;AACH,UAAU,2BAA2B;IACnC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAClC;AAED,eAAO,MAAM,qBAAqB,GAAI,iEAMnC,2BAA2B;;;CAkD7B,CAAC;AAGF;;GAEG;AACH,UAAU,uBAAuB;IAC/B,oBAAoB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC;AAED,eAAO,MAAM,iBAAiB,GAAI,8FAQ/B,uBAAuB;;;;CA0BzB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"initialize.d.ts","sourceRoot":"","sources":["../../../../src/hooks/initialize.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAElC,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,QAAQ,GACT,EAAE,kBAAkB,GAAG,mBAAmB,CA0D1C"}
1
+ {"version":3,"file":"initialize.d.ts","sourceRoot":"","sources":["../../../../src/hooks/initialize.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAMlC,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,QAAQ,GACT,EAAE,kBAAkB,GAAG,mBAAmB,CAgG1C"}
@@ -1,6 +1,6 @@
1
1
  export type UseInitializeProps = {
2
2
  apiKey: string;
3
- embedUrl: string;
3
+ embedUrl?: string;
4
4
  };
5
5
  export type UseInitializeReturn = {
6
6
  isInitialized: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"initialize.types.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/types/initialize.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC"}
1
+ {"version":3,"file":"initialize.types.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/types/initialize.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"voiceagent.d.ts","sourceRoot":"","sources":["../../../../src/hooks/voiceagent.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AA8DpE,eAAO,MAAM,aAAa,QAAO,mBAmShC,CAAC"}
1
+ {"version":3,"file":"voiceagent.d.ts","sourceRoot":"","sources":["../../../../src/hooks/voiceagent.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AA+DpE,eAAO,MAAM,aAAa,QAAO,mBAmRhC,CAAC"}
@@ -1,9 +1,15 @@
1
- import type { ApiResponse, RegisterRequest, TokenDetails, UpdateDataRequest } from './api/types/embed.api.types';
1
+ import EmbedProvider from './context/EmbedProvider';
2
2
  import { EmbedButton } from './components/Embed/EmbedButton';
3
- import Embed, { EventKeys, AgentEvent } from './events/embed.event';
4
3
  import { useInitialize } from './hooks/initialize';
4
+ import Embed, { EventKeys, AgentEvent } from './events/embed.event';
5
+ import type { RegisterRequest } from './api/types/embed.api.types';
6
+ import type { UpdateDataRequest } from './api/types/embed.api.types';
7
+ import type { TokenDetails } from './api/types/embed.api.types';
5
8
  import type { UseInitializeProps } from './hooks/types/initialize.types';
6
9
  import type { UseVoiceAgentReturn } from './hooks/types/voiceAgent.types';
7
- export { Embed, EmbedButton, EventKeys as EmbedEventKeys, useInitialize, AgentEvent, };
8
- export type { ApiResponse, RegisterRequest, TokenDetails, UpdateDataRequest, UseInitializeProps, UseVoiceAgentReturn, };
10
+ import type { ApiResponse } from './api/types/embed.api.types';
11
+ import { checkPermissions } from './utils/permision';
12
+ import type { AgentConnectedData, AgentDisconnectedData, PopupMessageVisibleData } from './events/embed.event';
13
+ export { EmbedButton, EmbedProvider, useInitialize, Embed, EventKeys as EmbedEventKeys, AgentEvent, checkPermissions, };
14
+ export type { UseInitializeProps, UseVoiceAgentReturn, ApiResponse, RegisterRequest, TokenDetails, UpdateDataRequest, AgentConnectedData, AgentDisconnectedData, PopupMessageVisibleData, };
9
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,eAAe,EACf,YAAY,EACZ,iBAAiB,EAClB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,OAAO,EACL,KAAK,EACL,WAAW,EACX,SAAS,IAAI,cAAc,EAC3B,aAAa,EACb,UAAU,GACX,CAAC;AAEF,YAAY,EACV,WAAW,EACX,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,GACpB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,WAAW,EACX,aAAa,EACb,aAAa,EACb,KAAK,EACL,SAAS,IAAI,cAAc,EAC3B,UAAU,EACV,gBAAgB,GACjB,CAAC;AAEF,YAAY,EACV,kBAAkB,EAClB,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,GACxB,CAAC"}
@@ -36,7 +36,7 @@ export interface ApiResponse<T> {
36
36
  }
37
37
  export interface RegisterRequest {
38
38
  apiKey: string;
39
- embedUrl: string;
39
+ embedUrl?: string;
40
40
  }
41
41
  export interface TokenDetails {
42
42
  token: string;
@@ -51,8 +51,7 @@ export interface UpdateDataRequest {
51
51
  }
52
52
  export declare enum EventKeys {
53
53
  USER_DATA = "user_data",
54
- SCREEN_STATE = "state_state",
55
- OFFER_STATE = "offer_state"
54
+ SCREEN_STATE = "state_data"
56
55
  }
57
56
  export declare class OnWid {
58
57
  Event(eventKey: string, data: any): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.types.d.ts","sourceRoot":"","sources":["../../../src/index.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,MAAM,CAAC,OAAO,UAAU,WAAW,IAAI,GAAG,CAAC,OAAO,CAAC;AAGnD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,oBAAoB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IACzB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,eAAe,EAAE,eAAe,CAAC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAGD,MAAM,CAAC,OAAO,CAAC,MAAM,aAAa,EAAE,CAClC,KAAK,EAAE,kBAAkB,KACtB,mBAAmB,CAAC;AACzB,MAAM,CAAC,OAAO,CAAC,MAAM,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAG9D,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAGD,oBAAY,SAAS;IACnB,SAAS,cAAc;IACvB,YAAY,gBAAgB;IAC5B,WAAW,gBAAgB;CAC5B;AAED,MAAM,CAAC,OAAO,OAAO,KAAK;IACxB,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IACjD,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;CAC7D;AAED,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,EAAE,KAAK,CAAC;AAClC,MAAM,CAAC,OAAO,CAAC,MAAM,aAAa,EAAE,GAAG,CAAC"}
1
+ {"version":3,"file":"index.types.d.ts","sourceRoot":"","sources":["../../../src/index.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,MAAM,CAAC,OAAO,UAAU,WAAW,IAAI,GAAG,CAAC,OAAO,CAAC;AAGnD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,oBAAoB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IACzB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,eAAe,EAAE,eAAe,CAAC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAGD,MAAM,CAAC,OAAO,CAAC,MAAM,aAAa,EAAE,CAClC,KAAK,EAAE,kBAAkB,KACtB,mBAAmB,CAAC;AACzB,MAAM,CAAC,OAAO,CAAC,MAAM,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAG9D,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAGD,oBAAY,SAAS;IACnB,SAAS,cAAc;IACvB,YAAY,eAAe;CAC5B;AAED,MAAM,CAAC,OAAO,OAAO,KAAK;IACxB,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IACjD,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;CAC7D;AAED,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,EAAE,KAAK,CAAC;AAClC,MAAM,CAAC,OAAO,CAAC,MAAM,aAAa,EAAE,GAAG,CAAC"}
@@ -0,0 +1,46 @@
1
+ export declare const SDK_NAME = "embed_react_native";
2
+ export declare const SDK_VERSION = "1.0.17";
3
+ export declare const SDK_PLATFORM = "react_native";
4
+ export declare const DEFAULT_EMBED_URL = "https://embed.revrag.ai";
5
+ /**
6
+ * Generate a random event ID
7
+ */
8
+ export declare function generateEventId(): string;
9
+ export type EventContext = {
10
+ screen?: string;
11
+ flow?: string;
12
+ app_version?: string;
13
+ };
14
+ export type EventPayload = {
15
+ event_id: string;
16
+ type: string;
17
+ app_user_id: string;
18
+ session_id?: string;
19
+ timestamp: string;
20
+ event_name: string;
21
+ sdk: {
22
+ sdk_name: string;
23
+ sdk_version: string;
24
+ platform: string;
25
+ };
26
+ context?: EventContext;
27
+ data: Record<string, unknown>;
28
+ };
29
+ type BuildEventPayloadParams = {
30
+ eventKey: string;
31
+ app_user_id?: string;
32
+ appUserId?: string;
33
+ eventData?: Record<string, unknown>;
34
+ data?: Record<string, unknown>;
35
+ sessionId?: string;
36
+ session_id?: string;
37
+ context?: EventContext;
38
+ screen?: string;
39
+ flow?: string;
40
+ } & Record<string, unknown>;
41
+ /**
42
+ * Build a standardized event payload for the SDK
43
+ */
44
+ export declare function buildEventPayload(params: BuildEventPayloadParams): EventPayload;
45
+ export {};
46
+ //# sourceMappingURL=constant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constant.d.ts","sourceRoot":"","sources":["../../../../src/utils/constant.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,uBAAuB,CAAC;AAC7C,eAAO,MAAM,WAAW,WAAW,CAAC;AACpC,eAAO,MAAM,YAAY,iBAAiB,CAAC;AAC3C,eAAO,MAAM,iBAAiB,4BAA4B,CAAC;AAE3D;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE;QACH,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE5B;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,uBAAuB,GAC9B,YAAY,CAiFd"}
@@ -1 +1 @@
1
- {"version":3,"file":"permision.d.ts","sourceRoot":"","sources":["../../../../src/utils/permision.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,IAAI,CA4BrD,CAAC"}
1
+ {"version":3,"file":"permision.d.ts","sourceRoot":"","sources":["../../../../src/utils/permision.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,IAAI,CAwCrD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"reanimated.helper.d.ts","sourceRoot":"","sources":["../../../../src/utils/reanimated.helper.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,UAAU,aAAa;IACrB,cAAc,EAAE,GAAG,CAAC;IACpB,gBAAgB,EAAE,GAAG,CAAC;IACtB,UAAU,EAAE,GAAG,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC;IAChB,YAAY,EAAE,GAAG,CAAC;IAClB,OAAO,EAAE,GAAG,CAAC;IACb,MAAM,EAAE,GAAG,CAAC;IACZ,QAAQ,EAAE,GAAG,CAAC;IACd,WAAW,EAAE,OAAO,CAAC;CACtB;AAID;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,aAAa,CA2DhD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAG9C;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAe/C"}
1
+ {"version":3,"file":"reanimated.helper.d.ts","sourceRoot":"","sources":["../../../../src/utils/reanimated.helper.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,UAAU,aAAa;IACrB,cAAc,EAAE,GAAG,CAAC;IACpB,gBAAgB,EAAE,GAAG,CAAC;IACtB,UAAU,EAAE,GAAG,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC;IAChB,YAAY,EAAE,GAAG,CAAC;IAClB,OAAO,EAAE,GAAG,CAAC;IACb,MAAM,EAAE,GAAG,CAAC;IACZ,QAAQ,EAAE,GAAG,CAAC;IACd,WAAW,EAAE,OAAO,CAAC;CACtB;AAID;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,aAAa,CA4DhD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAG9C;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAe/C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@revrag-ai/embed-react-native",
3
- "version": "1.0.16",
3
+ "version": "1.0.18",
4
4
  "source": "./src/index.tsx",
5
5
  "description": "A powerful React Native library for integrating AI-powered voice agents into mobile applications. Features real-time voice communication, intelligent speech processing, customizable UI components, and comprehensive event handling for building conversational AI experiences.",
6
6
  "main": "./dist/commonjs/index.js",
@@ -47,12 +47,17 @@
47
47
  "fix-js": "node fix-js-files.js",
48
48
  "verify-setup": "node scripts/verify-setup.js",
49
49
  "debug-network": "node scripts/debug-network.js",
50
- "prepublishOnly": "bob build && yarn fix-js",
51
- "release": "release-it --only-version",
52
- "protect": "node -e \"const crypto = require('crypto'); const fs = require('fs'); const config = { hash: crypto.randomBytes(32).toString('hex'), createdAt: new Date().toISOString(), note: 'Protected build', version: require('./package.json').version }; fs.writeFileSync('.onwid-security.json', JSON.stringify(config, null, 2)); console.log('✅ Code protected');\"",
50
+ "precheck": "yarn lint && yarn typecheck && yarn test",
51
+ "prepublishOnly": "yarn clean && bob build && yarn fix-js",
52
+ "publish": "yarn precheck && yarn publish:safe",
53
53
  "publish:safe": "yarn clean && bob build && yarn fix-js && yarn protect && npm publish --access public",
54
54
  "publish:beta": "yarn clean && bob build && yarn fix-js && yarn protect && npm publish --access public --tag beta",
55
55
  "publish:alpha": "yarn clean && bob build && yarn fix-js && yarn protect && npm publish --access public --tag alpha",
56
+ "release": "release-it",
57
+ "release:patch": "release-it patch",
58
+ "release:minor": "release-it minor",
59
+ "release:major": "release-it major",
60
+ "protect": "node -e \"const crypto = require('crypto'); const fs = require('fs'); const config = { hash: crypto.randomBytes(32).toString('hex'), createdAt: new Date().toISOString(), note: 'Protected build', version: require('./package.json').version }; fs.writeFileSync('.onwid-security.json', JSON.stringify(config, null, 2)); console.log('✅ Code protected');\"",
56
61
  "docs:check": "echo '📚 Documentation files:' && ls -la *.md && echo '✅ Documentation is up to date'",
57
62
  "docs:validate": "echo '🔍 Validating documentation...' && node -e \"const fs = require('fs'); const files = ['README.md', 'API.md', 'EXAMPLES.md']; files.forEach(f => { if (!fs.existsSync(f)) throw new Error('Missing: ' + f); }); console.log('✅ All documentation files present');\""
58
63
  },
@@ -93,7 +98,9 @@
93
98
  "@react-native/eslint-config": "0.75.4",
94
99
  "@react-native/metro-config": "0.75.4",
95
100
  "@react-native/typescript-config": "0.75.4",
101
+ "@react-navigation/native": "^7.1.26",
96
102
  "@release-it/conventional-changelog": "^5.0.0",
103
+ "@types/dom-mediacapture-record": "^1.0.22",
97
104
  "@types/jest": "^29.5.5",
98
105
  "@types/react": "^18.2.44",
99
106
  "del-cli": "^5.1.0",
@@ -106,9 +113,9 @@
106
113
  "react": "18.3.1",
107
114
  "react-native": "0.75.4",
108
115
  "react-native-builder-bob": "^0.30.2",
109
- "react-native-gesture-handler": "^2.25.0",
116
+ "react-native-gesture-handler": "~2.20.2",
110
117
  "react-native-linear-gradient": "^2.8.3",
111
- "react-native-reanimated": "^3.17.5",
118
+ "react-native-reanimated": "~3.15.1",
112
119
  "react-native-safe-area-context": "^4.12.0",
113
120
  "release-it": "^15.0.0",
114
121
  "typescript": "^5.2.2"
@@ -120,7 +127,6 @@
120
127
  "@livekit/react-native": "*",
121
128
  "@livekit/react-native-webrtc": "*",
122
129
  "@react-native-async-storage/async-storage": "*",
123
- "events": "*",
124
130
  "lottie-react-native": "*",
125
131
  "react": "*",
126
132
  "react-native": "*",
@@ -240,6 +246,8 @@
240
246
  "version": "0.46.0"
241
247
  },
242
248
  "dependencies": {
243
- "livekit-client": "^2.13.1"
249
+ "livekit-client": "^2.13.1",
250
+ "react-dom": "18.3.1",
251
+ "tslib": "^2.8.1"
244
252
  }
245
253
  }
@@ -1,3 +1,4 @@
1
+ /* eslint-disable */
1
2
  /**
2
3
  * @type {import('@react-native-community/cli-types').UserDependencyConfig}
3
4
  */
@@ -1,43 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- class TypedEventEmitter {
8
- listeners = new Map();
9
- on(event, listener) {
10
- if (!this.listeners.has(event)) {
11
- this.listeners.set(event, []);
12
- }
13
- this.listeners.get(event).push(listener);
14
- return this;
15
- }
16
- emit(event, payload) {
17
- const eventListeners = this.listeners.get(event);
18
- if (eventListeners) {
19
- eventListeners.forEach(listener => listener(payload));
20
- return true;
21
- }
22
- return false;
23
- }
24
- once(event, listener) {
25
- const onceWrapper = payload => {
26
- listener(payload);
27
- this.off(event, onceWrapper);
28
- };
29
- return this.on(event, onceWrapper);
30
- }
31
- off(event, listener) {
32
- const eventListeners = this.listeners.get(event);
33
- if (eventListeners) {
34
- const index = eventListeners.indexOf(listener);
35
- if (index > -1) {
36
- eventListeners.splice(index, 1);
37
- }
38
- }
39
- return this;
40
- }
41
- }
42
- var _default = exports.default = TypedEventEmitter;
43
- //# sourceMappingURL=eventEmitter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["TypedEventEmitter","listeners","Map","on","event","listener","has","set","get","push","emit","payload","eventListeners","forEach","once","onceWrapper","off","index","indexOf","splice","_default","exports","default"],"sourceRoot":"../../../src","sources":["events/eventEmitter.ts"],"mappings":";;;;;;AAAA,MAAMA,iBAAiB,CAAyC;EACtDC,SAAS,GACf,IAAIC,GAAG,CAAC,CAAC;EAEXC,EAAEA,CAAoBC,KAAQ,EAAEC,QAAiC,EAAQ;IACvE,IAAI,CAAC,IAAI,CAACJ,SAAS,CAACK,GAAG,CAACF,KAAK,CAAC,EAAE;MAC9B,IAAI,CAACH,SAAS,CAACM,GAAG,CAACH,KAAK,EAAE,EAAE,CAAC;IAC/B;IACA,IAAI,CAACH,SAAS,CAACO,GAAG,CAACJ,KAAK,CAAC,CAAEK,IAAI,CAACJ,QAAyC,CAAC;IAC1E,OAAO,IAAI;EACb;EAEAK,IAAIA,CAAoBN,KAAQ,EAAEO,OAAa,EAAW;IACxD,MAAMC,cAAc,GAAG,IAAI,CAACX,SAAS,CAACO,GAAG,CAACJ,KAAK,CAAC;IAChD,IAAIQ,cAAc,EAAE;MAClBA,cAAc,CAACC,OAAO,CAAER,QAAQ,IAAKA,QAAQ,CAACM,OAAO,CAAC,CAAC;MACvD,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EAEAG,IAAIA,CAAoBV,KAAQ,EAAEC,QAAiC,EAAQ;IACzE,MAAMU,WAAW,GAAIJ,OAAa,IAAK;MACrCN,QAAQ,CAACM,OAAO,CAAC;MACjB,IAAI,CAACK,GAAG,CAACZ,KAAK,EAAEW,WAAW,CAAC;IAC9B,CAAC;IACD,OAAO,IAAI,CAACZ,EAAE,CAACC,KAAK,EAAEW,WAAW,CAAC;EACpC;EAEAC,GAAGA,CAAoBZ,KAAQ,EAAEC,QAAiC,EAAQ;IACxE,MAAMO,cAAc,GAAG,IAAI,CAACX,SAAS,CAACO,GAAG,CAACJ,KAAK,CAAC;IAChD,IAAIQ,cAAc,EAAE;MAClB,MAAMK,KAAK,GAAGL,cAAc,CAACM,OAAO,CAClCb,QACF,CAAC;MACD,IAAIY,KAAK,GAAG,CAAC,CAAC,EAAE;QACdL,cAAc,CAACO,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;MACjC;IACF;IACA,OAAO,IAAI;EACb;AACF;AAAC,IAAAG,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEctB,iBAAiB","ignoreList":[]}
@@ -1,39 +0,0 @@
1
- "use strict";
2
-
3
- class TypedEventEmitter {
4
- listeners = new Map();
5
- on(event, listener) {
6
- if (!this.listeners.has(event)) {
7
- this.listeners.set(event, []);
8
- }
9
- this.listeners.get(event).push(listener);
10
- return this;
11
- }
12
- emit(event, payload) {
13
- const eventListeners = this.listeners.get(event);
14
- if (eventListeners) {
15
- eventListeners.forEach(listener => listener(payload));
16
- return true;
17
- }
18
- return false;
19
- }
20
- once(event, listener) {
21
- const onceWrapper = payload => {
22
- listener(payload);
23
- this.off(event, onceWrapper);
24
- };
25
- return this.on(event, onceWrapper);
26
- }
27
- off(event, listener) {
28
- const eventListeners = this.listeners.get(event);
29
- if (eventListeners) {
30
- const index = eventListeners.indexOf(listener);
31
- if (index > -1) {
32
- eventListeners.splice(index, 1);
33
- }
34
- }
35
- return this;
36
- }
37
- }
38
- export default TypedEventEmitter;
39
- //# sourceMappingURL=eventEmitter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["TypedEventEmitter","listeners","Map","on","event","listener","has","set","get","push","emit","payload","eventListeners","forEach","once","onceWrapper","off","index","indexOf","splice"],"sourceRoot":"../../../src","sources":["events/eventEmitter.ts"],"mappings":";;AAAA,MAAMA,iBAAiB,CAAyC;EACtDC,SAAS,GACf,IAAIC,GAAG,CAAC,CAAC;EAEXC,EAAEA,CAAoBC,KAAQ,EAAEC,QAAiC,EAAQ;IACvE,IAAI,CAAC,IAAI,CAACJ,SAAS,CAACK,GAAG,CAACF,KAAK,CAAC,EAAE;MAC9B,IAAI,CAACH,SAAS,CAACM,GAAG,CAACH,KAAK,EAAE,EAAE,CAAC;IAC/B;IACA,IAAI,CAACH,SAAS,CAACO,GAAG,CAACJ,KAAK,CAAC,CAAEK,IAAI,CAACJ,QAAyC,CAAC;IAC1E,OAAO,IAAI;EACb;EAEAK,IAAIA,CAAoBN,KAAQ,EAAEO,OAAa,EAAW;IACxD,MAAMC,cAAc,GAAG,IAAI,CAACX,SAAS,CAACO,GAAG,CAACJ,KAAK,CAAC;IAChD,IAAIQ,cAAc,EAAE;MAClBA,cAAc,CAACC,OAAO,CAAER,QAAQ,IAAKA,QAAQ,CAACM,OAAO,CAAC,CAAC;MACvD,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EAEAG,IAAIA,CAAoBV,KAAQ,EAAEC,QAAiC,EAAQ;IACzE,MAAMU,WAAW,GAAIJ,OAAa,IAAK;MACrCN,QAAQ,CAACM,OAAO,CAAC;MACjB,IAAI,CAACK,GAAG,CAACZ,KAAK,EAAEW,WAAW,CAAC;IAC9B,CAAC;IACD,OAAO,IAAI,CAACZ,EAAE,CAACC,KAAK,EAAEW,WAAW,CAAC;EACpC;EAEAC,GAAGA,CAAoBZ,KAAQ,EAAEC,QAAiC,EAAQ;IACxE,MAAMO,cAAc,GAAG,IAAI,CAACX,SAAS,CAACO,GAAG,CAACJ,KAAK,CAAC;IAChD,IAAIQ,cAAc,EAAE;MAClB,MAAMK,KAAK,GAAGL,cAAc,CAACM,OAAO,CAClCb,QACF,CAAC;MACD,IAAIY,KAAK,GAAG,CAAC,CAAC,EAAE;QACdL,cAAc,CAACO,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;MACjC;IACF;IACA,OAAO,IAAI;EACb;AACF;AAEA,eAAejB,iBAAiB","ignoreList":[]}
@@ -1,9 +0,0 @@
1
- declare class TypedEventEmitter<T extends Record<string | symbol, any>> {
2
- private listeners;
3
- on<K extends keyof T>(event: K, listener: (payload: T[K]) => void): this;
4
- emit<K extends keyof T>(event: K, payload: T[K]): boolean;
5
- once<K extends keyof T>(event: K, listener: (payload: T[K]) => void): this;
6
- off<K extends keyof T>(event: K, listener: (payload: T[K]) => void): this;
7
- }
8
- export default TypedEventEmitter;
9
- //# sourceMappingURL=eventEmitter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eventEmitter.d.ts","sourceRoot":"","sources":["../../../../src/events/eventEmitter.ts"],"names":[],"mappings":"AAAA,cAAM,iBAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC;IAC5D,OAAO,CAAC,SAAS,CACL;IAEZ,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI;IAQxE,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO;IASzD,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI;IAQ1E,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI;CAY1E;AAED,eAAe,iBAAiB,CAAC"}