react-native-app-onboard 0.1.9 → 0.2.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.
Files changed (80) hide show
  1. package/README.md +89 -7
  2. package/lib/commonjs/components/CustomPages.js +31 -55
  3. package/lib/commonjs/components/CustomPages.js.map +1 -1
  4. package/lib/commonjs/components/OnboardingPages.js +63 -79
  5. package/lib/commonjs/components/OnboardingPages.js.map +1 -1
  6. package/lib/commonjs/components/Page.js +8 -3
  7. package/lib/commonjs/components/Page.js.map +1 -1
  8. package/lib/commonjs/components/Pagination.js +75 -13
  9. package/lib/commonjs/components/Pagination.js.map +1 -1
  10. package/lib/commonjs/components/Swiper.js +58 -85
  11. package/lib/commonjs/components/Swiper.js.map +1 -1
  12. package/lib/commonjs/components/button.js +3 -1
  13. package/lib/commonjs/components/button.js.map +1 -1
  14. package/lib/commonjs/context/OnboardingContext.js +101 -21
  15. package/lib/commonjs/context/OnboardingContext.js.map +1 -1
  16. package/lib/commonjs/hooks/useOnboarding.js +1 -1
  17. package/lib/commonjs/hooks/useOnboarding.js.map +1 -1
  18. package/lib/commonjs/index.js +33 -2
  19. package/lib/commonjs/index.js.map +1 -1
  20. package/lib/commonjs/utils/color.js +308 -0
  21. package/lib/commonjs/utils/color.js.map +1 -0
  22. package/lib/commonjs/utils/persistence.js +51 -0
  23. package/lib/commonjs/utils/persistence.js.map +1 -0
  24. package/lib/module/components/CustomPages.js +31 -55
  25. package/lib/module/components/CustomPages.js.map +1 -1
  26. package/lib/module/components/OnboardingPages.js +64 -79
  27. package/lib/module/components/OnboardingPages.js.map +1 -1
  28. package/lib/module/components/Page.js +8 -3
  29. package/lib/module/components/Page.js.map +1 -1
  30. package/lib/module/components/Pagination.js +76 -14
  31. package/lib/module/components/Pagination.js.map +1 -1
  32. package/lib/module/components/Swiper.js +59 -86
  33. package/lib/module/components/Swiper.js.map +1 -1
  34. package/lib/module/components/button.js +3 -1
  35. package/lib/module/components/button.js.map +1 -1
  36. package/lib/module/context/OnboardingContext.js +102 -22
  37. package/lib/module/context/OnboardingContext.js.map +1 -1
  38. package/lib/module/hooks/useOnboarding.js +1 -1
  39. package/lib/module/hooks/useOnboarding.js.map +1 -1
  40. package/lib/module/index.js +8 -1
  41. package/lib/module/index.js.map +1 -1
  42. package/lib/module/utils/color.js +299 -0
  43. package/lib/module/utils/color.js.map +1 -0
  44. package/lib/module/utils/persistence.js +42 -0
  45. package/lib/module/utils/persistence.js.map +1 -0
  46. package/lib/typescript/src/components/CustomPages.d.ts +6 -2
  47. package/lib/typescript/src/components/CustomPages.d.ts.map +1 -1
  48. package/lib/typescript/src/components/OnboardingPages.d.ts +6 -2
  49. package/lib/typescript/src/components/OnboardingPages.d.ts.map +1 -1
  50. package/lib/typescript/src/components/Page.d.ts +2 -0
  51. package/lib/typescript/src/components/Page.d.ts.map +1 -1
  52. package/lib/typescript/src/components/Pagination.d.ts +9 -0
  53. package/lib/typescript/src/components/Pagination.d.ts.map +1 -1
  54. package/lib/typescript/src/components/Swiper.d.ts.map +1 -1
  55. package/lib/typescript/src/components/button.d.ts.map +1 -1
  56. package/lib/typescript/src/context/OnboardingContext.d.ts +9 -0
  57. package/lib/typescript/src/context/OnboardingContext.d.ts.map +1 -1
  58. package/lib/typescript/src/hooks/useOnboarding.d.ts +3 -0
  59. package/lib/typescript/src/hooks/useOnboarding.d.ts.map +1 -1
  60. package/lib/typescript/src/index.d.ts +4 -0
  61. package/lib/typescript/src/index.d.ts.map +1 -1
  62. package/lib/typescript/src/types/index.d.ts +13 -0
  63. package/lib/typescript/src/types/index.d.ts.map +1 -1
  64. package/lib/typescript/src/utils/color.d.ts +18 -0
  65. package/lib/typescript/src/utils/color.d.ts.map +1 -0
  66. package/lib/typescript/src/utils/persistence.d.ts +31 -0
  67. package/lib/typescript/src/utils/persistence.d.ts.map +1 -0
  68. package/package.json +12 -6
  69. package/src/components/CustomPages.tsx +62 -69
  70. package/src/components/OnboardingPages.tsx +86 -89
  71. package/src/components/Page.tsx +8 -2
  72. package/src/components/Pagination.tsx +117 -29
  73. package/src/components/Swiper.tsx +65 -87
  74. package/src/components/button.tsx +6 -1
  75. package/src/context/OnboardingContext.tsx +145 -26
  76. package/src/hooks/useOnboarding.tsx +1 -3
  77. package/src/index.tsx +16 -1
  78. package/src/types/index.ts +13 -0
  79. package/src/utils/color.ts +284 -0
  80. package/src/utils/persistence.ts +58 -0
@@ -1 +1 @@
1
- {"version":3,"names":["View","Animated","StyleSheet","React","useOnboarding","Button","Pagination","props","isDone","dots","Array","from","length","numberOfScreens","_","i","width","createElement","style","styles","pagination","backgroundColor","paginationContainerStyle","buttons","leftButton","buttonLeftContainerStyle","showSkip","hasSkipPosition","onPress","onSkip","buttonTextStyle","skipLabelStyle","buttonStyle","skipButtonContainerStyle","label","skipLabel","dotsContainer","map","inputRange","dotOpacity","animatedValue","interpolate","outputRange","extrapolate","key","dot","color","opacity","dotsContainerStyle","rightButton","buttonRightContainerStyle","showNext","onNext","nextLabel","nextLabelStyle","nextButtonContainerStyle","showDone","onDone","doneLabel","doneLabelStyle","doneButtonContainerStyle","create","flexDirection","justifyContent","alignItems","height","paddingVertical","paddingHorizontal","borderRadius","marginHorizontal","flex","text","fontSize","minWidth","paddingRight","paddingLeft"],"sourceRoot":"../../../src","sources":["components/Pagination.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["View","Pressable","Animated","StyleSheet","React","setAlpha","useOnboarding","Button","Pagination","props","isDone","currentPage","progress","scrollTo","previousPage","dots","Array","from","length","numberOfScreens","_","i","width","showPrevious","createElement","style","styles","pagination","backgroundColor","paginationContainerStyle","buttons","leftButton","buttonLeftContainerStyle","onPress","buttonTextStyle","previousLabelStyle","buttonStyle","previousButtonContainerStyle","label","previousLabel","showSkip","hasSkipPosition","onSkip","skipLabelStyle","skipButtonContainerStyle","skipLabel","paginationStyle","accessible","accessibilityRole","accessibilityValue","min","max","now","progressTrack","color","mirror","progressBarStyle","progressFill","progressBarFillStyle","dotsContainer","dotsContainerStyle","map","inputRange","dotOpacity","animatedValue","interpolate","outputRange","extrapolate","dotProps","dotsAreTappable","accessibilityLabel","accessibilityState","selected","dot","key","opacity","_extends","hitSlop","rightButton","buttonRightContainerStyle","showNext","onNext","nextLabel","nextLabelStyle","nextButtonContainerStyle","showDone","onDone","doneLabel","doneLabelStyle","doneButtonContainerStyle","create","flexDirection","justifyContent","alignItems","height","paddingVertical","paddingHorizontal","borderRadius","marginHorizontal","flex","overflow","text","fontSize","transform","scaleX"],"sourceRoot":"../../../src","sources":["components/Pagination.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,101 +1,74 @@
1
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
1
2
  import React from 'react';
2
3
  import { OnboardingPages } from './OnboardingPages';
3
4
  import { CustomPages } from './CustomPages';
4
- import { Animated } from 'react-native';
5
+ import { Animated, I18nManager } from 'react-native';
5
6
  import { useOnboarding } from '../hooks/useOnboarding';
6
7
  export const Swiper = props => {
7
- const scrollX = React.useRef(new Animated.Value(0)).current;
8
+ // `scrollX` is always JS-driven because the background-color interpolation
9
+ // cannot run on the native thread. When `useNativeDriver` is enabled we also
10
+ // keep `nativeScrollX`, driven natively, for transform/opacity animations
11
+ // (the pagination dots), and mirror its offset onto `scrollX` via a JS
12
+ // listener so the color interpolation keeps working.
13
+ const scrollX = React.useMemo(() => new Animated.Value(0), []);
14
+ const nativeScrollX = React.useMemo(() => new Animated.Value(0), []);
15
+ const nativeDriverEnabled = props.useNativeDriver ?? false;
16
+ const dotsAnimatedValue = nativeDriverEnabled ? nativeScrollX : scrollX;
17
+
18
+ // Direction handling: default to the device direction. We only mirror
19
+ // manually (via scaleX) when the requested direction differs from the
20
+ // device's — when they match, React Native already lays the row out
21
+ // correctly and an extra flip would double-invert it.
22
+ const rtl = props.rtl ?? I18nManager.isRTL;
23
+ const mirror = rtl !== I18nManager.isRTL;
8
24
  const {
9
- flatListRef,
25
+ setFlatListRef,
10
26
  setCurrentPage,
11
27
  currentPage,
12
28
  numberOfScreens,
13
29
  nextPage,
14
- scrollEnabled
30
+ scrollEnabled,
31
+ pauseAutoPlay
15
32
  } = useOnboarding();
33
+ const onScroll = React.useMemo(() => nativeDriverEnabled ? Animated.event([{
34
+ nativeEvent: {
35
+ contentOffset: {
36
+ x: nativeScrollX
37
+ }
38
+ }
39
+ }], {
40
+ useNativeDriver: true,
41
+ listener: event => scrollX.setValue(event.nativeEvent.contentOffset.x)
42
+ }) : Animated.event([{
43
+ nativeEvent: {
44
+ contentOffset: {
45
+ x: scrollX
46
+ }
47
+ }
48
+ }], {
49
+ useNativeDriver: false
50
+ }), [nativeDriverEnabled, nativeScrollX, scrollX]);
51
+
52
+ // Stop autoplay as soon as the user takes manual control of the slider.
53
+ const onScrollBeginDrag = React.useCallback(() => pauseAutoPlay(), [pauseAutoPlay]);
54
+ const shared = {
55
+ setFlatListRef,
56
+ scrollX,
57
+ dotsAnimatedValue,
58
+ onScroll,
59
+ onScrollBeginDrag,
60
+ setPage: setCurrentPage,
61
+ currentPage,
62
+ numberOfScreens,
63
+ nextPage,
64
+ scrollEnabled,
65
+ mirror
66
+ };
16
67
  if (props.children) {
17
- return /*#__PURE__*/React.createElement(CustomPages, {
18
- customFooter: props.customFooter,
19
- showPagination: props.showPagination,
20
- flatListRef: flatListRef,
21
- scrollX: scrollX,
22
- setPage: setCurrentPage,
23
- scrollEnabled: scrollEnabled,
24
- currentPage: currentPage,
25
- numberOfScreens: numberOfScreens,
26
- nextPage: nextPage,
27
- showDone: props.showDone,
28
- showNext: props.showNext,
29
- onDone: props.onDone,
30
- skipButtonContainerStyle: props.skipButtonContainerStyle,
31
- nextButtonContainerStyle: props.nextButtonContainerStyle,
32
- doneButtonContainerStyle: props.doneButtonContainerStyle,
33
- skipButtonPosition: props.skipButtonPosition,
34
- paginationContainerStyle: props.paginationContainerStyle,
35
- paginationPosition: props.paginationPosition,
36
- nextLabel: props.nextLabel,
37
- skipLabel: props.skipLabel,
38
- doneLabel: props.doneLabel,
39
- showSkip: props.showSkip,
40
- onSkip: props.onSkip,
41
- scrollAnimationDuration: props.scrollAnimationDuration,
42
- buttonLeftContainerStyle: props.buttonLeftContainerStyle,
43
- buttonRightContainerStyle: props.buttonRightContainerStyle,
44
- dotsContainerStyle: props.dotsContainerStyle,
45
- doneLabelStyle: props.doneLabelStyle,
46
- skipLabelStyle: props.skipLabelStyle,
47
- nextLabelStyle: props.nextLabelStyle,
48
- width: props.width,
49
- color: props.color,
50
- useNativeDriver: props.useNativeDriver,
51
- imageContainerStyle: props.imageContainerStyle,
52
- containerStyle: props.containerStyle,
53
- titleContainerStyle: props.titleContainerStyle,
54
- titleStyle: props.titleStyle,
55
- subtitleStyle: props.subtitleStyle,
56
- swap: props.swap
57
- }, props.children);
68
+ return /*#__PURE__*/React.createElement(CustomPages, _extends({}, props, shared), props.children);
58
69
  }
59
- return /*#__PURE__*/React.createElement(OnboardingPages, {
60
- showDone: props.showDone,
61
- customFooter: props.customFooter,
62
- flatListRef: flatListRef,
63
- scrollX: scrollX,
64
- setPage: setCurrentPage,
65
- currentPage: currentPage,
66
- paginationPosition: props.paginationPosition,
67
- nextPage: nextPage,
68
- showSkip: props.showSkip,
69
- onDone: props.onDone,
70
- pages: props.pages || [],
71
- width: props.width,
72
- showNext: props.showNext,
73
- skipButtonContainerStyle: props.skipButtonContainerStyle,
74
- nextButtonContainerStyle: props.nextButtonContainerStyle,
75
- doneButtonContainerStyle: props.doneButtonContainerStyle,
76
- skipLabelStyle: props.skipLabelStyle,
77
- skipButtonPosition: props.skipButtonPosition,
78
- showPagination: props.showPagination,
79
- color: props.color,
80
- onSkip: props.onSkip,
81
- swap: props.swap,
82
- scrollEnabled: scrollEnabled,
83
- nextLabel: props.nextLabel,
84
- skipLabel: props.skipLabel,
85
- doneLabel: props.doneLabel,
86
- scrollAnimationDuration: props.scrollAnimationDuration,
87
- buttonLeftContainerStyle: props.buttonLeftContainerStyle,
88
- buttonRightContainerStyle: props.buttonRightContainerStyle,
89
- dotsContainerStyle: props.dotsContainerStyle,
90
- doneLabelStyle: props.doneLabelStyle,
91
- nextLabelStyle: props.nextLabelStyle,
92
- useNativeDriver: props.useNativeDriver,
93
- imageContainerStyle: props.imageContainerStyle,
94
- containerStyle: props.containerStyle,
95
- titleContainerStyle: props.titleContainerStyle,
96
- titleStyle: props.titleStyle,
97
- subtitleStyle: props.subtitleStyle,
98
- paginationContainerStyle: props.paginationContainerStyle
99
- });
70
+ return /*#__PURE__*/React.createElement(OnboardingPages, _extends({}, props, shared, {
71
+ pages: props.pages || []
72
+ }));
100
73
  };
101
74
  //# sourceMappingURL=Swiper.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","OnboardingPages","CustomPages","Animated","useOnboarding","Swiper","props","scrollX","useRef","Value","current","flatListRef","setCurrentPage","currentPage","numberOfScreens","nextPage","scrollEnabled","children","createElement","customFooter","showPagination","setPage","showDone","showNext","onDone","skipButtonContainerStyle","nextButtonContainerStyle","doneButtonContainerStyle","skipButtonPosition","paginationContainerStyle","paginationPosition","nextLabel","skipLabel","doneLabel","showSkip","onSkip","scrollAnimationDuration","buttonLeftContainerStyle","buttonRightContainerStyle","dotsContainerStyle","doneLabelStyle","skipLabelStyle","nextLabelStyle","width","color","useNativeDriver","imageContainerStyle","containerStyle","titleContainerStyle","titleStyle","subtitleStyle","swap","pages"],"sourceRoot":"../../../src","sources":["components/Swiper.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","OnboardingPages","CustomPages","Animated","I18nManager","useOnboarding","Swiper","props","scrollX","useMemo","Value","nativeScrollX","nativeDriverEnabled","useNativeDriver","dotsAnimatedValue","rtl","isRTL","mirror","setFlatListRef","setCurrentPage","currentPage","numberOfScreens","nextPage","scrollEnabled","pauseAutoPlay","onScroll","event","nativeEvent","contentOffset","x","listener","setValue","onScrollBeginDrag","useCallback","shared","setPage","children","createElement","_extends","pages"],"sourceRoot":"../../../src","sources":["components/Swiper.tsx"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,WAAW,QAAQ,eAAe;AAC3C,SACEC,QAAQ,EACRC,WAAW,QAGN,cAAc;AACrB,SAASC,aAAa,QAAQ,wBAAwB;AAGtD,OAAO,MAAMC,MAAiC,GAAIC,KAAK,IAAK;EAC1D;EACA;EACA;EACA;EACA;EACA,MAAMC,OAAO,GAAGR,KAAK,CAACS,OAAO,CAAC,MAAM,IAAIN,QAAQ,CAACO,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;EAC9D,MAAMC,aAAa,GAAGX,KAAK,CAACS,OAAO,CAAC,MAAM,IAAIN,QAAQ,CAACO,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;EACpE,MAAME,mBAAmB,GAAGL,KAAK,CAACM,eAAe,IAAI,KAAK;EAC1D,MAAMC,iBAAiB,GAAGF,mBAAmB,GAAGD,aAAa,GAAGH,OAAO;;EAEvE;EACA;EACA;EACA;EACA,MAAMO,GAAG,GAAGR,KAAK,CAACQ,GAAG,IAAIX,WAAW,CAACY,KAAK;EAC1C,MAAMC,MAAM,GAAGF,GAAG,KAAKX,WAAW,CAACY,KAAK;EAExC,MAAM;IACJE,cAAc;IACdC,cAAc;IACdC,WAAW;IACXC,eAAe;IACfC,QAAQ;IACRC,aAAa;IACbC;EACF,CAAC,GAAGnB,aAAa,CAAC,CAAC;EAEnB,MAAMoB,QAAQ,GAAGzB,KAAK,CAACS,OAAO,CAC5B,MACEG,mBAAmB,GACfT,QAAQ,CAACuB,KAAK,CACZ,CAAC;IAAEC,WAAW,EAAE;MAAEC,aAAa,EAAE;QAAEC,CAAC,EAAElB;MAAc;IAAE;EAAE,CAAC,CAAC,EAC1D;IACEE,eAAe,EAAE,IAAI;IACrBiB,QAAQ,EAAGJ,KAA8C,IACvDlB,OAAO,CAACuB,QAAQ,CAACL,KAAK,CAACC,WAAW,CAACC,aAAa,CAACC,CAAC;EACtD,CACF,CAAC,GACD1B,QAAQ,CAACuB,KAAK,CAAC,CAAC;IAAEC,WAAW,EAAE;MAAEC,aAAa,EAAE;QAAEC,CAAC,EAAErB;MAAQ;IAAE;EAAE,CAAC,CAAC,EAAE;IACnEK,eAAe,EAAE;EACnB,CAAC,CAAC,EACR,CAACD,mBAAmB,EAAED,aAAa,EAAEH,OAAO,CAC9C,CAAC;;EAED;EACA,MAAMwB,iBAAiB,GAAGhC,KAAK,CAACiC,WAAW,CACzC,MAAMT,aAAa,CAAC,CAAC,EACrB,CAACA,aAAa,CAChB,CAAC;EAED,MAAMU,MAAM,GAAG;IACbhB,cAAc;IACdV,OAAO;IACPM,iBAAiB;IACjBW,QAAQ;IACRO,iBAAiB;IACjBG,OAAO,EAAEhB,cAAc;IACvBC,WAAW;IACXC,eAAe;IACfC,QAAQ;IACRC,aAAa;IACbN;EACF,CAAC;EAED,IAAIV,KAAK,CAAC6B,QAAQ,EAAE;IAClB,oBACEpC,KAAA,CAAAqC,aAAA,CAACnC,WAAW,EAAAoC,QAAA,KAAK/B,KAAK,EAAM2B,MAAM,GAC/B3B,KAAK,CAAC6B,QACI,CAAC;EAElB;EAEA,oBAAOpC,KAAA,CAAAqC,aAAA,CAACpC,eAAe,EAAAqC,QAAA,KAAK/B,KAAK,EAAM2B,MAAM;IAAEK,KAAK,EAAEhC,KAAK,CAACgC,KAAK,IAAI;EAAG,EAAE,CAAC;AAC7E,CAAC","ignoreList":[]}
@@ -3,7 +3,9 @@ import React from 'react';
3
3
  export const Button = props => {
4
4
  return typeof props.label === 'string' ? /*#__PURE__*/React.createElement(TouchableOpacity, {
5
5
  onPress: props.onPress,
6
- style: props.buttonStyle
6
+ style: props.buttonStyle,
7
+ accessibilityRole: "button",
8
+ accessibilityLabel: props.label
7
9
  }, /*#__PURE__*/React.createElement(Text, {
8
10
  style: [styles.text, {
9
11
  color: props.color || 'white'
@@ -1 +1 @@
1
- {"version":3,"names":["StyleSheet","Text","TouchableOpacity","React","Button","props","label","createElement","onPress","style","buttonStyle","styles","text","color","buttonTextStyle","SkipButton","top","left","position","undefined","right","skipButton","create","pagination","flexDirection","justifyContent","alignItems","height","paddingVertical","paddingHorizontal","dot","width","borderRadius","backgroundColor","marginHorizontal","dotsContainer","flex","fontSize","buttons","minWidth","rightButton","paddingRight","leftButton","paddingLeft","zIndex"],"sourceRoot":"../../../src","sources":["components/button.tsx"],"mappings":"AAAA,SACEA,UAAU,EACVC,IAAI,EACJC,gBAAgB,QAIX,cAAc;AACrB,OAAOC,KAAK,MAAM,OAAO;AAUzB,OAAO,MAAMC,MAAM,GAAIC,KAAkB,IAAK;EAC5C,OAAO,OAAOA,KAAK,CAACC,KAAK,KAAK,QAAQ,gBACpCH,KAAA,CAAAI,aAAA,CAACL,gBAAgB;IAACM,OAAO,EAAEH,KAAK,CAACG,OAAQ;IAACC,KAAK,EAAEJ,KAAK,CAACK;EAAY,gBACjEP,KAAA,CAAAI,aAAA,CAACN,IAAI;IACHQ,KAAK,EAAE,CACLE,MAAM,CAACC,IAAI,EACX;MACEC,KAAK,EAAER,KAAK,CAACQ,KAAK,IAAI;IACxB,CAAC,EACDR,KAAK,CAACS,eAAe;EACrB,GAEDT,KAAK,CAACC,KACH,CACU,CAAC,GAEnBD,KAAK,CAACC,KACP;AACH,CAAC;AAED,OAAO,MAAMS,UAAU,GACrBV,KAEC,IACE;EACH,MAAMK,WAAW,GAAG;IAClBM,GAAG,EAAE,EAAE;IACPC,IAAI,EAAEZ,KAAK,CAACa,QAAQ,KAAK,UAAU,GAAG,EAAE,GAAGC,SAAS;IACpDC,KAAK,EAAEf,KAAK,CAACa,QAAQ,KAAK,WAAW,GAAG,EAAE,GAAGC;EAC/C,CAAC;EAED,oBACEhB,KAAA,CAAAI,aAAA,CAACH,MAAM;IACLE,KAAK,EAAED,KAAK,CAACC,KAAK,IAAI,MAAO;IAC7BE,OAAO,EAAEH,KAAK,CAACG,OAAQ;IACvBE,WAAW,EAAE,CAACC,MAAM,CAACU,UAAU,EAAEX,WAAW,EAAEL,KAAK,CAACK,WAAW,CAAE;IACjEI,eAAe,EAAET,KAAK,CAACS,eAAgB;IACvCD,KAAK,EAAER,KAAK,CAACQ;EAAM,CACpB,CAAC;AAEN,CAAC;AAED,MAAMF,MAAM,GAAGX,UAAU,CAACsB,MAAM,CAAC;EAC/BC,UAAU,EAAE;IACVC,aAAa,EAAE,KAAK;IACpBC,cAAc,EAAE,eAAe;IAC/BC,UAAU,EAAE,QAAQ;IACpBC,MAAM,EAAE,EAAE;IACVC,eAAe,EAAE,EAAE;IACnBC,iBAAiB,EAAE;EACrB,CAAC;EACDC,GAAG,EAAE;IACHH,MAAM,EAAE,EAAE;IACVI,KAAK,EAAE,EAAE;IACTC,YAAY,EAAE,CAAC;IACfC,eAAe,EAAE,MAAM;IACvBC,gBAAgB,EAAE;EACpB,CAAC;EACDC,aAAa,EAAE;IACbX,aAAa,EAAE,KAAK;IACpBY,IAAI,EAAE,CAAC;IACPX,cAAc,EAAE;EAClB,CAAC;EACDb,IAAI,EAAE;IACJyB,QAAQ,EAAE;EACZ,CAAC;EACDC,OAAO,EAAE;IACPC,QAAQ,EAAE;EACZ,CAAC;EACDC,WAAW,EAAE;IACXd,UAAU,EAAE,UAAU;IACtBe,YAAY,EAAE;EAChB,CAAC;EACDC,UAAU,EAAE;IACVhB,UAAU,EAAE,YAAY;IACxBiB,WAAW,EAAE;EACf,CAAC;EACDtB,UAAU,EAAE;IACVH,QAAQ,EAAE,UAAU;IACpB0B,MAAM,EAAE;EACV;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["StyleSheet","Text","TouchableOpacity","React","Button","props","label","createElement","onPress","style","buttonStyle","accessibilityRole","accessibilityLabel","styles","text","color","buttonTextStyle","SkipButton","top","left","position","undefined","right","skipButton","create","pagination","flexDirection","justifyContent","alignItems","height","paddingVertical","paddingHorizontal","dot","width","borderRadius","backgroundColor","marginHorizontal","dotsContainer","flex","fontSize","buttons","minWidth","rightButton","paddingRight","leftButton","paddingLeft","zIndex"],"sourceRoot":"../../../src","sources":["components/button.tsx"],"mappings":"AAAA,SACEA,UAAU,EACVC,IAAI,EACJC,gBAAgB,QAIX,cAAc;AACrB,OAAOC,KAAK,MAAM,OAAO;AAUzB,OAAO,MAAMC,MAAM,GAAIC,KAAkB,IAAK;EAC5C,OAAO,OAAOA,KAAK,CAACC,KAAK,KAAK,QAAQ,gBACpCH,KAAA,CAAAI,aAAA,CAACL,gBAAgB;IACfM,OAAO,EAAEH,KAAK,CAACG,OAAQ;IACvBC,KAAK,EAAEJ,KAAK,CAACK,WAAY;IACzBC,iBAAiB,EAAC,QAAQ;IAC1BC,kBAAkB,EAAEP,KAAK,CAACC;EAAM,gBAEhCH,KAAA,CAAAI,aAAA,CAACN,IAAI;IACHQ,KAAK,EAAE,CACLI,MAAM,CAACC,IAAI,EACX;MACEC,KAAK,EAAEV,KAAK,CAACU,KAAK,IAAI;IACxB,CAAC,EACDV,KAAK,CAACW,eAAe;EACrB,GAEDX,KAAK,CAACC,KACH,CACU,CAAC,GAEnBD,KAAK,CAACC,KACP;AACH,CAAC;AAED,OAAO,MAAMW,UAAU,GACrBZ,KAEC,IACE;EACH,MAAMK,WAAW,GAAG;IAClBQ,GAAG,EAAE,EAAE;IACPC,IAAI,EAAEd,KAAK,CAACe,QAAQ,KAAK,UAAU,GAAG,EAAE,GAAGC,SAAS;IACpDC,KAAK,EAAEjB,KAAK,CAACe,QAAQ,KAAK,WAAW,GAAG,EAAE,GAAGC;EAC/C,CAAC;EAED,oBACElB,KAAA,CAAAI,aAAA,CAACH,MAAM;IACLE,KAAK,EAAED,KAAK,CAACC,KAAK,IAAI,MAAO;IAC7BE,OAAO,EAAEH,KAAK,CAACG,OAAQ;IACvBE,WAAW,EAAE,CAACG,MAAM,CAACU,UAAU,EAAEb,WAAW,EAAEL,KAAK,CAACK,WAAW,CAAE;IACjEM,eAAe,EAAEX,KAAK,CAACW,eAAgB;IACvCD,KAAK,EAAEV,KAAK,CAACU;EAAM,CACpB,CAAC;AAEN,CAAC;AAED,MAAMF,MAAM,GAAGb,UAAU,CAACwB,MAAM,CAAC;EAC/BC,UAAU,EAAE;IACVC,aAAa,EAAE,KAAK;IACpBC,cAAc,EAAE,eAAe;IAC/BC,UAAU,EAAE,QAAQ;IACpBC,MAAM,EAAE,EAAE;IACVC,eAAe,EAAE,EAAE;IACnBC,iBAAiB,EAAE;EACrB,CAAC;EACDC,GAAG,EAAE;IACHH,MAAM,EAAE,EAAE;IACVI,KAAK,EAAE,EAAE;IACTC,YAAY,EAAE,CAAC;IACfC,eAAe,EAAE,MAAM;IACvBC,gBAAgB,EAAE;EACpB,CAAC;EACDC,aAAa,EAAE;IACbX,aAAa,EAAE,KAAK;IACpBY,IAAI,EAAE,CAAC;IACPX,cAAc,EAAE;EAClB,CAAC;EACDb,IAAI,EAAE;IACJyB,QAAQ,EAAE;EACZ,CAAC;EACDC,OAAO,EAAE;IACPC,QAAQ,EAAE;EACZ,CAAC;EACDC,WAAW,EAAE;IACXd,UAAU,EAAE,UAAU;IACtBe,YAAY,EAAE;EAChB,CAAC;EACDC,UAAU,EAAE;IACVhB,UAAU,EAAE,YAAY;IACxBiB,WAAW,EAAE;EACf,CAAC;EACDtB,UAAU,EAAE;IACVH,QAAQ,EAAE,UAAU;IACpB0B,MAAM,EAAE;EACV;AACF,CAAC,CAAC","ignoreList":[]}
@@ -1,12 +1,18 @@
1
1
  import React from 'react';
2
- import { Dimensions } from 'react-native';
2
+ import { AccessibilityInfo, Animated, Dimensions } from 'react-native';
3
3
  export const OnboardingContext = /*#__PURE__*/React.createContext(undefined);
4
4
  export const OnboardingProvider = ({
5
5
  children,
6
- width = Dimensions.get('window').width,
6
+ width: widthProp,
7
7
  numberOfScreens,
8
- scrollEnabled
8
+ scrollEnabled,
9
+ onPageChange,
10
+ scrollAnimationDuration,
11
+ autoPlay = false,
12
+ autoPlayInterval = 3000,
13
+ loop = false
9
14
  }) => {
15
+ const width = widthProp ?? Dimensions.get('window').width;
10
16
  const getProgress = page => {
11
17
  return Math.round((page + 1) / numberOfScreens * 100);
12
18
  };
@@ -15,40 +21,114 @@ export const OnboardingProvider = ({
15
21
  const [isDone, setIsDone] = React.useState(false);
16
22
  const [enableScroll, setEnableScroll] = React.useState(scrollEnabled);
17
23
  const flatListRef = React.useRef(null);
18
- const setCurrentPage = index => {
19
- setPage(index);
20
- setProgress(getProgress(index));
21
- setIsDone(index === numberOfScreens - 1);
22
- };
23
- const nextPage = (animated = true) => {
24
- if (flatListRef.current && currentPage < numberOfScreens - 1) {
25
- flatListRef.current.scrollToOffset({
26
- offset: width * (currentPage + 1),
27
- animated: animated
24
+ const setFlatListRef = React.useCallback(node => {
25
+ flatListRef.current = node;
26
+ }, []);
27
+ // Tracks the latest page so timers/animations read a fresh value without
28
+ // needing to be recreated on every page change.
29
+ const currentPageRef = React.useRef(0);
30
+ const [isAutoPlaying, setIsAutoPlaying] = React.useState(autoPlay);
31
+
32
+ // Keep autoplay in sync if the `autoPlay` prop is toggled after mount.
33
+ React.useEffect(() => {
34
+ setIsAutoPlaying(autoPlay);
35
+ }, [autoPlay]);
36
+
37
+ // Dedicated value used to honor a custom scrollAnimationDuration. FlatList's
38
+ // own animated scroll has a fixed, platform-controlled duration, so when a
39
+ // duration is requested we drive the offset manually via this value.
40
+ const scrollAnim = React.useMemo(() => new Animated.Value(0), []);
41
+ React.useEffect(() => {
42
+ const id = scrollAnim.addListener(({
43
+ value
44
+ }) => {
45
+ var _flatListRef$current;
46
+ (_flatListRef$current = flatListRef.current) === null || _flatListRef$current === void 0 || _flatListRef$current.scrollToOffset({
47
+ offset: value,
48
+ animated: false
28
49
  });
29
- setCurrentPage(currentPage + 1);
30
- }
31
- };
32
- const scrollTo = (index, animated = true) => {
33
- if (flatListRef.current && index >= 0) {
50
+ });
51
+ return () => scrollAnim.removeListener(id);
52
+ }, [scrollAnim]);
53
+ const animateToOffset = React.useCallback((offset, animated) => {
54
+ if (!flatListRef.current) return;
55
+ if (animated && scrollAnimationDuration) {
56
+ scrollAnim.stopAnimation();
57
+ scrollAnim.setValue(width * currentPageRef.current);
58
+ Animated.timing(scrollAnim, {
59
+ toValue: offset,
60
+ duration: scrollAnimationDuration,
61
+ useNativeDriver: false
62
+ }).start();
63
+ } else {
34
64
  flatListRef.current.scrollToOffset({
35
- offset: index * width,
36
- animated: animated
65
+ offset,
66
+ animated
37
67
  });
68
+ }
69
+ }, [scrollAnim, scrollAnimationDuration, width]);
70
+ const setCurrentPage = React.useCallback(index => {
71
+ setPage(index);
72
+ currentPageRef.current = index;
73
+ setProgress(Math.round((index + 1) / numberOfScreens * 100));
74
+ setIsDone(index === numberOfScreens - 1);
75
+ onPageChange === null || onPageChange === void 0 || onPageChange(index);
76
+ // No-op when no screen reader is active; announces the page otherwise.
77
+ AccessibilityInfo.announceForAccessibility(`Page ${index + 1} of ${numberOfScreens}`);
78
+ }, [numberOfScreens, onPageChange]);
79
+ const nextPage = React.useCallback((animated = true) => {
80
+ const current = currentPageRef.current;
81
+ if (current < numberOfScreens - 1) {
82
+ animateToOffset(width * (current + 1), animated);
83
+ setCurrentPage(current + 1);
84
+ } else if (loop) {
85
+ animateToOffset(0, animated);
86
+ setCurrentPage(0);
87
+ }
88
+ }, [numberOfScreens, loop, width, animateToOffset, setCurrentPage]);
89
+ const previousPage = React.useCallback((animated = true) => {
90
+ const current = currentPageRef.current;
91
+ if (current > 0) {
92
+ animateToOffset(width * (current - 1), animated);
93
+ setCurrentPage(current - 1);
94
+ } else if (loop) {
95
+ animateToOffset(width * (numberOfScreens - 1), animated);
96
+ setCurrentPage(numberOfScreens - 1);
97
+ }
98
+ }, [numberOfScreens, loop, width, animateToOffset, setCurrentPage]);
99
+ const scrollTo = React.useCallback((index, animated = true) => {
100
+ if (index >= 0 && index < numberOfScreens) {
101
+ animateToOffset(index * width, animated);
38
102
  setCurrentPage(index);
39
103
  }
40
- };
104
+ }, [numberOfScreens, width, animateToOffset, setCurrentPage]);
105
+ const pauseAutoPlay = React.useCallback(() => setIsAutoPlaying(false), []);
106
+ const resumeAutoPlay = React.useCallback(() => setIsAutoPlaying(autoPlay), [autoPlay]);
107
+
108
+ // Autoplay timer. Recreated whenever the page changes so it always advances
109
+ // from the current position; pauses when the user interacts with the slider.
110
+ React.useEffect(() => {
111
+ if (!isAutoPlaying || numberOfScreens <= 1) return;
112
+ if (!loop && currentPage >= numberOfScreens - 1) return;
113
+ const timer = setTimeout(() => nextPage(true), autoPlayInterval);
114
+ return () => clearTimeout(timer);
115
+ }, [isAutoPlaying, currentPage, numberOfScreens, autoPlayInterval, loop, nextPage]);
41
116
  const contextValue = {
42
117
  scrollEnabled: enableScroll,
43
118
  enableScroll: setEnableScroll,
119
+ width,
44
120
  currentPage,
45
121
  numberOfScreens,
46
122
  nextPage,
123
+ previousPage,
47
124
  setCurrentPage,
48
125
  flatListRef,
126
+ setFlatListRef,
49
127
  scrollTo,
50
128
  progress,
51
- isDone
129
+ isDone,
130
+ pauseAutoPlay,
131
+ resumeAutoPlay
52
132
  };
53
133
  return /*#__PURE__*/React.createElement(OnboardingContext.Provider, {
54
134
  value: contextValue
@@ -1 +1 @@
1
- {"version":3,"names":["React","Dimensions","OnboardingContext","createContext","undefined","OnboardingProvider","children","width","get","numberOfScreens","scrollEnabled","getProgress","page","Math","round","currentPage","setPage","useState","progress","setProgress","isDone","setIsDone","enableScroll","setEnableScroll","flatListRef","useRef","setCurrentPage","index","nextPage","animated","current","scrollToOffset","offset","scrollTo","contextValue","createElement","Provider","value"],"sourceRoot":"../../../src","sources":["context/OnboardingContext.tsx"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,QAAuB,cAAc;AA2BxD,OAAO,MAAMC,iBAAiB,gBAAGF,KAAK,CAACG,aAAa,CAElDC,SAAS,CAAC;AAEZ,OAAO,MAAMC,kBAAqD,GAAGA,CAAC;EACpEC,QAAQ;EACRC,KAAK,GAAGN,UAAU,CAACO,GAAG,CAAC,QAAQ,CAAC,CAACD,KAAK;EACtCE,eAAe;EACfC;AACF,CAAC,KAAK;EACJ,MAAMC,WAAW,GAAIC,IAAY,IAAK;IACpC,OAAOC,IAAI,CAACC,KAAK,CAAE,CAACF,IAAI,GAAG,CAAC,IAAIH,eAAe,GAAI,GAAG,CAAC;EACzD,CAAC;EAED,MAAM,CAACM,WAAW,EAAEC,OAAO,CAAC,GAAGhB,KAAK,CAACiB,QAAQ,CAAC,CAAC,CAAC;EAChD,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGnB,KAAK,CAACiB,QAAQ,CAACN,WAAW,CAAC,CAAC,CAAC,CAAC;EAC9D,MAAM,CAACS,MAAM,EAAEC,SAAS,CAAC,GAAGrB,KAAK,CAACiB,QAAQ,CAAC,KAAK,CAAC;EACjD,MAAM,CAACK,YAAY,EAAEC,eAAe,CAAC,GAAGvB,KAAK,CAACiB,QAAQ,CACpDP,aACF,CAAC;EACD,MAAMc,WAAW,GAAGxB,KAAK,CAACyB,MAAM,CAAW,IAAI,CAAC;EAEhD,MAAMC,cAAc,GAAIC,KAAa,IAAK;IACxCX,OAAO,CAACW,KAAK,CAAC;IACdR,WAAW,CAACR,WAAW,CAACgB,KAAK,CAAC,CAAC;IAC/BN,SAAS,CAACM,KAAK,KAAKlB,eAAe,GAAG,CAAC,CAAC;EAC1C,CAAC;EAED,MAAMmB,QAAQ,GAAGA,CAACC,QAAiB,GAAG,IAAI,KAAK;IAC7C,IAAIL,WAAW,CAACM,OAAO,IAAIf,WAAW,GAAGN,eAAe,GAAG,CAAC,EAAE;MAC5De,WAAW,CAACM,OAAO,CAACC,cAAc,CAAC;QACjCC,MAAM,EAAEzB,KAAK,IAAIQ,WAAW,GAAG,CAAC,CAAC;QACjCc,QAAQ,EAAEA;MACZ,CAAC,CAAC;MACFH,cAAc,CAACX,WAAW,GAAG,CAAC,CAAC;IACjC;EACF,CAAC;EAED,MAAMkB,QAAQ,GAAGA,CAACN,KAAa,EAAEE,QAAiB,GAAG,IAAI,KAAK;IAC5D,IAAIL,WAAW,CAACM,OAAO,IAAIH,KAAK,IAAI,CAAC,EAAE;MACrCH,WAAW,CAACM,OAAO,CAACC,cAAc,CAAC;QACjCC,MAAM,EAAEL,KAAK,GAAGpB,KAAK;QACrBsB,QAAQ,EAAEA;MACZ,CAAC,CAAC;MACFH,cAAc,CAACC,KAAK,CAAC;IACvB;EACF,CAAC;EAED,MAAMO,YAAmC,GAAG;IAC1CxB,aAAa,EAAEY,YAAY;IAC3BA,YAAY,EAAEC,eAAe;IAC7BR,WAAW;IACXN,eAAe;IACfmB,QAAQ;IACRF,cAAc;IACdF,WAAW;IACXS,QAAQ;IACRf,QAAQ;IACRE;EACF,CAAC;EAED,oBACEpB,KAAA,CAAAmC,aAAA,CAACjC,iBAAiB,CAACkC,QAAQ;IAACC,KAAK,EAAEH;EAAa,GAC7C5B,QACyB,CAAC;AAEjC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","AccessibilityInfo","Animated","Dimensions","OnboardingContext","createContext","undefined","OnboardingProvider","children","width","widthProp","numberOfScreens","scrollEnabled","onPageChange","scrollAnimationDuration","autoPlay","autoPlayInterval","loop","get","getProgress","page","Math","round","currentPage","setPage","useState","progress","setProgress","isDone","setIsDone","enableScroll","setEnableScroll","flatListRef","useRef","setFlatListRef","useCallback","node","current","currentPageRef","isAutoPlaying","setIsAutoPlaying","useEffect","scrollAnim","useMemo","Value","id","addListener","value","_flatListRef$current","scrollToOffset","offset","animated","removeListener","animateToOffset","stopAnimation","setValue","timing","toValue","duration","useNativeDriver","start","setCurrentPage","index","announceForAccessibility","nextPage","previousPage","scrollTo","pauseAutoPlay","resumeAutoPlay","timer","setTimeout","clearTimeout","contextValue","createElement","Provider"],"sourceRoot":"../../../src","sources":["context/OnboardingContext.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@ import { OnboardingContext } from '../context/OnboardingContext';
3
3
  export const useOnboarding = () => {
4
4
  const context = React.useContext(OnboardingContext);
5
5
  if (!context) {
6
- throw new Error('useOnboardingContext must be used within an OnboardingProvider');
6
+ throw new Error('useOnboarding must be used within an OnboardingProvider');
7
7
  }
8
8
  return context;
9
9
  };
@@ -1 +1 @@
1
- {"version":3,"names":["React","OnboardingContext","useOnboarding","context","useContext","Error"],"sourceRoot":"../../../src","sources":["hooks/useOnboarding.tsx"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,iBAAiB,QAAQ,8BAA8B;AAEhE,OAAO,MAAMC,aAAa,GAAGA,CAAA,KAAM;EACjC,MAAMC,OAAO,GAAGH,KAAK,CAACI,UAAU,CAACH,iBAAiB,CAAC;EACnD,IAAI,CAACE,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CACb,gEACF,CAAC;EACH;EACA,OAAOF,OAAO;AAChB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","OnboardingContext","useOnboarding","context","useContext","Error"],"sourceRoot":"../../../src","sources":["hooks/useOnboarding.tsx"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,iBAAiB,QAAQ,8BAA8B;AAEhE,OAAO,MAAMC,aAAa,GAAGA,CAAA,KAAM;EACjC,MAAMC,OAAO,GAAGH,KAAK,CAACI,UAAU,CAACH,iBAAiB,CAAC;EACnD,IAAI,CAACE,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CAAC,yDAAyD,CAAC;EAC5E;EACA,OAAOF,OAAO;AAChB,CAAC","ignoreList":[]}
@@ -1,12 +1,19 @@
1
1
  import React from 'react';
2
- import { Swiper } from './components/Swiper';
2
+ import { Swiper } from './components';
3
3
  import { OnboardingProvider } from './context/OnboardingContext';
4
4
  export { useOnboarding } from './hooks/useOnboarding';
5
+ export { createOnboardingStorage, hasCompletedOnboarding, markOnboardingComplete, resetOnboarding } from './utils/persistence';
5
6
  export function Onboarding(props) {
6
7
  var _props$pages;
7
8
  const numberOfScreens = React.Children.count(props.children);
8
9
  return /*#__PURE__*/React.createElement(OnboardingProvider, {
10
+ width: props.width,
9
11
  scrollEnabled: props.scrollEnabled,
12
+ onPageChange: props.onPageChange,
13
+ scrollAnimationDuration: props.scrollAnimationDuration,
14
+ autoPlay: props.autoPlay,
15
+ autoPlayInterval: props.autoPlayInterval,
16
+ loop: props.loop,
10
17
  numberOfScreens: numberOfScreens || ((_props$pages = props.pages) === null || _props$pages === void 0 ? void 0 : _props$pages.length) || 0
11
18
  }, /*#__PURE__*/React.createElement(Swiper, props, props.children));
12
19
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","Swiper","OnboardingProvider","useOnboarding","Onboarding","props","_props$pages","numberOfScreens","Children","count","children","createElement","scrollEnabled","pages","length"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,kBAAkB,QAAQ,6BAA6B;AAGhE,SAASC,aAAa,QAAQ,uBAAuB;AAErD,OAAO,SAASC,UAAUA,CAACC,KAAsB,EAAE;EAAA,IAAAC,YAAA;EACjD,MAAMC,eAAe,GAAGP,KAAK,CAACQ,QAAQ,CAACC,KAAK,CAACJ,KAAK,CAACK,QAAQ,CAAC;EAC5D,oBACEV,KAAA,CAAAW,aAAA,CAACT,kBAAkB;IACjBU,aAAa,EAAEP,KAAK,CAACO,aAAc;IACnCL,eAAe,EAAEA,eAAe,MAAAD,YAAA,GAAID,KAAK,CAACQ,KAAK,cAAAP,YAAA,uBAAXA,YAAA,CAAaQ,MAAM,KAAI;EAAE,gBAE7Dd,KAAA,CAAAW,aAAA,CAACV,MAAM,EAAKI,KAAK,EAAGA,KAAK,CAACK,QAAiB,CACzB,CAAC;AAEzB","ignoreList":[]}
1
+ {"version":3,"names":["React","Swiper","OnboardingProvider","useOnboarding","createOnboardingStorage","hasCompletedOnboarding","markOnboardingComplete","resetOnboarding","Onboarding","props","_props$pages","numberOfScreens","Children","count","children","createElement","width","scrollEnabled","onPageChange","scrollAnimationDuration","autoPlay","autoPlayInterval","loop","pages","length"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,MAAM,QAAQ,cAAc;AACrC,SAASC,kBAAkB,QAAQ,6BAA6B;AAGhE,SAASC,aAAa,QAAQ,uBAAuB;AAGrD,SACEC,uBAAuB,EACvBC,sBAAsB,EACtBC,sBAAsB,EACtBC,eAAe,QACV,qBAAqB;AAG5B,OAAO,SAASC,UAAUA,CAACC,KAAsB,EAAE;EAAA,IAAAC,YAAA;EACjD,MAAMC,eAAe,GAAGX,KAAK,CAACY,QAAQ,CAACC,KAAK,CAACJ,KAAK,CAACK,QAAQ,CAAC;EAC5D,oBACEd,KAAA,CAAAe,aAAA,CAACb,kBAAkB;IACjBc,KAAK,EAAEP,KAAK,CAACO,KAAM;IACnBC,aAAa,EAAER,KAAK,CAACQ,aAAc;IACnCC,YAAY,EAAET,KAAK,CAACS,YAAa;IACjCC,uBAAuB,EAAEV,KAAK,CAACU,uBAAwB;IACvDC,QAAQ,EAAEX,KAAK,CAACW,QAAS;IACzBC,gBAAgB,EAAEZ,KAAK,CAACY,gBAAiB;IACzCC,IAAI,EAAEb,KAAK,CAACa,IAAK;IACjBX,eAAe,EAAEA,eAAe,MAAAD,YAAA,GAAID,KAAK,CAACc,KAAK,cAAAb,YAAA,uBAAXA,YAAA,CAAac,MAAM,KAAI;EAAE,gBAE7DxB,KAAA,CAAAe,aAAA,CAACd,MAAM,EAAKQ,KAAK,EAAGA,KAAK,CAACK,QAAiB,CACzB,CAAC;AAEzB","ignoreList":[]}