@mui/material 5.3.1 → 5.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Autocomplete/Autocomplete.d.ts +5 -0
- package/Autocomplete/Autocomplete.js +11 -3
- package/AvatarGroup/AvatarGroup.d.ts +10 -0
- package/AvatarGroup/AvatarGroup.js +19 -7
- package/Badge/Badge.js +3 -2
- package/Breadcrumbs/BreadcrumbCollapsed.js +1 -3
- package/ButtonBase/ButtonBase.d.ts +5 -1
- package/ButtonBase/ButtonBase.js +15 -2
- package/ButtonBase/TouchRipple.js +1 -2
- package/CHANGELOG.md +295 -27
- package/Dialog/Dialog.d.ts +4 -1
- package/Dialog/Dialog.js +10 -6
- package/Drawer/Drawer.d.ts +4 -1
- package/Drawer/Drawer.js +11 -9
- package/Fab/Fab.d.ts +4 -1
- package/Fab/Fab.js +8 -20
- package/Fab/fabClasses.js +1 -1
- package/Fade/Fade.d.ts +2 -2
- package/Fade/Fade.js +8 -8
- package/FormControlLabel/FormControlLabel.js +11 -3
- package/FormControlLabel/formControlLabelClasses.d.ts +2 -0
- package/FormControlLabel/formControlLabelClasses.js +1 -1
- package/FormGroup/FormGroup.js +14 -3
- package/FormGroup/formGroupClasses.d.ts +2 -0
- package/FormGroup/formGroupClasses.js +1 -1
- package/FormHelperText/FormHelperText.js +7 -9
- package/Grid/Grid.js +2 -4
- package/ImageList/ImageList.js +3 -1
- package/InputAdornment/InputAdornment.js +6 -9
- package/Modal/Modal.js +1 -1
- package/OutlinedInput/NotchedOutline.js +14 -16
- package/OutlinedInput/OutlinedInput.js +1 -1
- package/README.md +6 -6
- package/Radio/RadioButtonIcon.js +2 -6
- package/Rating/Rating.js +1 -1
- package/Select/Select.js +19 -7
- package/Select/SelectInput.js +12 -10
- package/Slide/Slide.d.ts +4 -4
- package/Slide/Slide.js +14 -14
- package/Slider/Slider.js +3 -1
- package/Snackbar/Snackbar.d.ts +2 -2
- package/Snackbar/Snackbar.js +12 -9
- package/SpeedDial/SpeedDial.d.ts +2 -2
- package/SpeedDial/SpeedDial.js +9 -7
- package/Step/StepContext.d.ts +20 -0
- package/Step/StepContext.js +10 -2
- package/Step/index.d.ts +3 -0
- package/Step/index.js +3 -1
- package/SwipeableDrawer/SwipeArea.js +1 -3
- package/SwipeableDrawer/SwipeableDrawer.js +8 -6
- package/TextField/TextField.js +1 -1
- package/ToggleButton/ToggleButton.d.ts +15 -0
- package/ToggleButton/ToggleButton.js +8 -2
- package/Zoom/Zoom.d.ts +2 -2
- package/Zoom/Zoom.js +8 -8
- package/index.d.ts +11 -3
- package/index.js +8 -3
- package/internal/SwitchBase.js +2 -6
- package/legacy/Autocomplete/Autocomplete.js +12 -3
- package/legacy/AvatarGroup/AvatarGroup.js +20 -7
- package/legacy/Badge/Badge.js +4 -2
- package/legacy/Breadcrumbs/BreadcrumbCollapsed.js +1 -3
- package/legacy/ButtonBase/ButtonBase.js +15 -2
- package/legacy/ButtonBase/TouchRipple.js +1 -2
- package/legacy/Dialog/Dialog.js +10 -6
- package/legacy/Drawer/Drawer.js +11 -9
- package/legacy/Fab/Fab.js +8 -20
- package/legacy/Fab/fabClasses.js +1 -1
- package/legacy/Fade/Fade.js +8 -8
- package/legacy/FormControlLabel/FormControlLabel.js +11 -3
- package/legacy/FormControlLabel/formControlLabelClasses.js +1 -1
- package/legacy/FormGroup/FormGroup.js +14 -3
- package/legacy/FormGroup/formGroupClasses.js +1 -1
- package/legacy/FormHelperText/FormHelperText.js +7 -9
- package/legacy/Grid/Grid.js +2 -4
- package/legacy/ImageList/ImageList.js +3 -1
- package/legacy/InputAdornment/InputAdornment.js +6 -9
- package/legacy/Modal/Modal.js +1 -1
- package/legacy/OutlinedInput/NotchedOutline.js +14 -16
- package/legacy/OutlinedInput/OutlinedInput.js +1 -1
- package/legacy/Radio/RadioButtonIcon.js +2 -6
- package/legacy/Rating/Rating.js +1 -1
- package/legacy/Select/Select.js +23 -7
- package/legacy/Select/SelectInput.js +12 -10
- package/legacy/Slide/Slide.js +14 -14
- package/legacy/Slider/Slider.js +3 -1
- package/legacy/Snackbar/Snackbar.js +12 -9
- package/legacy/SpeedDial/SpeedDial.js +9 -7
- package/legacy/Step/StepContext.js +10 -2
- package/legacy/Step/index.js +3 -1
- package/legacy/SwipeableDrawer/SwipeArea.js +1 -3
- package/legacy/SwipeableDrawer/SwipeableDrawer.js +8 -6
- package/legacy/TextField/TextField.js +1 -1
- package/legacy/ToggleButton/ToggleButton.js +8 -2
- package/legacy/Zoom/Zoom.js +8 -8
- package/legacy/index.js +8 -3
- package/legacy/internal/SwitchBase.js +2 -6
- package/legacy/locale/index.js +86 -78
- package/legacy/styles/makeStyles.js +1 -1
- package/legacy/styles/withStyles.js +1 -1
- package/legacy/styles/withTheme.js +1 -1
- package/legacy/useMediaQuery/useMediaQuery.js +87 -32
- package/locale/index.js +12 -6
- package/modern/Autocomplete/Autocomplete.js +11 -3
- package/modern/AvatarGroup/AvatarGroup.js +17 -7
- package/modern/Badge/Badge.js +3 -2
- package/modern/Breadcrumbs/BreadcrumbCollapsed.js +1 -3
- package/modern/ButtonBase/ButtonBase.js +15 -2
- package/modern/ButtonBase/TouchRipple.js +1 -2
- package/modern/Dialog/Dialog.js +10 -6
- package/modern/Drawer/Drawer.js +11 -9
- package/modern/Fab/Fab.js +8 -20
- package/modern/Fab/fabClasses.js +1 -1
- package/modern/Fade/Fade.js +8 -8
- package/modern/FormControlLabel/FormControlLabel.js +11 -3
- package/modern/FormControlLabel/formControlLabelClasses.js +1 -1
- package/modern/FormGroup/FormGroup.js +14 -3
- package/modern/FormGroup/formGroupClasses.js +1 -1
- package/modern/FormHelperText/FormHelperText.js +7 -9
- package/modern/Grid/Grid.js +2 -4
- package/modern/ImageList/ImageList.js +3 -1
- package/modern/InputAdornment/InputAdornment.js +6 -9
- package/modern/Modal/Modal.js +1 -1
- package/modern/OutlinedInput/NotchedOutline.js +14 -16
- package/modern/OutlinedInput/OutlinedInput.js +1 -1
- package/modern/Radio/RadioButtonIcon.js +2 -6
- package/modern/Rating/Rating.js +1 -1
- package/modern/Select/Select.js +19 -7
- package/modern/Select/SelectInput.js +12 -10
- package/modern/Slide/Slide.js +14 -14
- package/modern/Slider/Slider.js +3 -1
- package/modern/Snackbar/Snackbar.js +12 -9
- package/modern/SpeedDial/SpeedDial.js +9 -7
- package/modern/Step/StepContext.js +10 -2
- package/modern/Step/index.js +3 -1
- package/modern/SwipeableDrawer/SwipeArea.js +1 -3
- package/modern/SwipeableDrawer/SwipeableDrawer.js +8 -6
- package/modern/TextField/TextField.js +1 -1
- package/modern/ToggleButton/ToggleButton.js +8 -2
- package/modern/Zoom/Zoom.js +8 -8
- package/modern/index.js +8 -3
- package/modern/internal/SwitchBase.js +2 -6
- package/modern/locale/index.js +12 -6
- package/modern/styles/makeStyles.js +1 -1
- package/modern/styles/withStyles.js +1 -1
- package/modern/styles/withTheme.js +1 -1
- package/modern/useMediaQuery/useMediaQuery.js +69 -27
- package/node/Autocomplete/Autocomplete.js +11 -3
- package/node/AvatarGroup/AvatarGroup.js +19 -7
- package/node/Badge/Badge.js +3 -2
- package/node/Breadcrumbs/BreadcrumbCollapsed.js +1 -3
- package/node/ButtonBase/ButtonBase.js +15 -2
- package/node/ButtonBase/TouchRipple.js +1 -2
- package/node/Dialog/Dialog.js +11 -7
- package/node/Drawer/Drawer.js +11 -10
- package/node/Fab/Fab.js +8 -20
- package/node/Fab/fabClasses.js +1 -1
- package/node/Fade/Fade.js +7 -9
- package/node/FormControlLabel/FormControlLabel.js +12 -3
- package/node/FormControlLabel/formControlLabelClasses.js +1 -1
- package/node/FormGroup/FormGroup.js +15 -3
- package/node/FormGroup/formGroupClasses.js +1 -1
- package/node/FormHelperText/FormHelperText.js +6 -9
- package/node/Grid/Grid.js +2 -4
- package/node/ImageList/ImageList.js +3 -1
- package/node/InputAdornment/InputAdornment.js +5 -9
- package/node/Modal/Modal.js +1 -1
- package/node/OutlinedInput/NotchedOutline.js +12 -16
- package/node/OutlinedInput/OutlinedInput.js +1 -1
- package/node/Radio/RadioButtonIcon.js +2 -6
- package/node/Rating/Rating.js +1 -1
- package/node/Select/Select.js +22 -9
- package/node/Select/SelectInput.js +11 -10
- package/node/Slide/Slide.js +14 -16
- package/node/Slider/Slider.js +3 -1
- package/node/Snackbar/Snackbar.js +12 -10
- package/node/SpeedDial/SpeedDial.js +9 -7
- package/node/Step/StepContext.js +11 -1
- package/node/Step/index.js +22 -1
- package/node/SwipeableDrawer/SwipeArea.js +1 -3
- package/node/SwipeableDrawer/SwipeableDrawer.js +8 -7
- package/node/TextField/TextField.js +1 -1
- package/node/ToggleButton/ToggleButton.js +8 -2
- package/node/Zoom/Zoom.js +7 -9
- package/node/index.js +62 -16
- package/node/internal/SwitchBase.js +2 -6
- package/node/locale/index.js +12 -6
- package/node/styles/makeStyles.js +1 -1
- package/node/styles/withStyles.js +1 -1
- package/node/styles/withTheme.js +1 -1
- package/node/useMediaQuery/useMediaQuery.js +69 -27
- package/package.json +8 -8
- package/styles/ThemeProvider.d.ts +1 -1
- package/styles/index.d.ts +3 -0
- package/styles/makeStyles.js +1 -1
- package/styles/withStyles.js +1 -1
- package/styles/withTheme.js +1 -1
- package/umd/material-ui.development.js +5022 -7146
- package/umd/material-ui.production.min.js +21 -21
- package/useMediaQuery/useMediaQuery.d.ts +4 -0
- package/useMediaQuery/useMediaQuery.js +69 -27
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
const _excluded = ["action", "centerRipple", "children", "className", "component", "disabled", "disableRipple", "disableTouchRipple", "focusRipple", "focusVisibleClassName", "LinkComponent", "onBlur", "onClick", "onContextMenu", "onDragLeave", "onFocus", "onFocusVisible", "onKeyDown", "onKeyUp", "onMouseDown", "onMouseLeave", "onMouseUp", "onTouchEnd", "onTouchMove", "onTouchStart", "tabIndex", "TouchRippleProps", "type"];
|
|
3
|
+
const _excluded = ["action", "centerRipple", "children", "className", "component", "disabled", "disableRipple", "disableTouchRipple", "focusRipple", "focusVisibleClassName", "LinkComponent", "onBlur", "onClick", "onContextMenu", "onDragLeave", "onFocus", "onFocusVisible", "onKeyDown", "onKeyUp", "onMouseDown", "onMouseLeave", "onMouseUp", "onTouchEnd", "onTouchMove", "onTouchStart", "tabIndex", "TouchRippleProps", "touchRippleRef", "type"];
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import PropTypes from 'prop-types';
|
|
6
6
|
import clsx from 'clsx';
|
|
@@ -118,12 +118,14 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
|
|
|
118
118
|
onTouchStart,
|
|
119
119
|
tabIndex = 0,
|
|
120
120
|
TouchRippleProps,
|
|
121
|
+
touchRippleRef,
|
|
121
122
|
type
|
|
122
123
|
} = props,
|
|
123
124
|
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
124
125
|
|
|
125
126
|
const buttonRef = React.useRef(null);
|
|
126
127
|
const rippleRef = React.useRef(null);
|
|
128
|
+
const handleRippleRef = useForkRef(rippleRef, touchRippleRef);
|
|
127
129
|
const {
|
|
128
130
|
isFocusVisibleRef,
|
|
129
131
|
onFocus: handleFocusVisible,
|
|
@@ -343,7 +345,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
|
|
|
343
345
|
|
|
344
346
|
/* TouchRipple is only needed client-side, x2 boost on the server. */
|
|
345
347
|
_jsx(TouchRipple, _extends({
|
|
346
|
-
ref:
|
|
348
|
+
ref: handleRippleRef,
|
|
347
349
|
center: centerRipple
|
|
348
350
|
}, TouchRippleProps)) : null]
|
|
349
351
|
}));
|
|
@@ -526,6 +528,17 @@ process.env.NODE_ENV !== "production" ? ButtonBase.propTypes
|
|
|
526
528
|
*/
|
|
527
529
|
TouchRippleProps: PropTypes.object,
|
|
528
530
|
|
|
531
|
+
/**
|
|
532
|
+
* A ref that points to the `TouchRipple` element.
|
|
533
|
+
*/
|
|
534
|
+
touchRippleRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
|
|
535
|
+
current: PropTypes.shape({
|
|
536
|
+
pulsate: PropTypes.func.isRequired,
|
|
537
|
+
start: PropTypes.func.isRequired,
|
|
538
|
+
stop: PropTypes.func.isRequired
|
|
539
|
+
})
|
|
540
|
+
})]),
|
|
541
|
+
|
|
529
542
|
/**
|
|
530
543
|
* @ignore
|
|
531
544
|
*/
|
package/modern/Dialog/Dialog.js
CHANGED
|
@@ -9,13 +9,13 @@ import { unstable_useId as useId } from '@mui/utils';
|
|
|
9
9
|
import capitalize from '../utils/capitalize';
|
|
10
10
|
import Modal from '../Modal';
|
|
11
11
|
import Fade from '../Fade';
|
|
12
|
-
import { duration } from '../styles/createTransitions';
|
|
13
12
|
import Paper from '../Paper';
|
|
14
13
|
import useThemeProps from '../styles/useThemeProps';
|
|
15
14
|
import styled from '../styles/styled';
|
|
16
15
|
import dialogClasses, { getDialogUtilityClass } from './dialogClasses';
|
|
17
16
|
import DialogContext from './DialogContext';
|
|
18
17
|
import Backdrop from '../Backdrop';
|
|
18
|
+
import useTheme from '../styles/useTheme';
|
|
19
19
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
20
20
|
const DialogBackdrop = styled(Backdrop, {
|
|
21
21
|
name: 'MuiDialog',
|
|
@@ -146,10 +146,6 @@ const DialogPaper = styled(Paper, {
|
|
|
146
146
|
maxWidth: '100%'
|
|
147
147
|
}
|
|
148
148
|
}));
|
|
149
|
-
const defaultTransitionDuration = {
|
|
150
|
-
enter: duration.enteringScreen,
|
|
151
|
-
exit: duration.leavingScreen
|
|
152
|
-
};
|
|
153
149
|
/**
|
|
154
150
|
* Dialogs are overlaid modal paper based components with a backdrop.
|
|
155
151
|
*/
|
|
@@ -159,6 +155,11 @@ const Dialog = /*#__PURE__*/React.forwardRef(function Dialog(inProps, ref) {
|
|
|
159
155
|
props: inProps,
|
|
160
156
|
name: 'MuiDialog'
|
|
161
157
|
});
|
|
158
|
+
const theme = useTheme();
|
|
159
|
+
const defaultTransitionDuration = {
|
|
160
|
+
enter: theme.transitions.duration.enteringScreen,
|
|
161
|
+
exit: theme.transitions.duration.leavingScreen
|
|
162
|
+
};
|
|
162
163
|
|
|
163
164
|
const {
|
|
164
165
|
'aria-describedby': ariaDescribedby,
|
|
@@ -399,7 +400,10 @@ process.env.NODE_ENV !== "production" ? Dialog.propTypes
|
|
|
399
400
|
/**
|
|
400
401
|
* The duration for the transition, in milliseconds.
|
|
401
402
|
* You may specify a single timeout for all transitions, or individually with an object.
|
|
402
|
-
* @default {
|
|
403
|
+
* @default {
|
|
404
|
+
* enter: theme.transitions.duration.enteringScreen,
|
|
405
|
+
* exit: theme.transitions.duration.leavingScreen,
|
|
406
|
+
* }
|
|
403
407
|
*/
|
|
404
408
|
transitionDuration: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({
|
|
405
409
|
appear: PropTypes.number,
|
package/modern/Drawer/Drawer.js
CHANGED
|
@@ -11,7 +11,6 @@ import Modal from '../Modal';
|
|
|
11
11
|
import Slide from '../Slide';
|
|
12
12
|
import Paper from '../Paper';
|
|
13
13
|
import capitalize from '../utils/capitalize';
|
|
14
|
-
import { duration } from '../styles/createTransitions';
|
|
15
14
|
import useTheme from '../styles/useTheme';
|
|
16
15
|
import useThemeProps from '../styles/useThemeProps';
|
|
17
16
|
import styled, { rootShouldForwardProp } from '../styles/styled';
|
|
@@ -124,10 +123,6 @@ export function isHorizontal(anchor) {
|
|
|
124
123
|
export function getAnchor(theme, anchor) {
|
|
125
124
|
return theme.direction === 'rtl' && isHorizontal(anchor) ? oppositeDirection[anchor] : anchor;
|
|
126
125
|
}
|
|
127
|
-
const defaultTransitionDuration = {
|
|
128
|
-
enter: duration.enteringScreen,
|
|
129
|
-
exit: duration.leavingScreen
|
|
130
|
-
};
|
|
131
126
|
/**
|
|
132
127
|
* The props of the [Modal](/api/modal/) component are available
|
|
133
128
|
* when `variant="temporary"` is set.
|
|
@@ -138,6 +133,11 @@ const Drawer = /*#__PURE__*/React.forwardRef(function Drawer(inProps, ref) {
|
|
|
138
133
|
props: inProps,
|
|
139
134
|
name: 'MuiDrawer'
|
|
140
135
|
});
|
|
136
|
+
const theme = useTheme();
|
|
137
|
+
const defaultTransitionDuration = {
|
|
138
|
+
enter: theme.transitions.duration.enteringScreen,
|
|
139
|
+
exit: theme.transitions.duration.leavingScreen
|
|
140
|
+
};
|
|
141
141
|
|
|
142
142
|
const {
|
|
143
143
|
anchor: anchorProp = 'left',
|
|
@@ -159,12 +159,11 @@ const Drawer = /*#__PURE__*/React.forwardRef(function Drawer(inProps, ref) {
|
|
|
159
159
|
variant = 'temporary'
|
|
160
160
|
} = props,
|
|
161
161
|
ModalProps = _objectWithoutPropertiesLoose(props.ModalProps, _excluded),
|
|
162
|
-
other = _objectWithoutPropertiesLoose(props, _excluded2);
|
|
163
|
-
|
|
164
|
-
const theme = useTheme(); // Let's assume that the Drawer will always be rendered on user space.
|
|
162
|
+
other = _objectWithoutPropertiesLoose(props, _excluded2); // Let's assume that the Drawer will always be rendered on user space.
|
|
165
163
|
// We use this state is order to skip the appear transition during the
|
|
166
164
|
// initial mount of the component.
|
|
167
165
|
|
|
166
|
+
|
|
168
167
|
const mounted = React.useRef(false);
|
|
169
168
|
React.useEffect(() => {
|
|
170
169
|
mounted.current = true;
|
|
@@ -318,7 +317,10 @@ process.env.NODE_ENV !== "production" ? Drawer.propTypes
|
|
|
318
317
|
/**
|
|
319
318
|
* The duration for the transition, in milliseconds.
|
|
320
319
|
* You may specify a single timeout for all transitions, or individually with an object.
|
|
321
|
-
* @default {
|
|
320
|
+
* @default {
|
|
321
|
+
* enter: theme.transitions.duration.enteringScreen,
|
|
322
|
+
* exit: theme.transitions.duration.leavingScreen,
|
|
323
|
+
* }
|
|
322
324
|
*/
|
|
323
325
|
transitionDuration: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({
|
|
324
326
|
appear: PropTypes.number,
|
package/modern/Fab/Fab.js
CHANGED
|
@@ -20,7 +20,7 @@ const useUtilityClasses = ownerState => {
|
|
|
20
20
|
size
|
|
21
21
|
} = ownerState;
|
|
22
22
|
const slots = {
|
|
23
|
-
root: ['root', variant, `size${capitalize(size)}`, color === 'inherit'
|
|
23
|
+
root: ['root', variant, `size${capitalize(size)}`, color === 'inherit' ? 'colorInherit' : color]
|
|
24
24
|
};
|
|
25
25
|
return composeClasses(slots, getFabUtilityClass, classes);
|
|
26
26
|
};
|
|
@@ -32,7 +32,7 @@ const FabRoot = styled(ButtonBase, {
|
|
|
32
32
|
const {
|
|
33
33
|
ownerState
|
|
34
34
|
} = props;
|
|
35
|
-
return [styles.root, styles[ownerState.variant], styles[`size${capitalize(ownerState.size)}`], ownerState.color === 'inherit' && styles.colorInherit, ownerState.
|
|
35
|
+
return [styles.root, styles[ownerState.variant], styles[`size${capitalize(ownerState.size)}`], ownerState.color === 'inherit' && styles.colorInherit, styles[capitalize(ownerState.size)], styles[ownerState.color]];
|
|
36
36
|
}
|
|
37
37
|
})(({
|
|
38
38
|
theme,
|
|
@@ -99,24 +99,14 @@ const FabRoot = styled(ButtonBase, {
|
|
|
99
99
|
}), ({
|
|
100
100
|
theme,
|
|
101
101
|
ownerState
|
|
102
|
-
}) => _extends({}, ownerState.color
|
|
103
|
-
color: theme.palette.
|
|
104
|
-
backgroundColor: theme.palette.
|
|
102
|
+
}) => _extends({}, ownerState.color !== 'inherit' && ownerState.color !== 'default' && theme.palette[ownerState.color] != null && {
|
|
103
|
+
color: theme.palette[ownerState.color].contrastText,
|
|
104
|
+
backgroundColor: theme.palette[ownerState.color].main,
|
|
105
105
|
'&:hover': {
|
|
106
|
-
backgroundColor: theme.palette.
|
|
106
|
+
backgroundColor: theme.palette[ownerState.color].dark,
|
|
107
107
|
// Reset on touch devices, it doesn't add specificity
|
|
108
108
|
'@media (hover: none)': {
|
|
109
|
-
backgroundColor: theme.palette.
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}, ownerState.color === 'secondary' && {
|
|
113
|
-
color: theme.palette.secondary.contrastText,
|
|
114
|
-
backgroundColor: theme.palette.secondary.main,
|
|
115
|
-
'&:hover': {
|
|
116
|
-
backgroundColor: theme.palette.secondary.dark,
|
|
117
|
-
// Reset on touch devices, it doesn't add specificity
|
|
118
|
-
'@media (hover: none)': {
|
|
119
|
-
backgroundColor: theme.palette.secondary.main
|
|
109
|
+
backgroundColor: theme.palette[ownerState.color].main
|
|
120
110
|
}
|
|
121
111
|
}
|
|
122
112
|
}));
|
|
@@ -188,9 +178,7 @@ process.env.NODE_ENV !== "production" ? Fab.propTypes
|
|
|
188
178
|
* The color of the component. It supports those theme colors that make sense for this component.
|
|
189
179
|
* @default 'default'
|
|
190
180
|
*/
|
|
191
|
-
color: PropTypes
|
|
192
|
-
/* @typescript-to-proptypes-ignore */
|
|
193
|
-
.oneOfType([PropTypes.oneOf(['default', 'inherit', 'primary', 'secondary']), PropTypes.string]),
|
|
181
|
+
color: PropTypes.oneOf(['default', 'error', 'info', 'inherit', 'primary', 'secondary', 'success', 'warning']),
|
|
194
182
|
|
|
195
183
|
/**
|
|
196
184
|
* The component used for the root node.
|
package/modern/Fab/fabClasses.js
CHANGED
|
@@ -2,5 +2,5 @@ import { generateUtilityClass, generateUtilityClasses } from '@mui/base';
|
|
|
2
2
|
export function getFabUtilityClass(slot) {
|
|
3
3
|
return generateUtilityClass('MuiFab', slot);
|
|
4
4
|
}
|
|
5
|
-
const fabClasses = generateUtilityClasses('MuiFab', ['root', 'primary', 'secondary', 'extended', 'circular', 'focusVisible', 'disabled', 'colorInherit', 'sizeSmall', 'sizeMedium', 'sizeLarge']);
|
|
5
|
+
const fabClasses = generateUtilityClasses('MuiFab', ['root', 'primary', 'secondary', 'extended', 'circular', 'focusVisible', 'disabled', 'colorInherit', 'sizeSmall', 'sizeMedium', 'sizeLarge', 'info', 'error', 'warning', 'success']);
|
|
6
6
|
export default fabClasses;
|
package/modern/Fade/Fade.js
CHANGED
|
@@ -5,7 +5,6 @@ import * as React from 'react';
|
|
|
5
5
|
import PropTypes from 'prop-types';
|
|
6
6
|
import { Transition } from 'react-transition-group';
|
|
7
7
|
import { elementAcceptingRef } from '@mui/utils';
|
|
8
|
-
import { duration } from '../styles/createTransitions';
|
|
9
8
|
import useTheme from '../styles/useTheme';
|
|
10
9
|
import { reflow, getTransitionProps } from '../transitions/utils';
|
|
11
10
|
import useForkRef from '../utils/useForkRef';
|
|
@@ -18,16 +17,18 @@ const styles = {
|
|
|
18
17
|
opacity: 1
|
|
19
18
|
}
|
|
20
19
|
};
|
|
21
|
-
const defaultTimeout = {
|
|
22
|
-
enter: duration.enteringScreen,
|
|
23
|
-
exit: duration.leavingScreen
|
|
24
|
-
};
|
|
25
20
|
/**
|
|
26
21
|
* The Fade transition is used by the [Modal](/components/modal/) component.
|
|
27
22
|
* It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
|
|
28
23
|
*/
|
|
29
24
|
|
|
30
25
|
const Fade = /*#__PURE__*/React.forwardRef(function Fade(props, ref) {
|
|
26
|
+
const theme = useTheme();
|
|
27
|
+
const defaultTimeout = {
|
|
28
|
+
enter: theme.transitions.duration.enteringScreen,
|
|
29
|
+
exit: theme.transitions.duration.leavingScreen
|
|
30
|
+
};
|
|
31
|
+
|
|
31
32
|
const {
|
|
32
33
|
addEndListener,
|
|
33
34
|
appear = true,
|
|
@@ -47,7 +48,6 @@ const Fade = /*#__PURE__*/React.forwardRef(function Fade(props, ref) {
|
|
|
47
48
|
} = props,
|
|
48
49
|
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
49
50
|
|
|
50
|
-
const theme = useTheme();
|
|
51
51
|
const enableStrictModeCompat = true;
|
|
52
52
|
const nodeRef = React.useRef(null);
|
|
53
53
|
const foreignRef = useForkRef(children.ref, ref);
|
|
@@ -213,8 +213,8 @@ process.env.NODE_ENV !== "production" ? Fade.propTypes
|
|
|
213
213
|
* The duration for the transition, in milliseconds.
|
|
214
214
|
* You may specify a single timeout for all transitions, or individually with an object.
|
|
215
215
|
* @default {
|
|
216
|
-
* enter: duration.enteringScreen,
|
|
217
|
-
* exit: duration.leavingScreen,
|
|
216
|
+
* enter: theme.transitions.duration.enteringScreen,
|
|
217
|
+
* exit: theme.transitions.duration.leavingScreen,
|
|
218
218
|
* }
|
|
219
219
|
*/
|
|
220
220
|
timeout: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({
|
|
@@ -12,6 +12,7 @@ import capitalize from '../utils/capitalize';
|
|
|
12
12
|
import styled from '../styles/styled';
|
|
13
13
|
import useThemeProps from '../styles/useThemeProps';
|
|
14
14
|
import formControlLabelClasses, { getFormControlLabelUtilityClasses } from './formControlLabelClasses';
|
|
15
|
+
import formControlState from '../FormControl/formControlState';
|
|
15
16
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
16
17
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
17
18
|
|
|
@@ -19,10 +20,11 @@ const useUtilityClasses = ownerState => {
|
|
|
19
20
|
const {
|
|
20
21
|
classes,
|
|
21
22
|
disabled,
|
|
22
|
-
labelPlacement
|
|
23
|
+
labelPlacement,
|
|
24
|
+
error
|
|
23
25
|
} = ownerState;
|
|
24
26
|
const slots = {
|
|
25
|
-
root: ['root', disabled && 'disabled', `labelPlacement${capitalize(labelPlacement)}
|
|
27
|
+
root: ['root', disabled && 'disabled', `labelPlacement${capitalize(labelPlacement)}`, error && 'error'],
|
|
26
28
|
label: ['label', disabled && 'disabled']
|
|
27
29
|
};
|
|
28
30
|
return composeClasses(slots, getFormControlLabelUtilityClasses, classes);
|
|
@@ -114,11 +116,17 @@ const FormControlLabel = /*#__PURE__*/React.forwardRef(function FormControlLabel
|
|
|
114
116
|
controlProps[key] = props[key];
|
|
115
117
|
}
|
|
116
118
|
});
|
|
119
|
+
const fcs = formControlState({
|
|
120
|
+
props,
|
|
121
|
+
muiFormControl,
|
|
122
|
+
states: ['error']
|
|
123
|
+
});
|
|
117
124
|
|
|
118
125
|
const ownerState = _extends({}, props, {
|
|
119
126
|
disabled,
|
|
120
127
|
label,
|
|
121
|
-
labelPlacement
|
|
128
|
+
labelPlacement,
|
|
129
|
+
error: fcs.error
|
|
122
130
|
});
|
|
123
131
|
|
|
124
132
|
const classes = useUtilityClasses(ownerState);
|
|
@@ -2,5 +2,5 @@ import { generateUtilityClasses, generateUtilityClass } from '@mui/base';
|
|
|
2
2
|
export function getFormControlLabelUtilityClasses(slot) {
|
|
3
3
|
return generateUtilityClass('MuiFormControlLabel', slot);
|
|
4
4
|
}
|
|
5
|
-
const formControlLabelClasses = generateUtilityClasses('MuiFormControlLabel', ['root', 'labelPlacementStart', 'labelPlacementTop', 'labelPlacementBottom', 'disabled', 'label']);
|
|
5
|
+
const formControlLabelClasses = generateUtilityClasses('MuiFormControlLabel', ['root', 'labelPlacementStart', 'labelPlacementTop', 'labelPlacementBottom', 'disabled', 'label', 'error']);
|
|
6
6
|
export default formControlLabelClasses;
|
|
@@ -8,15 +8,18 @@ import { unstable_composeClasses as composeClasses } from '@mui/base';
|
|
|
8
8
|
import styled from '../styles/styled';
|
|
9
9
|
import useThemeProps from '../styles/useThemeProps';
|
|
10
10
|
import { getFormGroupUtilityClass } from './formGroupClasses';
|
|
11
|
+
import useFormControl from '../FormControl/useFormControl';
|
|
12
|
+
import formControlState from '../FormControl/formControlState';
|
|
11
13
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
12
14
|
|
|
13
15
|
const useUtilityClasses = ownerState => {
|
|
14
16
|
const {
|
|
15
17
|
classes,
|
|
16
|
-
row
|
|
18
|
+
row,
|
|
19
|
+
error
|
|
17
20
|
} = ownerState;
|
|
18
21
|
const slots = {
|
|
19
|
-
root: ['root', row && 'row']
|
|
22
|
+
root: ['root', row && 'row', error && 'error']
|
|
20
23
|
};
|
|
21
24
|
return composeClasses(slots, getFormGroupUtilityClass, classes);
|
|
22
25
|
};
|
|
@@ -57,8 +60,16 @@ const FormGroup = /*#__PURE__*/React.forwardRef(function FormGroup(inProps, ref)
|
|
|
57
60
|
} = props,
|
|
58
61
|
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
59
62
|
|
|
63
|
+
const muiFormControl = useFormControl();
|
|
64
|
+
const fcs = formControlState({
|
|
65
|
+
props,
|
|
66
|
+
muiFormControl,
|
|
67
|
+
states: ['error']
|
|
68
|
+
});
|
|
69
|
+
|
|
60
70
|
const ownerState = _extends({}, props, {
|
|
61
|
-
row
|
|
71
|
+
row,
|
|
72
|
+
error: fcs.error
|
|
62
73
|
});
|
|
63
74
|
|
|
64
75
|
const classes = useUtilityClasses(ownerState);
|
|
@@ -2,5 +2,5 @@ import { generateUtilityClass, generateUtilityClasses } from '@mui/base';
|
|
|
2
2
|
export function getFormGroupUtilityClass(slot) {
|
|
3
3
|
return generateUtilityClass('MuiFormGroup', slot);
|
|
4
4
|
}
|
|
5
|
-
const formGroupClasses = generateUtilityClasses('MuiFormGroup', ['root', 'row']);
|
|
5
|
+
const formGroupClasses = generateUtilityClasses('MuiFormGroup', ['root', 'row', 'error']);
|
|
6
6
|
export default formGroupClasses;
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
2
2
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
3
|
+
|
|
4
|
+
var _span;
|
|
5
|
+
|
|
3
6
|
const _excluded = ["children", "className", "component", "disabled", "error", "filled", "focused", "margin", "required", "variant"];
|
|
4
7
|
import * as React from 'react';
|
|
5
8
|
import PropTypes from 'prop-types';
|
|
@@ -101,16 +104,11 @@ const FormHelperText = /*#__PURE__*/React.forwardRef(function FormHelperText(inP
|
|
|
101
104
|
className: clsx(classes.root, className),
|
|
102
105
|
ref: ref
|
|
103
106
|
}, other, {
|
|
104
|
-
children: children === ' ' ?
|
|
105
|
-
/*#__PURE__*/
|
|
106
|
-
// notranslate needed while Google Translate will not fix zero-width space issue
|
|
107
|
-
// eslint-disable-next-line react/no-danger
|
|
108
|
-
_jsx("span", {
|
|
107
|
+
children: children === ' ' ? // notranslate needed while Google Translate will not fix zero-width space issue
|
|
108
|
+
_span || (_span = /*#__PURE__*/_jsx("span", {
|
|
109
109
|
className: "notranslate",
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
}
|
|
113
|
-
}) : children
|
|
110
|
+
children: "\u200B"
|
|
111
|
+
})) : children
|
|
114
112
|
}));
|
|
115
113
|
});
|
|
116
114
|
process.env.NODE_ENV !== "production" ? FormHelperText.propTypes
|
package/modern/Grid/Grid.js
CHANGED
|
@@ -260,10 +260,8 @@ const GridRoot = styled('div', {
|
|
|
260
260
|
|
|
261
261
|
}, ownerState.zeroMinWidth && {
|
|
262
262
|
minWidth: 0
|
|
263
|
-
}, ownerState.wrap
|
|
264
|
-
flexWrap:
|
|
265
|
-
}, ownerState.wrap === 'reverse' && {
|
|
266
|
-
flexWrap: 'wrap-reverse'
|
|
263
|
+
}, ownerState.wrap !== 'wrap' && {
|
|
264
|
+
flexWrap: ownerState.wrap
|
|
267
265
|
}), generateDirection, generateRowGap, generateColumnGap, generateGrid);
|
|
268
266
|
|
|
269
267
|
const useUtilityClasses = ownerState => {
|
|
@@ -169,6 +169,8 @@ process.env.NODE_ENV !== "production" ? ImageList.propTypes
|
|
|
169
169
|
* The variant to use.
|
|
170
170
|
* @default 'standard'
|
|
171
171
|
*/
|
|
172
|
-
variant: PropTypes
|
|
172
|
+
variant: PropTypes
|
|
173
|
+
/* @typescript-to-proptypes-ignore */
|
|
174
|
+
.oneOfType([PropTypes.oneOf(['masonry', 'quilted', 'standard', 'woven']), PropTypes.string])
|
|
173
175
|
} : void 0;
|
|
174
176
|
export default ImageList;
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
2
2
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
3
|
+
|
|
4
|
+
var _span;
|
|
5
|
+
|
|
3
6
|
const _excluded = ["children", "className", "component", "disablePointerEvents", "disableTypography", "position", "variant"];
|
|
4
7
|
import * as React from 'react';
|
|
5
8
|
import PropTypes from 'prop-types';
|
|
@@ -121,17 +124,11 @@ const InputAdornment = /*#__PURE__*/React.forwardRef(function InputAdornment(inP
|
|
|
121
124
|
children: children
|
|
122
125
|
}) : /*#__PURE__*/_jsxs(React.Fragment, {
|
|
123
126
|
children: [position === 'start' ?
|
|
124
|
-
/*#__PURE__*/
|
|
125
|
-
|
|
126
127
|
/* notranslate needed while Google Translate will not fix zero-width space issue */
|
|
127
|
-
|
|
128
|
-
/* eslint-disable-next-line react/no-danger */
|
|
129
|
-
_jsx("span", {
|
|
128
|
+
_span || (_span = /*#__PURE__*/_jsx("span", {
|
|
130
129
|
className: "notranslate",
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
}
|
|
134
|
-
}) : null, children]
|
|
130
|
+
children: "\u200B"
|
|
131
|
+
})) : null, children]
|
|
135
132
|
})
|
|
136
133
|
}))
|
|
137
134
|
});
|
package/modern/Modal/Modal.js
CHANGED
|
@@ -226,7 +226,7 @@ process.env.NODE_ENV !== "production" ? Modal.propTypes
|
|
|
226
226
|
|
|
227
227
|
/**
|
|
228
228
|
* If `true`, the modal will not restore focus to previously focused element once
|
|
229
|
-
* modal is hidden.
|
|
229
|
+
* modal is hidden or unmounted.
|
|
230
230
|
* @default false
|
|
231
231
|
*/
|
|
232
232
|
disableRestoreFocus: PropTypes.bool,
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
2
2
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
3
|
+
|
|
4
|
+
var _span;
|
|
5
|
+
|
|
3
6
|
const _excluded = ["children", "classes", "className", "label", "notched"];
|
|
4
7
|
import * as React from 'react';
|
|
5
8
|
import PropTypes from 'prop-types';
|
|
@@ -21,14 +24,12 @@ const NotchedOutlineRoot = styled('fieldset')({
|
|
|
21
24
|
overflow: 'hidden',
|
|
22
25
|
minWidth: '0%'
|
|
23
26
|
});
|
|
24
|
-
const NotchedOutlineLegend = styled('legend'
|
|
25
|
-
skipSx: true
|
|
26
|
-
})(({
|
|
27
|
+
const NotchedOutlineLegend = styled('legend')(({
|
|
27
28
|
ownerState,
|
|
28
29
|
theme
|
|
29
30
|
}) => _extends({
|
|
30
31
|
float: 'unset'
|
|
31
|
-
}, ownerState.
|
|
32
|
+
}, !ownerState.withLabel && {
|
|
32
33
|
padding: 0,
|
|
33
34
|
lineHeight: '11px',
|
|
34
35
|
// sync with `height` in `legend` styles
|
|
@@ -36,7 +37,7 @@ const NotchedOutlineLegend = styled('legend', {
|
|
|
36
37
|
duration: 150,
|
|
37
38
|
easing: theme.transitions.easing.easeOut
|
|
38
39
|
})
|
|
39
|
-
}, ownerState.
|
|
40
|
+
}, ownerState.withLabel && _extends({
|
|
40
41
|
display: 'block',
|
|
41
42
|
// Fix conflict with normalize.css and sanitize.css
|
|
42
43
|
width: 'auto',
|
|
@@ -77,9 +78,11 @@ export default function NotchedOutline(props) {
|
|
|
77
78
|
} = props,
|
|
78
79
|
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
79
80
|
|
|
81
|
+
const withLabel = label != null && label !== '';
|
|
82
|
+
|
|
80
83
|
const ownerState = _extends({}, props, {
|
|
81
84
|
notched,
|
|
82
|
-
|
|
85
|
+
withLabel
|
|
83
86
|
});
|
|
84
87
|
|
|
85
88
|
return /*#__PURE__*/_jsx(NotchedOutlineRoot, _extends({
|
|
@@ -89,18 +92,13 @@ export default function NotchedOutline(props) {
|
|
|
89
92
|
}, other, {
|
|
90
93
|
children: /*#__PURE__*/_jsx(NotchedOutlineLegend, {
|
|
91
94
|
ownerState: ownerState,
|
|
92
|
-
children:
|
|
95
|
+
children: withLabel ? /*#__PURE__*/_jsx("span", {
|
|
93
96
|
children: label
|
|
94
|
-
}) :
|
|
95
|
-
/*#__PURE__*/
|
|
96
|
-
// notranslate needed while Google Translate will not fix zero-width space issue
|
|
97
|
-
// eslint-disable-next-line react/no-danger
|
|
98
|
-
_jsx("span", {
|
|
97
|
+
}) : // notranslate needed while Google Translate will not fix zero-width space issue
|
|
98
|
+
_span || (_span = /*#__PURE__*/_jsx("span", {
|
|
99
99
|
className: "notranslate",
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
}
|
|
103
|
-
})
|
|
100
|
+
children: "\u200B"
|
|
101
|
+
}))
|
|
104
102
|
})
|
|
105
103
|
}));
|
|
106
104
|
}
|
|
@@ -136,7 +136,7 @@ const OutlinedInput = /*#__PURE__*/React.forwardRef(function OutlinedInput(inPro
|
|
|
136
136
|
}, components),
|
|
137
137
|
renderSuffix: state => /*#__PURE__*/_jsx(NotchedOutlineRoot, {
|
|
138
138
|
className: classes.notchedOutline,
|
|
139
|
-
label: label && fcs.required ? _React$Fragment || (_React$Fragment = /*#__PURE__*/_jsxs(React.Fragment, {
|
|
139
|
+
label: label != null && label !== '' && fcs.required ? _React$Fragment || (_React$Fragment = /*#__PURE__*/_jsxs(React.Fragment, {
|
|
140
140
|
children: [label, "\xA0", '*']
|
|
141
141
|
})) : label,
|
|
142
142
|
notched: typeof notched !== 'undefined' ? notched : Boolean(state.startAdornment || state.filled || state.focused)
|
|
@@ -10,15 +10,11 @@ const RadioButtonIconRoot = styled('span')({
|
|
|
10
10
|
position: 'relative',
|
|
11
11
|
display: 'flex'
|
|
12
12
|
});
|
|
13
|
-
const RadioButtonIconBackground = styled(RadioButtonUncheckedIcon
|
|
14
|
-
skipSx: true
|
|
15
|
-
})({
|
|
13
|
+
const RadioButtonIconBackground = styled(RadioButtonUncheckedIcon)({
|
|
16
14
|
// Scale applied to prevent dot misalignment in Safari
|
|
17
15
|
transform: 'scale(1)'
|
|
18
16
|
});
|
|
19
|
-
const RadioButtonIconDot = styled(RadioButtonCheckedIcon
|
|
20
|
-
skipSx: true
|
|
21
|
-
})(({
|
|
17
|
+
const RadioButtonIconDot = styled(RadioButtonCheckedIcon)(({
|
|
22
18
|
theme,
|
|
23
19
|
ownerState
|
|
24
20
|
}) => _extends({
|
package/modern/Rating/Rating.js
CHANGED
|
@@ -405,7 +405,7 @@ const Rating = /*#__PURE__*/React.forwardRef(function Rating(inProps, ref) {
|
|
|
405
405
|
|
|
406
406
|
const handleChange = event => {
|
|
407
407
|
let newValue = event.target.value === '' ? null : parseFloat(event.target.value); // Give mouse priority over keyboard
|
|
408
|
-
// Fix https://github.com/mui
|
|
408
|
+
// Fix https://github.com/mui/material-ui/issues/22827
|
|
409
409
|
|
|
410
410
|
if (hover !== -1) {
|
|
411
411
|
newValue = hover;
|