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.
Files changed (54) hide show
  1. package/lib/commonjs/utils/getDrawerWidth.js +41 -0
  2. package/lib/commonjs/utils/getDrawerWidth.js.map +1 -0
  3. package/lib/commonjs/utils/useDrawerProgress.js.map +1 -1
  4. package/lib/commonjs/utils/useFakeSharedValue.js +46 -0
  5. package/lib/commonjs/utils/useFakeSharedValue.js.map +1 -0
  6. package/lib/commonjs/views/Drawer.js +51 -283
  7. package/lib/commonjs/views/Drawer.js.map +1 -1
  8. package/lib/commonjs/views/Drawer.native.js +313 -0
  9. package/lib/commonjs/views/Drawer.native.js.map +1 -0
  10. package/lib/commonjs/views/Overlay.js +22 -39
  11. package/lib/commonjs/views/Overlay.js.map +1 -1
  12. package/lib/commonjs/views/Overlay.native.js +58 -0
  13. package/lib/commonjs/views/Overlay.native.js.map +1 -0
  14. package/lib/module/utils/getDrawerWidth.js +35 -0
  15. package/lib/module/utils/getDrawerWidth.js.map +1 -0
  16. package/lib/module/utils/useDrawerProgress.js.map +1 -1
  17. package/lib/module/utils/useFakeSharedValue.js +38 -0
  18. package/lib/module/utils/useFakeSharedValue.js.map +1 -0
  19. package/lib/module/views/Drawer.js +52 -282
  20. package/lib/module/views/Drawer.js.map +1 -1
  21. package/lib/module/views/Drawer.native.js +304 -0
  22. package/lib/module/views/Drawer.native.js.map +1 -0
  23. package/lib/module/views/Overlay.js +22 -39
  24. package/lib/module/views/Overlay.js.map +1 -1
  25. package/lib/module/views/Overlay.native.js +50 -0
  26. package/lib/module/views/Overlay.native.js.map +1 -0
  27. package/lib/typescript/src/types.d.ts +9 -2
  28. package/lib/typescript/src/types.d.ts.map +1 -1
  29. package/lib/typescript/src/utils/DrawerProgressContext.d.ts +2 -2
  30. package/lib/typescript/src/utils/DrawerProgressContext.d.ts.map +1 -1
  31. package/lib/typescript/src/utils/getDrawerWidth.d.ts +9 -0
  32. package/lib/typescript/src/utils/getDrawerWidth.d.ts.map +1 -0
  33. package/lib/typescript/src/utils/useDrawerProgress.d.ts +2 -2
  34. package/lib/typescript/src/utils/useDrawerProgress.d.ts.map +1 -1
  35. package/lib/typescript/src/utils/useFakeSharedValue.d.ts +17 -0
  36. package/lib/typescript/src/utils/useFakeSharedValue.d.ts.map +1 -0
  37. package/lib/typescript/src/views/Drawer.d.ts +1 -6
  38. package/lib/typescript/src/views/Drawer.d.ts.map +1 -1
  39. package/lib/typescript/src/views/Drawer.native.d.ts +4 -0
  40. package/lib/typescript/src/views/Drawer.native.d.ts.map +1 -0
  41. package/lib/typescript/src/views/Overlay.d.ts +2 -204
  42. package/lib/typescript/src/views/Overlay.d.ts.map +1 -1
  43. package/lib/typescript/src/views/Overlay.native.d.ts +4 -0
  44. package/lib/typescript/src/views/Overlay.native.d.ts.map +1 -0
  45. package/package.json +2 -2
  46. package/src/types.tsx +10 -1
  47. package/src/utils/DrawerProgressContext.tsx +2 -2
  48. package/src/utils/getDrawerWidth.tsx +39 -0
  49. package/src/utils/useDrawerProgress.tsx +2 -2
  50. package/src/utils/useFakeSharedValue.tsx +49 -0
  51. package/src/views/Drawer.native.tsx +450 -0
  52. package/src/views/Drawer.tsx +102 -434
  53. package/src/views/Overlay.native.tsx +63 -0
  54. package/src/views/Overlay.tsx +26 -59
@@ -1,317 +1,95 @@
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
1
  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';
2
+ import { StyleSheet, useWindowDimensions, View } from 'react-native';
5
3
  import useLatestCallback from 'use-latest-callback';
6
4
  import { DrawerProgressContext } from '../utils/DrawerProgressContext';
7
- import { GestureHandlerRootView, GestureState, PanGestureHandler } from './GestureHandler';
5
+ import { getDrawerWidth } from '../utils/getDrawerWidth';
6
+ import { useFakeSharedValue } from '../utils/useFakeSharedValue';
8
7
  import { Overlay } from './Overlay';
9
- export const SWIPE_EDGE_WIDTH = 32;
10
- export const SWIPE_MIN_OFFSET = 5;
11
- export const SWIPE_MIN_DISTANCE = 60;
12
- export const SWIPE_MIN_VELOCITY = 500;
13
- export const DRAWER_BORDER_RADIUS = 16;
14
- const minmax = (value, start, end) => {
15
- 'worklet';
16
-
17
- return Math.min(Math.max(value, start), end);
18
- };
19
- const getDefaultDrawerWidth = _ref => {
20
- let {
21
- height,
22
- width
23
- } = _ref;
24
- /*
25
- * Default drawer width is screen width - header height
26
- * with a max width of 280 on mobile and 320 on tablet
27
- * https://material.io/components/navigation-drawer
28
- */
29
- const smallerAxisSize = Math.min(height, width);
30
- const isLandscape = width > height;
31
- const isTablet = smallerAxisSize >= 600;
32
- const appBarHeight = Platform.OS === 'ios' ? isLandscape ? 32 : 44 : 56;
33
- const maxWidth = isTablet ? 320 : 280;
34
- return Math.min(smallerAxisSize - appBarHeight, maxWidth);
35
- };
36
- export function Drawer(_ref2) {
8
+ export function Drawer(_ref) {
37
9
  let {
38
10
  layout: customLayout,
39
- drawerPosition = I18nManager.getConstants().isRTL ? 'right' : 'left',
11
+ drawerPosition = 'left',
40
12
  drawerStyle,
41
- drawerType = Platform.select({
42
- ios: 'slide',
43
- default: 'front'
44
- }),
45
- gestureHandlerProps,
46
- hideStatusBarOnOpen = false,
47
- keyboardDismissMode = 'on-drag',
13
+ drawerType = 'front',
48
14
  onClose,
49
- onOpen,
50
- onGestureStart,
51
- onGestureCancel,
52
- onGestureEnd,
53
15
  onTransitionStart,
54
16
  onTransitionEnd,
55
17
  open,
56
18
  overlayStyle,
57
19
  overlayAccessibilityLabel,
58
- statusBarAnimation = 'slide',
59
- swipeEnabled = Platform.OS !== 'web' && Platform.OS !== 'windows' && Platform.OS !== 'macos',
60
- swipeEdgeWidth = SWIPE_EDGE_WIDTH,
61
- swipeMinDistance = SWIPE_MIN_DISTANCE,
62
- swipeMinVelocity = SWIPE_MIN_VELOCITY,
63
20
  renderDrawerContent,
64
21
  children,
65
22
  style
66
- } = _ref2;
67
- // FIXME: temporary workaround for useSafeAreaFrame not updating on Web
23
+ } = _ref;
68
24
  const windowDimensions = useWindowDimensions();
69
25
  const layout = customLayout ?? windowDimensions;
70
- const getDrawerWidth = () => {
71
- const {
72
- width = getDefaultDrawerWidth(layout)
73
- } = StyleSheet.flatten(drawerStyle) || {};
74
- if (typeof width === 'string' && width.endsWith('%')) {
75
- // Try to calculate width if a percentage is given
76
- const percentage = Number(width.replace(/%$/, ''));
77
- if (Number.isFinite(percentage)) {
78
- return layout.width * (percentage / 100);
79
- }
80
- }
81
- return typeof width === 'number' ? width : 0;
82
- };
83
- const drawerWidth = getDrawerWidth();
84
- const isOpen = drawerType === 'permanent' ? true : open;
85
- const isRight = drawerPosition === 'right';
86
- const getDrawerTranslationX = React.useCallback(open => {
87
- 'worklet';
88
-
89
- if (drawerPosition === 'left') {
90
- return open ? 0 : -drawerWidth;
91
- }
92
- return open ? 0 : drawerWidth;
93
- }, [drawerPosition, drawerWidth]);
94
- const hideStatusBar = React.useCallback(hide => {
95
- if (hideStatusBarOnOpen) {
96
- StatusBar.setHidden(hide, statusBarAnimation);
97
- }
98
- }, [hideStatusBarOnOpen, statusBarAnimation]);
26
+ const drawerWidth = getDrawerWidth({
27
+ layout,
28
+ drawerStyle
29
+ });
30
+ const progress = useFakeSharedValue(open ? 1 : 0);
99
31
  React.useEffect(() => {
100
- hideStatusBar(isOpen);
101
- return () => hideStatusBar(false);
102
- }, [isOpen, hideStatusBarOnOpen, statusBarAnimation, hideStatusBar]);
103
- const interactionHandleRef = React.useRef(null);
104
- const startInteraction = () => {
105
- interactionHandleRef.current = InteractionManager.createInteractionHandle();
106
- };
107
- const endInteraction = () => {
108
- if (interactionHandleRef.current != null) {
109
- InteractionManager.clearInteractionHandle(interactionHandleRef.current);
110
- interactionHandleRef.current = null;
111
- }
112
- };
113
- const hideKeyboard = () => {
114
- if (keyboardDismissMode === 'on-drag') {
115
- Keyboard.dismiss();
116
- }
117
- };
118
- const onGestureBegin = () => {
119
- onGestureStart?.();
120
- startInteraction();
121
- hideKeyboard();
122
- hideStatusBar(true);
123
- };
124
- const onGestureFinish = () => {
125
- onGestureEnd?.();
126
- endInteraction();
127
- };
128
- const onGestureAbort = () => {
129
- onGestureCancel?.();
130
- endInteraction();
131
- };
132
-
133
- // FIXME: Currently hitSlop is broken when on Android when drawer is on right
134
- // https://github.com/software-mansion/react-native-gesture-handler/issues/569
135
- const hitSlop = isRight ?
136
- // Extend hitSlop to the side of the screen when drawer is closed
137
- // This lets the user drag the drawer from the side of the screen
138
- {
139
- right: 0,
140
- width: isOpen ? undefined : swipeEdgeWidth
141
- } : {
142
- left: 0,
143
- width: isOpen ? undefined : swipeEdgeWidth
144
- };
145
- const borderRadiiStyle = isRight ? {
146
- borderTopLeftRadius: DRAWER_BORDER_RADIUS,
147
- borderBottomLeftRadius: DRAWER_BORDER_RADIUS
148
- } : {
149
- borderTopRightRadius: DRAWER_BORDER_RADIUS,
150
- borderBottomRightRadius: DRAWER_BORDER_RADIUS
151
- };
152
- const touchStartX = useSharedValue(0);
153
- const touchX = useSharedValue(0);
154
- const translationX = useSharedValue(getDrawerTranslationX(open));
155
- const gestureState = useSharedValue(GestureState.UNDETERMINED);
156
- const handleAnimationStart = useLatestCallback(open => {
157
- onTransitionStart?.(!open);
32
+ progress.value = open ? 1 : 0;
33
+ }, [open, progress]);
34
+ const drawerRef = React.useRef(null);
35
+ const onTransitionStartLatest = useLatestCallback(() => {
36
+ onTransitionStart?.(open === false);
158
37
  });
159
- const handleAnimationEnd = useLatestCallback((open, finished) => {
160
- if (!finished) return;
161
- onTransitionEnd?.(!open);
38
+ const onTransitionEndLatest = useLatestCallback(() => {
39
+ onTransitionEnd?.(open === false);
162
40
  });
163
- const toggleDrawer = React.useCallback((open, velocity) => {
164
- 'worklet';
165
-
166
- const translateX = getDrawerTranslationX(open);
167
- if (velocity === undefined) {
168
- runOnJS(handleAnimationStart)(open);
169
- }
170
- touchStartX.value = 0;
171
- touchX.value = 0;
172
- translationX.value = withSpring(translateX, {
173
- velocity,
174
- stiffness: 1000,
175
- damping: 500,
176
- mass: 3,
177
- overshootClamping: true,
178
- restDisplacementThreshold: 0.01,
179
- restSpeedThreshold: 0.01
180
- }, finished => runOnJS(handleAnimationEnd)(open, finished));
181
- if (open) {
182
- runOnJS(onOpen)();
183
- } else {
184
- runOnJS(onClose)();
185
- }
186
- }, [getDrawerTranslationX, handleAnimationEnd, handleAnimationStart, onClose, onOpen, touchStartX, touchX, translationX]);
187
- React.useEffect(() => toggleDrawer(open), [open, toggleDrawer]);
188
- const onGestureEvent = useAnimatedGestureHandler({
189
- onStart: (event, ctx) => {
190
- ctx.hasCalledOnStart = false;
191
- ctx.startX = translationX.value;
192
- gestureState.value = event.state;
193
- touchStartX.value = event.x;
194
- },
195
- onCancel: () => {
196
- runOnJS(onGestureAbort)();
197
- },
198
- onActive: (event, ctx) => {
199
- touchX.value = event.x;
200
- translationX.value = ctx.startX + event.translationX;
201
- gestureState.value = event.state;
202
-
203
- // onStart will _always_ be called, even when the activation
204
- // criteria isn't met yet. This makes sure onGestureBegin is only
205
- // called when the criteria is really met.
206
- if (!ctx.hasCalledOnStart) {
207
- ctx.hasCalledOnStart = true;
208
- runOnJS(onGestureBegin)();
209
- }
210
- },
211
- onEnd: event => {
212
- gestureState.value = event.state;
213
- const nextOpen = Math.abs(event.translationX) > SWIPE_MIN_OFFSET && Math.abs(event.translationX) > swipeMinVelocity || Math.abs(event.translationX) > swipeMinDistance ? drawerPosition === 'left' ?
214
- // If swiped to right, open the drawer, otherwise close it
215
- (event.velocityX === 0 ? event.translationX : event.velocityX) > 0 :
216
- // If swiped to left, open the drawer, otherwise close it
217
- (event.velocityX === 0 ? event.translationX : event.velocityX) < 0 : open;
218
- toggleDrawer(nextOpen, event.velocityX);
219
- },
220
- onFinish: () => {
221
- runOnJS(onGestureFinish)();
41
+ React.useEffect(() => {
42
+ const element = drawerRef.current;
43
+ if (element) {
44
+ element.addEventListener('transitionstart', onTransitionStartLatest);
45
+ element.addEventListener('transitionend', onTransitionEndLatest);
222
46
  }
223
- });
224
- const translateX = useDerivedValue(() => {
225
- // Comment stolen from react-native-gesture-handler/DrawerLayout
226
- //
227
- // While closing the drawer when user starts gesture outside of its area (in greyed
228
- // out part of the window), we want the drawer to follow only once finger reaches the
229
- // edge of the drawer.
230
- // E.g. on the diagram below drawer is illustrate by X signs and the greyed out area by
231
- // dots. The touch gesture starts at '*' and moves left, touch path is indicated by
232
- // an arrow pointing left
233
- // 1) +---------------+ 2) +---------------+ 3) +---------------+ 4) +---------------+
234
- // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
235
- // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
236
- // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
237
- // |XXXXXXXX|......| |XXXXXXXX|.<-*..| |XXXXXXXX|<--*..| |XXXXX|<-----*..|
238
- // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
239
- // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
240
- // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
241
- // +---------------+ +---------------+ +---------------+ +---------------+
242
- //
243
- // For the above to work properly we define animated value that will keep start position
244
- // of the gesture. Then we use that value to calculate how much we need to subtract from
245
- // the translationX. If the gesture started on the greyed out area we take the distance from the
246
- // edge of the drawer to the start position. Otherwise we don't subtract at all and the
247
- // drawer be pulled back as soon as you start the pan.
248
- //
249
- // This is used only when drawerType is "front"
250
- const touchDistance = drawerType === 'front' && gestureState.value === GestureState.ACTIVE ? minmax(drawerPosition === 'left' ? touchStartX.value - drawerWidth : layout.width - drawerWidth - touchStartX.value, 0, layout.width) : 0;
251
- const translateX = drawerPosition === 'left' ? minmax(translationX.value + touchDistance, -drawerWidth, 0) : minmax(translationX.value - touchDistance, 0, drawerWidth);
252
- return translateX;
253
- });
254
- const drawerAnimatedStyle = useAnimatedStyle(() => {
255
- const distanceFromEdge = layout.width - drawerWidth;
256
- return {
257
- transform: drawerType === 'permanent' ?
258
- // Reanimated needs the property to be present, but it results in Browser bug
259
- // https://bugs.chromium.org/p/chromium/issues/detail?id=20574
260
- [] : [{
261
- translateX:
262
- // The drawer stays in place when `drawerType` is `back`
263
- (drawerType === 'back' ? 0 : translateX.value) + (drawerPosition === 'left' ? 0 : distanceFromEdge)
264
- }]
265
- };
266
- });
267
- const contentAnimatedStyle = useAnimatedStyle(() => {
268
- return {
269
- transform: drawerType === 'permanent' ?
270
- // Reanimated needs the property to be present, but it results in Browser bug
271
- // https://bugs.chromium.org/p/chromium/issues/detail?id=20574
272
- [] : [{
273
- translateX:
274
- // The screen content stays in place when `drawerType` is `front`
275
- drawerType === 'front' ? 0 : translateX.value + drawerWidth * (drawerPosition === 'left' ? 1 : -1)
276
- }]
277
- };
278
- });
279
- const progress = useDerivedValue(() => {
280
- return drawerType === 'permanent' ? 1 : interpolate(translateX.value, [getDrawerTranslationX(false), getDrawerTranslationX(true)], [0, 1]);
281
- });
282
- return /*#__PURE__*/React.createElement(GestureHandlerRootView, {
47
+ }, [onTransitionEndLatest, onTransitionStartLatest]);
48
+ const isOpen = drawerType === 'permanent' ? true : open;
49
+ const isRight = drawerPosition === 'right';
50
+ const drawerAnimatedStyle = drawerType !== 'permanent' ? {
51
+ transition: 'transform 0.3s',
52
+ transform: [{
53
+ // The drawer stays in place at open position when `drawerType` is `back`
54
+ translateX: open || drawerType === 'back' ? drawerPosition === 'left' ? 0 : layout.width - drawerWidth : drawerPosition === 'left' ? -drawerWidth : layout.width
55
+ }]
56
+ } : null;
57
+ const contentAnimatedStyle = drawerType !== 'permanent' ? {
58
+ transition: 'transform 0.3s',
59
+ transform: [{
60
+ translateX: open ?
61
+ // The screen content stays in place when `drawerType` is `front`
62
+ drawerType === 'front' ? 0 : drawerWidth * (drawerPosition === 'left' ? 1 : -1) : 0
63
+ }]
64
+ } : null;
65
+ return /*#__PURE__*/React.createElement(View, {
283
66
  style: [styles.container, style]
284
67
  }, /*#__PURE__*/React.createElement(DrawerProgressContext.Provider, {
285
68
  value: progress
286
- }, /*#__PURE__*/React.createElement(PanGestureHandler, _extends({
287
- activeOffsetX: [-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET],
288
- failOffsetY: [-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET],
289
- hitSlop: hitSlop,
290
- enabled: drawerType !== 'permanent' && swipeEnabled,
291
- onGestureEvent: onGestureEvent
292
- }, gestureHandlerProps), /*#__PURE__*/React.createElement(Animated.View, {
69
+ }, /*#__PURE__*/React.createElement(View, {
293
70
  style: [styles.main, {
294
71
  flexDirection: drawerType === 'permanent' && !isRight ? 'row-reverse' : 'row'
295
72
  }]
296
- }, /*#__PURE__*/React.createElement(Animated.View, {
73
+ }, /*#__PURE__*/React.createElement(View, {
297
74
  style: [styles.content, contentAnimatedStyle]
298
75
  }, /*#__PURE__*/React.createElement(View, {
299
76
  accessibilityElementsHidden: isOpen && drawerType !== 'permanent',
300
77
  importantForAccessibility: isOpen && drawerType !== 'permanent' ? 'no-hide-descendants' : 'auto',
301
78
  style: styles.content
302
79
  }, children), drawerType !== 'permanent' ? /*#__PURE__*/React.createElement(Overlay, {
80
+ open: open,
303
81
  progress: progress,
304
- onPress: () => toggleDrawer(false),
82
+ onPress: () => onClose(),
305
83
  style: overlayStyle,
306
84
  accessibilityLabel: overlayAccessibilityLabel
307
- }) : null), /*#__PURE__*/React.createElement(Animated.View, {
308
- removeClippedSubviews: Platform.OS !== 'ios',
85
+ }) : null), /*#__PURE__*/React.createElement(View, {
86
+ ref: drawerRef,
309
87
  style: [styles.drawer, {
310
88
  width: drawerWidth,
311
89
  position: drawerType === 'permanent' ? 'relative' : 'absolute',
312
90
  zIndex: drawerType === 'back' ? -1 : 0
313
- }, drawerType === 'permanent' ? null : borderRadiiStyle, drawerAnimatedStyle, drawerStyle]
314
- }, renderDrawerContent())))));
91
+ }, drawerAnimatedStyle, drawerStyle]
92
+ }, renderDrawerContent()))));
315
93
  }
316
94
  const styles = StyleSheet.create({
317
95
  container: {
@@ -327,15 +105,7 @@ const styles = StyleSheet.create({
327
105
  flex: 1
328
106
  },
329
107
  main: {
330
- flex: 1,
331
- ...Platform.select({
332
- // FIXME: We need to hide `overflowX` on Web so the translated content doesn't show offscreen.
333
- // But adding `overflowX: 'hidden'` prevents content from collapsing the URL bar.
334
- web: null,
335
- default: {
336
- overflow: 'hidden'
337
- }
338
- })
108
+ flex: 1
339
109
  }
340
110
  });
341
111
  //# sourceMappingURL=Drawer.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","I18nManager","InteractionManager","Keyboard","Platform","StatusBar","StyleSheet","useWindowDimensions","View","Animated","interpolate","runOnJS","useAnimatedGestureHandler","useAnimatedStyle","useDerivedValue","useSharedValue","withSpring","useLatestCallback","DrawerProgressContext","GestureHandlerRootView","GestureState","PanGestureHandler","Overlay","SWIPE_EDGE_WIDTH","SWIPE_MIN_OFFSET","SWIPE_MIN_DISTANCE","SWIPE_MIN_VELOCITY","DRAWER_BORDER_RADIUS","minmax","value","start","end","Math","min","max","getDefaultDrawerWidth","_ref","height","width","smallerAxisSize","isLandscape","isTablet","appBarHeight","OS","maxWidth","Drawer","_ref2","layout","customLayout","drawerPosition","getConstants","isRTL","drawerStyle","drawerType","select","ios","default","gestureHandlerProps","hideStatusBarOnOpen","keyboardDismissMode","onClose","onOpen","onGestureStart","onGestureCancel","onGestureEnd","onTransitionStart","onTransitionEnd","open","overlayStyle","overlayAccessibilityLabel","statusBarAnimation","swipeEnabled","swipeEdgeWidth","swipeMinDistance","swipeMinVelocity","renderDrawerContent","children","style","windowDimensions","getDrawerWidth","flatten","endsWith","percentage","Number","replace","isFinite","drawerWidth","isOpen","isRight","getDrawerTranslationX","useCallback","hideStatusBar","hide","setHidden","useEffect","interactionHandleRef","useRef","startInteraction","current","createInteractionHandle","endInteraction","clearInteractionHandle","hideKeyboard","dismiss","onGestureBegin","onGestureFinish","onGestureAbort","hitSlop","right","undefined","left","borderRadiiStyle","borderTopLeftRadius","borderBottomLeftRadius","borderTopRightRadius","borderBottomRightRadius","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","backgroundColor","web","overflow"],"sourceRoot":"../../../src","sources":["views/Drawer.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","StyleSheet","useWindowDimensions","View","useLatestCallback","DrawerProgressContext","getDrawerWidth","useFakeSharedValue","Overlay","Drawer","_ref","layout","customLayout","drawerPosition","drawerStyle","drawerType","onClose","onTransitionStart","onTransitionEnd","open","overlayStyle","overlayAccessibilityLabel","renderDrawerContent","children","style","windowDimensions","drawerWidth","progress","useEffect","value","drawerRef","useRef","onTransitionStartLatest","onTransitionEndLatest","element","current","addEventListener","isOpen","isRight","drawerAnimatedStyle","transition","transform","translateX","width","contentAnimatedStyle","createElement","styles","container","Provider","main","flexDirection","content","accessibilityElementsHidden","importantForAccessibility","onPress","accessibilityLabel","ref","drawer","position","zIndex","create","flex","top","bottom","maxWidth","backgroundColor"],"sourceRoot":"../../../src","sources":["views/Drawer.tsx"],"mappings":"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"}