@mui/material 9.0.0-alpha.2 → 9.0.0-alpha.4
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/Accordion/Accordion.d.mts +0 -14
- package/Accordion/Accordion.d.ts +0 -14
- package/Accordion/Accordion.js +3 -25
- package/Accordion/Accordion.mjs +3 -25
- package/AccordionSummary/AccordionSummary.js +1 -1
- package/AccordionSummary/AccordionSummary.mjs +1 -1
- package/AccordionSummary/accordionSummaryClasses.d.mts +0 -5
- package/AccordionSummary/accordionSummaryClasses.d.ts +0 -5
- package/AccordionSummary/accordionSummaryClasses.js +1 -1
- package/AccordionSummary/accordionSummaryClasses.mjs +1 -1
- package/Alert/Alert.d.mts +0 -23
- package/Alert/Alert.d.ts +0 -23
- package/Alert/Alert.js +4 -36
- package/Alert/Alert.mjs +4 -36
- package/Alert/alertClasses.d.mts +0 -72
- package/Alert/alertClasses.d.ts +0 -72
- package/Alert/alertClasses.js +1 -1
- package/Alert/alertClasses.mjs +1 -1
- package/Autocomplete/Autocomplete.d.mts +26 -60
- package/Autocomplete/Autocomplete.d.ts +26 -60
- package/Autocomplete/Autocomplete.js +76 -119
- package/Autocomplete/Autocomplete.mjs +76 -119
- package/Avatar/Avatar.d.mts +0 -8
- package/Avatar/Avatar.d.ts +0 -8
- package/Avatar/Avatar.js +13 -35
- package/Avatar/Avatar.mjs +13 -35
- package/AvatarGroup/AvatarGroup.d.mts +0 -15
- package/AvatarGroup/AvatarGroup.d.ts +0 -15
- package/AvatarGroup/AvatarGroup.js +1 -18
- package/AvatarGroup/AvatarGroup.mjs +1 -18
- package/Backdrop/Backdrop.d.mts +1 -31
- package/Backdrop/Backdrop.d.ts +1 -31
- package/Backdrop/Backdrop.js +2 -42
- package/Backdrop/Backdrop.mjs +2 -42
- package/Badge/Badge.d.mts +0 -20
- package/Badge/Badge.d.ts +0 -20
- package/Badge/Badge.js +2 -35
- package/Badge/Badge.mjs +2 -35
- package/Box/Box.d.mts +1 -0
- package/Box/Box.d.ts +1 -0
- package/Button/Button.d.mts +1 -0
- package/Button/Button.d.ts +1 -0
- package/Button/Button.js +6 -6
- package/Button/Button.mjs +6 -6
- package/Button/buttonClasses.d.mts +0 -132
- package/Button/buttonClasses.d.ts +0 -132
- package/Button/buttonClasses.js +1 -1
- package/Button/buttonClasses.mjs +1 -1
- package/ButtonBase/ButtonBase.js +16 -2
- package/ButtonBase/ButtonBase.mjs +16 -2
- package/CHANGELOG.md +191 -0
- package/CardHeader/CardHeader.js +5 -1
- package/CardHeader/CardHeader.mjs +5 -1
- package/CircularProgress/CircularProgress.js +2 -2
- package/CircularProgress/CircularProgress.mjs +2 -2
- package/CircularProgress/circularProgressClasses.d.mts +0 -8
- package/CircularProgress/circularProgressClasses.d.ts +0 -8
- package/CircularProgress/circularProgressClasses.js +1 -1
- package/CircularProgress/circularProgressClasses.mjs +1 -1
- package/Divider/Divider.d.mts +1 -6
- package/Divider/Divider.d.ts +1 -6
- package/Divider/Divider.js +2 -18
- package/Divider/Divider.mjs +2 -18
- package/Divider/dividerClasses.d.mts +0 -4
- package/Divider/dividerClasses.d.ts +0 -4
- package/Divider/dividerClasses.js +1 -1
- package/Divider/dividerClasses.mjs +1 -1
- package/FormControlLabel/FormControlLabel.d.mts +1 -14
- package/FormControlLabel/FormControlLabel.d.ts +1 -14
- package/FormControlLabel/FormControlLabel.js +1 -13
- package/FormControlLabel/FormControlLabel.mjs +1 -13
- package/Input/Input.js +2 -1
- package/Input/Input.mjs +2 -1
- package/List/List.d.mts +1 -0
- package/List/List.d.ts +1 -0
- package/ListItemButton/ListItemButton.d.mts +1 -0
- package/ListItemButton/ListItemButton.d.ts +1 -0
- package/ListItemIcon/ListItemIcon.d.mts +1 -0
- package/ListItemIcon/ListItemIcon.d.ts +1 -0
- package/ListItemText/ListItemText.d.mts +1 -0
- package/ListItemText/ListItemText.d.ts +1 -0
- package/ListItemText/ListItemText.js +5 -1
- package/ListItemText/ListItemText.mjs +5 -1
- package/ListSubheader/ListSubheader.d.mts +1 -0
- package/ListSubheader/ListSubheader.d.ts +1 -0
- package/Menu/Menu.d.mts +0 -13
- package/Menu/Menu.d.ts +0 -13
- package/Menu/Menu.js +5 -44
- package/Menu/Menu.mjs +5 -44
- package/MenuItem/MenuItem.js +21 -1
- package/MenuItem/MenuItem.mjs +23 -1
- package/MenuList/MenuList.js +77 -109
- package/MenuList/MenuList.mjs +77 -109
- package/MobileStepper/MobileStepper.d.mts +0 -5
- package/MobileStepper/MobileStepper.d.ts +0 -5
- package/MobileStepper/MobileStepper.js +1 -10
- package/MobileStepper/MobileStepper.mjs +1 -10
- package/Paper/Paper.d.mts +1 -0
- package/Paper/Paper.d.ts +1 -0
- package/Popover/Popover.d.mts +4 -48
- package/Popover/Popover.d.ts +4 -48
- package/Popover/Popover.js +4 -64
- package/Popover/Popover.mjs +4 -64
- package/Popper/Popper.d.mts +0 -17
- package/Popper/Popper.d.ts +0 -17
- package/Popper/Popper.js +2 -26
- package/Popper/Popper.mjs +2 -26
- package/Popper/index.d.mts +1 -0
- package/Popper/index.d.ts +1 -0
- package/Popper/index.js +11 -2
- package/Popper/index.mjs +1 -0
- package/Select/SelectInput.js +50 -55
- package/Select/SelectInput.mjs +47 -52
- package/Select/index.d.mts +1 -0
- package/Select/index.d.ts +1 -0
- package/Select/index.js +12 -0
- package/Select/index.mjs +1 -0
- package/Select/utils/SelectFocusSourceContext.d.mts +4 -0
- package/Select/utils/SelectFocusSourceContext.d.ts +4 -0
- package/Select/utils/SelectFocusSourceContext.js +19 -0
- package/Select/utils/SelectFocusSourceContext.mjs +13 -0
- package/Select/utils/areEqualValues.d.mts +1 -0
- package/Select/utils/areEqualValues.d.ts +1 -0
- package/Select/utils/areEqualValues.js +14 -0
- package/Select/utils/areEqualValues.mjs +8 -0
- package/Select/utils/getOpenInteractionType.d.mts +1 -0
- package/Select/utils/getOpenInteractionType.d.ts +1 -0
- package/Select/utils/getOpenInteractionType.js +18 -0
- package/Select/utils/getOpenInteractionType.mjs +12 -0
- package/Select/utils/index.d.mts +4 -0
- package/Select/utils/index.d.ts +4 -0
- package/Select/utils/index.js +40 -0
- package/Select/utils/index.mjs +4 -0
- package/Select/utils/isEmpty.d.mts +1 -0
- package/Select/utils/isEmpty.d.ts +1 -0
- package/Select/utils/isEmpty.js +9 -0
- package/Select/utils/isEmpty.mjs +3 -0
- package/Slider/Slider.d.mts +109 -77
- package/Slider/Slider.d.ts +109 -77
- package/Slider/Slider.js +42 -119
- package/Slider/Slider.mjs +42 -119
- package/Slider/sliderClasses.d.mts +7 -7
- package/Slider/sliderClasses.d.ts +7 -7
- package/Slider/useSlider.js +50 -14
- package/Slider/useSlider.mjs +50 -14
- package/Snackbar/Snackbar.d.mts +1 -27
- package/Snackbar/Snackbar.d.ts +1 -27
- package/Snackbar/Snackbar.js +5 -58
- package/Snackbar/Snackbar.mjs +5 -58
- package/SpeedDial/SpeedDial.d.mts +0 -13
- package/SpeedDial/SpeedDial.d.ts +0 -13
- package/SpeedDial/SpeedDial.js +15 -40
- package/SpeedDial/SpeedDial.mjs +15 -40
- package/SpeedDialAction/SpeedDialAction.d.mts +0 -28
- package/SpeedDialAction/SpeedDialAction.d.ts +0 -28
- package/SpeedDialAction/SpeedDialAction.js +5 -46
- package/SpeedDialAction/SpeedDialAction.mjs +5 -46
- package/Step/Step.js +7 -5
- package/Step/Step.mjs +7 -5
- package/StepButton/StepButton.js +16 -6
- package/StepButton/StepButton.mjs +16 -6
- package/StepConnector/StepConnector.js +2 -2
- package/StepConnector/StepConnector.mjs +2 -2
- package/StepContent/StepContent.js +2 -2
- package/StepContent/StepContent.mjs +2 -2
- package/StepLabel/StepLabel.js +2 -2
- package/StepLabel/StepLabel.mjs +2 -2
- package/Stepper/Stepper.js +44 -7
- package/Stepper/Stepper.mjs +44 -7
- package/Stepper/StepperContext.d.mts +7 -0
- package/Stepper/StepperContext.d.ts +7 -0
- package/Stepper/StepperContext.js +2 -1
- package/Stepper/StepperContext.mjs +1 -0
- package/Stepper/index.d.mts +0 -1
- package/Stepper/index.d.ts +0 -1
- package/Tab/Tab.js +0 -1
- package/Tab/Tab.mjs +0 -1
- package/TablePagination/TablePagination.d.mts +1 -1
- package/TablePagination/TablePagination.d.ts +1 -1
- package/TablePagination/TablePagination.js +4 -2
- package/TablePagination/TablePagination.mjs +4 -2
- package/Tabs/Tabs.d.mts +2 -33
- package/Tabs/Tabs.d.ts +2 -33
- package/Tabs/Tabs.js +54 -135
- package/Tabs/Tabs.mjs +54 -135
- package/TextField/TextField.d.mts +6 -49
- package/TextField/TextField.d.ts +6 -49
- package/TextField/TextField.js +18 -53
- package/TextField/TextField.mjs +18 -53
- package/Tooltip/Tooltip.d.mts +1 -55
- package/Tooltip/Tooltip.d.ts +1 -55
- package/Tooltip/Tooltip.js +9 -87
- package/Tooltip/Tooltip.mjs +9 -87
- package/Typography/Typography.d.mts +1 -6
- package/Typography/Typography.d.ts +1 -6
- package/Typography/Typography.js +3 -19
- package/Typography/Typography.mjs +3 -19
- package/Typography/typographyClasses.d.mts +0 -5
- package/Typography/typographyClasses.d.ts +0 -5
- package/Typography/typographyClasses.js +1 -1
- package/Typography/typographyClasses.mjs +1 -1
- package/index.d.mts +0 -2
- package/index.d.ts +0 -2
- package/index.js +1 -9
- package/index.mjs +1 -2
- package/locale/amET.js +4 -1
- package/locale/amET.mjs +3 -1
- package/locale/arEG.js +4 -1
- package/locale/arEG.mjs +3 -1
- package/locale/arSA.js +4 -1
- package/locale/arSA.mjs +3 -1
- package/locale/arSD.js +4 -1
- package/locale/arSD.mjs +3 -1
- package/locale/beBY.js +4 -1
- package/locale/beBY.mjs +3 -1
- package/locale/bnBD.js +4 -1
- package/locale/bnBD.mjs +3 -1
- package/locale/caES.js +4 -1
- package/locale/caES.mjs +3 -1
- package/locale/csCZ.js +4 -1
- package/locale/csCZ.mjs +3 -1
- package/locale/daDK.js +4 -1
- package/locale/daDK.mjs +3 -1
- package/locale/deDE.js +4 -1
- package/locale/deDE.mjs +3 -1
- package/locale/elGR.js +4 -1
- package/locale/elGR.mjs +3 -1
- package/locale/esES.js +4 -1
- package/locale/esES.mjs +3 -1
- package/locale/etEE.js +4 -1
- package/locale/etEE.mjs +3 -1
- package/locale/faIR.js +4 -1
- package/locale/faIR.mjs +3 -1
- package/locale/fiFI.js +4 -1
- package/locale/fiFI.mjs +3 -1
- package/locale/frFR.js +4 -1
- package/locale/frFR.mjs +3 -1
- package/locale/heIL.js +4 -1
- package/locale/heIL.mjs +3 -1
- package/locale/hiIN.js +4 -1
- package/locale/hiIN.mjs +3 -1
- package/locale/hrHR.js +5 -1
- package/locale/hrHR.mjs +4 -1
- package/locale/isIS.js +4 -1
- package/locale/isIS.mjs +3 -1
- package/locale/itIT.js +4 -1
- package/locale/itIT.mjs +3 -1
- package/locale/jaJP.js +4 -1
- package/locale/jaJP.mjs +3 -1
- package/locale/khKH.js +4 -1
- package/locale/khKH.mjs +3 -1
- package/locale/kkKZ.js +4 -1
- package/locale/kkKZ.mjs +3 -1
- package/locale/koKR.js +4 -1
- package/locale/koKR.mjs +3 -1
- package/locale/kuCKB.js +4 -1
- package/locale/kuCKB.mjs +3 -1
- package/locale/kuLatn.js +4 -1
- package/locale/kuLatn.mjs +3 -1
- package/locale/mkMK.js +5 -1
- package/locale/mkMK.mjs +4 -1
- package/locale/msMS.js +5 -1
- package/locale/msMS.mjs +4 -1
- package/locale/myMY.js +5 -1
- package/locale/myMY.mjs +4 -1
- package/locale/nbNO.js +4 -1
- package/locale/nbNO.mjs +3 -1
- package/locale/neNP.js +5 -1
- package/locale/neNP.mjs +4 -1
- package/locale/nlNL.js +4 -1
- package/locale/nlNL.mjs +3 -1
- package/locale/nnNO.js +4 -1
- package/locale/nnNO.mjs +3 -1
- package/locale/plPL.js +4 -1
- package/locale/plPL.mjs +3 -1
- package/locale/psAF.js +4 -1
- package/locale/psAF.mjs +3 -1
- package/locale/ptBR.js +4 -1
- package/locale/ptBR.mjs +3 -1
- package/locale/ptPT.js +4 -1
- package/locale/ptPT.mjs +3 -1
- package/locale/roRO.js +4 -1
- package/locale/roRO.mjs +3 -1
- package/locale/ruRU.js +4 -1
- package/locale/ruRU.mjs +3 -1
- package/locale/siLK.js +4 -1
- package/locale/siLK.mjs +3 -1
- package/locale/skSK.js +4 -1
- package/locale/skSK.mjs +3 -1
- package/locale/srRS.js +5 -1
- package/locale/srRS.mjs +4 -1
- package/locale/svSE.js +4 -1
- package/locale/svSE.mjs +3 -1
- package/locale/thTH.js +4 -1
- package/locale/thTH.mjs +3 -1
- package/locale/tlTL.js +5 -1
- package/locale/tlTL.mjs +4 -1
- package/locale/trTR.js +4 -1
- package/locale/trTR.mjs +3 -1
- package/locale/ukUA.js +4 -1
- package/locale/ukUA.mjs +3 -1
- package/locale/urPK.js +4 -1
- package/locale/urPK.mjs +3 -1
- package/locale/utils/buildFormatNumber.d.mts +2 -0
- package/locale/utils/buildFormatNumber.d.ts +2 -0
- package/locale/utils/buildFormatNumber.js +23 -0
- package/locale/utils/buildFormatNumber.mjs +17 -0
- package/locale/viVN.js +4 -1
- package/locale/viVN.mjs +3 -1
- package/locale/zhCN.js +4 -1
- package/locale/zhCN.mjs +3 -1
- package/locale/zhHK.js +4 -1
- package/locale/zhHK.mjs +3 -1
- package/locale/zhTW.js +4 -1
- package/locale/zhTW.mjs +3 -1
- package/package.json +236 -236
- package/styles/components.d.mts +0 -5
- package/styles/components.d.ts +0 -5
- package/styles/overrides.d.mts +0 -2
- package/styles/overrides.d.ts +0 -2
- package/styles/props.d.mts +0 -2
- package/styles/props.d.ts +0 -2
- package/themeCssVarsAugmentation/index.js +5 -0
- package/themeCssVarsAugmentation/index.mjs +5 -0
- package/useAutocomplete/useAutocomplete.d.mts +0 -12
- package/useAutocomplete/useAutocomplete.d.ts +0 -12
- package/useAutocomplete/useAutocomplete.js +53 -28
- package/useAutocomplete/useAutocomplete.mjs +53 -28
- package/utils/index.d.mts +2 -0
- package/utils/index.d.ts +2 -0
- package/utils/index.js +14 -0
- package/utils/index.mjs +2 -0
- package/utils/useRovingTabIndex.d.mts +2 -0
- package/utils/useRovingTabIndex.d.ts +2 -0
- package/utils/useRovingTabIndex.js +9 -0
- package/utils/useRovingTabIndex.mjs +2 -0
- package/version/index.js +2 -2
- package/version/index.mjs +2 -2
- package/GridLegacy/GridLegacy.d.mts +0 -160
- package/GridLegacy/GridLegacy.d.ts +0 -160
- package/GridLegacy/GridLegacy.js +0 -601
- package/GridLegacy/GridLegacy.mjs +0 -588
- package/GridLegacy/GridLegacyContext.js +0 -17
- package/GridLegacy/GridLegacyContext.mjs +0 -12
- package/GridLegacy/gridLegacyClasses.d.mts +0 -48
- package/GridLegacy/gridLegacyClasses.d.ts +0 -48
- package/GridLegacy/gridLegacyClasses.js +0 -27
- package/GridLegacy/gridLegacyClasses.mjs +0 -19
- package/GridLegacy/index.d.mts +0 -4
- package/GridLegacy/index.d.ts +0 -4
- package/GridLegacy/index.js +0 -35
- package/GridLegacy/index.mjs +0 -3
package/MenuList/MenuList.mjs
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import { isFragment } from 'react-is';
|
|
5
5
|
import PropTypes from 'prop-types';
|
|
6
|
+
import useRovingTabIndex from "../utils/useRovingTabIndex.mjs";
|
|
6
7
|
import ownerDocument from "../utils/ownerDocument.mjs";
|
|
7
8
|
import List from "../List/index.mjs";
|
|
8
9
|
import getActiveElement from "../utils/getActiveElement.mjs";
|
|
@@ -11,24 +12,6 @@ import useForkRef from "../utils/useForkRef.mjs";
|
|
|
11
12
|
import useEnhancedEffect from "../utils/useEnhancedEffect.mjs";
|
|
12
13
|
import { ownerWindow } from "../utils/index.mjs";
|
|
13
14
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
|
-
function nextItem(list, item, disableListWrap) {
|
|
15
|
-
if (list === item) {
|
|
16
|
-
return list.firstChild;
|
|
17
|
-
}
|
|
18
|
-
if (item && item.nextElementSibling) {
|
|
19
|
-
return item.nextElementSibling;
|
|
20
|
-
}
|
|
21
|
-
return disableListWrap ? null : list.firstChild;
|
|
22
|
-
}
|
|
23
|
-
function previousItem(list, item, disableListWrap) {
|
|
24
|
-
if (list === item) {
|
|
25
|
-
return disableListWrap ? list.firstChild : list.lastChild;
|
|
26
|
-
}
|
|
27
|
-
if (item && item.previousElementSibling) {
|
|
28
|
-
return item.previousElementSibling;
|
|
29
|
-
}
|
|
30
|
-
return disableListWrap ? null : list.lastChild;
|
|
31
|
-
}
|
|
32
15
|
function textCriteriaMatches(nextFocus, textCriteria) {
|
|
33
16
|
if (textCriteria === undefined) {
|
|
34
17
|
return true;
|
|
@@ -47,29 +30,20 @@ function textCriteriaMatches(nextFocus, textCriteria) {
|
|
|
47
30
|
}
|
|
48
31
|
return text.startsWith(textCriteria.keys.join(''));
|
|
49
32
|
}
|
|
50
|
-
function
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
// Same logic as useAutocomplete.js
|
|
63
|
-
const nextFocusDisabled = disabledItemsFocusable ? false : nextFocus.disabled || nextFocus.getAttribute('aria-disabled') === 'true';
|
|
64
|
-
if (!nextFocus.hasAttribute('tabindex') || !textCriteriaMatches(nextFocus, textCriteria) || nextFocusDisabled) {
|
|
65
|
-
// Move to the next element.
|
|
66
|
-
nextFocus = traversalFunction(list, nextFocus, disableListWrap);
|
|
67
|
-
} else {
|
|
68
|
-
nextFocus.focus();
|
|
69
|
-
return true;
|
|
70
|
-
}
|
|
33
|
+
function shouldFocusWithTextCriteria(element, criteria, disabledItemsFocusable) {
|
|
34
|
+
if (!textCriteriaMatches(element, criteria)) {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
return shouldFocus(element, disabledItemsFocusable);
|
|
38
|
+
}
|
|
39
|
+
function shouldFocus(element, disabledItemsFocusable) {
|
|
40
|
+
if (!element || !element.hasAttribute('tabindex')) {
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
if (disabledItemsFocusable) {
|
|
44
|
+
return true;
|
|
71
45
|
}
|
|
72
|
-
return
|
|
46
|
+
return !element.disabled && element.getAttribute('aria-disabled') !== 'true';
|
|
73
47
|
}
|
|
74
48
|
|
|
75
49
|
/**
|
|
@@ -120,65 +94,6 @@ const MenuList = /*#__PURE__*/React.forwardRef(function MenuList(props, ref) {
|
|
|
120
94
|
return listRef.current;
|
|
121
95
|
}
|
|
122
96
|
}), []);
|
|
123
|
-
const handleKeyDown = event => {
|
|
124
|
-
const list = listRef.current;
|
|
125
|
-
const key = event.key;
|
|
126
|
-
const isModifierKeyPressed = event.ctrlKey || event.metaKey || event.altKey;
|
|
127
|
-
if (isModifierKeyPressed) {
|
|
128
|
-
if (onKeyDown) {
|
|
129
|
-
onKeyDown(event);
|
|
130
|
-
}
|
|
131
|
-
return;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
/**
|
|
135
|
-
* @type {Element} - will always be defined since we are in a keydown handler
|
|
136
|
-
* attached to an element. A keydown event is either dispatched to the activeElement
|
|
137
|
-
* or document.body or document.documentElement. Only the first case will
|
|
138
|
-
* trigger this specific handler.
|
|
139
|
-
*/
|
|
140
|
-
const currentFocus = getActiveElement(ownerDocument(list));
|
|
141
|
-
if (key === 'ArrowDown') {
|
|
142
|
-
// Prevent scroll of the page
|
|
143
|
-
event.preventDefault();
|
|
144
|
-
moveFocus(list, currentFocus, disableListWrap, disabledItemsFocusable, nextItem);
|
|
145
|
-
} else if (key === 'ArrowUp') {
|
|
146
|
-
event.preventDefault();
|
|
147
|
-
moveFocus(list, currentFocus, disableListWrap, disabledItemsFocusable, previousItem);
|
|
148
|
-
} else if (key === 'Home') {
|
|
149
|
-
event.preventDefault();
|
|
150
|
-
moveFocus(list, null, disableListWrap, disabledItemsFocusable, nextItem);
|
|
151
|
-
} else if (key === 'End') {
|
|
152
|
-
event.preventDefault();
|
|
153
|
-
moveFocus(list, null, disableListWrap, disabledItemsFocusable, previousItem);
|
|
154
|
-
} else if (key.length === 1) {
|
|
155
|
-
const criteria = textCriteriaRef.current;
|
|
156
|
-
const lowerKey = key.toLowerCase();
|
|
157
|
-
const currTime = performance.now();
|
|
158
|
-
if (criteria.keys.length > 0) {
|
|
159
|
-
// Reset
|
|
160
|
-
if (currTime - criteria.lastTime > 500) {
|
|
161
|
-
criteria.keys = [];
|
|
162
|
-
criteria.repeating = true;
|
|
163
|
-
criteria.previousKeyMatched = true;
|
|
164
|
-
} else if (criteria.repeating && lowerKey !== criteria.keys[0]) {
|
|
165
|
-
criteria.repeating = false;
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
criteria.lastTime = currTime;
|
|
169
|
-
criteria.keys.push(lowerKey);
|
|
170
|
-
const keepFocusOnCurrent = currentFocus && !criteria.repeating && textCriteriaMatches(currentFocus, criteria);
|
|
171
|
-
if (criteria.previousKeyMatched && (keepFocusOnCurrent || moveFocus(list, currentFocus, false, disabledItemsFocusable, nextItem, criteria))) {
|
|
172
|
-
event.preventDefault();
|
|
173
|
-
} else {
|
|
174
|
-
criteria.previousKeyMatched = false;
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
if (onKeyDown) {
|
|
178
|
-
onKeyDown(event);
|
|
179
|
-
}
|
|
180
|
-
};
|
|
181
|
-
const handleRef = useForkRef(listRef, ref);
|
|
182
97
|
|
|
183
98
|
/**
|
|
184
99
|
* the index of the item should receive focus
|
|
@@ -220,25 +135,78 @@ const MenuList = /*#__PURE__*/React.forwardRef(function MenuList(props, ref) {
|
|
|
220
135
|
}
|
|
221
136
|
}
|
|
222
137
|
});
|
|
138
|
+
const {
|
|
139
|
+
focusNext,
|
|
140
|
+
getContainerProps,
|
|
141
|
+
getItemProps
|
|
142
|
+
} = useRovingTabIndex({
|
|
143
|
+
focusableIndex: activeItemIndex,
|
|
144
|
+
orientation: 'vertical',
|
|
145
|
+
shouldWrap: !disableListWrap,
|
|
146
|
+
shouldFocus: element => shouldFocus(element, disabledItemsFocusable)
|
|
147
|
+
});
|
|
148
|
+
const rovingTabIndexContainerProps = getContainerProps();
|
|
149
|
+
const handleRef = useForkRef(listRef, rovingTabIndexContainerProps.ref, ref);
|
|
150
|
+
let focusableIndex = 0;
|
|
223
151
|
const items = React.Children.map(children, (child, index) => {
|
|
224
|
-
if (
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
152
|
+
if (! /*#__PURE__*/React.isValidElement(child) || child.props.muiSkipListHighlight || child.type.muiSkipListHighlight) {
|
|
153
|
+
return child;
|
|
154
|
+
}
|
|
155
|
+
const rovingTabIndexItemProps = getItemProps(focusableIndex, child.ref);
|
|
156
|
+
const newChildProps = {
|
|
157
|
+
ref: rovingTabIndexItemProps.ref
|
|
158
|
+
};
|
|
159
|
+
if (child.props.tabIndex === undefined && variant === 'selectedMenu') {
|
|
160
|
+
newChildProps.tabIndex = rovingTabIndexItemProps.tabIndex;
|
|
161
|
+
}
|
|
162
|
+
if (index === activeItemIndex && autoFocusItem) {
|
|
163
|
+
newChildProps.autoFocus = true;
|
|
164
|
+
}
|
|
165
|
+
focusableIndex += 1;
|
|
166
|
+
return /*#__PURE__*/React.cloneElement(child, newChildProps);
|
|
167
|
+
});
|
|
168
|
+
const handleKeyDown = event => {
|
|
169
|
+
const isModifierKeyPressed = event.ctrlKey || event.metaKey || event.altKey;
|
|
170
|
+
if (isModifierKeyPressed && onKeyDown) {
|
|
171
|
+
onKeyDown(event);
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
rovingTabIndexContainerProps.onKeyDown(event);
|
|
175
|
+
if (event.key.length === 1) {
|
|
176
|
+
const criteria = textCriteriaRef.current;
|
|
177
|
+
const lowerKey = event.key.toLowerCase();
|
|
178
|
+
const currTime = performance.now();
|
|
179
|
+
if (criteria.keys.length > 0) {
|
|
180
|
+
// Reset
|
|
181
|
+
if (currTime - criteria.lastTime > 500) {
|
|
182
|
+
criteria.keys = [];
|
|
183
|
+
criteria.repeating = true;
|
|
184
|
+
criteria.previousKeyMatched = true;
|
|
185
|
+
} else if (criteria.repeating && lowerKey !== criteria.keys[0]) {
|
|
186
|
+
criteria.repeating = false;
|
|
187
|
+
}
|
|
228
188
|
}
|
|
229
|
-
|
|
230
|
-
|
|
189
|
+
criteria.lastTime = currTime;
|
|
190
|
+
criteria.keys.push(lowerKey);
|
|
191
|
+
const currentFocus = getActiveElement(ownerDocument(listRef.current));
|
|
192
|
+
const keepFocusOnCurrent = currentFocus && !criteria.repeating && textCriteriaMatches(currentFocus, criteria);
|
|
193
|
+
if (criteria.previousKeyMatched && (keepFocusOnCurrent || focusNext(element => shouldFocusWithTextCriteria(element, criteria, disabledItemsFocusable)) !== -1)) {
|
|
194
|
+
event.preventDefault();
|
|
195
|
+
} else {
|
|
196
|
+
criteria.previousKeyMatched = false;
|
|
231
197
|
}
|
|
232
|
-
return /*#__PURE__*/React.cloneElement(child, newChildProps);
|
|
233
198
|
}
|
|
234
|
-
|
|
235
|
-
|
|
199
|
+
if (onKeyDown) {
|
|
200
|
+
onKeyDown(event);
|
|
201
|
+
}
|
|
202
|
+
};
|
|
236
203
|
return /*#__PURE__*/_jsx(List, {
|
|
237
204
|
role: "menu",
|
|
238
205
|
ref: handleRef,
|
|
239
206
|
className: className,
|
|
240
207
|
onKeyDown: handleKeyDown,
|
|
241
|
-
|
|
208
|
+
onFocus: rovingTabIndexContainerProps.onFocus,
|
|
209
|
+
tabIndex: -1,
|
|
242
210
|
...other,
|
|
243
211
|
children: items
|
|
244
212
|
});
|
|
@@ -69,11 +69,6 @@ export interface MobileStepperProps extends StandardProps<PaperProps, 'children'
|
|
|
69
69
|
* Override or extend the styles applied to the component.
|
|
70
70
|
*/
|
|
71
71
|
classes?: Partial<MobileStepperClasses> | undefined;
|
|
72
|
-
/**
|
|
73
|
-
* Props applied to the `LinearProgress` element.
|
|
74
|
-
* @deprecated Use `slotProps.progress` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
75
|
-
*/
|
|
76
|
-
LinearProgressProps?: Partial<LinearProgressProps> | undefined;
|
|
77
72
|
/**
|
|
78
73
|
* A next button element. For instance, it can be a `Button` or an `IconButton`.
|
|
79
74
|
*/
|
|
@@ -69,11 +69,6 @@ export interface MobileStepperProps extends StandardProps<PaperProps, 'children'
|
|
|
69
69
|
* Override or extend the styles applied to the component.
|
|
70
70
|
*/
|
|
71
71
|
classes?: Partial<MobileStepperClasses> | undefined;
|
|
72
|
-
/**
|
|
73
|
-
* Props applied to the `LinearProgress` element.
|
|
74
|
-
* @deprecated Use `slotProps.progress` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
75
|
-
*/
|
|
76
|
-
LinearProgressProps?: Partial<LinearProgressProps> | undefined;
|
|
77
72
|
/**
|
|
78
73
|
* A next button element. For instance, it can be a `Button` or an `IconButton`.
|
|
79
74
|
*/
|
|
@@ -153,7 +153,6 @@ const MobileStepper = /*#__PURE__*/React.forwardRef(function MobileStepper(inPro
|
|
|
153
153
|
activeStep = 0,
|
|
154
154
|
backButton,
|
|
155
155
|
className,
|
|
156
|
-
LinearProgressProps,
|
|
157
156
|
nextButton,
|
|
158
157
|
position = 'bottom',
|
|
159
158
|
steps,
|
|
@@ -179,10 +178,7 @@ const MobileStepper = /*#__PURE__*/React.forwardRef(function MobileStepper(inPro
|
|
|
179
178
|
const classes = useUtilityClasses(ownerState);
|
|
180
179
|
const externalForwardedProps = {
|
|
181
180
|
slots,
|
|
182
|
-
slotProps
|
|
183
|
-
progress: LinearProgressProps,
|
|
184
|
-
...slotProps
|
|
185
|
-
}
|
|
181
|
+
slotProps
|
|
186
182
|
};
|
|
187
183
|
const [RootSlot, rootSlotProps] = (0, _useSlot.default)('root', {
|
|
188
184
|
ref,
|
|
@@ -260,11 +256,6 @@ process.env.NODE_ENV !== "production" ? MobileStepper.propTypes /* remove-propty
|
|
|
260
256
|
* @ignore
|
|
261
257
|
*/
|
|
262
258
|
className: _propTypes.default.string,
|
|
263
|
-
/**
|
|
264
|
-
* Props applied to the `LinearProgress` element.
|
|
265
|
-
* @deprecated Use `slotProps.progress` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
266
|
-
*/
|
|
267
|
-
LinearProgressProps: _propTypes.default.object,
|
|
268
259
|
/**
|
|
269
260
|
* A next button element. For instance, it can be a `Button` or an `IconButton`.
|
|
270
261
|
*/
|
|
@@ -146,7 +146,6 @@ const MobileStepper = /*#__PURE__*/React.forwardRef(function MobileStepper(inPro
|
|
|
146
146
|
activeStep = 0,
|
|
147
147
|
backButton,
|
|
148
148
|
className,
|
|
149
|
-
LinearProgressProps,
|
|
150
149
|
nextButton,
|
|
151
150
|
position = 'bottom',
|
|
152
151
|
steps,
|
|
@@ -172,10 +171,7 @@ const MobileStepper = /*#__PURE__*/React.forwardRef(function MobileStepper(inPro
|
|
|
172
171
|
const classes = useUtilityClasses(ownerState);
|
|
173
172
|
const externalForwardedProps = {
|
|
174
173
|
slots,
|
|
175
|
-
slotProps
|
|
176
|
-
progress: LinearProgressProps,
|
|
177
|
-
...slotProps
|
|
178
|
-
}
|
|
174
|
+
slotProps
|
|
179
175
|
};
|
|
180
176
|
const [RootSlot, rootSlotProps] = useSlot('root', {
|
|
181
177
|
ref,
|
|
@@ -253,11 +249,6 @@ process.env.NODE_ENV !== "production" ? MobileStepper.propTypes /* remove-propty
|
|
|
253
249
|
* @ignore
|
|
254
250
|
*/
|
|
255
251
|
className: PropTypes.string,
|
|
256
|
-
/**
|
|
257
|
-
* Props applied to the `LinearProgress` element.
|
|
258
|
-
* @deprecated Use `slotProps.progress` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
259
|
-
*/
|
|
260
|
-
LinearProgressProps: PropTypes.object,
|
|
261
252
|
/**
|
|
262
253
|
* A next button element. For instance, it can be a `Button` or an `IconButton`.
|
|
263
254
|
*/
|
package/Paper/Paper.d.mts
CHANGED
|
@@ -45,6 +45,7 @@ export interface PaperTypeMap<AdditionalProps = {}, RootComponent extends React.
|
|
|
45
45
|
* Demos:
|
|
46
46
|
*
|
|
47
47
|
* - [Card](https://next.mui.com/material-ui/react-card/)
|
|
48
|
+
* - [Menubar](https://next.mui.com/material-ui/react-menubar/)
|
|
48
49
|
* - [Paper](https://next.mui.com/material-ui/react-paper/)
|
|
49
50
|
*
|
|
50
51
|
* API:
|
package/Paper/Paper.d.ts
CHANGED
|
@@ -45,6 +45,7 @@ export interface PaperTypeMap<AdditionalProps = {}, RootComponent extends React.
|
|
|
45
45
|
* Demos:
|
|
46
46
|
*
|
|
47
47
|
* - [Card](https://next.mui.com/material-ui/react-card/)
|
|
48
|
+
* - [Menubar](https://next.mui.com/material-ui/react-menubar/)
|
|
48
49
|
* - [Paper](https://next.mui.com/material-ui/react-paper/)
|
|
49
50
|
*
|
|
50
51
|
* API:
|
package/Popover/Popover.d.mts
CHANGED
|
@@ -4,8 +4,8 @@ import { SlotComponentProps } from '@mui/utils/types';
|
|
|
4
4
|
import { BackdropProps } from "../Backdrop/index.mjs";
|
|
5
5
|
import { Theme } from "../styles/index.mjs";
|
|
6
6
|
import { InternalStandardProps as StandardProps } from "../internal/index.mjs";
|
|
7
|
-
import
|
|
8
|
-
import
|
|
7
|
+
import { PaperProps } from "../Paper/index.mjs";
|
|
8
|
+
import { ModalProps } from "../Modal/index.mjs";
|
|
9
9
|
import { TransitionProps } from "../transitions/transition.mjs";
|
|
10
10
|
import { PopoverClasses } from "./popoverClasses.mjs";
|
|
11
11
|
import { CreateSlotsAndSlotProps, SlotProps } from "../utils/types.mjs";
|
|
@@ -40,12 +40,12 @@ export type PopoverSlotsAndSlotProps = CreateSlotsAndSlotProps<PopoverSlots, {
|
|
|
40
40
|
* Props forwarded to the root slot.
|
|
41
41
|
* By default, the available props are based on the [Modal](https://mui.com/material-ui/api/modal/#props) component.
|
|
42
42
|
*/
|
|
43
|
-
root: SlotProps<
|
|
43
|
+
root: SlotProps<React.ElementType<ModalProps>, PopoverRootSlotPropsOverrides, PopoverOwnerState>;
|
|
44
44
|
/**
|
|
45
45
|
* Props forwarded to the paper slot.
|
|
46
46
|
* By default, the available props are based on the [Paper](https://mui.com/material-ui/api/paper/#props) component.
|
|
47
47
|
*/
|
|
48
|
-
paper: SlotProps<
|
|
48
|
+
paper: SlotProps<React.ElementType<PaperProps>, PopoverPaperSlotPropsOverrides, PopoverOwnerState>;
|
|
49
49
|
/**
|
|
50
50
|
* Props forwarded to the transition slot.
|
|
51
51
|
* By default, the available props are based on the [Grow](https://mui.com/material-ui/api/grow/#props) component.
|
|
@@ -109,25 +109,6 @@ export interface PopoverProps extends StandardProps<Omit<ModalProps, 'slots' | '
|
|
|
109
109
|
* @default 'anchorEl'
|
|
110
110
|
*/
|
|
111
111
|
anchorReference?: PopoverReference | undefined;
|
|
112
|
-
/**
|
|
113
|
-
* A backdrop component. This prop enables custom backdrop rendering.
|
|
114
|
-
* @deprecated Use `slots.backdrop` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
115
|
-
* @default styled(Backdrop, {
|
|
116
|
-
* name: 'MuiModal',
|
|
117
|
-
* slot: 'Backdrop',
|
|
118
|
-
* overridesResolver: (props, styles) => {
|
|
119
|
-
* return styles.backdrop;
|
|
120
|
-
* },
|
|
121
|
-
* })({
|
|
122
|
-
* zIndex: -1,
|
|
123
|
-
* })
|
|
124
|
-
*/
|
|
125
|
-
BackdropComponent?: React.ElementType<BackdropProps> | undefined;
|
|
126
|
-
/**
|
|
127
|
-
* Props applied to the [`Backdrop`](/material-ui/api/backdrop/) element.
|
|
128
|
-
* @deprecated Use `slotProps.backdrop` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
129
|
-
*/
|
|
130
|
-
BackdropProps?: Partial<BackdropProps> | undefined;
|
|
131
112
|
/**
|
|
132
113
|
* The content of the component.
|
|
133
114
|
*/
|
|
@@ -160,15 +141,6 @@ export interface PopoverProps extends StandardProps<Omit<ModalProps, 'slots' | '
|
|
|
160
141
|
* If `true`, the component is shown.
|
|
161
142
|
*/
|
|
162
143
|
open: boolean;
|
|
163
|
-
/**
|
|
164
|
-
* Props applied to the [`Paper`](https://mui.com/material-ui/api/paper/) element.
|
|
165
|
-
*
|
|
166
|
-
* This prop is an alias for `slotProps.paper` and will be overridden by it if both are used.
|
|
167
|
-
* @deprecated Use `slotProps.paper` instead.
|
|
168
|
-
*
|
|
169
|
-
* @default {}
|
|
170
|
-
*/
|
|
171
|
-
PaperProps?: Partial<PaperProps<React.ElementType>> | undefined;
|
|
172
144
|
/**
|
|
173
145
|
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
174
146
|
*/
|
|
@@ -186,27 +158,11 @@ export interface PopoverProps extends StandardProps<Omit<ModalProps, 'slots' | '
|
|
|
186
158
|
* }
|
|
187
159
|
*/
|
|
188
160
|
transformOrigin?: PopoverOrigin | undefined;
|
|
189
|
-
/**
|
|
190
|
-
* The component used for the transition.
|
|
191
|
-
* [Follow this guide](https://mui.com/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.
|
|
192
|
-
* @deprecated use the `slots.transition` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
193
|
-
* @default Grow
|
|
194
|
-
*/
|
|
195
|
-
TransitionComponent?: React.JSXElementConstructor<TransitionProps & {
|
|
196
|
-
children: React.ReactElement<unknown, any>;
|
|
197
|
-
}> | undefined;
|
|
198
161
|
/**
|
|
199
162
|
* Set to 'auto' to automatically calculate transition time based on height.
|
|
200
163
|
* @default 'auto'
|
|
201
164
|
*/
|
|
202
165
|
transitionDuration?: TransitionProps['timeout'] | 'auto' | undefined;
|
|
203
|
-
/**
|
|
204
|
-
* Props applied to the transition element.
|
|
205
|
-
* By default, the element is based on this [`Transition`](https://reactcommunity.org/react-transition-group/transition/) component.
|
|
206
|
-
* @deprecated use the `slotProps.transition` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
207
|
-
* @default {}
|
|
208
|
-
*/
|
|
209
|
-
TransitionProps?: TransitionProps | undefined;
|
|
210
166
|
}
|
|
211
167
|
export interface PopoverOwnerState extends Omit<PopoverProps, 'slots' | 'slotProps'> {}
|
|
212
168
|
export interface PopoverActions {
|
package/Popover/Popover.d.ts
CHANGED
|
@@ -4,8 +4,8 @@ import { SlotComponentProps } from '@mui/utils/types';
|
|
|
4
4
|
import { BackdropProps } from "../Backdrop/index.js";
|
|
5
5
|
import { Theme } from "../styles/index.js";
|
|
6
6
|
import { InternalStandardProps as StandardProps } from "../internal/index.js";
|
|
7
|
-
import
|
|
8
|
-
import
|
|
7
|
+
import { PaperProps } from "../Paper/index.js";
|
|
8
|
+
import { ModalProps } from "../Modal/index.js";
|
|
9
9
|
import { TransitionProps } from "../transitions/transition.js";
|
|
10
10
|
import { PopoverClasses } from "./popoverClasses.js";
|
|
11
11
|
import { CreateSlotsAndSlotProps, SlotProps } from "../utils/types.js";
|
|
@@ -40,12 +40,12 @@ export type PopoverSlotsAndSlotProps = CreateSlotsAndSlotProps<PopoverSlots, {
|
|
|
40
40
|
* Props forwarded to the root slot.
|
|
41
41
|
* By default, the available props are based on the [Modal](https://mui.com/material-ui/api/modal/#props) component.
|
|
42
42
|
*/
|
|
43
|
-
root: SlotProps<
|
|
43
|
+
root: SlotProps<React.ElementType<ModalProps>, PopoverRootSlotPropsOverrides, PopoverOwnerState>;
|
|
44
44
|
/**
|
|
45
45
|
* Props forwarded to the paper slot.
|
|
46
46
|
* By default, the available props are based on the [Paper](https://mui.com/material-ui/api/paper/#props) component.
|
|
47
47
|
*/
|
|
48
|
-
paper: SlotProps<
|
|
48
|
+
paper: SlotProps<React.ElementType<PaperProps>, PopoverPaperSlotPropsOverrides, PopoverOwnerState>;
|
|
49
49
|
/**
|
|
50
50
|
* Props forwarded to the transition slot.
|
|
51
51
|
* By default, the available props are based on the [Grow](https://mui.com/material-ui/api/grow/#props) component.
|
|
@@ -109,25 +109,6 @@ export interface PopoverProps extends StandardProps<Omit<ModalProps, 'slots' | '
|
|
|
109
109
|
* @default 'anchorEl'
|
|
110
110
|
*/
|
|
111
111
|
anchorReference?: PopoverReference | undefined;
|
|
112
|
-
/**
|
|
113
|
-
* A backdrop component. This prop enables custom backdrop rendering.
|
|
114
|
-
* @deprecated Use `slots.backdrop` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
115
|
-
* @default styled(Backdrop, {
|
|
116
|
-
* name: 'MuiModal',
|
|
117
|
-
* slot: 'Backdrop',
|
|
118
|
-
* overridesResolver: (props, styles) => {
|
|
119
|
-
* return styles.backdrop;
|
|
120
|
-
* },
|
|
121
|
-
* })({
|
|
122
|
-
* zIndex: -1,
|
|
123
|
-
* })
|
|
124
|
-
*/
|
|
125
|
-
BackdropComponent?: React.ElementType<BackdropProps> | undefined;
|
|
126
|
-
/**
|
|
127
|
-
* Props applied to the [`Backdrop`](/material-ui/api/backdrop/) element.
|
|
128
|
-
* @deprecated Use `slotProps.backdrop` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
129
|
-
*/
|
|
130
|
-
BackdropProps?: Partial<BackdropProps> | undefined;
|
|
131
112
|
/**
|
|
132
113
|
* The content of the component.
|
|
133
114
|
*/
|
|
@@ -160,15 +141,6 @@ export interface PopoverProps extends StandardProps<Omit<ModalProps, 'slots' | '
|
|
|
160
141
|
* If `true`, the component is shown.
|
|
161
142
|
*/
|
|
162
143
|
open: boolean;
|
|
163
|
-
/**
|
|
164
|
-
* Props applied to the [`Paper`](https://mui.com/material-ui/api/paper/) element.
|
|
165
|
-
*
|
|
166
|
-
* This prop is an alias for `slotProps.paper` and will be overridden by it if both are used.
|
|
167
|
-
* @deprecated Use `slotProps.paper` instead.
|
|
168
|
-
*
|
|
169
|
-
* @default {}
|
|
170
|
-
*/
|
|
171
|
-
PaperProps?: Partial<PaperProps<React.ElementType>> | undefined;
|
|
172
144
|
/**
|
|
173
145
|
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
174
146
|
*/
|
|
@@ -186,27 +158,11 @@ export interface PopoverProps extends StandardProps<Omit<ModalProps, 'slots' | '
|
|
|
186
158
|
* }
|
|
187
159
|
*/
|
|
188
160
|
transformOrigin?: PopoverOrigin | undefined;
|
|
189
|
-
/**
|
|
190
|
-
* The component used for the transition.
|
|
191
|
-
* [Follow this guide](https://mui.com/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.
|
|
192
|
-
* @deprecated use the `slots.transition` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
193
|
-
* @default Grow
|
|
194
|
-
*/
|
|
195
|
-
TransitionComponent?: React.JSXElementConstructor<TransitionProps & {
|
|
196
|
-
children: React.ReactElement<unknown, any>;
|
|
197
|
-
}> | undefined;
|
|
198
161
|
/**
|
|
199
162
|
* Set to 'auto' to automatically calculate transition time based on height.
|
|
200
163
|
* @default 'auto'
|
|
201
164
|
*/
|
|
202
165
|
transitionDuration?: TransitionProps['timeout'] | 'auto' | undefined;
|
|
203
|
-
/**
|
|
204
|
-
* Props applied to the transition element.
|
|
205
|
-
* By default, the element is based on this [`Transition`](https://reactcommunity.org/react-transition-group/transition/) component.
|
|
206
|
-
* @deprecated use the `slotProps.transition` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
207
|
-
* @default {}
|
|
208
|
-
*/
|
|
209
|
-
TransitionProps?: TransitionProps | undefined;
|
|
210
166
|
}
|
|
211
167
|
export interface PopoverOwnerState extends Omit<PopoverProps, 'slots' | 'slotProps'> {}
|
|
212
168
|
export interface PopoverActions {
|
package/Popover/Popover.js
CHANGED
|
@@ -15,7 +15,6 @@ var _clsx = _interopRequireDefault(require("clsx"));
|
|
|
15
15
|
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
16
16
|
var _HTMLElementType = _interopRequireDefault(require("@mui/utils/HTMLElementType"));
|
|
17
17
|
var _refType = _interopRequireDefault(require("@mui/utils/refType"));
|
|
18
|
-
var _elementTypeAcceptingRef = _interopRequireDefault(require("@mui/utils/elementTypeAcceptingRef"));
|
|
19
18
|
var _integerPropType = _interopRequireDefault(require("@mui/utils/integerPropType"));
|
|
20
19
|
var _chainPropTypes = _interopRequireDefault(require("@mui/utils/chainPropTypes"));
|
|
21
20
|
var _isHostComponent = _interopRequireDefault(require("@mui/utils/isHostComponent"));
|
|
@@ -110,19 +109,13 @@ const Popover = /*#__PURE__*/React.forwardRef(function Popover(inProps, ref) {
|
|
|
110
109
|
elevation = 8,
|
|
111
110
|
marginThreshold = 16,
|
|
112
111
|
open,
|
|
113
|
-
PaperProps: PaperPropsProp = {},
|
|
114
|
-
// TODO: remove in v7
|
|
115
112
|
slots = {},
|
|
116
113
|
slotProps = {},
|
|
117
114
|
transformOrigin = {
|
|
118
115
|
vertical: 'top',
|
|
119
116
|
horizontal: 'left'
|
|
120
117
|
},
|
|
121
|
-
TransitionComponent,
|
|
122
|
-
// TODO: remove in v7
|
|
123
118
|
transitionDuration: transitionDurationProp = 'auto',
|
|
124
|
-
TransitionProps = {},
|
|
125
|
-
// TODO: remove in v7
|
|
126
119
|
disableScrollLock = false,
|
|
127
120
|
...other
|
|
128
121
|
} = props;
|
|
@@ -134,9 +127,7 @@ const Popover = /*#__PURE__*/React.forwardRef(function Popover(inProps, ref) {
|
|
|
134
127
|
elevation,
|
|
135
128
|
marginThreshold,
|
|
136
129
|
transformOrigin,
|
|
137
|
-
|
|
138
|
-
transitionDuration: transitionDurationProp,
|
|
139
|
-
TransitionProps
|
|
130
|
+
transitionDuration: transitionDurationProp
|
|
140
131
|
};
|
|
141
132
|
const classes = useUtilityClasses(ownerState);
|
|
142
133
|
|
|
@@ -293,15 +284,8 @@ const Popover = /*#__PURE__*/React.forwardRef(function Popover(inProps, ref) {
|
|
|
293
284
|
}, [anchorEl, open, setPositioningStyles]);
|
|
294
285
|
let transitionDuration = transitionDurationProp;
|
|
295
286
|
const externalForwardedProps = {
|
|
296
|
-
slots
|
|
297
|
-
|
|
298
|
-
...slots
|
|
299
|
-
},
|
|
300
|
-
slotProps: {
|
|
301
|
-
transition: TransitionProps,
|
|
302
|
-
paper: PaperPropsProp,
|
|
303
|
-
...slotProps
|
|
304
|
-
}
|
|
287
|
+
slots,
|
|
288
|
+
slotProps
|
|
305
289
|
};
|
|
306
290
|
const [TransitionSlot, transitionSlotProps] = (0, _useSlot.default)('transition', {
|
|
307
291
|
elementType: _Grow.default,
|
|
@@ -451,25 +435,6 @@ process.env.NODE_ENV !== "production" ? Popover.propTypes /* remove-proptypes */
|
|
|
451
435
|
* @default 'anchorEl'
|
|
452
436
|
*/
|
|
453
437
|
anchorReference: _propTypes.default.oneOf(['anchorEl', 'anchorPosition', 'none']),
|
|
454
|
-
/**
|
|
455
|
-
* A backdrop component. This prop enables custom backdrop rendering.
|
|
456
|
-
* @deprecated Use `slots.backdrop` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
457
|
-
* @default styled(Backdrop, {
|
|
458
|
-
* name: 'MuiModal',
|
|
459
|
-
* slot: 'Backdrop',
|
|
460
|
-
* overridesResolver: (props, styles) => {
|
|
461
|
-
* return styles.backdrop;
|
|
462
|
-
* },
|
|
463
|
-
* })({
|
|
464
|
-
* zIndex: -1,
|
|
465
|
-
* })
|
|
466
|
-
*/
|
|
467
|
-
BackdropComponent: _propTypes.default.elementType,
|
|
468
|
-
/**
|
|
469
|
-
* Props applied to the [`Backdrop`](/material-ui/api/backdrop/) element.
|
|
470
|
-
* @deprecated Use `slotProps.backdrop` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
471
|
-
*/
|
|
472
|
-
BackdropProps: _propTypes.default.object,
|
|
473
438
|
/**
|
|
474
439
|
* The content of the component.
|
|
475
440
|
*/
|
|
@@ -515,17 +480,6 @@ process.env.NODE_ENV !== "production" ? Popover.propTypes /* remove-proptypes */
|
|
|
515
480
|
* If `true`, the component is shown.
|
|
516
481
|
*/
|
|
517
482
|
open: _propTypes.default.bool.isRequired,
|
|
518
|
-
/**
|
|
519
|
-
* Props applied to the [`Paper`](https://mui.com/material-ui/api/paper/) element.
|
|
520
|
-
*
|
|
521
|
-
* This prop is an alias for `slotProps.paper` and will be overridden by it if both are used.
|
|
522
|
-
* @deprecated Use `slotProps.paper` instead.
|
|
523
|
-
*
|
|
524
|
-
* @default {}
|
|
525
|
-
*/
|
|
526
|
-
PaperProps: _propTypes.default /* @typescript-to-proptypes-ignore */.shape({
|
|
527
|
-
component: _elementTypeAcceptingRef.default
|
|
528
|
-
}),
|
|
529
483
|
/**
|
|
530
484
|
* The props used for each slot inside.
|
|
531
485
|
* @default {}
|
|
@@ -566,13 +520,6 @@ process.env.NODE_ENV !== "production" ? Popover.propTypes /* remove-proptypes */
|
|
|
566
520
|
horizontal: _propTypes.default.oneOfType([_propTypes.default.oneOf(['center', 'left', 'right']), _propTypes.default.number]).isRequired,
|
|
567
521
|
vertical: _propTypes.default.oneOfType([_propTypes.default.oneOf(['bottom', 'center', 'top']), _propTypes.default.number]).isRequired
|
|
568
522
|
}),
|
|
569
|
-
/**
|
|
570
|
-
* The component used for the transition.
|
|
571
|
-
* [Follow this guide](https://mui.com/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.
|
|
572
|
-
* @deprecated use the `slots.transition` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
573
|
-
* @default Grow
|
|
574
|
-
*/
|
|
575
|
-
TransitionComponent: _propTypes.default.elementType,
|
|
576
523
|
/**
|
|
577
524
|
* Set to 'auto' to automatically calculate transition time based on height.
|
|
578
525
|
* @default 'auto'
|
|
@@ -581,13 +528,6 @@ process.env.NODE_ENV !== "production" ? Popover.propTypes /* remove-proptypes */
|
|
|
581
528
|
appear: _propTypes.default.number,
|
|
582
529
|
enter: _propTypes.default.number,
|
|
583
530
|
exit: _propTypes.default.number
|
|
584
|
-
})])
|
|
585
|
-
/**
|
|
586
|
-
* Props applied to the transition element.
|
|
587
|
-
* By default, the element is based on this [`Transition`](https://reactcommunity.org/react-transition-group/transition/) component.
|
|
588
|
-
* @deprecated use the `slotProps.transition` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
|
|
589
|
-
* @default {}
|
|
590
|
-
*/
|
|
591
|
-
TransitionProps: _propTypes.default.object
|
|
531
|
+
})])
|
|
592
532
|
} : void 0;
|
|
593
533
|
var _default = exports.default = Popover;
|