@material-ui/lab
Version:
Material-UI Lab - Incubator for Material-UI React components.
100 lines (81 loc) • 3.74 kB
JavaScript
"use strict";
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
var React = _interopRequireWildcard(require("react"));
var _clsx = _interopRequireDefault(require("clsx"));
var _Typography = _interopRequireDefault(require("@material-ui/core/Typography"));
var _styles = require("@material-ui/core/styles");
var _IconButton = _interopRequireDefault(require("@material-ui/core/IconButton"));
var _ArrowLeft = _interopRequireDefault(require("../svg-icons/ArrowLeft"));
var _ArrowRight = _interopRequireDefault(require("../svg-icons/ArrowRight"));
const styles = theme => (0, _styles.createStyles)({
root: {},
iconButton: {
zIndex: 1,
backgroundColor: theme.palette.background.paper
},
previousMonthButtonMargin: {
marginRight: 24
},
hidden: {
visibility: 'hidden'
}
});
exports.styles = styles;
var _ref = /*#__PURE__*/React.createElement(_ArrowLeft.default, null);
var _ref2 = /*#__PURE__*/React.createElement(_ArrowRight.default, null);
const PickersArrowSwitcher = /*#__PURE__*/React.forwardRef((props, ref) => {
const {
classes,
className,
isLeftDisabled,
isLeftHidden,
isRightDisabled,
isRightHidden,
leftArrowButtonProps,
leftArrowButtonText,
leftArrowIcon = _ref,
onLeftClick,
onRightClick,
rightArrowButtonProps,
rightArrowButtonText,
rightArrowIcon = _ref2,
text
} = props,
other = (0, _objectWithoutPropertiesLoose2.default)(props, ["classes", "className", "isLeftDisabled", "isLeftHidden", "isRightDisabled", "isRightHidden", "leftArrowButtonProps", "leftArrowButtonText", "leftArrowIcon", "onLeftClick", "onRightClick", "rightArrowButtonProps", "rightArrowButtonText", "rightArrowIcon", "text"]);
const theme = (0, _styles.useTheme)();
const isRtl = theme.direction === 'rtl';
return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({
className: (0, _clsx.default)(classes.root, className),
ref: ref
}, other), /*#__PURE__*/React.createElement(_IconButton.default, (0, _extends2.default)({
size: "small",
"aria-hidden": isLeftHidden,
"aria-label": leftArrowButtonText
}, leftArrowButtonProps, {
disabled: isLeftDisabled,
onClick: onLeftClick,
className: (0, _clsx.default)(classes.iconButton, leftArrowButtonProps === null || leftArrowButtonProps === void 0 ? void 0 : leftArrowButtonProps.className, isLeftHidden && classes.hidden, !text && classes.previousMonthButtonMargin)
}), isRtl ? rightArrowIcon : leftArrowIcon), text && /*#__PURE__*/React.createElement(_Typography.default, {
variant: "subtitle1",
display: "inline"
}, text), /*#__PURE__*/React.createElement(_IconButton.default, (0, _extends2.default)({
size: "small",
"aria-hidden": isRightHidden,
"aria-label": rightArrowButtonText
}, rightArrowButtonProps, {
disabled: isRightDisabled,
onClick: onRightClick,
className: (0, _clsx.default)(classes.iconButton, rightArrowButtonProps === null || rightArrowButtonProps === void 0 ? void 0 : rightArrowButtonProps.className, isRightHidden && classes.hidden)
}), isRtl ? leftArrowIcon : rightArrowIcon));
});
var _default = (0, _styles.withStyles)(styles, {
name: 'MuiPickersArrowSwitcher'
})( /*#__PURE__*/React.memo(PickersArrowSwitcher));
exports.default = _default;