react-native-drawer-layout 4.0.4 → 4.1.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.
@@ -9,6 +9,12 @@ Object.defineProperty(exports, "Drawer", {
9
9
  return _Drawer.Drawer;
10
10
  }
11
11
  });
12
+ Object.defineProperty(exports, "DrawerGestureContext", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _DrawerGestureContext.DrawerGestureContext;
16
+ }
17
+ });
12
18
  Object.defineProperty(exports, "DrawerProgressContext", {
13
19
  enumerable: true,
14
20
  get: function () {
@@ -21,6 +27,7 @@ Object.defineProperty(exports, "useDrawerProgress", {
21
27
  return _useDrawerProgress.useDrawerProgress;
22
28
  }
23
29
  });
30
+ var _DrawerGestureContext = require("./utils/DrawerGestureContext.js");
24
31
  var _DrawerProgressContext = require("./utils/DrawerProgressContext.js");
25
32
  var _useDrawerProgress = require("./utils/useDrawerProgress.js");
26
33
  var _Drawer = require("./views/Drawer");
@@ -1 +1 @@
1
- {"version":3,"names":["_DrawerProgressContext","require","_useDrawerProgress","_Drawer"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AACA,IAAAC,kBAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA","ignoreList":[]}
1
+ {"version":3,"names":["_DrawerGestureContext","require","_DrawerProgressContext","_useDrawerProgress","_Drawer"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,qBAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AACA,IAAAE,kBAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.DrawerGestureContext = void 0;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
9
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
10
+ const DrawerGestureContext = exports.DrawerGestureContext = /*#__PURE__*/React.createContext(undefined);
11
+ //# sourceMappingURL=DrawerGestureContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DrawerGestureContext","exports","createContext","undefined"],"sourceRoot":"../../../src","sources":["utils/DrawerGestureContext.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAA+B,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAGxB,MAAMW,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,gBAAGvB,KAAK,CAACyB,aAAa,CACrDC,SACF,CAAC","ignoreList":[]}
@@ -8,6 +8,7 @@ var React = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
10
10
  var _useLatestCallback = _interopRequireDefault(require("use-latest-callback"));
11
+ var _DrawerGestureContext = require("../utils/DrawerGestureContext.js");
11
12
  var _DrawerProgressContext = require("../utils/DrawerProgressContext.js");
12
13
  var _getDrawerWidth = require("../utils/getDrawerWidth.js");
13
14
  var _GestureHandler = require("./GestureHandler");
@@ -79,38 +80,35 @@ function Drawer({
79
80
  return () => hideStatusBar(false);
80
81
  }, [isOpen, hideStatusBarOnOpen, statusBarAnimation, hideStatusBar]);
81
82
  const interactionHandleRef = React.useRef(null);
82
- const startInteraction = () => {
83
+ const startInteraction = (0, _useLatestCallback.default)(() => {
83
84
  interactionHandleRef.current = _reactNative.InteractionManager.createInteractionHandle();
84
- };
85
- const endInteraction = () => {
85
+ });
86
+ const endInteraction = (0, _useLatestCallback.default)(() => {
86
87
  if (interactionHandleRef.current != null) {
87
88
  _reactNative.InteractionManager.clearInteractionHandle(interactionHandleRef.current);
88
89
  interactionHandleRef.current = null;
89
90
  }
90
- };
91
- const hideKeyboard = () => {
91
+ });
92
+ const hideKeyboard = (0, _useLatestCallback.default)(() => {
92
93
  if (keyboardDismissMode === 'on-drag') {
93
94
  _reactNative.Keyboard.dismiss();
94
95
  }
95
- };
96
- const onGestureBegin = () => {
96
+ });
97
+ const onGestureBegin = (0, _useLatestCallback.default)(() => {
97
98
  onGestureStart?.();
98
99
  startInteraction();
99
100
  hideKeyboard();
100
101
  hideStatusBar(true);
101
- };
102
- const onGestureFinish = () => {
102
+ });
103
+ const onGestureFinish = (0, _useLatestCallback.default)(() => {
103
104
  onGestureEnd?.();
104
105
  endInteraction();
105
- };
106
- const onGestureAbort = () => {
106
+ });
107
+ const onGestureAbort = (0, _useLatestCallback.default)(() => {
107
108
  onGestureCancel?.();
108
109
  endInteraction();
109
- };
110
-
111
- // FIXME: Currently hitSlop is broken when on Android when drawer is on right
112
- // https://github.com/software-mansion/react-native-gesture-handler/issues/569
113
- const hitSlop = isRight ?
110
+ });
111
+ const hitSlop = React.useMemo(() => isRight ?
114
112
  // Extend hitSlop to the side of the screen when drawer is closed
115
113
  // This lets the user drag the drawer from the side of the screen
116
114
  {
@@ -119,16 +117,18 @@ function Drawer({
119
117
  } : {
120
118
  left: 0,
121
119
  width: isOpen ? undefined : swipeEdgeWidth
122
- };
120
+ }, [isRight, isOpen, swipeEdgeWidth]);
123
121
  const touchStartX = (0, _reactNativeReanimated.useSharedValue)(0);
124
122
  const touchX = (0, _reactNativeReanimated.useSharedValue)(0);
125
123
  const translationX = (0, _reactNativeReanimated.useSharedValue)(getDrawerTranslationX(open));
126
124
  const gestureState = (0, _reactNativeReanimated.useSharedValue)(_GestureHandler.GestureState.UNDETERMINED);
127
- const handleAnimationStart = (0, _useLatestCallback.default)(open => {
125
+ const onAnimationStart = (0, _useLatestCallback.default)(open => {
128
126
  onTransitionStart?.(!open);
129
127
  });
130
- const handleAnimationEnd = (0, _useLatestCallback.default)((open, finished) => {
131
- if (!finished) return;
128
+ const onAnimationEnd = (0, _useLatestCallback.default)((open, finished) => {
129
+ if (!finished) {
130
+ return;
131
+ }
132
132
  onTransitionEnd?.(!open);
133
133
  });
134
134
  const toggleDrawer = React.useCallback((open, velocity) => {
@@ -136,7 +136,7 @@ function Drawer({
136
136
 
137
137
  const translateX = getDrawerTranslationX(open);
138
138
  if (velocity === undefined) {
139
- (0, _reactNativeReanimated.runOnJS)(handleAnimationStart)(open);
139
+ (0, _reactNativeReanimated.runOnJS)(onAnimationStart)(open);
140
140
  }
141
141
  touchStartX.value = 0;
142
142
  touchX.value = 0;
@@ -149,49 +149,52 @@ function Drawer({
149
149
  restDisplacementThreshold: 0.01,
150
150
  restSpeedThreshold: 0.01,
151
151
  reduceMotion: _reactNativeReanimated.ReduceMotion.Never
152
- }, finished => (0, _reactNativeReanimated.runOnJS)(handleAnimationEnd)(open, finished));
152
+ }, finished => (0, _reactNativeReanimated.runOnJS)(onAnimationEnd)(open, finished));
153
153
  if (open) {
154
154
  (0, _reactNativeReanimated.runOnJS)(onOpen)();
155
155
  } else {
156
156
  (0, _reactNativeReanimated.runOnJS)(onClose)();
157
157
  }
158
- }, [getDrawerTranslationX, handleAnimationEnd, handleAnimationStart, onClose, onOpen, touchStartX, touchX, translationX]);
158
+ }, [getDrawerTranslationX, onAnimationEnd, onAnimationStart, onClose, onOpen, touchStartX, touchX, translationX]);
159
159
  React.useEffect(() => toggleDrawer(open), [open, toggleDrawer]);
160
160
  const startX = (0, _reactNativeReanimated.useSharedValue)(0);
161
- let pan = _GestureHandler.Gesture?.Pan().onBegin(event => {
162
- 'worklet';
161
+ const pan = React.useMemo(() => {
162
+ let panGesture = _GestureHandler.Gesture?.Pan().onBegin(event => {
163
+ 'worklet';
163
164
 
164
- startX.value = translationX.value;
165
- gestureState.value = event.state;
166
- touchStartX.value = event.x;
167
- }).onStart(() => {
168
- 'worklet';
165
+ startX.value = translationX.value;
166
+ gestureState.value = event.state;
167
+ touchStartX.value = event.x;
168
+ }).onStart(() => {
169
+ 'worklet';
169
170
 
170
- (0, _reactNativeReanimated.runOnJS)(onGestureBegin)();
171
- }).onChange(event => {
172
- 'worklet';
171
+ (0, _reactNativeReanimated.runOnJS)(onGestureBegin)();
172
+ }).onChange(event => {
173
+ 'worklet';
173
174
 
174
- touchX.value = event.x;
175
- translationX.value = startX.value + event.translationX;
176
- gestureState.value = event.state;
177
- }).onEnd((event, success) => {
178
- 'worklet';
175
+ touchX.value = event.x;
176
+ translationX.value = startX.value + event.translationX;
177
+ gestureState.value = event.state;
178
+ }).onEnd((event, success) => {
179
+ 'worklet';
179
180
 
180
- gestureState.value = event.state;
181
- if (!success) {
182
- (0, _reactNativeReanimated.runOnJS)(onGestureAbort)();
181
+ gestureState.value = event.state;
182
+ if (!success) {
183
+ (0, _reactNativeReanimated.runOnJS)(onGestureAbort)();
184
+ }
185
+ const nextOpen = Math.abs(event.translationX) > SWIPE_MIN_OFFSET && Math.abs(event.translationX) > swipeMinVelocity || Math.abs(event.translationX) > swipeMinDistance ? drawerPosition === 'left' ?
186
+ // If swiped to right, open the drawer, otherwise close it
187
+ (event.velocityX === 0 ? event.translationX : event.velocityX) > 0 :
188
+ // If swiped to left, open the drawer, otherwise close it
189
+ (event.velocityX === 0 ? event.translationX : event.velocityX) < 0 : open;
190
+ toggleDrawer(nextOpen, event.velocityX);
191
+ (0, _reactNativeReanimated.runOnJS)(onGestureFinish)();
192
+ }).activeOffsetX([-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET]).failOffsetY([-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET]).hitSlop(hitSlop).enabled(drawerType !== 'permanent' && swipeEnabled);
193
+ if (panGesture && configureGestureHandler) {
194
+ panGesture = configureGestureHandler(panGesture);
183
195
  }
184
- const nextOpen = Math.abs(event.translationX) > SWIPE_MIN_OFFSET && Math.abs(event.translationX) > swipeMinVelocity || Math.abs(event.translationX) > swipeMinDistance ? drawerPosition === 'left' ?
185
- // If swiped to right, open the drawer, otherwise close it
186
- (event.velocityX === 0 ? event.translationX : event.velocityX) > 0 :
187
- // If swiped to left, open the drawer, otherwise close it
188
- (event.velocityX === 0 ? event.translationX : event.velocityX) < 0 : open;
189
- toggleDrawer(nextOpen, event.velocityX);
190
- (0, _reactNativeReanimated.runOnJS)(onGestureFinish)();
191
- }).activeOffsetX([-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET]).failOffsetY([-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET]).hitSlop(hitSlop).enabled(drawerType !== 'permanent' && swipeEnabled);
192
- if (pan && configureGestureHandler) {
193
- pan = configureGestureHandler(pan);
194
- }
196
+ return panGesture;
197
+ }, [configureGestureHandler, drawerPosition, drawerType, gestureState, hitSlop, onGestureBegin, onGestureAbort, onGestureFinish, open, startX, swipeEnabled, swipeMinDistance, swipeMinVelocity, toggleDrawer, touchStartX, touchX, translationX]);
195
198
  const translateX = (0, _reactNativeReanimated.useDerivedValue)(() => {
196
199
  // Comment stolen from react-native-gesture-handler/DrawerLayout
197
200
  //
@@ -225,6 +228,10 @@ function Drawer({
225
228
  const drawerAnimatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
226
229
  const distanceFromEdge = layout.width - drawerWidth;
227
230
  return {
231
+ // FIXME: Reanimated skips committing to the shadow tree if no layout props are animated
232
+ // This results in pressables not getting their correct position and can't be pressed
233
+ // So we animate the zIndex to force the commit - it doesn't affect the drawer visually
234
+ zIndex: translateX.value === 0 ? 0 : 1,
228
235
  transform: drawerType === 'permanent' ?
229
236
  // Reanimated needs the property to be present, but it results in Browser bug
230
237
  // https://bugs.chromium.org/p/chromium/issues/detail?id=20574
@@ -237,6 +244,8 @@ function Drawer({
237
244
  }, [direction, drawerPosition, drawerType, drawerWidth, layout.width, translateX]);
238
245
  const contentAnimatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
239
246
  return {
247
+ // FIXME: Force Reanimated to commit to the shadow tree
248
+ zIndex: translateX.value === 0 ? 0 : drawerType === 'back' ? 2 : 1,
240
249
  transform: drawerType === 'permanent' ?
241
250
  // Reanimated needs the property to be present, but it results in Browser bug
242
251
  // https://bugs.chromium.org/p/chromium/issues/detail?id=20574
@@ -254,35 +263,38 @@ function Drawer({
254
263
  style: [styles.container, style],
255
264
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DrawerProgressContext.DrawerProgressContext.Provider, {
256
265
  value: progress,
257
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_GestureHandler.GestureDetector, {
258
- gesture: pan,
259
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeReanimated.default.View, {
260
- style: [styles.main, {
261
- flexDirection: drawerType === 'permanent' ? isRight && direction === 'ltr' || !isRight && direction === 'rtl' ? 'row' : 'row-reverse' : 'row'
262
- }],
263
- children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeReanimated.default.View, {
264
- style: [styles.content, contentAnimatedStyle],
265
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
266
- accessibilityElementsHidden: isOpen && drawerType !== 'permanent',
267
- importantForAccessibility: isOpen && drawerType !== 'permanent' ? 'no-hide-descendants' : 'auto',
268
- style: styles.content,
269
- children: children
270
- }), drawerType !== 'permanent' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Overlay.Overlay, {
271
- open: open,
272
- progress: progress,
273
- onPress: () => toggleDrawer(false),
274
- style: overlayStyle,
275
- accessibilityLabel: overlayAccessibilityLabel
276
- }) : null]
277
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
278
- removeClippedSubviews: _reactNative.Platform.OS !== 'ios',
279
- style: [styles.drawer, {
280
- width: drawerWidth,
281
- position: drawerType === 'permanent' ? 'relative' : 'absolute',
282
- zIndex: drawerType === 'back' ? -1 : 0
283
- }, drawerAnimatedStyle, drawerStyle],
284
- children: renderDrawerContent()
285
- })]
266
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DrawerGestureContext.DrawerGestureContext.Provider, {
267
+ value: pan,
268
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_GestureHandler.GestureDetector, {
269
+ gesture: pan,
270
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeReanimated.default.View, {
271
+ style: [styles.main, {
272
+ flexDirection: drawerType === 'permanent' ? isRight && direction === 'ltr' || !isRight && direction === 'rtl' ? 'row' : 'row-reverse' : 'row'
273
+ }],
274
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeReanimated.default.View, {
275
+ style: [styles.content, contentAnimatedStyle],
276
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
277
+ accessibilityElementsHidden: isOpen && drawerType !== 'permanent',
278
+ importantForAccessibility: isOpen && drawerType !== 'permanent' ? 'no-hide-descendants' : 'auto',
279
+ style: styles.content,
280
+ children: children
281
+ }), drawerType !== 'permanent' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Overlay.Overlay, {
282
+ open: open,
283
+ progress: progress,
284
+ onPress: () => toggleDrawer(false),
285
+ style: overlayStyle,
286
+ accessibilityLabel: overlayAccessibilityLabel
287
+ }) : null]
288
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
289
+ removeClippedSubviews: _reactNative.Platform.OS !== 'ios',
290
+ style: [styles.drawer, {
291
+ width: drawerWidth,
292
+ position: drawerType === 'permanent' ? 'relative' : 'absolute',
293
+ zIndex: drawerType === 'back' ? -1 : 0
294
+ }, drawerAnimatedStyle, drawerStyle],
295
+ children: renderDrawerContent()
296
+ })]
297
+ })
286
298
  })
287
299
  })
288
300
  })
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_useLatestCallback","_interopRequireDefault","_DrawerProgressContext","_getDrawerWidth","_GestureHandler","_Overlay","_jsxRuntime","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","SWIPE_EDGE_WIDTH","SWIPE_MIN_OFFSET","SWIPE_MIN_DISTANCE","SWIPE_MIN_VELOCITY","minmax","value","start","end","Math","min","max","Drawer","layout","customLayout","direction","I18nManager","getConstants","isRTL","drawerPosition","drawerStyle","drawerType","configureGestureHandler","hideStatusBarOnOpen","keyboardDismissMode","onClose","onOpen","onGestureStart","onGestureCancel","onGestureEnd","onTransitionStart","onTransitionEnd","open","overlayStyle","overlayAccessibilityLabel","statusBarAnimation","swipeEnabled","Platform","OS","swipeEdgeWidth","swipeMinDistance","swipeMinVelocity","renderDrawerContent","children","style","windowDimensions","useWindowDimensions","drawerWidth","getDrawerWidth","isOpen","isRight","getDrawerTranslationX","useCallback","hideStatusBar","hide","StatusBar","setHidden","useEffect","interactionHandleRef","useRef","startInteraction","current","InteractionManager","createInteractionHandle","endInteraction","clearInteractionHandle","hideKeyboard","Keyboard","dismiss","onGestureBegin","onGestureFinish","onGestureAbort","hitSlop","right","width","undefined","left","touchStartX","useSharedValue","touchX","translationX","gestureState","GestureState","UNDETERMINED","handleAnimationStart","useLatestCallback","handleAnimationEnd","finished","toggleDrawer","velocity","translateX","runOnJS","withSpring","stiffness","damping","mass","overshootClamping","restDisplacementThreshold","restSpeedThreshold","reduceMotion","ReduceMotion","Never","startX","pan","Gesture","Pan","onBegin","event","state","x","onStart","onChange","onEnd","success","nextOpen","abs","velocityX","activeOffsetX","failOffsetY","enabled","useDerivedValue","touchDistance","ACTIVE","drawerAnimatedStyle","useAnimatedStyle","distanceFromEdge","transform","contentAnimatedStyle","progress","interpolate","jsx","GestureHandlerRootView","styles","container","DrawerProgressContext","Provider","GestureDetector","gesture","jsxs","View","main","flexDirection","content","accessibilityElementsHidden","importantForAccessibility","Overlay","onPress","accessibilityLabel","removeClippedSubviews","drawer","position","zIndex","StyleSheet","create","flex","top","bottom","maxWidth","backgroundColor","select","web","overflow"],"sourceRoot":"../../../src","sources":["views/Drawer.native.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_useLatestCallback","_interopRequireDefault","_DrawerGestureContext","_DrawerProgressContext","_getDrawerWidth","_GestureHandler","_Overlay","_jsxRuntime","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","SWIPE_EDGE_WIDTH","SWIPE_MIN_OFFSET","SWIPE_MIN_DISTANCE","SWIPE_MIN_VELOCITY","minmax","value","start","end","Math","min","max","Drawer","layout","customLayout","direction","I18nManager","getConstants","isRTL","drawerPosition","drawerStyle","drawerType","configureGestureHandler","hideStatusBarOnOpen","keyboardDismissMode","onClose","onOpen","onGestureStart","onGestureCancel","onGestureEnd","onTransitionStart","onTransitionEnd","open","overlayStyle","overlayAccessibilityLabel","statusBarAnimation","swipeEnabled","Platform","OS","swipeEdgeWidth","swipeMinDistance","swipeMinVelocity","renderDrawerContent","children","style","windowDimensions","useWindowDimensions","drawerWidth","getDrawerWidth","isOpen","isRight","getDrawerTranslationX","useCallback","hideStatusBar","hide","StatusBar","setHidden","useEffect","interactionHandleRef","useRef","startInteraction","useLatestCallback","current","InteractionManager","createInteractionHandle","endInteraction","clearInteractionHandle","hideKeyboard","Keyboard","dismiss","onGestureBegin","onGestureFinish","onGestureAbort","hitSlop","useMemo","right","width","undefined","left","touchStartX","useSharedValue","touchX","translationX","gestureState","GestureState","UNDETERMINED","onAnimationStart","onAnimationEnd","finished","toggleDrawer","velocity","translateX","runOnJS","withSpring","stiffness","damping","mass","overshootClamping","restDisplacementThreshold","restSpeedThreshold","reduceMotion","ReduceMotion","Never","startX","pan","panGesture","Gesture","Pan","onBegin","event","state","x","onStart","onChange","onEnd","success","nextOpen","abs","velocityX","activeOffsetX","failOffsetY","enabled","useDerivedValue","touchDistance","ACTIVE","drawerAnimatedStyle","useAnimatedStyle","distanceFromEdge","zIndex","transform","contentAnimatedStyle","progress","interpolate","jsx","GestureHandlerRootView","styles","container","DrawerProgressContext","Provider","DrawerGestureContext","GestureDetector","gesture","jsxs","View","main","flexDirection","content","accessibilityElementsHidden","importantForAccessibility","Overlay","onPress","accessibilityLabel","removeClippedSubviews","drawer","position","StyleSheet","create","flex","top","bottom","maxWidth","backgroundColor","select","web","overflow"],"sourceRoot":"../../../src","sources":["views/Drawer.native.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ export { DrawerGestureContext } from "./utils/DrawerGestureContext.js";
3
4
  export { DrawerProgressContext } from "./utils/DrawerProgressContext.js";
4
5
  export { useDrawerProgress } from "./utils/useDrawerProgress.js";
5
6
  export { Drawer } from './views/Drawer';
@@ -1 +1 @@
1
- {"version":3,"names":["DrawerProgressContext","useDrawerProgress","Drawer"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,qBAAqB,QAAQ,kCAA+B;AACrE,SAASC,iBAAiB,QAAQ,8BAA2B;AAC7D,SAASC,MAAM,QAAQ,gBAAgB","ignoreList":[]}
1
+ {"version":3,"names":["DrawerGestureContext","DrawerProgressContext","useDrawerProgress","Drawer"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,oBAAoB,QAAQ,iCAA8B;AACnE,SAASC,qBAAqB,QAAQ,kCAA+B;AACrE,SAASC,iBAAiB,QAAQ,8BAA2B;AAC7D,SAASC,MAAM,QAAQ,gBAAgB","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ import * as React from 'react';
4
+ export const DrawerGestureContext = /*#__PURE__*/React.createContext(undefined);
5
+ //# sourceMappingURL=DrawerGestureContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","DrawerGestureContext","createContext","undefined"],"sourceRoot":"../../../src","sources":["utils/DrawerGestureContext.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAG9B,OAAO,MAAMC,oBAAoB,gBAAGD,KAAK,CAACE,aAAa,CACrDC,SACF,CAAC","ignoreList":[]}
@@ -4,6 +4,7 @@ import * as React from 'react';
4
4
  import { I18nManager, InteractionManager, Keyboard, Platform, StatusBar, StyleSheet, useWindowDimensions, View } from 'react-native';
5
5
  import Animated, { interpolate, ReduceMotion, runOnJS, useAnimatedStyle, useDerivedValue, useSharedValue, withSpring } from 'react-native-reanimated';
6
6
  import useLatestCallback from 'use-latest-callback';
7
+ import { DrawerGestureContext } from "../utils/DrawerGestureContext.js";
7
8
  import { DrawerProgressContext } from "../utils/DrawerProgressContext.js";
8
9
  import { getDrawerWidth } from "../utils/getDrawerWidth.js";
9
10
  import { Gesture, GestureDetector, GestureHandlerRootView, GestureState } from './GestureHandler';
@@ -72,38 +73,35 @@ export function Drawer({
72
73
  return () => hideStatusBar(false);
73
74
  }, [isOpen, hideStatusBarOnOpen, statusBarAnimation, hideStatusBar]);
74
75
  const interactionHandleRef = React.useRef(null);
75
- const startInteraction = () => {
76
+ const startInteraction = useLatestCallback(() => {
76
77
  interactionHandleRef.current = InteractionManager.createInteractionHandle();
77
- };
78
- const endInteraction = () => {
78
+ });
79
+ const endInteraction = useLatestCallback(() => {
79
80
  if (interactionHandleRef.current != null) {
80
81
  InteractionManager.clearInteractionHandle(interactionHandleRef.current);
81
82
  interactionHandleRef.current = null;
82
83
  }
83
- };
84
- const hideKeyboard = () => {
84
+ });
85
+ const hideKeyboard = useLatestCallback(() => {
85
86
  if (keyboardDismissMode === 'on-drag') {
86
87
  Keyboard.dismiss();
87
88
  }
88
- };
89
- const onGestureBegin = () => {
89
+ });
90
+ const onGestureBegin = useLatestCallback(() => {
90
91
  onGestureStart?.();
91
92
  startInteraction();
92
93
  hideKeyboard();
93
94
  hideStatusBar(true);
94
- };
95
- const onGestureFinish = () => {
95
+ });
96
+ const onGestureFinish = useLatestCallback(() => {
96
97
  onGestureEnd?.();
97
98
  endInteraction();
98
- };
99
- const onGestureAbort = () => {
99
+ });
100
+ const onGestureAbort = useLatestCallback(() => {
100
101
  onGestureCancel?.();
101
102
  endInteraction();
102
- };
103
-
104
- // FIXME: Currently hitSlop is broken when on Android when drawer is on right
105
- // https://github.com/software-mansion/react-native-gesture-handler/issues/569
106
- const hitSlop = isRight ?
103
+ });
104
+ const hitSlop = React.useMemo(() => isRight ?
107
105
  // Extend hitSlop to the side of the screen when drawer is closed
108
106
  // This lets the user drag the drawer from the side of the screen
109
107
  {
@@ -112,16 +110,18 @@ export function Drawer({
112
110
  } : {
113
111
  left: 0,
114
112
  width: isOpen ? undefined : swipeEdgeWidth
115
- };
113
+ }, [isRight, isOpen, swipeEdgeWidth]);
116
114
  const touchStartX = useSharedValue(0);
117
115
  const touchX = useSharedValue(0);
118
116
  const translationX = useSharedValue(getDrawerTranslationX(open));
119
117
  const gestureState = useSharedValue(GestureState.UNDETERMINED);
120
- const handleAnimationStart = useLatestCallback(open => {
118
+ const onAnimationStart = useLatestCallback(open => {
121
119
  onTransitionStart?.(!open);
122
120
  });
123
- const handleAnimationEnd = useLatestCallback((open, finished) => {
124
- if (!finished) return;
121
+ const onAnimationEnd = useLatestCallback((open, finished) => {
122
+ if (!finished) {
123
+ return;
124
+ }
125
125
  onTransitionEnd?.(!open);
126
126
  });
127
127
  const toggleDrawer = React.useCallback((open, velocity) => {
@@ -129,7 +129,7 @@ export function Drawer({
129
129
 
130
130
  const translateX = getDrawerTranslationX(open);
131
131
  if (velocity === undefined) {
132
- runOnJS(handleAnimationStart)(open);
132
+ runOnJS(onAnimationStart)(open);
133
133
  }
134
134
  touchStartX.value = 0;
135
135
  touchX.value = 0;
@@ -142,49 +142,52 @@ export function Drawer({
142
142
  restDisplacementThreshold: 0.01,
143
143
  restSpeedThreshold: 0.01,
144
144
  reduceMotion: ReduceMotion.Never
145
- }, finished => runOnJS(handleAnimationEnd)(open, finished));
145
+ }, finished => runOnJS(onAnimationEnd)(open, finished));
146
146
  if (open) {
147
147
  runOnJS(onOpen)();
148
148
  } else {
149
149
  runOnJS(onClose)();
150
150
  }
151
- }, [getDrawerTranslationX, handleAnimationEnd, handleAnimationStart, onClose, onOpen, touchStartX, touchX, translationX]);
151
+ }, [getDrawerTranslationX, onAnimationEnd, onAnimationStart, onClose, onOpen, touchStartX, touchX, translationX]);
152
152
  React.useEffect(() => toggleDrawer(open), [open, toggleDrawer]);
153
153
  const startX = useSharedValue(0);
154
- let pan = Gesture?.Pan().onBegin(event => {
155
- 'worklet';
154
+ const pan = React.useMemo(() => {
155
+ let panGesture = Gesture?.Pan().onBegin(event => {
156
+ 'worklet';
156
157
 
157
- startX.value = translationX.value;
158
- gestureState.value = event.state;
159
- touchStartX.value = event.x;
160
- }).onStart(() => {
161
- 'worklet';
158
+ startX.value = translationX.value;
159
+ gestureState.value = event.state;
160
+ touchStartX.value = event.x;
161
+ }).onStart(() => {
162
+ 'worklet';
162
163
 
163
- runOnJS(onGestureBegin)();
164
- }).onChange(event => {
165
- 'worklet';
164
+ runOnJS(onGestureBegin)();
165
+ }).onChange(event => {
166
+ 'worklet';
166
167
 
167
- touchX.value = event.x;
168
- translationX.value = startX.value + event.translationX;
169
- gestureState.value = event.state;
170
- }).onEnd((event, success) => {
171
- 'worklet';
168
+ touchX.value = event.x;
169
+ translationX.value = startX.value + event.translationX;
170
+ gestureState.value = event.state;
171
+ }).onEnd((event, success) => {
172
+ 'worklet';
172
173
 
173
- gestureState.value = event.state;
174
- if (!success) {
175
- runOnJS(onGestureAbort)();
174
+ gestureState.value = event.state;
175
+ if (!success) {
176
+ runOnJS(onGestureAbort)();
177
+ }
178
+ const nextOpen = Math.abs(event.translationX) > SWIPE_MIN_OFFSET && Math.abs(event.translationX) > swipeMinVelocity || Math.abs(event.translationX) > swipeMinDistance ? drawerPosition === 'left' ?
179
+ // If swiped to right, open the drawer, otherwise close it
180
+ (event.velocityX === 0 ? event.translationX : event.velocityX) > 0 :
181
+ // If swiped to left, open the drawer, otherwise close it
182
+ (event.velocityX === 0 ? event.translationX : event.velocityX) < 0 : open;
183
+ toggleDrawer(nextOpen, event.velocityX);
184
+ runOnJS(onGestureFinish)();
185
+ }).activeOffsetX([-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET]).failOffsetY([-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET]).hitSlop(hitSlop).enabled(drawerType !== 'permanent' && swipeEnabled);
186
+ if (panGesture && configureGestureHandler) {
187
+ panGesture = configureGestureHandler(panGesture);
176
188
  }
177
- const nextOpen = Math.abs(event.translationX) > SWIPE_MIN_OFFSET && Math.abs(event.translationX) > swipeMinVelocity || Math.abs(event.translationX) > swipeMinDistance ? drawerPosition === 'left' ?
178
- // If swiped to right, open the drawer, otherwise close it
179
- (event.velocityX === 0 ? event.translationX : event.velocityX) > 0 :
180
- // If swiped to left, open the drawer, otherwise close it
181
- (event.velocityX === 0 ? event.translationX : event.velocityX) < 0 : open;
182
- toggleDrawer(nextOpen, event.velocityX);
183
- runOnJS(onGestureFinish)();
184
- }).activeOffsetX([-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET]).failOffsetY([-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET]).hitSlop(hitSlop).enabled(drawerType !== 'permanent' && swipeEnabled);
185
- if (pan && configureGestureHandler) {
186
- pan = configureGestureHandler(pan);
187
- }
189
+ return panGesture;
190
+ }, [configureGestureHandler, drawerPosition, drawerType, gestureState, hitSlop, onGestureBegin, onGestureAbort, onGestureFinish, open, startX, swipeEnabled, swipeMinDistance, swipeMinVelocity, toggleDrawer, touchStartX, touchX, translationX]);
188
191
  const translateX = useDerivedValue(() => {
189
192
  // Comment stolen from react-native-gesture-handler/DrawerLayout
190
193
  //
@@ -218,6 +221,10 @@ export function Drawer({
218
221
  const drawerAnimatedStyle = useAnimatedStyle(() => {
219
222
  const distanceFromEdge = layout.width - drawerWidth;
220
223
  return {
224
+ // FIXME: Reanimated skips committing to the shadow tree if no layout props are animated
225
+ // This results in pressables not getting their correct position and can't be pressed
226
+ // So we animate the zIndex to force the commit - it doesn't affect the drawer visually
227
+ zIndex: translateX.value === 0 ? 0 : 1,
221
228
  transform: drawerType === 'permanent' ?
222
229
  // Reanimated needs the property to be present, but it results in Browser bug
223
230
  // https://bugs.chromium.org/p/chromium/issues/detail?id=20574
@@ -230,6 +237,8 @@ export function Drawer({
230
237
  }, [direction, drawerPosition, drawerType, drawerWidth, layout.width, translateX]);
231
238
  const contentAnimatedStyle = useAnimatedStyle(() => {
232
239
  return {
240
+ // FIXME: Force Reanimated to commit to the shadow tree
241
+ zIndex: translateX.value === 0 ? 0 : drawerType === 'back' ? 2 : 1,
233
242
  transform: drawerType === 'permanent' ?
234
243
  // Reanimated needs the property to be present, but it results in Browser bug
235
244
  // https://bugs.chromium.org/p/chromium/issues/detail?id=20574
@@ -247,35 +256,38 @@ export function Drawer({
247
256
  style: [styles.container, style],
248
257
  children: /*#__PURE__*/_jsx(DrawerProgressContext.Provider, {
249
258
  value: progress,
250
- children: /*#__PURE__*/_jsx(GestureDetector, {
251
- gesture: pan,
252
- children: /*#__PURE__*/_jsxs(Animated.View, {
253
- style: [styles.main, {
254
- flexDirection: drawerType === 'permanent' ? isRight && direction === 'ltr' || !isRight && direction === 'rtl' ? 'row' : 'row-reverse' : 'row'
255
- }],
256
- children: [/*#__PURE__*/_jsxs(Animated.View, {
257
- style: [styles.content, contentAnimatedStyle],
258
- children: [/*#__PURE__*/_jsx(View, {
259
- accessibilityElementsHidden: isOpen && drawerType !== 'permanent',
260
- importantForAccessibility: isOpen && drawerType !== 'permanent' ? 'no-hide-descendants' : 'auto',
261
- style: styles.content,
262
- children: children
263
- }), drawerType !== 'permanent' ? /*#__PURE__*/_jsx(Overlay, {
264
- open: open,
265
- progress: progress,
266
- onPress: () => toggleDrawer(false),
267
- style: overlayStyle,
268
- accessibilityLabel: overlayAccessibilityLabel
269
- }) : null]
270
- }), /*#__PURE__*/_jsx(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
- children: renderDrawerContent()
278
- })]
259
+ children: /*#__PURE__*/_jsx(DrawerGestureContext.Provider, {
260
+ value: pan,
261
+ children: /*#__PURE__*/_jsx(GestureDetector, {
262
+ gesture: pan,
263
+ children: /*#__PURE__*/_jsxs(Animated.View, {
264
+ style: [styles.main, {
265
+ flexDirection: drawerType === 'permanent' ? isRight && direction === 'ltr' || !isRight && direction === 'rtl' ? 'row' : 'row-reverse' : 'row'
266
+ }],
267
+ children: [/*#__PURE__*/_jsxs(Animated.View, {
268
+ style: [styles.content, contentAnimatedStyle],
269
+ children: [/*#__PURE__*/_jsx(View, {
270
+ accessibilityElementsHidden: isOpen && drawerType !== 'permanent',
271
+ importantForAccessibility: isOpen && drawerType !== 'permanent' ? 'no-hide-descendants' : 'auto',
272
+ style: styles.content,
273
+ children: children
274
+ }), drawerType !== 'permanent' ? /*#__PURE__*/_jsx(Overlay, {
275
+ open: open,
276
+ progress: progress,
277
+ onPress: () => toggleDrawer(false),
278
+ style: overlayStyle,
279
+ accessibilityLabel: overlayAccessibilityLabel
280
+ }) : null]
281
+ }), /*#__PURE__*/_jsx(Animated.View, {
282
+ removeClippedSubviews: Platform.OS !== 'ios',
283
+ style: [styles.drawer, {
284
+ width: drawerWidth,
285
+ position: drawerType === 'permanent' ? 'relative' : 'absolute',
286
+ zIndex: drawerType === 'back' ? -1 : 0
287
+ }, drawerAnimatedStyle, drawerStyle],
288
+ children: renderDrawerContent()
289
+ })]
290
+ })
279
291
  })
280
292
  })
281
293
  })
@@ -1 +1 @@
1
- {"version":3,"names":["React","I18nManager","InteractionManager","Keyboard","Platform","StatusBar","StyleSheet","useWindowDimensions","View","Animated","interpolate","ReduceMotion","runOnJS","useAnimatedStyle","useDerivedValue","useSharedValue","withSpring","useLatestCallback","DrawerProgressContext","getDrawerWidth","Gesture","GestureDetector","GestureHandlerRootView","GestureState","Overlay","jsx","_jsx","jsxs","_jsxs","SWIPE_EDGE_WIDTH","SWIPE_MIN_OFFSET","SWIPE_MIN_DISTANCE","SWIPE_MIN_VELOCITY","minmax","value","start","end","Math","min","max","Drawer","layout","customLayout","direction","getConstants","isRTL","drawerPosition","drawerStyle","drawerType","configureGestureHandler","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","reduceMotion","Never","startX","pan","Pan","onBegin","event","state","x","onStart","onChange","onEnd","success","nextOpen","abs","velocityX","activeOffsetX","failOffsetY","enabled","touchDistance","ACTIVE","drawerAnimatedStyle","distanceFromEdge","transform","contentAnimatedStyle","progress","styles","container","Provider","gesture","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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","ignoreList":[]}
1
+ {"version":3,"names":["React","I18nManager","InteractionManager","Keyboard","Platform","StatusBar","StyleSheet","useWindowDimensions","View","Animated","interpolate","ReduceMotion","runOnJS","useAnimatedStyle","useDerivedValue","useSharedValue","withSpring","useLatestCallback","DrawerGestureContext","DrawerProgressContext","getDrawerWidth","Gesture","GestureDetector","GestureHandlerRootView","GestureState","Overlay","jsx","_jsx","jsxs","_jsxs","SWIPE_EDGE_WIDTH","SWIPE_MIN_OFFSET","SWIPE_MIN_DISTANCE","SWIPE_MIN_VELOCITY","minmax","value","start","end","Math","min","max","Drawer","layout","customLayout","direction","getConstants","isRTL","drawerPosition","drawerStyle","drawerType","configureGestureHandler","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","useMemo","right","width","undefined","left","touchStartX","touchX","translationX","gestureState","UNDETERMINED","onAnimationStart","onAnimationEnd","finished","toggleDrawer","velocity","translateX","stiffness","damping","mass","overshootClamping","restDisplacementThreshold","restSpeedThreshold","reduceMotion","Never","startX","pan","panGesture","Pan","onBegin","event","state","x","onStart","onChange","onEnd","success","nextOpen","abs","velocityX","activeOffsetX","failOffsetY","enabled","touchDistance","ACTIVE","drawerAnimatedStyle","distanceFromEdge","zIndex","transform","contentAnimatedStyle","progress","styles","container","Provider","gesture","main","flexDirection","content","accessibilityElementsHidden","importantForAccessibility","onPress","accessibilityLabel","removeClippedSubviews","drawer","position","create","flex","top","bottom","maxWidth","backgroundColor","select","web","default","overflow"],"sourceRoot":"../../../src","sources":["views/Drawer.native.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ export { DrawerGestureContext } from './utils/DrawerGestureContext';
1
2
  export { DrawerProgressContext } from './utils/DrawerProgressContext';
2
3
  export { useDrawerProgress } from './utils/useDrawerProgress';
3
4
  export { Drawer } from './views/Drawer';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ export declare const DrawerGestureContext: React.Context<import("react-native-gesture-handler/lib/typescript/handlers/gestures/panGesture").PanGesture | undefined>;
3
+ //# sourceMappingURL=DrawerGestureContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DrawerGestureContext.d.ts","sourceRoot":"","sources":["../../../../../src/utils/DrawerGestureContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,eAAO,MAAM,oBAAoB,0HAEhC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Drawer.native.d.ts","sourceRoot":"","sources":["../../../../../src/views/Drawer.native.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAsB5C,wBAAgB,MAAM,CAAC,EACrB,MAAM,EAAE,YAAY,EACpB,SAA4D,EAC5D,cAAuD,EACvD,WAAW,EACX,UAAoB,EACpB,uBAAuB,EACvB,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,2CA8Wb"}
1
+ {"version":3,"file":"Drawer.native.d.ts","sourceRoot":"","sources":["../../../../../src/views/Drawer.native.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAuB5C,wBAAgB,MAAM,CAAC,EACrB,MAAM,EAAE,YAAY,EACpB,SAA4D,EAC5D,cAAuD,EACvD,WAAW,EACX,UAAoB,EACpB,uBAAuB,EACvB,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,2CAuZb"}
@@ -1,3 +1,4 @@
1
+ export { DrawerGestureContext } from './utils/DrawerGestureContext';
1
2
  export { DrawerProgressContext } from './utils/DrawerProgressContext';
2
3
  export { useDrawerProgress } from './utils/useDrawerProgress';
3
4
  export { Drawer } from './views/Drawer';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ export declare const DrawerGestureContext: React.Context<import("react-native-gesture-handler/lib/typescript/handlers/gestures/panGesture").PanGesture | undefined>;
3
+ //# sourceMappingURL=DrawerGestureContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DrawerGestureContext.d.ts","sourceRoot":"","sources":["../../../../../src/utils/DrawerGestureContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,eAAO,MAAM,oBAAoB,0HAEhC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Drawer.native.d.ts","sourceRoot":"","sources":["../../../../../src/views/Drawer.native.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAsB5C,wBAAgB,MAAM,CAAC,EACrB,MAAM,EAAE,YAAY,EACpB,SAA4D,EAC5D,cAAuD,EACvD,WAAW,EACX,UAAoB,EACpB,uBAAuB,EACvB,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,2CA8Wb"}
1
+ {"version":3,"file":"Drawer.native.d.ts","sourceRoot":"","sources":["../../../../../src/views/Drawer.native.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAuB5C,wBAAgB,MAAM,CAAC,EACrB,MAAM,EAAE,YAAY,EACpB,SAA4D,EAC5D,cAAuD,EACvD,WAAW,EACX,UAAoB,EACpB,uBAAuB,EACvB,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,2CAuZb"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "react-native-drawer-layout",
3
3
  "description": "Drawer component for React Native",
4
- "version": "4.0.4",
4
+ "version": "4.1.1",
5
5
  "keywords": [
6
6
  "react-native-component",
7
7
  "react-component",
@@ -88,5 +88,5 @@
88
88
  ]
89
89
  ]
90
90
  },
91
- "gitHead": "64f76eef67edcf799563eb5bf4a8715b97169508"
91
+ "gitHead": "454c9e11ec55ed89d2d7bb8dd0b0018ace2bd022"
92
92
  }
package/src/index.tsx CHANGED
@@ -1,3 +1,4 @@
1
+ export { DrawerGestureContext } from './utils/DrawerGestureContext';
1
2
  export { DrawerProgressContext } from './utils/DrawerProgressContext';
2
3
  export { useDrawerProgress } from './utils/useDrawerProgress';
3
4
  export { Drawer } from './views/Drawer';
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+ import type { PanGesture } from 'react-native-gesture-handler';
3
+
4
+ export const DrawerGestureContext = React.createContext<PanGesture | undefined>(
5
+ undefined
6
+ );
@@ -21,6 +21,7 @@ import Animated, {
21
21
  import useLatestCallback from 'use-latest-callback';
22
22
 
23
23
  import type { DrawerProps } from '../types';
24
+ import { DrawerGestureContext } from '../utils/DrawerGestureContext';
24
25
  import { DrawerProgressContext } from '../utils/DrawerProgressContext';
25
26
  import { getDrawerWidth } from '../utils/getDrawerWidth';
26
27
  import {
@@ -110,60 +111,65 @@ export function Drawer({
110
111
 
111
112
  const interactionHandleRef = React.useRef<number | null>(null);
112
113
 
113
- const startInteraction = () => {
114
+ const startInteraction = useLatestCallback(() => {
114
115
  interactionHandleRef.current = InteractionManager.createInteractionHandle();
115
- };
116
+ });
116
117
 
117
- const endInteraction = () => {
118
+ const endInteraction = useLatestCallback(() => {
118
119
  if (interactionHandleRef.current != null) {
119
120
  InteractionManager.clearInteractionHandle(interactionHandleRef.current);
120
121
  interactionHandleRef.current = null;
121
122
  }
122
- };
123
+ });
123
124
 
124
- const hideKeyboard = () => {
125
+ const hideKeyboard = useLatestCallback(() => {
125
126
  if (keyboardDismissMode === 'on-drag') {
126
127
  Keyboard.dismiss();
127
128
  }
128
- };
129
+ });
129
130
 
130
- const onGestureBegin = () => {
131
+ const onGestureBegin = useLatestCallback(() => {
131
132
  onGestureStart?.();
132
133
  startInteraction();
133
134
  hideKeyboard();
134
135
  hideStatusBar(true);
135
- };
136
+ });
136
137
 
137
- const onGestureFinish = () => {
138
+ const onGestureFinish = useLatestCallback(() => {
138
139
  onGestureEnd?.();
139
140
  endInteraction();
140
- };
141
+ });
141
142
 
142
- const onGestureAbort = () => {
143
+ const onGestureAbort = useLatestCallback(() => {
143
144
  onGestureCancel?.();
144
145
  endInteraction();
145
- };
146
+ });
146
147
 
147
- // FIXME: Currently hitSlop is broken when on Android when drawer is on right
148
- // https://github.com/software-mansion/react-native-gesture-handler/issues/569
149
- const hitSlop = isRight
150
- ? // Extend hitSlop to the side of the screen when drawer is closed
151
- // This lets the user drag the drawer from the side of the screen
152
- { right: 0, width: isOpen ? undefined : swipeEdgeWidth }
153
- : { left: 0, width: isOpen ? undefined : swipeEdgeWidth };
148
+ const hitSlop = React.useMemo(
149
+ () =>
150
+ isRight
151
+ ? // Extend hitSlop to the side of the screen when drawer is closed
152
+ // This lets the user drag the drawer from the side of the screen
153
+ { right: 0, width: isOpen ? undefined : swipeEdgeWidth }
154
+ : { left: 0, width: isOpen ? undefined : swipeEdgeWidth },
155
+ [isRight, isOpen, swipeEdgeWidth]
156
+ );
154
157
 
155
158
  const touchStartX = useSharedValue(0);
156
159
  const touchX = useSharedValue(0);
157
160
  const translationX = useSharedValue(getDrawerTranslationX(open));
158
161
  const gestureState = useSharedValue<GestureState>(GestureState.UNDETERMINED);
159
162
 
160
- const handleAnimationStart = useLatestCallback((open: boolean) => {
163
+ const onAnimationStart = useLatestCallback((open: boolean) => {
161
164
  onTransitionStart?.(!open);
162
165
  });
163
166
 
164
- const handleAnimationEnd = useLatestCallback(
167
+ const onAnimationEnd = useLatestCallback(
165
168
  (open: boolean, finished?: boolean) => {
166
- if (!finished) return;
169
+ if (!finished) {
170
+ return;
171
+ }
172
+
167
173
  onTransitionEnd?.(!open);
168
174
  }
169
175
  );
@@ -175,7 +181,7 @@ export function Drawer({
175
181
  const translateX = getDrawerTranslationX(open);
176
182
 
177
183
  if (velocity === undefined) {
178
- runOnJS(handleAnimationStart)(open);
184
+ runOnJS(onAnimationStart)(open);
179
185
  }
180
186
 
181
187
  touchStartX.value = 0;
@@ -192,7 +198,7 @@ export function Drawer({
192
198
  restSpeedThreshold: 0.01,
193
199
  reduceMotion: ReduceMotion.Never,
194
200
  },
195
- (finished) => runOnJS(handleAnimationEnd)(open, finished)
201
+ (finished) => runOnJS(onAnimationEnd)(open, finished)
196
202
  );
197
203
 
198
204
  if (open) {
@@ -203,8 +209,8 @@ export function Drawer({
203
209
  },
204
210
  [
205
211
  getDrawerTranslationX,
206
- handleAnimationEnd,
207
- handleAnimationStart,
212
+ onAnimationEnd,
213
+ onAnimationStart,
208
214
  onClose,
209
215
  onOpen,
210
216
  touchStartX,
@@ -217,53 +223,81 @@ export function Drawer({
217
223
 
218
224
  const startX = useSharedValue(0);
219
225
 
220
- let pan = Gesture?.Pan()
221
- .onBegin((event) => {
222
- 'worklet';
223
- startX.value = translationX.value;
224
- gestureState.value = event.state;
225
- touchStartX.value = event.x;
226
- })
227
- .onStart(() => {
228
- 'worklet';
229
- runOnJS(onGestureBegin)();
230
- })
231
- .onChange((event) => {
232
- 'worklet';
233
- touchX.value = event.x;
234
- translationX.value = startX.value + event.translationX;
235
- gestureState.value = event.state;
236
- })
237
- .onEnd((event, success) => {
238
- 'worklet';
239
- gestureState.value = event.state;
240
-
241
- if (!success) {
242
- runOnJS(onGestureAbort)();
243
- }
226
+ const pan = React.useMemo(() => {
227
+ let panGesture = Gesture?.Pan()
228
+ .onBegin((event) => {
229
+ 'worklet';
230
+
231
+ startX.value = translationX.value;
232
+ gestureState.value = event.state;
233
+ touchStartX.value = event.x;
234
+ })
235
+ .onStart(() => {
236
+ 'worklet';
237
+
238
+ runOnJS(onGestureBegin)();
239
+ })
240
+ .onChange((event) => {
241
+ 'worklet';
242
+
243
+ touchX.value = event.x;
244
+ translationX.value = startX.value + event.translationX;
245
+ gestureState.value = event.state;
246
+ })
247
+ .onEnd((event, success) => {
248
+ 'worklet';
249
+
250
+ gestureState.value = event.state;
251
+
252
+ if (!success) {
253
+ runOnJS(onGestureAbort)();
254
+ }
255
+
256
+ const nextOpen =
257
+ (Math.abs(event.translationX) > SWIPE_MIN_OFFSET &&
258
+ Math.abs(event.translationX) > swipeMinVelocity) ||
259
+ Math.abs(event.translationX) > swipeMinDistance
260
+ ? drawerPosition === 'left'
261
+ ? // If swiped to right, open the drawer, otherwise close it
262
+ (event.velocityX === 0 ? event.translationX : event.velocityX) >
263
+ 0
264
+ : // If swiped to left, open the drawer, otherwise close it
265
+ (event.velocityX === 0 ? event.translationX : event.velocityX) <
266
+ 0
267
+ : open;
268
+
269
+ toggleDrawer(nextOpen, event.velocityX);
270
+ runOnJS(onGestureFinish)();
271
+ })
272
+ .activeOffsetX([-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET])
273
+ .failOffsetY([-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET])
274
+ .hitSlop(hitSlop)
275
+ .enabled(drawerType !== 'permanent' && swipeEnabled);
276
+
277
+ if (panGesture && configureGestureHandler) {
278
+ panGesture = configureGestureHandler(panGesture);
279
+ }
244
280
 
245
- const nextOpen =
246
- (Math.abs(event.translationX) > SWIPE_MIN_OFFSET &&
247
- Math.abs(event.translationX) > swipeMinVelocity) ||
248
- Math.abs(event.translationX) > swipeMinDistance
249
- ? drawerPosition === 'left'
250
- ? // If swiped to right, open the drawer, otherwise close it
251
- (event.velocityX === 0 ? event.translationX : event.velocityX) > 0
252
- : // If swiped to left, open the drawer, otherwise close it
253
- (event.velocityX === 0 ? event.translationX : event.velocityX) < 0
254
- : open;
255
-
256
- toggleDrawer(nextOpen, event.velocityX);
257
- runOnJS(onGestureFinish)();
258
- })
259
- .activeOffsetX([-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET])
260
- .failOffsetY([-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET])
261
- .hitSlop(hitSlop)
262
- .enabled(drawerType !== 'permanent' && swipeEnabled);
263
-
264
- if (pan && configureGestureHandler) {
265
- pan = configureGestureHandler(pan);
266
- }
281
+ return panGesture;
282
+ }, [
283
+ configureGestureHandler,
284
+ drawerPosition,
285
+ drawerType,
286
+ gestureState,
287
+ hitSlop,
288
+ onGestureBegin,
289
+ onGestureAbort,
290
+ onGestureFinish,
291
+ open,
292
+ startX,
293
+ swipeEnabled,
294
+ swipeMinDistance,
295
+ swipeMinVelocity,
296
+ toggleDrawer,
297
+ touchStartX,
298
+ touchX,
299
+ translationX,
300
+ ]);
267
301
 
268
302
  const translateX = useDerivedValue(() => {
269
303
  // Comment stolen from react-native-gesture-handler/DrawerLayout
@@ -314,6 +348,10 @@ export function Drawer({
314
348
  const distanceFromEdge = layout.width - drawerWidth;
315
349
 
316
350
  return {
351
+ // FIXME: Reanimated skips committing to the shadow tree if no layout props are animated
352
+ // This results in pressables not getting their correct position and can't be pressed
353
+ // So we animate the zIndex to force the commit - it doesn't affect the drawer visually
354
+ zIndex: translateX.value === 0 ? 0 : 1,
317
355
  transform:
318
356
  drawerType === 'permanent'
319
357
  ? // Reanimated needs the property to be present, but it results in Browser bug
@@ -345,6 +383,8 @@ export function Drawer({
345
383
 
346
384
  const contentAnimatedStyle = useAnimatedStyle(() => {
347
385
  return {
386
+ // FIXME: Force Reanimated to commit to the shadow tree
387
+ zIndex: translateX.value === 0 ? 0 : drawerType === 'back' ? 2 : 1,
348
388
  transform:
349
389
  drawerType === 'permanent'
350
390
  ? // Reanimated needs the property to be present, but it results in Browser bug
@@ -376,64 +416,66 @@ export function Drawer({
376
416
  return (
377
417
  <GestureHandlerRootView style={[styles.container, style]}>
378
418
  <DrawerProgressContext.Provider value={progress}>
379
- <GestureDetector gesture={pan}>
380
- {/* Immediate child of gesture handler needs to be an Animated.View */}
381
- <Animated.View
382
- style={[
383
- styles.main,
384
- {
385
- flexDirection:
386
- drawerType === 'permanent'
387
- ? (isRight && direction === 'ltr') ||
388
- (!isRight && direction === 'rtl')
389
- ? 'row'
390
- : 'row-reverse'
391
- : 'row',
392
- },
393
- ]}
394
- >
395
- <Animated.View style={[styles.content, contentAnimatedStyle]}>
396
- <View
397
- accessibilityElementsHidden={
398
- isOpen && drawerType !== 'permanent'
399
- }
400
- importantForAccessibility={
401
- isOpen && drawerType !== 'permanent'
402
- ? 'no-hide-descendants'
403
- : 'auto'
404
- }
405
- style={styles.content}
406
- >
407
- {children}
408
- </View>
409
- {drawerType !== 'permanent' ? (
410
- <Overlay
411
- open={open}
412
- progress={progress}
413
- onPress={() => toggleDrawer(false)}
414
- style={overlayStyle}
415
- accessibilityLabel={overlayAccessibilityLabel}
416
- />
417
- ) : null}
418
- </Animated.View>
419
+ <DrawerGestureContext.Provider value={pan}>
420
+ <GestureDetector gesture={pan}>
421
+ {/* Immediate child of gesture handler needs to be an Animated.View */}
419
422
  <Animated.View
420
- removeClippedSubviews={Platform.OS !== 'ios'}
421
423
  style={[
422
- styles.drawer,
424
+ styles.main,
423
425
  {
424
- width: drawerWidth,
425
- position:
426
- drawerType === 'permanent' ? 'relative' : 'absolute',
427
- zIndex: drawerType === 'back' ? -1 : 0,
426
+ flexDirection:
427
+ drawerType === 'permanent'
428
+ ? (isRight && direction === 'ltr') ||
429
+ (!isRight && direction === 'rtl')
430
+ ? 'row'
431
+ : 'row-reverse'
432
+ : 'row',
428
433
  },
429
- drawerAnimatedStyle,
430
- drawerStyle,
431
434
  ]}
432
435
  >
433
- {renderDrawerContent()}
436
+ <Animated.View style={[styles.content, contentAnimatedStyle]}>
437
+ <View
438
+ accessibilityElementsHidden={
439
+ isOpen && drawerType !== 'permanent'
440
+ }
441
+ importantForAccessibility={
442
+ isOpen && drawerType !== 'permanent'
443
+ ? 'no-hide-descendants'
444
+ : 'auto'
445
+ }
446
+ style={styles.content}
447
+ >
448
+ {children}
449
+ </View>
450
+ {drawerType !== 'permanent' ? (
451
+ <Overlay
452
+ open={open}
453
+ progress={progress}
454
+ onPress={() => toggleDrawer(false)}
455
+ style={overlayStyle}
456
+ accessibilityLabel={overlayAccessibilityLabel}
457
+ />
458
+ ) : null}
459
+ </Animated.View>
460
+ <Animated.View
461
+ removeClippedSubviews={Platform.OS !== 'ios'}
462
+ style={[
463
+ styles.drawer,
464
+ {
465
+ width: drawerWidth,
466
+ position:
467
+ drawerType === 'permanent' ? 'relative' : 'absolute',
468
+ zIndex: drawerType === 'back' ? -1 : 0,
469
+ },
470
+ drawerAnimatedStyle,
471
+ drawerStyle,
472
+ ]}
473
+ >
474
+ {renderDrawerContent()}
475
+ </Animated.View>
434
476
  </Animated.View>
435
- </Animated.View>
436
- </GestureDetector>
477
+ </GestureDetector>
478
+ </DrawerGestureContext.Provider>
437
479
  </DrawerProgressContext.Provider>
438
480
  </GestureHandlerRootView>
439
481
  );