@r0b0t3d/react-native-collapsible 1.5.2 → 1.6.0-alpha.0

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 (129) hide show
  1. package/lib/commonjs/components/CollapsibleContainer.js +19 -21
  2. package/lib/commonjs/components/CollapsibleContainer.js.map +1 -1
  3. package/lib/commonjs/components/CollapsibleView.js +38 -30
  4. package/lib/commonjs/components/CollapsibleView.js.map +1 -1
  5. package/lib/commonjs/components/header/AnimatedTopView.js +5 -7
  6. package/lib/commonjs/components/header/AnimatedTopView.js.map +1 -1
  7. package/lib/commonjs/components/header/CollapsibleHeaderConsumer.js +10 -13
  8. package/lib/commonjs/components/header/CollapsibleHeaderConsumer.js.map +1 -1
  9. package/lib/commonjs/components/header/CollapsibleHeaderContainer.js +22 -17
  10. package/lib/commonjs/components/header/CollapsibleHeaderContainer.js.map +1 -1
  11. package/lib/commonjs/components/header/CollapsibleHeaderContainerProvider.js +12 -15
  12. package/lib/commonjs/components/header/CollapsibleHeaderContainerProvider.js.map +1 -1
  13. package/lib/commonjs/components/header/StickyView.js +18 -25
  14. package/lib/commonjs/components/header/StickyView.js.map +1 -1
  15. package/lib/commonjs/components/scrollable/CollapsibleFlatList.js +27 -41
  16. package/lib/commonjs/components/scrollable/CollapsibleFlatList.js.map +1 -1
  17. package/lib/commonjs/components/scrollable/CollapsibleScrollView.js +12 -15
  18. package/lib/commonjs/components/scrollable/CollapsibleScrollView.js.map +1 -1
  19. package/lib/commonjs/components/scrollable/CollapsibleSectionList.js +22 -36
  20. package/lib/commonjs/components/scrollable/CollapsibleSectionList.js.map +1 -1
  21. package/lib/commonjs/components/scrollable/useAnimatedScroll.js +44 -24
  22. package/lib/commonjs/components/scrollable/useAnimatedScroll.js.map +1 -1
  23. package/lib/commonjs/hooks/useCollapsibleContext.js +1 -2
  24. package/lib/commonjs/hooks/useCollapsibleContext.js.map +1 -1
  25. package/lib/commonjs/hooks/useCollapsibleHeaderConsumerContext.js +1 -2
  26. package/lib/commonjs/hooks/useCollapsibleHeaderConsumerContext.js.map +1 -1
  27. package/lib/commonjs/hooks/useCollapsibleHeaderContext.js +1 -2
  28. package/lib/commonjs/hooks/useCollapsibleHeaderContext.js.map +1 -1
  29. package/lib/commonjs/hooks/useInternalCollapsibleContext.js +1 -2
  30. package/lib/commonjs/hooks/useInternalCollapsibleContext.js.map +1 -1
  31. package/lib/commonjs/hooks/useKeyboardShowEvent.js.map +1 -1
  32. package/lib/commonjs/index.js +3 -12
  33. package/lib/commonjs/index.js.map +1 -1
  34. package/lib/commonjs/plugins/CollapsibleFlashList.js +14 -17
  35. package/lib/commonjs/plugins/CollapsibleFlashList.js.map +1 -1
  36. package/lib/commonjs/plugins/CollapsibleLegendList.js +15 -15
  37. package/lib/commonjs/plugins/CollapsibleLegendList.js.map +1 -1
  38. package/lib/commonjs/types.js.map +1 -1
  39. package/lib/commonjs/utils/debounce.js +2 -6
  40. package/lib/commonjs/utils/debounce.js.map +1 -1
  41. package/lib/commonjs/utils/useSharedValueRef.js +33 -3
  42. package/lib/commonjs/utils/useSharedValueRef.js.map +1 -1
  43. package/lib/commonjs/withCollapsibleContext.js +3 -4
  44. package/lib/commonjs/withCollapsibleContext.js.map +1 -1
  45. package/lib/module/components/CollapsibleContainer.js +18 -19
  46. package/lib/module/components/CollapsibleContainer.js.map +1 -1
  47. package/lib/module/components/CollapsibleView.js +38 -29
  48. package/lib/module/components/CollapsibleView.js.map +1 -1
  49. package/lib/module/components/header/AnimatedTopView.js +3 -4
  50. package/lib/module/components/header/AnimatedTopView.js.map +1 -1
  51. package/lib/module/components/header/CollapsibleHeaderConsumer.js +8 -10
  52. package/lib/module/components/header/CollapsibleHeaderConsumer.js.map +1 -1
  53. package/lib/module/components/header/CollapsibleHeaderContainer.js +21 -15
  54. package/lib/module/components/header/CollapsibleHeaderContainer.js.map +1 -1
  55. package/lib/module/components/header/CollapsibleHeaderContainerProvider.js +10 -12
  56. package/lib/module/components/header/CollapsibleHeaderContainerProvider.js.map +1 -1
  57. package/lib/module/components/header/StickyView.js +18 -23
  58. package/lib/module/components/header/StickyView.js.map +1 -1
  59. package/lib/module/components/scrollable/CollapsibleFlatList.js +27 -41
  60. package/lib/module/components/scrollable/CollapsibleFlatList.js.map +1 -1
  61. package/lib/module/components/scrollable/CollapsibleScrollView.js +10 -12
  62. package/lib/module/components/scrollable/CollapsibleScrollView.js.map +1 -1
  63. package/lib/module/components/scrollable/CollapsibleSectionList.js +22 -35
  64. package/lib/module/components/scrollable/CollapsibleSectionList.js.map +1 -1
  65. package/lib/module/components/scrollable/useAnimatedScroll.js +44 -23
  66. package/lib/module/components/scrollable/useAnimatedScroll.js.map +1 -1
  67. package/lib/module/hooks/useCollapsibleContext.js.map +1 -1
  68. package/lib/module/hooks/useCollapsibleHeaderConsumerContext.js.map +1 -1
  69. package/lib/module/hooks/useCollapsibleHeaderContext.js.map +1 -1
  70. package/lib/module/hooks/useInternalCollapsibleContext.js.map +1 -1
  71. package/lib/module/hooks/useKeyboardShowEvent.js.map +1 -1
  72. package/lib/module/index.js +0 -1
  73. package/lib/module/index.js.map +1 -1
  74. package/lib/module/plugins/CollapsibleFlashList.js +12 -14
  75. package/lib/module/plugins/CollapsibleFlashList.js.map +1 -1
  76. package/lib/module/plugins/CollapsibleLegendList.js +13 -12
  77. package/lib/module/plugins/CollapsibleLegendList.js.map +1 -1
  78. package/lib/module/types.js.map +1 -1
  79. package/lib/module/utils/debounce.js +2 -6
  80. package/lib/module/utils/debounce.js.map +1 -1
  81. package/lib/module/utils/useSharedValueRef.js +33 -3
  82. package/lib/module/utils/useSharedValueRef.js.map +1 -1
  83. package/lib/module/withCollapsibleContext.js +2 -2
  84. package/lib/module/withCollapsibleContext.js.map +1 -1
  85. package/lib/typescript/components/CollapsibleContainer.d.ts +1 -1
  86. package/lib/typescript/components/CollapsibleContainer.d.ts.map +1 -1
  87. package/lib/typescript/components/CollapsibleView.d.ts +4 -4
  88. package/lib/typescript/components/CollapsibleView.d.ts.map +1 -1
  89. package/lib/typescript/components/header/AnimatedTopView.d.ts +2 -2
  90. package/lib/typescript/components/header/AnimatedTopView.d.ts.map +1 -1
  91. package/lib/typescript/components/header/CollapsibleHeaderContainer.d.ts.map +1 -1
  92. package/lib/typescript/components/header/StickyView.d.ts +1 -1
  93. package/lib/typescript/components/header/StickyView.d.ts.map +1 -1
  94. package/lib/typescript/components/scrollable/CollapsibleFlatList.d.ts.map +1 -1
  95. package/lib/typescript/components/scrollable/CollapsibleSectionList.d.ts.map +1 -1
  96. package/lib/typescript/components/scrollable/useAnimatedScroll.d.ts +2 -2
  97. package/lib/typescript/components/scrollable/useAnimatedScroll.d.ts.map +1 -1
  98. package/lib/typescript/hooks/useCollapsibleContext.d.ts +0 -1
  99. package/lib/typescript/hooks/useCollapsibleContext.d.ts.map +1 -1
  100. package/lib/typescript/hooks/useCollapsibleHeaderContext.d.ts +2 -3
  101. package/lib/typescript/hooks/useCollapsibleHeaderContext.d.ts.map +1 -1
  102. package/lib/typescript/hooks/useInternalCollapsibleContext.d.ts +0 -1
  103. package/lib/typescript/hooks/useInternalCollapsibleContext.d.ts.map +1 -1
  104. package/lib/typescript/index.d.ts +0 -1
  105. package/lib/typescript/index.d.ts.map +1 -1
  106. package/lib/typescript/plugins/CollapsibleFlashList.d.ts.map +1 -1
  107. package/lib/typescript/plugins/CollapsibleLegendList.d.ts.map +1 -1
  108. package/lib/typescript/types.d.ts +12 -12
  109. package/lib/typescript/types.d.ts.map +1 -1
  110. package/lib/typescript/utils/debounce.d.ts.map +1 -1
  111. package/lib/typescript/utils/useSharedValueRef.d.ts +2 -2
  112. package/lib/typescript/utils/useSharedValueRef.d.ts.map +1 -1
  113. package/lib/typescript/withCollapsibleContext.d.ts.map +1 -1
  114. package/package.json +54 -18
  115. package/src/components/CollapsibleContainer.tsx +13 -4
  116. package/src/components/CollapsibleView.tsx +31 -10
  117. package/src/components/header/AnimatedTopView.tsx +5 -2
  118. package/src/components/header/CollapsibleHeaderContainer.tsx +18 -13
  119. package/src/components/header/StickyView.tsx +9 -16
  120. package/src/components/scrollable/CollapsibleFlatList.tsx +27 -46
  121. package/src/components/scrollable/CollapsibleSectionList.tsx +21 -41
  122. package/src/components/scrollable/useAnimatedScroll.ts +36 -22
  123. package/src/hooks/useCollapsibleHeaderContext.ts +2 -2
  124. package/src/index.tsx +0 -2
  125. package/src/plugins/CollapsibleFlashList.tsx +9 -9
  126. package/src/plugins/CollapsibleLegendList.tsx +8 -2
  127. package/src/types.ts +12 -12
  128. package/src/utils/useSharedValueRef.ts +37 -6
  129. package/src/withCollapsibleContext.tsx +7 -4
@@ -1,18 +1,15 @@
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); }
2
- /* eslint-disable react-hooks/exhaustive-deps */
1
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
3
2
  import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
4
- import { View, StyleSheet, FlatList } from 'react-native';
5
- import Animated, { runOnJS, useAnimatedReaction } from 'react-native-reanimated';
3
+ import { StyleSheet } from 'react-native';
4
+ import Animated, { runOnJS, useAnimatedReaction, useAnimatedStyle } from 'react-native-reanimated';
6
5
  import useAnimatedScroll from './useAnimatedScroll';
7
6
  import useInternalCollapsibleContext from '../../hooks/useInternalCollapsibleContext';
8
7
  import AnimatedTopView from '../header/AnimatedTopView';
9
8
  import useCollapsibleContext from '../../hooks/useCollapsibleContext';
10
- const AnimatedFlatList = Animated.createAnimatedComponent(FlatList);
11
- export default function CollapsibleFlatList(_ref) {
12
- let {
13
- headerSnappable = true,
14
- ...props
15
- } = _ref;
9
+ export default function CollapsibleFlatList({
10
+ headerSnappable = true,
11
+ ...props
12
+ }) {
16
13
  const {
17
14
  headerHeight
18
15
  } = useCollapsibleContext();
@@ -22,25 +19,24 @@ export default function CollapsibleFlatList(_ref) {
22
19
  fixedHeaderHeight
23
20
  } = useInternalCollapsibleContext();
24
21
  const mounted = useRef(true);
25
- const contentHeight = useRef(0);
26
- const [internalContentMinHeight, setInternalContentMinHeight] = useState(contentMinHeight.value);
27
22
  const [internalProgressViewOffset, setInternalProgressViewOffset] = useState(0);
28
23
  useEffect(() => {
29
24
  return () => {
30
25
  mounted.current = false;
31
26
  };
32
27
  }, []);
33
- const scrollTo = useCallback(function (yValue) {
28
+ const scrollTo = useCallback((yValue, animated = true) => {
34
29
  var _scrollViewRef$curren, _scrollViewRef$curren2;
35
- let animated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
36
- (_scrollViewRef$curren = scrollViewRef.current) === null || _scrollViewRef$curren === void 0 || (_scrollViewRef$curren2 = _scrollViewRef$curren.scrollToOffset) === null || _scrollViewRef$curren2 === void 0 ? void 0 : _scrollViewRef$curren2.call(_scrollViewRef$curren, {
30
+ (_scrollViewRef$curren = scrollViewRef.current) === null || _scrollViewRef$curren === void 0 || (_scrollViewRef$curren2 = _scrollViewRef$curren.scrollToOffset) === null || _scrollViewRef$curren2 === void 0 || _scrollViewRef$curren2.call(_scrollViewRef$curren, {
37
31
  offset: yValue,
38
32
  animated
39
33
  });
34
+ // eslint-disable-next-line react-hooks/exhaustive-deps
40
35
  }, []);
41
36
  const scrollToIndex = useCallback(params => {
42
37
  var _scrollViewRef$curren3, _scrollViewRef$curren4;
43
- (_scrollViewRef$curren3 = scrollViewRef.current) === null || _scrollViewRef$curren3 === void 0 || (_scrollViewRef$curren4 = _scrollViewRef$curren3.scrollToIndex) === null || _scrollViewRef$curren4 === void 0 ? void 0 : _scrollViewRef$curren4.call(_scrollViewRef$curren3, params);
38
+ (_scrollViewRef$curren3 = scrollViewRef.current) === null || _scrollViewRef$curren3 === void 0 || (_scrollViewRef$curren4 = _scrollViewRef$curren3.scrollToIndex) === null || _scrollViewRef$curren4 === void 0 || _scrollViewRef$curren4.call(_scrollViewRef$curren3, params);
39
+ // eslint-disable-next-line react-hooks/exhaustive-deps
44
40
  }, []);
45
41
  const scrollToLocation = useCallback(() => {
46
42
  console.warn('CollapsibleFlatList does not support scrollToLocation');
@@ -53,25 +49,11 @@ export default function CollapsibleFlatList(_ref) {
53
49
  scrollToIndex,
54
50
  scrollToLocation
55
51
  });
56
- const handleInternalContentHeight = useCallback(value => {
57
- if (mounted.current) {
58
- setInternalContentMinHeight(value);
59
- }
60
- }, []);
61
52
  const handleInternalProgressViewOffset = useCallback(value => {
62
53
  if (mounted.current) {
63
54
  setInternalProgressViewOffset(value);
64
55
  }
65
56
  }, []);
66
- useAnimatedReaction(() => {
67
- return contentMinHeight.value;
68
- }, (result, previous) => {
69
- if (result !== previous) {
70
- if (contentHeight.current < result && internalContentMinHeight !== result) {
71
- runOnJS(handleInternalContentHeight)(result);
72
- }
73
- }
74
- });
75
57
  useAnimatedReaction(() => {
76
58
  return fixedHeaderHeight.value;
77
59
  }, (result, previous) => {
@@ -79,19 +61,24 @@ export default function CollapsibleFlatList(_ref) {
79
61
  runOnJS(handleInternalProgressViewOffset)(result);
80
62
  }
81
63
  });
82
- const contentContainerStyle = useMemo(() => [styles.contentContainer, {
83
- minHeight: internalContentMinHeight
84
- }, props.contentContainerStyle], [props.contentContainerStyle, internalContentMinHeight]);
85
- const handleContentSizeChange = useCallback((_, height) => {
86
- contentHeight.current = height;
87
- }, []);
64
+
65
+ // Animate minHeight on the UI thread instead of bouncing through React state.
66
+ // Skip applying minHeight when the value is 0 to avoid forcing a 0-height
67
+ // layout on the first frame before the container has been measured.
68
+ const listHeaderStyle = useAnimatedStyle(() => ({
69
+ minHeight: contentMinHeight.value > 0 ? contentMinHeight.value : undefined
70
+ }), []);
71
+ const contentContainerStyle = useMemo(() => [styles.contentContainer, props.contentContainerStyle], [props.contentContainerStyle]);
88
72
  const handleScrollToIndexFailed = useCallback(() => {}, []);
73
+ const ListHeaderComponent = props.ListHeaderComponent;
89
74
  function renderListHeader() {
90
- return /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(AnimatedTopView, {
75
+ return /*#__PURE__*/React.createElement(Animated.View, {
76
+ style: listHeaderStyle
77
+ }, /*#__PURE__*/React.createElement(AnimatedTopView, {
91
78
  height: headerHeight
92
- }), props.ListHeaderComponent);
79
+ }), ListHeaderComponent && (/*#__PURE__*/React.isValidElement(ListHeaderComponent) ? ListHeaderComponent : /*#__PURE__*/React.createElement(ListHeaderComponent)));
93
80
  }
94
- return /*#__PURE__*/React.createElement(AnimatedFlatList, _extends({
81
+ return /*#__PURE__*/React.createElement(Animated.FlatList, _extends({
95
82
  ref: scrollViewRef,
96
83
  keyboardDismissMode: "on-drag",
97
84
  keyboardShouldPersistTaps: "handled",
@@ -101,8 +88,7 @@ export default function CollapsibleFlatList(_ref) {
101
88
  style: [StyleSheet.absoluteFill, props.style],
102
89
  contentContainerStyle: contentContainerStyle,
103
90
  onScroll: scrollHandler,
104
- ListHeaderComponent: renderListHeader(),
105
- onContentSizeChange: handleContentSizeChange
91
+ ListHeaderComponent: renderListHeader()
106
92
  //@ts-ignore
107
93
  ,
108
94
  simultaneousHandlers: [],
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","View","StyleSheet","FlatList","Animated","runOnJS","useAnimatedReaction","useAnimatedScroll","useInternalCollapsibleContext","AnimatedTopView","useCollapsibleContext","AnimatedFlatList","createAnimatedComponent","CollapsibleFlatList","_ref","headerSnappable","props","headerHeight","contentMinHeight","scrollViewRef","fixedHeaderHeight","mounted","contentHeight","internalContentMinHeight","setInternalContentMinHeight","value","internalProgressViewOffset","setInternalProgressViewOffset","current","scrollTo","yValue","_scrollViewRef$curren","_scrollViewRef$curren2","animated","arguments","length","undefined","scrollToOffset","call","offset","scrollToIndex","params","_scrollViewRef$curren3","_scrollViewRef$curren4","scrollToLocation","console","warn","scrollHandler","handleInternalContentHeight","handleInternalProgressViewOffset","result","previous","contentContainerStyle","styles","contentContainer","minHeight","handleContentSizeChange","_","height","handleScrollToIndexFailed","renderListHeader","createElement","ListHeaderComponent","_extends","ref","keyboardDismissMode","keyboardShouldPersistTaps","scrollEventThrottle","onScrollToIndexFailed","style","absoluteFill","onScroll","onContentSizeChange","simultaneousHandlers","progressViewOffset","create","flexGrow","topView","position","top","left","right"],"sourceRoot":"../../../../src","sources":["components/scrollable/CollapsibleFlatList.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","StyleSheet","Animated","runOnJS","useAnimatedReaction","useAnimatedStyle","useAnimatedScroll","useInternalCollapsibleContext","AnimatedTopView","useCollapsibleContext","CollapsibleFlatList","headerSnappable","props","headerHeight","contentMinHeight","scrollViewRef","fixedHeaderHeight","mounted","internalProgressViewOffset","setInternalProgressViewOffset","current","scrollTo","yValue","animated","_scrollViewRef$curren","_scrollViewRef$curren2","scrollToOffset","call","offset","scrollToIndex","params","_scrollViewRef$curren3","_scrollViewRef$curren4","scrollToLocation","console","warn","scrollHandler","handleInternalProgressViewOffset","value","result","previous","listHeaderStyle","minHeight","undefined","contentContainerStyle","styles","contentContainer","handleScrollToIndexFailed","ListHeaderComponent","renderListHeader","createElement","View","style","height","isValidElement","FlatList","_extends","ref","keyboardDismissMode","keyboardShouldPersistTaps","scrollEventThrottle","onScrollToIndexFailed","absoluteFill","onScroll","simultaneousHandlers","progressViewOffset","create","flexGrow","topView","position","top","left","right"],"sourceRoot":"../../../../src","sources":["components/scrollable/CollapsibleFlatList.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
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); }
1
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
2
  /* eslint-disable react-hooks/exhaustive-deps */
3
3
  import AnimatedTopView from '../header/AnimatedTopView';
4
4
  import useAnimatedScroll from './useAnimatedScroll';
@@ -7,14 +7,13 @@ import { RefreshControl, StyleSheet } from 'react-native';
7
7
  import Animated, { runOnJS, useAnimatedReaction, useAnimatedStyle } from 'react-native-reanimated';
8
8
  import useCollapsibleContext from '../../hooks/useCollapsibleContext';
9
9
  import useInternalCollapsibleContext from '../../hooks/useInternalCollapsibleContext';
10
- export default function CollapsibleScrollView(_ref) {
11
- let {
12
- headerSnappable = true,
13
- children,
14
- refreshing = false,
15
- onRefresh,
16
- ...props
17
- } = _ref;
10
+ export default function CollapsibleScrollView({
11
+ headerSnappable = true,
12
+ children,
13
+ refreshing = false,
14
+ onRefresh,
15
+ ...props
16
+ }) {
18
17
  const {
19
18
  contentMinHeight,
20
19
  scrollViewRef,
@@ -30,10 +29,9 @@ export default function CollapsibleScrollView(_ref) {
30
29
  mounted.current = false;
31
30
  };
32
31
  }, []);
33
- const scrollTo = useCallback(function (yValue) {
32
+ const scrollTo = useCallback((yValue, animated = true) => {
34
33
  var _scrollViewRef$curren, _scrollViewRef$curren2;
35
- let animated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
36
- (_scrollViewRef$curren = scrollViewRef.current) === null || _scrollViewRef$curren === void 0 || (_scrollViewRef$curren2 = _scrollViewRef$curren.scrollTo) === null || _scrollViewRef$curren2 === void 0 ? void 0 : _scrollViewRef$curren2.call(_scrollViewRef$curren, {
34
+ (_scrollViewRef$curren = scrollViewRef.current) === null || _scrollViewRef$curren === void 0 || (_scrollViewRef$curren2 = _scrollViewRef$curren.scrollTo) === null || _scrollViewRef$curren2 === void 0 || _scrollViewRef$curren2.call(_scrollViewRef$curren, {
37
35
  y: yValue,
38
36
  animated
39
37
  });
@@ -1 +1 @@
1
- {"version":3,"names":["AnimatedTopView","useAnimatedScroll","React","useCallback","useEffect","useMemo","useRef","useState","RefreshControl","StyleSheet","Animated","runOnJS","useAnimatedReaction","useAnimatedStyle","useCollapsibleContext","useInternalCollapsibleContext","CollapsibleScrollView","_ref","headerSnappable","children","refreshing","onRefresh","props","contentMinHeight","scrollViewRef","fixedHeaderHeight","headerHeight","internalProgressViewOffset","setInternalProgressViewOffset","mounted","current","scrollTo","yValue","_scrollViewRef$curren","_scrollViewRef$curren2","animated","arguments","length","undefined","call","y","scrollToIndex","console","warn","scrollToLocation","scrollHandler","animatedStyle","minHeight","value","handleInternalProgressViewOffset","result","previous","contentContainerStyle","styles","contentContainer","createElement","ScrollView","_extends","ref","refreshControl","progressViewOffset","style","absoluteFill","onScroll","keyboardDismissMode","keyboardShouldPersistTaps","scrollEventThrottle","View","height","create","flexGrow"],"sourceRoot":"../../../../src","sources":["components/scrollable/CollapsibleScrollView.tsx"],"mappings":";AAAA;AACA,OAAOA,eAAe,MAAM,2BAA2B;AACvD,OAAOC,iBAAiB,MAAM,qBAAqB;AACnD,OAAOC,KAAK,IAEVC,WAAW,EACXC,SAAS,EACTC,OAAO,EACPC,MAAM,EACNC,QAAQ,QACH,OAAO;AACd,SAASC,cAAc,EAAmBC,UAAU,QAAQ,cAAc;AAC1E,OAAOC,QAAQ,IACbC,OAAO,EACPC,mBAAmB,EACnBC,gBAAgB,QACX,yBAAyB;AAEhC,OAAOC,qBAAqB,MAAM,mCAAmC;AACrE,OAAOC,6BAA6B,MAAM,2CAA2C;AASrF,eAAe,SAASC,qBAAqBA,CAAAC,IAAA,EAMnC;EAAA,IANoC;IAC5CC,eAAe,GAAG,IAAI;IACtBC,QAAQ;IACRC,UAAU,GAAG,KAAK;IAClBC,SAAS;IACT,GAAGC;EACE,CAAC,GAAAL,IAAA;EACN,MAAM;IAAEM,gBAAgB;IAAEC,aAAa;IAAEC;EAAkB,CAAC,GAC1DV,6BAA6B,CAAC,CAAC;EACjC,MAAM;IAAEW;EAAa,CAAC,GAAGZ,qBAAqB,CAAC,CAAC;EAChD,MAAM,CAACa,0BAA0B,EAAEC,6BAA6B,CAAC,GAC/DrB,QAAQ,CAAC,CAAC,CAAC;EACb,MAAMsB,OAAO,GAAGvB,MAAM,CAAC,IAAI,CAAC;EAE5BF,SAAS,CAAC,MAAM;IACd,OAAO,MAAM;MACXyB,OAAO,CAACC,OAAO,GAAG,KAAK;IACzB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,QAAQ,GAAG5B,WAAW,CAAC,UAAC6B,MAAc,EAAsB;IAAA,IAAAC,qBAAA,EAAAC,sBAAA;IAAA,IAApBC,QAAQ,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI;IAC3D,CAAAH,qBAAA,GAAAT,aAAa,CAACM,OAAO,cAAAG,qBAAA,gBAAAC,sBAAA,GAArBD,qBAAA,CAAuBF,QAAQ,cAAAG,sBAAA,uBAA/BA,sBAAA,CAAAK,IAAA,CAAAN,qBAAA,EAAkC;MAAEO,CAAC,EAAER,MAAM;MAAEG;IAAS,CAAC,CAAC;EAC5D,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMM,aAAa,GAAGtC,WAAW,CAAC,MAAM;IACtCuC,OAAO,CAACC,IAAI,CAAC,qDAAqD,CAAC;EACrE,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,gBAAgB,GAAGzC,WAAW,CAAC,MAAM;IACzCuC,OAAO,CAACC,IAAI,CAAC,uDAAuD,CAAC;EACvE,CAAC,EAAE,EAAE,CAAC;EAEN,MAAM;IAAEE;EAAc,CAAC,GAAG5C,iBAAiB,CAAC;IAC1CiB,eAAe;IACfa,QAAQ;IACRU,aAAa;IACbG;EACF,CAAC,CAAC;EAEF,MAAME,aAAa,GAAGjC,gBAAgB,CAAC,MAAM;IAC3C,OAAO;MACLkC,SAAS,EAAExB,gBAAgB,CAACyB;IAC9B,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,gCAAgC,GAAG9C,WAAW,CAAE6C,KAAa,IAAK;IACtE,IAAInB,OAAO,CAACC,OAAO,EAAE;MACnBF,6BAA6B,CAACoB,KAAK,CAAC;IACtC;EACF,CAAC,EAAE,EAAE,CAAC;EAENpC,mBAAmB,CACjB,MAAM;IACJ,OAAOa,iBAAiB,CAACuB,KAAK;EAChC,CAAC,EACD,CAACE,MAAM,EAAEC,QAAQ,KAAK;IACpB,IAAID,MAAM,KAAKC,QAAQ,EAAE;MACvBxC,OAAO,CAACsC,gCAAgC,CAAC,CAACC,MAAM,CAAC;IACnD;EACF,CACF,CAAC;EAED,MAAME,qBAAqB,GAAG/C,OAAO,CACnC,MAAM,CAACgD,MAAM,CAACC,gBAAgB,EAAEhC,KAAK,CAAC8B,qBAAqB,CAAC,EAC5D,CAAC9B,KAAK,CAAC8B,qBAAqB,CAC9B,CAAC;EAED,oBACElD,KAAA,CAAAqD,aAAA,CAAC7C,QAAQ,CAAC8C,UAAU,EAAAC,QAAA;IAClBC,GAAG,EAAElC,aAAc;IACnBmC,cAAc,EACZtC,SAAS,gBACPnB,KAAA,CAAAqD,aAAA,CAAC/C,cAAc;MACboD,kBAAkB,EAAEjC,0BAA2B;MAC/CP,UAAU,EAAEA,UAAW;MACvBC,SAAS,EAAEA;IAAU,CACtB,CAAC,GACAiB;EACL,GACGhB,KAAK;IACTuC,KAAK,EAAE,CAACpD,UAAU,CAACqD,YAAY,EAAExC,KAAK,CAACuC,KAAK,CAAE;IAC9CT,qBAAqB,EAAEA,qBAAsB;IAC7CW,QAAQ,EAAElB,aAAc;IACxBmB,mBAAmB,EAAC,SAAS;IAC7BC,yBAAyB,EAAC,SAAS;IACnCC,mBAAmB,EAAE;EAAE,iBAEvBhE,KAAA,CAAAqD,aAAA,CAAC7C,QAAQ,CAACyD,IAAI;IAACN,KAAK,EAAEf;EAAc,gBAClC5C,KAAA,CAAAqD,aAAA,CAACvD,eAAe;IAACoE,MAAM,EAAE1C;EAAa,CAAE,CAAC,EACxCP,QACY,CACI,CAAC;AAE1B;AAEA,MAAMkC,MAAM,GAAG5C,UAAU,CAAC4D,MAAM,CAAC;EAC/Bf,gBAAgB,EAAE;IAChBgB,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC"}
1
+ {"version":3,"names":["AnimatedTopView","useAnimatedScroll","React","useCallback","useEffect","useMemo","useRef","useState","RefreshControl","StyleSheet","Animated","runOnJS","useAnimatedReaction","useAnimatedStyle","useCollapsibleContext","useInternalCollapsibleContext","CollapsibleScrollView","headerSnappable","children","refreshing","onRefresh","props","contentMinHeight","scrollViewRef","fixedHeaderHeight","headerHeight","internalProgressViewOffset","setInternalProgressViewOffset","mounted","current","scrollTo","yValue","animated","_scrollViewRef$curren","_scrollViewRef$curren2","call","y","scrollToIndex","console","warn","scrollToLocation","scrollHandler","animatedStyle","minHeight","value","handleInternalProgressViewOffset","result","previous","contentContainerStyle","styles","contentContainer","createElement","ScrollView","_extends","ref","refreshControl","progressViewOffset","undefined","style","absoluteFill","onScroll","keyboardDismissMode","keyboardShouldPersistTaps","scrollEventThrottle","View","height","create","flexGrow"],"sourceRoot":"../../../../src","sources":["components/scrollable/CollapsibleScrollView.tsx"],"mappings":";AAAA;AACA,OAAOA,eAAe,MAAM,2BAA2B;AACvD,OAAOC,iBAAiB,MAAM,qBAAqB;AACnD,OAAOC,KAAK,IAEVC,WAAW,EACXC,SAAS,EACTC,OAAO,EACPC,MAAM,EACNC,QAAQ,QACH,OAAO;AACd,SAASC,cAAc,EAAmBC,UAAU,QAAQ,cAAc;AAC1E,OAAOC,QAAQ,IACbC,OAAO,EACPC,mBAAmB,EACnBC,gBAAgB,QACX,yBAAyB;AAEhC,OAAOC,qBAAqB,MAAM,mCAAmC;AACrE,OAAOC,6BAA6B,MAAM,2CAA2C;AASrF,eAAe,SAASC,qBAAqBA,CAAC;EAC5CC,eAAe,GAAG,IAAI;EACtBC,QAAQ;EACRC,UAAU,GAAG,KAAK;EAClBC,SAAS;EACT,GAAGC;AACE,CAAC,EAAE;EACR,MAAM;IAAEC,gBAAgB;IAAEC,aAAa;IAAEC;EAAkB,CAAC,GAC1DT,6BAA6B,CAAC,CAAC;EACjC,MAAM;IAAEU;EAAa,CAAC,GAAGX,qBAAqB,CAAC,CAAC;EAChD,MAAM,CAACY,0BAA0B,EAAEC,6BAA6B,CAAC,GAC/DpB,QAAQ,CAAC,CAAC,CAAC;EACb,MAAMqB,OAAO,GAAGtB,MAAM,CAAC,IAAI,CAAC;EAE5BF,SAAS,CAAC,MAAM;IACd,OAAO,MAAM;MACXwB,OAAO,CAACC,OAAO,GAAG,KAAK;IACzB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,QAAQ,GAAG3B,WAAW,CAAC,CAAC4B,MAAc,EAAEC,QAAQ,GAAG,IAAI,KAAK;IAAA,IAAAC,qBAAA,EAAAC,sBAAA;IAChE,CAAAD,qBAAA,GAAAV,aAAa,CAACM,OAAO,cAAAI,qBAAA,gBAAAC,sBAAA,GAArBD,qBAAA,CAAuBH,QAAQ,cAAAI,sBAAA,eAA/BA,sBAAA,CAAAC,IAAA,CAAAF,qBAAA,EAAkC;MAAEG,CAAC,EAAEL,MAAM;MAAEC;IAAS,CAAC,CAAC;EAC5D,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMK,aAAa,GAAGlC,WAAW,CAAC,MAAM;IACtCmC,OAAO,CAACC,IAAI,CAAC,qDAAqD,CAAC;EACrE,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,gBAAgB,GAAGrC,WAAW,CAAC,MAAM;IACzCmC,OAAO,CAACC,IAAI,CAAC,uDAAuD,CAAC;EACvE,CAAC,EAAE,EAAE,CAAC;EAEN,MAAM;IAAEE;EAAc,CAAC,GAAGxC,iBAAiB,CAAC;IAC1CgB,eAAe;IACfa,QAAQ;IACRO,aAAa;IACbG;EACF,CAAC,CAAC;EAEF,MAAME,aAAa,GAAG7B,gBAAgB,CAAC,MAAM;IAC3C,OAAO;MACL8B,SAAS,EAAErB,gBAAgB,CAACsB;IAC9B,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,gCAAgC,GAAG1C,WAAW,CAAEyC,KAAa,IAAK;IACtE,IAAIhB,OAAO,CAACC,OAAO,EAAE;MACnBF,6BAA6B,CAACiB,KAAK,CAAC;IACtC;EACF,CAAC,EAAE,EAAE,CAAC;EAENhC,mBAAmB,CACjB,MAAM;IACJ,OAAOY,iBAAiB,CAACoB,KAAK;EAChC,CAAC,EACD,CAACE,MAAM,EAAEC,QAAQ,KAAK;IACpB,IAAID,MAAM,KAAKC,QAAQ,EAAE;MACvBpC,OAAO,CAACkC,gCAAgC,CAAC,CAACC,MAAM,CAAC;IACnD;EACF,CACF,CAAC;EAED,MAAME,qBAAqB,GAAG3C,OAAO,CACnC,MAAM,CAAC4C,MAAM,CAACC,gBAAgB,EAAE7B,KAAK,CAAC2B,qBAAqB,CAAC,EAC5D,CAAC3B,KAAK,CAAC2B,qBAAqB,CAC9B,CAAC;EAED,oBACE9C,KAAA,CAAAiD,aAAA,CAACzC,QAAQ,CAAC0C,UAAU,EAAAC,QAAA;IAClBC,GAAG,EAAE/B,aAAc;IACnBgC,cAAc,EACZnC,SAAS,gBACPlB,KAAA,CAAAiD,aAAA,CAAC3C,cAAc;MACbgD,kBAAkB,EAAE9B,0BAA2B;MAC/CP,UAAU,EAAEA,UAAW;MACvBC,SAAS,EAAEA;IAAU,CACtB,CAAC,GACAqC;EACL,GACGpC,KAAK;IACTqC,KAAK,EAAE,CAACjD,UAAU,CAACkD,YAAY,EAAEtC,KAAK,CAACqC,KAAK,CAAE;IAC9CV,qBAAqB,EAAEA,qBAAsB;IAC7CY,QAAQ,EAAEnB,aAAc;IACxBoB,mBAAmB,EAAC,SAAS;IAC7BC,yBAAyB,EAAC,SAAS;IACnCC,mBAAmB,EAAE;EAAE,iBAEvB7D,KAAA,CAAAiD,aAAA,CAACzC,QAAQ,CAACsD,IAAI;IAACN,KAAK,EAAEhB;EAAc,gBAClCxC,KAAA,CAAAiD,aAAA,CAACnD,eAAe;IAACiE,MAAM,EAAExC;EAAa,CAAE,CAAC,EACxCP,QACY,CACI,CAAC;AAE1B;AAEA,MAAM+B,MAAM,GAAGxC,UAAU,CAACyD,MAAM,CAAC;EAC/BhB,gBAAgB,EAAE;IAChBiB,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC","ignoreList":[]}
@@ -1,17 +1,16 @@
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); }
1
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
2
  import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
3
- import { View, StyleSheet, SectionList } from 'react-native';
4
- import Animated, { runOnJS, useAnimatedReaction } from 'react-native-reanimated';
3
+ import { StyleSheet, SectionList } from 'react-native';
4
+ import Animated, { runOnJS, useAnimatedReaction, useAnimatedStyle } from 'react-native-reanimated';
5
5
  import useAnimatedScroll from './useAnimatedScroll';
6
6
  import useInternalCollapsibleContext from '../../hooks/useInternalCollapsibleContext';
7
7
  import AnimatedTopView from '../header/AnimatedTopView';
8
8
  import useCollapsibleContext from '../../hooks/useCollapsibleContext';
9
9
  const AnimatedSectionList = Animated.createAnimatedComponent(SectionList);
10
- export default function CollapsibleSectionList(_ref) {
11
- let {
12
- headerSnappable = true,
13
- ...props
14
- } = _ref;
10
+ export default function CollapsibleSectionList({
11
+ headerSnappable = true,
12
+ ...props
13
+ }) {
15
14
  const {
16
15
  headerHeight
17
16
  } = useCollapsibleContext();
@@ -21,8 +20,6 @@ export default function CollapsibleSectionList(_ref) {
21
20
  fixedHeaderHeight
22
21
  } = useInternalCollapsibleContext();
23
22
  const mounted = useRef(true);
24
- const contentHeight = useRef(0);
25
- const [internalContentMinHeight, setInternalContentMinHeight] = useState(contentMinHeight.value);
26
23
  const [internalProgressViewOffset, setInternalProgressViewOffset] = useState(0);
27
24
  useEffect(() => {
28
25
  return () => {
@@ -37,7 +34,7 @@ export default function CollapsibleSectionList(_ref) {
37
34
  }, []);
38
35
  const scrollToLocation = useCallback(params => {
39
36
  var _scrollViewRef$curren, _scrollViewRef$curren2;
40
- (_scrollViewRef$curren = scrollViewRef.current) === null || _scrollViewRef$curren === void 0 || (_scrollViewRef$curren2 = _scrollViewRef$curren.scrollToLocation) === null || _scrollViewRef$curren2 === void 0 ? void 0 : _scrollViewRef$curren2.call(_scrollViewRef$curren, params);
37
+ (_scrollViewRef$curren = scrollViewRef.current) === null || _scrollViewRef$curren === void 0 || (_scrollViewRef$curren2 = _scrollViewRef$curren.scrollToLocation) === null || _scrollViewRef$curren2 === void 0 || _scrollViewRef$curren2.call(_scrollViewRef$curren, params);
41
38
  }, [scrollViewRef]);
42
39
  const {
43
40
  scrollHandler
@@ -47,25 +44,11 @@ export default function CollapsibleSectionList(_ref) {
47
44
  scrollToIndex,
48
45
  scrollToLocation
49
46
  });
50
- const handleInternalContentHeight = useCallback(value => {
51
- if (mounted.current) {
52
- setInternalContentMinHeight(value);
53
- }
54
- }, []);
55
47
  const handleInternalProgressViewOffset = useCallback(value => {
56
48
  if (mounted.current) {
57
49
  setInternalProgressViewOffset(value);
58
50
  }
59
51
  }, []);
60
- useAnimatedReaction(() => {
61
- return contentMinHeight.value;
62
- }, (result, previous) => {
63
- if (result !== previous) {
64
- if (contentHeight.current < result && internalContentMinHeight !== result) {
65
- runOnJS(handleInternalContentHeight)(result);
66
- }
67
- }
68
- });
69
52
  useAnimatedReaction(() => {
70
53
  return fixedHeaderHeight.value;
71
54
  }, (result, previous) => {
@@ -73,17 +56,22 @@ export default function CollapsibleSectionList(_ref) {
73
56
  runOnJS(handleInternalProgressViewOffset)(result);
74
57
  }
75
58
  });
76
- const contentContainerStyle = useMemo(() => [styles.contentContainer, {
77
- minHeight: internalContentMinHeight
78
- }, props.contentContainerStyle], [props.contentContainerStyle, internalContentMinHeight]);
79
- const handleContentSizeChange = useCallback((_, height) => {
80
- contentHeight.current = height;
81
- }, []);
59
+
60
+ // Animate minHeight on the UI thread instead of bouncing through React state.
61
+ // Skip applying minHeight when the value is 0 to avoid forcing a 0-height
62
+ // layout on the first frame before the container has been measured.
63
+ const listHeaderStyle = useAnimatedStyle(() => ({
64
+ minHeight: contentMinHeight.value > 0 ? contentMinHeight.value : undefined
65
+ }), []);
66
+ const contentContainerStyle = useMemo(() => [styles.contentContainer, props.contentContainerStyle], [props.contentContainerStyle]);
82
67
  const handleScrollToIndexFailed = useCallback(() => {}, []);
68
+ const ListHeaderComponent = props.ListHeaderComponent;
83
69
  function renderListHeader() {
84
- return /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(AnimatedTopView, {
70
+ return /*#__PURE__*/React.createElement(Animated.View, {
71
+ style: listHeaderStyle
72
+ }, /*#__PURE__*/React.createElement(AnimatedTopView, {
85
73
  height: headerHeight
86
- }), props.ListHeaderComponent);
74
+ }), ListHeaderComponent && (/*#__PURE__*/React.isValidElement(ListHeaderComponent) ? ListHeaderComponent : /*#__PURE__*/React.createElement(ListHeaderComponent)));
87
75
  }
88
76
  return /*#__PURE__*/React.createElement(AnimatedSectionList, _extends({
89
77
  ref: scrollViewRef,
@@ -95,8 +83,7 @@ export default function CollapsibleSectionList(_ref) {
95
83
  style: [StyleSheet.absoluteFill, props.style],
96
84
  contentContainerStyle: contentContainerStyle,
97
85
  onScroll: scrollHandler,
98
- ListHeaderComponent: renderListHeader(),
99
- onContentSizeChange: handleContentSizeChange
86
+ ListHeaderComponent: renderListHeader()
100
87
  //@ts-ignore
101
88
  ,
102
89
  simultaneousHandlers: [],
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","View","StyleSheet","SectionList","Animated","runOnJS","useAnimatedReaction","useAnimatedScroll","useInternalCollapsibleContext","AnimatedTopView","useCollapsibleContext","AnimatedSectionList","createAnimatedComponent","CollapsibleSectionList","_ref","headerSnappable","props","headerHeight","contentMinHeight","scrollViewRef","fixedHeaderHeight","mounted","contentHeight","internalContentMinHeight","setInternalContentMinHeight","value","internalProgressViewOffset","setInternalProgressViewOffset","current","scrollTo","console","warn","scrollToIndex","scrollToLocation","params","_scrollViewRef$curren","_scrollViewRef$curren2","call","scrollHandler","handleInternalContentHeight","handleInternalProgressViewOffset","result","previous","contentContainerStyle","styles","contentContainer","minHeight","handleContentSizeChange","_","height","handleScrollToIndexFailed","renderListHeader","createElement","ListHeaderComponent","_extends","ref","keyboardDismissMode","keyboardShouldPersistTaps","scrollEventThrottle","onScrollToIndexFailed","style","absoluteFill","onScroll","onContentSizeChange","simultaneousHandlers","progressViewOffset","create","flexGrow","topView","position","top","left","right"],"sourceRoot":"../../../../src","sources":["components/scrollable/CollapsibleSectionList.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","StyleSheet","SectionList","Animated","runOnJS","useAnimatedReaction","useAnimatedStyle","useAnimatedScroll","useInternalCollapsibleContext","AnimatedTopView","useCollapsibleContext","AnimatedSectionList","createAnimatedComponent","CollapsibleSectionList","headerSnappable","props","headerHeight","contentMinHeight","scrollViewRef","fixedHeaderHeight","mounted","internalProgressViewOffset","setInternalProgressViewOffset","current","scrollTo","console","warn","scrollToIndex","scrollToLocation","params","_scrollViewRef$curren","_scrollViewRef$curren2","call","scrollHandler","handleInternalProgressViewOffset","value","result","previous","listHeaderStyle","minHeight","undefined","contentContainerStyle","styles","contentContainer","handleScrollToIndexFailed","ListHeaderComponent","renderListHeader","createElement","View","style","height","isValidElement","_extends","ref","keyboardDismissMode","keyboardShouldPersistTaps","scrollEventThrottle","onScrollToIndexFailed","absoluteFill","onScroll","simultaneousHandlers","progressViewOffset","create","flexGrow","topView","position","top","left","right"],"sourceRoot":"../../../../src","sources":["components/scrollable/CollapsibleSectionList.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,4 @@
1
- /* eslint-disable react-hooks/exhaustive-deps */
2
- import { useCallback, useEffect } from 'react';
1
+ import { useCallback, useEffect, useRef } from 'react';
3
2
  import { Dimensions } from 'react-native';
4
3
  import { runOnJS, useAnimatedScrollHandler, useSharedValue } from 'react-native-reanimated';
5
4
  import useCollapsibleContext from '../../hooks/useCollapsibleContext';
@@ -7,13 +6,12 @@ import useInternalCollapsibleContext from '../../hooks/useInternalCollapsibleCon
7
6
  const {
8
7
  height: wHeight
9
8
  } = Dimensions.get('window');
10
- export default function useAnimatedScroll(_ref) {
11
- let {
12
- headerSnappable,
13
- scrollTo,
14
- scrollToIndex,
15
- scrollToLocation
16
- } = _ref;
9
+ export default function useAnimatedScroll({
10
+ headerSnappable,
11
+ scrollTo,
12
+ scrollToIndex,
13
+ scrollToLocation
14
+ }) {
17
15
  const scrollDirection = useSharedValue('unknown');
18
16
  const {
19
17
  scrollY
@@ -22,25 +20,48 @@ export default function useAnimatedScroll(_ref) {
22
20
  setCollapsibleHandlers,
23
21
  fixedHeaderHeight
24
22
  } = useInternalCollapsibleContext();
23
+
24
+ // Keep a ref to the latest handlers so we can publish stable function
25
+ // references to setCollapsibleHandlers() that always delegate to the most
26
+ // recent closures. This avoids re-running the publish effect on every
27
+ // scrollable re-render.
28
+ const handlersRef = useRef({
29
+ scrollTo,
30
+ scrollToIndex,
31
+ scrollToLocation
32
+ });
33
+ handlersRef.current = {
34
+ scrollTo,
35
+ scrollToIndex,
36
+ scrollToLocation
37
+ };
25
38
  useEffect(() => {
26
39
  if (scrollY.value > 0) {
27
- requestAnimationFrame(() => scrollTo(scrollY.value, false));
40
+ requestAnimationFrame(() => handlersRef.current.scrollTo(scrollY.value, false));
28
41
  }
42
+ // eslint-disable-next-line react-hooks/exhaustive-deps
43
+ }, []);
44
+ const collapse = useCallback((animated = true) => {
45
+ handlersRef.current.scrollTo(fixedHeaderHeight.value, animated);
46
+ }, [fixedHeaderHeight]);
47
+ const expand = useCallback(() => handlersRef.current.scrollTo(0), []);
48
+
49
+ // Stable trampoline for use inside worklets: runOnJS captures the function
50
+ // reference at worklet-build time, so we must pass a stable function that
51
+ // dereferences handlersRef.current at JS-thread call time.
52
+ const scrollToOnJS = useCallback(y => {
53
+ handlersRef.current.scrollTo(y);
29
54
  }, []);
30
- const collapse = useCallback(function () {
31
- let animated = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
32
- scrollTo(fixedHeaderHeight.value, animated);
33
- }, [scrollTo]);
34
- const expand = useCallback(() => scrollTo(0), [scrollTo]);
35
55
  useEffect(() => {
36
- setCollapsibleHandlers({
56
+ const handlers = {
37
57
  collapse,
38
58
  expand,
39
- scrollTo,
40
- scrollToIndex,
41
- scrollToLocation
42
- });
43
- }, [setCollapsibleHandlers, collapse, expand, scrollTo, scrollToIndex, scrollToLocation]);
59
+ scrollTo: (y, a) => handlersRef.current.scrollTo(y, a),
60
+ scrollToIndex: p => handlersRef.current.scrollToIndex(p),
61
+ scrollToLocation: p => handlersRef.current.scrollToLocation(p)
62
+ };
63
+ setCollapsibleHandlers(handlers);
64
+ }, [setCollapsibleHandlers, collapse, expand]);
44
65
  const scrollHandler = useAnimatedScrollHandler({
45
66
  onScroll: event => {
46
67
  const offset = event.contentOffset.y;
@@ -58,11 +79,11 @@ export default function useAnimatedScroll(_ref) {
58
79
  if (scrollDirection.value === 'up') {
59
80
  yValue = maxY;
60
81
  }
61
- runOnJS(scrollTo)(yValue);
82
+ runOnJS(scrollToOnJS)(yValue);
62
83
  }
63
84
  }
64
85
  }
65
- }, [scrollTo]);
86
+ }, [headerSnappable, fixedHeaderHeight, scrollY, scrollToOnJS]);
66
87
  return {
67
88
  scrollHandler,
68
89
  collapse,
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","Dimensions","runOnJS","useAnimatedScrollHandler","useSharedValue","useCollapsibleContext","useInternalCollapsibleContext","height","wHeight","get","useAnimatedScroll","_ref","headerSnappable","scrollTo","scrollToIndex","scrollToLocation","scrollDirection","scrollY","setCollapsibleHandlers","fixedHeaderHeight","value","requestAnimationFrame","collapse","animated","arguments","length","undefined","expand","scrollHandler","onScroll","event","offset","contentOffset","y","diff","onEndDrag","maxY","delta","Math","abs","yValue"],"sourceRoot":"../../../../src","sources":["components/scrollable/useAnimatedScroll.ts"],"mappings":"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"}
1
+ {"version":3,"names":["useCallback","useEffect","useRef","Dimensions","runOnJS","useAnimatedScrollHandler","useSharedValue","useCollapsibleContext","useInternalCollapsibleContext","height","wHeight","get","useAnimatedScroll","headerSnappable","scrollTo","scrollToIndex","scrollToLocation","scrollDirection","scrollY","setCollapsibleHandlers","fixedHeaderHeight","handlersRef","current","value","requestAnimationFrame","collapse","animated","expand","scrollToOnJS","y","handlers","a","p","scrollHandler","onScroll","event","offset","contentOffset","diff","onEndDrag","maxY","delta","Math","abs","yValue"],"sourceRoot":"../../../../src","sources":["components/scrollable/useAnimatedScroll.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useContext","CollapsibleContext","useCollapsibleContext","ctx","Error"],"sourceRoot":"../../../src","sources":["hooks/useCollapsibleContext.ts"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AAGjD;AACA,OAAO,MAAMC,kBAAkB,gBAAGF,aAAa,CAAyB,CAAC,CAAC,CAAC;AAE3E,eAAe,SAASG,qBAAqBA,CAAA,EAAG;EAC9C,MAAMC,GAAG,GAAGH,UAAU,CAACC,kBAAkB,CAAC;EAC1C,IAAI,CAACE,GAAG,EAAE;IACR,MAAM,IAAIC,KAAK,CAAC,yDAAyD,CAAC;EAC5E;EACA,OAAOD,GAAG;AACZ"}
1
+ {"version":3,"names":["createContext","useContext","CollapsibleContext","useCollapsibleContext","ctx","Error"],"sourceRoot":"../../../src","sources":["hooks/useCollapsibleContext.ts"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AAGjD;AACA,OAAO,MAAMC,kBAAkB,gBAAGF,aAAa,CAAyB,CAAC,CAAC,CAAC;AAE3E,eAAe,SAASG,qBAAqBA,CAAA,EAAG;EAC9C,MAAMC,GAAG,GAAGH,UAAU,CAACC,kBAAkB,CAAC;EAC1C,IAAI,CAACE,GAAG,EAAE;IACR,MAAM,IAAIC,KAAK,CAAC,yDAAyD,CAAC;EAC5E;EACA,OAAOD,GAAG;AACZ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useContext","CollapsibleHeaderConsumerContext","useCollapsibleHeaderConsumerContext","ctx","Error"],"sourceRoot":"../../../src","sources":["hooks/useCollapsibleHeaderConsumerContext.ts"],"mappings":"AAAA,SAASA,aAAa,EAAaC,UAAU,QAAQ,OAAO;AAW5D,OAAO,MAAMC,gCAAgC;AAAA;AAC3C;AACAF,aAAa,CAAuC,CAAC,CAAC,CAAC;AAEzD,eAAe,SAASG,mCAAmCA,CAAA,EAAG;EAC5D,MAAMC,GAAG,GAAGH,UAAU,CAACC,gCAAgC,CAAC;EACxD,IAAI,CAACE,GAAG,EAAE;IACR,MAAM,IAAIC,KAAK,CAAC,uDAAuD,CAAC;EAC1E;EACA,OAAOD,GAAG;AACZ"}
1
+ {"version":3,"names":["createContext","useContext","CollapsibleHeaderConsumerContext","useCollapsibleHeaderConsumerContext","ctx","Error"],"sourceRoot":"../../../src","sources":["hooks/useCollapsibleHeaderConsumerContext.ts"],"mappings":"AAAA,SAASA,aAAa,EAAaC,UAAU,QAAQ,OAAO;AAW5D,OAAO,MAAMC,gCAAgC;AAAA;AAC3C;AACAF,aAAa,CAAuC,CAAC,CAAC,CAAC;AAEzD,eAAe,SAASG,mCAAmCA,CAAA,EAAG;EAC5D,MAAMC,GAAG,GAAGH,UAAU,CAACC,gCAAgC,CAAC;EACxD,IAAI,CAACE,GAAG,EAAE;IACR,MAAM,IAAIC,KAAK,CAAC,uDAAuD,CAAC;EAC1E;EACA,OAAOD,GAAG;AACZ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useContext","CollapsibleHeaderContext","useCollapsibleHeaderContext","ctx","Error"],"sourceRoot":"../../../src","sources":["hooks/useCollapsibleHeaderContext.ts"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AASjD,OAAO,MAAMC,wBAAwB;AAAA;AACnC;AACAF,aAAa,CAA+B,CAAC,CAAC,CAAC;AAEjD,eAAe,SAASG,2BAA2BA,CAAA,EAAG;EACpD,MAAMC,GAAG,GAAGH,UAAU,CAACC,wBAAwB,CAAC;EAChD,IAAI,CAACE,GAAG,EAAE;IACR,MAAM,IAAIC,KAAK,CAAC,uDAAuD,CAAC;EAC1E;EACA,OAAOD,GAAG;AACZ"}
1
+ {"version":3,"names":["createContext","useContext","CollapsibleHeaderContext","useCollapsibleHeaderContext","ctx","Error"],"sourceRoot":"../../../src","sources":["hooks/useCollapsibleHeaderContext.ts"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AASjD,OAAO,MAAMC,wBAAwB;AAAA;AACnC;AACAF,aAAa,CAA+B,CAAC,CAAC,CAAC;AAEjD,eAAe,SAASG,2BAA2BA,CAAA,EAAG;EACpD,MAAMC,GAAG,GAAGH,UAAU,CAACC,wBAAwB,CAAC;EAChD,IAAI,CAACE,GAAG,EAAE;IACR,MAAM,IAAIC,KAAK,CAAC,uDAAuD,CAAC;EAC1E;EACA,OAAOD,GAAG;AACZ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useContext","InternalCollapsibleContext","useInternalCollapsibleContext","ctx","Error"],"sourceRoot":"../../../src","sources":["hooks/useInternalCollapsibleContext.ts"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AAGjD,OAAO,MAAMC,0BAA0B;AAAA;AACrC;AACAF,aAAa,CAAiC,CAAC;AAEjD,eAAe,SAASG,6BAA6BA,CAAA,EAAG;EACtD,MAAMC,GAAG,GAAGH,UAAU,CAACC,0BAA0B,CAAC;EAClD,IAAI,CAACE,GAAG,EAAE;IACR,MAAM,IAAIC,KAAK,CAAC,yDAAyD,CAAC;EAC5E;EACA,OAAOD,GAAG;AACZ"}
1
+ {"version":3,"names":["createContext","useContext","InternalCollapsibleContext","useInternalCollapsibleContext","ctx","Error"],"sourceRoot":"../../../src","sources":["hooks/useInternalCollapsibleContext.ts"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AAGjD,OAAO,MAAMC,0BAA0B;AAAA;AACrC;AACAF,aAAa,CAAiC,CAAC;AAEjD,eAAe,SAASG,6BAA6BA,CAAA,EAAG;EACtD,MAAMC,GAAG,GAAGH,UAAU,CAACC,0BAA0B,CAAC;EAClD,IAAI,CAACE,GAAG,EAAE;IACR,MAAM,IAAIC,KAAK,CAAC,yDAAyD,CAAC;EAC5E;EACA,OAAOD,GAAG;AACZ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useRef","Keyboard","useKeyboardShowEvent","callback","savedCallback","current","subscription","addListener","remove"],"sourceRoot":"../../../src","sources":["hooks/useKeyboardShowEvent.ts"],"mappings":"AAAA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACzC,SAASC,QAAQ,QAAQ,cAAc;AAEvC,eAAe,SAASC,oBAAoBA,CAACC,QAAoB,EAAE;EACjE,MAAMC,aAAa,GAAGJ,MAAM,CAACG,QAAQ,CAAC;EAEtCJ,SAAS,CAAC,MAAM;IACdK,aAAa,CAACC,OAAO,GAAGF,QAAQ;EAClC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEdJ,SAAS,CAAC,MAAM;IACd,MAAMO,YAAY,GAAGL,QAAQ,CAACM,WAAW,CAAC,iBAAiB,EAAE,MAAM;MACjE,IAAIH,aAAa,CAACC,OAAO,EAAE;QACzBD,aAAa,CAACC,OAAO,CAAC,CAAC;MACzB;IACF,CAAC,CAAC;IAEF,OAAO,MAAM;MACXC,YAAY,CAACE,MAAM,CAAC,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;AACR"}
1
+ {"version":3,"names":["useEffect","useRef","Keyboard","useKeyboardShowEvent","callback","savedCallback","current","subscription","addListener","remove"],"sourceRoot":"../../../src","sources":["hooks/useKeyboardShowEvent.ts"],"mappings":"AAAA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACzC,SAASC,QAAQ,QAAQ,cAAc;AAEvC,eAAe,SAASC,oBAAoBA,CAACC,QAAoB,EAAE;EACjE,MAAMC,aAAa,GAAGJ,MAAM,CAACG,QAAQ,CAAC;EAEtCJ,SAAS,CAAC,MAAM;IACdK,aAAa,CAACC,OAAO,GAAGF,QAAQ;EAClC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEdJ,SAAS,CAAC,MAAM;IACd,MAAMO,YAAY,GAAGL,QAAQ,CAACM,WAAW,CAAC,iBAAiB,EAAE,MAAM;MACjE,IAAIH,aAAa,CAACC,OAAO,EAAE;QACzBD,aAAa,CAACC,OAAO,CAAC,CAAC;MACzB;IACF,CAAC,CAAC;IAEF,OAAO,MAAM;MACXC,YAAY,CAACE,MAAM,CAAC,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;AACR","ignoreList":[]}
@@ -8,5 +8,4 @@ export { default as CollapsibleHeaderContainer } from './components/header/Colla
8
8
  export { default as StickyView } from './components/header/StickyView';
9
9
  export { default as CollapsibleView } from './components/CollapsibleView';
10
10
  export * from './components/CollapsibleView';
11
- export { default as CollapsibleFlashList } from './plugins/CollapsibleFlashList';
12
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["default","withCollapsibleContext","useCollapsibleContext","CollapsibleContainer","CollapsibleFlatList","CollapsibleScrollView","CollapsibleSectionList","CollapsibleHeaderContainer","StickyView","CollapsibleView","CollapsibleFlashList"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,SAASA,OAAO,IAAIC,sBAAsB,QAAQ,0BAA0B;AAC5E,SAASD,OAAO,IAAIE,qBAAqB,QAAQ,+BAA+B;AAEhF,SAASF,OAAO,IAAIG,oBAAoB,QAAQ,mCAAmC;AACnF,SAASH,OAAO,IAAII,mBAAmB,QAAQ,6CAA6C;AAC5F,SAASJ,OAAO,IAAIK,qBAAqB,QAAQ,+CAA+C;AAChG,SAASL,OAAO,IAAIM,sBAAsB,QAAQ,gDAAgD;AAClG,SAASN,OAAO,IAAIO,0BAA0B,QAAQ,gDAAgD;AACtG,SAASP,OAAO,IAAIQ,UAAU,QAAQ,gCAAgC;AACtE,SAASR,OAAO,IAAIS,eAAe,QAAQ,8BAA8B;AACzE,cAAc,8BAA8B;AAE5C,SAAST,OAAO,IAAIU,oBAAoB,QAAQ,gCAAgC"}
1
+ {"version":3,"names":["default","withCollapsibleContext","useCollapsibleContext","CollapsibleContainer","CollapsibleFlatList","CollapsibleScrollView","CollapsibleSectionList","CollapsibleHeaderContainer","StickyView","CollapsibleView"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,SAASA,OAAO,IAAIC,sBAAsB,QAAQ,0BAA0B;AAC5E,SAASD,OAAO,IAAIE,qBAAqB,QAAQ,+BAA+B;AAEhF,SAASF,OAAO,IAAIG,oBAAoB,QAAQ,mCAAmC;AACnF,SAASH,OAAO,IAAII,mBAAmB,QAAQ,6CAA6C;AAC5F,SAASJ,OAAO,IAAIK,qBAAqB,QAAQ,+CAA+C;AAChG,SAASL,OAAO,IAAIM,sBAAsB,QAAQ,gDAAgD;AAClG,SAASN,OAAO,IAAIO,0BAA0B,QAAQ,gDAAgD;AACtG,SAASP,OAAO,IAAIQ,UAAU,QAAQ,gCAAgC;AACtE,SAASR,OAAO,IAAIS,eAAe,QAAQ,8BAA8B;AACzE,cAAc,8BAA8B","ignoreList":[]}