@mui/material 5.10.6 → 5.10.8
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/Button/Button.js +3 -10
- package/CHANGELOG.md +78 -0
- package/Checkbox/Checkbox.js +12 -3
- package/Chip/chipClasses.d.ts +8 -0
- package/Chip/chipClasses.js +1 -1
- package/DialogContentText/DialogContentText.js +14 -3
- package/Fab/Fab.js +5 -2
- package/FormControlLabel/FormControlLabel.d.ts +1 -1
- package/InputLabel/InputLabel.js +12 -3
- package/ListItemButton/ListItemButton.js +10 -3
- package/MenuItem/MenuItem.js +10 -3
- package/Popover/Popover.js +1 -0
- package/Radio/Radio.js +12 -3
- package/StepLabel/StepLabel.js +5 -3
- package/SvgIcon/SvgIcon.js +2 -2
- package/SvgIcon/svgIconClasses.d.ts +2 -0
- package/Tooltip/Tooltip.d.ts +2 -2
- package/Tooltip/Tooltip.js +3 -5
- package/Unstable_TrapFocus/index.d.ts +2 -2
- package/Unstable_TrapFocus/index.js +2 -2
- package/esm/Button/Button.js +3 -8
- package/esm/Checkbox/Checkbox.js +11 -3
- package/esm/Chip/chipClasses.js +1 -1
- package/esm/DialogContentText/DialogContentText.js +13 -3
- package/esm/Fab/Fab.js +5 -2
- package/esm/InputLabel/InputLabel.js +11 -3
- package/esm/ListItemButton/ListItemButton.js +10 -3
- package/esm/MenuItem/MenuItem.js +10 -3
- package/esm/Popover/Popover.js +1 -0
- package/esm/Radio/Radio.js +11 -3
- package/esm/StepLabel/StepLabel.js +5 -3
- package/esm/SvgIcon/SvgIcon.js +2 -2
- package/esm/Tooltip/Tooltip.js +3 -5
- package/esm/Unstable_TrapFocus/index.js +1 -1
- package/esm/locale/index.js +81 -1
- package/esm/styles/CssVarsProvider.js +3 -1
- package/esm/styles/excludeVariablesFromRoot.js +6 -0
- package/index.js +1 -1
- package/legacy/Button/Button.js +2 -4
- package/legacy/Checkbox/Checkbox.js +10 -2
- package/legacy/Chip/chipClasses.js +1 -1
- package/legacy/DialogContentText/DialogContentText.js +10 -2
- package/legacy/Fab/Fab.js +7 -2
- package/legacy/InputLabel/InputLabel.js +10 -2
- package/legacy/ListItemButton/ListItemButton.js +9 -2
- package/legacy/MenuItem/MenuItem.js +9 -2
- package/legacy/Popover/Popover.js +1 -0
- package/legacy/Radio/Radio.js +10 -2
- package/legacy/StepLabel/StepLabel.js +5 -4
- package/legacy/SvgIcon/SvgIcon.js +2 -2
- package/legacy/Tooltip/Tooltip.js +3 -5
- package/legacy/Unstable_TrapFocus/index.js +1 -1
- package/legacy/index.js +1 -1
- package/legacy/locale/index.js +224 -141
- package/legacy/styles/CssVarsProvider.js +3 -1
- package/legacy/styles/excludeVariablesFromRoot.js +12 -0
- package/locale/index.d.ts +1 -0
- package/locale/index.js +83 -2
- package/modern/Button/Button.js +3 -8
- package/modern/Checkbox/Checkbox.js +11 -3
- package/modern/Chip/chipClasses.js +1 -1
- package/modern/DialogContentText/DialogContentText.js +13 -3
- package/modern/Fab/Fab.js +5 -2
- package/modern/InputLabel/InputLabel.js +11 -3
- package/modern/ListItemButton/ListItemButton.js +10 -3
- package/modern/MenuItem/MenuItem.js +10 -3
- package/modern/Popover/Popover.js +1 -0
- package/modern/Radio/Radio.js +11 -3
- package/modern/StepLabel/StepLabel.js +5 -3
- package/modern/SvgIcon/SvgIcon.js +2 -2
- package/modern/Tooltip/Tooltip.js +3 -5
- package/modern/Unstable_TrapFocus/index.js +1 -1
- package/modern/index.js +1 -1
- package/modern/locale/index.js +81 -1
- package/modern/styles/CssVarsProvider.js +3 -1
- package/modern/styles/excludeVariablesFromRoot.js +6 -0
- package/package.json +5 -5
- package/styles/CssVarsProvider.js +4 -1
- package/styles/excludeVariablesFromRoot.d.ts +5 -0
- package/styles/excludeVariablesFromRoot.js +14 -0
- package/umd/material-ui.development.js +485 -431
- package/umd/material-ui.production.min.js +9 -9
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MUI v5.10.
|
|
1
|
+
/** @license MUI v5.10.8
|
|
2
2
|
*
|
|
3
3
|
* This source code is licensed under the MIT license found in the
|
|
4
4
|
* LICENSE file in the root directory of this source tree.
|
|
@@ -7004,7 +7004,7 @@
|
|
|
7004
7004
|
}
|
|
7005
7005
|
|
|
7006
7006
|
const _excluded$2i = ["name", "slot", "skipVariantsResolver", "skipSx", "overridesResolver"],
|
|
7007
|
-
_excluded2$
|
|
7007
|
+
_excluded2$c = ["theme"],
|
|
7008
7008
|
_excluded3$1 = ["theme"];
|
|
7009
7009
|
|
|
7010
7010
|
function isEmpty$2(obj) {
|
|
@@ -7145,7 +7145,7 @@
|
|
|
7145
7145
|
let {
|
|
7146
7146
|
theme: themeInput
|
|
7147
7147
|
} = _ref,
|
|
7148
|
-
other = _objectWithoutPropertiesLoose(_ref, _excluded2$
|
|
7148
|
+
other = _objectWithoutPropertiesLoose(_ref, _excluded2$c);
|
|
7149
7149
|
|
|
7150
7150
|
return stylesArg(_extends({
|
|
7151
7151
|
theme: isEmpty$2(themeInput) ? defaultTheme : themeInput
|
|
@@ -7463,7 +7463,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
7463
7463
|
|
|
7464
7464
|
function getLuminance(color) {
|
|
7465
7465
|
color = decomposeColor(color);
|
|
7466
|
-
let rgb = color.type === 'hsl' ? decomposeColor(hslToRgb(color)).values : color.values;
|
|
7466
|
+
let rgb = color.type === 'hsl' || color.type === 'hsla' ? decomposeColor(hslToRgb(color)).values : color.values;
|
|
7467
7467
|
rgb = rgb.map(val => {
|
|
7468
7468
|
if (color.type !== 'color') {
|
|
7469
7469
|
val /= 255; // normalized
|
|
@@ -7770,7 +7770,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
7770
7770
|
function getInitColorSchemeScript$1(options) {
|
|
7771
7771
|
const {
|
|
7772
7772
|
enableColorScheme = true,
|
|
7773
|
-
|
|
7773
|
+
defaultMode = 'light',
|
|
7774
7774
|
defaultLightColorScheme = 'light',
|
|
7775
7775
|
defaultDarkColorScheme = 'dark',
|
|
7776
7776
|
modeStorageKey = DEFAULT_MODE_STORAGE_KEY,
|
|
@@ -7782,10 +7782,10 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
7782
7782
|
// eslint-disable-next-line react/no-danger
|
|
7783
7783
|
dangerouslySetInnerHTML: {
|
|
7784
7784
|
__html: `(function() { try {
|
|
7785
|
-
var mode = localStorage.getItem('${modeStorageKey}');
|
|
7785
|
+
var mode = localStorage.getItem('${modeStorageKey}') || '${defaultMode}';
|
|
7786
7786
|
var cssColorScheme = mode;
|
|
7787
7787
|
var colorScheme = '';
|
|
7788
|
-
if (mode === 'system'
|
|
7788
|
+
if (mode === 'system') {
|
|
7789
7789
|
// handle system mode
|
|
7790
7790
|
var mql = window.matchMedia('(prefers-color-scheme: dark)');
|
|
7791
7791
|
if (mql.matches) {
|
|
@@ -8064,7 +8064,8 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
8064
8064
|
disableTransitionOnChange: designSystemTransitionOnChange = false,
|
|
8065
8065
|
enableColorScheme: designSystemEnableColorScheme = true,
|
|
8066
8066
|
shouldSkipGeneratingVar: designSystemShouldSkipGeneratingVar,
|
|
8067
|
-
resolveTheme
|
|
8067
|
+
resolveTheme,
|
|
8068
|
+
excludeVariablesFromRoot
|
|
8068
8069
|
} = options;
|
|
8069
8070
|
|
|
8070
8071
|
if (!defaultTheme.colorSchemes || typeof designSystemColorScheme === 'string' && !defaultTheme.colorSchemes[designSystemColorScheme] || typeof designSystemColorScheme === 'object' && !defaultTheme.colorSchemes[designSystemColorScheme == null ? void 0 : designSystemColorScheme.light] || typeof designSystemColorScheme === 'object' && !defaultTheme.colorSchemes[designSystemColorScheme == null ? void 0 : designSystemColorScheme.dark]) {
|
|
@@ -8195,6 +8196,15 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
8195
8196
|
})();
|
|
8196
8197
|
|
|
8197
8198
|
if (key === resolvedDefaultColorScheme) {
|
|
8199
|
+
if (excludeVariablesFromRoot) {
|
|
8200
|
+
const excludedVariables = {};
|
|
8201
|
+
excludeVariablesFromRoot(cssVarPrefix).forEach(cssVar => {
|
|
8202
|
+
excludedVariables[cssVar] = css[cssVar];
|
|
8203
|
+
delete css[cssVar];
|
|
8204
|
+
});
|
|
8205
|
+
defaultColorSchemeStyleSheet[`[${attribute}="${key}"]`] = excludedVariables;
|
|
8206
|
+
}
|
|
8207
|
+
|
|
8198
8208
|
defaultColorSchemeStyleSheet[`${colorSchemeSelector}, [${attribute}="${key}"]`] = css;
|
|
8199
8209
|
} else {
|
|
8200
8210
|
otherColorSchemesStyleSheet[`${colorSchemeSelector === ':root' ? '' : colorSchemeSelector}[${attribute}="${key}"]`] = css;
|
|
@@ -8932,7 +8942,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
8932
8942
|
}
|
|
8933
8943
|
|
|
8934
8944
|
const _excluded$2e = ["defaultProps", "mixins", "overrides", "palette", "props", "styleOverrides"],
|
|
8935
|
-
_excluded2$
|
|
8945
|
+
_excluded2$b = ["type", "mode"];
|
|
8936
8946
|
function adaptV4Theme(inputTheme) {
|
|
8937
8947
|
{
|
|
8938
8948
|
console.warn(['MUI: adaptV4Theme() is deprecated.', 'Follow the upgrade guide on https://mui.com/r/migration-v4#theme.'].join('\n'));
|
|
@@ -8997,7 +9007,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
8997
9007
|
type: typeInput,
|
|
8998
9008
|
mode: modeInput
|
|
8999
9009
|
} = palette,
|
|
9000
|
-
paletteRest = _objectWithoutPropertiesLoose(palette, _excluded2$
|
|
9010
|
+
paletteRest = _objectWithoutPropertiesLoose(palette, _excluded2$b);
|
|
9001
9011
|
|
|
9002
9012
|
const finalMode = modeInput || typeInput || 'light';
|
|
9003
9013
|
theme.palette = _extends({
|
|
@@ -9228,7 +9238,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
9228
9238
|
input = stripDiacritics(input);
|
|
9229
9239
|
}
|
|
9230
9240
|
|
|
9231
|
-
const filteredOptions = options.filter(option => {
|
|
9241
|
+
const filteredOptions = !input ? options : options.filter(option => {
|
|
9232
9242
|
let candidate = (stringify || getOptionLabel)(option);
|
|
9233
9243
|
|
|
9234
9244
|
if (ignoreCase) {
|
|
@@ -10596,6 +10606,363 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
10596
10606
|
ClickAwayListener['propTypes' + ''] = exactProp(ClickAwayListener.propTypes);
|
|
10597
10607
|
}
|
|
10598
10608
|
|
|
10609
|
+
const candidatesSelector = ['input', 'select', 'textarea', 'a[href]', 'button', '[tabindex]', 'audio[controls]', 'video[controls]', '[contenteditable]:not([contenteditable="false"])'].join(',');
|
|
10610
|
+
|
|
10611
|
+
function getTabIndex(node) {
|
|
10612
|
+
const tabindexAttr = parseInt(node.getAttribute('tabindex'), 10);
|
|
10613
|
+
|
|
10614
|
+
if (!Number.isNaN(tabindexAttr)) {
|
|
10615
|
+
return tabindexAttr;
|
|
10616
|
+
} // Browsers do not return `tabIndex` correctly for contentEditable nodes;
|
|
10617
|
+
// https://bugs.chromium.org/p/chromium/issues/detail?id=661108&q=contenteditable%20tabindex&can=2
|
|
10618
|
+
// so if they don't have a tabindex attribute specifically set, assume it's 0.
|
|
10619
|
+
// in Chrome, <details/>, <audio controls/> and <video controls/> elements get a default
|
|
10620
|
+
// `tabIndex` of -1 when the 'tabindex' attribute isn't specified in the DOM,
|
|
10621
|
+
// yet they are still part of the regular tab order; in FF, they get a default
|
|
10622
|
+
// `tabIndex` of 0; since Chrome still puts those elements in the regular tab
|
|
10623
|
+
// order, consider their tab index to be 0.
|
|
10624
|
+
|
|
10625
|
+
|
|
10626
|
+
if (node.contentEditable === 'true' || (node.nodeName === 'AUDIO' || node.nodeName === 'VIDEO' || node.nodeName === 'DETAILS') && node.getAttribute('tabindex') === null) {
|
|
10627
|
+
return 0;
|
|
10628
|
+
}
|
|
10629
|
+
|
|
10630
|
+
return node.tabIndex;
|
|
10631
|
+
}
|
|
10632
|
+
|
|
10633
|
+
function isNonTabbableRadio(node) {
|
|
10634
|
+
if (node.tagName !== 'INPUT' || node.type !== 'radio') {
|
|
10635
|
+
return false;
|
|
10636
|
+
}
|
|
10637
|
+
|
|
10638
|
+
if (!node.name) {
|
|
10639
|
+
return false;
|
|
10640
|
+
}
|
|
10641
|
+
|
|
10642
|
+
const getRadio = selector => node.ownerDocument.querySelector(`input[type="radio"]${selector}`);
|
|
10643
|
+
|
|
10644
|
+
let roving = getRadio(`[name="${node.name}"]:checked`);
|
|
10645
|
+
|
|
10646
|
+
if (!roving) {
|
|
10647
|
+
roving = getRadio(`[name="${node.name}"]`);
|
|
10648
|
+
}
|
|
10649
|
+
|
|
10650
|
+
return roving !== node;
|
|
10651
|
+
}
|
|
10652
|
+
|
|
10653
|
+
function isNodeMatchingSelectorFocusable(node) {
|
|
10654
|
+
if (node.disabled || node.tagName === 'INPUT' && node.type === 'hidden' || isNonTabbableRadio(node)) {
|
|
10655
|
+
return false;
|
|
10656
|
+
}
|
|
10657
|
+
|
|
10658
|
+
return true;
|
|
10659
|
+
}
|
|
10660
|
+
|
|
10661
|
+
function defaultGetTabbable(root) {
|
|
10662
|
+
const regularTabNodes = [];
|
|
10663
|
+
const orderedTabNodes = [];
|
|
10664
|
+
Array.from(root.querySelectorAll(candidatesSelector)).forEach((node, i) => {
|
|
10665
|
+
const nodeTabIndex = getTabIndex(node);
|
|
10666
|
+
|
|
10667
|
+
if (nodeTabIndex === -1 || !isNodeMatchingSelectorFocusable(node)) {
|
|
10668
|
+
return;
|
|
10669
|
+
}
|
|
10670
|
+
|
|
10671
|
+
if (nodeTabIndex === 0) {
|
|
10672
|
+
regularTabNodes.push(node);
|
|
10673
|
+
} else {
|
|
10674
|
+
orderedTabNodes.push({
|
|
10675
|
+
documentOrder: i,
|
|
10676
|
+
tabIndex: nodeTabIndex,
|
|
10677
|
+
node
|
|
10678
|
+
});
|
|
10679
|
+
}
|
|
10680
|
+
});
|
|
10681
|
+
return orderedTabNodes.sort((a, b) => a.tabIndex === b.tabIndex ? a.documentOrder - b.documentOrder : a.tabIndex - b.tabIndex).map(a => a.node).concat(regularTabNodes);
|
|
10682
|
+
}
|
|
10683
|
+
|
|
10684
|
+
function defaultIsEnabled() {
|
|
10685
|
+
return true;
|
|
10686
|
+
}
|
|
10687
|
+
/**
|
|
10688
|
+
* Utility component that locks focus inside the component.
|
|
10689
|
+
*/
|
|
10690
|
+
|
|
10691
|
+
|
|
10692
|
+
function FocusTrap(props) {
|
|
10693
|
+
const {
|
|
10694
|
+
children,
|
|
10695
|
+
disableAutoFocus = false,
|
|
10696
|
+
disableEnforceFocus = false,
|
|
10697
|
+
disableRestoreFocus = false,
|
|
10698
|
+
getTabbable = defaultGetTabbable,
|
|
10699
|
+
isEnabled = defaultIsEnabled,
|
|
10700
|
+
open
|
|
10701
|
+
} = props;
|
|
10702
|
+
const ignoreNextEnforceFocus = React__namespace.useRef();
|
|
10703
|
+
const sentinelStart = React__namespace.useRef(null);
|
|
10704
|
+
const sentinelEnd = React__namespace.useRef(null);
|
|
10705
|
+
const nodeToRestore = React__namespace.useRef(null);
|
|
10706
|
+
const reactFocusEventTarget = React__namespace.useRef(null); // This variable is useful when disableAutoFocus is true.
|
|
10707
|
+
// It waits for the active element to move into the component to activate.
|
|
10708
|
+
|
|
10709
|
+
const activated = React__namespace.useRef(false);
|
|
10710
|
+
const rootRef = React__namespace.useRef(null);
|
|
10711
|
+
const handleRef = useForkRef(children.ref, rootRef);
|
|
10712
|
+
const lastKeydown = React__namespace.useRef(null);
|
|
10713
|
+
React__namespace.useEffect(() => {
|
|
10714
|
+
// We might render an empty child.
|
|
10715
|
+
if (!open || !rootRef.current) {
|
|
10716
|
+
return;
|
|
10717
|
+
}
|
|
10718
|
+
|
|
10719
|
+
activated.current = !disableAutoFocus;
|
|
10720
|
+
}, [disableAutoFocus, open]);
|
|
10721
|
+
React__namespace.useEffect(() => {
|
|
10722
|
+
// We might render an empty child.
|
|
10723
|
+
if (!open || !rootRef.current) {
|
|
10724
|
+
return;
|
|
10725
|
+
}
|
|
10726
|
+
|
|
10727
|
+
const doc = ownerDocument(rootRef.current);
|
|
10728
|
+
|
|
10729
|
+
if (!rootRef.current.contains(doc.activeElement)) {
|
|
10730
|
+
if (!rootRef.current.hasAttribute('tabIndex')) {
|
|
10731
|
+
{
|
|
10732
|
+
console.error(['MUI: The modal content node does not accept focus.', 'For the benefit of assistive technologies, ' + 'the tabIndex of the node is being set to "-1".'].join('\n'));
|
|
10733
|
+
}
|
|
10734
|
+
|
|
10735
|
+
rootRef.current.setAttribute('tabIndex', -1);
|
|
10736
|
+
}
|
|
10737
|
+
|
|
10738
|
+
if (activated.current) {
|
|
10739
|
+
rootRef.current.focus();
|
|
10740
|
+
}
|
|
10741
|
+
}
|
|
10742
|
+
|
|
10743
|
+
return () => {
|
|
10744
|
+
// restoreLastFocus()
|
|
10745
|
+
if (!disableRestoreFocus) {
|
|
10746
|
+
// In IE11 it is possible for document.activeElement to be null resulting
|
|
10747
|
+
// in nodeToRestore.current being null.
|
|
10748
|
+
// Not all elements in IE11 have a focus method.
|
|
10749
|
+
// Once IE11 support is dropped the focus() call can be unconditional.
|
|
10750
|
+
if (nodeToRestore.current && nodeToRestore.current.focus) {
|
|
10751
|
+
ignoreNextEnforceFocus.current = true;
|
|
10752
|
+
nodeToRestore.current.focus();
|
|
10753
|
+
}
|
|
10754
|
+
|
|
10755
|
+
nodeToRestore.current = null;
|
|
10756
|
+
}
|
|
10757
|
+
}; // Missing `disableRestoreFocus` which is fine.
|
|
10758
|
+
// We don't support changing that prop on an open FocusTrap
|
|
10759
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
10760
|
+
}, [open]);
|
|
10761
|
+
React__namespace.useEffect(() => {
|
|
10762
|
+
// We might render an empty child.
|
|
10763
|
+
if (!open || !rootRef.current) {
|
|
10764
|
+
return;
|
|
10765
|
+
}
|
|
10766
|
+
|
|
10767
|
+
const doc = ownerDocument(rootRef.current);
|
|
10768
|
+
|
|
10769
|
+
const contain = nativeEvent => {
|
|
10770
|
+
const {
|
|
10771
|
+
current: rootElement
|
|
10772
|
+
} = rootRef; // Cleanup functions are executed lazily in React 17.
|
|
10773
|
+
// Contain can be called between the component being unmounted and its cleanup function being run.
|
|
10774
|
+
|
|
10775
|
+
if (rootElement === null) {
|
|
10776
|
+
return;
|
|
10777
|
+
}
|
|
10778
|
+
|
|
10779
|
+
if (!doc.hasFocus() || disableEnforceFocus || !isEnabled() || ignoreNextEnforceFocus.current) {
|
|
10780
|
+
ignoreNextEnforceFocus.current = false;
|
|
10781
|
+
return;
|
|
10782
|
+
}
|
|
10783
|
+
|
|
10784
|
+
if (!rootElement.contains(doc.activeElement)) {
|
|
10785
|
+
// if the focus event is not coming from inside the children's react tree, reset the refs
|
|
10786
|
+
if (nativeEvent && reactFocusEventTarget.current !== nativeEvent.target || doc.activeElement !== reactFocusEventTarget.current) {
|
|
10787
|
+
reactFocusEventTarget.current = null;
|
|
10788
|
+
} else if (reactFocusEventTarget.current !== null) {
|
|
10789
|
+
return;
|
|
10790
|
+
}
|
|
10791
|
+
|
|
10792
|
+
if (!activated.current) {
|
|
10793
|
+
return;
|
|
10794
|
+
}
|
|
10795
|
+
|
|
10796
|
+
let tabbable = [];
|
|
10797
|
+
|
|
10798
|
+
if (doc.activeElement === sentinelStart.current || doc.activeElement === sentinelEnd.current) {
|
|
10799
|
+
tabbable = getTabbable(rootRef.current);
|
|
10800
|
+
}
|
|
10801
|
+
|
|
10802
|
+
if (tabbable.length > 0) {
|
|
10803
|
+
var _lastKeydown$current, _lastKeydown$current2;
|
|
10804
|
+
|
|
10805
|
+
const isShiftTab = Boolean(((_lastKeydown$current = lastKeydown.current) == null ? void 0 : _lastKeydown$current.shiftKey) && ((_lastKeydown$current2 = lastKeydown.current) == null ? void 0 : _lastKeydown$current2.key) === 'Tab');
|
|
10806
|
+
const focusNext = tabbable[0];
|
|
10807
|
+
const focusPrevious = tabbable[tabbable.length - 1];
|
|
10808
|
+
|
|
10809
|
+
if (isShiftTab) {
|
|
10810
|
+
focusPrevious.focus();
|
|
10811
|
+
} else {
|
|
10812
|
+
focusNext.focus();
|
|
10813
|
+
}
|
|
10814
|
+
} else {
|
|
10815
|
+
rootElement.focus();
|
|
10816
|
+
}
|
|
10817
|
+
}
|
|
10818
|
+
};
|
|
10819
|
+
|
|
10820
|
+
const loopFocus = nativeEvent => {
|
|
10821
|
+
lastKeydown.current = nativeEvent;
|
|
10822
|
+
|
|
10823
|
+
if (disableEnforceFocus || !isEnabled() || nativeEvent.key !== 'Tab') {
|
|
10824
|
+
return;
|
|
10825
|
+
} // Make sure the next tab starts from the right place.
|
|
10826
|
+
// doc.activeElement referes to the origin.
|
|
10827
|
+
|
|
10828
|
+
|
|
10829
|
+
if (doc.activeElement === rootRef.current && nativeEvent.shiftKey) {
|
|
10830
|
+
// We need to ignore the next contain as
|
|
10831
|
+
// it will try to move the focus back to the rootRef element.
|
|
10832
|
+
ignoreNextEnforceFocus.current = true;
|
|
10833
|
+
sentinelEnd.current.focus();
|
|
10834
|
+
}
|
|
10835
|
+
};
|
|
10836
|
+
|
|
10837
|
+
doc.addEventListener('focusin', contain);
|
|
10838
|
+
doc.addEventListener('keydown', loopFocus, true); // With Edge, Safari and Firefox, no focus related events are fired when the focused area stops being a focused area.
|
|
10839
|
+
// e.g. https://bugzilla.mozilla.org/show_bug.cgi?id=559561.
|
|
10840
|
+
// Instead, we can look if the active element was restored on the BODY element.
|
|
10841
|
+
//
|
|
10842
|
+
// The whatwg spec defines how the browser should behave but does not explicitly mention any events:
|
|
10843
|
+
// https://html.spec.whatwg.org/multipage/interaction.html#focus-fixup-rule.
|
|
10844
|
+
|
|
10845
|
+
const interval = setInterval(() => {
|
|
10846
|
+
if (doc.activeElement.tagName === 'BODY') {
|
|
10847
|
+
contain();
|
|
10848
|
+
}
|
|
10849
|
+
}, 50);
|
|
10850
|
+
return () => {
|
|
10851
|
+
clearInterval(interval);
|
|
10852
|
+
doc.removeEventListener('focusin', contain);
|
|
10853
|
+
doc.removeEventListener('keydown', loopFocus, true);
|
|
10854
|
+
};
|
|
10855
|
+
}, [disableAutoFocus, disableEnforceFocus, disableRestoreFocus, isEnabled, open, getTabbable]);
|
|
10856
|
+
|
|
10857
|
+
const onFocus = event => {
|
|
10858
|
+
if (nodeToRestore.current === null) {
|
|
10859
|
+
nodeToRestore.current = event.relatedTarget;
|
|
10860
|
+
}
|
|
10861
|
+
|
|
10862
|
+
activated.current = true;
|
|
10863
|
+
reactFocusEventTarget.current = event.target;
|
|
10864
|
+
const childrenPropsHandler = children.props.onFocus;
|
|
10865
|
+
|
|
10866
|
+
if (childrenPropsHandler) {
|
|
10867
|
+
childrenPropsHandler(event);
|
|
10868
|
+
}
|
|
10869
|
+
};
|
|
10870
|
+
|
|
10871
|
+
const handleFocusSentinel = event => {
|
|
10872
|
+
if (nodeToRestore.current === null) {
|
|
10873
|
+
nodeToRestore.current = event.relatedTarget;
|
|
10874
|
+
}
|
|
10875
|
+
|
|
10876
|
+
activated.current = true;
|
|
10877
|
+
};
|
|
10878
|
+
|
|
10879
|
+
return /*#__PURE__*/jsxRuntime_2(React__namespace.Fragment, {
|
|
10880
|
+
children: [/*#__PURE__*/jsxRuntime_1("div", {
|
|
10881
|
+
tabIndex: open ? 0 : -1,
|
|
10882
|
+
onFocus: handleFocusSentinel,
|
|
10883
|
+
ref: sentinelStart,
|
|
10884
|
+
"data-testid": "sentinelStart"
|
|
10885
|
+
}), /*#__PURE__*/React__namespace.cloneElement(children, {
|
|
10886
|
+
ref: handleRef,
|
|
10887
|
+
onFocus
|
|
10888
|
+
}), /*#__PURE__*/jsxRuntime_1("div", {
|
|
10889
|
+
tabIndex: open ? 0 : -1,
|
|
10890
|
+
onFocus: handleFocusSentinel,
|
|
10891
|
+
ref: sentinelEnd,
|
|
10892
|
+
"data-testid": "sentinelEnd"
|
|
10893
|
+
})]
|
|
10894
|
+
});
|
|
10895
|
+
}
|
|
10896
|
+
|
|
10897
|
+
FocusTrap.propTypes
|
|
10898
|
+
/* remove-proptypes */
|
|
10899
|
+
= {
|
|
10900
|
+
// ----------------------------- Warning --------------------------------
|
|
10901
|
+
// | These PropTypes are generated from the TypeScript type definitions |
|
|
10902
|
+
// | To update them edit the d.ts file and run "yarn proptypes" |
|
|
10903
|
+
// ----------------------------------------------------------------------
|
|
10904
|
+
|
|
10905
|
+
/**
|
|
10906
|
+
* A single child content element.
|
|
10907
|
+
*/
|
|
10908
|
+
children: elementAcceptingRef$1,
|
|
10909
|
+
|
|
10910
|
+
/**
|
|
10911
|
+
* If `true`, the focus trap will not automatically shift focus to itself when it opens, and
|
|
10912
|
+
* replace it to the last focused element when it closes.
|
|
10913
|
+
* This also works correctly with any focus trap children that have the `disableAutoFocus` prop.
|
|
10914
|
+
*
|
|
10915
|
+
* Generally this should never be set to `true` as it makes the focus trap less
|
|
10916
|
+
* accessible to assistive technologies, like screen readers.
|
|
10917
|
+
* @default false
|
|
10918
|
+
*/
|
|
10919
|
+
disableAutoFocus: PropTypes.bool,
|
|
10920
|
+
|
|
10921
|
+
/**
|
|
10922
|
+
* If `true`, the focus trap will not prevent focus from leaving the focus trap while open.
|
|
10923
|
+
*
|
|
10924
|
+
* Generally this should never be set to `true` as it makes the focus trap less
|
|
10925
|
+
* accessible to assistive technologies, like screen readers.
|
|
10926
|
+
* @default false
|
|
10927
|
+
*/
|
|
10928
|
+
disableEnforceFocus: PropTypes.bool,
|
|
10929
|
+
|
|
10930
|
+
/**
|
|
10931
|
+
* If `true`, the focus trap will not restore focus to previously focused element once
|
|
10932
|
+
* focus trap is hidden or unmounted.
|
|
10933
|
+
* @default false
|
|
10934
|
+
*/
|
|
10935
|
+
disableRestoreFocus: PropTypes.bool,
|
|
10936
|
+
|
|
10937
|
+
/**
|
|
10938
|
+
* Returns an array of ordered tabbable nodes (i.e. in tab order) within the root.
|
|
10939
|
+
* For instance, you can provide the "tabbable" npm dependency.
|
|
10940
|
+
* @param {HTMLElement} root
|
|
10941
|
+
*/
|
|
10942
|
+
getTabbable: PropTypes.func,
|
|
10943
|
+
|
|
10944
|
+
/**
|
|
10945
|
+
* This prop extends the `open` prop.
|
|
10946
|
+
* It allows to toggle the open state without having to wait for a rerender when changing the `open` prop.
|
|
10947
|
+
* This prop should be memoized.
|
|
10948
|
+
* It can be used to support multiple focus trap mounted at the same time.
|
|
10949
|
+
* @default function defaultIsEnabled() {
|
|
10950
|
+
* return true;
|
|
10951
|
+
* }
|
|
10952
|
+
*/
|
|
10953
|
+
isEnabled: PropTypes.func,
|
|
10954
|
+
|
|
10955
|
+
/**
|
|
10956
|
+
* If `true`, focus is locked.
|
|
10957
|
+
*/
|
|
10958
|
+
open: PropTypes.bool.isRequired
|
|
10959
|
+
} ;
|
|
10960
|
+
|
|
10961
|
+
{
|
|
10962
|
+
// eslint-disable-next-line
|
|
10963
|
+
FocusTrap['propTypes' + ''] = exactProp(FocusTrap.propTypes);
|
|
10964
|
+
}
|
|
10965
|
+
|
|
10599
10966
|
var top = 'top';
|
|
10600
10967
|
var bottom = 'bottom';
|
|
10601
10968
|
var right = 'right';
|
|
@@ -12661,7 +13028,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
12661
13028
|
generateUtilityClasses('MuiPopperUnstyled', ['root']);
|
|
12662
13029
|
|
|
12663
13030
|
const _excluded$2b = ["anchorEl", "children", "component", "components", "componentsProps", "direction", "disablePortal", "modifiers", "open", "ownerState", "placement", "popperOptions", "popperRef", "TransitionProps"],
|
|
12664
|
-
_excluded2$
|
|
13031
|
+
_excluded2$a = ["anchorEl", "children", "container", "direction", "disablePortal", "keepMounted", "modifiers", "open", "placement", "popperOptions", "popperRef", "style", "transition"];
|
|
12665
13032
|
|
|
12666
13033
|
function flipPlacement(placement, direction) {
|
|
12667
13034
|
if (direction === 'ltr') {
|
|
@@ -12850,7 +13217,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
12850
13217
|
style,
|
|
12851
13218
|
transition = false
|
|
12852
13219
|
} = props,
|
|
12853
|
-
other = _objectWithoutPropertiesLoose(props, _excluded2$
|
|
13220
|
+
other = _objectWithoutPropertiesLoose(props, _excluded2$a);
|
|
12854
13221
|
|
|
12855
13222
|
const [exited, setExited] = React__namespace.useState(true);
|
|
12856
13223
|
|
|
@@ -13292,363 +13659,6 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
13292
13659
|
|
|
13293
13660
|
}
|
|
13294
13661
|
|
|
13295
|
-
const candidatesSelector = ['input', 'select', 'textarea', 'a[href]', 'button', '[tabindex]', 'audio[controls]', 'video[controls]', '[contenteditable]:not([contenteditable="false"])'].join(',');
|
|
13296
|
-
|
|
13297
|
-
function getTabIndex(node) {
|
|
13298
|
-
const tabindexAttr = parseInt(node.getAttribute('tabindex'), 10);
|
|
13299
|
-
|
|
13300
|
-
if (!Number.isNaN(tabindexAttr)) {
|
|
13301
|
-
return tabindexAttr;
|
|
13302
|
-
} // Browsers do not return `tabIndex` correctly for contentEditable nodes;
|
|
13303
|
-
// https://bugs.chromium.org/p/chromium/issues/detail?id=661108&q=contenteditable%20tabindex&can=2
|
|
13304
|
-
// so if they don't have a tabindex attribute specifically set, assume it's 0.
|
|
13305
|
-
// in Chrome, <details/>, <audio controls/> and <video controls/> elements get a default
|
|
13306
|
-
// `tabIndex` of -1 when the 'tabindex' attribute isn't specified in the DOM,
|
|
13307
|
-
// yet they are still part of the regular tab order; in FF, they get a default
|
|
13308
|
-
// `tabIndex` of 0; since Chrome still puts those elements in the regular tab
|
|
13309
|
-
// order, consider their tab index to be 0.
|
|
13310
|
-
|
|
13311
|
-
|
|
13312
|
-
if (node.contentEditable === 'true' || (node.nodeName === 'AUDIO' || node.nodeName === 'VIDEO' || node.nodeName === 'DETAILS') && node.getAttribute('tabindex') === null) {
|
|
13313
|
-
return 0;
|
|
13314
|
-
}
|
|
13315
|
-
|
|
13316
|
-
return node.tabIndex;
|
|
13317
|
-
}
|
|
13318
|
-
|
|
13319
|
-
function isNonTabbableRadio(node) {
|
|
13320
|
-
if (node.tagName !== 'INPUT' || node.type !== 'radio') {
|
|
13321
|
-
return false;
|
|
13322
|
-
}
|
|
13323
|
-
|
|
13324
|
-
if (!node.name) {
|
|
13325
|
-
return false;
|
|
13326
|
-
}
|
|
13327
|
-
|
|
13328
|
-
const getRadio = selector => node.ownerDocument.querySelector(`input[type="radio"]${selector}`);
|
|
13329
|
-
|
|
13330
|
-
let roving = getRadio(`[name="${node.name}"]:checked`);
|
|
13331
|
-
|
|
13332
|
-
if (!roving) {
|
|
13333
|
-
roving = getRadio(`[name="${node.name}"]`);
|
|
13334
|
-
}
|
|
13335
|
-
|
|
13336
|
-
return roving !== node;
|
|
13337
|
-
}
|
|
13338
|
-
|
|
13339
|
-
function isNodeMatchingSelectorFocusable(node) {
|
|
13340
|
-
if (node.disabled || node.tagName === 'INPUT' && node.type === 'hidden' || isNonTabbableRadio(node)) {
|
|
13341
|
-
return false;
|
|
13342
|
-
}
|
|
13343
|
-
|
|
13344
|
-
return true;
|
|
13345
|
-
}
|
|
13346
|
-
|
|
13347
|
-
function defaultGetTabbable(root) {
|
|
13348
|
-
const regularTabNodes = [];
|
|
13349
|
-
const orderedTabNodes = [];
|
|
13350
|
-
Array.from(root.querySelectorAll(candidatesSelector)).forEach((node, i) => {
|
|
13351
|
-
const nodeTabIndex = getTabIndex(node);
|
|
13352
|
-
|
|
13353
|
-
if (nodeTabIndex === -1 || !isNodeMatchingSelectorFocusable(node)) {
|
|
13354
|
-
return;
|
|
13355
|
-
}
|
|
13356
|
-
|
|
13357
|
-
if (nodeTabIndex === 0) {
|
|
13358
|
-
regularTabNodes.push(node);
|
|
13359
|
-
} else {
|
|
13360
|
-
orderedTabNodes.push({
|
|
13361
|
-
documentOrder: i,
|
|
13362
|
-
tabIndex: nodeTabIndex,
|
|
13363
|
-
node
|
|
13364
|
-
});
|
|
13365
|
-
}
|
|
13366
|
-
});
|
|
13367
|
-
return orderedTabNodes.sort((a, b) => a.tabIndex === b.tabIndex ? a.documentOrder - b.documentOrder : a.tabIndex - b.tabIndex).map(a => a.node).concat(regularTabNodes);
|
|
13368
|
-
}
|
|
13369
|
-
|
|
13370
|
-
function defaultIsEnabled() {
|
|
13371
|
-
return true;
|
|
13372
|
-
}
|
|
13373
|
-
/**
|
|
13374
|
-
* Utility component that locks focus inside the component.
|
|
13375
|
-
*/
|
|
13376
|
-
|
|
13377
|
-
|
|
13378
|
-
function TrapFocus(props) {
|
|
13379
|
-
const {
|
|
13380
|
-
children,
|
|
13381
|
-
disableAutoFocus = false,
|
|
13382
|
-
disableEnforceFocus = false,
|
|
13383
|
-
disableRestoreFocus = false,
|
|
13384
|
-
getTabbable = defaultGetTabbable,
|
|
13385
|
-
isEnabled = defaultIsEnabled,
|
|
13386
|
-
open
|
|
13387
|
-
} = props;
|
|
13388
|
-
const ignoreNextEnforceFocus = React__namespace.useRef();
|
|
13389
|
-
const sentinelStart = React__namespace.useRef(null);
|
|
13390
|
-
const sentinelEnd = React__namespace.useRef(null);
|
|
13391
|
-
const nodeToRestore = React__namespace.useRef(null);
|
|
13392
|
-
const reactFocusEventTarget = React__namespace.useRef(null); // This variable is useful when disableAutoFocus is true.
|
|
13393
|
-
// It waits for the active element to move into the component to activate.
|
|
13394
|
-
|
|
13395
|
-
const activated = React__namespace.useRef(false);
|
|
13396
|
-
const rootRef = React__namespace.useRef(null);
|
|
13397
|
-
const handleRef = useForkRef(children.ref, rootRef);
|
|
13398
|
-
const lastKeydown = React__namespace.useRef(null);
|
|
13399
|
-
React__namespace.useEffect(() => {
|
|
13400
|
-
// We might render an empty child.
|
|
13401
|
-
if (!open || !rootRef.current) {
|
|
13402
|
-
return;
|
|
13403
|
-
}
|
|
13404
|
-
|
|
13405
|
-
activated.current = !disableAutoFocus;
|
|
13406
|
-
}, [disableAutoFocus, open]);
|
|
13407
|
-
React__namespace.useEffect(() => {
|
|
13408
|
-
// We might render an empty child.
|
|
13409
|
-
if (!open || !rootRef.current) {
|
|
13410
|
-
return;
|
|
13411
|
-
}
|
|
13412
|
-
|
|
13413
|
-
const doc = ownerDocument(rootRef.current);
|
|
13414
|
-
|
|
13415
|
-
if (!rootRef.current.contains(doc.activeElement)) {
|
|
13416
|
-
if (!rootRef.current.hasAttribute('tabIndex')) {
|
|
13417
|
-
{
|
|
13418
|
-
console.error(['MUI: The modal content node does not accept focus.', 'For the benefit of assistive technologies, ' + 'the tabIndex of the node is being set to "-1".'].join('\n'));
|
|
13419
|
-
}
|
|
13420
|
-
|
|
13421
|
-
rootRef.current.setAttribute('tabIndex', -1);
|
|
13422
|
-
}
|
|
13423
|
-
|
|
13424
|
-
if (activated.current) {
|
|
13425
|
-
rootRef.current.focus();
|
|
13426
|
-
}
|
|
13427
|
-
}
|
|
13428
|
-
|
|
13429
|
-
return () => {
|
|
13430
|
-
// restoreLastFocus()
|
|
13431
|
-
if (!disableRestoreFocus) {
|
|
13432
|
-
// In IE11 it is possible for document.activeElement to be null resulting
|
|
13433
|
-
// in nodeToRestore.current being null.
|
|
13434
|
-
// Not all elements in IE11 have a focus method.
|
|
13435
|
-
// Once IE11 support is dropped the focus() call can be unconditional.
|
|
13436
|
-
if (nodeToRestore.current && nodeToRestore.current.focus) {
|
|
13437
|
-
ignoreNextEnforceFocus.current = true;
|
|
13438
|
-
nodeToRestore.current.focus();
|
|
13439
|
-
}
|
|
13440
|
-
|
|
13441
|
-
nodeToRestore.current = null;
|
|
13442
|
-
}
|
|
13443
|
-
}; // Missing `disableRestoreFocus` which is fine.
|
|
13444
|
-
// We don't support changing that prop on an open TrapFocus
|
|
13445
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
13446
|
-
}, [open]);
|
|
13447
|
-
React__namespace.useEffect(() => {
|
|
13448
|
-
// We might render an empty child.
|
|
13449
|
-
if (!open || !rootRef.current) {
|
|
13450
|
-
return;
|
|
13451
|
-
}
|
|
13452
|
-
|
|
13453
|
-
const doc = ownerDocument(rootRef.current);
|
|
13454
|
-
|
|
13455
|
-
const contain = nativeEvent => {
|
|
13456
|
-
const {
|
|
13457
|
-
current: rootElement
|
|
13458
|
-
} = rootRef; // Cleanup functions are executed lazily in React 17.
|
|
13459
|
-
// Contain can be called between the component being unmounted and its cleanup function being run.
|
|
13460
|
-
|
|
13461
|
-
if (rootElement === null) {
|
|
13462
|
-
return;
|
|
13463
|
-
}
|
|
13464
|
-
|
|
13465
|
-
if (!doc.hasFocus() || disableEnforceFocus || !isEnabled() || ignoreNextEnforceFocus.current) {
|
|
13466
|
-
ignoreNextEnforceFocus.current = false;
|
|
13467
|
-
return;
|
|
13468
|
-
}
|
|
13469
|
-
|
|
13470
|
-
if (!rootElement.contains(doc.activeElement)) {
|
|
13471
|
-
// if the focus event is not coming from inside the children's react tree, reset the refs
|
|
13472
|
-
if (nativeEvent && reactFocusEventTarget.current !== nativeEvent.target || doc.activeElement !== reactFocusEventTarget.current) {
|
|
13473
|
-
reactFocusEventTarget.current = null;
|
|
13474
|
-
} else if (reactFocusEventTarget.current !== null) {
|
|
13475
|
-
return;
|
|
13476
|
-
}
|
|
13477
|
-
|
|
13478
|
-
if (!activated.current) {
|
|
13479
|
-
return;
|
|
13480
|
-
}
|
|
13481
|
-
|
|
13482
|
-
let tabbable = [];
|
|
13483
|
-
|
|
13484
|
-
if (doc.activeElement === sentinelStart.current || doc.activeElement === sentinelEnd.current) {
|
|
13485
|
-
tabbable = getTabbable(rootRef.current);
|
|
13486
|
-
}
|
|
13487
|
-
|
|
13488
|
-
if (tabbable.length > 0) {
|
|
13489
|
-
var _lastKeydown$current, _lastKeydown$current2;
|
|
13490
|
-
|
|
13491
|
-
const isShiftTab = Boolean(((_lastKeydown$current = lastKeydown.current) == null ? void 0 : _lastKeydown$current.shiftKey) && ((_lastKeydown$current2 = lastKeydown.current) == null ? void 0 : _lastKeydown$current2.key) === 'Tab');
|
|
13492
|
-
const focusNext = tabbable[0];
|
|
13493
|
-
const focusPrevious = tabbable[tabbable.length - 1];
|
|
13494
|
-
|
|
13495
|
-
if (isShiftTab) {
|
|
13496
|
-
focusPrevious.focus();
|
|
13497
|
-
} else {
|
|
13498
|
-
focusNext.focus();
|
|
13499
|
-
}
|
|
13500
|
-
} else {
|
|
13501
|
-
rootElement.focus();
|
|
13502
|
-
}
|
|
13503
|
-
}
|
|
13504
|
-
};
|
|
13505
|
-
|
|
13506
|
-
const loopFocus = nativeEvent => {
|
|
13507
|
-
lastKeydown.current = nativeEvent;
|
|
13508
|
-
|
|
13509
|
-
if (disableEnforceFocus || !isEnabled() || nativeEvent.key !== 'Tab') {
|
|
13510
|
-
return;
|
|
13511
|
-
} // Make sure the next tab starts from the right place.
|
|
13512
|
-
// doc.activeElement referes to the origin.
|
|
13513
|
-
|
|
13514
|
-
|
|
13515
|
-
if (doc.activeElement === rootRef.current && nativeEvent.shiftKey) {
|
|
13516
|
-
// We need to ignore the next contain as
|
|
13517
|
-
// it will try to move the focus back to the rootRef element.
|
|
13518
|
-
ignoreNextEnforceFocus.current = true;
|
|
13519
|
-
sentinelEnd.current.focus();
|
|
13520
|
-
}
|
|
13521
|
-
};
|
|
13522
|
-
|
|
13523
|
-
doc.addEventListener('focusin', contain);
|
|
13524
|
-
doc.addEventListener('keydown', loopFocus, true); // With Edge, Safari and Firefox, no focus related events are fired when the focused area stops being a focused area.
|
|
13525
|
-
// e.g. https://bugzilla.mozilla.org/show_bug.cgi?id=559561.
|
|
13526
|
-
// Instead, we can look if the active element was restored on the BODY element.
|
|
13527
|
-
//
|
|
13528
|
-
// The whatwg spec defines how the browser should behave but does not explicitly mention any events:
|
|
13529
|
-
// https://html.spec.whatwg.org/multipage/interaction.html#focus-fixup-rule.
|
|
13530
|
-
|
|
13531
|
-
const interval = setInterval(() => {
|
|
13532
|
-
if (doc.activeElement.tagName === 'BODY') {
|
|
13533
|
-
contain();
|
|
13534
|
-
}
|
|
13535
|
-
}, 50);
|
|
13536
|
-
return () => {
|
|
13537
|
-
clearInterval(interval);
|
|
13538
|
-
doc.removeEventListener('focusin', contain);
|
|
13539
|
-
doc.removeEventListener('keydown', loopFocus, true);
|
|
13540
|
-
};
|
|
13541
|
-
}, [disableAutoFocus, disableEnforceFocus, disableRestoreFocus, isEnabled, open, getTabbable]);
|
|
13542
|
-
|
|
13543
|
-
const onFocus = event => {
|
|
13544
|
-
if (nodeToRestore.current === null) {
|
|
13545
|
-
nodeToRestore.current = event.relatedTarget;
|
|
13546
|
-
}
|
|
13547
|
-
|
|
13548
|
-
activated.current = true;
|
|
13549
|
-
reactFocusEventTarget.current = event.target;
|
|
13550
|
-
const childrenPropsHandler = children.props.onFocus;
|
|
13551
|
-
|
|
13552
|
-
if (childrenPropsHandler) {
|
|
13553
|
-
childrenPropsHandler(event);
|
|
13554
|
-
}
|
|
13555
|
-
};
|
|
13556
|
-
|
|
13557
|
-
const handleFocusSentinel = event => {
|
|
13558
|
-
if (nodeToRestore.current === null) {
|
|
13559
|
-
nodeToRestore.current = event.relatedTarget;
|
|
13560
|
-
}
|
|
13561
|
-
|
|
13562
|
-
activated.current = true;
|
|
13563
|
-
};
|
|
13564
|
-
|
|
13565
|
-
return /*#__PURE__*/jsxRuntime_2(React__namespace.Fragment, {
|
|
13566
|
-
children: [/*#__PURE__*/jsxRuntime_1("div", {
|
|
13567
|
-
tabIndex: open ? 0 : -1,
|
|
13568
|
-
onFocus: handleFocusSentinel,
|
|
13569
|
-
ref: sentinelStart,
|
|
13570
|
-
"data-testid": "sentinelStart"
|
|
13571
|
-
}), /*#__PURE__*/React__namespace.cloneElement(children, {
|
|
13572
|
-
ref: handleRef,
|
|
13573
|
-
onFocus
|
|
13574
|
-
}), /*#__PURE__*/jsxRuntime_1("div", {
|
|
13575
|
-
tabIndex: open ? 0 : -1,
|
|
13576
|
-
onFocus: handleFocusSentinel,
|
|
13577
|
-
ref: sentinelEnd,
|
|
13578
|
-
"data-testid": "sentinelEnd"
|
|
13579
|
-
})]
|
|
13580
|
-
});
|
|
13581
|
-
}
|
|
13582
|
-
|
|
13583
|
-
TrapFocus.propTypes
|
|
13584
|
-
/* remove-proptypes */
|
|
13585
|
-
= {
|
|
13586
|
-
// ----------------------------- Warning --------------------------------
|
|
13587
|
-
// | These PropTypes are generated from the TypeScript type definitions |
|
|
13588
|
-
// | To update them edit the d.ts file and run "yarn proptypes" |
|
|
13589
|
-
// ----------------------------------------------------------------------
|
|
13590
|
-
|
|
13591
|
-
/**
|
|
13592
|
-
* A single child content element.
|
|
13593
|
-
*/
|
|
13594
|
-
children: elementAcceptingRef$1,
|
|
13595
|
-
|
|
13596
|
-
/**
|
|
13597
|
-
* If `true`, the trap focus will not automatically shift focus to itself when it opens, and
|
|
13598
|
-
* replace it to the last focused element when it closes.
|
|
13599
|
-
* This also works correctly with any trap focus children that have the `disableAutoFocus` prop.
|
|
13600
|
-
*
|
|
13601
|
-
* Generally this should never be set to `true` as it makes the trap focus less
|
|
13602
|
-
* accessible to assistive technologies, like screen readers.
|
|
13603
|
-
* @default false
|
|
13604
|
-
*/
|
|
13605
|
-
disableAutoFocus: PropTypes.bool,
|
|
13606
|
-
|
|
13607
|
-
/**
|
|
13608
|
-
* If `true`, the trap focus will not prevent focus from leaving the trap focus while open.
|
|
13609
|
-
*
|
|
13610
|
-
* Generally this should never be set to `true` as it makes the trap focus less
|
|
13611
|
-
* accessible to assistive technologies, like screen readers.
|
|
13612
|
-
* @default false
|
|
13613
|
-
*/
|
|
13614
|
-
disableEnforceFocus: PropTypes.bool,
|
|
13615
|
-
|
|
13616
|
-
/**
|
|
13617
|
-
* If `true`, the trap focus will not restore focus to previously focused element once
|
|
13618
|
-
* trap focus is hidden or unmounted.
|
|
13619
|
-
* @default false
|
|
13620
|
-
*/
|
|
13621
|
-
disableRestoreFocus: PropTypes.bool,
|
|
13622
|
-
|
|
13623
|
-
/**
|
|
13624
|
-
* Returns an array of ordered tabbable nodes (i.e. in tab order) within the root.
|
|
13625
|
-
* For instance, you can provide the "tabbable" npm dependency.
|
|
13626
|
-
* @param {HTMLElement} root
|
|
13627
|
-
*/
|
|
13628
|
-
getTabbable: PropTypes.func,
|
|
13629
|
-
|
|
13630
|
-
/**
|
|
13631
|
-
* This prop extends the `open` prop.
|
|
13632
|
-
* It allows to toggle the open state without having to wait for a rerender when changing the `open` prop.
|
|
13633
|
-
* This prop should be memoized.
|
|
13634
|
-
* It can be used to support multiple trap focus mounted at the same time.
|
|
13635
|
-
* @default function defaultIsEnabled() {
|
|
13636
|
-
* return true;
|
|
13637
|
-
* }
|
|
13638
|
-
*/
|
|
13639
|
-
isEnabled: PropTypes.func,
|
|
13640
|
-
|
|
13641
|
-
/**
|
|
13642
|
-
* If `true`, focus is locked.
|
|
13643
|
-
*/
|
|
13644
|
-
open: PropTypes.bool.isRequired
|
|
13645
|
-
} ;
|
|
13646
|
-
|
|
13647
|
-
{
|
|
13648
|
-
// eslint-disable-next-line
|
|
13649
|
-
TrapFocus['propTypes' + ''] = exactProp(TrapFocus.propTypes);
|
|
13650
|
-
}
|
|
13651
|
-
|
|
13652
13662
|
function getModalUtilityClass(slot) {
|
|
13653
13663
|
return generateUtilityClass('MuiModal', slot);
|
|
13654
13664
|
}
|
|
@@ -13910,7 +13920,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
13910
13920
|
container: container,
|
|
13911
13921
|
disablePortal: disablePortal,
|
|
13912
13922
|
children: /*#__PURE__*/jsxRuntime_2(Root, _extends({}, rootProps, {
|
|
13913
|
-
children: [!hideBackdrop && BackdropComponent ? /*#__PURE__*/jsxRuntime_1(BackdropComponent, _extends({}, backdropProps)) : null, /*#__PURE__*/jsxRuntime_1(
|
|
13923
|
+
children: [!hideBackdrop && BackdropComponent ? /*#__PURE__*/jsxRuntime_1(BackdropComponent, _extends({}, backdropProps)) : null, /*#__PURE__*/jsxRuntime_1(FocusTrap, {
|
|
13914
13924
|
disableEnforceFocus: disableEnforceFocus,
|
|
13915
13925
|
disableAutoFocus: disableAutoFocus,
|
|
13916
13926
|
disableRestoreFocus: disableRestoreFocus,
|
|
@@ -14524,8 +14534,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
14524
14534
|
|
|
14525
14535
|
const getFingerNewValue = ({
|
|
14526
14536
|
finger,
|
|
14527
|
-
move = false
|
|
14528
|
-
values: values2
|
|
14537
|
+
move = false
|
|
14529
14538
|
}) => {
|
|
14530
14539
|
const {
|
|
14531
14540
|
current: slider
|
|
@@ -14563,19 +14572,19 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
14563
14572
|
|
|
14564
14573
|
if (range) {
|
|
14565
14574
|
if (!move) {
|
|
14566
|
-
activeIndex = findClosest(
|
|
14575
|
+
activeIndex = findClosest(values, newValue);
|
|
14567
14576
|
} else {
|
|
14568
14577
|
activeIndex = previousIndex.current;
|
|
14569
14578
|
} // Bound the new value to the thumb's neighbours.
|
|
14570
14579
|
|
|
14571
14580
|
|
|
14572
14581
|
if (disableSwap) {
|
|
14573
|
-
newValue = clamp$2(newValue,
|
|
14582
|
+
newValue = clamp$2(newValue, values[activeIndex - 1] || -Infinity, values[activeIndex + 1] || Infinity);
|
|
14574
14583
|
}
|
|
14575
14584
|
|
|
14576
14585
|
const previousValue = newValue;
|
|
14577
14586
|
newValue = setValueIndex({
|
|
14578
|
-
values
|
|
14587
|
+
values,
|
|
14579
14588
|
newValue,
|
|
14580
14589
|
index: activeIndex
|
|
14581
14590
|
}); // Potentially swap the index if needed.
|
|
@@ -14613,8 +14622,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
14613
14622
|
activeIndex
|
|
14614
14623
|
} = getFingerNewValue({
|
|
14615
14624
|
finger,
|
|
14616
|
-
move: true
|
|
14617
|
-
values
|
|
14625
|
+
move: true
|
|
14618
14626
|
});
|
|
14619
14627
|
focusThumb({
|
|
14620
14628
|
sliderRef,
|
|
@@ -14627,7 +14635,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
14627
14635
|
setDragging(true);
|
|
14628
14636
|
}
|
|
14629
14637
|
|
|
14630
|
-
if (handleChange) {
|
|
14638
|
+
if (handleChange && newValue !== valueDerived) {
|
|
14631
14639
|
handleChange(nativeEvent, newValue, activeIndex);
|
|
14632
14640
|
}
|
|
14633
14641
|
});
|
|
@@ -14643,8 +14651,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
14643
14651
|
newValue
|
|
14644
14652
|
} = getFingerNewValue({
|
|
14645
14653
|
finger,
|
|
14646
|
-
move: true
|
|
14647
|
-
values
|
|
14654
|
+
move: true
|
|
14648
14655
|
});
|
|
14649
14656
|
setActive(-1);
|
|
14650
14657
|
|
|
@@ -14684,8 +14691,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
14684
14691
|
newValue,
|
|
14685
14692
|
activeIndex
|
|
14686
14693
|
} = getFingerNewValue({
|
|
14687
|
-
finger
|
|
14688
|
-
values
|
|
14694
|
+
finger
|
|
14689
14695
|
});
|
|
14690
14696
|
focusThumb({
|
|
14691
14697
|
sliderRef,
|
|
@@ -14759,8 +14765,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
14759
14765
|
newValue,
|
|
14760
14766
|
activeIndex
|
|
14761
14767
|
} = getFingerNewValue({
|
|
14762
|
-
finger
|
|
14763
|
-
values
|
|
14768
|
+
finger
|
|
14764
14769
|
});
|
|
14765
14770
|
focusThumb({
|
|
14766
14771
|
sliderRef,
|
|
@@ -14930,7 +14935,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
14930
14935
|
componentsProps = {}
|
|
14931
14936
|
} = props,
|
|
14932
14937
|
other = _objectWithoutPropertiesLoose(props, _excluded$29); // all props with defaults
|
|
14933
|
-
// consider extracting to hook an reusing the lint rule for the
|
|
14938
|
+
// consider extracting to hook an reusing the lint rule for the variants
|
|
14934
14939
|
|
|
14935
14940
|
|
|
14936
14941
|
const ownerState = _extends({}, props, {
|
|
@@ -15059,7 +15064,7 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
15059
15064
|
className: clsx(classes.markLabel, markLabelProps.className, markActive && classes.markLabelActive),
|
|
15060
15065
|
children: mark.label
|
|
15061
15066
|
})) : null]
|
|
15062
|
-
},
|
|
15067
|
+
}, index);
|
|
15063
15068
|
}), values.map((value, index) => {
|
|
15064
15069
|
const percent = valueToPercent(value, min, max);
|
|
15065
15070
|
const style = axisProps[axis].offset(percent);
|
|
@@ -15503,8 +15508,6 @@ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rg
|
|
|
15503
15508
|
// ResizeObserver's handler that runs because of the change in the layout is trying to
|
|
15504
15509
|
// access a dom node that is no longer there (as the fallback component is being shown instead).
|
|
15505
15510
|
// See https://github.com/mui/material-ui/issues/32640
|
|
15506
|
-
// TODO: Add tests that will ensure the component is not failing when
|
|
15507
|
-
// replaced by Suspense with a fallback, once React is updated to version 18
|
|
15508
15511
|
|
|
15509
15512
|
if (inputRef.current) {
|
|
15510
15513
|
syncHeightWithFlushSycn();
|
|
@@ -16677,7 +16680,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
16677
16680
|
var Paper$1 = Paper;
|
|
16678
16681
|
|
|
16679
16682
|
const _excluded$22 = ["colorSchemes", "cssVarPrefix"],
|
|
16680
|
-
_excluded2$
|
|
16683
|
+
_excluded2$9 = ["palette"];
|
|
16681
16684
|
const defaultDarkOverlays = [...Array(25)].map((_, index) => {
|
|
16682
16685
|
if (index === 0) {
|
|
16683
16686
|
return undefined;
|
|
@@ -16717,7 +16720,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
16717
16720
|
{
|
|
16718
16721
|
palette: lightPalette
|
|
16719
16722
|
} = _createThemeWithoutVa,
|
|
16720
|
-
muiTheme = _objectWithoutPropertiesLoose(_createThemeWithoutVa, _excluded2$
|
|
16723
|
+
muiTheme = _objectWithoutPropertiesLoose(_createThemeWithoutVa, _excluded2$9);
|
|
16721
16724
|
|
|
16722
16725
|
const {
|
|
16723
16726
|
palette: darkPalette
|
|
@@ -16935,6 +16938,13 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
16935
16938
|
return theme;
|
|
16936
16939
|
}
|
|
16937
16940
|
|
|
16941
|
+
/**
|
|
16942
|
+
* @internal These variables should not appear in the :root stylesheet when the `defaultMode="dark"`
|
|
16943
|
+
*/
|
|
16944
|
+
const excludeVariablesFromRoot = cssVarPrefix => [...[...Array(24)].map((_, index) => `--${cssVarPrefix ? `${cssVarPrefix}-` : ''}overlays-${index + 1}`), `--${cssVarPrefix ? `${cssVarPrefix}-` : ''}palette-AppBar-darkBg`, `--${cssVarPrefix ? `${cssVarPrefix}-` : ''}palette-AppBar-darkColor`];
|
|
16945
|
+
|
|
16946
|
+
var excludeVariablesFromRoot$1 = excludeVariablesFromRoot;
|
|
16947
|
+
|
|
16938
16948
|
const shouldSkipGeneratingVar = keys => {
|
|
16939
16949
|
var _keys$;
|
|
16940
16950
|
|
|
@@ -16962,7 +16972,8 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
16962
16972
|
|
|
16963
16973
|
return newTheme;
|
|
16964
16974
|
},
|
|
16965
|
-
shouldSkipGeneratingVar
|
|
16975
|
+
shouldSkipGeneratingVar,
|
|
16976
|
+
excludeVariablesFromRoot: excludeVariablesFromRoot$1
|
|
16966
16977
|
});
|
|
16967
16978
|
|
|
16968
16979
|
function getSvgIconUtilityClass(slot) {
|
|
@@ -17014,7 +17025,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
17014
17025
|
inherit: 'inherit',
|
|
17015
17026
|
small: ((_theme$typography = theme.typography) == null ? void 0 : (_theme$typography$pxT = _theme$typography.pxToRem) == null ? void 0 : _theme$typography$pxT.call(_theme$typography, 20)) || '1.25rem',
|
|
17016
17027
|
medium: ((_theme$typography2 = theme.typography) == null ? void 0 : (_theme$typography2$px = _theme$typography2.pxToRem) == null ? void 0 : _theme$typography2$px.call(_theme$typography2, 24)) || '1.5rem',
|
|
17017
|
-
large: ((_theme$typography3 = theme.typography) == null ? void 0 : (_theme$typography3$px = _theme$typography3.pxToRem) == null ? void 0 : _theme$typography3$px.call(_theme$typography3, 35)) || '2.
|
|
17028
|
+
large: ((_theme$typography3 = theme.typography) == null ? void 0 : (_theme$typography3$px = _theme$typography3.pxToRem) == null ? void 0 : _theme$typography3$px.call(_theme$typography3, 35)) || '2.1875rem'
|
|
17018
17029
|
}[ownerState.fontSize],
|
|
17019
17030
|
// TODO v5 deprecate, v6 remove for sx
|
|
17020
17031
|
color: (_palette$ownerState$c = (_palette = (theme.vars || theme).palette) == null ? void 0 : (_palette$ownerState$c2 = _palette[ownerState.color]) == null ? void 0 : _palette$ownerState$c2.main) != null ? _palette$ownerState$c : {
|
|
@@ -17062,13 +17073,13 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
17062
17073
|
return /*#__PURE__*/jsxRuntime_2(SvgIconRoot, _extends({
|
|
17063
17074
|
as: component,
|
|
17064
17075
|
className: clsx(classes.root, className),
|
|
17065
|
-
ownerState: ownerState,
|
|
17066
17076
|
focusable: "false",
|
|
17067
17077
|
color: htmlColor,
|
|
17068
17078
|
"aria-hidden": titleAccess ? undefined : true,
|
|
17069
17079
|
role: titleAccess ? 'img' : undefined,
|
|
17070
17080
|
ref: ref
|
|
17071
17081
|
}, more, other, {
|
|
17082
|
+
ownerState: ownerState,
|
|
17072
17083
|
children: [children, titleAccess ? /*#__PURE__*/jsxRuntime_1("title", {
|
|
17073
17084
|
children: titleAccess
|
|
17074
17085
|
}) : null]
|
|
@@ -21547,7 +21558,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
21547
21558
|
function getChipUtilityClass(slot) {
|
|
21548
21559
|
return generateUtilityClass('MuiChip', slot);
|
|
21549
21560
|
}
|
|
21550
|
-
const chipClasses = generateUtilityClasses('MuiChip', ['root', 'sizeSmall', 'sizeMedium', 'colorPrimary', 'colorSecondary', 'disabled', 'clickable', 'clickableColorPrimary', 'clickableColorSecondary', 'deletable', 'deletableColorPrimary', 'deletableColorSecondary', 'outlined', 'filled', 'outlinedPrimary', 'outlinedSecondary', 'filledPrimary', 'filledSecondary', 'avatar', 'avatarSmall', 'avatarMedium', 'avatarColorPrimary', 'avatarColorSecondary', 'icon', 'iconSmall', 'iconMedium', 'iconColorPrimary', 'iconColorSecondary', 'label', 'labelSmall', 'labelMedium', 'deleteIcon', 'deleteIconSmall', 'deleteIconMedium', 'deleteIconColorPrimary', 'deleteIconColorSecondary', 'deleteIconOutlinedColorPrimary', 'deleteIconOutlinedColorSecondary', 'deleteIconFilledColorPrimary', 'deleteIconFilledColorSecondary', 'focusVisible']);
|
|
21561
|
+
const chipClasses = generateUtilityClasses('MuiChip', ['root', 'sizeSmall', 'sizeMedium', 'colorError', 'colorInfo', 'colorPrimary', 'colorSecondary', 'colorSuccess', 'colorWarning', 'disabled', 'clickable', 'clickableColorPrimary', 'clickableColorSecondary', 'deletable', 'deletableColorPrimary', 'deletableColorSecondary', 'outlined', 'filled', 'outlinedPrimary', 'outlinedSecondary', 'filledPrimary', 'filledSecondary', 'avatar', 'avatarSmall', 'avatarMedium', 'avatarColorPrimary', 'avatarColorSecondary', 'icon', 'iconSmall', 'iconMedium', 'iconColorPrimary', 'iconColorSecondary', 'label', 'labelSmall', 'labelMedium', 'deleteIcon', 'deleteIconSmall', 'deleteIconMedium', 'deleteIconColorPrimary', 'deleteIconColorSecondary', 'deleteIconOutlinedColorPrimary', 'deleteIconOutlinedColorSecondary', 'deleteIconFilledColorPrimary', 'deleteIconFilledColorSecondary', 'focusVisible']);
|
|
21551
21562
|
var chipClasses$1 = chipClasses;
|
|
21552
21563
|
|
|
21553
21564
|
const _excluded$1P = ["avatar", "className", "clickable", "color", "component", "deleteIcon", "disabled", "icon", "label", "onClick", "onDelete", "onKeyDown", "onKeyUp", "size", "variant"];
|
|
@@ -25859,8 +25870,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
25859
25870
|
|
|
25860
25871
|
var ButtonGroupContext$1 = ButtonGroupContext;
|
|
25861
25872
|
|
|
25862
|
-
const _excluded$1E = ["children", "color", "component", "className", "disabled", "disableElevation", "disableFocusRipple", "endIcon", "focusVisibleClassName", "fullWidth", "size", "startIcon", "type", "variant"]
|
|
25863
|
-
_excluded2$9 = ["root"];
|
|
25873
|
+
const _excluded$1E = ["children", "color", "component", "className", "disabled", "disableElevation", "disableFocusRipple", "endIcon", "focusVisibleClassName", "fullWidth", "size", "startIcon", "type", "variant"];
|
|
25864
25874
|
|
|
25865
25875
|
const useUtilityClasses$1n = ownerState => {
|
|
25866
25876
|
const {
|
|
@@ -26104,11 +26114,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
26104
26114
|
variant
|
|
26105
26115
|
});
|
|
26106
26116
|
|
|
26107
|
-
const
|
|
26108
|
-
{
|
|
26109
|
-
root: classesRoot
|
|
26110
|
-
} = _useUtilityClasses,
|
|
26111
|
-
classes = _objectWithoutPropertiesLoose(_useUtilityClasses, _excluded2$9);
|
|
26117
|
+
const classes = useUtilityClasses$1n(ownerState);
|
|
26112
26118
|
|
|
26113
26119
|
const startIcon = startIconProp && /*#__PURE__*/jsxRuntime_1(ButtonStartIcon, {
|
|
26114
26120
|
className: classes.startIcon,
|
|
@@ -26124,7 +26130,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
26124
26130
|
|
|
26125
26131
|
return /*#__PURE__*/jsxRuntime_2(ButtonRoot, _extends({
|
|
26126
26132
|
ownerState: ownerState,
|
|
26127
|
-
className: clsx(contextProps.className,
|
|
26133
|
+
className: clsx(contextProps.className, classes.root, className),
|
|
26128
26134
|
component: component,
|
|
26129
26135
|
disabled: disabled,
|
|
26130
26136
|
focusRipple: !disableFocusRipple,
|
|
@@ -27612,7 +27618,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
27612
27618
|
const checkboxClasses = generateUtilityClasses('MuiCheckbox', ['root', 'checked', 'disabled', 'indeterminate', 'colorPrimary', 'colorSecondary']);
|
|
27613
27619
|
var checkboxClasses$1 = checkboxClasses;
|
|
27614
27620
|
|
|
27615
|
-
const _excluded$1v = ["checkedIcon", "color", "icon", "indeterminate", "indeterminateIcon", "inputProps", "size"];
|
|
27621
|
+
const _excluded$1v = ["checkedIcon", "color", "icon", "indeterminate", "indeterminateIcon", "inputProps", "size", "className"];
|
|
27616
27622
|
|
|
27617
27623
|
const useUtilityClasses$1e = ownerState => {
|
|
27618
27624
|
const {
|
|
@@ -27680,7 +27686,8 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
27680
27686
|
indeterminate = false,
|
|
27681
27687
|
indeterminateIcon: indeterminateIconProp = defaultIndeterminateIcon,
|
|
27682
27688
|
inputProps,
|
|
27683
|
-
size = 'medium'
|
|
27689
|
+
size = 'medium',
|
|
27690
|
+
className
|
|
27684
27691
|
} = props,
|
|
27685
27692
|
other = _objectWithoutPropertiesLoose(props, _excluded$1v);
|
|
27686
27693
|
|
|
@@ -27706,7 +27713,8 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
27706
27713
|
fontSize: (_indeterminateIcon$pr = indeterminateIcon.props.fontSize) != null ? _indeterminateIcon$pr : size
|
|
27707
27714
|
}),
|
|
27708
27715
|
ownerState: ownerState,
|
|
27709
|
-
ref: ref
|
|
27716
|
+
ref: ref,
|
|
27717
|
+
className: clsx(classes.root, className)
|
|
27710
27718
|
}, other, {
|
|
27711
27719
|
classes: classes
|
|
27712
27720
|
}));
|
|
@@ -27735,6 +27743,11 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
27735
27743
|
*/
|
|
27736
27744
|
classes: PropTypes.object,
|
|
27737
27745
|
|
|
27746
|
+
/**
|
|
27747
|
+
* @ignore
|
|
27748
|
+
*/
|
|
27749
|
+
className: PropTypes.string,
|
|
27750
|
+
|
|
27738
27751
|
/**
|
|
27739
27752
|
* The color of the component.
|
|
27740
27753
|
* It supports both default and custom theme colors, which can be added as shown in the
|
|
@@ -29233,7 +29246,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
29233
29246
|
const dialogContentTextClasses = generateUtilityClasses('MuiDialogContentText', ['root']);
|
|
29234
29247
|
var dialogContentTextClasses$1 = dialogContentTextClasses;
|
|
29235
29248
|
|
|
29236
|
-
const _excluded$1p = ["children"];
|
|
29249
|
+
const _excluded$1p = ["children", "className"];
|
|
29237
29250
|
|
|
29238
29251
|
const useUtilityClasses$19 = ownerState => {
|
|
29239
29252
|
const {
|
|
@@ -29258,7 +29271,10 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
29258
29271
|
name: 'MuiDialogContentText'
|
|
29259
29272
|
});
|
|
29260
29273
|
|
|
29261
|
-
const
|
|
29274
|
+
const {
|
|
29275
|
+
className
|
|
29276
|
+
} = props,
|
|
29277
|
+
ownerState = _objectWithoutPropertiesLoose(props, _excluded$1p);
|
|
29262
29278
|
|
|
29263
29279
|
const classes = useUtilityClasses$19(ownerState);
|
|
29264
29280
|
return /*#__PURE__*/jsxRuntime_1(DialogContentTextRoot, _extends({
|
|
@@ -29266,7 +29282,8 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
29266
29282
|
variant: "body1",
|
|
29267
29283
|
color: "text.secondary",
|
|
29268
29284
|
ref: ref,
|
|
29269
|
-
ownerState: ownerState
|
|
29285
|
+
ownerState: ownerState,
|
|
29286
|
+
className: clsx(classes.root, className)
|
|
29270
29287
|
}, props, {
|
|
29271
29288
|
classes: classes
|
|
29272
29289
|
}));
|
|
@@ -29289,6 +29306,11 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
29289
29306
|
*/
|
|
29290
29307
|
classes: PropTypes.object,
|
|
29291
29308
|
|
|
29309
|
+
/**
|
|
29310
|
+
* @ignore
|
|
29311
|
+
*/
|
|
29312
|
+
className: PropTypes.string,
|
|
29313
|
+
|
|
29292
29314
|
/**
|
|
29293
29315
|
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
29294
29316
|
*/
|
|
@@ -30343,12 +30365,14 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
30343
30365
|
const slots = {
|
|
30344
30366
|
root: ['root', variant, `size${capitalize(size)}`, color === 'inherit' ? 'colorInherit' : color]
|
|
30345
30367
|
};
|
|
30346
|
-
|
|
30368
|
+
const composedClasses = composeClasses(slots, getFabUtilityClass, classes);
|
|
30369
|
+
return _extends({}, classes, composedClasses);
|
|
30347
30370
|
};
|
|
30348
30371
|
|
|
30349
30372
|
const FabRoot = styled$1(ButtonBase$1, {
|
|
30350
30373
|
name: 'MuiFab',
|
|
30351
30374
|
slot: 'Root',
|
|
30375
|
+
shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',
|
|
30352
30376
|
overridesResolver: (props, styles) => {
|
|
30353
30377
|
const {
|
|
30354
30378
|
ownerState
|
|
@@ -30474,6 +30498,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
30474
30498
|
ownerState: ownerState,
|
|
30475
30499
|
ref: ref
|
|
30476
30500
|
}, other, {
|
|
30501
|
+
classes: classes,
|
|
30477
30502
|
children: children
|
|
30478
30503
|
}));
|
|
30479
30504
|
});
|
|
@@ -34953,7 +34978,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
34953
34978
|
const inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);
|
|
34954
34979
|
var inputLabelClasses$1 = inputLabelClasses;
|
|
34955
34980
|
|
|
34956
|
-
const _excluded$12 = ["disableAnimation", "margin", "shrink", "variant"];
|
|
34981
|
+
const _excluded$12 = ["disableAnimation", "margin", "shrink", "variant", "className"];
|
|
34957
34982
|
|
|
34958
34983
|
const useUtilityClasses$S = ownerState => {
|
|
34959
34984
|
const {
|
|
@@ -35053,7 +35078,8 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
35053
35078
|
|
|
35054
35079
|
const {
|
|
35055
35080
|
disableAnimation = false,
|
|
35056
|
-
shrink: shrinkProp
|
|
35081
|
+
shrink: shrinkProp,
|
|
35082
|
+
className
|
|
35057
35083
|
} = props,
|
|
35058
35084
|
other = _objectWithoutPropertiesLoose(props, _excluded$12);
|
|
35059
35085
|
|
|
@@ -35083,7 +35109,8 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
35083
35109
|
return /*#__PURE__*/jsxRuntime_1(InputLabelRoot, _extends({
|
|
35084
35110
|
"data-shrink": shrink,
|
|
35085
35111
|
ownerState: ownerState,
|
|
35086
|
-
ref: ref
|
|
35112
|
+
ref: ref,
|
|
35113
|
+
className: clsx(classes.root, className)
|
|
35087
35114
|
}, other, {
|
|
35088
35115
|
classes: classes
|
|
35089
35116
|
}));
|
|
@@ -35106,6 +35133,11 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
35106
35133
|
*/
|
|
35107
35134
|
classes: PropTypes.object,
|
|
35108
35135
|
|
|
35136
|
+
/**
|
|
35137
|
+
* @ignore
|
|
35138
|
+
*/
|
|
35139
|
+
className: PropTypes.string,
|
|
35140
|
+
|
|
35109
35141
|
/**
|
|
35110
35142
|
* The color of the component.
|
|
35111
35143
|
* It supports both default and custom theme colors, which can be added as shown in the
|
|
@@ -35959,7 +35991,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
35959
35991
|
const listItemButtonClasses = generateUtilityClasses('MuiListItemButton', ['root', 'focusVisible', 'dense', 'alignItemsFlexStart', 'disabled', 'divider', 'gutters', 'selected']);
|
|
35960
35992
|
var listItemButtonClasses$1 = listItemButtonClasses;
|
|
35961
35993
|
|
|
35962
|
-
const _excluded$_ = ["alignItems", "autoFocus", "component", "children", "dense", "disableGutters", "divider", "focusVisibleClassName", "selected"];
|
|
35994
|
+
const _excluded$_ = ["alignItems", "autoFocus", "component", "children", "dense", "disableGutters", "divider", "focusVisibleClassName", "selected", "className"];
|
|
35963
35995
|
const overridesResolver$3 = (props, styles) => {
|
|
35964
35996
|
const {
|
|
35965
35997
|
ownerState
|
|
@@ -36061,7 +36093,8 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
36061
36093
|
disableGutters = false,
|
|
36062
36094
|
divider = false,
|
|
36063
36095
|
focusVisibleClassName,
|
|
36064
|
-
selected = false
|
|
36096
|
+
selected = false,
|
|
36097
|
+
className
|
|
36065
36098
|
} = props,
|
|
36066
36099
|
other = _objectWithoutPropertiesLoose(props, _excluded$_);
|
|
36067
36100
|
|
|
@@ -36099,7 +36132,8 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
36099
36132
|
href: other.href || other.to,
|
|
36100
36133
|
component: (other.href || other.to) && component === 'div' ? 'a' : component,
|
|
36101
36134
|
focusVisibleClassName: clsx(classes.focusVisible, focusVisibleClassName),
|
|
36102
|
-
ownerState: ownerState
|
|
36135
|
+
ownerState: ownerState,
|
|
36136
|
+
className: clsx(classes.root, className)
|
|
36103
36137
|
}, other, {
|
|
36104
36138
|
classes: classes,
|
|
36105
36139
|
children: children
|
|
@@ -36138,6 +36172,11 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
36138
36172
|
*/
|
|
36139
36173
|
classes: PropTypes.object,
|
|
36140
36174
|
|
|
36175
|
+
/**
|
|
36176
|
+
* @ignore
|
|
36177
|
+
*/
|
|
36178
|
+
className: PropTypes.string,
|
|
36179
|
+
|
|
36141
36180
|
/**
|
|
36142
36181
|
* The component used for the root node.
|
|
36143
36182
|
* Either a string to use a HTML element or a component.
|
|
@@ -37683,6 +37722,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
37683
37722
|
}, PaperProps, {
|
|
37684
37723
|
ref: handlePaperRef,
|
|
37685
37724
|
className: clsx(classes.paper, PaperProps.className),
|
|
37725
|
+
ownerState: ownerState,
|
|
37686
37726
|
children: children
|
|
37687
37727
|
}))
|
|
37688
37728
|
}))
|
|
@@ -38156,7 +38196,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
38156
38196
|
const menuItemClasses = generateUtilityClasses('MuiMenuItem', ['root', 'focusVisible', 'dense', 'disabled', 'divider', 'gutters', 'selected']);
|
|
38157
38197
|
var menuItemClasses$1 = menuItemClasses;
|
|
38158
38198
|
|
|
38159
|
-
const _excluded$R = ["autoFocus", "component", "dense", "divider", "disableGutters", "focusVisibleClassName", "role", "tabIndex"];
|
|
38199
|
+
const _excluded$R = ["autoFocus", "component", "dense", "divider", "disableGutters", "focusVisibleClassName", "role", "tabIndex", "className"];
|
|
38160
38200
|
const overridesResolver$1 = (props, styles) => {
|
|
38161
38201
|
const {
|
|
38162
38202
|
ownerState
|
|
@@ -38278,7 +38318,8 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
38278
38318
|
disableGutters = false,
|
|
38279
38319
|
focusVisibleClassName,
|
|
38280
38320
|
role = 'menuitem',
|
|
38281
|
-
tabIndex: tabIndexProp
|
|
38321
|
+
tabIndex: tabIndexProp,
|
|
38322
|
+
className
|
|
38282
38323
|
} = props,
|
|
38283
38324
|
other = _objectWithoutPropertiesLoose(props, _excluded$R);
|
|
38284
38325
|
|
|
@@ -38319,7 +38360,8 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
38319
38360
|
role: role,
|
|
38320
38361
|
tabIndex: tabIndex,
|
|
38321
38362
|
component: component,
|
|
38322
|
-
focusVisibleClassName: clsx(classes.focusVisible, focusVisibleClassName)
|
|
38363
|
+
focusVisibleClassName: clsx(classes.focusVisible, focusVisibleClassName),
|
|
38364
|
+
className: clsx(classes.root, className)
|
|
38323
38365
|
}, other, {
|
|
38324
38366
|
ownerState: ownerState,
|
|
38325
38367
|
classes: classes
|
|
@@ -38351,6 +38393,11 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
38351
38393
|
*/
|
|
38352
38394
|
classes: PropTypes.object,
|
|
38353
38395
|
|
|
38396
|
+
/**
|
|
38397
|
+
* @ignore
|
|
38398
|
+
*/
|
|
38399
|
+
className: PropTypes.string,
|
|
38400
|
+
|
|
38354
38401
|
/**
|
|
38355
38402
|
* The component used for the root node.
|
|
38356
38403
|
* Either a string to use a HTML element or a component.
|
|
@@ -40343,7 +40390,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
40343
40390
|
const radioClasses = generateUtilityClasses('MuiRadio', ['root', 'checked', 'disabled', 'colorPrimary', 'colorSecondary']);
|
|
40344
40391
|
var radioClasses$1 = radioClasses;
|
|
40345
40392
|
|
|
40346
|
-
const _excluded$I = ["checked", "checkedIcon", "color", "icon", "name", "onChange", "size"];
|
|
40393
|
+
const _excluded$I = ["checked", "checkedIcon", "color", "icon", "name", "onChange", "size", "className"];
|
|
40347
40394
|
|
|
40348
40395
|
const useUtilityClasses$z = ownerState => {
|
|
40349
40396
|
const {
|
|
@@ -40418,7 +40465,8 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
40418
40465
|
icon = defaultIcon$1,
|
|
40419
40466
|
name: nameProp,
|
|
40420
40467
|
onChange: onChangeProp,
|
|
40421
|
-
size = 'medium'
|
|
40468
|
+
size = 'medium',
|
|
40469
|
+
className
|
|
40422
40470
|
} = props,
|
|
40423
40471
|
other = _objectWithoutPropertiesLoose(props, _excluded$I);
|
|
40424
40472
|
|
|
@@ -40456,7 +40504,8 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
40456
40504
|
name: name,
|
|
40457
40505
|
checked: checked,
|
|
40458
40506
|
onChange: onChange,
|
|
40459
|
-
ref: ref
|
|
40507
|
+
ref: ref,
|
|
40508
|
+
className: clsx(classes.root, className)
|
|
40460
40509
|
}, other));
|
|
40461
40510
|
});
|
|
40462
40511
|
Radio.propTypes
|
|
@@ -40483,6 +40532,11 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
40483
40532
|
*/
|
|
40484
40533
|
classes: PropTypes.object,
|
|
40485
40534
|
|
|
40535
|
+
/**
|
|
40536
|
+
* @ignore
|
|
40537
|
+
*/
|
|
40538
|
+
className: PropTypes.string,
|
|
40539
|
+
|
|
40486
40540
|
/**
|
|
40487
40541
|
* The color of the component.
|
|
40488
40542
|
* It supports both default and custom theme colors, which can be added as shown in the
|
|
@@ -45275,7 +45329,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
45275
45329
|
const handleFocusRef = useForkRef(focusVisibleRef, handleUseRef);
|
|
45276
45330
|
const handleRef = useForkRef(children.ref, handleFocusRef); // There is no point in displaying an empty tooltip.
|
|
45277
45331
|
|
|
45278
|
-
if (title
|
|
45332
|
+
if (typeof title !== 'number' && !title) {
|
|
45279
45333
|
open = false;
|
|
45280
45334
|
}
|
|
45281
45335
|
|
|
@@ -45617,11 +45671,9 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
45617
45671
|
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
|
|
45618
45672
|
|
|
45619
45673
|
/**
|
|
45620
|
-
* Tooltip title. Zero-length titles string are never displayed.
|
|
45674
|
+
* Tooltip title. Zero-length titles string, undefined, null and false are never displayed.
|
|
45621
45675
|
*/
|
|
45622
|
-
title: PropTypes
|
|
45623
|
-
/* @typescript-to-proptypes-ignore */
|
|
45624
|
-
.node.isRequired,
|
|
45676
|
+
title: PropTypes.node,
|
|
45625
45677
|
|
|
45626
45678
|
/**
|
|
45627
45679
|
* The component used for the transition.
|
|
@@ -46638,7 +46690,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
46638
46690
|
root: ['root', orientation, error && 'error', disabled && 'disabled', alternativeLabel && 'alternativeLabel'],
|
|
46639
46691
|
label: ['label', active && 'active', completed && 'completed', error && 'error', disabled && 'disabled', alternativeLabel && 'alternativeLabel'],
|
|
46640
46692
|
iconContainer: ['iconContainer', active && 'active', completed && 'completed', error && 'error', disabled && 'disabled', alternativeLabel && 'alternativeLabel'],
|
|
46641
|
-
labelContainer: ['labelContainer']
|
|
46693
|
+
labelContainer: ['labelContainer', alternativeLabel && 'alternativeLabel']
|
|
46642
46694
|
};
|
|
46643
46695
|
return composeClasses(slots, getStepLabelUtilityClass, classes);
|
|
46644
46696
|
};
|
|
@@ -46687,7 +46739,6 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
46687
46739
|
fontWeight: 500
|
|
46688
46740
|
},
|
|
46689
46741
|
[`&.${stepLabelClasses$1.alternativeLabel}`]: {
|
|
46690
|
-
textAlign: 'center',
|
|
46691
46742
|
marginTop: 16
|
|
46692
46743
|
},
|
|
46693
46744
|
[`&.${stepLabelClasses$1.error}`]: {
|
|
@@ -46715,7 +46766,10 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
46715
46766
|
theme
|
|
46716
46767
|
}) => ({
|
|
46717
46768
|
width: '100%',
|
|
46718
|
-
color: (theme.vars || theme).palette.text.secondary
|
|
46769
|
+
color: (theme.vars || theme).palette.text.secondary,
|
|
46770
|
+
[`&.${stepLabelClasses$1.alternativeLabel}`]: {
|
|
46771
|
+
textAlign: 'center'
|
|
46772
|
+
}
|
|
46719
46773
|
}));
|
|
46720
46774
|
const StepLabel = /*#__PURE__*/React__namespace.forwardRef(function StepLabel(inProps, ref) {
|
|
46721
46775
|
const props = useThemeProps({
|
|
@@ -52717,7 +52771,7 @@ See https://mui.com/r/migration-v4/#mui-material-styles for more details.` );
|
|
|
52717
52771
|
exports.Tooltip = Tooltip$1;
|
|
52718
52772
|
exports.Typography = Typography$1;
|
|
52719
52773
|
exports.Unstable_Grid2 = Grid2$1;
|
|
52720
|
-
exports.Unstable_TrapFocus =
|
|
52774
|
+
exports.Unstable_TrapFocus = FocusTrap;
|
|
52721
52775
|
exports.Zoom = Zoom$1;
|
|
52722
52776
|
exports.accordionActionsClasses = accordionActionsClasses$1;
|
|
52723
52777
|
exports.accordionClasses = accordionClasses$1;
|