react-navigation-reanimated-top-tabs 0.4.0 → 0.5.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.
- package/lib/commonjs/hooks/useScreenScrollable.js +1 -1
- package/lib/commonjs/hooks/useScreenScrollable.js.map +1 -1
- package/lib/module/hooks/useScreenScrollable.js +2 -2
- package/lib/module/hooks/useScreenScrollable.js.map +1 -1
- package/lib/typescript/src/hooks/useScreenScrollable.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/hooks/useScreenScrollable.ts +6 -1
|
@@ -46,7 +46,7 @@ const useScreenScrollable = () => {
|
|
|
46
46
|
scrollPosition.value = contentOffset.y;
|
|
47
47
|
});
|
|
48
48
|
const oppositeHeaderState = (0, _reactNativeReanimated.useDerivedValue)(() => transformationY.value >= 0 ? headerHeight.value : 0);
|
|
49
|
-
const difference = (0, _reactNativeReanimated.useDerivedValue)(() =>
|
|
49
|
+
const difference = (0, _reactNativeReanimated.useDerivedValue)(() => (0, _reactNativeReanimated.clamp)(screen.outerLayout.value.height - screen.innerLayout.value.height, 0, Infinity));
|
|
50
50
|
const style = (0, _reactNativeReanimated.useAnimatedStyle)(() => ({
|
|
51
51
|
minHeight: height - topTabHeight.value - oppositeHeaderState.value - navigationHeader - difference.value
|
|
52
52
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_native","require","_reactNative","_reactNativeSafeAreaContext","_useTabContext","React","_interopRequireWildcard","_elements","_reactNativeReanimated","_useScreenProperties","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useScreenScrollable","key","useRoute","height","useWindowDimensions","bottom","top","useSafeAreaInsets","currentYPosition","gestureEnabled","headerHeight","context","topTabHeight","transformationY","useTabContext","screen","useScreenProperties","navigationHeader","useContext","HeaderHeightContext","animatedProps","useAnimatedProps","scrollEnabled","value","onScroll","useAnimatedScrollHandler","contentOffset","scrollPosition","properties","scrollY","y","oppositeHeaderState","useDerivedValue","difference","
|
|
1
|
+
{"version":3,"names":["_native","require","_reactNative","_reactNativeSafeAreaContext","_useTabContext","React","_interopRequireWildcard","_elements","_reactNativeReanimated","_useScreenProperties","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useScreenScrollable","key","useRoute","height","useWindowDimensions","bottom","top","useSafeAreaInsets","currentYPosition","gestureEnabled","headerHeight","context","topTabHeight","transformationY","useTabContext","screen","useScreenProperties","navigationHeader","useContext","HeaderHeightContext","animatedProps","useAnimatedProps","scrollEnabled","value","onScroll","useAnimatedScrollHandler","contentOffset","scrollPosition","properties","scrollY","y","oppositeHeaderState","useDerivedValue","difference","clamp","outerLayout","innerLayout","Infinity","style","useAnimatedStyle","minHeight","bounces","contentContainerStyle","paddingBottom","exports"],"sourceRoot":"../../../src","sources":["hooks/useScreenScrollable.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,7 +6,7 @@ import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
|
6
6
|
import { useTabContext } from './useTabContext';
|
|
7
7
|
import * as React from 'react';
|
|
8
8
|
import { HeaderHeightContext } from '@react-navigation/elements';
|
|
9
|
-
import { useAnimatedProps, useAnimatedScrollHandler, useAnimatedStyle, useDerivedValue } from 'react-native-reanimated';
|
|
9
|
+
import { clamp, useAnimatedProps, useAnimatedScrollHandler, useAnimatedStyle, useDerivedValue } from 'react-native-reanimated';
|
|
10
10
|
import { useScreenProperties } from './useScreenProperties';
|
|
11
11
|
export const useScreenScrollable = () => {
|
|
12
12
|
const {
|
|
@@ -40,7 +40,7 @@ export const useScreenScrollable = () => {
|
|
|
40
40
|
scrollPosition.value = contentOffset.y;
|
|
41
41
|
});
|
|
42
42
|
const oppositeHeaderState = useDerivedValue(() => transformationY.value >= 0 ? headerHeight.value : 0);
|
|
43
|
-
const difference = useDerivedValue(() =>
|
|
43
|
+
const difference = useDerivedValue(() => clamp(screen.outerLayout.value.height - screen.innerLayout.value.height, 0, Infinity));
|
|
44
44
|
const style = useAnimatedStyle(() => ({
|
|
45
45
|
minHeight: height - topTabHeight.value - oppositeHeaderState.value - navigationHeader - difference.value
|
|
46
46
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useRoute","useWindowDimensions","useSafeAreaInsets","useTabContext","React","HeaderHeightContext","useAnimatedProps","useAnimatedScrollHandler","useAnimatedStyle","useDerivedValue","useScreenProperties","useScreenScrollable","key","height","bottom","top","currentYPosition","gestureEnabled","headerHeight","context","topTabHeight","transformationY","screen","navigationHeader","useContext","animatedProps","scrollEnabled","value","onScroll","contentOffset","scrollPosition","properties","scrollY","y","oppositeHeaderState","difference","
|
|
1
|
+
{"version":3,"names":["useRoute","useWindowDimensions","useSafeAreaInsets","useTabContext","React","HeaderHeightContext","clamp","useAnimatedProps","useAnimatedScrollHandler","useAnimatedStyle","useDerivedValue","useScreenProperties","useScreenScrollable","key","height","bottom","top","currentYPosition","gestureEnabled","headerHeight","context","topTabHeight","transformationY","screen","navigationHeader","useContext","animatedProps","scrollEnabled","value","onScroll","contentOffset","scrollPosition","properties","scrollY","y","oppositeHeaderState","difference","outerLayout","innerLayout","Infinity","style","minHeight","bounces","contentContainerStyle","paddingBottom"],"sourceRoot":"../../../src","sources":["hooks/useScreenScrollable.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,0BAA0B;AACnD,SAASC,mBAAmB,QAAQ,cAAc;AAClD,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;AAE3D,OAAO,MAAMC,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAM;IAAEC;EAAI,CAAC,GAAGb,QAAQ,CAAC,CAAC;EAC1B,MAAM;IAAEc;EAAO,CAAC,GAAGb,mBAAmB,CAAC,CAAC;EACxC,MAAM;IAAEc,MAAM;IAAEC;EAAI,CAAC,GAAGd,iBAAiB,CAAC,CAAC;EAC3C,MAAM;IACJe,gBAAgB;IAChBC,cAAc;IACdC,YAAY;IACZC,OAAO;IACPC,YAAY;IACZC;EACF,CAAC,GAAGnB,aAAa,CAAC,CAAC;EAEnB,MAAMoB,MAAM,GAAGZ,mBAAmB,CAAC,CAAC;EAEpC,MAAMa,gBAAgB,GAAGpB,KAAK,CAACqB,UAAU,CAACpB,mBAAmB,CAAC,IAAIW,GAAG;EAErE,MAAMU,aAAa,GAAGnB,gBAAgB,CAAC,OAAO;IAC5CoB,aAAa,EACX,CAACT,cAAc,CAACU,KAAK,IAAIX,gBAAgB,CAACW,KAAK,KAAK,CAACT,YAAY,CAACS;EACtE,CAAC,CAAC,CAAC;EAEH,MAAMC,QAAQ,GAAGrB,wBAAwB,CAAC,CAAC;IAAEsB;EAAc,CAAC,KAAK;IAC/D,MAAMC,cAAc,GAAGX,OAAO,CAACG,MAAM,CAACS,UAAU,CAACnB,GAAG,CAAC,EAAEoB,OAAO;IAC9D,IAAI,CAACF,cAAc,EACjB,MAAM,uDAAuD;IAC/DA,cAAc,CAACH,KAAK,GAAGE,aAAa,CAACI,CAAC;EACxC,CAAC,CAAC;EAEF,MAAMC,mBAAmB,GAAGzB,eAAe,CAAC,MAC1CY,eAAe,CAACM,KAAK,IAAI,CAAC,GAAGT,YAAY,CAACS,KAAK,GAAG,CACpD,CAAC;EAED,MAAMQ,UAAU,GAAG1B,eAAe,CAAC,MACjCJ,KAAK,CACHiB,MAAM,CAACc,WAAW,CAACT,KAAK,CAACd,MAAM,GAAGS,MAAM,CAACe,WAAW,CAACV,KAAK,CAACd,MAAM,EACjE,CAAC,EACDyB,QACF,CACF,CAAC;EAED,MAAMC,KAAK,GAAG/B,gBAAgB,CAAC,OAAO;IACpCgC,SAAS,EACP3B,MAAM,GACNO,YAAY,CAACO,KAAK,GAClBO,mBAAmB,CAACP,KAAK,GACzBJ,gBAAgB,GAChBY,UAAU,CAACR;EACf,CAAC,CAAC,CAAC;EAEH,OAAO;IACLF,aAAa;IACbgB,OAAO,EAAE,KAAK;IACdC,qBAAqB,EAAE;MAAEC,aAAa,EAAE7B;IAAO,CAAC;IAChDc,QAAQ;IACRW;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useScreenScrollable.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useScreenScrollable.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useScreenScrollable.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useScreenScrollable.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,mBAAmB;;;;;;;;;;;;CAyD/B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-navigation-reanimated-top-tabs",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "react-navigation-reanimated-top-tabs",
|
|
5
5
|
"source": "./src/index.tsx",
|
|
6
6
|
"main": "./lib/commonjs/index.js",
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
"@react-navigation/native": ">=6.0.0",
|
|
92
92
|
"@react-navigation/routers": ">=6.0.0",
|
|
93
93
|
"@react-navigation/stack": ">=6.0.0",
|
|
94
|
-
"lodash": "
|
|
94
|
+
"lodash": ">=4.17.0",
|
|
95
95
|
"react": ">=16.8.0 || ^17.0.0 || ^18.0.0",
|
|
96
96
|
"react-native": ">=0.60.0",
|
|
97
97
|
"react-native-gesture-handler": ">=2.0.0",
|
|
@@ -5,6 +5,7 @@ import { useTabContext } from './useTabContext';
|
|
|
5
5
|
import * as React from 'react';
|
|
6
6
|
import { HeaderHeightContext } from '@react-navigation/elements';
|
|
7
7
|
import {
|
|
8
|
+
clamp,
|
|
8
9
|
useAnimatedProps,
|
|
9
10
|
useAnimatedScrollHandler,
|
|
10
11
|
useAnimatedStyle,
|
|
@@ -47,7 +48,11 @@ export const useScreenScrollable = () => {
|
|
|
47
48
|
);
|
|
48
49
|
|
|
49
50
|
const difference = useDerivedValue(() =>
|
|
50
|
-
|
|
51
|
+
clamp(
|
|
52
|
+
screen.outerLayout.value.height - screen.innerLayout.value.height,
|
|
53
|
+
0,
|
|
54
|
+
Infinity
|
|
55
|
+
)
|
|
51
56
|
);
|
|
52
57
|
|
|
53
58
|
const style = useAnimatedStyle(() => ({
|