react-native-netmera 2.0.0 → 2.1.0-alpha01
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/RNNetmera.podspec +1 -1
- package/android/build.gradle +1 -1
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmera.kt +5 -1
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraConfigHandler.kt +33 -0
- package/android/src/main/java/com/netmera/reactnativesdk/RNNetmeraModule.kt +13 -1
- package/ios/RNNetmera.mm +3 -0
- package/ios/RNNetmera.swift +12 -1
- package/ios/RNNetmeraConfigHandler.swift +28 -0
- package/ios/RNNetmeraPushObject.swift +3 -3
- package/ios/RNNetmeraRCTEventEmitter.swift +7 -0
- package/lib/commonjs/Netmera.js +277 -0
- package/lib/commonjs/Netmera.js.map +1 -0
- package/lib/commonjs/autotrack/NetmeraAutoTrackProvider.js +406 -0
- package/lib/commonjs/autotrack/NetmeraAutoTrackProvider.js.map +1 -0
- package/lib/commonjs/events/NetmeraEvent.js +13 -0
- package/lib/commonjs/events/NetmeraEvent.js.map +1 -0
- package/lib/commonjs/events/NetmeraEventBannerOpen.js +19 -0
- package/lib/commonjs/events/NetmeraEventBannerOpen.js.map +1 -0
- package/lib/commonjs/events/NetmeraEventBatteryLevel.js +16 -0
- package/lib/commonjs/events/NetmeraEventBatteryLevel.js.map +1 -0
- package/lib/commonjs/events/NetmeraEventCategoryView.js +19 -0
- package/lib/commonjs/events/NetmeraEventCategoryView.js.map +1 -0
- package/lib/commonjs/events/NetmeraEventInAppPurchase.js +34 -0
- package/lib/commonjs/events/NetmeraEventInAppPurchase.js.map +1 -0
- package/lib/commonjs/events/NetmeraEventLogin.js +16 -0
- package/lib/commonjs/events/NetmeraEventLogin.js.map +1 -0
- package/lib/commonjs/events/NetmeraEventRegister.js +16 -0
- package/lib/commonjs/events/NetmeraEventRegister.js.map +1 -0
- package/lib/commonjs/events/NetmeraEventScreenView.js +28 -0
- package/lib/commonjs/events/NetmeraEventScreenView.js.map +1 -0
- package/lib/commonjs/events/NetmeraEventSearch.js +19 -0
- package/lib/commonjs/events/NetmeraEventSearch.js.map +1 -0
- package/lib/commonjs/events/NetmeraEventShare.js +19 -0
- package/lib/commonjs/events/NetmeraEventShare.js.map +1 -0
- package/lib/commonjs/events/commerce/NetmeraEventCartAddProduct.js +19 -0
- package/lib/commonjs/events/commerce/NetmeraEventCartAddProduct.js.map +1 -0
- package/lib/commonjs/events/commerce/NetmeraEventCartRemoveProduct.js +16 -0
- package/lib/commonjs/events/commerce/NetmeraEventCartRemoveProduct.js.map +1 -0
- package/lib/commonjs/events/commerce/NetmeraEventCartView.js +19 -0
- package/lib/commonjs/events/commerce/NetmeraEventCartView.js.map +1 -0
- package/lib/commonjs/events/commerce/NetmeraEventOrderCancel.js +25 -0
- package/lib/commonjs/events/commerce/NetmeraEventOrderCancel.js.map +1 -0
- package/lib/commonjs/events/commerce/NetmeraEventProductComment.js +13 -0
- package/lib/commonjs/events/commerce/NetmeraEventProductComment.js.map +1 -0
- package/lib/commonjs/events/commerce/NetmeraEventProductRate.js +16 -0
- package/lib/commonjs/events/commerce/NetmeraEventProductRate.js.map +1 -0
- package/lib/commonjs/events/commerce/NetmeraEventProductView.js +13 -0
- package/lib/commonjs/events/commerce/NetmeraEventProductView.js.map +1 -0
- package/lib/commonjs/events/commerce/NetmeraEventPurchase.js +40 -0
- package/lib/commonjs/events/commerce/NetmeraEventPurchase.js.map +1 -0
- package/lib/commonjs/events/commerce/NetmeraEventWishList.js +13 -0
- package/lib/commonjs/events/commerce/NetmeraEventWishList.js.map +1 -0
- package/lib/commonjs/events/commerce/NetmeraLineItem.js +14 -0
- package/lib/commonjs/events/commerce/NetmeraLineItem.js.map +1 -0
- package/lib/commonjs/events/commerce/NetmeraProduct.js +51 -0
- package/lib/commonjs/events/commerce/NetmeraProduct.js.map +1 -0
- package/lib/commonjs/events/media/NetmeraEventContent.js +48 -0
- package/lib/commonjs/events/media/NetmeraEventContent.js.map +1 -0
- package/lib/commonjs/events/media/NetmeraEventContentComment.js +12 -0
- package/lib/commonjs/events/media/NetmeraEventContentComment.js.map +1 -0
- package/lib/commonjs/events/media/NetmeraEventContentRate.js +15 -0
- package/lib/commonjs/events/media/NetmeraEventContentRate.js.map +1 -0
- package/lib/commonjs/events/media/NetmeraEventContentView.js +12 -0
- package/lib/commonjs/events/media/NetmeraEventContentView.js.map +1 -0
- package/lib/commonjs/index.js +352 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/models/NMCategoryPreference.js +13 -0
- package/lib/commonjs/models/NMCategoryPreference.js.map +1 -0
- package/lib/commonjs/models/NMInboxStatus.js +15 -0
- package/lib/commonjs/models/NMInboxStatus.js.map +1 -0
- package/lib/commonjs/models/NMInboxStatusCountFilter.js +17 -0
- package/lib/commonjs/models/NMInboxStatusCountFilter.js.map +1 -0
- package/lib/commonjs/models/NetmeraCarouselObject.js +24 -0
- package/lib/commonjs/models/NetmeraCarouselObject.js.map +1 -0
- package/lib/commonjs/models/NetmeraCategory.js +13 -0
- package/lib/commonjs/models/NetmeraCategory.js.map +1 -0
- package/lib/commonjs/models/NetmeraCategoryFilter.js +13 -0
- package/lib/commonjs/models/NetmeraCategoryFilter.js.map +1 -0
- package/lib/commonjs/models/NetmeraCouponObject.js +13 -0
- package/lib/commonjs/models/NetmeraCouponObject.js.map +1 -0
- package/lib/commonjs/models/NetmeraInboxFilter.js +13 -0
- package/lib/commonjs/models/NetmeraInboxFilter.js.map +1 -0
- package/lib/commonjs/models/NetmeraInteractiveAction.js +24 -0
- package/lib/commonjs/models/NetmeraInteractiveAction.js.map +1 -0
- package/lib/commonjs/models/NetmeraProfileAttribute.js +80 -0
- package/lib/commonjs/models/NetmeraProfileAttribute.js.map +1 -0
- package/lib/commonjs/models/NetmeraPushAction.js +31 -0
- package/lib/commonjs/models/NetmeraPushAction.js.map +1 -0
- package/lib/commonjs/models/NetmeraPushObject.js +63 -0
- package/lib/commonjs/models/NetmeraPushObject.js.map +1 -0
- package/lib/commonjs/models/NetmeraUser.js +93 -0
- package/lib/commonjs/models/NetmeraUser.js.map +1 -0
- package/lib/commonjs/models/NetmeraUserProfile.js +63 -0
- package/lib/commonjs/models/NetmeraUserProfile.js.map +1 -0
- package/lib/commonjs/models/NotificationPermissionStatus.js +14 -0
- package/lib/commonjs/models/NotificationPermissionStatus.js.map +1 -0
- package/lib/commonjs/navigation/NetmeraNavigationState.js +31 -0
- package/lib/commonjs/navigation/NetmeraNavigationState.js.map +1 -0
- package/lib/commonjs/navigation/NetmeraNavigationTracker.js +70 -0
- package/lib/commonjs/navigation/NetmeraNavigationTracker.js.map +1 -0
- package/lib/commonjs/navigation/useNetmeraNavigation.js +83 -0
- package/lib/commonjs/navigation/useNetmeraNavigation.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/utils/DeviceUtils.js +16 -0
- package/lib/commonjs/utils/DeviceUtils.js.map +1 -0
- package/lib/commonjs/utils/Optional.js +37 -0
- package/lib/commonjs/utils/Optional.js.map +1 -0
- package/lib/commonjs/utils/RNNetmera.js +19 -0
- package/lib/commonjs/utils/RNNetmera.js.map +1 -0
- package/lib/module/NetmeraAnalyticProvider.js +68 -0
- package/lib/module/NetmeraAnalyticProvider.js.map +1 -0
- package/lib/module/autotracking/NetmeraNavigationState.js +14 -0
- package/lib/module/autotracking/NetmeraNavigationState.js.map +1 -0
- package/lib/module/autotracking/useNavigationTracking.js +103 -0
- package/lib/module/autotracking/useNavigationTracking.js.map +1 -0
- package/lib/module/autotracking/useTapTracking.js +246 -0
- package/lib/module/autotracking/useTapTracking.js.map +1 -0
- package/lib/module/index.js +4 -1
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/src/NetmeraAnalyticProvider.d.ts +26 -0
- package/lib/typescript/src/NetmeraAnalyticProvider.d.ts.map +1 -0
- package/lib/typescript/src/autotracking/NetmeraNavigationState.d.ts +3 -0
- package/lib/typescript/src/autotracking/NetmeraNavigationState.d.ts.map +1 -0
- package/lib/typescript/src/autotracking/useNavigationTracking.d.ts +13 -0
- package/lib/typescript/src/autotracking/useNavigationTracking.d.ts.map +1 -0
- package/lib/typescript/src/autotracking/useTapTracking.d.ts +6 -0
- package/lib/typescript/src/autotracking/useTapTracking.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +3 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/NetmeraAnalyticProvider.tsx +124 -0
- package/src/autotracking/NetmeraNavigationState.ts +13 -0
- package/src/autotracking/useNavigationTracking.ts +129 -0
- package/src/autotracking/useTapTracking.ts +301 -0
- package/src/index.ts +6 -0
|
@@ -0,0 +1,406 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.NetmeraAutoTrackProvider = NetmeraAutoTrackProvider;
|
|
7
|
+
exports.nmTrack = nmTrack;
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _reactNative = require("react-native");
|
|
10
|
+
var _NetmeraNavigationState = _interopRequireDefault(require("../navigation/NetmeraNavigationState"));
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
+
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); }
|
|
14
|
+
/*
|
|
15
|
+
* Copyright (c) 2026 Netmera Research.
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
// Private React fiber tree API — same approach as PostHog's autocapture.
|
|
19
|
+
// _targetInst is the fiber node at the touch target; node.return walks up to parent fibers.
|
|
20
|
+
const MAX_FIBER_DEPTH = 20;
|
|
21
|
+
const MAX_TEXT_DEPTH = 5;
|
|
22
|
+
const TAP_THRESHOLD = 10; // px — displacement above this is a scroll, not a tap
|
|
23
|
+
|
|
24
|
+
// Controlled by the native SDK at runtime. When true the log path includes the
|
|
25
|
+
// item index (and switch value); when false only screen + list type + identifier.
|
|
26
|
+
const COLLECT_VALUES = true;
|
|
27
|
+
|
|
28
|
+
// Recursively extract the first non-empty string from a React children tree.
|
|
29
|
+
function textFromChildren(children, depth = 0) {
|
|
30
|
+
if (depth > MAX_TEXT_DEPTH) return undefined;
|
|
31
|
+
if (typeof children === 'string') {
|
|
32
|
+
const t = children.trim();
|
|
33
|
+
return t.length > 0 ? t : undefined;
|
|
34
|
+
}
|
|
35
|
+
if (typeof children === 'number') return String(children);
|
|
36
|
+
if (Array.isArray(children)) {
|
|
37
|
+
for (const child of children) {
|
|
38
|
+
const t = textFromChildren(child, depth + 1);
|
|
39
|
+
if (t) return t;
|
|
40
|
+
}
|
|
41
|
+
return undefined;
|
|
42
|
+
}
|
|
43
|
+
if (children != null && typeof children === 'object' && 'props' in children) {
|
|
44
|
+
return textFromChildren(children.props?.children, depth + 1);
|
|
45
|
+
}
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
// A fiber is "interactive" if its props contain an explicit press/click handler.
|
|
50
|
+
// We intentionally skip onStartShouldSetResponder to avoid matching ScrollViews.
|
|
51
|
+
// onValueChange covers RN Switch.
|
|
52
|
+
function isInteractive(props) {
|
|
53
|
+
return !!(props?.onPress || props?.onClick || props?.onValueChange);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// Switch: onValueChange + boolean `value` prop (never has selectedValue).
|
|
57
|
+
function isSwitch(props) {
|
|
58
|
+
return !!props?.onValueChange && typeof props?.value === 'boolean' && !(props?.onPress || props?.onClick);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
// Walk UP from the interactive node to check if any ancestor component has an `onSelect`
|
|
62
|
+
// prop — the signature of selection controls like SelectDropdown, Picker wrappers, etc.
|
|
63
|
+
// When true the tap just opens the picker UI; the real event fires via onSelect.
|
|
64
|
+
function isInsideSelectionControl(interactiveNode) {
|
|
65
|
+
let node = interactiveNode?.return;
|
|
66
|
+
for (let depth = 0; depth < 5 && node; depth++, node = node.return) {
|
|
67
|
+
if (node?.memoizedProps?.onSelect != null) return true;
|
|
68
|
+
}
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
// Walk UP from the interactive fiber to find a VirtualizedList CellRenderer ancestor.
|
|
72
|
+
// CellRenderer identification: index (number) + cellKey (string) + onUnmount (function).
|
|
73
|
+
// Headers/footers also have these props, so we filter them out via cellKey suffix checks.
|
|
74
|
+
// For SectionList: walk further up to find `sections` Array and reverse-compute
|
|
75
|
+
// sectionIndex + itemIndex from the flattened VirtualizedList index.
|
|
76
|
+
function resolveListIndex(startFiber) {
|
|
77
|
+
let fiber = startFiber;
|
|
78
|
+
for (let d = 0; d < MAX_FIBER_DEPTH && fiber; d++, fiber = fiber.return) {
|
|
79
|
+
const p = fiber.memoizedProps;
|
|
80
|
+
if (typeof p?.index !== 'number' || typeof p?.cellKey !== 'string' || typeof p?.onUnmount !== 'function') {
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
const cellKey = p.cellKey;
|
|
84
|
+
// Prefer stateNode.props.index over memoizedProps.index.
|
|
85
|
+
// Both current and alternate fibers share the same class instance (stateNode).
|
|
86
|
+
// React updates instance.props = nextProps during reconciliation, so stateNode.props
|
|
87
|
+
// is always current — immune to the current/alternate fiber swap that makes
|
|
88
|
+
// memoizedProps stale on iOS when _targetInst resolves to the alternate fiber.
|
|
89
|
+
const flatIndex = typeof fiber.stateNode?.props?.index === 'number' ? fiber.stateNode.props.index : p.index;
|
|
90
|
+
|
|
91
|
+
// Look for a SectionList ancestor. VirtualizedList uses `data`, not `sections`,
|
|
92
|
+
// so `sections` Array prop reliably identifies a SectionList in the ancestor chain.
|
|
93
|
+
// Prefer stateNode.props.sections for the same reason as flatIndex above.
|
|
94
|
+
let sections;
|
|
95
|
+
let up = fiber.return;
|
|
96
|
+
for (let i = 0; i < 15 && up; i++, up = up.return) {
|
|
97
|
+
const upProps = up.stateNode?.props ?? up.memoizedProps;
|
|
98
|
+
if (Array.isArray(upProps?.sections)) {
|
|
99
|
+
sections = upProps.sections;
|
|
100
|
+
break;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
if (sections) {
|
|
104
|
+
// Section headers and footers use cellKey "sectionKey:header" / "sectionKey:footer".
|
|
105
|
+
if (cellKey.endsWith(':header') || cellKey.endsWith(':footer')) return undefined;
|
|
106
|
+
|
|
107
|
+
// Reverse-compute (sectionIndex, itemIndex) from the flattened VirtualizedList index.
|
|
108
|
+
// Mirrors VirtualizedSectionList._getItem offset arithmetic:
|
|
109
|
+
// flatIndex 0 → section 0 header
|
|
110
|
+
// flatIndex 1..n → section 0 items (0-based itemIndex = flatIndex - 1)
|
|
111
|
+
// flatIndex n+1 → section 0 footer
|
|
112
|
+
// flatIndex n+2 → section 1 header
|
|
113
|
+
// ...
|
|
114
|
+
let itemIdx = flatIndex - 1;
|
|
115
|
+
for (let si = 0; si < sections.length; si++) {
|
|
116
|
+
const count = sections[si].data?.length ?? 0;
|
|
117
|
+
if (itemIdx === -1 || itemIdx === count) return undefined; // header or footer
|
|
118
|
+
if (itemIdx < count) return {
|
|
119
|
+
type: 'sectionlist',
|
|
120
|
+
sectionIndex: si,
|
|
121
|
+
itemIndex: itemIdx
|
|
122
|
+
};
|
|
123
|
+
itemIdx -= count + 2; // skip this section's header + items + footer
|
|
124
|
+
}
|
|
125
|
+
return undefined;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
// No SectionList ancestor → FlatList.
|
|
129
|
+
return {
|
|
130
|
+
type: 'flatlist',
|
|
131
|
+
index: flatIndex
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
return undefined;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
// ── Navigation auto-tracking ──────────────────────────────────────────────────
|
|
138
|
+
|
|
139
|
+
// Detect React Navigation's container ref by its public method signature.
|
|
140
|
+
// Matches NavigationContainerRefContext.Provider value set by BaseNavigationContainer.
|
|
141
|
+
function isNavContainerRef(value) {
|
|
142
|
+
return value != null && typeof value.addListener === 'function' && typeof value.getCurrentRoute === 'function' && typeof value.isReady === 'function';
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
// DFS through the child fiber tree to find NavigationContainerRefContext.Provider.
|
|
146
|
+
// ContextProvider fibers have tag = 10 (stable React internal constant since React 16).
|
|
147
|
+
// Depth limit prevents traversal into navigation screens; context providers sit close
|
|
148
|
+
// to the top of the NavigationContainer subtree (depth ~4-6 from our View).
|
|
149
|
+
// Siblings are walked at the same depth — correct since they are at the same tree level.
|
|
150
|
+
const NAV_SEARCH_DEPTH = 25;
|
|
151
|
+
function findNavContainerRef(fiber, depth = 0) {
|
|
152
|
+
if (!fiber || depth > NAV_SEARCH_DEPTH) return null;
|
|
153
|
+
if (fiber.tag === 10 && isNavContainerRef(fiber.memoizedProps?.value)) {
|
|
154
|
+
return fiber.memoizedProps.value;
|
|
155
|
+
}
|
|
156
|
+
return findNavContainerRef(fiber.child, depth + 1) ?? findNavContainerRef(fiber.sibling, depth);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
// ── Identifier ────────────────────────────────────────────────────────────────
|
|
160
|
+
|
|
161
|
+
// Identifier priority: accessibilityLabel → testID → placeholder (TextInput) → first child text.
|
|
162
|
+
function resolveIdentifier(props) {
|
|
163
|
+
if (!props) return undefined;
|
|
164
|
+
if (typeof props.accessibilityLabel === 'string' && props.accessibilityLabel.trim()) {
|
|
165
|
+
return props.accessibilityLabel.trim();
|
|
166
|
+
}
|
|
167
|
+
if (typeof props.testID === 'string' && props.testID.trim()) {
|
|
168
|
+
return props.testID.trim();
|
|
169
|
+
}
|
|
170
|
+
if (typeof props.placeholder === 'string' && props.placeholder.trim()) {
|
|
171
|
+
return props.placeholder.trim();
|
|
172
|
+
}
|
|
173
|
+
return textFromChildren(props.children);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
/**
|
|
177
|
+
* Wraps a selection callback (onSelect, onValueChange, etc.) so that picking
|
|
178
|
+
* an item is logged automatically.
|
|
179
|
+
*
|
|
180
|
+
* Usage with SelectDropdown:
|
|
181
|
+
* onSelect={nmTrack('category-selector', originalOnSelect)}
|
|
182
|
+
*
|
|
183
|
+
* The first argument of the original callback becomes the logged value.
|
|
184
|
+
*/
|
|
185
|
+
function nmTrack(identifier, callback) {
|
|
186
|
+
return (...args) => {
|
|
187
|
+
const screen = _NetmeraNavigationState.default.getInstance().getCurrentScreenName();
|
|
188
|
+
const value = args.length > 0 ? String(args[0]) : undefined;
|
|
189
|
+
const entry = value !== undefined ? `${screen}|${identifier}|${value}` : `${screen}|${identifier}`;
|
|
190
|
+
console.log(`[NMAutotrack] tap → "${entry}"`);
|
|
191
|
+
callback?.(...args);
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Wrap your app (or NavigationContainer) with this provider to enable
|
|
196
|
+
* JS-layer view action tracking. No additional per-component changes needed.
|
|
197
|
+
*
|
|
198
|
+
* Usage:
|
|
199
|
+
* <NetmeraAutoTrackProvider>
|
|
200
|
+
* <NavigationContainer>…</NavigationContainer>
|
|
201
|
+
* </NetmeraAutoTrackProvider>
|
|
202
|
+
*/
|
|
203
|
+
function NetmeraAutoTrackProvider({
|
|
204
|
+
children,
|
|
205
|
+
style,
|
|
206
|
+
navigationRef
|
|
207
|
+
}) {
|
|
208
|
+
// ── Navigation subscription ─────────────────────────────────────────────────
|
|
209
|
+
//
|
|
210
|
+
// Path 1 — New Architecture (Fabric, RN 0.71+):
|
|
211
|
+
// viewRef.current.__internalInstanceHandle is a ReactNativeElement property
|
|
212
|
+
// that exposes the host fiber directly. We DFS from it to find
|
|
213
|
+
// NavigationContainerRefContext.Provider in the child tree.
|
|
214
|
+
//
|
|
215
|
+
// Path 2 — Old Architecture (Paper) / explicit override:
|
|
216
|
+
// Fiber introspection is not available (Paper host refs do not carry
|
|
217
|
+
// __internalInstanceHandle, and React 19 removed ReactCurrentOwner).
|
|
218
|
+
// The caller passes their NavigationContainer ref via the navigationRef prop
|
|
219
|
+
// and we subscribe to it directly — same API surface as Path 1.
|
|
220
|
+
//
|
|
221
|
+
// If both paths produce null, navigation tracking is silently disabled;
|
|
222
|
+
// the provider still delivers full tap tracking.
|
|
223
|
+
|
|
224
|
+
const viewRef = (0, _react.useRef)(null);
|
|
225
|
+
|
|
226
|
+
// React 18 fallback: capture own fiber during first render via ReactCurrentOwner.
|
|
227
|
+
// React 19 renamed __SECRET_INTERNALS and removed ReactCurrentOwner, so this
|
|
228
|
+
// will silently produce null on React 19 — Path 1 covers that case.
|
|
229
|
+
const selfFiberRef = (0, _react.useRef)(null);
|
|
230
|
+
if (selfFiberRef.current === null) {
|
|
231
|
+
try {
|
|
232
|
+
const R = _react.default;
|
|
233
|
+
selfFiberRef.current = R.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED?.ReactCurrentOwner?.current ?? null;
|
|
234
|
+
} catch (_) {}
|
|
235
|
+
}
|
|
236
|
+
(0, _react.useEffect)(() => {
|
|
237
|
+
// ── Path 1: fiber auto-detection (New Arch) ─────────────────────────────
|
|
238
|
+
let navRef = null;
|
|
239
|
+
const candidate = viewRef.current?.__internalInstanceHandle;
|
|
240
|
+
const viewFiber = candidate != null && 'child' in candidate ? candidate : selfFiberRef.current?.child ?? null;
|
|
241
|
+
if (viewFiber) {
|
|
242
|
+
navRef = findNavContainerRef(viewFiber);
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
// ── Path 2: explicit navigationRef prop (Old Arch / override) ───────────
|
|
246
|
+
if (!navRef && isNavContainerRef(navigationRef?.current)) {
|
|
247
|
+
navRef = navigationRef.current;
|
|
248
|
+
}
|
|
249
|
+
if (!navRef) return; // both paths failed — nav tracking silently disabled
|
|
250
|
+
|
|
251
|
+
// ── Shared subscription logic (identical for both paths) ─────────────────
|
|
252
|
+
// React Navigation v5/v6/v7 all expose the same surface:
|
|
253
|
+
// addListener('state'|'ready', cb) → unsub fn
|
|
254
|
+
// isReady() → boolean
|
|
255
|
+
// getCurrentRoute() → Route | undefined
|
|
256
|
+
|
|
257
|
+
const handleNavigationChange = () => {
|
|
258
|
+
try {
|
|
259
|
+
const route = navRef.getCurrentRoute();
|
|
260
|
+
if (route?.name) {
|
|
261
|
+
_NetmeraNavigationState.default.getInstance().setCurrentScreen(route.name);
|
|
262
|
+
console.log(`[Provider] screen → "${route.name}"`);
|
|
263
|
+
}
|
|
264
|
+
} catch (_) {}
|
|
265
|
+
};
|
|
266
|
+
const unsubState = navRef.addListener('state', handleNavigationChange);
|
|
267
|
+
|
|
268
|
+
// NavigationContainer's effects run before ours (child effects first).
|
|
269
|
+
// The 'ready' event was already emitted by the time we subscribe.
|
|
270
|
+
// Check isReady() now to capture the initial screen; subscribe to 'ready'
|
|
271
|
+
// as a safety net for async startup (deep links, deferred auth, etc.).
|
|
272
|
+
let unsubReady;
|
|
273
|
+
if (navRef.isReady()) {
|
|
274
|
+
handleNavigationChange();
|
|
275
|
+
} else {
|
|
276
|
+
unsubReady = navRef.addListener('ready', () => {
|
|
277
|
+
handleNavigationChange();
|
|
278
|
+
unsubReady?.();
|
|
279
|
+
unsubReady = undefined;
|
|
280
|
+
});
|
|
281
|
+
}
|
|
282
|
+
return () => {
|
|
283
|
+
unsubState?.();
|
|
284
|
+
unsubReady?.(); // clean up if component unmounts before 'ready' fires
|
|
285
|
+
};
|
|
286
|
+
}, []); // intentionally empty — subscribe once after mount
|
|
287
|
+
|
|
288
|
+
// ── Touch tracking ──────────────────────────────────────────────────────────
|
|
289
|
+
const touchStartRef = (0, _react.useRef)(null);
|
|
290
|
+
// Tracks the last LOGGED value per Switch identifier. A Switch is a toggle —
|
|
291
|
+
// each tap inverts the previous state — so we can compute the new value as
|
|
292
|
+
// !lastLogged without reading the fiber at all. This sidesteps React's
|
|
293
|
+
// current/alternate fiber swap, which makes memoizedProps.value unreliable
|
|
294
|
+
// across multiple taps regardless of when (onTouchStart vs onTouchEnd) we read it.
|
|
295
|
+
const switchLastLoggedRef = (0, _react.useRef)(new Map());
|
|
296
|
+
const lastScreenRef = (0, _react.useRef)(undefined);
|
|
297
|
+
const onTouchStart = (0, _react.useCallback)(e => {
|
|
298
|
+
let switchValue;
|
|
299
|
+
try {
|
|
300
|
+
let fiber = e._targetInst;
|
|
301
|
+
for (let d = 0; d < MAX_FIBER_DEPTH && fiber; d++, fiber = fiber.return) {
|
|
302
|
+
if (isSwitch(fiber.memoizedProps)) {
|
|
303
|
+
// Capture committed value before any events fire — reliable first-tap fallback.
|
|
304
|
+
switchValue = fiber.memoizedProps.value;
|
|
305
|
+
break;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
} catch (_) {}
|
|
309
|
+
touchStartRef.current = {
|
|
310
|
+
x: e.nativeEvent.pageX,
|
|
311
|
+
y: e.nativeEvent.pageY,
|
|
312
|
+
switchValue
|
|
313
|
+
};
|
|
314
|
+
}, []);
|
|
315
|
+
const onTouchEnd = (0, _react.useCallback)(e => {
|
|
316
|
+
// Reject scroll/drag — only process genuine taps.
|
|
317
|
+
const start = touchStartRef.current;
|
|
318
|
+
if (start) {
|
|
319
|
+
const dx = Math.abs(e.nativeEvent.pageX - start.x);
|
|
320
|
+
const dy = Math.abs(e.nativeEvent.pageY - start.y);
|
|
321
|
+
if (dx > TAP_THRESHOLD || dy > TAP_THRESHOLD) return;
|
|
322
|
+
}
|
|
323
|
+
try {
|
|
324
|
+
let node = e._targetInst;
|
|
325
|
+
if (!node) return;
|
|
326
|
+
|
|
327
|
+
// Pass 1 — walk UP the fiber tree to find the first interactive ancestor.
|
|
328
|
+
// Tapping a <Text> inside a <Pressable> will yield the Pressable here.
|
|
329
|
+
let interactiveNode = null;
|
|
330
|
+
let depth = 0;
|
|
331
|
+
while (node && depth < MAX_FIBER_DEPTH) {
|
|
332
|
+
if (isInteractive(node.memoizedProps)) {
|
|
333
|
+
interactiveNode = node;
|
|
334
|
+
break;
|
|
335
|
+
}
|
|
336
|
+
node = node.return;
|
|
337
|
+
depth++;
|
|
338
|
+
}
|
|
339
|
+
if (!interactiveNode) return; // no interactive ancestor — don't log
|
|
340
|
+
|
|
341
|
+
// Pass 2 — resolve identifier from the interactive fiber and up to 2 ancestors.
|
|
342
|
+
// Extra look-ahead handles TouchableOpacity: onPress lives on the TO component
|
|
343
|
+
// fiber but the inner Animated.View fiber (where we stop in Pass 1) may also
|
|
344
|
+
// carry accessibilityLabel propagated from the parent — either way we find it.
|
|
345
|
+
let identifierNode = interactiveNode;
|
|
346
|
+
let identifier;
|
|
347
|
+
for (let i = 0; i < 3 && identifierNode; i++) {
|
|
348
|
+
identifier = resolveIdentifier(identifierNode.memoizedProps);
|
|
349
|
+
if (identifier) break;
|
|
350
|
+
identifierNode = identifierNode.return;
|
|
351
|
+
}
|
|
352
|
+
if (identifier) {
|
|
353
|
+
// Skip taps that merely open a selection UI (SelectDropdown, custom pickers, etc.).
|
|
354
|
+
// The real event fires via onSelect — use nmTrack() on that callback instead.
|
|
355
|
+
if (!isSwitch(interactiveNode.memoizedProps) && isInsideSelectionControl(interactiveNode)) return;
|
|
356
|
+
const screen = _NetmeraNavigationState.default.getInstance().getCurrentScreenName();
|
|
357
|
+
if (screen !== lastScreenRef.current) {
|
|
358
|
+
switchLastLoggedRef.current.clear();
|
|
359
|
+
lastScreenRef.current = screen;
|
|
360
|
+
}
|
|
361
|
+
const listIndex = resolveListIndex(interactiveNode);
|
|
362
|
+
// List type segment — present only when tap is inside a FlatList or SectionList.
|
|
363
|
+
const listType = listIndex ? listIndex.type === 'sectionlist' ? 'SectionList' : 'FlatList' : null;
|
|
364
|
+
// Index suffix — appended only when COLLECT_VALUES is enabled.
|
|
365
|
+
const indexSuffix = listIndex && COLLECT_VALUES ? listIndex.type === 'sectionlist' ? `|section:${listIndex.sectionIndex},index:${listIndex.itemIndex}` : `|index:${listIndex.index}` : '';
|
|
366
|
+
if (isSwitch(interactiveNode.memoizedProps)) {
|
|
367
|
+
// Switch is a toggle: new value = !previous value.
|
|
368
|
+
// We never read memoizedProps.value here because React's current/alternate
|
|
369
|
+
// fiber swap makes it unreliable across taps — the fiber _targetInst refers
|
|
370
|
+
// to can be the stale alternate after any commit.
|
|
371
|
+
// Strategy:
|
|
372
|
+
// - After the first tap we keep the last-logged value in a Map and invert it.
|
|
373
|
+
// - For the very first tap there is no Map entry yet; fall back to the
|
|
374
|
+
// value captured at onTouchStart (before any events fire, so always the
|
|
375
|
+
// true committed state) or to !memoizedProps.value as a last resort.
|
|
376
|
+
const lastLogged = switchLastLoggedRef.current.get(identifier);
|
|
377
|
+
let newValue;
|
|
378
|
+
if (lastLogged !== undefined) {
|
|
379
|
+
newValue = !lastLogged;
|
|
380
|
+
} else {
|
|
381
|
+
const preTapValue = touchStartRef.current?.switchValue;
|
|
382
|
+
newValue = preTapValue !== undefined ? !preTapValue : !interactiveNode.memoizedProps.value;
|
|
383
|
+
}
|
|
384
|
+
switchLastLoggedRef.current.set(identifier, newValue);
|
|
385
|
+
const path = listType ? `${screen}|${listType}|${identifier}|${newValue}${indexSuffix}` : `${screen}|${identifier}|${newValue}`;
|
|
386
|
+
console.log(`[NMAutotrack] tap → "${path}"`);
|
|
387
|
+
} else {
|
|
388
|
+
const path = listType ? `${screen}|${listType}|${identifier}${indexSuffix}` : `${screen}|${identifier}`;
|
|
389
|
+
console.log(`[NMAutotrack] tap → "${path}"`);
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
} catch (_) {
|
|
393
|
+
// Fiber tree is a private React API — fail silently.
|
|
394
|
+
}
|
|
395
|
+
}, []);
|
|
396
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
397
|
+
ref: viewRef,
|
|
398
|
+
style: style ?? {
|
|
399
|
+
flex: 1
|
|
400
|
+
},
|
|
401
|
+
onTouchStart: onTouchStart,
|
|
402
|
+
onTouchEnd: onTouchEnd,
|
|
403
|
+
children: children
|
|
404
|
+
});
|
|
405
|
+
}
|
|
406
|
+
//# sourceMappingURL=NetmeraAutoTrackProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_NetmeraNavigationState","_interopRequireDefault","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","MAX_FIBER_DEPTH","MAX_TEXT_DEPTH","TAP_THRESHOLD","COLLECT_VALUES","textFromChildren","children","depth","undefined","trim","length","String","Array","isArray","child","props","isInteractive","onPress","onClick","onValueChange","isSwitch","value","isInsideSelectionControl","interactiveNode","node","return","memoizedProps","onSelect","resolveListIndex","startFiber","fiber","d","p","index","cellKey","onUnmount","flatIndex","stateNode","sections","up","upProps","endsWith","itemIdx","si","count","data","type","sectionIndex","itemIndex","isNavContainerRef","addListener","getCurrentRoute","isReady","NAV_SEARCH_DEPTH","findNavContainerRef","tag","sibling","resolveIdentifier","accessibilityLabel","testID","placeholder","nmTrack","identifier","callback","args","screen","NetmeraNavigationState","getInstance","getCurrentScreenName","entry","console","log","NetmeraAutoTrackProvider","style","navigationRef","viewRef","useRef","selfFiberRef","current","R","React","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentOwner","_","useEffect","navRef","candidate","__internalInstanceHandle","viewFiber","handleNavigationChange","route","name","setCurrentScreen","unsubState","unsubReady","touchStartRef","switchLastLoggedRef","Map","lastScreenRef","onTouchStart","useCallback","switchValue","_targetInst","x","nativeEvent","pageX","y","pageY","onTouchEnd","start","dx","Math","abs","dy","identifierNode","clear","listIndex","listType","indexSuffix","lastLogged","newValue","preTapValue","path","jsx","View","ref","flex"],"sourceRoot":"../../../src","sources":["autotrack/NetmeraAutoTrackProvider.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
/*
|
|
8
|
+
* Copyright (c) 2026 Netmera Research.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
class NetmeraEvent {}
|
|
12
|
+
exports.default = NetmeraEvent;
|
|
13
|
+
//# sourceMappingURL=NetmeraEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["NetmeraEvent","exports","default"],"sourceRoot":"../../../src","sources":["events/NetmeraEvent.ts"],"mappings":";;;;;;AAAA;AACA;AACA;;AAEe,MAAeA,YAAY,CAAC;AAG1CC,OAAA,CAAAC,OAAA,GAAAF,YAAA","ignoreList":[]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.NetmeraEventBannerOpen = void 0;
|
|
7
|
+
var _NetmeraEvent = _interopRequireDefault(require("./NetmeraEvent"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
class NetmeraEventBannerOpen extends _NetmeraEvent.default {
|
|
10
|
+
code = 'n:bc';
|
|
11
|
+
setId(id) {
|
|
12
|
+
this.ea = id;
|
|
13
|
+
}
|
|
14
|
+
setKeywords(keywords) {
|
|
15
|
+
this.eg = keywords;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.NetmeraEventBannerOpen = NetmeraEventBannerOpen;
|
|
19
|
+
//# sourceMappingURL=NetmeraEventBannerOpen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_NetmeraEvent","_interopRequireDefault","require","e","__esModule","default","NetmeraEventBannerOpen","NetmeraEvent","code","setId","id","ea","setKeywords","keywords","eg","exports"],"sourceRoot":"../../../src","sources":["events/NetmeraEventBannerOpen.ts"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0C,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnC,MAAMG,sBAAsB,SAASC,qBAAY,CAAC;EACvDC,IAAI,GAAG,MAAM;EAKbC,KAAKA,CAACC,EAAU,EAAQ;IACtB,IAAI,CAACC,EAAE,GAAGD,EAAE;EACd;EAEAE,WAAWA,CAACC,QAAkB,EAAQ;IACpC,IAAI,CAACC,EAAE,GAAGD,QAAQ;EACpB;AACF;AAACE,OAAA,CAAAT,sBAAA,GAAAA,sBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.NetmeraEventBatteryLevel = void 0;
|
|
7
|
+
var _NetmeraEvent = _interopRequireDefault(require("./NetmeraEvent"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
class NetmeraEventBatteryLevel extends _NetmeraEvent.default {
|
|
10
|
+
code = 'n:bl';
|
|
11
|
+
setBatteryLevel(batteryLevel) {
|
|
12
|
+
this.ec = batteryLevel;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.NetmeraEventBatteryLevel = NetmeraEventBatteryLevel;
|
|
16
|
+
//# sourceMappingURL=NetmeraEventBatteryLevel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_NetmeraEvent","_interopRequireDefault","require","e","__esModule","default","NetmeraEventBatteryLevel","NetmeraEvent","code","setBatteryLevel","batteryLevel","ec","exports"],"sourceRoot":"../../../src","sources":["events/NetmeraEventBatteryLevel.ts"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0C,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnC,MAAMG,wBAAwB,SAASC,qBAAY,CAAC;EACzDC,IAAI,GAAG,MAAM;EAIbC,eAAeA,CAACC,YAAoB,EAAQ;IAC1C,IAAI,CAACC,EAAE,GAAGD,YAAY;EACxB;AACF;AAACE,OAAA,CAAAN,wBAAA,GAAAA,wBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.NetmeraEventCategoryView = void 0;
|
|
7
|
+
var _NetmeraEvent = _interopRequireDefault(require("./NetmeraEvent"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
class NetmeraEventCategoryView extends _NetmeraEvent.default {
|
|
10
|
+
code = 'n:cv';
|
|
11
|
+
setId(id) {
|
|
12
|
+
this.ga = id;
|
|
13
|
+
}
|
|
14
|
+
setName(name) {
|
|
15
|
+
this.ef = name;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.NetmeraEventCategoryView = NetmeraEventCategoryView;
|
|
19
|
+
//# sourceMappingURL=NetmeraEventCategoryView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_NetmeraEvent","_interopRequireDefault","require","e","__esModule","default","NetmeraEventCategoryView","NetmeraEvent","code","setId","id","ga","setName","name","ef","exports"],"sourceRoot":"../../../src","sources":["events/NetmeraEventCategoryView.ts"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0C,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnC,MAAMG,wBAAwB,SAASC,qBAAY,CAAC;EACzDC,IAAI,GAAG,MAAM;EAKbC,KAAKA,CAACC,EAAU,EAAQ;IACtB,IAAI,CAACC,EAAE,GAAGD,EAAE;EACd;EAEAE,OAAOA,CAACC,IAAY,EAAQ;IAC1B,IAAI,CAACC,EAAE,GAAGD,IAAI;EAChB;AACF;AAACE,OAAA,CAAAT,wBAAA,GAAAA,wBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.NetmeraEventInAppPurchase = void 0;
|
|
7
|
+
var _NetmeraEvent = _interopRequireDefault(require("./NetmeraEvent"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
class NetmeraEventInAppPurchase extends _NetmeraEvent.default {
|
|
10
|
+
code = 'n:ip';
|
|
11
|
+
setId(id) {
|
|
12
|
+
this.ea = id;
|
|
13
|
+
}
|
|
14
|
+
setName(name) {
|
|
15
|
+
this.eb = name;
|
|
16
|
+
}
|
|
17
|
+
setPrice(price) {
|
|
18
|
+
this.eq = price;
|
|
19
|
+
}
|
|
20
|
+
setCount(count) {
|
|
21
|
+
this.ec = count;
|
|
22
|
+
}
|
|
23
|
+
setCategoryIds(categoryIds) {
|
|
24
|
+
this.ga = categoryIds;
|
|
25
|
+
}
|
|
26
|
+
setCategoryNames(categoryNames) {
|
|
27
|
+
this.ef = categoryNames;
|
|
28
|
+
}
|
|
29
|
+
setKeywords(keywords) {
|
|
30
|
+
this.eg = keywords;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.NetmeraEventInAppPurchase = NetmeraEventInAppPurchase;
|
|
34
|
+
//# sourceMappingURL=NetmeraEventInAppPurchase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_NetmeraEvent","_interopRequireDefault","require","e","__esModule","default","NetmeraEventInAppPurchase","NetmeraEvent","code","setId","id","ea","setName","name","eb","setPrice","price","eq","setCount","count","ec","setCategoryIds","categoryIds","ga","setCategoryNames","categoryNames","ef","setKeywords","keywords","eg","exports"],"sourceRoot":"../../../src","sources":["events/NetmeraEventInAppPurchase.ts"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0C,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnC,MAAMG,yBAAyB,SAASC,qBAAY,CAAC;EAC1DC,IAAI,GAAG,MAAM;EAUbC,KAAKA,CAACC,EAAU,EAAQ;IACtB,IAAI,CAACC,EAAE,GAAGD,EAAE;EACd;EAEAE,OAAOA,CAACC,IAAY,EAAQ;IAC1B,IAAI,CAACC,EAAE,GAAGD,IAAI;EAChB;EAEAE,QAAQA,CAACC,KAAa,EAAQ;IAC5B,IAAI,CAACC,EAAE,GAAGD,KAAK;EACjB;EAEAE,QAAQA,CAACC,KAAa,EAAQ;IAC5B,IAAI,CAACC,EAAE,GAAGD,KAAK;EACjB;EAEAE,cAAcA,CAACC,WAAqB,EAAQ;IAC1C,IAAI,CAACC,EAAE,GAAGD,WAAW;EACvB;EAEAE,gBAAgBA,CAACC,aAAuB,EAAQ;IAC9C,IAAI,CAACC,EAAE,GAAGD,aAAa;EACzB;EAEAE,WAAWA,CAACC,QAAkB,EAAQ;IACpC,IAAI,CAACC,EAAE,GAAGD,QAAQ;EACpB;AACF;AAACE,OAAA,CAAAxB,yBAAA,GAAAA,yBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.NetmeraEventLogin = void 0;
|
|
7
|
+
var _NetmeraEvent = _interopRequireDefault(require("./NetmeraEvent"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
class NetmeraEventLogin extends _NetmeraEvent.default {
|
|
10
|
+
code = 'n:cl';
|
|
11
|
+
setUserId(userId) {
|
|
12
|
+
this.uid = userId;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.NetmeraEventLogin = NetmeraEventLogin;
|
|
16
|
+
//# sourceMappingURL=NetmeraEventLogin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_NetmeraEvent","_interopRequireDefault","require","e","__esModule","default","NetmeraEventLogin","NetmeraEvent","code","setUserId","userId","uid","exports"],"sourceRoot":"../../../src","sources":["events/NetmeraEventLogin.ts"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0C,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnC,MAAMG,iBAAiB,SAASC,qBAAY,CAAC;EAClDC,IAAI,GAAG,MAAM;EAIbC,SAASA,CAACC,MAAc,EAAQ;IAC9B,IAAI,CAACC,GAAG,GAAGD,MAAM;EACnB;AACF;AAACE,OAAA,CAAAN,iBAAA,GAAAA,iBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.NetmeraEventRegister = void 0;
|
|
7
|
+
var _NetmeraEvent = _interopRequireDefault(require("./NetmeraEvent"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
class NetmeraEventRegister extends _NetmeraEvent.default {
|
|
10
|
+
code = 'n:rg';
|
|
11
|
+
setUserId(userId) {
|
|
12
|
+
this.uid = userId;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.NetmeraEventRegister = NetmeraEventRegister;
|
|
16
|
+
//# sourceMappingURL=NetmeraEventRegister.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_NetmeraEvent","_interopRequireDefault","require","e","__esModule","default","NetmeraEventRegister","NetmeraEvent","code","setUserId","userId","uid","exports"],"sourceRoot":"../../../src","sources":["events/NetmeraEventRegister.ts"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0C,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnC,MAAMG,oBAAoB,SAASC,qBAAY,CAAC;EACrDC,IAAI,GAAG,MAAM;EAIbC,SAASA,CAACC,MAAc,EAAQ;IAC9B,IAAI,CAACC,GAAG,GAAGD,MAAM;EACnB;AACF;AAACE,OAAA,CAAAN,oBAAA,GAAAA,oBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.NetmeraEventScreenView = void 0;
|
|
7
|
+
var _NetmeraEvent = _interopRequireDefault(require("./NetmeraEvent"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
class NetmeraEventScreenView extends _NetmeraEvent.default {
|
|
10
|
+
code = 'n:sv';
|
|
11
|
+
setPageId(pageId) {
|
|
12
|
+
this.ee = pageId;
|
|
13
|
+
}
|
|
14
|
+
setReferrerPageId(referrerPageId) {
|
|
15
|
+
this.ef = referrerPageId;
|
|
16
|
+
}
|
|
17
|
+
setReferrerPageName(referrerPageName) {
|
|
18
|
+
this.ej = referrerPageName;
|
|
19
|
+
}
|
|
20
|
+
setTimeInPage(timeInPage) {
|
|
21
|
+
this.el = timeInPage;
|
|
22
|
+
}
|
|
23
|
+
setPageName(pageName) {
|
|
24
|
+
this.ea = pageName;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.NetmeraEventScreenView = NetmeraEventScreenView;
|
|
28
|
+
//# sourceMappingURL=NetmeraEventScreenView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_NetmeraEvent","_interopRequireDefault","require","e","__esModule","default","NetmeraEventScreenView","NetmeraEvent","code","setPageId","pageId","ee","setReferrerPageId","referrerPageId","ef","setReferrerPageName","referrerPageName","ej","setTimeInPage","timeInPage","el","setPageName","pageName","ea","exports"],"sourceRoot":"../../../src","sources":["events/NetmeraEventScreenView.ts"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0C,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnC,MAAMG,sBAAsB,SAASC,qBAAY,CAAC;EACvDC,IAAI,GAAG,MAAM;EAQbC,SAASA,CAACC,MAAc,EAAQ;IAC9B,IAAI,CAACC,EAAE,GAAGD,MAAM;EAClB;EAEAE,iBAAiBA,CAACC,cAAsB,EAAQ;IAC9C,IAAI,CAACC,EAAE,GAAGD,cAAc;EAC1B;EAEAE,mBAAmBA,CAACC,gBAAwB,EAAQ;IAClD,IAAI,CAACC,EAAE,GAAGD,gBAAgB;EAC5B;EAEAE,aAAaA,CAACC,UAAkB,EAAQ;IACtC,IAAI,CAACC,EAAE,GAAGD,UAAU;EACtB;EAEAE,WAAWA,CAACC,QAAgB,EAAQ;IAClC,IAAI,CAACC,EAAE,GAAGD,QAAQ;EACpB;AACF;AAACE,OAAA,CAAAlB,sBAAA,GAAAA,sBAAA","ignoreList":[]}
|