@r0b0t3d/react-native-collapsible 1.5.0-alpha.0 → 1.5.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/components/header/AnimatedTopView.js +1 -1
- package/lib/commonjs/components/header/AnimatedTopView.js.map +1 -1
- package/lib/commonjs/components/scrollable/CollapsibleFlashList.js +16 -30
- package/lib/commonjs/components/scrollable/CollapsibleFlashList.js.map +1 -1
- package/lib/commonjs/withCollapsibleContext.js +3 -0
- package/lib/commonjs/withCollapsibleContext.js.map +1 -1
- package/lib/module/components/header/AnimatedTopView.js +1 -1
- package/lib/module/components/header/AnimatedTopView.js.map +1 -1
- package/lib/module/components/scrollable/CollapsibleFlashList.js +18 -32
- package/lib/module/components/scrollable/CollapsibleFlashList.js.map +1 -1
- package/lib/module/withCollapsibleContext.js +3 -0
- package/lib/module/withCollapsibleContext.js.map +1 -1
- package/lib/typescript/components/scrollable/CollapsibleFlashList.d.ts +2 -2
- package/lib/typescript/components/scrollable/CollapsibleFlashList.d.ts.map +1 -1
- package/lib/typescript/withCollapsibleContext.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/header/AnimatedTopView.tsx +1 -1
- package/src/components/scrollable/CollapsibleFlashList.tsx +34 -65
- package/src/withCollapsibleContext.tsx +3 -0
|
@@ -14,7 +14,7 @@ function AnimatedTopView(_ref) {
|
|
|
14
14
|
height
|
|
15
15
|
} = _ref;
|
|
16
16
|
const contentStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => ({
|
|
17
|
-
|
|
17
|
+
height: height.value
|
|
18
18
|
}), []);
|
|
19
19
|
return /*#__PURE__*/_react.default.createElement(_reactNativeReanimated.default.View, {
|
|
20
20
|
style: contentStyle
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNativeReanimated","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","AnimatedTopView","_ref","height","contentStyle","useAnimatedStyle","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNativeReanimated","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","AnimatedTopView","_ref","height","contentStyle","useAnimatedStyle","value","createElement","View","style"],"sourceRoot":"../../../../src","sources":["components/header/AnimatedTopView.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAC,uBAAA,CAAAF,OAAA;AAAqE,SAAAG,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,SAAAF,wBAAAM,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,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAAA,SAAAf,uBAAAS,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAMtD,SAASiB,eAAeA,CAAAC,IAAA,EAAoB;EAAA,IAAnB;IAAEC;EAAc,CAAC,GAAAD,IAAA;EACvD,MAAME,YAAY,GAAG,IAAAC,uCAAgB,EACnC,OAAO;IACLF,MAAM,EAAEA,MAAM,CAACG;EACjB,CAAC,CAAC,EACF,EACF,CAAC;EAED,oBAAOhC,MAAA,CAAAY,OAAA,CAAAqB,aAAA,CAAC9B,sBAAA,CAAAS,OAAQ,CAACsB,IAAI;IAACC,KAAK,EAAEL;EAAa,CAAE,CAAC;AAC/C"}
|
|
@@ -26,13 +26,11 @@ function CollapsibleFlatList(_ref) {
|
|
|
26
26
|
headerHeight
|
|
27
27
|
} = (0, _useCollapsibleContext.default)();
|
|
28
28
|
const {
|
|
29
|
-
contentMinHeight,
|
|
30
29
|
scrollViewRef,
|
|
31
|
-
fixedHeaderHeight
|
|
30
|
+
fixedHeaderHeight,
|
|
31
|
+
contentMinHeight
|
|
32
32
|
} = (0, _useInternalCollapsibleContext.default)();
|
|
33
33
|
const mounted = (0, _react.useRef)(true);
|
|
34
|
-
const contentHeight = (0, _react.useRef)(0);
|
|
35
|
-
const [internalContentMinHeight, setInternalContentMinHeight] = (0, _react.useState)(contentMinHeight.value);
|
|
36
34
|
const [internalProgressViewOffset, setInternalProgressViewOffset] = (0, _react.useState)(0);
|
|
37
35
|
(0, _react.useEffect)(() => {
|
|
38
36
|
return () => {
|
|
@@ -62,24 +60,13 @@ function CollapsibleFlatList(_ref) {
|
|
|
62
60
|
scrollToIndex,
|
|
63
61
|
scrollToLocation
|
|
64
62
|
});
|
|
65
|
-
const handleInternalContentHeight = (0, _react.useCallback)(value => {
|
|
66
|
-
if (mounted.current) {
|
|
67
|
-
setInternalContentMinHeight(value);
|
|
68
|
-
}
|
|
69
|
-
}, []);
|
|
70
63
|
const handleInternalProgressViewOffset = (0, _react.useCallback)(value => {
|
|
71
64
|
if (mounted.current) {
|
|
72
65
|
setInternalProgressViewOffset(value);
|
|
73
66
|
}
|
|
74
67
|
}, []);
|
|
75
|
-
(0, _reactNativeReanimated.
|
|
76
|
-
return contentMinHeight.value;
|
|
77
|
-
}, (result, previous) => {
|
|
78
|
-
if (result !== previous) {
|
|
79
|
-
if (contentHeight.current < result && internalContentMinHeight !== result) {
|
|
80
|
-
(0, _reactNativeReanimated.runOnJS)(handleInternalContentHeight)(result);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
68
|
+
const additionalBottomHeight = (0, _reactNativeReanimated.useDerivedValue)(() => {
|
|
69
|
+
return contentMinHeight.value - fixedHeaderHeight.value;
|
|
83
70
|
});
|
|
84
71
|
(0, _reactNativeReanimated.useAnimatedReaction)(() => {
|
|
85
72
|
return fixedHeaderHeight.value;
|
|
@@ -88,35 +75,34 @@ function CollapsibleFlatList(_ref) {
|
|
|
88
75
|
(0, _reactNativeReanimated.runOnJS)(handleInternalProgressViewOffset)(result);
|
|
89
76
|
}
|
|
90
77
|
});
|
|
91
|
-
const contentContainerStyle = (0, _react.useMemo)(() => [styles.contentContainer, {
|
|
92
|
-
minHeight: internalContentMinHeight
|
|
93
|
-
}, props.contentContainerStyle], [props.contentContainerStyle, internalContentMinHeight]);
|
|
94
|
-
const handleContentSizeChange = (0, _react.useCallback)((_, height) => {
|
|
95
|
-
contentHeight.current = height;
|
|
96
|
-
}, []);
|
|
97
78
|
const handleScrollToIndexFailed = (0, _react.useCallback)(() => {}, []);
|
|
98
79
|
function renderListHeader() {
|
|
99
80
|
return /*#__PURE__*/_react.default.createElement(_reactNative.View, null, /*#__PURE__*/_react.default.createElement(_AnimatedTopView.default, {
|
|
100
81
|
height: headerHeight
|
|
101
82
|
}), props.ListHeaderComponent);
|
|
102
83
|
}
|
|
103
|
-
|
|
84
|
+
function renderListFooter() {
|
|
85
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, null, props.ListFooterComponent, /*#__PURE__*/_react.default.createElement(_AnimatedTopView.default, {
|
|
86
|
+
height: additionalBottomHeight
|
|
87
|
+
}));
|
|
88
|
+
}
|
|
89
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
90
|
+
style: [styles.container, props.style]
|
|
91
|
+
}, /*#__PURE__*/_react.default.createElement(AnimatedFlashList, _extends({
|
|
104
92
|
ref: scrollViewRef,
|
|
105
93
|
keyboardDismissMode: "on-drag",
|
|
106
94
|
keyboardShouldPersistTaps: "handled",
|
|
107
95
|
scrollEventThrottle: 1,
|
|
108
96
|
onScrollToIndexFailed: handleScrollToIndexFailed
|
|
109
97
|
}, props, {
|
|
110
|
-
style: [styles.container, props.style]
|
|
111
|
-
//@ts-ignore
|
|
112
|
-
,
|
|
113
|
-
contentContainerStyle: contentContainerStyle,
|
|
114
98
|
onScroll: scrollHandler,
|
|
115
99
|
ListHeaderComponent: renderListHeader(),
|
|
116
|
-
|
|
100
|
+
ListFooterComponent: renderListFooter()
|
|
101
|
+
//@ts-ignore
|
|
102
|
+
,
|
|
117
103
|
simultaneousHandlers: [],
|
|
118
104
|
progressViewOffset: internalProgressViewOffset
|
|
119
|
-
}));
|
|
105
|
+
})));
|
|
120
106
|
}
|
|
121
107
|
const styles = _reactNative.StyleSheet.create({
|
|
122
108
|
container: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_flashList","_useAnimatedScroll","_interopRequireDefault","_useInternalCollapsibleContext","_AnimatedTopView","_useCollapsibleContext","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","AnimatedFlashList","Animated","createAnimatedComponent","FlashList","CollapsibleFlatList","_ref","headerSnappable","props","headerHeight","useCollapsibleContext","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_flashList","_useAnimatedScroll","_interopRequireDefault","_useInternalCollapsibleContext","_AnimatedTopView","_useCollapsibleContext","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","AnimatedFlashList","Animated","createAnimatedComponent","FlashList","CollapsibleFlatList","_ref","headerSnappable","props","headerHeight","useCollapsibleContext","scrollViewRef","fixedHeaderHeight","contentMinHeight","useInternalCollapsibleContext","mounted","useRef","internalProgressViewOffset","setInternalProgressViewOffset","useState","useEffect","current","scrollTo","useCallback","yValue","_scrollViewRef$curren","animated","undefined","scrollToOffset","offset","scrollToIndex","params","_scrollViewRef$curren2","scrollToLocation","console","warn","scrollHandler","useAnimatedScroll","handleInternalProgressViewOffset","value","additionalBottomHeight","useDerivedValue","useAnimatedReaction","result","previous","runOnJS","handleScrollToIndexFailed","renderListHeader","createElement","View","height","ListHeaderComponent","renderListFooter","ListFooterComponent","style","styles","container","ref","keyboardDismissMode","keyboardShouldPersistTaps","scrollEventThrottle","onScrollToIndexFailed","onScroll","simultaneousHandlers","progressViewOffset","StyleSheet","create","absoluteFillObject","contentContainer","flexGrow","topView","position","top","left","right"],"sourceRoot":"../../../../src","sources":["components/scrollable/CollapsibleFlashList.tsx"],"mappings":"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"}
|
|
@@ -62,6 +62,9 @@ function withCollapsibleContext(Component) {
|
|
|
62
62
|
containerHeight.value = height;
|
|
63
63
|
}, []);
|
|
64
64
|
const handleScrollToView = (0, _react.useCallback)((ref, animated) => {
|
|
65
|
+
if (!ref.current) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
65
68
|
ref.current.measureLayout(containerRef.current, (_left, top, _width, _height) => {
|
|
66
69
|
var _collapsibleHandlers$;
|
|
67
70
|
const headerContainers = Object.keys(headerContainerLayouts.current).filter(k => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_useCollapsibleContext","_useInternalCollapsibleContext","_reactNativeReanimated","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","withCollapsibleContext","Component","props","collapsibleHandlers","useRef","headerHeight","useSharedValue","scrollY","fixedHeaderHeight","containerHeight","scrollViewRef","containerRef","headerContainerLayouts","headerViewPositions","setCollapsibleHandlers","useCallback","handlers","current","headerCollapsed","useDerivedValue","maxY","value","contentMinHeight","handleHeaderContainerLayout","layout","stickyHeight","undefined","headerContainers","keys","filter","k","sortedHeaders","sort","a","b","_headerContainerLayou","_headerContainerLayou2","y","values","aStickyHeight","index","length","_headerContainerLayou3","headerKey","sHeight","top","handleContainerHeight","height","handleScrollToView","ref","animated","measureLayout","_left","_width","_height","_collapsibleHandlers$","stickyHeightAbove","reduce","acc","scrollTo","context","useMemo","collapse","_collapsibleHandlers$2","expand","_collapsibleHandlers$3","offset","animate","_collapsibleHandlers$4","scrollToIndex","params","_collapsibleHandlers$5","scrollToLocation","_collapsibleHandlers$6","scrollToView","internalContext","createElement","CollapsibleContext","Provider","InternalCollapsibleContext"],"sourceRoot":"../../src","sources":["withCollapsibleContext.tsx"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_useCollapsibleContext","_useInternalCollapsibleContext","_reactNativeReanimated","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","withCollapsibleContext","Component","props","collapsibleHandlers","useRef","headerHeight","useSharedValue","scrollY","fixedHeaderHeight","containerHeight","scrollViewRef","containerRef","headerContainerLayouts","headerViewPositions","setCollapsibleHandlers","useCallback","handlers","current","headerCollapsed","useDerivedValue","maxY","value","contentMinHeight","handleHeaderContainerLayout","layout","stickyHeight","undefined","headerContainers","keys","filter","k","sortedHeaders","sort","a","b","_headerContainerLayou","_headerContainerLayou2","y","values","aStickyHeight","index","length","_headerContainerLayou3","headerKey","sHeight","top","handleContainerHeight","height","handleScrollToView","ref","animated","measureLayout","_left","_width","_height","_collapsibleHandlers$","stickyHeightAbove","reduce","acc","scrollTo","context","useMemo","collapse","_collapsibleHandlers$2","expand","_collapsibleHandlers$3","offset","animate","_collapsibleHandlers$4","scrollToIndex","params","_collapsibleHandlers$5","scrollToLocation","_collapsibleHandlers$6","scrollToView","internalContext","createElement","CollapsibleContext","Provider","InternalCollapsibleContext"],"sourceRoot":"../../src","sources":["withCollapsibleContext.tsx"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Animated","useAnimatedStyle","AnimatedTopView","_ref","height","contentStyle","
|
|
1
|
+
{"version":3,"names":["React","Animated","useAnimatedStyle","AnimatedTopView","_ref","height","contentStyle","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;IACLG,MAAM,EAAEA,MAAM,CAACE;EACjB,CAAC,CAAC,EACF,EACF,CAAC;EAED,oBAAOP,KAAA,CAAAQ,aAAA,CAACP,QAAQ,CAACQ,IAAI;IAACC,KAAK,EAAEJ;EAAa,CAAE,CAAC;AAC/C"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
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
2
|
/* eslint-disable react-hooks/exhaustive-deps */
|
|
3
|
-
import React, { useCallback, useEffect,
|
|
3
|
+
import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|
4
4
|
import { View, StyleSheet } from 'react-native';
|
|
5
|
-
import Animated, { runOnJS, useAnimatedReaction } from 'react-native-reanimated';
|
|
5
|
+
import Animated, { runOnJS, useAnimatedReaction, useDerivedValue } from 'react-native-reanimated';
|
|
6
6
|
import { FlashList } from '@shopify/flash-list';
|
|
7
7
|
import useAnimatedScroll from './useAnimatedScroll';
|
|
8
8
|
import useInternalCollapsibleContext from '../../hooks/useInternalCollapsibleContext';
|
|
@@ -18,13 +18,11 @@ export default function CollapsibleFlatList(_ref) {
|
|
|
18
18
|
headerHeight
|
|
19
19
|
} = useCollapsibleContext();
|
|
20
20
|
const {
|
|
21
|
-
contentMinHeight,
|
|
22
21
|
scrollViewRef,
|
|
23
|
-
fixedHeaderHeight
|
|
22
|
+
fixedHeaderHeight,
|
|
23
|
+
contentMinHeight
|
|
24
24
|
} = useInternalCollapsibleContext();
|
|
25
25
|
const mounted = useRef(true);
|
|
26
|
-
const contentHeight = useRef(0);
|
|
27
|
-
const [internalContentMinHeight, setInternalContentMinHeight] = useState(contentMinHeight.value);
|
|
28
26
|
const [internalProgressViewOffset, setInternalProgressViewOffset] = useState(0);
|
|
29
27
|
useEffect(() => {
|
|
30
28
|
return () => {
|
|
@@ -54,24 +52,13 @@ export default function CollapsibleFlatList(_ref) {
|
|
|
54
52
|
scrollToIndex,
|
|
55
53
|
scrollToLocation
|
|
56
54
|
});
|
|
57
|
-
const handleInternalContentHeight = useCallback(value => {
|
|
58
|
-
if (mounted.current) {
|
|
59
|
-
setInternalContentMinHeight(value);
|
|
60
|
-
}
|
|
61
|
-
}, []);
|
|
62
55
|
const handleInternalProgressViewOffset = useCallback(value => {
|
|
63
56
|
if (mounted.current) {
|
|
64
57
|
setInternalProgressViewOffset(value);
|
|
65
58
|
}
|
|
66
59
|
}, []);
|
|
67
|
-
|
|
68
|
-
return contentMinHeight.value;
|
|
69
|
-
}, (result, previous) => {
|
|
70
|
-
if (result !== previous) {
|
|
71
|
-
if (contentHeight.current < result && internalContentMinHeight !== result) {
|
|
72
|
-
runOnJS(handleInternalContentHeight)(result);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
60
|
+
const additionalBottomHeight = useDerivedValue(() => {
|
|
61
|
+
return contentMinHeight.value - fixedHeaderHeight.value;
|
|
75
62
|
});
|
|
76
63
|
useAnimatedReaction(() => {
|
|
77
64
|
return fixedHeaderHeight.value;
|
|
@@ -80,35 +67,34 @@ export default function CollapsibleFlatList(_ref) {
|
|
|
80
67
|
runOnJS(handleInternalProgressViewOffset)(result);
|
|
81
68
|
}
|
|
82
69
|
});
|
|
83
|
-
const contentContainerStyle = useMemo(() => [styles.contentContainer, {
|
|
84
|
-
minHeight: internalContentMinHeight
|
|
85
|
-
}, props.contentContainerStyle], [props.contentContainerStyle, internalContentMinHeight]);
|
|
86
|
-
const handleContentSizeChange = useCallback((_, height) => {
|
|
87
|
-
contentHeight.current = height;
|
|
88
|
-
}, []);
|
|
89
70
|
const handleScrollToIndexFailed = useCallback(() => {}, []);
|
|
90
71
|
function renderListHeader() {
|
|
91
72
|
return /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(AnimatedTopView, {
|
|
92
73
|
height: headerHeight
|
|
93
74
|
}), props.ListHeaderComponent);
|
|
94
75
|
}
|
|
95
|
-
|
|
76
|
+
function renderListFooter() {
|
|
77
|
+
return /*#__PURE__*/React.createElement(View, null, props.ListFooterComponent, /*#__PURE__*/React.createElement(AnimatedTopView, {
|
|
78
|
+
height: additionalBottomHeight
|
|
79
|
+
}));
|
|
80
|
+
}
|
|
81
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
82
|
+
style: [styles.container, props.style]
|
|
83
|
+
}, /*#__PURE__*/React.createElement(AnimatedFlashList, _extends({
|
|
96
84
|
ref: scrollViewRef,
|
|
97
85
|
keyboardDismissMode: "on-drag",
|
|
98
86
|
keyboardShouldPersistTaps: "handled",
|
|
99
87
|
scrollEventThrottle: 1,
|
|
100
88
|
onScrollToIndexFailed: handleScrollToIndexFailed
|
|
101
89
|
}, props, {
|
|
102
|
-
style: [styles.container, props.style]
|
|
103
|
-
//@ts-ignore
|
|
104
|
-
,
|
|
105
|
-
contentContainerStyle: contentContainerStyle,
|
|
106
90
|
onScroll: scrollHandler,
|
|
107
91
|
ListHeaderComponent: renderListHeader(),
|
|
108
|
-
|
|
92
|
+
ListFooterComponent: renderListFooter()
|
|
93
|
+
//@ts-ignore
|
|
94
|
+
,
|
|
109
95
|
simultaneousHandlers: [],
|
|
110
96
|
progressViewOffset: internalProgressViewOffset
|
|
111
|
-
}));
|
|
97
|
+
})));
|
|
112
98
|
}
|
|
113
99
|
const styles = StyleSheet.create({
|
|
114
100
|
container: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useEffect","
|
|
1
|
+
{"version":3,"names":["React","useCallback","useEffect","useRef","useState","View","StyleSheet","Animated","runOnJS","useAnimatedReaction","useDerivedValue","FlashList","useAnimatedScroll","useInternalCollapsibleContext","AnimatedTopView","useCollapsibleContext","AnimatedFlashList","createAnimatedComponent","CollapsibleFlatList","_ref","headerSnappable","props","headerHeight","scrollViewRef","fixedHeaderHeight","contentMinHeight","mounted","internalProgressViewOffset","setInternalProgressViewOffset","current","scrollTo","yValue","_scrollViewRef$curren","animated","arguments","length","undefined","scrollToOffset","offset","scrollToIndex","params","_scrollViewRef$curren2","scrollToLocation","console","warn","scrollHandler","handleInternalProgressViewOffset","value","additionalBottomHeight","result","previous","handleScrollToIndexFailed","renderListHeader","createElement","height","ListHeaderComponent","renderListFooter","ListFooterComponent","style","styles","container","_extends","ref","keyboardDismissMode","keyboardShouldPersistTaps","scrollEventThrottle","onScrollToIndexFailed","onScroll","simultaneousHandlers","progressViewOffset","create","absoluteFillObject","contentContainer","flexGrow","topView","position","top","left","right"],"sourceRoot":"../../../../src","sources":["components/scrollable/CollapsibleFlashList.tsx"],"mappings":"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"}
|
|
@@ -53,6 +53,9 @@ export default function withCollapsibleContext(Component) {
|
|
|
53
53
|
containerHeight.value = height;
|
|
54
54
|
}, []);
|
|
55
55
|
const handleScrollToView = useCallback((ref, animated) => {
|
|
56
|
+
if (!ref.current) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
56
59
|
ref.current.measureLayout(containerRef.current, (_left, top, _width, _height) => {
|
|
57
60
|
var _collapsibleHandlers$;
|
|
58
61
|
const headerContainers = Object.keys(headerContainerLayouts.current).filter(k => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useMemo","useRef","CollapsibleContext","InternalCollapsibleContext","useDerivedValue","useSharedValue","withCollapsibleContext","Component","props","collapsibleHandlers","headerHeight","scrollY","fixedHeaderHeight","containerHeight","scrollViewRef","containerRef","headerContainerLayouts","headerViewPositions","setCollapsibleHandlers","handlers","current","headerCollapsed","maxY","value","contentMinHeight","handleHeaderContainerLayout","key","layout","stickyHeight","undefined","headerContainers","Object","keys","filter","k","sortedHeaders","sort","a","b","_headerContainerLayou","_headerContainerLayou2","y","values","aStickyHeight","index","length","_headerContainerLayou3","headerKey","sHeight","top","handleContainerHeight","height","handleScrollToView","ref","animated","measureLayout","_left","_width","_height","_collapsibleHandlers$","stickyHeightAbove","reduce","acc","scrollTo","context","collapse","_collapsibleHandlers$2","expand","_collapsibleHandlers$3","offset","animate","_collapsibleHandlers$4","scrollToIndex","params","_collapsibleHandlers$5","scrollToLocation","_collapsibleHandlers$6","scrollToView","internalContext","createElement","Provider"],"sourceRoot":"../../src","sources":["withCollapsibleContext.tsx"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["React","useCallback","useMemo","useRef","CollapsibleContext","InternalCollapsibleContext","useDerivedValue","useSharedValue","withCollapsibleContext","Component","props","collapsibleHandlers","headerHeight","scrollY","fixedHeaderHeight","containerHeight","scrollViewRef","containerRef","headerContainerLayouts","headerViewPositions","setCollapsibleHandlers","handlers","current","headerCollapsed","maxY","value","contentMinHeight","handleHeaderContainerLayout","key","layout","stickyHeight","undefined","headerContainers","Object","keys","filter","k","sortedHeaders","sort","a","b","_headerContainerLayou","_headerContainerLayou2","y","values","aStickyHeight","index","length","_headerContainerLayou3","headerKey","sHeight","top","handleContainerHeight","height","handleScrollToView","ref","animated","measureLayout","_left","_width","_height","_collapsibleHandlers$","stickyHeightAbove","reduce","acc","scrollTo","context","collapse","_collapsibleHandlers$2","expand","_collapsibleHandlers$3","offset","animate","_collapsibleHandlers$4","scrollToIndex","params","_collapsibleHandlers$5","scrollToLocation","_collapsibleHandlers$6","scrollToView","internalContext","createElement","Provider"],"sourceRoot":"../../src","sources":["withCollapsibleContext.tsx"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { FlashListProps } from '@shopify/flash-list';
|
|
3
3
|
import type { CollapsibleProps } from '../../types';
|
|
4
|
-
type Props<Data> = Omit<
|
|
4
|
+
type Props<Data> = Omit<FlashListProps<Data>, 'scrollEnabled'> & CollapsibleProps;
|
|
5
5
|
export default function CollapsibleFlatList<Data>({ headerSnappable, ...props }: Props<Data>): React.JSX.Element;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=CollapsibleFlashList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CollapsibleFlashList.d.ts","sourceRoot":"","sources":["../../../../src/components/scrollable/CollapsibleFlashList.tsx"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"CollapsibleFlashList.d.ts","sourceRoot":"","sources":["../../../../src/components/scrollable/CollapsibleFlashList.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAOxE,OAAO,EAAa,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGhE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAMpD,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC,GAC5D,gBAAgB,CAAC;AAEnB,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,IAAI,EAAE,EAChD,eAAsB,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,IAAI,CAAC,qBA+Fb"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withCollapsibleContext.d.ts","sourceRoot":"","sources":["../../src/withCollapsibleContext.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAgC,EAAE,EAAE,MAAM,OAAO,CAAC;AAOhE,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,WACjD,CAAC,
|
|
1
|
+
{"version":3,"file":"withCollapsibleContext.d.ts","sourceRoot":"","sources":["../../src/withCollapsibleContext.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAgC,EAAE,EAAE,MAAM,OAAO,CAAC;AAOhE,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,WACjD,CAAC,uBAoJjB"}
|
package/package.json
CHANGED
|
@@ -1,17 +1,12 @@
|
|
|
1
1
|
/* eslint-disable react-hooks/exhaustive-deps */
|
|
2
|
-
import React, {
|
|
3
|
-
|
|
4
|
-
useEffect,
|
|
5
|
-
useMemo,
|
|
6
|
-
useRef,
|
|
7
|
-
useState,
|
|
8
|
-
} from 'react';
|
|
9
|
-
import { FlatListProps, View, StyleSheet } from 'react-native';
|
|
2
|
+
import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|
3
|
+
import { View, StyleSheet } from 'react-native';
|
|
10
4
|
import Animated, {
|
|
11
5
|
runOnJS,
|
|
12
6
|
useAnimatedReaction,
|
|
7
|
+
useDerivedValue,
|
|
13
8
|
} from 'react-native-reanimated';
|
|
14
|
-
import { FlashList } from '@shopify/flash-list';
|
|
9
|
+
import { FlashList, FlashListProps } from '@shopify/flash-list';
|
|
15
10
|
import useAnimatedScroll from './useAnimatedScroll';
|
|
16
11
|
import useInternalCollapsibleContext from '../../hooks/useInternalCollapsibleContext';
|
|
17
12
|
import type { CollapsibleProps } from '../../types';
|
|
@@ -20,7 +15,7 @@ import useCollapsibleContext from '../../hooks/useCollapsibleContext';
|
|
|
20
15
|
|
|
21
16
|
const AnimatedFlashList = Animated.createAnimatedComponent(FlashList);
|
|
22
17
|
|
|
23
|
-
type Props<Data> = Omit<
|
|
18
|
+
type Props<Data> = Omit<FlashListProps<Data>, 'scrollEnabled'> &
|
|
24
19
|
CollapsibleProps;
|
|
25
20
|
|
|
26
21
|
export default function CollapsibleFlatList<Data>({
|
|
@@ -28,13 +23,9 @@ export default function CollapsibleFlatList<Data>({
|
|
|
28
23
|
...props
|
|
29
24
|
}: Props<Data>) {
|
|
30
25
|
const { headerHeight } = useCollapsibleContext();
|
|
31
|
-
const {
|
|
26
|
+
const { scrollViewRef, fixedHeaderHeight, contentMinHeight } =
|
|
32
27
|
useInternalCollapsibleContext();
|
|
33
28
|
const mounted = useRef(true);
|
|
34
|
-
const contentHeight = useRef(0);
|
|
35
|
-
const [internalContentMinHeight, setInternalContentMinHeight] = useState(
|
|
36
|
-
contentMinHeight.value
|
|
37
|
-
);
|
|
38
29
|
const [internalProgressViewOffset, setInternalProgressViewOffset] =
|
|
39
30
|
useState(0);
|
|
40
31
|
|
|
@@ -66,33 +57,15 @@ export default function CollapsibleFlatList<Data>({
|
|
|
66
57
|
scrollToLocation,
|
|
67
58
|
});
|
|
68
59
|
|
|
69
|
-
const handleInternalContentHeight = useCallback((value: number) => {
|
|
70
|
-
if (mounted.current) {
|
|
71
|
-
setInternalContentMinHeight(value);
|
|
72
|
-
}
|
|
73
|
-
}, []);
|
|
74
|
-
|
|
75
60
|
const handleInternalProgressViewOffset = useCallback((value: number) => {
|
|
76
61
|
if (mounted.current) {
|
|
77
62
|
setInternalProgressViewOffset(value);
|
|
78
63
|
}
|
|
79
64
|
}, []);
|
|
80
65
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
},
|
|
85
|
-
(result, previous) => {
|
|
86
|
-
if (result !== previous) {
|
|
87
|
-
if (
|
|
88
|
-
contentHeight.current < result &&
|
|
89
|
-
internalContentMinHeight !== result
|
|
90
|
-
) {
|
|
91
|
-
runOnJS(handleInternalContentHeight)(result);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
);
|
|
66
|
+
const additionalBottomHeight = useDerivedValue(() => {
|
|
67
|
+
return contentMinHeight.value - fixedHeaderHeight.value;
|
|
68
|
+
});
|
|
96
69
|
|
|
97
70
|
useAnimatedReaction(
|
|
98
71
|
() => {
|
|
@@ -105,19 +78,6 @@ export default function CollapsibleFlatList<Data>({
|
|
|
105
78
|
}
|
|
106
79
|
);
|
|
107
80
|
|
|
108
|
-
const contentContainerStyle = useMemo(
|
|
109
|
-
() => [
|
|
110
|
-
styles.contentContainer,
|
|
111
|
-
{ minHeight: internalContentMinHeight },
|
|
112
|
-
props.contentContainerStyle,
|
|
113
|
-
],
|
|
114
|
-
[props.contentContainerStyle, internalContentMinHeight]
|
|
115
|
-
);
|
|
116
|
-
|
|
117
|
-
const handleContentSizeChange = useCallback((_, height) => {
|
|
118
|
-
contentHeight.current = height;
|
|
119
|
-
}, []);
|
|
120
|
-
|
|
121
81
|
const handleScrollToIndexFailed = useCallback(() => {}, []);
|
|
122
82
|
|
|
123
83
|
function renderListHeader() {
|
|
@@ -129,23 +89,32 @@ export default function CollapsibleFlatList<Data>({
|
|
|
129
89
|
);
|
|
130
90
|
}
|
|
131
91
|
|
|
92
|
+
function renderListFooter() {
|
|
93
|
+
return (
|
|
94
|
+
<View>
|
|
95
|
+
{props.ListFooterComponent}
|
|
96
|
+
<AnimatedTopView height={additionalBottomHeight} />
|
|
97
|
+
</View>
|
|
98
|
+
);
|
|
99
|
+
}
|
|
100
|
+
|
|
132
101
|
return (
|
|
133
|
-
<
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
102
|
+
<View style={[styles.container, props.style]}>
|
|
103
|
+
<AnimatedFlashList
|
|
104
|
+
ref={scrollViewRef}
|
|
105
|
+
keyboardDismissMode="on-drag"
|
|
106
|
+
keyboardShouldPersistTaps="handled"
|
|
107
|
+
scrollEventThrottle={1}
|
|
108
|
+
onScrollToIndexFailed={handleScrollToIndexFailed}
|
|
109
|
+
{...props}
|
|
110
|
+
onScroll={scrollHandler}
|
|
111
|
+
ListHeaderComponent={renderListHeader()}
|
|
112
|
+
ListFooterComponent={renderListFooter()}
|
|
113
|
+
//@ts-ignore
|
|
114
|
+
simultaneousHandlers={[]}
|
|
115
|
+
progressViewOffset={internalProgressViewOffset}
|
|
116
|
+
/>
|
|
117
|
+
</View>
|
|
149
118
|
);
|
|
150
119
|
}
|
|
151
120
|
|
|
@@ -74,6 +74,9 @@ export default function withCollapsibleContext<T>(Component: FC<T>) {
|
|
|
74
74
|
|
|
75
75
|
const handleScrollToView = useCallback(
|
|
76
76
|
(ref: React.RefObject<any>, animated?: boolean) => {
|
|
77
|
+
if (!ref.current) {
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
77
80
|
ref.current.measureLayout(
|
|
78
81
|
containerRef.current,
|
|
79
82
|
(_left: number, top: number, _width: number, _height: number) => {
|