@material-ui/lab
Version:
Material-UI Lab - Incubator for Material-UI React components.
93 lines (91 loc) • 3.42 kB
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
import * as React from 'react';
import clsx from 'clsx';
import Button from '@material-ui/core/Button';
import DialogActions from '@material-ui/core/DialogActions';
import DialogContent from '@material-ui/core/DialogContent';
import Dialog from '@material-ui/core/Dialog';
import { createStyles, withStyles } from '@material-ui/core/styles';
import { DIALOG_WIDTH, DIALOG_WIDTH_WIDER } from './constants/dimensions';
export var styles = createStyles({
dialogRoot: {
minWidth: DIALOG_WIDTH
},
dialogRootWider: {
minWidth: DIALOG_WIDTH_WIDER
},
dialogContainer: {
'&:focus > $dialogRoot': {
outline: 'auto',
'@media (pointer:coarse)': {
outline: 0
}
}
},
dialog: {
'&:first-child': {
padding: 0
}
},
dialogAction: {// requested for overrides
},
withAdditionalAction: {
// set justifyContent to default value to fix IE11 layout bug
// see https://github.com/mui-org/material-ui-pickers/pull/267
justifyContent: 'flex-start',
'& > *:first-child': {
marginRight: 'auto'
}
}
});
var PickersModalDialog = function PickersModalDialog(props) {
var open = props.open,
classes = props.classes,
_props$cancelText = props.cancelText,
cancelText = _props$cancelText === void 0 ? 'Cancel' : _props$cancelText,
children = props.children,
_props$clearable = props.clearable,
clearable = _props$clearable === void 0 ? false : _props$clearable,
_props$clearText = props.clearText,
clearText = _props$clearText === void 0 ? 'Clear' : _props$clearText,
_props$okText = props.okText,
okText = _props$okText === void 0 ? 'OK' : _props$okText,
onAccept = props.onAccept,
onClear = props.onClear,
onDismiss = props.onDismiss,
onSetToday = props.onSetToday,
_props$showTodayButto = props.showTodayButton,
showTodayButton = _props$showTodayButto === void 0 ? false : _props$showTodayButto,
_props$todayText = props.todayText,
todayText = _props$todayText === void 0 ? 'Today' : _props$todayText,
wider = props.wider,
DialogProps = props.DialogProps;
var MuiDialogClasses = DialogProps === null || DialogProps === void 0 ? void 0 : DialogProps.classes;
return /*#__PURE__*/React.createElement(Dialog, _extends({
open: open,
onClose: onDismiss,
classes: _extends({
container: classes.dialogContainer,
paper: clsx(classes.dialogRoot, wider && classes.dialogRootWider)
}, MuiDialogClasses)
}, DialogProps), /*#__PURE__*/React.createElement(DialogContent, {
className: classes.dialog
}, children), /*#__PURE__*/React.createElement(DialogActions, {
className: clsx(classes.dialogAction, (clearable || showTodayButton) && classes.withAdditionalAction)
}, clearable && /*#__PURE__*/React.createElement(Button, {
color: "primary",
onClick: onClear
}, clearText), showTodayButton && /*#__PURE__*/React.createElement(Button, {
color: "primary",
onClick: onSetToday
}, todayText), cancelText && /*#__PURE__*/React.createElement(Button, {
color: "primary",
onClick: onDismiss
}, cancelText), okText && /*#__PURE__*/React.createElement(Button, {
color: "primary",
onClick: onAccept
}, okText)));
};
export default withStyles(styles, {
name: 'MuiPickersModalDialog'
})(PickersModalDialog);