react-navigation-reanimated-top-tabs 0.11.0 → 0.11.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.
- package/lib/commonjs/components/wrappers/GestureWrapper.js +2 -3
- package/lib/commonjs/components/wrappers/GestureWrapper.js.map +1 -1
- package/lib/commonjs/context/Context.hooks.js +3 -2
- package/lib/commonjs/context/Context.hooks.js.map +1 -1
- package/lib/commonjs/hooks/useScreenScrollable.js +7 -2
- package/lib/commonjs/hooks/useScreenScrollable.js.map +1 -1
- package/lib/module/components/wrappers/GestureWrapper.js +2 -3
- package/lib/module/components/wrappers/GestureWrapper.js.map +1 -1
- package/lib/module/context/Context.hooks.js +3 -2
- package/lib/module/context/Context.hooks.js.map +1 -1
- package/lib/module/hooks/useScreenScrollable.js +7 -2
- package/lib/module/hooks/useScreenScrollable.js.map +1 -1
- package/lib/typescript/src/context/Context.hooks.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useScreenScrollable.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/wrappers/GestureWrapper.tsx +4 -4
- package/src/context/Context.hooks.ts +4 -1
- package/src/hooks/useScreenScrollable.ts +4 -6
|
@@ -31,9 +31,8 @@ const GestureWrapper = ({
|
|
|
31
31
|
} = (0, _useTabContext.useTabContext)();
|
|
32
32
|
const movedY = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
33
33
|
const gestureRef = (0, _react.useRef)(_reactNativeGestureHandler.Gesture.Pan());
|
|
34
|
-
const
|
|
35
|
-
|
|
36
|
-
}) => scrollY)[currentScreenIndex.value]?.value ?? 0);
|
|
34
|
+
const screenScrollYs = Object.values(context.screen.properties).map(screenProperties => screenProperties.scrollY);
|
|
35
|
+
const currentScreenScrollOffset = (0, _reactNativeReanimated.useDerivedValue)(() => screenScrollYs[currentScreenIndex.value]?.value ?? 0);
|
|
37
36
|
const withTimingConfig = {
|
|
38
37
|
duration: 300,
|
|
39
38
|
easing: _reactNativeReanimated.Easing.bezier(0.25, 0.1, 0.25, 1)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeGestureHandler","_reactNativeReanimated","_useTabContext","_reactNative","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","GestureWrapper","children","bounces","_bounces","Platform","select","ios","context","currentScreenIndex","currentYPosition","gestureEnabled","headerHeight","transformationY","scrollY","useTabContext","movedY","useSharedValue","gestureRef","useRef","Gesture","Pan","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeGestureHandler","_reactNativeReanimated","_useTabContext","_reactNative","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","GestureWrapper","children","bounces","_bounces","Platform","select","ios","context","currentScreenIndex","currentYPosition","gestureEnabled","headerHeight","transformationY","scrollY","useTabContext","movedY","useSharedValue","gestureRef","useRef","Gesture","Pan","screenScrollYs","values","screen","properties","map","screenProperties","currentScreenScrollOffset","useDerivedValue","value","withTimingConfig","duration","easing","Easing","bezier","_gestureEnabled","setGestureEnabled","useState","useAnimatedReaction","next","prev","runOnJS","gesture","useMemo","activeOffsetY","onTouchesMove","_","stateManager","fail","onUpdate","translationY","onEnd","velocityY","gestureValue","changeOffset","withTiming","destination","onFinalize","simultaneousWithExternalGesture","nativeGesture","withRef","enabled","style","useAnimatedStyle","flex","transform","translateY","jsx","GestureDetector","View","styles","container","exports","StyleSheet","create","overflow"],"sourceRoot":"../../../../src","sources":["components/wrappers/GestureWrapper.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -28,9 +28,10 @@ const useResetApproachingScreenScrollOffset = ({
|
|
|
28
28
|
positionX,
|
|
29
29
|
currentYPosition
|
|
30
30
|
}) => {
|
|
31
|
-
const
|
|
31
|
+
const screenScrollYs = Object.values(context.screen.properties).map(({
|
|
32
32
|
scrollY
|
|
33
|
-
}) => scrollY
|
|
33
|
+
}) => scrollY);
|
|
34
|
+
const screenOffsets = (0, _reactNativeReanimated.useDerivedValue)(() => screenScrollYs.map(scrollY => scrollY.value));
|
|
34
35
|
const resetApproachingScreenOffset = (index, shouldReset) => {
|
|
35
36
|
if (shouldReset) {
|
|
36
37
|
const ref = context.screen.getRef(context.route.getKeyForIndex(index)).current;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeReanimated","require","_react","_reactNativeGestureHandler","_lodash","_Context","_reactNative","useResetApproachingScreenScrollOffset","context","positionX","currentYPosition","
|
|
1
|
+
{"version":3,"names":["_reactNativeReanimated","require","_react","_reactNativeGestureHandler","_lodash","_Context","_reactNative","useResetApproachingScreenScrollOffset","context","positionX","currentYPosition","screenScrollYs","Object","values","screen","properties","map","scrollY","screenOffsets","useDerivedValue","value","resetApproachingScreenOffset","index","shouldReset","ref","getRef","route","getKeyForIndex","current","SectionList","scrollToLocation","animated","sectionIndex","itemIndex","viewOffset","scrollTo","y","useAnimatedReaction","previous","approachingIndex","ContextHelpers","getTargetIndex","approachingScreenOffset","runOnJS","usePrepareKeyMap","state","indexToKeyMap","useRef","routes","reduce","previousValue","currentValue","currentIndex","key","usePrepareScreen","screenProperties","prev","innerLayout","makeMutable","height","width","x","nativeGesture","Gesture","Native","outerLayout","scrollRef","setRef","newProperties","assign","_ref","usePrepareContext","useTransformHeaderOnTabChange","config","headerHeight","useSharedValue","isHeaderHeightSet","transformationY","inputRange","_","idx","outputRange","type","debouncedSetIsHeaderSet","throttle","cancel","prepared","interpolate","useApproachingTabChange","gestureEnabled","currentScreenIndex","onIndexApproach","ContextHooks","exports"],"sourceRoot":"../../../src","sources":["context/Context.hooks.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -39,15 +39,20 @@ const useScreenScrollable = () => {
|
|
|
39
39
|
const animatedProps = (0, _reactNativeReanimated.useAnimatedProps)(() => ({
|
|
40
40
|
scrollEnabled: isHeaderHeightSet.value && (!gestureEnabled.value || currentYPosition.value === -headerHeight.value)
|
|
41
41
|
}));
|
|
42
|
+
const routeScrollY = context.screen.properties[key]?.scrollY;
|
|
42
43
|
const onScroll = (0, _reactNativeReanimated.useAnimatedScrollHandler)(({
|
|
43
44
|
contentOffset
|
|
44
45
|
}) => {
|
|
45
|
-
const scrollPosition =
|
|
46
|
+
const scrollPosition = routeScrollY;
|
|
46
47
|
if (!scrollPosition) throw 'ScrollPosition property does not exist for this route';
|
|
47
48
|
scrollPosition.value = contentOffset.y;
|
|
48
49
|
});
|
|
49
50
|
const oppositeHeaderState = (0, _reactNativeReanimated.useDerivedValue)(() => transformationY.value >= 0 ? headerHeight.value : 0);
|
|
50
|
-
const
|
|
51
|
+
const {
|
|
52
|
+
innerLayout,
|
|
53
|
+
outerLayout
|
|
54
|
+
} = screen;
|
|
55
|
+
const difference = (0, _reactNativeReanimated.useDerivedValue)(() => (0, _reactNativeReanimated.clamp)(outerLayout.value.height - innerLayout.value.height, 0, Infinity));
|
|
51
56
|
const style = (0, _reactNativeReanimated.useAnimatedStyle)(() => ({
|
|
52
57
|
minHeight: height - topTabHeight.value - oppositeHeaderState.value - navigationHeader - difference.value
|
|
53
58
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_native","require","_reactNativeSafeAreaContext","_useTabContext","React","_interopRequireWildcard","_elements","_reactNativeReanimated","_useScreenProperties","_useScreenDimensions","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useScreenScrollable","key","useRoute","height","useScreenDimensions","bottom","top","useSafeAreaInsets","currentYPosition","gestureEnabled","headerHeight","context","topTabHeight","transformationY","isHeaderHeightSet","useTabContext","screen","useScreenProperties","navigationHeader","useContext","HeaderHeightContext","animatedProps","useAnimatedProps","scrollEnabled","value","
|
|
1
|
+
{"version":3,"names":["_native","require","_reactNativeSafeAreaContext","_useTabContext","React","_interopRequireWildcard","_elements","_reactNativeReanimated","_useScreenProperties","_useScreenDimensions","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useScreenScrollable","key","useRoute","height","useScreenDimensions","bottom","top","useSafeAreaInsets","currentYPosition","gestureEnabled","headerHeight","context","topTabHeight","transformationY","isHeaderHeightSet","useTabContext","screen","useScreenProperties","navigationHeader","useContext","HeaderHeightContext","animatedProps","useAnimatedProps","scrollEnabled","value","routeScrollY","properties","scrollY","onScroll","useAnimatedScrollHandler","contentOffset","scrollPosition","y","oppositeHeaderState","useDerivedValue","innerLayout","outerLayout","difference","clamp","Infinity","style","useAnimatedStyle","minHeight","bounces","contentContainerStyle","paddingBottom","overScrollMode","exports"],"sourceRoot":"../../../src","sources":["hooks/useScreenScrollable.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -25,9 +25,8 @@ export const GestureWrapper = ({
|
|
|
25
25
|
} = useTabContext();
|
|
26
26
|
const movedY = useSharedValue(0);
|
|
27
27
|
const gestureRef = useRef(Gesture.Pan());
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
}) => scrollY)[currentScreenIndex.value]?.value ?? 0);
|
|
28
|
+
const screenScrollYs = Object.values(context.screen.properties).map(screenProperties => screenProperties.scrollY);
|
|
29
|
+
const currentScreenScrollOffset = useDerivedValue(() => screenScrollYs[currentScreenIndex.value]?.value ?? 0);
|
|
31
30
|
const withTimingConfig = {
|
|
32
31
|
duration: 300,
|
|
33
32
|
easing: Easing.bezier(0.25, 0.1, 0.25, 1)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useMemo","useRef","useState","Gesture","GestureDetector","Reanimated","Easing","runOnJS","useAnimatedReaction","useAnimatedStyle","useDerivedValue","useSharedValue","withTiming","useTabContext","Platform","StyleSheet","View","jsx","_jsx","GestureWrapper","children","bounces","_bounces","select","ios","default","context","currentScreenIndex","currentYPosition","gestureEnabled","headerHeight","transformationY","scrollY","movedY","gestureRef","Pan","
|
|
1
|
+
{"version":3,"names":["React","useMemo","useRef","useState","Gesture","GestureDetector","Reanimated","Easing","runOnJS","useAnimatedReaction","useAnimatedStyle","useDerivedValue","useSharedValue","withTiming","useTabContext","Platform","StyleSheet","View","jsx","_jsx","GestureWrapper","children","bounces","_bounces","select","ios","default","context","currentScreenIndex","currentYPosition","gestureEnabled","headerHeight","transformationY","scrollY","movedY","gestureRef","Pan","screenScrollYs","Object","values","screen","properties","map","screenProperties","currentScreenScrollOffset","value","withTimingConfig","duration","easing","bezier","_gestureEnabled","setGestureEnabled","next","prev","gesture","activeOffsetY","onTouchesMove","_","stateManager","fail","onUpdate","translationY","onEnd","velocityY","gestureValue","changeOffset","destination","onFinalize","simultaneousWithExternalGesture","nativeGesture","withRef","enabled","style","flex","transform","translateY","styles","container","create","overflow"],"sourceRoot":"../../../../src","sources":["components/wrappers/GestureWrapper.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -25,9 +25,10 @@ const useResetApproachingScreenScrollOffset = ({
|
|
|
25
25
|
positionX,
|
|
26
26
|
currentYPosition
|
|
27
27
|
}) => {
|
|
28
|
-
const
|
|
28
|
+
const screenScrollYs = Object.values(context.screen.properties).map(({
|
|
29
29
|
scrollY
|
|
30
|
-
}) => scrollY
|
|
30
|
+
}) => scrollY);
|
|
31
|
+
const screenOffsets = useDerivedValue(() => screenScrollYs.map(scrollY => scrollY.value));
|
|
31
32
|
const resetApproachingScreenOffset = (index, shouldReset) => {
|
|
32
33
|
if (shouldReset) {
|
|
33
34
|
const ref = context.screen.getRef(context.route.getKeyForIndex(index)).current;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["interpolate","makeMutable","runOnJS","useAnimatedReaction","useDerivedValue","useSharedValue","useRef","Gesture","assign","throttle","ContextHelpers","SectionList","useResetApproachingScreenScrollOffset","context","positionX","currentYPosition","
|
|
1
|
+
{"version":3,"names":["interpolate","makeMutable","runOnJS","useAnimatedReaction","useDerivedValue","useSharedValue","useRef","Gesture","assign","throttle","ContextHelpers","SectionList","useResetApproachingScreenScrollOffset","context","positionX","currentYPosition","screenScrollYs","Object","values","screen","properties","map","scrollY","screenOffsets","value","resetApproachingScreenOffset","index","shouldReset","ref","getRef","route","getKeyForIndex","current","scrollToLocation","animated","sectionIndex","itemIndex","viewOffset","scrollTo","y","previous","approachingIndex","getTargetIndex","approachingScreenOffset","usePrepareKeyMap","state","indexToKeyMap","routes","reduce","previousValue","currentValue","currentIndex","key","usePrepareScreen","screenProperties","prev","innerLayout","height","width","x","nativeGesture","Native","outerLayout","scrollRef","setRef","newProperties","_ref","usePrepareContext","useTransformHeaderOnTabChange","config","headerHeight","isHeaderHeightSet","transformationY","inputRange","_","idx","outputRange","type","debouncedSetIsHeaderSet","cancel","prepared","useApproachingTabChange","gestureEnabled","currentScreenIndex","onIndexApproach","ContextHooks"],"sourceRoot":"../../../src","sources":["context/Context.hooks.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -33,15 +33,20 @@ export const useScreenScrollable = () => {
|
|
|
33
33
|
const animatedProps = useAnimatedProps(() => ({
|
|
34
34
|
scrollEnabled: isHeaderHeightSet.value && (!gestureEnabled.value || currentYPosition.value === -headerHeight.value)
|
|
35
35
|
}));
|
|
36
|
+
const routeScrollY = context.screen.properties[key]?.scrollY;
|
|
36
37
|
const onScroll = useAnimatedScrollHandler(({
|
|
37
38
|
contentOffset
|
|
38
39
|
}) => {
|
|
39
|
-
const scrollPosition =
|
|
40
|
+
const scrollPosition = routeScrollY;
|
|
40
41
|
if (!scrollPosition) throw 'ScrollPosition property does not exist for this route';
|
|
41
42
|
scrollPosition.value = contentOffset.y;
|
|
42
43
|
});
|
|
43
44
|
const oppositeHeaderState = useDerivedValue(() => transformationY.value >= 0 ? headerHeight.value : 0);
|
|
44
|
-
const
|
|
45
|
+
const {
|
|
46
|
+
innerLayout,
|
|
47
|
+
outerLayout
|
|
48
|
+
} = screen;
|
|
49
|
+
const difference = useDerivedValue(() => clamp(outerLayout.value.height - innerLayout.value.height, 0, Infinity));
|
|
45
50
|
const style = useAnimatedStyle(() => ({
|
|
46
51
|
minHeight: height - topTabHeight.value - oppositeHeaderState.value - navigationHeader - difference.value
|
|
47
52
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useRoute","useSafeAreaInsets","useTabContext","React","HeaderHeightContext","clamp","useAnimatedProps","useAnimatedScrollHandler","useAnimatedStyle","useDerivedValue","useScreenProperties","useScreenDimensions","useScreenScrollable","key","height","bottom","top","currentYPosition","gestureEnabled","headerHeight","context","topTabHeight","transformationY","isHeaderHeightSet","screen","navigationHeader","useContext","animatedProps","scrollEnabled","value","
|
|
1
|
+
{"version":3,"names":["useRoute","useSafeAreaInsets","useTabContext","React","HeaderHeightContext","clamp","useAnimatedProps","useAnimatedScrollHandler","useAnimatedStyle","useDerivedValue","useScreenProperties","useScreenDimensions","useScreenScrollable","key","height","bottom","top","currentYPosition","gestureEnabled","headerHeight","context","topTabHeight","transformationY","isHeaderHeightSet","screen","navigationHeader","useContext","animatedProps","scrollEnabled","value","routeScrollY","properties","scrollY","onScroll","contentOffset","scrollPosition","y","oppositeHeaderState","innerLayout","outerLayout","difference","Infinity","style","minHeight","bounces","contentContainerStyle","paddingBottom","overScrollMode"],"sourceRoot":"../../../src","sources":["hooks/useScreenScrollable.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,0BAA0B;AACnD,SAASC,iBAAiB,QAAQ,gCAAgC;AAClE,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,SAASC,mBAAmB,QAAQ,4BAA4B;AAChE,SACEC,KAAK,EACLC,gBAAgB,EAChBC,wBAAwB,EACxBC,gBAAgB,EAChBC,eAAe,QACV,yBAAyB;AAEhC,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,mBAAmB,QAAQ,uBAAuB;AAE3D,OAAO,MAAMC,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAM;IAAEC;EAAI,CAAC,GAAGb,QAAQ,CAAC,CAAC;EAC1B,MAAM;IAAEc;EAAO,CAAC,GAAGH,mBAAmB,CAAC,CAAC;EACxC,MAAM;IAAEI,MAAM;IAAEC;EAAI,CAAC,GAAGf,iBAAiB,CAAC,CAAC;EAC3C,MAAM;IACJgB,gBAAgB;IAChBC,cAAc;IACdC,YAAY;IACZC,OAAO;IACPC,YAAY;IACZC,eAAe;IACfC;EACF,CAAC,GAAGrB,aAAa,CAAC,CAAC;EAEnB,MAAMsB,MAAM,GAAGd,mBAAmB,CAAC,CAAC;EAEpC,MAAMe,gBAAgB,GAAGtB,KAAK,CAACuB,UAAU,CAACtB,mBAAmB,CAAC,IAAIY,GAAG;EAErE,MAAMW,aAAa,GAAGrB,gBAAgB,CAAC,OAAO;IAC5CsB,aAAa,EACXL,iBAAiB,CAACM,KAAK,KACtB,CAACX,cAAc,CAACW,KAAK,IAAIZ,gBAAgB,CAACY,KAAK,KAAK,CAACV,YAAY,CAACU,KAAK;EAC5E,CAAC,CAAC,CAAC;EAEH,MAAMC,YAAY,GAAGV,OAAO,CAACI,MAAM,CAACO,UAAU,CAAClB,GAAG,CAAC,EAAEmB,OAAO;EAC5D,MAAMC,QAAQ,GAAG1B,wBAAwB,CAAC,CAAC;IAAE2B;EAAc,CAAC,KAAK;IAC/D,MAAMC,cAAc,GAAGL,YAAY;IACnC,IAAI,CAACK,cAAc,EACjB,MAAM,uDAAuD;IAC/DA,cAAc,CAACN,KAAK,GAAGK,aAAa,CAACE,CAAC;EACxC,CAAC,CAAC;EAEF,MAAMC,mBAAmB,GAAG5B,eAAe,CAAC,MAC1Ca,eAAe,CAACO,KAAK,IAAI,CAAC,GAAGV,YAAY,CAACU,KAAK,GAAG,CACpD,CAAC;EAED,MAAM;IAAES,WAAW;IAAEC;EAAY,CAAC,GAAGf,MAAM;EAC3C,MAAMgB,UAAU,GAAG/B,eAAe,CAAC,MACjCJ,KAAK,CAACkC,WAAW,CAACV,KAAK,CAACf,MAAM,GAAGwB,WAAW,CAACT,KAAK,CAACf,MAAM,EAAE,CAAC,EAAE2B,QAAQ,CACxE,CAAC;EAED,MAAMC,KAAK,GAAGlC,gBAAgB,CAAC,OAAO;IACpCmC,SAAS,EACP7B,MAAM,GACNO,YAAY,CAACQ,KAAK,GAClBQ,mBAAmB,CAACR,KAAK,GACzBJ,gBAAgB,GAChBe,UAAU,CAACX;EACf,CAAC,CAAC,CAAC;EAEH,OAAO;IACLF,aAAa;IACbiB,OAAO,EAAE,KAAK;IACdC,qBAAqB,EAAE;MAAEC,aAAa,EAAE/B;IAAO,CAAC;IAChDkB,QAAQ;IACRc,cAAc,EAAE,OAAgB;IAChCL;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Context.hooks.d.ts","sourceRoot":"","sources":["../../../../src/context/Context.hooks.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAE3D,OAAO,KAAK,EACV,aAAa,EACb,kBAAkB,EACnB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"Context.hooks.d.ts","sourceRoot":"","sources":["../../../../src/context/Context.hooks.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAE3D,OAAO,KAAK,EACV,aAAa,EACb,kBAAkB,EACnB,MAAM,0BAA0B,CAAC;AAuTlC,eAAO,MAAM,YAAY;uFAhStB,IAAI,CACL,0BAA0B,CAAC,WAAW,EACtC,SAAS,GAAG,kBAAkB,GAAG,WAAW,CAC7C;oCAwJE;QACD,KAAK,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;KAC1C,KAAG,0BAA0B,CAAC,kBAAkB,CAAC,SAAS,CAAC;iDAuBzD,IAAI,CAAC,0BAA0B,CAAC,WAAW,EAAE,QAAQ,CAAC;;;;;;;;0FAgFtD,IAAI,CACL,0BAA0B,CAAC,WAAW,EACtC,QAAQ,GAAG,WAAW,GAAG,oBAAoB,GAAG,gBAAgB,CACjE;CA8BA,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useScreenScrollable.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useScreenScrollable.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"useScreenScrollable.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useScreenScrollable.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;CA0D/B,CAAC"}
|
package/package.json
CHANGED
|
@@ -38,11 +38,11 @@ export const GestureWrapper = ({ children, bounces }: GestureWrapperProps) => {
|
|
|
38
38
|
|
|
39
39
|
const gestureRef = useRef(Gesture.Pan());
|
|
40
40
|
|
|
41
|
+
const screenScrollYs = Object.values(context.screen.properties).map(
|
|
42
|
+
(screenProperties) => screenProperties.scrollY
|
|
43
|
+
);
|
|
41
44
|
const currentScreenScrollOffset = useDerivedValue(
|
|
42
|
-
() =>
|
|
43
|
-
Object.values(context.screen.properties).map(({ scrollY }) => scrollY)[
|
|
44
|
-
currentScreenIndex.value
|
|
45
|
-
]?.value ?? 0
|
|
45
|
+
() => screenScrollYs[currentScreenIndex.value]?.value ?? 0
|
|
46
46
|
);
|
|
47
47
|
|
|
48
48
|
const withTimingConfig = {
|
|
@@ -38,8 +38,11 @@ const useResetApproachingScreenScrollOffset = ({
|
|
|
38
38
|
ReanimatedTopTabNavigation.ContextType,
|
|
39
39
|
'context' | 'currentYPosition' | 'positionX'
|
|
40
40
|
>) => {
|
|
41
|
+
const screenScrollYs = Object.values(context.screen.properties).map(
|
|
42
|
+
({ scrollY }) => scrollY
|
|
43
|
+
);
|
|
41
44
|
const screenOffsets = useDerivedValue(() =>
|
|
42
|
-
|
|
45
|
+
screenScrollYs.map((scrollY) => scrollY.value)
|
|
43
46
|
);
|
|
44
47
|
|
|
45
48
|
const resetApproachingScreenOffset = (
|
|
@@ -38,8 +38,9 @@ export const useScreenScrollable = () => {
|
|
|
38
38
|
(!gestureEnabled.value || currentYPosition.value === -headerHeight.value),
|
|
39
39
|
}));
|
|
40
40
|
|
|
41
|
+
const routeScrollY = context.screen.properties[key]?.scrollY;
|
|
41
42
|
const onScroll = useAnimatedScrollHandler(({ contentOffset }) => {
|
|
42
|
-
const scrollPosition =
|
|
43
|
+
const scrollPosition = routeScrollY;
|
|
43
44
|
if (!scrollPosition)
|
|
44
45
|
throw 'ScrollPosition property does not exist for this route';
|
|
45
46
|
scrollPosition.value = contentOffset.y;
|
|
@@ -49,12 +50,9 @@ export const useScreenScrollable = () => {
|
|
|
49
50
|
transformationY.value >= 0 ? headerHeight.value : 0
|
|
50
51
|
);
|
|
51
52
|
|
|
53
|
+
const { innerLayout, outerLayout } = screen;
|
|
52
54
|
const difference = useDerivedValue(() =>
|
|
53
|
-
clamp(
|
|
54
|
-
screen.outerLayout.value.height - screen.innerLayout.value.height,
|
|
55
|
-
0,
|
|
56
|
-
Infinity
|
|
57
|
-
)
|
|
55
|
+
clamp(outerLayout.value.height - innerLayout.value.height, 0, Infinity)
|
|
58
56
|
);
|
|
59
57
|
|
|
60
58
|
const style = useAnimatedStyle(() => ({
|