react-native-drawer-layout 4.0.0-alpha.6 → 4.0.0-alpha.8
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/utils/getDrawerWidth.js +41 -0
- package/lib/commonjs/utils/getDrawerWidth.js.map +1 -0
- package/lib/commonjs/utils/useDrawerProgress.js.map +1 -1
- package/lib/commonjs/utils/useFakeSharedValue.js +46 -0
- package/lib/commonjs/utils/useFakeSharedValue.js.map +1 -0
- package/lib/commonjs/views/Drawer.js +51 -283
- package/lib/commonjs/views/Drawer.js.map +1 -1
- package/lib/commonjs/views/Drawer.native.js +313 -0
- package/lib/commonjs/views/Drawer.native.js.map +1 -0
- package/lib/commonjs/views/Overlay.js +22 -39
- package/lib/commonjs/views/Overlay.js.map +1 -1
- package/lib/commonjs/views/Overlay.native.js +58 -0
- package/lib/commonjs/views/Overlay.native.js.map +1 -0
- package/lib/module/utils/getDrawerWidth.js +35 -0
- package/lib/module/utils/getDrawerWidth.js.map +1 -0
- package/lib/module/utils/useDrawerProgress.js.map +1 -1
- package/lib/module/utils/useFakeSharedValue.js +38 -0
- package/lib/module/utils/useFakeSharedValue.js.map +1 -0
- package/lib/module/views/Drawer.js +52 -282
- package/lib/module/views/Drawer.js.map +1 -1
- package/lib/module/views/Drawer.native.js +304 -0
- package/lib/module/views/Drawer.native.js.map +1 -0
- package/lib/module/views/Overlay.js +22 -39
- package/lib/module/views/Overlay.js.map +1 -1
- package/lib/module/views/Overlay.native.js +50 -0
- package/lib/module/views/Overlay.native.js.map +1 -0
- package/lib/typescript/src/types.d.ts +9 -2
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/utils/DrawerProgressContext.d.ts +2 -2
- package/lib/typescript/src/utils/DrawerProgressContext.d.ts.map +1 -1
- package/lib/typescript/src/utils/getDrawerWidth.d.ts +9 -0
- package/lib/typescript/src/utils/getDrawerWidth.d.ts.map +1 -0
- package/lib/typescript/src/utils/useDrawerProgress.d.ts +2 -2
- package/lib/typescript/src/utils/useDrawerProgress.d.ts.map +1 -1
- package/lib/typescript/src/utils/useFakeSharedValue.d.ts +17 -0
- package/lib/typescript/src/utils/useFakeSharedValue.d.ts.map +1 -0
- package/lib/typescript/src/views/Drawer.d.ts +1 -6
- package/lib/typescript/src/views/Drawer.d.ts.map +1 -1
- package/lib/typescript/src/views/Drawer.native.d.ts +4 -0
- package/lib/typescript/src/views/Drawer.native.d.ts.map +1 -0
- package/lib/typescript/src/views/Overlay.d.ts +2 -204
- package/lib/typescript/src/views/Overlay.d.ts.map +1 -1
- package/lib/typescript/src/views/Overlay.native.d.ts +4 -0
- package/lib/typescript/src/views/Overlay.native.d.ts.map +1 -0
- package/package.json +2 -2
- package/src/types.tsx +10 -1
- package/src/utils/DrawerProgressContext.tsx +2 -2
- package/src/utils/getDrawerWidth.tsx +39 -0
- package/src/utils/useDrawerProgress.tsx +2 -2
- package/src/utils/useFakeSharedValue.tsx +49 -0
- package/src/views/Drawer.native.tsx +450 -0
- package/src/views/Drawer.tsx +102 -434
- package/src/views/Overlay.native.tsx +63 -0
- package/src/views/Overlay.tsx +26 -59
|
@@ -0,0 +1,304 @@
|
|
|
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
|
+
import * as React from 'react';
|
|
3
|
+
import { I18nManager, InteractionManager, Keyboard, Platform, StatusBar, StyleSheet, useWindowDimensions, View } from 'react-native';
|
|
4
|
+
import Animated, { interpolate, runOnJS, useAnimatedGestureHandler, useAnimatedStyle, useDerivedValue, useSharedValue, withSpring } from 'react-native-reanimated';
|
|
5
|
+
import useLatestCallback from 'use-latest-callback';
|
|
6
|
+
import { DrawerProgressContext } from '../utils/DrawerProgressContext';
|
|
7
|
+
import { getDrawerWidth } from '../utils/getDrawerWidth';
|
|
8
|
+
import { GestureHandlerRootView, GestureState, PanGestureHandler } from './GestureHandler';
|
|
9
|
+
import { Overlay } from './Overlay';
|
|
10
|
+
const SWIPE_EDGE_WIDTH = 32;
|
|
11
|
+
const SWIPE_MIN_OFFSET = 5;
|
|
12
|
+
const SWIPE_MIN_DISTANCE = 60;
|
|
13
|
+
const SWIPE_MIN_VELOCITY = 500;
|
|
14
|
+
const minmax = (value, start, end) => {
|
|
15
|
+
'worklet';
|
|
16
|
+
|
|
17
|
+
return Math.min(Math.max(value, start), end);
|
|
18
|
+
};
|
|
19
|
+
export function Drawer(_ref) {
|
|
20
|
+
let {
|
|
21
|
+
layout: customLayout,
|
|
22
|
+
drawerPosition = I18nManager.getConstants().isRTL ? 'right' : 'left',
|
|
23
|
+
drawerStyle,
|
|
24
|
+
drawerType = 'front',
|
|
25
|
+
gestureHandlerProps,
|
|
26
|
+
hideStatusBarOnOpen = false,
|
|
27
|
+
keyboardDismissMode = 'on-drag',
|
|
28
|
+
onClose,
|
|
29
|
+
onOpen,
|
|
30
|
+
onGestureStart,
|
|
31
|
+
onGestureCancel,
|
|
32
|
+
onGestureEnd,
|
|
33
|
+
onTransitionStart,
|
|
34
|
+
onTransitionEnd,
|
|
35
|
+
open,
|
|
36
|
+
overlayStyle,
|
|
37
|
+
overlayAccessibilityLabel,
|
|
38
|
+
statusBarAnimation = 'slide',
|
|
39
|
+
swipeEnabled = Platform.OS !== 'web' && Platform.OS !== 'windows' && Platform.OS !== 'macos',
|
|
40
|
+
swipeEdgeWidth = SWIPE_EDGE_WIDTH,
|
|
41
|
+
swipeMinDistance = SWIPE_MIN_DISTANCE,
|
|
42
|
+
swipeMinVelocity = SWIPE_MIN_VELOCITY,
|
|
43
|
+
renderDrawerContent,
|
|
44
|
+
children,
|
|
45
|
+
style
|
|
46
|
+
} = _ref;
|
|
47
|
+
const windowDimensions = useWindowDimensions();
|
|
48
|
+
const layout = customLayout ?? windowDimensions;
|
|
49
|
+
const drawerWidth = getDrawerWidth({
|
|
50
|
+
layout,
|
|
51
|
+
drawerStyle
|
|
52
|
+
});
|
|
53
|
+
const isOpen = drawerType === 'permanent' ? true : open;
|
|
54
|
+
const isRight = drawerPosition === 'right';
|
|
55
|
+
const getDrawerTranslationX = React.useCallback(open => {
|
|
56
|
+
'worklet';
|
|
57
|
+
|
|
58
|
+
if (drawerPosition === 'left') {
|
|
59
|
+
return open ? 0 : -drawerWidth;
|
|
60
|
+
}
|
|
61
|
+
return open ? 0 : drawerWidth;
|
|
62
|
+
}, [drawerPosition, drawerWidth]);
|
|
63
|
+
const hideStatusBar = React.useCallback(hide => {
|
|
64
|
+
if (hideStatusBarOnOpen) {
|
|
65
|
+
StatusBar.setHidden(hide, statusBarAnimation);
|
|
66
|
+
}
|
|
67
|
+
}, [hideStatusBarOnOpen, statusBarAnimation]);
|
|
68
|
+
React.useEffect(() => {
|
|
69
|
+
hideStatusBar(isOpen);
|
|
70
|
+
return () => hideStatusBar(false);
|
|
71
|
+
}, [isOpen, hideStatusBarOnOpen, statusBarAnimation, hideStatusBar]);
|
|
72
|
+
const interactionHandleRef = React.useRef(null);
|
|
73
|
+
const startInteraction = () => {
|
|
74
|
+
interactionHandleRef.current = InteractionManager.createInteractionHandle();
|
|
75
|
+
};
|
|
76
|
+
const endInteraction = () => {
|
|
77
|
+
if (interactionHandleRef.current != null) {
|
|
78
|
+
InteractionManager.clearInteractionHandle(interactionHandleRef.current);
|
|
79
|
+
interactionHandleRef.current = null;
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
const hideKeyboard = () => {
|
|
83
|
+
if (keyboardDismissMode === 'on-drag') {
|
|
84
|
+
Keyboard.dismiss();
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
const onGestureBegin = () => {
|
|
88
|
+
onGestureStart?.();
|
|
89
|
+
startInteraction();
|
|
90
|
+
hideKeyboard();
|
|
91
|
+
hideStatusBar(true);
|
|
92
|
+
};
|
|
93
|
+
const onGestureFinish = () => {
|
|
94
|
+
onGestureEnd?.();
|
|
95
|
+
endInteraction();
|
|
96
|
+
};
|
|
97
|
+
const onGestureAbort = () => {
|
|
98
|
+
onGestureCancel?.();
|
|
99
|
+
endInteraction();
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
// FIXME: Currently hitSlop is broken when on Android when drawer is on right
|
|
103
|
+
// https://github.com/software-mansion/react-native-gesture-handler/issues/569
|
|
104
|
+
const hitSlop = isRight ?
|
|
105
|
+
// Extend hitSlop to the side of the screen when drawer is closed
|
|
106
|
+
// This lets the user drag the drawer from the side of the screen
|
|
107
|
+
{
|
|
108
|
+
right: 0,
|
|
109
|
+
width: isOpen ? undefined : swipeEdgeWidth
|
|
110
|
+
} : {
|
|
111
|
+
left: 0,
|
|
112
|
+
width: isOpen ? undefined : swipeEdgeWidth
|
|
113
|
+
};
|
|
114
|
+
const touchStartX = useSharedValue(0);
|
|
115
|
+
const touchX = useSharedValue(0);
|
|
116
|
+
const translationX = useSharedValue(getDrawerTranslationX(open));
|
|
117
|
+
const gestureState = useSharedValue(GestureState.UNDETERMINED);
|
|
118
|
+
const handleAnimationStart = useLatestCallback(open => {
|
|
119
|
+
onTransitionStart?.(!open);
|
|
120
|
+
});
|
|
121
|
+
const handleAnimationEnd = useLatestCallback((open, finished) => {
|
|
122
|
+
if (!finished) return;
|
|
123
|
+
onTransitionEnd?.(!open);
|
|
124
|
+
});
|
|
125
|
+
const toggleDrawer = React.useCallback((open, velocity) => {
|
|
126
|
+
'worklet';
|
|
127
|
+
|
|
128
|
+
const translateX = getDrawerTranslationX(open);
|
|
129
|
+
if (velocity === undefined) {
|
|
130
|
+
runOnJS(handleAnimationStart)(open);
|
|
131
|
+
}
|
|
132
|
+
touchStartX.value = 0;
|
|
133
|
+
touchX.value = 0;
|
|
134
|
+
translationX.value = withSpring(translateX, {
|
|
135
|
+
velocity,
|
|
136
|
+
stiffness: 1000,
|
|
137
|
+
damping: 500,
|
|
138
|
+
mass: 3,
|
|
139
|
+
overshootClamping: true,
|
|
140
|
+
restDisplacementThreshold: 0.01,
|
|
141
|
+
restSpeedThreshold: 0.01
|
|
142
|
+
}, finished => runOnJS(handleAnimationEnd)(open, finished));
|
|
143
|
+
if (open) {
|
|
144
|
+
runOnJS(onOpen)();
|
|
145
|
+
} else {
|
|
146
|
+
runOnJS(onClose)();
|
|
147
|
+
}
|
|
148
|
+
}, [getDrawerTranslationX, handleAnimationEnd, handleAnimationStart, onClose, onOpen, touchStartX, touchX, translationX]);
|
|
149
|
+
React.useEffect(() => toggleDrawer(open), [open, toggleDrawer]);
|
|
150
|
+
const onGestureEvent = useAnimatedGestureHandler({
|
|
151
|
+
onStart: (event, ctx) => {
|
|
152
|
+
ctx.hasCalledOnStart = false;
|
|
153
|
+
ctx.startX = translationX.value;
|
|
154
|
+
gestureState.value = event.state;
|
|
155
|
+
touchStartX.value = event.x;
|
|
156
|
+
},
|
|
157
|
+
onCancel: () => {
|
|
158
|
+
runOnJS(onGestureAbort)();
|
|
159
|
+
},
|
|
160
|
+
onActive: (event, ctx) => {
|
|
161
|
+
touchX.value = event.x;
|
|
162
|
+
translationX.value = ctx.startX + event.translationX;
|
|
163
|
+
gestureState.value = event.state;
|
|
164
|
+
|
|
165
|
+
// onStart will _always_ be called, even when the activation
|
|
166
|
+
// criteria isn't met yet. This makes sure onGestureBegin is only
|
|
167
|
+
// called when the criteria is really met.
|
|
168
|
+
if (!ctx.hasCalledOnStart) {
|
|
169
|
+
ctx.hasCalledOnStart = true;
|
|
170
|
+
runOnJS(onGestureBegin)();
|
|
171
|
+
}
|
|
172
|
+
},
|
|
173
|
+
onEnd: event => {
|
|
174
|
+
gestureState.value = event.state;
|
|
175
|
+
const nextOpen = Math.abs(event.translationX) > SWIPE_MIN_OFFSET && Math.abs(event.translationX) > swipeMinVelocity || Math.abs(event.translationX) > swipeMinDistance ? drawerPosition === 'left' ?
|
|
176
|
+
// If swiped to right, open the drawer, otherwise close it
|
|
177
|
+
(event.velocityX === 0 ? event.translationX : event.velocityX) > 0 :
|
|
178
|
+
// If swiped to left, open the drawer, otherwise close it
|
|
179
|
+
(event.velocityX === 0 ? event.translationX : event.velocityX) < 0 : open;
|
|
180
|
+
toggleDrawer(nextOpen, event.velocityX);
|
|
181
|
+
},
|
|
182
|
+
onFinish: () => {
|
|
183
|
+
runOnJS(onGestureFinish)();
|
|
184
|
+
}
|
|
185
|
+
});
|
|
186
|
+
const translateX = useDerivedValue(() => {
|
|
187
|
+
// Comment stolen from react-native-gesture-handler/DrawerLayout
|
|
188
|
+
//
|
|
189
|
+
// While closing the drawer when user starts gesture outside of its area (in greyed
|
|
190
|
+
// out part of the window), we want the drawer to follow only once finger reaches the
|
|
191
|
+
// edge of the drawer.
|
|
192
|
+
// E.g. on the diagram below drawer is illustrate by X signs and the greyed out area by
|
|
193
|
+
// dots. The touch gesture starts at '*' and moves left, touch path is indicated by
|
|
194
|
+
// an arrow pointing left
|
|
195
|
+
// 1) +---------------+ 2) +---------------+ 3) +---------------+ 4) +---------------+
|
|
196
|
+
// |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
|
|
197
|
+
// |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
|
|
198
|
+
// |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
|
|
199
|
+
// |XXXXXXXX|......| |XXXXXXXX|.<-*..| |XXXXXXXX|<--*..| |XXXXX|<-----*..|
|
|
200
|
+
// |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
|
|
201
|
+
// |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
|
|
202
|
+
// |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
|
|
203
|
+
// +---------------+ +---------------+ +---------------+ +---------------+
|
|
204
|
+
//
|
|
205
|
+
// For the above to work properly we define animated value that will keep start position
|
|
206
|
+
// of the gesture. Then we use that value to calculate how much we need to subtract from
|
|
207
|
+
// the translationX. If the gesture started on the greyed out area we take the distance from the
|
|
208
|
+
// edge of the drawer to the start position. Otherwise we don't subtract at all and the
|
|
209
|
+
// drawer be pulled back as soon as you start the pan.
|
|
210
|
+
//
|
|
211
|
+
// This is used only when drawerType is "front"
|
|
212
|
+
const touchDistance = drawerType === 'front' && gestureState.value === GestureState.ACTIVE ? minmax(drawerPosition === 'left' ? touchStartX.value - drawerWidth : layout.width - drawerWidth - touchStartX.value, 0, layout.width) : 0;
|
|
213
|
+
const translateX = drawerPosition === 'left' ? minmax(translationX.value + touchDistance, -drawerWidth, 0) : minmax(translationX.value - touchDistance, 0, drawerWidth);
|
|
214
|
+
return translateX;
|
|
215
|
+
});
|
|
216
|
+
const drawerAnimatedStyle = useAnimatedStyle(() => {
|
|
217
|
+
const distanceFromEdge = layout.width - drawerWidth;
|
|
218
|
+
return {
|
|
219
|
+
transform: drawerType === 'permanent' ?
|
|
220
|
+
// Reanimated needs the property to be present, but it results in Browser bug
|
|
221
|
+
// https://bugs.chromium.org/p/chromium/issues/detail?id=20574
|
|
222
|
+
[] : [{
|
|
223
|
+
translateX:
|
|
224
|
+
// The drawer stays in place when `drawerType` is `back`
|
|
225
|
+
(drawerType === 'back' ? 0 : translateX.value) + (drawerPosition === 'left' ? 0 : distanceFromEdge)
|
|
226
|
+
}]
|
|
227
|
+
};
|
|
228
|
+
});
|
|
229
|
+
const contentAnimatedStyle = useAnimatedStyle(() => {
|
|
230
|
+
return {
|
|
231
|
+
transform: drawerType === 'permanent' ?
|
|
232
|
+
// Reanimated needs the property to be present, but it results in Browser bug
|
|
233
|
+
// https://bugs.chromium.org/p/chromium/issues/detail?id=20574
|
|
234
|
+
[] : [{
|
|
235
|
+
translateX:
|
|
236
|
+
// The screen content stays in place when `drawerType` is `front`
|
|
237
|
+
drawerType === 'front' ? 0 : translateX.value + drawerWidth * (drawerPosition === 'left' ? 1 : -1)
|
|
238
|
+
}]
|
|
239
|
+
};
|
|
240
|
+
});
|
|
241
|
+
const progress = useDerivedValue(() => {
|
|
242
|
+
return drawerType === 'permanent' ? 1 : interpolate(translateX.value, [getDrawerTranslationX(false), getDrawerTranslationX(true)], [0, 1]);
|
|
243
|
+
});
|
|
244
|
+
return /*#__PURE__*/React.createElement(GestureHandlerRootView, {
|
|
245
|
+
style: [styles.container, style]
|
|
246
|
+
}, /*#__PURE__*/React.createElement(DrawerProgressContext.Provider, {
|
|
247
|
+
value: progress
|
|
248
|
+
}, /*#__PURE__*/React.createElement(PanGestureHandler, _extends({
|
|
249
|
+
activeOffsetX: [-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET],
|
|
250
|
+
failOffsetY: [-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET],
|
|
251
|
+
hitSlop: hitSlop,
|
|
252
|
+
enabled: drawerType !== 'permanent' && swipeEnabled,
|
|
253
|
+
onGestureEvent: onGestureEvent
|
|
254
|
+
}, gestureHandlerProps), /*#__PURE__*/React.createElement(Animated.View, {
|
|
255
|
+
style: [styles.main, {
|
|
256
|
+
flexDirection: drawerType === 'permanent' && !isRight ? 'row-reverse' : 'row'
|
|
257
|
+
}]
|
|
258
|
+
}, /*#__PURE__*/React.createElement(Animated.View, {
|
|
259
|
+
style: [styles.content, contentAnimatedStyle]
|
|
260
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
261
|
+
accessibilityElementsHidden: isOpen && drawerType !== 'permanent',
|
|
262
|
+
importantForAccessibility: isOpen && drawerType !== 'permanent' ? 'no-hide-descendants' : 'auto',
|
|
263
|
+
style: styles.content
|
|
264
|
+
}, children), drawerType !== 'permanent' ? /*#__PURE__*/React.createElement(Overlay, {
|
|
265
|
+
open: open,
|
|
266
|
+
progress: progress,
|
|
267
|
+
onPress: () => toggleDrawer(false),
|
|
268
|
+
style: overlayStyle,
|
|
269
|
+
accessibilityLabel: overlayAccessibilityLabel
|
|
270
|
+
}) : null), /*#__PURE__*/React.createElement(Animated.View, {
|
|
271
|
+
removeClippedSubviews: Platform.OS !== 'ios',
|
|
272
|
+
style: [styles.drawer, {
|
|
273
|
+
width: drawerWidth,
|
|
274
|
+
position: drawerType === 'permanent' ? 'relative' : 'absolute',
|
|
275
|
+
zIndex: drawerType === 'back' ? -1 : 0
|
|
276
|
+
}, drawerAnimatedStyle, drawerStyle]
|
|
277
|
+
}, renderDrawerContent())))));
|
|
278
|
+
}
|
|
279
|
+
const styles = StyleSheet.create({
|
|
280
|
+
container: {
|
|
281
|
+
flex: 1
|
|
282
|
+
},
|
|
283
|
+
drawer: {
|
|
284
|
+
top: 0,
|
|
285
|
+
bottom: 0,
|
|
286
|
+
maxWidth: '100%',
|
|
287
|
+
backgroundColor: 'white'
|
|
288
|
+
},
|
|
289
|
+
content: {
|
|
290
|
+
flex: 1
|
|
291
|
+
},
|
|
292
|
+
main: {
|
|
293
|
+
flex: 1,
|
|
294
|
+
...Platform.select({
|
|
295
|
+
// FIXME: We need to hide `overflowX` on Web so the translated content doesn't show offscreen.
|
|
296
|
+
// But adding `overflowX: 'hidden'` prevents content from collapsing the URL bar.
|
|
297
|
+
web: null,
|
|
298
|
+
default: {
|
|
299
|
+
overflow: 'hidden'
|
|
300
|
+
}
|
|
301
|
+
})
|
|
302
|
+
}
|
|
303
|
+
});
|
|
304
|
+
//# sourceMappingURL=Drawer.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","I18nManager","InteractionManager","Keyboard","Platform","StatusBar","StyleSheet","useWindowDimensions","View","Animated","interpolate","runOnJS","useAnimatedGestureHandler","useAnimatedStyle","useDerivedValue","useSharedValue","withSpring","useLatestCallback","DrawerProgressContext","getDrawerWidth","GestureHandlerRootView","GestureState","PanGestureHandler","Overlay","SWIPE_EDGE_WIDTH","SWIPE_MIN_OFFSET","SWIPE_MIN_DISTANCE","SWIPE_MIN_VELOCITY","minmax","value","start","end","Math","min","max","Drawer","_ref","layout","customLayout","drawerPosition","getConstants","isRTL","drawerStyle","drawerType","gestureHandlerProps","hideStatusBarOnOpen","keyboardDismissMode","onClose","onOpen","onGestureStart","onGestureCancel","onGestureEnd","onTransitionStart","onTransitionEnd","open","overlayStyle","overlayAccessibilityLabel","statusBarAnimation","swipeEnabled","OS","swipeEdgeWidth","swipeMinDistance","swipeMinVelocity","renderDrawerContent","children","style","windowDimensions","drawerWidth","isOpen","isRight","getDrawerTranslationX","useCallback","hideStatusBar","hide","setHidden","useEffect","interactionHandleRef","useRef","startInteraction","current","createInteractionHandle","endInteraction","clearInteractionHandle","hideKeyboard","dismiss","onGestureBegin","onGestureFinish","onGestureAbort","hitSlop","right","width","undefined","left","touchStartX","touchX","translationX","gestureState","UNDETERMINED","handleAnimationStart","handleAnimationEnd","finished","toggleDrawer","velocity","translateX","stiffness","damping","mass","overshootClamping","restDisplacementThreshold","restSpeedThreshold","onGestureEvent","onStart","event","ctx","hasCalledOnStart","startX","state","x","onCancel","onActive","onEnd","nextOpen","abs","velocityX","onFinish","touchDistance","ACTIVE","drawerAnimatedStyle","distanceFromEdge","transform","contentAnimatedStyle","progress","createElement","styles","container","Provider","_extends","activeOffsetX","failOffsetY","enabled","main","flexDirection","content","accessibilityElementsHidden","importantForAccessibility","onPress","accessibilityLabel","removeClippedSubviews","drawer","position","zIndex","create","flex","top","bottom","maxWidth","backgroundColor","select","web","default","overflow"],"sourceRoot":"../../../src","sources":["views/Drawer.native.tsx"],"mappings":"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"}
|
|
@@ -1,59 +1,42 @@
|
|
|
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 {
|
|
4
|
-
|
|
5
|
-
const PROGRESS_EPSILON = 0.05;
|
|
6
|
-
export const Overlay = /*#__PURE__*/React.forwardRef(function Overlay(_ref, ref) {
|
|
3
|
+
import { Pressable, StyleSheet, View } from 'react-native';
|
|
4
|
+
export function Overlay(_ref) {
|
|
7
5
|
let {
|
|
8
|
-
|
|
6
|
+
open,
|
|
9
7
|
onPress,
|
|
10
8
|
style,
|
|
11
9
|
accessibilityLabel = 'Close drawer',
|
|
12
|
-
...
|
|
10
|
+
...rest
|
|
13
11
|
} = _ref;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
opacity:
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
});
|
|
22
|
-
const animatedProps = useAnimatedProps(() => {
|
|
23
|
-
const active = progress.value > PROGRESS_EPSILON;
|
|
24
|
-
return {
|
|
25
|
-
pointerEvents: active ? 'auto' : 'none',
|
|
26
|
-
accessibilityElementsHidden: !active,
|
|
27
|
-
importantForAccessibility: active ? 'auto' : 'no-hide-descendants'
|
|
28
|
-
};
|
|
29
|
-
});
|
|
30
|
-
return /*#__PURE__*/React.createElement(Animated.View, _extends({}, props, {
|
|
31
|
-
ref: ref,
|
|
32
|
-
style: [styles.overlay, overlayStyle, animatedStyle, style],
|
|
33
|
-
animatedProps: animatedProps
|
|
12
|
+
return /*#__PURE__*/React.createElement(View, _extends({}, rest, {
|
|
13
|
+
style: [styles.overlay, {
|
|
14
|
+
opacity: open ? 1 : 0,
|
|
15
|
+
pointerEvents: open ? 'auto' : 'none'
|
|
16
|
+
}, style],
|
|
17
|
+
accessibilityElementsHidden: !open,
|
|
18
|
+
importantForAccessibility: open ? 'auto' : 'no-hide-descendants'
|
|
34
19
|
}), /*#__PURE__*/React.createElement(Pressable, {
|
|
35
20
|
onPress: onPress,
|
|
36
|
-
style: styles.pressable,
|
|
21
|
+
style: [styles.pressable, {
|
|
22
|
+
pointerEvents: open ? 'auto' : 'none'
|
|
23
|
+
}],
|
|
37
24
|
accessibilityRole: "button",
|
|
38
25
|
accessibilityLabel: accessibilityLabel
|
|
39
26
|
}));
|
|
40
|
-
}
|
|
41
|
-
const overlayStyle = Platform.select({
|
|
42
|
-
web: {
|
|
43
|
-
// Disable touch highlight on mobile Safari.
|
|
44
|
-
// WebkitTapHighlightColor must be used outside of StyleSheet.create because react-native-web will omit the property.
|
|
45
|
-
WebkitTapHighlightColor: 'transparent'
|
|
46
|
-
},
|
|
47
|
-
default: {}
|
|
48
|
-
});
|
|
27
|
+
}
|
|
49
28
|
const styles = StyleSheet.create({
|
|
50
29
|
overlay: {
|
|
51
30
|
...StyleSheet.absoluteFillObject,
|
|
52
|
-
backgroundColor: 'rgba(0, 0, 0, 0.5)'
|
|
31
|
+
backgroundColor: 'rgba(0, 0, 0, 0.5)',
|
|
32
|
+
// Disable touch highlight on mobile Safari.
|
|
33
|
+
// WebkitTapHighlightColor must be used outside of StyleSheet.create because react-native-web will omit the property.
|
|
34
|
+
// @ts-expect-error: WebkitTapHighlightColor is web only
|
|
35
|
+
WebkitTapHighlightColor: 'transparent',
|
|
36
|
+
transition: 'opacity 0.3s'
|
|
53
37
|
},
|
|
54
38
|
pressable: {
|
|
55
|
-
flex: 1
|
|
56
|
-
pointerEvents: 'auto'
|
|
39
|
+
flex: 1
|
|
57
40
|
}
|
|
58
41
|
});
|
|
59
42
|
//# sourceMappingURL=Overlay.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","
|
|
1
|
+
{"version":3,"names":["React","Pressable","StyleSheet","View","Overlay","_ref","open","onPress","style","accessibilityLabel","rest","createElement","_extends","styles","overlay","opacity","pointerEvents","accessibilityElementsHidden","importantForAccessibility","pressable","accessibilityRole","create","absoluteFillObject","backgroundColor","WebkitTapHighlightColor","transition","flex"],"sourceRoot":"../../../src","sources":["views/Overlay.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,SAAS,EAAEC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAI1D,OAAO,SAASC,OAAOA,CAAAC,IAAA,EAMN;EAAA,IANO;IACtBC,IAAI;IACJC,OAAO;IACPC,KAAK;IACLC,kBAAkB,GAAG,cAAc;IACnC,GAAGC;EACS,CAAC,GAAAL,IAAA;EACb,oBACEL,KAAA,CAAAW,aAAA,CAACR,IAAI,EAAAS,QAAA,KACCF,IAAI;IACRF,KAAK,EAAE,CACLK,MAAM,CAACC,OAAO,EACd;MAAEC,OAAO,EAAET,IAAI,GAAG,CAAC,GAAG,CAAC;MAAEU,aAAa,EAAEV,IAAI,GAAG,MAAM,GAAG;IAAO,CAAC,EAChEE,KAAK,CACL;IACFS,2BAA2B,EAAE,CAACX,IAAK;IACnCY,yBAAyB,EAAEZ,IAAI,GAAG,MAAM,GAAG;EAAsB,iBAEjEN,KAAA,CAAAW,aAAA,CAACV,SAAS;IACRM,OAAO,EAAEA,OAAQ;IACjBC,KAAK,EAAE,CAACK,MAAM,CAACM,SAAS,EAAE;MAAEH,aAAa,EAAEV,IAAI,GAAG,MAAM,GAAG;IAAO,CAAC,CAAE;IACrEc,iBAAiB,EAAC,QAAQ;IAC1BX,kBAAkB,EAAEA;EAAmB,CACxC,CACG,CAAC;AAEX;AAEA,MAAMI,MAAM,GAAGX,UAAU,CAACmB,MAAM,CAAC;EAC/BP,OAAO,EAAE;IACP,GAAGZ,UAAU,CAACoB,kBAAkB;IAChCC,eAAe,EAAE,oBAAoB;IACrC;IACA;IACA;IACAC,uBAAuB,EAAE,aAAa;IACtCC,UAAU,EAAE;EACd,CAAC;EACDN,SAAS,EAAE;IACTO,IAAI,EAAE;EACR;AACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
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
|
+
import * as React from 'react';
|
|
3
|
+
import { Pressable, StyleSheet } from 'react-native';
|
|
4
|
+
import Animated, { useAnimatedProps, useAnimatedStyle } from 'react-native-reanimated';
|
|
5
|
+
const PROGRESS_EPSILON = 0.05;
|
|
6
|
+
export function Overlay(_ref) {
|
|
7
|
+
let {
|
|
8
|
+
progress,
|
|
9
|
+
onPress,
|
|
10
|
+
style,
|
|
11
|
+
accessibilityLabel = 'Close drawer',
|
|
12
|
+
...rest
|
|
13
|
+
} = _ref;
|
|
14
|
+
const animatedStyle = useAnimatedStyle(() => {
|
|
15
|
+
return {
|
|
16
|
+
opacity: progress.value,
|
|
17
|
+
// We don't want the user to be able to press through the overlay when drawer is open
|
|
18
|
+
// We can send the overlay behind the screen to avoid it
|
|
19
|
+
zIndex: progress.value > PROGRESS_EPSILON ? 0 : -1
|
|
20
|
+
};
|
|
21
|
+
});
|
|
22
|
+
const animatedProps = useAnimatedProps(() => {
|
|
23
|
+
const active = progress.value > PROGRESS_EPSILON;
|
|
24
|
+
return {
|
|
25
|
+
pointerEvents: active ? 'auto' : 'none',
|
|
26
|
+
accessibilityElementsHidden: !active,
|
|
27
|
+
importantForAccessibility: active ? 'auto' : 'no-hide-descendants'
|
|
28
|
+
};
|
|
29
|
+
});
|
|
30
|
+
return /*#__PURE__*/React.createElement(Animated.View, _extends({}, rest, {
|
|
31
|
+
style: [styles.overlay, animatedStyle, style],
|
|
32
|
+
animatedProps: animatedProps
|
|
33
|
+
}), /*#__PURE__*/React.createElement(Pressable, {
|
|
34
|
+
onPress: onPress,
|
|
35
|
+
style: styles.pressable,
|
|
36
|
+
accessibilityRole: "button",
|
|
37
|
+
accessibilityLabel: accessibilityLabel
|
|
38
|
+
}));
|
|
39
|
+
}
|
|
40
|
+
const styles = StyleSheet.create({
|
|
41
|
+
overlay: {
|
|
42
|
+
...StyleSheet.absoluteFillObject,
|
|
43
|
+
backgroundColor: 'rgba(0, 0, 0, 0.5)'
|
|
44
|
+
},
|
|
45
|
+
pressable: {
|
|
46
|
+
flex: 1,
|
|
47
|
+
pointerEvents: 'auto'
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
//# sourceMappingURL=Overlay.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Pressable","StyleSheet","Animated","useAnimatedProps","useAnimatedStyle","PROGRESS_EPSILON","Overlay","_ref","progress","onPress","style","accessibilityLabel","rest","animatedStyle","opacity","value","zIndex","animatedProps","active","pointerEvents","accessibilityElementsHidden","importantForAccessibility","createElement","View","_extends","styles","overlay","pressable","accessibilityRole","create","absoluteFillObject","backgroundColor","flex"],"sourceRoot":"../../../src","sources":["views/Overlay.native.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,SAAS,EAAEC,UAAU,QAAQ,cAAc;AACpD,OAAOC,QAAQ,IACbC,gBAAgB,EAChBC,gBAAgB,QACX,yBAAyB;AAIhC,MAAMC,gBAAgB,GAAG,IAAI;AAE7B,OAAO,SAASC,OAAOA,CAAAC,IAAA,EAMN;EAAA,IANO;IACtBC,QAAQ;IACRC,OAAO;IACPC,KAAK;IACLC,kBAAkB,GAAG,cAAc;IACnC,GAAGC;EACS,CAAC,GAAAL,IAAA;EACb,MAAMM,aAAa,GAAGT,gBAAgB,CAAC,MAAM;IAC3C,OAAO;MACLU,OAAO,EAAEN,QAAQ,CAACO,KAAK;MACvB;MACA;MACAC,MAAM,EAAER,QAAQ,CAACO,KAAK,GAAGV,gBAAgB,GAAG,CAAC,GAAG,CAAC;IACnD,CAAC;EACH,CAAC,CAAC;EAEF,MAAMY,aAAa,GAAGd,gBAAgB,CAAC,MAAM;IAC3C,MAAMe,MAAM,GAAGV,QAAQ,CAACO,KAAK,GAAGV,gBAAgB;IAEhD,OAAO;MACLc,aAAa,EAAED,MAAM,GAAG,MAAM,GAAG,MAAM;MACvCE,2BAA2B,EAAE,CAACF,MAAM;MACpCG,yBAAyB,EAAEH,MAAM,GAAG,MAAM,GAAG;IAC/C,CAAC;EACH,CAAC,CAAC;EAEF,oBACEnB,KAAA,CAAAuB,aAAA,CAACpB,QAAQ,CAACqB,IAAI,EAAAC,QAAA,KACRZ,IAAI;IACRF,KAAK,EAAE,CAACe,MAAM,CAACC,OAAO,EAAEb,aAAa,EAAEH,KAAK,CAAE;IAC9CO,aAAa,EAAEA;EAAc,iBAE7BlB,KAAA,CAAAuB,aAAA,CAACtB,SAAS;IACRS,OAAO,EAAEA,OAAQ;IACjBC,KAAK,EAAEe,MAAM,CAACE,SAAU;IACxBC,iBAAiB,EAAC,QAAQ;IAC1BjB,kBAAkB,EAAEA;EAAmB,CACxC,CACY,CAAC;AAEpB;AAEA,MAAMc,MAAM,GAAGxB,UAAU,CAAC4B,MAAM,CAAC;EAC/BH,OAAO,EAAE;IACP,GAAGzB,UAAU,CAAC6B,kBAAkB;IAChCC,eAAe,EAAE;EACnB,CAAC;EACDJ,SAAS,EAAE;IACTK,IAAI,EAAE,CAAC;IACPb,aAAa,EAAE;EACjB;AACF,CAAC,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
import type { StyleProp, ViewStyle } from 'react-native';
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import type { StyleProp, View, ViewStyle } from 'react-native';
|
|
3
3
|
import type { PanGestureHandler } from 'react-native-gesture-handler';
|
|
4
|
+
import type { SharedValue } from 'react-native-reanimated';
|
|
4
5
|
export type Layout = {
|
|
5
6
|
width: number;
|
|
6
7
|
height: number;
|
|
@@ -131,4 +132,10 @@ export type DrawerProps = {
|
|
|
131
132
|
*/
|
|
132
133
|
children: React.ReactNode;
|
|
133
134
|
};
|
|
135
|
+
export type OverlayProps = React.ComponentProps<typeof View> & {
|
|
136
|
+
open: boolean;
|
|
137
|
+
progress: SharedValue<number>;
|
|
138
|
+
onPress: () => void;
|
|
139
|
+
accessibilityLabel?: string;
|
|
140
|
+
};
|
|
134
141
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,MAAM,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvD,MAAM,MAAM,WAAW,GAAG;IACxB;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC;IAEd;;OAEG;IACH,MAAM,EAAE,MAAM,IAAI,CAAC;IAEnB;;OAEG;IACH,OAAO,EAAE,MAAM,IAAI,CAAC;IAEpB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAE5B;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAE7B;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAE1B;;OAEG;IACH,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAE/C;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAE7C;;OAEG;IACH,mBAAmB,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IAE3C;;;OAGG;IACH,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAE3C;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAElC;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,WAAW,CAAC;IAEtD;;;OAGG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAEnC;;OAEG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAEpC;;;OAGG;IACH,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEzC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IAE/C;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,iBAAiB,CAAC,CAAC;IAErE;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAE7B;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,GAAG;IAC7D,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import type
|
|
3
|
-
export declare const DrawerProgressContext: React.Context<Readonly<
|
|
2
|
+
import type { SharedValue } from 'react-native-reanimated';
|
|
3
|
+
export declare const DrawerProgressContext: React.Context<Readonly<SharedValue<number>> | undefined>;
|
|
4
4
|
//# sourceMappingURL=DrawerProgressContext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawerProgressContext.d.ts","sourceRoot":"","sources":["../../../../src/utils/DrawerProgressContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"DrawerProgressContext.d.ts","sourceRoot":"","sources":["../../../../src/utils/DrawerProgressContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,eAAO,MAAM,qBAAqB,0DAEtB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
2
|
+
export declare function getDrawerWidth({ layout, drawerStyle, }: {
|
|
3
|
+
layout: {
|
|
4
|
+
width: number;
|
|
5
|
+
height: number;
|
|
6
|
+
};
|
|
7
|
+
drawerStyle?: StyleProp<ViewStyle>;
|
|
8
|
+
}): number;
|
|
9
|
+
//# sourceMappingURL=getDrawerWidth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getDrawerWidth.d.ts","sourceRoot":"","sources":["../../../../src/utils/getDrawerWidth.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAc,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAkB1E,wBAAgB,cAAc,CAAC,EAC7B,MAAM,EACN,WAAW,GACZ,EAAE;IACD,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,WAAW,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CACpC,UAcA"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type
|
|
2
|
-
export declare function useDrawerProgress(): Readonly<
|
|
1
|
+
import type { SharedValue } from 'react-native-reanimated';
|
|
2
|
+
export declare function useDrawerProgress(): Readonly<SharedValue<number>>;
|
|
3
3
|
//# sourceMappingURL=useDrawerProgress.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDrawerProgress.d.ts","sourceRoot":"","sources":["../../../../src/utils/useDrawerProgress.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"useDrawerProgress.d.ts","sourceRoot":"","sources":["../../../../src/utils/useDrawerProgress.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAI3D,wBAAgB,iBAAiB,IAAI,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAUjE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
declare class FakeSharedValue {
|
|
2
|
+
_listeners: Map<number, (value: number) => void>;
|
|
3
|
+
_value: number;
|
|
4
|
+
constructor(value: number);
|
|
5
|
+
addListener(id: number, listener: (value: number) => void): void;
|
|
6
|
+
removeListener(id: number): void;
|
|
7
|
+
modify(modifier?: (value: number) => number): void;
|
|
8
|
+
set value(value: number);
|
|
9
|
+
get value(): number;
|
|
10
|
+
_isReanimatedSharedValue: boolean;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Compatibility layer for `useDrawerProgress` with `react-native-reanimated`
|
|
14
|
+
*/
|
|
15
|
+
export declare function useFakeSharedValue(value: number): FakeSharedValue;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=useFakeSharedValue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFakeSharedValue.d.ts","sourceRoot":"","sources":["../../../../src/utils/useFakeSharedValue.tsx"],"names":[],"mappings":"AAEA,cAAM,eAAe;IACnB,UAAU,sBAA2B,MAAM,KAAK,IAAI,EAAI;IACxD,MAAM,EAAE,MAAM,CAAC;gBAEH,KAAK,EAAE,MAAM;IAIzB,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;IAIzD,cAAc,CAAC,EAAE,EAAE,MAAM;IAIzB,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM;IAI3C,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAMtB;IAED,IAAI,KAAK,IARQ,MAAM,CAUtB;IAED,wBAAwB,UAAQ;CACjC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAQjE"}
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import type { DrawerProps } from '../types';
|
|
3
|
-
export declare
|
|
4
|
-
export declare const SWIPE_MIN_OFFSET = 5;
|
|
5
|
-
export declare const SWIPE_MIN_DISTANCE = 60;
|
|
6
|
-
export declare const SWIPE_MIN_VELOCITY = 500;
|
|
7
|
-
export declare const DRAWER_BORDER_RADIUS = 16;
|
|
8
|
-
export declare function Drawer({ layout: customLayout, drawerPosition, drawerStyle, drawerType, gestureHandlerProps, hideStatusBarOnOpen, keyboardDismissMode, onClose, onOpen, onGestureStart, onGestureCancel, onGestureEnd, onTransitionStart, onTransitionEnd, open, overlayStyle, overlayAccessibilityLabel, statusBarAnimation, swipeEnabled, swipeEdgeWidth, swipeMinDistance, swipeMinVelocity, renderDrawerContent, children, style, }: DrawerProps): React.JSX.Element;
|
|
3
|
+
export declare function Drawer({ layout: customLayout, drawerPosition, drawerStyle, drawerType, onClose, onTransitionStart, onTransitionEnd, open, overlayStyle, overlayAccessibilityLabel, renderDrawerContent, children, style, }: DrawerProps): React.JSX.Element;
|
|
9
4
|
//# sourceMappingURL=Drawer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../../../src/views/Drawer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../../../src/views/Drawer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAM5C,wBAAgB,MAAM,CAAC,EACrB,MAAM,EAAE,YAAY,EACpB,cAAuB,EACvB,WAAW,EACX,UAAoB,EACpB,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,IAAI,EACJ,YAAY,EACZ,yBAAyB,EACzB,mBAAmB,EACnB,QAAQ,EACR,KAAK,GACN,EAAE,WAAW,qBA4Hb"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import type { DrawerProps } from '../types';
|
|
3
|
+
export declare function Drawer({ layout: customLayout, drawerPosition, drawerStyle, drawerType, gestureHandlerProps, hideStatusBarOnOpen, keyboardDismissMode, onClose, onOpen, onGestureStart, onGestureCancel, onGestureEnd, onTransitionStart, onTransitionEnd, open, overlayStyle, overlayAccessibilityLabel, statusBarAnimation, swipeEnabled, swipeEdgeWidth, swipeMinDistance, swipeMinVelocity, renderDrawerContent, children, style, }: DrawerProps): React.JSX.Element;
|
|
4
|
+
//# sourceMappingURL=Drawer.native.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Drawer.native.d.ts","sourceRoot":"","sources":["../../../../src/views/Drawer.native.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAsB/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAsB5C,wBAAgB,MAAM,CAAC,EACrB,MAAM,EAAE,YAAY,EACpB,cAAoE,EACpE,WAAW,EACX,UAAoB,EACpB,mBAAmB,EACnB,mBAA2B,EAC3B,mBAA+B,EAC/B,OAAO,EACP,MAAM,EACN,cAAc,EACd,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,IAAI,EACJ,YAAY,EACZ,yBAAyB,EACzB,kBAA4B,EAC5B,YAEyB,EACzB,cAAiC,EACjC,gBAAqC,EACrC,gBAAqC,EACrC,mBAAmB,EACnB,QAAQ,EACR,KAAK,GACN,EAAE,WAAW,qBAiWb"}
|