react-native-drawer-layout 4.2.12 → 4.2.13

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 (32) hide show
  1. package/lib/module/utils/DrawerGestureContext.js.map +1 -1
  2. package/lib/module/utils/getDrawerWidth.js +16 -8
  3. package/lib/module/utils/getDrawerWidth.js.map +1 -1
  4. package/lib/module/views/Drawer.js +1 -3
  5. package/lib/module/views/Drawer.js.map +1 -1
  6. package/lib/module/views/Drawer.native.js +54 -20
  7. package/lib/module/views/Drawer.native.js.map +1 -1
  8. package/lib/module/views/GestureHandler.js.map +1 -1
  9. package/lib/module/views/InteractionManager.js +1 -0
  10. package/lib/module/views/InteractionManager.js.map +1 -1
  11. package/lib/module/views/Overlay.native.js +2 -2
  12. package/lib/module/views/Overlay.native.js.map +1 -1
  13. package/lib/typescript/src/types.d.ts +1 -1
  14. package/lib/typescript/src/types.d.ts.map +1 -1
  15. package/lib/typescript/src/utils/DrawerGestureContext.d.ts +2 -1
  16. package/lib/typescript/src/utils/DrawerGestureContext.d.ts.map +1 -1
  17. package/lib/typescript/src/utils/getDrawerWidth.d.ts +5 -7
  18. package/lib/typescript/src/utils/getDrawerWidth.d.ts.map +1 -1
  19. package/lib/typescript/src/views/Drawer.d.ts.map +1 -1
  20. package/lib/typescript/src/views/Drawer.native.d.ts.map +1 -1
  21. package/lib/typescript/src/views/GestureHandler.d.ts +1 -0
  22. package/lib/typescript/src/views/GestureHandler.d.ts.map +1 -1
  23. package/lib/typescript/src/views/InteractionManager.d.ts.map +1 -1
  24. package/package.json +10 -14
  25. package/src/types.tsx +2 -1
  26. package/src/utils/DrawerGestureContext.tsx +4 -4
  27. package/src/utils/getDrawerWidth.tsx +31 -10
  28. package/src/views/Drawer.native.tsx +74 -25
  29. package/src/views/Drawer.tsx +1 -2
  30. package/src/views/GestureHandler.tsx +5 -1
  31. package/src/views/InteractionManager.tsx +1 -0
  32. package/src/views/Overlay.native.tsx +2 -2
@@ -1 +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":[]}
1
+ {"version":3,"names":["React","DrawerGestureContext","createContext","undefined"],"sourceRoot":"../../../src","sources":["utils/DrawerGestureContext.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAI9B,OAAO,MAAMC,oBAA2D,gBACtED,KAAK,CAACE,aAAa,CAAyBC,SAAS,CAAC","ignoreList":[]}
@@ -11,21 +11,29 @@ const DEFAULT_DRAWER_WIDTH = 360;
11
11
  */
12
12
  const DRAWER_DEFAULT_WIDTH_WEB = `min(calc(100% - ${APPROX_APP_BAR_HEIGHT}px), ${DEFAULT_DRAWER_WIDTH}px)`;
13
13
  export function getDrawerWidthNative({
14
- layout,
15
- drawerStyle
14
+ containerWidth,
15
+ customWidth,
16
+ customMaxWidth
16
17
  }) {
17
- const defaultWidth = Math.max(layout.width - APPROX_APP_BAR_HEIGHT <= 360 ? layout.width - APPROX_APP_BAR_HEIGHT : DEFAULT_DRAWER_WIDTH, 0);
18
- const {
19
- width = defaultWidth
20
- } = StyleSheet.flatten(drawerStyle) || {};
18
+ 'worklet';
19
+
20
+ const defaultWidth = Math.max(containerWidth - APPROX_APP_BAR_HEIGHT <= DEFAULT_DRAWER_WIDTH ? containerWidth - APPROX_APP_BAR_HEIGHT : DEFAULT_DRAWER_WIDTH, 0);
21
+ let width = customWidth ?? defaultWidth;
22
+ let maxWidth = customMaxWidth ?? containerWidth;
21
23
  if (typeof width === 'string' && width.endsWith('%')) {
22
24
  // Try to calculate width if a percentage is given
23
25
  const percentage = Number(width.replace(/%$/, ''));
24
26
  if (Number.isFinite(percentage)) {
25
- return layout.width * (percentage / 100);
27
+ width = containerWidth * (percentage / 100);
28
+ }
29
+ }
30
+ if (typeof maxWidth === 'string' && maxWidth.endsWith('%')) {
31
+ const percentage = Number(maxWidth.replace(/%$/, ''));
32
+ if (Number.isFinite(percentage)) {
33
+ maxWidth = containerWidth * (percentage / 100);
26
34
  }
27
35
  }
28
- return typeof width === 'number' ? width : defaultWidth;
36
+ return Math.min(typeof width === 'number' ? width : defaultWidth, typeof maxWidth === 'number' ? maxWidth : containerWidth);
29
37
  }
30
38
  export function getDrawerWidthWeb({
31
39
  drawerStyle
@@ -1 +1 @@
1
- {"version":3,"names":["StyleSheet","APPROX_APP_BAR_HEIGHT","DEFAULT_DRAWER_WIDTH","DRAWER_DEFAULT_WIDTH_WEB","getDrawerWidthNative","layout","drawerStyle","defaultWidth","Math","max","width","flatten","endsWith","percentage","Number","replace","isFinite","getDrawerWidthWeb"],"sourceRoot":"../../../src","sources":["utils/getDrawerWidth.tsx"],"mappings":";;AAAA,SAAyBA,UAAU,QAAwB,cAAc;AAEzE,MAAMC,qBAAqB,GAAG,EAAE;AAChC,MAAMC,oBAAoB,GAAG,GAAG;;AAEhC;AACA;AACA;AACA;AACA;AACA,MAAMC,wBAAwB,GAAG,mBAAmBF,qBAAqB,QAAQC,oBAAoB,KAAK;AAE1G,OAAO,SAASE,oBAAoBA,CAAC;EACnCC,MAAM;EACNC;AAIF,CAAC,EAAE;EACD,MAAMC,YAAY,GAAGC,IAAI,CAACC,GAAG,CAC3BJ,MAAM,CAACK,KAAK,GAAGT,qBAAqB,IAAI,GAAG,GACvCI,MAAM,CAACK,KAAK,GAAGT,qBAAqB,GACpCC,oBAAoB,EACxB,CACF,CAAC;EAED,MAAM;IAAEQ,KAAK,GAAGH;EAAa,CAAC,GAAGP,UAAU,CAACW,OAAO,CAACL,WAAW,CAAC,IAAI,CAAC,CAAC;EAEtE,IAAI,OAAOI,KAAK,KAAK,QAAQ,IAAIA,KAAK,CAACE,QAAQ,CAAC,GAAG,CAAC,EAAE;IACpD;IACA,MAAMC,UAAU,GAAGC,MAAM,CAACJ,KAAK,CAACK,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAElD,IAAID,MAAM,CAACE,QAAQ,CAACH,UAAU,CAAC,EAAE;MAC/B,OAAOR,MAAM,CAACK,KAAK,IAAIG,UAAU,GAAG,GAAG,CAAC;IAC1C;EACF;EAEA,OAAO,OAAOH,KAAK,KAAK,QAAQ,GAAGA,KAAK,GAAGH,YAAY;AACzD;AAEA,OAAO,SAASU,iBAAiBA,CAAC;EAChCX;AAGF,CAAC,EAAU;EACT,MAAM;IAAEI;EAAM,CAAC,GAAGV,UAAU,CAACW,OAAO,CAACL,WAAW,CAAC,IAAI,CAAC,CAAC;EAEvD,IAAI,OAAOI,KAAK,KAAK,QAAQ,EAAE;IAC7B,OAAO,GAAGA,KAAK,IAAI;EACrB;EAEA,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7B,OAAOA,KAAK;EACd;EAEA,OAAOP,wBAAwB;AACjC","ignoreList":[]}
1
+ {"version":3,"names":["StyleSheet","APPROX_APP_BAR_HEIGHT","DEFAULT_DRAWER_WIDTH","DRAWER_DEFAULT_WIDTH_WEB","getDrawerWidthNative","containerWidth","customWidth","customMaxWidth","defaultWidth","Math","max","width","maxWidth","endsWith","percentage","Number","replace","isFinite","min","getDrawerWidthWeb","drawerStyle","flatten"],"sourceRoot":"../../../src","sources":["utils/getDrawerWidth.tsx"],"mappings":";;AAAA,SAGEA,UAAU,QAEL,cAAc;AAErB,MAAMC,qBAAqB,GAAG,EAAE;AAChC,MAAMC,oBAAoB,GAAG,GAAG;;AAEhC;AACA;AACA;AACA;AACA;AACA,MAAMC,wBAAwB,GAAG,mBAAmBF,qBAAqB,QAAQC,oBAAoB,KAAK;AAE1G,OAAO,SAASE,oBAAoBA,CAAC;EACnCC,cAAc;EACdC,WAAW;EACXC;AAKF,CAAC,EAAE;EACD,SAAS;;EAET,MAAMC,YAAY,GAAGC,IAAI,CAACC,GAAG,CAC3BL,cAAc,GAAGJ,qBAAqB,IAAIC,oBAAoB,GAC1DG,cAAc,GAAGJ,qBAAqB,GACtCC,oBAAoB,EACxB,CACF,CAAC;EAED,IAAIS,KAAK,GAAGL,WAAW,IAAIE,YAAY;EACvC,IAAII,QAAQ,GAAGL,cAAc,IAAIF,cAAc;EAE/C,IAAI,OAAOM,KAAK,KAAK,QAAQ,IAAIA,KAAK,CAACE,QAAQ,CAAC,GAAG,CAAC,EAAE;IACpD;IACA,MAAMC,UAAU,GAAGC,MAAM,CAACJ,KAAK,CAACK,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAElD,IAAID,MAAM,CAACE,QAAQ,CAACH,UAAU,CAAC,EAAE;MAC/BH,KAAK,GAAGN,cAAc,IAAIS,UAAU,GAAG,GAAG,CAAC;IAC7C;EACF;EAEA,IAAI,OAAOF,QAAQ,KAAK,QAAQ,IAAIA,QAAQ,CAACC,QAAQ,CAAC,GAAG,CAAC,EAAE;IAC1D,MAAMC,UAAU,GAAGC,MAAM,CAACH,QAAQ,CAACI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAErD,IAAID,MAAM,CAACE,QAAQ,CAACH,UAAU,CAAC,EAAE;MAC/BF,QAAQ,GAAGP,cAAc,IAAIS,UAAU,GAAG,GAAG,CAAC;IAChD;EACF;EAEA,OAAOL,IAAI,CAACS,GAAG,CACb,OAAOP,KAAK,KAAK,QAAQ,GAAGA,KAAK,GAAGH,YAAY,EAChD,OAAOI,QAAQ,KAAK,QAAQ,GAAGA,QAAQ,GAAGP,cAC5C,CAAC;AACH;AAEA,OAAO,SAASc,iBAAiBA,CAAC;EAChCC;AAGF,CAAC,EAAU;EACT,MAAM;IAAET;EAAM,CAAC,GAAGX,UAAU,CAACqB,OAAO,CAACD,WAAW,CAAC,IAAI,CAAC,CAAC;EAEvD,IAAI,OAAOT,KAAK,KAAK,QAAQ,EAAE;IAC7B,OAAO,GAAGA,KAAK,IAAI;EACrB;EAEA,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7B,OAAOA,KAAK;EACd;EAEA,OAAOR,wBAAwB;AACjC","ignoreList":[]}
@@ -75,9 +75,7 @@ export function Drawer({
75
75
  // FIXME: width contains `px` on web
76
76
  {
77
77
  width: drawerWidth
78
- },
79
- // @ts-expect-error offset contains `calc` for web
80
- drawerType !== 'permanent' ?
78
+ }, drawerType !== 'permanent' ?
81
79
  // Position drawer off-screen by default in closed state
82
80
  // And add a translation only when drawer is open
83
81
  // So changing position in closed state won't trigger a visible transition
@@ -1 +1 @@
1
- {"version":3,"names":["React","StyleSheet","View","useLatestCallback","DrawerProgressContext","getDrawerWidthWeb","useFakeSharedValue","Overlay","jsx","_jsx","jsxs","_jsxs","Drawer","direction","drawerPosition","drawerStyle","drawerType","onClose","onTransitionStart","onTransitionEnd","open","overlayStyle","overlayAccessibilityLabel","renderDrawerContent","children","style","drawerWidth","progress","useEffect","value","drawerRef","useRef","onTransitionStartLatest","e","target","currentTarget","propertyName","onTransitionEndLatest","element","current","addEventListener","removeEventListener","isOpen","isRight","drawerTranslateX","drawerAnimatedStyle","transition","transform","contentTranslateX","contentAnimatedStyle","drawerElement","ref","styles","drawer","position","zIndex","width","right","left","mainContent","content","onPress","accessibilityLabel","Provider","container","create","flex","flexDirection","top","bottom","maxWidth","backgroundColor"],"sourceRoot":"../../../src","sources":["views/Drawer.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","StyleSheet","View","useLatestCallback","DrawerProgressContext","getDrawerWidthWeb","useFakeSharedValue","Overlay","jsx","_jsx","jsxs","_jsxs","Drawer","direction","drawerPosition","drawerStyle","drawerType","onClose","onTransitionStart","onTransitionEnd","open","overlayStyle","overlayAccessibilityLabel","renderDrawerContent","children","style","drawerWidth","progress","useEffect","value","drawerRef","useRef","onTransitionStartLatest","e","target","currentTarget","propertyName","onTransitionEndLatest","element","current","addEventListener","removeEventListener","isOpen","isRight","drawerTranslateX","drawerAnimatedStyle","transition","transform","contentTranslateX","contentAnimatedStyle","drawerElement","ref","styles","drawer","position","zIndex","width","right","left","mainContent","content","onPress","accessibilityLabel","Provider","container","create","flex","flexDirection","top","bottom","maxWidth","backgroundColor"],"sourceRoot":"../../../src","sources":["views/Drawer.tsx"],"mappings":"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","ignoreList":[]}
@@ -51,20 +51,25 @@ export function Drawer({
51
51
  }) {
52
52
  const windowDimensions = useWindowDimensions();
53
53
  const layout = customLayout ?? windowDimensions;
54
- const drawerWidth = getDrawerWidthNative({
55
- layout,
56
- drawerStyle
57
- });
54
+ const {
55
+ width: customWidth,
56
+ maxWidth: customMaxWidth
57
+ } = StyleSheet.flatten(drawerStyle) || {};
58
58
  const isOpen = drawerType === 'permanent' ? true : open;
59
59
  const isRight = drawerPosition === 'right';
60
- const getDrawerTranslationX = React.useCallback(open => {
60
+ const getDrawerTranslationX = React.useCallback((open, containerWidth) => {
61
61
  'worklet';
62
62
 
63
+ const drawerWidth = getDrawerWidthNative({
64
+ containerWidth,
65
+ customWidth,
66
+ customMaxWidth
67
+ });
63
68
  if (drawerPosition === 'left') {
64
69
  return open ? 0 : -drawerWidth;
65
70
  }
66
71
  return open ? 0 : drawerWidth;
67
- }, [drawerPosition, drawerWidth]);
72
+ }, [customMaxWidth, customWidth, drawerPosition]);
68
73
  const hideStatusBar = React.useCallback(hide => {
69
74
  if (hideStatusBarOnOpen) {
70
75
  StatusBar.setHidden(hide, statusBarAnimation);
@@ -113,9 +118,17 @@ export function Drawer({
113
118
  left: 0,
114
119
  width: isOpen ? undefined : swipeEdgeWidth
115
120
  }, [isRight, isOpen, swipeEdgeWidth]);
121
+ const layoutWidth = useSharedValue(layout.width);
122
+ const translationX = useSharedValue(getDrawerTranslationX(open, layout.width));
123
+ const updateLayout = useLatestCallback(width => {
124
+ layoutWidth.value = width;
125
+ translationX.value = getDrawerTranslationX(open, width);
126
+ });
127
+ React.useLayoutEffect(() => {
128
+ updateLayout(layout.width);
129
+ }, [layout.width, updateLayout]);
116
130
  const touchStartX = useSharedValue(0);
117
131
  const touchX = useSharedValue(0);
118
- const translationX = useSharedValue(getDrawerTranslationX(open));
119
132
  const gestureState = useSharedValue(GestureState.UNDETERMINED);
120
133
  const onOpenLatest = useLatestCallback(onOpen);
121
134
  const onCloseLatest = useLatestCallback(onClose);
@@ -134,7 +147,7 @@ export function Drawer({
134
147
  const toggleDrawer = React.useCallback((open, velocity) => {
135
148
  'worklet';
136
149
 
137
- const translateX = getDrawerTranslationX(open);
150
+ const translateX = getDrawerTranslationX(open, layoutWidth.value);
138
151
  if (velocity === undefined) {
139
152
  runOnJS(onAnimationStart)(open);
140
153
  }
@@ -153,8 +166,12 @@ export function Drawer({
153
166
  } else {
154
167
  runOnJS(onCloseLatest)();
155
168
  }
156
- }, [getDrawerTranslationX, onAnimationEnd, onAnimationStart, onCloseLatest, onOpenLatest, touchStartX, touchX, translationX]);
157
- const hasDrawerWidth = drawerWidth > 0;
169
+ }, [layoutWidth, getDrawerTranslationX, onAnimationEnd, onAnimationStart, onCloseLatest, onOpenLatest, touchStartX, touchX, translationX]);
170
+ const hasDrawerWidth = getDrawerWidthNative({
171
+ containerWidth: layout.width,
172
+ customWidth,
173
+ customMaxWidth
174
+ }) > 0;
158
175
  const previousHasDrawerWidthRef = React.useRef(hasDrawerWidth);
159
176
  const isHidden = useSharedValue(!isOpen && !hasDrawerWidth);
160
177
  React.useLayoutEffect(() => {
@@ -162,13 +179,13 @@ export function Drawer({
162
179
  // Update translationX without animation after measurement
163
180
  // This avoids flash of animation on initial render with async layout
164
181
  // We only want to animate it when something changes after measurement
165
- translationX.value = getDrawerTranslationX(open);
182
+ translationX.value = getDrawerTranslationX(open, layout.width);
166
183
  // Unhide the drawer only after we set the correct translationX
167
184
  // Otherwise the drawer might briefly flash in the wrong position
168
185
  isHidden.value = false;
169
186
  }
170
187
  previousHasDrawerWidthRef.current = hasDrawerWidth;
171
- }, [getDrawerTranslationX, hasDrawerWidth, isHidden, open, translationX]);
188
+ }, [getDrawerTranslationX, hasDrawerWidth, isHidden, layout.width, open, translationX]);
172
189
  React.useLayoutEffect(() => toggleDrawer(open), [open, toggleDrawer]);
173
190
  const startX = useSharedValue(0);
174
191
  const pan = React.useMemo(() => {
@@ -209,6 +226,12 @@ export function Drawer({
209
226
  return panGesture;
210
227
  }, [configureGestureHandler, drawerPosition, drawerType, gestureState, hitSlop, onGestureBegin, onGestureAbort, onGestureFinish, open, startX, swipeEnabled, swipeMinDistance, swipeMinVelocity, toggleDrawer, touchStartX, touchX, translationX]);
211
228
  const translateX = useDerivedValue(() => {
229
+ const drawerWidth = getDrawerWidthNative({
230
+ containerWidth: layoutWidth.value,
231
+ customWidth,
232
+ customMaxWidth
233
+ });
234
+
212
235
  // Comment stolen from react-native-gesture-handler/DrawerLayout
213
236
  //
214
237
  // While closing the drawer when user starts gesture outside of its area (in greyed
@@ -234,13 +257,19 @@ export function Drawer({
234
257
  // drawer be pulled back as soon as you start the pan.
235
258
  //
236
259
  // This is used only when drawerType is "front"
237
- const touchDistance = drawerType === 'front' && gestureState.value === GestureState.ACTIVE ? minmax(drawerPosition === 'left' ? touchStartX.value - drawerWidth : layout.width - drawerWidth - touchStartX.value, 0, layout.width) : 0;
260
+ const touchDistance = drawerType === 'front' && gestureState.value === GestureState.ACTIVE ? minmax(drawerPosition === 'left' ? touchStartX.value - drawerWidth : layoutWidth.value - drawerWidth - touchStartX.value, 0, layoutWidth.value) : 0;
238
261
  const translateX = drawerPosition === 'left' ? minmax(translationX.value + touchDistance, -drawerWidth, 0) : minmax(translationX.value - touchDistance, 0, drawerWidth);
239
262
  return translateX;
240
263
  });
241
264
  const drawerAnimatedStyle = useAnimatedStyle(() => {
242
- const distanceFromEdge = Math.max(layout.width - drawerWidth, 0);
265
+ const drawerWidth = getDrawerWidthNative({
266
+ containerWidth: layoutWidth.value,
267
+ customWidth,
268
+ customMaxWidth
269
+ });
270
+ const distanceFromEdge = Math.max(layoutWidth.value - drawerWidth, 0);
243
271
  return {
272
+ width: drawerWidth,
244
273
  // FIXME: Reanimated skips committing to the shadow tree if no layout props are animated
245
274
  // This results in pressables not getting their correct position and can't be pressed
246
275
  // So we animate the zIndex to force the commit
@@ -257,8 +286,13 @@ export function Drawer({
257
286
  (drawerType === 'back' ? 0 : translateX.value) + (direction === 'rtl' ? drawerPosition === 'left' ? -distanceFromEdge : 0 : drawerPosition === 'left' ? 0 : distanceFromEdge)
258
287
  }]
259
288
  };
260
- }, [direction, drawerPosition, drawerType, drawerWidth, isHidden, layout.width, translateX]);
289
+ });
261
290
  const contentAnimatedStyle = useAnimatedStyle(() => {
291
+ const drawerWidth = getDrawerWidthNative({
292
+ containerWidth: layoutWidth.value,
293
+ customWidth,
294
+ customMaxWidth
295
+ });
262
296
  return {
263
297
  // FIXME: Force Reanimated to commit to the shadow tree
264
298
  zIndex: translateX.value === 0 ? 0 : drawerType === 'back' ? 2 : 1,
@@ -271,9 +305,10 @@ export function Drawer({
271
305
  drawerType === 'front' ? 0 : translateX.value + drawerWidth * (drawerPosition === 'left' ? 1 : -1)
272
306
  }]
273
307
  };
274
- }, [drawerPosition, drawerType, drawerWidth, translateX]);
308
+ });
275
309
  const progress = useDerivedValue(() => {
276
- return drawerType === 'permanent' ? 1 : interpolate(translateX.value, [getDrawerTranslationX(false), getDrawerTranslationX(true)], [0, 1]);
310
+ const containerWidth = layoutWidth.value;
311
+ return drawerType === 'permanent' ? 1 : interpolate(translateX.value, [getDrawerTranslationX(false, containerWidth), getDrawerTranslationX(true, containerWidth)], [0, 1]);
277
312
  });
278
313
  const contentAnimatedProps = useAnimatedProps(() => {
279
314
  const hidden = drawerType !== 'permanent' && progress.value >= 1 - PROGRESS_EPSILON;
@@ -286,7 +321,7 @@ export function Drawer({
286
321
  return {
287
322
  accessibilityElementsHidden: hidden
288
323
  };
289
- }, [drawerType, progress]);
324
+ });
290
325
  const drawerContentAnimatedProps = useAnimatedProps(() => {
291
326
  const hidden = drawerType !== 'permanent' && progress.value < 1 - PROGRESS_EPSILON;
292
327
  if (Platform.OS === 'android') {
@@ -298,7 +333,7 @@ export function Drawer({
298
333
  return {
299
334
  accessibilityElementsHidden: hidden
300
335
  };
301
- }, [drawerType, progress]);
336
+ });
302
337
  return /*#__PURE__*/_jsx(GestureHandlerRootView, {
303
338
  style: [styles.container, style],
304
339
  children: /*#__PURE__*/_jsx(DrawerProgressContext.Provider, {
@@ -328,7 +363,6 @@ export function Drawer({
328
363
  animatedProps: drawerContentAnimatedProps,
329
364
  removeClippedSubviews: Platform.OS !== 'ios',
330
365
  style: [styles.drawer, {
331
- width: drawerWidth,
332
366
  position: drawerType === 'permanent' ? 'relative' : 'absolute'
333
367
  }, drawerAnimatedStyle, drawerStyle],
334
368
  children: renderDrawerContent()
@@ -1 +1 @@
1
- {"version":3,"names":["React","I18nManager","Keyboard","Platform","StatusBar","StyleSheet","useWindowDimensions","Animated","interpolate","ReduceMotion","runOnJS","useAnimatedProps","useAnimatedStyle","useDerivedValue","useSharedValue","withSpring","useLatestCallback","DrawerGestureContext","DrawerProgressContext","getDrawerWidthNative","Gesture","GestureDetector","GestureHandlerRootView","GestureState","InteractionManager","Overlay","jsx","_jsx","jsxs","_jsxs","SWIPE_EDGE_WIDTH","SWIPE_MIN_OFFSET","SWIPE_MIN_DISTANCE","SWIPE_MIN_VELOCITY","PROGRESS_EPSILON","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","useLayoutEffect","interactionHandleRef","useRef","undefined","startInteraction","current","createInteractionHandle","endInteraction","clearInteractionHandle","hideKeyboard","dismiss","onGestureBegin","onGestureFinish","onGestureAbort","hitSlop","useMemo","right","width","left","touchStartX","touchX","translationX","gestureState","UNDETERMINED","onOpenLatest","onCloseLatest","onAnimationStart","onAnimationEnd","finished","toggleDrawer","velocity","translateX","stiffness","damping","mass","overshootClamping","reduceMotion","Never","hasDrawerWidth","previousHasDrawerWidthRef","isHidden","startX","pan","panGesture","Pan","onBegin","event","state","x","onStart","onChange","onEnd","success","nextOpen","abs","velocityX","activeOffsetX","failOffsetY","enabled","touchDistance","ACTIVE","drawerAnimatedStyle","distanceFromEdge","zIndex","display","transform","contentAnimatedStyle","progress","contentAnimatedProps","hidden","importantForAccessibility","accessibilityElementsHidden","drawerContentAnimatedProps","styles","container","Provider","gesture","View","main","flexDirection","content","animatedProps","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
+ {"version":3,"names":["React","I18nManager","Keyboard","Platform","StatusBar","StyleSheet","useWindowDimensions","Animated","interpolate","ReduceMotion","runOnJS","useAnimatedProps","useAnimatedStyle","useDerivedValue","useSharedValue","withSpring","useLatestCallback","DrawerGestureContext","DrawerProgressContext","getDrawerWidthNative","Gesture","GestureDetector","GestureHandlerRootView","GestureState","InteractionManager","Overlay","jsx","_jsx","jsxs","_jsxs","SWIPE_EDGE_WIDTH","SWIPE_MIN_OFFSET","SWIPE_MIN_DISTANCE","SWIPE_MIN_VELOCITY","PROGRESS_EPSILON","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","width","customWidth","maxWidth","customMaxWidth","flatten","isOpen","isRight","getDrawerTranslationX","useCallback","containerWidth","drawerWidth","hideStatusBar","hide","setHidden","useLayoutEffect","interactionHandleRef","useRef","undefined","startInteraction","current","createInteractionHandle","endInteraction","clearInteractionHandle","hideKeyboard","dismiss","onGestureBegin","onGestureFinish","onGestureAbort","hitSlop","useMemo","right","left","layoutWidth","translationX","updateLayout","touchStartX","touchX","gestureState","UNDETERMINED","onOpenLatest","onCloseLatest","onAnimationStart","onAnimationEnd","finished","toggleDrawer","velocity","translateX","stiffness","damping","mass","overshootClamping","reduceMotion","Never","hasDrawerWidth","previousHasDrawerWidthRef","isHidden","startX","pan","panGesture","Pan","onBegin","event","state","x","onStart","onChange","onEnd","success","nextOpen","abs","velocityX","activeOffsetX","failOffsetY","enabled","touchDistance","ACTIVE","drawerAnimatedStyle","distanceFromEdge","zIndex","display","transform","contentAnimatedStyle","progress","contentAnimatedProps","hidden","importantForAccessibility","accessibilityElementsHidden","drawerContentAnimatedProps","styles","container","Provider","gesture","View","main","flexDirection","content","animatedProps","onPress","accessibilityLabel","removeClippedSubviews","drawer","position","create","flex","top","bottom","backgroundColor","select","web","default","overflow"],"sourceRoot":"../../../src","sources":["views/Drawer.native.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Fragment","_Fragment","jsx","_jsx","GestureDetector","gesture","_0","userSelect","_1","children","GestureHandlerRootView","Gesture","undefined","GestureState"],"sourceRoot":"../../../src","sources":["views/GestureHandler.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,IAAI,QAAQ,cAAc;;AAGnC;AACA;AACA;AAAA,SAAAC,QAAA,IAAAC,SAAA,EAAAC,GAAA,IAAAC,IAAA;AAOA,OAAO,MAAMC,eAAe,GAAGA,CAAC;EAC9BC,OAAO,EAAEC,EAAE;EACXC,UAAU,EAAEC,EAAE;EACdC;AACoB,CAAC,KAAK;EAC1B,oBAAON,IAAA,CAAAF,SAAA;IAAAQ,QAAA,EAAGA;EAAQ,CAAG,CAAC;AACxB,CAAC;AAED,OAAO,MAAMC,sBAAsB,GAAGX,IAAI;AAE1C,OAAO,MAAMY,OAEA,GAAGC,SAAS;AAEzB,WAAkBC,YAAY,0BAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAA,OAAZA,YAAY;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["React","View","Fragment","_Fragment","jsx","_jsx","GestureDetector","gesture","_0","userSelect","_1","children","GestureHandlerRootView","Gesture","undefined","GestureState"],"sourceRoot":"../../../src","sources":["views/GestureHandler.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,IAAI,QAAQ,cAAc;;AAGnC;AACA;AACA;AAAA,SAAAC,QAAA,IAAAC,SAAA,EAAAC,GAAA,IAAAC,IAAA;AAOA,OAAO,MAAMC,eAAe,GAAGA,CAAC;EAC9BC,OAAO,EAAEC,EAAE;EACXC,UAAU,EAAEC,EAAE;EACdC;AACoB,CAAC,KAAK;EAC1B,oBAAON,IAAA,CAAAF,SAAA;IAAAQ,QAAA,EAAGA;EAAQ,CAAG,CAAC;AACxB,CAAC;AAED,OAAO,MAAMC,sBAAmC,GAAGX,IAAI;AAEvD,OAAO,MAAMY,OAEA,GAAGC,SAAS;AAMzB,WAAkBC,YAAY,0BAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAA,OAAZA,YAAY;AAAA","ignoreList":[]}
@@ -4,6 +4,7 @@
4
4
  import * as ReactNative from 'react-native';
5
5
  let InteractionManager;
6
6
  try {
7
+ // @ts-expect-error `InteractionManager` is removed from the types in newer React Native versions
7
8
  InteractionManager = ReactNative.InteractionManager;
8
9
  } catch (e) {
9
10
  // On newer React Native versions, accessing InteractionManager throws an error
@@ -1 +1 @@
1
- {"version":3,"names":["ReactNative","InteractionManager","e"],"sourceRoot":"../../../src","sources":["views/InteractionManager.tsx"],"mappings":";;AAAA;AACA,OAAO,KAAKA,WAAW,MAAM,cAAc;AAO3C,IAAIC,kBAAsD;AAE1D,IAAI;EACFA,kBAAkB,GAAGD,WAAW,CAACC,kBAAkB;AACrD,CAAC,CAAC,OAAOC,CAAC,EAAE;EACV;EACA;AAAA;AAGF,SAASD,kBAAkB","ignoreList":[]}
1
+ {"version":3,"names":["ReactNative","InteractionManager","e"],"sourceRoot":"../../../src","sources":["views/InteractionManager.tsx"],"mappings":";;AAAA;AACA,OAAO,KAAKA,WAAW,MAAM,cAAc;AAO3C,IAAIC,kBAAsD;AAE1D,IAAI;EACF;EACAA,kBAAkB,GAAGD,WAAW,CAACC,kBAAkB;AACrD,CAAC,CAAC,OAAOC,CAAC,EAAE;EACV;EACA;AAAA;AAGF,SAASD,kBAAkB","ignoreList":[]}
@@ -15,14 +15,14 @@ export function Overlay({
15
15
  return {
16
16
  opacity: progress.value
17
17
  };
18
- }, [progress]);
18
+ });
19
19
  const animatedProps = useAnimatedProps(() => {
20
20
  const active = progress.value > PROGRESS_EPSILON;
21
21
  return {
22
22
  pointerEvents: active ? 'auto' : 'none',
23
23
  'aria-hidden': !active
24
24
  };
25
- }, [progress]);
25
+ });
26
26
  return /*#__PURE__*/_jsx(Animated.View, {
27
27
  ...rest,
28
28
  style: [StyleSheet.absoluteFill, styles.overlay, animatedStyle, style],
@@ -1 +1 @@
1
- {"version":3,"names":["Pressable","StyleSheet","Animated","useAnimatedProps","useAnimatedStyle","jsx","_jsx","PROGRESS_EPSILON","Overlay","progress","onPress","style","accessibilityLabel","rest","animatedStyle","opacity","value","animatedProps","active","pointerEvents","View","absoluteFill","styles","overlay","children","pressable","role","accessible","create","backgroundColor","flex"],"sourceRoot":"../../../src","sources":["views/Overlay.native.tsx"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,UAAU,QAAQ,cAAc;AACpD,OAAOC,QAAQ,IACbC,gBAAgB,EAChBC,gBAAgB,QACX,yBAAyB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAIjC,MAAMC,gBAAgB,GAAG,IAAI;AAE7B,OAAO,SAASC,OAAOA,CAAC;EACtBC,QAAQ;EACRC,OAAO;EACPC,KAAK;EACLC,kBAAkB,GAAG,cAAc;EACnC,GAAGC;AACS,CAAC,EAAE;EACf,MAAMC,aAAa,GAAGV,gBAAgB,CAAC,MAAM;IAC3C,OAAO;MACLW,OAAO,EAAEN,QAAQ,CAACO;IACpB,CAAC;EACH,CAAC,EAAE,CAACP,QAAQ,CAAC,CAAC;EAEd,MAAMQ,aAAa,GAAGd,gBAAgB,CAAC,MAAM;IAC3C,MAAMe,MAAM,GAAGT,QAAQ,CAACO,KAAK,GAAGT,gBAAgB;IAEhD,OAAO;MACLY,aAAa,EAAED,MAAM,GAAG,MAAM,GAAG,MAAM;MACvC,aAAa,EAAE,CAACA;IAClB,CAAC;EACH,CAAC,EAAE,CAACT,QAAQ,CAAC,CAAC;EAEd,oBACEH,IAAA,CAACJ,QAAQ,CAACkB,IAAI;IAAA,GACRP,IAAI;IACRF,KAAK,EAAE,CAACV,UAAU,CAACoB,YAAY,EAAEC,MAAM,CAACC,OAAO,EAAET,aAAa,EAAEH,KAAK,CAAE;IACvEM,aAAa,EAAEA,aAAc;IAAAO,QAAA,eAE7BlB,IAAA,CAACN,SAAS;MACRU,OAAO,EAAEA,OAAQ;MACjBC,KAAK,EAAEW,MAAM,CAACG,SAAU;MACxBC,IAAI,EAAC,QAAQ;MACb,cAAYd,kBAAmB;MAC/Be,UAAU;IAAA,CACX;EAAC,CACW,CAAC;AAEpB;AAEA,MAAML,MAAM,GAAGrB,UAAU,CAAC2B,MAAM,CAAC;EAC/BL,OAAO,EAAE;IACPM,eAAe,EAAE;EACnB,CAAC;EACDJ,SAAS,EAAE;IACTK,IAAI,EAAE,CAAC;IACPX,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Pressable","StyleSheet","Animated","useAnimatedProps","useAnimatedStyle","jsx","_jsx","PROGRESS_EPSILON","Overlay","progress","onPress","style","accessibilityLabel","rest","animatedStyle","opacity","value","animatedProps","active","pointerEvents","View","absoluteFill","styles","overlay","children","pressable","role","accessible","create","backgroundColor","flex"],"sourceRoot":"../../../src","sources":["views/Overlay.native.tsx"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,UAAU,QAAQ,cAAc;AACpD,OAAOC,QAAQ,IACbC,gBAAgB,EAChBC,gBAAgB,QACX,yBAAyB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAIjC,MAAMC,gBAAgB,GAAG,IAAI;AAE7B,OAAO,SAASC,OAAOA,CAAC;EACtBC,QAAQ;EACRC,OAAO;EACPC,KAAK;EACLC,kBAAkB,GAAG,cAAc;EACnC,GAAGC;AACS,CAAC,EAAE;EACf,MAAMC,aAAa,GAAGV,gBAAgB,CAAC,MAAM;IAC3C,OAAO;MACLW,OAAO,EAAEN,QAAQ,CAACO;IACpB,CAAC;EACH,CAAC,CAAC;EAEF,MAAMC,aAAa,GAAGd,gBAAgB,CAAC,MAAM;IAC3C,MAAMe,MAAM,GAAGT,QAAQ,CAACO,KAAK,GAAGT,gBAAgB;IAEhD,OAAO;MACLY,aAAa,EAAED,MAAM,GAAG,MAAM,GAAG,MAAM;MACvC,aAAa,EAAE,CAACA;IAClB,CAAC;EACH,CAAC,CAAC;EAEF,oBACEZ,IAAA,CAACJ,QAAQ,CAACkB,IAAI;IAAA,GACRP,IAAI;IACRF,KAAK,EAAE,CAACV,UAAU,CAACoB,YAAY,EAAEC,MAAM,CAACC,OAAO,EAAET,aAAa,EAAEH,KAAK,CAAE;IACvEM,aAAa,EAAEA,aAAc;IAAAO,QAAA,eAE7BlB,IAAA,CAACN,SAAS;MACRU,OAAO,EAAEA,OAAQ;MACjBC,KAAK,EAAEW,MAAM,CAACG,SAAU;MACxBC,IAAI,EAAC,QAAQ;MACb,cAAYd,kBAAmB;MAC/Be,UAAU;IAAA,CACX;EAAC,CACW,CAAC;AAEpB;AAEA,MAAML,MAAM,GAAGrB,UAAU,CAAC2B,MAAM,CAAC;EAC/BL,OAAO,EAAE;IACPM,eAAe,EAAE;EACnB,CAAC;EACDJ,SAAS,EAAE;IACTK,IAAI,EAAE,CAAC;IACPX,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import type { StyleProp, View, ViewStyle } from 'react-native';
3
- import type { PanGesture } from 'react-native-gesture-handler';
4
3
  import type { SharedValue } from 'react-native-reanimated';
4
+ import type { PanGesture } from './views/GestureHandler';
5
5
  export type Layout = {
6
6
  width: number;
7
7
  height: number;
@@ -1 +1 @@
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,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,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,SAAS,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAE1B;;;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;;OAEG;IACH,uBAAuB,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,UAAU,CAAC;IAE9D;;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
+ {"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,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,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,SAAS,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAE1B;;;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;;OAEG;IACH,uBAAuB,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,UAAU,CAAC;IAE9D;;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,3 +1,4 @@
1
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>;
2
+ import type { PanGesture } from '../views/GestureHandler';
3
+ export declare const DrawerGestureContext: React.Context<PanGesture | undefined>;
3
4
  //# sourceMappingURL=DrawerGestureContext.d.ts.map
@@ -1 +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
+ {"version":3,"file":"DrawerGestureContext.d.ts","sourceRoot":"","sources":["../../../../src/utils/DrawerGestureContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE1D,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,GAAG,SAAS,CACf,CAAC"}
@@ -1,10 +1,8 @@
1
- import { type StyleProp, type ViewStyle } from 'react-native';
2
- export declare function getDrawerWidthNative({ layout, drawerStyle, }: {
3
- layout: {
4
- width: number;
5
- height: number;
6
- };
7
- drawerStyle?: StyleProp<ViewStyle>;
1
+ import { type DimensionValue, type StyleProp, type ViewStyle } from 'react-native';
2
+ export declare function getDrawerWidthNative({ containerWidth, customWidth, customMaxWidth, }: {
3
+ containerWidth: number;
4
+ customWidth: DimensionValue | undefined | null;
5
+ customMaxWidth: DimensionValue | undefined | null;
8
6
  }): number;
9
7
  export declare function getDrawerWidthWeb({ drawerStyle, }: {
10
8
  drawerStyle?: StyleProp<ViewStyle>;
@@ -1 +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;AAY1E,wBAAgB,oBAAoB,CAAC,EACnC,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,UAoBA;AAED,wBAAgB,iBAAiB,CAAC,EAChC,WAAW,GACZ,EAAE;IACD,WAAW,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CACpC,GAAG,MAAM,CAYT"}
1
+ {"version":3,"file":"getDrawerWidth.d.ts","sourceRoot":"","sources":["../../../../src/utils/getDrawerWidth.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,SAAS,EAEd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAYtB,wBAAgB,oBAAoB,CAAC,EACnC,cAAc,EACd,WAAW,EACX,cAAc,GACf,EAAE;IACD,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,cAAc,GAAG,SAAS,GAAG,IAAI,CAAC;IAC/C,cAAc,EAAE,cAAc,GAAG,SAAS,GAAG,IAAI,CAAC;CACnD,UAkCA;AAED,wBAAgB,iBAAiB,CAAC,EAChC,WAAW,GACZ,EAAE;IACD,WAAW,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CACpC,GAAG,MAAM,CAYT"}
@@ -1 +1 @@
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,aAAU,CAAC;AAM5C,wBAAgB,MAAM,CAAC,EACrB,SAAiB,EACjB,cAAuD,EACvD,WAAW,EACX,UAAoB,EACpB,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,IAAI,EACJ,YAAY,EACZ,yBAAyB,EACzB,mBAAmB,EACnB,QAAQ,EACR,KAAK,GACN,EAAE,WAAW,qBAiIb"}
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,aAAU,CAAC;AAM5C,wBAAgB,MAAM,CAAC,EACrB,SAAiB,EACjB,cAAuD,EACvD,WAAW,EACX,UAAoB,EACpB,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,IAAI,EACJ,YAAY,EACZ,yBAAyB,EACzB,mBAAmB,EACnB,QAAQ,EACR,KAAK,GACN,EAAE,WAAW,qBAgIb"}
@@ -1 +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,aAAU,CAAC;AAyB5C,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,qBAmdb"}
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,aAAU,CAAC;AAyB5C,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,qBAogBb"}
@@ -9,6 +9,7 @@ type GestureDetectorProps = {
9
9
  export declare const GestureDetector: ({ gesture: _0, userSelect: _1, children, }: GestureDetectorProps) => React.JSX.Element;
10
10
  export declare const GestureHandlerRootView: typeof View;
11
11
  export declare const Gesture: typeof import('react-native-gesture-handler').Gesture | undefined;
12
+ export type PanGesture = ReturnType<typeof import('react-native-gesture-handler').Gesture.Pan>;
12
13
  export declare const enum GestureState {
13
14
  UNDETERMINED = 0,
14
15
  FAILED = 1,
@@ -1 +1 @@
1
- {"version":3,"file":"GestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/views/GestureHandler.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAKhE,KAAK,oBAAoB,GAAG;IAC1B,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,4CAI7B,oBAAoB,sBAEtB,CAAC;AAEF,eAAO,MAAM,sBAAsB,aAAO,CAAC;AAE3C,eAAO,MAAM,OAAO,EAChB,cAAc,8BAA8B,EAAE,OAAO,GACrD,SAAqB,CAAC;AAE1B,0BAAkB,YAAY;IAC5B,YAAY,IAAI;IAChB,MAAM,IAAI;IACV,KAAK,IAAI;IACT,SAAS,IAAI;IACb,MAAM,IAAI;IACV,GAAG,IAAI;CACR"}
1
+ {"version":3,"file":"GestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/views/GestureHandler.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAKhE,KAAK,oBAAoB,GAAG;IAC1B,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,4CAI7B,oBAAoB,sBAEtB,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,OAAO,IAAW,CAAC;AAExD,eAAO,MAAM,OAAO,EAChB,cAAc,8BAA8B,EAAE,OAAO,GACrD,SAAqB,CAAC;AAE1B,MAAM,MAAM,UAAU,GAAG,UAAU,CACjC,cAAc,8BAA8B,EAAE,OAAO,CAAC,GAAG,CAC1D,CAAC;AAEF,0BAAkB,YAAY;IAC5B,YAAY,IAAI;IAChB,MAAM,IAAI;IACV,KAAK,IAAI;IACT,SAAS,IAAI;IACb,MAAM,IAAI;IACV,GAAG,IAAI;CACR"}
@@ -1 +1 @@
1
- {"version":3,"file":"InteractionManager.d.ts","sourceRoot":"","sources":["../../../../src/views/InteractionManager.tsx"],"names":[],"mappings":"AAGA,KAAK,sBAAsB,GAAG;IAC5B,uBAAuB,IAAI,MAAM,CAAC;IAClC,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9C,CAAC;AAEF,QAAA,IAAI,kBAAkB,EAAE,sBAAsB,GAAG,SAAS,CAAC;AAS3D,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"InteractionManager.d.ts","sourceRoot":"","sources":["../../../../src/views/InteractionManager.tsx"],"names":[],"mappings":"AAGA,KAAK,sBAAsB,GAAG;IAC5B,uBAAuB,IAAI,MAAM,CAAC;IAClC,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9C,CAAC;AAEF,QAAA,IAAI,kBAAkB,EAAE,sBAAsB,GAAG,SAAS,CAAC;AAU3D,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
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.2.12",
4
+ "version": "4.2.13",
5
5
  "keywords": [
6
6
  "react-native-component",
7
7
  "react-component",
@@ -42,22 +42,18 @@
42
42
  "clean": "del lib"
43
43
  },
44
44
  "dependencies": {
45
- "color": "^4.2.3",
46
45
  "use-latest-callback": "^0.2.4"
47
46
  },
48
47
  "devDependencies": {
49
48
  "@babel/core": "^7.29.0",
50
- "@jest/globals": "^30.0.0",
51
- "@react-native/metro-config": "0.85.3",
52
- "@testing-library/react-native": "^13.2.1",
53
- "@types/color": "^4.2.0",
54
- "@types/react": "~19.2.4",
55
- "del-cli": "^6.0.0",
56
- "react": "19.2.3",
57
- "react-native": "0.85.3",
58
- "react-native-builder-bob": "^0.42.1",
59
- "react-native-reanimated": "4.3.1",
60
- "react-native-worklets": "0.8.3",
49
+ "@react-native/metro-config": "0.88.0",
50
+ "@types/react": "~19.3.0",
51
+ "del-cli": "^8.0.1",
52
+ "react": "19.3.0",
53
+ "react-native": "0.88.1",
54
+ "react-native-builder-bob": "^0.44.1",
55
+ "react-native-reanimated": "4.7.1",
56
+ "react-native-worklets": "0.13.1",
61
57
  "typescript": "~6.0.3"
62
58
  },
63
59
  "peerDependencies": {
@@ -84,5 +80,5 @@
84
80
  ]
85
81
  ]
86
82
  },
87
- "gitHead": "379552aab1a143b61058ab572450cbfb363bff77"
83
+ "gitHead": "77fad70cd6d9ed492d7ce30177efa923e95294cb"
88
84
  }
package/src/types.tsx CHANGED
@@ -1,8 +1,9 @@
1
1
  import * as React from 'react';
2
2
  import type { StyleProp, View, ViewStyle } from 'react-native';
3
- import type { PanGesture } from 'react-native-gesture-handler';
4
3
  import type { SharedValue } from 'react-native-reanimated';
5
4
 
5
+ import type { PanGesture } from './views/GestureHandler';
6
+
6
7
  export type Layout = { width: number; height: number };
7
8
 
8
9
  export type DrawerProps = {
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import type { PanGesture } from 'react-native-gesture-handler';
3
2
 
4
- export const DrawerGestureContext = React.createContext<PanGesture | undefined>(
5
- undefined
6
- );
3
+ import type { PanGesture } from '../views/GestureHandler';
4
+
5
+ export const DrawerGestureContext: React.Context<PanGesture | undefined> =
6
+ React.createContext<PanGesture | undefined>(undefined);
@@ -1,4 +1,9 @@
1
- import { type StyleProp, StyleSheet, type ViewStyle } from 'react-native';
1
+ import {
2
+ type DimensionValue,
3
+ type StyleProp,
4
+ StyleSheet,
5
+ type ViewStyle,
6
+ } from 'react-native';
2
7
 
3
8
  const APPROX_APP_BAR_HEIGHT = 56;
4
9
  const DEFAULT_DRAWER_WIDTH = 360;
@@ -11,31 +16,47 @@ const DEFAULT_DRAWER_WIDTH = 360;
11
16
  const DRAWER_DEFAULT_WIDTH_WEB = `min(calc(100% - ${APPROX_APP_BAR_HEIGHT}px), ${DEFAULT_DRAWER_WIDTH}px)`;
12
17
 
13
18
  export function getDrawerWidthNative({
14
- layout,
15
- drawerStyle,
19
+ containerWidth,
20
+ customWidth,
21
+ customMaxWidth,
16
22
  }: {
17
- layout: { width: number; height: number };
18
- drawerStyle?: StyleProp<ViewStyle>;
23
+ containerWidth: number;
24
+ customWidth: DimensionValue | undefined | null;
25
+ customMaxWidth: DimensionValue | undefined | null;
19
26
  }) {
27
+ 'worklet';
28
+
20
29
  const defaultWidth = Math.max(
21
- layout.width - APPROX_APP_BAR_HEIGHT <= 360
22
- ? layout.width - APPROX_APP_BAR_HEIGHT
30
+ containerWidth - APPROX_APP_BAR_HEIGHT <= DEFAULT_DRAWER_WIDTH
31
+ ? containerWidth - APPROX_APP_BAR_HEIGHT
23
32
  : DEFAULT_DRAWER_WIDTH,
24
33
  0
25
34
  );
26
35
 
27
- const { width = defaultWidth } = StyleSheet.flatten(drawerStyle) || {};
36
+ let width = customWidth ?? defaultWidth;
37
+ let maxWidth = customMaxWidth ?? containerWidth;
28
38
 
29
39
  if (typeof width === 'string' && width.endsWith('%')) {
30
40
  // Try to calculate width if a percentage is given
31
41
  const percentage = Number(width.replace(/%$/, ''));
32
42
 
33
43
  if (Number.isFinite(percentage)) {
34
- return layout.width * (percentage / 100);
44
+ width = containerWidth * (percentage / 100);
35
45
  }
36
46
  }
37
47
 
38
- return typeof width === 'number' ? width : defaultWidth;
48
+ if (typeof maxWidth === 'string' && maxWidth.endsWith('%')) {
49
+ const percentage = Number(maxWidth.replace(/%$/, ''));
50
+
51
+ if (Number.isFinite(percentage)) {
52
+ maxWidth = containerWidth * (percentage / 100);
53
+ }
54
+ }
55
+
56
+ return Math.min(
57
+ typeof width === 'number' ? width : defaultWidth,
58
+ typeof maxWidth === 'number' ? maxWidth : containerWidth
59
+ );
39
60
  }
40
61
 
41
62
  export function getDrawerWidthWeb({
@@ -78,22 +78,30 @@ export function Drawer({
78
78
  const windowDimensions = useWindowDimensions();
79
79
 
80
80
  const layout = customLayout ?? windowDimensions;
81
- const drawerWidth = getDrawerWidthNative({ layout, drawerStyle });
81
+
82
+ const { width: customWidth, maxWidth: customMaxWidth } =
83
+ StyleSheet.flatten(drawerStyle) || {};
82
84
 
83
85
  const isOpen = drawerType === 'permanent' ? true : open;
84
86
  const isRight = drawerPosition === 'right';
85
87
 
86
88
  const getDrawerTranslationX = React.useCallback(
87
- (open: boolean) => {
89
+ (open: boolean, containerWidth: number) => {
88
90
  'worklet';
89
91
 
92
+ const drawerWidth = getDrawerWidthNative({
93
+ containerWidth,
94
+ customWidth,
95
+ customMaxWidth,
96
+ });
97
+
90
98
  if (drawerPosition === 'left') {
91
99
  return open ? 0 : -drawerWidth;
92
100
  }
93
101
 
94
102
  return open ? 0 : drawerWidth;
95
103
  },
96
- [drawerPosition, drawerWidth]
104
+ [customMaxWidth, customWidth, drawerPosition]
97
105
  );
98
106
 
99
107
  const hideStatusBar = React.useCallback(
@@ -158,9 +166,22 @@ export function Drawer({
158
166
  [isRight, isOpen, swipeEdgeWidth]
159
167
  );
160
168
 
169
+ const layoutWidth = useSharedValue(layout.width);
170
+ const translationX = useSharedValue(
171
+ getDrawerTranslationX(open, layout.width)
172
+ );
173
+
174
+ const updateLayout = useLatestCallback((width: number) => {
175
+ layoutWidth.value = width;
176
+ translationX.value = getDrawerTranslationX(open, width);
177
+ });
178
+
179
+ React.useLayoutEffect(() => {
180
+ updateLayout(layout.width);
181
+ }, [layout.width, updateLayout]);
182
+
161
183
  const touchStartX = useSharedValue(0);
162
184
  const touchX = useSharedValue(0);
163
- const translationX = useSharedValue(getDrawerTranslationX(open));
164
185
  const gestureState = useSharedValue<GestureState>(GestureState.UNDETERMINED);
165
186
 
166
187
  const onOpenLatest = useLatestCallback(onOpen);
@@ -188,7 +209,7 @@ export function Drawer({
188
209
  (open: boolean, velocity?: number) => {
189
210
  'worklet';
190
211
 
191
- const translateX = getDrawerTranslationX(open);
212
+ const translateX = getDrawerTranslationX(open, layoutWidth.value);
192
213
 
193
214
  if (velocity === undefined) {
194
215
  runOnJS(onAnimationStart)(open);
@@ -216,6 +237,7 @@ export function Drawer({
216
237
  }
217
238
  },
218
239
  [
240
+ layoutWidth,
219
241
  getDrawerTranslationX,
220
242
  onAnimationEnd,
221
243
  onAnimationStart,
@@ -227,7 +249,12 @@ export function Drawer({
227
249
  ]
228
250
  );
229
251
 
230
- const hasDrawerWidth = drawerWidth > 0;
252
+ const hasDrawerWidth =
253
+ getDrawerWidthNative({
254
+ containerWidth: layout.width,
255
+ customWidth,
256
+ customMaxWidth,
257
+ }) > 0;
231
258
 
232
259
  const previousHasDrawerWidthRef = React.useRef(hasDrawerWidth);
233
260
  const isHidden = useSharedValue(!isOpen && !hasDrawerWidth);
@@ -240,14 +267,21 @@ export function Drawer({
240
267
  // Update translationX without animation after measurement
241
268
  // This avoids flash of animation on initial render with async layout
242
269
  // We only want to animate it when something changes after measurement
243
- translationX.value = getDrawerTranslationX(open);
270
+ translationX.value = getDrawerTranslationX(open, layout.width);
244
271
  // Unhide the drawer only after we set the correct translationX
245
272
  // Otherwise the drawer might briefly flash in the wrong position
246
273
  isHidden.value = false;
247
274
  }
248
275
 
249
276
  previousHasDrawerWidthRef.current = hasDrawerWidth;
250
- }, [getDrawerTranslationX, hasDrawerWidth, isHidden, open, translationX]);
277
+ }, [
278
+ getDrawerTranslationX,
279
+ hasDrawerWidth,
280
+ isHidden,
281
+ layout.width,
282
+ open,
283
+ translationX,
284
+ ]);
251
285
 
252
286
  React.useLayoutEffect(() => toggleDrawer(open), [open, toggleDrawer]);
253
287
 
@@ -330,6 +364,12 @@ export function Drawer({
330
364
  ]);
331
365
 
332
366
  const translateX = useDerivedValue(() => {
367
+ const drawerWidth = getDrawerWidthNative({
368
+ containerWidth: layoutWidth.value,
369
+ customWidth,
370
+ customMaxWidth,
371
+ });
372
+
333
373
  // Comment stolen from react-native-gesture-handler/DrawerLayout
334
374
  //
335
375
  // While closing the drawer when user starts gesture outside of its area (in greyed
@@ -360,9 +400,9 @@ export function Drawer({
360
400
  ? minmax(
361
401
  drawerPosition === 'left'
362
402
  ? touchStartX.value - drawerWidth
363
- : layout.width - drawerWidth - touchStartX.value,
403
+ : layoutWidth.value - drawerWidth - touchStartX.value,
364
404
  0,
365
- layout.width
405
+ layoutWidth.value
366
406
  )
367
407
  : 0;
368
408
 
@@ -375,9 +415,16 @@ export function Drawer({
375
415
  });
376
416
 
377
417
  const drawerAnimatedStyle = useAnimatedStyle(() => {
378
- const distanceFromEdge = Math.max(layout.width - drawerWidth, 0);
418
+ const drawerWidth = getDrawerWidthNative({
419
+ containerWidth: layoutWidth.value,
420
+ customWidth,
421
+ customMaxWidth,
422
+ });
423
+
424
+ const distanceFromEdge = Math.max(layoutWidth.value - drawerWidth, 0);
379
425
 
380
426
  return {
427
+ width: drawerWidth,
381
428
  // FIXME: Reanimated skips committing to the shadow tree if no layout props are animated
382
429
  // This results in pressables not getting their correct position and can't be pressed
383
430
  // So we animate the zIndex to force the commit
@@ -412,17 +459,15 @@ export function Drawer({
412
459
  },
413
460
  ],
414
461
  };
415
- }, [
416
- direction,
417
- drawerPosition,
418
- drawerType,
419
- drawerWidth,
420
- isHidden,
421
- layout.width,
422
- translateX,
423
- ]);
462
+ });
424
463
 
425
464
  const contentAnimatedStyle = useAnimatedStyle(() => {
465
+ const drawerWidth = getDrawerWidthNative({
466
+ containerWidth: layoutWidth.value,
467
+ customWidth,
468
+ customMaxWidth,
469
+ });
470
+
426
471
  return {
427
472
  // FIXME: Force Reanimated to commit to the shadow tree
428
473
  zIndex: translateX.value === 0 ? 0 : drawerType === 'back' ? 2 : 1,
@@ -442,14 +487,19 @@ export function Drawer({
442
487
  },
443
488
  ],
444
489
  };
445
- }, [drawerPosition, drawerType, drawerWidth, translateX]);
490
+ });
446
491
 
447
492
  const progress = useDerivedValue(() => {
493
+ const containerWidth = layoutWidth.value;
494
+
448
495
  return drawerType === 'permanent'
449
496
  ? 1
450
497
  : interpolate(
451
498
  translateX.value,
452
- [getDrawerTranslationX(false), getDrawerTranslationX(true)],
499
+ [
500
+ getDrawerTranslationX(false, containerWidth),
501
+ getDrawerTranslationX(true, containerWidth),
502
+ ],
453
503
  [0, 1]
454
504
  );
455
505
  });
@@ -466,7 +516,7 @@ export function Drawer({
466
516
  }
467
517
 
468
518
  return { accessibilityElementsHidden: hidden };
469
- }, [drawerType, progress]);
519
+ });
470
520
 
471
521
  const drawerContentAnimatedProps = useAnimatedProps<ViewProps>(() => {
472
522
  const hidden =
@@ -480,7 +530,7 @@ export function Drawer({
480
530
  }
481
531
 
482
532
  return { accessibilityElementsHidden: hidden };
483
- }, [drawerType, progress]);
533
+ });
484
534
 
485
535
  return (
486
536
  <GestureHandlerRootView style={[styles.container, style]}>
@@ -525,7 +575,6 @@ export function Drawer({
525
575
  style={[
526
576
  styles.drawer,
527
577
  {
528
- width: drawerWidth,
529
578
  position:
530
579
  drawerType === 'permanent' ? 'relative' : 'absolute',
531
580
  },
@@ -33,7 +33,7 @@ export function Drawer({
33
33
  progress.value = open ? 1 : 0;
34
34
  }, [open, progress]);
35
35
 
36
- const drawerRef = React.useRef<View>(null);
36
+ const drawerRef = React.useRef<React.ComponentRef<typeof View>>(null);
37
37
 
38
38
  const onTransitionStartLatest = useLatestCallback((e: TransitionEvent) => {
39
39
  if (e.target === e.currentTarget && e.propertyName === 'transform') {
@@ -105,7 +105,6 @@ export function Drawer({
105
105
  },
106
106
  // FIXME: width contains `px` on web
107
107
  { width: drawerWidth } as ViewStyle,
108
- // @ts-expect-error offset contains `calc` for web
109
108
  drawerType !== 'permanent'
110
109
  ? // Position drawer off-screen by default in closed state
111
110
  // And add a translation only when drawer is open
@@ -19,12 +19,16 @@ export const GestureDetector = ({
19
19
  return <>{children}</>;
20
20
  };
21
21
 
22
- export const GestureHandlerRootView = View;
22
+ export const GestureHandlerRootView: typeof View = View;
23
23
 
24
24
  export const Gesture:
25
25
  | typeof import('react-native-gesture-handler').Gesture
26
26
  | undefined = undefined;
27
27
 
28
+ export type PanGesture = ReturnType<
29
+ typeof import('react-native-gesture-handler').Gesture.Pan
30
+ >;
31
+
28
32
  export const enum GestureState {
29
33
  UNDETERMINED = 0,
30
34
  FAILED = 1,
@@ -9,6 +9,7 @@ type InteractionManagerType = {
9
9
  let InteractionManager: InteractionManagerType | undefined;
10
10
 
11
11
  try {
12
+ // @ts-expect-error `InteractionManager` is removed from the types in newer React Native versions
12
13
  InteractionManager = ReactNative.InteractionManager;
13
14
  } catch (e) {
14
15
  // On newer React Native versions, accessing InteractionManager throws an error
@@ -19,7 +19,7 @@ export function Overlay({
19
19
  return {
20
20
  opacity: progress.value,
21
21
  };
22
- }, [progress]);
22
+ });
23
23
 
24
24
  const animatedProps = useAnimatedProps(() => {
25
25
  const active = progress.value > PROGRESS_EPSILON;
@@ -28,7 +28,7 @@ export function Overlay({
28
28
  pointerEvents: active ? 'auto' : 'none',
29
29
  'aria-hidden': !active,
30
30
  } as const;
31
- }, [progress]);
31
+ });
32
32
 
33
33
  return (
34
34
  <Animated.View