@dgui/react-native 1.8.1 → 1.8.2-next.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.
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useTabOrder, useTabs } from '@dgui/react-shared';
|
|
2
3
|
import { useCallback, useEffect, useMemo, useRef } from 'react';
|
|
3
4
|
import { StyleSheet } from 'react-native';
|
|
4
5
|
import PagerView from 'react-native-pager-view';
|
|
@@ -11,12 +12,19 @@ const styles = StyleSheet.create({
|
|
|
11
12
|
flex: 1
|
|
12
13
|
}
|
|
13
14
|
});
|
|
14
|
-
const NativeCarousel = ({ children, onSelectTab, style: givenStyle, swipe, tabIndex = 0 }) => {
|
|
15
|
+
const NativeCarousel = ({ children, onSelectTab, style: givenStyle, swipe: givenSwipe = true, tabIndex = 0 }) => {
|
|
15
16
|
const pager = useRef(null);
|
|
16
17
|
const pagePosition = useRef(tabIndex);
|
|
18
|
+
const tabs = useTabs();
|
|
19
|
+
const tabOrder = useTabOrder();
|
|
17
20
|
const handlePageScroll = useCallback((event) => {
|
|
18
21
|
pagePosition.current = event.nativeEvent.position;
|
|
19
|
-
|
|
22
|
+
const swipe = tabs[tabOrder[pagePosition.current] ?? '']?.swipe ?? givenSwipe;
|
|
23
|
+
pager.current?.setScrollEnabled(swipe);
|
|
24
|
+
}, [
|
|
25
|
+
tabOrder,
|
|
26
|
+
tabs
|
|
27
|
+
]);
|
|
20
28
|
const style = useMemo(() => {
|
|
21
29
|
return {
|
|
22
30
|
...styles.pagerView,
|
|
@@ -46,7 +54,7 @@ const NativeCarousel = ({ children, onSelectTab, style: givenStyle, swipe, tabIn
|
|
|
46
54
|
}, [
|
|
47
55
|
tabIndex
|
|
48
56
|
]);
|
|
49
|
-
return (_jsx(PagerView, { initialPage: tabIndex, offscreenPageLimit: OFFSCREEN_LIMIT, onPageScroll: handlePageScroll, onPageScrollStateChanged: handlePageScrollStateChanged, overdrag: OVERDRAG, overScrollMode: OVERSCROLL_MODE, pageMargin: PAGE_MARGIN, ref: pager, scrollEnabled:
|
|
57
|
+
return (_jsx(PagerView, { initialPage: tabIndex, offscreenPageLimit: OFFSCREEN_LIMIT, onPageScroll: handlePageScroll, onPageScrollStateChanged: handlePageScrollStateChanged, overdrag: OVERDRAG, overScrollMode: OVERSCROLL_MODE, pageMargin: PAGE_MARGIN, ref: pager, scrollEnabled: givenSwipe, style: style, children: children }));
|
|
50
58
|
};
|
|
51
59
|
NativeCarousel.displayName = 'NativeCarousel';
|
|
52
60
|
export default NativeCarousel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeCarousel.js","sourceRoot":"","sources":["../../../../src/Generics/NativeCarousel/NativeCarousel.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"NativeCarousel.js","sourceRoot":"","sources":["../../../../src/Generics/NativeCarousel/NativeCarousel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useTabOrder, useTabs } from '@dgui/react-shared';
|
|
2
3
|
import { useCallback, useEffect, useMemo, useRef } from 'react';
|
|
3
4
|
import { StyleSheet } from 'react-native';
|
|
4
5
|
import PagerView from 'react-native-pager-view';
|
|
@@ -11,12 +12,19 @@ const styles = StyleSheet.create({
|
|
|
11
12
|
flex: 1
|
|
12
13
|
}
|
|
13
14
|
});
|
|
14
|
-
const NativeCarousel = ({ children, onSelectTab, style: givenStyle, swipe, tabIndex = 0 }) => {
|
|
15
|
+
const NativeCarousel = ({ children, onSelectTab, style: givenStyle, swipe: givenSwipe = true, tabIndex = 0 }) => {
|
|
15
16
|
const pager = useRef(null);
|
|
16
17
|
const pagePosition = useRef(tabIndex);
|
|
18
|
+
const tabs = useTabs();
|
|
19
|
+
const tabOrder = useTabOrder();
|
|
17
20
|
const handlePageScroll = useCallback((event) => {
|
|
18
21
|
pagePosition.current = event.nativeEvent.position;
|
|
19
|
-
|
|
22
|
+
const swipe = tabs[tabOrder[pagePosition.current] ?? '']?.swipe ?? givenSwipe;
|
|
23
|
+
pager.current?.setScrollEnabled(swipe);
|
|
24
|
+
}, [
|
|
25
|
+
tabOrder,
|
|
26
|
+
tabs
|
|
27
|
+
]);
|
|
20
28
|
const style = useMemo(() => {
|
|
21
29
|
return {
|
|
22
30
|
...styles.pagerView,
|
|
@@ -46,7 +54,7 @@ const NativeCarousel = ({ children, onSelectTab, style: givenStyle, swipe, tabIn
|
|
|
46
54
|
}, [
|
|
47
55
|
tabIndex
|
|
48
56
|
]);
|
|
49
|
-
return (_jsx(PagerView, { initialPage: tabIndex, offscreenPageLimit: OFFSCREEN_LIMIT, onPageScroll: handlePageScroll, onPageScrollStateChanged: handlePageScrollStateChanged, overdrag: OVERDRAG, overScrollMode: OVERSCROLL_MODE, pageMargin: PAGE_MARGIN, ref: pager, scrollEnabled:
|
|
57
|
+
return (_jsx(PagerView, { initialPage: tabIndex, offscreenPageLimit: OFFSCREEN_LIMIT, onPageScroll: handlePageScroll, onPageScrollStateChanged: handlePageScrollStateChanged, overdrag: OVERDRAG, overScrollMode: OVERSCROLL_MODE, pageMargin: PAGE_MARGIN, ref: pager, scrollEnabled: givenSwipe, style: style, children: children }));
|
|
50
58
|
};
|
|
51
59
|
NativeCarousel.displayName = 'NativeCarousel';
|
|
52
60
|
export default NativeCarousel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeCarousel.js","sourceRoot":"","sources":["../../../../src/Generics/NativeCarousel/NativeCarousel.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"NativeCarousel.js","sourceRoot":"","sources":["../../../../src/Generics/NativeCarousel/NativeCarousel.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@dgui/react-native",
|
|
3
3
|
"title": "Digested React GUI Native Components",
|
|
4
4
|
"license": "LGPL-3.0-or-later",
|
|
5
|
-
"version": "1.8.1",
|
|
5
|
+
"version": "1.8.2-next.1",
|
|
6
6
|
"private": false,
|
|
7
7
|
"description": "Native Components for a boilerplate React GUI",
|
|
8
8
|
"author": "wallzero @wallzeroblog (http://wallzero.com)",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"build:prod": "run-p build:cjs:prod build:esm:prod",
|
|
35
35
|
"build:cjs:prod": "tsc -p ./tsconfig.cjs.json",
|
|
36
36
|
"build:esm:prod": "tsc -p ./tsconfig.json",
|
|
37
|
-
"build:watch": "tsc -p ./tsconfig.json --watch --pretty --preserveWatchOutput",
|
|
37
|
+
"build:watch": "tsc -p ./tsconfig.cjs.json --watch --pretty --preserveWatchOutput",
|
|
38
38
|
"----------------------------------------------------------------": "",
|
|
39
39
|
"build:prod:config": "",
|
|
40
40
|
"---------------------------------------------------------------": "",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"@digest/jest-typescript": "^4.14.14",
|
|
54
54
|
"@digest/typescript": "^4.14.14",
|
|
55
55
|
"@types/jest": "^30.0.0",
|
|
56
|
-
"@types/react": "^19.2.
|
|
56
|
+
"@types/react": "^19.2.14",
|
|
57
57
|
"@types/react-native": "^0.73.0",
|
|
58
58
|
"@types/react-test-renderer": "^19.1.0",
|
|
59
59
|
"cross-env": "^10.1.0",
|
|
@@ -61,17 +61,17 @@
|
|
|
61
61
|
"jest-environment-jsdom-global": "^4.0.0",
|
|
62
62
|
"npm-run-all": "^4.1.5",
|
|
63
63
|
"react": "^19.2.4",
|
|
64
|
-
"react-native": "^0.
|
|
64
|
+
"react-native": "^0.84.0",
|
|
65
65
|
"react-native-pager-view": "^6.9.1",
|
|
66
|
-
"react-native-reanimated": "^4.2.
|
|
66
|
+
"react-native-reanimated": "^4.2.2",
|
|
67
67
|
"react-native-tab-view": "^4.2.2",
|
|
68
|
-
"react-native-worklets": "^0.7.
|
|
68
|
+
"react-native-worklets": "^0.7.4",
|
|
69
69
|
"react-test-renderer": "^19.2.4",
|
|
70
|
-
"rimraf": "^6.1.
|
|
70
|
+
"rimraf": "^6.1.3"
|
|
71
71
|
},
|
|
72
72
|
"dependencies": {
|
|
73
|
-
"@dgui/react-native-shared": "1.8.1",
|
|
74
|
-
"@dgui/react-shared": "1.8.1"
|
|
73
|
+
"@dgui/react-native-shared": "1.8.2-next.1",
|
|
74
|
+
"@dgui/react-shared": "1.8.2-next.1"
|
|
75
75
|
},
|
|
76
76
|
"peerDependencies": {
|
|
77
77
|
"react": "^18.0.0 || ^19.0.0",
|
|
@@ -89,5 +89,5 @@
|
|
|
89
89
|
"react-native",
|
|
90
90
|
"typescript"
|
|
91
91
|
],
|
|
92
|
-
"gitHead": "
|
|
92
|
+
"gitHead": "5d6723a1e976333a7be9f892288ceafc286aca75"
|
|
93
93
|
}
|