@r0b0t3d/react-native-collapsible 1.3.5-beta.0 → 1.3.5-beta.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 (141) hide show
  1. package/LICENSE +1 -2
  2. package/lib/commonjs/components/CollapsibleContainer.js +11 -25
  3. package/lib/commonjs/components/CollapsibleContainer.js.map +1 -1
  4. package/lib/commonjs/components/CollapsibleView.js +26 -36
  5. package/lib/commonjs/components/CollapsibleView.js.map +1 -1
  6. package/lib/commonjs/components/header/AnimatedTopView.js +4 -9
  7. package/lib/commonjs/components/header/AnimatedTopView.js.map +1 -1
  8. package/lib/commonjs/components/header/CollapsibleHeaderConsumer.js +12 -20
  9. package/lib/commonjs/components/header/CollapsibleHeaderConsumer.js.map +1 -1
  10. package/lib/commonjs/components/header/CollapsibleHeaderContainer.js +6 -12
  11. package/lib/commonjs/components/header/CollapsibleHeaderContainer.js.map +1 -1
  12. package/lib/commonjs/components/header/CollapsibleHeaderProvider.js +7 -11
  13. package/lib/commonjs/components/header/CollapsibleHeaderProvider.js.map +1 -1
  14. package/lib/commonjs/components/header/StickyView.js +11 -20
  15. package/lib/commonjs/components/header/StickyView.js.map +1 -1
  16. package/lib/commonjs/components/scrollable/CollapsibleFlatList.js +12 -26
  17. package/lib/commonjs/components/scrollable/CollapsibleFlatList.js.map +1 -1
  18. package/lib/commonjs/components/scrollable/CollapsibleScrollView.js +13 -24
  19. package/lib/commonjs/components/scrollable/CollapsibleScrollView.js.map +1 -1
  20. package/lib/commonjs/components/scrollable/useAnimatedScroll.js +9 -18
  21. package/lib/commonjs/components/scrollable/useAnimatedScroll.js.map +1 -1
  22. package/lib/commonjs/hooks/useCollapsibleContext.js +1 -6
  23. package/lib/commonjs/hooks/useCollapsibleContext.js.map +1 -1
  24. package/lib/commonjs/hooks/useCollapsibleHeaderContext.js +1 -6
  25. package/lib/commonjs/hooks/useCollapsibleHeaderContext.js.map +1 -1
  26. package/lib/commonjs/hooks/useInternalCollapsibleContext.js +1 -6
  27. package/lib/commonjs/hooks/useInternalCollapsibleContext.js.map +1 -1
  28. package/lib/commonjs/hooks/useKeyboardShowEvent.js +0 -4
  29. package/lib/commonjs/hooks/useKeyboardShowEvent.js.map +1 -1
  30. package/lib/commonjs/index.js +12 -33
  31. package/lib/commonjs/index.js.map +1 -1
  32. package/lib/commonjs/types.js.map +1 -1
  33. package/lib/commonjs/utils/debounce.js +8 -7
  34. package/lib/commonjs/utils/debounce.js.map +1 -1
  35. package/lib/commonjs/withCollapsibleContext.js +31 -44
  36. package/lib/commonjs/withCollapsibleContext.js.map +1 -1
  37. package/lib/module/components/CollapsibleContainer.js +11 -14
  38. package/lib/module/components/CollapsibleContainer.js.map +1 -1
  39. package/lib/module/components/CollapsibleView.js +24 -26
  40. package/lib/module/components/CollapsibleView.js.map +1 -1
  41. package/lib/module/components/header/AnimatedTopView.js +4 -3
  42. package/lib/module/components/header/AnimatedTopView.js.map +1 -1
  43. package/lib/module/components/header/CollapsibleHeaderConsumer.js +12 -9
  44. package/lib/module/components/header/CollapsibleHeaderConsumer.js.map +1 -1
  45. package/lib/module/components/header/CollapsibleHeaderContainer.js +5 -4
  46. package/lib/module/components/header/CollapsibleHeaderContainer.js.map +1 -1
  47. package/lib/module/components/header/CollapsibleHeaderProvider.js +6 -6
  48. package/lib/module/components/header/CollapsibleHeaderProvider.js.map +1 -1
  49. package/lib/module/components/header/StickyView.js +11 -10
  50. package/lib/module/components/header/StickyView.js.map +1 -1
  51. package/lib/module/components/scrollable/CollapsibleFlatList.js +12 -13
  52. package/lib/module/components/scrollable/CollapsibleFlatList.js.map +1 -1
  53. package/lib/module/components/scrollable/CollapsibleScrollView.js +13 -12
  54. package/lib/module/components/scrollable/CollapsibleScrollView.js.map +1 -1
  55. package/lib/module/components/scrollable/useAnimatedScroll.js +8 -10
  56. package/lib/module/components/scrollable/useAnimatedScroll.js.map +1 -1
  57. package/lib/module/hooks/useCollapsibleContext.js +0 -2
  58. package/lib/module/hooks/useCollapsibleContext.js.map +1 -1
  59. package/lib/module/hooks/useCollapsibleHeaderContext.js +0 -2
  60. package/lib/module/hooks/useCollapsibleHeaderContext.js.map +1 -1
  61. package/lib/module/hooks/useInternalCollapsibleContext.js +0 -2
  62. package/lib/module/hooks/useInternalCollapsibleContext.js.map +1 -1
  63. package/lib/module/hooks/useKeyboardShowEvent.js.map +1 -1
  64. package/lib/module/index.js +0 -1
  65. package/lib/module/index.js.map +1 -1
  66. package/lib/module/types.js.map +1 -1
  67. package/lib/module/utils/debounce.js +8 -6
  68. package/lib/module/utils/debounce.js.map +1 -1
  69. package/lib/module/withCollapsibleContext.js +30 -34
  70. package/lib/module/withCollapsibleContext.js.map +1 -1
  71. package/lib/typescript/components/CollapsibleContainer.d.ts +4 -2
  72. package/lib/typescript/components/CollapsibleContainer.d.ts.map +1 -0
  73. package/lib/typescript/components/CollapsibleView.d.ts +6 -5
  74. package/lib/typescript/components/CollapsibleView.d.ts.map +1 -0
  75. package/lib/typescript/components/header/AnimatedTopView.d.ts +4 -2
  76. package/lib/typescript/components/header/AnimatedTopView.d.ts.map +1 -0
  77. package/lib/typescript/components/header/CollapsibleHeaderConsumer.d.ts +3 -1
  78. package/lib/typescript/components/header/CollapsibleHeaderConsumer.d.ts.map +1 -0
  79. package/lib/typescript/components/header/CollapsibleHeaderContainer.d.ts +2 -1
  80. package/lib/typescript/components/header/CollapsibleHeaderContainer.d.ts.map +1 -0
  81. package/lib/typescript/components/header/CollapsibleHeaderProvider.d.ts +3 -2
  82. package/lib/typescript/components/header/CollapsibleHeaderProvider.d.ts.map +1 -0
  83. package/lib/typescript/components/header/StickyView.d.ts +4 -2
  84. package/lib/typescript/components/header/StickyView.d.ts.map +1 -0
  85. package/lib/typescript/components/scrollable/CollapsibleFlatList.d.ts +4 -2
  86. package/lib/typescript/components/scrollable/CollapsibleFlatList.d.ts.map +1 -0
  87. package/lib/typescript/components/scrollable/CollapsibleScrollView.d.ts +4 -3
  88. package/lib/typescript/components/scrollable/CollapsibleScrollView.d.ts.map +1 -0
  89. package/lib/typescript/components/scrollable/useAnimatedScroll.d.ts +2 -1
  90. package/lib/typescript/components/scrollable/useAnimatedScroll.d.ts.map +1 -0
  91. package/lib/typescript/hooks/useCollapsibleContext.d.ts +1 -0
  92. package/lib/typescript/hooks/useCollapsibleContext.d.ts.map +1 -0
  93. package/lib/typescript/hooks/useCollapsibleHeaderContext.d.ts +3 -2
  94. package/lib/typescript/hooks/useCollapsibleHeaderContext.d.ts.map +1 -0
  95. package/lib/typescript/hooks/useInternalCollapsibleContext.d.ts +1 -0
  96. package/lib/typescript/hooks/useInternalCollapsibleContext.d.ts.map +1 -0
  97. package/lib/typescript/hooks/useKeyboardShowEvent.d.ts +1 -0
  98. package/lib/typescript/hooks/useKeyboardShowEvent.d.ts.map +1 -0
  99. package/lib/typescript/index.d.ts +1 -1
  100. package/lib/typescript/index.d.ts.map +1 -0
  101. package/lib/typescript/types.d.ts +8 -7
  102. package/lib/typescript/types.d.ts.map +1 -0
  103. package/lib/typescript/utils/debounce.d.ts +1 -0
  104. package/lib/typescript/utils/debounce.d.ts.map +1 -0
  105. package/lib/typescript/withCollapsibleContext.d.ts +3 -2
  106. package/lib/typescript/withCollapsibleContext.d.ts.map +1 -0
  107. package/package.json +39 -34
  108. package/src/components/header/CollapsibleHeaderConsumer.tsx +2 -1
  109. package/src/components/header/StickyView.tsx +3 -4
  110. package/src/index.tsx +0 -1
  111. package/src/withCollapsibleContext.tsx +30 -26
  112. package/lib/commonjs/components/pullToRefresh/PullToRefreshContainer.js +0 -75
  113. package/lib/commonjs/components/pullToRefresh/PullToRefreshContainer.js.map +0 -1
  114. package/lib/commonjs/components/pullToRefresh/PullToRefreshProvider.js +0 -35
  115. package/lib/commonjs/components/pullToRefresh/PullToRefreshProvider.js.map +0 -1
  116. package/lib/commonjs/components/pullToRefresh/RefreshControl.js +0 -91
  117. package/lib/commonjs/components/pullToRefresh/RefreshControl.js.map +0 -1
  118. package/lib/commonjs/components/pullToRefresh/usePullToRefreshContext.js +0 -24
  119. package/lib/commonjs/components/pullToRefresh/usePullToRefreshContext.js.map +0 -1
  120. package/lib/commonjs/components/pullToRefresh/utils.js +0 -59
  121. package/lib/commonjs/components/pullToRefresh/utils.js.map +0 -1
  122. package/lib/module/components/pullToRefresh/PullToRefreshContainer.js +0 -56
  123. package/lib/module/components/pullToRefresh/PullToRefreshContainer.js.map +0 -1
  124. package/lib/module/components/pullToRefresh/PullToRefreshProvider.js +0 -21
  125. package/lib/module/components/pullToRefresh/PullToRefreshProvider.js.map +0 -1
  126. package/lib/module/components/pullToRefresh/RefreshControl.js +0 -73
  127. package/lib/module/components/pullToRefresh/RefreshControl.js.map +0 -1
  128. package/lib/module/components/pullToRefresh/usePullToRefreshContext.js +0 -13
  129. package/lib/module/components/pullToRefresh/usePullToRefreshContext.js.map +0 -1
  130. package/lib/module/components/pullToRefresh/utils.js +0 -42
  131. package/lib/module/components/pullToRefresh/utils.js.map +0 -1
  132. package/lib/typescript/components/pullToRefresh/PullToRefreshContainer.d.ts +0 -8
  133. package/lib/typescript/components/pullToRefresh/PullToRefreshProvider.d.ts +0 -6
  134. package/lib/typescript/components/pullToRefresh/RefreshControl.d.ts +0 -9
  135. package/lib/typescript/components/pullToRefresh/usePullToRefreshContext.d.ts +0 -4
  136. package/lib/typescript/components/pullToRefresh/utils.d.ts +0 -20
  137. package/src/components/pullToRefresh/PullToRefreshContainer.tsx +0 -66
  138. package/src/components/pullToRefresh/PullToRefreshProvider.tsx +0 -27
  139. package/src/components/pullToRefresh/RefreshControl.tsx +0 -100
  140. package/src/components/pullToRefresh/usePullToRefreshContext.ts +0 -13
  141. package/src/components/pullToRefresh/utils.ts +0 -49
@@ -1 +1 @@
1
- {"version":3,"sources":["useKeyboardShowEvent.ts"],"names":["useKeyboardShowEvent","callback","savedCallback","current","subscription","Keyboard","addListener","remove"],"mappings":";;;;;;;AAAA;;AACA;;AAEe,SAASA,oBAAT,CAA8BC,QAA9B,EAAoD;AACjE,QAAMC,aAAa,GAAG,mBAAOD,QAAP,CAAtB;AAEA,wBAAU,MAAM;AACdC,IAAAA,aAAa,CAACC,OAAd,GAAwBF,QAAxB;AACD,GAFD,EAEG,CAACA,QAAD,CAFH;AAIA,wBAAU,MAAM;AACd,UAAMG,YAAY,GAAGC,sBAASC,WAAT,CAAqB,iBAArB,EAAwC,MAAM;AACjE,UAAIJ,aAAa,CAACC,OAAlB,EAA2B;AACzBD,QAAAA,aAAa,CAACC,OAAd;AACD;AACF,KAJoB,CAArB;;AAMA,WAAO,MAAM;AACXC,MAAAA,YAAY,CAACG,MAAb;AACD,KAFD;AAGD,GAVD,EAUG,EAVH;AAWD","sourcesContent":["import { useEffect, useRef } from 'react';\nimport { Keyboard } from 'react-native';\n\nexport default function useKeyboardShowEvent(callback: () => void) {\n const savedCallback = useRef(callback);\n\n useEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n\n useEffect(() => {\n const subscription = Keyboard.addListener('keyboardDidShow', () => {\n if (savedCallback.current) {\n savedCallback.current();\n }\n });\n\n return () => {\n subscription.remove();\n };\n }, []);\n}\n"]}
1
+ {"version":3,"names":["_react","require","_reactNative","useKeyboardShowEvent","callback","savedCallback","useRef","useEffect","current","subscription","Keyboard","addListener","remove"],"sourceRoot":"../../../src","sources":["hooks/useKeyboardShowEvent.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEe,SAASE,oBAAoBA,CAACC,QAAoB,EAAE;EACjE,MAAMC,aAAa,GAAG,IAAAC,aAAM,EAACF,QAAQ,CAAC;EAEtC,IAAAG,gBAAS,EAAC,MAAM;IACdF,aAAa,CAACG,OAAO,GAAGJ,QAAQ;EAClC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,IAAAG,gBAAS,EAAC,MAAM;IACd,MAAME,YAAY,GAAGC,qBAAQ,CAACC,WAAW,CAAC,iBAAiB,EAAE,MAAM;MACjE,IAAIN,aAAa,CAACG,OAAO,EAAE;QACzBH,aAAa,CAACG,OAAO,CAAC,CAAC;MACzB;IACF,CAAC,CAAC;IAEF,OAAO,MAAM;MACXC,YAAY,CAACG,MAAM,CAAC,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;AACR"}
@@ -11,21 +11,8 @@ var _exportNames = {
11
11
  CollapsibleScrollView: true,
12
12
  CollapsibleHeaderContainer: true,
13
13
  StickyView: true,
14
- RefreshControl: true,
15
14
  CollapsibleView: true
16
15
  };
17
- Object.defineProperty(exports, "withCollapsibleContext", {
18
- enumerable: true,
19
- get: function () {
20
- return _withCollapsibleContext.default;
21
- }
22
- });
23
- Object.defineProperty(exports, "useCollapsibleContext", {
24
- enumerable: true,
25
- get: function () {
26
- return _useCollapsibleContext.default;
27
- }
28
- });
29
16
  Object.defineProperty(exports, "CollapsibleContainer", {
30
17
  enumerable: true,
31
18
  get: function () {
@@ -38,16 +25,22 @@ Object.defineProperty(exports, "CollapsibleFlatList", {
38
25
  return _CollapsibleFlatList.default;
39
26
  }
40
27
  });
28
+ Object.defineProperty(exports, "CollapsibleHeaderContainer", {
29
+ enumerable: true,
30
+ get: function () {
31
+ return _CollapsibleHeaderContainer.default;
32
+ }
33
+ });
41
34
  Object.defineProperty(exports, "CollapsibleScrollView", {
42
35
  enumerable: true,
43
36
  get: function () {
44
37
  return _CollapsibleScrollView.default;
45
38
  }
46
39
  });
47
- Object.defineProperty(exports, "CollapsibleHeaderContainer", {
40
+ Object.defineProperty(exports, "CollapsibleView", {
48
41
  enumerable: true,
49
42
  get: function () {
50
- return _CollapsibleHeaderContainer.default;
43
+ return _CollapsibleView.default;
51
44
  }
52
45
  });
53
46
  Object.defineProperty(exports, "StickyView", {
@@ -56,37 +49,26 @@ Object.defineProperty(exports, "StickyView", {
56
49
  return _StickyView.default;
57
50
  }
58
51
  });
59
- Object.defineProperty(exports, "RefreshControl", {
52
+ Object.defineProperty(exports, "useCollapsibleContext", {
60
53
  enumerable: true,
61
54
  get: function () {
62
- return _RefreshControl.default;
55
+ return _useCollapsibleContext.default;
63
56
  }
64
57
  });
65
- Object.defineProperty(exports, "CollapsibleView", {
58
+ Object.defineProperty(exports, "withCollapsibleContext", {
66
59
  enumerable: true,
67
60
  get: function () {
68
- return _CollapsibleView.default;
61
+ return _withCollapsibleContext.default;
69
62
  }
70
63
  });
71
-
72
64
  var _withCollapsibleContext = _interopRequireDefault(require("./withCollapsibleContext"));
73
-
74
65
  var _useCollapsibleContext = _interopRequireDefault(require("./hooks/useCollapsibleContext"));
75
-
76
66
  var _CollapsibleContainer = _interopRequireDefault(require("./components/CollapsibleContainer"));
77
-
78
67
  var _CollapsibleFlatList = _interopRequireDefault(require("./components/scrollable/CollapsibleFlatList"));
79
-
80
68
  var _CollapsibleScrollView = _interopRequireDefault(require("./components/scrollable/CollapsibleScrollView"));
81
-
82
69
  var _CollapsibleHeaderContainer = _interopRequireDefault(require("./components/header/CollapsibleHeaderContainer"));
83
-
84
70
  var _StickyView = _interopRequireDefault(require("./components/header/StickyView"));
85
-
86
- var _RefreshControl = _interopRequireDefault(require("./components/pullToRefresh/RefreshControl"));
87
-
88
71
  var _CollapsibleView = _interopRequireWildcard(require("./components/CollapsibleView"));
89
-
90
72
  Object.keys(_CollapsibleView).forEach(function (key) {
91
73
  if (key === "default" || key === "__esModule") return;
92
74
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
@@ -98,10 +80,7 @@ Object.keys(_CollapsibleView).forEach(function (key) {
98
80
  }
99
81
  });
100
82
  });
101
-
102
83
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
103
-
104
84
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
105
-
106
85
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
107
86
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export { default as withCollapsibleContext } from './withCollapsibleContext';\nexport { default as useCollapsibleContext } from './hooks/useCollapsibleContext';\n\nexport { default as CollapsibleContainer } from './components/CollapsibleContainer';\nexport { default as CollapsibleFlatList } from './components/scrollable/CollapsibleFlatList';\nexport { default as CollapsibleScrollView } from './components/scrollable/CollapsibleScrollView';\nexport { default as CollapsibleHeaderContainer } from './components/header/CollapsibleHeaderContainer';\nexport { default as StickyView } from './components/header/StickyView';\nexport { default as RefreshControl } from './components/pullToRefresh/RefreshControl';\nexport { default as CollapsibleView } from './components/CollapsibleView';\nexport * from './components/CollapsibleView';\n"]}
1
+ {"version":3,"names":["_withCollapsibleContext","_interopRequireDefault","require","_useCollapsibleContext","_CollapsibleContainer","_CollapsibleFlatList","_CollapsibleScrollView","_CollapsibleHeaderContainer","_StickyView","_CollapsibleView","_interopRequireWildcard","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,qBAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,oBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,sBAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,2BAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,WAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,gBAAA,GAAAC,uBAAA,CAAAR,OAAA;AACAS,MAAA,CAAAC,IAAA,CAAAH,gBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAL,gBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAb,gBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AAA6C,SAAAS,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAd,wBAAAkB,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAT,GAAA,CAAAM,GAAA,SAAAK,MAAA,WAAAC,qBAAA,GAAAvB,MAAA,CAAAS,cAAA,IAAAT,MAAA,CAAAwB,wBAAA,WAAArB,GAAA,IAAAc,GAAA,QAAAd,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAW,GAAA,EAAAd,GAAA,SAAAsB,IAAA,GAAAF,qBAAA,GAAAvB,MAAA,CAAAwB,wBAAA,CAAAP,GAAA,EAAAd,GAAA,cAAAsB,IAAA,KAAAA,IAAA,CAAAd,GAAA,IAAAc,IAAA,CAAAC,GAAA,KAAA1B,MAAA,CAAAS,cAAA,CAAAa,MAAA,EAAAnB,GAAA,EAAAsB,IAAA,YAAAH,MAAA,CAAAnB,GAAA,IAAAc,GAAA,CAAAd,GAAA,SAAAmB,MAAA,CAAAH,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAM,GAAA,CAAAT,GAAA,EAAAK,MAAA,YAAAA,MAAA;AAAA,SAAAhC,uBAAA2B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["types.ts"],"mappings":""}
@@ -4,17 +4,18 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.debounce = debounce;
7
-
8
7
  // https://gist.github.com/ca0v/73a31f57b397606c9813472f7493a940
9
- function debounce(cb, wait = 20) {
8
+ function debounce(cb) {
9
+ let wait = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 20;
10
10
  let h = 0;
11
-
12
- let callable = (...args) => {
13
- clearTimeout(h); // @ts-ignore
14
-
11
+ let callable = function () {
12
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
13
+ args[_key] = arguments[_key];
14
+ }
15
+ clearTimeout(h);
16
+ // @ts-ignore
15
17
  h = setTimeout(() => cb(...args), wait);
16
18
  };
17
-
18
19
  return callable;
19
20
  }
20
21
  //# sourceMappingURL=debounce.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["debounce.ts"],"names":["debounce","cb","wait","h","callable","args","clearTimeout","setTimeout"],"mappings":";;;;;;;AAAA;AACO,SAASA,QAAT,CAAsCC,EAAtC,EAA6CC,IAAI,GAAG,EAApD,EAAwD;AAC7D,MAAIC,CAAC,GAAG,CAAR;;AACA,MAAIC,QAAQ,GAAG,CAAC,GAAGC,IAAJ,KAAkB;AAC/BC,IAAAA,YAAY,CAACH,CAAD,CAAZ,CAD+B,CAE/B;;AACAA,IAAAA,CAAC,GAAGI,UAAU,CAAC,MAAMN,EAAE,CAAC,GAAGI,IAAJ,CAAT,EAAoBH,IAApB,CAAd;AACD,GAJD;;AAKA,SAAgBE,QAAhB;AACD","sourcesContent":["// https://gist.github.com/ca0v/73a31f57b397606c9813472f7493a940\nexport function debounce<T extends Function>(cb: T, wait = 20) {\n let h = 0;\n let callable = (...args: any) => {\n clearTimeout(h);\n // @ts-ignore\n h = setTimeout(() => cb(...args), wait);\n };\n return <T>(<any>callable);\n}\n"]}
1
+ {"version":3,"names":["debounce","cb","wait","arguments","length","undefined","h","callable","_len","args","Array","_key","clearTimeout","setTimeout"],"sourceRoot":"../../../src","sources":["utils/debounce.ts"],"mappings":";;;;;;AAAA;AACO,SAASA,QAAQA,CAAqBC,EAAK,EAAa;EAAA,IAAXC,IAAI,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAC3D,IAAIG,CAAC,GAAG,CAAC;EACT,IAAIC,QAAQ,GAAG,SAAAA,CAAA,EAAkB;IAAA,SAAAC,IAAA,GAAAL,SAAA,CAAAC,MAAA,EAAdK,IAAI,OAAAC,KAAA,CAAAF,IAAA,GAAAG,IAAA,MAAAA,IAAA,GAAAH,IAAA,EAAAG,IAAA;MAAJF,IAAI,CAAAE,IAAA,IAAAR,SAAA,CAAAQ,IAAA;IAAA;IACrBC,YAAY,CAACN,CAAC,CAAC;IACf;IACAA,CAAC,GAAGO,UAAU,CAAC,MAAMZ,EAAE,CAAC,GAAGQ,IAAI,CAAC,EAAEP,IAAI,CAAC;EACzC,CAAC;EACD,OAAgBK,QAAQ;AAC1B"}
@@ -4,28 +4,17 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = withCollapsibleContext;
7
-
8
7
  var _react = _interopRequireWildcard(require("react"));
9
-
10
8
  var _useCollapsibleContext = require("./hooks/useCollapsibleContext");
11
-
12
9
  var _useInternalCollapsibleContext = require("./hooks/useInternalCollapsibleContext");
13
-
14
10
  var _reactNativeReanimated = require("react-native-reanimated");
15
-
16
11
  var _debounce = require("./utils/debounce");
17
-
18
12
  var _CollapsibleHeaderProvider = _interopRequireDefault(require("./components/header/CollapsibleHeaderProvider"));
19
-
20
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
-
22
14
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
23
-
24
15
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
25
-
26
- /* eslint-disable no-shadow */
27
-
28
16
  /* eslint-disable react-hooks/exhaustive-deps */
17
+
29
18
  function withCollapsibleContext(Component) {
30
19
  return props => {
31
20
  const collapsibleHandlers = (0, _react.useRef)();
@@ -36,7 +25,6 @@ function withCollapsibleContext(Component) {
36
25
  const stickyViewPositionsRef = (0, _react.useRef)({});
37
26
  const stickyViewPositions = (0, _reactNativeReanimated.useSharedValue)({});
38
27
  const fixedHeaderHeight = (0, _reactNativeReanimated.useSharedValue)(0);
39
- const stickyHeaderHeight = (0, _reactNativeReanimated.useSharedValue)(0);
40
28
  const containerHeight = (0, _reactNativeReanimated.useSharedValue)(0);
41
29
  const firstStickyViewY = (0, _reactNativeReanimated.useSharedValue)(1000000);
42
30
  const containerRef = (0, _react.useRef)(null);
@@ -49,51 +37,47 @@ function withCollapsibleContext(Component) {
49
37
  return scrollY.value >= maxY;
50
38
  }, []);
51
39
  const contentMinHeight = (0, _reactNativeReanimated.useDerivedValue)(() => {
52
- return containerHeight.value + fixedHeaderHeight.value - stickyHeaderHeight.value;
40
+ return containerHeight.value + fixedHeaderHeight.value;
53
41
  }, []);
54
42
  (0, _reactNativeReanimated.useAnimatedReaction)(() => {
55
43
  const totalHeight = Object.keys(stickyViewPositions.value).reduce((acc, item) => {
56
- return acc + stickyViewPositions.value[item].top;
44
+ const value = stickyViewPositions.value[item];
45
+ if (value) {
46
+ return acc + value.top;
47
+ }
48
+ return acc;
57
49
  }, 0);
58
50
  return totalHeight - fixedHeaderHeight.value;
59
51
  }, (result, previous) => {
60
52
  if (result !== previous) {
61
53
  var _viewPositions$sorted;
62
-
63
54
  const viewPositions = stickyViewPositions.value;
64
- const headerHeight = fixedHeaderHeight.value;
65
- const sortedKeys = Object.keys(viewPositions).sort((a, b) => viewPositions[a].top - viewPositions[b].top);
55
+ const sortedKeys = Object.keys(viewPositions).filter(v => !!viewPositions[v])
56
+ // @ts-ignore
57
+ .sort((a, b) => viewPositions[a].top - viewPositions[b].top);
66
58
  let totalTop = 0;
67
59
  const values = {};
68
-
69
60
  for (let i = 0; i < sortedKeys.length; i++) {
70
- values[sortedKeys[i]] = totalTop; // Try minus 1 make it filled when scrolling up.
61
+ // @ts-ignore
62
+ values[sortedKeys[i]] = totalTop;
63
+ // Try minus 1 make it filled when scrolling up.
71
64
  // Otherwise, we can see a small space between the persits views
72
-
65
+ // @ts-ignore
73
66
  totalTop += viewPositions[sortedKeys[i]].height - 1;
74
67
  }
75
-
76
68
  stickyViewTops.value = values;
69
+ // @ts-ignore
77
70
  firstStickyViewY.value = ((_viewPositions$sorted = viewPositions[sortedKeys[0]]) === null || _viewPositions$sorted === void 0 ? void 0 : _viewPositions$sorted.top) || 0;
78
- const stickyHeader = sortedKeys.reduce((acc, key) => {
79
- const data = viewPositions[key];
80
- const isInsideHeader = data.top < headerHeight;
81
-
82
- if (isInsideHeader) {
83
- return acc + data.height;
84
- }
85
-
86
- return acc;
87
- }, 0);
88
- stickyHeaderHeight.value = stickyHeader;
89
71
  }
90
72
  });
91
73
  const handleStickyViewLayout = (0, _react.useCallback)((viewKey, viewRef) => {
92
74
  if (viewRef && viewRef.current && containerRef.current) {
93
75
  stickyViewRefs.current[viewKey] = viewRef;
94
- viewRef.current.measureLayout( // @ts-ignore
76
+ viewRef.current.measureLayout(
77
+ // @ts-ignore
95
78
  containerRef.current, (left, top, width, height) => {
96
- stickyViewPositionsRef.current = { ...stickyViewPositionsRef.current,
79
+ stickyViewPositionsRef.current = {
80
+ ...stickyViewPositionsRef.current,
97
81
  [viewKey]: {
98
82
  left,
99
83
  top,
@@ -101,11 +85,19 @@ function withCollapsibleContext(Component) {
101
85
  height
102
86
  }
103
87
  };
88
+ // @ts-ignore
104
89
  stickyViewPositions.value = stickyViewPositionsRef.current;
105
90
  }, () => {});
106
91
  } else {
107
- delete stickyViewRefs.current[viewKey];
108
- delete stickyViewPositionsRef.current[viewKey];
92
+ stickyViewRefs.current = {
93
+ ...stickyViewRefs.current,
94
+ [viewKey]: undefined
95
+ };
96
+ stickyViewPositionsRef.current = {
97
+ ...stickyViewPositionsRef.current,
98
+ [viewKey]: undefined
99
+ };
100
+ // @ts-ignore
109
101
  stickyViewPositions.value = stickyViewPositionsRef.current;
110
102
  }
111
103
  }, []);
@@ -113,7 +105,6 @@ function withCollapsibleContext(Component) {
113
105
  return (0, _debounce.debounce)(() => {
114
106
  Object.keys(stickyViewRefs.current).forEach(key => {
115
107
  const viewRef = stickyViewRefs.current[key];
116
-
117
108
  if (viewRef) {
118
109
  handleStickyViewLayout(key, viewRef);
119
110
  }
@@ -124,8 +115,8 @@ function withCollapsibleContext(Component) {
124
115
  headerHeight.value = (0, _reactNativeReanimated.withTiming)(height, {
125
116
  duration: fixedHeaderHeight.value === 0 ? 0 : 10
126
117
  });
127
- fixedHeaderHeight.value = height; // Try refresh sticky positions
128
-
118
+ fixedHeaderHeight.value = height;
119
+ // Try refresh sticky positions
129
120
  debounceRefreshStickyPositions();
130
121
  }, []);
131
122
  const handleContainerHeight = (0, _react.useCallback)(height => {
@@ -135,22 +126,18 @@ function withCollapsibleContext(Component) {
135
126
  return {
136
127
  collapse: animated => {
137
128
  var _collapsibleHandlers$;
138
-
139
129
  return (_collapsibleHandlers$ = collapsibleHandlers.current) === null || _collapsibleHandlers$ === void 0 ? void 0 : _collapsibleHandlers$.collapse(animated);
140
130
  },
141
131
  expand: () => {
142
132
  var _collapsibleHandlers$2;
143
-
144
133
  return (_collapsibleHandlers$2 = collapsibleHandlers.current) === null || _collapsibleHandlers$2 === void 0 ? void 0 : _collapsibleHandlers$2.expand();
145
134
  },
146
135
  scrollTo: (offset, animate) => {
147
136
  var _collapsibleHandlers$3;
148
-
149
137
  return (_collapsibleHandlers$3 = collapsibleHandlers.current) === null || _collapsibleHandlers$3 === void 0 ? void 0 : _collapsibleHandlers$3.scrollTo(offset, animate);
150
138
  },
151
139
  scrollToIndex: params => {
152
140
  var _collapsibleHandlers$4;
153
-
154
141
  return (_collapsibleHandlers$4 = collapsibleHandlers.current) === null || _collapsibleHandlers$4 === void 0 ? void 0 : _collapsibleHandlers$4.scrollToIndex(params);
155
142
  },
156
143
  headerHeight,
@@ -1 +1 @@
1
- {"version":3,"sources":["withCollapsibleContext.tsx"],"names":["withCollapsibleContext","Component","props","collapsibleHandlers","headerHeight","scrollY","stickyViewRefs","stickyViewTops","stickyViewPositionsRef","stickyViewPositions","fixedHeaderHeight","stickyHeaderHeight","containerHeight","firstStickyViewY","containerRef","scrollViewRef","setCollapsibleHandlers","handlers","current","headerCollapsed","maxY","value","contentMinHeight","totalHeight","Object","keys","reduce","acc","item","top","result","previous","viewPositions","sortedKeys","sort","a","b","totalTop","values","i","length","height","stickyHeader","key","data","isInsideHeader","handleStickyViewLayout","viewKey","viewRef","measureLayout","left","width","debounceRefreshStickyPositions","forEach","handleHeaderContainerLayout","duration","handleContainerHeight","context","collapse","animated","expand","scrollTo","offset","animate","scrollToIndex","params","internalContext"],"mappings":"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","sourcesContent":["/* eslint-disable no-shadow */\n/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { FC, useCallback, useMemo, useRef } from 'react';\nimport type { CollapsibleHandles, LayoutParams } from './types';\nimport { CollapsibleContext } from './hooks/useCollapsibleContext';\nimport { InternalCollapsibleContext } from './hooks/useInternalCollapsibleContext';\nimport {\n useAnimatedReaction,\n useDerivedValue,\n useSharedValue,\n withTiming,\n} from 'react-native-reanimated';\nimport type { View } from 'react-native';\nimport { debounce } from './utils/debounce';\nimport CollapsibleHeaderProvider from './components/header/CollapsibleHeaderProvider';\n\nexport default function withCollapsibleContext<T>(Component: FC<T>) {\n return (props: T) => {\n const collapsibleHandlers = useRef<CollapsibleHandles>();\n const headerHeight = useSharedValue(0);\n const scrollY = useSharedValue(0);\n const stickyViewRefs = useRef<Record<string, React.RefObject<View>>>({});\n const stickyViewTops = useSharedValue<Record<string, number>>({});\n const stickyViewPositionsRef = useRef<Record<string, LayoutParams>>({});\n const stickyViewPositions = useSharedValue<Record<string, LayoutParams>>(\n {}\n );\n const fixedHeaderHeight = useSharedValue(0);\n const stickyHeaderHeight = useSharedValue(0);\n const containerHeight = useSharedValue(0);\n const firstStickyViewY = useSharedValue(1000000);\n const containerRef = useRef<View>(null);\n const scrollViewRef = useRef<View>(null);\n\n const setCollapsibleHandlers = useCallback((handlers) => {\n collapsibleHandlers.current = handlers;\n }, []);\n\n const headerCollapsed = useDerivedValue(() => {\n const maxY = fixedHeaderHeight.value - firstStickyViewY.value;\n return scrollY.value >= maxY;\n }, []);\n\n const contentMinHeight = useDerivedValue(() => {\n return (\n containerHeight.value +\n fixedHeaderHeight.value -\n stickyHeaderHeight.value\n );\n }, []);\n\n useAnimatedReaction(\n () => {\n const totalHeight = Object.keys(stickyViewPositions.value).reduce(\n (acc, item) => {\n return acc + stickyViewPositions.value[item].top;\n },\n 0\n );\n return totalHeight - fixedHeaderHeight.value;\n },\n (result, previous) => {\n if (result !== previous) {\n const viewPositions = stickyViewPositions.value;\n const headerHeight = fixedHeaderHeight.value;\n const sortedKeys = Object.keys(viewPositions).sort(\n (a, b) => viewPositions[a].top - viewPositions[b].top\n );\n let totalTop = 0;\n const values: any = {};\n for (let i = 0; i < sortedKeys.length; i++) {\n values[sortedKeys[i]] = totalTop;\n // Try minus 1 make it filled when scrolling up.\n // Otherwise, we can see a small space between the persits views\n totalTop += viewPositions[sortedKeys[i]].height - 1;\n }\n stickyViewTops.value = values;\n firstStickyViewY.value = viewPositions[sortedKeys[0]]?.top || 0;\n const stickyHeader = sortedKeys.reduce((acc, key) => {\n const data = viewPositions[key];\n const isInsideHeader = data.top < headerHeight;\n if (isInsideHeader) {\n return acc + data.height;\n }\n return acc;\n }, 0);\n stickyHeaderHeight.value = stickyHeader;\n }\n }\n );\n\n const handleStickyViewLayout = useCallback(\n (viewKey: string, viewRef?: React.RefObject<View>) => {\n if (viewRef && viewRef.current && containerRef.current) {\n stickyViewRefs.current[viewKey] = viewRef;\n viewRef.current.measureLayout(\n // @ts-ignore\n containerRef.current,\n (left, top, width, height) => {\n stickyViewPositionsRef.current = {\n ...stickyViewPositionsRef.current,\n [viewKey]: { left, top, width, height },\n };\n stickyViewPositions.value = stickyViewPositionsRef.current;\n },\n () => {}\n );\n } else {\n delete stickyViewRefs.current[viewKey];\n delete stickyViewPositionsRef.current[viewKey];\n stickyViewPositions.value = stickyViewPositionsRef.current;\n }\n },\n []\n );\n\n const debounceRefreshStickyPositions = useMemo(() => {\n return debounce(() => {\n Object.keys(stickyViewRefs.current).forEach((key) => {\n const viewRef = stickyViewRefs.current[key];\n if (viewRef) {\n handleStickyViewLayout(key, viewRef);\n }\n });\n }, 200);\n }, []);\n\n const handleHeaderContainerLayout = useCallback((height: number) => {\n headerHeight.value = withTiming(height, {\n duration: fixedHeaderHeight.value === 0 ? 0 : 10,\n });\n fixedHeaderHeight.value = height;\n // Try refresh sticky positions\n debounceRefreshStickyPositions();\n }, []);\n\n const handleContainerHeight = useCallback((height: number) => {\n containerHeight.value = height;\n }, []);\n\n const context = useMemo(() => {\n return {\n collapse: (animated?: boolean) =>\n collapsibleHandlers.current?.collapse(animated),\n expand: () => collapsibleHandlers.current?.expand(),\n scrollTo: (offset: number, animate?: boolean) =>\n collapsibleHandlers.current?.scrollTo(offset, animate),\n scrollToIndex: (params: any) =>\n collapsibleHandlers.current?.scrollToIndex(params),\n headerHeight,\n scrollY,\n headerCollapsed,\n };\n }, [scrollY, headerHeight, headerCollapsed]);\n\n const internalContext = useMemo(\n () => ({\n scrollViewRef,\n containerRef,\n handleStickyViewLayout,\n handleHeaderContainerLayout,\n setCollapsibleHandlers,\n handleContainerHeight,\n firstStickyViewY,\n stickyViewTops,\n stickyViewPositions,\n fixedHeaderHeight,\n contentMinHeight,\n }),\n [\n setCollapsibleHandlers,\n handleStickyViewLayout,\n handleHeaderContainerLayout,\n handleContainerHeight,\n firstStickyViewY,\n stickyViewTops,\n stickyViewPositions,\n fixedHeaderHeight,\n contentMinHeight,\n ]\n );\n\n return (\n <CollapsibleContext.Provider value={context}>\n <InternalCollapsibleContext.Provider value={internalContext}>\n <CollapsibleHeaderProvider>\n {/** @ts-ignore */}\n <Component {...props} />\n </CollapsibleHeaderProvider>\n </InternalCollapsibleContext.Provider>\n </CollapsibleContext.Provider>\n );\n };\n}\n"]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_useCollapsibleContext","_useInternalCollapsibleContext","_reactNativeReanimated","_debounce","_CollapsibleHeaderProvider","_interopRequireDefault","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","withCollapsibleContext","Component","props","collapsibleHandlers","useRef","headerHeight","useSharedValue","scrollY","stickyViewRefs","stickyViewTops","stickyViewPositionsRef","stickyViewPositions","fixedHeaderHeight","containerHeight","firstStickyViewY","containerRef","scrollViewRef","setCollapsibleHandlers","useCallback","handlers","current","headerCollapsed","useDerivedValue","maxY","value","contentMinHeight","useAnimatedReaction","totalHeight","keys","reduce","acc","item","top","result","previous","_viewPositions$sorted","viewPositions","sortedKeys","filter","v","sort","a","b","totalTop","values","i","length","height","handleStickyViewLayout","viewKey","viewRef","measureLayout","left","width","undefined","debounceRefreshStickyPositions","useMemo","debounce","forEach","handleHeaderContainerLayout","withTiming","duration","handleContainerHeight","context","collapse","animated","_collapsibleHandlers$","expand","_collapsibleHandlers$2","scrollTo","offset","animate","_collapsibleHandlers$3","scrollToIndex","params","_collapsibleHandlers$4","internalContext","createElement","CollapsibleContext","Provider","InternalCollapsibleContext"],"sourceRoot":"../../src","sources":["withCollapsibleContext.tsx"],"mappings":"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"}
@@ -1,5 +1,4 @@
1
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
2
  /* eslint-disable react-hooks/exhaustive-deps */
4
3
  import React, { useCallback, useRef } from 'react';
5
4
  import { KeyboardAvoidingView, StyleSheet, View } from 'react-native';
@@ -7,12 +6,13 @@ import useKeyboardShowEvent from '../hooks/useKeyboardShowEvent';
7
6
  import useInternalCollapsibleContext from '../hooks/useInternalCollapsibleContext';
8
7
  import useCollapsibleContext from '../hooks/useCollapsibleContext';
9
8
  import CollapsibleHeaderConsumer from './header/CollapsibleHeaderConsumer';
10
- export default function CollapsibleContainer({
11
- children,
12
- keyboardAvoidingViewProps,
13
- textInputRefs = [],
14
- ...props
15
- }) {
9
+ export default function CollapsibleContainer(_ref) {
10
+ let {
11
+ children,
12
+ keyboardAvoidingViewProps,
13
+ textInputRefs = [],
14
+ ...props
15
+ } = _ref;
16
16
  const {
17
17
  containerRef,
18
18
  handleContainerHeight
@@ -26,19 +26,16 @@ export default function CollapsibleContainer({
26
26
  textInputRefs.some(ref => {
27
27
  const isFocusedFunc = ref.current.isFocused;
28
28
  const isFocused = isFocusedFunc && typeof isFocusedFunc === 'function' ? isFocusedFunc() : isFocusedFunc;
29
-
30
29
  if (isFocused) {
31
- ref.current.measureLayout( // @ts-ignore
30
+ ref.current.measureLayout(
31
+ // @ts-ignore
32
32
  containerRef.current, (_left, top, _width, height) => {
33
33
  if (top + height - scrollY.value > containerHeight.current) {
34
- var _keyboardAvoidingView;
35
-
36
- const extraOffset = (_keyboardAvoidingView = keyboardAvoidingViewProps === null || keyboardAvoidingViewProps === void 0 ? void 0 : keyboardAvoidingViewProps.keyboardVerticalOffset) !== null && _keyboardAvoidingView !== void 0 ? _keyboardAvoidingView : 20;
34
+ const extraOffset = (keyboardAvoidingViewProps === null || keyboardAvoidingViewProps === void 0 ? void 0 : keyboardAvoidingViewProps.keyboardVerticalOffset) ?? 20;
37
35
  scrollTo(top + height + extraOffset - containerHeight.current);
38
36
  }
39
37
  }, () => {});
40
38
  }
41
-
42
39
  return isFocused;
43
40
  });
44
41
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["CollapsibleContainer.tsx"],"names":["React","useCallback","useRef","KeyboardAvoidingView","StyleSheet","View","useKeyboardShowEvent","useInternalCollapsibleContext","useCollapsibleContext","CollapsibleHeaderConsumer","CollapsibleContainer","children","keyboardAvoidingViewProps","textInputRefs","props","containerRef","handleContainerHeight","scrollY","scrollTo","containerHeight","some","ref","isFocusedFunc","current","isFocused","measureLayout","_left","top","_width","height","value","extraOffset","keyboardVerticalOffset","handleContainerLayout","layout","nativeEvent","styles","container","style","create","flex","overflow"],"mappings":";;AAAA;AACA,OAAOA,KAAP,IAAgBC,WAAhB,EAA6BC,MAA7B,QAA2C,OAA3C;AACA,SACEC,oBADF,EAIEC,UAJF,EAKEC,IALF,QAOO,cAPP;AAQA,OAAOC,oBAAP,MAAiC,+BAAjC;AACA,OAAOC,6BAAP,MAA0C,wCAA1C;AACA,OAAOC,qBAAP,MAAkC,gCAAlC;AACA,OAAOC,yBAAP,MAAsC,oCAAtC;AAQA,eAAe,SAASC,oBAAT,CAA8B;AAC3CC,EAAAA,QAD2C;AAE3CC,EAAAA,yBAF2C;AAG3CC,EAAAA,aAAa,GAAG,EAH2B;AAI3C,KAAGC;AAJwC,CAA9B,EAKL;AACR,QAAM;AAAEC,IAAAA,YAAF;AAAgBC,IAAAA;AAAhB,MACJT,6BAA6B,EAD/B;AAEA,QAAM;AAAEU,IAAAA,OAAF;AAAWC,IAAAA;AAAX,MAAwBV,qBAAqB,EAAnD;AAEA,QAAMW,eAAe,GAAGjB,MAAM,CAAC,CAAD,CAA9B;AAEAI,EAAAA,oBAAoB,CAAC,MAAM;AACzBO,IAAAA,aAAa,CAACO,IAAd,CAAoBC,GAAD,IAAS;AAC1B,YAAMC,aAAa,GAAGD,GAAG,CAACE,OAAJ,CAAYC,SAAlC;AACA,YAAMA,SAAS,GACbF,aAAa,IAAI,OAAOA,aAAP,KAAyB,UAA1C,GACIA,aAAa,EADjB,GAEIA,aAHN;;AAIA,UAAIE,SAAJ,EAAe;AACbH,QAAAA,GAAG,CAACE,OAAJ,CAAYE,aAAZ,EACE;AACAV,QAAAA,YAAY,CAACQ,OAFf,EAGE,CAACG,KAAD,EAAgBC,GAAhB,EAA6BC,MAA7B,EAA6CC,MAA7C,KAAgE;AAC9D,cAAIF,GAAG,GAAGE,MAAN,GAAeZ,OAAO,CAACa,KAAvB,GAA+BX,eAAe,CAACI,OAAnD,EAA4D;AAAA;;AAC1D,kBAAMQ,WAAW,4BACfnB,yBADe,aACfA,yBADe,uBACfA,yBAAyB,CAAEoB,sBADZ,yEACsC,EADvD;AAEAd,YAAAA,QAAQ,CAACS,GAAG,GAAGE,MAAN,GAAeE,WAAf,GAA6BZ,eAAe,CAACI,OAA9C,CAAR;AACD;AACF,SATH,EAUE,MAAM,CAAE,CAVV;AAYD;;AACD,aAAOC,SAAP;AACD,KArBD;AAsBD,GAvBmB,CAApB;AAyBA,QAAMS,qBAAqB,GAAGhC,WAAW,CAAEiC,MAAD,IAA+B;AACvE,UAAML,MAAM,GAAGK,MAAM,CAACC,WAAP,CAAmBD,MAAnB,CAA0BL,MAAzC;AACAV,IAAAA,eAAe,CAACI,OAAhB,GAA0BM,MAA1B;AACAb,IAAAA,qBAAqB,CAACa,MAAD,CAArB;AACD,GAJwC,EAItC,EAJsC,CAAzC;AAMA,sBACE,oBAAC,oBAAD;AACE,IAAA,KAAK,EAAEO,MAAM,CAACC,SADhB;AAEE,IAAA,QAAQ,EAAC;AAFX,KAGMzB,yBAHN,gBAKE,oBAAC,IAAD,eACME,KADN;AAEE,IAAA,GAAG,EAAEC,YAFP;AAGE,IAAA,KAAK,EAAE,CAACqB,MAAM,CAACC,SAAR,EAAmBvB,KAAK,CAACwB,KAAzB,CAHT;AAIE,IAAA,QAAQ,EAAEL,qBAJZ;AAKE,IAAA,WAAW,EAAE;AALf,MAOGtB,QAPH,eAQE,oBAAC,yBAAD,OARF,CALF,CADF;AAkBD;AAED,MAAMyB,MAAM,GAAGhC,UAAU,CAACmC,MAAX,CAAkB;AAC/BF,EAAAA,SAAS,EAAE;AACTG,IAAAA,IAAI,EAAE,CADG;AAETC,IAAAA,QAAQ,EAAE;AAFD;AADoB,CAAlB,CAAf","sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useCallback, useRef } from 'react';\nimport {\n KeyboardAvoidingView,\n KeyboardAvoidingViewProps,\n LayoutChangeEvent,\n StyleSheet,\n View,\n ViewProps,\n} from 'react-native';\nimport useKeyboardShowEvent from '../hooks/useKeyboardShowEvent';\nimport useInternalCollapsibleContext from '../hooks/useInternalCollapsibleContext';\nimport useCollapsibleContext from '../hooks/useCollapsibleContext';\nimport CollapsibleHeaderConsumer from './header/CollapsibleHeaderConsumer';\n\ntype Props = Omit<ViewProps, 'ref' | 'onLayout'> & {\n children: Element;\n keyboardAvoidingViewProps?: KeyboardAvoidingViewProps;\n textInputRefs?: any[];\n};\n\nexport default function CollapsibleContainer({\n children,\n keyboardAvoidingViewProps,\n textInputRefs = [],\n ...props\n}: Props) {\n const { containerRef, handleContainerHeight } =\n useInternalCollapsibleContext();\n const { scrollY, scrollTo } = useCollapsibleContext();\n\n const containerHeight = useRef(0);\n\n useKeyboardShowEvent(() => {\n textInputRefs.some((ref) => {\n const isFocusedFunc = ref.current.isFocused;\n const isFocused =\n isFocusedFunc && typeof isFocusedFunc === 'function'\n ? isFocusedFunc()\n : isFocusedFunc;\n if (isFocused) {\n ref.current.measureLayout(\n // @ts-ignore\n containerRef.current,\n (_left: number, top: number, _width: number, height: number) => {\n if (top + height - scrollY.value > containerHeight.current) {\n const extraOffset =\n keyboardAvoidingViewProps?.keyboardVerticalOffset ?? 20;\n scrollTo(top + height + extraOffset - containerHeight.current);\n }\n },\n () => {}\n );\n }\n return isFocused;\n });\n });\n\n const handleContainerLayout = useCallback((layout: LayoutChangeEvent) => {\n const height = layout.nativeEvent.layout.height;\n containerHeight.current = height;\n handleContainerHeight(height);\n }, []);\n\n return (\n <KeyboardAvoidingView\n style={styles.container}\n behavior=\"padding\"\n {...keyboardAvoidingViewProps}\n >\n <View\n {...props}\n ref={containerRef}\n style={[styles.container, props.style]}\n onLayout={handleContainerLayout}\n collapsable={false}\n >\n {children}\n <CollapsibleHeaderConsumer />\n </View>\n </KeyboardAvoidingView>\n );\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n overflow: 'hidden',\n },\n});\n"]}
1
+ {"version":3,"names":["React","useCallback","useRef","KeyboardAvoidingView","StyleSheet","View","useKeyboardShowEvent","useInternalCollapsibleContext","useCollapsibleContext","CollapsibleHeaderConsumer","CollapsibleContainer","_ref","children","keyboardAvoidingViewProps","textInputRefs","props","containerRef","handleContainerHeight","scrollY","scrollTo","containerHeight","some","ref","isFocusedFunc","current","isFocused","measureLayout","_left","top","_width","height","value","extraOffset","keyboardVerticalOffset","handleContainerLayout","layout","nativeEvent","createElement","_extends","style","styles","container","behavior","onLayout","collapsable","create","flex","overflow"],"sourceRoot":"../../../src","sources":["components/CollapsibleContainer.tsx"],"mappings":";AAAA;AACA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,MAAM,QAAQ,OAAO;AAClD,SACEC,oBAAoB,EAGpBC,UAAU,EACVC,IAAI,QAEC,cAAc;AACrB,OAAOC,oBAAoB,MAAM,+BAA+B;AAChE,OAAOC,6BAA6B,MAAM,wCAAwC;AAClF,OAAOC,qBAAqB,MAAM,gCAAgC;AAClE,OAAOC,yBAAyB,MAAM,oCAAoC;AAQ1E,eAAe,SAASC,oBAAoBA,CAAAC,IAAA,EAKlC;EAAA,IALmC;IAC3CC,QAAQ;IACRC,yBAAyB;IACzBC,aAAa,GAAG,EAAE;IAClB,GAAGC;EACE,CAAC,GAAAJ,IAAA;EACN,MAAM;IAAEK,YAAY;IAAEC;EAAsB,CAAC,GAC3CV,6BAA6B,CAAC,CAAC;EACjC,MAAM;IAAEW,OAAO;IAAEC;EAAS,CAAC,GAAGX,qBAAqB,CAAC,CAAC;EAErD,MAAMY,eAAe,GAAGlB,MAAM,CAAC,CAAC,CAAC;EAEjCI,oBAAoB,CAAC,MAAM;IACzBQ,aAAa,CAACO,IAAI,CAAEC,GAAG,IAAK;MAC1B,MAAMC,aAAa,GAAGD,GAAG,CAACE,OAAO,CAACC,SAAS;MAC3C,MAAMA,SAAS,GACbF,aAAa,IAAI,OAAOA,aAAa,KAAK,UAAU,GAChDA,aAAa,CAAC,CAAC,GACfA,aAAa;MACnB,IAAIE,SAAS,EAAE;QACbH,GAAG,CAACE,OAAO,CAACE,aAAa;QACvB;QACAV,YAAY,CAACQ,OAAO,EACpB,CAACG,KAAa,EAAEC,GAAW,EAAEC,MAAc,EAAEC,MAAc,KAAK;UAC9D,IAAIF,GAAG,GAAGE,MAAM,GAAGZ,OAAO,CAACa,KAAK,GAAGX,eAAe,CAACI,OAAO,EAAE;YAC1D,MAAMQ,WAAW,GACf,CAAAnB,yBAAyB,aAAzBA,yBAAyB,uBAAzBA,yBAAyB,CAAEoB,sBAAsB,KAAI,EAAE;YACzDd,QAAQ,CAACS,GAAG,GAAGE,MAAM,GAAGE,WAAW,GAAGZ,eAAe,CAACI,OAAO,CAAC;UAChE;QACF,CAAC,EACD,MAAM,CAAC,CACT,CAAC;MACH;MACA,OAAOC,SAAS;IAClB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,MAAMS,qBAAqB,GAAGjC,WAAW,CAAEkC,MAAyB,IAAK;IACvE,MAAML,MAAM,GAAGK,MAAM,CAACC,WAAW,CAACD,MAAM,CAACL,MAAM;IAC/CV,eAAe,CAACI,OAAO,GAAGM,MAAM;IAChCb,qBAAqB,CAACa,MAAM,CAAC;EAC/B,CAAC,EAAE,EAAE,CAAC;EAEN,oBACE9B,KAAA,CAAAqC,aAAA,CAAClC,oBAAoB,EAAAmC,QAAA;IACnBC,KAAK,EAAEC,MAAM,CAACC,SAAU;IACxBC,QAAQ,EAAC;EAAS,GACd7B,yBAAyB,gBAE7Bb,KAAA,CAAAqC,aAAA,CAAChC,IAAI,EAAAiC,QAAA,KACCvB,KAAK;IACTO,GAAG,EAAEN,YAAa;IAClBuB,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAE1B,KAAK,CAACwB,KAAK,CAAE;IACvCI,QAAQ,EAAET,qBAAsB;IAChCU,WAAW,EAAE;EAAM,IAElBhC,QAAQ,eACTZ,KAAA,CAAAqC,aAAA,CAAC5B,yBAAyB,MAAE,CACxB,CACc,CAAC;AAE3B;AAEA,MAAM+B,MAAM,GAAGpC,UAAU,CAACyC,MAAM,CAAC;EAC/BJ,SAAS,EAAE;IACTK,IAAI,EAAE,CAAC;IACPC,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC"}
@@ -1,29 +1,27 @@
1
1
  /* eslint-disable react-hooks/exhaustive-deps */
2
-
3
2
  /* eslint-disable react-hooks/rules-of-hooks */
4
3
  import React, { useCallback, useEffect, useMemo } from 'react';
5
4
  import { StyleSheet, Text, TouchableOpacity, View } from 'react-native';
6
5
  import Animated, { useAnimatedStyle, useSharedValue, withSpring, interpolateColor, interpolate, useAnimatedReaction, runOnJS } from 'react-native-reanimated';
7
6
  let key = 0;
8
- export default function CollapsibleView({
9
- initialState = 'collapsed',
10
- collapseState = useSharedValue(0),
11
- renderHeader,
12
- children,
13
- containerStyle,
14
- collapsedBackgroundColor,
15
- expandedBackgroundColor,
16
- onToggle
17
- }) {
7
+ export default function CollapsibleView(_ref) {
8
+ let {
9
+ initialState = 'collapsed',
10
+ collapseState = useSharedValue(0),
11
+ renderHeader,
12
+ children,
13
+ containerStyle,
14
+ collapsedBackgroundColor,
15
+ expandedBackgroundColor,
16
+ onToggle
17
+ } = _ref;
18
18
  const actualHeight = useSharedValue(11110);
19
19
  const contentKey = useMemo(() => `collapsible-view-${key++}`, []);
20
20
  useEffect(() => {
21
21
  const newValue = initialState === 'collapsed' ? 0 : 1;
22
-
23
22
  if (newValue === collapseState.value) {
24
23
  return;
25
24
  }
26
-
27
25
  collapseState.value = newValue;
28
26
  }, [initialState]);
29
27
  const handleToggle = useCallback(() => {
@@ -50,19 +48,18 @@ export default function CollapsibleView({
50
48
  if (result === prev) {
51
49
  return;
52
50
  }
53
-
54
51
  if (onToggle) {
55
52
  runOnJS(onToggle)(result === 1);
56
53
  }
57
- }); // @ts-ignore
54
+ });
58
55
 
56
+ // @ts-ignore
59
57
  const containerAnimatedStyle = useAnimatedStyle(() => {
60
58
  if (collapsedBackgroundColor && expandedBackgroundColor) {
61
59
  return {
62
60
  backgroundColor: interpolateColor(collapseState.value, [0, 1], [collapsedBackgroundColor, expandedBackgroundColor])
63
61
  };
64
62
  }
65
-
66
63
  return {};
67
64
  }, []);
68
65
  const headerProps = useMemo(() => ({
@@ -86,16 +83,17 @@ export default function CollapsibleView({
86
83
  pointerEvents: "box-none"
87
84
  }, children))));
88
85
  }
89
- export function CollapsibleHeaderText({
90
- title,
91
- collapsed,
92
- onToggle,
93
- style,
94
- titleStyle,
95
- icon,
96
- iconInitialAngle = 0,
97
- children
98
- }) {
86
+ export function CollapsibleHeaderText(_ref2) {
87
+ let {
88
+ title,
89
+ collapsed,
90
+ onToggle,
91
+ style,
92
+ titleStyle,
93
+ icon,
94
+ iconInitialAngle = 0,
95
+ children
96
+ } = _ref2;
99
97
  const iconStyle = useAnimatedStyle(() => {
100
98
  const rotate = interpolate(collapsed.value, [0, 1], [iconInitialAngle, 180]);
101
99
  return {
@@ -1 +1 @@
1
- {"version":3,"sources":["CollapsibleView.tsx"],"names":["React","useCallback","useEffect","useMemo","StyleSheet","Text","TouchableOpacity","View","Animated","useAnimatedStyle","useSharedValue","withSpring","interpolateColor","interpolate","useAnimatedReaction","runOnJS","key","CollapsibleView","initialState","collapseState","renderHeader","children","containerStyle","collapsedBackgroundColor","expandedBackgroundColor","onToggle","actualHeight","contentKey","newValue","value","handleToggle","overshootClamping","handleLayout","event","nativeEvent","layout","height","wrapperStyle","damping","stiffness","contentHeight","undefined","result","prev","containerAnimatedStyle","backgroundColor","headerProps","collapsed","styles","wrapper","content","CollapsibleHeaderText","title","style","titleStyle","icon","iconInitialAngle","iconStyle","rotate","transform","headerContainer","headerTitle","create","overflow","flexDirection","alignItems","flex"],"mappings":"AAAA;;AACA;AACA,OAAOA,KAAP,IAA2BC,WAA3B,EAAwCC,SAAxC,EAAmDC,OAAnD,QAAkE,OAAlE;AACA,SAGEC,UAHF,EAIEC,IAJF,EAMEC,gBANF,EAOEC,IAPF,QASO,cATP;AAUA,OAAOC,QAAP,IACEC,gBADF,EAEEC,cAFF,EAGEC,UAHF,EAIEC,gBAJF,EAKEC,WALF,EAMEC,mBANF,EAOEC,OAPF,QAQO,yBARP;AA2BA,IAAIC,GAAG,GAAG,CAAV;AACA,eAAe,SAASC,eAAT,CAAyB;AACtCC,EAAAA,YAAY,GAAG,WADuB;AAEtCC,EAAAA,aAAa,GAAGT,cAAc,CAAC,CAAD,CAFQ;AAGtCU,EAAAA,YAHsC;AAItCC,EAAAA,QAJsC;AAKtCC,EAAAA,cALsC;AAMtCC,EAAAA,wBANsC;AAOtCC,EAAAA,uBAPsC;AAQtCC,EAAAA;AARsC,CAAzB,EASL;AACR,QAAMC,YAAY,GAAGhB,cAAc,CAAC,KAAD,CAAnC;AACA,QAAMiB,UAAU,GAAGxB,OAAO,CAAC,MAAO,oBAAmBa,GAAG,EAAG,EAAjC,EAAoC,EAApC,CAA1B;AAEAd,EAAAA,SAAS,CAAC,MAAM;AACd,UAAM0B,QAAQ,GAAGV,YAAY,KAAK,WAAjB,GAA+B,CAA/B,GAAmC,CAApD;;AACA,QAAIU,QAAQ,KAAKT,aAAa,CAACU,KAA/B,EAAsC;AACpC;AACD;;AACDV,IAAAA,aAAa,CAACU,KAAd,GAAsBD,QAAtB;AACD,GANQ,EAMN,CAACV,YAAD,CANM,CAAT;AAQA,QAAMY,YAAY,GAAG7B,WAAW,CAAC,MAAM;AACrCkB,IAAAA,aAAa,CAACU,KAAd,GAAsBlB,UAAU,CAACQ,aAAa,CAACU,KAAd,KAAwB,CAAxB,GAA4B,CAA5B,GAAgC,CAAjC,EAAoC;AAClEE,MAAAA,iBAAiB,EAAE;AAD+C,KAApC,CAAhC;AAGD,GAJ+B,EAI7B,EAJ6B,CAAhC;AAMA,QAAMC,YAAY,GAAG/B,WAAW,CAAEgC,KAAD,IAA8B;AAC7D,QAAIA,KAAK,CAACC,WAAN,CAAkBC,MAAlB,CAAyBC,MAAzB,IAAmC,CAAvC,EAA0C;AACxCV,MAAAA,YAAY,CAACG,KAAb,GAAqBI,KAAK,CAACC,WAAN,CAAkBC,MAAlB,CAAyBC,MAA9C;AACD;AACF,GAJ+B,EAI7B,EAJ6B,CAAhC;AAMA,QAAMC,YAAY,GAAG5B,gBAAgB,CACnC,OAAO;AACL2B,IAAAA,MAAM,EAAEzB,UAAU,CAACQ,aAAa,CAACU,KAAd,KAAwB,CAAxB,GAA4BH,YAAY,CAACG,KAAzC,GAAiD,CAAlD,EAAqD;AACrES,MAAAA,OAAO,EAAE,CAD4D;AAErEC,MAAAA,SAAS,EAAE,GAF0D;AAGrER,MAAAA,iBAAiB,EAAE;AAHkD,KAArD;AADb,GAAP,CADmC,EAQnC,CAACL,YAAD,EAAeC,UAAf,CARmC,CAArC;AAWA,QAAMa,aAAa,GAAG/B,gBAAgB,CACpC,OAAO;AACL2B,IAAAA,MAAM,EAAEV,YAAY,CAACG,KAAb,GAAqB,CAArB,GAAyBH,YAAY,CAACG,KAAtC,GAA8CY;AADjD,GAAP,CADoC,EAIpC,CAACf,YAAD,EAAeC,UAAf,CAJoC,CAAtC;AAOAb,EAAAA,mBAAmB,CACjB,MAAOK,aAAa,CAACU,KAAd,KAAwB,CAAxB,GAA4B,CAA5B,GAAgCV,aAAa,CAACU,KAAd,KAAwB,CAAxB,GAA4B,CAA5B,GAAgC,CADtD,EAEjB,CAACa,MAAD,EAASC,IAAT,KAAkB;AAChB,QAAID,MAAM,KAAKC,IAAf,EAAqB;AACnB;AACD;;AACD,QAAIlB,QAAJ,EAAc;AACZV,MAAAA,OAAO,CAACU,QAAD,CAAP,CAAkBiB,MAAM,KAAK,CAA7B;AACD;AACF,GATgB,CAAnB,CA1CQ,CAsDR;;AACA,QAAME,sBAAsB,GAAGnC,gBAAgB,CAAC,MAAM;AACpD,QAAIc,wBAAwB,IAAIC,uBAAhC,EAAyD;AACvD,aAAO;AACLqB,QAAAA,eAAe,EAAEjC,gBAAgB,CAC/BO,aAAa,CAACU,KADiB,EAE/B,CAAC,CAAD,EAAI,CAAJ,CAF+B,EAG/B,CAACN,wBAAD,EAA2BC,uBAA3B,CAH+B;AAD5B,OAAP;AAOD;;AACD,WAAO,EAAP;AACD,GAX8C,EAW5C,EAX4C,CAA/C;AAaA,QAAMsB,WAAW,GAAG3C,OAAO,CACzB,OAAO;AAAEsB,IAAAA,QAAQ,EAAEK,YAAZ;AAA0BiB,IAAAA,SAAS,EAAE5B;AAArC,GAAP,CADyB,EAEzB,CAACW,YAAD,EAAeX,aAAf,CAFyB,CAA3B;AAKA,sBACE,oBAAC,QAAD,CAAU,IAAV;AACE,IAAA,KAAK,EAAE,CAACG,cAAD,EAAiBsB,sBAAjB,CADT;AAEE,IAAA,aAAa,EAAC;AAFhB,kBAIE,oBAAC,IAAD;AAAM,IAAA,aAAa,EAAC;AAApB,KAAgCxB,YAAY,CAAC0B,WAAD,CAA5C,CAJF,eAKE,oBAAC,QAAD,CAAU,IAAV;AACE,IAAA,KAAK,EAAE,CAACE,MAAM,CAACC,OAAR,EAAiBZ,YAAjB,CADT;AAEE,IAAA,aAAa,EAAC;AAFhB,kBAIE,oBAAC,QAAD,CAAU,IAAV;AACE,IAAA,KAAK,EAAE,CAACW,MAAM,CAACE,OAAR,EAAiBV,aAAjB,CADT;AAEE,IAAA,aAAa,EAAC;AAFhB,kBAIE,oBAAC,IAAD;AACE,IAAA,GAAG,EAAEb,UADP;AAEE,IAAA,QAAQ,EAAEK,YAFZ;AAGE,IAAA,aAAa,EAAC;AAHhB,KAKGX,QALH,CAJF,CAJF,CALF,CADF;AAyBD;AAED,OAAO,SAAS8B,qBAAT,CAA+B;AACpCC,EAAAA,KADoC;AAEpCL,EAAAA,SAFoC;AAGpCtB,EAAAA,QAHoC;AAIpC4B,EAAAA,KAJoC;AAKpCC,EAAAA,UALoC;AAMpCC,EAAAA,IANoC;AAOpCC,EAAAA,gBAAgB,GAAG,CAPiB;AAQpCnC,EAAAA;AARoC,CAA/B,EAgBqB;AAC1B,QAAMoC,SAAS,GAAGhD,gBAAgB,CAAC,MAAM;AACvC,UAAMiD,MAAM,GAAG7C,WAAW,CACxBkC,SAAS,CAAClB,KADc,EAExB,CAAC,CAAD,EAAI,CAAJ,CAFwB,EAGxB,CAAC2B,gBAAD,EAAmB,GAAnB,CAHwB,CAA1B;AAKA,WAAO;AACLG,MAAAA,SAAS,EAAE,CACT;AACED,QAAAA,MAAM,EAAG,GAAEA,MAAO;AADpB,OADS;AADN,KAAP;AAOD,GAbiC,EAa/B,CAACF,gBAAD,CAb+B,CAAlC;AAeA,sBACE,oBAAC,gBAAD;AAAkB,IAAA,aAAa,EAAE,GAAjC;AAAsC,IAAA,OAAO,EAAE/B,QAA/C;AAAyD,IAAA,KAAK,EAAE4B;AAAhE,kBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAEL,MAAM,CAACY;AAApB,kBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE,CAACZ,MAAM,CAACa,WAAR,EAAqBP,UAArB;AAAb,KAAgDF,KAAhD,CADF,EAEGG,IAAI,iBAAI,oBAAC,QAAD,CAAU,IAAV;AAAe,IAAA,KAAK,EAAEE;AAAtB,KAAkCF,IAAlC,CAFX,CADF,EAKGlC,QALH,CADF;AASD;AAED,MAAM2B,MAAM,GAAG5C,UAAU,CAAC0D,MAAX,CAAkB;AAC/Bb,EAAAA,OAAO,EAAE;AACPc,IAAAA,QAAQ,EAAE;AADH,GADsB;AAI/Bb,EAAAA,OAAO,EAAE,EAJsB;AAK/BU,EAAAA,eAAe,EAAE;AACfI,IAAAA,aAAa,EAAE,KADA;AAEfC,IAAAA,UAAU,EAAE;AAFG,GALc;AAS/BJ,EAAAA,WAAW,EAAE;AACXK,IAAAA,IAAI,EAAE;AADK;AATkB,CAAlB,CAAf","sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\n/* eslint-disable react-hooks/rules-of-hooks */\nimport React, { ReactNode, useCallback, useEffect, useMemo } from 'react';\nimport {\n LayoutChangeEvent,\n StyleProp,\n StyleSheet,\n Text,\n TextStyle,\n TouchableOpacity,\n View,\n ViewStyle,\n} from 'react-native';\nimport Animated, {\n useAnimatedStyle,\n useSharedValue,\n withSpring,\n interpolateColor,\n interpolate,\n useAnimatedReaction,\n runOnJS,\n} from 'react-native-reanimated';\n\nexport type CollapsibleHeaderProps = {\n onToggle: () => void;\n collapsed: Animated.SharedValue<number>;\n};\n\ntype Props = {\n initialState?: 'collapsed' | 'expanded';\n collapseState?: Animated.SharedValue<number>;\n renderHeader: (props: CollapsibleHeaderProps) => ReactNode;\n children: ReactNode;\n containerStyle?: StyleProp<ViewStyle>;\n collapsedBackgroundColor?: string;\n expandedBackgroundColor?: string;\n useDynamicLayout?: boolean;\n onToggle?: (isExpand: boolean) => void;\n};\n\nlet key = 0;\nexport default function CollapsibleView({\n initialState = 'collapsed',\n collapseState = useSharedValue(0),\n renderHeader,\n children,\n containerStyle,\n collapsedBackgroundColor,\n expandedBackgroundColor,\n onToggle,\n}: Props) {\n const actualHeight = useSharedValue(11110);\n const contentKey = useMemo(() => `collapsible-view-${key++}`, []);\n\n useEffect(() => {\n const newValue = initialState === 'collapsed' ? 0 : 1;\n if (newValue === collapseState.value) {\n return;\n }\n collapseState.value = newValue;\n }, [initialState]);\n\n const handleToggle = useCallback(() => {\n collapseState.value = withSpring(collapseState.value === 0 ? 1 : 0, {\n overshootClamping: true,\n });\n }, []);\n\n const handleLayout = useCallback((event: LayoutChangeEvent) => {\n if (event.nativeEvent.layout.height >= 0) {\n actualHeight.value = event.nativeEvent.layout.height;\n }\n }, []);\n\n const wrapperStyle = useAnimatedStyle(\n () => ({\n height: withSpring(collapseState.value === 1 ? actualHeight.value : 0, {\n damping: 5,\n stiffness: 130,\n overshootClamping: true,\n }),\n }),\n [actualHeight, contentKey]\n );\n\n const contentHeight = useAnimatedStyle(\n () => ({\n height: actualHeight.value > 0 ? actualHeight.value : undefined,\n }),\n [actualHeight, contentKey]\n );\n\n useAnimatedReaction(\n () => (collapseState.value === 0 ? 0 : collapseState.value === 1 ? 1 : 0),\n (result, prev) => {\n if (result === prev) {\n return;\n }\n if (onToggle) {\n runOnJS(onToggle)(result === 1);\n }\n }\n );\n\n // @ts-ignore\n const containerAnimatedStyle = useAnimatedStyle(() => {\n if (collapsedBackgroundColor && expandedBackgroundColor) {\n return {\n backgroundColor: interpolateColor(\n collapseState.value,\n [0, 1],\n [collapsedBackgroundColor, expandedBackgroundColor]\n ),\n };\n }\n return {};\n }, []);\n\n const headerProps = useMemo(\n () => ({ onToggle: handleToggle, collapsed: collapseState }),\n [handleToggle, collapseState]\n );\n\n return (\n <Animated.View\n style={[containerStyle, containerAnimatedStyle]}\n pointerEvents=\"box-none\"\n >\n <View pointerEvents=\"box-none\">{renderHeader(headerProps)}</View>\n <Animated.View\n style={[styles.wrapper, wrapperStyle]}\n pointerEvents=\"box-none\"\n >\n <Animated.View\n style={[styles.content, contentHeight]}\n pointerEvents=\"box-none\"\n >\n <View\n key={contentKey}\n onLayout={handleLayout}\n pointerEvents=\"box-none\"\n >\n {children}\n </View>\n </Animated.View>\n </Animated.View>\n </Animated.View>\n );\n}\n\nexport function CollapsibleHeaderText({\n title,\n collapsed,\n onToggle,\n style,\n titleStyle,\n icon,\n iconInitialAngle = 0,\n children,\n}: {\n title: string | Element;\n style?: StyleProp<ViewStyle>;\n titleStyle?: StyleProp<TextStyle>;\n icon?: ReactNode;\n iconInitialAngle?: number;\n children?: ReactNode;\n} & CollapsibleHeaderProps) {\n const iconStyle = useAnimatedStyle(() => {\n const rotate = interpolate(\n collapsed.value,\n [0, 1],\n [iconInitialAngle, 180]\n );\n return {\n transform: [\n {\n rotate: `${rotate}deg`,\n },\n ],\n };\n }, [iconInitialAngle]);\n\n return (\n <TouchableOpacity activeOpacity={0.9} onPress={onToggle} style={style}>\n <View style={styles.headerContainer}>\n <Text style={[styles.headerTitle, titleStyle]}>{title}</Text>\n {icon && <Animated.View style={iconStyle}>{icon}</Animated.View>}\n </View>\n {children}\n </TouchableOpacity>\n );\n}\n\nconst styles = StyleSheet.create({\n wrapper: {\n overflow: 'hidden',\n },\n content: {},\n headerContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n },\n headerTitle: {\n flex: 1,\n },\n});\n"]}
1
+ {"version":3,"names":["React","useCallback","useEffect","useMemo","StyleSheet","Text","TouchableOpacity","View","Animated","useAnimatedStyle","useSharedValue","withSpring","interpolateColor","interpolate","useAnimatedReaction","runOnJS","key","CollapsibleView","_ref","initialState","collapseState","renderHeader","children","containerStyle","collapsedBackgroundColor","expandedBackgroundColor","onToggle","actualHeight","contentKey","newValue","value","handleToggle","overshootClamping","handleLayout","event","nativeEvent","layout","height","wrapperStyle","damping","stiffness","contentHeight","undefined","result","prev","containerAnimatedStyle","backgroundColor","headerProps","collapsed","createElement","style","pointerEvents","styles","wrapper","content","onLayout","CollapsibleHeaderText","_ref2","title","titleStyle","icon","iconInitialAngle","iconStyle","rotate","transform","activeOpacity","onPress","headerContainer","headerTitle","create","overflow","flexDirection","alignItems","flex"],"sourceRoot":"../../../src","sources":["components/CollapsibleView.tsx"],"mappings":"AAAA;AACA;AACA,OAAOA,KAAK,IAAeC,WAAW,EAAEC,SAAS,EAAEC,OAAO,QAAQ,OAAO;AACzE,SAGEC,UAAU,EACVC,IAAI,EAEJC,gBAAgB,EAChBC,IAAI,QAEC,cAAc;AACrB,OAAOC,QAAQ,IACbC,gBAAgB,EAChBC,cAAc,EACdC,UAAU,EACVC,gBAAgB,EAChBC,WAAW,EACXC,mBAAmB,EACnBC,OAAO,QACF,yBAAyB;AAmBhC,IAAIC,GAAG,GAAG,CAAC;AACX,eAAe,SAASC,eAAeA,CAAAC,IAAA,EAS7B;EAAA,IAT8B;IACtCC,YAAY,GAAG,WAAW;IAC1BC,aAAa,GAAGV,cAAc,CAAC,CAAC,CAAC;IACjCW,YAAY;IACZC,QAAQ;IACRC,cAAc;IACdC,wBAAwB;IACxBC,uBAAuB;IACvBC;EACK,CAAC,GAAAR,IAAA;EACN,MAAMS,YAAY,GAAGjB,cAAc,CAAC,KAAK,CAAC;EAC1C,MAAMkB,UAAU,GAAGzB,OAAO,CAAC,MAAO,oBAAmBa,GAAG,EAAG,EAAC,EAAE,EAAE,CAAC;EAEjEd,SAAS,CAAC,MAAM;IACd,MAAM2B,QAAQ,GAAGV,YAAY,KAAK,WAAW,GAAG,CAAC,GAAG,CAAC;IACrD,IAAIU,QAAQ,KAAKT,aAAa,CAACU,KAAK,EAAE;MACpC;IACF;IACAV,aAAa,CAACU,KAAK,GAAGD,QAAQ;EAChC,CAAC,EAAE,CAACV,YAAY,CAAC,CAAC;EAElB,MAAMY,YAAY,GAAG9B,WAAW,CAAC,MAAM;IACrCmB,aAAa,CAACU,KAAK,GAAGnB,UAAU,CAACS,aAAa,CAACU,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;MAClEE,iBAAiB,EAAE;IACrB,CAAC,CAAC;EACJ,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,YAAY,GAAGhC,WAAW,CAAEiC,KAAwB,IAAK;IAC7D,IAAIA,KAAK,CAACC,WAAW,CAACC,MAAM,CAACC,MAAM,IAAI,CAAC,EAAE;MACxCV,YAAY,CAACG,KAAK,GAAGI,KAAK,CAACC,WAAW,CAACC,MAAM,CAACC,MAAM;IACtD;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,YAAY,GAAG7B,gBAAgB,CACnC,OAAO;IACL4B,MAAM,EAAE1B,UAAU,CAACS,aAAa,CAACU,KAAK,KAAK,CAAC,GAAGH,YAAY,CAACG,KAAK,GAAG,CAAC,EAAE;MACrES,OAAO,EAAE,CAAC;MACVC,SAAS,EAAE,GAAG;MACdR,iBAAiB,EAAE;IACrB,CAAC;EACH,CAAC,CAAC,EACF,CAACL,YAAY,EAAEC,UAAU,CAC3B,CAAC;EAED,MAAMa,aAAa,GAAGhC,gBAAgB,CACpC,OAAO;IACL4B,MAAM,EAAEV,YAAY,CAACG,KAAK,GAAG,CAAC,GAAGH,YAAY,CAACG,KAAK,GAAGY;EACxD,CAAC,CAAC,EACF,CAACf,YAAY,EAAEC,UAAU,CAC3B,CAAC;EAEDd,mBAAmB,CACjB,MAAOM,aAAa,CAACU,KAAK,KAAK,CAAC,GAAG,CAAC,GAAGV,aAAa,CAACU,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE,EACzE,CAACa,MAAM,EAAEC,IAAI,KAAK;IAChB,IAAID,MAAM,KAAKC,IAAI,EAAE;MACnB;IACF;IACA,IAAIlB,QAAQ,EAAE;MACZX,OAAO,CAACW,QAAQ,CAAC,CAACiB,MAAM,KAAK,CAAC,CAAC;IACjC;EACF,CACF,CAAC;;EAED;EACA,MAAME,sBAAsB,GAAGpC,gBAAgB,CAAC,MAAM;IACpD,IAAIe,wBAAwB,IAAIC,uBAAuB,EAAE;MACvD,OAAO;QACLqB,eAAe,EAAElC,gBAAgB,CAC/BQ,aAAa,CAACU,KAAK,EACnB,CAAC,CAAC,EAAE,CAAC,CAAC,EACN,CAACN,wBAAwB,EAAEC,uBAAuB,CACpD;MACF,CAAC;IACH;IACA,OAAO,CAAC,CAAC;EACX,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMsB,WAAW,GAAG5C,OAAO,CACzB,OAAO;IAAEuB,QAAQ,EAAEK,YAAY;IAAEiB,SAAS,EAAE5B;EAAc,CAAC,CAAC,EAC5D,CAACW,YAAY,EAAEX,aAAa,CAC9B,CAAC;EAED,oBACEpB,KAAA,CAAAiD,aAAA,CAACzC,QAAQ,CAACD,IAAI;IACZ2C,KAAK,EAAE,CAAC3B,cAAc,EAAEsB,sBAAsB,CAAE;IAChDM,aAAa,EAAC;EAAU,gBAExBnD,KAAA,CAAAiD,aAAA,CAAC1C,IAAI;IAAC4C,aAAa,EAAC;EAAU,GAAE9B,YAAY,CAAC0B,WAAW,CAAQ,CAAC,eACjE/C,KAAA,CAAAiD,aAAA,CAACzC,QAAQ,CAACD,IAAI;IACZ2C,KAAK,EAAE,CAACE,MAAM,CAACC,OAAO,EAAEf,YAAY,CAAE;IACtCa,aAAa,EAAC;EAAU,gBAExBnD,KAAA,CAAAiD,aAAA,CAACzC,QAAQ,CAACD,IAAI;IACZ2C,KAAK,EAAE,CAACE,MAAM,CAACE,OAAO,EAAEb,aAAa,CAAE;IACvCU,aAAa,EAAC;EAAU,gBAExBnD,KAAA,CAAAiD,aAAA,CAAC1C,IAAI;IACHS,GAAG,EAAEY,UAAW;IAChB2B,QAAQ,EAAEtB,YAAa;IACvBkB,aAAa,EAAC;EAAU,GAEvB7B,QACG,CACO,CACF,CACF,CAAC;AAEpB;AAEA,OAAO,SAASkC,qBAAqBA,CAAAC,KAAA,EAgBT;EAAA,IAhBU;IACpCC,KAAK;IACLV,SAAS;IACTtB,QAAQ;IACRwB,KAAK;IACLS,UAAU;IACVC,IAAI;IACJC,gBAAgB,GAAG,CAAC;IACpBvC;EAQuB,CAAC,GAAAmC,KAAA;EACxB,MAAMK,SAAS,GAAGrD,gBAAgB,CAAC,MAAM;IACvC,MAAMsD,MAAM,GAAGlD,WAAW,CACxBmC,SAAS,CAAClB,KAAK,EACf,CAAC,CAAC,EAAE,CAAC,CAAC,EACN,CAAC+B,gBAAgB,EAAE,GAAG,CACxB,CAAC;IACD,OAAO;MACLG,SAAS,EAAE,CACT;QACED,MAAM,EAAG,GAAEA,MAAO;MACpB,CAAC;IAEL,CAAC;EACH,CAAC,EAAE,CAACF,gBAAgB,CAAC,CAAC;EAEtB,oBACE7D,KAAA,CAAAiD,aAAA,CAAC3C,gBAAgB;IAAC2D,aAAa,EAAE,GAAI;IAACC,OAAO,EAAExC,QAAS;IAACwB,KAAK,EAAEA;EAAM,gBACpElD,KAAA,CAAAiD,aAAA,CAAC1C,IAAI;IAAC2C,KAAK,EAAEE,MAAM,CAACe;EAAgB,gBAClCnE,KAAA,CAAAiD,aAAA,CAAC5C,IAAI;IAAC6C,KAAK,EAAE,CAACE,MAAM,CAACgB,WAAW,EAAET,UAAU;EAAE,GAAED,KAAY,CAAC,EAC5DE,IAAI,iBAAI5D,KAAA,CAAAiD,aAAA,CAACzC,QAAQ,CAACD,IAAI;IAAC2C,KAAK,EAAEY;EAAU,GAAEF,IAAoB,CAC3D,CAAC,EACNtC,QACe,CAAC;AAEvB;AAEA,MAAM8B,MAAM,GAAGhD,UAAU,CAACiE,MAAM,CAAC;EAC/BhB,OAAO,EAAE;IACPiB,QAAQ,EAAE;EACZ,CAAC;EACDhB,OAAO,EAAE,CAAC,CAAC;EACXa,eAAe,EAAE;IACfI,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE;EACd,CAAC;EACDJ,WAAW,EAAE;IACXK,IAAI,EAAE;EACR;AACF,CAAC,CAAC"}
@@ -1,8 +1,9 @@
1
1
  import React from 'react';
2
2
  import Animated, { useAnimatedStyle } from 'react-native-reanimated';
3
- export default function AnimatedTopView({
4
- height
5
- }) {
3
+ export default function AnimatedTopView(_ref) {
4
+ let {
5
+ height
6
+ } = _ref;
6
7
  const contentStyle = useAnimatedStyle(() => ({
7
8
  paddingTop: height.value
8
9
  }), []);
@@ -1 +1 @@
1
- {"version":3,"sources":["AnimatedTopView.tsx"],"names":["React","Animated","useAnimatedStyle","AnimatedTopView","height","contentStyle","paddingTop","value"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,QAAP,IAAmBC,gBAAnB,QAA2C,yBAA3C;AAMA,eAAe,SAASC,eAAT,CAAyB;AAAEC,EAAAA;AAAF,CAAzB,EAA4C;AACzD,QAAMC,YAAY,GAAGH,gBAAgB,CACnC,OAAO;AACLI,IAAAA,UAAU,EAAEF,MAAM,CAACG;AADd,GAAP,CADmC,EAInC,EAJmC,CAArC;AAOA,sBAAO,oBAAC,QAAD,CAAU,IAAV;AAAe,IAAA,KAAK,EAAEF;AAAtB,IAAP;AACD","sourcesContent":["import React from 'react';\nimport Animated, { useAnimatedStyle } from 'react-native-reanimated';\n\ntype Props = {\n height: Animated.SharedValue<number>;\n};\n\nexport default function AnimatedTopView({ height }: Props) {\n const contentStyle = useAnimatedStyle(\n () => ({\n paddingTop: height.value,\n }),\n []\n );\n\n return <Animated.View style={contentStyle} />;\n}\n"]}
1
+ {"version":3,"names":["React","Animated","useAnimatedStyle","AnimatedTopView","_ref","height","contentStyle","paddingTop","value","createElement","View","style"],"sourceRoot":"../../../../src","sources":["components/header/AnimatedTopView.tsx"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,QAAQ,IAAIC,gBAAgB,QAAQ,yBAAyB;AAMpE,eAAe,SAASC,eAAeA,CAAAC,IAAA,EAAoB;EAAA,IAAnB;IAAEC;EAAc,CAAC,GAAAD,IAAA;EACvD,MAAME,YAAY,GAAGJ,gBAAgB,CACnC,OAAO;IACLK,UAAU,EAAEF,MAAM,CAACG;EACrB,CAAC,CAAC,EACF,EACF,CAAC;EAED,oBAAOR,KAAA,CAAAS,aAAA,CAACR,QAAQ,CAACS,IAAI;IAACC,KAAK,EAAEL;EAAa,CAAE,CAAC;AAC/C"}