react-native-drawer-layout 4.0.0-alpha.6 → 4.0.0-alpha.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/lib/commonjs/utils/getDrawerWidth.js +42 -0
  2. package/lib/commonjs/utils/getDrawerWidth.js.map +1 -0
  3. package/lib/commonjs/utils/useDrawerProgress.js.map +1 -1
  4. package/lib/commonjs/utils/useFakeSharedValue.js +46 -0
  5. package/lib/commonjs/utils/useFakeSharedValue.js.map +1 -0
  6. package/lib/commonjs/views/Drawer.js +55 -279
  7. package/lib/commonjs/views/Drawer.js.map +1 -1
  8. package/lib/commonjs/views/Drawer.native.js +324 -0
  9. package/lib/commonjs/views/Drawer.native.js.map +1 -0
  10. package/lib/commonjs/views/Overlay.js +22 -39
  11. package/lib/commonjs/views/Overlay.js.map +1 -1
  12. package/lib/commonjs/views/Overlay.native.js +58 -0
  13. package/lib/commonjs/views/Overlay.native.js.map +1 -0
  14. package/lib/module/utils/getDrawerWidth.js +36 -0
  15. package/lib/module/utils/getDrawerWidth.js.map +1 -0
  16. package/lib/module/utils/useDrawerProgress.js.map +1 -1
  17. package/lib/module/utils/useFakeSharedValue.js +38 -0
  18. package/lib/module/utils/useFakeSharedValue.js.map +1 -0
  19. package/lib/module/views/Drawer.js +56 -278
  20. package/lib/module/views/Drawer.js.map +1 -1
  21. package/lib/module/views/Drawer.native.js +315 -0
  22. package/lib/module/views/Drawer.native.js.map +1 -0
  23. package/lib/module/views/Overlay.js +22 -39
  24. package/lib/module/views/Overlay.js.map +1 -1
  25. package/lib/module/views/Overlay.native.js +50 -0
  26. package/lib/module/views/Overlay.native.js.map +1 -0
  27. package/lib/typescript/src/types.d.ts +9 -2
  28. package/lib/typescript/src/types.d.ts.map +1 -1
  29. package/lib/typescript/src/utils/DrawerProgressContext.d.ts +2 -2
  30. package/lib/typescript/src/utils/DrawerProgressContext.d.ts.map +1 -1
  31. package/lib/typescript/src/utils/getDrawerWidth.d.ts +9 -0
  32. package/lib/typescript/src/utils/getDrawerWidth.d.ts.map +1 -0
  33. package/lib/typescript/src/utils/useDrawerProgress.d.ts +2 -2
  34. package/lib/typescript/src/utils/useDrawerProgress.d.ts.map +1 -1
  35. package/lib/typescript/src/utils/useFakeSharedValue.d.ts +17 -0
  36. package/lib/typescript/src/utils/useFakeSharedValue.d.ts.map +1 -0
  37. package/lib/typescript/src/views/Drawer.d.ts +1 -6
  38. package/lib/typescript/src/views/Drawer.d.ts.map +1 -1
  39. package/lib/typescript/src/views/Drawer.native.d.ts +4 -0
  40. package/lib/typescript/src/views/Drawer.native.d.ts.map +1 -0
  41. package/lib/typescript/src/views/Overlay.d.ts +2 -204
  42. package/lib/typescript/src/views/Overlay.d.ts.map +1 -1
  43. package/lib/typescript/src/views/Overlay.native.d.ts +4 -0
  44. package/lib/typescript/src/views/Overlay.native.d.ts.map +1 -0
  45. package/package.json +2 -2
  46. package/src/types.tsx +10 -1
  47. package/src/utils/DrawerProgressContext.tsx +2 -2
  48. package/src/utils/getDrawerWidth.tsx +49 -0
  49. package/src/utils/useDrawerProgress.tsx +2 -2
  50. package/src/utils/useFakeSharedValue.tsx +49 -0
  51. package/src/views/Drawer.native.tsx +466 -0
  52. package/src/views/Drawer.tsx +117 -433
  53. package/src/views/Overlay.native.tsx +63 -0
  54. package/src/views/Overlay.tsx +26 -59
@@ -0,0 +1,324 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Drawer = Drawer;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
10
+ var _useLatestCallback = _interopRequireDefault(require("use-latest-callback"));
11
+ var _DrawerProgressContext = require("../utils/DrawerProgressContext");
12
+ var _getDrawerWidth = require("../utils/getDrawerWidth");
13
+ var _GestureHandler = require("./GestureHandler");
14
+ var _Overlay = require("./Overlay");
15
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
+ 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); }
17
+ 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 && Object.prototype.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; }
18
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
19
+ const SWIPE_EDGE_WIDTH = 32;
20
+ const SWIPE_MIN_OFFSET = 5;
21
+ const SWIPE_MIN_DISTANCE = 60;
22
+ const SWIPE_MIN_VELOCITY = 500;
23
+ const DRAWER_BORDER_RADIUS = 16;
24
+ const minmax = (value, start, end) => {
25
+ 'worklet';
26
+
27
+ return Math.min(Math.max(value, start), end);
28
+ };
29
+ function Drawer(_ref) {
30
+ let {
31
+ layout: customLayout,
32
+ drawerPosition = _reactNative.I18nManager.getConstants().isRTL ? 'right' : 'left',
33
+ drawerStyle,
34
+ drawerType = _reactNative.Platform.select({
35
+ ios: 'slide',
36
+ default: 'front'
37
+ }),
38
+ gestureHandlerProps,
39
+ hideStatusBarOnOpen = false,
40
+ keyboardDismissMode = 'on-drag',
41
+ onClose,
42
+ onOpen,
43
+ onGestureStart,
44
+ onGestureCancel,
45
+ onGestureEnd,
46
+ onTransitionStart,
47
+ onTransitionEnd,
48
+ open,
49
+ overlayStyle,
50
+ overlayAccessibilityLabel,
51
+ statusBarAnimation = 'slide',
52
+ swipeEnabled = _reactNative.Platform.OS !== 'web' && _reactNative.Platform.OS !== 'windows' && _reactNative.Platform.OS !== 'macos',
53
+ swipeEdgeWidth = SWIPE_EDGE_WIDTH,
54
+ swipeMinDistance = SWIPE_MIN_DISTANCE,
55
+ swipeMinVelocity = SWIPE_MIN_VELOCITY,
56
+ renderDrawerContent,
57
+ children,
58
+ style
59
+ } = _ref;
60
+ const windowDimensions = (0, _reactNative.useWindowDimensions)();
61
+ const layout = customLayout ?? windowDimensions;
62
+ const drawerWidth = (0, _getDrawerWidth.getDrawerWidth)({
63
+ layout,
64
+ drawerStyle
65
+ });
66
+ const isOpen = drawerType === 'permanent' ? true : open;
67
+ const isRight = drawerPosition === 'right';
68
+ const getDrawerTranslationX = React.useCallback(open => {
69
+ 'worklet';
70
+
71
+ if (drawerPosition === 'left') {
72
+ return open ? 0 : -drawerWidth;
73
+ }
74
+ return open ? 0 : drawerWidth;
75
+ }, [drawerPosition, drawerWidth]);
76
+ const hideStatusBar = React.useCallback(hide => {
77
+ if (hideStatusBarOnOpen) {
78
+ _reactNative.StatusBar.setHidden(hide, statusBarAnimation);
79
+ }
80
+ }, [hideStatusBarOnOpen, statusBarAnimation]);
81
+ React.useEffect(() => {
82
+ hideStatusBar(isOpen);
83
+ return () => hideStatusBar(false);
84
+ }, [isOpen, hideStatusBarOnOpen, statusBarAnimation, hideStatusBar]);
85
+ const interactionHandleRef = React.useRef(null);
86
+ const startInteraction = () => {
87
+ interactionHandleRef.current = _reactNative.InteractionManager.createInteractionHandle();
88
+ };
89
+ const endInteraction = () => {
90
+ if (interactionHandleRef.current != null) {
91
+ _reactNative.InteractionManager.clearInteractionHandle(interactionHandleRef.current);
92
+ interactionHandleRef.current = null;
93
+ }
94
+ };
95
+ const hideKeyboard = () => {
96
+ if (keyboardDismissMode === 'on-drag') {
97
+ _reactNative.Keyboard.dismiss();
98
+ }
99
+ };
100
+ const onGestureBegin = () => {
101
+ onGestureStart?.();
102
+ startInteraction();
103
+ hideKeyboard();
104
+ hideStatusBar(true);
105
+ };
106
+ const onGestureFinish = () => {
107
+ onGestureEnd?.();
108
+ endInteraction();
109
+ };
110
+ const onGestureAbort = () => {
111
+ onGestureCancel?.();
112
+ endInteraction();
113
+ };
114
+
115
+ // FIXME: Currently hitSlop is broken when on Android when drawer is on right
116
+ // https://github.com/software-mansion/react-native-gesture-handler/issues/569
117
+ const hitSlop = isRight ?
118
+ // Extend hitSlop to the side of the screen when drawer is closed
119
+ // This lets the user drag the drawer from the side of the screen
120
+ {
121
+ right: 0,
122
+ width: isOpen ? undefined : swipeEdgeWidth
123
+ } : {
124
+ left: 0,
125
+ width: isOpen ? undefined : swipeEdgeWidth
126
+ };
127
+ const borderRadiiStyle = drawerType !== 'permanent' ? isRight ? {
128
+ borderTopLeftRadius: DRAWER_BORDER_RADIUS,
129
+ borderBottomLeftRadius: DRAWER_BORDER_RADIUS
130
+ } : {
131
+ borderTopRightRadius: DRAWER_BORDER_RADIUS,
132
+ borderBottomRightRadius: DRAWER_BORDER_RADIUS
133
+ } : null;
134
+ const touchStartX = (0, _reactNativeReanimated.useSharedValue)(0);
135
+ const touchX = (0, _reactNativeReanimated.useSharedValue)(0);
136
+ const translationX = (0, _reactNativeReanimated.useSharedValue)(getDrawerTranslationX(open));
137
+ const gestureState = (0, _reactNativeReanimated.useSharedValue)(_GestureHandler.GestureState.UNDETERMINED);
138
+ const handleAnimationStart = (0, _useLatestCallback.default)(open => {
139
+ onTransitionStart?.(!open);
140
+ });
141
+ const handleAnimationEnd = (0, _useLatestCallback.default)((open, finished) => {
142
+ if (!finished) return;
143
+ onTransitionEnd?.(!open);
144
+ });
145
+ const toggleDrawer = React.useCallback((open, velocity) => {
146
+ 'worklet';
147
+
148
+ const translateX = getDrawerTranslationX(open);
149
+ if (velocity === undefined) {
150
+ (0, _reactNativeReanimated.runOnJS)(handleAnimationStart)(open);
151
+ }
152
+ touchStartX.value = 0;
153
+ touchX.value = 0;
154
+ translationX.value = (0, _reactNativeReanimated.withSpring)(translateX, {
155
+ velocity,
156
+ stiffness: 1000,
157
+ damping: 500,
158
+ mass: 3,
159
+ overshootClamping: true,
160
+ restDisplacementThreshold: 0.01,
161
+ restSpeedThreshold: 0.01
162
+ }, finished => (0, _reactNativeReanimated.runOnJS)(handleAnimationEnd)(open, finished));
163
+ if (open) {
164
+ (0, _reactNativeReanimated.runOnJS)(onOpen)();
165
+ } else {
166
+ (0, _reactNativeReanimated.runOnJS)(onClose)();
167
+ }
168
+ }, [getDrawerTranslationX, handleAnimationEnd, handleAnimationStart, onClose, onOpen, touchStartX, touchX, translationX]);
169
+ React.useEffect(() => toggleDrawer(open), [open, toggleDrawer]);
170
+ const onGestureEvent = (0, _reactNativeReanimated.useAnimatedGestureHandler)({
171
+ onStart: (event, ctx) => {
172
+ ctx.hasCalledOnStart = false;
173
+ ctx.startX = translationX.value;
174
+ gestureState.value = event.state;
175
+ touchStartX.value = event.x;
176
+ },
177
+ onCancel: () => {
178
+ (0, _reactNativeReanimated.runOnJS)(onGestureAbort)();
179
+ },
180
+ onActive: (event, ctx) => {
181
+ touchX.value = event.x;
182
+ translationX.value = ctx.startX + event.translationX;
183
+ gestureState.value = event.state;
184
+
185
+ // onStart will _always_ be called, even when the activation
186
+ // criteria isn't met yet. This makes sure onGestureBegin is only
187
+ // called when the criteria is really met.
188
+ if (!ctx.hasCalledOnStart) {
189
+ ctx.hasCalledOnStart = true;
190
+ (0, _reactNativeReanimated.runOnJS)(onGestureBegin)();
191
+ }
192
+ },
193
+ onEnd: event => {
194
+ gestureState.value = event.state;
195
+ const nextOpen = Math.abs(event.translationX) > SWIPE_MIN_OFFSET && Math.abs(event.translationX) > swipeMinVelocity || Math.abs(event.translationX) > swipeMinDistance ? drawerPosition === 'left' ?
196
+ // If swiped to right, open the drawer, otherwise close it
197
+ (event.velocityX === 0 ? event.translationX : event.velocityX) > 0 :
198
+ // If swiped to left, open the drawer, otherwise close it
199
+ (event.velocityX === 0 ? event.translationX : event.velocityX) < 0 : open;
200
+ toggleDrawer(nextOpen, event.velocityX);
201
+ },
202
+ onFinish: () => {
203
+ (0, _reactNativeReanimated.runOnJS)(onGestureFinish)();
204
+ }
205
+ });
206
+ const translateX = (0, _reactNativeReanimated.useDerivedValue)(() => {
207
+ // Comment stolen from react-native-gesture-handler/DrawerLayout
208
+ //
209
+ // While closing the drawer when user starts gesture outside of its area (in greyed
210
+ // out part of the window), we want the drawer to follow only once finger reaches the
211
+ // edge of the drawer.
212
+ // E.g. on the diagram below drawer is illustrate by X signs and the greyed out area by
213
+ // dots. The touch gesture starts at '*' and moves left, touch path is indicated by
214
+ // an arrow pointing left
215
+ // 1) +---------------+ 2) +---------------+ 3) +---------------+ 4) +---------------+
216
+ // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
217
+ // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
218
+ // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
219
+ // |XXXXXXXX|......| |XXXXXXXX|.<-*..| |XXXXXXXX|<--*..| |XXXXX|<-----*..|
220
+ // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
221
+ // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
222
+ // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
223
+ // +---------------+ +---------------+ +---------------+ +---------------+
224
+ //
225
+ // For the above to work properly we define animated value that will keep start position
226
+ // of the gesture. Then we use that value to calculate how much we need to subtract from
227
+ // the translationX. If the gesture started on the greyed out area we take the distance from the
228
+ // edge of the drawer to the start position. Otherwise we don't subtract at all and the
229
+ // drawer be pulled back as soon as you start the pan.
230
+ //
231
+ // This is used only when drawerType is "front"
232
+ const touchDistance = drawerType === 'front' && gestureState.value === _GestureHandler.GestureState.ACTIVE ? minmax(drawerPosition === 'left' ? touchStartX.value - drawerWidth : layout.width - drawerWidth - touchStartX.value, 0, layout.width) : 0;
233
+ const translateX = drawerPosition === 'left' ? minmax(translationX.value + touchDistance, -drawerWidth, 0) : minmax(translationX.value - touchDistance, 0, drawerWidth);
234
+ return translateX;
235
+ });
236
+ const drawerAnimatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
237
+ const distanceFromEdge = layout.width - drawerWidth;
238
+ return {
239
+ transform: drawerType === 'permanent' ?
240
+ // Reanimated needs the property to be present, but it results in Browser bug
241
+ // https://bugs.chromium.org/p/chromium/issues/detail?id=20574
242
+ [] : [{
243
+ translateX:
244
+ // The drawer stays in place when `drawerType` is `back`
245
+ (drawerType === 'back' ? 0 : translateX.value) + (drawerPosition === 'left' ? 0 : distanceFromEdge)
246
+ }]
247
+ };
248
+ });
249
+ const contentAnimatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
250
+ return {
251
+ transform: drawerType === 'permanent' ?
252
+ // Reanimated needs the property to be present, but it results in Browser bug
253
+ // https://bugs.chromium.org/p/chromium/issues/detail?id=20574
254
+ [] : [{
255
+ translateX:
256
+ // The screen content stays in place when `drawerType` is `front`
257
+ drawerType === 'front' ? 0 : translateX.value + drawerWidth * (drawerPosition === 'left' ? 1 : -1)
258
+ }]
259
+ };
260
+ });
261
+ const progress = (0, _reactNativeReanimated.useDerivedValue)(() => {
262
+ return drawerType === 'permanent' ? 1 : (0, _reactNativeReanimated.interpolate)(translateX.value, [getDrawerTranslationX(false), getDrawerTranslationX(true)], [0, 1]);
263
+ });
264
+ return /*#__PURE__*/React.createElement(_GestureHandler.GestureHandlerRootView, {
265
+ style: [styles.container, style]
266
+ }, /*#__PURE__*/React.createElement(_DrawerProgressContext.DrawerProgressContext.Provider, {
267
+ value: progress
268
+ }, /*#__PURE__*/React.createElement(_GestureHandler.PanGestureHandler, _extends({
269
+ activeOffsetX: [-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET],
270
+ failOffsetY: [-SWIPE_MIN_OFFSET, SWIPE_MIN_OFFSET],
271
+ hitSlop: hitSlop,
272
+ enabled: drawerType !== 'permanent' && swipeEnabled,
273
+ onGestureEvent: onGestureEvent
274
+ }, gestureHandlerProps), /*#__PURE__*/React.createElement(_reactNativeReanimated.default.View, {
275
+ style: [styles.main, {
276
+ flexDirection: drawerType === 'permanent' && !isRight ? 'row-reverse' : 'row'
277
+ }]
278
+ }, /*#__PURE__*/React.createElement(_reactNativeReanimated.default.View, {
279
+ style: [styles.content, contentAnimatedStyle]
280
+ }, /*#__PURE__*/React.createElement(_reactNative.View, {
281
+ accessibilityElementsHidden: isOpen && drawerType !== 'permanent',
282
+ importantForAccessibility: isOpen && drawerType !== 'permanent' ? 'no-hide-descendants' : 'auto',
283
+ style: styles.content
284
+ }, children), drawerType !== 'permanent' ? /*#__PURE__*/React.createElement(_Overlay.Overlay, {
285
+ open: open,
286
+ progress: progress,
287
+ onPress: () => toggleDrawer(false),
288
+ style: overlayStyle,
289
+ accessibilityLabel: overlayAccessibilityLabel
290
+ }) : null), /*#__PURE__*/React.createElement(_reactNativeReanimated.default.View, {
291
+ removeClippedSubviews: _reactNative.Platform.OS !== 'ios',
292
+ style: [styles.drawer, {
293
+ width: drawerWidth,
294
+ position: drawerType === 'permanent' ? 'relative' : 'absolute',
295
+ zIndex: drawerType === 'back' ? -1 : 0
296
+ }, borderRadiiStyle, drawerAnimatedStyle, drawerStyle]
297
+ }, renderDrawerContent())))));
298
+ }
299
+ const styles = _reactNative.StyleSheet.create({
300
+ container: {
301
+ flex: 1
302
+ },
303
+ drawer: {
304
+ top: 0,
305
+ bottom: 0,
306
+ maxWidth: '100%',
307
+ backgroundColor: 'white'
308
+ },
309
+ content: {
310
+ flex: 1
311
+ },
312
+ main: {
313
+ flex: 1,
314
+ ..._reactNative.Platform.select({
315
+ // FIXME: We need to hide `overflowX` on Web so the translated content doesn't show offscreen.
316
+ // But adding `overflowX: 'hidden'` prevents content from collapsing the URL bar.
317
+ web: null,
318
+ default: {
319
+ overflow: 'hidden'
320
+ }
321
+ })
322
+ }
323
+ });
324
+ //# sourceMappingURL=Drawer.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_useLatestCallback","_interopRequireDefault","_DrawerProgressContext","_getDrawerWidth","_GestureHandler","_Overlay","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","SWIPE_EDGE_WIDTH","SWIPE_MIN_OFFSET","SWIPE_MIN_DISTANCE","SWIPE_MIN_VELOCITY","DRAWER_BORDER_RADIUS","minmax","value","start","end","Math","min","max","Drawer","_ref","layout","customLayout","drawerPosition","I18nManager","getConstants","isRTL","drawerStyle","drawerType","Platform","select","ios","gestureHandlerProps","hideStatusBarOnOpen","keyboardDismissMode","onClose","onOpen","onGestureStart","onGestureCancel","onGestureEnd","onTransitionStart","onTransitionEnd","open","overlayStyle","overlayAccessibilityLabel","statusBarAnimation","swipeEnabled","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","borderRadiiStyle","borderTopLeftRadius","borderBottomLeftRadius","borderTopRightRadius","borderBottomRightRadius","touchStartX","useSharedValue","touchX","translationX","gestureState","GestureState","UNDETERMINED","handleAnimationStart","useLatestCallback","handleAnimationEnd","finished","toggleDrawer","velocity","translateX","runOnJS","withSpring","stiffness","damping","mass","overshootClamping","restDisplacementThreshold","restSpeedThreshold","onGestureEvent","useAnimatedGestureHandler","onStart","event","ctx","hasCalledOnStart","startX","state","x","onCancel","onActive","onEnd","nextOpen","abs","velocityX","onFinish","useDerivedValue","touchDistance","ACTIVE","drawerAnimatedStyle","useAnimatedStyle","distanceFromEdge","transform","contentAnimatedStyle","progress","interpolate","createElement","GestureHandlerRootView","styles","container","DrawerProgressContext","Provider","PanGestureHandler","activeOffsetX","failOffsetY","enabled","View","main","flexDirection","content","accessibilityElementsHidden","importantForAccessibility","Overlay","onPress","accessibilityLabel","removeClippedSubviews","drawer","position","zIndex","StyleSheet","create","flex","top","bottom","maxWidth","backgroundColor","web","overflow"],"sourceRoot":"../../../src","sources":["views/Drawer.native.tsx"],"mappings":"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"}
@@ -3,65 +3,48 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.Overlay = void 0;
6
+ exports.Overlay = Overlay;
7
7
  var React = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
- var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
10
9
  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); }
11
10
  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 && Object.prototype.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; }
12
11
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
13
- const PROGRESS_EPSILON = 0.05;
14
- const Overlay = exports.Overlay = /*#__PURE__*/React.forwardRef(function Overlay(_ref, ref) {
12
+ function Overlay(_ref) {
15
13
  let {
16
- progress,
14
+ open,
17
15
  onPress,
18
16
  style,
19
17
  accessibilityLabel = 'Close drawer',
20
- ...props
18
+ ...rest
21
19
  } = _ref;
22
- const animatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
23
- return {
24
- opacity: progress.value,
25
- // We don't want the user to be able to press through the overlay when drawer is open
26
- // We can send the overlay behind the screen to avoid it
27
- zIndex: progress.value > PROGRESS_EPSILON ? 0 : -1
28
- };
29
- });
30
- const animatedProps = (0, _reactNativeReanimated.useAnimatedProps)(() => {
31
- const active = progress.value > PROGRESS_EPSILON;
32
- return {
33
- pointerEvents: active ? 'auto' : 'none',
34
- accessibilityElementsHidden: !active,
35
- importantForAccessibility: active ? 'auto' : 'no-hide-descendants'
36
- };
37
- });
38
- return /*#__PURE__*/React.createElement(_reactNativeReanimated.default.View, _extends({}, props, {
39
- ref: ref,
40
- style: [styles.overlay, overlayStyle, animatedStyle, style],
41
- animatedProps: animatedProps
20
+ return /*#__PURE__*/React.createElement(_reactNative.View, _extends({}, rest, {
21
+ style: [styles.overlay, {
22
+ opacity: open ? 1 : 0,
23
+ pointerEvents: open ? 'auto' : 'none'
24
+ }, style],
25
+ accessibilityElementsHidden: !open,
26
+ importantForAccessibility: open ? 'auto' : 'no-hide-descendants'
42
27
  }), /*#__PURE__*/React.createElement(_reactNative.Pressable, {
43
28
  onPress: onPress,
44
- style: styles.pressable,
29
+ style: [styles.pressable, {
30
+ pointerEvents: open ? 'auto' : 'none'
31
+ }],
45
32
  accessibilityRole: "button",
46
33
  accessibilityLabel: accessibilityLabel
47
34
  }));
48
- });
49
- const overlayStyle = _reactNative.Platform.select({
50
- web: {
51
- // Disable touch highlight on mobile Safari.
52
- // WebkitTapHighlightColor must be used outside of StyleSheet.create because react-native-web will omit the property.
53
- WebkitTapHighlightColor: 'transparent'
54
- },
55
- default: {}
56
- });
35
+ }
57
36
  const styles = _reactNative.StyleSheet.create({
58
37
  overlay: {
59
38
  ..._reactNative.StyleSheet.absoluteFillObject,
60
- backgroundColor: 'rgba(0, 0, 0, 0.5)'
39
+ backgroundColor: 'rgba(0, 0, 0, 0.5)',
40
+ // Disable touch highlight on mobile Safari.
41
+ // WebkitTapHighlightColor must be used outside of StyleSheet.create because react-native-web will omit the property.
42
+ // @ts-expect-error: WebkitTapHighlightColor is web only
43
+ WebkitTapHighlightColor: 'transparent',
44
+ transition: 'opacity 0.3s'
61
45
  },
62
46
  pressable: {
63
- flex: 1,
64
- pointerEvents: 'auto'
47
+ flex: 1
65
48
  }
66
49
  });
67
50
  //# sourceMappingURL=Overlay.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","PROGRESS_EPSILON","Overlay","exports","forwardRef","_ref","ref","progress","onPress","style","accessibilityLabel","props","animatedStyle","useAnimatedStyle","opacity","value","zIndex","animatedProps","useAnimatedProps","active","pointerEvents","accessibilityElementsHidden","importantForAccessibility","createElement","View","styles","overlay","overlayStyle","Pressable","pressable","accessibilityRole","Platform","select","web","WebkitTapHighlightColor","StyleSheet","create","absoluteFillObject","backgroundColor","flex"],"sourceRoot":"../../../src","sources":["views/Overlay.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","Overlay","_ref","open","onPress","style","accessibilityLabel","rest","createElement","View","styles","overlay","opacity","pointerEvents","accessibilityElementsHidden","importantForAccessibility","Pressable","pressable","accessibilityRole","StyleSheet","create","absoluteFillObject","backgroundColor","WebkitTapHighlightColor","transition","flex"],"sourceRoot":"../../../src","sources":["views/Overlay.tsx"],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Overlay = Overlay;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
10
+ 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); }
11
+ 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 && Object.prototype.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; }
12
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
13
+ const PROGRESS_EPSILON = 0.05;
14
+ function Overlay(_ref) {
15
+ let {
16
+ progress,
17
+ onPress,
18
+ style,
19
+ accessibilityLabel = 'Close drawer',
20
+ ...rest
21
+ } = _ref;
22
+ const animatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
23
+ return {
24
+ opacity: progress.value,
25
+ // We don't want the user to be able to press through the overlay when drawer is open
26
+ // We can send the overlay behind the screen to avoid it
27
+ zIndex: progress.value > PROGRESS_EPSILON ? 0 : -1
28
+ };
29
+ });
30
+ const animatedProps = (0, _reactNativeReanimated.useAnimatedProps)(() => {
31
+ const active = progress.value > PROGRESS_EPSILON;
32
+ return {
33
+ pointerEvents: active ? 'auto' : 'none',
34
+ accessibilityElementsHidden: !active,
35
+ importantForAccessibility: active ? 'auto' : 'no-hide-descendants'
36
+ };
37
+ });
38
+ return /*#__PURE__*/React.createElement(_reactNativeReanimated.default.View, _extends({}, rest, {
39
+ style: [styles.overlay, animatedStyle, style],
40
+ animatedProps: animatedProps
41
+ }), /*#__PURE__*/React.createElement(_reactNative.Pressable, {
42
+ onPress: onPress,
43
+ style: styles.pressable,
44
+ accessibilityRole: "button",
45
+ accessibilityLabel: accessibilityLabel
46
+ }));
47
+ }
48
+ const styles = _reactNative.StyleSheet.create({
49
+ overlay: {
50
+ ..._reactNative.StyleSheet.absoluteFillObject,
51
+ backgroundColor: 'rgba(0, 0, 0, 0.5)'
52
+ },
53
+ pressable: {
54
+ flex: 1,
55
+ pointerEvents: 'auto'
56
+ }
57
+ });
58
+ //# sourceMappingURL=Overlay.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","PROGRESS_EPSILON","Overlay","_ref","progress","onPress","style","accessibilityLabel","rest","animatedStyle","useAnimatedStyle","opacity","value","zIndex","animatedProps","useAnimatedProps","active","pointerEvents","accessibilityElementsHidden","importantForAccessibility","createElement","View","styles","overlay","Pressable","pressable","accessibilityRole","StyleSheet","create","absoluteFillObject","backgroundColor","flex"],"sourceRoot":"../../../src","sources":["views/Overlay.native.tsx"],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import { Platform, StyleSheet } from 'react-native';
2
+ const getDefaultDrawerWidth = _ref => {
3
+ let {
4
+ height,
5
+ width
6
+ } = _ref;
7
+ /**
8
+ * Default drawer width is screen width - header height
9
+ * with a max width of 280 on mobile and 320 on tablet
10
+ * https://material.io/components/navigation-drawer
11
+ */
12
+ const smallerAxisSize = Math.min(height, width);
13
+ const isLandscape = width > height;
14
+ const isTablet = smallerAxisSize >= 600;
15
+ const appBarHeight = Platform.OS === 'ios' ? isLandscape ? 32 : 44 : 56;
16
+ const maxWidth = isTablet ? 320 : 280;
17
+ return Math.min(smallerAxisSize - appBarHeight, maxWidth);
18
+ };
19
+ export function getDrawerWidth(_ref2) {
20
+ let {
21
+ layout,
22
+ drawerStyle
23
+ } = _ref2;
24
+ const {
25
+ width = getDefaultDrawerWidth(layout)
26
+ } = StyleSheet.flatten(drawerStyle) || {};
27
+ if (typeof width === 'string' && width.endsWith('%')) {
28
+ // Try to calculate width if a percentage is given
29
+ const percentage = Number(width.replace(/%$/, ''));
30
+ if (Number.isFinite(percentage)) {
31
+ return layout.width * (percentage / 100);
32
+ }
33
+ }
34
+ return typeof width === 'number' ? width : 0;
35
+ }
36
+ //# sourceMappingURL=getDrawerWidth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","StyleSheet","getDefaultDrawerWidth","_ref","height","width","smallerAxisSize","Math","min","isLandscape","isTablet","appBarHeight","OS","maxWidth","getDrawerWidth","_ref2","layout","drawerStyle","flatten","endsWith","percentage","Number","replace","isFinite"],"sourceRoot":"../../../src","sources":["utils/getDrawerWidth.tsx"],"mappings":"AAAA,SACEA,QAAQ,EAERC,UAAU,QAEL,cAAc;AAErB,MAAMC,qBAAqB,GAAGC,IAAA,IAMxB;EAAA,IANyB;IAC7BC,MAAM;IACNC;EAIF,CAAC,GAAAF,IAAA;EACC;AACF;AACA;AACA;AACA;EACE,MAAMG,eAAe,GAAGC,IAAI,CAACC,GAAG,CAACJ,MAAM,EAAEC,KAAK,CAAC;EAC/C,MAAMI,WAAW,GAAGJ,KAAK,GAAGD,MAAM;EAClC,MAAMM,QAAQ,GAAGJ,eAAe,IAAI,GAAG;EACvC,MAAMK,YAAY,GAAGX,QAAQ,CAACY,EAAE,KAAK,KAAK,GAAIH,WAAW,GAAG,EAAE,GAAG,EAAE,GAAI,EAAE;EACzE,MAAMI,QAAQ,GAAGH,QAAQ,GAAG,GAAG,GAAG,GAAG;EAErC,OAAOH,IAAI,CAACC,GAAG,CAACF,eAAe,GAAGK,YAAY,EAAEE,QAAQ,CAAC;AAC3D,CAAC;AAED,OAAO,SAASC,cAAcA,CAAAC,KAAA,EAM3B;EAAA,IAN4B;IAC7BC,MAAM;IACNC;EAIF,CAAC,GAAAF,KAAA;EACC,MAAM;IAAEV,KAAK,GAAGH,qBAAqB,CAACc,MAAM;EAAE,CAAC,GAC7Cf,UAAU,CAACiB,OAAO,CAACD,WAAW,CAAC,IAAI,CAAC,CAAC;EAEvC,IAAI,OAAOZ,KAAK,KAAK,QAAQ,IAAIA,KAAK,CAACc,QAAQ,CAAC,GAAG,CAAC,EAAE;IACpD;IACA,MAAMC,UAAU,GAAGC,MAAM,CAAChB,KAAK,CAACiB,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAElD,IAAID,MAAM,CAACE,QAAQ,CAACH,UAAU,CAAC,EAAE;MAC/B,OAAOJ,MAAM,CAACX,KAAK,IAAIe,UAAU,GAAG,GAAG,CAAC;IAC1C;EACF;EAEA,OAAO,OAAOf,KAAK,KAAK,QAAQ,GAAGA,KAAK,GAAG,CAAC;AAC9C"}
@@ -1 +1 @@
1
- {"version":3,"names":["React","DrawerProgressContext","useDrawerProgress","progress","useContext","undefined","Error"],"sourceRoot":"../../../src","sources":["utils/useDrawerProgress.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAG9B,SAASC,qBAAqB,QAAQ,yBAAyB;AAE/D,OAAO,SAASC,iBAAiBA,CAAA,EAA2C;EAC1E,MAAMC,QAAQ,GAAGH,KAAK,CAACI,UAAU,CAACH,qBAAqB,CAAC;EAExD,IAAIE,QAAQ,KAAKE,SAAS,EAAE;IAC1B,MAAM,IAAIC,KAAK,CACb,4DACF,CAAC;EACH;EAEA,OAAOH,QAAQ;AACjB"}
1
+ {"version":3,"names":["React","DrawerProgressContext","useDrawerProgress","progress","useContext","undefined","Error"],"sourceRoot":"../../../src","sources":["utils/useDrawerProgress.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAG9B,SAASC,qBAAqB,QAAQ,yBAAyB;AAE/D,OAAO,SAASC,iBAAiBA,CAAA,EAAkC;EACjE,MAAMC,QAAQ,GAAGH,KAAK,CAACI,UAAU,CAACH,qBAAqB,CAAC;EAExD,IAAIE,QAAQ,KAAKE,SAAS,EAAE;IAC1B,MAAM,IAAIC,KAAK,CACb,4DACF,CAAC;EACH;EAEA,OAAOH,QAAQ;AACjB"}
@@ -0,0 +1,38 @@
1
+ import * as React from 'react';
2
+ class FakeSharedValue {
3
+ _listeners = new Map();
4
+ constructor(value) {
5
+ this._value = value;
6
+ }
7
+ addListener(id, listener) {
8
+ this._listeners.set(id, listener);
9
+ }
10
+ removeListener(id) {
11
+ this._listeners.delete(id);
12
+ }
13
+ modify(modifier) {
14
+ this.value = modifier !== undefined ? modifier(this.value) : this.value;
15
+ }
16
+ set value(value) {
17
+ this._value = value;
18
+ for (const listener of this._listeners.values()) {
19
+ listener(value);
20
+ }
21
+ }
22
+ get value() {
23
+ return this._value;
24
+ }
25
+ _isReanimatedSharedValue = true;
26
+ }
27
+
28
+ /**
29
+ * Compatibility layer for `useDrawerProgress` with `react-native-reanimated`
30
+ */
31
+ export function useFakeSharedValue(value) {
32
+ const sharedValue = React.useRef(null);
33
+ if (sharedValue.current === null) {
34
+ sharedValue.current = new FakeSharedValue(value);
35
+ }
36
+ return sharedValue.current;
37
+ }
38
+ //# sourceMappingURL=useFakeSharedValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","FakeSharedValue","_listeners","Map","constructor","value","_value","addListener","id","listener","set","removeListener","delete","modify","modifier","undefined","values","_isReanimatedSharedValue","useFakeSharedValue","sharedValue","useRef","current"],"sourceRoot":"../../../src","sources":["utils/useFakeSharedValue.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,MAAMC,eAAe,CAAC;EACpBC,UAAU,GAAG,IAAIC,GAAG,CAAkC,CAAC;EAGvDC,WAAWA,CAACC,KAAa,EAAE;IACzB,IAAI,CAACC,MAAM,GAAGD,KAAK;EACrB;EAEAE,WAAWA,CAACC,EAAU,EAAEC,QAAiC,EAAE;IACzD,IAAI,CAACP,UAAU,CAACQ,GAAG,CAACF,EAAE,EAAEC,QAAQ,CAAC;EACnC;EAEAE,cAAcA,CAACH,EAAU,EAAE;IACzB,IAAI,CAACN,UAAU,CAACU,MAAM,CAACJ,EAAE,CAAC;EAC5B;EAEAK,MAAMA,CAACC,QAAoC,EAAE;IAC3C,IAAI,CAACT,KAAK,GAAGS,QAAQ,KAAKC,SAAS,GAAGD,QAAQ,CAAC,IAAI,CAACT,KAAK,CAAC,GAAG,IAAI,CAACA,KAAK;EACzE;EAEA,IAAIA,KAAKA,CAACA,KAAa,EAAE;IACvB,IAAI,CAACC,MAAM,GAAGD,KAAK;IAEnB,KAAK,MAAMI,QAAQ,IAAI,IAAI,CAACP,UAAU,CAACc,MAAM,CAAC,CAAC,EAAE;MAC/CP,QAAQ,CAACJ,KAAK,CAAC;IACjB;EACF;EAEA,IAAIA,KAAKA,CAAA,EAAG;IACV,OAAO,IAAI,CAACC,MAAM;EACpB;EAEAW,wBAAwB,GAAG,IAAI;AACjC;;AAEA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAACb,KAAa,EAAmB;EACjE,MAAMc,WAAW,GAAGnB,KAAK,CAACoB,MAAM,CAAyB,IAAI,CAAC;EAE9D,IAAID,WAAW,CAACE,OAAO,KAAK,IAAI,EAAE;IAChCF,WAAW,CAACE,OAAO,GAAG,IAAIpB,eAAe,CAACI,KAAK,CAAC;EAClD;EAEA,OAAOc,WAAW,CAACE,OAAO;AAC5B"}