@revrag-ai/embed-react-native 1.0.27 → 1.0.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/android/build.gradle +1 -0
- package/dist/commonjs/api/api.js.map +1 -1
- package/dist/commonjs/assets/fonts/PlaywriteNZBasic-ExtraLight.ttf +0 -0
- package/dist/commonjs/assets/fonts/PlaywriteNZBasic-Light.ttf +0 -0
- package/dist/commonjs/assets/fonts/PlaywriteNZBasic-Regular.ttf +0 -0
- package/dist/commonjs/assets/fonts/PlaywriteNZBasic-Thin.ttf +0 -0
- package/dist/commonjs/components/DynamicComponent/Typewriter.js +124 -0
- package/dist/commonjs/components/DynamicComponent/Typewriter.js.map +1 -0
- package/dist/commonjs/components/Embed/EmbedButton.js +307 -93
- package/dist/commonjs/components/Embed/EmbedButton.js.map +1 -1
- package/dist/commonjs/components/styles/EmbedButton.style.js +115 -158
- package/dist/commonjs/components/styles/EmbedButton.style.js.map +1 -1
- package/dist/commonjs/context/EmbedProvider.js +187 -14
- package/dist/commonjs/context/EmbedProvider.js.map +1 -1
- package/dist/commonjs/events/clickEventTracker.js +210 -0
- package/dist/commonjs/events/clickEventTracker.js.map +1 -0
- package/dist/commonjs/events/embed.event.js +11 -3
- package/dist/commonjs/events/embed.event.js.map +1 -1
- package/dist/commonjs/hooks/EmbedButton.animations.js +115 -15
- package/dist/commonjs/hooks/EmbedButton.animations.js.map +1 -1
- package/dist/commonjs/hooks/EmbedButton.helpers.js +11 -3
- package/dist/commonjs/hooks/EmbedButton.helpers.js.map +1 -1
- package/dist/commonjs/hooks/EmbedButton.hooks.js +14 -9
- package/dist/commonjs/hooks/EmbedButton.hooks.js.map +1 -1
- package/dist/commonjs/hooks/voiceagent.js +34 -12
- package/dist/commonjs/hooks/voiceagent.js.map +1 -1
- package/dist/commonjs/index.js +6 -2
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/utils/constant.js +6 -1
- package/dist/commonjs/utils/constant.js.map +1 -1
- package/dist/commonjs/utils/permision.js +42 -1
- package/dist/commonjs/utils/permision.js.map +1 -1
- package/dist/commonjs/utils/reanimated.helper.js +4 -0
- package/dist/commonjs/utils/reanimated.helper.js.map +1 -1
- package/dist/module/api/api.js.map +1 -1
- package/dist/module/assets/fonts/PlaywriteNZBasic-ExtraLight.ttf +0 -0
- package/dist/module/assets/fonts/PlaywriteNZBasic-Light.ttf +0 -0
- package/dist/module/assets/fonts/PlaywriteNZBasic-Regular.ttf +0 -0
- package/dist/module/assets/fonts/PlaywriteNZBasic-Thin.ttf +0 -0
- package/dist/module/components/DynamicComponent/Typewriter.js +122 -0
- package/dist/module/components/DynamicComponent/Typewriter.js.map +1 -0
- package/dist/module/components/Embed/EmbedButton.js +312 -98
- package/dist/module/components/Embed/EmbedButton.js.map +1 -1
- package/dist/module/components/styles/EmbedButton.style.js +114 -157
- package/dist/module/components/styles/EmbedButton.style.js.map +1 -1
- package/dist/module/context/EmbedProvider.js +187 -14
- package/dist/module/context/EmbedProvider.js.map +1 -1
- package/dist/module/events/clickEventTracker.js +199 -0
- package/dist/module/events/clickEventTracker.js.map +1 -0
- package/dist/module/events/embed.event.js +11 -3
- package/dist/module/events/embed.event.js.map +1 -1
- package/dist/module/hooks/EmbedButton.animations.js +109 -13
- package/dist/module/hooks/EmbedButton.animations.js.map +1 -1
- package/dist/module/hooks/EmbedButton.helpers.js +10 -2
- package/dist/module/hooks/EmbedButton.helpers.js.map +1 -1
- package/dist/module/hooks/EmbedButton.hooks.js +14 -9
- package/dist/module/hooks/EmbedButton.hooks.js.map +1 -1
- package/dist/module/hooks/voiceagent.js +34 -12
- package/dist/module/hooks/voiceagent.js.map +1 -1
- package/dist/module/index.js +8 -3
- package/dist/module/index.js.map +1 -1
- package/dist/module/utils/constant.js +6 -1
- package/dist/module/utils/constant.js.map +1 -1
- package/dist/module/utils/permision.js +42 -1
- package/dist/module/utils/permision.js.map +1 -1
- package/dist/module/utils/reanimated.helper.js +4 -0
- package/dist/module/utils/reanimated.helper.js.map +1 -1
- package/dist/typescript/src/api/api.d.ts.map +1 -1
- package/dist/typescript/src/components/DynamicComponent/Typewriter.d.ts +15 -0
- package/dist/typescript/src/components/DynamicComponent/Typewriter.d.ts.map +1 -0
- package/dist/typescript/src/components/Embed/EmbedButton.d.ts +7 -1
- package/dist/typescript/src/components/Embed/EmbedButton.d.ts.map +1 -1
- package/dist/typescript/src/components/styles/EmbedButton.style.d.ts +22 -114
- package/dist/typescript/src/components/styles/EmbedButton.style.d.ts.map +1 -1
- package/dist/typescript/src/context/EmbedProvider.d.ts +30 -0
- package/dist/typescript/src/context/EmbedProvider.d.ts.map +1 -1
- package/dist/typescript/src/events/__tests__/agent-event-emitter.test.d.ts +5 -0
- package/dist/typescript/src/events/__tests__/agent-event-emitter.test.d.ts.map +1 -0
- package/dist/typescript/src/events/__tests__/clickEventTracker.test.d.ts +5 -0
- package/dist/typescript/src/events/__tests__/clickEventTracker.test.d.ts.map +1 -0
- package/dist/typescript/src/events/__tests__/embed.event.test.d.ts +5 -0
- package/dist/typescript/src/events/__tests__/embed.event.test.d.ts.map +1 -0
- package/dist/typescript/src/events/__tests__/embed.validators.test.d.ts +5 -0
- package/dist/typescript/src/events/__tests__/embed.validators.test.d.ts.map +1 -0
- package/dist/typescript/src/events/clickEventTracker.d.ts +70 -0
- package/dist/typescript/src/events/clickEventTracker.d.ts.map +1 -0
- package/dist/typescript/src/events/embed.event.d.ts.map +1 -1
- package/dist/typescript/src/hooks/EmbedButton.animations.d.ts +29 -6
- package/dist/typescript/src/hooks/EmbedButton.animations.d.ts.map +1 -1
- package/dist/typescript/src/hooks/EmbedButton.helpers.d.ts +60 -8
- package/dist/typescript/src/hooks/EmbedButton.helpers.d.ts.map +1 -1
- package/dist/typescript/src/hooks/EmbedButton.hooks.d.ts +2 -1
- package/dist/typescript/src/hooks/EmbedButton.hooks.d.ts.map +1 -1
- package/dist/typescript/src/hooks/types/voiceAgent.types.d.ts +2 -0
- package/dist/typescript/src/hooks/types/voiceAgent.types.d.ts.map +1 -1
- package/dist/typescript/src/hooks/voiceagent.d.ts.map +1 -1
- package/dist/typescript/src/index.d.ts +8 -9
- package/dist/typescript/src/index.d.ts.map +1 -1
- package/dist/typescript/src/utils/constant.d.ts +1 -1
- package/dist/typescript/src/utils/constant.d.ts.map +1 -1
- package/dist/typescript/src/utils/permision.d.ts.map +1 -1
- package/dist/typescript/src/utils/reanimated.helper.d.ts +2 -0
- package/dist/typescript/src/utils/reanimated.helper.d.ts.map +1 -1
- package/package.json +3 -8
- package/react-native.config.js +1 -0
- package/revrag-ai-embed-react-native.podspec +1 -0
- package/src/assets/fonts/PlaywriteNZBasic-ExtraLight.ttf +0 -0
- package/src/assets/fonts/PlaywriteNZBasic-Light.ttf +0 -0
- package/src/assets/fonts/PlaywriteNZBasic-Regular.ttf +0 -0
- package/src/assets/fonts/PlaywriteNZBasic-Thin.ttf +0 -0
|
@@ -5,9 +5,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.trackRageClick = exports.trackFormEvent = exports.trackEmbedEvent = exports.getRouteHierarchy = exports.getNavigationTree = exports.getAllRoutes = exports.getAllDefinedRoutes = exports.default = exports.EmbedProvider = void 0;
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
8
9
|
var _EmbedButton = require("../components/Embed/EmbedButton.js");
|
|
9
10
|
var _embedEvent = _interopRequireWildcard(require("../events/embed.event.js"));
|
|
10
11
|
var _storeKey = require("../store/store.key.js");
|
|
12
|
+
var _clickEventTracker = require("../events/clickEventTracker.js");
|
|
11
13
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
14
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
13
15
|
/**
|
|
@@ -32,6 +34,10 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
|
|
|
32
34
|
* @interface EmbedProviderProps
|
|
33
35
|
*/
|
|
34
36
|
|
|
37
|
+
/**
|
|
38
|
+
* Controls when the delay is applied within a group
|
|
39
|
+
*/
|
|
40
|
+
|
|
35
41
|
/**
|
|
36
42
|
* Represents the complete hierarchical structure of the current navigation state
|
|
37
43
|
* @interface RouteHierarchy
|
|
@@ -59,6 +65,24 @@ const DEFAULT_INCLUDED_SCREENS = [];
|
|
|
59
65
|
*/
|
|
60
66
|
const NAVIGATION_LISTENER_DELAY = 1000;
|
|
61
67
|
|
|
68
|
+
/** Animation duration for EmbedButton show/hide (ms) */
|
|
69
|
+
const EMBED_BUTTON_ANIMATION_DURATION = 250;
|
|
70
|
+
|
|
71
|
+
/** Default inset for EmbedButton when no group or config provides one */
|
|
72
|
+
const DEFAULT_EMBED_BUTTON_INSET = {
|
|
73
|
+
right: 16,
|
|
74
|
+
bottom: 20
|
|
75
|
+
};
|
|
76
|
+
const styles = _reactNative.StyleSheet.create({
|
|
77
|
+
embedButtonWrapper: {
|
|
78
|
+
position: 'absolute',
|
|
79
|
+
top: 0,
|
|
80
|
+
left: 0,
|
|
81
|
+
right: 0,
|
|
82
|
+
bottom: 0
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
|
|
62
86
|
/* ============================================================================
|
|
63
87
|
* UTILITY FUNCTIONS - NAVIGATION HIERARCHY
|
|
64
88
|
* ========================================================================== */
|
|
@@ -478,8 +502,14 @@ const EmbedProvider = ({
|
|
|
478
502
|
children,
|
|
479
503
|
navigationRef,
|
|
480
504
|
includeScreens = DEFAULT_INCLUDED_SCREENS,
|
|
481
|
-
appVersion: _appVersion
|
|
505
|
+
appVersion: _appVersion,
|
|
506
|
+
embedButtonDelayMs = 0,
|
|
507
|
+
embedButtonVisibilityConfig
|
|
482
508
|
}) => {
|
|
509
|
+
// Patch touchables as early as possible (before children render) so all screens
|
|
510
|
+
// use the patched components. Handling is gated by setWidgetVisible in useEffect.
|
|
511
|
+
(0, _clickEventTracker.install)();
|
|
512
|
+
|
|
483
513
|
// ========== Refs ==========
|
|
484
514
|
|
|
485
515
|
/**
|
|
@@ -495,20 +525,40 @@ const EmbedProvider = ({
|
|
|
495
525
|
*/
|
|
496
526
|
const isMountedRef = (0, _react.useRef)(true);
|
|
497
527
|
|
|
528
|
+
/** Pending EmbedButton delay timer; cleared on screen change when needed */
|
|
529
|
+
const embedButtonTimerRef = (0, _react.useRef)(null);
|
|
530
|
+
const embedButtonDelayContextRef = (0, _react.useRef)(null);
|
|
531
|
+
const currentGroupIdRef = (0, _react.useRef)(undefined);
|
|
532
|
+
const sessionShownGroupsRef = (0, _react.useRef)(new Set());
|
|
533
|
+
const showEmbedButtonRef = (0, _react.useRef)(false);
|
|
534
|
+
|
|
498
535
|
// ========== State ==========
|
|
499
536
|
|
|
500
537
|
/** Whether the EmbedButton should be visible on the current screen */
|
|
501
538
|
const [showEmbedButton, setShowEmbedButton] = (0, _react.useState)(false);
|
|
539
|
+
/** Whether the EmbedButton is mounted (for animation in/out) */
|
|
540
|
+
const [isEmbedButtonMounted, setIsEmbedButtonMounted] = (0, _react.useState)(false);
|
|
541
|
+
/** Optional inset for EmbedButton position (from group or default) */
|
|
542
|
+
const [embedButtonInset, setEmbedButtonInset] = (0, _react.useState)();
|
|
543
|
+
|
|
544
|
+
// ========== Animation ==========
|
|
545
|
+
const embedButtonAnim = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
546
|
+
const embedButtonAnimationRef = (0, _react.useRef)(null);
|
|
547
|
+
(0, _react.useEffect)(() => {
|
|
548
|
+
showEmbedButtonRef.current = showEmbedButton;
|
|
549
|
+
}, [showEmbedButton]);
|
|
502
550
|
|
|
503
551
|
// ========== Memoized Values ==========
|
|
504
552
|
|
|
505
553
|
/**
|
|
506
|
-
* Included screens
|
|
507
|
-
*
|
|
554
|
+
* Included screens: union of includeScreens and all screens from groups.
|
|
555
|
+
* When groups are provided, screens in any group are considered included.
|
|
508
556
|
*/
|
|
509
557
|
const allIncludedScreens = (0, _react.useMemo)(() => {
|
|
510
|
-
|
|
511
|
-
|
|
558
|
+
const set = new Set(includeScreens.filter(Boolean));
|
|
559
|
+
embedButtonVisibilityConfig?.groups?.forEach(g => g.screens.forEach(s => set.add(s)));
|
|
560
|
+
return Array.from(set);
|
|
561
|
+
}, [includeScreens, embedButtonVisibilityConfig?.groups]);
|
|
512
562
|
|
|
513
563
|
// ========== Effects ==========
|
|
514
564
|
|
|
@@ -527,17 +577,62 @@ const EmbedProvider = ({
|
|
|
527
577
|
return;
|
|
528
578
|
}
|
|
529
579
|
const routeInfo = getRouteHierarchy(state);
|
|
530
|
-
// Extract current screen name from navigation state
|
|
531
580
|
const screenName = routeInfo?.currentScreen || navRef.current.getCurrentRoute()?.name || '';
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
581
|
+
const clearEmbedButtonTimer = () => {
|
|
582
|
+
if (embedButtonTimerRef.current) {
|
|
583
|
+
clearTimeout(embedButtonTimerRef.current);
|
|
584
|
+
embedButtonTimerRef.current = null;
|
|
585
|
+
}
|
|
586
|
+
embedButtonDelayContextRef.current = null;
|
|
587
|
+
};
|
|
535
588
|
const hasIncludeFilter = allIncludedScreens.length > 0;
|
|
536
589
|
const isIncluded = allIncludedScreens.includes(screenName);
|
|
537
|
-
const
|
|
538
|
-
// Only update state if component is still mounted
|
|
590
|
+
const shouldIncludeButton = screenName !== '' && (!hasIncludeFilter || isIncluded);
|
|
539
591
|
if (isMountedRef.current) {
|
|
540
|
-
|
|
592
|
+
if (!shouldIncludeButton) {
|
|
593
|
+
clearEmbedButtonTimer();
|
|
594
|
+
currentGroupIdRef.current = undefined;
|
|
595
|
+
setEmbedButtonInset(undefined);
|
|
596
|
+
setShowEmbedButton(false);
|
|
597
|
+
} else {
|
|
598
|
+
const groupMatch = embedButtonVisibilityConfig?.groups?.find(g => g.screens.includes(screenName));
|
|
599
|
+
const delayMs = groupMatch?.delayMs ?? embedButtonVisibilityConfig?.defaultDelayMs ?? embedButtonDelayMs;
|
|
600
|
+
const delayPolicy = groupMatch?.delayPolicy ?? 'perScreen';
|
|
601
|
+
const continuity = groupMatch?.continuity ?? 'perScreen';
|
|
602
|
+
const groupId = groupMatch?.id;
|
|
603
|
+
const resolvedInset = groupMatch?.inset ?? embedButtonVisibilityConfig?.defaultInset ?? DEFAULT_EMBED_BUTTON_INSET;
|
|
604
|
+
setEmbedButtonInset(resolvedInset);
|
|
605
|
+
const isSameGroup = groupId !== undefined && groupId === currentGroupIdRef.current;
|
|
606
|
+
if (groupId !== currentGroupIdRef.current) {
|
|
607
|
+
currentGroupIdRef.current = groupId;
|
|
608
|
+
}
|
|
609
|
+
if (continuity === 'continuous' && isSameGroup) {
|
|
610
|
+
const isWaitingForDelay = embedButtonTimerRef.current && embedButtonDelayContextRef.current?.groupId === groupId;
|
|
611
|
+
if (!isWaitingForDelay && !showEmbedButtonRef.current) {
|
|
612
|
+
setShowEmbedButton(true);
|
|
613
|
+
}
|
|
614
|
+
} else {
|
|
615
|
+
const shouldDelay = delayMs > 0 && (delayPolicy === 'perScreen' || delayPolicy === 'oncePerGroupEntry' && !isSameGroup || delayPolicy === 'oncePerAppSession' && (!groupId || !sessionShownGroupsRef.current.has(groupId)));
|
|
616
|
+
if (shouldDelay) {
|
|
617
|
+
clearEmbedButtonTimer();
|
|
618
|
+
setShowEmbedButton(false);
|
|
619
|
+
embedButtonDelayContextRef.current = {
|
|
620
|
+
groupId
|
|
621
|
+
};
|
|
622
|
+
embedButtonTimerRef.current = setTimeout(() => {
|
|
623
|
+
if (isMountedRef.current) {
|
|
624
|
+
setShowEmbedButton(true);
|
|
625
|
+
if (groupId && delayPolicy === 'oncePerAppSession') {
|
|
626
|
+
sessionShownGroupsRef.current.add(groupId);
|
|
627
|
+
}
|
|
628
|
+
}
|
|
629
|
+
}, delayMs);
|
|
630
|
+
} else {
|
|
631
|
+
clearEmbedButtonTimer();
|
|
632
|
+
setShowEmbedButton(true);
|
|
633
|
+
}
|
|
634
|
+
}
|
|
635
|
+
}
|
|
541
636
|
}
|
|
542
637
|
|
|
543
638
|
// Persist screen context locally for later event enrichment
|
|
@@ -559,7 +654,7 @@ const EmbedProvider = ({
|
|
|
559
654
|
} catch (error) {
|
|
560
655
|
// Catch-all error handler to prevent any tracking errors from breaking the app
|
|
561
656
|
}
|
|
562
|
-
}, [navRef, allIncludedScreens, _appVersion]);
|
|
657
|
+
}, [navRef, allIncludedScreens, _appVersion, embedButtonDelayMs, embedButtonVisibilityConfig]);
|
|
563
658
|
|
|
564
659
|
/**
|
|
565
660
|
* Effect: Navigation State Tracking
|
|
@@ -610,9 +705,48 @@ const EmbedProvider = ({
|
|
|
610
705
|
unsubscribe();
|
|
611
706
|
isListenerActive = false;
|
|
612
707
|
}
|
|
708
|
+
if (embedButtonTimerRef.current) {
|
|
709
|
+
clearTimeout(embedButtonTimerRef.current);
|
|
710
|
+
embedButtonTimerRef.current = null;
|
|
711
|
+
}
|
|
712
|
+
embedButtonDelayContextRef.current = null;
|
|
613
713
|
};
|
|
614
714
|
}, [navRef, trackScreen]);
|
|
615
715
|
|
|
716
|
+
/**
|
|
717
|
+
* Effect: EmbedButton appearance animation
|
|
718
|
+
*/
|
|
719
|
+
(0, _react.useEffect)(() => {
|
|
720
|
+
if (embedButtonAnimationRef.current) {
|
|
721
|
+
embedButtonAnimationRef.current.stop();
|
|
722
|
+
embedButtonAnimationRef.current = null;
|
|
723
|
+
}
|
|
724
|
+
if (showEmbedButton) {
|
|
725
|
+
setIsEmbedButtonMounted(true);
|
|
726
|
+
embedButtonAnimationRef.current = _reactNative.Animated.timing(embedButtonAnim, {
|
|
727
|
+
toValue: 1,
|
|
728
|
+
duration: EMBED_BUTTON_ANIMATION_DURATION,
|
|
729
|
+
easing: _reactNative.Easing.out(_reactNative.Easing.ease),
|
|
730
|
+
useNativeDriver: true
|
|
731
|
+
});
|
|
732
|
+
embedButtonAnimationRef.current.start();
|
|
733
|
+
} else {
|
|
734
|
+
embedButtonAnimationRef.current = _reactNative.Animated.timing(embedButtonAnim, {
|
|
735
|
+
toValue: 0,
|
|
736
|
+
duration: EMBED_BUTTON_ANIMATION_DURATION,
|
|
737
|
+
easing: _reactNative.Easing.in(_reactNative.Easing.ease),
|
|
738
|
+
useNativeDriver: true
|
|
739
|
+
});
|
|
740
|
+
embedButtonAnimationRef.current.start(({
|
|
741
|
+
finished
|
|
742
|
+
}) => {
|
|
743
|
+
if (finished) {
|
|
744
|
+
setIsEmbedButtonMounted(false);
|
|
745
|
+
}
|
|
746
|
+
});
|
|
747
|
+
}
|
|
748
|
+
}, [showEmbedButton, embedButtonAnim]);
|
|
749
|
+
|
|
616
750
|
/**
|
|
617
751
|
* Effect: Component Lifecycle Management
|
|
618
752
|
*
|
|
@@ -622,13 +756,52 @@ const EmbedProvider = ({
|
|
|
622
756
|
isMountedRef.current = true;
|
|
623
757
|
return () => {
|
|
624
758
|
isMountedRef.current = false;
|
|
759
|
+
if (embedButtonTimerRef.current) {
|
|
760
|
+
clearTimeout(embedButtonTimerRef.current);
|
|
761
|
+
embedButtonTimerRef.current = null;
|
|
762
|
+
}
|
|
763
|
+
embedButtonDelayContextRef.current = null;
|
|
764
|
+
if (embedButtonAnimationRef.current) {
|
|
765
|
+
embedButtonAnimationRef.current.stop();
|
|
766
|
+
embedButtonAnimationRef.current = null;
|
|
767
|
+
}
|
|
625
768
|
};
|
|
626
769
|
}, []);
|
|
627
770
|
|
|
771
|
+
/**
|
|
772
|
+
* Effect: Click event tracker on widget-visible screens only
|
|
773
|
+
*
|
|
774
|
+
* When user lands on a screen where the widget is visible, install the touchable
|
|
775
|
+
* patch (if not already) and enable handling. When they leave, disable handling
|
|
776
|
+
* so only clicks on widget-visible screens are tracked.
|
|
777
|
+
*/
|
|
778
|
+
(0, _react.useEffect)(() => {
|
|
779
|
+
if (showEmbedButton) {
|
|
780
|
+
(0, _clickEventTracker.install)();
|
|
781
|
+
(0, _clickEventTracker.setWidgetVisible)(true);
|
|
782
|
+
} else {
|
|
783
|
+
(0, _clickEventTracker.setWidgetVisible)(false);
|
|
784
|
+
}
|
|
785
|
+
}, [showEmbedButton]);
|
|
786
|
+
|
|
628
787
|
// ========== Render ==========
|
|
629
788
|
|
|
630
789
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
631
|
-
children: [children,
|
|
790
|
+
children: [children, isEmbedButtonMounted && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
|
|
791
|
+
pointerEvents: showEmbedButton ? 'box-none' : 'none',
|
|
792
|
+
style: [styles.embedButtonWrapper, {
|
|
793
|
+
opacity: embedButtonAnim,
|
|
794
|
+
transform: [{
|
|
795
|
+
scale: embedButtonAnim.interpolate({
|
|
796
|
+
inputRange: [0, 1],
|
|
797
|
+
outputRange: [0.96, 1]
|
|
798
|
+
})
|
|
799
|
+
}]
|
|
800
|
+
}],
|
|
801
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_EmbedButton.EmbedButton, {
|
|
802
|
+
containerInset: embedButtonInset
|
|
803
|
+
})
|
|
804
|
+
})]
|
|
632
805
|
});
|
|
633
806
|
};
|
|
634
807
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_EmbedButton","_embedEvent","_storeKey","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DEFAULT_INCLUDED_SCREENS","NAVIGATION_LISTENER_DELAY","getRouteHierarchy","state","allRoutes","routesByLevel","currentRouteParams","traverse","currentState","level","index","route","routes","name","routeName","push","params","length","currentScreen","parentRoute","undefined","depth","fullPath","join","routeParams","error","exports","getAllRoutes","allRouteNamesSet","Set","collectRoutes","routeNames","Array","isArray","forEach","add","from","getNavigationTree","buildTree","filter","map","node","children","getAllDefinedRoutes","trackEmbedEvent","eventName","properties","Embed","Event","EventKeys","FORM_STATE","type","timestamp","Date","toISOString","trackRageClick","elementId","elementType","coordinates","clickCount","eventData","trackFormEvent","formId","eventType","formData","EmbedProvider","navigationRef","includeScreens","appVersion","_appVersion","defaultNavRef","useRef","navRef","isMountedRef","showEmbedButton","setShowEmbedButton","useState","allIncludedScreens","useMemo","Boolean","trackScreen","useCallback","current","getRootState","routeInfo","screenName","getCurrentRoute","hasIncludeFilter","isIncluded","includes","shouldShowButton","setAgentData","screen","app_version","SCREEN_STATE","useEffect","unsubscribe","delayTimer","isListenerActive","setupListener","addListener","setTimeout","clearTimeout","jsxs","Fragment","jsx","EmbedButton","_default"],"sourceRoot":"../../../src","sources":["context/EmbedProvider.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_EmbedButton","_embedEvent","_storeKey","_clickEventTracker","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DEFAULT_INCLUDED_SCREENS","NAVIGATION_LISTENER_DELAY","EMBED_BUTTON_ANIMATION_DURATION","DEFAULT_EMBED_BUTTON_INSET","right","bottom","styles","StyleSheet","create","embedButtonWrapper","position","top","left","getRouteHierarchy","state","allRoutes","routesByLevel","currentRouteParams","traverse","currentState","level","index","route","routes","name","routeName","push","params","length","currentScreen","parentRoute","undefined","depth","fullPath","join","routeParams","error","exports","getAllRoutes","allRouteNamesSet","Set","collectRoutes","routeNames","Array","isArray","forEach","add","from","getNavigationTree","buildTree","filter","map","node","children","getAllDefinedRoutes","trackEmbedEvent","eventName","properties","Embed","Event","EventKeys","FORM_STATE","type","timestamp","Date","toISOString","trackRageClick","elementId","elementType","coordinates","clickCount","eventData","trackFormEvent","formId","eventType","formData","EmbedProvider","navigationRef","includeScreens","appVersion","_appVersion","embedButtonDelayMs","embedButtonVisibilityConfig","installClickEventTracker","defaultNavRef","useRef","navRef","isMountedRef","embedButtonTimerRef","embedButtonDelayContextRef","currentGroupIdRef","sessionShownGroupsRef","showEmbedButtonRef","showEmbedButton","setShowEmbedButton","useState","isEmbedButtonMounted","setIsEmbedButtonMounted","embedButtonInset","setEmbedButtonInset","embedButtonAnim","Animated","Value","current","embedButtonAnimationRef","useEffect","allIncludedScreens","useMemo","Boolean","groups","g","screens","s","trackScreen","useCallback","getRootState","routeInfo","screenName","getCurrentRoute","clearEmbedButtonTimer","clearTimeout","hasIncludeFilter","isIncluded","includes","shouldIncludeButton","groupMatch","find","delayMs","defaultDelayMs","delayPolicy","continuity","groupId","id","resolvedInset","inset","defaultInset","isSameGroup","isWaitingForDelay","shouldDelay","setTimeout","setAgentData","screen","app_version","SCREEN_STATE","unsubscribe","delayTimer","isListenerActive","setupListener","addListener","stop","timing","toValue","duration","easing","Easing","out","ease","useNativeDriver","start","in","finished","setClickTrackerWidgetVisible","jsxs","Fragment","jsx","View","pointerEvents","style","opacity","transform","scale","interpolate","inputRange","outputRange","EmbedButton","containerInset","_default"],"sourceRoot":"../../../src","sources":["context/EmbedProvider.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.__testHandleTrackedClick = __testHandleTrackedClick;
|
|
7
|
+
exports.clickCounter = void 0;
|
|
8
|
+
exports.getElementRegistry = getElementRegistry;
|
|
9
|
+
exports.install = install;
|
|
10
|
+
exports.isClickTrackerInstalled = isClickTrackerInstalled;
|
|
11
|
+
exports.setWidgetVisible = setWidgetVisible;
|
|
12
|
+
var _react = _interopRequireDefault(require("react"));
|
|
13
|
+
var _reactNative = require("react-native");
|
|
14
|
+
var _embedEvent = _interopRequireDefault(require("./embed.event.js"));
|
|
15
|
+
var _embedTypes = require("./embed.types.js");
|
|
16
|
+
var _clickCounter, _clickCounter2;
|
|
17
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
|
+
/**
|
|
19
|
+
* Click Event Tracker
|
|
20
|
+
* Patches click/press events when the widget is visible. Only handles (logs/sends) events
|
|
21
|
+
* on screens where the Embed widget is visible. Triggered internally from EmbedProvider.
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
/** Minimal in-memory registry for patched elements (mount/unmount). */
|
|
25
|
+
const ElementRegistry = {
|
|
26
|
+
_map: new Map(),
|
|
27
|
+
register(id, data) {
|
|
28
|
+
this._map.set(id, data);
|
|
29
|
+
},
|
|
30
|
+
unregister(id) {
|
|
31
|
+
this._map.delete(id);
|
|
32
|
+
},
|
|
33
|
+
update(id, updates) {
|
|
34
|
+
const entry = this._map.get(id);
|
|
35
|
+
if (entry) Object.assign(entry, updates);
|
|
36
|
+
},
|
|
37
|
+
get(id) {
|
|
38
|
+
return this._map.get(id);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
let clickCounter = exports.clickCounter = 0;
|
|
42
|
+
|
|
43
|
+
/** When false, handleTrackedClick no-ops. Set by EmbedProvider based on widget visibility. */
|
|
44
|
+
const widgetVisibleRef = {
|
|
45
|
+
current: false
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Called by EmbedProvider when the widget is shown or hidden on the current screen.
|
|
50
|
+
* Only click events on screens where the widget is visible are handled (logged/sent).
|
|
51
|
+
*/
|
|
52
|
+
function setWidgetVisible(visible) {
|
|
53
|
+
widgetVisibleRef.current = visible;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Handles a tracked click: only when widget is visible; only when elementId is present.
|
|
58
|
+
* Sends the event to the main flow via ANALYTICS_DATA.
|
|
59
|
+
*/
|
|
60
|
+
function handleTrackedClick(data) {
|
|
61
|
+
if (!widgetVisibleRef.current) return;
|
|
62
|
+
const elementId = data?.elementId != null ? String(data.elementId).trim() : '';
|
|
63
|
+
if (!elementId) return;
|
|
64
|
+
_embedEvent.default.Event(_embedTypes.EventKeys.ANALYTICS_DATA, {
|
|
65
|
+
event_name: `${elementId}_pressed`,
|
|
66
|
+
timestamp: data.timestamp,
|
|
67
|
+
type: data.type,
|
|
68
|
+
component: data.component,
|
|
69
|
+
clickSequence: data.clickSequence
|
|
70
|
+
}).catch(error => {
|
|
71
|
+
console.warn('[ClickEventTracker] Failed to send click event:', error);
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Test-only: invokes handleTrackedClick with given data. Used by tests to assert
|
|
77
|
+
* widget visibility and elementId gating without rendering touchables.
|
|
78
|
+
*/
|
|
79
|
+
function __testHandleTrackedClick(data) {
|
|
80
|
+
handleTrackedClick(data);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Generic touchable component patcher. Wraps the original component with ref forwarding,
|
|
85
|
+
* element registration, and click tracking.
|
|
86
|
+
*/
|
|
87
|
+
const createTouchablePatcher = (componentName, OriginalComponent) => {
|
|
88
|
+
const Patched = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
|
|
89
|
+
const id = props.id || props.name || `${componentName.toLowerCase()}-${_clickCounter = clickCounter++, exports.clickCounter = clickCounter, _clickCounter}`;
|
|
90
|
+
const originalOnPress = props.onPress;
|
|
91
|
+
const originalOnPressIn = props.onPressIn;
|
|
92
|
+
const internalRef = _react.default.useRef(null);
|
|
93
|
+
_react.default.useImperativeHandle(ref, () => internalRef.current);
|
|
94
|
+
|
|
95
|
+
// Register element on mount, unregister on unmount
|
|
96
|
+
_react.default.useEffect(() => {
|
|
97
|
+
ElementRegistry.register(id, {
|
|
98
|
+
id,
|
|
99
|
+
ref: internalRef,
|
|
100
|
+
type: componentName,
|
|
101
|
+
props
|
|
102
|
+
});
|
|
103
|
+
return () => {
|
|
104
|
+
ElementRegistry.unregister(id);
|
|
105
|
+
};
|
|
106
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps -- only register/unregister on mount
|
|
107
|
+
}, [id]);
|
|
108
|
+
_react.default.useEffect(() => {
|
|
109
|
+
ElementRegistry.update(id, {
|
|
110
|
+
props,
|
|
111
|
+
label: props.accessibilityLabel || props.label,
|
|
112
|
+
testID: props.testID,
|
|
113
|
+
name: props.name || props.id
|
|
114
|
+
});
|
|
115
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps -- update only when identity props change
|
|
116
|
+
}, [id, props.accessibilityLabel, props.label, props.testID, props.name, props.id]);
|
|
117
|
+
const enhancedProps = {
|
|
118
|
+
...props,
|
|
119
|
+
onPress: event => {
|
|
120
|
+
const clickSequence = (_clickCounter2 = clickCounter++, exports.clickCounter = clickCounter, _clickCounter2);
|
|
121
|
+
const data = {
|
|
122
|
+
elementId: id,
|
|
123
|
+
timestamp: new Date().toISOString(),
|
|
124
|
+
type: 'press',
|
|
125
|
+
component: componentName,
|
|
126
|
+
clickSequence
|
|
127
|
+
};
|
|
128
|
+
handleTrackedClick(data);
|
|
129
|
+
if (originalOnPress) {
|
|
130
|
+
originalOnPress(event);
|
|
131
|
+
}
|
|
132
|
+
},
|
|
133
|
+
onPressIn: event => {
|
|
134
|
+
if (originalOnPressIn) {
|
|
135
|
+
originalOnPressIn(event);
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
ref: internalRef
|
|
139
|
+
};
|
|
140
|
+
return /*#__PURE__*/_react.default.createElement(OriginalComponent, enhancedProps);
|
|
141
|
+
});
|
|
142
|
+
Patched.displayName = `Patched${componentName}`;
|
|
143
|
+
return Patched;
|
|
144
|
+
};
|
|
145
|
+
let isInstalled = false;
|
|
146
|
+
|
|
147
|
+
/**
|
|
148
|
+
* Installs the click event tracker by patching React Native touchable components.
|
|
149
|
+
* Call once early in the application (e.g. in your root component or index).
|
|
150
|
+
* Safe to call multiple times; skips components already patched.
|
|
151
|
+
*/
|
|
152
|
+
function install() {
|
|
153
|
+
const reactNativeModule = require('react-native');
|
|
154
|
+
const touchableComponents = [{
|
|
155
|
+
name: 'TouchableOpacity',
|
|
156
|
+
component: _reactNative.TouchableOpacity
|
|
157
|
+
}, {
|
|
158
|
+
name: 'TouchableHighlight',
|
|
159
|
+
component: _reactNative.TouchableHighlight
|
|
160
|
+
}, {
|
|
161
|
+
name: 'TouchableWithoutFeedback',
|
|
162
|
+
component: _reactNative.TouchableWithoutFeedback
|
|
163
|
+
}, {
|
|
164
|
+
name: 'Pressable',
|
|
165
|
+
component: _reactNative.Pressable
|
|
166
|
+
}];
|
|
167
|
+
if (_reactNative.Platform.OS === 'android') {
|
|
168
|
+
touchableComponents.push({
|
|
169
|
+
name: 'TouchableNativeFeedback',
|
|
170
|
+
component: _reactNative.TouchableNativeFeedback
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
touchableComponents.forEach(({
|
|
174
|
+
name,
|
|
175
|
+
component
|
|
176
|
+
}) => {
|
|
177
|
+
if (component.__CLICK_TRACKING_PATCHED__) {
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
const EnhancedComponent = createTouchablePatcher(name, component);
|
|
181
|
+
EnhancedComponent.__CLICK_TRACKING_PATCHED__ = true;
|
|
182
|
+
try {
|
|
183
|
+
Object.defineProperty(reactNativeModule, name, {
|
|
184
|
+
value: EnhancedComponent,
|
|
185
|
+
writable: true,
|
|
186
|
+
enumerable: true,
|
|
187
|
+
configurable: true
|
|
188
|
+
});
|
|
189
|
+
} catch (error) {
|
|
190
|
+
console.warn(`[ClickEventTracker] Failed to patch ${name}:`, error);
|
|
191
|
+
}
|
|
192
|
+
component.__CLICK_TRACKING_PATCHED__ = true;
|
|
193
|
+
});
|
|
194
|
+
isInstalled = true;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
/**
|
|
198
|
+
* Returns whether the click event tracker is currently installed.
|
|
199
|
+
*/
|
|
200
|
+
function isClickTrackerInstalled() {
|
|
201
|
+
return isInstalled;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
/**
|
|
205
|
+
* Returns the element registry (for tests or downstream use).
|
|
206
|
+
*/
|
|
207
|
+
function getElementRegistry() {
|
|
208
|
+
return ElementRegistry;
|
|
209
|
+
}
|
|
210
|
+
//# sourceMappingURL=clickEventTracker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_embedEvent","_embedTypes","_clickCounter","_clickCounter2","e","__esModule","default","ElementRegistry","_map","Map","register","id","data","set","unregister","delete","update","updates","entry","get","Object","assign","clickCounter","exports","widgetVisibleRef","current","setWidgetVisible","visible","handleTrackedClick","elementId","String","trim","Embed","Event","EventKeys","ANALYTICS_DATA","event_name","timestamp","type","component","clickSequence","catch","error","console","warn","__testHandleTrackedClick","createTouchablePatcher","componentName","OriginalComponent","Patched","React","forwardRef","props","ref","name","toLowerCase","originalOnPress","onPress","originalOnPressIn","onPressIn","internalRef","useRef","useImperativeHandle","useEffect","label","accessibilityLabel","testID","enhancedProps","event","Date","toISOString","createElement","displayName","isInstalled","install","reactNativeModule","touchableComponents","TouchableOpacity","TouchableHighlight","TouchableWithoutFeedback","Pressable","Platform","OS","push","TouchableNativeFeedback","forEach","__CLICK_TRACKING_PATCHED__","EnhancedComponent","defineProperty","value","writable","enumerable","configurable","isClickTrackerInstalled","getElementRegistry"],"sourceRoot":"../../../src","sources":["events/clickEventTracker.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -121,9 +121,17 @@ class Embed {
|
|
|
121
121
|
|
|
122
122
|
// Ensure a default listener is registered
|
|
123
123
|
this.ensureDefaultListener(key);
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
124
|
+
try {
|
|
125
|
+
// Send event to backend API
|
|
126
|
+
await this.sendEventToAPI(eventKey, data, key);
|
|
127
|
+
} catch (apiError) {
|
|
128
|
+
// Analytics events (e.g. click, popup_visible) fail silently when server is down (502, etc.)
|
|
129
|
+
// so the app keeps working; critical flows (e.g. init) still throw.
|
|
130
|
+
if (key === _embedTypes.EventKeys.ANALYTICS_DATA) {
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
throw apiError;
|
|
134
|
+
}
|
|
127
135
|
|
|
128
136
|
// Trigger local event listeners
|
|
129
137
|
this.triggerEventListeners(key, data);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_api","require","_storeKey","_constant","_agentEventEmitter","_embedTypes","_embedValidators","Embed","events","constructor","event","AgentEventEmitter","ensureDefaultListener","eventKey","_data","enrichEventData","data","userIdentity","getAgentData","app_user_id","Error","sendEventToAPI","key","apiService","APIService","getInstance","screenData","EventKeys","SCREEN_STATE","userData","USER_DATA","currentScreen","screen","appVersion","app_version","paramsData","buildEventPayload","validateAnalyticsEvent","response","updateUserData","success","setAgentData","error","triggerEventListeners","forEach","callback","Event","validateEventKey","on","push","embed","_default","exports","default"],"sourceRoot":"../../../src","sources":["events/embed.event.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["_api","require","_storeKey","_constant","_agentEventEmitter","_embedTypes","_embedValidators","Embed","events","constructor","event","AgentEventEmitter","ensureDefaultListener","eventKey","_data","enrichEventData","data","userIdentity","getAgentData","app_user_id","Error","sendEventToAPI","key","apiService","APIService","getInstance","screenData","EventKeys","SCREEN_STATE","userData","USER_DATA","currentScreen","screen","appVersion","app_version","paramsData","buildEventPayload","validateAnalyticsEvent","response","updateUserData","success","setAgentData","error","triggerEventListeners","forEach","callback","Event","validateEventKey","apiError","ANALYTICS_DATA","on","push","embed","_default","exports","default"],"sourceRoot":"../../../src","sources":["events/embed.event.ts"],"mappings":"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","ignoreList":[]}
|