@tryheliumai/paywall-sdk-react-native 0.2.22 → 3.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/PaywallSdkReactNative.podspec +2 -2
  2. package/ios/HeliumSwiftInterface.swift +163 -76
  3. package/ios/RCTHeliumBridge.m +5 -0
  4. package/lib/commonjs/handlers/revenuecat.js +7 -3
  5. package/lib/commonjs/handlers/revenuecat.js.map +1 -1
  6. package/lib/commonjs/index.js +2 -14
  7. package/lib/commonjs/index.js.map +1 -1
  8. package/lib/commonjs/native-interface.js +133 -182
  9. package/lib/commonjs/native-interface.js.map +1 -1
  10. package/lib/commonjs/types.js +4 -0
  11. package/lib/commonjs/types.js.map +1 -1
  12. package/lib/module/handlers/revenuecat.js +8 -3
  13. package/lib/module/handlers/revenuecat.js.map +1 -1
  14. package/lib/module/index.js +1 -1
  15. package/lib/module/index.js.map +1 -1
  16. package/lib/module/native-interface.js +132 -178
  17. package/lib/module/native-interface.js.map +1 -1
  18. package/lib/module/types.js +4 -0
  19. package/lib/module/types.js.map +1 -1
  20. package/lib/typescript/commonjs/src/handlers/revenuecat.d.ts.map +1 -1
  21. package/lib/typescript/commonjs/src/index.d.ts +2 -2
  22. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  23. package/lib/typescript/commonjs/src/native-interface.d.ts +3 -21
  24. package/lib/typescript/commonjs/src/native-interface.d.ts.map +1 -1
  25. package/lib/typescript/commonjs/src/types.d.ts +107 -6
  26. package/lib/typescript/commonjs/src/types.d.ts.map +1 -1
  27. package/lib/typescript/module/src/handlers/revenuecat.d.ts.map +1 -1
  28. package/lib/typescript/module/src/index.d.ts +2 -2
  29. package/lib/typescript/module/src/index.d.ts.map +1 -1
  30. package/lib/typescript/module/src/native-interface.d.ts +3 -21
  31. package/lib/typescript/module/src/native-interface.d.ts.map +1 -1
  32. package/lib/typescript/module/src/types.d.ts +107 -6
  33. package/lib/typescript/module/src/types.d.ts.map +1 -1
  34. package/package.json +1 -9
  35. package/src/handlers/revenuecat.ts +7 -3
  36. package/src/index.ts +10 -3
  37. package/src/native-interface.tsx +172 -191
  38. package/src/types.ts +147 -9
@@ -1,127 +1,42 @@
1
1
  "use strict";
2
2
 
3
- import { findNodeHandle, NativeModules, View, NativeEventEmitter, requireNativeComponent } from 'react-native';
4
- import React, { createRef, useEffect, useState, createContext, useContext } from 'react';
5
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { NativeModules, NativeEventEmitter, requireNativeComponent } from 'react-native';
6
4
  const {
7
5
  HeliumBridge
8
6
  } = NativeModules;
9
7
  const heliumEventEmitter = new NativeEventEmitter(HeliumBridge);
10
8
 
11
9
  // Register the native component once at module level
12
- // This ensures it's only registered once, even during hot reloading
13
10
  export const NativeHeliumUpsellView = requireNativeComponent('HeliumUpsellView');
14
- let isProviderMounted = false;
11
+
15
12
  // Add a flag to track if initialization has occurred
16
13
  let isInitialized = false;
17
- // Add a promise to track when the provider is mounted
18
- let providerMountedPromise;
19
- let resolveProviderMounted;
20
-
21
- // Initialize the promise
22
- providerMountedPromise = new Promise(resolve => {
23
- resolveProviderMounted = resolve;
24
- // If provider is already mounted, resolve immediately
25
- if (isProviderMounted) {
26
- resolve();
27
- }
28
- });
29
-
30
14
  // Add module-level download status tracking
31
15
  let globalDownloadStatus = 'notStarted';
32
16
  export const getDownloadStatus = () => globalDownloadStatus;
33
-
34
- // Create a context for the download status
35
-
36
- const HeliumContext = /*#__PURE__*/createContext(undefined);
37
-
38
- // Update the setter ref to also update global status
39
- let setDownloadStatusRef = null;
40
17
  const updateDownloadStatus = status => {
41
18
  globalDownloadStatus = status;
42
- setDownloadStatusRef?.(status);
43
- };
44
-
45
- // Hook to use the Helium context
46
- export const useHelium = () => {
47
- const context = useContext(HeliumContext);
48
- if (!context) {
49
- throw new Error('useHelium must be used within a HeliumProvider');
50
- }
51
- return context;
52
- };
53
- // Create a ref to store the fallback view reference
54
- const fallbackRef = /*#__PURE__*/createRef();
55
- // Store a reference to the fallback view component
56
- let FallbackViewComponent = null;
57
-
58
- // Provider component to be rendered at the app root
59
- export const HeliumProvider = ({
60
- children,
61
- fallbackView
62
- }) => {
63
- // TODO - deprecate fallbackView (and maybe HeliumProvider too?)
64
- if (fallbackView) {
65
- console.warn('HeliumProvider: fallbackView is deprecated. Use onFallback passed to presentUpsell instead.');
66
- }
67
- const FallbackView = () => null;
68
- // Add state for download status
69
- const [downloadStatus, setDownloadStatus] = useState('notStarted');
70
-
71
- // Store the setter in the ref so it can be accessed outside of components
72
- useEffect(() => {
73
- setDownloadStatusRef = setDownloadStatus;
74
- // Store the fallback view component for later use
75
- FallbackViewComponent = FallbackView;
76
- }, [setDownloadStatus, FallbackView]);
77
- useEffect(() => {
78
- isProviderMounted = true;
79
- // Resolve the promise when the provider is mounted
80
- resolveProviderMounted();
81
- return () => {
82
- isProviderMounted = false;
83
- setDownloadStatusRef = null;
84
- };
85
- }, []);
86
- return /*#__PURE__*/_jsxs(HeliumContext.Provider, {
87
- value: {
88
- downloadStatus,
89
- setDownloadStatus
90
- },
91
- children: [/*#__PURE__*/_jsx(View, {
92
- ref: fallbackRef,
93
- collapsable: false,
94
- style: {
95
- display: 'none'
96
- },
97
- children: /*#__PURE__*/_jsx(FallbackView, {})
98
- }), children]
99
- });
100
19
  };
101
-
102
- // Update initialize to accept full config
103
20
  export const initialize = async config => {
104
21
  // Early return if already initialized
105
22
  if (isInitialized) {
23
+ console.log('[Helium] Already initialized, skipping...');
106
24
  return;
107
25
  }
108
-
109
- // Wait for the provider to be mounted if it's not already
110
- if (!isProviderMounted) {
111
- await providerMountedPromise;
112
- }
113
- const viewTag = findNodeHandle(fallbackRef.current);
114
- if (!viewTag) {
115
- throw new Error('Failed to get fallback view reference. Make sure HeliumProvider is mounted with a fallback view.');
116
- }
117
- const purchaseHandler = {
26
+ const purchaseHandler = config.purchaseConfig ? {
118
27
  makePurchase: config.purchaseConfig.makePurchase,
119
28
  restorePurchases: config.purchaseConfig.restorePurchases
120
- };
29
+ } : null;
121
30
 
122
31
  // Update download status to inProgress
123
32
  updateDownloadStatus('inProgress');
124
33
 
34
+ // Ensure these don't get added more than once
35
+ heliumEventEmitter.removeAllListeners('helium_paywall_event');
36
+ heliumEventEmitter.removeAllListeners('paywallEventHandlers');
37
+ heliumEventEmitter.removeAllListeners('helium_make_purchase');
38
+ heliumEventEmitter.removeAllListeners('helium_restore_purchases');
39
+
125
40
  // Set up event listeners
126
41
  heliumEventEmitter.addListener('helium_paywall_event', event => {
127
42
  // Handle download status events
@@ -130,47 +45,40 @@ export const initialize = async config => {
130
45
  } else if (event.type === 'paywallsDownloadError') {
131
46
  updateDownloadStatus('failed');
132
47
  }
133
- // Handle fallback view visibility
134
- else if (event.type === 'paywallOpen' && event.paywallTemplateName === 'Fallback') {
135
- if (fallbackRef.current) {
136
- fallbackRef.current.setNativeProps({
137
- style: {
138
- display: 'flex'
139
- }
140
- });
141
- }
142
- } else if (event.type === 'paywallClose' && event.paywallTemplateName === 'Fallback') {
143
- if (fallbackRef.current) {
144
- fallbackRef.current.setNativeProps({
145
- style: {
146
- display: 'none'
147
- }
148
- });
149
- }
150
- }
48
+
49
+ // Handle internal event logic first
50
+ handlePaywallEvent(event);
151
51
 
152
52
  // Forward all events to the callback provided in config
153
53
  config.onHeliumPaywallEvent(event);
154
54
  });
155
55
 
156
- // Set up purchase event listener using the determined handler
157
- heliumEventEmitter.addListener('helium_make_purchase', async event => {
158
- const result = await purchaseHandler.makePurchase(event.productId);
159
- HeliumBridge.handlePurchaseResponse({
160
- transactionId: event.transactionId,
161
- status: result.status,
162
- error: result.error
163
- });
56
+ // Set up paywall event handlers listener
57
+ heliumEventEmitter.addListener('paywallEventHandlers', event => {
58
+ callPaywallEventHandlers(event);
164
59
  });
165
60
 
166
- // Set up restore purchases event listener using the determined handler
167
- heliumEventEmitter.addListener('helium_restore_purchases', async event => {
168
- const success = await purchaseHandler.restorePurchases();
169
- HeliumBridge.handleRestoreResponse({
170
- transactionId: event.transactionId,
171
- status: success ? 'restored' : 'failed'
61
+ // Set up purchase event listeners only if we have a purchase handler
62
+ if (purchaseHandler) {
63
+ // Set up purchase event listener using the determined handler
64
+ heliumEventEmitter.addListener('helium_make_purchase', async event => {
65
+ const result = await purchaseHandler.makePurchase(event.productId);
66
+ HeliumBridge.handlePurchaseResponse({
67
+ transactionId: event.transactionId,
68
+ status: result.status,
69
+ error: result.error
70
+ });
172
71
  });
173
- });
72
+
73
+ // Set up restore purchases event listener using the determined handler
74
+ heliumEventEmitter.addListener('helium_restore_purchases', async event => {
75
+ const success = await purchaseHandler.restorePurchases();
76
+ HeliumBridge.handleRestoreResponse({
77
+ transactionId: event.transactionId,
78
+ status: success ? 'restored' : 'failed'
79
+ });
80
+ });
81
+ }
174
82
  let fallbackBundleUrlString;
175
83
  let fallbackBundleString;
176
84
  if (config.fallbackBundle) {
@@ -189,24 +97,26 @@ export const initialize = async config => {
189
97
  }
190
98
  HeliumBridge.initialize({
191
99
  apiKey: config.apiKey,
192
- fallbackPaywall: viewTag,
193
- triggers: config.triggers || [],
194
100
  customUserId: config.customUserId || null,
195
101
  customAPIEndpoint: config.customAPIEndpoint || null,
196
- customUserTraits: config.customUserTraits == null ? {} : config.customUserTraits,
102
+ customUserTraits: convertBooleansToMarkers(config.customUserTraits == null ? {} : config.customUserTraits),
197
103
  revenueCatAppUserId: config.revenueCatAppUserId,
198
104
  fallbackBundleUrlString: fallbackBundleUrlString,
199
- fallbackBundleString: fallbackBundleString
105
+ fallbackBundleString: fallbackBundleString,
106
+ paywallLoadingConfig: convertBooleansToMarkers(config.paywallLoadingConfig),
107
+ useDefaultDelegate: !config.purchaseConfig
200
108
  }, {});
201
109
 
202
110
  // Mark as initialized after successful initialization
203
111
  isInitialized = true;
204
112
  };
205
-
206
- // Update the other methods to be synchronous
113
+ let paywallEventHandlers;
114
+ let presentOnFallback;
207
115
  export const presentUpsell = ({
208
116
  triggerName,
209
- onFallback
117
+ onFallback,
118
+ eventHandlers,
119
+ customPaywallTraits
210
120
  }) => {
211
121
  HeliumBridge.canPresentUpsell(triggerName, (canPresent, reason) => {
212
122
  if (!canPresent) {
@@ -216,14 +126,77 @@ export const presentUpsell = ({
216
126
  return;
217
127
  }
218
128
  try {
219
- HeliumBridge.presentUpsell(triggerName);
129
+ paywallEventHandlers = eventHandlers;
130
+ presentOnFallback = onFallback;
131
+ HeliumBridge.presentUpsell(triggerName, convertBooleansToMarkers(customPaywallTraits) || null);
220
132
  } catch (error) {
221
133
  console.log('[Helium] Present error', error);
134
+ paywallEventHandlers = undefined;
135
+ presentOnFallback = undefined;
222
136
  onFallback?.();
223
137
  HeliumBridge.fallbackOpenOrCloseEvent(triggerName, true, 'presented');
224
138
  }
225
139
  });
226
140
  };
141
+ function callPaywallEventHandlers(event) {
142
+ if (paywallEventHandlers) {
143
+ switch (event.type) {
144
+ case 'paywallOpen':
145
+ paywallEventHandlers?.onOpen?.({
146
+ type: 'paywallOpen',
147
+ triggerName: event.triggerName ?? 'unknown',
148
+ paywallName: event.paywallName ?? 'unknown',
149
+ isSecondTry: event.isSecondTry ?? false,
150
+ viewType: 'presented'
151
+ });
152
+ break;
153
+ case 'paywallClose':
154
+ paywallEventHandlers?.onClose?.({
155
+ type: 'paywallClose',
156
+ triggerName: event.triggerName ?? 'unknown',
157
+ paywallName: event.paywallName ?? 'unknown',
158
+ isSecondTry: event.isSecondTry ?? false
159
+ });
160
+ break;
161
+ case 'paywallDismissed':
162
+ paywallEventHandlers?.onDismissed?.({
163
+ type: 'paywallDismissed',
164
+ triggerName: event.triggerName ?? 'unknown',
165
+ paywallName: event.paywallName ?? 'unknown',
166
+ isSecondTry: event.isSecondTry ?? false
167
+ });
168
+ break;
169
+ case 'purchaseSucceeded':
170
+ paywallEventHandlers?.onPurchaseSucceeded?.({
171
+ type: 'purchaseSucceeded',
172
+ productId: event.productId ?? 'unknown',
173
+ triggerName: event.triggerName ?? 'unknown',
174
+ paywallName: event.paywallName ?? 'unknown',
175
+ isSecondTry: event.isSecondTry ?? false
176
+ });
177
+ break;
178
+ }
179
+ }
180
+ }
181
+ function handlePaywallEvent(event) {
182
+ switch (event.type) {
183
+ case 'paywallClose':
184
+ if (!event.isSecondTry) {
185
+ paywallEventHandlers = undefined;
186
+ }
187
+ presentOnFallback = undefined;
188
+ break;
189
+ case 'paywallSkipped':
190
+ paywallEventHandlers = undefined;
191
+ presentOnFallback = undefined;
192
+ break;
193
+ case 'paywallOpenFailed':
194
+ paywallEventHandlers = undefined;
195
+ presentOnFallback?.();
196
+ presentOnFallback = undefined;
197
+ break;
198
+ }
199
+ }
227
200
  export const hideUpsell = () => {
228
201
  HeliumBridge.hideUpsell();
229
202
  };
@@ -252,53 +225,34 @@ export const handleDeepLink = async url => {
252
225
  console.log('[Helium] Handled deep link:', handled);
253
226
  resolve(handled);
254
227
  });
228
+ } else {
229
+ resolve(false);
255
230
  }
256
231
  });
257
232
  };
258
-
259
- // Update the UpsellView component to handle the style prop
260
- export const UpsellView = ({
261
- trigger,
262
- fallbackViewProps,
263
- fallbackViewWrapperStyles
264
- }) => {
265
- const {
266
- downloadStatus
267
- } = useHelium();
268
- const showFallback = downloadStatus === 'notStarted' || downloadStatus === 'inProgress' || downloadStatus === 'failed';
269
- useEffect(() => {
270
- if (showFallback && FallbackViewComponent) {
271
- HeliumBridge.fallbackOpenOrCloseEvent(trigger, true, 'embedded');
272
- }
273
- return () => {
274
- if (showFallback && FallbackViewComponent) {
275
- HeliumBridge.fallbackOpenOrCloseEvent(trigger, false, 'embedded');
276
- }
277
- };
278
- }, [showFallback, trigger]);
279
-
280
- // If download status is notStarted or inProgress, we haven't fully initialized yet
281
- // In this case, we should render the fallback view
282
- if (showFallback) {
283
- // If we have a fallback view component, render it
284
- if (FallbackViewComponent) {
285
- return /*#__PURE__*/_jsx(View, {
286
- style: fallbackViewWrapperStyles,
287
- children: /*#__PURE__*/_jsx(FallbackViewComponent, {
288
- ...fallbackViewProps
289
- })
290
- });
291
- }
292
- return null;
293
- }
294
-
295
- // Use NativeHeliumUpsellView directly
296
- return /*#__PURE__*/_jsx(NativeHeliumUpsellView, {
297
- trigger: trigger
298
- });
233
+ export const setRevenueCatAppUserId = rcAppUserId => {
234
+ HeliumBridge.setRevenueCatAppUserId(rcAppUserId);
299
235
  };
300
236
  export const HELIUM_CTA_NAMES = {
301
237
  SCHEDULE_CALL: 'schedule_call',
302
238
  SUBSCRIBE_BUTTON: 'subscribe_button'
303
239
  };
240
+ function convertBooleansToMarkers(input) {
241
+ if (!input) return undefined;
242
+ const result = {};
243
+ for (const [key, value] of Object.entries(input)) {
244
+ result[key] = convertValueBooleansToMarkers(value);
245
+ }
246
+ return result;
247
+ }
248
+ function convertValueBooleansToMarkers(value) {
249
+ if (typeof value === 'boolean') {
250
+ return value ? '__helium_rn_bool_true__' : '__helium_rn_bool_false__';
251
+ } else if (value && typeof value === 'object' && !Array.isArray(value)) {
252
+ return convertBooleansToMarkers(value);
253
+ } else if (value && Array.isArray(value)) {
254
+ return value.map(convertValueBooleansToMarkers);
255
+ }
256
+ return value;
257
+ }
304
258
  //# sourceMappingURL=native-interface.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["findNodeHandle","NativeModules","View","NativeEventEmitter","requireNativeComponent","React","createRef","useEffect","useState","createContext","useContext","jsx","_jsx","jsxs","_jsxs","HeliumBridge","heliumEventEmitter","NativeHeliumUpsellView","isProviderMounted","isInitialized","providerMountedPromise","resolveProviderMounted","Promise","resolve","globalDownloadStatus","getDownloadStatus","HeliumContext","undefined","setDownloadStatusRef","updateDownloadStatus","status","useHelium","context","Error","fallbackRef","FallbackViewComponent","HeliumProvider","children","fallbackView","console","warn","FallbackView","downloadStatus","setDownloadStatus","Provider","value","ref","collapsable","style","display","initialize","config","viewTag","current","purchaseHandler","makePurchase","purchaseConfig","restorePurchases","addListener","event","type","paywallTemplateName","setNativeProps","onHeliumPaywallEvent","result","productId","handlePurchaseResponse","transactionId","error","success","handleRestoreResponse","fallbackBundleUrlString","fallbackBundleString","fallbackBundle","ExpoFileSystem","require","jsonContent","JSON","stringify","documentDirectory","writeAsStringAsync","log","apiKey","fallbackPaywall","triggers","customUserId","customAPIEndpoint","customUserTraits","revenueCatAppUserId","presentUpsell","triggerName","onFallback","canPresentUpsell","canPresent","reason","fallbackOpenOrCloseEvent","hideUpsell","hideAllUpsells","getPaywallInfo","trigger","templateName","shouldShow","handleDeepLink","url","handled","UpsellView","fallbackViewProps","fallbackViewWrapperStyles","showFallback","HELIUM_CTA_NAMES","SCHEDULE_CALL","SUBSCRIBE_BUTTON"],"sourceRoot":"../../src","sources":["native-interface.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NativeModules","NativeEventEmitter","requireNativeComponent","HeliumBridge","heliumEventEmitter","NativeHeliumUpsellView","isInitialized","globalDownloadStatus","getDownloadStatus","updateDownloadStatus","status","initialize","config","console","log","purchaseHandler","purchaseConfig","makePurchase","restorePurchases","removeAllListeners","addListener","event","type","handlePaywallEvent","onHeliumPaywallEvent","callPaywallEventHandlers","result","productId","handlePurchaseResponse","transactionId","error","success","handleRestoreResponse","fallbackBundleUrlString","fallbackBundleString","fallbackBundle","ExpoFileSystem","require","jsonContent","JSON","stringify","documentDirectory","writeAsStringAsync","apiKey","customUserId","customAPIEndpoint","customUserTraits","convertBooleansToMarkers","revenueCatAppUserId","paywallLoadingConfig","useDefaultDelegate","paywallEventHandlers","presentOnFallback","presentUpsell","triggerName","onFallback","eventHandlers","customPaywallTraits","canPresentUpsell","canPresent","reason","fallbackOpenOrCloseEvent","undefined","onOpen","paywallName","isSecondTry","viewType","onClose","onDismissed","onPurchaseSucceeded","hideUpsell","hideAllUpsells","getPaywallInfo","trigger","Promise","resolve","templateName","shouldShow","paywallTemplateName","handleDeepLink","url","handled","setRevenueCatAppUserId","rcAppUserId","HELIUM_CTA_NAMES","SCHEDULE_CALL","SUBSCRIBE_BUTTON","input","key","value","Object","entries","convertValueBooleansToMarkers","Array","isArray","map"],"sourceRoot":"../../src","sources":["native-interface.tsx"],"mappings":";;AAAA,SACEA,aAAa,EACbC,kBAAkB,EAClBC,sBAAsB,QACjB,cAAc;AAWrB,MAAM;EAAEC;AAAa,CAAC,GAAGH,aAAa;AACtC,MAAMI,kBAAkB,GAAG,IAAIH,kBAAkB,CAACE,YAAY,CAAC;;AAE/D;AACA,OAAO,MAAME,sBAAsB,GACjCH,sBAAsB,CAAwB,kBAAkB,CAAC;;AAEnE;AACA,IAAII,aAAa,GAAG,KAAK;AACzB;AACA,IAAIC,oBAA0C,GAAG,YAAY;AAC7D,OAAO,MAAMC,iBAAiB,GAAGA,CAAA,KAAMD,oBAAoB;AAE3D,MAAME,oBAAoB,GAAIC,MAA4B,IAAK;EAC7DH,oBAAoB,GAAGG,MAAM;AAC/B,CAAC;AAED,OAAO,MAAMC,UAAU,GAAG,MAAOC,MAAoB,IAAK;EACxD;EACA,IAAIN,aAAa,EAAE;IACjBO,OAAO,CAACC,GAAG,CAAC,2CAA2C,CAAC;IACxD;EACF;EAEA,MAAMC,eAAe,GAAGH,MAAM,CAACI,cAAc,GACzC;IACEC,YAAY,EAAEL,MAAM,CAACI,cAAc,CAACC,YAAY;IAChDC,gBAAgB,EAAEN,MAAM,CAACI,cAAc,CAACE;EAC1C,CAAC,GACD,IAAI;;EAER;EACAT,oBAAoB,CAAC,YAAY,CAAC;;EAElC;EACAL,kBAAkB,CAACe,kBAAkB,CAAC,sBAAsB,CAAC;EAC7Df,kBAAkB,CAACe,kBAAkB,CAAC,sBAAsB,CAAC;EAC7Df,kBAAkB,CAACe,kBAAkB,CAAC,sBAAsB,CAAC;EAC7Df,kBAAkB,CAACe,kBAAkB,CAAC,0BAA0B,CAAC;;EAEjE;EACAf,kBAAkB,CAACgB,WAAW,CAC5B,sBAAsB,EACrBC,KAAyB,IAAK;IAC7B;IACA,IAAIA,KAAK,CAACC,IAAI,KAAK,yBAAyB,EAAE;MAC5Cb,oBAAoB,CAAC,SAAS,CAAC;IACjC,CAAC,MAAM,IAAIY,KAAK,CAACC,IAAI,KAAK,uBAAuB,EAAE;MACjDb,oBAAoB,CAAC,QAAQ,CAAC;IAChC;;IAEA;IACAc,kBAAkB,CAACF,KAAK,CAAC;;IAEzB;IACAT,MAAM,CAACY,oBAAoB,CAACH,KAAK,CAAC;EACpC,CACF,CAAC;;EAED;EACAjB,kBAAkB,CAACgB,WAAW,CAC5B,sBAAsB,EACrBC,KAAyB,IAAK;IAC7BI,wBAAwB,CAACJ,KAAK,CAAC;EACjC,CACF,CAAC;;EAED;EACA,IAAIN,eAAe,EAAE;IACnB;IACAX,kBAAkB,CAACgB,WAAW,CAC5B,sBAAsB,EACtB,MAAOC,KAAmD,IAAK;MAC7D,MAAMK,MAAM,GAAG,MAAMX,eAAe,CAACE,YAAY,CAACI,KAAK,CAACM,SAAS,CAAC;MAClExB,YAAY,CAACyB,sBAAsB,CAAC;QAClCC,aAAa,EAAER,KAAK,CAACQ,aAAa;QAClCnB,MAAM,EAAEgB,MAAM,CAAChB,MAAM;QACrBoB,KAAK,EAAEJ,MAAM,CAACI;MAChB,CAAC,CAAC;IACJ,CACF,CAAC;;IAED;IACA1B,kBAAkB,CAACgB,WAAW,CAC5B,0BAA0B,EAC1B,MAAOC,KAAgC,IAAK;MAC1C,MAAMU,OAAO,GAAG,MAAMhB,eAAe,CAACG,gBAAgB,CAAC,CAAC;MACxDf,YAAY,CAAC6B,qBAAqB,CAAC;QACjCH,aAAa,EAAER,KAAK,CAACQ,aAAa;QAClCnB,MAAM,EAAEqB,OAAO,GAAG,UAAU,GAAG;MACjC,CAAC,CAAC;IACJ,CACF,CAAC;EACH;EAEA,IAAIE,uBAAuB;EAC3B,IAAIC,oBAAoB;EACxB,IAAItB,MAAM,CAACuB,cAAc,EAAE;IACzB,IAAI;MACF,MAAMC,cAAc,GAAGC,OAAO,CAAC,kBAAkB,CAAC;MAElD,MAAMC,WAAW,GAAGC,IAAI,CAACC,SAAS,CAAC5B,MAAM,CAACuB,cAAc,CAAC;;MAEzD;MACAF,uBAAuB,GAAG,GAAGG,cAAc,CAACK,iBAAiB,sBAAsB;MACnF,MAAML,cAAc,CAACM,kBAAkB,CACrCT,uBAAuB,EACvBK,WACF,CAAC;IACH,CAAC,CAAC,OAAOR,KAAK,EAAE;MACd;MACAjB,OAAO,CAACC,GAAG,CACT,wFACF,CAAC;MACDoB,oBAAoB,GAAGK,IAAI,CAACC,SAAS,CAAC5B,MAAM,CAACuB,cAAc,CAAC;IAC9D;EACF;EAEAhC,YAAY,CAACQ,UAAU,CACrB;IACEgC,MAAM,EAAE/B,MAAM,CAAC+B,MAAM;IACrBC,YAAY,EAAEhC,MAAM,CAACgC,YAAY,IAAI,IAAI;IACzCC,iBAAiB,EAAEjC,MAAM,CAACiC,iBAAiB,IAAI,IAAI;IACnDC,gBAAgB,EAAEC,wBAAwB,CACxCnC,MAAM,CAACkC,gBAAgB,IAAI,IAAI,GAAG,CAAC,CAAC,GAAGlC,MAAM,CAACkC,gBAChD,CAAC;IACDE,mBAAmB,EAAEpC,MAAM,CAACoC,mBAAmB;IAC/Cf,uBAAuB,EAAEA,uBAAuB;IAChDC,oBAAoB,EAAEA,oBAAoB;IAC1Ce,oBAAoB,EAAEF,wBAAwB,CAC5CnC,MAAM,CAACqC,oBACT,CAAC;IACDC,kBAAkB,EAAE,CAACtC,MAAM,CAACI;EAC9B,CAAC,EACD,CAAC,CACH,CAAC;;EAED;EACAV,aAAa,GAAG,IAAI;AACtB,CAAC;AAED,IAAI6C,oBAAsD;AAC1D,IAAIC,iBAA2C;AAC/C,OAAO,MAAMC,aAAa,GAAGA,CAAC;EAC5BC,WAAW;EACXC,UAAU;EACVC,aAAa;EACbC;AACmB,CAAC,KAAK;EACzBtD,YAAY,CAACuD,gBAAgB,CAC3BJ,WAAW,EACX,CAACK,UAAmB,EAAEC,MAAc,KAAK;IACvC,IAAI,CAACD,UAAU,EAAE;MACf9C,OAAO,CAACC,GAAG,CACT,oCAAoCwC,WAAW,cAAcM,MAAM,EACrE,CAAC;MACDL,UAAU,GAAG,CAAC;MACdpD,YAAY,CAAC0D,wBAAwB,CAACP,WAAW,EAAE,IAAI,EAAE,WAAW,CAAC;MACrE;IACF;IAEA,IAAI;MACFH,oBAAoB,GAAGK,aAAa;MACpCJ,iBAAiB,GAAGG,UAAU;MAC9BpD,YAAY,CAACkD,aAAa,CACxBC,WAAW,EACXP,wBAAwB,CAACU,mBAAmB,CAAC,IAAI,IACnD,CAAC;IACH,CAAC,CAAC,OAAO3B,KAAK,EAAE;MACdjB,OAAO,CAACC,GAAG,CAAC,wBAAwB,EAAEgB,KAAK,CAAC;MAC5CqB,oBAAoB,GAAGW,SAAS;MAChCV,iBAAiB,GAAGU,SAAS;MAC7BP,UAAU,GAAG,CAAC;MACdpD,YAAY,CAAC0D,wBAAwB,CAACP,WAAW,EAAE,IAAI,EAAE,WAAW,CAAC;IACvE;EACF,CACF,CAAC;AACH,CAAC;AAED,SAAS7B,wBAAwBA,CAACJ,KAAyB,EAAE;EAC3D,IAAI8B,oBAAoB,EAAE;IACxB,QAAQ9B,KAAK,CAACC,IAAI;MAChB,KAAK,aAAa;QAChB6B,oBAAoB,EAAEY,MAAM,GAAG;UAC7BzC,IAAI,EAAE,aAAa;UACnBgC,WAAW,EAAEjC,KAAK,CAACiC,WAAW,IAAI,SAAS;UAC3CU,WAAW,EAAE3C,KAAK,CAAC2C,WAAW,IAAI,SAAS;UAC3CC,WAAW,EAAE5C,KAAK,CAAC4C,WAAW,IAAI,KAAK;UACvCC,QAAQ,EAAE;QACZ,CAAC,CAAC;QACF;MACF,KAAK,cAAc;QACjBf,oBAAoB,EAAEgB,OAAO,GAAG;UAC9B7C,IAAI,EAAE,cAAc;UACpBgC,WAAW,EAAEjC,KAAK,CAACiC,WAAW,IAAI,SAAS;UAC3CU,WAAW,EAAE3C,KAAK,CAAC2C,WAAW,IAAI,SAAS;UAC3CC,WAAW,EAAE5C,KAAK,CAAC4C,WAAW,IAAI;QACpC,CAAC,CAAC;QACF;MACF,KAAK,kBAAkB;QACrBd,oBAAoB,EAAEiB,WAAW,GAAG;UAClC9C,IAAI,EAAE,kBAAkB;UACxBgC,WAAW,EAAEjC,KAAK,CAACiC,WAAW,IAAI,SAAS;UAC3CU,WAAW,EAAE3C,KAAK,CAAC2C,WAAW,IAAI,SAAS;UAC3CC,WAAW,EAAE5C,KAAK,CAAC4C,WAAW,IAAI;QACpC,CAAC,CAAC;QACF;MACF,KAAK,mBAAmB;QACtBd,oBAAoB,EAAEkB,mBAAmB,GAAG;UAC1C/C,IAAI,EAAE,mBAAmB;UACzBK,SAAS,EAAEN,KAAK,CAACM,SAAS,IAAI,SAAS;UACvC2B,WAAW,EAAEjC,KAAK,CAACiC,WAAW,IAAI,SAAS;UAC3CU,WAAW,EAAE3C,KAAK,CAAC2C,WAAW,IAAI,SAAS;UAC3CC,WAAW,EAAE5C,KAAK,CAAC4C,WAAW,IAAI;QACpC,CAAC,CAAC;QACF;IACJ;EACF;AACF;AAEA,SAAS1C,kBAAkBA,CAACF,KAAyB,EAAE;EACrD,QAAQA,KAAK,CAACC,IAAI;IAChB,KAAK,cAAc;MACjB,IAAI,CAACD,KAAK,CAAC4C,WAAW,EAAE;QACtBd,oBAAoB,GAAGW,SAAS;MAClC;MACAV,iBAAiB,GAAGU,SAAS;MAC7B;IACF,KAAK,gBAAgB;MACnBX,oBAAoB,GAAGW,SAAS;MAChCV,iBAAiB,GAAGU,SAAS;MAC7B;IACF,KAAK,mBAAmB;MACtBX,oBAAoB,GAAGW,SAAS;MAChCV,iBAAiB,GAAG,CAAC;MACrBA,iBAAiB,GAAGU,SAAS;MAC7B;EACJ;AACF;AAEA,OAAO,MAAMQ,UAAU,GAAGA,CAAA,KAAM;EAC9BnE,YAAY,CAACmE,UAAU,CAAC,CAAC;AAC3B,CAAC;AAED,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAClCpE,YAAY,CAACoE,cAAc,CAAC,CAAC;AAC/B,CAAC;AAED,OAAO,MAAMC,cAAc,GAAG,MAC5BC,OAAe,IACsB;EACrC,OAAO,IAAIC,OAAO,CAAEC,OAAO,IAAK;IAC9BxE,YAAY,CAACqE,cAAc,CACzBC,OAAO,EACP,CAAC3C,KAAoB,EAAE8C,YAAoB,EAAEC,UAAmB,KAAK;MACnE,IAAI/C,KAAK,EAAE;QACTjB,OAAO,CAACC,GAAG,CAAC,YAAYgB,KAAK,EAAE,CAAC;QAChC6C,OAAO,CAACb,SAAS,CAAC;QAClB;MACF;MACAa,OAAO,CAAC;QACNG,mBAAmB,EAAEF,YAAY;QACjCC,UAAU,EAAEA;MACd,CAAC,CAAC;IACJ,CACF,CAAC;EACH,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,MAAME,cAAc,GAAG,MAAOC,GAAkB,IAAuB;EAC5E,OAAO,IAAIN,OAAO,CAAEC,OAAO,IAAK;IAC9B,IAAIK,GAAG,EAAE;MACP7E,YAAY,CAAC4E,cAAc,CAACC,GAAG,EAAGC,OAAgB,IAAK;QACrDpE,OAAO,CAACC,GAAG,CAAC,6BAA6B,EAAEmE,OAAO,CAAC;QACnDN,OAAO,CAACM,OAAO,CAAC;MAClB,CAAC,CAAC;IACJ,CAAC,MAAM;MACLN,OAAO,CAAC,KAAK,CAAC;IAChB;EACF,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,MAAMO,sBAAsB,GAAIC,WAAmB,IAAK;EAC7DhF,YAAY,CAAC+E,sBAAsB,CAACC,WAAW,CAAC;AAClD,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAG;EAC9BC,aAAa,EAAE,eAAe;EAC9BC,gBAAgB,EAAE;AACpB,CAAC;AAED,SAASvC,wBAAwBA,CAC/BwC,KAAsC,EACL;EACjC,IAAI,CAACA,KAAK,EAAE,OAAOzB,SAAS;EAE5B,MAAMpC,MAA2B,GAAG,CAAC,CAAC;EACtC,KAAK,MAAM,CAAC8D,GAAG,EAAEC,KAAK,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACJ,KAAK,CAAC,EAAE;IAChD7D,MAAM,CAAC8D,GAAG,CAAC,GAAGI,6BAA6B,CAACH,KAAK,CAAC;EACpD;EACA,OAAO/D,MAAM;AACf;AACA,SAASkE,6BAA6BA,CAACH,KAAU,EAAO;EACtD,IAAI,OAAOA,KAAK,KAAK,SAAS,EAAE;IAC9B,OAAOA,KAAK,GAAG,yBAAyB,GAAG,0BAA0B;EACvE,CAAC,MAAM,IAAIA,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAI,CAACI,KAAK,CAACC,OAAO,CAACL,KAAK,CAAC,EAAE;IACtE,OAAO1C,wBAAwB,CAAC0C,KAAK,CAAC;EACxC,CAAC,MAAM,IAAIA,KAAK,IAAII,KAAK,CAACC,OAAO,CAACL,KAAK,CAAC,EAAE;IACxC,OAAOA,KAAK,CAACM,GAAG,CAACH,6BAA6B,CAAC;EACjD;EACA,OAAOH,KAAK;AACd","ignoreList":[]}
@@ -12,6 +12,10 @@ export function createCustomPurchaseConfig(callbacks) {
12
12
  };
13
13
  }
14
14
 
15
+ // Event handler types for per-presentation event handling
16
+
17
+ // Typed event interfaces
18
+
15
19
  // --- Main Helium Configuration ---
16
20
 
17
21
  // --- Other Existing Types ---
@@ -1 +1 @@
1
- {"version":3,"names":["createCustomPurchaseConfig","callbacks","makePurchase","restorePurchases"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AAOA;;AAEA;;AAUA;AACA,OAAO,SAASA,0BAA0BA,CAACC,SAG1C,EAAwB;EACvB,OAAO;IACLC,YAAY,EAAED,SAAS,CAACC,YAAY;IACpCC,gBAAgB,EAAEF,SAAS,CAACE;EAC9B,CAAC;AACH;;AAEA;;AAmBA","ignoreList":[]}
1
+ {"version":3,"names":["createCustomPurchaseConfig","callbacks","makePurchase","restorePurchases"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AAgBA;;AAEA;;AAOA;AACA,OAAO,SAASA,0BAA0BA,CAACC,SAG1C,EAAwB;EACvB,OAAO;IACLC,YAAY,EAAED,SAAS,CAACC,YAAY;IACpCC,gBAAgB,EAAEF,SAAS,CAACE;EAC9B,CAAC;AACH;;AA+BA;;AAQA;;AA8FA;;AAoBA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"revenuecat.d.ts","sourceRoot":"","sources":["../../../../../src/handlers/revenuecat.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAU3E,wBAAgB,8BAA8B,CAAC,MAAM,CAAC,EAAE;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,oBAAoB,CAOvB;AAED,qBAAa,uBAAuB;IAChC,OAAO,CAAC,yBAAyB,CAAwC;IACzE,OAAO,CAAC,oBAAoB,CAAkB;IAC9C,OAAO,CAAC,qBAAqB,CAA8B;IAE3D,OAAO,CAAC,yBAAyB,CAA6C;gBAElE,MAAM,CAAC,EAAE,MAAM;YAQb,wBAAwB;YAyBxB,wBAAwB;IAQhC,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA+EpE,OAAO,CAAC,eAAe;IAMjB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;CAS7C"}
1
+ {"version":3,"file":"revenuecat.d.ts","sourceRoot":"","sources":["../../../../../src/handlers/revenuecat.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAW3E,wBAAgB,8BAA8B,CAAC,MAAM,CAAC,EAAE;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,oBAAoB,CAMvB;AAED,qBAAa,uBAAuB;IAChC,OAAO,CAAC,yBAAyB,CAAwC;IACzE,OAAO,CAAC,oBAAoB,CAAkB;IAC9C,OAAO,CAAC,qBAAqB,CAA8B;IAE3D,OAAO,CAAC,yBAAyB,CAA6C;gBAElE,MAAM,CAAC,EAAE,MAAM;YAOb,wBAAwB;YA4BxB,wBAAwB;IAQhC,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAiFpE,OAAO,CAAC,eAAe;IAMjB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;CAS7C"}
@@ -1,4 +1,4 @@
1
1
  export { createCustomPurchaseConfig } from './types';
2
- export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, getPaywallInfo, handleDeepLink, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView, } from './native-interface';
3
- export type { HeliumTransactionStatus, HeliumConfig, HeliumUpsellViewProps, } from './types';
2
+ export { initialize, presentUpsell, hideUpsell, hideAllUpsells, getPaywallInfo, handleDeepLink, setRevenueCatAppUserId, HELIUM_CTA_NAMES, NativeHeliumUpsellView, } from './native-interface';
3
+ export type { HeliumTransactionStatus, HeliumConfig, HeliumUpsellViewProps, HeliumPaywallLoadingConfig, TriggerLoadingConfig, PaywallEventHandlers, PaywallOpenEvent, PaywallCloseEvent, PaywallDismissedEvent, PurchaseSucceededEvent, HeliumPaywallEvent, PresentUpsellParams, } from './types';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,EACL,cAAc,EACd,UAAU,EACV,aAAa,EACb,UAAU,EACV,cAAc,EACd,cAAc,EACd,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,uBAAuB,EACvB,YAAY,EACZ,qBAAqB,GACtB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,EACL,UAAU,EACV,aAAa,EACb,UAAU,EACV,cAAc,EACd,cAAc,EACd,cAAc,EACd,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,uBAAuB,EACvB,YAAY,EACZ,qBAAqB,EACrB,0BAA0B,EAC1B,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,SAAS,CAAC"}
@@ -1,33 +1,15 @@
1
- import React from 'react';
2
- import type { HeliumConfig, HeliumUpsellViewProps, HeliumDownloadStatus, PaywallInfo } from './types';
1
+ import type { HeliumConfig, HeliumUpsellViewProps, HeliumDownloadStatus, PaywallInfo, PresentUpsellParams } from './types';
3
2
  export declare const NativeHeliumUpsellView: import("react-native").HostComponent<HeliumUpsellViewProps>;
4
3
  export declare const getDownloadStatus: () => HeliumDownloadStatus;
5
- interface HeliumContextType {
6
- downloadStatus: HeliumDownloadStatus;
7
- setDownloadStatus: (status: HeliumDownloadStatus) => void;
8
- }
9
- export declare const useHelium: () => HeliumContextType;
10
- interface HeliumProviderProps {
11
- children: React.ReactNode;
12
- fallbackView?: React.ComponentType;
13
- }
14
- export declare const HeliumProvider: ({ children, fallbackView }: HeliumProviderProps) => import("react/jsx-runtime").JSX.Element;
15
4
  export declare const initialize: (config: HeliumConfig) => Promise<void>;
16
- export declare const presentUpsell: ({ triggerName, onFallback, }: {
17
- triggerName: string;
18
- onFallback?: () => void;
19
- }) => void;
5
+ export declare const presentUpsell: ({ triggerName, onFallback, eventHandlers, customPaywallTraits, }: PresentUpsellParams) => void;
20
6
  export declare const hideUpsell: () => void;
21
7
  export declare const hideAllUpsells: () => void;
22
8
  export declare const getPaywallInfo: (trigger: string) => Promise<PaywallInfo | undefined>;
23
9
  export declare const handleDeepLink: (url: string | null) => Promise<boolean>;
24
- export declare const UpsellView: React.FC<HeliumUpsellViewProps & {
25
- fallbackViewProps?: Record<string, any>;
26
- fallbackViewWrapperStyles?: Record<string, any>;
27
- }>;
10
+ export declare const setRevenueCatAppUserId: (rcAppUserId: string) => void;
28
11
  export declare const HELIUM_CTA_NAMES: {
29
12
  SCHEDULE_CALL: string;
30
13
  SUBSCRIBE_BUTTON: string;
31
14
  };
32
- export {};
33
15
  //# sourceMappingURL=native-interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"native-interface.d.ts","sourceRoot":"","sources":["../../../../src/native-interface.tsx"],"names":[],"mappings":"AACA,OAAO,KAAoE,MAAM,OAAO,CAAC;AACzF,OAAO,KAAK,EAAE,YAAY,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAOtG,eAAO,MAAM,sBAAsB,6DAAoE,CAAC;AAoBxG,eAAO,MAAM,iBAAiB,4BAA6B,CAAC;AAG5D,UAAU,iBAAiB;IACzB,cAAc,EAAE,oBAAoB,CAAC;IACrC,iBAAiB,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;CAC3D;AAYD,eAAO,MAAM,SAAS,yBAMrB,CAAC;AAEF,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CACpC;AAQD,eAAO,MAAM,cAAc,+BAAgC,mBAAmB,4CAwC7E,CAAC;AAGF,eAAO,MAAM,UAAU,WAAkB,YAAY,kBAuHpD,CAAC;AAGF,eAAO,MAAM,aAAa,iCAGvB;IACD,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB,SAsBA,CAAC;AAEF,eAAO,MAAM,UAAU,YAEtB,CAAC;AAEF,eAAO,MAAM,cAAc,YAE1B,CAAC;AAEF,eAAO,MAAM,cAAc,YAChB,MAAM,KACd,OAAO,CAAC,WAAW,GAAG,SAAS,CAiBjC,CAAC;AAEF,eAAO,MAAM,cAAc,QAAe,MAAM,GAAG,IAAI,KAAG,OAAO,CAAC,OAAO,CASxE,CAAC;AAGF,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,GAAG;IACxD,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACxC,yBAAyB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACjD,CAmCA,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;CAG5B,CAAA"}
1
+ {"version":3,"file":"native-interface.d.ts","sourceRoot":"","sources":["../../../../src/native-interface.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,WAAW,EACX,mBAAmB,EAGpB,MAAM,SAAS,CAAC;AAMjB,eAAO,MAAM,sBAAsB,6DACgC,CAAC;AAMpE,eAAO,MAAM,iBAAiB,4BAA6B,CAAC;AAM5D,eAAO,MAAM,UAAU,WAAkB,YAAY,kBA0HpD,CAAC;AAIF,eAAO,MAAM,aAAa,qEAKvB,mBAAmB,SA6BrB,CAAC;AA+DF,eAAO,MAAM,UAAU,YAEtB,CAAC;AAEF,eAAO,MAAM,cAAc,YAE1B,CAAC;AAEF,eAAO,MAAM,cAAc,YAChB,MAAM,KACd,OAAO,CAAC,WAAW,GAAG,SAAS,CAiBjC,CAAC;AAEF,eAAO,MAAM,cAAc,QAAe,MAAM,GAAG,IAAI,KAAG,OAAO,CAAC,OAAO,CAWxE,CAAC;AAEF,eAAO,MAAM,sBAAsB,gBAAiB,MAAM,SAEzD,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;CAG5B,CAAC"}