1 | "use strict";
|
2 |
|
3 | var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
4 |
|
5 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
6 |
|
7 | Object.defineProperty(exports, "__esModule", {
|
8 | value: true
|
9 | });
|
10 | exports.reset = reset;
|
11 | exports.default = void 0;
|
12 |
|
13 | var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
14 |
|
15 | var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
16 |
|
17 | var _react = _interopRequireDefault(require("react"));
|
18 |
|
19 | var _propTypes = _interopRequireDefault(require("prop-types"));
|
20 |
|
21 | var _reactDom = _interopRequireDefault(require("react-dom"));
|
22 |
|
23 | var _utils = require("@material-ui/utils");
|
24 |
|
25 | var _Drawer = _interopRequireWildcard(require("../Drawer/Drawer"));
|
26 |
|
27 | var _useEventCallback = _interopRequireDefault(require("../utils/useEventCallback"));
|
28 |
|
29 | var _transitions = require("../styles/transitions");
|
30 |
|
31 | var _useTheme = _interopRequireDefault(require("../styles/useTheme"));
|
32 |
|
33 | var _utils2 = require("../transitions/utils");
|
34 |
|
35 | var _NoSsr = _interopRequireDefault(require("../NoSsr"));
|
36 |
|
37 | var _SwipeArea = _interopRequireDefault(require("./SwipeArea"));
|
38 |
|
39 |
|
40 |
|
41 | var UNCERTAINTY_THRESHOLD = 3;
|
42 |
|
43 |
|
44 |
|
45 |
|
46 | var nodeThatClaimedTheSwipe = null;
|
47 |
|
48 | function reset() {
|
49 | nodeThatClaimedTheSwipe = null;
|
50 | }
|
51 |
|
52 | function calculateCurrentX(anchor, touches) {
|
53 | return anchor === 'right' ? document.body.offsetWidth - touches[0].pageX : touches[0].pageX;
|
54 | }
|
55 |
|
56 | function calculateCurrentY(anchor, touches) {
|
57 | return anchor === 'bottom' ? window.innerHeight - touches[0].clientY : touches[0].clientY;
|
58 | }
|
59 |
|
60 | function getMaxTranslate(horizontalSwipe, paperInstance) {
|
61 | return horizontalSwipe ? paperInstance.clientWidth : paperInstance.clientHeight;
|
62 | }
|
63 |
|
64 | function getTranslate(currentTranslate, startLocation, open, maxTranslate) {
|
65 | return Math.min(Math.max(open ? startLocation - currentTranslate : maxTranslate + startLocation - currentTranslate, 0), maxTranslate);
|
66 | }
|
67 |
|
68 | function getDomTreeShapes(element, rootNode) {
|
69 |
|
70 | var domTreeShapes = [];
|
71 |
|
72 | while (element && element !== rootNode) {
|
73 | var style = window.getComputedStyle(element);
|
74 |
|
75 | if (
|
76 | style.getPropertyValue('position') === 'absolute' ||
|
77 | style.getPropertyValue('overflow-x') === 'hidden') {
|
78 | domTreeShapes = [];
|
79 | } else if (element.clientWidth > 0 && element.scrollWidth > element.clientWidth || element.clientHeight > 0 && element.scrollHeight > element.clientHeight) {
|
80 |
|
81 |
|
82 | domTreeShapes.push(element);
|
83 | }
|
84 |
|
85 | element = element.parentElement;
|
86 | }
|
87 |
|
88 | return domTreeShapes;
|
89 | }
|
90 |
|
91 | function findNativeHandler(_ref) {
|
92 | var domTreeShapes = _ref.domTreeShapes,
|
93 | start = _ref.start,
|
94 | current = _ref.current,
|
95 | anchor = _ref.anchor;
|
96 |
|
97 | var axisProperties = {
|
98 | scrollPosition: {
|
99 | x: 'scrollLeft',
|
100 | y: 'scrollTop'
|
101 | },
|
102 | scrollLength: {
|
103 | x: 'scrollWidth',
|
104 | y: 'scrollHeight'
|
105 | },
|
106 | clientLength: {
|
107 | x: 'clientWidth',
|
108 | y: 'clientHeight'
|
109 | }
|
110 | };
|
111 | return domTreeShapes.some(function (shape) {
|
112 |
|
113 | var goingForward = current >= start;
|
114 |
|
115 | if (anchor === 'top' || anchor === 'left') {
|
116 | goingForward = !goingForward;
|
117 | }
|
118 |
|
119 | var axis = anchor === 'left' || anchor === 'right' ? 'x' : 'y';
|
120 | var scrollPosition = shape[axisProperties.scrollPosition[axis]];
|
121 | var areNotAtStart = scrollPosition > 0;
|
122 | var areNotAtEnd = scrollPosition + shape[axisProperties.clientLength[axis]] < shape[axisProperties.scrollLength[axis]];
|
123 |
|
124 | if (goingForward && areNotAtEnd || !goingForward && areNotAtStart) {
|
125 | return shape;
|
126 | }
|
127 |
|
128 | return null;
|
129 | });
|
130 | }
|
131 |
|
132 | var disableSwipeToOpenDefault = typeof navigator !== 'undefined' && /iPad|iPhone|iPod/.test(navigator.userAgent);
|
133 | var transitionDurationDefault = {
|
134 | enter: _transitions.duration.enteringScreen,
|
135 | exit: _transitions.duration.leavingScreen
|
136 | };
|
137 | var useEnhancedEffect = typeof window !== 'undefined' ? _react.default.useLayoutEffect : _react.default.useEffect;
|
138 |
|
139 | var SwipeableDrawer = _react.default.forwardRef(function SwipeableDrawer(props, ref) {
|
140 | var _props$anchor = props.anchor,
|
141 | anchor = _props$anchor === void 0 ? 'left' : _props$anchor,
|
142 | _props$disableBackdro = props.disableBackdropTransition,
|
143 | disableBackdropTransition = _props$disableBackdro === void 0 ? false : _props$disableBackdro,
|
144 | _props$disableDiscove = props.disableDiscovery,
|
145 | disableDiscovery = _props$disableDiscove === void 0 ? false : _props$disableDiscove,
|
146 | _props$disableSwipeTo = props.disableSwipeToOpen,
|
147 | disableSwipeToOpen = _props$disableSwipeTo === void 0 ? disableSwipeToOpenDefault : _props$disableSwipeTo,
|
148 | hideBackdrop = props.hideBackdrop,
|
149 | _props$hysteresis = props.hysteresis,
|
150 | hysteresis = _props$hysteresis === void 0 ? 0.52 : _props$hysteresis,
|
151 | _props$minFlingVeloci = props.minFlingVelocity,
|
152 | minFlingVelocity = _props$minFlingVeloci === void 0 ? 450 : _props$minFlingVeloci,
|
153 | _props$ModalProps = props.ModalProps;
|
154 | _props$ModalProps = _props$ModalProps === void 0 ? {} : _props$ModalProps;
|
155 | var BackdropProps = _props$ModalProps.BackdropProps,
|
156 | ModalPropsProp = (0, _objectWithoutProperties2.default)(_props$ModalProps, ["BackdropProps"]),
|
157 | onClose = props.onClose,
|
158 | onOpen = props.onOpen,
|
159 | open = props.open,
|
160 | _props$PaperProps = props.PaperProps,
|
161 | PaperProps = _props$PaperProps === void 0 ? {} : _props$PaperProps,
|
162 | SwipeAreaProps = props.SwipeAreaProps,
|
163 | _props$swipeAreaWidth = props.swipeAreaWidth,
|
164 | swipeAreaWidth = _props$swipeAreaWidth === void 0 ? 20 : _props$swipeAreaWidth,
|
165 | _props$transitionDura = props.transitionDuration,
|
166 | transitionDuration = _props$transitionDura === void 0 ? transitionDurationDefault : _props$transitionDura,
|
167 | _props$variant = props.variant,
|
168 | variant = _props$variant === void 0 ? 'temporary' : _props$variant,
|
169 | other = (0, _objectWithoutProperties2.default)(props, ["anchor", "disableBackdropTransition", "disableDiscovery", "disableSwipeToOpen", "hideBackdrop", "hysteresis", "minFlingVelocity", "ModalProps", "onClose", "onOpen", "open", "PaperProps", "SwipeAreaProps", "swipeAreaWidth", "transitionDuration", "variant"]);
|
170 | var theme = (0, _useTheme.default)();
|
171 |
|
172 | var _React$useState = _react.default.useState(false),
|
173 | maybeSwiping = _React$useState[0],
|
174 | setMaybeSwiping = _React$useState[1];
|
175 |
|
176 | var swipeInstance = _react.default.useRef({
|
177 | isSwiping: null
|
178 | });
|
179 |
|
180 | var swipeAreaRef = _react.default.useRef();
|
181 |
|
182 | var backdropRef = _react.default.useRef();
|
183 |
|
184 | var paperRef = _react.default.useRef();
|
185 |
|
186 | var touchDetected = _react.default.useRef(false);
|
187 |
|
188 |
|
189 | var calculatedDurationRef = _react.default.useRef();
|
190 |
|
191 |
|
192 | useEnhancedEffect(function () {
|
193 | calculatedDurationRef.current = null;
|
194 | }, [open]);
|
195 |
|
196 | var setPosition = _react.default.useCallback(function (translate) {
|
197 | var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
198 | var _options$mode = options.mode,
|
199 | mode = _options$mode === void 0 ? null : _options$mode,
|
200 | _options$changeTransi = options.changeTransition,
|
201 | changeTransition = _options$changeTransi === void 0 ? true : _options$changeTransi;
|
202 | var anchorRtl = (0, _Drawer.getAnchor)(theme, anchor);
|
203 | var rtlTranslateMultiplier = ['right', 'bottom'].indexOf(anchorRtl) !== -1 ? 1 : -1;
|
204 | var horizontalSwipe = (0, _Drawer.isHorizontal)(anchor);
|
205 | var transform = horizontalSwipe ? "translate(".concat(rtlTranslateMultiplier * translate, "px, 0)") : "translate(0, ".concat(rtlTranslateMultiplier * translate, "px)");
|
206 | var drawerStyle = paperRef.current.style;
|
207 | drawerStyle.webkitTransform = transform;
|
208 | drawerStyle.transform = transform;
|
209 | var transition = '';
|
210 |
|
211 | if (mode) {
|
212 | transition = theme.transitions.create('all', (0, _utils2.getTransitionProps)({
|
213 | timeout: transitionDuration
|
214 | }, {
|
215 | mode: mode
|
216 | }));
|
217 | }
|
218 |
|
219 | if (changeTransition) {
|
220 | drawerStyle.webkitTransition = transition;
|
221 | drawerStyle.transition = transition;
|
222 | }
|
223 |
|
224 | if (!disableBackdropTransition && !hideBackdrop) {
|
225 | var backdropStyle = backdropRef.current.style;
|
226 | backdropStyle.opacity = 1 - translate / getMaxTranslate(horizontalSwipe, paperRef.current);
|
227 |
|
228 | if (changeTransition) {
|
229 | backdropStyle.webkitTransition = transition;
|
230 | backdropStyle.transition = transition;
|
231 | }
|
232 | }
|
233 | }, [anchor, disableBackdropTransition, hideBackdrop, theme, transitionDuration]);
|
234 |
|
235 | var handleBodyTouchEnd = (0, _useEventCallback.default)(function (event) {
|
236 | if (!touchDetected.current) {
|
237 | return;
|
238 | }
|
239 |
|
240 | nodeThatClaimedTheSwipe = null;
|
241 | touchDetected.current = false;
|
242 | setMaybeSwiping(false);
|
243 |
|
244 | if (!swipeInstance.current.isSwiping) {
|
245 | swipeInstance.current.isSwiping = null;
|
246 | return;
|
247 | }
|
248 |
|
249 | swipeInstance.current.isSwiping = null;
|
250 | var anchorRtl = (0, _Drawer.getAnchor)(theme, anchor);
|
251 | var horizontal = (0, _Drawer.isHorizontal)(anchor);
|
252 | var current;
|
253 |
|
254 | if (horizontal) {
|
255 | current = calculateCurrentX(anchorRtl, event.changedTouches);
|
256 | } else {
|
257 | current = calculateCurrentY(anchorRtl, event.changedTouches);
|
258 | }
|
259 |
|
260 | var startLocation = horizontal ? swipeInstance.current.startX : swipeInstance.current.startY;
|
261 | var maxTranslate = getMaxTranslate(horizontal, paperRef.current);
|
262 | var currentTranslate = getTranslate(current, startLocation, open, maxTranslate);
|
263 | var translateRatio = currentTranslate / maxTranslate;
|
264 |
|
265 | if (Math.abs(swipeInstance.current.velocity) > minFlingVelocity) {
|
266 |
|
267 | calculatedDurationRef.current = Math.abs((maxTranslate - currentTranslate) / swipeInstance.current.velocity) * 1000;
|
268 | }
|
269 |
|
270 | if (open) {
|
271 | if (swipeInstance.current.velocity > minFlingVelocity || translateRatio > hysteresis) {
|
272 | onClose();
|
273 | } else {
|
274 |
|
275 | setPosition(0, {
|
276 | mode: 'exit'
|
277 | });
|
278 | }
|
279 |
|
280 | return;
|
281 | }
|
282 |
|
283 | if (swipeInstance.current.velocity < -minFlingVelocity || 1 - translateRatio > hysteresis) {
|
284 | onOpen();
|
285 | } else {
|
286 |
|
287 | setPosition(getMaxTranslate(horizontal, paperRef.current), {
|
288 | mode: 'enter'
|
289 | });
|
290 | }
|
291 | });
|
292 | var handleBodyTouchMove = (0, _useEventCallback.default)(function (event) {
|
293 |
|
294 | if (!paperRef.current || !touchDetected.current) {
|
295 | return;
|
296 | }
|
297 |
|
298 |
|
299 | if (nodeThatClaimedTheSwipe != null && nodeThatClaimedTheSwipe !== swipeInstance.current) {
|
300 | return;
|
301 | }
|
302 |
|
303 | var anchorRtl = (0, _Drawer.getAnchor)(theme, anchor);
|
304 | var horizontalSwipe = (0, _Drawer.isHorizontal)(anchor);
|
305 | var currentX = calculateCurrentX(anchorRtl, event.touches);
|
306 | var currentY = calculateCurrentY(anchorRtl, event.touches);
|
307 |
|
308 | if (open && paperRef.current.contains(event.target) && nodeThatClaimedTheSwipe == null) {
|
309 | var domTreeShapes = getDomTreeShapes(event.target, paperRef.current);
|
310 | var nativeHandler = findNativeHandler({
|
311 | domTreeShapes: domTreeShapes,
|
312 | start: horizontalSwipe ? swipeInstance.current.startX : swipeInstance.current.startY,
|
313 | current: horizontalSwipe ? currentX : currentY,
|
314 | anchor: anchor
|
315 | });
|
316 |
|
317 | if (nativeHandler) {
|
318 | nodeThatClaimedTheSwipe = nativeHandler;
|
319 | return;
|
320 | }
|
321 |
|
322 | nodeThatClaimedTheSwipe = swipeInstance.current;
|
323 | }
|
324 |
|
325 |
|
326 | if (swipeInstance.current.isSwiping == null) {
|
327 | var dx = Math.abs(currentX - swipeInstance.current.startX);
|
328 | var dy = Math.abs(currentY - swipeInstance.current.startY);
|
329 |
|
330 | if (dx > dy) {
|
331 | if (event.cancelable) {
|
332 | event.preventDefault();
|
333 | }
|
334 | }
|
335 |
|
336 | var definitelySwiping = horizontalSwipe ? dx > dy && dx > UNCERTAINTY_THRESHOLD : dy > dx && dy > UNCERTAINTY_THRESHOLD;
|
337 |
|
338 | if (definitelySwiping === true || (horizontalSwipe ? dy > UNCERTAINTY_THRESHOLD : dx > UNCERTAINTY_THRESHOLD)) {
|
339 | swipeInstance.current.isSwiping = definitelySwiping;
|
340 |
|
341 | if (!definitelySwiping) {
|
342 | handleBodyTouchEnd(event);
|
343 | return;
|
344 | }
|
345 |
|
346 |
|
347 | swipeInstance.current.startX = currentX;
|
348 | swipeInstance.current.startY = currentY;
|
349 |
|
350 | if (!disableDiscovery && !open) {
|
351 | if (horizontalSwipe) {
|
352 | swipeInstance.current.startX -= swipeAreaWidth;
|
353 | } else {
|
354 | swipeInstance.current.startY -= swipeAreaWidth;
|
355 | }
|
356 | }
|
357 | }
|
358 | }
|
359 |
|
360 | if (!swipeInstance.current.isSwiping) {
|
361 | return;
|
362 | }
|
363 |
|
364 | var maxTranslate = getMaxTranslate(horizontalSwipe, paperRef.current);
|
365 | var startLocation = horizontalSwipe ? swipeInstance.current.startX : swipeInstance.current.startY;
|
366 |
|
367 | if (open && !swipeInstance.current.paperHit) {
|
368 | startLocation = Math.min(startLocation, maxTranslate);
|
369 | }
|
370 |
|
371 | var translate = getTranslate(horizontalSwipe ? currentX : currentY, startLocation, open, maxTranslate);
|
372 |
|
373 | if (open) {
|
374 | if (!swipeInstance.current.paperHit) {
|
375 | var paperHit = horizontalSwipe ? currentX < maxTranslate : currentY < maxTranslate;
|
376 |
|
377 | if (paperHit) {
|
378 | swipeInstance.current.paperHit = true;
|
379 | swipeInstance.current.startX = currentX;
|
380 | swipeInstance.current.startY = currentY;
|
381 | } else {
|
382 | return;
|
383 | }
|
384 | } else if (translate === 0) {
|
385 | swipeInstance.current.startX = currentX;
|
386 | swipeInstance.current.startY = currentY;
|
387 | }
|
388 | }
|
389 |
|
390 | if (swipeInstance.current.lastTranslate === null) {
|
391 | swipeInstance.current.lastTranslate = translate;
|
392 | swipeInstance.current.lastTime = performance.now() + 1;
|
393 | }
|
394 |
|
395 | var velocity = (translate - swipeInstance.current.lastTranslate) / (performance.now() - swipeInstance.current.lastTime) * 1e3;
|
396 |
|
397 | swipeInstance.current.velocity = swipeInstance.current.velocity * 0.4 + velocity * 0.6;
|
398 | swipeInstance.current.lastTranslate = translate;
|
399 | swipeInstance.current.lastTime = performance.now();
|
400 |
|
401 | if (event.cancelable) {
|
402 | event.preventDefault();
|
403 | }
|
404 |
|
405 | setPosition(translate);
|
406 | });
|
407 | var handleBodyTouchStart = (0, _useEventCallback.default)(function (event) {
|
408 |
|
409 |
|
410 | if (event.defaultPrevented) {
|
411 | return;
|
412 | }
|
413 |
|
414 |
|
415 | if (event.muiHandled) {
|
416 | return;
|
417 | }
|
418 |
|
419 |
|
420 | if (open && !backdropRef.current.contains(event.target) && !paperRef.current.contains(event.target)) {
|
421 | return;
|
422 | }
|
423 |
|
424 | var anchorRtl = (0, _Drawer.getAnchor)(theme, anchor);
|
425 | var horizontalSwipe = (0, _Drawer.isHorizontal)(anchor);
|
426 | var currentX = calculateCurrentX(anchorRtl, event.touches);
|
427 | var currentY = calculateCurrentY(anchorRtl, event.touches);
|
428 |
|
429 | if (!open) {
|
430 | if (disableSwipeToOpen || event.target !== swipeAreaRef.current) {
|
431 | return;
|
432 | }
|
433 |
|
434 | if (horizontalSwipe) {
|
435 | if (currentX > swipeAreaWidth) {
|
436 | return;
|
437 | }
|
438 | } else if (currentY > swipeAreaWidth) {
|
439 | return;
|
440 | }
|
441 | }
|
442 |
|
443 | event.muiHandled = true;
|
444 | nodeThatClaimedTheSwipe = null;
|
445 | swipeInstance.current.startX = currentX;
|
446 | swipeInstance.current.startY = currentY;
|
447 | setMaybeSwiping(true);
|
448 |
|
449 | if (!open && paperRef.current) {
|
450 |
|
451 | setPosition(getMaxTranslate(horizontalSwipe, paperRef.current) + (disableDiscovery ? 20 : -swipeAreaWidth), {
|
452 | changeTransition: false
|
453 | });
|
454 | }
|
455 |
|
456 | swipeInstance.current.velocity = 0;
|
457 | swipeInstance.current.lastTime = null;
|
458 | swipeInstance.current.lastTranslate = null;
|
459 | swipeInstance.current.paperHit = false;
|
460 | touchDetected.current = true;
|
461 | });
|
462 |
|
463 | _react.default.useEffect(function () {
|
464 | if (variant === 'temporary') {
|
465 | document.body.addEventListener('touchstart', handleBodyTouchStart);
|
466 | document.body.addEventListener('touchmove', handleBodyTouchMove, {
|
467 | passive: false
|
468 | });
|
469 | document.body.addEventListener('touchend', handleBodyTouchEnd);
|
470 | return function () {
|
471 | document.body.removeEventListener('touchstart', handleBodyTouchStart);
|
472 | document.body.removeEventListener('touchmove', handleBodyTouchMove, {
|
473 | passive: false
|
474 | });
|
475 | document.body.removeEventListener('touchend', handleBodyTouchEnd);
|
476 | };
|
477 | }
|
478 |
|
479 | return undefined;
|
480 | }, [variant, handleBodyTouchStart, handleBodyTouchMove, handleBodyTouchEnd]);
|
481 |
|
482 | _react.default.useEffect(function () {
|
483 | return function () {
|
484 |
|
485 | if (nodeThatClaimedTheSwipe === swipeInstance.current) {
|
486 | nodeThatClaimedTheSwipe = null;
|
487 | }
|
488 | };
|
489 | }, []);
|
490 |
|
491 | _react.default.useEffect(function () {
|
492 | if (!open) {
|
493 | setMaybeSwiping(false);
|
494 | }
|
495 | }, [open]);
|
496 |
|
497 | var handleBackdropRef = _react.default.useCallback(function (instance) {
|
498 |
|
499 | backdropRef.current = _reactDom.default.findDOMNode(instance);
|
500 | }, []);
|
501 |
|
502 | var handlePaperRef = _react.default.useCallback(function (instance) {
|
503 |
|
504 | paperRef.current = _reactDom.default.findDOMNode(instance);
|
505 | }, []);
|
506 |
|
507 | return _react.default.createElement(_react.default.Fragment, null, _react.default.createElement(_Drawer.default, (0, _extends2.default)({
|
508 | open: variant === 'temporary' && maybeSwiping ? true : open,
|
509 | variant: variant,
|
510 | ModalProps: (0, _extends2.default)({
|
511 | BackdropProps: (0, _extends2.default)({}, BackdropProps, {
|
512 | ref: handleBackdropRef
|
513 | })
|
514 | }, ModalPropsProp),
|
515 | PaperProps: (0, _extends2.default)({}, PaperProps, {
|
516 | style: (0, _extends2.default)({
|
517 | pointerEvents: variant === 'temporary' && !open ? 'none' : ''
|
518 | }, PaperProps.style),
|
519 | ref: handlePaperRef
|
520 | }),
|
521 | anchor: anchor,
|
522 | transitionDuration: calculatedDurationRef.current || transitionDuration,
|
523 | onClose: onClose,
|
524 | ref: ref
|
525 | }, other)), !disableSwipeToOpen && variant === 'temporary' && _react.default.createElement(_NoSsr.default, null, _react.default.createElement(_SwipeArea.default, (0, _extends2.default)({
|
526 | anchor: anchor,
|
527 | ref: swipeAreaRef,
|
528 | width: swipeAreaWidth
|
529 | }, SwipeAreaProps))));
|
530 | });
|
531 |
|
532 | process.env.NODE_ENV !== "production" ? SwipeableDrawer.propTypes = {
|
533 | |
534 |
|
535 |
|
536 | anchor: _propTypes.default.oneOf(['left', 'top', 'right', 'bottom']),
|
537 |
|
538 | |
539 |
|
540 |
|
541 | children: _propTypes.default.node,
|
542 |
|
543 | |
544 |
|
545 |
|
546 |
|
547 | disableBackdropTransition: _propTypes.default.bool,
|
548 |
|
549 | |
550 |
|
551 |
|
552 |
|
553 | disableDiscovery: _propTypes.default.bool,
|
554 |
|
555 | |
556 |
|
557 |
|
558 |
|
559 | disableSwipeToOpen: _propTypes.default.bool,
|
560 |
|
561 | |
562 |
|
563 |
|
564 | hideBackdrop: _propTypes.default.bool,
|
565 |
|
566 | |
567 |
|
568 |
|
569 |
|
570 | hysteresis: _propTypes.default.number,
|
571 |
|
572 | |
573 |
|
574 |
|
575 |
|
576 |
|
577 | minFlingVelocity: _propTypes.default.number,
|
578 |
|
579 | |
580 |
|
581 |
|
582 | ModalProps: _propTypes.default.shape({
|
583 | BackdropProps: _propTypes.default.shape({
|
584 | component: _utils.elementTypeAcceptingRef
|
585 | })
|
586 | }),
|
587 |
|
588 | |
589 |
|
590 |
|
591 |
|
592 |
|
593 | onClose: _propTypes.default.func.isRequired,
|
594 |
|
595 | |
596 |
|
597 |
|
598 |
|
599 |
|
600 | onOpen: _propTypes.default.func.isRequired,
|
601 |
|
602 | |
603 |
|
604 |
|
605 | open: _propTypes.default.bool.isRequired,
|
606 |
|
607 | |
608 |
|
609 |
|
610 | PaperProps: _propTypes.default.shape({
|
611 | component: _utils.elementTypeAcceptingRef,
|
612 | style: _propTypes.default.object
|
613 | }),
|
614 |
|
615 | |
616 |
|
617 |
|
618 | SwipeAreaProps: _propTypes.default.object,
|
619 |
|
620 | |
621 |
|
622 |
|
623 |
|
624 | swipeAreaWidth: _propTypes.default.number,
|
625 |
|
626 | |
627 |
|
628 |
|
629 |
|
630 | transitionDuration: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
|
631 | enter: _propTypes.default.number,
|
632 | exit: _propTypes.default.number
|
633 | })]),
|
634 |
|
635 | |
636 |
|
637 |
|
638 | variant: _propTypes.default.oneOf(['permanent', 'persistent', 'temporary'])
|
639 | } : void 0;
|
640 | var _default = SwipeableDrawer;
|
641 | exports.default = _default; |
\ | No newline at end of file |