@react-navigation/drawer 6.6.2 → 7.0.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.
- package/lib/commonjs/index.js +24 -27
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/navigators/createDrawerNavigator.js +8 -49
- package/lib/commonjs/navigators/createDrawerNavigator.js.map +1 -1
- package/lib/commonjs/utils/DrawerPositionContext.js +3 -3
- package/lib/commonjs/utils/DrawerPositionContext.js.map +1 -1
- package/lib/commonjs/utils/DrawerStatusContext.js +2 -3
- package/lib/commonjs/utils/DrawerStatusContext.js.map +1 -1
- package/lib/commonjs/utils/getDrawerStatusFromState.js +1 -1
- package/lib/commonjs/utils/getDrawerStatusFromState.js.map +1 -1
- package/lib/commonjs/utils/useDrawerStatus.js +3 -4
- package/lib/commonjs/utils/useDrawerStatus.js.map +1 -1
- package/lib/commonjs/views/DrawerContent.js +5 -6
- package/lib/commonjs/views/DrawerContent.js.map +1 -1
- package/lib/commonjs/views/DrawerContentScrollView.js +6 -7
- package/lib/commonjs/views/DrawerContentScrollView.js.map +1 -1
- package/lib/commonjs/views/DrawerItem.js +14 -10
- package/lib/commonjs/views/DrawerItem.js.map +1 -1
- package/lib/commonjs/views/DrawerItemList.js +9 -10
- package/lib/commonjs/views/DrawerItemList.js.map +1 -1
- package/lib/commonjs/views/DrawerToggleButton.js +1 -1
- package/lib/commonjs/views/DrawerToggleButton.js.map +1 -1
- package/lib/commonjs/views/DrawerView.js +78 -73
- package/lib/commonjs/views/DrawerView.js.map +1 -1
- package/lib/module/index.js +11 -13
- package/lib/module/index.js.map +1 -1
- package/lib/module/navigators/createDrawerNavigator.js +5 -45
- package/lib/module/navigators/createDrawerNavigator.js.map +1 -1
- package/lib/module/utils/DrawerPositionContext.js +1 -1
- package/lib/module/utils/DrawerPositionContext.js.map +1 -1
- package/lib/module/utils/DrawerStatusContext.js +1 -2
- package/lib/module/utils/DrawerStatusContext.js.map +1 -1
- package/lib/module/utils/getDrawerStatusFromState.js +1 -1
- package/lib/module/utils/getDrawerStatusFromState.js.map +1 -1
- package/lib/module/utils/useDrawerStatus.js +2 -2
- package/lib/module/utils/useDrawerStatus.js.map +1 -1
- package/lib/module/views/DrawerContent.js +3 -3
- package/lib/module/views/DrawerContent.js.map +1 -1
- package/lib/module/views/DrawerContentScrollView.js +3 -3
- package/lib/module/views/DrawerContentScrollView.js.map +1 -1
- package/lib/module/views/DrawerItem.js +15 -11
- package/lib/module/views/DrawerItem.js.map +1 -1
- package/lib/module/views/DrawerItemList.js +9 -9
- package/lib/module/views/DrawerItemList.js.map +1 -1
- package/lib/module/views/DrawerToggleButton.js +1 -1
- package/lib/module/views/DrawerToggleButton.js.map +1 -1
- package/lib/module/views/DrawerView.js +72 -67
- package/lib/module/views/DrawerView.js.map +1 -1
- package/lib/typescript/src/index.d.ts +11 -13
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/navigators/createDrawerNavigator.d.ts +9 -4
- package/lib/typescript/src/navigators/createDrawerNavigator.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +51 -16
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/utils/DrawerPositionContext.d.ts +1 -2
- package/lib/typescript/src/utils/DrawerPositionContext.d.ts.map +1 -1
- package/lib/typescript/src/utils/DrawerStatusContext.d.ts +1 -2
- package/lib/typescript/src/utils/DrawerStatusContext.d.ts.map +1 -1
- package/lib/typescript/src/utils/getDrawerStatusFromState.d.ts +1 -1
- package/lib/typescript/src/utils/getDrawerStatusFromState.d.ts.map +1 -1
- package/lib/typescript/src/utils/useDrawerStatus.d.ts +1 -1
- package/lib/typescript/src/utils/useDrawerStatus.d.ts.map +1 -1
- package/lib/typescript/src/views/DrawerContent.d.ts +1 -1
- package/lib/typescript/src/views/DrawerContent.d.ts.map +1 -1
- package/lib/typescript/src/views/DrawerContentScrollView.d.ts +1 -2
- package/lib/typescript/src/views/DrawerContentScrollView.d.ts.map +1 -1
- package/lib/typescript/src/views/DrawerItem.d.ts +11 -6
- package/lib/typescript/src/views/DrawerItem.d.ts.map +1 -1
- package/lib/typescript/src/views/DrawerItemList.d.ts +2 -2
- package/lib/typescript/src/views/DrawerItemList.d.ts.map +1 -1
- package/lib/typescript/src/views/DrawerToggleButton.d.ts +2 -2
- package/lib/typescript/src/views/DrawerToggleButton.d.ts.map +1 -1
- package/lib/typescript/src/views/DrawerView.d.ts +2 -2
- package/lib/typescript/src/views/DrawerView.d.ts.map +1 -1
- package/lib/typescript/src/views/ScreenFallback.d.ts +1 -1
- package/lib/typescript/src/views/ScreenFallback.d.ts.map +1 -1
- package/package.json +15 -14
- package/src/index.tsx +15 -13
- package/src/navigators/createDrawerNavigator.tsx +4 -74
- package/src/types.tsx +24 -3
- package/src/utils/DrawerPositionContext.tsx +3 -1
- package/src/utils/DrawerStatusContext.tsx +3 -5
- package/src/utils/getDrawerStatusFromState.tsx +1 -1
- package/src/utils/useDrawerStatus.tsx +2 -2
- package/src/views/DrawerContent.tsx +3 -3
- package/src/views/DrawerContentScrollView.tsx +5 -3
- package/src/views/DrawerItem.tsx +23 -20
- package/src/views/DrawerItemList.tsx +7 -10
- package/src/views/DrawerToggleButton.tsx +1 -1
- package/src/views/DrawerView.tsx +68 -78
- package/lib/commonjs/utils/DrawerGestureContext.js +0 -12
- package/lib/commonjs/utils/DrawerGestureContext.js.map +0 -1
- package/lib/commonjs/utils/DrawerProgressContext.js +0 -12
- package/lib/commonjs/utils/DrawerProgressContext.js.map +0 -1
- package/lib/commonjs/utils/useDrawerProgress.js +0 -19
- package/lib/commonjs/utils/useDrawerProgress.js.map +0 -1
- package/lib/commonjs/views/GestureHandler.android.js +0 -17
- package/lib/commonjs/views/GestureHandler.android.js.map +0 -1
- package/lib/commonjs/views/GestureHandler.ios.js +0 -17
- package/lib/commonjs/views/GestureHandler.ios.js.map +0 -1
- package/lib/commonjs/views/GestureHandler.js +0 -32
- package/lib/commonjs/views/GestureHandler.js.map +0 -1
- package/lib/commonjs/views/GestureHandlerNative.js +0 -37
- package/lib/commonjs/views/GestureHandlerNative.js.map +0 -1
- package/lib/commonjs/views/legacy/Drawer.js +0 -438
- package/lib/commonjs/views/legacy/Drawer.js.map +0 -1
- package/lib/commonjs/views/legacy/Overlay.js +0 -74
- package/lib/commonjs/views/legacy/Overlay.js.map +0 -1
- package/lib/commonjs/views/modern/Drawer.js +0 -304
- package/lib/commonjs/views/modern/Drawer.js.map +0 -1
- package/lib/commonjs/views/modern/Overlay.js +0 -69
- package/lib/commonjs/views/modern/Overlay.js.map +0 -1
- package/lib/module/utils/DrawerGestureContext.js +0 -3
- package/lib/module/utils/DrawerGestureContext.js.map +0 -1
- package/lib/module/utils/DrawerProgressContext.js +0 -3
- package/lib/module/utils/DrawerProgressContext.js.map +0 -1
- package/lib/module/utils/useDrawerProgress.js +0 -10
- package/lib/module/utils/useDrawerProgress.js.map +0 -1
- package/lib/module/views/GestureHandler.android.js +0 -2
- package/lib/module/views/GestureHandler.android.js.map +0 -1
- package/lib/module/views/GestureHandler.ios.js +0 -2
- package/lib/module/views/GestureHandler.ios.js.map +0 -1
- package/lib/module/views/GestureHandler.js +0 -20
- package/lib/module/views/GestureHandler.js.map +0 -1
- package/lib/module/views/GestureHandlerNative.js +0 -11
- package/lib/module/views/GestureHandlerNative.js.map +0 -1
- package/lib/module/views/legacy/Drawer.js +0 -428
- package/lib/module/views/legacy/Drawer.js.map +0 -1
- package/lib/module/views/legacy/Overlay.js +0 -64
- package/lib/module/views/legacy/Overlay.js.map +0 -1
- package/lib/module/views/modern/Drawer.js +0 -295
- package/lib/module/views/modern/Drawer.js.map +0 -1
- package/lib/module/views/modern/Overlay.js +0 -60
- package/lib/module/views/modern/Overlay.js.map +0 -1
- package/lib/typescript/src/utils/DrawerGestureContext.d.ts +0 -4
- package/lib/typescript/src/utils/DrawerGestureContext.d.ts.map +0 -1
- package/lib/typescript/src/utils/DrawerProgressContext.d.ts +0 -5
- package/lib/typescript/src/utils/DrawerProgressContext.d.ts.map +0 -1
- package/lib/typescript/src/utils/useDrawerProgress.d.ts +0 -3
- package/lib/typescript/src/utils/useDrawerProgress.d.ts.map +0 -1
- package/lib/typescript/src/views/GestureHandler.android.d.ts +0 -2
- package/lib/typescript/src/views/GestureHandler.android.d.ts.map +0 -1
- package/lib/typescript/src/views/GestureHandler.d.ts +0 -15
- package/lib/typescript/src/views/GestureHandler.d.ts.map +0 -1
- package/lib/typescript/src/views/GestureHandler.ios.d.ts +0 -2
- package/lib/typescript/src/views/GestureHandler.ios.d.ts.map +0 -1
- package/lib/typescript/src/views/GestureHandlerNative.d.ts +0 -6
- package/lib/typescript/src/views/GestureHandlerNative.d.ts.map +0 -1
- package/lib/typescript/src/views/legacy/Drawer.d.ts +0 -45
- package/lib/typescript/src/views/legacy/Drawer.d.ts.map +0 -1
- package/lib/typescript/src/views/legacy/Overlay.d.ts +0 -75
- package/lib/typescript/src/views/legacy/Overlay.d.ts.map +0 -1
- package/lib/typescript/src/views/modern/Drawer.d.ts +0 -4
- package/lib/typescript/src/views/modern/Drawer.d.ts.map +0 -1
- package/lib/typescript/src/views/modern/Overlay.d.ts +0 -75
- package/lib/typescript/src/views/modern/Overlay.d.ts.map +0 -1
- package/src/utils/DrawerGestureContext.tsx +0 -3
- package/src/utils/DrawerProgressContext.tsx +0 -6
- package/src/utils/useDrawerProgress.tsx +0 -18
- package/src/views/GestureHandler.android.tsx +0 -1
- package/src/views/GestureHandler.ios.tsx +0 -1
- package/src/views/GestureHandler.tsx +0 -29
- package/src/views/GestureHandlerNative.tsx +0 -24
- package/src/views/legacy/Drawer.tsx +0 -672
- package/src/views/legacy/Overlay.tsx +0 -87
- package/src/views/modern/Drawer.tsx +0 -425
- package/src/views/modern/Overlay.tsx +0 -82
|
@@ -3,77 +3,46 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.DrawerView = DrawerView;
|
|
7
7
|
var _elements = require("@react-navigation/elements");
|
|
8
8
|
var _native = require("@react-navigation/native");
|
|
9
9
|
var React = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _reactNative = require("react-native");
|
|
11
|
-
var
|
|
11
|
+
var _reactNativeDrawerLayout = require("react-native-drawer-layout");
|
|
12
12
|
var _reactNativeSafeAreaContext = require("react-native-safe-area-context");
|
|
13
|
-
var
|
|
14
|
-
var
|
|
15
|
-
var
|
|
16
|
-
var
|
|
17
|
-
var
|
|
18
|
-
var
|
|
13
|
+
var _useLatestCallback = _interopRequireDefault(require("use-latest-callback"));
|
|
14
|
+
var _DrawerPositionContext = require("../utils/DrawerPositionContext");
|
|
15
|
+
var _DrawerStatusContext = require("../utils/DrawerStatusContext");
|
|
16
|
+
var _getDrawerStatusFromState = require("../utils/getDrawerStatusFromState");
|
|
17
|
+
var _DrawerContent = require("./DrawerContent");
|
|
18
|
+
var _DrawerToggleButton = require("./DrawerToggleButton");
|
|
19
19
|
var _ScreenFallback = require("./ScreenFallback");
|
|
20
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
21
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
22
22
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
23
|
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); }
|
|
24
|
-
|
|
25
|
-
let {
|
|
26
|
-
height,
|
|
27
|
-
width
|
|
28
|
-
} = _ref;
|
|
29
|
-
/*
|
|
30
|
-
* Default drawer width is screen width - header height
|
|
31
|
-
* with a max width of 280 on mobile and 320 on tablet
|
|
32
|
-
* https://material.io/components/navigation-drawer
|
|
33
|
-
*/
|
|
34
|
-
const smallerAxisSize = Math.min(height, width);
|
|
35
|
-
const isLandscape = width > height;
|
|
36
|
-
const isTablet = smallerAxisSize >= 600;
|
|
37
|
-
const appBarHeight = _reactNative.Platform.OS === 'ios' ? isLandscape ? 32 : 44 : 56;
|
|
38
|
-
const maxWidth = isTablet ? 320 : 280;
|
|
39
|
-
return Math.min(smallerAxisSize - appBarHeight, maxWidth);
|
|
40
|
-
};
|
|
41
|
-
const GestureHandlerWrapper = _GestureHandler.GestureHandlerRootView ?? _reactNative.View;
|
|
42
|
-
function DrawerViewBase(_ref2) {
|
|
43
|
-
var _Reanimated$isConfigu;
|
|
24
|
+
function DrawerViewBase(_ref) {
|
|
44
25
|
let {
|
|
45
26
|
state,
|
|
46
27
|
navigation,
|
|
47
28
|
descriptors,
|
|
48
29
|
defaultStatus,
|
|
49
|
-
drawerContent = props => /*#__PURE__*/React.createElement(_DrawerContent.
|
|
50
|
-
detachInactiveScreens = _reactNative.Platform.OS === 'web' || _reactNative.Platform.OS === 'android' || _reactNative.Platform.OS === 'ios'
|
|
51
|
-
|
|
52
|
-
// @ts-expect-error: the type definitions are incomplete
|
|
53
|
-
useLegacyImplementation = !((_Reanimated$isConfigu = Reanimated.isConfigured) !== null && _Reanimated$isConfigu !== void 0 && _Reanimated$isConfigu.call(Reanimated))
|
|
54
|
-
} = _ref2;
|
|
55
|
-
// Reanimated v3 dropped legacy v1 syntax
|
|
56
|
-
const legacyImplemenationNotAvailable = require('react-native-reanimated').abs === undefined;
|
|
57
|
-
if (useLegacyImplementation && legacyImplemenationNotAvailable) {
|
|
58
|
-
throw new Error('The `useLegacyImplementation` prop is not available with Reanimated 3 as it no longer includes support for Reanimated 1 legacy API. Remove the `useLegacyImplementation` prop from `Drawer.Navigator` to be able to use it.');
|
|
59
|
-
}
|
|
60
|
-
const Drawer = useLegacyImplementation ? require('./legacy/Drawer').default : require('./modern/Drawer').default;
|
|
30
|
+
drawerContent = props => /*#__PURE__*/React.createElement(_DrawerContent.DrawerContent, props),
|
|
31
|
+
detachInactiveScreens = _reactNative.Platform.OS === 'web' || _reactNative.Platform.OS === 'android' || _reactNative.Platform.OS === 'ios'
|
|
32
|
+
} = _ref;
|
|
61
33
|
const focusedRouteKey = state.routes[state.index].key;
|
|
62
34
|
const {
|
|
63
|
-
drawerHideStatusBarOnOpen
|
|
35
|
+
drawerHideStatusBarOnOpen,
|
|
64
36
|
drawerPosition = _reactNative.I18nManager.getConstants().isRTL ? 'right' : 'left',
|
|
65
|
-
drawerStatusBarAnimation
|
|
37
|
+
drawerStatusBarAnimation,
|
|
66
38
|
drawerStyle,
|
|
67
|
-
drawerType
|
|
68
|
-
ios: 'slide',
|
|
69
|
-
default: 'front'
|
|
70
|
-
}),
|
|
39
|
+
drawerType,
|
|
71
40
|
gestureHandlerProps,
|
|
72
|
-
keyboardDismissMode
|
|
41
|
+
keyboardDismissMode,
|
|
73
42
|
overlayColor = 'rgba(0, 0, 0, 0.5)',
|
|
74
|
-
swipeEdgeWidth
|
|
43
|
+
swipeEdgeWidth,
|
|
75
44
|
swipeEnabled = _reactNative.Platform.OS !== 'web' && _reactNative.Platform.OS !== 'windows' && _reactNative.Platform.OS !== 'macos',
|
|
76
|
-
swipeMinDistance
|
|
45
|
+
swipeMinDistance,
|
|
77
46
|
overlayAccessibilityLabel
|
|
78
47
|
} = descriptors[focusedRouteKey].options;
|
|
79
48
|
const [loaded, setLoaded] = React.useState([focusedRouteKey]);
|
|
@@ -84,19 +53,55 @@ function DrawerViewBase(_ref2) {
|
|
|
84
53
|
const {
|
|
85
54
|
colors
|
|
86
55
|
} = (0, _native.useTheme)();
|
|
87
|
-
const drawerStatus = (0, _getDrawerStatusFromState.
|
|
88
|
-
const handleDrawerOpen =
|
|
56
|
+
const drawerStatus = (0, _getDrawerStatusFromState.getDrawerStatusFromState)(state);
|
|
57
|
+
const handleDrawerOpen = (0, _useLatestCallback.default)(() => {
|
|
89
58
|
navigation.dispatch({
|
|
90
59
|
..._native.DrawerActions.openDrawer(),
|
|
91
60
|
target: state.key
|
|
92
61
|
});
|
|
93
|
-
}
|
|
94
|
-
const handleDrawerClose =
|
|
62
|
+
});
|
|
63
|
+
const handleDrawerClose = (0, _useLatestCallback.default)(() => {
|
|
95
64
|
navigation.dispatch({
|
|
96
65
|
..._native.DrawerActions.closeDrawer(),
|
|
97
66
|
target: state.key
|
|
98
67
|
});
|
|
99
|
-
}
|
|
68
|
+
});
|
|
69
|
+
const handleGestureStart = (0, _useLatestCallback.default)(() => {
|
|
70
|
+
navigation.emit({
|
|
71
|
+
type: 'gestureStart',
|
|
72
|
+
target: state.key
|
|
73
|
+
});
|
|
74
|
+
});
|
|
75
|
+
const handleGestureEnd = (0, _useLatestCallback.default)(() => {
|
|
76
|
+
navigation.emit({
|
|
77
|
+
type: 'gestureEnd',
|
|
78
|
+
target: state.key
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
const handleGestureCancel = (0, _useLatestCallback.default)(() => {
|
|
82
|
+
navigation.emit({
|
|
83
|
+
type: 'gestureCancel',
|
|
84
|
+
target: state.key
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
const handleTransitionStart = (0, _useLatestCallback.default)(closing => {
|
|
88
|
+
navigation.emit({
|
|
89
|
+
type: 'transitionStart',
|
|
90
|
+
data: {
|
|
91
|
+
closing
|
|
92
|
+
},
|
|
93
|
+
target: state.key
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
const handleTransitionEnd = (0, _useLatestCallback.default)(closing => {
|
|
97
|
+
navigation.emit({
|
|
98
|
+
type: 'transitionEnd',
|
|
99
|
+
data: {
|
|
100
|
+
closing
|
|
101
|
+
},
|
|
102
|
+
target: state.key
|
|
103
|
+
});
|
|
104
|
+
});
|
|
100
105
|
React.useEffect(() => {
|
|
101
106
|
if (drawerStatus === defaultStatus || drawerType === 'permanent') {
|
|
102
107
|
return;
|
|
@@ -137,7 +142,7 @@ function DrawerViewBase(_ref2) {
|
|
|
137
142
|
};
|
|
138
143
|
}, [defaultStatus, drawerStatus, drawerType, handleDrawerClose, handleDrawerOpen, navigation]);
|
|
139
144
|
const renderDrawerContent = () => {
|
|
140
|
-
return /*#__PURE__*/React.createElement(_DrawerPositionContext.
|
|
145
|
+
return /*#__PURE__*/React.createElement(_DrawerPositionContext.DrawerPositionContext.Provider, {
|
|
141
146
|
value: drawerPosition
|
|
142
147
|
}, drawerContent({
|
|
143
148
|
state: state,
|
|
@@ -166,15 +171,15 @@ function DrawerViewBase(_ref2) {
|
|
|
166
171
|
}
|
|
167
172
|
const {
|
|
168
173
|
freezeOnBlur,
|
|
169
|
-
header =
|
|
174
|
+
header = _ref2 => {
|
|
170
175
|
let {
|
|
171
176
|
layout,
|
|
172
177
|
options
|
|
173
|
-
} =
|
|
178
|
+
} = _ref2;
|
|
174
179
|
return /*#__PURE__*/React.createElement(_elements.Header, _extends({}, options, {
|
|
175
180
|
layout: layout,
|
|
176
181
|
title: (0, _elements.getHeaderTitle)(options, route.name),
|
|
177
|
-
headerLeft: options.headerLeft ?? (props => /*#__PURE__*/React.createElement(_DrawerToggleButton.
|
|
182
|
+
headerLeft: options.headerLeft ?? (props => /*#__PURE__*/React.createElement(_DrawerToggleButton.DrawerToggleButton, props))
|
|
178
183
|
}));
|
|
179
184
|
},
|
|
180
185
|
headerShown,
|
|
@@ -207,17 +212,22 @@ function DrawerViewBase(_ref2) {
|
|
|
207
212
|
}, descriptor.render()));
|
|
208
213
|
}));
|
|
209
214
|
};
|
|
210
|
-
return /*#__PURE__*/React.createElement(_DrawerStatusContext.
|
|
215
|
+
return /*#__PURE__*/React.createElement(_DrawerStatusContext.DrawerStatusContext.Provider, {
|
|
211
216
|
value: drawerStatus
|
|
212
|
-
}, /*#__PURE__*/React.createElement(Drawer, {
|
|
217
|
+
}, /*#__PURE__*/React.createElement(_reactNativeDrawerLayout.Drawer, {
|
|
213
218
|
open: drawerStatus !== 'closed',
|
|
214
219
|
onOpen: handleDrawerOpen,
|
|
215
220
|
onClose: handleDrawerClose,
|
|
221
|
+
onGestureStart: handleGestureStart,
|
|
222
|
+
onGestureEnd: handleGestureEnd,
|
|
223
|
+
onGestureCancel: handleGestureCancel,
|
|
224
|
+
onTransitionStart: handleTransitionStart,
|
|
225
|
+
onTransitionEnd: handleTransitionEnd,
|
|
226
|
+
layout: dimensions,
|
|
216
227
|
gestureHandlerProps: gestureHandlerProps,
|
|
217
228
|
swipeEnabled: swipeEnabled,
|
|
218
229
|
swipeEdgeWidth: swipeEdgeWidth,
|
|
219
|
-
|
|
220
|
-
swipeDistanceThreshold: swipeMinDistance,
|
|
230
|
+
swipeMinDistance: swipeMinDistance,
|
|
221
231
|
hideStatusBarOnOpen: drawerHideStatusBarOnOpen,
|
|
222
232
|
statusBarAnimation: drawerStatusBarAnimation,
|
|
223
233
|
keyboardDismissMode: keyboardDismissMode,
|
|
@@ -225,7 +235,6 @@ function DrawerViewBase(_ref2) {
|
|
|
225
235
|
overlayAccessibilityLabel: overlayAccessibilityLabel,
|
|
226
236
|
drawerPosition: drawerPosition,
|
|
227
237
|
drawerStyle: [{
|
|
228
|
-
width: getDefaultDrawerWidth(dimensions),
|
|
229
238
|
backgroundColor: colors.card
|
|
230
239
|
}, drawerType === 'permanent' && (drawerPosition === 'left' ? {
|
|
231
240
|
borderRightColor: colors.border,
|
|
@@ -237,21 +246,17 @@ function DrawerViewBase(_ref2) {
|
|
|
237
246
|
overlayStyle: {
|
|
238
247
|
backgroundColor: overlayColor
|
|
239
248
|
},
|
|
240
|
-
renderDrawerContent: renderDrawerContent
|
|
241
|
-
|
|
242
|
-
dimensions: dimensions
|
|
243
|
-
}));
|
|
249
|
+
renderDrawerContent: renderDrawerContent
|
|
250
|
+
}, renderSceneContent()));
|
|
244
251
|
}
|
|
245
|
-
function DrawerView(
|
|
252
|
+
function DrawerView(_ref3) {
|
|
246
253
|
let {
|
|
247
254
|
navigation,
|
|
248
255
|
...rest
|
|
249
|
-
} =
|
|
250
|
-
return /*#__PURE__*/React.createElement(_elements.SafeAreaProviderCompat, null, /*#__PURE__*/React.createElement(
|
|
251
|
-
style: styles.content
|
|
252
|
-
}, /*#__PURE__*/React.createElement(DrawerViewBase, _extends({
|
|
256
|
+
} = _ref3;
|
|
257
|
+
return /*#__PURE__*/React.createElement(_elements.SafeAreaProviderCompat, null, /*#__PURE__*/React.createElement(DrawerViewBase, _extends({
|
|
253
258
|
navigation: navigation
|
|
254
|
-
}, rest)))
|
|
259
|
+
}, rest)));
|
|
255
260
|
}
|
|
256
261
|
const styles = _reactNative.StyleSheet.create({
|
|
257
262
|
content: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["DrawerViewBase","state","navigation","descriptors","defaultStatus","drawerContent","props","detachInactiveScreens","Platform","OS","focusedRouteKey","routes","index","key","drawerHideStatusBarOnOpen","drawerPosition","I18nManager","getConstants","isRTL","drawerStatusBarAnimation","drawerStyle","drawerType","gestureHandlerProps","keyboardDismissMode","overlayColor","swipeEdgeWidth","swipeEnabled","swipeMinDistance","overlayAccessibilityLabel","options","loaded","setLoaded","React","useState","includes","dimensions","useSafeAreaFrame","colors","useTheme","drawerStatus","getDrawerStatusFromState","handleDrawerOpen","useLatestCallback","dispatch","DrawerActions","openDrawer","target","handleDrawerClose","closeDrawer","handleGestureStart","emit","type","handleGestureEnd","handleGestureCancel","handleTransitionStart","closing","data","handleTransitionEnd","useEffect","handleHardwareBack","isFocused","handleEscape","e","subscription","BackHandler","addEventListener","document","body","remove","removeEventListener","renderDrawerContent","renderSceneContent","styles","content","map","route","descriptor","lazy","unmountOnBlur","freezeOnBlur","header","layout","getHeaderTitle","name","headerLeft","headerShown","headerStatusBarHeight","headerTransparent","sceneContainerStyle","StyleSheet","absoluteFill","zIndex","render","backgroundColor","card","borderRightColor","border","borderRightWidth","hairlineWidth","borderLeftColor","borderLeftWidth","DrawerView","rest","create","flex"],"sourceRoot":"../../../src","sources":["views/DrawerView.tsx"],"mappings":"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"}
|
package/lib/module/index.js
CHANGED
|
@@ -1,27 +1,25 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Navigators
|
|
3
3
|
*/
|
|
4
|
-
export {
|
|
4
|
+
export { createDrawerNavigator } from './navigators/createDrawerNavigator';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Views
|
|
8
8
|
*/
|
|
9
|
-
export {
|
|
10
|
-
export {
|
|
11
|
-
export {
|
|
12
|
-
export {
|
|
13
|
-
export {
|
|
14
|
-
export {
|
|
9
|
+
export { DrawerContent } from './views/DrawerContent';
|
|
10
|
+
export { DrawerContentScrollView } from './views/DrawerContentScrollView';
|
|
11
|
+
export { DrawerItem } from './views/DrawerItem';
|
|
12
|
+
export { DrawerItemList } from './views/DrawerItemList';
|
|
13
|
+
export { DrawerToggleButton } from './views/DrawerToggleButton';
|
|
14
|
+
export { DrawerView } from './views/DrawerView';
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
17
|
* Utilities
|
|
18
18
|
*/
|
|
19
|
-
export {
|
|
20
|
-
export {
|
|
21
|
-
export {
|
|
22
|
-
export {
|
|
23
|
-
export { default as useDrawerProgress } from './utils/useDrawerProgress';
|
|
24
|
-
export { default as useDrawerStatus } from './utils/useDrawerStatus';
|
|
19
|
+
export { DrawerStatusContext } from './utils/DrawerStatusContext';
|
|
20
|
+
export { getDrawerStatusFromState } from './utils/getDrawerStatusFromState';
|
|
21
|
+
export { useDrawerStatus } from './utils/useDrawerStatus';
|
|
22
|
+
export { DrawerGestureContext, DrawerProgressContext, useDrawerProgress } from 'react-native-drawer-layout';
|
|
25
23
|
|
|
26
24
|
/**
|
|
27
25
|
* Types
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["createDrawerNavigator","DrawerContent","DrawerContentScrollView","DrawerItem","DrawerItemList","DrawerToggleButton","DrawerView","DrawerStatusContext","getDrawerStatusFromState","useDrawerStatus","DrawerGestureContext","DrawerProgressContext","useDrawerProgress"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,qBAAqB,QAAQ,oCAAoC;;AAE1E;AACA;AACA;AACA,SAASC,aAAa,QAAQ,uBAAuB;AACrD,SAASC,uBAAuB,QAAQ,iCAAiC;AACzE,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,kBAAkB,QAAQ,4BAA4B;AAC/D,SAASC,UAAU,QAAQ,oBAAoB;;AAE/C;AACA;AACA;AACA,SAASC,mBAAmB,QAAQ,6BAA6B;AACjE,SAASC,wBAAwB,QAAQ,kCAAkC;AAC3E,SAASC,eAAe,QAAQ,yBAAyB;AACzD,SACEC,oBAAoB,EACpBC,qBAAqB,EACrBC,iBAAiB,QACZ,4BAA4B;;AAEnC;AACA;AACA"}
|
|
@@ -1,57 +1,18 @@
|
|
|
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
|
import { createNavigatorFactory, DrawerRouter, useNavigationBuilder } from '@react-navigation/native';
|
|
3
3
|
import * as React from 'react';
|
|
4
|
-
import
|
|
5
|
-
import DrawerView from '../views/DrawerView';
|
|
4
|
+
import { DrawerView } from '../views/DrawerView';
|
|
6
5
|
function DrawerNavigator(_ref) {
|
|
7
6
|
let {
|
|
8
7
|
id,
|
|
9
8
|
initialRouteName,
|
|
10
|
-
defaultStatus
|
|
9
|
+
defaultStatus = 'closed',
|
|
11
10
|
backBehavior,
|
|
12
11
|
children,
|
|
13
12
|
screenListeners,
|
|
14
13
|
screenOptions,
|
|
15
|
-
...restWithDeprecated
|
|
16
|
-
} = _ref;
|
|
17
|
-
const {
|
|
18
|
-
// @ts-expect-error: openByDefault is deprecated
|
|
19
|
-
openByDefault,
|
|
20
|
-
// @ts-expect-error: lazy is deprecated
|
|
21
|
-
lazy,
|
|
22
|
-
// @ts-expect-error: drawerContentOptions is deprecated
|
|
23
|
-
drawerContentOptions,
|
|
24
14
|
...rest
|
|
25
|
-
} =
|
|
26
|
-
let defaultScreenOptions = {};
|
|
27
|
-
if (drawerContentOptions) {
|
|
28
|
-
Object.assign(defaultScreenOptions, {
|
|
29
|
-
drawerPosition: drawerContentOptions.drawerPosition,
|
|
30
|
-
drawerType: drawerContentOptions.drawerType,
|
|
31
|
-
swipeEdgeWidth: drawerContentOptions.edgeWidth,
|
|
32
|
-
drawerHideStatusBarOnOpen: drawerContentOptions.hideStatusBar,
|
|
33
|
-
keyboardDismissMode: drawerContentOptions.keyboardDismissMode,
|
|
34
|
-
swipeMinDistance: drawerContentOptions.minSwipeDistance,
|
|
35
|
-
overlayColor: drawerContentOptions.overlayColor,
|
|
36
|
-
drawerStatusBarAnimation: drawerContentOptions.statusBarAnimation,
|
|
37
|
-
gestureHandlerProps: drawerContentOptions.gestureHandlerProps
|
|
38
|
-
});
|
|
39
|
-
Object.keys(defaultScreenOptions).forEach(key => {
|
|
40
|
-
if (defaultScreenOptions[key] === undefined) {
|
|
41
|
-
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete
|
|
42
|
-
delete defaultScreenOptions[key];
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
warnOnce(drawerContentOptions, `Drawer Navigator: 'drawerContentOptions' is deprecated. Migrate the options to 'screenOptions' instead.\n\nPlace the following in 'screenOptions' in your code to keep current behavior:\n\n${JSON.stringify(defaultScreenOptions, null, 2)}\n\nSee https://reactnavigation.org/docs/drawer-navigator#options for more details.`);
|
|
46
|
-
}
|
|
47
|
-
if (typeof lazy === 'boolean') {
|
|
48
|
-
defaultScreenOptions.lazy = lazy;
|
|
49
|
-
warnOnce(true, `Drawer Navigator: 'lazy' in props is deprecated. Move it to 'screenOptions' instead.\n\nSee https://reactnavigation.org/docs/drawer-navigator/#lazy for more details.`);
|
|
50
|
-
}
|
|
51
|
-
if (typeof openByDefault === 'boolean') {
|
|
52
|
-
warnOnce(true, `Drawer Navigator: 'openByDefault' is deprecated. Use 'defaultStatus' and set it to 'open' or 'closed' instead.\n\nSee https://reactnavigation.org/docs/drawer-navigator/#defaultstatus for more details.`);
|
|
53
|
-
}
|
|
54
|
-
const defaultStatus = customDefaultStatus !== undefined ? customDefaultStatus : openByDefault ? 'open' : 'closed';
|
|
15
|
+
} = _ref;
|
|
55
16
|
const {
|
|
56
17
|
state,
|
|
57
18
|
descriptors,
|
|
@@ -64,8 +25,7 @@ function DrawerNavigator(_ref) {
|
|
|
64
25
|
backBehavior,
|
|
65
26
|
children,
|
|
66
27
|
screenListeners,
|
|
67
|
-
screenOptions
|
|
68
|
-
defaultScreenOptions
|
|
28
|
+
screenOptions
|
|
69
29
|
});
|
|
70
30
|
return /*#__PURE__*/React.createElement(NavigationContent, null, /*#__PURE__*/React.createElement(DrawerView, _extends({}, rest, {
|
|
71
31
|
defaultStatus: defaultStatus,
|
|
@@ -74,5 +34,5 @@ function DrawerNavigator(_ref) {
|
|
|
74
34
|
navigation: navigation
|
|
75
35
|
})));
|
|
76
36
|
}
|
|
77
|
-
export
|
|
37
|
+
export const createDrawerNavigator = createNavigatorFactory(DrawerNavigator);
|
|
78
38
|
//# sourceMappingURL=createDrawerNavigator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createNavigatorFactory","DrawerRouter","useNavigationBuilder","React","
|
|
1
|
+
{"version":3,"names":["createNavigatorFactory","DrawerRouter","useNavigationBuilder","React","DrawerView","DrawerNavigator","id","initialRouteName","defaultStatus","backBehavior","children","screenListeners","screenOptions","rest","state","descriptors","navigation","NavigationContent","createDrawerNavigator"],"sourceRoot":"../../../src","sources":["navigators/createDrawerNavigator.tsx"],"mappings":";AAAA,SACEA,sBAAsB,EAItBC,YAAY,EAGZC,oBAAoB,QACf,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAO9B,SAASC,UAAU,QAAQ,qBAAqB;AAWhD,SAASC,eAAe,OASd;EAAA,IATe;IACvBC,EAAE;IACFC,gBAAgB;IAChBC,aAAa,GAAG,QAAQ;IACxBC,YAAY;IACZC,QAAQ;IACRC,eAAe;IACfC,aAAa;IACb,GAAGC;EACE,CAAC;EACN,MAAM;IAAEC,KAAK;IAAEC,WAAW;IAAEC,UAAU;IAAEC;EAAkB,CAAC,GACzDf,oBAAoB,CAMlBD,YAAY,EAAE;IACdK,EAAE;IACFC,gBAAgB;IAChBC,aAAa;IACbC,YAAY;IACZC,QAAQ;IACRC,eAAe;IACfC;EACF,CAAC,CAAC;EAEJ,oBACE,oBAAC,iBAAiB,qBAChB,oBAAC,UAAU,eACLC,IAAI;IACR,aAAa,EAAEL,aAAc;IAC7B,KAAK,EAAEM,KAAM;IACb,WAAW,EAAEC,WAAY;IACzB,UAAU,EAAEC;EAAW,GACvB,CACgB;AAExB;AAEA,OAAO,MAAME,qBAAqB,GAAGlB,sBAAsB,CAKzDK,eAAe,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","createContext","undefined"],"sourceRoot":"../../../src","sources":["utils/DrawerPositionContext.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,
|
|
1
|
+
{"version":3,"names":["React","DrawerPositionContext","createContext","undefined"],"sourceRoot":"../../../src","sources":["utils/DrawerPositionContext.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,OAAO,MAAMC,qBAAqB,gBAAGD,KAAK,CAACE,aAAa,CAEtDC,SAAS,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
const DrawerStatusContext = /*#__PURE__*/React.createContext(undefined);
|
|
3
|
-
export default DrawerStatusContext;
|
|
2
|
+
export const DrawerStatusContext = /*#__PURE__*/React.createContext(undefined);
|
|
4
3
|
//# sourceMappingURL=DrawerStatusContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","DrawerStatusContext","createContext","undefined"],"sourceRoot":"../../../src","sources":["utils/DrawerStatusContext.tsx"],"mappings":"AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,MAAMC,mBAAmB,gBAAGD,KAAK,CAACE,aAAa,
|
|
1
|
+
{"version":3,"names":["React","DrawerStatusContext","createContext","undefined"],"sourceRoot":"../../../src","sources":["utils/DrawerStatusContext.tsx"],"mappings":"AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,OAAO,MAAMC,mBAAmB,gBAAGD,KAAK,CAACE,aAAa,CAEpDC,SAAS,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getDrawerStatusFromState","state","history","Error","entry","find","it","type","status","default"],"sourceRoot":"../../../src","sources":["utils/getDrawerStatusFromState.tsx"],"mappings":"AAMA,
|
|
1
|
+
{"version":3,"names":["getDrawerStatusFromState","state","history","Error","entry","find","it","type","status","default"],"sourceRoot":"../../../src","sources":["utils/getDrawerStatusFromState.tsx"],"mappings":"AAMA,OAAO,SAASA,wBAAwB,CACtCC,KAA2C,EAC7B;EACd,IAAIA,KAAK,CAACC,OAAO,IAAI,IAAI,EAAE;IACzB,MAAM,IAAIC,KAAK,CACb,sGAAsG,CACvG;EACH;EAEA,MAAMC,KAAK,GAAGH,KAAK,CAACC,OAAO,CAACG,IAAI,CAAEC,EAAE,IAAKA,EAAE,CAACC,IAAI,KAAK,QAAQ,CAEhD;EAEb,OAAO,CAAAH,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEI,MAAM,KAAIP,KAAK,CAACQ,OAAO,IAAI,QAAQ;AACnD"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import DrawerStatusContext from './DrawerStatusContext';
|
|
2
|
+
import { DrawerStatusContext } from './DrawerStatusContext';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Hook to detect if the drawer's status in a parent navigator.
|
|
6
6
|
* Returns 'open' if the drawer is open, 'closed' if the drawer is closed.
|
|
7
7
|
*/
|
|
8
|
-
export
|
|
8
|
+
export function useDrawerStatus() {
|
|
9
9
|
const drawerStatus = React.useContext(DrawerStatusContext);
|
|
10
10
|
if (drawerStatus === undefined) {
|
|
11
11
|
throw new Error("Couldn't find a drawer. Is your component inside a drawer navigator?");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","DrawerStatusContext","useDrawerStatus","drawerStatus","useContext","undefined","Error"],"sourceRoot":"../../../src","sources":["utils/useDrawerStatus.tsx"],"mappings":"AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,
|
|
1
|
+
{"version":3,"names":["React","DrawerStatusContext","useDrawerStatus","drawerStatus","useContext","undefined","Error"],"sourceRoot":"../../../src","sources":["utils/useDrawerStatus.tsx"],"mappings":"AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,SAASC,mBAAmB,QAAQ,uBAAuB;;AAE3D;AACA;AACA;AACA;AACA,OAAO,SAASC,eAAe,GAAiB;EAC9C,MAAMC,YAAY,GAAGH,KAAK,CAACI,UAAU,CAACH,mBAAmB,CAAC;EAE1D,IAAIE,YAAY,KAAKE,SAAS,EAAE;IAC9B,MAAM,IAAIC,KAAK,CACb,sEAAsE,CACvE;EACH;EAEA,OAAOH,YAAY;AACrB"}
|
|
@@ -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
|
import * as React from 'react';
|
|
3
|
-
import DrawerContentScrollView from './DrawerContentScrollView';
|
|
4
|
-
import DrawerItemList from './DrawerItemList';
|
|
5
|
-
export
|
|
3
|
+
import { DrawerContentScrollView } from './DrawerContentScrollView';
|
|
4
|
+
import { DrawerItemList } from './DrawerItemList';
|
|
5
|
+
export function DrawerContent(_ref) {
|
|
6
6
|
let {
|
|
7
7
|
descriptors,
|
|
8
8
|
state,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","DrawerContentScrollView","DrawerItemList","DrawerContent","descriptors","state","rest","focusedRoute","routes","index","focusedDescriptor","key","focusedOptions","options","drawerContentStyle","drawerContentContainerStyle"],"sourceRoot":"../../../src","sources":["views/DrawerContent.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAG9B,
|
|
1
|
+
{"version":3,"names":["React","DrawerContentScrollView","DrawerItemList","DrawerContent","descriptors","state","rest","focusedRoute","routes","index","focusedDescriptor","key","focusedOptions","options","drawerContentStyle","drawerContentContainerStyle"],"sourceRoot":"../../../src","sources":["views/DrawerContent.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAG9B,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,cAAc,QAAQ,kBAAkB;AAEjD,OAAO,SAASC,aAAa,OAIG;EAAA,IAJF;IAC5BC,WAAW;IACXC,KAAK;IACL,GAAGC;EACwB,CAAC;EAC5B,MAAMC,YAAY,GAAGF,KAAK,CAACG,MAAM,CAACH,KAAK,CAACI,KAAK,CAAC;EAC9C,MAAMC,iBAAiB,GAAGN,WAAW,CAACG,YAAY,CAACI,GAAG,CAAC;EACvD,MAAMC,cAAc,GAAGF,iBAAiB,CAACG,OAAO;EAEhD,MAAM;IAAEC,kBAAkB;IAAEC;EAA4B,CAAC,GAAGH,cAAc;EAE1E,oBACE,oBAAC,uBAAuB,eAClBN,IAAI;IACR,qBAAqB,EAAES,2BAA4B;IACnD,KAAK,EAAED;EAAmB,iBAE1B,oBAAC,cAAc;IAAC,WAAW,EAAEV,WAAY;IAAC,KAAK,EAAEC;EAAM,GAAKC,IAAI,EAAI,CAC5C;AAE9B"}
|
|
@@ -2,8 +2,8 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
|
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { I18nManager, ScrollView, StyleSheet } from 'react-native';
|
|
4
4
|
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
5
|
-
import DrawerPositionContext from '../utils/DrawerPositionContext';
|
|
6
|
-
function
|
|
5
|
+
import { DrawerPositionContext } from '../utils/DrawerPositionContext';
|
|
6
|
+
function DrawerContentScrollViewInner(_ref, ref) {
|
|
7
7
|
let {
|
|
8
8
|
contentContainerStyle,
|
|
9
9
|
style,
|
|
@@ -23,7 +23,7 @@ function DrawerContentScrollView(_ref, ref) {
|
|
|
23
23
|
style: [styles.container, style]
|
|
24
24
|
}), children);
|
|
25
25
|
}
|
|
26
|
-
export
|
|
26
|
+
export const DrawerContentScrollView = /*#__PURE__*/React.forwardRef(DrawerContentScrollViewInner);
|
|
27
27
|
const styles = StyleSheet.create({
|
|
28
28
|
container: {
|
|
29
29
|
flex: 1
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","I18nManager","ScrollView","StyleSheet","useSafeAreaInsets","DrawerPositionContext","
|
|
1
|
+
{"version":3,"names":["React","I18nManager","ScrollView","StyleSheet","useSafeAreaInsets","DrawerPositionContext","DrawerContentScrollViewInner","ref","contentContainerStyle","style","children","rest","drawerPosition","useContext","insets","isRight","getConstants","isRTL","paddingTop","top","paddingStart","left","paddingEnd","right","styles","container","DrawerContentScrollView","forwardRef","create","flex"],"sourceRoot":"../../../src","sources":["views/DrawerContentScrollView.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SACEC,WAAW,EACXC,UAAU,EAEVC,UAAU,QACL,cAAc;AACrB,SAASC,iBAAiB,QAAQ,gCAAgC;AAElE,SAASC,qBAAqB,QAAQ,gCAAgC;AAMtE,SAASC,4BAA4B,OAEnCC,GAA2B,EAC3B;EAAA,IAFA;IAAEC,qBAAqB;IAAEC,KAAK;IAAEC,QAAQ;IAAE,GAAGC;EAAY,CAAC;EAG1D,MAAMC,cAAc,GAAGZ,KAAK,CAACa,UAAU,CAACR,qBAAqB,CAAC;EAC9D,MAAMS,MAAM,GAAGV,iBAAiB,EAAE;EAElC,MAAMW,OAAO,GAAGd,WAAW,CAACe,YAAY,EAAE,CAACC,KAAK,GAC5CL,cAAc,KAAK,MAAM,GACzBA,cAAc,KAAK,OAAO;EAE9B,oBACE,oBAAC,UAAU,eACLD,IAAI;IACR,GAAG,EAAEJ,GAAI;IACT,qBAAqB,EAAE,CACrB;MACEW,UAAU,EAAEJ,MAAM,CAACK,GAAG,GAAG,CAAC;MAC1BC,YAAY,EAAE,CAACL,OAAO,GAAGD,MAAM,CAACO,IAAI,GAAG,CAAC;MACxCC,UAAU,EAAEP,OAAO,GAAGD,MAAM,CAACS,KAAK,GAAG;IACvC,CAAC,EACDf,qBAAqB,CACrB;IACF,KAAK,EAAE,CAACgB,MAAM,CAACC,SAAS,EAAEhB,KAAK;EAAE,IAEhCC,QAAQ,CACE;AAEjB;AAEA,OAAO,MAAMgB,uBAAuB,gBAAG1B,KAAK,CAAC2B,UAAU,CACrDrB,4BAA4B,CAC7B;AAED,MAAMkB,MAAM,GAAGrB,UAAU,CAACyB,MAAM,CAAC;EAC/BH,SAAS,EAAE;IACTI,IAAI,EAAE;EACR;AACF,CAAC,CAAC"}
|
|
@@ -1,26 +1,28 @@
|
|
|
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
|
import { PlatformPressable } from '@react-navigation/elements';
|
|
3
|
-
import { Link, useTheme } from '@react-navigation/native';
|
|
3
|
+
import { CommonActions, Link, useTheme } from '@react-navigation/native';
|
|
4
4
|
import Color from 'color';
|
|
5
5
|
import * as React from 'react';
|
|
6
6
|
import { Platform, StyleSheet, Text, View } from 'react-native';
|
|
7
7
|
const LinkPressable = _ref => {
|
|
8
8
|
let {
|
|
9
|
+
route,
|
|
10
|
+
href,
|
|
9
11
|
children,
|
|
10
12
|
style,
|
|
11
13
|
onPress,
|
|
12
14
|
onLongPress,
|
|
13
15
|
onPressIn,
|
|
14
16
|
onPressOut,
|
|
15
|
-
to,
|
|
16
17
|
accessibilityRole,
|
|
17
18
|
...rest
|
|
18
19
|
} = _ref;
|
|
19
|
-
if (Platform.OS === 'web'
|
|
20
|
+
if (Platform.OS === 'web') {
|
|
20
21
|
// React Native Web doesn't forward `onClick` if we use `TouchableWithoutFeedback`.
|
|
21
22
|
// We need to use `onClick` to be able to prevent default browser handling of links.
|
|
22
23
|
return /*#__PURE__*/React.createElement(Link, _extends({}, rest, {
|
|
23
|
-
|
|
24
|
+
href: href,
|
|
25
|
+
action: CommonActions.navigate(route.name, route.params),
|
|
24
26
|
style: [styles.button, style],
|
|
25
27
|
onPress: e => {
|
|
26
28
|
if (!(e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) && (
|
|
@@ -51,15 +53,17 @@ const LinkPressable = _ref => {
|
|
|
51
53
|
/**
|
|
52
54
|
* A component used to show an action item with an icon and a label in a navigation drawer.
|
|
53
55
|
*/
|
|
54
|
-
export
|
|
56
|
+
export function DrawerItem(props) {
|
|
55
57
|
const {
|
|
56
|
-
colors
|
|
58
|
+
colors,
|
|
59
|
+
fonts
|
|
57
60
|
} = useTheme();
|
|
58
61
|
const {
|
|
62
|
+
route,
|
|
63
|
+
href,
|
|
59
64
|
icon,
|
|
60
65
|
label,
|
|
61
66
|
labelStyle,
|
|
62
|
-
to,
|
|
63
67
|
focused = false,
|
|
64
68
|
allowFontScaling,
|
|
65
69
|
activeTintColor = colors.primary,
|
|
@@ -104,7 +108,8 @@ export default function DrawerItem(props) {
|
|
|
104
108
|
},
|
|
105
109
|
pressColor: pressColor,
|
|
106
110
|
pressOpacity: pressOpacity,
|
|
107
|
-
|
|
111
|
+
route: route,
|
|
112
|
+
href: href
|
|
108
113
|
}, /*#__PURE__*/React.createElement(React.Fragment, null, iconNode, /*#__PURE__*/React.createElement(View, {
|
|
109
114
|
style: [styles.label, {
|
|
110
115
|
marginLeft: iconNode ? 32 : 0,
|
|
@@ -114,9 +119,8 @@ export default function DrawerItem(props) {
|
|
|
114
119
|
numberOfLines: 1,
|
|
115
120
|
allowFontScaling: allowFontScaling,
|
|
116
121
|
style: [{
|
|
117
|
-
color
|
|
118
|
-
|
|
119
|
-
}, labelStyle]
|
|
122
|
+
color
|
|
123
|
+
}, fonts.medium, labelStyle]
|
|
120
124
|
}, label) : label({
|
|
121
125
|
color,
|
|
122
126
|
focused
|