UNPKG

2.78 kBJavaScriptView Raw
1"use strict";
2'use client';
3
4var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6Object.defineProperty(exports, "__esModule", {
7 value: true
8});
9exports.default = void 0;
10var React = _interopRequireWildcard(require("react"));
11var _propTypes = _interopRequireDefault(require("prop-types"));
12var _clsx = _interopRequireDefault(require("clsx"));
13var _zeroStyled = require("../zero-styled");
14var _memoTheme = _interopRequireDefault(require("../utils/memoTheme"));
15var _rootShouldForwardProp = _interopRequireDefault(require("../styles/rootShouldForwardProp"));
16var _capitalize = _interopRequireDefault(require("../utils/capitalize"));
17var _Drawer = require("../Drawer/Drawer");
18var _jsxRuntime = require("react/jsx-runtime");
19const SwipeAreaRoot = (0, _zeroStyled.styled)('div', {
20 shouldForwardProp: _rootShouldForwardProp.default
21})((0, _memoTheme.default)(({
22 theme
23}) => ({
24 position: 'fixed',
25 top: 0,
26 left: 0,
27 bottom: 0,
28 zIndex: theme.zIndex.drawer - 1,
29 variants: [{
30 props: {
31 anchor: 'left'
32 },
33 style: {
34 right: 'auto'
35 }
36 }, {
37 props: {
38 anchor: 'right'
39 },
40 style: {
41 left: 'auto',
42 right: 0
43 }
44 }, {
45 props: {
46 anchor: 'top'
47 },
48 style: {
49 bottom: 'auto',
50 right: 0
51 }
52 }, {
53 props: {
54 anchor: 'bottom'
55 },
56 style: {
57 top: 'auto',
58 bottom: 0,
59 right: 0
60 }
61 }]
62})));
63
64/**
65 * @ignore - internal component.
66 */
67const SwipeArea = /*#__PURE__*/React.forwardRef(function SwipeArea(props, ref) {
68 const {
69 anchor,
70 classes = {},
71 className,
72 width,
73 style,
74 ...other
75 } = props;
76 const ownerState = props;
77 return /*#__PURE__*/(0, _jsxRuntime.jsx)(SwipeAreaRoot, {
78 className: (0, _clsx.default)('PrivateSwipeArea-root', classes.root, classes[`anchor${(0, _capitalize.default)(anchor)}`], className),
79 ref: ref,
80 style: {
81 [(0, _Drawer.isHorizontal)(anchor) ? 'width' : 'height']: width,
82 ...style
83 },
84 ownerState: ownerState,
85 ...other
86 });
87});
88process.env.NODE_ENV !== "production" ? SwipeArea.propTypes = {
89 /**
90 * Side on which to attach the discovery area.
91 */
92 anchor: _propTypes.default.oneOf(['left', 'top', 'right', 'bottom']).isRequired,
93 /**
94 * @ignore
95 */
96 classes: _propTypes.default.object,
97 /**
98 * @ignore
99 */
100 className: _propTypes.default.string,
101 /**
102 * @ignore
103 */
104 style: _propTypes.default.object,
105 /**
106 * The width of the left most (or right most) area in `px` where the
107 * drawer can be swiped open from.
108 */
109 width: _propTypes.default.number.isRequired
110} : void 0;
111var _default = exports.default = SwipeArea;
\No newline at end of file