@mobana/react-native-sdk 0.2.10
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/LICENSE +21 -0
- package/README.md +249 -0
- package/android/build.gradle +50 -0
- package/android/src/main/AndroidManifest.xml +6 -0
- package/android/src/main/java/ai/mobana/sdk/MobanaModule.kt +67 -0
- package/android/src/main/java/ai/mobana/sdk/MobanaPackage.kt +19 -0
- package/app.plugin.js +274 -0
- package/ios/Mobana.h +11 -0
- package/ios/Mobana.m +20 -0
- package/lib/commonjs/Mobana.js +676 -0
- package/lib/commonjs/Mobana.js.map +1 -0
- package/lib/commonjs/NativeMobana.js +53 -0
- package/lib/commonjs/NativeMobana.js.map +1 -0
- package/lib/commonjs/api.js +201 -0
- package/lib/commonjs/api.js.map +1 -0
- package/lib/commonjs/bridge/index.js +19 -0
- package/lib/commonjs/bridge/index.js.map +1 -0
- package/lib/commonjs/bridge/injectBridge.js +528 -0
- package/lib/commonjs/bridge/injectBridge.js.map +1 -0
- package/lib/commonjs/components/FlowWebView.js +676 -0
- package/lib/commonjs/components/FlowWebView.js.map +1 -0
- package/lib/commonjs/components/MobanaProvider.js +275 -0
- package/lib/commonjs/components/MobanaProvider.js.map +1 -0
- package/lib/commonjs/components/index.js +20 -0
- package/lib/commonjs/components/index.js.map +1 -0
- package/lib/commonjs/device.js +49 -0
- package/lib/commonjs/device.js.map +1 -0
- package/lib/commonjs/index.js +20 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/storage.js +277 -0
- package/lib/commonjs/storage.js.map +1 -0
- package/lib/commonjs/types.js +2 -0
- package/lib/commonjs/types.js.map +1 -0
- package/lib/module/Mobana.js +673 -0
- package/lib/module/Mobana.js.map +1 -0
- package/lib/module/NativeMobana.js +49 -0
- package/lib/module/NativeMobana.js.map +1 -0
- package/lib/module/api.js +194 -0
- package/lib/module/api.js.map +1 -0
- package/lib/module/bridge/index.js +4 -0
- package/lib/module/bridge/index.js.map +1 -0
- package/lib/module/bridge/injectBridge.js +523 -0
- package/lib/module/bridge/injectBridge.js.map +1 -0
- package/lib/module/components/FlowWebView.js +672 -0
- package/lib/module/components/FlowWebView.js.map +1 -0
- package/lib/module/components/MobanaProvider.js +270 -0
- package/lib/module/components/MobanaProvider.js.map +1 -0
- package/lib/module/components/index.js +5 -0
- package/lib/module/components/index.js.map +1 -0
- package/lib/module/device.js +45 -0
- package/lib/module/device.js.map +1 -0
- package/lib/module/index.js +53 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/storage.js +257 -0
- package/lib/module/storage.js.map +1 -0
- package/lib/module/types.js +2 -0
- package/lib/module/types.js.map +1 -0
- package/lib/typescript/Mobana.d.ts +209 -0
- package/lib/typescript/Mobana.d.ts.map +1 -0
- package/lib/typescript/NativeMobana.d.ts +11 -0
- package/lib/typescript/NativeMobana.d.ts.map +1 -0
- package/lib/typescript/api.d.ts +34 -0
- package/lib/typescript/api.d.ts.map +1 -0
- package/lib/typescript/bridge/index.d.ts +3 -0
- package/lib/typescript/bridge/index.d.ts.map +1 -0
- package/lib/typescript/bridge/injectBridge.d.ts +23 -0
- package/lib/typescript/bridge/injectBridge.d.ts.map +1 -0
- package/lib/typescript/components/FlowWebView.d.ts +38 -0
- package/lib/typescript/components/FlowWebView.d.ts.map +1 -0
- package/lib/typescript/components/MobanaProvider.d.ts +65 -0
- package/lib/typescript/components/MobanaProvider.d.ts.map +1 -0
- package/lib/typescript/components/index.d.ts +5 -0
- package/lib/typescript/components/index.d.ts.map +1 -0
- package/lib/typescript/device.d.ts +6 -0
- package/lib/typescript/device.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +46 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/storage.d.ts +68 -0
- package/lib/typescript/storage.d.ts.map +1 -0
- package/lib/typescript/types.d.ts +298 -0
- package/lib/typescript/types.d.ts.map +1 -0
- package/mobana.podspec +19 -0
- package/package.json +131 -0
- package/src/Mobana.ts +742 -0
- package/src/NativeMobana.ts +61 -0
- package/src/api.ts +259 -0
- package/src/bridge/index.ts +2 -0
- package/src/bridge/injectBridge.ts +542 -0
- package/src/components/FlowWebView.tsx +826 -0
- package/src/components/MobanaProvider.tsx +393 -0
- package/src/components/index.ts +4 -0
- package/src/device.ts +42 -0
- package/src/index.ts +66 -0
- package/src/storage.ts +262 -0
- package/src/types.ts +362 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useRef","useCallback","useEffect","useState","View","StyleSheet","ActivityIndicator","Linking","Vibration","Platform","Dimensions","useColorScheme","generateBridgeScript","buildFlowHtml","setLocalData","getAllLocalData","getLocalData","trackFlowEvent","jsx","_jsx","jsxs","_jsxs","HapticFeedback","Geolocation","Permissions","hapticFeedbackWarningShown","geolocationWarningShown","permissionsWarningShown","LOCATION_REQUESTED_KEY","BACKGROUND_LOCATION_REQUESTED_KEY","warnPermissionsNotInstalled","feature","console","warn","require","default","SafeAreaContext","WebView","getSafeAreaInsets","initialWindowMetrics","insets","OS","height","get","hasNotch","top","bottom","left","right","FlowWebView","config","slug","installId","endpoint","appKey","attribution","params","sessionId","onComplete","onDismiss","onEvent","onCallback","webViewProps","debug","webViewRef","isLoading","setIsLoading","htmlContent","setHtmlContent","colorScheme","isDark","bgColor","buildHtml","localData","width","safeArea","bridgeScript","platform","fullHtml","html","css","js","sendResponse","requestId","success","result","JSON","stringify","current","injectJavaScript","trackEvent","event","step","data","versionId","triggerHaptic","style","typeMap","light","medium","heavy","warning","error","selection","trigger","enableVibrateFallback","durationMap","vibrate","handleMessage","message","parse","nativeEvent","type","payload","log","name","status","requestNotifications","RESULTS","GRANTED","granted","settings","checkNotifications","request","PERMISSIONS","IOS","APP_TRACKING_TRANSPARENCY","statusMap","DENIED","BLOCKED","UNAVAILABLE","LIMITED","check","precision","permission","select","ios","LOCATION_WHEN_IN_USE","android","ANDROID","ACCESS_COARSE_LOCATION","ACCESS_FINE_LOCATION","LOCATION_ALWAYS","ACCESS_BACKGROUND_LOCATION","foreground","background","locationRequested","bgLocationRequested","mapStatus","wasRequested","foregroundStatus","locationPrecision","iosResult","fineResult","coarseResult","backgroundStatus","bgPermission","bgResult","getCurrentPosition","position","latitude","coords","longitude","accuracy","altitude","altitudeAccuracy","heading","speed","timestamp","enableHighAccuracy","timeout","maximumAge","action","url","openURL","catch","openSettings","key","undefined","value","callbackResult","Error","styles","container","backgroundColor","children","size","color","ref","source","webview","onMessage","onLoadStart","onLoadEnd","originWhitelist","javaScriptEnabled","domStorageEnabled","allowsInlineMediaPlayback","mediaPlaybackRequiresUserAction","scrollEnabled","bounces","showsHorizontalScrollIndicator","showsVerticalScrollIndicator","onShouldStartLoadWithRequest","startsWith","loadingOverlay","create","flex","absoluteFillObject","justifyContent","alignItems"],"sourceRoot":"../../../src","sources":["components/FlowWebView.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React, { createContext, useState, useCallback, useEffect, useRef } from 'react';
|
|
4
|
+
import { Modal, StyleSheet, View, StatusBar, Platform, ActivityIndicator, useColorScheme } from 'react-native';
|
|
5
|
+
import { trackFlowEvent } from '../api';
|
|
6
|
+
import { generateUUID } from '../storage';
|
|
7
|
+
|
|
8
|
+
// Optional: react-native-webview (required for Flows; checked at provider mount)
|
|
9
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
|
+
let WebViewAvailable = false;
|
|
11
|
+
try {
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
13
|
+
require('react-native-webview');
|
|
14
|
+
WebViewAvailable = true;
|
|
15
|
+
} catch {
|
|
16
|
+
// Not installed - provider will throw in __DEV__ if used
|
|
17
|
+
}
|
|
18
|
+
let FlowWebViewComponent = null;
|
|
19
|
+
if (WebViewAvailable) {
|
|
20
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
21
|
+
FlowWebViewComponent = require('./FlowWebView').FlowWebView;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// Optional peer dependency for app review
|
|
25
|
+
let InAppReview = null;
|
|
26
|
+
let inAppReviewWarningShown = false;
|
|
27
|
+
try {
|
|
28
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
29
|
+
InAppReview = require('react-native-in-app-review').default;
|
|
30
|
+
} catch {
|
|
31
|
+
// Not installed
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Internal flow request from SDK
|
|
36
|
+
*/
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Context for flow presentation
|
|
40
|
+
*/
|
|
41
|
+
|
|
42
|
+
const FlowContext = /*#__PURE__*/createContext(null);
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Check if provider is mounted (used by SDK)
|
|
46
|
+
*/
|
|
47
|
+
let globalFlowContext = null;
|
|
48
|
+
export function getGlobalFlowContext() {
|
|
49
|
+
return globalFlowContext;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Props for MobanaProvider
|
|
54
|
+
*/
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Provider component for Mobana flows
|
|
58
|
+
*
|
|
59
|
+
* Wrap your app with this component to enable flow presentation:
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```tsx
|
|
63
|
+
* import { MobanaProvider } from '@mobana/react-native-sdk';
|
|
64
|
+
*
|
|
65
|
+
* export default function App() {
|
|
66
|
+
* return (
|
|
67
|
+
* <MobanaProvider>
|
|
68
|
+
* <YourApp />
|
|
69
|
+
* </MobanaProvider>
|
|
70
|
+
* );
|
|
71
|
+
* }
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
export function MobanaProvider({
|
|
75
|
+
children,
|
|
76
|
+
modalProps,
|
|
77
|
+
webViewProps,
|
|
78
|
+
loadingComponent
|
|
79
|
+
}) {
|
|
80
|
+
const colorScheme = useColorScheme();
|
|
81
|
+
const isDark = colorScheme === 'dark';
|
|
82
|
+
const bgColor = isDark ? '#1c1c1e' : '#FFFFFF';
|
|
83
|
+
if (__DEV__ && !WebViewAvailable) {
|
|
84
|
+
throw new Error('[Mobana] react-native-webview is required for MobanaProvider.\n\n' + 'Install it with: npm install react-native-webview\n\n' + 'If you only need attribution/conversion tracking, you can skip the provider ' + 'and use Mobana.init, getAttribution, trackConversion directly.');
|
|
85
|
+
}
|
|
86
|
+
const [currentRequest, setCurrentRequest] = useState(null);
|
|
87
|
+
const [isLoading, setIsLoading] = useState(false);
|
|
88
|
+
const hasTrackedStartRef = useRef(false);
|
|
89
|
+
// Session ID for the current flow presentation (groups all events together)
|
|
90
|
+
const sessionIdRef = useRef('');
|
|
91
|
+
|
|
92
|
+
// Present a flow
|
|
93
|
+
const presentFlow = useCallback(request => {
|
|
94
|
+
setIsLoading(true);
|
|
95
|
+
hasTrackedStartRef.current = false;
|
|
96
|
+
// Generate a new session ID for this flow presentation
|
|
97
|
+
sessionIdRef.current = generateUUID();
|
|
98
|
+
setCurrentRequest(request);
|
|
99
|
+
}, []);
|
|
100
|
+
|
|
101
|
+
// Context value
|
|
102
|
+
const contextValue = {
|
|
103
|
+
presentFlow,
|
|
104
|
+
isProviderMounted: true
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
// Register global context for SDK access
|
|
108
|
+
useEffect(() => {
|
|
109
|
+
globalFlowContext = contextValue;
|
|
110
|
+
return () => {
|
|
111
|
+
globalFlowContext = null;
|
|
112
|
+
};
|
|
113
|
+
}, [contextValue]);
|
|
114
|
+
|
|
115
|
+
// Track "__started__" event when flow is shown (system event, not user-callable)
|
|
116
|
+
useEffect(() => {
|
|
117
|
+
if (currentRequest && !hasTrackedStartRef.current) {
|
|
118
|
+
hasTrackedStartRef.current = true;
|
|
119
|
+
trackFlowEvent(currentRequest.endpoint, currentRequest.appKey, currentRequest.slug, currentRequest.installId, currentRequest.config.versionId, sessionIdRef.current, '__started__', undefined, undefined, currentRequest.debug);
|
|
120
|
+
setIsLoading(false);
|
|
121
|
+
}
|
|
122
|
+
}, [currentRequest]);
|
|
123
|
+
|
|
124
|
+
// Handle flow completion
|
|
125
|
+
const handleComplete = useCallback(data => {
|
|
126
|
+
if (!currentRequest) return;
|
|
127
|
+
|
|
128
|
+
// Capture context for the trackEvent closure (must be done before clearing currentRequest)
|
|
129
|
+
const capturedEndpoint = currentRequest.endpoint;
|
|
130
|
+
const capturedAppKey = currentRequest.appKey;
|
|
131
|
+
const capturedSlug = currentRequest.slug;
|
|
132
|
+
const capturedInstallId = currentRequest.installId;
|
|
133
|
+
const capturedVersionId = currentRequest.config.versionId;
|
|
134
|
+
const capturedSessionId = sessionIdRef.current;
|
|
135
|
+
const capturedDebug = currentRequest.debug;
|
|
136
|
+
|
|
137
|
+
// Track "__completed__" event (system event, not user-callable)
|
|
138
|
+
trackFlowEvent(capturedEndpoint, capturedAppKey, capturedSlug, capturedInstallId, capturedVersionId, capturedSessionId, '__completed__', undefined, data, capturedDebug);
|
|
139
|
+
|
|
140
|
+
// Create trackEvent closure for post-flow event tracking
|
|
141
|
+
const trackEvent = async (event, eventData) => {
|
|
142
|
+
return trackFlowEvent(capturedEndpoint, capturedAppKey, capturedSlug, capturedInstallId, capturedVersionId, capturedSessionId, event, undefined, eventData, capturedDebug);
|
|
143
|
+
};
|
|
144
|
+
|
|
145
|
+
// Resolve the promise with sessionId and trackEvent for post-flow tracking
|
|
146
|
+
currentRequest.resolve({
|
|
147
|
+
completed: true,
|
|
148
|
+
dismissed: false,
|
|
149
|
+
data,
|
|
150
|
+
sessionId: capturedSessionId,
|
|
151
|
+
trackEvent
|
|
152
|
+
});
|
|
153
|
+
|
|
154
|
+
// Check for special actions that need to run after modal closes
|
|
155
|
+
const action = data?.action;
|
|
156
|
+
setCurrentRequest(null);
|
|
157
|
+
|
|
158
|
+
// Handle post-modal actions after a delay to ensure modal is fully closed
|
|
159
|
+
if (action === 'request-app-review') {
|
|
160
|
+
setTimeout(async () => {
|
|
161
|
+
if (InAppReview) {
|
|
162
|
+
try {
|
|
163
|
+
await InAppReview.RequestInAppReview();
|
|
164
|
+
} catch {
|
|
165
|
+
// Silently fail - review request is best-effort
|
|
166
|
+
}
|
|
167
|
+
} else {
|
|
168
|
+
if (!inAppReviewWarningShown) {
|
|
169
|
+
inAppReviewWarningShown = true;
|
|
170
|
+
console.warn('[Mobana] react-native-in-app-review is not installed. ' + 'App store review prompts will not work. To enable this feature, install: ' + 'npm install react-native-in-app-review');
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}, 300); // Small delay to ensure modal animation completes
|
|
174
|
+
}
|
|
175
|
+
}, [currentRequest]);
|
|
176
|
+
|
|
177
|
+
// Handle flow dismissal
|
|
178
|
+
const handleDismiss = useCallback(() => {
|
|
179
|
+
if (!currentRequest) return;
|
|
180
|
+
|
|
181
|
+
// Capture context for the trackEvent closure (must be done before clearing currentRequest)
|
|
182
|
+
const capturedEndpoint = currentRequest.endpoint;
|
|
183
|
+
const capturedAppKey = currentRequest.appKey;
|
|
184
|
+
const capturedSlug = currentRequest.slug;
|
|
185
|
+
const capturedInstallId = currentRequest.installId;
|
|
186
|
+
const capturedVersionId = currentRequest.config.versionId;
|
|
187
|
+
const capturedSessionId = sessionIdRef.current;
|
|
188
|
+
const capturedDebug = currentRequest.debug;
|
|
189
|
+
|
|
190
|
+
// Track "__dismissed__" event (system event, not user-callable)
|
|
191
|
+
trackFlowEvent(capturedEndpoint, capturedAppKey, capturedSlug, capturedInstallId, capturedVersionId, capturedSessionId, '__dismissed__', undefined, undefined, capturedDebug);
|
|
192
|
+
|
|
193
|
+
// Create trackEvent closure for post-flow event tracking
|
|
194
|
+
const trackEvent = async (event, eventData) => {
|
|
195
|
+
return trackFlowEvent(capturedEndpoint, capturedAppKey, capturedSlug, capturedInstallId, capturedVersionId, capturedSessionId, event, undefined, eventData, capturedDebug);
|
|
196
|
+
};
|
|
197
|
+
|
|
198
|
+
// Resolve the promise with sessionId and trackEvent for post-flow tracking
|
|
199
|
+
currentRequest.resolve({
|
|
200
|
+
completed: false,
|
|
201
|
+
dismissed: true,
|
|
202
|
+
sessionId: capturedSessionId,
|
|
203
|
+
trackEvent
|
|
204
|
+
});
|
|
205
|
+
setCurrentRequest(null);
|
|
206
|
+
}, [currentRequest]);
|
|
207
|
+
|
|
208
|
+
// Handle custom events from flow
|
|
209
|
+
const handleEvent = useCallback(name => {
|
|
210
|
+
currentRequest?.options?.onEvent?.(name);
|
|
211
|
+
}, [currentRequest]);
|
|
212
|
+
return /*#__PURE__*/_jsxs(FlowContext.Provider, {
|
|
213
|
+
value: contextValue,
|
|
214
|
+
children: [children, /*#__PURE__*/_jsx(Modal, {
|
|
215
|
+
visible: currentRequest !== null,
|
|
216
|
+
animationType: "slide",
|
|
217
|
+
presentationStyle: "fullScreen",
|
|
218
|
+
statusBarTranslucent: Platform.OS === 'android',
|
|
219
|
+
onRequestClose: undefined // Disable Android back button dismiss
|
|
220
|
+
// navigationBarTranslucent is supported in RN 0.72+ but types may be outdated
|
|
221
|
+
,
|
|
222
|
+
...(Platform.OS === 'android' ? {
|
|
223
|
+
navigationBarTranslucent: true
|
|
224
|
+
} : {}),
|
|
225
|
+
...modalProps,
|
|
226
|
+
children: /*#__PURE__*/_jsxs(View, {
|
|
227
|
+
style: [styles.modalContainer, {
|
|
228
|
+
backgroundColor: bgColor
|
|
229
|
+
}],
|
|
230
|
+
children: [Platform.OS === 'ios' && /*#__PURE__*/_jsx(StatusBar, {
|
|
231
|
+
barStyle: isDark ? 'light-content' : 'dark-content'
|
|
232
|
+
}), currentRequest && !isLoading && FlowWebViewComponent && /*#__PURE__*/_jsx(FlowWebViewComponent, {
|
|
233
|
+
config: currentRequest.config,
|
|
234
|
+
slug: currentRequest.slug,
|
|
235
|
+
installId: currentRequest.installId,
|
|
236
|
+
endpoint: currentRequest.endpoint,
|
|
237
|
+
appKey: currentRequest.appKey,
|
|
238
|
+
attribution: currentRequest.attribution,
|
|
239
|
+
params: currentRequest.options?.params,
|
|
240
|
+
sessionId: sessionIdRef.current,
|
|
241
|
+
onComplete: handleComplete,
|
|
242
|
+
onDismiss: handleDismiss,
|
|
243
|
+
onEvent: handleEvent,
|
|
244
|
+
onCallback: currentRequest.options?.onCallback,
|
|
245
|
+
webViewProps: webViewProps,
|
|
246
|
+
debug: currentRequest.debug
|
|
247
|
+
}), isLoading && /*#__PURE__*/_jsx(View, {
|
|
248
|
+
style: [styles.loadingContainer, {
|
|
249
|
+
backgroundColor: bgColor
|
|
250
|
+
}],
|
|
251
|
+
children: loadingComponent || /*#__PURE__*/_jsx(ActivityIndicator, {
|
|
252
|
+
size: "large",
|
|
253
|
+
color: isDark ? '#0A84FF' : '#007AFF'
|
|
254
|
+
})
|
|
255
|
+
})]
|
|
256
|
+
})
|
|
257
|
+
})]
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
const styles = StyleSheet.create({
|
|
261
|
+
modalContainer: {
|
|
262
|
+
flex: 1
|
|
263
|
+
},
|
|
264
|
+
loadingContainer: {
|
|
265
|
+
flex: 1,
|
|
266
|
+
justifyContent: 'center',
|
|
267
|
+
alignItems: 'center'
|
|
268
|
+
}
|
|
269
|
+
});
|
|
270
|
+
//# sourceMappingURL=MobanaProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","createContext","useState","useCallback","useEffect","useRef","Modal","StyleSheet","View","StatusBar","Platform","ActivityIndicator","useColorScheme","trackFlowEvent","generateUUID","jsx","_jsx","jsxs","_jsxs","WebViewAvailable","require","FlowWebViewComponent","FlowWebView","InAppReview","inAppReviewWarningShown","default","FlowContext","globalFlowContext","getGlobalFlowContext","MobanaProvider","children","modalProps","webViewProps","loadingComponent","colorScheme","isDark","bgColor","__DEV__","Error","currentRequest","setCurrentRequest","isLoading","setIsLoading","hasTrackedStartRef","sessionIdRef","presentFlow","request","current","contextValue","isProviderMounted","endpoint","appKey","slug","installId","config","versionId","undefined","debug","handleComplete","data","capturedEndpoint","capturedAppKey","capturedSlug","capturedInstallId","capturedVersionId","capturedSessionId","capturedDebug","trackEvent","event","eventData","resolve","completed","dismissed","sessionId","action","setTimeout","RequestInAppReview","console","warn","handleDismiss","handleEvent","name","options","onEvent","Provider","value","visible","animationType","presentationStyle","statusBarTranslucent","OS","onRequestClose","navigationBarTranslucent","style","styles","modalContainer","backgroundColor","barStyle","attribution","params","onComplete","onDismiss","onCallback","loadingContainer","size","color","create","flex","justifyContent","alignItems"],"sourceRoot":"../../../src","sources":["components/MobanaProvider.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["MobanaProvider","FlowWebView"],"sourceRoot":"../../../src","sources":["components/index.ts"],"mappings":";;AAAA,SAASA,cAAc,QAAQ,kBAAkB;AAEjD,SAASC,WAAW,QAAQ,eAAe","ignoreList":[]}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { Platform, Dimensions } from 'react-native';
|
|
4
|
+
/**
|
|
5
|
+
* Collect device information for attribution matching
|
|
6
|
+
*/
|
|
7
|
+
export function getDeviceInfo() {
|
|
8
|
+
const {
|
|
9
|
+
width,
|
|
10
|
+
height
|
|
11
|
+
} = Dimensions.get('screen');
|
|
12
|
+
return {
|
|
13
|
+
platform: Platform.OS === 'ios' ? 'ios' : 'android',
|
|
14
|
+
timezone: getTimezone(),
|
|
15
|
+
screenWidth: Math.round(width),
|
|
16
|
+
screenHeight: Math.round(height),
|
|
17
|
+
language: getLanguage()
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Get device timezone
|
|
23
|
+
*/
|
|
24
|
+
function getTimezone() {
|
|
25
|
+
try {
|
|
26
|
+
return Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
27
|
+
} catch {
|
|
28
|
+
return undefined;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Get device language in BCP 47 format
|
|
34
|
+
*/
|
|
35
|
+
function getLanguage() {
|
|
36
|
+
try {
|
|
37
|
+
// In React Native, we can access the locale through various means
|
|
38
|
+
// The most reliable is through the Intl API
|
|
39
|
+
const locale = Intl.DateTimeFormat().resolvedOptions().locale;
|
|
40
|
+
return locale;
|
|
41
|
+
} catch {
|
|
42
|
+
return undefined;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=device.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Platform","Dimensions","getDeviceInfo","width","height","get","platform","OS","timezone","getTimezone","screenWidth","Math","round","screenHeight","language","getLanguage","Intl","DateTimeFormat","resolvedOptions","timeZone","undefined","locale"],"sourceRoot":"../../src","sources":["device.ts"],"mappings":";;AAAA,SAASA,QAAQ,EAAEC,UAAU,QAAQ,cAAc;AAGnD;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAAA,EAAe;EAC1C,MAAM;IAAEC,KAAK;IAAEC;EAAO,CAAC,GAAGH,UAAU,CAACI,GAAG,CAAC,QAAQ,CAAC;EAElD,OAAO;IACLC,QAAQ,EAAEN,QAAQ,CAACO,EAAE,KAAK,KAAK,GAAG,KAAK,GAAG,SAAS;IACnDC,QAAQ,EAAEC,WAAW,CAAC,CAAC;IACvBC,WAAW,EAAEC,IAAI,CAACC,KAAK,CAACT,KAAK,CAAC;IAC9BU,YAAY,EAAEF,IAAI,CAACC,KAAK,CAACR,MAAM,CAAC;IAChCU,QAAQ,EAAEC,WAAW,CAAC;EACxB,CAAC;AACH;;AAEA;AACA;AACA;AACA,SAASN,WAAWA,CAAA,EAAuB;EACzC,IAAI;IACF,OAAOO,IAAI,CAACC,cAAc,CAAC,CAAC,CAACC,eAAe,CAAC,CAAC,CAACC,QAAQ;EACzD,CAAC,CAAC,MAAM;IACN,OAAOC,SAAS;EAClB;AACF;;AAEA;AACA;AACA;AACA,SAASL,WAAWA,CAAA,EAAuB;EACzC,IAAI;IACF;IACA;IACA,MAAMM,MAAM,GAAGL,IAAI,CAACC,cAAc,CAAC,CAAC,CAACC,eAAe,CAAC,CAAC,CAACG,MAAM;IAC7D,OAAOA,MAAM;EACf,CAAC,CAAC,MAAM;IACN,OAAOD,SAAS;EAClB;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @mobana/react-native-sdk
|
|
5
|
+
*
|
|
6
|
+
* Simple, privacy-focused mobile app attribution, conversions, and remote flows.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* import { Mobana, MobanaProvider } from '@mobana/react-native-sdk';
|
|
11
|
+
*
|
|
12
|
+
* // 1. Wrap your app with the provider (in App.tsx)
|
|
13
|
+
* function App() {
|
|
14
|
+
* return (
|
|
15
|
+
* <MobanaProvider>
|
|
16
|
+
* <YourApp />
|
|
17
|
+
* </MobanaProvider>
|
|
18
|
+
* );
|
|
19
|
+
* }
|
|
20
|
+
*
|
|
21
|
+
* // 2. Initialize the SDK
|
|
22
|
+
* await Mobana.init({ appId: 'a1b2c3d4' });
|
|
23
|
+
*
|
|
24
|
+
* // 3. Get attribution
|
|
25
|
+
* const attribution = await Mobana.getAttribution();
|
|
26
|
+
*
|
|
27
|
+
* // 4. Track conversions
|
|
28
|
+
* Mobana.trackConversion('signup');
|
|
29
|
+
* Mobana.trackConversion('purchase', 49.99);
|
|
30
|
+
*
|
|
31
|
+
* // 5. Show flows and track post-flow events
|
|
32
|
+
* const result = await Mobana.startFlow('onboarding');
|
|
33
|
+
* if (result.completed) {
|
|
34
|
+
* // Track events after flow closes using result.trackEvent()
|
|
35
|
+
* await result.trackEvent('feature_used');
|
|
36
|
+
* // Link conversions to flow session using result.sessionId
|
|
37
|
+
* await Mobana.trackConversion('purchase', 9.99, result.sessionId);
|
|
38
|
+
* }
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
* @packageDocumentation
|
|
42
|
+
*/
|
|
43
|
+
|
|
44
|
+
// Main SDK
|
|
45
|
+
export { Mobana } from './Mobana';
|
|
46
|
+
|
|
47
|
+
// Components
|
|
48
|
+
export { MobanaProvider } from './components/MobanaProvider';
|
|
49
|
+
|
|
50
|
+
// Types - Attribution
|
|
51
|
+
|
|
52
|
+
// Types - Flows
|
|
53
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Mobana","MobanaProvider"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,SAASA,MAAM,QAAQ,UAAU;;AAEjC;AACA,SAASC,cAAc,QAAQ,6BAA6B;;AAG5D;;AAOA","ignoreList":[]}
|