rn-onboarding-analytics 1.6.0 → 1.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -28,14 +28,25 @@ npm install rn-onboarding-analytics
28
28
  The library requires these dependencies for animations and safe area context:
29
29
 
30
30
  ```sh
31
- npm install react-native-reanimated react-native-safe-area-context expo-constants expo-localization
31
+ npm install react-native-reanimated react-native-safe-area-context expo-constants expo-localization react-native-iap
32
32
  ```
33
33
 
34
+ ```
35
+ Add on the babel config:
36
+ ```
37
+
38
+ plugins: [
39
+ // should be always the last plugin
40
+ 'react-native-reanimated/plugin',
41
+ ],
42
+
43
+ ````
44
+
34
45
  Optionally for image support, install one of:
35
46
 
36
47
  ```sh
37
48
  npm install expo-image
38
- ```
49
+ ````
39
50
 
40
51
  ```sh
41
52
  npm install react-native-svg
@@ -348,6 +359,112 @@ skipButton={({ onPress }) => (
348
359
  )}
349
360
  ```
350
361
 
362
+ #### `paywallPanel`
363
+
364
+ **Type:** `OnboardingPaywallPanelConfig`
365
+ **Optional** - Configuration for the paywall screen shown after the last step.
366
+
367
+ The paywall panel can be either:
368
+
369
+ - **Configuration object**: Pass an object with properties to use the default paywall
370
+ - **Custom component**: Pass a component that receives `onPressContinue` callback
371
+
372
+ **Option 1: Configuration Object**
373
+
374
+ You can use the streamlined configuration by passing `products` with the required parameters. The `SKus` can be defined either as a platform-specific object or a simple array of strings.
375
+
376
+ ```tsx
377
+ paywallPanel={{
378
+ title: "Unlock Premium",
379
+ subtitle: "Get access to all features",
380
+ button: "Subscribe",
381
+ image: require('./assets/paywall.png'),
382
+ onPressContinue: (planId) => console.log('Purchased:', planId),
383
+ // Optional links
384
+ onRestorePurchase: {
385
+ text: "Restore",
386
+ onPress: () => console.log("Restore clicked"),
387
+ },
388
+ onTerms: {
389
+ text: "Terms",
390
+ onPress: () => console.log("Terms clicked"),
391
+ },
392
+ onPrivacy: {
393
+ text: "Privacy",
394
+ onPress: () => console.log("Privacy clicked"),
395
+ },
396
+ products: [
397
+ {
398
+ // Platform specific SKUs (Recommended)
399
+ SKus: {
400
+ ios: ['pro_monthly_ios'],
401
+ android: ['pro_monthly_android']
402
+ },
403
+ title: "Monthly Pro",
404
+ featues: ["Unlimited Access", "No Ads"],
405
+ sortOrder: 1
406
+ },
407
+ {
408
+ // Simple array (The library will attempt to match these SKus)
409
+ SKus: ['pro_yearly'],
410
+ title: "Yearly Pro",
411
+ featues: ["Unlimited Access", "No Ads", "Save 20%"],
412
+ sortOrder: 2
413
+ }
414
+ ]
415
+ }}
416
+ ```
417
+
418
+ **Option 2: Custom Component**
419
+
420
+ For complete control, you can pass a custom component. This is useful if you want to wrap the paywall in your own layout or use `OnboardingPaywallPanel` directly with custom logic.
421
+
422
+ ```tsx
423
+ import { OnboardingPaywallPanel } from 'rn-onboarding-analytics';
424
+
425
+ function PaywallScreen({ onPressContinue }) {
426
+ return (
427
+ <OnboardingPaywallPanel
428
+ title="Unlock Premium Features"
429
+ subtitle="Get unlimited lists and more"
430
+ image={require('./assets/paywall.png')}
431
+ onPressContinue={onPressContinue}
432
+ products={[
433
+ {
434
+ SKus: { ios: ['weeklyDose'] },
435
+ title: 'Weekly',
436
+ featues: ['Unlimited lists', 'Priority support'],
437
+ sortOrder: 1,
438
+ },
439
+ ]}
440
+ onRestorePurchase={{
441
+ text: 'Restore',
442
+ onPress: () => console.log('Restore'),
443
+ }}
444
+ />
445
+ );
446
+ }
447
+
448
+ // In your Onboarding usage:
449
+ <Onboarding
450
+ // ...
451
+ paywallPanel={PaywallScreen}
452
+ />;
453
+ ```
454
+
455
+ **Legacy Configuration:**
456
+ You can also manually provide `plans` and `subscriptionSkus`:
457
+
458
+ ```tsx
459
+ paywallPanel={{
460
+ // ...
461
+ plans: [
462
+ { id: 'monthly', title: 'Monthly', price: '$9.99', features: [...] }
463
+ ],
464
+ subscriptionSkus: { ios: [...], android: [...] }
465
+ }}
466
+ ```
467
+
351
468
  ## 💡 Best Practices
352
469
 
353
470
  ### Image Consistency
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","Image","Platform","StyleSheet","useWindowDimensions","Animated","interpolate","useDerivedValue","useAnimatedStyle","withTiming","Easing","useSharedValue","useTheme","useMeasureHeight","ExpoImage","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","OnboardingImageContainer","currentStep","currentStepImage","position","animationDuration","backgroundSpillProgress","introPanel","stepPanel","screenHeight","background","theme","image","styles","createStyles","extraPadding","OS","width","screenWidth","bottomPanelHeight","height","backgroundSpillDistance","value","imageWrapperHeight","imageWrapperAnimation","imageTargetY","topSafe","insets","top","imageH","modalTop","yBottom","shouldClampTop","Math","max","hasMounted","imageAnimation","translateY","duration","easing","out","cubic","sideEdges","transform","maxWidth","backgroundAnimation","topEdge","sideEdge","left","right","bottom","borderRadius","children","View","style","colorBg","imageWrapper","ref","source","contentFit","transition","imageStyle","resizeMode","fadeDuration","create","backgroundColor","bg","primary","overflow","alignSelf","alignItems"],"sourceRoot":"../../../../src","sources":["spill-onboarding/components/OnboardingImageContainer.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","Image","Platform","StyleSheet","useWindowDimensions","Animated","interpolate","useDerivedValue","useAnimatedStyle","withTiming","Easing","useSharedValue","useTheme","useMeasureHeight","ExpoImage","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","OnboardingImageContainer","currentStep","currentStepImage","position","animationDuration","backgroundSpillProgress","introPanel","stepPanel","screenHeight","background","theme","image","styles","createStyles","extraPadding","OS","width","screenWidth","bottomPanelHeight","height","backgroundSpillDistance","value","imageWrapperHeight","imageWrapperAnimation","imageTargetY","topSafe","insets","top","imageH","modalTop","yBottom","shouldClampTop","Math","max","hasMounted","imageAnimation","translateY","duration","easing","out","cubic","sideEdges","transform","maxWidth","backgroundAnimation","topEdge","sideEdge","left","right","bottom","borderRadius","children","View","style","colorBg","imageWrapper","ref","source","contentFit","transition","imageStyle","resizeMode","fadeDuration","create","backgroundColor","bg","primary","overflow","alignSelf","alignItems"],"sourceRoot":"../../../../src","sources":["spill-onboarding/components/OnboardingImageContainer.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
 
3
- import { useMemo, useState } from 'react';
4
- import { Image, StyleSheet, Text, View, TouchableOpacity, ScrollView, Dimensions } from 'react-native';
3
+ import { useMemo, useState, useEffect } from 'react';
4
+ import { Image, StyleSheet, Text, View, TouchableOpacity, ScrollView, Dimensions, Platform } from 'react-native';
5
+ import { initConnection, getSubscriptions, getProducts, requestSubscription, requestPurchase, endConnection } from 'react-native-iap';
5
6
  import { useTheme } from "../../utils/ThemeContext.js";
6
7
  import PrimaryButton from "../buttons/PrimaryButton.js";
7
8
  import { fontSizes, lineHeights } from "../../utils/fontStyles.js";
@@ -15,18 +16,169 @@ function OnboardingPaywallPanel({
15
16
  subtitle,
16
17
  button,
17
18
  image,
18
- plans,
19
+ plans = [],
20
+ products,
19
21
  helperTextContinue,
20
22
  onRestorePurchase,
21
23
  onTerms,
22
- onPrivacy
24
+ onPrivacy,
25
+ subscriptionSkus
23
26
  }) {
24
27
  const {
25
28
  theme
26
29
  } = useTheme();
27
30
  const styles = useMemo(() => createStyles(theme), [theme]);
28
- const [selectedPlanId, setSelectedPlanId] = useState(plans[0]?.id || '');
29
- const selectedPlan = plans.find(p => p.id === selectedPlanId);
31
+
32
+ // Initialize selectedPlanId based on available configuration
33
+ const initialPlanId = useMemo(() => {
34
+ if (products && products.length > 0) {
35
+ // Sort first to pick the first one correctly if needed,
36
+ // but simplistic approach: pick the first product's first SKU for the current platform
37
+ const firstProduct = products[0];
38
+ if (!firstProduct) return '';
39
+ let firstSku = '';
40
+ if (Array.isArray(firstProduct.SKus)) {
41
+ firstSku = firstProduct.SKus[0] || '';
42
+ } else {
43
+ const skusObj = firstProduct.SKus;
44
+ const skus = Platform.select({
45
+ ios: skusObj.ios,
46
+ android: skusObj.android
47
+ });
48
+ firstSku = skus?.[0] || '';
49
+ }
50
+ return firstSku;
51
+ }
52
+ return plans?.[0]?.id || '';
53
+ }, [products, plans]);
54
+ const [selectedPlanId, setSelectedPlanId] = useState(initialPlanId);
55
+ const [iapProducts, setIapProducts] = useState([]);
56
+ useEffect(() => {
57
+ let isMounted = true;
58
+ const fetchIapProducts = async skus => {
59
+ try {
60
+ await initConnection();
61
+ if (!isMounted) return;
62
+
63
+ // Fetch both subscriptions and products to cover all bases
64
+ const [subs, prods] = await Promise.all([getSubscriptions({
65
+ skus
66
+ }).catch(() => []), getProducts({
67
+ skus
68
+ }).catch(() => [])]);
69
+ if (isMounted) {
70
+ // Filter out duplicates if any (unlikely but safe)
71
+ const allItems = [...subs, ...prods];
72
+ const uniqueItems = Array.from(new Map(allItems.map(item => [item.productId, item])).values());
73
+ setIapProducts(uniqueItems);
74
+ }
75
+ } catch (err) {
76
+ console.warn('IAP Error:', err);
77
+ }
78
+ };
79
+ if (products && products.length > 0) {
80
+ // Collect all SKUs from all products for current platform
81
+ const allSkus = products.flatMap(p => {
82
+ if (Array.isArray(p.SKus)) {
83
+ return p.SKus;
84
+ }
85
+ const skusObj = p.SKus;
86
+ const skus = Platform.select({
87
+ ios: skusObj.ios,
88
+ android: skusObj.android
89
+ });
90
+ return skus || [];
91
+ });
92
+ if (allSkus.length > 0) {
93
+ fetchIapProducts(allSkus);
94
+ }
95
+ } else if (subscriptionSkus) {
96
+ const skus = Platform.select({
97
+ ios: subscriptionSkus.ios,
98
+ android: subscriptionSkus.android
99
+ });
100
+ if (skus && skus.length > 0) {
101
+ fetchIapProducts(skus);
102
+ }
103
+ }
104
+ return () => {
105
+ isMounted = false;
106
+ if (subscriptionSkus || products) {
107
+ endConnection();
108
+ }
109
+ };
110
+ }, [subscriptionSkus, products]);
111
+ const displayPlans = useMemo(() => {
112
+ // New Configuration Mode
113
+ if (products && products.length > 0) {
114
+ const mappedPlans = products.map(config => {
115
+ // Find if any of the product's SKUs matches a fetched IAP product
116
+ let targetSkus = [];
117
+ if (Array.isArray(config.SKus)) {
118
+ targetSkus = config.SKus;
119
+ } else {
120
+ const skusObj = config.SKus;
121
+ targetSkus = Platform.select({
122
+ ios: skusObj.ios,
123
+ android: skusObj.android
124
+ }) || [];
125
+ }
126
+ const iapProduct = iapProducts.find(p => targetSkus.includes(p.productId));
127
+ let price = '...'; // Default loading state
128
+ let id = targetSkus[0] || ''; // Default ID to first SKU
129
+
130
+ if (iapProduct) {
131
+ id = iapProduct.productId;
132
+ if (Platform.OS === 'ios') {
133
+ price = iapProduct.localizedPrice || price;
134
+ } else if (Platform.OS === 'android') {
135
+ const offer = iapProduct.subscriptionOfferDetails?.[0];
136
+ price = offer?.pricingPhases?.pricingPhaseList?.[0]?.formattedPrice || iapProduct.localizedPrice || price;
137
+ }
138
+ }
139
+ return {
140
+ id,
141
+ title: config.title,
142
+ price,
143
+ // features with typo 'featues' mapped to correct prop 'features'
144
+ features: config.featues,
145
+ interval: '',
146
+ // Could be inferred from IAP if needed
147
+ sortOrder: config.sortOrder
148
+ };
149
+ });
150
+
151
+ // Sort based on sortOrder
152
+ return mappedPlans.sort((a, b) => {
153
+ if (typeof a.sortOrder === 'number' && typeof b.sortOrder === 'number') {
154
+ return a.sortOrder - b.sortOrder;
155
+ }
156
+ return String(a.sortOrder).localeCompare(String(b.sortOrder));
157
+ });
158
+ }
159
+
160
+ // Legacy Mode
161
+ if (iapProducts.length === 0) return plans;
162
+ return plans.map(plan => {
163
+ const iapProduct = iapProducts.find(p => p.productId === plan.id);
164
+ if (iapProduct) {
165
+ let price = plan.price;
166
+ if (Platform.OS === 'ios') {
167
+ price = iapProduct.localizedPrice || plan.price;
168
+ } else if (Platform.OS === 'android') {
169
+ // Android specific logic for RNIap v12+
170
+ const offer = iapProduct.subscriptionOfferDetails?.[0];
171
+ price = offer?.pricingPhases?.pricingPhaseList?.[0]?.formattedPrice || iapProduct.localizedPrice || plan.price;
172
+ }
173
+ return {
174
+ ...plan,
175
+ price
176
+ };
177
+ }
178
+ return plan;
179
+ });
180
+ }, [products, plans, iapProducts]);
181
+ const selectedPlan = displayPlans.find(p => p.id === selectedPlanId);
30
182
  const renderTitle = () => {
31
183
  if (!title) return null;
32
184
  if (typeof title === 'string') {
@@ -66,7 +218,7 @@ function OnboardingPaywallPanel({
66
218
  const renderPlans = () => {
67
219
  return /*#__PURE__*/_jsx(View, {
68
220
  style: styles.plansContainer,
69
- children: plans.map(plan => {
221
+ children: displayPlans.map(plan => {
70
222
  const isSelected = plan.id === selectedPlanId;
71
223
  return /*#__PURE__*/_jsxs(TouchableOpacity, {
72
224
  style: [styles.planCard, isSelected && styles.planCardSelected],
@@ -89,7 +241,80 @@ function OnboardingPaywallPanel({
89
241
  });
90
242
  };
91
243
  const renderButton = () => {
92
- const handlePress = () => onPressContinue(selectedPlanId);
244
+ const handlePress = async () => {
245
+ console.log('OnboardingPaywallPanel: handlePress', {
246
+ selectedPlanId
247
+ });
248
+ if ((subscriptionSkus || products) && selectedPlanId) {
249
+ try {
250
+ const iapProduct = iapProducts.find(p => p.productId === selectedPlanId);
251
+ if (iapProduct) {
252
+ // Determine if it's a subscription or one-time purchase
253
+ // Subscriptions usually have 'subscriptionPeriodNumberIOS' or 'subscriptionOfferDetails'
254
+ const isSubscription = 'subscriptionPeriodNumberIOS' in iapProduct || 'subscriptionOfferDetails' in iapProduct;
255
+ console.log('OnboardingPaywallPanel: Processing purchase', {
256
+ isSubscription,
257
+ productId: iapProduct.productId
258
+ });
259
+ if (isSubscription) {
260
+ // For Android, we might need offerToken if available
261
+ let offerToken;
262
+ if (Platform.OS === 'android') {
263
+ offerToken = iapProduct.subscriptionOfferDetails?.[0]?.offerToken;
264
+ }
265
+ console.log('OnboardingPaywallPanel: Requesting subscription', {
266
+ sku: selectedPlanId,
267
+ offerToken
268
+ });
269
+ await requestSubscription({
270
+ sku: selectedPlanId,
271
+ ...(offerToken && {
272
+ subscriptionOffers: [{
273
+ sku: selectedPlanId,
274
+ offerToken
275
+ }]
276
+ })
277
+ });
278
+ } else {
279
+ console.log('OnboardingPaywallPanel: Requesting one-time purchase', {
280
+ sku: selectedPlanId
281
+ });
282
+ await requestPurchase({
283
+ sku: selectedPlanId
284
+ });
285
+ }
286
+ } else {
287
+ // Fallback if product not found in fetched list but ID exists
288
+ // Try subscription first as default legacy behavior
289
+ console.log('OnboardingPaywallPanel: Product not in IAP list, attempting fallback purchase', selectedPlanId);
290
+ try {
291
+ console.log('OnboardingPaywallPanel: Fallback - attempting requestSubscription', selectedPlanId);
292
+ await requestSubscription({
293
+ sku: selectedPlanId
294
+ });
295
+ } catch (subErr) {
296
+ console.warn('OnboardingPaywallPanel: Fallback requestSubscription failed', subErr);
297
+ console.log('OnboardingPaywallPanel: Fallback - attempting requestPurchase', selectedPlanId);
298
+ try {
299
+ await requestPurchase({
300
+ sku: selectedPlanId
301
+ });
302
+ } catch (purchErr) {
303
+ console.warn('OnboardingPaywallPanel: Fallback requestPurchase failed', purchErr);
304
+ throw purchErr;
305
+ }
306
+ }
307
+ }
308
+ } catch (err) {
309
+ console.warn('Purchase Error:', err);
310
+ if (typeof err === 'object') {
311
+ console.warn('Purchase Error Details:', JSON.stringify(err, null, 2));
312
+ }
313
+ return;
314
+ }
315
+ }
316
+ onPressContinue(selectedPlanId);
317
+ };
93
318
  if (typeof button === 'string') {
94
319
  return /*#__PURE__*/_jsx(PrimaryButton, {
95
320
  text: button,
@@ -176,22 +401,22 @@ const createStyles = theme => StyleSheet.create({
176
401
  },
177
402
  sheetContainer: {
178
403
  flex: 1,
179
- marginTop: -6,
404
+ marginTop: -24,
180
405
  backgroundColor: theme.bg.secondary,
181
- borderTopLeftRadius: 32,
182
- borderTopRightRadius: 32,
183
- overflow: 'hidden'
406
+ borderTopLeftRadius: 30,
407
+ borderTopRightRadius: 30,
408
+ overflow: 'scroll'
184
409
  },
185
410
  container: {
186
411
  flex: 1
187
412
  },
188
413
  contentContainer: {
189
- paddingBottom: 40
414
+ paddingBottom: 24
190
415
  },
191
416
  footerContainer: {
192
- paddingHorizontal: 16,
193
- paddingBottom: 40,
194
- paddingTop: 16,
417
+ paddingHorizontal: 8,
418
+ marginBottom: 40,
419
+ paddingTop: 4,
195
420
  backgroundColor: theme.bg.secondary
196
421
  },
197
422
  contentWrapper: {
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","useState","Image","StyleSheet","Text","View","TouchableOpacity","ScrollView","Dimensions","useTheme","PrimaryButton","fontSizes","lineHeights","jsx","_jsx","jsxs","_jsxs","height","screenHeight","get","OnboardingPaywallPanel","onPressContinue","title","subtitle","button","image","plans","helperTextContinue","onRestorePurchase","onTerms","onPrivacy","theme","styles","createStyles","selectedPlanId","setSelectedPlanId","id","selectedPlan","find","p","renderTitle","style","text","line1","titleText","children","renderSubtitle","line2","subtitleText","renderFeatures","features","length","featuresContainer","map","feature","index","featureRow","checkIcon","featureText","renderPlans","plansContainer","plan","isSelected","planCard","planCardSelected","onPress","activeOpacity","planTitle","planTitleSelected","interval","planInterval","planIntervalSelected","planPrice","planPriceSelected","price","renderButton","handlePress","renderFooterLinks","footerLinksContainer","footerLinkText","footerLinkSeparator","mainContainer","headerImageContainer","source","resizeMode","sheetContainer","container","contentContainerStyle","contentContainer","showsVerticalScrollIndicator","bounces","contentWrapper","headerContainer","footerContainer","helperText","create","flex","backgroundColor","bg","secondary","width","marginTop","borderTopLeftRadius","borderTopRightRadius","overflow","paddingBottom","paddingHorizontal","paddingTop","alignItems","marginBottom","fontSize","xxl","lineHeight","textAlign","color","primary","md","fontFamily","fonts","introTitle","fontWeight","introSubtitle","flexDirection","accent","lg","marginRight","gap","justifyContent","padding","minHeight","borderRadius","borderWidth","borderColor","label","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","sm","xs"],"sourceRoot":"../../../../src","sources":["spill-onboarding/components/OnboardingPaywallPanel.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","useState","useEffect","Image","StyleSheet","Text","View","TouchableOpacity","ScrollView","Dimensions","Platform","initConnection","getSubscriptions","getProducts","requestSubscription","requestPurchase","endConnection","useTheme","PrimaryButton","fontSizes","lineHeights","jsx","_jsx","jsxs","_jsxs","height","screenHeight","get","OnboardingPaywallPanel","onPressContinue","title","subtitle","button","image","plans","products","helperTextContinue","onRestorePurchase","onTerms","onPrivacy","subscriptionSkus","theme","styles","createStyles","initialPlanId","length","firstProduct","firstSku","Array","isArray","SKus","skusObj","skus","select","ios","android","id","selectedPlanId","setSelectedPlanId","iapProducts","setIapProducts","isMounted","fetchIapProducts","subs","prods","Promise","all","catch","allItems","uniqueItems","from","Map","map","item","productId","values","err","console","warn","allSkus","flatMap","p","displayPlans","mappedPlans","config","targetSkus","iapProduct","find","includes","price","OS","localizedPrice","offer","subscriptionOfferDetails","pricingPhases","pricingPhaseList","formattedPrice","features","featues","interval","sortOrder","sort","a","b","String","localeCompare","plan","selectedPlan","renderTitle","style","text","line1","titleText","children","renderSubtitle","line2","subtitleText","renderFeatures","featuresContainer","feature","index","featureRow","checkIcon","featureText","renderPlans","plansContainer","isSelected","planCard","planCardSelected","onPress","activeOpacity","planTitle","planTitleSelected","planInterval","planIntervalSelected","planPrice","planPriceSelected","renderButton","handlePress","log","isSubscription","offerToken","sku","subscriptionOffers","subErr","purchErr","JSON","stringify","renderFooterLinks","footerLinksContainer","footerLinkText","footerLinkSeparator","mainContainer","headerImageContainer","source","resizeMode","sheetContainer","container","contentContainerStyle","contentContainer","showsVerticalScrollIndicator","bounces","contentWrapper","headerContainer","footerContainer","helperText","create","flex","backgroundColor","bg","secondary","width","marginTop","borderTopLeftRadius","borderTopRightRadius","overflow","paddingBottom","paddingHorizontal","marginBottom","paddingTop","alignItems","fontSize","xxl","lineHeight","textAlign","color","primary","md","fontFamily","fonts","introTitle","fontWeight","introSubtitle","flexDirection","accent","lg","marginRight","gap","justifyContent","padding","minHeight","borderRadius","borderWidth","borderColor","label","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","sm","xs"],"sourceRoot":"../../../../src","sources":["spill-onboarding/components/OnboardingPaywallPanel.tsx"],"mappings":"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","ignoreList":[]}
@@ -150,9 +150,16 @@ function SpillOnboarding({
150
150
  onPressContinue: onPaywallContinue
151
151
  });
152
152
  }
153
+ const {
154
+ onPressContinue,
155
+ ...otherProps
156
+ } = paywallPanelProps;
157
+
158
+ // Use the provided onPressContinue if available, otherwise use default
159
+ const handleContinue = onPressContinue || onPaywallContinue;
153
160
  return /*#__PURE__*/_jsx(OnboardingPaywallPanel, {
154
- onPressContinue: onPaywallContinue,
155
- ...paywallPanelProps
161
+ onPressContinue: handleContinue,
162
+ ...otherProps
156
163
  });
157
164
  };
158
165
  const renderStepContent = () => {
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","useState","useEffect","useCallback","View","BackHandler","Platform","StyleSheet","useTheme","OnboardingIntroPanel","OnboardingPaywallPanel","useSharedValue","withTiming","OnboardingStepPanel","OnboardingStepContainer","OnboardingImageContainer","OnboardingModal","useMeasureHeight","trackEvent","jsx","_jsx","jsxs","_jsxs","SpillOnboarding","animationDuration","introPanel","introPanelProps","steps","onComplete","onSkip","onStepChange","onStepChangeProps","showCloseButton","showBackButton","wrapInModalOnWeb","background","skipButton","apiKey","isDev","paywallPanel","paywallPanelProps","theme","styles","createStyles","backgroundSpillProgress","step","setStep","currentStep","undefined","firstStep","isPaywall","length","stepNumber","getStepName","index","s","title","fromStepName","toStepName","console","log","from","to","from_index","to_index","from_step","to_step","backHandler","addEventListener","set","duration","setTimeout","remove","stepPanel","screen","onPressStart","onNextPress","onBackPress","renderIntroPanel","subtitle","button","image","onPaywallContinue","planId","plan_id","renderPaywallPanel","onPressContinue","renderStepContent","component","onNext","onBack","isLast","label","description","buttonLabel","buttonPrimary","currentStepImage","onboardingContent","style","container","ref","children","bottomPanel","position","screenHeight","height","fullScreenPanel","OS","create","flex","backgroundColor","bg","secondary","paddingHorizontal","paddingBottom","insets","bottom","left","right","zIndex"],"sourceRoot":"../../../src","sources":["spill-onboarding/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","useState","useEffect","useCallback","View","BackHandler","Platform","StyleSheet","useTheme","OnboardingIntroPanel","OnboardingPaywallPanel","useSharedValue","withTiming","OnboardingStepPanel","OnboardingStepContainer","OnboardingImageContainer","OnboardingModal","useMeasureHeight","trackEvent","jsx","_jsx","jsxs","_jsxs","SpillOnboarding","animationDuration","introPanel","introPanelProps","steps","onComplete","onSkip","onStepChange","onStepChangeProps","showCloseButton","showBackButton","wrapInModalOnWeb","background","skipButton","apiKey","isDev","paywallPanel","paywallPanelProps","theme","styles","createStyles","backgroundSpillProgress","step","setStep","currentStep","undefined","firstStep","isPaywall","length","stepNumber","getStepName","index","s","title","fromStepName","toStepName","console","log","from","to","from_index","to_index","from_step","to_step","backHandler","addEventListener","set","duration","setTimeout","remove","stepPanel","screen","onPressStart","onNextPress","onBackPress","renderIntroPanel","subtitle","button","image","onPaywallContinue","planId","plan_id","renderPaywallPanel","onPressContinue","otherProps","handleContinue","renderStepContent","component","onNext","onBack","isLast","label","description","buttonLabel","buttonPrimary","currentStepImage","onboardingContent","style","container","ref","children","bottomPanel","position","screenHeight","height","fullScreenPanel","OS","create","flex","backgroundColor","bg","secondary","paddingHorizontal","paddingBottom","insets","bottom","left","right","zIndex"],"sourceRoot":"../../../src","sources":["spill-onboarding/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"OnboardingImageContainer.d.ts","sourceRoot":"","sources":["../../../../../src/spill-onboarding/components/OnboardingImageContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAEL,KAAK,mBAAmB,EAIzB,MAAM,cAAc,CAAC;AACtB,OAAiB,EAMf,KAAK,WAAW,EAEjB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG/C,UAAU,6BAA6B;IACrC,WAAW,EAAE,cAAc,GAAG,SAAS,CAAC;IACxC,gBAAgB,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAClD,QAAQ,EAAE,KAAK,GAAG,QAAQ,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uBAAuB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7C,UAAU,EAAE,GAAG,CAAC;IAChB,SAAS,EAAE,GAAG,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,SAAS,CAAC;CAC9B;AAED,iBAAS,wBAAwB,CAAC,EAChC,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,iBAAiB,EACjB,uBAAuB,EACvB,UAAU,EACV,SAAS,EACT,YAAY,EACZ,UAAU,GACX,EAAE,6BAA6B,2CA6G/B;AAED,eAAe,wBAAwB,CAAC"}
1
+ {"version":3,"file":"OnboardingImageContainer.d.ts","sourceRoot":"","sources":["../../../../../src/spill-onboarding/components/OnboardingImageContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEhD,OAAO,EAEL,KAAK,mBAAmB,EAIzB,MAAM,cAAc,CAAC;AACtB,OAAiB,EAMf,KAAK,WAAW,EAEjB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG/C,UAAU,6BAA6B;IACrC,WAAW,EAAE,cAAc,GAAG,SAAS,CAAC;IACxC,gBAAgB,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAClD,QAAQ,EAAE,KAAK,GAAG,QAAQ,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uBAAuB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7C,UAAU,EAAE,GAAG,CAAC;IAChB,SAAS,EAAE,GAAG,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,SAAS,CAAC;CAC9B;AAED,iBAAS,wBAAwB,CAAC,EAChC,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,iBAAiB,EACjB,uBAAuB,EACvB,UAAU,EACV,SAAS,EACT,YAAY,EACZ,UAAU,GACX,EAAE,6BAA6B,2CA6G/B;AAED,eAAe,wBAAwB,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import type { OnboardingPaywallPanelProps } from '../types';
2
- declare function OnboardingPaywallPanel({ onPressContinue, title, subtitle, button, image, plans, helperTextContinue, onRestorePurchase, onTerms, onPrivacy, }: OnboardingPaywallPanelProps): import("react/jsx-runtime").JSX.Element;
2
+ declare function OnboardingPaywallPanel({ onPressContinue, title, subtitle, button, image, plans, products, helperTextContinue, onRestorePurchase, onTerms, onPrivacy, subscriptionSkus, }: OnboardingPaywallPanelProps): import("react/jsx-runtime").JSX.Element;
3
3
  export default OnboardingPaywallPanel;
4
4
  //# sourceMappingURL=OnboardingPaywallPanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OnboardingPaywallPanel.d.ts","sourceRoot":"","sources":["../../../../../src/spill-onboarding/components/OnboardingPaywallPanel.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAI5D,iBAAS,sBAAsB,CAAC,EAC9B,eAAe,EACf,KAAK,EACL,QAAQ,EACR,MAAM,EACN,KAAK,EACL,KAAK,EACL,kBAAkB,EAClB,iBAAiB,EACjB,OAAO,EACP,SAAS,GACV,EAAE,2BAA2B,2CAmL7B;AAED,eAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"OnboardingPaywallPanel.d.ts","sourceRoot":"","sources":["../../../../../src/spill-onboarding/components/OnboardingPaywallPanel.tsx"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,2BAA2B,EAAe,MAAM,UAAU,CAAC;AAIzE,iBAAS,sBAAsB,CAAC,EAC9B,eAAe,EACf,KAAK,EACL,QAAQ,EACR,MAAM,EACN,KAAK,EACL,KAAU,EACV,QAAQ,EACR,kBAAkB,EAClB,iBAAiB,EACjB,OAAO,EACP,SAAS,EACT,gBAAgB,GACjB,EAAE,2BAA2B,2CA4b7B;AAED,eAAe,sBAAsB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/spill-onboarding/index.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AAK/C,iBAAS,eAAe,CAAC,EACvB,iBAAuB,EACvB,UAAU,EAAE,eAAe,EAC3B,KAAK,EACL,UAAU,EACV,MAAM,EACN,YAAY,EAAE,iBAAiB,EAC/B,eAAsB,EACtB,cAAqB,EACrB,gBAAuB,EACvB,UAAU,EACV,UAAU,EACV,MAAM,EACN,KAAK,EACL,YAAY,EAAE,iBAAiB,GAChC,EAAE,eAAe,2CA6PjB;AAED,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/spill-onboarding/index.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AAK/C,iBAAS,eAAe,CAAC,EACvB,iBAAuB,EACvB,UAAU,EAAE,eAAe,EAC3B,KAAK,EACL,UAAU,EACV,MAAM,EACN,YAAY,EAAE,iBAAiB,EAC/B,eAAsB,EACtB,cAAqB,EACrB,gBAAuB,EACvB,UAAU,EACV,UAAU,EACV,MAAM,EACN,KAAK,EACL,YAAY,EAAE,iBAAiB,GAChC,EAAE,eAAe,2CAkQjB;AAED,eAAe,eAAe,CAAC"}
@@ -200,6 +200,10 @@ export interface OnboardingProps {
200
200
  */
201
201
  paywallPanel?: OnboardingPaywallPanelConfig;
202
202
  }
203
+ export interface PlatformSku {
204
+ ios?: string[];
205
+ android?: string[];
206
+ }
203
207
  export interface PaywallPlan {
204
208
  id: string;
205
209
  title: string;
@@ -207,6 +211,19 @@ export interface PaywallPlan {
207
211
  interval?: string;
208
212
  features?: string[];
209
213
  }
214
+ /**
215
+ * Simplified configuration for a single paywall product/plan.
216
+ */
217
+ export interface PaywallProductConfig {
218
+ /** SKUs for different platforms. */
219
+ SKus: PlatformSku | string[];
220
+ /** Main product title/name. */
221
+ title: string;
222
+ /** Array of product features. */
223
+ featues: string[];
224
+ /** Numeric or alphanumeric sorting preference. */
225
+ sortOrder: number | string;
226
+ }
210
227
  /**
211
228
  * Props for the paywall panel.
212
229
  */
@@ -217,8 +234,16 @@ export interface OnboardingPaywallPanelProps {
217
234
  title?: string | ReactNode;
218
235
  /** Subtitle content. */
219
236
  subtitle?: string | ReactNode;
220
- /** List of plans to display. */
221
- plans: PaywallPlan[];
237
+ /**
238
+ * List of plans to display.
239
+ * Required if `products` is not provided.
240
+ */
241
+ plans?: PaywallPlan[];
242
+ /**
243
+ * Simplified configuration for paywall products.
244
+ * If provided, handles fetching and displaying products automatically.
245
+ */
246
+ products?: PaywallProductConfig[];
222
247
  /**
223
248
  * Button content. Either a simple string label or a render function.
224
249
  */
@@ -244,8 +269,14 @@ export interface OnboardingPaywallPanelProps {
244
269
  text?: string;
245
270
  onPress: () => void;
246
271
  };
272
+ /**
273
+ * SKUs for In-App Purchases (Subscriptions).
274
+ * If provided, the component will attempt to fetch product details from the store
275
+ * using react-native-iap and handle purchases.
276
+ */
277
+ subscriptionSkus?: PlatformSku;
247
278
  }
248
- type OnboardingPaywallPanelConfig = Omit<OnboardingPaywallPanelProps, 'onPressContinue'> | (({ onPressContinue, }: {
279
+ type OnboardingPaywallPanelConfig = OnboardingPaywallPanelProps | (({ onPressContinue, }: {
249
280
  onPressContinue: (planId: string) => void;
250
281
  }) => ReactNode);
251
282
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/spill-onboarding/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/spill-onboarding/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rn-onboarding-analytics",
3
- "version": "1.6.0",
3
+ "version": "1.7.1",
4
4
  "description": "Onboarding/tutorial flow for React Native with analytics.",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -38,7 +38,8 @@
38
38
  "prepare": "bob build",
39
39
  "prepack": "sed -i '' '1s|.*|![Banner](assets/banner.png)|' README.md",
40
40
  "postpack": "git checkout README.md",
41
- "release": "release-it --only-version"
41
+ "release": "release-it --only-version",
42
+ "watch:yalc": "nodemon --watch src --ext ts,tsx,js,json --exec 'npm run prepare && yalc push'"
42
43
  },
43
44
  "keywords": [
44
45
  "react-native",
@@ -77,14 +78,16 @@
77
78
  "eslint-plugin-prettier": "^5.5.4",
78
79
  "expo-image": "^3.0.8",
79
80
  "jest": "^29.7.0",
80
- "prettier": "^3.6.2",
81
+ "nodemon": "^3.1.11",
82
+ "prettier": "^3.7.4",
81
83
  "react": "19.1.0",
82
84
  "react-native": "0.81.4",
83
85
  "react-native-builder-bob": "^0.40.13",
86
+ "react-native-iap": "^12.16.1",
84
87
  "react-native-reanimated": "4",
85
88
  "react-native-safe-area-context": "^5.6.1",
86
- "react-native-worklets": "^0.5.1",
87
89
  "react-native-svg": "^15.13.0",
90
+ "react-native-worklets": "^0.5.1",
88
91
  "release-it": "^19.0.4",
89
92
  "typescript": "5.6.3"
90
93
  },
@@ -92,6 +95,7 @@
92
95
  "expo-image": "*",
93
96
  "react": "*",
94
97
  "react-native": "*",
98
+ "react-native-iap": "*",
95
99
  "react-native-reanimated": "*",
96
100
  "react-native-safe-area-context": "*",
97
101
  "react-native-svg": "*"
@@ -1,4 +1,5 @@
1
1
  import { useMemo, type ReactNode } from 'react';
2
+ import type { ImageProps as ExpoImageProps } from 'expo-image';
2
3
  import {
3
4
  Image,
4
5
  type ImageSourcePropType,
@@ -134,7 +135,7 @@ function OnboardingImageContainer({
134
135
  <Animated.View style={[styles.image, imageAnimation]} ref={image.ref}>
135
136
  {ExpoImage ? (
136
137
  <ExpoImage
137
- source={currentStepImage}
138
+ source={currentStepImage as ExpoImageProps['source']}
138
139
  contentFit="contain"
139
140
  transition={0}
140
141
  style={styles.imageStyle}
@@ -1,4 +1,4 @@
1
- import { useMemo, useState } from 'react';
1
+ import { useMemo, useState, useEffect } from 'react';
2
2
  import {
3
3
  Image,
4
4
  StyleSheet,
@@ -7,12 +7,23 @@ import {
7
7
  TouchableOpacity,
8
8
  ScrollView,
9
9
  Dimensions,
10
+ Platform,
10
11
  } from 'react-native';
12
+ import {
13
+ initConnection,
14
+ getSubscriptions,
15
+ getProducts,
16
+ requestSubscription,
17
+ requestPurchase,
18
+ endConnection,
19
+ type Subscription,
20
+ type Product,
21
+ } from 'react-native-iap';
11
22
  import { useTheme } from '../../utils/ThemeContext';
12
23
  import type { Theme } from '../../utils/theme';
13
24
  import PrimaryButton from '../buttons/PrimaryButton';
14
25
  import { fontSizes, lineHeights } from '../../utils/fontStyles';
15
- import type { OnboardingPaywallPanelProps } from '../types';
26
+ import type { OnboardingPaywallPanelProps, PlatformSku } from '../types';
16
27
 
17
28
  const { height: screenHeight } = Dimensions.get('window');
18
29
 
@@ -22,19 +33,195 @@ function OnboardingPaywallPanel({
22
33
  subtitle,
23
34
  button,
24
35
  image,
25
- plans,
36
+ plans = [],
37
+ products,
26
38
  helperTextContinue,
27
39
  onRestorePurchase,
28
40
  onTerms,
29
41
  onPrivacy,
42
+ subscriptionSkus,
30
43
  }: OnboardingPaywallPanelProps) {
31
44
  const { theme } = useTheme();
32
45
  const styles = useMemo(() => createStyles(theme), [theme]);
33
- const [selectedPlanId, setSelectedPlanId] = useState<string>(
34
- plans[0]?.id || ''
46
+
47
+ // Initialize selectedPlanId based on available configuration
48
+ const initialPlanId = useMemo(() => {
49
+ if (products && products.length > 0) {
50
+ // Sort first to pick the first one correctly if needed,
51
+ // but simplistic approach: pick the first product's first SKU for the current platform
52
+ const firstProduct = products[0];
53
+ if (!firstProduct) return '';
54
+ let firstSku = '';
55
+ if (Array.isArray(firstProduct.SKus)) {
56
+ firstSku = firstProduct.SKus[0] || '';
57
+ } else {
58
+ const skusObj = firstProduct.SKus as PlatformSku;
59
+ const skus = Platform.select({
60
+ ios: skusObj.ios,
61
+ android: skusObj.android,
62
+ });
63
+ firstSku = skus?.[0] || '';
64
+ }
65
+ return firstSku;
66
+ }
67
+ return plans?.[0]?.id || '';
68
+ }, [products, plans]);
69
+
70
+ const [selectedPlanId, setSelectedPlanId] = useState<string>(initialPlanId);
71
+ const [iapProducts, setIapProducts] = useState<(Subscription | Product)[]>(
72
+ []
35
73
  );
36
74
 
37
- const selectedPlan = plans.find((p) => p.id === selectedPlanId);
75
+ useEffect(() => {
76
+ let isMounted = true;
77
+
78
+ const fetchIapProducts = async (skus: string[]) => {
79
+ try {
80
+ await initConnection();
81
+ if (!isMounted) return;
82
+
83
+ // Fetch both subscriptions and products to cover all bases
84
+ const [subs, prods] = await Promise.all([
85
+ getSubscriptions({ skus }).catch(() => [] as Subscription[]),
86
+ getProducts({ skus }).catch(() => [] as Product[]),
87
+ ]);
88
+
89
+ if (isMounted) {
90
+ // Filter out duplicates if any (unlikely but safe)
91
+ const allItems = [...subs, ...prods];
92
+ const uniqueItems = Array.from(
93
+ new Map(allItems.map((item) => [item.productId, item])).values()
94
+ );
95
+ setIapProducts(uniqueItems);
96
+ }
97
+ } catch (err) {
98
+ console.warn('IAP Error:', err);
99
+ }
100
+ };
101
+
102
+ if (products && products.length > 0) {
103
+ // Collect all SKUs from all products for current platform
104
+ const allSkus = products.flatMap((p) => {
105
+ if (Array.isArray(p.SKus)) {
106
+ return p.SKus;
107
+ }
108
+ const skusObj = p.SKus as PlatformSku;
109
+ const skus = Platform.select({
110
+ ios: skusObj.ios,
111
+ android: skusObj.android,
112
+ });
113
+ return skus || [];
114
+ });
115
+
116
+ if (allSkus.length > 0) {
117
+ fetchIapProducts(allSkus);
118
+ }
119
+ } else if (subscriptionSkus) {
120
+ const skus = Platform.select({
121
+ ios: subscriptionSkus.ios,
122
+ android: subscriptionSkus.android,
123
+ });
124
+
125
+ if (skus && skus.length > 0) {
126
+ fetchIapProducts(skus);
127
+ }
128
+ }
129
+
130
+ return () => {
131
+ isMounted = false;
132
+ if (subscriptionSkus || products) {
133
+ endConnection();
134
+ }
135
+ };
136
+ }, [subscriptionSkus, products]);
137
+
138
+ const displayPlans = useMemo(() => {
139
+ // New Configuration Mode
140
+ if (products && products.length > 0) {
141
+ const mappedPlans = products.map((config) => {
142
+ // Find if any of the product's SKUs matches a fetched IAP product
143
+ let targetSkus: string[] = [];
144
+ if (Array.isArray(config.SKus)) {
145
+ targetSkus = config.SKus;
146
+ } else {
147
+ const skusObj = config.SKus as PlatformSku;
148
+ targetSkus =
149
+ Platform.select({
150
+ ios: skusObj.ios,
151
+ android: skusObj.android,
152
+ }) || [];
153
+ }
154
+
155
+ const iapProduct = iapProducts.find((p) =>
156
+ targetSkus.includes(p.productId)
157
+ );
158
+
159
+ let price = '...'; // Default loading state
160
+ let id = targetSkus[0] || ''; // Default ID to first SKU
161
+
162
+ if (iapProduct) {
163
+ id = iapProduct.productId;
164
+ if (Platform.OS === 'ios') {
165
+ price = (iapProduct as any).localizedPrice || price;
166
+ } else if (Platform.OS === 'android') {
167
+ const offer = (iapProduct as any).subscriptionOfferDetails?.[0];
168
+ price =
169
+ offer?.pricingPhases?.pricingPhaseList?.[0]?.formattedPrice ||
170
+ (iapProduct as any).localizedPrice ||
171
+ price;
172
+ }
173
+ }
174
+
175
+ return {
176
+ id,
177
+ title: config.title,
178
+ price,
179
+ // features with typo 'featues' mapped to correct prop 'features'
180
+ features: config.featues,
181
+ interval: '', // Could be inferred from IAP if needed
182
+ sortOrder: config.sortOrder,
183
+ };
184
+ });
185
+
186
+ // Sort based on sortOrder
187
+ return mappedPlans.sort((a, b) => {
188
+ if (
189
+ typeof a.sortOrder === 'number' &&
190
+ typeof b.sortOrder === 'number'
191
+ ) {
192
+ return a.sortOrder - b.sortOrder;
193
+ }
194
+ return String(a.sortOrder).localeCompare(String(b.sortOrder));
195
+ });
196
+ }
197
+
198
+ // Legacy Mode
199
+ if (iapProducts.length === 0) return plans;
200
+
201
+ return plans.map((plan) => {
202
+ const iapProduct = iapProducts.find((p) => p.productId === plan.id);
203
+ if (iapProduct) {
204
+ let price = plan.price;
205
+ if (Platform.OS === 'ios') {
206
+ price = (iapProduct as any).localizedPrice || plan.price;
207
+ } else if (Platform.OS === 'android') {
208
+ // Android specific logic for RNIap v12+
209
+ const offer = (iapProduct as any).subscriptionOfferDetails?.[0];
210
+ price =
211
+ offer?.pricingPhases?.pricingPhaseList?.[0]?.formattedPrice ||
212
+ (iapProduct as any).localizedPrice ||
213
+ plan.price;
214
+ }
215
+ return {
216
+ ...plan,
217
+ price,
218
+ };
219
+ }
220
+ return plan;
221
+ });
222
+ }, [products, plans, iapProducts]);
223
+
224
+ const selectedPlan = displayPlans.find((p) => p.id === selectedPlanId);
38
225
 
39
226
  const renderTitle = () => {
40
227
  if (!title) return null;
@@ -79,7 +266,7 @@ function OnboardingPaywallPanel({
79
266
  const renderPlans = () => {
80
267
  return (
81
268
  <View style={styles.plansContainer}>
82
- {plans.map((plan) => {
269
+ {displayPlans.map((plan) => {
83
270
  const isSelected = plan.id === selectedPlanId;
84
271
  return (
85
272
  <TouchableOpacity
@@ -124,7 +311,98 @@ function OnboardingPaywallPanel({
124
311
  };
125
312
 
126
313
  const renderButton = () => {
127
- const handlePress = () => onPressContinue(selectedPlanId);
314
+ const handlePress = async () => {
315
+ console.log('OnboardingPaywallPanel: handlePress', { selectedPlanId });
316
+ if ((subscriptionSkus || products) && selectedPlanId) {
317
+ try {
318
+ const iapProduct = iapProducts.find(
319
+ (p) => p.productId === selectedPlanId
320
+ );
321
+ if (iapProduct) {
322
+ // Determine if it's a subscription or one-time purchase
323
+ // Subscriptions usually have 'subscriptionPeriodNumberIOS' or 'subscriptionOfferDetails'
324
+ const isSubscription =
325
+ 'subscriptionPeriodNumberIOS' in iapProduct ||
326
+ 'subscriptionOfferDetails' in iapProduct;
327
+
328
+ console.log('OnboardingPaywallPanel: Processing purchase', {
329
+ isSubscription,
330
+ productId: iapProduct.productId,
331
+ });
332
+
333
+ if (isSubscription) {
334
+ // For Android, we might need offerToken if available
335
+ let offerToken;
336
+ if (Platform.OS === 'android') {
337
+ offerToken = (iapProduct as any).subscriptionOfferDetails?.[0]
338
+ ?.offerToken;
339
+ }
340
+
341
+ console.log('OnboardingPaywallPanel: Requesting subscription', {
342
+ sku: selectedPlanId,
343
+ offerToken,
344
+ });
345
+ await requestSubscription({
346
+ sku: selectedPlanId,
347
+ ...(offerToken && {
348
+ subscriptionOffers: [{ sku: selectedPlanId, offerToken }],
349
+ }),
350
+ });
351
+ } else {
352
+ console.log(
353
+ 'OnboardingPaywallPanel: Requesting one-time purchase',
354
+ { sku: selectedPlanId }
355
+ );
356
+ await requestPurchase({
357
+ sku: selectedPlanId,
358
+ });
359
+ }
360
+ } else {
361
+ // Fallback if product not found in fetched list but ID exists
362
+ // Try subscription first as default legacy behavior
363
+ console.log(
364
+ 'OnboardingPaywallPanel: Product not in IAP list, attempting fallback purchase',
365
+ selectedPlanId
366
+ );
367
+ try {
368
+ console.log(
369
+ 'OnboardingPaywallPanel: Fallback - attempting requestSubscription',
370
+ selectedPlanId
371
+ );
372
+ await requestSubscription({ sku: selectedPlanId });
373
+ } catch (subErr) {
374
+ console.warn(
375
+ 'OnboardingPaywallPanel: Fallback requestSubscription failed',
376
+ subErr
377
+ );
378
+ console.log(
379
+ 'OnboardingPaywallPanel: Fallback - attempting requestPurchase',
380
+ selectedPlanId
381
+ );
382
+ try {
383
+ await requestPurchase({ sku: selectedPlanId });
384
+ } catch (purchErr) {
385
+ console.warn(
386
+ 'OnboardingPaywallPanel: Fallback requestPurchase failed',
387
+ purchErr
388
+ );
389
+ throw purchErr;
390
+ }
391
+ }
392
+ }
393
+ } catch (err) {
394
+ console.warn('Purchase Error:', err);
395
+ if (typeof err === 'object') {
396
+ console.warn(
397
+ 'Purchase Error Details:',
398
+ JSON.stringify(err, null, 2)
399
+ );
400
+ }
401
+ return;
402
+ }
403
+ }
404
+ onPressContinue(selectedPlanId);
405
+ };
128
406
 
129
407
  if (typeof button === 'string') {
130
408
  return <PrimaryButton text={button} onPress={handlePress} />;
@@ -222,22 +500,22 @@ const createStyles = (theme: Theme) =>
222
500
  },
223
501
  sheetContainer: {
224
502
  flex: 1,
225
- marginTop: -6,
503
+ marginTop: -24,
226
504
  backgroundColor: theme.bg.secondary,
227
- borderTopLeftRadius: 32,
228
- borderTopRightRadius: 32,
229
- overflow: 'hidden',
505
+ borderTopLeftRadius: 30,
506
+ borderTopRightRadius: 30,
507
+ overflow: 'scroll',
230
508
  },
231
509
  container: {
232
510
  flex: 1,
233
511
  },
234
512
  contentContainer: {
235
- paddingBottom: 40,
513
+ paddingBottom: 24,
236
514
  },
237
515
  footerContainer: {
238
- paddingHorizontal: 16,
239
- paddingBottom: 40,
240
- paddingTop: 16,
516
+ paddingHorizontal: 8,
517
+ marginBottom: 40,
518
+ paddingTop: 4,
241
519
  backgroundColor: theme.bg.secondary,
242
520
  },
243
521
  contentWrapper: {
@@ -191,10 +191,15 @@ function SpillOnboarding({
191
191
  return paywallPanelProps({ onPressContinue: onPaywallContinue });
192
192
  }
193
193
 
194
+ const { onPressContinue, ...otherProps } = paywallPanelProps;
195
+
196
+ // Use the provided onPressContinue if available, otherwise use default
197
+ const handleContinue = onPressContinue || onPaywallContinue;
198
+
194
199
  return (
195
200
  <OnboardingPaywallPanel
196
- onPressContinue={onPaywallContinue}
197
- {...paywallPanelProps}
201
+ onPressContinue={handleContinue}
202
+ {...otherProps}
198
203
  />
199
204
  );
200
205
  };
@@ -257,6 +257,11 @@ export interface OnboardingProps {
257
257
  paywallPanel?: OnboardingPaywallPanelConfig;
258
258
  }
259
259
 
260
+ export interface PlatformSku {
261
+ ios?: string[];
262
+ android?: string[];
263
+ }
264
+
260
265
  export interface PaywallPlan {
261
266
  id: string;
262
267
  title: string;
@@ -265,6 +270,23 @@ export interface PaywallPlan {
265
270
  features?: string[];
266
271
  }
267
272
 
273
+ /**
274
+ * Simplified configuration for a single paywall product/plan.
275
+ */
276
+ export interface PaywallProductConfig {
277
+ /** SKUs for different platforms. */
278
+ SKus: PlatformSku | string[];
279
+
280
+ /** Main product title/name. */
281
+ title: string;
282
+
283
+ /** Array of product features. */
284
+ featues: string[];
285
+
286
+ /** Numeric or alphanumeric sorting preference. */
287
+ sortOrder: number | string;
288
+ }
289
+
268
290
  /**
269
291
  * Props for the paywall panel.
270
292
  */
@@ -278,8 +300,17 @@ export interface OnboardingPaywallPanelProps {
278
300
  /** Subtitle content. */
279
301
  subtitle?: string | ReactNode;
280
302
 
281
- /** List of plans to display. */
282
- plans: PaywallPlan[];
303
+ /**
304
+ * List of plans to display.
305
+ * Required if `products` is not provided.
306
+ */
307
+ plans?: PaywallPlan[];
308
+
309
+ /**
310
+ * Simplified configuration for paywall products.
311
+ * If provided, handles fetching and displaying products automatically.
312
+ */
313
+ products?: PaywallProductConfig[];
283
314
 
284
315
  /**
285
316
  * Button content. Either a simple string label or a render function.
@@ -300,10 +331,17 @@ export interface OnboardingPaywallPanelProps {
300
331
 
301
332
  /** Link for privacy policy action. */
302
333
  onPrivacy?: { text?: string; onPress: () => void };
334
+
335
+ /**
336
+ * SKUs for In-App Purchases (Subscriptions).
337
+ * If provided, the component will attempt to fetch product details from the store
338
+ * using react-native-iap and handle purchases.
339
+ */
340
+ subscriptionSkus?: PlatformSku;
303
341
  }
304
342
 
305
343
  type OnboardingPaywallPanelConfig =
306
- | Omit<OnboardingPaywallPanelProps, 'onPressContinue'>
344
+ | OnboardingPaywallPanelProps
307
345
  | (({
308
346
  onPressContinue,
309
347
  }: {