@shaquillehinds/react-native-bottom-sheet 0.0.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 (187) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +880 -0
  3. package/lib/commonjs/BottomSheet/animations/drag.animation.js +72 -0
  4. package/lib/commonjs/BottomSheet/animations/drag.animation.js.map +1 -0
  5. package/lib/commonjs/BottomSheet/components/BottomSheet.js +92 -0
  6. package/lib/commonjs/BottomSheet/components/BottomSheet.js.map +1 -0
  7. package/lib/commonjs/BottomSheet/components/BottomSheetFlatlist.js +38 -0
  8. package/lib/commonjs/BottomSheet/components/BottomSheetFlatlist.js.map +1 -0
  9. package/lib/commonjs/BottomSheet/components/BottomSheetModal.js +34 -0
  10. package/lib/commonjs/BottomSheet/components/BottomSheetModal.js.map +1 -0
  11. package/lib/commonjs/BottomSheet/components/BottomSheetScrollView.js +37 -0
  12. package/lib/commonjs/BottomSheet/components/BottomSheetScrollView.js.map +1 -0
  13. package/lib/commonjs/BottomSheet/config/bottomSheet.constants.js +35 -0
  14. package/lib/commonjs/BottomSheet/config/bottomSheet.constants.js.map +1 -0
  15. package/lib/commonjs/BottomSheet/config/bottomSheet.styles.js +42 -0
  16. package/lib/commonjs/BottomSheet/config/bottomSheet.styles.js.map +1 -0
  17. package/lib/commonjs/BottomSheet/config/bottomSheet.types.js +14 -0
  18. package/lib/commonjs/BottomSheet/config/bottomSheet.types.js.map +1 -0
  19. package/lib/commonjs/BottomSheet/controller/bottomFlatlist.controller.js +69 -0
  20. package/lib/commonjs/BottomSheet/controller/bottomFlatlist.controller.js.map +1 -0
  21. package/lib/commonjs/BottomSheet/controller/bottomScrollView.controller.js +41 -0
  22. package/lib/commonjs/BottomSheet/controller/bottomScrollView.controller.js.map +1 -0
  23. package/lib/commonjs/BottomSheet/controller/bottomSheet.controller.js +216 -0
  24. package/lib/commonjs/BottomSheet/controller/bottomSheet.controller.js.map +1 -0
  25. package/lib/commonjs/BottomSheet/controller/callbacks.controller.js +135 -0
  26. package/lib/commonjs/BottomSheet/controller/callbacks.controller.js.map +1 -0
  27. package/lib/commonjs/BottomSheet/controller/dragAnimation.controller.js +127 -0
  28. package/lib/commonjs/BottomSheet/controller/dragAnimation.controller.js.map +1 -0
  29. package/lib/commonjs/BottomSheet/controller/hooks/useBottomSheetRef.js +60 -0
  30. package/lib/commonjs/BottomSheet/controller/hooks/useBottomSheetRef.js.map +1 -0
  31. package/lib/commonjs/BottomSheet/controller/hooks/useBottomSheetUtils.js +74 -0
  32. package/lib/commonjs/BottomSheet/controller/hooks/useBottomSheetUtils.js.map +1 -0
  33. package/lib/commonjs/BottomSheet/controller/index.js +17 -0
  34. package/lib/commonjs/BottomSheet/controller/index.js.map +1 -0
  35. package/lib/commonjs/BottomSheet/controller/keyboardAnimation.controller.js +88 -0
  36. package/lib/commonjs/BottomSheet/controller/keyboardAnimation.controller.js.map +1 -0
  37. package/lib/commonjs/BottomSheet/controller/scrollContent.controller.js +89 -0
  38. package/lib/commonjs/BottomSheet/controller/scrollContent.controller.js.map +1 -0
  39. package/lib/commonjs/BottomSheet/index.js +130 -0
  40. package/lib/commonjs/BottomSheet/index.js.map +1 -0
  41. package/lib/commonjs/index.js +17 -0
  42. package/lib/commonjs/index.js.map +1 -0
  43. package/lib/commonjs/package.json +1 -0
  44. package/lib/module/BottomSheet/animations/drag.animation.js +68 -0
  45. package/lib/module/BottomSheet/animations/drag.animation.js.map +1 -0
  46. package/lib/module/BottomSheet/components/BottomSheet.js +87 -0
  47. package/lib/module/BottomSheet/components/BottomSheet.js.map +1 -0
  48. package/lib/module/BottomSheet/components/BottomSheetFlatlist.js +32 -0
  49. package/lib/module/BottomSheet/components/BottomSheetFlatlist.js.map +1 -0
  50. package/lib/module/BottomSheet/components/BottomSheetModal.js +30 -0
  51. package/lib/module/BottomSheet/components/BottomSheetModal.js.map +1 -0
  52. package/lib/module/BottomSheet/components/BottomSheetScrollView.js +31 -0
  53. package/lib/module/BottomSheet/components/BottomSheetScrollView.js.map +1 -0
  54. package/lib/module/BottomSheet/config/bottomSheet.constants.js +30 -0
  55. package/lib/module/BottomSheet/config/bottomSheet.constants.js.map +1 -0
  56. package/lib/module/BottomSheet/config/bottomSheet.styles.js +38 -0
  57. package/lib/module/BottomSheet/config/bottomSheet.styles.js.map +1 -0
  58. package/lib/module/BottomSheet/config/bottomSheet.types.js +10 -0
  59. package/lib/module/BottomSheet/config/bottomSheet.types.js.map +1 -0
  60. package/lib/module/BottomSheet/controller/bottomFlatlist.controller.js +64 -0
  61. package/lib/module/BottomSheet/controller/bottomFlatlist.controller.js.map +1 -0
  62. package/lib/module/BottomSheet/controller/bottomScrollView.controller.js +37 -0
  63. package/lib/module/BottomSheet/controller/bottomScrollView.controller.js.map +1 -0
  64. package/lib/module/BottomSheet/controller/bottomSheet.controller.js +212 -0
  65. package/lib/module/BottomSheet/controller/bottomSheet.controller.js.map +1 -0
  66. package/lib/module/BottomSheet/controller/callbacks.controller.js +130 -0
  67. package/lib/module/BottomSheet/controller/callbacks.controller.js.map +1 -0
  68. package/lib/module/BottomSheet/controller/dragAnimation.controller.js +122 -0
  69. package/lib/module/BottomSheet/controller/dragAnimation.controller.js.map +1 -0
  70. package/lib/module/BottomSheet/controller/hooks/useBottomSheetRef.js +56 -0
  71. package/lib/module/BottomSheet/controller/hooks/useBottomSheetRef.js.map +1 -0
  72. package/lib/module/BottomSheet/controller/hooks/useBottomSheetUtils.js +70 -0
  73. package/lib/module/BottomSheet/controller/hooks/useBottomSheetUtils.js.map +1 -0
  74. package/lib/module/BottomSheet/controller/index.js +4 -0
  75. package/lib/module/BottomSheet/controller/index.js.map +1 -0
  76. package/lib/module/BottomSheet/controller/keyboardAnimation.controller.js +84 -0
  77. package/lib/module/BottomSheet/controller/keyboardAnimation.controller.js.map +1 -0
  78. package/lib/module/BottomSheet/controller/scrollContent.controller.js +84 -0
  79. package/lib/module/BottomSheet/controller/scrollContent.controller.js.map +1 -0
  80. package/lib/module/BottomSheet/index.js +112 -0
  81. package/lib/module/BottomSheet/index.js.map +1 -0
  82. package/lib/module/index.js +4 -0
  83. package/lib/module/index.js.map +1 -0
  84. package/lib/module/package.json +1 -0
  85. package/lib/typescript/commonjs/package.json +1 -0
  86. package/lib/typescript/commonjs/src/BottomSheet/animations/drag.animation.d.ts +31 -0
  87. package/lib/typescript/commonjs/src/BottomSheet/animations/drag.animation.d.ts.map +1 -0
  88. package/lib/typescript/commonjs/src/BottomSheet/components/BottomSheet.d.ts +9 -0
  89. package/lib/typescript/commonjs/src/BottomSheet/components/BottomSheet.d.ts.map +1 -0
  90. package/lib/typescript/commonjs/src/BottomSheet/components/BottomSheetFlatlist.d.ts +3 -0
  91. package/lib/typescript/commonjs/src/BottomSheet/components/BottomSheetFlatlist.d.ts.map +1 -0
  92. package/lib/typescript/commonjs/src/BottomSheet/components/BottomSheetModal.d.ts +8 -0
  93. package/lib/typescript/commonjs/src/BottomSheet/components/BottomSheetModal.d.ts.map +1 -0
  94. package/lib/typescript/commonjs/src/BottomSheet/components/BottomSheetScrollView.d.ts +3 -0
  95. package/lib/typescript/commonjs/src/BottomSheet/components/BottomSheetScrollView.d.ts.map +1 -0
  96. package/lib/typescript/commonjs/src/BottomSheet/config/bottomSheet.constants.d.ts +30 -0
  97. package/lib/typescript/commonjs/src/BottomSheet/config/bottomSheet.constants.d.ts.map +1 -0
  98. package/lib/typescript/commonjs/src/BottomSheet/config/bottomSheet.styles.d.ts +37 -0
  99. package/lib/typescript/commonjs/src/BottomSheet/config/bottomSheet.styles.d.ts.map +1 -0
  100. package/lib/typescript/commonjs/src/BottomSheet/config/bottomSheet.types.d.ts +185 -0
  101. package/lib/typescript/commonjs/src/BottomSheet/config/bottomSheet.types.d.ts.map +1 -0
  102. package/lib/typescript/commonjs/src/BottomSheet/controller/bottomFlatlist.controller.d.ts +480 -0
  103. package/lib/typescript/commonjs/src/BottomSheet/controller/bottomFlatlist.controller.d.ts.map +1 -0
  104. package/lib/typescript/commonjs/src/BottomSheet/controller/bottomScrollView.controller.d.ts +338 -0
  105. package/lib/typescript/commonjs/src/BottomSheet/controller/bottomScrollView.controller.d.ts.map +1 -0
  106. package/lib/typescript/commonjs/src/BottomSheet/controller/bottomSheet.controller.d.ts +51 -0
  107. package/lib/typescript/commonjs/src/BottomSheet/controller/bottomSheet.controller.d.ts.map +1 -0
  108. package/lib/typescript/commonjs/src/BottomSheet/controller/callbacks.controller.d.ts +36 -0
  109. package/lib/typescript/commonjs/src/BottomSheet/controller/callbacks.controller.d.ts.map +1 -0
  110. package/lib/typescript/commonjs/src/BottomSheet/controller/dragAnimation.controller.d.ts +27 -0
  111. package/lib/typescript/commonjs/src/BottomSheet/controller/dragAnimation.controller.d.ts.map +1 -0
  112. package/lib/typescript/commonjs/src/BottomSheet/controller/hooks/useBottomSheetRef.d.ts +12 -0
  113. package/lib/typescript/commonjs/src/BottomSheet/controller/hooks/useBottomSheetRef.d.ts.map +1 -0
  114. package/lib/typescript/commonjs/src/BottomSheet/controller/hooks/useBottomSheetUtils.d.ts +40 -0
  115. package/lib/typescript/commonjs/src/BottomSheet/controller/hooks/useBottomSheetUtils.d.ts.map +1 -0
  116. package/lib/typescript/commonjs/src/BottomSheet/controller/index.d.ts +2 -0
  117. package/lib/typescript/commonjs/src/BottomSheet/controller/index.d.ts.map +1 -0
  118. package/lib/typescript/commonjs/src/BottomSheet/controller/keyboardAnimation.controller.d.ts +15 -0
  119. package/lib/typescript/commonjs/src/BottomSheet/controller/keyboardAnimation.controller.d.ts.map +1 -0
  120. package/lib/typescript/commonjs/src/BottomSheet/controller/scrollContent.controller.d.ts +20 -0
  121. package/lib/typescript/commonjs/src/BottomSheet/controller/scrollContent.controller.d.ts.map +1 -0
  122. package/lib/typescript/commonjs/src/BottomSheet/index.d.ts +23 -0
  123. package/lib/typescript/commonjs/src/BottomSheet/index.d.ts.map +1 -0
  124. package/lib/typescript/commonjs/src/index.d.ts +2 -0
  125. package/lib/typescript/commonjs/src/index.d.ts.map +1 -0
  126. package/lib/typescript/module/package.json +1 -0
  127. package/lib/typescript/module/src/BottomSheet/animations/drag.animation.d.ts +31 -0
  128. package/lib/typescript/module/src/BottomSheet/animations/drag.animation.d.ts.map +1 -0
  129. package/lib/typescript/module/src/BottomSheet/components/BottomSheet.d.ts +9 -0
  130. package/lib/typescript/module/src/BottomSheet/components/BottomSheet.d.ts.map +1 -0
  131. package/lib/typescript/module/src/BottomSheet/components/BottomSheetFlatlist.d.ts +3 -0
  132. package/lib/typescript/module/src/BottomSheet/components/BottomSheetFlatlist.d.ts.map +1 -0
  133. package/lib/typescript/module/src/BottomSheet/components/BottomSheetModal.d.ts +8 -0
  134. package/lib/typescript/module/src/BottomSheet/components/BottomSheetModal.d.ts.map +1 -0
  135. package/lib/typescript/module/src/BottomSheet/components/BottomSheetScrollView.d.ts +3 -0
  136. package/lib/typescript/module/src/BottomSheet/components/BottomSheetScrollView.d.ts.map +1 -0
  137. package/lib/typescript/module/src/BottomSheet/config/bottomSheet.constants.d.ts +30 -0
  138. package/lib/typescript/module/src/BottomSheet/config/bottomSheet.constants.d.ts.map +1 -0
  139. package/lib/typescript/module/src/BottomSheet/config/bottomSheet.styles.d.ts +37 -0
  140. package/lib/typescript/module/src/BottomSheet/config/bottomSheet.styles.d.ts.map +1 -0
  141. package/lib/typescript/module/src/BottomSheet/config/bottomSheet.types.d.ts +185 -0
  142. package/lib/typescript/module/src/BottomSheet/config/bottomSheet.types.d.ts.map +1 -0
  143. package/lib/typescript/module/src/BottomSheet/controller/bottomFlatlist.controller.d.ts +480 -0
  144. package/lib/typescript/module/src/BottomSheet/controller/bottomFlatlist.controller.d.ts.map +1 -0
  145. package/lib/typescript/module/src/BottomSheet/controller/bottomScrollView.controller.d.ts +338 -0
  146. package/lib/typescript/module/src/BottomSheet/controller/bottomScrollView.controller.d.ts.map +1 -0
  147. package/lib/typescript/module/src/BottomSheet/controller/bottomSheet.controller.d.ts +51 -0
  148. package/lib/typescript/module/src/BottomSheet/controller/bottomSheet.controller.d.ts.map +1 -0
  149. package/lib/typescript/module/src/BottomSheet/controller/callbacks.controller.d.ts +36 -0
  150. package/lib/typescript/module/src/BottomSheet/controller/callbacks.controller.d.ts.map +1 -0
  151. package/lib/typescript/module/src/BottomSheet/controller/dragAnimation.controller.d.ts +27 -0
  152. package/lib/typescript/module/src/BottomSheet/controller/dragAnimation.controller.d.ts.map +1 -0
  153. package/lib/typescript/module/src/BottomSheet/controller/hooks/useBottomSheetRef.d.ts +12 -0
  154. package/lib/typescript/module/src/BottomSheet/controller/hooks/useBottomSheetRef.d.ts.map +1 -0
  155. package/lib/typescript/module/src/BottomSheet/controller/hooks/useBottomSheetUtils.d.ts +40 -0
  156. package/lib/typescript/module/src/BottomSheet/controller/hooks/useBottomSheetUtils.d.ts.map +1 -0
  157. package/lib/typescript/module/src/BottomSheet/controller/index.d.ts +2 -0
  158. package/lib/typescript/module/src/BottomSheet/controller/index.d.ts.map +1 -0
  159. package/lib/typescript/module/src/BottomSheet/controller/keyboardAnimation.controller.d.ts +15 -0
  160. package/lib/typescript/module/src/BottomSheet/controller/keyboardAnimation.controller.d.ts.map +1 -0
  161. package/lib/typescript/module/src/BottomSheet/controller/scrollContent.controller.d.ts +20 -0
  162. package/lib/typescript/module/src/BottomSheet/controller/scrollContent.controller.d.ts.map +1 -0
  163. package/lib/typescript/module/src/BottomSheet/index.d.ts +23 -0
  164. package/lib/typescript/module/src/BottomSheet/index.d.ts.map +1 -0
  165. package/lib/typescript/module/src/index.d.ts +2 -0
  166. package/lib/typescript/module/src/index.d.ts.map +1 -0
  167. package/package.json +203 -0
  168. package/src/BottomSheet/animations/drag.animation.ts +86 -0
  169. package/src/BottomSheet/components/BottomSheet.tsx +157 -0
  170. package/src/BottomSheet/components/BottomSheetFlatlist.tsx +46 -0
  171. package/src/BottomSheet/components/BottomSheetModal.tsx +47 -0
  172. package/src/BottomSheet/components/BottomSheetScrollView.tsx +46 -0
  173. package/src/BottomSheet/config/bottomSheet.constants.ts +31 -0
  174. package/src/BottomSheet/config/bottomSheet.styles.ts +42 -0
  175. package/src/BottomSheet/config/bottomSheet.types.ts +246 -0
  176. package/src/BottomSheet/controller/bottomFlatlist.controller.ts +87 -0
  177. package/src/BottomSheet/controller/bottomScrollView.controller.ts +43 -0
  178. package/src/BottomSheet/controller/bottomSheet.controller.ts +238 -0
  179. package/src/BottomSheet/controller/callbacks.controller.ts +222 -0
  180. package/src/BottomSheet/controller/dragAnimation.controller.ts +211 -0
  181. package/src/BottomSheet/controller/hooks/useBottomSheetRef.ts +73 -0
  182. package/src/BottomSheet/controller/hooks/useBottomSheetUtils.ts +75 -0
  183. package/src/BottomSheet/controller/index.ts +1 -0
  184. package/src/BottomSheet/controller/keyboardAnimation.controller.ts +148 -0
  185. package/src/BottomSheet/controller/scrollContent.controller.ts +120 -0
  186. package/src/BottomSheet/index.tsx +139 -0
  187. package/src/index.tsx +1 -0
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useDragAnimation = useDragAnimation;
7
+ var _reactNativeReanimated = require("react-native-reanimated");
8
+ var _react = require("react");
9
+ //$lf-ignore
10
+
11
+ // function clamp(val: number, min: number, max: number) {
12
+ // 'worklet';
13
+ // return Math.min(Math.max(val, min), max);
14
+ // }
15
+
16
+ //prettier-ignore
17
+ // function stretch(val: number,min: number,max: number,maxStretch: number,stretchOn: 'min' | 'max') {
18
+ // 'worklet';
19
+ // const isMax = stretchOn === 'max';
20
+ // const limit = isMax ? max : min;
21
+ // const direction = isMax ? 1 : -1;
22
+ // const inBounds = isMax ? val <= max : val >= min;
23
+ // if (inBounds) return val;
24
+ // const overshoot = Math.abs(val - limit);
25
+ // const resistance = maxStretch * (1 - 1 / (overshoot / maxStretch + 1));
26
+ // return limit + resistance * direction;
27
+ // }
28
+
29
+ // function maxStretch(val:number, max: number, stretch: number){
30
+ // 'worklet';
31
+ // return val <= max ? val : max - stretch + stretch / ((val - max) / stretch + 1);
32
+ // }
33
+ function minStretch(val, min, stretch) {
34
+ 'worklet';
35
+
36
+ //prettier-ignore
37
+ return val >= min ? val : min - stretch + stretch / ((min - val) / stretch + 1);
38
+ }
39
+ function useDragAnimation(props) {
40
+ const translationX = props?.translationX || (0, _reactNativeReanimated.useSharedValue)(0);
41
+ const translationY = props?.translationY || (0, _reactNativeReanimated.useSharedValue)(0);
42
+ const prevTranslationX = props?.prevTranslationX || (0, _reactNativeReanimated.useSharedValue)(0);
43
+ const prevTranslationY = props?.prevTranslationY || (0, _reactNativeReanimated.useSharedValue)(0);
44
+ const dragAnimatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => ({
45
+ transform: [{
46
+ translateX: translationX.value
47
+ }, {
48
+ translateY: translationY.value
49
+ }]
50
+ }));
51
+ const onDragStart = (0, _react.useCallback)(() => {
52
+ 'worklet';
53
+
54
+ prevTranslationX.value = translationX.value;
55
+ prevTranslationY.value = translationY.value;
56
+ }, []);
57
+ const onDrag = (0, _react.useCallback)(dragProps => {
58
+ 'worklet';
59
+
60
+ translationY.value = minStretch(prevTranslationY.value + dragProps.posY, dragProps.minPosY, 100);
61
+ }, []);
62
+ return {
63
+ onDrag,
64
+ onDragStart,
65
+ dragAnimatedStyle,
66
+ translationX,
67
+ translationY,
68
+ prevTranslationX,
69
+ prevTranslationY
70
+ };
71
+ }
72
+ //# sourceMappingURL=drag.animation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNativeReanimated","require","_react","minStretch","val","min","stretch","useDragAnimation","props","translationX","useSharedValue","translationY","prevTranslationX","prevTranslationY","dragAnimatedStyle","useAnimatedStyle","transform","translateX","value","translateY","onDragStart","useCallback","onDrag","dragProps","posY","minPosY"],"sourceRoot":"../../../../src","sources":["BottomSheet/animations/drag.animation.ts"],"mappings":";;;;;;AACA,IAAAA,sBAAA,GAAAC,OAAA;AAKA,IAAAC,MAAA,GAAAD,OAAA;AANA;;AAQA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAASE,UAAUA,CAACC,GAAW,EAAEC,GAAW,EAAEC,OAAe,EAAE;EAC7D,SAAS;;EACT;EACA,OAAOF,GAAG,IAAIC,GAAG,GAAGD,GAAG,GAAGC,GAAG,GAAGC,OAAO,GAAGA,OAAO,IAAI,CAACD,GAAG,GAAGD,GAAG,IAAIE,OAAO,GAAG,CAAC,CAAC;AACjF;AAgBO,SAASC,gBAAgBA,CAACC,KAA4B,EAAE;EAC7D,MAAMC,YAAY,GAAGD,KAAK,EAAEC,YAAY,IAAI,IAAAC,qCAAc,EAAC,CAAC,CAAC;EAC7D,MAAMC,YAAY,GAAGH,KAAK,EAAEG,YAAY,IAAI,IAAAD,qCAAc,EAAC,CAAC,CAAC;EAC7D,MAAME,gBAAgB,GAAGJ,KAAK,EAAEI,gBAAgB,IAAI,IAAAF,qCAAc,EAAC,CAAC,CAAC;EACrE,MAAMG,gBAAgB,GAAGL,KAAK,EAAEK,gBAAgB,IAAI,IAAAH,qCAAc,EAAC,CAAC,CAAC;EAErE,MAAMI,iBAAiB,GAAG,IAAAC,uCAAgB,EAAC,OAAO;IAChDC,SAAS,EAAE,CACT;MAAEC,UAAU,EAAER,YAAY,CAACS;IAAM,CAAC,EAClC;MAAEC,UAAU,EAAER,YAAY,CAACO;IAAM,CAAC;EAEtC,CAAC,CAAC,CAAC;EAEH,MAAME,WAAW,GAAG,IAAAC,kBAAW,EAAC,MAAM;IACpC,SAAS;;IACTT,gBAAgB,CAACM,KAAK,GAAGT,YAAY,CAACS,KAAK;IAC3CL,gBAAgB,CAACK,KAAK,GAAGP,YAAY,CAACO,KAAK;EAC7C,CAAC,EAAE,EAAE,CAAC;EACN,MAAMI,MAAM,GAAG,IAAAD,kBAAW,EAAEE,SAA+B,IAAK;IAC9D,SAAS;;IACTZ,YAAY,CAACO,KAAK,GAAGf,UAAU,CAC7BU,gBAAgB,CAACK,KAAK,GAAGK,SAAS,CAACC,IAAI,EACvCD,SAAS,CAACE,OAAO,EACjB,GACF,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EACN,OAAO;IACLH,MAAM;IACNF,WAAW;IACXN,iBAAiB;IACjBL,YAAY;IACZE,YAAY;IACZC,gBAAgB;IAChBC;EACF,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BottomSheetContext = exports.BottomSheet = void 0;
7
+ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
8
+ var _reactNative = require("react-native");
9
+ var _react = require("react");
10
+ var _bottomSheetStyles = require("../config/bottomSheet.styles.js");
11
+ var _reactNativeEssentials = require("@shaquillehinds/react-native-essentials");
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
+ const BottomSheetContext = exports.BottomSheetContext = /*#__PURE__*/(0, _react.createContext)(null);
15
+ const BottomSheet = exports.BottomSheet = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
16
+ const controller = props.controller;
17
+ (0, _react.useImperativeHandle)(ref, () => ({
18
+ animateCloseModal: prop => {
19
+ controller.disableLayoutAnimation.current = true;
20
+ (0, _reactNativeReanimated.runOnUI)(controller.animateModalClose)(prop);
21
+ },
22
+ snapToIndex: snapPointIndex => {
23
+ (0, _reactNativeReanimated.runOnUI)(controller.animateToSnapPointIndex)(snapPointIndex);
24
+ },
25
+ snapToPercentage: percentage => {
26
+ (0, _reactNativeReanimated.runOnUI)(controller.animateToPercentage)(percentage, controller.screenHeight);
27
+ },
28
+ getModalState: () => controller.modalState.current
29
+ }), [controller.screenHeight, controller.modalState.current]);
30
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.ModalForegroundWrapper, {
31
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.DragGesture, {
32
+ minDistance: 15,
33
+ disable: props.dragArea !== 'full',
34
+ onDrag: controller.onDragGesture,
35
+ onDragStart: controller.onDragStartGesture,
36
+ onDragEnd: controller.onDragEndGesture,
37
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeReanimated.default.View, {
38
+ style: [_bottomSheetStyles.bottomModalStyle.bottomSheet, props.style, controller.modalDimensionsStyle, controller.dragAnimatedStyle, {
39
+ backgroundColor: props.backgroundColor,
40
+ bottom: controller.modalDimensionsStyle.bottom + (props.bottomOffset || 0)
41
+ }],
42
+ children: [props.hideBumper ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {}) : props.dragArea === 'bumper' || !props.dragArea ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.DragGesture, {
43
+ onDrag: controller.onDragGesture,
44
+ onDragStart: controller.onDragStartGesture,
45
+ onDragEnd: controller.onDragEndGesture,
46
+ children: props.BumperComponent ? /*#__PURE__*/(0, _jsxRuntime.jsx)(props.BumperComponent, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(Bumper, {
47
+ ...props
48
+ })
49
+ }) : props.BumperComponent ? /*#__PURE__*/(0, _jsxRuntime.jsx)(props.BumperComponent, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(Bumper, {
50
+ ...props
51
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
52
+ onLayout: controller.onModalContentLayout,
53
+ style: [_bottomSheetStyles.bottomModalStyle.contentContainer, controller.modalContentAnimatedStyle, props.contentContainerStyle],
54
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(BottomSheetContext.Provider, {
55
+ value: {
56
+ scrollY: controller.scrollY,
57
+ onBeginScroll: controller.onBeginScroll,
58
+ onUpdateScroll: controller.onUpdateScroll,
59
+ onEndScroll: controller.onEndScroll,
60
+ scrollableComponentRef: controller.scrollableComponentRef,
61
+ maxScrollOffset: controller.maxScrollOffset,
62
+ inverted: controller.inverted
63
+ },
64
+ children: !props.showContentDelay ? props.children : !props.showContentDelay.type || props.showContentDelay.type === 'opacity' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
65
+ style: [controller.contentOpacityStyle],
66
+ children: props.children
67
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.ComponentMounter, {
68
+ component: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
69
+ entering: _reactNativeReanimated.FadeIn.delay(50).duration(200),
70
+ children: props.children
71
+ }),
72
+ mountDelayInMilliSeconds: props.showContentDelay.timeInMilliSecs,
73
+ showComponent: true,
74
+ setShowComponent: () => true
75
+ })
76
+ })
77
+ })]
78
+ })
79
+ })
80
+ });
81
+ });
82
+ function Bumper(props) {
83
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
84
+ style: [_bottomSheetStyles.bottomModalStyle.bumperContainer, {
85
+ backgroundColor: props.backgroundColor
86
+ }, props.bumperContainerStyle],
87
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
88
+ style: [_bottomSheetStyles.bottomModalStyle.bumper, props.bumperStyle]
89
+ })
90
+ });
91
+ }
92
+ //# sourceMappingURL=BottomSheet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNativeReanimated","_interopRequireWildcard","require","_reactNative","_react","_bottomSheetStyles","_reactNativeEssentials","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","BottomSheetContext","exports","createContext","BottomSheet","forwardRef","props","ref","controller","useImperativeHandle","animateCloseModal","prop","disableLayoutAnimation","current","runOnUI","animateModalClose","snapToIndex","snapPointIndex","animateToSnapPointIndex","snapToPercentage","percentage","animateToPercentage","screenHeight","getModalState","modalState","jsx","ModalForegroundWrapper","children","DragGesture","minDistance","disable","dragArea","onDrag","onDragGesture","onDragStart","onDragStartGesture","onDragEnd","onDragEndGesture","jsxs","View","style","styles","bottomSheet","modalDimensionsStyle","dragAnimatedStyle","backgroundColor","bottom","bottomOffset","hideBumper","Fragment","BumperComponent","Bumper","onLayout","onModalContentLayout","contentContainer","modalContentAnimatedStyle","contentContainerStyle","Provider","value","scrollY","onBeginScroll","onUpdateScroll","onEndScroll","scrollableComponentRef","maxScrollOffset","inverted","showContentDelay","type","contentOpacityStyle","ComponentMounter","component","entering","FadeIn","delay","duration","mountDelayInMilliSeconds","timeInMilliSecs","showComponent","setShowComponent","bumperContainer","bumperContainerStyle","bumper","bumperStyle"],"sourceRoot":"../../../../src","sources":["BottomSheet/components/BottomSheet.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BottomSheetFlatlist = BottomSheetFlatlist;
7
+ var _reactNativeReanimated = _interopRequireDefault(require("react-native-reanimated"));
8
+ var _bottomFlatlistController = require("../controller/bottomFlatlist.controller.js");
9
+ var _reactNativeEssentials = require("@shaquillehinds/react-native-essentials");
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ //$lf-ignore
13
+
14
+ function BottomSheetFlatlist(props) {
15
+ const controller = (0, _bottomFlatlistController.bottomFlatlistController)(props);
16
+ if (!controller.context) return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.FlatList, {
17
+ ...controller.flatlistProps,
18
+ ref: controller.refFlatlist,
19
+ onScroll: controller.onScroll
20
+ });
21
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.DragGesture, {
22
+ minDistance: 15,
23
+ enableContentScroll: true,
24
+ onDragStart: controller.context.onBeginScroll,
25
+ onDrag: controller.context.onUpdateScroll,
26
+ onDragEnd: controller.context.onEndScroll,
27
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.FlatList, {
28
+ ...controller.flatlistProps,
29
+ onScrollBeginDrag: controller.onScrollBegin,
30
+ onLayout: controller.onLayout,
31
+ onContentSizeChange: controller.onContentSizeChange,
32
+ ref: controller.refFlatlist || controller.context.scrollableComponentRef,
33
+ bounces: false,
34
+ onScroll: controller.animatedScrollHandler
35
+ })
36
+ });
37
+ }
38
+ //# sourceMappingURL=BottomSheetFlatlist.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNativeReanimated","_interopRequireDefault","require","_bottomFlatlistController","_reactNativeEssentials","_jsxRuntime","e","__esModule","default","BottomSheetFlatlist","props","controller","bottomFlatlistController","context","jsx","FlatList","flatlistProps","ref","refFlatlist","onScroll","DragGesture","minDistance","enableContentScroll","onDragStart","onBeginScroll","onDrag","onUpdateScroll","onDragEnd","onEndScroll","children","onScrollBeginDrag","onScrollBegin","onLayout","onContentSizeChange","scrollableComponentRef","bounces","animatedScrollHandler"],"sourceRoot":"../../../../src","sources":["BottomSheet/components/BottomSheetFlatlist.tsx"],"mappings":";;;;;;AACA,IAAAA,sBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAMA,IAAAC,yBAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AAAsE,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AARtE;;AAUO,SAASG,mBAAmBA,CAAIC,KAAkC,EAAE;EACzE,MAAMC,UAAU,GAAG,IAAAC,kDAAwB,EAACF,KAAK,CAAC;EAElD,IAAI,CAACC,UAAU,CAACE,OAAO,EACrB,oBACE,IAAAR,WAAA,CAAAS,GAAA,EAACd,sBAAA,CAAAQ,OAAQ,CAACO,QAAQ;IAAA,GACZJ,UAAU,CAACK,aAAa;IAC5BC,GAAG,EAAEN,UAAU,CAACO,WAAY;IAC5BC,QAAQ,EAAER,UAAU,CAACQ;EAA4B,CAClD,CAAC;EAGN,oBACE,IAAAd,WAAA,CAAAS,GAAA,EAACV,sBAAA,CAAAgB,WAAW;IACVC,WAAW,EAAE,EAAG;IAChBC,mBAAmB;IACnBC,WAAW,EAAEZ,UAAU,CAACE,OAAO,CAACW,aAAc;IAC9CC,MAAM,EAAEd,UAAU,CAACE,OAAO,CAACa,cAAe;IAC1CC,SAAS,EAAEhB,UAAU,CAACE,OAAO,CAACe,WAAY;IAAAC,QAAA,eAE1C,IAAAxB,WAAA,CAAAS,GAAA,EAACd,sBAAA,CAAAQ,OAAQ,CAACO,QAAQ;MAAA,GACZJ,UAAU,CAACK,aAAa;MAC5Bc,iBAAiB,EAAEnB,UAAU,CAACoB,aAAc;MAC5CC,QAAQ,EAAErB,UAAU,CAACqB,QAAS;MAC9BC,mBAAmB,EAAEtB,UAAU,CAACsB,mBAAoB;MACpDhB,GAAG,EACDN,UAAU,CAACO,WAAW,IACrBP,UAAU,CAACE,OAAO,CAChBqB,sBACJ;MACDC,OAAO,EAAE,KAAM;MACfhB,QAAQ,EAAER,UAAU,CAACyB;IAAsB,CAC5C;EAAC,CACS,CAAC;AAElB","ignoreList":[]}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BottomSheetModal = void 0;
7
+ var _reactNativeEssentials = require("@shaquillehinds/react-native-essentials");
8
+ var _react = require("react");
9
+ var _bottomSheetStyles = require("../config/bottomSheet.styles.js");
10
+ var _BottomSheet = require("../components/BottomSheet.js");
11
+ var _index = require("../controller/index.js");
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ const BottomSheetModal = exports.BottomSheetModal = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
14
+ const controller = (0, _index.bottomSheetController)(props);
15
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeEssentials.ModalWrapper, {
16
+ useNativeModal: props.useNativeModal,
17
+ enableBackgroundContentPress: props.enableBackgroundContentPress,
18
+ onRequestClose: controller.onRequestClose,
19
+ disableAndroidBackButton: props.disableAndroidBackButton,
20
+ children: [!props.enableBackgroundContentPress ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.ModalBackgroundAnimated, {
21
+ onPress: props.disableCloseOnBackdropPress ? undefined : controller.onModalBackdropPress,
22
+ style: _bottomSheetStyles.bottomModalStyle.background,
23
+ animatedStyle: controller.backdropOpacityStyle,
24
+ avoidStatusBar: props.useNativeModal,
25
+ children: props.BackdropComponent
26
+ }) : undefined, /*#__PURE__*/(0, _jsxRuntime.jsx)(_BottomSheet.BottomSheet, {
27
+ ...props,
28
+ controller: controller,
29
+ ref: ref,
30
+ children: props.children
31
+ })]
32
+ });
33
+ });
34
+ //# sourceMappingURL=BottomSheetModal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNativeEssentials","require","_react","_bottomSheetStyles","_BottomSheet","_index","_jsxRuntime","BottomSheetModal","exports","forwardRef","props","ref","controller","bottomSheetController","jsxs","ModalWrapper","useNativeModal","enableBackgroundContentPress","onRequestClose","disableAndroidBackButton","children","jsx","ModalBackgroundAnimated","onPress","disableCloseOnBackdropPress","undefined","onModalBackdropPress","style","styles","background","animatedStyle","backdropOpacityStyle","avoidStatusBar","BackdropComponent","BottomSheet"],"sourceRoot":"../../../../src","sources":["BottomSheet/components/BottomSheetModal.tsx"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AAIA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,kBAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAKA,IAAAI,MAAA,GAAAJ,OAAA;AAAsD,IAAAK,WAAA,GAAAL,OAAA;AAE/C,MAAMM,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,gBAAG,IAAAE,iBAAU,EACxC,CACEC,KAA+C,EAC/CC,GAAyB,KACtB;EACH,MAAMC,UAAU,GAAG,IAAAC,4BAAqB,EAACH,KAAK,CAAC;EAC/C,oBACE,IAAAJ,WAAA,CAAAQ,IAAA,EAACd,sBAAA,CAAAe,YAAY;IACXC,cAAc,EAAEN,KAAK,CAACM,cAAe;IACrCC,4BAA4B,EAAEP,KAAK,CAACO,4BAA6B;IACjEC,cAAc,EAAEN,UAAU,CAACM,cAAe;IAC1CC,wBAAwB,EAAET,KAAK,CAACS,wBAAyB;IAAAC,QAAA,GAExD,CAACV,KAAK,CAACO,4BAA4B,gBAClC,IAAAX,WAAA,CAAAe,GAAA,EAACrB,sBAAA,CAAAsB,uBAAuB;MACtBC,OAAO,EACLb,KAAK,CAACc,2BAA2B,GAC7BC,SAAS,GACTb,UAAU,CAACc,oBAChB;MACDC,KAAK,EAAEC,mCAAM,CAACC,UAAW;MACzBC,aAAa,EAAElB,UAAU,CAACmB,oBAAqB;MAC/CC,cAAc,EAAEtB,KAAK,CAACM,cAAe;MAAAI,QAAA,EAEpCV,KAAK,CAACuB;IAAiB,CACD,CAAC,GACxBR,SAAS,eACb,IAAAnB,WAAA,CAAAe,GAAA,EAACjB,YAAA,CAAA8B,WAAW;MAAA,GAAKxB,KAAK;MAAEE,UAAU,EAAEA,UAAW;MAACD,GAAG,EAAEA,GAAI;MAAAS,QAAA,EACtDV,KAAK,CAACU;IAAQ,CACJ,CAAC;EAAA,CACF,CAAC;AAEnB,CACF,CAAC","ignoreList":[]}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BottomSheetScrollView = BottomSheetScrollView;
7
+ var _reactNativeReanimated = _interopRequireDefault(require("react-native-reanimated"));
8
+ var _bottomScrollViewController = require("../controller/bottomScrollView.controller.js");
9
+ var _reactNativeEssentials = require("@shaquillehinds/react-native-essentials");
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ //$lf-ignore
13
+
14
+ function BottomSheetScrollView(props) {
15
+ const controller = (0, _bottomScrollViewController.bottomScrollViewController)(props);
16
+ if (!controller.context) return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.ScrollView, {
17
+ ...controller.scrollViewProps,
18
+ ref: controller.refScrollView,
19
+ onScroll: controller.onScroll
20
+ });
21
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.DragGesture, {
22
+ minDistance: 15,
23
+ enableContentScroll: true,
24
+ onDragStart: controller.context.onBeginScroll,
25
+ onDrag: controller.context.onUpdateScroll,
26
+ onDragEnd: controller.context.onEndScroll,
27
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.ScrollView, {
28
+ ...controller.scrollViewProps,
29
+ ref: controller.refScrollView || controller.context.scrollableComponentRef,
30
+ onScrollBeginDrag: controller.assignRef,
31
+ bounces: false,
32
+ onScroll: controller.animatedScrollHandler,
33
+ children: controller.scrollViewProps.children
34
+ })
35
+ });
36
+ }
37
+ //# sourceMappingURL=BottomSheetScrollView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNativeReanimated","_interopRequireDefault","require","_bottomScrollViewController","_reactNativeEssentials","_jsxRuntime","e","__esModule","default","BottomSheetScrollView","props","controller","bottomScrollViewController","context","jsx","ScrollView","scrollViewProps","ref","refScrollView","onScroll","DragGesture","minDistance","enableContentScroll","onDragStart","onBeginScroll","onDrag","onUpdateScroll","onDragEnd","onEndScroll","children","scrollableComponentRef","onScrollBeginDrag","assignRef","bounces","animatedScrollHandler"],"sourceRoot":"../../../../src","sources":["BottomSheet/components/BottomSheetScrollView.tsx"],"mappings":";;;;;;AACA,IAAAA,sBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAMA,IAAAC,2BAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AAAsE,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AARtE;;AAUO,SAASG,qBAAqBA,CAACC,KAAiC,EAAE;EACvE,MAAMC,UAAU,GAAG,IAAAC,sDAA0B,EAACF,KAAK,CAAC;EAEpD,IAAI,CAACC,UAAU,CAACE,OAAO,EACrB,oBACE,IAAAR,WAAA,CAAAS,GAAA,EAACd,sBAAA,CAAAQ,OAAQ,CAACO,UAAU;IAAA,GACdJ,UAAU,CAACK,eAAe;IAC9BC,GAAG,EAAEN,UAAU,CAACO,aAAc;IAC9BC,QAAQ,EAAER,UAAU,CAACQ;EAA4B,CAClD,CAAC;EAGN,oBACE,IAAAd,WAAA,CAAAS,GAAA,EAACV,sBAAA,CAAAgB,WAAW;IACVC,WAAW,EAAE,EAAG;IAChBC,mBAAmB;IACnBC,WAAW,EAAEZ,UAAU,CAACE,OAAO,CAACW,aAAc;IAC9CC,MAAM,EAAEd,UAAU,CAACE,OAAO,CAACa,cAAe;IAC1CC,SAAS,EAAEhB,UAAU,CAACE,OAAO,CAACe,WAAY;IAAAC,QAAA,eAE1C,IAAAxB,WAAA,CAAAS,GAAA,EAACd,sBAAA,CAAAQ,OAAQ,CAACO,UAAU;MAAA,GACdJ,UAAU,CAACK,eAAe;MAC9BC,GAAG,EACDN,UAAU,CAACO,aAAa,IACvBP,UAAU,CAACE,OAAO,CAChBiB,sBACJ;MACDC,iBAAiB,EAAEpB,UAAU,CAACqB,SAAU;MACxCC,OAAO,EAAE,KAAM;MACfd,QAAQ,EAAER,UAAU,CAACuB,qBAAsB;MAAAL,QAAA,EAE1ClB,UAAU,CAACK,eAAe,CAACa;IAAQ,CACjB;EAAC,CACX,CAAC;AAElB","ignoreList":[]}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.openKeyboardTimingConfig = exports.modalTransitionTimingConfig = exports.modalTimingConfig = exports.modalHeight = exports.modalContentMaxHeight = exports.modalBottomOffset = exports.extraHeightPercent = exports.extraHeight = exports.closeKeyboardTimingConfig = exports.animateOpenTimingConfig = exports.animateCloseTimingConfig = void 0;
7
+ var _reactNativeEssentials = require("@shaquillehinds/react-native-essentials");
8
+ var _reactNativeReanimated = require("react-native-reanimated");
9
+ const extraHeightPercent = exports.extraHeightPercent = 10;
10
+ const extraHeight = exports.extraHeight = (0, _reactNativeEssentials.relativeY)(extraHeightPercent);
11
+ const modalHeight = exports.modalHeight = (0, _reactNativeEssentials.relativeY)(100) + extraHeight;
12
+ const modalContentMaxHeight = exports.modalContentMaxHeight = modalHeight;
13
+
14
+ // Needed for bottomModal.styles
15
+ const modalBottomOffset = exports.modalBottomOffset = -modalHeight * 2;
16
+ const modalTimingConfig = (duration = 500) => ({
17
+ duration,
18
+ easing: _reactNativeReanimated.Easing.bezier(0.2, 0.32, 0, 1)
19
+ });
20
+ exports.modalTimingConfig = modalTimingConfig;
21
+ const modalTransitionTimingConfig = exports.modalTransitionTimingConfig = modalTimingConfig();
22
+ const animateOpenTimingConfig = exports.animateOpenTimingConfig = modalTimingConfig();
23
+ const animateCloseTimingConfig = exports.animateCloseTimingConfig = {
24
+ duration: 300,
25
+ easing: _reactNativeReanimated.Easing.linear
26
+ };
27
+ const openKeyboardTimingConfig = exports.openKeyboardTimingConfig = {
28
+ duration: _reactNativeEssentials.isIOS ? 330 : 500,
29
+ easing: _reactNativeEssentials.isIOS ? _reactNativeReanimated.Easing.bezier(0, 0.7, 0, 1) : _reactNativeReanimated.Easing.bezier(0, 0.2, 0, 1)
30
+ };
31
+ const closeKeyboardTimingConfig = exports.closeKeyboardTimingConfig = {
32
+ duration: _reactNativeEssentials.isIOS ? 450 : 500,
33
+ easing: _reactNativeReanimated.Easing.bezier(0, 0.2, 0, 1)
34
+ };
35
+ //# sourceMappingURL=bottomSheet.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNativeEssentials","require","_reactNativeReanimated","extraHeightPercent","exports","extraHeight","relativeY","modalHeight","modalContentMaxHeight","modalBottomOffset","modalTimingConfig","duration","easing","Easing","bezier","modalTransitionTimingConfig","animateOpenTimingConfig","animateCloseTimingConfig","linear","openKeyboardTimingConfig","isIOS","closeKeyboardTimingConfig"],"sourceRoot":"../../../../src","sources":["BottomSheet/config/bottomSheet.constants.ts"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AAEO,MAAME,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,GAAG,EAAE;AAC7B,MAAME,WAAW,GAAAD,OAAA,CAAAC,WAAA,GAAG,IAAAC,gCAAS,EAACH,kBAAkB,CAAC;AACjD,MAAMI,WAAW,GAAAH,OAAA,CAAAG,WAAA,GAAG,IAAAD,gCAAS,EAAC,GAAG,CAAC,GAAGD,WAAW;AAChD,MAAMG,qBAAqB,GAAAJ,OAAA,CAAAI,qBAAA,GAAGD,WAAW;;AAEhD;AACO,MAAME,iBAAiB,GAAAL,OAAA,CAAAK,iBAAA,GAAG,CAACF,WAAW,GAAG,CAAC;AAE1C,MAAMG,iBAAiB,GAAGA,CAACC,QAAQ,GAAG,GAAG,MAAM;EACpDA,QAAQ;EACRC,MAAM,EAAEC,6BAAM,CAACC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AACvC,CAAC,CAAC;AAACV,OAAA,CAAAM,iBAAA,GAAAA,iBAAA;AACI,MAAMK,2BAA2B,GAAAX,OAAA,CAAAW,2BAAA,GAAGL,iBAAiB,CAAC,CAAC;AACvD,MAAMM,uBAAuB,GAAAZ,OAAA,CAAAY,uBAAA,GAAGN,iBAAiB,CAAC,CAAC;AAEnD,MAAMO,wBAAwB,GAAAb,OAAA,CAAAa,wBAAA,GAAG;EACtCN,QAAQ,EAAE,GAAG;EACbC,MAAM,EAAEC,6BAAM,CAACK;AACjB,CAAC;AAEM,MAAMC,wBAAwB,GAAAf,OAAA,CAAAe,wBAAA,GAAG;EACtCR,QAAQ,EAAES,4BAAK,GAAG,GAAG,GAAG,GAAG;EAC3BR,MAAM,EAAEQ,4BAAK,GAAGP,6BAAM,CAACC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,GAAGD,6BAAM,CAACC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;AAC1E,CAAC;AACM,MAAMO,yBAAyB,GAAAjB,OAAA,CAAAiB,yBAAA,GAAG;EACvCV,QAAQ,EAAES,4BAAK,GAAG,GAAG,GAAG,GAAG;EAC3BR,MAAM,EAAEC,6BAAM,CAACC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;AACpC,CAAC","ignoreList":[]}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.bottomModalStyle = void 0;
7
+ var _reactNative = require("react-native");
8
+ var _bottomSheetConstants = require("./bottomSheet.constants.js");
9
+ var _reactNativeEssentials = require("@shaquillehinds/react-native-essentials");
10
+ const bottomModalStyle = exports.bottomModalStyle = _reactNative.StyleSheet.create({
11
+ bottomSheet: {
12
+ backgroundColor: 'white',
13
+ width: (0, _reactNativeEssentials.relativeX)(100),
14
+ height: _bottomSheetConstants.modalHeight,
15
+ borderRadius: (0, _reactNativeEssentials.relativeShort)(7),
16
+ position: 'absolute',
17
+ bottom: _bottomSheetConstants.modalBottomOffset,
18
+ zIndex: _reactNativeEssentials.maxZIndex,
19
+ overflow: 'hidden'
20
+ },
21
+ contentContainer: {
22
+ paddingBottom: (0, _reactNativeEssentials.relativeY)(10)
23
+ },
24
+ bumper: {
25
+ backgroundColor: 'rgba(156,170,180,0.3)',
26
+ width: (0, _reactNativeEssentials.relativeX)(15),
27
+ borderRadius: 5,
28
+ height: (0, _reactNativeEssentials.relativeY)(0.2),
29
+ alignSelf: 'center',
30
+ marginVertical: (0, _reactNativeEssentials.relativeY)(1.4)
31
+ },
32
+ bumperContainer: {
33
+ zIndex: _reactNativeEssentials.maxZIndex + 5
34
+ },
35
+ background: {
36
+ ..._reactNative.StyleSheet.absoluteFillObject,
37
+ zIndex: _reactNativeEssentials.maxZIndex,
38
+ backgroundColor: 'rgba(0,0,0,.1)',
39
+ opacity: 1
40
+ }
41
+ });
42
+ //# sourceMappingURL=bottomSheet.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_bottomSheetConstants","_reactNativeEssentials","bottomModalStyle","exports","StyleSheet","create","bottomSheet","backgroundColor","width","relativeX","height","modalHeight","borderRadius","relativeShort","position","bottom","modalBottomOffset","zIndex","maxZIndex","overflow","contentContainer","paddingBottom","relativeY","bumper","alignSelf","marginVertical","bumperContainer","background","absoluteFillObject","opacity"],"sourceRoot":"../../../../src","sources":["BottomSheet/config/bottomSheet.styles.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,qBAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AAOO,MAAMG,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAGE,uBAAU,CAACC,MAAM,CAAC;EAChDC,WAAW,EAAE;IACXC,eAAe,EAAE,OAAO;IACxBC,KAAK,EAAE,IAAAC,gCAAS,EAAC,GAAG,CAAC;IACrBC,MAAM,EAAEC,iCAAW;IACnBC,YAAY,EAAE,IAAAC,oCAAa,EAAC,CAAC,CAAC;IAC9BC,QAAQ,EAAE,UAAU;IACpBC,MAAM,EAAEC,uCAAiB;IACzBC,MAAM,EAAEC,gCAAS;IACjBC,QAAQ,EAAE;EACZ,CAAC;EACDC,gBAAgB,EAAE;IAChBC,aAAa,EAAE,IAAAC,gCAAS,EAAC,EAAE;EAC7B,CAAC;EACDC,MAAM,EAAE;IACNhB,eAAe,EAAE,uBAAuB;IACxCC,KAAK,EAAE,IAAAC,gCAAS,EAAC,EAAE,CAAC;IACpBG,YAAY,EAAE,CAAC;IACfF,MAAM,EAAE,IAAAY,gCAAS,EAAC,GAAG,CAAC;IACtBE,SAAS,EAAE,QAAQ;IACnBC,cAAc,EAAE,IAAAH,gCAAS,EAAC,GAAG;EAC/B,CAAC;EACDI,eAAe,EAAE;IACfT,MAAM,EAAEC,gCAAS,GAAG;EACtB,CAAC;EAEDS,UAAU,EAAE;IACV,GAAGvB,uBAAU,CAACwB,kBAAkB;IAChCX,MAAM,EAAEC,gCAAS;IACjBX,eAAe,EAAE,gBAAgB;IACjCsB,OAAO,EAAE;EACX;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ModalState = void 0;
7
+ let ModalState = exports.ModalState = /*#__PURE__*/function (ModalState) {
8
+ ModalState[ModalState["CLOSED"] = 0] = "CLOSED";
9
+ ModalState[ModalState["OPENING"] = 1] = "OPENING";
10
+ ModalState[ModalState["OPEN"] = 2] = "OPEN";
11
+ ModalState[ModalState["CLOSING"] = 3] = "CLOSING";
12
+ return ModalState;
13
+ }({});
14
+ //# sourceMappingURL=bottomSheet.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ModalState","exports"],"sourceRoot":"../../../../src","sources":["BottomSheet/config/bottomSheet.types.ts"],"mappings":";;;;;;IAgMYA,UAAU,GAAAC,OAAA,CAAAD,UAAA,0BAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA","ignoreList":[]}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.bottomFlatlistController = bottomFlatlistController;
7
+ var _reactNativeReanimated = require("react-native-reanimated");
8
+ var _react = require("react");
9
+ var _BottomSheet = require("../components/BottomSheet.js");
10
+ //$lf-ignore
11
+
12
+ function bottomFlatlistController(props) {
13
+ let {
14
+ onScroll,
15
+ refFlatlist,
16
+ ...flatlistProps
17
+ } = props;
18
+ const inverted = flatlistProps.inverted;
19
+ const context = (0, _react.useContext)(_BottomSheet.BottomSheetContext);
20
+ const contentSize = (0, _react.useRef)(0);
21
+ const layoutHeight = (0, _react.useRef)(0);
22
+ const scrollY = context?.scrollY;
23
+ const animatedScrollHandler = (0, _reactNativeReanimated.useAnimatedScrollHandler)({
24
+ onScroll: event => {
25
+ if (scrollY) scrollY.value = event.contentOffset.y;
26
+ if (onScroll) {
27
+ onScroll = onScroll;
28
+ onScroll(event);
29
+ }
30
+ }
31
+ });
32
+ if (context && refFlatlist) context.scrollableComponentRef.current = refFlatlist.current;
33
+ const onScrollBegin = event => {
34
+ if (!context) {
35
+ if (typeof flatlistProps.onScrollBeginDrag === 'function') flatlistProps.onScrollBeginDrag && flatlistProps.onScrollBeginDrag(event);
36
+ return;
37
+ }
38
+ if (context.inverted.value !== inverted) context.inverted.value = !!inverted;
39
+ const maxScrollOffset = contentSize.current - layoutHeight.current;
40
+ if (context.maxScrollOffset.value !== maxScrollOffset) context.maxScrollOffset.value = maxScrollOffset;
41
+ if (!context.scrollableComponentRef.current && refFlatlist) context.scrollableComponentRef.current = refFlatlist.current;
42
+ };
43
+ const onLayout = e => {
44
+ layoutHeight.current = e.nativeEvent.layout.height;
45
+ inverted && (context.inverted.value = true);
46
+ if (contentSize.current) {
47
+ context.maxScrollOffset.value = contentSize.current - e.nativeEvent.layout.height;
48
+ }
49
+ if (typeof flatlistProps.onLayout === 'function') flatlistProps.onLayout && flatlistProps.onLayout(e);
50
+ };
51
+ const onContentSizeChange = (w, h) => {
52
+ contentSize.current = h;
53
+ if (layoutHeight.current) {
54
+ context.maxScrollOffset.value = h - layoutHeight.current;
55
+ }
56
+ if (typeof flatlistProps.onContentSizeChange === 'function') flatlistProps.onContentSizeChange && flatlistProps.onContentSizeChange(w, h);
57
+ };
58
+ return {
59
+ refFlatlist,
60
+ flatlistProps,
61
+ context,
62
+ onScroll,
63
+ onLayout,
64
+ onScrollBegin,
65
+ onContentSizeChange,
66
+ animatedScrollHandler
67
+ };
68
+ }
69
+ //# sourceMappingURL=bottomFlatlist.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNativeReanimated","require","_react","_BottomSheet","bottomFlatlistController","props","onScroll","refFlatlist","flatlistProps","inverted","context","useContext","BottomSheetContext","contentSize","useRef","layoutHeight","scrollY","animatedScrollHandler","useAnimatedScrollHandler","event","value","contentOffset","y","scrollableComponentRef","current","onScrollBegin","onScrollBeginDrag","maxScrollOffset","onLayout","e","nativeEvent","layout","height","onContentSizeChange","w","h"],"sourceRoot":"../../../../src","sources":["BottomSheet/controller/bottomFlatlist.controller.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.bottomScrollViewController = bottomScrollViewController;
7
+ var _react = require("react");
8
+ var _reactNativeReanimated = require("react-native-reanimated");
9
+ var _BottomSheet = require("../components/BottomSheet.js");
10
+ function bottomScrollViewController(props) {
11
+ let {
12
+ onScroll,
13
+ refScrollView,
14
+ ...scrollViewProps
15
+ } = props;
16
+ const context = (0, _react.useContext)(_BottomSheet.BottomSheetContext);
17
+ const scrollY = context?.scrollY;
18
+ const animatedScrollHandler = (0, _reactNativeReanimated.useAnimatedScrollHandler)({
19
+ onScroll: event => {
20
+ if (scrollY) scrollY.value = event.contentOffset.y;
21
+ if (onScroll) {
22
+ onScroll = onScroll;
23
+ onScroll(event);
24
+ }
25
+ }
26
+ });
27
+ if (context && refScrollView) context.scrollableComponentRef.current = refScrollView.current;
28
+ const assignRef = () => {
29
+ if (!context) return;
30
+ if (!context.scrollableComponentRef.current && refScrollView) context.scrollableComponentRef.current = refScrollView.current;
31
+ };
32
+ return {
33
+ context,
34
+ onScroll,
35
+ assignRef,
36
+ refScrollView,
37
+ scrollViewProps,
38
+ animatedScrollHandler
39
+ };
40
+ }
41
+ //# sourceMappingURL=bottomScrollView.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_BottomSheet","bottomScrollViewController","props","onScroll","refScrollView","scrollViewProps","context","useContext","BottomSheetContext","scrollY","animatedScrollHandler","useAnimatedScrollHandler","event","value","contentOffset","y","scrollableComponentRef","current","assignRef"],"sourceRoot":"../../../../src","sources":["BottomSheet/controller/bottomScrollView.controller.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AAKA,IAAAE,YAAA,GAAAF,OAAA;AAEO,SAASG,0BAA0BA,CAACC,KAAiC,EAAE;EAC5E,IAAI;IAAEC,QAAQ;IAAEC,aAAa;IAAE,GAAGC;EAAgB,CAAC,GAAGH,KAAK;EAE3D,MAAMI,OAAO,GAAG,IAAAC,iBAAU,EAACC,+BAAkB,CAAC;EAE9C,MAAMC,OAAO,GAAGH,OAAO,EAAEG,OAAO;EAEhC,MAAMC,qBAAqB,GAAG,IAAAC,+CAAwB,EAAC;IACrDR,QAAQ,EAAGS,KAAK,IAAK;MACnB,IAAIH,OAAO,EAAEA,OAAO,CAACI,KAAK,GAAGD,KAAK,CAACE,aAAa,CAACC,CAAC;MAClD,IAAIZ,QAAQ,EAAE;QACZA,QAAQ,GAAGA,QAA8B;QACzCA,QAAQ,CAACS,KAAK,CAAC;MACjB;IACF;EACF,CAAC,CAAC;EAEF,IAAIN,OAAO,IAAIF,aAAa,EAC1BE,OAAO,CAACU,sBAAsB,CAACC,OAAO,GAAGb,aAAa,CAACa,OAAO;EAEhE,MAAMC,SAAS,GAAGA,CAAA,KAAM;IACtB,IAAI,CAACZ,OAAO,EAAE;IACd,IAAI,CAACA,OAAO,CAACU,sBAAsB,CAACC,OAAO,IAAIb,aAAa,EAC1DE,OAAO,CAACU,sBAAsB,CAACC,OAAO,GAAGb,aAAa,CAACa,OAAO;EAClE,CAAC;EAED,OAAO;IACLX,OAAO;IACPH,QAAQ;IACRe,SAAS;IACTd,aAAa;IACbC,eAAe;IACfK;EACF,CAAC;AACH","ignoreList":[]}