UNPKG

@material-ui/lab

Version:

Material-UI Lab - Incubator for Material-UI React components.

89 lines (87 loc) 2.69 kB
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 const 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' } } }); const PickersModalDialog = props => { const { open, classes, cancelText = 'Cancel', children, clearable = false, clearText = 'Clear', okText = 'OK', onAccept, onClear, onDismiss, onSetToday, showTodayButton = false, todayText = 'Today', wider, DialogProps } = props; const 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);