@mui/material 6.3.1 → 6.4.1
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/Alert/Alert.d.ts +69 -0
- package/Alert/Alert.js +53 -21
- package/Autocomplete/Autocomplete.d.ts +1 -1
- package/Button/Button.d.ts +18 -0
- package/Button/Button.js +233 -15
- package/Button/buttonClasses.d.ts +14 -0
- package/Button/buttonClasses.js +1 -1
- package/ButtonBase/ButtonBase.d.ts +2 -0
- package/ButtonGroup/ButtonGroupButtonContext.js +2 -0
- package/ButtonGroup/ButtonGroupContext.js +2 -0
- package/CHANGELOG.md +91 -0
- package/CardHeader/CardHeader.d.ts +114 -1
- package/CardHeader/CardHeader.js +99 -32
- package/CircularProgress/CircularProgress.js +2 -2
- package/Dialog/Dialog.d.ts +85 -1
- package/Dialog/Dialog.js +91 -20
- package/Dialog/DialogContext.js +2 -0
- package/Drawer/Drawer.js +1 -1
- package/Drawer/drawerClasses.d.ts +32 -8
- package/Drawer/drawerClasses.js +1 -1
- package/FormControl/FormControl.js +9 -7
- package/FormControl/FormControlContext.js +2 -0
- package/Hidden/withWidth.js +2 -0
- package/IconButton/IconButton.d.ts +13 -0
- package/IconButton/IconButton.js +80 -7
- package/IconButton/iconButtonClasses.d.ts +6 -0
- package/IconButton/iconButtonClasses.js +1 -1
- package/LinearProgress/LinearProgress.js +4 -4
- package/LinearProgress/linearProgressClasses.d.ts +31 -9
- package/LinearProgress/linearProgressClasses.js +1 -1
- package/Link/getTextDecoration.js +3 -2
- package/RadioGroup/RadioGroupContext.js +2 -0
- package/Select/Select.js +10 -1
- package/Select/SelectInput.js +1 -1
- package/Slider/useSlider.js +5 -2
- package/Step/StepContext.js +2 -0
- package/StepLabel/StepLabel.d.ts +1 -1
- package/Stepper/StepperContext.js +2 -0
- package/Table/Tablelvl2Context.js +2 -0
- package/ToggleButtonGroup/ToggleButtonGroupButtonContext.js +2 -0
- package/ToggleButtonGroup/ToggleButtonGroupContext.js +2 -0
- package/Tooltip/Tooltip.d.ts +1 -1
- package/index.js +1 -1
- package/modern/Alert/Alert.js +53 -21
- package/modern/Button/Button.js +233 -15
- package/modern/Button/buttonClasses.js +1 -1
- package/modern/ButtonGroup/ButtonGroupButtonContext.js +2 -0
- package/modern/ButtonGroup/ButtonGroupContext.js +2 -0
- package/modern/CardHeader/CardHeader.js +99 -32
- package/modern/CircularProgress/CircularProgress.js +2 -2
- package/modern/Dialog/Dialog.js +91 -20
- package/modern/Dialog/DialogContext.js +2 -0
- package/modern/Drawer/Drawer.js +1 -1
- package/modern/Drawer/drawerClasses.js +1 -1
- package/modern/FormControl/FormControl.js +9 -7
- package/modern/FormControl/FormControlContext.js +2 -0
- package/modern/Hidden/withWidth.js +2 -0
- package/modern/IconButton/IconButton.js +80 -7
- package/modern/IconButton/iconButtonClasses.js +1 -1
- package/modern/LinearProgress/LinearProgress.js +4 -4
- package/modern/LinearProgress/linearProgressClasses.js +1 -1
- package/modern/Link/getTextDecoration.js +3 -2
- package/modern/RadioGroup/RadioGroupContext.js +2 -0
- package/modern/Select/Select.js +10 -1
- package/modern/Select/SelectInput.js +1 -1
- package/modern/Slider/useSlider.js +5 -2
- package/modern/Step/StepContext.js +2 -0
- package/modern/Stepper/StepperContext.js +2 -0
- package/modern/Table/Tablelvl2Context.js +2 -0
- package/modern/ToggleButtonGroup/ToggleButtonGroupButtonContext.js +2 -0
- package/modern/ToggleButtonGroup/ToggleButtonGroupContext.js +2 -0
- package/modern/index.js +1 -1
- package/modern/utils/index.js +1 -0
- package/modern/utils/mergeSlotProps.js +43 -0
- package/modern/utils/useSlot.js +5 -1
- package/modern/version/index.js +2 -2
- package/node/Alert/Alert.js +53 -21
- package/node/Button/Button.js +233 -15
- package/node/Button/buttonClasses.js +1 -1
- package/node/ButtonGroup/ButtonGroupButtonContext.js +1 -0
- package/node/ButtonGroup/ButtonGroupContext.js +1 -0
- package/node/CardHeader/CardHeader.js +99 -32
- package/node/CircularProgress/CircularProgress.js +2 -2
- package/node/Dialog/Dialog.js +91 -20
- package/node/Dialog/DialogContext.js +1 -0
- package/node/Drawer/Drawer.js +1 -1
- package/node/Drawer/drawerClasses.js +1 -1
- package/node/FormControl/FormControl.js +9 -7
- package/node/FormControl/FormControlContext.js +1 -0
- package/node/Hidden/withWidth.js +1 -0
- package/node/IconButton/IconButton.js +79 -6
- package/node/IconButton/iconButtonClasses.js +1 -1
- package/node/LinearProgress/LinearProgress.js +4 -4
- package/node/LinearProgress/linearProgressClasses.js +1 -1
- package/node/Link/getTextDecoration.js +3 -2
- package/node/RadioGroup/RadioGroupContext.js +1 -0
- package/node/Select/Select.js +10 -1
- package/node/Select/SelectInput.js +1 -1
- package/node/Slider/useSlider.js +5 -2
- package/node/Step/StepContext.js +1 -0
- package/node/Stepper/StepperContext.js +1 -0
- package/node/Table/Tablelvl2Context.js +1 -0
- package/node/ToggleButtonGroup/ToggleButtonGroupButtonContext.js +1 -0
- package/node/ToggleButtonGroup/ToggleButtonGroupContext.js +1 -0
- package/node/index.js +1 -1
- package/node/utils/index.js +7 -0
- package/node/utils/mergeSlotProps.js +50 -0
- package/node/utils/useSlot.js +5 -1
- package/node/version/index.js +2 -2
- package/package.json +5 -5
- package/utils/index.d.ts +1 -0
- package/utils/index.js +1 -0
- package/utils/mergeSlotProps.d.ts +2 -0
- package/utils/mergeSlotProps.js +43 -0
- package/utils/useSlot.d.ts +8 -0
- package/utils/useSlot.js +5 -1
- package/version/index.js +2 -2
package/node/Dialog/Dialog.js
CHANGED
|
@@ -22,6 +22,7 @@ var _Backdrop = _interopRequireDefault(require("../Backdrop"));
|
|
|
22
22
|
var _zeroStyled = require("../zero-styled");
|
|
23
23
|
var _memoTheme = _interopRequireDefault(require("../utils/memoTheme"));
|
|
24
24
|
var _DefaultPropsProvider = require("../DefaultPropsProvider");
|
|
25
|
+
var _useSlot = _interopRequireDefault(require("../utils/useSlot"));
|
|
25
26
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
26
27
|
const DialogBackdrop = (0, _zeroStyled.styled)(_Backdrop.default, {
|
|
27
28
|
name: 'MuiDialog',
|
|
@@ -225,6 +226,8 @@ const Dialog = /*#__PURE__*/React.forwardRef(function Dialog(inProps, ref) {
|
|
|
225
226
|
PaperComponent = _Paper.default,
|
|
226
227
|
PaperProps = {},
|
|
227
228
|
scroll = 'paper',
|
|
229
|
+
slots = {},
|
|
230
|
+
slotProps = {},
|
|
228
231
|
TransitionComponent = _Fade.default,
|
|
229
232
|
transitionDuration = defaultTransitionDuration,
|
|
230
233
|
TransitionProps,
|
|
@@ -268,46 +271,89 @@ const Dialog = /*#__PURE__*/React.forwardRef(function Dialog(inProps, ref) {
|
|
|
268
271
|
titleId: ariaLabelledby
|
|
269
272
|
};
|
|
270
273
|
}, [ariaLabelledby]);
|
|
271
|
-
|
|
274
|
+
const backwardCompatibleSlots = {
|
|
275
|
+
transition: TransitionComponent,
|
|
276
|
+
...slots
|
|
277
|
+
};
|
|
278
|
+
const backwardCompatibleSlotProps = {
|
|
279
|
+
transition: TransitionProps,
|
|
280
|
+
paper: PaperProps,
|
|
281
|
+
backdrop: BackdropProps,
|
|
282
|
+
...slotProps
|
|
283
|
+
};
|
|
284
|
+
const externalForwardedProps = {
|
|
285
|
+
slots: backwardCompatibleSlots,
|
|
286
|
+
slotProps: backwardCompatibleSlotProps
|
|
287
|
+
};
|
|
288
|
+
const [RootSlot, rootSlotProps] = (0, _useSlot.default)('root', {
|
|
289
|
+
elementType: DialogRoot,
|
|
290
|
+
shouldForwardComponentProp: true,
|
|
291
|
+
externalForwardedProps,
|
|
292
|
+
ownerState,
|
|
272
293
|
className: (0, _clsx.default)(classes.root, className),
|
|
294
|
+
ref
|
|
295
|
+
});
|
|
296
|
+
const [BackdropSlot, backdropSlotProps] = (0, _useSlot.default)('backdrop', {
|
|
297
|
+
elementType: DialogBackdrop,
|
|
298
|
+
shouldForwardComponentProp: true,
|
|
299
|
+
externalForwardedProps,
|
|
300
|
+
ownerState
|
|
301
|
+
});
|
|
302
|
+
const [PaperSlot, paperSlotProps] = (0, _useSlot.default)('paper', {
|
|
303
|
+
elementType: DialogPaper,
|
|
304
|
+
shouldForwardComponentProp: true,
|
|
305
|
+
externalForwardedProps,
|
|
306
|
+
ownerState,
|
|
307
|
+
className: (0, _clsx.default)(classes.paper, PaperProps.className)
|
|
308
|
+
});
|
|
309
|
+
const [ContainerSlot, containerSlotProps] = (0, _useSlot.default)('container', {
|
|
310
|
+
elementType: DialogContainer,
|
|
311
|
+
externalForwardedProps,
|
|
312
|
+
ownerState,
|
|
313
|
+
className: (0, _clsx.default)(classes.container)
|
|
314
|
+
});
|
|
315
|
+
const [TransitionSlot, transitionSlotProps] = (0, _useSlot.default)('transition', {
|
|
316
|
+
elementType: _Fade.default,
|
|
317
|
+
externalForwardedProps,
|
|
318
|
+
ownerState,
|
|
319
|
+
additionalProps: {
|
|
320
|
+
appear: true,
|
|
321
|
+
in: open,
|
|
322
|
+
timeout: transitionDuration,
|
|
323
|
+
role: 'presentation'
|
|
324
|
+
}
|
|
325
|
+
});
|
|
326
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(RootSlot, {
|
|
273
327
|
closeAfterTransition: true,
|
|
274
|
-
|
|
275
|
-
|
|
328
|
+
slots: {
|
|
329
|
+
backdrop: BackdropSlot
|
|
276
330
|
},
|
|
277
|
-
|
|
331
|
+
slotProps: {
|
|
278
332
|
backdrop: {
|
|
279
333
|
transitionDuration,
|
|
280
334
|
as: BackdropComponent,
|
|
281
|
-
...
|
|
335
|
+
...backdropSlotProps
|
|
282
336
|
}
|
|
283
337
|
},
|
|
284
338
|
disableEscapeKeyDown: disableEscapeKeyDown,
|
|
285
339
|
onClose: onClose,
|
|
286
340
|
open: open,
|
|
287
|
-
ref: ref,
|
|
288
341
|
onClick: handleBackdropClick,
|
|
289
|
-
|
|
342
|
+
...rootSlotProps,
|
|
290
343
|
...other,
|
|
291
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
timeout: transitionDuration,
|
|
295
|
-
role: "presentation",
|
|
296
|
-
...TransitionProps,
|
|
297
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(DialogContainer, {
|
|
298
|
-
className: (0, _clsx.default)(classes.container),
|
|
344
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(TransitionSlot, {
|
|
345
|
+
...transitionSlotProps,
|
|
346
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ContainerSlot, {
|
|
299
347
|
onMouseDown: handleMouseDown,
|
|
300
|
-
|
|
301
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
348
|
+
...containerSlotProps,
|
|
349
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(PaperSlot, {
|
|
302
350
|
as: PaperComponent,
|
|
303
351
|
elevation: 24,
|
|
304
352
|
role: "dialog",
|
|
305
353
|
"aria-describedby": ariaDescribedby,
|
|
306
354
|
"aria-labelledby": ariaLabelledby,
|
|
307
355
|
"aria-modal": ariaModal,
|
|
308
|
-
...
|
|
309
|
-
className: (0, _clsx.default)(classes.paper, PaperProps.className),
|
|
310
|
-
ownerState: ownerState,
|
|
356
|
+
...paperSlotProps,
|
|
311
357
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DialogContext.default.Provider, {
|
|
312
358
|
value: dialogContextValue,
|
|
313
359
|
children: children
|
|
@@ -419,6 +465,7 @@ process.env.NODE_ENV !== "production" ? Dialog.propTypes /* remove-proptypes */
|
|
|
419
465
|
/**
|
|
420
466
|
* Props applied to the [`Paper`](https://mui.com/material-ui/api/paper/) element.
|
|
421
467
|
* @default {}
|
|
468
|
+
* @deprecated Use `slotProps.paper` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
422
469
|
*/
|
|
423
470
|
PaperProps: _propTypes.default.object,
|
|
424
471
|
/**
|
|
@@ -426,6 +473,28 @@ process.env.NODE_ENV !== "production" ? Dialog.propTypes /* remove-proptypes */
|
|
|
426
473
|
* @default 'paper'
|
|
427
474
|
*/
|
|
428
475
|
scroll: _propTypes.default.oneOf(['body', 'paper']),
|
|
476
|
+
/**
|
|
477
|
+
* The props used for each slot inside.
|
|
478
|
+
* @default {}
|
|
479
|
+
*/
|
|
480
|
+
slotProps: _propTypes.default.shape({
|
|
481
|
+
backdrop: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
|
|
482
|
+
container: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
|
|
483
|
+
paper: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
|
|
484
|
+
root: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
|
|
485
|
+
transition: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object])
|
|
486
|
+
}),
|
|
487
|
+
/**
|
|
488
|
+
* The components used for each slot inside.
|
|
489
|
+
* @default {}
|
|
490
|
+
*/
|
|
491
|
+
slots: _propTypes.default.shape({
|
|
492
|
+
backdrop: _propTypes.default.elementType,
|
|
493
|
+
container: _propTypes.default.elementType,
|
|
494
|
+
paper: _propTypes.default.elementType,
|
|
495
|
+
root: _propTypes.default.elementType,
|
|
496
|
+
transition: _propTypes.default.elementType
|
|
497
|
+
}),
|
|
429
498
|
/**
|
|
430
499
|
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
431
500
|
*/
|
|
@@ -434,6 +503,7 @@ process.env.NODE_ENV !== "production" ? Dialog.propTypes /* remove-proptypes */
|
|
|
434
503
|
* The component used for the transition.
|
|
435
504
|
* [Follow this guide](https://mui.com/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.
|
|
436
505
|
* @default Fade
|
|
506
|
+
* @deprecated Use `slots.transition` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
437
507
|
*/
|
|
438
508
|
TransitionComponent: _propTypes.default.elementType,
|
|
439
509
|
/**
|
|
@@ -452,6 +522,7 @@ process.env.NODE_ENV !== "production" ? Dialog.propTypes /* remove-proptypes */
|
|
|
452
522
|
/**
|
|
453
523
|
* Props applied to the transition element.
|
|
454
524
|
* By default, the element is based on this [`Transition`](https://reactcommunity.org/react-transition-group/transition/) component.
|
|
525
|
+
* @deprecated Use `slotProps.transition` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
455
526
|
*/
|
|
456
527
|
TransitionProps: _propTypes.default.object
|
|
457
528
|
} : void 0;
|
package/node/Drawer/Drawer.js
CHANGED
|
@@ -38,7 +38,7 @@ const useUtilityClasses = ownerState => {
|
|
|
38
38
|
variant
|
|
39
39
|
} = ownerState;
|
|
40
40
|
const slots = {
|
|
41
|
-
root: ['root'],
|
|
41
|
+
root: ['root', `anchor${(0, _capitalize.default)(anchor)}`],
|
|
42
42
|
docked: [(variant === 'permanent' || variant === 'persistent') && 'docked'],
|
|
43
43
|
modal: ['modal'],
|
|
44
44
|
paper: ['paper', `paperAnchor${(0, _capitalize.default)(anchor)}`, variant !== 'temporary' && `paperAnchorDocked${(0, _capitalize.default)(anchor)}`]
|
|
@@ -11,5 +11,5 @@ var _generateUtilityClass = _interopRequireDefault(require("@mui/utils/generateU
|
|
|
11
11
|
function getDrawerUtilityClass(slot) {
|
|
12
12
|
return (0, _generateUtilityClass.default)('MuiDrawer', slot);
|
|
13
13
|
}
|
|
14
|
-
const drawerClasses = (0, _generateUtilityClasses.default)('MuiDrawer', ['root', 'docked', 'paper', 'paperAnchorLeft', 'paperAnchorRight', 'paperAnchorTop', 'paperAnchorBottom', 'paperAnchorDockedLeft', 'paperAnchorDockedRight', 'paperAnchorDockedTop', 'paperAnchorDockedBottom', 'modal']);
|
|
14
|
+
const drawerClasses = (0, _generateUtilityClasses.default)('MuiDrawer', ['root', 'docked', 'paper', 'anchorLeft', 'anchorRight', 'anchorTop', 'anchorBottom', 'paperAnchorLeft', 'paperAnchorRight', 'paperAnchorTop', 'paperAnchorBottom', 'paperAnchorDockedLeft', 'paperAnchorDockedRight', 'paperAnchorDockedTop', 'paperAnchorDockedBottom', 'modal']);
|
|
15
15
|
var _default = exports.default = drawerClasses;
|
|
@@ -186,6 +186,12 @@ const FormControl = /*#__PURE__*/React.forwardRef(function FormControl(inProps,
|
|
|
186
186
|
};
|
|
187
187
|
};
|
|
188
188
|
}
|
|
189
|
+
const onFilled = React.useCallback(() => {
|
|
190
|
+
setFilled(true);
|
|
191
|
+
}, []);
|
|
192
|
+
const onEmpty = React.useCallback(() => {
|
|
193
|
+
setFilled(false);
|
|
194
|
+
}, []);
|
|
189
195
|
const childContext = React.useMemo(() => {
|
|
190
196
|
return {
|
|
191
197
|
adornedStart,
|
|
@@ -201,20 +207,16 @@ const FormControl = /*#__PURE__*/React.forwardRef(function FormControl(inProps,
|
|
|
201
207
|
onBlur: () => {
|
|
202
208
|
setFocused(false);
|
|
203
209
|
},
|
|
204
|
-
onEmpty: () => {
|
|
205
|
-
setFilled(false);
|
|
206
|
-
},
|
|
207
|
-
onFilled: () => {
|
|
208
|
-
setFilled(true);
|
|
209
|
-
},
|
|
210
210
|
onFocus: () => {
|
|
211
211
|
setFocused(true);
|
|
212
212
|
},
|
|
213
|
+
onEmpty,
|
|
214
|
+
onFilled,
|
|
213
215
|
registerEffect,
|
|
214
216
|
required,
|
|
215
217
|
variant
|
|
216
218
|
};
|
|
217
|
-
}, [adornedStart, color, disabled, error, filled, focused, fullWidth, hiddenLabel, registerEffect, required, size, variant]);
|
|
219
|
+
}, [adornedStart, color, disabled, error, filled, focused, fullWidth, hiddenLabel, registerEffect, onEmpty, onFilled, required, size, variant]);
|
|
218
220
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlContext.default.Provider, {
|
|
219
221
|
value: childContext,
|
|
220
222
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(FormControlRoot, {
|
package/node/Hidden/withWidth.js
CHANGED
|
@@ -12,12 +12,14 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
12
12
|
var _clsx = _interopRequireDefault(require("clsx"));
|
|
13
13
|
var _chainPropTypes = _interopRequireDefault(require("@mui/utils/chainPropTypes"));
|
|
14
14
|
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
15
|
+
var _utils = require("@mui/material/utils");
|
|
15
16
|
var _colorManipulator = require("@mui/system/colorManipulator");
|
|
16
17
|
var _zeroStyled = require("../zero-styled");
|
|
17
18
|
var _memoTheme = _interopRequireDefault(require("../utils/memoTheme"));
|
|
18
19
|
var _createSimplePaletteValueFilter = _interopRequireDefault(require("../utils/createSimplePaletteValueFilter"));
|
|
19
20
|
var _DefaultPropsProvider = require("../DefaultPropsProvider");
|
|
20
21
|
var _ButtonBase = _interopRequireDefault(require("../ButtonBase"));
|
|
22
|
+
var _CircularProgress = _interopRequireDefault(require("../CircularProgress"));
|
|
21
23
|
var _capitalize = _interopRequireDefault(require("../utils/capitalize"));
|
|
22
24
|
var _iconButtonClasses = _interopRequireWildcard(require("./iconButtonClasses"));
|
|
23
25
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -27,10 +29,13 @@ const useUtilityClasses = ownerState => {
|
|
|
27
29
|
disabled,
|
|
28
30
|
color,
|
|
29
31
|
edge,
|
|
30
|
-
size
|
|
32
|
+
size,
|
|
33
|
+
loading
|
|
31
34
|
} = ownerState;
|
|
32
35
|
const slots = {
|
|
33
|
-
root: ['root', disabled && 'disabled', color !== 'default' && `color${(0, _capitalize.default)(color)}`, edge && `edge${(0, _capitalize.default)(edge)}`, `size${(0, _capitalize.default)(size)}`]
|
|
36
|
+
root: ['root', loading && 'loading', disabled && 'disabled', color !== 'default' && `color${(0, _capitalize.default)(color)}`, edge && `edge${(0, _capitalize.default)(edge)}`, `size${(0, _capitalize.default)(size)}`],
|
|
37
|
+
loadingIndicator: ['loadingIndicator'],
|
|
38
|
+
loadingWrapper: ['loadingWrapper']
|
|
34
39
|
};
|
|
35
40
|
return (0, _composeClasses.default)(slots, _iconButtonClasses.getIconButtonUtilityClass, classes);
|
|
36
41
|
};
|
|
@@ -41,7 +46,7 @@ const IconButtonRoot = (0, _zeroStyled.styled)(_ButtonBase.default, {
|
|
|
41
46
|
const {
|
|
42
47
|
ownerState
|
|
43
48
|
} = props;
|
|
44
|
-
return [styles.root, ownerState.color !== 'default' && styles[`color${(0, _capitalize.default)(ownerState.color)}`], ownerState.edge && styles[`edge${(0, _capitalize.default)(ownerState.edge)}`], styles[`size${(0, _capitalize.default)(ownerState.size)}`]];
|
|
49
|
+
return [styles.root, ownerState.loading && styles.loading, ownerState.color !== 'default' && styles[`color${(0, _capitalize.default)(ownerState.color)}`], ownerState.edge && styles[`edge${(0, _capitalize.default)(ownerState.edge)}`], styles[`size${(0, _capitalize.default)(ownerState.size)}`]];
|
|
45
50
|
}
|
|
46
51
|
})((0, _memoTheme.default)(({
|
|
47
52
|
theme
|
|
@@ -144,8 +149,34 @@ const IconButtonRoot = (0, _zeroStyled.styled)(_ButtonBase.default, {
|
|
|
144
149
|
[`&.${_iconButtonClasses.default.disabled}`]: {
|
|
145
150
|
backgroundColor: 'transparent',
|
|
146
151
|
color: (theme.vars || theme).palette.action.disabled
|
|
152
|
+
},
|
|
153
|
+
[`&.${_iconButtonClasses.default.loading}`]: {
|
|
154
|
+
color: 'transparent'
|
|
147
155
|
}
|
|
148
156
|
})));
|
|
157
|
+
const IconButtonLoadingIndicator = (0, _zeroStyled.styled)('span', {
|
|
158
|
+
name: 'MuiIconButton',
|
|
159
|
+
slot: 'LoadingIndicator',
|
|
160
|
+
overridesResolver: (props, styles) => styles.loadingIndicator
|
|
161
|
+
})(({
|
|
162
|
+
theme
|
|
163
|
+
}) => ({
|
|
164
|
+
display: 'none',
|
|
165
|
+
position: 'absolute',
|
|
166
|
+
visibility: 'visible',
|
|
167
|
+
top: '50%',
|
|
168
|
+
left: '50%',
|
|
169
|
+
transform: 'translate(-50%, -50%)',
|
|
170
|
+
color: (theme.vars || theme).palette.action.disabled,
|
|
171
|
+
variants: [{
|
|
172
|
+
props: {
|
|
173
|
+
loading: true
|
|
174
|
+
},
|
|
175
|
+
style: {
|
|
176
|
+
display: 'flex'
|
|
177
|
+
}
|
|
178
|
+
}]
|
|
179
|
+
}));
|
|
149
180
|
|
|
150
181
|
/**
|
|
151
182
|
* Refer to the [Icons](/material-ui/icons/) section of the documentation
|
|
@@ -164,26 +195,51 @@ const IconButton = /*#__PURE__*/React.forwardRef(function IconButton(inProps, re
|
|
|
164
195
|
disabled = false,
|
|
165
196
|
disableFocusRipple = false,
|
|
166
197
|
size = 'medium',
|
|
198
|
+
id: idProp,
|
|
199
|
+
loading = null,
|
|
200
|
+
loadingIndicator: loadingIndicatorProp,
|
|
167
201
|
...other
|
|
168
202
|
} = props;
|
|
203
|
+
const id = (0, _utils.unstable_useId)(idProp);
|
|
204
|
+
const loadingIndicator = loadingIndicatorProp ?? /*#__PURE__*/(0, _jsxRuntime.jsx)(_CircularProgress.default, {
|
|
205
|
+
"aria-labelledby": id,
|
|
206
|
+
color: "inherit",
|
|
207
|
+
size: 16
|
|
208
|
+
});
|
|
169
209
|
const ownerState = {
|
|
170
210
|
...props,
|
|
171
211
|
edge,
|
|
172
212
|
color,
|
|
173
213
|
disabled,
|
|
174
214
|
disableFocusRipple,
|
|
215
|
+
loading,
|
|
216
|
+
loadingIndicator,
|
|
175
217
|
size
|
|
176
218
|
};
|
|
177
219
|
const classes = useUtilityClasses(ownerState);
|
|
178
|
-
return /*#__PURE__*/(0, _jsxRuntime.
|
|
220
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(IconButtonRoot, {
|
|
221
|
+
id: id,
|
|
179
222
|
className: (0, _clsx.default)(classes.root, className),
|
|
180
223
|
centerRipple: true,
|
|
181
224
|
focusRipple: !disableFocusRipple,
|
|
182
|
-
disabled: disabled,
|
|
225
|
+
disabled: disabled || loading,
|
|
183
226
|
ref: ref,
|
|
184
227
|
...other,
|
|
185
228
|
ownerState: ownerState,
|
|
186
|
-
children:
|
|
229
|
+
children: [typeof loading === 'boolean' &&
|
|
230
|
+
/*#__PURE__*/
|
|
231
|
+
// use plain HTML span to minimize the runtime overhead
|
|
232
|
+
(0, _jsxRuntime.jsx)("span", {
|
|
233
|
+
className: classes.loadingWrapper,
|
|
234
|
+
style: {
|
|
235
|
+
display: 'contents'
|
|
236
|
+
},
|
|
237
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(IconButtonLoadingIndicator, {
|
|
238
|
+
className: classes.loadingIndicator,
|
|
239
|
+
ownerState: ownerState,
|
|
240
|
+
children: loading && loadingIndicator
|
|
241
|
+
})
|
|
242
|
+
}), children]
|
|
187
243
|
});
|
|
188
244
|
});
|
|
189
245
|
process.env.NODE_ENV !== "production" ? IconButton.propTypes /* remove-proptypes */ = {
|
|
@@ -242,6 +298,23 @@ process.env.NODE_ENV !== "production" ? IconButton.propTypes /* remove-proptypes
|
|
|
242
298
|
* @default false
|
|
243
299
|
*/
|
|
244
300
|
edge: _propTypes.default.oneOf(['end', 'start', false]),
|
|
301
|
+
/**
|
|
302
|
+
* @ignore
|
|
303
|
+
*/
|
|
304
|
+
id: _propTypes.default.string,
|
|
305
|
+
/**
|
|
306
|
+
* If `true`, the loading indicator is visible and the button is disabled.
|
|
307
|
+
* If `true | false`, the loading wrapper is always rendered before the children to prevent [Google Translation Crash](https://github.com/mui/material-ui/issues/27853).
|
|
308
|
+
* @default null
|
|
309
|
+
*/
|
|
310
|
+
loading: _propTypes.default.bool,
|
|
311
|
+
/**
|
|
312
|
+
* Element placed before the children if the button is in loading state.
|
|
313
|
+
* The node should contain an element with `role="progressbar"` with an accessible name.
|
|
314
|
+
* By default, it renders a `CircularProgress` that is labeled by the button itself.
|
|
315
|
+
* @default <CircularProgress color="inherit" size={16} />
|
|
316
|
+
*/
|
|
317
|
+
loadingIndicator: _propTypes.default.node,
|
|
245
318
|
/**
|
|
246
319
|
* The size of the component.
|
|
247
320
|
* `small` is equivalent to the dense button styling.
|
|
@@ -11,5 +11,5 @@ var _generateUtilityClass = _interopRequireDefault(require("@mui/utils/generateU
|
|
|
11
11
|
function getIconButtonUtilityClass(slot) {
|
|
12
12
|
return (0, _generateUtilityClass.default)('MuiIconButton', slot);
|
|
13
13
|
}
|
|
14
|
-
const iconButtonClasses = (0, _generateUtilityClasses.default)('MuiIconButton', ['root', 'disabled', 'colorInherit', 'colorPrimary', 'colorSecondary', 'colorError', 'colorInfo', 'colorSuccess', 'colorWarning', 'edgeStart', 'edgeEnd', 'sizeSmall', 'sizeMedium', 'sizeLarge']);
|
|
14
|
+
const iconButtonClasses = (0, _generateUtilityClasses.default)('MuiIconButton', ['root', 'disabled', 'colorInherit', 'colorPrimary', 'colorSecondary', 'colorError', 'colorInfo', 'colorSuccess', 'colorWarning', 'edgeStart', 'edgeEnd', 'sizeSmall', 'sizeMedium', 'sizeLarge', 'loading', 'loadingIndicator', 'loadingWrapper']);
|
|
15
15
|
var _default = exports.default = iconButtonClasses;
|
|
@@ -91,8 +91,8 @@ const useUtilityClasses = ownerState => {
|
|
|
91
91
|
const slots = {
|
|
92
92
|
root: ['root', `color${(0, _capitalize.default)(color)}`, variant],
|
|
93
93
|
dashed: ['dashed', `dashedColor${(0, _capitalize.default)(color)}`],
|
|
94
|
-
bar1: ['bar', `barColor${(0, _capitalize.default)(color)}`, (variant === 'indeterminate' || variant === 'query') && 'bar1Indeterminate', variant === 'determinate' && 'bar1Determinate', variant === 'buffer' && 'bar1Buffer'],
|
|
95
|
-
bar2: ['bar', variant !== 'buffer' && `barColor${(0, _capitalize.default)(color)}`, variant === 'buffer' && `color${(0, _capitalize.default)(color)}`, (variant === 'indeterminate' || variant === 'query') && 'bar2Indeterminate', variant === 'buffer' && 'bar2Buffer']
|
|
94
|
+
bar1: ['bar', 'bar1', `barColor${(0, _capitalize.default)(color)}`, (variant === 'indeterminate' || variant === 'query') && 'bar1Indeterminate', variant === 'determinate' && 'bar1Determinate', variant === 'buffer' && 'bar1Buffer'],
|
|
95
|
+
bar2: ['bar', 'bar2', variant !== 'buffer' && `barColor${(0, _capitalize.default)(color)}`, variant === 'buffer' && `color${(0, _capitalize.default)(color)}`, (variant === 'indeterminate' || variant === 'query') && 'bar2Indeterminate', variant === 'buffer' && 'bar2Buffer']
|
|
96
96
|
};
|
|
97
97
|
return (0, _composeClasses.default)(slots, _linearProgressClasses.getLinearProgressUtilityClass, classes);
|
|
98
98
|
};
|
|
@@ -210,7 +210,7 @@ const LinearProgressBar1 = (0, _zeroStyled.styled)('span', {
|
|
|
210
210
|
const {
|
|
211
211
|
ownerState
|
|
212
212
|
} = props;
|
|
213
|
-
return [styles.bar, styles[`barColor${(0, _capitalize.default)(ownerState.color)}`], (ownerState.variant === 'indeterminate' || ownerState.variant === 'query') && styles.bar1Indeterminate, ownerState.variant === 'determinate' && styles.bar1Determinate, ownerState.variant === 'buffer' && styles.bar1Buffer];
|
|
213
|
+
return [styles.bar, styles.bar1, styles[`barColor${(0, _capitalize.default)(ownerState.color)}`], (ownerState.variant === 'indeterminate' || ownerState.variant === 'query') && styles.bar1Indeterminate, ownerState.variant === 'determinate' && styles.bar1Determinate, ownerState.variant === 'buffer' && styles.bar1Buffer];
|
|
214
214
|
}
|
|
215
215
|
})((0, _memoTheme.default)(({
|
|
216
216
|
theme
|
|
@@ -274,7 +274,7 @@ const LinearProgressBar2 = (0, _zeroStyled.styled)('span', {
|
|
|
274
274
|
const {
|
|
275
275
|
ownerState
|
|
276
276
|
} = props;
|
|
277
|
-
return [styles.bar, styles[`barColor${(0, _capitalize.default)(ownerState.color)}`], (ownerState.variant === 'indeterminate' || ownerState.variant === 'query') && styles.bar2Indeterminate, ownerState.variant === 'buffer' && styles.bar2Buffer];
|
|
277
|
+
return [styles.bar, styles.bar2, styles[`barColor${(0, _capitalize.default)(ownerState.color)}`], (ownerState.variant === 'indeterminate' || ownerState.variant === 'query') && styles.bar2Indeterminate, ownerState.variant === 'buffer' && styles.bar2Buffer];
|
|
278
278
|
}
|
|
279
279
|
})((0, _memoTheme.default)(({
|
|
280
280
|
theme
|
|
@@ -11,5 +11,5 @@ var _generateUtilityClass = _interopRequireDefault(require("@mui/utils/generateU
|
|
|
11
11
|
function getLinearProgressUtilityClass(slot) {
|
|
12
12
|
return (0, _generateUtilityClass.default)('MuiLinearProgress', slot);
|
|
13
13
|
}
|
|
14
|
-
const linearProgressClasses = (0, _generateUtilityClasses.default)('MuiLinearProgress', ['root', 'colorPrimary', 'colorSecondary', 'determinate', 'indeterminate', 'buffer', 'query', 'dashed', 'dashedColorPrimary', 'dashedColorSecondary', 'bar', 'barColorPrimary', 'barColorSecondary', 'bar1Indeterminate', 'bar1Determinate', 'bar1Buffer', 'bar2Indeterminate', 'bar2Buffer']);
|
|
14
|
+
const linearProgressClasses = (0, _generateUtilityClasses.default)('MuiLinearProgress', ['root', 'colorPrimary', 'colorSecondary', 'determinate', 'indeterminate', 'buffer', 'query', 'dashed', 'dashedColorPrimary', 'dashedColorSecondary', 'bar', 'bar1', 'bar2', 'barColorPrimary', 'barColorSecondary', 'bar1Indeterminate', 'bar1Determinate', 'bar1Buffer', 'bar2Indeterminate', 'bar2Buffer']);
|
|
15
15
|
var _default = exports.default = linearProgressClasses;
|
|
@@ -11,8 +11,9 @@ const getTextDecoration = ({
|
|
|
11
11
|
ownerState
|
|
12
12
|
}) => {
|
|
13
13
|
const transformedColor = ownerState.color;
|
|
14
|
-
|
|
15
|
-
const
|
|
14
|
+
// check the `main` color first for a custom palette, then fallback to the color itself
|
|
15
|
+
const color = (0, _style.getPath)(theme, `palette.${transformedColor}.main`, false) || (0, _style.getPath)(theme, `palette.${transformedColor}`, false) || ownerState.color;
|
|
16
|
+
const channelColor = (0, _style.getPath)(theme, `palette.${transformedColor}.mainChannel`) || (0, _style.getPath)(theme, `palette.${transformedColor}Channel`);
|
|
16
17
|
if ('vars' in theme && channelColor) {
|
|
17
18
|
return `rgba(${channelColor} / 0.4)`;
|
|
18
19
|
}
|
package/node/Select/Select.js
CHANGED
|
@@ -11,6 +11,7 @@ var React = _interopRequireWildcard(require("react"));
|
|
|
11
11
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
12
12
|
var _clsx = _interopRequireDefault(require("clsx"));
|
|
13
13
|
var _deepmerge = _interopRequireDefault(require("@mui/utils/deepmerge"));
|
|
14
|
+
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
14
15
|
var _getReactElementRef = _interopRequireDefault(require("@mui/utils/getReactElementRef"));
|
|
15
16
|
var _SelectInput = _interopRequireDefault(require("./SelectInput"));
|
|
16
17
|
var _formControlState = _interopRequireDefault(require("../FormControl/formControlState"));
|
|
@@ -24,12 +25,20 @@ var _DefaultPropsProvider = require("../DefaultPropsProvider");
|
|
|
24
25
|
var _useForkRef = _interopRequireDefault(require("../utils/useForkRef"));
|
|
25
26
|
var _zeroStyled = require("../zero-styled");
|
|
26
27
|
var _rootShouldForwardProp = _interopRequireDefault(require("../styles/rootShouldForwardProp"));
|
|
28
|
+
var _selectClasses = require("./selectClasses");
|
|
27
29
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
28
30
|
const useUtilityClasses = ownerState => {
|
|
29
31
|
const {
|
|
30
32
|
classes
|
|
31
33
|
} = ownerState;
|
|
32
|
-
|
|
34
|
+
const slots = {
|
|
35
|
+
root: ['root']
|
|
36
|
+
};
|
|
37
|
+
const composedClasses = (0, _composeClasses.default)(slots, _selectClasses.getSelectUtilityClasses, classes);
|
|
38
|
+
return {
|
|
39
|
+
...classes,
|
|
40
|
+
...composedClasses
|
|
41
|
+
};
|
|
33
42
|
};
|
|
34
43
|
const styledRootConfig = {
|
|
35
44
|
name: 'MuiSelect',
|
|
@@ -450,7 +450,7 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
|
|
|
450
450
|
ref: handleDisplayRef,
|
|
451
451
|
tabIndex: tabIndex,
|
|
452
452
|
role: "combobox",
|
|
453
|
-
"aria-controls": listboxId,
|
|
453
|
+
"aria-controls": open ? listboxId : undefined,
|
|
454
454
|
"aria-disabled": disabled ? 'true' : undefined,
|
|
455
455
|
"aria-expanded": open ? 'true' : 'false',
|
|
456
456
|
"aria-haspopup": "listbox",
|
package/node/Slider/useSlider.js
CHANGED
|
@@ -198,6 +198,8 @@ function useSlider(parameters) {
|
|
|
198
198
|
const [open, setOpen] = React.useState(-1);
|
|
199
199
|
const [dragging, setDragging] = React.useState(false);
|
|
200
200
|
const moveCount = React.useRef(0);
|
|
201
|
+
// lastChangedValue is updated whenever onChange is triggered.
|
|
202
|
+
const lastChangedValue = React.useRef(null);
|
|
201
203
|
const [valueDerived, setValueState] = (0, _utils.unstable_useControlled)({
|
|
202
204
|
controlled: valueProp,
|
|
203
205
|
default: defaultValue ?? min,
|
|
@@ -218,6 +220,7 @@ function useSlider(parameters) {
|
|
|
218
220
|
name
|
|
219
221
|
}
|
|
220
222
|
});
|
|
223
|
+
lastChangedValue.current = value;
|
|
221
224
|
onChange(clonedEvent, value, thumbIndex);
|
|
222
225
|
});
|
|
223
226
|
const range = Array.isArray(valueDerived);
|
|
@@ -289,7 +292,7 @@ function useSlider(parameters) {
|
|
|
289
292
|
handleChange(event, newValue, index);
|
|
290
293
|
}
|
|
291
294
|
if (onChangeCommitted) {
|
|
292
|
-
onChangeCommitted(event, newValue);
|
|
295
|
+
onChangeCommitted(event, lastChangedValue.current ?? newValue);
|
|
293
296
|
}
|
|
294
297
|
};
|
|
295
298
|
const createHandleHiddenInputKeyDown = otherHandlers => event => {
|
|
@@ -494,7 +497,7 @@ function useSlider(parameters) {
|
|
|
494
497
|
setOpen(-1);
|
|
495
498
|
}
|
|
496
499
|
if (onChangeCommitted) {
|
|
497
|
-
onChangeCommitted(nativeEvent, newValue);
|
|
500
|
+
onChangeCommitted(nativeEvent, lastChangedValue.current ?? newValue);
|
|
498
501
|
}
|
|
499
502
|
touchId.current = undefined;
|
|
500
503
|
|
package/node/Step/StepContext.js
CHANGED
package/node/index.js
CHANGED
package/node/utils/index.js
CHANGED
|
@@ -41,6 +41,12 @@ Object.defineProperty(exports, "isMuiElement", {
|
|
|
41
41
|
return _isMuiElement.default;
|
|
42
42
|
}
|
|
43
43
|
});
|
|
44
|
+
Object.defineProperty(exports, "mergeSlotProps", {
|
|
45
|
+
enumerable: true,
|
|
46
|
+
get: function () {
|
|
47
|
+
return _mergeSlotProps.default;
|
|
48
|
+
}
|
|
49
|
+
});
|
|
44
50
|
Object.defineProperty(exports, "ownerDocument", {
|
|
45
51
|
enumerable: true,
|
|
46
52
|
get: function () {
|
|
@@ -126,6 +132,7 @@ var _unsupportedProp = _interopRequireDefault(require("./unsupportedProp"));
|
|
|
126
132
|
var _useControlled = _interopRequireDefault(require("./useControlled"));
|
|
127
133
|
var _useEventCallback = _interopRequireDefault(require("./useEventCallback"));
|
|
128
134
|
var _useForkRef = _interopRequireDefault(require("./useForkRef"));
|
|
135
|
+
var _mergeSlotProps = _interopRequireDefault(require("./mergeSlotProps"));
|
|
129
136
|
// TODO: remove this export once ClassNameGenerator is stable
|
|
130
137
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
131
138
|
const unstable_ClassNameGenerator = exports.unstable_ClassNameGenerator = {
|