@r0b0t3d/react-native-collapsible 1.5.0-alpha.0 → 1.5.0-alpha.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.
@@ -26,13 +26,10 @@ function CollapsibleFlatList(_ref) {
26
26
  headerHeight
27
27
  } = (0, _useCollapsibleContext.default)();
28
28
  const {
29
- contentMinHeight,
30
29
  scrollViewRef,
31
30
  fixedHeaderHeight
32
31
  } = (0, _useInternalCollapsibleContext.default)();
33
32
  const mounted = (0, _react.useRef)(true);
34
- const contentHeight = (0, _react.useRef)(0);
35
- const [internalContentMinHeight, setInternalContentMinHeight] = (0, _react.useState)(contentMinHeight.value);
36
33
  const [internalProgressViewOffset, setInternalProgressViewOffset] = (0, _react.useState)(0);
37
34
  (0, _react.useEffect)(() => {
38
35
  return () => {
@@ -62,25 +59,11 @@ function CollapsibleFlatList(_ref) {
62
59
  scrollToIndex,
63
60
  scrollToLocation
64
61
  });
65
- const handleInternalContentHeight = (0, _react.useCallback)(value => {
66
- if (mounted.current) {
67
- setInternalContentMinHeight(value);
68
- }
69
- }, []);
70
62
  const handleInternalProgressViewOffset = (0, _react.useCallback)(value => {
71
63
  if (mounted.current) {
72
64
  setInternalProgressViewOffset(value);
73
65
  }
74
66
  }, []);
75
- (0, _reactNativeReanimated.useAnimatedReaction)(() => {
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
- }
83
- });
84
67
  (0, _reactNativeReanimated.useAnimatedReaction)(() => {
85
68
  return fixedHeaderHeight.value;
86
69
  }, (result, previous) => {
@@ -88,35 +71,28 @@ function CollapsibleFlatList(_ref) {
88
71
  (0, _reactNativeReanimated.runOnJS)(handleInternalProgressViewOffset)(result);
89
72
  }
90
73
  });
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
74
  const handleScrollToIndexFailed = (0, _react.useCallback)(() => {}, []);
98
75
  function renderListHeader() {
99
76
  return /*#__PURE__*/_react.default.createElement(_reactNative.View, null, /*#__PURE__*/_react.default.createElement(_AnimatedTopView.default, {
100
77
  height: headerHeight
101
78
  }), props.ListHeaderComponent);
102
79
  }
103
- return /*#__PURE__*/_react.default.createElement(AnimatedFlashList, _extends({
80
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
81
+ style: [styles.container, props.style]
82
+ }, /*#__PURE__*/_react.default.createElement(AnimatedFlashList, _extends({
104
83
  ref: scrollViewRef,
105
84
  keyboardDismissMode: "on-drag",
106
85
  keyboardShouldPersistTaps: "handled",
107
86
  scrollEventThrottle: 1,
108
87
  onScrollToIndexFailed: handleScrollToIndexFailed
109
88
  }, props, {
110
- style: [styles.container, props.style]
89
+ onScroll: scrollHandler,
90
+ ListHeaderComponent: renderListHeader()
111
91
  //@ts-ignore
112
92
  ,
113
- contentContainerStyle: contentContainerStyle,
114
- onScroll: scrollHandler,
115
- ListHeaderComponent: renderListHeader(),
116
- onContentSizeChange: handleContentSizeChange,
117
93
  simultaneousHandlers: [],
118
94
  progressViewOffset: internalProgressViewOffset
119
- }));
95
+ })));
120
96
  }
121
97
  const styles = _reactNative.StyleSheet.create({
122
98
  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","contentMinHeight","scrollViewRef","fixedHeaderHeight","useInternalCollapsibleContext","mounted","useRef","contentHeight","internalContentMinHeight","setInternalContentMinHeight","useState","value","internalProgressViewOffset","setInternalProgressViewOffset","useEffect","current","scrollTo","useCallback","yValue","_scrollViewRef$curren","animated","undefined","scrollToOffset","offset","scrollToIndex","params","_scrollViewRef$curren2","scrollToLocation","console","warn","scrollHandler","useAnimatedScroll","handleInternalContentHeight","handleInternalProgressViewOffset","useAnimatedReaction","result","previous","runOnJS","contentContainerStyle","useMemo","styles","contentContainer","minHeight","handleContentSizeChange","_","height","handleScrollToIndexFailed","renderListHeader","createElement","View","ListHeaderComponent","ref","keyboardDismissMode","keyboardShouldPersistTaps","scrollEventThrottle","onScrollToIndexFailed","style","container","onScroll","onContentSizeChange","simultaneousHandlers","progressViewOffset","StyleSheet","create","absoluteFillObject","flexGrow","topView","position","top","left","right"],"sourceRoot":"../../../../src","sources":["components/scrollable/CollapsibleFlashList.tsx"],"mappings":"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"}
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","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","useAnimatedReaction","result","previous","runOnJS","handleScrollToIndexFailed","renderListHeader","createElement","View","height","ListHeaderComponent","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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"}
@@ -1,6 +1,6 @@
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, useMemo, useRef, useState } from 'react';
3
+ import React, { useCallback, useEffect, useRef, useState } from 'react';
4
4
  import { View, StyleSheet } from 'react-native';
5
5
  import Animated, { runOnJS, useAnimatedReaction } from 'react-native-reanimated';
6
6
  import { FlashList } from '@shopify/flash-list';
@@ -18,13 +18,10 @@ export default function CollapsibleFlatList(_ref) {
18
18
  headerHeight
19
19
  } = useCollapsibleContext();
20
20
  const {
21
- contentMinHeight,
22
21
  scrollViewRef,
23
22
  fixedHeaderHeight
24
23
  } = useInternalCollapsibleContext();
25
24
  const mounted = useRef(true);
26
- const contentHeight = useRef(0);
27
- const [internalContentMinHeight, setInternalContentMinHeight] = useState(contentMinHeight.value);
28
25
  const [internalProgressViewOffset, setInternalProgressViewOffset] = useState(0);
29
26
  useEffect(() => {
30
27
  return () => {
@@ -54,25 +51,11 @@ export default function CollapsibleFlatList(_ref) {
54
51
  scrollToIndex,
55
52
  scrollToLocation
56
53
  });
57
- const handleInternalContentHeight = useCallback(value => {
58
- if (mounted.current) {
59
- setInternalContentMinHeight(value);
60
- }
61
- }, []);
62
54
  const handleInternalProgressViewOffset = useCallback(value => {
63
55
  if (mounted.current) {
64
56
  setInternalProgressViewOffset(value);
65
57
  }
66
58
  }, []);
67
- useAnimatedReaction(() => {
68
- return contentMinHeight.value;
69
- }, (result, previous) => {
70
- if (result !== previous) {
71
- if (contentHeight.current < result && internalContentMinHeight !== result) {
72
- runOnJS(handleInternalContentHeight)(result);
73
- }
74
- }
75
- });
76
59
  useAnimatedReaction(() => {
77
60
  return fixedHeaderHeight.value;
78
61
  }, (result, previous) => {
@@ -80,35 +63,28 @@ export default function CollapsibleFlatList(_ref) {
80
63
  runOnJS(handleInternalProgressViewOffset)(result);
81
64
  }
82
65
  });
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
66
  const handleScrollToIndexFailed = useCallback(() => {}, []);
90
67
  function renderListHeader() {
91
68
  return /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(AnimatedTopView, {
92
69
  height: headerHeight
93
70
  }), props.ListHeaderComponent);
94
71
  }
95
- return /*#__PURE__*/React.createElement(AnimatedFlashList, _extends({
72
+ return /*#__PURE__*/React.createElement(View, {
73
+ style: [styles.container, props.style]
74
+ }, /*#__PURE__*/React.createElement(AnimatedFlashList, _extends({
96
75
  ref: scrollViewRef,
97
76
  keyboardDismissMode: "on-drag",
98
77
  keyboardShouldPersistTaps: "handled",
99
78
  scrollEventThrottle: 1,
100
79
  onScrollToIndexFailed: handleScrollToIndexFailed
101
80
  }, props, {
102
- style: [styles.container, props.style]
81
+ onScroll: scrollHandler,
82
+ ListHeaderComponent: renderListHeader()
103
83
  //@ts-ignore
104
84
  ,
105
- contentContainerStyle: contentContainerStyle,
106
- onScroll: scrollHandler,
107
- ListHeaderComponent: renderListHeader(),
108
- onContentSizeChange: handleContentSizeChange,
109
85
  simultaneousHandlers: [],
110
86
  progressViewOffset: internalProgressViewOffset
111
- }));
87
+ })));
112
88
  }
113
89
  const styles = StyleSheet.create({
114
90
  container: {
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","View","StyleSheet","Animated","runOnJS","useAnimatedReaction","FlashList","useAnimatedScroll","useInternalCollapsibleContext","AnimatedTopView","useCollapsibleContext","AnimatedFlashList","createAnimatedComponent","CollapsibleFlatList","_ref","headerSnappable","props","headerHeight","contentMinHeight","scrollViewRef","fixedHeaderHeight","mounted","contentHeight","internalContentMinHeight","setInternalContentMinHeight","value","internalProgressViewOffset","setInternalProgressViewOffset","current","scrollTo","yValue","_scrollViewRef$curren","animated","arguments","length","undefined","scrollToOffset","offset","scrollToIndex","params","_scrollViewRef$curren2","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","container","onScroll","onContentSizeChange","simultaneousHandlers","progressViewOffset","create","absoluteFillObject","flexGrow","topView","position","top","left","right"],"sourceRoot":"../../../../src","sources":["components/scrollable/CollapsibleFlashList.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","useCallback","useEffect","useRef","useState","View","StyleSheet","Animated","runOnJS","useAnimatedReaction","FlashList","useAnimatedScroll","useInternalCollapsibleContext","AnimatedTopView","useCollapsibleContext","AnimatedFlashList","createAnimatedComponent","CollapsibleFlatList","_ref","headerSnappable","props","headerHeight","scrollViewRef","fixedHeaderHeight","mounted","internalProgressViewOffset","setInternalProgressViewOffset","current","scrollTo","yValue","_scrollViewRef$curren","animated","arguments","length","undefined","scrollToOffset","offset","scrollToIndex","params","_scrollViewRef$curren2","scrollToLocation","console","warn","scrollHandler","handleInternalProgressViewOffset","value","result","previous","handleScrollToIndexFailed","renderListHeader","createElement","height","ListHeaderComponent","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":";AAAA;AACA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AACvE,SAASC,IAAI,EAAEC,UAAU,QAAQ,cAAc;AAC/C,OAAOC,QAAQ,IACbC,OAAO,EACPC,mBAAmB,QACd,yBAAyB;AAChC,SAASC,SAAS,QAAwB,qBAAqB;AAC/D,OAAOC,iBAAiB,MAAM,qBAAqB;AACnD,OAAOC,6BAA6B,MAAM,2CAA2C;AAErF,OAAOC,eAAe,MAAM,2BAA2B;AACvD,OAAOC,qBAAqB,MAAM,mCAAmC;AAErE,MAAMC,iBAAiB,GAAGR,QAAQ,CAACS,uBAAuB,CAACN,SAAS,CAAC;AAKrE,eAAe,SAASO,mBAAmBA,CAAAC,IAAA,EAG3B;EAAA,IAHkC;IAChDC,eAAe,GAAG,IAAI;IACtB,GAAGC;EACQ,CAAC,GAAAF,IAAA;EACZ,MAAM;IAAEG;EAAa,CAAC,GAAGP,qBAAqB,CAAC,CAAC;EAChD,MAAM;IAAEQ,aAAa;IAAEC;EAAkB,CAAC,GAAGX,6BAA6B,CAAC,CAAC;EAC5E,MAAMY,OAAO,GAAGrB,MAAM,CAAC,IAAI,CAAC;EAC5B,MAAM,CAACsB,0BAA0B,EAAEC,6BAA6B,CAAC,GAC/DtB,QAAQ,CAAC,CAAC,CAAC;EAEbF,SAAS,CAAC,MAAM;IACd,OAAO,MAAM;MACXsB,OAAO,CAACG,OAAO,GAAG,KAAK;IACzB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,QAAQ,GAAG3B,WAAW,CAAC,UAAC4B,MAAc,EAAsB;IAAA,IAAAC,qBAAA;IAAA,IAApBC,QAAQ,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI;IAC3D,CAAAF,qBAAA,GAAAR,aAAa,CAACK,OAAO,cAAAG,qBAAA,uBAArBA,qBAAA,CAAuBK,cAAc,CAAC;MACpCC,MAAM,EAAEP,MAAM;MACdE;IACF,CAAC,CAAC;EACJ,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMM,aAAa,GAAGpC,WAAW,CAAEqC,MAAM,IAAK;IAAA,IAAAC,sBAAA;IAC5C,CAAAA,sBAAA,GAAAjB,aAAa,CAACK,OAAO,cAAAY,sBAAA,uBAArBA,sBAAA,CAAuBF,aAAa,CAACC,MAAM,CAAC;EAC9C,CAAC,EAAE,EAAE,CAAC;EAEN,MAAME,gBAAgB,GAAGvC,WAAW,CAAC,MAAM;IACzCwC,OAAO,CAACC,IAAI,CAAC,uDAAuD,CAAC;EACvE,CAAC,EAAE,EAAE,CAAC;EAEN,MAAM;IAAEC;EAAc,CAAC,GAAGhC,iBAAiB,CAAC;IAC1CQ,eAAe;IACfS,QAAQ;IACRS,aAAa;IACbG;EACF,CAAC,CAAC;EAEF,MAAMI,gCAAgC,GAAG3C,WAAW,CAAE4C,KAAa,IAAK;IACtE,IAAIrB,OAAO,CAACG,OAAO,EAAE;MACnBD,6BAA6B,CAACmB,KAAK,CAAC;IACtC;EACF,CAAC,EAAE,EAAE,CAAC;EAENpC,mBAAmB,CACjB,MAAM;IACJ,OAAOc,iBAAiB,CAACsB,KAAK;EAChC,CAAC,EACD,CAACC,MAAM,EAAEC,QAAQ,KAAK;IACpB,IAAID,MAAM,KAAKC,QAAQ,EAAE;MACvBvC,OAAO,CAACoC,gCAAgC,CAAC,CAACE,MAAM,CAAC;IACnD;EACF,CACF,CAAC;EAED,MAAME,yBAAyB,GAAG/C,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC;EAE3D,SAASgD,gBAAgBA,CAAA,EAAG;IAC1B,oBACEjD,KAAA,CAAAkD,aAAA,CAAC7C,IAAI,qBACHL,KAAA,CAAAkD,aAAA,CAACrC,eAAe;MAACsC,MAAM,EAAE9B;IAAa,CAAE,CAAC,EACxCD,KAAK,CAACgC,mBACH,CAAC;EAEX;EAEA,oBACEpD,KAAA,CAAAkD,aAAA,CAAC7C,IAAI;IAACgD,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAEnC,KAAK,CAACiC,KAAK;EAAE,gBAC3CrD,KAAA,CAAAkD,aAAA,CAACnC,iBAAiB,EAAAyC,QAAA;IAChBC,GAAG,EAAEnC,aAAc;IACnBoC,mBAAmB,EAAC,SAAS;IAC7BC,yBAAyB,EAAC,SAAS;IACnCC,mBAAmB,EAAE,CAAE;IACvBC,qBAAqB,EAAEb;EAA0B,GAC7C5B,KAAK;IACT0C,QAAQ,EAAEnB,aAAc;IACxBS,mBAAmB,EAAEH,gBAAgB,CAAC;IACtC;IAAA;IACAc,oBAAoB,EAAE,EAAG;IACzBC,kBAAkB,EAAEvC;EAA2B,EAChD,CACG,CAAC;AAEX;AAEA,MAAM6B,MAAM,GAAGhD,UAAU,CAAC2D,MAAM,CAAC;EAC/BV,SAAS,EAAE;IACT,GAAGjD,UAAU,CAAC4D;EAChB,CAAC;EACDC,gBAAgB,EAAE;IAChBC,QAAQ,EAAE;EACZ,CAAC;EACDC,OAAO,EAAE;IACPC,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,CAAC;IACNC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE;EACT;AACF,CAAC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
- import { FlatListProps } from 'react-native';
2
+ import { FlashListProps } from '@shopify/flash-list';
3
3
  import type { CollapsibleProps } from '../../types';
4
- type Props<Data> = Omit<FlatListProps<Data>, 'scrollEnabled'> & CollapsibleProps;
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,KAMN,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,aAAa,EAAoB,MAAM,cAAc,CAAC;AAQ/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAMpD,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC,GAC3D,gBAAgB,CAAC;AAEnB,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,IAAI,EAAE,EAChD,eAAsB,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,IAAI,CAAC,qBAyHb"}
1
+ {"version":3,"file":"CollapsibleFlashList.d.ts","sourceRoot":"","sources":["../../../../src/components/scrollable/CollapsibleFlashList.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAMxE,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,qBAgFb"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@r0b0t3d/react-native-collapsible",
3
- "version": "1.5.0-alpha.0",
3
+ "version": "1.5.0-alpha.1",
4
4
  "description": "Fully customizable collapsible views",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -1,17 +1,11 @@
1
1
  /* eslint-disable react-hooks/exhaustive-deps */
2
- import React, {
3
- useCallback,
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,
13
7
  } from 'react-native-reanimated';
14
- import { FlashList } from '@shopify/flash-list';
8
+ import { FlashList, FlashListProps } from '@shopify/flash-list';
15
9
  import useAnimatedScroll from './useAnimatedScroll';
16
10
  import useInternalCollapsibleContext from '../../hooks/useInternalCollapsibleContext';
17
11
  import type { CollapsibleProps } from '../../types';
@@ -20,7 +14,7 @@ import useCollapsibleContext from '../../hooks/useCollapsibleContext';
20
14
 
21
15
  const AnimatedFlashList = Animated.createAnimatedComponent(FlashList);
22
16
 
23
- type Props<Data> = Omit<FlatListProps<Data>, 'scrollEnabled'> &
17
+ type Props<Data> = Omit<FlashListProps<Data>, 'scrollEnabled'> &
24
18
  CollapsibleProps;
25
19
 
26
20
  export default function CollapsibleFlatList<Data>({
@@ -28,13 +22,8 @@ export default function CollapsibleFlatList<Data>({
28
22
  ...props
29
23
  }: Props<Data>) {
30
24
  const { headerHeight } = useCollapsibleContext();
31
- const { contentMinHeight, scrollViewRef, fixedHeaderHeight } =
32
- useInternalCollapsibleContext();
25
+ const { scrollViewRef, fixedHeaderHeight } = useInternalCollapsibleContext();
33
26
  const mounted = useRef(true);
34
- const contentHeight = useRef(0);
35
- const [internalContentMinHeight, setInternalContentMinHeight] = useState(
36
- contentMinHeight.value
37
- );
38
27
  const [internalProgressViewOffset, setInternalProgressViewOffset] =
39
28
  useState(0);
40
29
 
@@ -66,34 +55,12 @@ export default function CollapsibleFlatList<Data>({
66
55
  scrollToLocation,
67
56
  });
68
57
 
69
- const handleInternalContentHeight = useCallback((value: number) => {
70
- if (mounted.current) {
71
- setInternalContentMinHeight(value);
72
- }
73
- }, []);
74
-
75
58
  const handleInternalProgressViewOffset = useCallback((value: number) => {
76
59
  if (mounted.current) {
77
60
  setInternalProgressViewOffset(value);
78
61
  }
79
62
  }, []);
80
63
 
81
- useAnimatedReaction(
82
- () => {
83
- return contentMinHeight.value;
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
- );
96
-
97
64
  useAnimatedReaction(
98
65
  () => {
99
66
  return fixedHeaderHeight.value;
@@ -105,19 +72,6 @@ export default function CollapsibleFlatList<Data>({
105
72
  }
106
73
  );
107
74
 
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
75
  const handleScrollToIndexFailed = useCallback(() => {}, []);
122
76
 
123
77
  function renderListHeader() {
@@ -130,22 +84,21 @@ export default function CollapsibleFlatList<Data>({
130
84
  }
131
85
 
132
86
  return (
133
- <AnimatedFlashList
134
- ref={scrollViewRef}
135
- keyboardDismissMode="on-drag"
136
- keyboardShouldPersistTaps="handled"
137
- scrollEventThrottle={1}
138
- onScrollToIndexFailed={handleScrollToIndexFailed}
139
- {...props}
140
- style={[styles.container, props.style]}
141
- //@ts-ignore
142
- contentContainerStyle={contentContainerStyle}
143
- onScroll={scrollHandler}
144
- ListHeaderComponent={renderListHeader()}
145
- onContentSizeChange={handleContentSizeChange}
146
- simultaneousHandlers={[]}
147
- progressViewOffset={internalProgressViewOffset}
148
- />
87
+ <View style={[styles.container, props.style]}>
88
+ <AnimatedFlashList
89
+ ref={scrollViewRef}
90
+ keyboardDismissMode="on-drag"
91
+ keyboardShouldPersistTaps="handled"
92
+ scrollEventThrottle={1}
93
+ onScrollToIndexFailed={handleScrollToIndexFailed}
94
+ {...props}
95
+ onScroll={scrollHandler}
96
+ ListHeaderComponent={renderListHeader()}
97
+ //@ts-ignore
98
+ simultaneousHandlers={[]}
99
+ progressViewOffset={internalProgressViewOffset}
100
+ />
101
+ </View>
149
102
  );
150
103
  }
151
104