From a8b1ce13975a74dc4c308cb5299b9dbb16d018e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aar=C3=B3n=20Garc=C3=ADa=20Herv=C3=A1s?= Date: Mon, 6 May 2024 13:36:17 +0200 Subject: [PATCH 01/25] [website] Fix home page slider's track position (#42141) --- docs/src/components/showcase/ThemeSlider.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/src/components/showcase/ThemeSlider.tsx b/docs/src/components/showcase/ThemeSlider.tsx index 5c5eca0bdbfa93..7bd5e2094cf7f3 100644 --- a/docs/src/components/showcase/ThemeSlider.tsx +++ b/docs/src/components/showcase/ThemeSlider.tsx @@ -70,7 +70,6 @@ export default function ThemeSlider() { fontWeight: 'semiBold', }, [`& .${sliderClasses.thumb}`]: { - mx: -1, width: 16, height: 16, '&::before': { From ad850021c97f165498f4712ca951ef67f4c6116d Mon Sep 17 00:00:00 2001 From: Siriwat K Date: Mon, 6 May 2024 18:39:22 +0700 Subject: [PATCH 02/25] [material-ui] Migrate components to support CSS extraction (#42001) --- .github/workflows/ci.yml | 2 + apps/pigment-css-next-app/next.config.js | 27 ++ apps/pigment-css-next-app/package.json | 4 +- docs/pages/material-ui/api/filled-input.json | 2 +- docs/pages/material-ui/api/input.json | 2 +- package.json | 2 +- .../src/LoadingButton/LoadingButton.js | 186 ++++++++----- packages/mui-lab/src/zero-styled/index.ts | 8 + .../src/Breadcrumbs/BreadcrumbCollapsed.js | 2 +- packages/mui-material/src/Button/Button.js | 2 +- .../mui-material/src/Checkbox/Checkbox.js | 2 + .../mui-material/src/Collapse/Collapse.js | 103 ++++--- packages/mui-material/src/Dialog/Dialog.js | 169 +++++++----- .../src/DialogActions/DialogActions.js | 22 +- .../src/DialogContent/DialogContent.js | 24 +- .../DialogContentText/DialogContentText.js | 6 +- .../src/DialogTitle/DialogTitle.js | 5 +- packages/mui-material/src/Drawer/Drawer.js | 114 +++++--- packages/mui-material/src/Fab/Fab.js | 2 +- .../src/FilledInput/FilledInput.d.ts | 1 + .../src/FilledInput/FilledInput.js | 254 +++++++++++------- .../src/FormHelperText/FormHelperText.js | 5 +- .../mui-material/src/FormLabel/FormLabel.js | 39 ++- .../src/FormLabel/FormLabel.test.js | 10 + packages/mui-material/src/Grow/Grow.js | 4 +- packages/mui-material/src/Icon/Icon.js | 95 +++++-- .../mui-material/src/ImageList/ImageList.js | 5 +- .../src/ImageListItem/ImageListItem.js | 5 +- .../src/ImageListItemBar/ImageListItemBar.js | 5 +- packages/mui-material/src/Input/Input.d.ts | 1 + packages/mui-material/src/Input/Input.js | 136 ++++++---- .../src/InputAdornment/InputAdornment.js | 59 ++-- .../mui-material/src/InputBase/InputBase.js | 84 +++--- .../mui-material/src/InputLabel/InputLabel.js | 178 +++++++----- packages/mui-material/src/Link/Link.js | 134 ++++++--- .../src/Link/getTextDecoration.test.js | 30 +-- .../src/Link/getTextDecoration.ts | 27 +- packages/mui-material/src/List/List.js | 31 ++- .../mui-material/src/ListItem/ListItem.js | 5 +- .../src/ListItemAvatar/ListItemAvatar.js | 5 +- .../src/ListItemButton/ListItemButton.js | 6 +- .../src/ListItemIcon/ListItemIcon.js | 20 +- .../ListItemSecondaryAction.js | 5 +- .../src/ListItemText/ListItemText.js | 5 +- .../src/ListSubheader/ListSubheader.js | 9 +- packages/mui-material/src/Menu/Menu.js | 6 +- .../mui-material/src/MenuItem/MenuItem.js | 62 +++-- .../src/NativeSelect/NativeSelectInput.js | 127 +++++---- .../src/OutlinedInput/NotchedOutline.js | 88 +++--- .../src/OutlinedInput/OutlinedInput.js | 138 ++++++---- .../mui-material/src/Pagination/Pagination.js | 5 +- packages/mui-material/src/Paper/Paper.js | 74 +++-- packages/mui-material/src/Radio/Radio.js | 4 +- .../mui-material/src/Radio/RadioButtonIcon.js | 2 +- packages/mui-material/src/Rating/Rating.js | 6 +- packages/mui-material/src/Select/Select.js | 3 +- .../mui-material/src/Select/SelectInput.js | 17 +- .../mui-material/src/Skeleton/Skeleton.js | 204 ++++++++------ .../mui-material/src/Snackbar/Snackbar.js | 84 +++--- .../src/SnackbarContent/SnackbarContent.js | 5 +- .../mui-material/src/SpeedDial/SpeedDial.js | 102 ++++--- .../src/SpeedDialAction/SpeedDialAction.js | 71 +++-- .../src/SpeedDialIcon/SpeedDialIcon.js | 44 ++- .../src/SwipeableDrawer/SwipeArea.js | 73 +++-- packages/mui-material/src/Tab/Tab.js | 167 ++++++++---- .../src/TabScrollButton/TabScrollButton.js | 38 ++- packages/mui-material/src/Table/Table.js | 5 +- .../mui-material/src/TableBody/TableBody.js | 5 +- .../mui-material/src/TableCell/TableCell.js | 5 +- .../src/TableContainer/TableContainer.js | 5 +- .../src/TableFooter/TableFooter.js | 5 +- .../mui-material/src/TableHead/TableHead.js | 5 +- .../src/TablePagination/TablePagination.js | 5 +- .../mui-material/src/TableRow/TableRow.js | 5 +- .../src/TableSortLabel/TableSortLabel.js | 5 +- packages/mui-material/src/Tabs/Tabs.js | 148 ++++++---- .../mui-material/src/TextField/TextField.js | 5 +- packages/mui-material/src/Toolbar/Toolbar.js | 67 +++-- packages/mui-material/src/Tooltip/Tooltip.js | 244 +++++++++++------ .../mui-material/src/Typography/Typography.js | 116 +++++--- .../mui-material/src/internal/SwitchBase.js | 45 +++- pnpm-lock.yaml | 87 ++++-- 82 files changed, 2547 insertions(+), 1372 deletions(-) create mode 100644 packages/mui-lab/src/zero-styled/index.ts diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3d726a90bd2a34..f6ce2f60aa3677 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -38,6 +38,8 @@ jobs: cache: 'pnpm' # https://github.com/actions/setup-node/blob/main/docs/advanced-usage.md#caching-packages-dependencies - run: pnpm install - run: pnpm build:ci + env: + NODE_OPTIONS: --max_old_space_size=4096 - run: pnpm release:changelog env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/apps/pigment-css-next-app/next.config.js b/apps/pigment-css-next-app/next.config.js index 70facd067ef4ec..a2187d6190e6ba 100644 --- a/apps/pigment-css-next-app/next.config.js +++ b/apps/pigment-css-next-app/next.config.js @@ -96,6 +96,13 @@ theme.getColorSchemeSelector = (colorScheme) => { return `@media (prefers-color-scheme: ${colorScheme})`; }; +function innerNoop() { + return null; +} +function outerNoop() { + return innerNoop; +} + /** * @type {PigmentOptions} */ @@ -104,6 +111,26 @@ const pigmentOptions = { transformLibraries: ['local-ui-lib'], sourceMap: true, displayName: true, + overrideContext: (context) => { + if (!context.$RefreshSig$) { + context.$RefreshSig$ = outerNoop; + } + return { + ...context, + require: (id) => { + if (id === '@mui/styled-engine' || id === '@mui/styled-engine-sc') { + return { + __esModule: true, + default: () => () => () => null, + internal_processStyles: () => {}, + keyframes: () => '', + css: () => '', + }; + } + return context.require(id); + }, + }; + }, }; /** @type {import('next').NextConfig} */ diff --git a/apps/pigment-css-next-app/package.json b/apps/pigment-css-next-app/package.json index d6122741013d76..69291fb793bb3b 100644 --- a/apps/pigment-css-next-app/package.json +++ b/apps/pigment-css-next-app/package.json @@ -9,7 +9,7 @@ "clean": "rimraf .next" }, "dependencies": { - "@pigment-css/react": "^0.0.9", + "@pigment-css/react": "^0.0.10", "@mui/utils": "workspace:^", "@mui/base": "workspace:^", "@mui/lab": "workspace:^", @@ -24,7 +24,7 @@ "next": "latest" }, "devDependencies": { - "@pigment-css/nextjs-plugin": "^0.0.9", + "@pigment-css/nextjs-plugin": "^0.0.10", "@types/node": "^20.5.7", "@types/react": "^18.2.55", "@types/react-dom": "^18.3.0", diff --git a/docs/pages/material-ui/api/filled-input.json b/docs/pages/material-ui/api/filled-input.json index edf8016b29aa3a..0422d195c86877 100644 --- a/docs/pages/material-ui/api/filled-input.json +++ b/docs/pages/material-ui/api/filled-input.json @@ -19,7 +19,7 @@ }, "defaultValue": { "type": { "name": "any" } }, "disabled": { "type": { "name": "bool" } }, - "disableUnderline": { "type": { "name": "bool" } }, + "disableUnderline": { "type": { "name": "bool" }, "default": "false" }, "endAdornment": { "type": { "name": "node" } }, "error": { "type": { "name": "bool" } }, "fullWidth": { "type": { "name": "bool" }, "default": "false" }, diff --git a/docs/pages/material-ui/api/input.json b/docs/pages/material-ui/api/input.json index 313bb2bfc69c1d..79a1bcd9305cb5 100644 --- a/docs/pages/material-ui/api/input.json +++ b/docs/pages/material-ui/api/input.json @@ -19,7 +19,7 @@ }, "defaultValue": { "type": { "name": "any" } }, "disabled": { "type": { "name": "bool" } }, - "disableUnderline": { "type": { "name": "bool" } }, + "disableUnderline": { "type": { "name": "bool" }, "default": "false" }, "endAdornment": { "type": { "name": "node" } }, "error": { "type": { "name": "bool" } }, "fullWidth": { "type": { "name": "bool" }, "default": "false" }, diff --git a/package.json b/package.json index 31f1876ba23581..7325aa1b54dedb 100644 --- a/package.json +++ b/package.json @@ -111,7 +111,7 @@ "@mui/utils": "workspace:^", "@next/eslint-plugin-next": "^14.2.3", "@octokit/rest": "^20.1.0", - "@pigment-css/react": "^0.0.9", + "@pigment-css/react": "^0.0.10", "@playwright/test": "1.43.1", "@types/enzyme": "^3.10.18", "@types/fs-extra": "^11.0.4", diff --git a/packages/mui-lab/src/LoadingButton/LoadingButton.js b/packages/mui-lab/src/LoadingButton/LoadingButton.js index 98ca8e4e90c730..47920a507f3ecd 100644 --- a/packages/mui-lab/src/LoadingButton/LoadingButton.js +++ b/packages/mui-lab/src/LoadingButton/LoadingButton.js @@ -4,13 +4,15 @@ import PropTypes from 'prop-types'; import { chainPropTypes } from '@mui/utils'; import { capitalize, unstable_useId as useId } from '@mui/material/utils'; import { unstable_composeClasses as composeClasses } from '@mui/base'; -import { styled, useThemeProps } from '@mui/material/styles'; import Button from '@mui/material/Button'; import { ButtonGroupContext } from '@mui/material/ButtonGroup'; import CircularProgress from '@mui/material/CircularProgress'; import resolveProps from '@mui/utils/resolveProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import loadingButtonClasses, { getLoadingButtonUtilityClass } from './loadingButtonClasses'; +const useThemeProps = createUseThemeProps('MuiLoadingButton'); + const useUtilityClasses = (ownerState) => { const { loading, loadingPosition, classes } = ownerState; @@ -32,7 +34,7 @@ const useUtilityClasses = (ownerState) => { }; }; -// TODO use `import { rootShouldForwardProp } from '../styles/styled';` once move to core +// TODO use `import rootShouldForwardProp from '../styles/rootShouldForwardProp';` once move to core const rootShouldForwardProp = (prop) => prop !== 'ownerState' && prop !== 'theme' && prop !== 'sx' && prop !== 'as' && prop !== 'classes'; const LoadingButtonRoot = styled(Button, { @@ -50,7 +52,7 @@ const LoadingButtonRoot = styled(Button, { }, ]; }, -})(({ ownerState, theme }) => ({ +})(({ theme }) => ({ [`& .${loadingButtonClasses.startIconLoadingStart}, & .${loadingButtonClasses.endIconLoadingEnd}`]: { transition: theme.transitions.create(['opacity'], { @@ -58,36 +60,47 @@ const LoadingButtonRoot = styled(Button, { }), opacity: 0, }, - ...(ownerState.loadingPosition === 'center' && { - transition: theme.transitions.create(['background-color', 'box-shadow', 'border-color'], { - duration: theme.transitions.duration.short, - }), - [`&.${loadingButtonClasses.loading}`]: { - color: 'transparent', - }, - }), - ...(ownerState.loadingPosition === 'start' && - ownerState.fullWidth && { - [`& .${loadingButtonClasses.startIconLoadingStart}, & .${loadingButtonClasses.endIconLoadingEnd}`]: - { - transition: theme.transitions.create(['opacity'], { - duration: theme.transitions.duration.short, - }), - opacity: 0, - marginRight: -8, - }, - }), - ...(ownerState.loadingPosition === 'end' && - ownerState.fullWidth && { - [`& .${loadingButtonClasses.startIconLoadingStart}, & .${loadingButtonClasses.endIconLoadingEnd}`]: - { - transition: theme.transitions.create(['opacity'], { - duration: theme.transitions.duration.short, - }), - opacity: 0, - marginLeft: -8, + variants: [ + { + props: { + loadingPosition: 'center', + }, + style: { + transition: theme.transitions.create(['background-color', 'box-shadow', 'border-color'], { + duration: theme.transitions.duration.short, + }), + [`&.${loadingButtonClasses.loading}`]: { + color: 'transparent', }, - }), + }, + }, + { + props: ({ ownerState }) => ownerState.loadingPosition === 'start' && ownerState.fullWidth, + style: { + [`& .${loadingButtonClasses.startIconLoadingStart}, & .${loadingButtonClasses.endIconLoadingEnd}`]: + { + transition: theme.transitions.create(['opacity'], { + duration: theme.transitions.duration.short, + }), + opacity: 0, + marginRight: -8, + }, + }, + }, + { + props: ({ ownerState }) => ownerState.loadingPosition === 'end' && ownerState.fullWidth, + style: { + [`& .${loadingButtonClasses.startIconLoadingStart}, & .${loadingButtonClasses.endIconLoadingEnd}`]: + { + transition: theme.transitions.create(['opacity'], { + duration: theme.transitions.duration.short, + }), + opacity: 0, + marginLeft: -8, + }, + }, + }, + ], })); const LoadingButtonLoadingIndicator = styled('span', { @@ -100,41 +113,86 @@ const LoadingButtonLoadingIndicator = styled('span', { styles[`loadingIndicator${capitalize(ownerState.loadingPosition)}`], ]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ position: 'absolute', visibility: 'visible', display: 'flex', - ...(ownerState.loadingPosition === 'start' && - (ownerState.variant === 'outlined' || ownerState.variant === 'contained') && { - left: ownerState.size === 'small' ? 10 : 14, - }), - ...(ownerState.loadingPosition === 'start' && - ownerState.variant === 'text' && { - left: 6, - }), - ...(ownerState.loadingPosition === 'center' && { - left: '50%', - transform: 'translate(-50%)', - color: (theme.vars || theme).palette.action.disabled, - }), - ...(ownerState.loadingPosition === 'end' && - (ownerState.variant === 'outlined' || ownerState.variant === 'contained') && { - right: ownerState.size === 'small' ? 10 : 14, - }), - ...(ownerState.loadingPosition === 'end' && - ownerState.variant === 'text' && { - right: 6, - }), - ...(ownerState.loadingPosition === 'start' && - ownerState.fullWidth && { - position: 'relative', - left: -10, - }), - ...(ownerState.loadingPosition === 'end' && - ownerState.fullWidth && { - position: 'relative', - right: -10, - }), + variants: [ + { + props: { + loadingPosition: 'start', + size: 'small', + }, + style: { + left: 10, + }, + }, + { + props: ({ loadingPosition, ownerState }) => + loadingPosition === 'start' && ownerState.size !== 'small', + style: { + left: 14, + }, + }, + { + props: { + variant: 'text', + loadingPosition: 'start', + }, + style: { + left: 6, + }, + }, + { + props: { + loadingPosition: 'center', + }, + style: { + left: '50%', + transform: 'translate(-50%)', + color: (theme.vars || theme).palette.action.disabled, + }, + }, + { + props: { + loadingPosition: 'end', + size: 'small', + }, + style: { + right: 10, + }, + }, + { + props: ({ loadingPosition, ownerState }) => + loadingPosition === 'end' && ownerState.size !== 'small', + style: { + right: 14, + }, + }, + { + props: { + variant: 'text', + loadingPosition: 'end', + }, + style: { + right: 6, + }, + }, + { + props: ({ ownerState }) => ownerState.loadingPosition === 'start' && ownerState.fullWidth, + style: { + position: 'relative', + left: -10, + }, + }, + { + props: ({ ownerState }) => ownerState.loadingPosition === 'end' && ownerState.fullWidth, + style: { + position: 'relative', + right: -10, + }, + }, + ], })); const LoadingButton = React.forwardRef(function LoadingButton(inProps, ref) { diff --git a/packages/mui-lab/src/zero-styled/index.ts b/packages/mui-lab/src/zero-styled/index.ts new file mode 100644 index 00000000000000..ac070a82614dfd --- /dev/null +++ b/packages/mui-lab/src/zero-styled/index.ts @@ -0,0 +1,8 @@ +import { useThemeProps } from '@mui/material/styles'; + +export { styled } from '@mui/material/styles'; + +// eslint-disable-next-line @typescript-eslint/no-unused-vars +export function createUseThemeProps(name: string) { + return useThemeProps; +} diff --git a/packages/mui-material/src/Breadcrumbs/BreadcrumbCollapsed.js b/packages/mui-material/src/Breadcrumbs/BreadcrumbCollapsed.js index 2b208d529df3a1..7a5dc972423cba 100644 --- a/packages/mui-material/src/Breadcrumbs/BreadcrumbCollapsed.js +++ b/packages/mui-material/src/Breadcrumbs/BreadcrumbCollapsed.js @@ -2,7 +2,7 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import { emphasize } from '@mui/system/colorManipulator'; -import styled from '../styles/styled'; +import { styled } from '../zero-styled'; import MoreHorizIcon from '../internal/svg-icons/MoreHoriz'; import ButtonBase from '../ButtonBase'; diff --git a/packages/mui-material/src/Button/Button.js b/packages/mui-material/src/Button/Button.js index 822a5a7ca3ad7d..3caec7c29e7aab 100644 --- a/packages/mui-material/src/Button/Button.js +++ b/packages/mui-material/src/Button/Button.js @@ -5,7 +5,7 @@ import clsx from 'clsx'; import resolveProps from '@mui/utils/resolveProps'; import composeClasses from '@mui/utils/composeClasses'; import { alpha } from '@mui/system/colorManipulator'; -import { rootShouldForwardProp } from '../styles/styled'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; import { styled, createUseThemeProps } from '../zero-styled'; import ButtonBase from '../ButtonBase'; import capitalize from '../utils/capitalize'; diff --git a/packages/mui-material/src/Checkbox/Checkbox.js b/packages/mui-material/src/Checkbox/Checkbox.js index 3687c1376e3d9c..342ecab31729ea 100644 --- a/packages/mui-material/src/Checkbox/Checkbox.js +++ b/packages/mui-material/src/Checkbox/Checkbox.js @@ -117,6 +117,7 @@ const Checkbox = React.forwardRef(function Checkbox(inProps, ref) { indeterminateIcon: indeterminateIconProp = defaultIndeterminateIcon, inputProps, size = 'medium', + disableRipple = false, className, ...other } = props; @@ -126,6 +127,7 @@ const Checkbox = React.forwardRef(function Checkbox(inProps, ref) { const ownerState = { ...props, + disableRipple, color, indeterminate, size, diff --git a/packages/mui-material/src/Collapse/Collapse.js b/packages/mui-material/src/Collapse/Collapse.js index 27bc19224a42f5..1b459620da0610 100644 --- a/packages/mui-material/src/Collapse/Collapse.js +++ b/packages/mui-material/src/Collapse/Collapse.js @@ -6,14 +6,15 @@ import { Transition } from 'react-transition-group'; import useTimeout from '@mui/utils/useTimeout'; import elementTypeAcceptingRef from '@mui/utils/elementTypeAcceptingRef'; import composeClasses from '@mui/utils/composeClasses'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import { duration } from '../styles/createTransitions'; import { getTransitionProps } from '../transitions/utils'; import useTheme from '../styles/useTheme'; import { useForkRef } from '../utils'; import { getCollapseUtilityClass } from './collapseClasses'; +const useThemeProps = createUseThemeProps('MuiCollapse'); + const useUtilityClasses = (ownerState) => { const { orientation, classes } = ownerState; @@ -44,54 +45,88 @@ const CollapseRoot = styled('div', { styles.hidden, ]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ height: 0, overflow: 'hidden', transition: theme.transitions.create('height'), - ...(ownerState.orientation === 'horizontal' && { - height: 'auto', - width: 0, - transition: theme.transitions.create('width'), - }), - ...(ownerState.state === 'entered' && { - height: 'auto', - overflow: 'visible', - ...(ownerState.orientation === 'horizontal' && { - width: 'auto', - }), - }), - ...(ownerState.state === 'exited' && - !ownerState.in && - ownerState.collapsedSize === '0px' && { - visibility: 'hidden', - }), + variants: [ + { + props: { + orientation: 'horizontal', + }, + style: { + height: 'auto', + width: 0, + transition: theme.transitions.create('width'), + }, + }, + { + props: { + state: 'entered', + }, + style: { + height: 'auto', + overflow: 'visible', + }, + }, + { + props: { + state: 'entered', + orientation: 'horizontal', + }, + style: { + width: 'auto', + }, + }, + { + props: ({ ownerState }) => + ownerState.state === 'exited' && !ownerState.in && ownerState.collapsedSize === '0px', + style: { + visibility: 'hidden', + }, + }, + ], })); const CollapseWrapper = styled('div', { name: 'MuiCollapse', slot: 'Wrapper', overridesResolver: (props, styles) => styles.wrapper, -})(({ ownerState }) => ({ +})({ // Hack to get children with a negative margin to not falsify the height computation. display: 'flex', width: '100%', - ...(ownerState.orientation === 'horizontal' && { - width: 'auto', - height: '100%', - }), -})); + variants: [ + { + props: { + orientation: 'horizontal', + }, + style: { + width: 'auto', + height: '100%', + }, + }, + ], +}); const CollapseWrapperInner = styled('div', { name: 'MuiCollapse', slot: 'WrapperInner', overridesResolver: (props, styles) => styles.wrapperInner, -})(({ ownerState }) => ({ +})({ width: '100%', - ...(ownerState.orientation === 'horizontal' && { - width: 'auto', - height: '100%', - }), -})); + variants: [ + { + props: { + orientation: 'horizontal', + }, + style: { + width: 'auto', + height: '100%', + }, + }, + ], +}); /** * The Collapse transition is used by the @@ -418,6 +453,8 @@ Collapse.propTypes /* remove-proptypes */ = { ]), }; -Collapse.muiSupportAuto = true; +if (Collapse) { + Collapse.muiSupportAuto = true; +} export default Collapse; diff --git a/packages/mui-material/src/Dialog/Dialog.js b/packages/mui-material/src/Dialog/Dialog.js index b88a9103d01389..f92ff6b029842a 100644 --- a/packages/mui-material/src/Dialog/Dialog.js +++ b/packages/mui-material/src/Dialog/Dialog.js @@ -8,12 +8,13 @@ import capitalize from '../utils/capitalize'; import Modal from '../Modal'; import Fade from '../Fade'; import Paper from '../Paper'; -import useThemeProps from '../styles/useThemeProps'; -import styled from '../styles/styled'; import dialogClasses, { getDialogUtilityClass } from './dialogClasses'; import DialogContext from './DialogContext'; import Backdrop from '../Backdrop'; import useTheme from '../styles/useTheme'; +import { styled, createUseThemeProps } from '../zero-styled'; + +const useThemeProps = createUseThemeProps('MuiDialog'); const DialogBackdrop = styled(Backdrop, { name: 'MuiDialog', @@ -61,31 +62,43 @@ const DialogContainer = styled('div', { return [styles.container, styles[`scroll${capitalize(ownerState.scroll)}`]]; }, -})(({ ownerState }) => ({ +})({ height: '100%', '@media print': { height: 'auto', }, // We disable the focus ring for mouse, touch and keyboard users. outline: 0, - ...(ownerState.scroll === 'paper' && { - display: 'flex', - justifyContent: 'center', - alignItems: 'center', - }), - ...(ownerState.scroll === 'body' && { - overflowY: 'auto', - overflowX: 'hidden', - textAlign: 'center', - '&::after': { - content: '""', - display: 'inline-block', - verticalAlign: 'middle', - height: '100%', - width: '0', + variants: [ + { + props: { + scroll: 'paper', + }, + style: { + display: 'flex', + justifyContent: 'center', + alignItems: 'center', + }, }, - }), -})); + { + props: { + scroll: 'body', + }, + style: { + overflowY: 'auto', + overflowX: 'hidden', + textAlign: 'center', + '&::after': { + content: '""', + display: 'inline-block', + verticalAlign: 'middle', + height: '100%', + width: '0', + }, + }, + }, + ], +}); const DialogPaper = styled(Paper, { name: 'MuiDialog', @@ -101,7 +114,7 @@ const DialogPaper = styled(Paper, { ownerState.fullScreen && styles.paperFullScreen, ]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ margin: 32, position: 'relative', overflowY: 'auto', // Fix IE11 issue, to remove at some point. @@ -109,54 +122,84 @@ const DialogPaper = styled(Paper, { overflowY: 'visible', boxShadow: 'none', }, - ...(ownerState.scroll === 'paper' && { - display: 'flex', - flexDirection: 'column', - maxHeight: 'calc(100% - 64px)', - }), - ...(ownerState.scroll === 'body' && { - display: 'inline-block', - verticalAlign: 'middle', - textAlign: 'left', // 'initial' doesn't work on IE11 - }), - ...(!ownerState.maxWidth && { - maxWidth: 'calc(100% - 64px)', - }), - ...(ownerState.maxWidth === 'xs' && { - maxWidth: - theme.breakpoints.unit === 'px' - ? Math.max(theme.breakpoints.values.xs, 444) - : `max(${theme.breakpoints.values.xs}${theme.breakpoints.unit}, 444px)`, - [`&.${dialogClasses.paperScrollBody}`]: { - [theme.breakpoints.down(Math.max(theme.breakpoints.values.xs, 444) + 32 * 2)]: { + variants: [ + { + props: { + scroll: 'paper', + }, + style: { + display: 'flex', + flexDirection: 'column', + maxHeight: 'calc(100% - 64px)', + }, + }, + { + props: { + scroll: 'body', + }, + style: { + display: 'inline-block', + verticalAlign: 'middle', + textAlign: 'left', // 'initial' doesn't work on IE11 + }, + }, + { + props: ({ ownerState }) => !ownerState.maxWidth, + style: { maxWidth: 'calc(100% - 64px)', }, }, - }), - ...(ownerState.maxWidth && - ownerState.maxWidth !== 'xs' && { - maxWidth: `${theme.breakpoints.values[ownerState.maxWidth]}${theme.breakpoints.unit}`, - [`&.${dialogClasses.paperScrollBody}`]: { - [theme.breakpoints.down(theme.breakpoints.values[ownerState.maxWidth] + 32 * 2)]: { - maxWidth: 'calc(100% - 64px)', + { + props: { + maxWidth: 'xs', + }, + style: { + maxWidth: + theme.breakpoints.unit === 'px' + ? Math.max(theme.breakpoints.values.xs, 444) + : `max(${theme.breakpoints.values.xs}${theme.breakpoints.unit}, 444px)`, + [`&.${dialogClasses.paperScrollBody}`]: { + [theme.breakpoints.down(Math.max(theme.breakpoints.values.xs, 444) + 32 * 2)]: { + maxWidth: 'calc(100% - 64px)', + }, + }, + }, + }, + ...Object.keys(theme.breakpoints.values) + .filter((maxWidth) => maxWidth !== 'xs') + .map((maxWidth) => ({ + props: { maxWidth }, + style: { + maxWidth: `${theme.breakpoints.values[maxWidth]}${theme.breakpoints.unit}`, + [`&.${dialogClasses.paperScrollBody}`]: { + [theme.breakpoints.down(theme.breakpoints.values[maxWidth] + 32 * 2)]: { + maxWidth: 'calc(100% - 64px)', + }, + }, + }, + })), + { + props: ({ ownerState }) => ownerState.fullWidth, + style: { + width: 'calc(100% - 64px)', + }, + }, + { + props: ({ ownerState }) => ownerState.fullScreen, + style: { + margin: 0, + width: '100%', + maxWidth: '100%', + height: '100%', + maxHeight: 'none', + borderRadius: 0, + [`&.${dialogClasses.paperScrollBody}`]: { + margin: 0, + maxWidth: '100%', }, }, - }), - ...(ownerState.fullWidth && { - width: 'calc(100% - 64px)', - }), - ...(ownerState.fullScreen && { - margin: 0, - width: '100%', - maxWidth: '100%', - height: '100%', - maxHeight: 'none', - borderRadius: 0, - [`&.${dialogClasses.paperScrollBody}`]: { - margin: 0, - maxWidth: '100%', }, - }), + ], })); /** diff --git a/packages/mui-material/src/DialogActions/DialogActions.js b/packages/mui-material/src/DialogActions/DialogActions.js index a66fb25bf2008b..b57f1dab955c8d 100644 --- a/packages/mui-material/src/DialogActions/DialogActions.js +++ b/packages/mui-material/src/DialogActions/DialogActions.js @@ -3,10 +3,11 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getDialogActionsUtilityClass } from './dialogActionsClasses'; +const useThemeProps = createUseThemeProps('MuiDialogActions'); + const useUtilityClasses = (ownerState) => { const { classes, disableSpacing } = ownerState; @@ -25,18 +26,23 @@ const DialogActionsRoot = styled('div', { return [styles.root, !ownerState.disableSpacing && styles.spacing]; }, -})(({ ownerState }) => ({ +})({ display: 'flex', alignItems: 'center', padding: 8, justifyContent: 'flex-end', flex: '0 0 auto', - ...(!ownerState.disableSpacing && { - '& > :not(style) ~ :not(style)': { - marginLeft: 8, + variants: [ + { + props: ({ ownerState }) => !ownerState.disableSpacing, + style: { + '& > :not(style) ~ :not(style)': { + marginLeft: 8, + }, + }, }, - }), -})); + ], +}); const DialogActions = React.forwardRef(function DialogActions(inProps, ref) { const props = useThemeProps({ diff --git a/packages/mui-material/src/DialogContent/DialogContent.js b/packages/mui-material/src/DialogContent/DialogContent.js index ec0367c918df4c..2a9d222ef44c2b 100644 --- a/packages/mui-material/src/DialogContent/DialogContent.js +++ b/packages/mui-material/src/DialogContent/DialogContent.js @@ -3,11 +3,12 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getDialogContentUtilityClass } from './dialogContentClasses'; import dialogTitleClasses from '../DialogTitle/dialogTitleClasses'; +const useThemeProps = createUseThemeProps('MuiDialogContent'); + const useUtilityClasses = (ownerState) => { const { classes, dividers } = ownerState; @@ -26,23 +27,30 @@ const DialogContentRoot = styled('div', { return [styles.root, ownerState.dividers && styles.dividers]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ flex: '1 1 auto', // Add iOS momentum scrolling for iOS < 13.0 WebkitOverflowScrolling: 'touch', overflowY: 'auto', padding: '20px 24px', - ...(ownerState.dividers - ? { + variants: [ + { + props: ({ ownerState }) => ownerState.dividers, + style: { padding: '16px 24px', borderTop: `1px solid ${(theme.vars || theme).palette.divider}`, borderBottom: `1px solid ${(theme.vars || theme).palette.divider}`, - } - : { + }, + }, + { + props: ({ ownerState }) => !ownerState.dividers, + style: { [`.${dialogTitleClasses.root} + &`]: { paddingTop: 0, }, - }), + }, + }, + ], })); const DialogContent = React.forwardRef(function DialogContent(inProps, ref) { diff --git a/packages/mui-material/src/DialogContentText/DialogContentText.js b/packages/mui-material/src/DialogContentText/DialogContentText.js index c6c8cabc6056ed..ebb915bb144f50 100644 --- a/packages/mui-material/src/DialogContentText/DialogContentText.js +++ b/packages/mui-material/src/DialogContentText/DialogContentText.js @@ -3,11 +3,13 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; -import styled, { rootShouldForwardProp } from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; +import { styled, createUseThemeProps } from '../zero-styled'; import Typography from '../Typography'; import { getDialogContentTextUtilityClass } from './dialogContentTextClasses'; +const useThemeProps = createUseThemeProps('MuiDialogContentText'); + const useUtilityClasses = (ownerState) => { const { classes } = ownerState; diff --git a/packages/mui-material/src/DialogTitle/DialogTitle.js b/packages/mui-material/src/DialogTitle/DialogTitle.js index aa160274950623..9c59a9e706d32c 100644 --- a/packages/mui-material/src/DialogTitle/DialogTitle.js +++ b/packages/mui-material/src/DialogTitle/DialogTitle.js @@ -4,11 +4,12 @@ import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import Typography from '../Typography'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getDialogTitleUtilityClass } from './dialogTitleClasses'; import DialogContext from '../Dialog/DialogContext'; +const useThemeProps = createUseThemeProps('MuiDialogTitle'); + const useUtilityClasses = (ownerState) => { const { classes } = ownerState; diff --git a/packages/mui-material/src/Drawer/Drawer.js b/packages/mui-material/src/Drawer/Drawer.js index 1849bd69a9d238..e3d5f686f503c1 100644 --- a/packages/mui-material/src/Drawer/Drawer.js +++ b/packages/mui-material/src/Drawer/Drawer.js @@ -10,10 +10,12 @@ import Slide from '../Slide'; import Paper from '../Paper'; import capitalize from '../utils/capitalize'; import useTheme from '../styles/useTheme'; -import useThemeProps from '../styles/useThemeProps'; -import styled, { rootShouldForwardProp } from '../styles/styled'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getDrawerUtilityClass } from './drawerClasses'; +const useThemeProps = createUseThemeProps('MuiDrawer'); + const overridesResolver = (props, styles) => { const { ownerState } = props; @@ -72,7 +74,7 @@ const DrawerPaper = styled(Paper, { styles[`paperAnchorDocked${capitalize(ownerState.anchor)}`], ]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ overflowY: 'auto', display: 'flex', flexDirection: 'column', @@ -88,43 +90,75 @@ const DrawerPaper = styled(Paper, { // At some point, it would be better to keep it for keyboard users. // :focus-ring CSS pseudo-class will help. outline: 0, - ...(ownerState.anchor === 'left' && { - left: 0, - }), - ...(ownerState.anchor === 'top' && { - top: 0, - left: 0, - right: 0, - height: 'auto', - maxHeight: '100%', - }), - ...(ownerState.anchor === 'right' && { - right: 0, - }), - ...(ownerState.anchor === 'bottom' && { - top: 'auto', - left: 0, - bottom: 0, - right: 0, - height: 'auto', - maxHeight: '100%', - }), - ...(ownerState.anchor === 'left' && - ownerState.variant !== 'temporary' && { - borderRight: `1px solid ${(theme.vars || theme).palette.divider}`, - }), - ...(ownerState.anchor === 'top' && - ownerState.variant !== 'temporary' && { - borderBottom: `1px solid ${(theme.vars || theme).palette.divider}`, - }), - ...(ownerState.anchor === 'right' && - ownerState.variant !== 'temporary' && { - borderLeft: `1px solid ${(theme.vars || theme).palette.divider}`, - }), - ...(ownerState.anchor === 'bottom' && - ownerState.variant !== 'temporary' && { - borderTop: `1px solid ${(theme.vars || theme).palette.divider}`, - }), + variants: [ + { + props: { + anchor: 'left', + }, + style: { + left: 0, + }, + }, + { + props: { + anchor: 'top', + }, + style: { + top: 0, + left: 0, + right: 0, + height: 'auto', + maxHeight: '100%', + }, + }, + { + props: { + anchor: 'right', + }, + style: { + right: 0, + }, + }, + { + props: { + anchor: 'bottom', + }, + style: { + top: 'auto', + left: 0, + bottom: 0, + right: 0, + height: 'auto', + maxHeight: '100%', + }, + }, + { + props: ({ ownerState }) => ownerState.anchor === 'left' && ownerState.variant !== 'temporary', + style: { + borderRight: `1px solid ${(theme.vars || theme).palette.divider}`, + }, + }, + { + props: ({ ownerState }) => ownerState.anchor === 'top' && ownerState.variant !== 'temporary', + style: { + borderBottom: `1px solid ${(theme.vars || theme).palette.divider}`, + }, + }, + { + props: ({ ownerState }) => + ownerState.anchor === 'right' && ownerState.variant !== 'temporary', + style: { + borderLeft: `1px solid ${(theme.vars || theme).palette.divider}`, + }, + }, + { + props: ({ ownerState }) => + ownerState.anchor === 'bottom' && ownerState.variant !== 'temporary', + style: { + borderTop: `1px solid ${(theme.vars || theme).palette.divider}`, + }, + }, + ], })); const oppositeDirection = { diff --git a/packages/mui-material/src/Fab/Fab.js b/packages/mui-material/src/Fab/Fab.js index bf80527ebd2f57..ddd85203a3d2b3 100644 --- a/packages/mui-material/src/Fab/Fab.js +++ b/packages/mui-material/src/Fab/Fab.js @@ -6,7 +6,7 @@ import composeClasses from '@mui/utils/composeClasses'; import ButtonBase from '../ButtonBase'; import capitalize from '../utils/capitalize'; import fabClasses, { getFabUtilityClass } from './fabClasses'; -import { rootShouldForwardProp } from '../styles/styled'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; import { styled, createUseThemeProps } from '../zero-styled'; const useThemeProps = createUseThemeProps('MuiFab'); diff --git a/packages/mui-material/src/FilledInput/FilledInput.d.ts b/packages/mui-material/src/FilledInput/FilledInput.d.ts index c9caa77ac2b6c3..b54d7c165608ec 100644 --- a/packages/mui-material/src/FilledInput/FilledInput.d.ts +++ b/packages/mui-material/src/FilledInput/FilledInput.d.ts @@ -17,6 +17,7 @@ export interface FilledInputProps extends StandardProps { hiddenLabel?: boolean; /** * If `true`, the input will not have an underline. + * @default false */ disableUnderline?: boolean; /** diff --git a/packages/mui-material/src/FilledInput/FilledInput.js b/packages/mui-material/src/FilledInput/FilledInput.js index 9e2de297107310..2173dc9a565410 100644 --- a/packages/mui-material/src/FilledInput/FilledInput.js +++ b/packages/mui-material/src/FilledInput/FilledInput.js @@ -5,16 +5,18 @@ import refType from '@mui/utils/refType'; import PropTypes from 'prop-types'; import composeClasses from '@mui/utils/composeClasses'; import InputBase from '../InputBase'; -import styled, { rootShouldForwardProp } from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; +import { styled, createUseThemeProps } from '../zero-styled'; import filledInputClasses, { getFilledInputUtilityClass } from './filledInputClasses'; import { rootOverridesResolver as inputBaseRootOverridesResolver, inputOverridesResolver as inputBaseInputOverridesResolver, InputBaseRoot, - InputBaseComponent as InputBaseInput, + InputBaseInput, } from '../InputBase/InputBase'; +const useThemeProps = createUseThemeProps('MuiFilledInput'); + const useUtilityClasses = (ownerState) => { const { classes, disableUnderline } = ownerState; @@ -42,7 +44,7 @@ const FilledInputRoot = styled(InputBaseRoot, { !ownerState.disableUnderline && styles.underline, ]; }, -})(({ theme, ownerState }) => { +})(({ theme }) => { const light = theme.palette.mode === 'light'; const bottomLineColor = light ? 'rgba(0, 0, 0, 0.42)' : 'rgba(255, 255, 255, 0.7)'; const backgroundColor = light ? 'rgba(0, 0, 0, 0.06)' : 'rgba(255, 255, 255, 0.09)'; @@ -70,80 +72,113 @@ const FilledInputRoot = styled(InputBaseRoot, { [`&.${filledInputClasses.disabled}`]: { backgroundColor: theme.vars ? theme.vars.palette.FilledInput.disabledBg : disabledBackground, }, - ...(!ownerState.disableUnderline && { - '&::after': { - borderBottom: `2px solid ${ - (theme.vars || theme).palette[ownerState.color || 'primary']?.main - }`, - left: 0, - bottom: 0, - // Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242 - content: '""', - position: 'absolute', - right: 0, - transform: 'scaleX(0)', - transition: theme.transitions.create('transform', { - duration: theme.transitions.duration.shorter, - easing: theme.transitions.easing.easeOut, - }), - pointerEvents: 'none', // Transparent to the hover style. + variants: [ + { + props: ({ ownerState }) => !ownerState.disableUnderline, + style: { + '&::after': { + left: 0, + bottom: 0, + // Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242 + content: '""', + position: 'absolute', + right: 0, + transform: 'scaleX(0)', + transition: theme.transitions.create('transform', { + duration: theme.transitions.duration.shorter, + easing: theme.transitions.easing.easeOut, + }), + pointerEvents: 'none', // Transparent to the hover style. + }, + [`&.${filledInputClasses.focused}:after`]: { + // translateX(0) is a workaround for Safari transform scale bug + // See https://github.com/mui/material-ui/issues/31766 + transform: 'scaleX(1) translateX(0)', + }, + [`&.${filledInputClasses.error}`]: { + '&::before, &::after': { + borderBottomColor: (theme.vars || theme).palette.error.main, + }, + }, + '&::before': { + borderBottom: `1px solid ${ + theme.vars + ? `rgba(${theme.vars.palette.common.onBackgroundChannel} / ${theme.vars.opacity.inputUnderline})` + : bottomLineColor + }`, + left: 0, + bottom: 0, + // Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242 + content: '"\\00a0"', + position: 'absolute', + right: 0, + transition: theme.transitions.create('border-bottom-color', { + duration: theme.transitions.duration.shorter, + }), + pointerEvents: 'none', // Transparent to the hover style. + }, + [`&:hover:not(.${filledInputClasses.disabled}, .${filledInputClasses.error}):before`]: { + borderBottom: `1px solid ${(theme.vars || theme).palette.text.primary}`, + }, + [`&.${filledInputClasses.disabled}:before`]: { + borderBottomStyle: 'dotted', + }, + }, }, - [`&.${filledInputClasses.focused}:after`]: { - // translateX(0) is a workaround for Safari transform scale bug - // See https://github.com/mui/material-ui/issues/31766 - transform: 'scaleX(1) translateX(0)', + ...Object.entries(theme.palette) + .filter(([, value]) => value.main) // check all the used fields in the style below + .map(([color]) => ({ + props: { + disableUnderline: false, + color, + }, + style: { + '&::after': { + borderBottom: `2px solid ${(theme.vars || theme).palette[color]?.main}`, + }, + }, + })), + { + props: ({ ownerState }) => ownerState.startAdornment, + style: { + paddingLeft: 12, + }, }, - [`&.${filledInputClasses.error}`]: { - '&::before, &::after': { - borderBottomColor: (theme.vars || theme).palette.error.main, + { + props: ({ ownerState }) => ownerState.endAdornment, + style: { + paddingRight: 12, }, }, - '&::before': { - borderBottom: `1px solid ${ - theme.vars - ? `rgba(${theme.vars.palette.common.onBackgroundChannel} / ${theme.vars.opacity.inputUnderline})` - : bottomLineColor - }`, - left: 0, - bottom: 0, - // Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242 - content: '"\\00a0"', - position: 'absolute', - right: 0, - transition: theme.transitions.create('border-bottom-color', { - duration: theme.transitions.duration.shorter, - }), - pointerEvents: 'none', // Transparent to the hover style. + { + props: ({ ownerState }) => ownerState.multiline, + style: { + padding: '25px 12px 8px', + }, }, - [`&:hover:not(.${filledInputClasses.disabled}, .${filledInputClasses.error}):before`]: { - borderBottom: `1px solid ${(theme.vars || theme).palette.text.primary}`, + { + props: ({ ownerState, size }) => ownerState.multiline && size === 'small', + style: { + paddingTop: 21, + paddingBottom: 4, + }, }, - [`&.${filledInputClasses.disabled}:before`]: { - borderBottomStyle: 'dotted', + { + props: ({ ownerState }) => ownerState.multiline && ownerState.hiddenLabel, + style: { + paddingTop: 16, + paddingBottom: 17, + }, }, - }), - ...(ownerState.startAdornment && { - paddingLeft: 12, - }), - ...(ownerState.endAdornment && { - paddingRight: 12, - }), - ...(ownerState.multiline && { - padding: '25px 12px 8px', - ...(ownerState.size === 'small' && { - paddingTop: 21, - paddingBottom: 4, - }), - ...(ownerState.hiddenLabel && { - paddingTop: 16, - paddingBottom: 17, - }), - ...(ownerState.hiddenLabel && - ownerState.size === 'small' && { + { + props: ({ ownerState }) => + ownerState.multiline && ownerState.hiddenLabel && ownerState.size === 'small', + style: { paddingTop: 8, paddingBottom: 9, - }), - }), + }, + }, + ], }; }); @@ -151,7 +186,7 @@ const FilledInputInput = styled(InputBaseInput, { name: 'MuiFilledInput', slot: 'Input', overridesResolver: inputBaseInputOverridesResolver, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ paddingTop: 25, paddingRight: 12, paddingBottom: 8, @@ -178,38 +213,59 @@ const FilledInputInput = styled(InputBaseInput, { }, }, }), - ...(ownerState.size === 'small' && { - paddingTop: 21, - paddingBottom: 4, - }), - ...(ownerState.hiddenLabel && { - paddingTop: 16, - paddingBottom: 17, - }), - ...(ownerState.startAdornment && { - paddingLeft: 0, - }), - ...(ownerState.endAdornment && { - paddingRight: 0, - }), - ...(ownerState.hiddenLabel && - ownerState.size === 'small' && { - paddingTop: 8, - paddingBottom: 9, - }), - ...(ownerState.multiline && { - paddingTop: 0, - paddingBottom: 0, - paddingLeft: 0, - paddingRight: 0, - }), + variants: [ + { + props: { + size: 'small', + }, + style: { + paddingTop: 21, + paddingBottom: 4, + }, + }, + { + props: ({ ownerState }) => ownerState.hiddenLabel, + style: { + paddingTop: 16, + paddingBottom: 17, + }, + }, + { + props: ({ ownerState }) => ownerState.startAdornment, + style: { + paddingLeft: 0, + }, + }, + { + props: ({ ownerState }) => ownerState.endAdornment, + style: { + paddingRight: 0, + }, + }, + { + props: ({ ownerState }) => ownerState.hiddenLabel && ownerState.size === 'small', + style: { + paddingTop: 8, + paddingBottom: 9, + }, + }, + { + props: ({ ownerState }) => ownerState.multiline, + style: { + paddingTop: 0, + paddingBottom: 0, + paddingLeft: 0, + paddingRight: 0, + }, + }, + ], })); const FilledInput = React.forwardRef(function FilledInput(inProps, ref) { const props = useThemeProps({ props: inProps, name: 'MuiFilledInput' }); const { - disableUnderline, + disableUnderline = false, components = {}, componentsProps: componentsPropsProp, fullWidth = false, @@ -224,6 +280,7 @@ const FilledInput = React.forwardRef(function FilledInput(inProps, ref) { const ownerState = { ...props, + disableUnderline, fullWidth, inputComponent, multiline, @@ -321,6 +378,7 @@ FilledInput.propTypes /* remove-proptypes */ = { disabled: PropTypes.bool, /** * If `true`, the input will not have an underline. + * @default false */ disableUnderline: PropTypes.bool, /** @@ -457,6 +515,8 @@ FilledInput.propTypes /* remove-proptypes */ = { value: PropTypes.any, }; -FilledInput.muiName = 'Input'; +if (FilledInput) { + FilledInput.muiName = 'Input'; +} export default FilledInput; diff --git a/packages/mui-material/src/FormHelperText/FormHelperText.js b/packages/mui-material/src/FormHelperText/FormHelperText.js index 9a1a133b958a95..e20bfe5649ca73 100644 --- a/packages/mui-material/src/FormHelperText/FormHelperText.js +++ b/packages/mui-material/src/FormHelperText/FormHelperText.js @@ -5,10 +5,11 @@ import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import formControlState from '../FormControl/formControlState'; import useFormControl from '../FormControl/useFormControl'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import capitalize from '../utils/capitalize'; import formHelperTextClasses, { getFormHelperTextUtilityClasses } from './formHelperTextClasses'; -import useThemeProps from '../styles/useThemeProps'; + +const useThemeProps = createUseThemeProps('MuiFormHelperText'); const useUtilityClasses = (ownerState) => { const { classes, contained, size, disabled, error, filled, focused, required } = ownerState; diff --git a/packages/mui-material/src/FormLabel/FormLabel.js b/packages/mui-material/src/FormLabel/FormLabel.js index ba9826f0d7f52a..1eb1fcad5dfc2a 100644 --- a/packages/mui-material/src/FormLabel/FormLabel.js +++ b/packages/mui-material/src/FormLabel/FormLabel.js @@ -6,10 +6,11 @@ import composeClasses from '@mui/utils/composeClasses'; import formControlState from '../FormControl/formControlState'; import useFormControl from '../FormControl/useFormControl'; import capitalize from '../utils/capitalize'; -import useThemeProps from '../styles/useThemeProps'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses'; +const useThemeProps = createUseThemeProps('MuiFormLabel'); + const useUtilityClasses = (ownerState) => { const { classes, color, focused, disabled, error, filled, required } = ownerState; const slots = { @@ -38,21 +39,35 @@ export const FormLabelRoot = styled('label', { ...(ownerState.filled && styles.filled), }; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ color: (theme.vars || theme).palette.text.secondary, ...theme.typography.body1, lineHeight: '1.4375em', padding: 0, position: 'relative', - [`&.${formLabelClasses.focused}`]: { - color: (theme.vars || theme).palette[ownerState.color].main, - }, - [`&.${formLabelClasses.disabled}`]: { - color: (theme.vars || theme).palette.text.disabled, - }, - [`&.${formLabelClasses.error}`]: { - color: (theme.vars || theme).palette.error.main, - }, + variants: [ + ...Object.entries(theme.palette) + .filter(([, value]) => value.main) + .map(([color]) => ({ + props: { color }, + style: { + [`&.${formLabelClasses.focused}`]: { + color: (theme.vars || theme).palette[color].main, + }, + }, + })), + { + props: {}, + style: { + [`&.${formLabelClasses.disabled}`]: { + color: (theme.vars || theme).palette.text.disabled, + }, + [`&.${formLabelClasses.error}`]: { + color: (theme.vars || theme).palette.error.main, + }, + }, + }, + ], })); const AsteriskComponent = styled('span', { diff --git a/packages/mui-material/src/FormLabel/FormLabel.test.js b/packages/mui-material/src/FormLabel/FormLabel.test.js index 412b5f6a59b433..9852498cc78aac 100644 --- a/packages/mui-material/src/FormLabel/FormLabel.test.js +++ b/packages/mui-material/src/FormLabel/FormLabel.test.js @@ -180,5 +180,15 @@ describe('', () => { color: hexToRgb(defaultTheme.palette.error.main), }); }); + + it('should have the disabled class and style, even when focused', () => { + const { container, getByTestId } = render( + , + ); + expect(container.querySelector(`.${classes.colorSecondary}`)).to.have.class(classes.disabled); + expect(getByTestId('FormLabel')).toHaveComputedStyle({ + color: defaultTheme.palette.text.disabled, + }); + }); }); }); diff --git a/packages/mui-material/src/Grow/Grow.js b/packages/mui-material/src/Grow/Grow.js index 77866f1f107765..670d4582c4ba86 100644 --- a/packages/mui-material/src/Grow/Grow.js +++ b/packages/mui-material/src/Grow/Grow.js @@ -288,6 +288,8 @@ Grow.propTypes /* remove-proptypes */ = { ]), }; -Grow.muiSupportAuto = true; +if (Grow) { + Grow.muiSupportAuto = true; +} export default Grow; diff --git a/packages/mui-material/src/Icon/Icon.js b/packages/mui-material/src/Icon/Icon.js index 8a8dbbc9344e4e..b6b029436f3761 100644 --- a/packages/mui-material/src/Icon/Icon.js +++ b/packages/mui-material/src/Icon/Icon.js @@ -3,11 +3,12 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; import capitalize from '../utils/capitalize'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getIconUtilityClass } from './iconClasses'; +const useThemeProps = createUseThemeProps('MuiIcon'); + const useUtilityClasses = (ownerState) => { const { color, fontSize, classes } = ownerState; @@ -34,7 +35,7 @@ const IconRoot = styled('span', { styles[`fontSize${capitalize(ownerState.fontSize)}`], ]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ userSelect: 'none', width: '1em', height: '1em', @@ -44,24 +45,72 @@ const IconRoot = styled('span', { display: 'inline-block', // allow overflow hidden to take action textAlign: 'center', // support non-square icon flexShrink: 0, - fontSize: { - inherit: 'inherit', - small: theme.typography.pxToRem(20), - medium: theme.typography.pxToRem(24), - large: theme.typography.pxToRem(36), - }[ownerState.fontSize], - // TODO v5 deprecate, v6 remove for sx - color: { - primary: (theme.vars || theme).palette.primary.main, - secondary: (theme.vars || theme).palette.secondary.main, - info: (theme.vars || theme).palette.info.main, - success: (theme.vars || theme).palette.success.main, - warning: (theme.vars || theme).palette.warning.main, - action: (theme.vars || theme).palette.action.active, - error: (theme.vars || theme).palette.error.main, - disabled: (theme.vars || theme).palette.action.disabled, - inherit: undefined, - }[ownerState.color], + variants: [ + { + props: { + fontSize: 'inherit', + }, + style: { + fontSize: 'inherit', + }, + }, + { + props: { + fontSize: 'small', + }, + style: { + fontSize: theme.typography.pxToRem(20), + }, + }, + { + props: { + fontSize: 'medium', + }, + style: { + fontSize: theme.typography.pxToRem(24), + }, + }, + { + props: { + fontSize: 'large', + }, + style: { + fontSize: theme.typography.pxToRem(36), + }, + }, + { + props: { + color: 'action', + }, + style: { + color: (theme.vars || theme).palette.action.active, + }, + }, + { + props: { + color: 'disabled', + }, + style: { + color: (theme.vars || theme).palette.action.disabled, + }, + }, + { + props: { + color: 'inherit', + }, + style: { + color: undefined, + }, + }, + ...Object.entries(theme.palette) + .filter(([, palette]) => palette.main) + .map(([color]) => ({ + props: { color }, + style: { + color: (theme.vars || theme).palette[color].main, + }, + })), + ], })); const Icon = React.forwardRef(function Icon(inProps, ref) { @@ -170,6 +219,8 @@ Icon.propTypes /* remove-proptypes */ = { ]), }; -Icon.muiName = 'Icon'; +if (Icon) { + Icon.muiName = 'Icon'; +} export default Icon; diff --git a/packages/mui-material/src/ImageList/ImageList.js b/packages/mui-material/src/ImageList/ImageList.js index 1bb5af39974eee..5eddd5b2d0e93c 100644 --- a/packages/mui-material/src/ImageList/ImageList.js +++ b/packages/mui-material/src/ImageList/ImageList.js @@ -4,11 +4,12 @@ import integerPropType from '@mui/utils/integerPropType'; import clsx from 'clsx'; import PropTypes from 'prop-types'; import * as React from 'react'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getImageListUtilityClass } from './imageListClasses'; import ImageListContext from './ImageListContext'; +const useThemeProps = createUseThemeProps('MuiImageList'); + const useUtilityClasses = (ownerState) => { const { classes, variant } = ownerState; diff --git a/packages/mui-material/src/ImageListItem/ImageListItem.js b/packages/mui-material/src/ImageListItem/ImageListItem.js index 32d2472c1f14e2..db5a43ced0b559 100644 --- a/packages/mui-material/src/ImageListItem/ImageListItem.js +++ b/packages/mui-material/src/ImageListItem/ImageListItem.js @@ -6,11 +6,12 @@ import PropTypes from 'prop-types'; import * as React from 'react'; import { isFragment } from 'react-is'; import ImageListContext from '../ImageList/ImageListContext'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import isMuiElement from '../utils/isMuiElement'; import imageListItemClasses, { getImageListItemUtilityClass } from './imageListItemClasses'; +const useThemeProps = createUseThemeProps('MuiImageListItem'); + const useUtilityClasses = (ownerState) => { const { classes, variant } = ownerState; diff --git a/packages/mui-material/src/ImageListItemBar/ImageListItemBar.js b/packages/mui-material/src/ImageListItemBar/ImageListItemBar.js index 4ec1ae66ce7fe2..f5be968bc2a616 100644 --- a/packages/mui-material/src/ImageListItemBar/ImageListItemBar.js +++ b/packages/mui-material/src/ImageListItemBar/ImageListItemBar.js @@ -3,11 +3,12 @@ import composeClasses from '@mui/utils/composeClasses'; import clsx from 'clsx'; import PropTypes from 'prop-types'; import * as React from 'react'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import capitalize from '../utils/capitalize'; import { getImageListItemBarUtilityClass } from './imageListItemBarClasses'; +const useThemeProps = createUseThemeProps('MuiImageListItemBar'); + const useUtilityClasses = (ownerState) => { const { classes, position, actionIcon, actionPosition } = ownerState; diff --git a/packages/mui-material/src/Input/Input.d.ts b/packages/mui-material/src/Input/Input.d.ts index 39f4b45fb9d8eb..87e624d32c0b21 100644 --- a/packages/mui-material/src/Input/Input.d.ts +++ b/packages/mui-material/src/Input/Input.d.ts @@ -10,6 +10,7 @@ export interface InputProps extends StandardProps { classes?: Partial; /** * If `true`, the `input` will not have an underline. + * @default false */ disableUnderline?: boolean; /** diff --git a/packages/mui-material/src/Input/Input.js b/packages/mui-material/src/Input/Input.js index 23f0d477ed74f3..e674c0c583c89b 100644 --- a/packages/mui-material/src/Input/Input.js +++ b/packages/mui-material/src/Input/Input.js @@ -5,16 +5,18 @@ import composeClasses from '@mui/utils/composeClasses'; import deepmerge from '@mui/utils/deepmerge'; import refType from '@mui/utils/refType'; import InputBase from '../InputBase'; -import styled, { rootShouldForwardProp } from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; +import { styled, createUseThemeProps } from '../zero-styled'; import inputClasses, { getInputUtilityClass } from './inputClasses'; import { rootOverridesResolver as inputBaseRootOverridesResolver, inputOverridesResolver as inputBaseInputOverridesResolver, InputBaseRoot, - InputBaseComponent as InputBaseInput, + InputBaseInput, } from '../InputBase/InputBase'; +const useThemeProps = createUseThemeProps('MuiInput'); + const useUtilityClasses = (ownerState) => { const { classes, disableUnderline } = ownerState; @@ -43,7 +45,7 @@ const InputRoot = styled(InputBaseRoot, { !ownerState.disableUnderline && styles.underline, ]; }, -})(({ theme, ownerState }) => { +})(({ theme }) => { const light = theme.palette.mode === 'light'; let bottomLineColor = light ? 'rgba(0, 0, 0, 0.42)' : 'rgba(255, 255, 255, 0.7)'; if (theme.vars) { @@ -51,61 +53,78 @@ const InputRoot = styled(InputBaseRoot, { } return { position: 'relative', - ...(ownerState.formControl && { - 'label + &': { - marginTop: 16, - }, - }), - ...(!ownerState.disableUnderline && { - '&::after': { - borderBottom: `2px solid ${(theme.vars || theme).palette[ownerState.color].main}`, - left: 0, - bottom: 0, - // Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242 - content: '""', - position: 'absolute', - right: 0, - transform: 'scaleX(0)', - transition: theme.transitions.create('transform', { - duration: theme.transitions.duration.shorter, - easing: theme.transitions.easing.easeOut, - }), - pointerEvents: 'none', // Transparent to the hover style. - }, - [`&.${inputClasses.focused}:after`]: { - // translateX(0) is a workaround for Safari transform scale bug - // See https://github.com/mui/material-ui/issues/31766 - transform: 'scaleX(1) translateX(0)', - }, - [`&.${inputClasses.error}`]: { - '&::before, &::after': { - borderBottomColor: (theme.vars || theme).palette.error.main, + variants: [ + { + props: ({ ownerState }) => ownerState.formControl, + style: { + 'label + &': { + marginTop: 16, + }, }, }, - '&::before': { - borderBottom: `1px solid ${bottomLineColor}`, - left: 0, - bottom: 0, - // Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242 - content: '"\\00a0"', - position: 'absolute', - right: 0, - transition: theme.transitions.create('border-bottom-color', { - duration: theme.transitions.duration.shorter, - }), - pointerEvents: 'none', // Transparent to the hover style. - }, - [`&:hover:not(.${inputClasses.disabled}, .${inputClasses.error}):before`]: { - borderBottom: `2px solid ${(theme.vars || theme).palette.text.primary}`, - // Reset on touch devices, it doesn't add specificity - '@media (hover: none)': { - borderBottom: `1px solid ${bottomLineColor}`, + { + props: ({ ownerState }) => !ownerState.disableUnderline, + style: { + '&::after': { + left: 0, + bottom: 0, + // Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242 + content: '""', + position: 'absolute', + right: 0, + transform: 'scaleX(0)', + transition: theme.transitions.create('transform', { + duration: theme.transitions.duration.shorter, + easing: theme.transitions.easing.easeOut, + }), + pointerEvents: 'none', // Transparent to the hover style. + }, + [`&.${inputClasses.focused}:after`]: { + // translateX(0) is a workaround for Safari transform scale bug + // See https://github.com/mui/material-ui/issues/31766 + transform: 'scaleX(1) translateX(0)', + }, + [`&.${inputClasses.error}`]: { + '&::before, &::after': { + borderBottomColor: (theme.vars || theme).palette.error.main, + }, + }, + '&::before': { + borderBottom: `1px solid ${bottomLineColor}`, + left: 0, + bottom: 0, + // Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242 + content: '"\\00a0"', + position: 'absolute', + right: 0, + transition: theme.transitions.create('border-bottom-color', { + duration: theme.transitions.duration.shorter, + }), + pointerEvents: 'none', // Transparent to the hover style. + }, + [`&:hover:not(.${inputClasses.disabled}, .${inputClasses.error}):before`]: { + borderBottom: `2px solid ${(theme.vars || theme).palette.text.primary}`, + // Reset on touch devices, it doesn't add specificity + '@media (hover: none)': { + borderBottom: `1px solid ${bottomLineColor}`, + }, + }, + [`&.${inputClasses.disabled}:before`]: { + borderBottomStyle: 'dotted', + }, }, }, - [`&.${inputClasses.disabled}:before`]: { - borderBottomStyle: 'dotted', - }, - }), + ...Object.entries(theme.palette) + .filter(([, value]) => value.main) + .map(([color]) => ({ + props: { color, disableUnderline: false }, + style: { + '&::after': { + borderBottom: `2px solid ${(theme.vars || theme).palette[color].main}`, + }, + }, + })), + ], }; }); @@ -118,7 +137,7 @@ const InputInput = styled(InputBaseInput, { const Input = React.forwardRef(function Input(inProps, ref) { const props = useThemeProps({ props: inProps, name: 'MuiInput' }); const { - disableUnderline, + disableUnderline = false, components = {}, componentsProps: componentsPropsProp, fullWidth = false, @@ -223,6 +242,7 @@ Input.propTypes /* remove-proptypes */ = { disabled: PropTypes.bool, /** * If `true`, the `input` will not have an underline. + * @default false */ disableUnderline: PropTypes.bool, /** @@ -352,6 +372,8 @@ Input.propTypes /* remove-proptypes */ = { value: PropTypes.any, }; -Input.muiName = 'Input'; +if (Input) { + Input.muiName = 'Input'; +} export default Input; diff --git a/packages/mui-material/src/InputAdornment/InputAdornment.js b/packages/mui-material/src/InputAdornment/InputAdornment.js index 286d7f3463c249..4ce2c503162b96 100644 --- a/packages/mui-material/src/InputAdornment/InputAdornment.js +++ b/packages/mui-material/src/InputAdornment/InputAdornment.js @@ -7,9 +7,10 @@ import capitalize from '../utils/capitalize'; import Typography from '../Typography'; import FormControlContext from '../FormControl/FormControlContext'; import useFormControl from '../FormControl/useFormControl'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import inputAdornmentClasses, { getInputAdornmentUtilityClass } from './inputAdornmentClasses'; -import useThemeProps from '../styles/useThemeProps'; + +const useThemeProps = createUseThemeProps('MuiInputAdornment'); const overridesResolver = (props, styles) => { const { ownerState } = props; @@ -42,31 +43,49 @@ const InputAdornmentRoot = styled('div', { name: 'MuiInputAdornment', slot: 'Root', overridesResolver, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ display: 'flex', height: '0.01em', // Fix IE11 flexbox alignment. To remove at some point. maxHeight: '2em', alignItems: 'center', whiteSpace: 'nowrap', color: (theme.vars || theme).palette.action.active, - ...(ownerState.variant === 'filled' && { - // Styles applied to the root element if `variant="filled"`. - [`&.${inputAdornmentClasses.positionStart}&:not(.${inputAdornmentClasses.hiddenLabel})`]: { - marginTop: 16, + variants: [ + { + props: { + variant: 'filled', + }, + style: { + [`&.${inputAdornmentClasses.positionStart}&:not(.${inputAdornmentClasses.hiddenLabel})`]: { + marginTop: 16, + }, + }, + }, + { + props: { + position: 'start', + }, + style: { + marginRight: 8, + }, + }, + { + props: { + position: 'end', + }, + style: { + marginLeft: 8, + }, + }, + { + props: { + disablePointerEvents: true, + }, + style: { + pointerEvents: 'none', + }, }, - }), - ...(ownerState.position === 'start' && { - // Styles applied to the root element if `position="start"`. - marginRight: 8, - }), - ...(ownerState.position === 'end' && { - // Styles applied to the root element if `position="end"`. - marginLeft: 8, - }), - ...(ownerState.disablePointerEvents === true && { - // Styles applied to the root element if `disablePointerEvents={true}`. - pointerEvents: 'none', - }), + ], })); const InputAdornment = React.forwardRef(function InputAdornment(inProps, ref) { diff --git a/packages/mui-material/src/InputBase/InputBase.js b/packages/mui-material/src/InputBase/InputBase.js index 970dd62ab36b2c..3be8ca90edafc8 100644 --- a/packages/mui-material/src/InputBase/InputBase.js +++ b/packages/mui-material/src/InputBase/InputBase.js @@ -11,8 +11,7 @@ import composeClasses from '@mui/utils/composeClasses'; import formControlState from '../FormControl/formControlState'; import FormControlContext from '../FormControl/FormControlContext'; import useFormControl from '../FormControl/useFormControl'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import capitalize from '../utils/capitalize'; import useForkRef from '../utils/useForkRef'; import useEnhancedEffect from '../utils/useEnhancedEffect'; @@ -20,6 +19,8 @@ import GlobalStyles from '../GlobalStyles'; import { isFilled } from './utils'; import inputBaseClasses, { getInputBaseUtilityClass } from './inputBaseClasses'; +const useThemeProps = createUseThemeProps('MuiInputBase'); + export const rootOverridesResolver = (props, styles) => { const { ownerState } = props; @@ -104,7 +105,7 @@ export const InputBaseRoot = styled('div', { name: 'MuiInputBase', slot: 'Root', overridesResolver: rootOverridesResolver, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ ...theme.typography.body1, color: (theme.vars || theme).palette.text.primary, lineHeight: '1.4375em', // 23px @@ -117,22 +118,33 @@ export const InputBaseRoot = styled('div', { color: (theme.vars || theme).palette.text.disabled, cursor: 'default', }, - ...(ownerState.multiline && { - padding: '4px 0 5px', - ...(ownerState.size === 'small' && { - paddingTop: 1, - }), - }), - ...(ownerState.fullWidth && { - width: '100%', - }), + variants: [ + { + props: ({ ownerState }) => ownerState.multiline, + style: { + padding: '4px 0 5px', + }, + }, + { + props: ({ ownerState, size }) => ownerState.multiline && size === 'small', + style: { + paddingTop: 1, + }, + }, + { + props: ({ ownerState }) => ownerState.fullWidth, + style: { + width: '100%', + }, + }, + ], })); -export const InputBaseComponent = styled('input', { +export const InputBaseInput = styled('input', { name: 'MuiInputBase', slot: 'Input', overridesResolver: inputOverridesResolver, -})(({ theme, ownerState }) => { +})(({ theme }) => { const light = theme.palette.mode === 'light'; const placeholder = { color: 'currentColor', @@ -147,11 +159,9 @@ export const InputBaseComponent = styled('input', { duration: theme.transitions.duration.shorter, }), }; - const placeholderHidden = { opacity: '0 !important', }; - const placeholderVisible = theme.vars ? { opacity: theme.vars.opacity.inputPlaceholder, @@ -211,19 +221,33 @@ export const InputBaseComponent = styled('input', { animationDuration: '5000s', animationName: 'mui-auto-fill', }, - ...(ownerState.size === 'small' && { - paddingTop: 1, - }), - ...(ownerState.multiline && { - height: 'auto', - resize: 'none', - padding: 0, - paddingTop: 0, - }), - ...(ownerState.type === 'search' && { - // Improve type search style. - MozAppearance: 'textfield', - }), + variants: [ + { + props: { + size: 'small', + }, + style: { + paddingTop: 1, + }, + }, + { + props: ({ ownerState }) => ownerState.multiline, + style: { + height: 'auto', + resize: 'none', + padding: 0, + paddingTop: 0, + }, + }, + { + props: { + type: 'search', + }, + style: { + MozAppearance: 'textfield', // Improve type search style. + }, + }, + ], }; }); @@ -506,7 +530,7 @@ const InputBase = React.forwardRef(function InputBase(inProps, ref) { const Root = slots.root || components.Root || InputBaseRoot; const rootProps = slotProps.root || componentsProps.root || {}; - const Input = slots.input || components.Input || InputBaseComponent; + const Input = slots.input || components.Input || InputBaseInput; inputProps = { ...inputProps, ...(slotProps.input ?? componentsProps.input) }; return ( diff --git a/packages/mui-material/src/InputLabel/InputLabel.js b/packages/mui-material/src/InputLabel/InputLabel.js index dd8003ee8ebb7c..b47991c21fa676 100644 --- a/packages/mui-material/src/InputLabel/InputLabel.js +++ b/packages/mui-material/src/InputLabel/InputLabel.js @@ -6,11 +6,13 @@ import clsx from 'clsx'; import formControlState from '../FormControl/formControlState'; import useFormControl from '../FormControl/useFormControl'; import FormLabel, { formLabelClasses } from '../FormLabel'; -import useThemeProps from '../styles/useThemeProps'; import capitalize from '../utils/capitalize'; -import styled, { rootShouldForwardProp } from '../styles/styled'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getInputLabelUtilityClasses } from './inputLabelClasses'; +const useThemeProps = createUseThemeProps('MuiInputLabel'); + const useUtilityClasses = (ownerState) => { const { classes, formControl, size, shrink, disableAnimation, variant, required } = ownerState; const slots = { @@ -50,75 +52,123 @@ const InputLabelRoot = styled(FormLabel, { styles[ownerState.variant], ]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ display: 'block', transformOrigin: 'top left', whiteSpace: 'nowrap', overflow: 'hidden', textOverflow: 'ellipsis', maxWidth: '100%', - ...(ownerState.formControl && { - position: 'absolute', - left: 0, - top: 0, - // slight alteration to spec spacing to match visual spec result - transform: 'translate(0, 20px) scale(1)', - }), - ...(ownerState.size === 'small' && { - // Compensation for the `Input.inputSizeSmall` style. - transform: 'translate(0, 17px) scale(1)', - }), - ...(ownerState.shrink && { - transform: 'translate(0, -1.5px) scale(0.75)', - transformOrigin: 'top left', - maxWidth: '133%', - }), - ...(!ownerState.disableAnimation && { - transition: theme.transitions.create(['color', 'transform', 'max-width'], { - duration: theme.transitions.duration.shorter, - easing: theme.transitions.easing.easeOut, - }), - }), - ...(ownerState.variant === 'filled' && { - // Chrome's autofill feature gives the input field a yellow background. - // Since the input field is behind the label in the HTML tree, - // the input field is drawn last and hides the label with an opaque background color. - // zIndex: 1 will raise the label above opaque background-colors of input. - zIndex: 1, - pointerEvents: 'none', - transform: 'translate(12px, 16px) scale(1)', - maxWidth: 'calc(100% - 24px)', - ...(ownerState.size === 'small' && { - transform: 'translate(12px, 13px) scale(1)', - }), - ...(ownerState.shrink && { - userSelect: 'none', - pointerEvents: 'auto', - transform: 'translate(12px, 7px) scale(0.75)', - maxWidth: 'calc(133% - 24px)', - ...(ownerState.size === 'small' && { + variants: [ + { + props: ({ ownerState }) => ownerState.formControl, + style: { + position: 'absolute', + left: 0, + top: 0, + // slight alteration to spec spacing to match visual spec result + transform: 'translate(0, 20px) scale(1)', + }, + }, + { + props: { + size: 'small', + }, + style: { + // Compensation for the `Input.inputSizeSmall` style. + transform: 'translate(0, 17px) scale(1)', + }, + }, + { + props: ({ ownerState }) => ownerState.shrink, + style: { + transform: 'translate(0, -1.5px) scale(0.75)', + transformOrigin: 'top left', + maxWidth: '133%', + }, + }, + { + props: ({ ownerState }) => !ownerState.disableAnimation, + style: { + transition: theme.transitions.create(['color', 'transform', 'max-width'], { + duration: theme.transitions.duration.shorter, + easing: theme.transitions.easing.easeOut, + }), + }, + }, + { + props: { + variant: 'filled', + }, + style: { + // Chrome's autofill feature gives the input field a yellow background. + // Since the input field is behind the label in the HTML tree, + // the input field is drawn last and hides the label with an opaque background color. + // zIndex: 1 will raise the label above opaque background-colors of input. + zIndex: 1, + pointerEvents: 'none', + transform: 'translate(12px, 16px) scale(1)', + maxWidth: 'calc(100% - 24px)', + }, + }, + { + props: { + variant: 'filled', + size: 'small', + }, + style: { + transform: 'translate(12px, 13px) scale(1)', + }, + }, + { + props: ({ variant, ownerState }) => variant === 'filled' && ownerState.shrink, + style: { + userSelect: 'none', + pointerEvents: 'auto', + transform: 'translate(12px, 7px) scale(0.75)', + maxWidth: 'calc(133% - 24px)', + }, + }, + { + props: ({ variant, ownerState, size }) => + variant === 'filled' && ownerState.shrink && size === 'small', + style: { transform: 'translate(12px, 4px) scale(0.75)', - }), - }), - }), - ...(ownerState.variant === 'outlined' && { - // see comment above on filled.zIndex - zIndex: 1, - pointerEvents: 'none', - transform: 'translate(14px, 16px) scale(1)', - maxWidth: 'calc(100% - 24px)', - ...(ownerState.size === 'small' && { - transform: 'translate(14px, 9px) scale(1)', - }), - ...(ownerState.shrink && { - userSelect: 'none', - pointerEvents: 'auto', - // Theoretically, we should have (8+5)*2/0.75 = 34px - // but it feels a better when it bleeds a bit on the left, so 32px. - maxWidth: 'calc(133% - 32px)', - transform: 'translate(14px, -9px) scale(0.75)', - }), - }), + }, + }, + { + props: { + variant: 'outlined', + }, + style: { + // see comment above on filled.zIndex + zIndex: 1, + pointerEvents: 'none', + transform: 'translate(14px, 16px) scale(1)', + maxWidth: 'calc(100% - 24px)', + }, + }, + { + props: { + variant: 'outlined', + size: 'small', + }, + style: { + transform: 'translate(14px, 9px) scale(1)', + }, + }, + { + props: ({ variant, ownerState }) => variant === 'outlined' && ownerState.shrink, + style: { + userSelect: 'none', + pointerEvents: 'auto', + // Theoretically, we should have (8+5)*2/0.75 = 34px + // but it feels a better when it bleeds a bit on the left, so 32px. + maxWidth: 'calc(133% - 32px)', + transform: 'translate(14px, -9px) scale(0.75)', + }, + }, + ], })); const InputLabel = React.forwardRef(function InputLabel(inProps, ref) { diff --git a/packages/mui-material/src/Link/Link.js b/packages/mui-material/src/Link/Link.js index f5e72605b7312d..489d82c23d2332 100644 --- a/packages/mui-material/src/Link/Link.js +++ b/packages/mui-material/src/Link/Link.js @@ -2,16 +2,19 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; +import { alpha } from '@mui/system/colorManipulator'; import elementTypeAcceptingRef from '@mui/utils/elementTypeAcceptingRef'; import composeClasses from '@mui/utils/composeClasses'; import capitalize from '../utils/capitalize'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import useIsFocusVisible from '../utils/useIsFocusVisible'; import useForkRef from '../utils/useForkRef'; import Typography from '../Typography'; import linkClasses, { getLinkUtilityClass } from './linkClasses'; import getTextDecoration, { colorTransformations } from './getTextDecoration'; +import useTheme from '../styles/useTheme'; + +const useThemeProps = createUseThemeProps('MuiLink'); const useUtilityClasses = (ownerState) => { const { classes, component, focusVisible, underline } = ownerState; @@ -40,49 +43,84 @@ const LinkRoot = styled(Typography, { ownerState.component === 'button' && styles.button, ]; }, -})(({ theme, ownerState }) => { +})(({ theme }) => { return { - ...(ownerState.underline === 'none' && { - textDecoration: 'none', - }), - ...(ownerState.underline === 'hover' && { - textDecoration: 'none', - '&:hover': { - textDecoration: 'underline', + variants: [ + { + props: { + underline: 'none', + }, + style: { + textDecoration: 'none', + }, + }, + { + props: { + underline: 'hover', + }, + style: { + textDecoration: 'none', + '&:hover': { + textDecoration: 'underline', + }, + }, }, - }), - ...(ownerState.underline === 'always' && { - textDecoration: 'underline', - ...(ownerState.color !== 'inherit' && { - textDecorationColor: getTextDecoration({ theme, ownerState }), - }), - '&:hover': { - textDecorationColor: 'inherit', + { + props: { + underline: 'always', + }, + style: { + textDecoration: 'underline', + '&:hover': { + textDecorationColor: 'inherit', + }, + }, }, - }), - // Same reset as ButtonBase.root - ...(ownerState.component === 'button' && { - position: 'relative', - WebkitTapHighlightColor: 'transparent', - backgroundColor: 'transparent', // Reset default value - // We disable the focus ring for mouse, touch and keyboard users. - outline: 0, - border: 0, - margin: 0, // Remove the margin in Safari - borderRadius: 0, - padding: 0, // Remove the padding in Firefox - cursor: 'pointer', - userSelect: 'none', - verticalAlign: 'middle', - MozAppearance: 'none', // Reset - WebkitAppearance: 'none', // Reset - '&::-moz-focus-inner': { - borderStyle: 'none', // Remove Firefox dotted outline. + { + props: ({ underline, ownerState }) => + underline === 'always' && ownerState.color !== 'inherit', + style: { + textDecorationColor: 'var(--Link-underlineColor)', + }, }, - [`&.${linkClasses.focusVisible}`]: { - outline: 'auto', + ...Object.entries(theme.palette) + .filter(([, value]) => value.main) + .map(([color]) => ({ + props: { underline: 'always', color }, + style: { + '--Link-underlineColor': theme.vars + ? `rgba(${theme.vars.palette[color].mainChannel} / 0.4)` + : alpha(theme.palette[color].main, 0.4), + }, + })), + { + props: { + component: 'button', + }, + style: { + position: 'relative', + WebkitTapHighlightColor: 'transparent', + backgroundColor: 'transparent', // Reset default value + // We disable the focus ring for mouse, touch and keyboard users. + outline: 0, + border: 0, + margin: 0, // Remove the margin in Safari + borderRadius: 0, + padding: 0, // Remove the padding in Firefox + cursor: 'pointer', + userSelect: 'none', + verticalAlign: 'middle', + MozAppearance: 'none', // Reset + WebkitAppearance: 'none', // Reset + '&::-moz-focus-inner': { + borderStyle: 'none', // Remove Firefox dotted outline. + }, + [`&.${linkClasses.focusVisible}`]: { + outline: 'auto', + }, + }, }, - }), + ], }; }); @@ -91,6 +129,7 @@ const Link = React.forwardRef(function Link(inProps, ref) { props: inProps, name: 'MuiLink', }); + const theme = useTheme(); const { className, @@ -154,11 +193,18 @@ const Link = React.forwardRef(function Link(inProps, ref) { ref={handlerRef} ownerState={ownerState} variant={variant} + {...other} sx={[ - ...(!Object.keys(colorTransformations).includes(color) ? [{ color }] : []), + ...(colorTransformations[color] === undefined ? [{ color }] : []), ...(Array.isArray(sx) ? sx : [sx]), ]} - {...other} + style={{ + ...other.style, + ...(underline === 'always' && + color !== 'inherit' && { + '--Link-underlineColor': getTextDecoration({ theme, ownerState }), + }), + }} /> ); }); @@ -198,6 +244,10 @@ Link.propTypes /* remove-proptypes */ = { * @ignore */ onFocus: PropTypes.func, + /** + * @ignore + */ + style: PropTypes.object, /** * The system prop that allows defining system overrides as well as additional CSS styles. */ diff --git a/packages/mui-material/src/Link/getTextDecoration.test.js b/packages/mui-material/src/Link/getTextDecoration.test.js index 803567fc94fd7b..41e92011448c54 100644 --- a/packages/mui-material/src/Link/getTextDecoration.test.js +++ b/packages/mui-material/src/Link/getTextDecoration.test.js @@ -7,21 +7,18 @@ describe('getTextDecoration', () => { const theme = createTheme(); it('deprecated color', () => { - expect(getTextDecoration({ theme, ownerState: { color: 'primary' } })).to.equal( - 'rgba(25, 118, 210, 0.4)', - ); expect(getTextDecoration({ theme, ownerState: { color: 'textPrimary' } })).to.equal( 'rgba(0, 0, 0, 0.4)', ); - expect(getTextDecoration({ theme, ownerState: { color: 'secondary' } })).to.equal( - 'rgba(156, 39, 176, 0.4)', - ); expect(getTextDecoration({ theme, ownerState: { color: 'textSecondary' } })).to.equal( 'rgba(0, 0, 0, 0.4)', ); - expect(getTextDecoration({ theme, ownerState: { color: 'error' } })).to.equal( - 'rgba(211, 47, 47, 0.4)', - ); + expect(getTextDecoration({ theme, ownerState: { color: 'primary' } })).to.equal(null); + expect(getTextDecoration({ theme, ownerState: { color: 'secondary' } })).to.equal(null); + expect(getTextDecoration({ theme, ownerState: { color: 'error' } })).to.equal(null); + expect(getTextDecoration({ theme, ownerState: { color: 'info' } })).to.equal(null); + expect(getTextDecoration({ theme, ownerState: { color: 'success' } })).to.equal(null); + expect(getTextDecoration({ theme, ownerState: { color: 'warning' } })).to.equal(null); }); it('system color', () => { @@ -78,21 +75,18 @@ describe('getTextDecoration', () => { }; // in the application, the value will be CSS variable: `rgba(var(--the-color-channel) / 0.4)` it('deprecated color', () => { - expect(getTextDecoration({ theme, ownerState: { color: 'primary' } })).to.equal( - 'rgba(var(--palette-primary-mainChannel) / 0.4)', - ); expect(getTextDecoration({ theme, ownerState: { color: 'textPrimary' } })).to.equal( 'rgba(var(--palette-text-primaryChannel) / 0.4)', ); - expect(getTextDecoration({ theme, ownerState: { color: 'secondary' } })).to.equal( - 'rgba(var(--palette-secondary-mainChannel) / 0.4)', - ); expect(getTextDecoration({ theme, ownerState: { color: 'textSecondary' } })).to.equal( 'rgba(var(--palette-text-secondaryChannel) / 0.4)', ); - expect(getTextDecoration({ theme, ownerState: { color: 'error' } })).to.equal( - 'rgba(var(--palette-error-mainChannel) / 0.4)', - ); + expect(getTextDecoration({ theme, ownerState: { color: 'primary' } })).to.equal(null); + expect(getTextDecoration({ theme, ownerState: { color: 'secondary' } })).to.equal(null); + expect(getTextDecoration({ theme, ownerState: { color: 'error' } })).to.equal(null); + expect(getTextDecoration({ theme, ownerState: { color: 'info' } })).to.equal(null); + expect(getTextDecoration({ theme, ownerState: { color: 'success' } })).to.equal(null); + expect(getTextDecoration({ theme, ownerState: { color: 'warning' } })).to.equal(null); }); it('system color', () => { diff --git a/packages/mui-material/src/Link/getTextDecoration.ts b/packages/mui-material/src/Link/getTextDecoration.ts index 7cdb42cd9d501f..517d8e77eaab23 100644 --- a/packages/mui-material/src/Link/getTextDecoration.ts +++ b/packages/mui-material/src/Link/getTextDecoration.ts @@ -1,17 +1,18 @@ -import { getPath } from '@mui/system'; +import { getPath } from '@mui/system/style'; import { alpha } from '@mui/system/colorManipulator'; import type { Theme } from '../styles'; -export const colorTransformations = { - primary: 'primary.main', +// TODO v7: remove this transformation +export const colorTransformations: Record = { textPrimary: 'text.primary', - secondary: 'secondary.main', textSecondary: 'text.secondary', - error: 'error.main', -}; - -const transformDeprecatedColors = (color: string) => { - return colorTransformations[color as keyof typeof colorTransformations] || color; + // For main palette, the color will be applied by the styles above. + primary: null, + secondary: null, + error: null, + info: null, + success: null, + warning: null, }; const getTextDecoration = ({ @@ -21,7 +22,13 @@ const getTextDecoration = ({ theme: T; ownerState: { color: string }; }) => { - const transformedColor = transformDeprecatedColors(ownerState.color); + let transformedColor = colorTransformations[ownerState.color]; + if (transformedColor === null) { + return null; + } + if (transformedColor === undefined) { + transformedColor = ownerState.color; + } const color = (getPath(theme, `palette.${transformedColor}`, false) || ownerState.color) as string; const channelColor = getPath(theme, `palette.${transformedColor}Channel`) as string | null; diff --git a/packages/mui-material/src/List/List.js b/packages/mui-material/src/List/List.js index aecb83a331e8ae..d2eda963fdb226 100644 --- a/packages/mui-material/src/List/List.js +++ b/packages/mui-material/src/List/List.js @@ -3,11 +3,12 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import ListContext from './ListContext'; import { getListUtilityClass } from './listClasses'; +const useThemeProps = createUseThemeProps('MuiList'); + const useUtilityClasses = (ownerState) => { const { classes, disablePadding, dense, subheader } = ownerState; @@ -31,19 +32,27 @@ const ListRoot = styled('ul', { ownerState.subheader && styles.subheader, ]; }, -})(({ ownerState }) => ({ +})({ listStyle: 'none', margin: 0, padding: 0, position: 'relative', - ...(!ownerState.disablePadding && { - paddingTop: 8, - paddingBottom: 8, - }), - ...(ownerState.subheader && { - paddingTop: 0, - }), -})); + variants: [ + { + props: ({ ownerState }) => !ownerState.disablePadding, + style: { + paddingTop: 8, + paddingBottom: 8, + }, + }, + { + props: ({ ownerState }) => ownerState.subheader, + style: { + paddingTop: 0, + }, + }, + ], +}); const List = React.forwardRef(function List(inProps, ref) { const props = useThemeProps({ props: inProps, name: 'MuiList' }); diff --git a/packages/mui-material/src/ListItem/ListItem.js b/packages/mui-material/src/ListItem/ListItem.js index 82bc5a8659cbed..afdd2218a9a717 100644 --- a/packages/mui-material/src/ListItem/ListItem.js +++ b/packages/mui-material/src/ListItem/ListItem.js @@ -7,8 +7,7 @@ import composeClasses from '@mui/utils/composeClasses'; import elementTypeAcceptingRef from '@mui/utils/elementTypeAcceptingRef'; import chainPropTypes from '@mui/utils/chainPropTypes'; import { alpha } from '@mui/system/colorManipulator'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import ButtonBase from '../ButtonBase'; import isMuiElement from '../utils/isMuiElement'; import useEnhancedEffect from '../utils/useEnhancedEffect'; @@ -18,6 +17,8 @@ import listItemClasses, { getListItemUtilityClass } from './listItemClasses'; import { listItemButtonClasses } from '../ListItemButton'; import ListItemSecondaryAction from '../ListItemSecondaryAction'; +const useThemeProps = createUseThemeProps('MuiListItem'); + export const overridesResolver = (props, styles) => { const { ownerState } = props; diff --git a/packages/mui-material/src/ListItemAvatar/ListItemAvatar.js b/packages/mui-material/src/ListItemAvatar/ListItemAvatar.js index e076be63c2d5c9..f7138878c93ac7 100644 --- a/packages/mui-material/src/ListItemAvatar/ListItemAvatar.js +++ b/packages/mui-material/src/ListItemAvatar/ListItemAvatar.js @@ -4,10 +4,11 @@ import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import ListContext from '../List/ListContext'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getListItemAvatarUtilityClass } from './listItemAvatarClasses'; +const useThemeProps = createUseThemeProps('MuiListItemAvatar'); + const useUtilityClasses = (ownerState) => { const { alignItems, classes } = ownerState; diff --git a/packages/mui-material/src/ListItemButton/ListItemButton.js b/packages/mui-material/src/ListItemButton/ListItemButton.js index f05cadc79adbde..96bcca86416d8e 100644 --- a/packages/mui-material/src/ListItemButton/ListItemButton.js +++ b/packages/mui-material/src/ListItemButton/ListItemButton.js @@ -4,14 +4,16 @@ import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import { alpha } from '@mui/system/colorManipulator'; -import styled, { rootShouldForwardProp } from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; import ButtonBase from '../ButtonBase'; import useEnhancedEffect from '../utils/useEnhancedEffect'; import useForkRef from '../utils/useForkRef'; import ListContext from '../List/ListContext'; import listItemButtonClasses, { getListItemButtonUtilityClass } from './listItemButtonClasses'; +const useThemeProps = createUseThemeProps('MuiListItemButton'); + export const overridesResolver = (props, styles) => { const { ownerState } = props; diff --git a/packages/mui-material/src/ListItemIcon/ListItemIcon.js b/packages/mui-material/src/ListItemIcon/ListItemIcon.js index 7a143e3d89d8c0..d3d158aef7b68c 100644 --- a/packages/mui-material/src/ListItemIcon/ListItemIcon.js +++ b/packages/mui-material/src/ListItemIcon/ListItemIcon.js @@ -3,11 +3,12 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getListItemIconUtilityClass } from './listItemIconClasses'; import ListContext from '../List/ListContext'; +const useThemeProps = createUseThemeProps('MuiListItemIcon'); + const useUtilityClasses = (ownerState) => { const { alignItems, classes } = ownerState; @@ -26,14 +27,21 @@ const ListItemIconRoot = styled('div', { return [styles.root, ownerState.alignItems === 'flex-start' && styles.alignItemsFlexStart]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ minWidth: 56, color: (theme.vars || theme).palette.action.active, flexShrink: 0, display: 'inline-flex', - ...(ownerState.alignItems === 'flex-start' && { - marginTop: 8, - }), + variants: [ + { + props: { + alignItems: 'flex-start', + }, + style: { + marginTop: 8, + }, + }, + ], })); /** diff --git a/packages/mui-material/src/ListItemSecondaryAction/ListItemSecondaryAction.js b/packages/mui-material/src/ListItemSecondaryAction/ListItemSecondaryAction.js index f098749fe6d35b..d3e0058fd93e22 100644 --- a/packages/mui-material/src/ListItemSecondaryAction/ListItemSecondaryAction.js +++ b/packages/mui-material/src/ListItemSecondaryAction/ListItemSecondaryAction.js @@ -3,11 +3,12 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import ListContext from '../List/ListContext'; import { getListItemSecondaryActionClassesUtilityClass } from './listItemSecondaryActionClasses'; +const useThemeProps = createUseThemeProps('MuiListItemSecondaryAction'); + const useUtilityClasses = (ownerState) => { const { disableGutters, classes } = ownerState; diff --git a/packages/mui-material/src/ListItemText/ListItemText.js b/packages/mui-material/src/ListItemText/ListItemText.js index 3c6af814ca33fb..0352eecbe62bbf 100644 --- a/packages/mui-material/src/ListItemText/ListItemText.js +++ b/packages/mui-material/src/ListItemText/ListItemText.js @@ -5,10 +5,11 @@ import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import Typography from '../Typography'; import ListContext from '../List/ListContext'; -import useThemeProps from '../styles/useThemeProps'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import listItemTextClasses, { getListItemTextUtilityClass } from './listItemTextClasses'; +const useThemeProps = createUseThemeProps('MuiListItemText'); + const useUtilityClasses = (ownerState) => { const { classes, inset, primary, secondary, dense } = ownerState; diff --git a/packages/mui-material/src/ListSubheader/ListSubheader.js b/packages/mui-material/src/ListSubheader/ListSubheader.js index 3a869a9436baaf..86d530050d3324 100644 --- a/packages/mui-material/src/ListSubheader/ListSubheader.js +++ b/packages/mui-material/src/ListSubheader/ListSubheader.js @@ -3,11 +3,12 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import capitalize from '../utils/capitalize'; import { getListSubheaderUtilityClass } from './listSubheaderClasses'; +const useThemeProps = createUseThemeProps('MuiListSubheader'); + const useUtilityClasses = (ownerState) => { const { classes, color, disableGutters, inset, disableSticky } = ownerState; @@ -122,7 +123,9 @@ const ListSubheader = React.forwardRef(function ListSubheader(inProps, ref) { ); }); -ListSubheader.muiSkipListHighlight = true; +if (ListSubheader) { + ListSubheader.muiSkipListHighlight = true; +} ListSubheader.propTypes /* remove-proptypes */ = { // ┌────────────────────────────── Warning ──────────────────────────────┐ diff --git a/packages/mui-material/src/Menu/Menu.js b/packages/mui-material/src/Menu/Menu.js index 8fb919b0fb70da..edf4fe4f7dec34 100644 --- a/packages/mui-material/src/Menu/Menu.js +++ b/packages/mui-material/src/Menu/Menu.js @@ -9,10 +9,12 @@ import HTMLElementType from '@mui/utils/HTMLElementType'; import { useRtl } from '@mui/system/RtlProvider'; import MenuList from '../MenuList'; import Popover, { PopoverPaper } from '../Popover'; -import styled, { rootShouldForwardProp } from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getMenuUtilityClass } from './menuClasses'; +const useThemeProps = createUseThemeProps('MuiMenu'); + const RTL_ORIGIN = { vertical: 'top', horizontal: 'right', diff --git a/packages/mui-material/src/MenuItem/MenuItem.js b/packages/mui-material/src/MenuItem/MenuItem.js index fde0d2867c1e1f..7819d4e76e073d 100644 --- a/packages/mui-material/src/MenuItem/MenuItem.js +++ b/packages/mui-material/src/MenuItem/MenuItem.js @@ -4,8 +4,8 @@ import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import { alpha } from '@mui/system/colorManipulator'; -import styled, { rootShouldForwardProp } from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; +import { styled, createUseThemeProps } from '../zero-styled'; import ListContext from '../List/ListContext'; import ButtonBase from '../ButtonBase'; import useEnhancedEffect from '../utils/useEnhancedEffect'; @@ -15,6 +15,8 @@ import { listItemIconClasses } from '../ListItemIcon'; import { listItemTextClasses } from '../ListItemText'; import menuItemClasses, { getMenuItemUtilityClass } from './menuItemClasses'; +const useThemeProps = createUseThemeProps('MuiMenuItem'); + export const overridesResolver = (props, styles) => { const { ownerState } = props; @@ -52,7 +54,7 @@ const MenuItemRoot = styled(ButtonBase, { name: 'MuiMenuItem', slot: 'Root', overridesResolver, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ ...theme.typography.body1, display: 'flex', justifyContent: 'flex-start', @@ -64,14 +66,6 @@ const MenuItemRoot = styled(ButtonBase, { paddingBottom: 6, boxSizing: 'border-box', whiteSpace: 'nowrap', - ...(!ownerState.disableGutters && { - paddingLeft: 16, - paddingRight: 16, - }), - ...(ownerState.divider && { - borderBottom: `1px solid ${(theme.vars || theme).palette.divider}`, - backgroundClip: 'padding-box', - }), '&:hover': { textDecoration: 'none', backgroundColor: (theme.vars || theme).palette.action.hover, @@ -130,20 +124,42 @@ const MenuItemRoot = styled(ButtonBase, { [`& .${listItemIconClasses.root}`]: { minWidth: 36, }, - ...(!ownerState.dense && { - [theme.breakpoints.up('sm')]: { - minHeight: 'auto', + variants: [ + { + props: ({ ownerState }) => !ownerState.disableGutters, + style: { + paddingLeft: 16, + paddingRight: 16, + }, + }, + { + props: ({ ownerState }) => ownerState.divider, + style: { + borderBottom: `1px solid ${(theme.vars || theme).palette.divider}`, + backgroundClip: 'padding-box', + }, + }, + { + props: ({ ownerState }) => !ownerState.dense, + style: { + [theme.breakpoints.up('sm')]: { + minHeight: 'auto', + }, + }, }, - }), - ...(ownerState.dense && { - minHeight: 32, // https://m2.material.io/components/menus#specs > Dense - paddingTop: 4, - paddingBottom: 4, - ...theme.typography.body2, - [`& .${listItemIconClasses.root} svg`]: { - fontSize: '1.25rem', + { + props: ({ ownerState }) => ownerState.dense, + style: { + minHeight: 32, // https://m2.material.io/components/menus#specs > Dense + paddingTop: 4, + paddingBottom: 4, + ...theme.typography.body2, + [`& .${listItemIconClasses.root} svg`]: { + fontSize: '1.25rem', + }, + }, }, - }), + ], })); const MenuItem = React.forwardRef(function MenuItem(inProps, ref) { diff --git a/packages/mui-material/src/NativeSelect/NativeSelectInput.js b/packages/mui-material/src/NativeSelect/NativeSelectInput.js index 042b89dfa4b3af..db1eae0f282dcb 100644 --- a/packages/mui-material/src/NativeSelect/NativeSelectInput.js +++ b/packages/mui-material/src/NativeSelect/NativeSelectInput.js @@ -6,7 +6,8 @@ import refType from '@mui/utils/refType'; import composeClasses from '@mui/utils/composeClasses'; import capitalize from '../utils/capitalize'; import nativeSelectClasses, { getNativeSelectUtilityClasses } from './nativeSelectClasses'; -import styled, { rootShouldForwardProp } from '../styles/styled'; +import { styled } from '../zero-styled'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; const useUtilityClasses = (ownerState) => { const { classes, variant, disabled, multiple, open, error } = ownerState; @@ -19,23 +20,20 @@ const useUtilityClasses = (ownerState) => { return composeClasses(slots, getNativeSelectUtilityClasses, classes); }; -export const nativeSelectSelectStyles = ({ ownerState, theme }) => ({ - MozAppearance: 'none', // Reset - WebkitAppearance: 'none', // Reset +export const StyledSelectSelect = styled('select')(({ theme }) => ({ + // Reset + MozAppearance: 'none', + // Reset + WebkitAppearance: 'none', // When interacting quickly, the text can end up selected. // Native select can't be selected either. userSelect: 'none', - borderRadius: 0, // Reset + // Reset + borderRadius: 0, cursor: 'pointer', '&:focus': { - // Show that it's not an text input - ...(theme.vars - ? { backgroundColor: `rgba(${theme.vars.palette.common.onBackgroundChannel} / 0.05)` } - : { - backgroundColor: - theme.palette.mode === 'light' ? 'rgba(0, 0, 0, 0.05)' : 'rgba(255, 255, 255, 0.05)', - }), - borderRadius: 0, // Reset Chrome style + // Reset Chrome style + borderRadius: 0, }, // Remove IE11 arrow '&::-ms-expand': { @@ -50,28 +48,46 @@ export const nativeSelectSelectStyles = ({ ownerState, theme }) => ({ '&:not([multiple]) option, &:not([multiple]) optgroup': { backgroundColor: (theme.vars || theme).palette.background.paper, }, - // Bump specificity to allow extending custom inputs - '&&&': { - paddingRight: 24, - minWidth: 16, // So it doesn't collapse. - }, - ...(ownerState.variant === 'filled' && { - '&&&': { - paddingRight: 32, + variants: [ + { + props: ({ ownerState }) => + ownerState.variant !== 'filled' && ownerState.variant !== 'outlined', + style: { + // Bump specificity to allow extending custom inputs + '&&&': { + paddingRight: 24, + minWidth: 16, // So it doesn't collapse. + }, + }, }, - }), - ...(ownerState.variant === 'outlined' && { - borderRadius: (theme.vars || theme).shape.borderRadius, - '&:focus': { - borderRadius: (theme.vars || theme).shape.borderRadius, // Reset the reset for Chrome style + { + props: { + variant: 'filled', + }, + style: { + '&&&': { + paddingRight: 32, + }, + }, }, - '&&&': { - paddingRight: 32, + { + props: { + variant: 'outlined', + }, + style: { + borderRadius: (theme.vars || theme).shape.borderRadius, + '&:focus': { + borderRadius: (theme.vars || theme).shape.borderRadius, // Reset the reset for Chrome style + }, + '&&&': { + paddingRight: 32, + }, + }, }, - }), -}); + ], +})); -const NativeSelectSelect = styled('select', { +const NativeSelectSelect = styled(StyledSelectSelect, { name: 'MuiNativeSelect', slot: 'Select', shouldForwardProp: rootShouldForwardProp, @@ -85,31 +101,48 @@ const NativeSelectSelect = styled('select', { { [`&.${nativeSelectClasses.multiple}`]: styles.multiple }, ]; }, -})(nativeSelectSelectStyles); +})({}); -export const nativeSelectIconStyles = ({ ownerState, theme }) => ({ +export const StyledSelectIcon = styled('svg')(({ theme }) => ({ // We use a position absolute over a flexbox in order to forward the pointer events // to the input and to support wrapping tags.. position: 'absolute', right: 0, - top: 'calc(50% - .5em)', // Center vertically, height is 1em - pointerEvents: 'none', // Don't block pointer events on the select under the icon. + // Center vertically, height is 1em + top: 'calc(50% - .5em)', + // Don't block pointer events on the select under the icon. + pointerEvents: 'none', color: (theme.vars || theme).palette.action.active, [`&.${nativeSelectClasses.disabled}`]: { color: (theme.vars || theme).palette.action.disabled, }, - ...(ownerState.open && { - transform: 'rotate(180deg)', - }), - ...(ownerState.variant === 'filled' && { - right: 7, - }), - ...(ownerState.variant === 'outlined' && { - right: 7, - }), -}); + variants: [ + { + props: ({ ownerState }) => ownerState.open, + style: { + transform: 'rotate(180deg)', + }, + }, + { + props: { + variant: 'filled', + }, + style: { + right: 7, + }, + }, + { + props: { + variant: 'outlined', + }, + style: { + right: 7, + }, + }, + ], +})); -const NativeSelectIcon = styled('svg', { +const NativeSelectIcon = styled(StyledSelectIcon, { name: 'MuiNativeSelect', slot: 'Icon', overridesResolver: (props, styles) => { @@ -120,7 +153,7 @@ const NativeSelectIcon = styled('svg', { ownerState.open && styles.iconOpen, ]; }, -})(nativeSelectIconStyles); +})({}); /** * @ignore - internal component. diff --git a/packages/mui-material/src/OutlinedInput/NotchedOutline.js b/packages/mui-material/src/OutlinedInput/NotchedOutline.js index 58223da4479c8e..46bf41738ea632 100644 --- a/packages/mui-material/src/OutlinedInput/NotchedOutline.js +++ b/packages/mui-material/src/OutlinedInput/NotchedOutline.js @@ -1,7 +1,8 @@ 'use client'; import * as React from 'react'; import PropTypes from 'prop-types'; -import styled, { rootShouldForwardProp } from '../styles/styled'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; +import { styled } from '../zero-styled'; const NotchedOutlineRoot = styled('fieldset', { shouldForwardProp: rootShouldForwardProp })({ textAlign: 'left', @@ -21,46 +22,57 @@ const NotchedOutlineRoot = styled('fieldset', { shouldForwardProp: rootShouldFor }); const NotchedOutlineLegend = styled('legend', { shouldForwardProp: rootShouldForwardProp })( - ({ ownerState, theme }) => ({ + ({ theme }) => ({ float: 'unset', // Fix conflict with bootstrap width: 'auto', // Fix conflict with bootstrap overflow: 'hidden', // Fix Horizontal scroll when label too long - ...(!ownerState.withLabel && { - padding: 0, - lineHeight: '11px', // sync with `height` in `legend` styles - transition: theme.transitions.create('width', { - duration: 150, - easing: theme.transitions.easing.easeOut, - }), - }), - ...(ownerState.withLabel && { - display: 'block', // Fix conflict with normalize.css and sanitize.css - padding: 0, - height: 11, // sync with `lineHeight` in `legend` styles - fontSize: '0.75em', - visibility: 'hidden', - maxWidth: 0.01, - transition: theme.transitions.create('max-width', { - duration: 50, - easing: theme.transitions.easing.easeOut, - }), - whiteSpace: 'nowrap', - '& > span': { - paddingLeft: 5, - paddingRight: 5, - display: 'inline-block', - opacity: 0, - visibility: 'visible', + variants: [ + { + props: ({ ownerState }) => !ownerState.withLabel, + style: { + padding: 0, + lineHeight: '11px', // sync with `height` in `legend` styles + transition: theme.transitions.create('width', { + duration: 150, + easing: theme.transitions.easing.easeOut, + }), + }, }, - ...(ownerState.notched && { - maxWidth: '100%', - transition: theme.transitions.create('max-width', { - duration: 100, - easing: theme.transitions.easing.easeOut, - delay: 50, - }), - }), - }), + { + props: ({ ownerState }) => ownerState.withLabel, + style: { + display: 'block', // Fix conflict with normalize.css and sanitize.css + padding: 0, + height: 11, // sync with `lineHeight` in `legend` styles + fontSize: '0.75em', + visibility: 'hidden', + maxWidth: 0.01, + transition: theme.transitions.create('max-width', { + duration: 50, + easing: theme.transitions.easing.easeOut, + }), + whiteSpace: 'nowrap', + '& > span': { + paddingLeft: 5, + paddingRight: 5, + display: 'inline-block', + opacity: 0, + visibility: 'visible', + }, + }, + }, + { + props: ({ ownerState }) => ownerState.withLabel && ownerState.notched, + style: { + maxWidth: '100%', + transition: theme.transitions.create('max-width', { + duration: 100, + easing: theme.transitions.easing.easeOut, + delay: 50, + }), + }, + }, + ], }), ); @@ -90,7 +102,7 @@ export default function NotchedOutline(props) { ); } -NotchedOutline.propTypes = { +NotchedOutline.propTypes /* remove-proptypes */ = { /** * The content of the component. */ diff --git a/packages/mui-material/src/OutlinedInput/OutlinedInput.js b/packages/mui-material/src/OutlinedInput/OutlinedInput.js index 6d75411fa65732..31242bf1393ea3 100644 --- a/packages/mui-material/src/OutlinedInput/OutlinedInput.js +++ b/packages/mui-material/src/OutlinedInput/OutlinedInput.js @@ -6,15 +6,17 @@ import composeClasses from '@mui/utils/composeClasses'; import NotchedOutline from './NotchedOutline'; import useFormControl from '../FormControl/useFormControl'; import formControlState from '../FormControl/formControlState'; -import styled, { rootShouldForwardProp } from '../styles/styled'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; +import { styled, createUseThemeProps } from '../zero-styled'; import outlinedInputClasses, { getOutlinedInputUtilityClass } from './outlinedInputClasses'; import InputBase, { rootOverridesResolver as inputBaseRootOverridesResolver, inputOverridesResolver as inputBaseInputOverridesResolver, InputBaseRoot, - InputBaseComponent as InputBaseInput, + InputBaseInput, } from '../InputBase/InputBase'; -import useThemeProps from '../styles/useThemeProps'; + +const useThemeProps = createUseThemeProps('MuiOutlinedInput'); const useUtilityClasses = (ownerState) => { const { classes } = ownerState; @@ -38,7 +40,7 @@ const OutlinedInputRoot = styled(InputBaseRoot, { name: 'MuiOutlinedInput', slot: 'Root', overridesResolver: inputBaseRootOverridesResolver, -})(({ theme, ownerState }) => { +})(({ theme }) => { const borderColor = theme.palette.mode === 'light' ? 'rgba(0, 0, 0, 0.23)' : 'rgba(255, 255, 255, 0.23)'; return { @@ -47,36 +49,64 @@ const OutlinedInputRoot = styled(InputBaseRoot, { [`&:hover .${outlinedInputClasses.notchedOutline}`]: { borderColor: (theme.vars || theme).palette.text.primary, }, - // Reset on touch devices, it doesn't add specificity - '@media (hover: none)': { - [`&:hover .${outlinedInputClasses.notchedOutline}`]: { - borderColor: theme.vars - ? `rgba(${theme.vars.palette.common.onBackgroundChannel} / 0.23)` - : borderColor, - }, - }, [`&.${outlinedInputClasses.focused} .${outlinedInputClasses.notchedOutline}`]: { - borderColor: (theme.vars || theme).palette[ownerState.color].main, borderWidth: 2, }, - [`&.${outlinedInputClasses.error} .${outlinedInputClasses.notchedOutline}`]: { - borderColor: (theme.vars || theme).palette.error.main, - }, - [`&.${outlinedInputClasses.disabled} .${outlinedInputClasses.notchedOutline}`]: { - borderColor: (theme.vars || theme).palette.action.disabled, - }, - ...(ownerState.startAdornment && { - paddingLeft: 14, - }), - ...(ownerState.endAdornment && { - paddingRight: 14, - }), - ...(ownerState.multiline && { - padding: '16.5px 14px', - ...(ownerState.size === 'small' && { - padding: '8.5px 14px', - }), - }), + variants: [ + ...Object.entries(theme.palette) + .filter(([, value]) => value.main) + .map(([color]) => ({ + props: { color }, + style: { + [`&.${outlinedInputClasses.focused} .${outlinedInputClasses.notchedOutline}`]: { + borderColor: (theme.vars || theme).palette[color].main, + }, + }, + })), + { + props: {}, // to overide the above style + style: { + // Reset on touch devices, it doesn't add specificity + '@media (hover: none)': { + [`&:hover .${outlinedInputClasses.notchedOutline}`]: { + borderColor: theme.vars + ? `rgba(${theme.vars.palette.common.onBackgroundChannel} / 0.23)` + : borderColor, + }, + }, + [`&.${outlinedInputClasses.error} .${outlinedInputClasses.notchedOutline}`]: { + borderColor: (theme.vars || theme).palette.error.main, + }, + [`&.${outlinedInputClasses.disabled} .${outlinedInputClasses.notchedOutline}`]: { + borderColor: (theme.vars || theme).palette.action.disabled, + }, + }, + }, + { + props: ({ ownerState }) => ownerState.startAdornment, + style: { + paddingLeft: 14, + }, + }, + { + props: ({ ownerState }) => ownerState.endAdornment, + style: { + paddingRight: 14, + }, + }, + { + props: ({ ownerState }) => ownerState.multiline, + style: { + padding: '16.5px 14px', + }, + }, + { + props: ({ ownerState, size }) => ownerState.multiline && size === 'small', + style: { + padding: '8.5px 14px', + }, + }, + ], }; }); @@ -98,7 +128,7 @@ const OutlinedInputInput = styled(InputBaseInput, { name: 'MuiOutlinedInput', slot: 'Input', overridesResolver: inputBaseInputOverridesResolver, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ padding: '16.5px 14px', ...(!theme.vars && { '&:-webkit-autofill': { @@ -120,18 +150,34 @@ const OutlinedInputInput = styled(InputBaseInput, { }, }, }), - ...(ownerState.size === 'small' && { - padding: '8.5px 14px', - }), - ...(ownerState.multiline && { - padding: 0, - }), - ...(ownerState.startAdornment && { - paddingLeft: 0, - }), - ...(ownerState.endAdornment && { - paddingRight: 0, - }), + variants: [ + { + props: { + size: 'small', + }, + style: { + padding: '8.5px 14px', + }, + }, + { + props: ({ ownerState }) => ownerState.multiline, + style: { + padding: 0, + }, + }, + { + props: ({ ownerState }) => ownerState.startAdornment, + style: { + paddingLeft: 0, + }, + }, + { + props: ({ ownerState }) => ownerState.endAdornment, + style: { + paddingRight: 0, + }, + }, + ], })); const OutlinedInput = React.forwardRef(function OutlinedInput(inProps, ref) { @@ -386,6 +432,8 @@ OutlinedInput.propTypes /* remove-proptypes */ = { value: PropTypes.any, }; -OutlinedInput.muiName = 'Input'; +if (OutlinedInput) { + OutlinedInput.muiName = 'Input'; +} export default OutlinedInput; diff --git a/packages/mui-material/src/Pagination/Pagination.js b/packages/mui-material/src/Pagination/Pagination.js index 659f4588fd1989..db3cd1824bb646 100644 --- a/packages/mui-material/src/Pagination/Pagination.js +++ b/packages/mui-material/src/Pagination/Pagination.js @@ -4,11 +4,12 @@ import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import integerPropType from '@mui/utils/integerPropType'; -import useThemeProps from '../styles/useThemeProps'; import { getPaginationUtilityClass } from './paginationClasses'; import usePagination from '../usePagination'; import PaginationItem from '../PaginationItem'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; + +const useThemeProps = createUseThemeProps('MuiPagination'); const useUtilityClasses = (ownerState) => { const { classes, variant } = ownerState; diff --git a/packages/mui-material/src/Paper/Paper.js b/packages/mui-material/src/Paper/Paper.js index 7f0d449c86c278..fbb7d90343eb9f 100644 --- a/packages/mui-material/src/Paper/Paper.js +++ b/packages/mui-material/src/Paper/Paper.js @@ -6,12 +6,13 @@ import integerPropType from '@mui/utils/integerPropType'; import chainPropTypes from '@mui/utils/chainPropTypes'; import composeClasses from '@mui/utils/composeClasses'; import { alpha } from '@mui/system/colorManipulator'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import getOverlayAlpha from '../styles/getOverlayAlpha'; -import useThemeProps from '../styles/useThemeProps'; import useTheme from '../styles/useTheme'; import { getPaperUtilityClass } from './paperClasses'; +const useThemeProps = createUseThemeProps('MuiPaper'); + const useUtilityClasses = (ownerState) => { const { square, elevation, variant, classes } = ownerState; @@ -40,33 +41,40 @@ const PaperRoot = styled('div', { ownerState.variant === 'elevation' && styles[`elevation${ownerState.elevation}`], ]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ backgroundColor: (theme.vars || theme).palette.background.paper, color: (theme.vars || theme).palette.text.primary, transition: theme.transitions.create('box-shadow'), - ...(!ownerState.square && { - borderRadius: theme.shape.borderRadius, - }), - ...(ownerState.variant === 'outlined' && { - border: `1px solid ${(theme.vars || theme).palette.divider}`, - }), - ...(ownerState.variant === 'elevation' && { - boxShadow: (theme.vars || theme).shadows[ownerState.elevation], - ...(!theme.vars && - theme.palette.mode === 'dark' && { - backgroundImage: `linear-gradient(${alpha( - '#fff', - getOverlayAlpha(ownerState.elevation), - )}, ${alpha('#fff', getOverlayAlpha(ownerState.elevation))})`, - }), - ...(theme.vars && { - backgroundImage: theme.vars.overlays?.[ownerState.elevation], - }), - }), + variants: [ + { + props: ({ ownerState }) => !ownerState.square, + style: { + borderRadius: theme.shape.borderRadius, + }, + }, + { + props: { + variant: 'outlined', + }, + style: { + border: `1px solid ${(theme.vars || theme).palette.divider}`, + }, + }, + { + props: { + variant: 'elevation', + }, + style: { + boxShadow: 'var(--Paper-shadow)', + backgroundImage: 'var(--Paper-overlay)', + }, + }, + ], })); const Paper = React.forwardRef(function Paper(inProps, ref) { const props = useThemeProps({ props: inProps, name: 'MuiPaper' }); + const theme = useTheme(); const { className, @@ -88,8 +96,6 @@ const Paper = React.forwardRef(function Paper(inProps, ref) { const classes = useUtilityClasses(ownerState); if (process.env.NODE_ENV !== 'production') { - // eslint-disable-next-line react-hooks/rules-of-hooks - const theme = useTheme(); if (theme.shadows[elevation] === undefined) { console.error( [ @@ -107,6 +113,22 @@ const Paper = React.forwardRef(function Paper(inProps, ref) { className={clsx(classes.root, className)} ref={ref} {...other} + style={{ + ...(variant === 'elevation' && { + '--Paper-shadow': (theme.vars || theme).shadows[elevation], + ...(theme.vars && { + '--Paper-overlay': theme.overlays?.[elevation], + }), + ...(!theme.vars && + theme.palette.mode === 'dark' && { + '--Paper-overlay': `linear-gradient(${alpha( + '#fff', + getOverlayAlpha(elevation), + )}, ${alpha('#fff', getOverlayAlpha(elevation))})`, + }), + }), + ...other.style, + }} /> ); }); @@ -153,6 +175,10 @@ Paper.propTypes /* remove-proptypes */ = { * @default false */ square: PropTypes.bool, + /** + * @ignore + */ + style: PropTypes.object, /** * The system prop that allows defining system overrides as well as additional CSS styles. */ diff --git a/packages/mui-material/src/Radio/Radio.js b/packages/mui-material/src/Radio/Radio.js index 04e8e6d2cfacb5..ff0cc0e8f0265c 100644 --- a/packages/mui-material/src/Radio/Radio.js +++ b/packages/mui-material/src/Radio/Radio.js @@ -11,7 +11,7 @@ import capitalize from '../utils/capitalize'; import createChainedFunction from '../utils/createChainedFunction'; import useRadioGroup from '../RadioGroup/useRadioGroup'; import radioClasses, { getRadioUtilityClass } from './radioClasses'; -import { rootShouldForwardProp } from '../styles/styled'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; import { styled, createUseThemeProps } from '../zero-styled'; const useThemeProps = createUseThemeProps('MuiRadio'); @@ -118,10 +118,12 @@ const Radio = React.forwardRef(function Radio(inProps, ref) { onChange: onChangeProp, size = 'medium', className, + disableRipple = false, ...other } = props; const ownerState = { ...props, + disableRipple, color, size, }; diff --git a/packages/mui-material/src/Radio/RadioButtonIcon.js b/packages/mui-material/src/Radio/RadioButtonIcon.js index 817981d374f4de..7db83617bf8e97 100644 --- a/packages/mui-material/src/Radio/RadioButtonIcon.js +++ b/packages/mui-material/src/Radio/RadioButtonIcon.js @@ -3,7 +3,7 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import RadioButtonUncheckedIcon from '../internal/svg-icons/RadioButtonUnchecked'; import RadioButtonCheckedIcon from '../internal/svg-icons/RadioButtonChecked'; -import { rootShouldForwardProp } from '../styles/styled'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; import { styled } from '../zero-styled'; const RadioButtonIconRoot = styled('span', { shouldForwardProp: rootShouldForwardProp })({ diff --git a/packages/mui-material/src/Rating/Rating.js b/packages/mui-material/src/Rating/Rating.js index 8e17b96b169371..a61b3dde83c6e6 100644 --- a/packages/mui-material/src/Rating/Rating.js +++ b/packages/mui-material/src/Rating/Rating.js @@ -16,10 +16,12 @@ import { } from '../utils'; import Star from '../internal/svg-icons/Star'; import StarBorder from '../internal/svg-icons/StarBorder'; -import useThemeProps from '../styles/useThemeProps'; -import styled, { slotShouldForwardProp } from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; +import slotShouldForwardProp from '../styles/slotShouldForwardProp'; import ratingClasses, { getRatingUtilityClass } from './ratingClasses'; +const useThemeProps = createUseThemeProps('MuiRating'); + function getDecimalPrecision(num) { const decimalPart = num.toString().split('.')[1]; return decimalPart ? decimalPart.length : 0; diff --git a/packages/mui-material/src/Select/Select.js b/packages/mui-material/src/Select/Select.js index 69bc3ea931cddb..16df3a3469ab84 100644 --- a/packages/mui-material/src/Select/Select.js +++ b/packages/mui-material/src/Select/Select.js @@ -13,7 +13,8 @@ import FilledInput from '../FilledInput'; import OutlinedInput from '../OutlinedInput'; import useThemeProps from '../styles/useThemeProps'; import useForkRef from '../utils/useForkRef'; -import styled, { rootShouldForwardProp } from '../styles/styled'; +import { styled } from '../zero-styled'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; const useUtilityClasses = (ownerState) => { const { classes } = ownerState; diff --git a/packages/mui-material/src/Select/SelectInput.js b/packages/mui-material/src/Select/SelectInput.js index 54741070da1a85..944a7e29759277 100644 --- a/packages/mui-material/src/Select/SelectInput.js +++ b/packages/mui-material/src/Select/SelectInput.js @@ -10,17 +10,15 @@ import refType from '@mui/utils/refType'; import ownerDocument from '../utils/ownerDocument'; import capitalize from '../utils/capitalize'; import Menu from '../Menu/Menu'; -import { - nativeSelectSelectStyles, - nativeSelectIconStyles, -} from '../NativeSelect/NativeSelectInput'; +import { StyledSelectSelect, StyledSelectIcon } from '../NativeSelect/NativeSelectInput'; import { isFilled } from '../InputBase/utils'; -import styled, { slotShouldForwardProp } from '../styles/styled'; +import { styled } from '../zero-styled'; +import slotShouldForwardProp from '../styles/slotShouldForwardProp'; import useForkRef from '../utils/useForkRef'; import useControlled from '../utils/useControlled'; import selectClasses, { getSelectUtilityClasses } from './selectClasses'; -const SelectSelect = styled('div', { +const SelectSelect = styled(StyledSelectSelect, { name: 'MuiSelect', slot: 'Select', overridesResolver: (props, styles) => { @@ -33,7 +31,7 @@ const SelectSelect = styled('div', { { [`&.${selectClasses.multiple}`]: styles.multiple }, ]; }, -})(nativeSelectSelectStyles, { +})({ // Win specificity over the input base [`&.${selectClasses.select}`]: { height: 'auto', // Resets for multiple select with chips @@ -44,7 +42,7 @@ const SelectSelect = styled('div', { }, }); -const SelectIcon = styled('svg', { +const SelectIcon = styled(StyledSelectIcon, { name: 'MuiSelect', slot: 'Icon', overridesResolver: (props, styles) => { @@ -55,7 +53,7 @@ const SelectIcon = styled('svg', { ownerState.open && styles.iconOpen, ]; }, -})(nativeSelectIconStyles); +})({}); const SelectNativeInput = styled('input', { shouldForwardProp: (prop) => slotShouldForwardProp(prop) && prop !== 'classes', @@ -493,6 +491,7 @@ const SelectInput = React.forwardRef(function SelectInput(props, ref) { return ( { const { classes, variant, animation, hasChildren, width, height } = ownerState; @@ -55,6 +55,23 @@ const waveKeyframe = keyframes` } `; +// This implementation is for supporting both Styled-components v4+ and Pigment CSS. +// A global animation has to be created here for Styled-components v4+ (https://github.com/styled-components/styled-components/blob/main/packages/styled-components/src/utils/errors.md#12). +// which can be done by checking typeof indeterminate1Keyframe !== 'string' (at runtime, Pigment CSS transform keyframes`` to a string). +const pulseAnimation = + typeof pulseKeyframe !== 'string' + ? css` + animation: ${pulseKeyframe} 2s ease-in-out 0.5s infinite; + ` + : null; + +const waveAnimation = + typeof waveKeyframe !== 'string' + ? css` + animation: ${waveKeyframe} 2s linear 0.5s infinite; + ` + : null; + const SkeletonRoot = styled('span', { name: 'MuiSkeleton', slot: 'Root', @@ -70,84 +87,117 @@ const SkeletonRoot = styled('span', { ownerState.hasChildren && !ownerState.height && styles.heightAuto, ]; }, -})( - ({ theme, ownerState }) => { - const radiusUnit = getUnit(theme.shape.borderRadius) || 'px'; - const radiusValue = toUnitless(theme.shape.borderRadius); - - return { - display: 'block', - // Create a "on paper" color with sufficient contrast retaining the color - backgroundColor: theme.vars - ? theme.vars.palette.Skeleton.bg - : alpha(theme.palette.text.primary, theme.palette.mode === 'light' ? 0.11 : 0.13), - height: '1.2em', - ...(ownerState.variant === 'text' && { - marginTop: 0, - marginBottom: 0, - height: 'auto', - transformOrigin: '0 55%', - transform: 'scale(1, 0.60)', - borderRadius: `${radiusValue}${radiusUnit}/${ - Math.round((radiusValue / 0.6) * 10) / 10 - }${radiusUnit}`, - '&:empty:before': { - content: '"\\00a0"', +})(({ theme }) => { + const radiusUnit = getUnit(theme.shape.borderRadius) || 'px'; + const radiusValue = toUnitless(theme.shape.borderRadius); + + return { + display: 'block', + // Create a "on paper" color with sufficient contrast retaining the color + backgroundColor: theme.vars + ? theme.vars.palette.Skeleton.bg + : alpha(theme.palette.text.primary, theme.palette.mode === 'light' ? 0.11 : 0.13), + height: '1.2em', + variants: [ + { + props: { + variant: 'text', + }, + style: { + marginTop: 0, + marginBottom: 0, + height: 'auto', + transformOrigin: '0 55%', + transform: 'scale(1, 0.60)', + borderRadius: `${radiusValue}${radiusUnit}/${ + Math.round((radiusValue / 0.6) * 10) / 10 + }${radiusUnit}`, + '&:empty:before': { + content: '"\\00a0"', + }, + }, + }, + { + props: { + variant: 'circular', + }, + style: { + borderRadius: '50%', }, - }), - ...(ownerState.variant === 'circular' && { - borderRadius: '50%', - }), - ...(ownerState.variant === 'rounded' && { - borderRadius: (theme.vars || theme).shape.borderRadius, - }), - ...(ownerState.hasChildren && { - '& > *': { - visibility: 'hidden', + }, + { + props: { + variant: 'rounded', }, - }), - ...(ownerState.hasChildren && - !ownerState.width && { + style: { + borderRadius: (theme.vars || theme).shape.borderRadius, + }, + }, + { + props: ({ ownerState }) => ownerState.hasChildren, + style: { + '& > *': { + visibility: 'hidden', + }, + }, + }, + { + props: ({ ownerState }) => ownerState.hasChildren && !ownerState.width, + style: { maxWidth: 'fit-content', - }), - ...(ownerState.hasChildren && - !ownerState.height && { + }, + }, + { + props: ({ ownerState }) => ownerState.hasChildren && !ownerState.height, + style: { height: 'auto', - }), - }; - }, - ({ ownerState }) => - ownerState.animation === 'pulse' && - css` - animation: ${pulseKeyframe} 2s ease-in-out 0.5s infinite; - `, - ({ ownerState, theme }) => - ownerState.animation === 'wave' && - css` - position: relative; - overflow: hidden; - - /* Fix bug in Safari https://bugs.webkit.org/show_bug.cgi?id=68196 */ - -webkit-mask-image: -webkit-radial-gradient(white, black); - - &::after { - animation: ${waveKeyframe} 2s linear 0.5s infinite; - background: linear-gradient( - 90deg, - transparent, - ${(theme.vars || theme).palette.action.hover}, - transparent - ); - content: ''; - position: absolute; - transform: translateX(-100%); /* Avoid flash during server-side hydration */ - bottom: 0; - left: 0; - right: 0; - top: 0; - } - `, -); + }, + }, + { + props: { + animation: 'pulse', + }, + style: pulseAnimation || { + animation: `${pulseKeyframe} 2s ease-in-out 0.5s infinite`, + }, + }, + { + props: { + animation: 'wave', + }, + style: { + position: 'relative', + overflow: 'hidden', + /* Fix bug in Safari https://bugs.webkit.org/show_bug.cgi?id=68196 */ + WebkitMaskImage: '-webkit-radial-gradient(white, black)', + '&::after': { + background: `linear-gradient( + 90deg, + transparent, + ${(theme.vars || theme).palette.action.hover}, + transparent + )`, + content: '""', + position: 'absolute', + transform: 'translateX(-100%)' /* Avoid flash during server-side hydration */, + bottom: 0, + left: 0, + right: 0, + top: 0, + }, + }, + }, + { + props: { + animation: 'wave', + }, + style: waveAnimation || { + animation: `${waveKeyframe} 2s linear 0.5s infinite`, + }, + }, + ], + }; +}); const Skeleton = React.forwardRef(function Skeleton(inProps, ref) { const props = useThemeProps({ props: inProps, name: 'MuiSkeleton' }); diff --git a/packages/mui-material/src/Snackbar/Snackbar.js b/packages/mui-material/src/Snackbar/Snackbar.js index df3cabca60fe96..3b731e05c71c48 100644 --- a/packages/mui-material/src/Snackbar/Snackbar.js +++ b/packages/mui-material/src/Snackbar/Snackbar.js @@ -5,14 +5,15 @@ import { useSlotProps } from '@mui/base/utils'; import composeClasses from '@mui/utils/composeClasses'; import { ClickAwayListener } from '@mui/base/ClickAwayListener'; import { useSnackbar } from '@mui/base/useSnackbar'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import useTheme from '../styles/useTheme'; -import useThemeProps from '../styles/useThemeProps'; import capitalize from '../utils/capitalize'; import Grow from '../Grow'; import SnackbarContent from '../SnackbarContent'; import { getSnackbarUtilityClass } from './snackbarClasses'; +const useThemeProps = createUseThemeProps('MuiSnackbar'); + const useUtilityClasses = (ownerState) => { const { classes, anchorOrigin } = ownerState; @@ -41,38 +42,55 @@ const SnackbarRoot = styled('div', { ], ]; }, -})(({ theme, ownerState }) => { - const center = { - left: '50%', - right: 'auto', - transform: 'translateX(-50%)', - }; - - return { - zIndex: (theme.vars || theme).zIndex.snackbar, - position: 'fixed', - display: 'flex', - left: 8, - right: 8, - justifyContent: 'center', - alignItems: 'center', - ...(ownerState.anchorOrigin.vertical === 'top' ? { top: 8 } : { bottom: 8 }), - ...(ownerState.anchorOrigin.horizontal === 'left' && { justifyContent: 'flex-start' }), - ...(ownerState.anchorOrigin.horizontal === 'right' && { justifyContent: 'flex-end' }), - [theme.breakpoints.up('sm')]: { - ...(ownerState.anchorOrigin.vertical === 'top' ? { top: 24 } : { bottom: 24 }), - ...(ownerState.anchorOrigin.horizontal === 'center' && center), - ...(ownerState.anchorOrigin.horizontal === 'left' && { - left: 24, - right: 'auto', - }), - ...(ownerState.anchorOrigin.horizontal === 'right' && { - right: 24, - left: 'auto', - }), +})(({ theme }) => ({ + zIndex: (theme.vars || theme).zIndex.snackbar, + position: 'fixed', + display: 'flex', + left: 8, + right: 8, + justifyContent: 'center', + alignItems: 'center', + variants: [ + { + props: ({ ownerState }) => ownerState.anchorOrigin.vertical === 'top', + style: { top: 8, [theme.breakpoints.up('sm')]: { top: 24 } }, }, - }; -}); + { + props: ({ ownerState }) => ownerState.anchorOrigin.vertical !== 'top', + style: { bottom: 8, [theme.breakpoints.up('sm')]: { bottom: 24 } }, + }, + { + props: ({ ownerState }) => ownerState.anchorOrigin.horizontal === 'left', + style: { + justifyContent: 'flex-start', + [theme.breakpoints.up('sm')]: { + left: 24, + right: 'auto', + }, + }, + }, + { + props: ({ ownerState }) => ownerState.anchorOrigin.horizontal === 'right', + style: { + justifyContent: 'flex-end', + [theme.breakpoints.up('sm')]: { + right: 24, + left: 'auto', + }, + }, + }, + { + props: ({ ownerState }) => ownerState.anchorOrigin.horizontal === 'center', + style: { + [theme.breakpoints.up('sm')]: { + left: '50%', + right: 'auto', + transform: 'translateX(-50%)', + }, + }, + }, + ], +})); const Snackbar = React.forwardRef(function Snackbar(inProps, ref) { const props = useThemeProps({ props: inProps, name: 'MuiSnackbar' }); diff --git a/packages/mui-material/src/SnackbarContent/SnackbarContent.js b/packages/mui-material/src/SnackbarContent/SnackbarContent.js index cdee122e3185c0..10e1e774167f23 100644 --- a/packages/mui-material/src/SnackbarContent/SnackbarContent.js +++ b/packages/mui-material/src/SnackbarContent/SnackbarContent.js @@ -4,11 +4,12 @@ import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import { emphasize } from '@mui/system/colorManipulator'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import Paper from '../Paper'; import { getSnackbarContentUtilityClass } from './snackbarContentClasses'; +const useThemeProps = createUseThemeProps('MuiSnackbarContent'); + const useUtilityClasses = (ownerState) => { const { classes } = ownerState; diff --git a/packages/mui-material/src/SpeedDial/SpeedDial.js b/packages/mui-material/src/SpeedDial/SpeedDial.js index cb35e3a25de29d..f65f03100530c8 100644 --- a/packages/mui-material/src/SpeedDial/SpeedDial.js +++ b/packages/mui-material/src/SpeedDial/SpeedDial.js @@ -6,8 +6,7 @@ import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import useTimeout from '@mui/utils/useTimeout'; import clamp from '@mui/utils/clamp'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import useTheme from '../styles/useTheme'; import Zoom from '../Zoom'; import Fab from '../Fab'; @@ -18,6 +17,8 @@ import useControlled from '../utils/useControlled'; import speedDialClasses, { getSpeedDialUtilityClass } from './speedDialClasses'; import useSlot from '../utils/useSlot'; +const useThemeProps = createUseThemeProps('MuiSpeedDial'); + const useUtilityClasses = (ownerState) => { const { classes, open, direction } = ownerState; @@ -51,43 +52,65 @@ const SpeedDialRoot = styled('div', { return [styles.root, styles[`direction${capitalize(ownerState.direction)}`]]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ zIndex: (theme.vars || theme).zIndex.speedDial, display: 'flex', alignItems: 'center', pointerEvents: 'none', - ...(ownerState.direction === 'up' && { - flexDirection: 'column-reverse', - [`& .${speedDialClasses.actions}`]: { - flexDirection: 'column-reverse', - marginBottom: -dialRadius, - paddingBottom: spacingActions + dialRadius, + variants: [ + { + props: { + direction: 'up', + }, + style: { + flexDirection: 'column-reverse', + [`& .${speedDialClasses.actions}`]: { + flexDirection: 'column-reverse', + marginBottom: -dialRadius, + paddingBottom: spacingActions + dialRadius, + }, + }, }, - }), - ...(ownerState.direction === 'down' && { - flexDirection: 'column', - [`& .${speedDialClasses.actions}`]: { - flexDirection: 'column', - marginTop: -dialRadius, - paddingTop: spacingActions + dialRadius, + { + props: { + direction: 'down', + }, + style: { + flexDirection: 'column', + [`& .${speedDialClasses.actions}`]: { + flexDirection: 'column', + marginTop: -dialRadius, + paddingTop: spacingActions + dialRadius, + }, + }, }, - }), - ...(ownerState.direction === 'left' && { - flexDirection: 'row-reverse', - [`& .${speedDialClasses.actions}`]: { - flexDirection: 'row-reverse', - marginRight: -dialRadius, - paddingRight: spacingActions + dialRadius, + { + props: { + direction: 'left', + }, + style: { + flexDirection: 'row-reverse', + [`& .${speedDialClasses.actions}`]: { + flexDirection: 'row-reverse', + marginRight: -dialRadius, + paddingRight: spacingActions + dialRadius, + }, + }, }, - }), - ...(ownerState.direction === 'right' && { - flexDirection: 'row', - [`& .${speedDialClasses.actions}`]: { - flexDirection: 'row', - marginLeft: -dialRadius, - paddingLeft: spacingActions + dialRadius, + { + props: { + direction: 'right', + }, + style: { + flexDirection: 'row', + [`& .${speedDialClasses.actions}`]: { + flexDirection: 'row', + marginLeft: -dialRadius, + paddingLeft: spacingActions + dialRadius, + }, + }, }, - }), + ], })); const SpeedDialFab = styled(Fab, { @@ -106,14 +129,19 @@ const SpeedDialActions = styled('div', { return [styles.actions, !ownerState.open && styles.actionsClosed]; }, -})(({ ownerState }) => ({ +})({ display: 'flex', pointerEvents: 'auto', - ...(!ownerState.open && { - transition: 'top 0s linear 0.2s', - pointerEvents: 'none', - }), -})); + variants: [ + { + props: ({ ownerState }) => !ownerState.open, + style: { + transition: 'top 0s linear 0.2s', + pointerEvents: 'none', + }, + }, + ], +}); const SpeedDial = React.forwardRef(function SpeedDial(inProps, ref) { const props = useThemeProps({ props: inProps, name: 'MuiSpeedDial' }); diff --git a/packages/mui-material/src/SpeedDialAction/SpeedDialAction.js b/packages/mui-material/src/SpeedDialAction/SpeedDialAction.js index b1a44948531dc8..50729eccf4a4f1 100644 --- a/packages/mui-material/src/SpeedDialAction/SpeedDialAction.js +++ b/packages/mui-material/src/SpeedDialAction/SpeedDialAction.js @@ -5,13 +5,14 @@ import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import { emphasize } from '@mui/system/colorManipulator'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import Fab from '../Fab'; import Tooltip from '../Tooltip'; import capitalize from '../utils/capitalize'; import speedDialActionClasses, { getSpeedDialActionUtilityClass } from './speedDialActionClasses'; +const useThemeProps = createUseThemeProps('MuiSpeedDialAction'); + const useUtilityClasses = (ownerState) => { const { open, tooltipPlacement, classes } = ownerState; @@ -37,7 +38,7 @@ const SpeedDialActionFab = styled(Fab, { return [styles.fab, !ownerState.open && styles.fabClosed]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ margin: 8, color: (theme.vars || theme).palette.text.secondary, backgroundColor: (theme.vars || theme).palette.background.paper, @@ -50,10 +51,15 @@ const SpeedDialActionFab = styled(Fab, { duration: theme.transitions.duration.shorter, })}, opacity 0.8s`, opacity: 1, - ...(!ownerState.open && { - opacity: 0, - transform: 'scale(0)', - }), + variants: [ + { + props: ({ ownerState }) => !ownerState.open, + style: { + opacity: 0, + transform: 'scale(0)', + }, + }, + ], })); const SpeedDialActionStaticTooltip = styled('span', { @@ -68,7 +74,7 @@ const SpeedDialActionStaticTooltip = styled('span', { styles[`tooltipPlacement${capitalize(ownerState.tooltipPlacement)}`], ]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ position: 'relative', display: 'flex', alignItems: 'center', @@ -77,21 +83,42 @@ const SpeedDialActionStaticTooltip = styled('span', { duration: theme.transitions.duration.shorter, }), opacity: 1, - ...(!ownerState.open && { - opacity: 0, - transform: 'scale(0.5)', - }), - ...(ownerState.tooltipPlacement === 'left' && { - transformOrigin: '100% 50%', - right: '100%', - marginRight: 8, - }), - ...(ownerState.tooltipPlacement === 'right' && { - transformOrigin: '0% 50%', - left: '100%', - marginLeft: 8, - }), }, + variants: [ + { + props: ({ ownerState }) => !ownerState.open, + style: { + [`& .${speedDialActionClasses.staticTooltipLabel}`]: { + opacity: 0, + transform: 'scale(0.5)', + }, + }, + }, + { + props: { + tooltipPlacement: 'left', + }, + style: { + [`& .${speedDialActionClasses.staticTooltipLabel}`]: { + transformOrigin: '100% 50%', + right: '100%', + marginRight: 8, + }, + }, + }, + { + props: { + tooltipPlacement: 'right', + }, + style: { + [`& .${speedDialActionClasses.staticTooltipLabel}`]: { + transformOrigin: '0% 50%', + left: '100%', + marginLeft: 8, + }, + }, + }, + ], })); const SpeedDialActionStaticTooltipLabel = styled('span', { diff --git a/packages/mui-material/src/SpeedDialIcon/SpeedDialIcon.js b/packages/mui-material/src/SpeedDialIcon/SpeedDialIcon.js index 5286882d359bcd..06dfaebd0ae7bb 100644 --- a/packages/mui-material/src/SpeedDialIcon/SpeedDialIcon.js +++ b/packages/mui-material/src/SpeedDialIcon/SpeedDialIcon.js @@ -3,11 +3,12 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import AddIcon from '../internal/svg-icons/Add'; import speedDialIconClasses, { getSpeedDialIconUtilityClass } from './speedDialIconClasses'; +const useThemeProps = createUseThemeProps('MuiSpeedDialIcon'); + const useUtilityClasses = (ownerState) => { const { classes, open, openIcon } = ownerState; @@ -38,18 +39,12 @@ const SpeedDialIconRoot = styled('span', { styles.root, ]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ height: 24, [`& .${speedDialIconClasses.icon}`]: { transition: theme.transitions.create(['transform', 'opacity'], { duration: theme.transitions.duration.short, }), - ...(ownerState.open && { - transform: 'rotate(45deg)', - ...(ownerState.openIcon && { - opacity: 0, - }), - }), }, [`& .${speedDialIconClasses.openIcon}`]: { position: 'absolute', @@ -58,11 +53,34 @@ const SpeedDialIconRoot = styled('span', { }), opacity: 0, transform: 'rotate(-45deg)', - ...(ownerState.open && { - transform: 'rotate(0deg)', - opacity: 1, - }), }, + variants: [ + { + props: ({ ownerState }) => ownerState.open, + style: { + [`& .${speedDialIconClasses.icon}`]: { + transform: 'rotate(45deg)', + }, + }, + }, + { + props: ({ ownerState }) => ownerState.open && ownerState.openIcon, + style: { + [`& .${speedDialIconClasses.icon}`]: { + opacity: 0, + }, + }, + }, + { + props: ({ ownerState }) => ownerState.open, + style: { + [`& .${speedDialIconClasses.openIcon}`]: { + transform: 'rotate(0deg)', + opacity: 1, + }, + }, + }, + ], })); const SpeedDialIcon = React.forwardRef(function SpeedDialIcon(inProps, ref) { diff --git a/packages/mui-material/src/SwipeableDrawer/SwipeArea.js b/packages/mui-material/src/SwipeableDrawer/SwipeArea.js index 30b82178ed56ae..c3855344bc11c4 100644 --- a/packages/mui-material/src/SwipeableDrawer/SwipeArea.js +++ b/packages/mui-material/src/SwipeableDrawer/SwipeArea.js @@ -2,35 +2,56 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; -import styled, { rootShouldForwardProp } from '../styles/styled'; +import { styled } from '../zero-styled'; +import rootShouldForwardProp from '../styles/rootShouldForwardProp'; import capitalize from '../utils/capitalize'; import { isHorizontal } from '../Drawer/Drawer'; -const SwipeAreaRoot = styled('div', { shouldForwardProp: rootShouldForwardProp })( - ({ theme, ownerState }) => ({ - position: 'fixed', - top: 0, - left: 0, - bottom: 0, - zIndex: theme.zIndex.drawer - 1, - ...(ownerState.anchor === 'left' && { - right: 'auto', - }), - ...(ownerState.anchor === 'right' && { - left: 'auto', - right: 0, - }), - ...(ownerState.anchor === 'top' && { - bottom: 'auto', - right: 0, - }), - ...(ownerState.anchor === 'bottom' && { - top: 'auto', - bottom: 0, - right: 0, - }), - }), -); +const SwipeAreaRoot = styled('div', { shouldForwardProp: rootShouldForwardProp })(({ theme }) => ({ + position: 'fixed', + top: 0, + left: 0, + bottom: 0, + zIndex: theme.zIndex.drawer - 1, + variants: [ + { + props: { + anchor: 'left', + }, + style: { + right: 'auto', + }, + }, + { + props: { + anchor: 'right', + }, + style: { + left: 'auto', + right: 0, + }, + }, + { + props: { + anchor: 'top', + }, + style: { + bottom: 'auto', + right: 0, + }, + }, + { + props: { + anchor: 'bottom', + }, + style: { + top: 'auto', + bottom: 0, + right: 0, + }, + }, + ], +})); /** * @ignore - internal component. diff --git a/packages/mui-material/src/Tab/Tab.js b/packages/mui-material/src/Tab/Tab.js index 43d53422a76454..b25d9a5eae0217 100644 --- a/packages/mui-material/src/Tab/Tab.js +++ b/packages/mui-material/src/Tab/Tab.js @@ -5,11 +5,12 @@ import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import ButtonBase from '../ButtonBase'; import capitalize from '../utils/capitalize'; -import useThemeProps from '../styles/useThemeProps'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import unsupportedProp from '../utils/unsupportedProp'; import tabClasses, { getTabUtilityClass } from './tabClasses'; +const useThemeProps = createUseThemeProps('MuiTab'); + const useUtilityClasses = (ownerState) => { const { classes, textColor, fullWidth, wrapped, icon, label, selected, disabled } = ownerState; @@ -43,7 +44,7 @@ const TabRoot = styled(ButtonBase, { ownerState.wrapped && styles.wrapped, ]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ ...theme.typography.button, maxWidth: 360, minWidth: 90, @@ -54,68 +55,128 @@ const TabRoot = styled(ButtonBase, { overflow: 'hidden', whiteSpace: 'normal', textAlign: 'center', - ...(ownerState.label && { - flexDirection: - ownerState.iconPosition === 'top' || ownerState.iconPosition === 'bottom' ? 'column' : 'row', - }), lineHeight: 1.25, - ...(ownerState.icon && - ownerState.label && { - minHeight: 72, - paddingTop: 9, - paddingBottom: 9, - [`& > .${tabClasses.iconWrapper}`]: { - ...(ownerState.iconPosition === 'top' && { + variants: [ + { + props: ({ ownerState }) => + ownerState.label && + (ownerState.iconPosition === 'top' || ownerState.iconPosition === 'bottom'), + style: { + flexDirection: 'column', + }, + }, + { + props: ({ ownerState }) => + ownerState.label && + ownerState.iconPosition !== 'top' && + ownerState.iconPosition !== 'bottom', + style: { + flexDirection: 'row', + }, + }, + { + props: ({ ownerState }) => ownerState.icon && ownerState.label, + style: { + minHeight: 72, + paddingTop: 9, + paddingBottom: 9, + }, + }, + { + props: ({ ownerState, iconPosition }) => + ownerState.icon && ownerState.label && iconPosition === 'top', + style: { + [`& > .${tabClasses.iconWrapper}`]: { marginBottom: 6, - }), - ...(ownerState.iconPosition === 'bottom' && { + }, + }, + }, + { + props: ({ ownerState, iconPosition }) => + ownerState.icon && ownerState.label && iconPosition === 'bottom', + style: { + [`& > .${tabClasses.iconWrapper}`]: { marginTop: 6, - }), - ...(ownerState.iconPosition === 'start' && { + }, + }, + }, + { + props: ({ ownerState, iconPosition }) => + ownerState.icon && ownerState.label && iconPosition === 'start', + style: { + [`& > .${tabClasses.iconWrapper}`]: { marginRight: theme.spacing(1), - }), - ...(ownerState.iconPosition === 'end' && { + }, + }, + }, + { + props: ({ ownerState, iconPosition }) => + ownerState.icon && ownerState.label && iconPosition === 'end', + style: { + [`& > .${tabClasses.iconWrapper}`]: { marginLeft: theme.spacing(1), - }), + }, }, - }), - ...(ownerState.textColor === 'inherit' && { - color: 'inherit', - opacity: 0.6, // same opacity as theme.palette.text.secondary - [`&.${tabClasses.selected}`]: { - opacity: 1, }, - [`&.${tabClasses.disabled}`]: { - opacity: (theme.vars || theme).palette.action.disabledOpacity, + { + props: { + textColor: 'inherit', + }, + style: { + color: 'inherit', + opacity: 0.6, // same opacity as theme.palette.text.secondary + [`&.${tabClasses.selected}`]: { + opacity: 1, + }, + [`&.${tabClasses.disabled}`]: { + opacity: (theme.vars || theme).palette.action.disabledOpacity, + }, + }, }, - }), - ...(ownerState.textColor === 'primary' && { - color: (theme.vars || theme).palette.text.secondary, - [`&.${tabClasses.selected}`]: { - color: (theme.vars || theme).palette.primary.main, + { + props: { + textColor: 'primary', + }, + style: { + color: (theme.vars || theme).palette.text.secondary, + [`&.${tabClasses.selected}`]: { + color: (theme.vars || theme).palette.primary.main, + }, + [`&.${tabClasses.disabled}`]: { + color: (theme.vars || theme).palette.text.disabled, + }, + }, }, - [`&.${tabClasses.disabled}`]: { - color: (theme.vars || theme).palette.text.disabled, + { + props: { + textColor: 'secondary', + }, + style: { + color: (theme.vars || theme).palette.text.secondary, + [`&.${tabClasses.selected}`]: { + color: (theme.vars || theme).palette.secondary.main, + }, + [`&.${tabClasses.disabled}`]: { + color: (theme.vars || theme).palette.text.disabled, + }, + }, }, - }), - ...(ownerState.textColor === 'secondary' && { - color: (theme.vars || theme).palette.text.secondary, - [`&.${tabClasses.selected}`]: { - color: (theme.vars || theme).palette.secondary.main, + { + props: ({ ownerState }) => ownerState.fullWidth, + style: { + flexShrink: 1, + flexGrow: 1, + flexBasis: 0, + maxWidth: 'none', + }, }, - [`&.${tabClasses.disabled}`]: { - color: (theme.vars || theme).palette.text.disabled, + { + props: ({ ownerState }) => ownerState.wrapped, + style: { + fontSize: theme.typography.pxToRem(12), + }, }, - }), - ...(ownerState.fullWidth && { - flexShrink: 1, - flexGrow: 1, - flexBasis: 0, - maxWidth: 'none', - }), - ...(ownerState.wrapped && { - fontSize: theme.typography.pxToRem(12), - }), + ], })); const Tab = React.forwardRef(function Tab(inProps, ref) { diff --git a/packages/mui-material/src/TabScrollButton/TabScrollButton.js b/packages/mui-material/src/TabScrollButton/TabScrollButton.js index 9dcdd8fe8efbc3..e9a3fa1e476b20 100644 --- a/packages/mui-material/src/TabScrollButton/TabScrollButton.js +++ b/packages/mui-material/src/TabScrollButton/TabScrollButton.js @@ -9,10 +9,11 @@ import { useRtl } from '@mui/system/RtlProvider'; import KeyboardArrowLeft from '../internal/svg-icons/KeyboardArrowLeft'; import KeyboardArrowRight from '../internal/svg-icons/KeyboardArrowRight'; import ButtonBase from '../ButtonBase'; -import useThemeProps from '../styles/useThemeProps'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import tabScrollButtonClasses, { getTabScrollButtonUtilityClass } from './tabScrollButtonClasses'; +const useThemeProps = createUseThemeProps('MuiTabScrollButton'); + const useUtilityClasses = (ownerState) => { const { classes, orientation, disabled } = ownerState; @@ -31,21 +32,28 @@ const TabScrollButtonRoot = styled(ButtonBase, { return [styles.root, ownerState.orientation && styles[ownerState.orientation]]; }, -})(({ ownerState }) => ({ +})({ width: 40, flexShrink: 0, opacity: 0.8, [`&.${tabScrollButtonClasses.disabled}`]: { opacity: 0, }, - ...(ownerState.orientation === 'vertical' && { - width: '100%', - height: 40, - '& svg': { - transform: `rotate(${ownerState.isRtl ? -90 : 90}deg)`, + variants: [ + { + props: { + orientation: 'vertical', + }, + style: { + width: '100%', + height: 40, + '& svg': { + transform: 'var(--TabScrollButton-svgRotate)', + }, + }, }, - }), -})); + ], +}); const TabScrollButton = React.forwardRef(function TabScrollButton(inProps, ref) { const props = useThemeProps({ props: inProps, name: 'MuiTabScrollButton' }); @@ -95,6 +103,12 @@ const TabScrollButton = React.forwardRef(function TabScrollButton(inProps, ref) ownerState={ownerState} tabIndex={null} {...other} + style={{ + ...other.style, + ...(orientation === 'vertical' && { + '--TabScrollButton-svgRotate': `rotate(${isRtl ? -90 : 90}deg)`, + }), + }} > {direction === 'left' ? ( @@ -152,6 +166,10 @@ TabScrollButton.propTypes /* remove-proptypes */ = { EndScrollButtonIcon: PropTypes.elementType, StartScrollButtonIcon: PropTypes.elementType, }), + /** + * @ignore + */ + style: PropTypes.object, /** * The system prop that allows defining system overrides as well as additional CSS styles. */ diff --git a/packages/mui-material/src/Table/Table.js b/packages/mui-material/src/Table/Table.js index ee4e793dcaa1d6..d513e8e4528850 100644 --- a/packages/mui-material/src/Table/Table.js +++ b/packages/mui-material/src/Table/Table.js @@ -4,10 +4,11 @@ import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import TableContext from './TableContext'; -import useThemeProps from '../styles/useThemeProps'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getTableUtilityClass } from './tableClasses'; +const useThemeProps = createUseThemeProps('MuiTable'); + const useUtilityClasses = (ownerState) => { const { classes, stickyHeader } = ownerState; diff --git a/packages/mui-material/src/TableBody/TableBody.js b/packages/mui-material/src/TableBody/TableBody.js index 0fc5115e327055..9116e8274d0cb1 100644 --- a/packages/mui-material/src/TableBody/TableBody.js +++ b/packages/mui-material/src/TableBody/TableBody.js @@ -4,10 +4,11 @@ import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import Tablelvl2Context from '../Table/Tablelvl2Context'; -import useThemeProps from '../styles/useThemeProps'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getTableBodyUtilityClass } from './tableBodyClasses'; +const useThemeProps = createUseThemeProps('MuiTableBody'); + const useUtilityClasses = (ownerState) => { const { classes } = ownerState; diff --git a/packages/mui-material/src/TableCell/TableCell.js b/packages/mui-material/src/TableCell/TableCell.js index cf3860f2763af1..71a8c53e1013a2 100644 --- a/packages/mui-material/src/TableCell/TableCell.js +++ b/packages/mui-material/src/TableCell/TableCell.js @@ -7,10 +7,11 @@ import { darken, alpha, lighten } from '@mui/system/colorManipulator'; import capitalize from '../utils/capitalize'; import TableContext from '../Table/TableContext'; import Tablelvl2Context from '../Table/Tablelvl2Context'; -import useThemeProps from '../styles/useThemeProps'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import tableCellClasses, { getTableCellUtilityClass } from './tableCellClasses'; +const useThemeProps = createUseThemeProps('MuiTableCell'); + const useUtilityClasses = (ownerState) => { const { classes, variant, align, padding, size, stickyHeader } = ownerState; diff --git a/packages/mui-material/src/TableContainer/TableContainer.js b/packages/mui-material/src/TableContainer/TableContainer.js index 206d3b4295b7af..f786b6192e247b 100644 --- a/packages/mui-material/src/TableContainer/TableContainer.js +++ b/packages/mui-material/src/TableContainer/TableContainer.js @@ -3,10 +3,11 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; -import useThemeProps from '../styles/useThemeProps'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getTableContainerUtilityClass } from './tableContainerClasses'; +const useThemeProps = createUseThemeProps('MuiTableContainer'); + const useUtilityClasses = (ownerState) => { const { classes } = ownerState; diff --git a/packages/mui-material/src/TableFooter/TableFooter.js b/packages/mui-material/src/TableFooter/TableFooter.js index ca142c563b62d6..5de3b7d0a3909d 100644 --- a/packages/mui-material/src/TableFooter/TableFooter.js +++ b/packages/mui-material/src/TableFooter/TableFooter.js @@ -4,10 +4,11 @@ import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import Tablelvl2Context from '../Table/Tablelvl2Context'; -import useThemeProps from '../styles/useThemeProps'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getTableFooterUtilityClass } from './tableFooterClasses'; +const useThemeProps = createUseThemeProps('MuiTableFooter'); + const useUtilityClasses = (ownerState) => { const { classes } = ownerState; diff --git a/packages/mui-material/src/TableHead/TableHead.js b/packages/mui-material/src/TableHead/TableHead.js index 3a58974aa5ab09..32943035f0911b 100644 --- a/packages/mui-material/src/TableHead/TableHead.js +++ b/packages/mui-material/src/TableHead/TableHead.js @@ -4,10 +4,11 @@ import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import Tablelvl2Context from '../Table/Tablelvl2Context'; -import useThemeProps from '../styles/useThemeProps'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getTableHeadUtilityClass } from './tableHeadClasses'; +const useThemeProps = createUseThemeProps('MuiTableHead'); + const useUtilityClasses = (ownerState) => { const { classes } = ownerState; diff --git a/packages/mui-material/src/TablePagination/TablePagination.js b/packages/mui-material/src/TablePagination/TablePagination.js index 88dbd75c142c07..3aad5afa263e01 100644 --- a/packages/mui-material/src/TablePagination/TablePagination.js +++ b/packages/mui-material/src/TablePagination/TablePagination.js @@ -6,8 +6,7 @@ import integerPropType from '@mui/utils/integerPropType'; import chainPropTypes from '@mui/utils/chainPropTypes'; import { isHostComponent } from '@mui/base/utils'; import composeClasses from '@mui/utils/composeClasses'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import InputBase from '../InputBase'; import MenuItem from '../MenuItem'; import Select from '../Select'; @@ -17,6 +16,8 @@ import TablePaginationActions from './TablePaginationActions'; import useId from '../utils/useId'; import tablePaginationClasses, { getTablePaginationUtilityClass } from './tablePaginationClasses'; +const useThemeProps = createUseThemeProps('MuiTablePagination'); + const TablePaginationRoot = styled(TableCell, { name: 'MuiTablePagination', slot: 'Root', diff --git a/packages/mui-material/src/TableRow/TableRow.js b/packages/mui-material/src/TableRow/TableRow.js index 40612a6e0a9209..d96f9fce5745d4 100644 --- a/packages/mui-material/src/TableRow/TableRow.js +++ b/packages/mui-material/src/TableRow/TableRow.js @@ -5,10 +5,11 @@ import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import { alpha } from '@mui/system/colorManipulator'; import Tablelvl2Context from '../Table/Tablelvl2Context'; -import useThemeProps from '../styles/useThemeProps'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import tableRowClasses, { getTableRowUtilityClass } from './tableRowClasses'; +const useThemeProps = createUseThemeProps('MuiTableRow'); + const useUtilityClasses = (ownerState) => { const { classes, selected, hover, head, footer } = ownerState; diff --git a/packages/mui-material/src/TableSortLabel/TableSortLabel.js b/packages/mui-material/src/TableSortLabel/TableSortLabel.js index f2e174a41fb901..25d11cb4f40ca9 100644 --- a/packages/mui-material/src/TableSortLabel/TableSortLabel.js +++ b/packages/mui-material/src/TableSortLabel/TableSortLabel.js @@ -5,11 +5,12 @@ import PropTypes from 'prop-types'; import * as React from 'react'; import ButtonBase from '../ButtonBase'; import ArrowDownwardIcon from '../internal/svg-icons/ArrowDownward'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import capitalize from '../utils/capitalize'; import tableSortLabelClasses, { getTableSortLabelUtilityClass } from './tableSortLabelClasses'; +const useThemeProps = createUseThemeProps('MuiTableSortLabel'); + const useUtilityClasses = (ownerState) => { const { classes, direction, active } = ownerState; diff --git a/packages/mui-material/src/Tabs/Tabs.js b/packages/mui-material/src/Tabs/Tabs.js index dfbcd083803bd0..3bafb2efbb4ade 100644 --- a/packages/mui-material/src/Tabs/Tabs.js +++ b/packages/mui-material/src/Tabs/Tabs.js @@ -7,8 +7,7 @@ import refType from '@mui/utils/refType'; import { useSlotProps } from '@mui/base/utils'; import composeClasses from '@mui/utils/composeClasses'; import { useRtl } from '@mui/system/RtlProvider'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import useTheme from '../styles/useTheme'; import debounce from '../utils/debounce'; import { getNormalizedScrollLeft, detectScrollType } from '../utils/scrollLeft'; @@ -20,6 +19,8 @@ import tabsClasses, { getTabsUtilityClass } from './tabsClasses'; import ownerDocument from '../utils/ownerDocument'; import ownerWindow from '../utils/ownerWindow'; +const useThemeProps = createUseThemeProps('MuiTabs'); + const nextItem = (list, item) => { if (list === item) { return list.firstChild; @@ -114,22 +115,30 @@ const TabsRoot = styled('div', { ownerState.vertical && styles.vertical, ]; }, -})(({ ownerState, theme }) => ({ +})(({ theme }) => ({ overflow: 'hidden', minHeight: 48, // Add iOS momentum scrolling for iOS < 13.0 WebkitOverflowScrolling: 'touch', display: 'flex', - ...(ownerState.vertical && { - flexDirection: 'column', - }), - ...(ownerState.scrollButtonsHideMobile && { - [`& .${tabsClasses.scrollButtons}`]: { - [theme.breakpoints.down('sm')]: { - display: 'none', + variants: [ + { + props: ({ ownerState }) => ownerState.vertical, + style: { + flexDirection: 'column', }, }, - }), + { + props: ({ ownerState }) => ownerState.scrollButtonsHideMobile, + style: { + [`& .${tabsClasses.scrollButtons}`]: { + [theme.breakpoints.down('sm')]: { + display: 'none', + }, + }, + }, + }, + ], })); const TabsScroller = styled('div', { @@ -145,31 +154,45 @@ const TabsScroller = styled('div', { ownerState.scrollableY && styles.scrollableY, ]; }, -})(({ ownerState }) => ({ +})({ position: 'relative', display: 'inline-block', flex: '1 1 auto', whiteSpace: 'nowrap', - ...(ownerState.fixed && { - overflowX: 'hidden', - width: '100%', - }), - ...(ownerState.hideScrollbar && { - // Hide dimensionless scrollbar on macOS - scrollbarWidth: 'none', // Firefox - '&::-webkit-scrollbar': { - display: 'none', // Safari + Chrome + variants: [ + { + props: ({ ownerState }) => ownerState.fixed, + style: { + overflowX: 'hidden', + width: '100%', + }, }, - }), - ...(ownerState.scrollableX && { - overflowX: 'auto', - overflowY: 'hidden', - }), - ...(ownerState.scrollableY && { - overflowY: 'auto', - overflowX: 'hidden', - }), -})); + { + props: ({ ownerState }) => ownerState.hideScrollbar, + style: { + // Hide dimensionless scrollbar on macOS + scrollbarWidth: 'none', // Firefox + '&::-webkit-scrollbar': { + display: 'none', // Safari + Chrome + }, + }, + }, + { + props: ({ ownerState }) => ownerState.scrollableX, + style: { + overflowX: 'auto', + overflowY: 'hidden', + }, + }, + { + props: ({ ownerState }) => ownerState.scrollableY, + style: { + overflowY: 'auto', + overflowX: 'hidden', + }, + }, + ], +}); const FlexContainer = styled('div', { name: 'MuiTabs', @@ -182,37 +205,60 @@ const FlexContainer = styled('div', { ownerState.centered && styles.centered, ]; }, -})(({ ownerState }) => ({ +})({ display: 'flex', - ...(ownerState.vertical && { - flexDirection: 'column', - }), - ...(ownerState.centered && { - justifyContent: 'center', - }), -})); + variants: [ + { + props: ({ ownerState }) => ownerState.vertical, + style: { + flexDirection: 'column', + }, + }, + { + props: ({ ownerState }) => ownerState.centered, + style: { + justifyContent: 'center', + }, + }, + ], +}); const TabsIndicator = styled('span', { name: 'MuiTabs', slot: 'Indicator', overridesResolver: (props, styles) => styles.indicator, -})(({ ownerState, theme }) => ({ +})(({ theme }) => ({ position: 'absolute', height: 2, bottom: 0, width: '100%', transition: theme.transitions.create(), - ...(ownerState.indicatorColor === 'primary' && { - backgroundColor: (theme.vars || theme).palette.primary.main, - }), - ...(ownerState.indicatorColor === 'secondary' && { - backgroundColor: (theme.vars || theme).palette.secondary.main, - }), - ...(ownerState.vertical && { - height: '100%', - width: 2, - right: 0, - }), + variants: [ + { + props: { + indicatorColor: 'primary', + }, + style: { + backgroundColor: (theme.vars || theme).palette.primary.main, + }, + }, + { + props: { + indicatorColor: 'secondary', + }, + style: { + backgroundColor: (theme.vars || theme).palette.secondary.main, + }, + }, + { + props: ({ ownerState }) => ownerState.vertical, + style: { + height: '100%', + width: 2, + right: 0, + }, + }, + ], })); const TabsScrollbarSize = styled(ScrollbarSize)({ diff --git a/packages/mui-material/src/TextField/TextField.js b/packages/mui-material/src/TextField/TextField.js index 6e3372513b7aac..244861c33cd277 100644 --- a/packages/mui-material/src/TextField/TextField.js +++ b/packages/mui-material/src/TextField/TextField.js @@ -5,8 +5,7 @@ import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; import useId from '@mui/utils/useId'; import refType from '@mui/utils/refType'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import Input from '../Input'; import FilledInput from '../FilledInput'; import OutlinedInput from '../OutlinedInput'; @@ -16,6 +15,8 @@ import FormHelperText from '../FormHelperText'; import Select from '../Select'; import { getTextFieldUtilityClass } from './textFieldClasses'; +const useThemeProps = createUseThemeProps('MuiTextField'); + const variantComponent = { standard: Input, filled: FilledInput, diff --git a/packages/mui-material/src/Toolbar/Toolbar.js b/packages/mui-material/src/Toolbar/Toolbar.js index 2f9d903e189c05..6a9733d2680580 100644 --- a/packages/mui-material/src/Toolbar/Toolbar.js +++ b/packages/mui-material/src/Toolbar/Toolbar.js @@ -3,10 +3,11 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; import composeClasses from '@mui/utils/composeClasses'; -import useThemeProps from '../styles/useThemeProps'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import { getToolbarUtilityClass } from './toolbarClasses'; +const useThemeProps = createUseThemeProps('MuiToolbar'); + const useUtilityClasses = (ownerState) => { const { classes, disableGutters, variant } = ownerState; @@ -25,44 +26,38 @@ const ToolbarRoot = styled('div', { return [styles.root, !ownerState.disableGutters && styles.gutters, styles[ownerState.variant]]; }, -})( - ({ theme }) => ({ - position: 'relative', - display: 'flex', - alignItems: 'center', - variants: [ - { - props: ({ ownerState }) => !ownerState.disableGutters, - style: { - paddingLeft: theme.spacing(2), - paddingRight: theme.spacing(2), - [theme.breakpoints.up('sm')]: { - paddingLeft: theme.spacing(3), - paddingRight: theme.spacing(3), - }, +})(({ theme }) => ({ + position: 'relative', + display: 'flex', + alignItems: 'center', + variants: [ + { + props: ({ ownerState }) => !ownerState.disableGutters, + style: { + paddingLeft: theme.spacing(2), + paddingRight: theme.spacing(2), + [theme.breakpoints.up('sm')]: { + paddingLeft: theme.spacing(3), + paddingRight: theme.spacing(3), }, }, - { - props: { - variant: 'dense', - }, - style: { - minHeight: 48, - }, + }, + { + props: { + variant: 'dense', }, - ], - }), - ({ theme }) => ({ - variants: [ - { - props: { - variant: 'regular', - }, - style: theme.mixins.toolbar, + style: { + minHeight: 48, + }, + }, + { + props: { + variant: 'regular', }, - ], - }), -); + style: theme.mixins.toolbar, + }, + ], +})); const Toolbar = React.forwardRef(function Toolbar(inProps, ref) { const props = useThemeProps({ props: inProps, name: 'MuiToolbar' }); diff --git a/packages/mui-material/src/Tooltip/Tooltip.js b/packages/mui-material/src/Tooltip/Tooltip.js index dc71ddee0481ff..5bfe05f2d1e25e 100644 --- a/packages/mui-material/src/Tooltip/Tooltip.js +++ b/packages/mui-material/src/Tooltip/Tooltip.js @@ -8,9 +8,8 @@ import { appendOwnerState } from '@mui/base/utils'; import composeClasses from '@mui/utils/composeClasses'; import { alpha } from '@mui/system/colorManipulator'; import { useRtl } from '@mui/system/RtlProvider'; -import styled from '../styles/styled'; +import { styled, createUseThemeProps } from '../zero-styled'; import useTheme from '../styles/useTheme'; -import useThemeProps from '../styles/useThemeProps'; import capitalize from '../utils/capitalize'; import Grow from '../Grow'; import Popper from '../Popper'; @@ -21,6 +20,8 @@ import useIsFocusVisible from '../utils/useIsFocusVisible'; import useControlled from '../utils/useControlled'; import tooltipClasses, { getTooltipUtilityClass } from './tooltipClasses'; +const useThemeProps = createUseThemeProps('MuiTooltip'); + function round(value) { return Math.round(value * 1e5) / 1e5; } @@ -55,57 +56,92 @@ const TooltipPopper = styled(Popper, { !ownerState.open && styles.popperClose, ]; }, -})(({ theme, ownerState, open }) => ({ +})(({ theme }) => ({ zIndex: (theme.vars || theme).zIndex.tooltip, pointerEvents: 'none', - ...(!ownerState.disableInteractive && { - pointerEvents: 'auto', - }), - ...(!open && { - pointerEvents: 'none', - }), - ...(ownerState.arrow && { - [`&[data-popper-placement*="bottom"] .${tooltipClasses.arrow}`]: { - top: 0, - marginTop: '-0.71em', - '&::before': { - transformOrigin: '0 100%', + variants: [ + { + props: ({ ownerState }) => !ownerState.disableInteractive, + style: { + pointerEvents: 'auto', }, }, - [`&[data-popper-placement*="top"] .${tooltipClasses.arrow}`]: { - bottom: 0, - marginBottom: '-0.71em', - '&::before': { - transformOrigin: '100% 0', + { + props: ({ open }) => !open, + style: { + pointerEvents: 'none', }, }, - [`&[data-popper-placement*="right"] .${tooltipClasses.arrow}`]: { - ...(!ownerState.isRtl - ? { - left: 0, - marginLeft: '-0.71em', - } - : { - right: 0, - marginRight: '-0.71em', - }), - height: '1em', - width: '0.71em', - '&::before': { - transformOrigin: '100% 100%', + { + props: ({ ownerState }) => ownerState.arrow, + style: { + [`&[data-popper-placement*="bottom"] .${tooltipClasses.arrow}`]: { + top: 0, + marginTop: '-0.71em', + '&::before': { + transformOrigin: '0 100%', + }, + }, + [`&[data-popper-placement*="top"] .${tooltipClasses.arrow}`]: { + bottom: 0, + marginBottom: '-0.71em', + '&::before': { + transformOrigin: '100% 0', + }, + }, + [`&[data-popper-placement*="right"] .${tooltipClasses.arrow}`]: { + height: '1em', + width: '0.71em', + '&::before': { + transformOrigin: '100% 100%', + }, + }, + [`&[data-popper-placement*="left"] .${tooltipClasses.arrow}`]: { + height: '1em', + width: '0.71em', + '&::before': { + transformOrigin: '0 0', + }, + }, }, }, - [`&[data-popper-placement*="left"] .${tooltipClasses.arrow}`]: { - ...(!ownerState.isRtl - ? { right: 0, marginRight: '-0.71em' } - : { left: 0, marginLeft: '-0.71em' }), - height: '1em', - width: '0.71em', - '&::before': { - transformOrigin: '0 0', + { + props: ({ ownerState }) => ownerState.arrow && !ownerState.isRtl, + style: { + [`&[data-popper-placement*="right"] .${tooltipClasses.arrow}`]: { + left: 0, + marginLeft: '-0.71em', + }, }, }, - }), + { + props: ({ ownerState }) => ownerState.arrow && !!ownerState.isRtl, + style: { + [`&[data-popper-placement*="right"] .${tooltipClasses.arrow}`]: { + right: 0, + marginRight: '-0.71em', + }, + }, + }, + { + props: ({ ownerState }) => ownerState.arrow && !ownerState.isRtl, + style: { + [`&[data-popper-placement*="left"] .${tooltipClasses.arrow}`]: { + right: 0, + marginRight: '-0.71em', + }, + }, + }, + { + props: ({ ownerState }) => ownerState.arrow && !!ownerState.isRtl, + style: { + [`&[data-popper-placement*="left"] .${tooltipClasses.arrow}`]: { + left: 0, + marginLeft: '-0.71em', + }, + }, + }, + ], })); const TooltipTooltip = styled('div', { @@ -121,7 +157,7 @@ const TooltipTooltip = styled('div', { styles[`tooltipPlacement${capitalize(ownerState.placement.split('-')[0])}`], ]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ backgroundColor: theme.vars ? theme.vars.palette.Tooltip.bg : alpha(theme.palette.grey[700], 0.92), @@ -134,62 +170,98 @@ const TooltipTooltip = styled('div', { margin: 2, wordWrap: 'break-word', fontWeight: theme.typography.fontWeightMedium, - ...(ownerState.arrow && { - position: 'relative', - margin: 0, - }), - ...(ownerState.touch && { - padding: '8px 16px', - fontSize: theme.typography.pxToRem(14), - lineHeight: `${round(16 / 14)}em`, - fontWeight: theme.typography.fontWeightRegular, - }), [`.${tooltipClasses.popper}[data-popper-placement*="left"] &`]: { transformOrigin: 'right center', - ...(!ownerState.isRtl - ? { - marginRight: '14px', - ...(ownerState.touch && { - marginRight: '24px', - }), - } - : { - marginLeft: '14px', - ...(ownerState.touch && { - marginLeft: '24px', - }), - }), }, [`.${tooltipClasses.popper}[data-popper-placement*="right"] &`]: { transformOrigin: 'left center', - ...(!ownerState.isRtl - ? { - marginLeft: '14px', - ...(ownerState.touch && { - marginLeft: '24px', - }), - } - : { - marginRight: '14px', - ...(ownerState.touch && { - marginRight: '24px', - }), - }), }, [`.${tooltipClasses.popper}[data-popper-placement*="top"] &`]: { transformOrigin: 'center bottom', marginBottom: '14px', - ...(ownerState.touch && { - marginBottom: '24px', - }), }, [`.${tooltipClasses.popper}[data-popper-placement*="bottom"] &`]: { transformOrigin: 'center top', marginTop: '14px', - ...(ownerState.touch && { - marginTop: '24px', - }), }, + variants: [ + { + props: ({ ownerState }) => ownerState.arrow, + style: { + position: 'relative', + margin: 0, + }, + }, + { + props: ({ ownerState }) => ownerState.touch, + style: { + padding: '8px 16px', + fontSize: theme.typography.pxToRem(14), + lineHeight: `${round(16 / 14)}em`, + fontWeight: theme.typography.fontWeightRegular, + }, + }, + { + props: ({ ownerState }) => !ownerState.isRtl, + style: { + [`.${tooltipClasses.popper}[data-popper-placement*="left"] &`]: { + marginRight: '14px', + }, + [`.${tooltipClasses.popper}[data-popper-placement*="right"] &`]: { + marginLeft: '14px', + }, + }, + }, + { + props: ({ ownerState }) => !ownerState.isRtl && ownerState.touch, + style: { + [`.${tooltipClasses.popper}[data-popper-placement*="left"] &`]: { + marginRight: '24px', + }, + [`.${tooltipClasses.popper}[data-popper-placement*="right"] &`]: { + marginLeft: '24px', + }, + }, + }, + { + props: ({ ownerState }) => !!ownerState.isRtl, + style: { + [`.${tooltipClasses.popper}[data-popper-placement*="left"] &`]: { + marginLeft: '14px', + }, + [`.${tooltipClasses.popper}[data-popper-placement*="right"] &`]: { + marginRight: '14px', + }, + }, + }, + { + props: ({ ownerState }) => !!ownerState.isRtl && ownerState.touch, + style: { + [`.${tooltipClasses.popper}[data-popper-placement*="left"] &`]: { + marginLeft: '24px', + }, + [`.${tooltipClasses.popper}[data-popper-placement*="right"] &`]: { + marginRight: '24px', + }, + }, + }, + { + props: ({ ownerState }) => ownerState.touch, + style: { + [`.${tooltipClasses.popper}[data-popper-placement*="top"] &`]: { + marginBottom: '24px', + }, + }, + }, + { + props: ({ ownerState }) => ownerState.touch, + style: { + [`.${tooltipClasses.popper}[data-popper-placement*="bottom"] &`]: { + marginTop: '24px', + }, + }, + }, + ], })); const TooltipArrow = styled('span', { diff --git a/packages/mui-material/src/Typography/Typography.js b/packages/mui-material/src/Typography/Typography.js index 45c555a0e104fe..2e1420999641d2 100644 --- a/packages/mui-material/src/Typography/Typography.js +++ b/packages/mui-material/src/Typography/Typography.js @@ -4,11 +4,12 @@ import PropTypes from 'prop-types'; import clsx from 'clsx'; import { extendSxProp } from '@mui/system/styleFunctionSx'; import composeClasses from '@mui/utils/composeClasses'; -import styled from '../styles/styled'; -import useThemeProps from '../styles/useThemeProps'; +import { styled, createUseThemeProps } from '../zero-styled'; import capitalize from '../utils/capitalize'; import { getTypographyUtilityClass } from './typographyClasses'; +const useThemeProps = createUseThemeProps('MuiTypography'); + const useUtilityClasses = (ownerState) => { const { align, gutterBottom, noWrap, paragraph, variant, classes } = ownerState; @@ -41,29 +42,61 @@ export const TypographyRoot = styled('span', { ownerState.paragraph && styles.paragraph, ]; }, -})(({ theme, ownerState }) => ({ +})(({ theme }) => ({ margin: 0, - ...(ownerState.variant === 'inherit' && { - // Some elements, like - - ); - } - - return ( -
- - {props.title} - - - {props.description} - -
- ); -} - -const Accordion = styled(MuiAccordion)(({ theme }) => ({ - padding: theme.spacing(2), - transition: theme.transitions.create('box-shadow'), - borderRadius: theme.shape.borderRadius, - '&:hover': { - borderColor: theme.palette.primary[300], - boxShadow: `0px 4px 8px ${alpha(theme.palette.grey[200], 0.6)}`, - }, - '&:not(:last-of-type)': { - marginBottom: theme.spacing(2), - }, - '&::before': { - display: 'none', - }, - '&::after': { - display: 'none', - }, - ...theme.applyDarkStyles({ - '&:hover': { - borderColor: alpha(theme.palette.primary[600], 0.6), - boxShadow: '0px 4px 20px rgba(0, 0, 0, 0.8)', - }, - }), -})); - -const AccordionSummary = styled(MuiAccordionSummary)(({ theme }) => ({ - padding: theme.spacing(2), - margin: theme.spacing(-2), - minHeight: 'auto', - '&.Mui-expanded': { - minHeight: 'auto', - }, - '& .MuiAccordionSummary-content': { - margin: 0, - paddingRight: theme.spacing(2), - '&.Mui-expanded': { - margin: 0, - }, - }, -})); - -const AccordionDetails = styled(MuiAccordionDetail)(({ theme }) => ({ - marginTop: theme.spacing(1), - padding: 0, -})); - -const faqData = [ - { - summary: 'Are there application deadlines?', - detail: 'No. You can still apply if a position is visible on our careers page.', - }, - { - summary: 'Does MUI do whiteboarding during interviews?', - detail: - 'No. We ask applicants to complete challenges that are close to their future day-to-day contributions.', - }, - { - summary: 'Does MUI offer contract job opportunities?', - detail: - 'Yes. People outside of France can be hired as full-time contractors. (Benefits may vary.)', - }, -]; - const openRolesData = [ { title: 'Engineering', @@ -233,99 +109,6 @@ const nextRolesData = [ }, ] as typeof openRolesData; -const companyInfo = [ - { - title: 'About us', - description: 'Meet the team and a little bit of our history.', - routeUrl: ROUTES.about, - }, - { - title: 'Handbook', - description: 'Learn everything about how MUI as a company is run.', - routeUrl: ROUTES.handbook, - }, - { - title: 'Blog', - description: 'Check behind-the-scenes and news about the company.', - routeUrl: ROUTES.blog, - }, -]; - -function renderFAQItem(index: number, defaultExpanded?: boolean) { - const faq = faqData[index]; - return ( - - } - > - - {faq.summary} - - - - - {faq.detail} - - - - ); -} - -function RemoteAwardCard() { - return ( - - - ({ - width: '100%', - height: '100%', - ...theme.applyDarkStyles({ - content: `url(/static/branding/careers/remote-award-dark.png)`, - }), - })} - /> - -
- - Remote Excellence Awards - - - Winners in the first-ever Remote Excellence Awards, in the Small & Mighty category! 🎉 - - - Learn more - -
-
- ); -} - export default function Careers() { return ( @@ -353,100 +136,7 @@ export default function Careers() { - {/* Perks & benefits */} -
- - - - Perks & benefits - - } - description="To help you go above and beyond with us, we provide:" - /> - - {[ - ['100% remote work', 'Our entire company is globally distributed.'], - [ - 'Retreats', - 'We meet up every 8 months for a week of working & having fun together!', - ], - [ - 'Equipment', - 'We provide the hardware of your choice (initial grant of $2,500 USD).', - ], - ['Time off', 'We provide 33 days of paid time off globally.'], - ].map((textArray) => ( - - -
- - {textArray[0]} - - - {textArray[1]} - -
-
- ))} -
-
- - - - {companyInfo.map(({ title, description, routeUrl }) => ( - - - {title} - - - {description} - - - Learn more{' '} - - - - ))} - - -
-
+ {/* Open roles */}
@@ -475,7 +165,7 @@ export default function Careers() { {category.title} {category.roles.map((role) => ( - {category.roles.map((role) => ( - )} - {/* Frequently asked questions */} -
- - Frequently asked questions - - - - {renderFAQItem(0, true)} - {renderFAQItem(1)} - - - {renderFAQItem(2)} - ({ - p: 2, - borderStyle: 'dashed', - borderColor: 'divider', - bgcolor: 'white', - ...theme.applyDarkStyles({ - bgcolor: 'primaryDark.800', - }), - })} - > - - - Got any questions unanswered or need more help? - - - - We're here to help you with any other question you have about our hiring - process. - - - Contact us - - - - -
+ diff --git a/docs/src/components/careers/CareersFaq.tsx b/docs/src/components/careers/CareersFaq.tsx new file mode 100644 index 00000000000000..58d38cf3d002e8 --- /dev/null +++ b/docs/src/components/careers/CareersFaq.tsx @@ -0,0 +1,144 @@ +import * as React from 'react'; +import { styled, alpha } from '@mui/material/styles'; +import Box from '@mui/material/Box'; +import Grid from '@mui/material/Unstable_Grid2'; +import Paper from '@mui/material/Paper'; +import Typography from '@mui/material/Typography'; +import KeyboardArrowRightRounded from '@mui/icons-material/KeyboardArrowRightRounded'; +import KeyboardArrowDownRounded from '@mui/icons-material/KeyboardArrowDownRounded'; +import MuiAccordion from '@mui/material/Accordion'; +import MuiAccordionSummary from '@mui/material/AccordionSummary'; +import MuiAccordionDetail from '@mui/material/AccordionDetails'; +import { Link } from '@mui/docs/Link'; +import Section from 'docs/src/layouts/Section'; + +const Accordion = styled(MuiAccordion)(({ theme }) => ({ + padding: theme.spacing(2), + transition: theme.transitions.create('box-shadow'), + borderRadius: theme.shape.borderRadius, + '&:hover': { + borderColor: theme.palette.primary[300], + boxShadow: `0px 4px 8px ${alpha(theme.palette.grey[200], 0.6)}`, + }, + '&:not(:last-of-type)': { + marginBottom: theme.spacing(2), + }, + '&::before': { + display: 'none', + }, + '&::after': { + display: 'none', + }, + ...theme.applyDarkStyles({ + '&:hover': { + borderColor: alpha(theme.palette.primary[600], 0.6), + boxShadow: '0px 4px 20px rgba(0, 0, 0, 0.8)', + }, + }), +})); + +const AccordionSummary = styled(MuiAccordionSummary)(({ theme }) => ({ + padding: theme.spacing(2), + margin: theme.spacing(-2), + minHeight: 'auto', + '&.Mui-expanded': { + minHeight: 'auto', + }, + '& .MuiAccordionSummary-content': { + margin: 0, + paddingRight: theme.spacing(2), + '&.Mui-expanded': { + margin: 0, + }, + }, +})); + +const AccordionDetails = styled(MuiAccordionDetail)(({ theme }) => ({ + marginTop: theme.spacing(1), + padding: 0, +})); + +const faqData = [ + { + summary: 'Are there application deadlines?', + detail: 'No. You can still apply if a position is visible on our careers page.', + }, + { + summary: 'Does MUI do whiteboarding during interviews?', + detail: + 'No. We ask applicants to complete challenges that are close to their future day-to-day contributions.', + }, + { + summary: 'Does MUI offer contract job opportunities?', + detail: + 'Yes. People outside of France can be hired as full-time contractors. (Benefits may vary.)', + }, +]; + +function renderFAQItem(index: number, defaultExpanded?: boolean) { + const faq = faqData[index]; + return ( + + } + > + + {faq.summary} + + + + + {faq.detail} + + + + ); +} + +export default function CareersFaq() { + return ( +
+ + Frequently asked questions + + + + {renderFAQItem(0, true)} + {renderFAQItem(1)} + + + {renderFAQItem(2)} + ({ + p: 2, + borderStyle: 'dashed', + borderColor: 'divider', + bgcolor: 'white', + ...theme.applyDarkStyles({ + bgcolor: 'primaryDark.800', + }), + })} + > + + + Got any questions unanswered or need more help? + + + + We're here to help you with any other question you have about our hiring process. + + + Contact us + + + + +
+ ); +} diff --git a/docs/src/components/careers/PerksBenefits.tsx b/docs/src/components/careers/PerksBenefits.tsx new file mode 100644 index 00000000000000..8320fee0980a8a --- /dev/null +++ b/docs/src/components/careers/PerksBenefits.tsx @@ -0,0 +1,170 @@ +import * as React from 'react'; +import Box from '@mui/material/Box'; +import Grid from '@mui/material/Unstable_Grid2'; +import Stack from '@mui/material/Stack'; +import Paper from '@mui/material/Paper'; +import Typography from '@mui/material/Typography'; +import KeyboardArrowRightRounded from '@mui/icons-material/KeyboardArrowRightRounded'; +import { Link } from '@mui/docs/Link'; +import IconImage from 'docs/src/components/icon/IconImage'; +import Section from 'docs/src/layouts/Section'; +import SectionHeadline from 'docs/src/components/typography/SectionHeadline'; +import ROUTES from 'docs/src/route'; + +const companyInfo = [ + { + title: 'About us', + description: 'Meet the team and a little bit of our history.', + routeUrl: ROUTES.about, + }, + { + title: 'Handbook', + description: 'Learn everything about how MUI as a company is run.', + routeUrl: ROUTES.handbook, + }, + { + title: 'Blog', + description: 'Check behind-the-scenes and news about the company.', + routeUrl: ROUTES.blog, + }, +]; + +function RemoteAwardCard() { + return ( + + + ({ + width: '100%', + height: '100%', + ...theme.applyDarkStyles({ + content: `url(/static/branding/careers/remote-award-dark.png)`, + }), + })} + /> + +
+ + Remote Excellence Awards + + + Winners in the first-ever Remote Excellence Awards, in the Small & Mighty category! 🎉 + + + Learn more + +
+
+ ); +} + +export default function PerksBenefits() { + return ( +
+ + + + Perks & benefits + + } + description="To help you go above and beyond with us, we provide:" + /> + + {[ + ['100% remote work', 'Our entire company is globally distributed.'], + [ + 'Retreats', + 'We meet up every 8 months for a week of working & having fun together!', + ], + [ + 'Equipment', + 'We provide the hardware of your choice (initial grant of $2,500 USD).', + ], + ['Time off', 'We provide 33 days of paid time off globally.'], + ].map((textArray) => ( + + +
+ + {textArray[0]} + + + {textArray[1]} + +
+
+ ))} +
+
+ + + + {companyInfo.map(({ title, description, routeUrl }) => ( + + + {title} + + + {description} + + + Learn more{' '} + + + + ))} + + +
+
+ ); +} diff --git a/docs/src/components/careers/RoleEntry.tsx b/docs/src/components/careers/RoleEntry.tsx new file mode 100644 index 00000000000000..24777b8bbf6dd9 --- /dev/null +++ b/docs/src/components/careers/RoleEntry.tsx @@ -0,0 +1,58 @@ +import * as React from 'react'; +import Box from '@mui/material/Box'; +import Button from '@mui/material/Button'; +import Typography from '@mui/material/Typography'; +import KeyboardArrowRightRounded from '@mui/icons-material/KeyboardArrowRightRounded'; + +interface RoleProps { + description: string; + title: string; + url?: string; +} + +export default function RoleEntry(props: RoleProps) { + if (props.url) { + return ( + +
+ + {props.title} + + + {props.description} + +
+ +
+ ); + } + + return ( +
+ + {props.title} + + + {props.description} + +
+ ); +} diff --git a/docs/src/modules/components/TopLayoutCareers.js b/docs/src/modules/components/TopLayoutCareers.js index 0c16563b87b4c7..8b22f0950ca308 100644 --- a/docs/src/modules/components/TopLayoutCareers.js +++ b/docs/src/modules/components/TopLayoutCareers.js @@ -1,7 +1,8 @@ import * as React from 'react'; import PropTypes from 'prop-types'; -import { styled } from '@mui/material/styles'; +import { styled, alpha } from '@mui/material/styles'; import Divider from '@mui/material/Divider'; +import KeyboardArrowLeftIcon from '@mui/icons-material/KeyboardArrowLeft'; import Head from 'docs/src/modules/components/Head'; import AppContainer from 'docs/src/modules/components/AppContainer'; import AppFooter from 'docs/src/layouts/AppFooter'; @@ -9,10 +10,19 @@ import AppHeader from 'docs/src/layouts/AppHeader'; import BrandingCssVarsProvider from 'docs/src/BrandingCssVarsProvider'; import MarkdownElement from 'docs/src/modules/components/MarkdownElement'; import { Link } from '@mui/docs/Link'; +import { useTranslate } from 'docs/src/modules/utils/i18n'; -const StyledDiv = styled('div')({ +const StyledDiv = styled('div')(({ theme }) => ({ flex: '1 0 100%', -}); + background: `linear-gradient(180deg, ${(theme.vars || theme).palette.grey[50]} 0%, #FFFFFF 100%)`, + backgroundSize: '100% 500px', + backgroundRepeat: 'no-repeat', + ...theme.applyDarkStyles({ + background: `linear-gradient(180deg, ${alpha(theme.palette.primary[900], 0.15)} 0%, ${(theme.vars || theme).palette.primaryDark[900]} 100%)`, + backgroundSize: '100% 500px', + backgroundRepeat: 'no-repeat', + }), +})); const StyledAppContainer = styled(AppContainer)(({ theme }) => ({ '& .markdownElement': { @@ -25,6 +35,7 @@ const StyledAppContainer = styled(AppContainer)(({ theme }) => ({ export default function TopLayoutCareers(props) { const { docs } = props; const { description, rendered, title } = docs.en; + const t = useTranslate(); return ( @@ -42,10 +53,10 @@ export default function TopLayoutCareers(props) { href="/careers/#open-roles" rel="nofollow" variant="body2" - sx={{ display: 'block', mb: 2 }} + sx={{ display: 'flex', gap: 0.5, alignItems: 'center', mb: 4 }} > - {/* eslint-disable-next-line material-ui/no-hardcoded-labels */} - {'< Back to open roles'} + + {t('backToOpenRoles')} {rendered.map((chunk, index) => { return ; diff --git a/packages/mui-docs/src/translations/translations.json b/packages/mui-docs/src/translations/translations.json index 555c2b6f9306ee..fa24d3122de6ee 100644 --- a/packages/mui-docs/src/translations/translations.json +++ b/packages/mui-docs/src/translations/translations.json @@ -75,6 +75,7 @@ "toggleSettings": "Toggle settings drawer" }, "backToTop": "Scroll back to top", + "backToOpenRoles": "Back to open roles", "blogDescr": "A polished blog page layout. Markdown support is courtesy of markdown-to-jsx.", "blogTitle": "Blog", "bundleSize": "Bundle size", From efba47d9ff7c65b83643447dd3b610d27ec1c4f0 Mon Sep 17 00:00:00 2001 From: Danilo Leal <67129314+danilo-leal@users.noreply.github.com> Date: Tue, 7 May 2024 19:52:29 -0300 Subject: [PATCH 05/25] [docs-infra] Add design and formatting improvements (#42063) --- docs/pages/material-ui/api/accordion.json | 4 +- docs/pages/material-ui/api/alert.json | 4 +- docs/pages/material-ui/api/avatar.json | 2 +- docs/pages/material-ui/api/backdrop.json | 2 +- docs/pages/material-ui/api/badge.json | 4 +- docs/pages/material-ui/api/divider.json | 2 +- .../material-ui/api/form-control-label.json | 2 +- .../material-ui/api/pagination-item.json | 2 +- docs/pages/material-ui/api/slider.json | 4 +- docs/pages/material-ui/api/step-label.json | 6 +- docs/src/modules/components/ApiPage.js | 35 +++++----- .../components/ApiPage/list/ClassesList.tsx | 16 ++--- .../ApiPage/list/ExpandableApiItem.tsx | 9 ++- .../ApiPage/list/PropertiesList.tsx | 30 ++++----- .../ApiPage/sections/SlotsSection.tsx | 2 +- .../components/ApiPage/table/ClassesTable.tsx | 4 +- .../ApiPage/table/PropertiesTable.tsx | 4 +- docs/src/modules/components/DemoToolbar.js | 18 +++-- .../accordion-summary/accordion-summary.json | 2 +- docs/translations/api-docs/alert/alert.json | 24 +++---- .../api-docs/button-group/button-group.json | 34 +++++----- docs/translations/api-docs/button/button.json | 66 +++++++++---------- docs/translations/api-docs/chip/chip.json | 52 +++++++-------- .../loading-button/loading-button.json | 66 +++++++++---------- .../pagination-item/pagination-item.json | 8 +-- .../step-connector/step-connector.json | 4 +- .../toggle-button-group.json | 4 +- .../mui-docs/src/branding/brandingTheme.ts | 3 +- .../mui-material/src/Accordion/Accordion.d.ts | 4 +- .../mui-material/src/Accordion/Accordion.js | 4 +- .../accordionSummaryClasses.ts | 2 +- packages/mui-material/src/Alert/Alert.d.ts | 4 +- packages/mui-material/src/Alert/Alert.js | 4 +- .../mui-material/src/Alert/alertClasses.ts | 24 +++---- packages/mui-material/src/Avatar/Avatar.d.ts | 2 +- packages/mui-material/src/Avatar/Avatar.js | 2 +- .../mui-material/src/Backdrop/Backdrop.d.ts | 2 +- .../mui-material/src/Backdrop/Backdrop.js | 2 +- packages/mui-material/src/Badge/Badge.d.ts | 4 +- packages/mui-material/src/Badge/Badge.js | 4 +- .../mui-material/src/Button/buttonClasses.ts | 66 +++++++++---------- .../src/ButtonGroup/buttonGroupClasses.ts | 34 +++++----- packages/mui-material/src/Chip/chipClasses.ts | 52 +++++++-------- .../mui-material/src/Divider/Divider.d.ts | 2 +- packages/mui-material/src/Divider/Divider.js | 2 +- .../FormControlLabel/FormControlLabel.d.ts | 2 +- .../src/FormControlLabel/FormControlLabel.js | 2 +- .../src/PaginationItem/PaginationItem.d.ts | 2 +- .../src/PaginationItem/PaginationItem.js | 2 +- .../PaginationItem/paginationItemClasses.ts | 8 +-- packages/mui-material/src/Slider/Slider.d.ts | 4 +- packages/mui-material/src/Slider/Slider.js | 4 +- .../src/StepConnector/stepConnectorClasses.ts | 4 +- .../mui-material/src/StepLabel/StepLabel.d.ts | 6 +- .../mui-material/src/StepLabel/StepLabel.js | 6 +- .../toggleButtonGroupClasses.ts | 4 +- 56 files changed, 343 insertions(+), 328 deletions(-) diff --git a/docs/pages/material-ui/api/accordion.json b/docs/pages/material-ui/api/accordion.json index 5a034bc834124a..52e4b0b1b4419a 100644 --- a/docs/pages/material-ui/api/accordion.json +++ b/docs/pages/material-ui/api/accordion.json @@ -32,12 +32,12 @@ "TransitionComponent": { "type": { "name": "elementType" }, "deprecated": true, - "deprecationInfo": "Use slots.transition instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "Use slots.transition instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "TransitionProps": { "type": { "name": "object" }, "deprecated": true, - "deprecationInfo": "Use slotProps.transition instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "Use slotProps.transition instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." } }, "name": "Accordion", diff --git a/docs/pages/material-ui/api/alert.json b/docs/pages/material-ui/api/alert.json index 24de72ee0b8fdf..88c2ad11cea99d 100644 --- a/docs/pages/material-ui/api/alert.json +++ b/docs/pages/material-ui/api/alert.json @@ -17,13 +17,13 @@ }, "default": "{}", "deprecated": true, - "deprecationInfo": "use the slots prop instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "use the slots prop instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "componentsProps": { "type": { "name": "shape", "description": "{ closeButton?: object, closeIcon?: object }" }, "default": "{}", "deprecated": true, - "deprecationInfo": "use the slotProps prop instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "use the slotProps prop instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "icon": { "type": { "name": "node" } }, "iconMapping": { diff --git a/docs/pages/material-ui/api/avatar.json b/docs/pages/material-ui/api/avatar.json index 09b18906855c9d..b73b810f760854 100644 --- a/docs/pages/material-ui/api/avatar.json +++ b/docs/pages/material-ui/api/avatar.json @@ -7,7 +7,7 @@ "imgProps": { "type": { "name": "object" }, "deprecated": true, - "deprecationInfo": "Use slotProps.img instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "Use slotProps.img instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "sizes": { "type": { "name": "string" } }, "slotProps": { diff --git a/docs/pages/material-ui/api/backdrop.json b/docs/pages/material-ui/api/backdrop.json index 8f868d0823d1ac..c201d45e204f74 100644 --- a/docs/pages/material-ui/api/backdrop.json +++ b/docs/pages/material-ui/api/backdrop.json @@ -38,7 +38,7 @@ "type": { "name": "elementType" }, "default": "Fade", "deprecated": true, - "deprecationInfo": "Use slots.transition instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "Use slots.transition instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "transitionDuration": { "type": { diff --git a/docs/pages/material-ui/api/badge.json b/docs/pages/material-ui/api/badge.json index 9f3612604ff53f..7960f6d0d44359 100644 --- a/docs/pages/material-ui/api/badge.json +++ b/docs/pages/material-ui/api/badge.json @@ -22,7 +22,7 @@ "type": { "name": "shape", "description": "{ Badge?: elementType, Root?: elementType }" }, "default": "{}", "deprecated": true, - "deprecationInfo": "use the slots prop instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "use the slots prop instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "componentsProps": { "type": { @@ -31,7 +31,7 @@ }, "default": "{}", "deprecated": true, - "deprecationInfo": "use the slotProps prop instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "use the slotProps prop instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "invisible": { "type": { "name": "bool" }, "default": "false" }, "max": { "type": { "name": "number" }, "default": "99" }, diff --git a/docs/pages/material-ui/api/divider.json b/docs/pages/material-ui/api/divider.json index bebce36c2de480..336d4daffab1d6 100644 --- a/docs/pages/material-ui/api/divider.json +++ b/docs/pages/material-ui/api/divider.json @@ -9,7 +9,7 @@ "type": { "name": "bool" }, "default": "false", "deprecated": true, - "deprecationInfo": "Use <Divider sx={{ opacity: 0.6 }} /> (or any opacity or color) instead. How to migrate" + "deprecationInfo": "Use <Divider sx={{ opacity: 0.6 }} /> (or any opacity or color) instead. See Migrating from deprecated APIs for more details." }, "orientation": { "type": { "name": "enum", "description": "'horizontal'
| 'vertical'" }, diff --git a/docs/pages/material-ui/api/form-control-label.json b/docs/pages/material-ui/api/form-control-label.json index 8cc2cfe4790b17..8569400cdbe4e3 100644 --- a/docs/pages/material-ui/api/form-control-label.json +++ b/docs/pages/material-ui/api/form-control-label.json @@ -7,7 +7,7 @@ "type": { "name": "shape", "description": "{ typography?: object }" }, "default": "{}", "deprecated": true, - "deprecationInfo": "use the slotProps prop instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "use the slotProps prop instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "disabled": { "type": { "name": "bool" } }, "disableTypography": { "type": { "name": "bool" } }, diff --git a/docs/pages/material-ui/api/pagination-item.json b/docs/pages/material-ui/api/pagination-item.json index cbdec459121eab..a987676039329c 100644 --- a/docs/pages/material-ui/api/pagination-item.json +++ b/docs/pages/material-ui/api/pagination-item.json @@ -16,7 +16,7 @@ }, "default": "{}", "deprecated": true, - "deprecationInfo": "use the slots prop instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "use the slots prop instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "disabled": { "type": { "name": "bool" }, "default": "false" }, "page": { "type": { "name": "node" } }, diff --git a/docs/pages/material-ui/api/slider.json b/docs/pages/material-ui/api/slider.json index 8ff7c7438a13e0..560de0dc01bc53 100644 --- a/docs/pages/material-ui/api/slider.json +++ b/docs/pages/material-ui/api/slider.json @@ -18,7 +18,7 @@ }, "default": "{}", "deprecated": true, - "deprecationInfo": "use the slots prop instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "use the slots prop instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "componentsProps": { "type": { @@ -27,7 +27,7 @@ }, "default": "{}", "deprecated": true, - "deprecationInfo": "use the slotProps prop instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "use the slotProps prop instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "defaultValue": { "type": { "name": "union", "description": "Array<number>
| number" } diff --git a/docs/pages/material-ui/api/step-label.json b/docs/pages/material-ui/api/step-label.json index 07a2c71835e352..1c3fde1ffaedc4 100644 --- a/docs/pages/material-ui/api/step-label.json +++ b/docs/pages/material-ui/api/step-label.json @@ -6,7 +6,7 @@ "type": { "name": "shape", "description": "{ label?: object }" }, "default": "{}", "deprecated": true, - "deprecationInfo": "use the slotProps prop instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "use the slotProps prop instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "error": { "type": { "name": "bool" }, "default": "false" }, "icon": { "type": { "name": "node" } }, @@ -25,12 +25,12 @@ "StepIconComponent": { "type": { "name": "elementType" }, "deprecated": true, - "deprecationInfo": "Use slots.stepIcon instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "Use slots.stepIcon instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "StepIconProps": { "type": { "name": "object" }, "deprecated": true, - "deprecationInfo": "Use slotProps.stepIcon instead. This prop will be removed in v7. How to migrate." + "deprecationInfo": "Use slotProps.stepIcon instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." }, "sx": { "type": { diff --git a/docs/src/modules/components/ApiPage.js b/docs/src/modules/components/ApiPage.js index 85c92c07909a3b..7d2e491b1d2a73 100644 --- a/docs/src/modules/components/ApiPage.js +++ b/docs/src/modules/components/ApiPage.js @@ -3,7 +3,6 @@ import * as React from 'react'; import PropTypes from 'prop-types'; import { exactProp } from '@mui/utils'; import Typography from '@mui/material/Typography'; -import Divider from '@mui/material/Divider'; import AdGuest from 'docs/src/modules/components/AdGuest'; import Alert from '@mui/material/Alert'; import VerifiedRoundedIcon from '@mui/icons-material/VerifiedRounded'; @@ -216,21 +215,29 @@ export default function ApiPage(props) { fontSize: theme.typography.pxToRem(16), backgroundColor: (theme.vars || theme).palette.success[50], borderColor: (theme.vars || theme).palette.success[100], - '& * p': { - mb: 1, - }, - '& * a': { - fontWeight: theme.typography.fontWeightMedium, - color: (theme.vars || theme).palette.success[900], - textDecorationColor: alpha(theme.palette.success[600], 0.3), + '& .MuiAlert-message': { + '& * p': { + color: (theme.vars || theme).palette.text.primary, + mb: 1, + }, + '& * a': { + fontWeight: theme.typography.fontWeightMedium, + color: (theme.vars || theme).palette.success[900], + textDecorationColor: alpha(theme.palette.success[600], 0.3), + }, }, ...theme.applyDarkStyles({ - '& * a': { - color: (theme.vars || theme).palette.success[100], - textDecorationColor: alpha(theme.palette.success[100], 0.3), + backgroundColor: alpha(theme.palette.success[700], 0.12), + borderColor: alpha(theme.palette.success[400], 0.1), + '& .MuiAlert-message': { + ul: { + pl: 3, + }, + '& * a': { + color: (theme.vars || theme).palette.success[100], + textDecorationColor: alpha(theme.palette.success[100], 0.3), + }, }, - backgroundColor: alpha(theme.palette.success[700], 0.15), - borderColor: alpha(theme.palette.success[600], 0.3), }), }), ]} @@ -303,7 +310,6 @@ export default function ApiPage(props) { .replace(/{{name}}/, pageContent.name), }} /> - )} {pageContent.themeDefaultProps && ( @@ -316,7 +322,6 @@ export default function ApiPage(props) { .replace(/{{defaultPropsLink}}/, defaultPropsLink), }} /> - )} {description &&

} + {displayClassKeys && !isGlobal && ( +

+ {'Rule name'}: + {key} +

+ )} {isDeprecated && ( - {t('api-docs.deprecated')} + {t('api-docs.deprecated')} {deprecationInfo && ( - {' - '} + {'-'} )} - {displayClassKeys && !isGlobal && ( -

- {'Rule name'}: - {key} -

- )} ); })} diff --git a/docs/src/modules/components/ApiPage/list/ExpandableApiItem.tsx b/docs/src/modules/components/ApiPage/list/ExpandableApiItem.tsx index bf8d7ec1d833a0..0a2598466f3f69 100644 --- a/docs/src/modules/components/ApiPage/list/ExpandableApiItem.tsx +++ b/docs/src/modules/components/ApiPage/list/ExpandableApiItem.tsx @@ -56,13 +56,12 @@ const Root = styled('div')<{ ownerState: { type?: DescriptionType } }>( p: { marginBottom: theme.spacing(1.5) }, }, '& .MuiApi-item-note': { - fontSize: 12, marginLeft: 2, - letterSpacing: '1px', - textTransform: 'uppercase', color: `var(--muidocs-palette-success-800, ${lightTheme.palette.success[800]})`, - fontWeight: theme.typography.fontWeightBold, - lineHeight: '24px', + fontSize: theme.typography.pxToRem(11), + fontWeight: theme.typography.fontWeightSemiBold, + letterSpacing: '.1rem', + textTransform: 'uppercase', }, '& .MuiApi-expend-button': {}, '& hr': { diff --git a/docs/src/modules/components/ApiPage/list/PropertiesList.tsx b/docs/src/modules/components/ApiPage/list/PropertiesList.tsx index 4b941670f15ae3..63a7f49c933ea5 100644 --- a/docs/src/modules/components/ApiPage/list/PropertiesList.tsx +++ b/docs/src/modules/components/ApiPage/list/PropertiesList.tsx @@ -235,21 +235,6 @@ export default function PropertiesList(props: PropertiesListProps) { }} /> ))} - {isDeprecated && ( - - {t('api-docs.deprecated')} - {deprecationInfo && ( - - {' - '} - - - )} - - )}
{typeName && (

@@ -305,6 +290,21 @@ export default function PropertiesList(props: PropertiesListProps) {

)} + {isDeprecated && ( + + {t('api-docs.deprecated')} + {deprecationInfo && ( + + {'-'} + + + )} + + )} ); })} diff --git a/docs/src/modules/components/ApiPage/sections/SlotsSection.tsx b/docs/src/modules/components/ApiPage/sections/SlotsSection.tsx index 9f586c04e9c839..e743ce01134990 100644 --- a/docs/src/modules/components/ApiPage/sections/SlotsSection.tsx +++ b/docs/src/modules/components/ApiPage/sections/SlotsSection.tsx @@ -61,8 +61,8 @@ export default function SlotsSection(props: SlotsSectionProps) { href={`#${titleHash}`} tabIndex={-1} > + {t(title)} - {t(title)} diff --git a/docs/src/modules/components/ApiPage/table/ClassesTable.tsx b/docs/src/modules/components/ApiPage/table/ClassesTable.tsx index b0b687e10ad9a0..1a33afb9ca4bb0 100644 --- a/docs/src/modules/components/ApiPage/table/ClassesTable.tsx +++ b/docs/src/modules/components/ApiPage/table/ClassesTable.tsx @@ -95,10 +95,10 @@ export default function ClassesTable(props: ClassesTableProps) { /> {isDeprecated && ( - {t('api-docs.deprecated')} + {t('api-docs.deprecated')} {deprecationInfo && ( - {' - '} + {'-'} - {t('api-docs.deprecated')} + {t('api-docs.deprecated')} {deprecationInfo && ( - {' - '} + {'-'} [ { [theme.breakpoints.up('sm')]: { - justifyContent: 'space-between', - alignItems: 'center', display: 'flex', + alignItems: 'center', + justifyContent: 'space-between', + }, + '& .MuiIconButton-root': { + '&:hover': { + backgroundColor: (theme.vars || theme).palette.grey[100], + }, }, '& .MuiSvgIcon-root': { fontSize: 16, - color: (theme.vars || theme).palette.grey[800], + color: (theme.vars || theme).palette.grey[900], }, }, theme.applyDarkStyles({ + '& .MuiIconButton-root': { + '&:hover': { + backgroundColor: (theme.vars || theme).palette.primaryDark[700], + }, + }, '& .MuiSvgIcon-root': { color: (theme.vars || theme).palette.grey[400], }, @@ -80,7 +90,7 @@ const ToggleButtonGroup = styled(MDToggleButtonGroup)(({ theme }) => [ const Button = styled(MDButton)(({ theme }) => ({ height: 26, - padding: '6px 8px 8px 8px', + padding: '7px 8px 8px 8px', // 7px for optical alignment flexShrink: 0, borderRadius: 999, border: '1px solid', diff --git a/docs/translations/api-docs/accordion-summary/accordion-summary.json b/docs/translations/api-docs/accordion-summary/accordion-summary.json index dc485e86994fbe..6bc32d3cdd01c5 100644 --- a/docs/translations/api-docs/accordion-summary/accordion-summary.json +++ b/docs/translations/api-docs/accordion-summary/accordion-summary.json @@ -20,7 +20,7 @@ "description": "Styles applied to {{nodeName}} unless {{conditions}}.", "nodeName": "the children wrapper element", "conditions": "disableGutters={true}", - "deprecationInfo": "Combine the .MuiAccordionSummary-gutters and .MuiAccordionSummary-content classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiAccordionSummary-gutters and .MuiAccordionSummary-content classes instead. See Migrating from deprecated APIs for more details." }, "disabled": { "description": "State class applied to {{nodeName}} if {{conditions}}.", diff --git a/docs/translations/api-docs/alert/alert.json b/docs/translations/api-docs/alert/alert.json index 981d938a884279..20a4c661c332db 100644 --- a/docs/translations/api-docs/alert/alert.json +++ b/docs/translations/api-docs/alert/alert.json @@ -72,23 +72,23 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"filled\" and color=\"error\"", - "deprecationInfo": "Combine the .MuiAlert-filled and .MuiAlert-colorError classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiAlert-filled and .MuiAlert-colorError classes instead. See Migrating from deprecated APIs for more details." }, "filledInfo": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"filled\" and color=\"info\"", - "deprecationInfo": "Combine the .MuiAlert-filled and .MuiAlert-colorInfo classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiAlert-filled and .MuiAlert-colorInfo classes instead. See Migrating from deprecated APIs for more details." }, "filledSuccess": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"filled\" and color=\"success\"", - "deprecationInfo": "Combine the .MuiAlert-filled and .MuiAlert-colorSuccess classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiAlert-filled and .MuiAlert-colorSuccess classes instead. See Migrating from deprecated APIs for more details." }, "filledWarning": { "description": "Styles applied to the root element if variant="filled" and color="warning"", - "deprecationInfo": "Combine the .MuiAlert-filled and .MuiAlert-colorWarning classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiAlert-filled and .MuiAlert-colorWarning classes instead. See Migrating from deprecated APIs for more details." }, "icon": { "description": "Styles applied to {{nodeName}}.", @@ -107,25 +107,25 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"error\"", - "deprecationInfo": "Combine the .MuiAlert-outlined and .MuiAlert-colorError classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiAlert-outlined and .MuiAlert-colorError classes instead. See Migrating from deprecated APIs for more details." }, "outlinedInfo": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"info\"", - "deprecationInfo": "Combine the .MuiAlert-outlined and .MuiAlert-colorInfo classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiAlert-outlined and .MuiAlert-colorInfo classes instead. See Migrating from deprecated APIs for more details." }, "outlinedSuccess": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"success\"", - "deprecationInfo": "Combine the .MuiAlert-outlined and .MuiAlert-colorSuccess classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiAlert-outlined and .MuiAlert-colorSuccess classes instead. See Migrating from deprecated APIs for more details." }, "outlinedWarning": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"warning\"", - "deprecationInfo": "Combine the .MuiAlert-outlined and .MuiAlert-colorWarning classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiAlert-outlined and .MuiAlert-colorWarning classes instead. See Migrating from deprecated APIs for more details." }, "root": { "description": "Styles applied to the root element." }, "standard": { @@ -137,25 +137,25 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"standard\" and color=\"error\"", - "deprecationInfo": "Combine the .MuiAlert-standard and .MuiAlert-colorError classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiAlert-standard and .MuiAlert-colorError classes instead. See Migrating from deprecated APIs for more details." }, "standardInfo": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"standard\" and color=\"info\"", - "deprecationInfo": "Combine the .MuiAlert-standard and .MuiAlert-colorInfo classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiAlert-standard and .MuiAlert-colorInfo classes instead. See Migrating from deprecated APIs for more details." }, "standardSuccess": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"standard\" and color=\"success\"", - "deprecationInfo": "Combine the .MuiAlert-standard and .MuiAlert-colorSuccess classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiAlert-standard and .MuiAlert-colorSuccess classes instead. See Migrating from deprecated APIs for more details." }, "standardWarning": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"standard\" and color=\"warning\"", - "deprecationInfo": "Combine the .MuiAlert-standard and .MuiAlert-colorWarning classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiAlert-standard and .MuiAlert-colorWarning classes instead. See Migrating from deprecated APIs for more details." } }, "slotDescriptions": { diff --git a/docs/translations/api-docs/button-group/button-group.json b/docs/translations/api-docs/button-group/button-group.json index f3d4332d76ef50..57a357c6a9fee5 100644 --- a/docs/translations/api-docs/button-group/button-group.json +++ b/docs/translations/api-docs/button-group/button-group.json @@ -65,103 +65,103 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"contained\"", - "deprecationInfo": "Combine the .MuiButtonGroup-contained and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-contained and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedContainedHorizontal": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"contained\" and orientation=\"horizontal\"", - "deprecationInfo": "Combine the .MuiButtonGroup-contained , .MuiButtonGroup-horizontal and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-contained , .MuiButtonGroup-horizontal and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedContainedPrimary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"contained\" and color=\"primary\"", - "deprecationInfo": "Combine the .MuiButtonGroup-contained , .MuiButtonGroup-colorPrimary and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-contained , .MuiButtonGroup-colorPrimary and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedContainedSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"contained\" and color=\"secondary\"", - "deprecationInfo": "Combine the .MuiButtonGroup-contained , .MuiButtonGroup-colorSecondary and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-contained , .MuiButtonGroup-colorSecondary and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedContainedVertical": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"contained\" and orientation=\"vertical\"", - "deprecationInfo": "Combine the .MuiButtonGroup-contained , .MuiButtonGroup-vertical and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-contained , .MuiButtonGroup-vertical and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedHorizontal": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "orientation=\"horizontal\"", - "deprecationInfo": "Combine the .MuiButtonGroup-horizontal and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-horizontal and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedOutlined": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"outlined\"", - "deprecationInfo": "Combine the .MuiButtonGroup-outlined and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-outlined and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedOutlinedHorizontal": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"outlined\" and orientation=\"horizontal\"", - "deprecationInfo": "Combine the .MuiButtonGroup-outlined , .MuiButtonGroup-horizontal and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-outlined , .MuiButtonGroup-horizontal and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedOutlinedPrimary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"outlined\" and color=\"primary\"", - "deprecationInfo": "Combine the .MuiButtonGroup-outlined , .MuiButtonGroup-colorPrimary and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-outlined , .MuiButtonGroup-colorPrimary and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedOutlinedSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"outlined\" and color=\"secondary\"", - "deprecationInfo": "Combine the .MuiButtonGroup-outlined , .MuiButtonGroup-colorSecondary and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-outlined , .MuiButtonGroup-colorSecondary and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedOutlinedVertical": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"outlined\" and orientation=\"vertical\"", - "deprecationInfo": "Combine the .MuiButtonGroup-outlined , .MuiButtonGroup-vertical and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-outlined , .MuiButtonGroup-vertical and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedText": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"text\"", - "deprecationInfo": "Combine the .MuiButtonGroup-text and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-text and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedTextHorizontal": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"text\" and orientation=\"horizontal\"", - "deprecationInfo": "Combine the .MuiButtonGroup-text , .MuiButtonGroup-horizontal and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-text , .MuiButtonGroup-horizontal and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedTextPrimary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"text\" and color=\"primary\"", - "deprecationInfo": "Combine the .MuiButtonGroup-text , .MuiButtonGroup-colorPrimary and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-text , .MuiButtonGroup-colorPrimary and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedTextSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"text\" and color=\"secondary\"", - "deprecationInfo": "Combine the .MuiButtonGroup-text , .MuiButtonGroup-colorSecondary and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-text , .MuiButtonGroup-colorSecondary and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedTextVertical": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "variant=\"text\" and orientation=\"vertical\"", - "deprecationInfo": "Combine the .MuiButtonGroup-text , .MuiButtonGroup-vertical and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-text , .MuiButtonGroup-vertical and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedVertical": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "orientation=\"vertical\"", - "deprecationInfo": "Combine the .MuiButtonGroup-vertical and .MuiButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButtonGroup-vertical and .MuiButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "horizontal": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", diff --git a/docs/translations/api-docs/button/button.json b/docs/translations/api-docs/button/button.json index a5d8a0a8da8375..1e9426f65ac3de 100644 --- a/docs/translations/api-docs/button/button.json +++ b/docs/translations/api-docs/button/button.json @@ -78,61 +78,61 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"error\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorError classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorError classes instead. See Migrating from deprecated APIs for more details." }, "containedInfo": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"info\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorInfo classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorInfo classes instead. See Migrating from deprecated APIs for more details." }, "containedInherit": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"inherit\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorInherit classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorInherit classes instead. See Migrating from deprecated APIs for more details." }, "containedPrimary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"primary\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "containedSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"secondary\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "containedSizeLarge": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"large\" and variant=\"contained\"", - "deprecationInfo": "Combine the .MuiButton-sizeLarge and .MuiButton-contained classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeLarge and .MuiButton-contained classes instead. See Migrating from deprecated APIs for more details." }, "containedSizeMedium": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"medium\" and variant=\"contained\"", - "deprecationInfo": "Combine the .MuiButton-sizeMedium and .MuiButton-contained classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeMedium and .MuiButton-contained classes instead. See Migrating from deprecated APIs for more details." }, "containedSizeSmall": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"small\" and variant=\"contained\"", - "deprecationInfo": "Combine the .MuiButton-sizeSmall and .MuiButton-contained classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeSmall and .MuiButton-contained classes instead. See Migrating from deprecated APIs for more details." }, "containedSuccess": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"success\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorSuccess classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorSuccess classes instead. See Migrating from deprecated APIs for more details." }, "containedWarning": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"warning\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorWarning classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorWarning classes instead. See Migrating from deprecated APIs for more details." }, "disabled": { "description": "State class applied to {{nodeName}} if {{conditions}}.", @@ -164,19 +164,19 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the icon element", "conditions": "supplied and size=\"large\"", - "deprecationInfo": "Combine the .MuiButton-icon and .MuiButtonSizeLarge classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-icon and .MuiButtonSizeLarge classes instead. See Migrating from deprecated APIs for more details." }, "iconSizeMedium": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the icon element", "conditions": "supplied and size=\"medium\"", - "deprecationInfo": "Combine the .MuiButton-icon and .MuiButtonSizeMedium classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-icon and .MuiButtonSizeMedium classes instead. See Migrating from deprecated APIs for more details." }, "iconSizeSmall": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the icon element", "conditions": "supplied and size=\"small\"", - "deprecationInfo": "Combine the .MuiButton-icon and .MuiButtonSizeSmall classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-icon and .MuiButtonSizeSmall classes instead. See Migrating from deprecated APIs for more details." }, "outlined": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", @@ -187,61 +187,61 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"error\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorError classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorError classes instead. See Migrating from deprecated APIs for more details." }, "outlinedInfo": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"info\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorInfo classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorInfo classes instead. See Migrating from deprecated APIs for more details." }, "outlinedInherit": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"inherit\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorInherit classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorInherit classes instead. See Migrating from deprecated APIs for more details." }, "outlinedPrimary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"primary\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "outlinedSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"secondary\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "outlinedSizeLarge": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"large\" and variant=\"outlined\"", - "deprecationInfo": "Combine the .MuiButton-sizeLarge and .MuiButton-outlined classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeLarge and .MuiButton-outlined classes instead. See Migrating from deprecated APIs for more details." }, "outlinedSizeMedium": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"medium\" and variant=\"outlined\"", - "deprecationInfo": "Combine the .MuiButton-sizeMedium and .MuiButton-outlined classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeMedium and .MuiButton-outlined classes instead. See Migrating from deprecated APIs for more details." }, "outlinedSizeSmall": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"small\" and variant=\"outlined\"", - "deprecationInfo": "Combine the .MuiButton-sizeSmall and .MuiButton-outlined classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeSmall and .MuiButton-outlined classes instead. See Migrating from deprecated APIs for more details." }, "outlinedSuccess": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"success\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorSuccess classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorSuccess classes instead. See Migrating from deprecated APIs for more details." }, "outlinedWarning": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"warning\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorWarning classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorWarning classes instead. See Migrating from deprecated APIs for more details." }, "root": { "description": "Styles applied to the root element." }, "sizeLarge": { @@ -273,61 +273,61 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"error\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorError classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorError classes instead. See Migrating from deprecated APIs for more details." }, "textInfo": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"info\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorInfo classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorInfo classes instead. See Migrating from deprecated APIs for more details." }, "textInherit": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"inherit\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorInherit classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorInherit classes instead. See Migrating from deprecated APIs for more details." }, "textPrimary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"primary\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "textSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"secondary\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "textSizeLarge": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"large\" and variant=\"text\"", - "deprecationInfo": "Combine the .MuiButton-sizeLarge and .MuiButton-text classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeLarge and .MuiButton-text classes instead. See Migrating from deprecated APIs for more details." }, "textSizeMedium": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"medium\" and variant=\"text\"", - "deprecationInfo": "Combine the .MuiButton-sizeMedium and .MuiButton-text classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeMedium and .MuiButton-text classes instead. See Migrating from deprecated APIs for more details." }, "textSizeSmall": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"small\" and variant=\"text\"", - "deprecationInfo": "Combine the .MuiButton-sizeSmall and .MuiButton-text classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeSmall and .MuiButton-text classes instead. See Migrating from deprecated APIs for more details." }, "textSuccess": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"success\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorSuccess classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorSuccess classes instead. See Migrating from deprecated APIs for more details." }, "textWarning": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"warning\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorWarning classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorWarning classes instead. See Migrating from deprecated APIs for more details." } } } diff --git a/docs/translations/api-docs/chip/chip.json b/docs/translations/api-docs/chip/chip.json index 719f2b5e502068..cf72b832d2881b 100644 --- a/docs/translations/api-docs/chip/chip.json +++ b/docs/translations/api-docs/chip/chip.json @@ -42,25 +42,25 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the avatar element", "conditions": "color=\"primary\"", - "deprecationInfo": "Combine the .MuiChip-avatar and .MuiChip-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-avatar and .MuiChip-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "avatarColorSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the avatar element", "conditions": "color=\"secondary\"", - "deprecationInfo": "Combine the .MuiChip-avatar and .MuiChip-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-avatar and .MuiChip-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "avatarMedium": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the avatar element", "conditions": "size=\"medium\"", - "deprecationInfo": "Combine the .MuiChip-avatar and .MuiChip-sizeMedium classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-avatar and .MuiChip-sizeMedium classes instead. See Migrating from deprecated APIs for more details." }, "avatarSmall": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the avatar element", "conditions": "size=\"small\"", - "deprecationInfo": "Combine the .MuiChip-avatar and .MuiChip-sizeSmall classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-avatar and .MuiChip-sizeSmall classes instead. See Migrating from deprecated APIs for more details." }, "clickable": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", @@ -71,13 +71,13 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "onClick and color=\"primary\" is defined or clickable={true}", - "deprecationInfo": "Combine the .MuiChip-clickable and .MuiChip-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-clickable and .MuiChip-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "clickableColorSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "onClick and color=\"secondary\" is defined or clickable={true}", - "deprecationInfo": "Combine the .MuiChip-clickable and .MuiChip-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-clickable and .MuiChip-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "colorDefault": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", @@ -123,13 +123,13 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "onDelete and color=\"primary\" is defined", - "deprecationInfo": "Combine the .MuiChip-deletable and .MuiChip-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-deletable and .MuiChip-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "deletableColorSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "onDelete and color=\"secondary\" is defined", - "deprecationInfo": "Combine the .MuiChip-deletable and .MuiChip-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-deletable and .MuiChip-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "deleteIcon": { "description": "Styles applied to {{nodeName}}.", @@ -139,49 +139,49 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the deleteIcon element", "conditions": "color=\"primary\"", - "deprecationInfo": "Combine the .MuiChip-deleteIcon and .MuiChip-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-deleteIcon and .MuiChip-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "deleteIconColorSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the deleteIcon element", "conditions": "color=\"secondary\"", - "deprecationInfo": "Combine the .MuiChip-deleteIcon and .MuiChip-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-deleteIcon and .MuiChip-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "deleteIconFilledColorPrimary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the deleteIcon element", "conditions": "color=\"primary\" and variant=\"filled\"", - "deprecationInfo": "Combine the .MuiChip-deleteIcon , .MuiChip-filled and .MuiChip-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-deleteIcon , .MuiChip-filled and .MuiChip-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "deleteIconFilledColorSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the deleteIcon element", "conditions": "color=\"secondary\" and variant=\"filled\"", - "deprecationInfo": "Combine the .MuiChip-deleteIcon , .MuiChip-filled and .MuiChip-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-deleteIcon , .MuiChip-filled and .MuiChip-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "deleteIconMedium": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the deleteIcon element", "conditions": "size=\"medium\"", - "deprecationInfo": "Combine the .MuiChip-deleteIcon and .MuiChip-sizeMedium classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-deleteIcon and .MuiChip-sizeMedium classes instead. See Migrating from deprecated APIs for more details." }, "deleteIconOutlinedColorPrimary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the deleteIcon element", "conditions": "color=\"primary\" and variant=\"outlined\"", - "deprecationInfo": "Combine the .MuiChip-deleteIcon , .MuiChip-outlined and .MuiChip-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-deleteIcon , .MuiChip-outlined and .MuiChip-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "deleteIconOutlinedColorSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the deleteIcon element", "conditions": "color=\"secondary\" and variant=\"outlined\"", - "deprecationInfo": "Combine the .MuiChip-deleteIcon , .MuiChip-outlined and .MuiChip-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-deleteIcon , .MuiChip-outlined and .MuiChip-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "deleteIconSmall": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the deleteIcon element", "conditions": "size=\"small\"", - "deprecationInfo": "Combine the .MuiChip-deleteIcon and .MuiChip-sizeSmall classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-deleteIcon and .MuiChip-sizeSmall classes instead. See Migrating from deprecated APIs for more details." }, "disabled": { "description": "State class applied to {{nodeName}} if {{conditions}}.", @@ -197,13 +197,13 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"filled\" and color=\"primary\"", - "deprecationInfo": "Combine the .MuiChip-filled and .MuiChip-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-filled and .MuiChip-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "filledSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"filled\" and color=\"secondary\"", - "deprecationInfo": "Combine the .MuiChip-filled and .MuiChip-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-filled and .MuiChip-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "focusVisible": { "description": "State class applied to {{nodeName}} if {{conditions}}.", @@ -215,25 +215,25 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the icon element", "conditions": "color=\"primary\"", - "deprecationInfo": "Combine the .MuiChip-icon and .MuiChip-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-icon and .MuiChip-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "iconColorSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the icon element", "conditions": "color=\"secondary\"", - "deprecationInfo": "Combine the .MuiChip-icon and .MuiChip-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-icon and .MuiChip-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "iconMedium": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the icon element", "conditions": "size=\"medium\"", - "deprecationInfo": "Combine the .MuiChip-icon and .MuiChip-sizeMedium classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-icon and .MuiChip-sizeMedium classes instead. See Migrating from deprecated APIs for more details." }, "iconSmall": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the icon element", "conditions": "size=\"small\"", - "deprecationInfo": "Combine the .MuiChip-icon and .MuiChip-sizeSmall classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-icon and .MuiChip-sizeSmall classes instead. See Migrating from deprecated APIs for more details." }, "label": { "description": "Styles applied to {{nodeName}}.", @@ -243,13 +243,13 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the label span element", "conditions": "size=\"medium\"", - "deprecationInfo": "Combine the .MuiChip-label and .MuiChip-sizeMedium classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-label and .MuiChip-sizeMedium classes instead. See Migrating from deprecated APIs for more details." }, "labelSmall": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the label span element", "conditions": "size=\"small\"", - "deprecationInfo": "Combine the .MuiChip-label and .MuiChip-sizeSmall classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-label and .MuiChip-sizeSmall classes instead. See Migrating from deprecated APIs for more details." }, "outlined": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", @@ -260,13 +260,13 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"primary\"", - "deprecationInfo": "Combine the .MuiChip-outlined and .MuiChip-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-outlined and .MuiChip-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "outlinedSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"secondary\"", - "deprecationInfo": "Combine the .MuiChip-outlined and .MuiChip-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiChip-outlined and .MuiChip-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "root": { "description": "Styles applied to the root element." }, "sizeMedium": { diff --git a/docs/translations/api-docs/loading-button/loading-button.json b/docs/translations/api-docs/loading-button/loading-button.json index dfa09c1686c1b8..893accc5f50691 100644 --- a/docs/translations/api-docs/loading-button/loading-button.json +++ b/docs/translations/api-docs/loading-button/loading-button.json @@ -63,61 +63,61 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"error\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorError classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorError classes instead. See Migrating from deprecated APIs for more details." }, "containedInfo": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"info\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorInfo classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorInfo classes instead. See Migrating from deprecated APIs for more details." }, "containedInherit": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"inherit\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorInherit classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorInherit classes instead. See Migrating from deprecated APIs for more details." }, "containedPrimary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"primary\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "containedSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"secondary\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "containedSizeLarge": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"large\" and variant=\"contained\"", - "deprecationInfo": "Combine the .MuiButton-sizeLarge and .MuiButton-contained classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeLarge and .MuiButton-contained classes instead. See Migrating from deprecated APIs for more details." }, "containedSizeMedium": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"medium\" and variant=\"contained\"", - "deprecationInfo": "Combine the .MuiButton-sizeMedium and .MuiButton-contained classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeMedium and .MuiButton-contained classes instead. See Migrating from deprecated APIs for more details." }, "containedSizeSmall": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"small\" and variant=\"contained\"", - "deprecationInfo": "Combine the .MuiButton-sizeSmall and .MuiButton-contained classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeSmall and .MuiButton-contained classes instead. See Migrating from deprecated APIs for more details." }, "containedSuccess": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"success\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorSuccess classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorSuccess classes instead. See Migrating from deprecated APIs for more details." }, "containedWarning": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"contained\" and color=\"warning\"", - "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorWarning classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-contained and .MuiButton-colorWarning classes instead. See Migrating from deprecated APIs for more details." }, "disabled": { "description": "State class applied to {{nodeName}} if {{conditions}}.", @@ -154,19 +154,19 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the icon element", "conditions": "supplied and size=\"large\"", - "deprecationInfo": "Combine the .MuiButton-icon and .MuiButtonSizeLarge classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-icon and .MuiButtonSizeLarge classes instead. See Migrating from deprecated APIs for more details." }, "iconSizeMedium": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the icon element", "conditions": "supplied and size=\"medium\"", - "deprecationInfo": "Combine the .MuiButton-icon and .MuiButtonSizeMedium classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-icon and .MuiButtonSizeMedium classes instead. See Migrating from deprecated APIs for more details." }, "iconSizeSmall": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the icon element", "conditions": "supplied and size=\"small\"", - "deprecationInfo": "Combine the .MuiButton-icon and .MuiButtonSizeSmall classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-icon and .MuiButtonSizeSmall classes instead. See Migrating from deprecated APIs for more details." }, "loading": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", @@ -201,61 +201,61 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"error\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorError classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorError classes instead. See Migrating from deprecated APIs for more details." }, "outlinedInfo": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"info\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorInfo classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorInfo classes instead. See Migrating from deprecated APIs for more details." }, "outlinedInherit": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"inherit\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorInherit classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorInherit classes instead. See Migrating from deprecated APIs for more details." }, "outlinedPrimary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"primary\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "outlinedSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"secondary\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "outlinedSizeLarge": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"large\" and variant=\"outlined\"", - "deprecationInfo": "Combine the .MuiButton-sizeLarge and .MuiButton-outlined classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeLarge and .MuiButton-outlined classes instead. See Migrating from deprecated APIs for more details." }, "outlinedSizeMedium": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"medium\" and variant=\"outlined\"", - "deprecationInfo": "Combine the .MuiButton-sizeMedium and .MuiButton-outlined classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeMedium and .MuiButton-outlined classes instead. See Migrating from deprecated APIs for more details." }, "outlinedSizeSmall": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"small\" and variant=\"outlined\"", - "deprecationInfo": "Combine the .MuiButton-sizeSmall and .MuiButton-outlined classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeSmall and .MuiButton-outlined classes instead. See Migrating from deprecated APIs for more details." }, "outlinedSuccess": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"success\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorSuccess classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorSuccess classes instead. See Migrating from deprecated APIs for more details." }, "outlinedWarning": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"warning\"", - "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorWarning classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-outlined and .MuiButton-colorWarning classes instead. See Migrating from deprecated APIs for more details." }, "root": { "description": "Styles applied to the root element." }, "sizeLarge": { @@ -292,61 +292,61 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"error\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorError classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorError classes instead. See Migrating from deprecated APIs for more details." }, "textInfo": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"info\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorInfo classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorInfo classes instead. See Migrating from deprecated APIs for more details." }, "textInherit": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"inherit\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorInherit classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorInherit classes instead. See Migrating from deprecated APIs for more details." }, "textPrimary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"primary\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorPrimary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "textSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"secondary\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorSecondary classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "textSizeLarge": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"large\" and variant=\"text\"", - "deprecationInfo": "Combine the .MuiButton-sizeLarge and .MuiButton-text classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeLarge and .MuiButton-text classes instead. See Migrating from deprecated APIs for more details." }, "textSizeMedium": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"medium\" and variant=\"text\"", - "deprecationInfo": "Combine the .MuiButton-sizeMedium and .MuiButton-text classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeMedium and .MuiButton-text classes instead. See Migrating from deprecated APIs for more details." }, "textSizeSmall": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "size=\"small\" and variant=\"text\"", - "deprecationInfo": "Combine the .MuiButton-sizeSmall and .MuiButton-text classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-sizeSmall and .MuiButton-text classes instead. See Migrating from deprecated APIs for more details." }, "textSuccess": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"success\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorSuccess classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorSuccess classes instead. See Migrating from deprecated APIs for more details." }, "textWarning": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"warning\"", - "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorWarning classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiButton-text and .MuiButton-colorWarning classes instead. See Migrating from deprecated APIs for more details." } } } diff --git a/docs/translations/api-docs/pagination-item/pagination-item.json b/docs/translations/api-docs/pagination-item/pagination-item.json index 1dd3b9dbcba2f4..3c12c9b5e28704 100644 --- a/docs/translations/api-docs/pagination-item/pagination-item.json +++ b/docs/translations/api-docs/pagination-item/pagination-item.json @@ -65,13 +65,13 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"primary\"", - "deprecationInfo": "Combine the .MuiPaginationItem-outlined and .MuiPaginationItem-colorPrimary classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiPaginationItem-outlined and .MuiPaginationItem-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "outlinedSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"outlined\" and color=\"secondary\"", - "deprecationInfo": "Combine the .MuiPaginationItem-outlined and .MuiPaginationItem-colorSecondary classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiPaginationItem-outlined and .MuiPaginationItem-colorSecondary classes instead. See Migrating from deprecated APIs for more details." }, "page": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", @@ -113,13 +113,13 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"primary\"", - "deprecationInfo": "Combine the .MuiPaginationItem-text and .MuiPaginationItem-colorPrimary classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiPaginationItem-text and .MuiPaginationItem-colorPrimary classes instead. See Migrating from deprecated APIs for more details." }, "textSecondary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the root element", "conditions": "variant=\"text\" and color=\"secondary\"", - "deprecationInfo": "Combine the .MuiPaginationItem-text and .MuiPaginationItem-colorSecondary classes instead. How to migrate." + "deprecationInfo": "Combine the .MuiPaginationItem-text and .MuiPaginationItem-colorSecondary classes instead. See Migrating from deprecated APIs for more details." } }, "slotDescriptions": { "first": "", "last": "", "next": "", "previous": "" } diff --git a/docs/translations/api-docs/step-connector/step-connector.json b/docs/translations/api-docs/step-connector/step-connector.json index 650f2fd5e5c8dd..a42c2eae8845e9 100644 --- a/docs/translations/api-docs/step-connector/step-connector.json +++ b/docs/translations/api-docs/step-connector/step-connector.json @@ -37,13 +37,13 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the line element", "conditions": "orientation=\"horizontal\"", - "deprecationInfo": "Combine the .MuiStepConnector-horizontal and .MuiStepConnector-line classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiStepConnector-horizontal and .MuiStepConnector-line classes instead. See Migrating from deprecated APIs for more details." }, "lineVertical": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the line element", "conditions": "orientation=\"vertical\"", - "deprecationInfo": "Combine the .MuiStepConnector-vertical and .MuiStepConnector-line classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiStepConnector-vertical and .MuiStepConnector-line classes instead. See Migrating from deprecated APIs for more details." }, "root": { "description": "Styles applied to the root element." }, "vertical": { diff --git a/docs/translations/api-docs/toggle-button-group/toggle-button-group.json b/docs/translations/api-docs/toggle-button-group/toggle-button-group.json index a507c96bf9f224..6d2b4be5ff4d0a 100644 --- a/docs/translations/api-docs/toggle-button-group/toggle-button-group.json +++ b/docs/translations/api-docs/toggle-button-group/toggle-button-group.json @@ -51,13 +51,13 @@ "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "orientation=\"horizontal\"", - "deprecationInfo": "Combine the .MuiToggleButtonGroup-horizontal and .MuiToggleButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiToggleButtonGroup-horizontal and .MuiToggleButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "groupedVertical": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the children", "conditions": "orientation=\"vertical\"", - "deprecationInfo": "Combine the .MuiToggleButtonGroup-vertical and .MuiToggleButtonGroup-grouped classes instead. How to migrate" + "deprecationInfo": "Combine the .MuiToggleButtonGroup-vertical and .MuiToggleButtonGroup-grouped classes instead. See Migrating from deprecated APIs for more details." }, "horizontal": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", diff --git a/packages/mui-docs/src/branding/brandingTheme.ts b/packages/mui-docs/src/branding/brandingTheme.ts index 69340337808133..dec1d21b4986a0 100644 --- a/packages/mui-docs/src/branding/brandingTheme.ts +++ b/packages/mui-docs/src/branding/brandingTheme.ts @@ -778,7 +778,8 @@ export function getThemedComponents(): ThemeOptions { fontSize: theme.typography.pxToRem(14), fontWeight: 500, '&:hover, &:focus': { - backgroundColor: (theme.vars || theme).palette.grey[50], + backgroundColor: (theme.vars || theme).palette.grey[100], + color: (theme.vars || theme).palette.text.primary, }, '&:focus-visible': { outline: 'none', diff --git a/packages/mui-material/src/Accordion/Accordion.d.ts b/packages/mui-material/src/Accordion/Accordion.d.ts index 090cc1518f5b64..5102ada787aacf 100644 --- a/packages/mui-material/src/Accordion/Accordion.d.ts +++ b/packages/mui-material/src/Accordion/Accordion.d.ts @@ -79,7 +79,7 @@ export type AccordionTypeMap< /** * The component used for the transition. * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component. - * @deprecated Use `slots.transition` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Use `slots.transition` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ TransitionComponent?: React.JSXElementConstructor< TransitionProps & { children?: React.ReactElement } @@ -87,7 +87,7 @@ export type AccordionTypeMap< /** * Props applied to the transition element. * By default, the element is based on this [`Transition`](https://reactcommunity.org/react-transition-group/transition/) component. - * @deprecated Use `slotProps.transition` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Use `slotProps.transition` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ TransitionProps?: TransitionProps; } & AccordionSlotsAndSlotProps; diff --git a/packages/mui-material/src/Accordion/Accordion.js b/packages/mui-material/src/Accordion/Accordion.js index 4fcaf33da96b29..dfff92e9a797e7 100644 --- a/packages/mui-material/src/Accordion/Accordion.js +++ b/packages/mui-material/src/Accordion/Accordion.js @@ -300,13 +300,13 @@ Accordion.propTypes /* remove-proptypes */ = { /** * The component used for the transition. * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component. - * @deprecated Use `slots.transition` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Use `slots.transition` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ TransitionComponent: PropTypes.elementType, /** * Props applied to the transition element. * By default, the element is based on this [`Transition`](https://reactcommunity.org/react-transition-group/transition/) component. - * @deprecated Use `slotProps.transition` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Use `slotProps.transition` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ TransitionProps: PropTypes.object, }; diff --git a/packages/mui-material/src/AccordionSummary/accordionSummaryClasses.ts b/packages/mui-material/src/AccordionSummary/accordionSummaryClasses.ts index 82a010cb6c03de..6024fea608902e 100644 --- a/packages/mui-material/src/AccordionSummary/accordionSummaryClasses.ts +++ b/packages/mui-material/src/AccordionSummary/accordionSummaryClasses.ts @@ -14,7 +14,7 @@ export interface AccordionSummaryClasses { gutters: string; /** * Styles applied to the children wrapper element unless `disableGutters={true}`. - * @deprecated Combine the [.MuiAccordionSummary-gutters](/material-ui/api/accordion-summary/#AccordionSummary-classes-gutters) and [.MuiAccordionSummary-content](/material-ui/api/accordion-summary/#AccordionSummary-classes-content) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Combine the [.MuiAccordionSummary-gutters](/material-ui/api/accordion-summary/#AccordionSummary-classes-gutters) and [.MuiAccordionSummary-content](/material-ui/api/accordion-summary/#AccordionSummary-classes-content) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ contentGutters: string; /** Styles applied to the children wrapper element. */ diff --git a/packages/mui-material/src/Alert/Alert.d.ts b/packages/mui-material/src/Alert/Alert.d.ts index a267dec3c89f9d..6d3fdefb36501c 100644 --- a/packages/mui-material/src/Alert/Alert.d.ts +++ b/packages/mui-material/src/Alert/Alert.d.ts @@ -58,7 +58,7 @@ export interface AlertProps extends StandardProps, AlertS /** * The components used for each slot inside. * - * @deprecated use the `slots` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slots` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. * * @default {} */ @@ -70,7 +70,7 @@ export interface AlertProps extends StandardProps, AlertS * The extra props for the slot components. * You can override the existing props or add new ones. * - * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. * * @default {} */ diff --git a/packages/mui-material/src/Alert/Alert.js b/packages/mui-material/src/Alert/Alert.js index c908118889da52..00af054fe6b24a 100644 --- a/packages/mui-material/src/Alert/Alert.js +++ b/packages/mui-material/src/Alert/Alert.js @@ -291,7 +291,7 @@ Alert.propTypes /* remove-proptypes */ = { /** * The components used for each slot inside. * - * @deprecated use the `slots` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slots` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. * * @default {} */ @@ -303,7 +303,7 @@ Alert.propTypes /* remove-proptypes */ = { * The extra props for the slot components. * You can override the existing props or add new ones. * - * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. * * @default {} */ diff --git a/packages/mui-material/src/Alert/alertClasses.ts b/packages/mui-material/src/Alert/alertClasses.ts index e9777b969b9607..e96ca1ef97861a 100644 --- a/packages/mui-material/src/Alert/alertClasses.ts +++ b/packages/mui-material/src/Alert/alertClasses.ts @@ -21,73 +21,73 @@ export interface AlertClasses { /** Styles applied to the root element if `variant="standard"` and `color="success"`. * @deprecated Combine the [.MuiAlert-standard](/material-ui/api/alert/#alert-classes-standard) * and [.MuiAlert-colorSuccess](/material-ui/api/alert/#alert-classes-colorSuccess) classes instead. - * [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ standardSuccess: string; /** Styles applied to the root element if `variant="standard"` and `color="info"`. * @deprecated Combine the [.MuiAlert-standard](/material-ui/api/alert/#alert-classes-standard) * and [.MuiAlert-colorInfo](/material-ui/api/alert/#alert-classes-colorInfo) classes instead. - * [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ standardInfo: string; /** Styles applied to the root element if `variant="standard"` and `color="warning"`. * @deprecated Combine the [.MuiAlert-standard](/material-ui/api/alert/#alert-classes-standard) * and [.MuiAlert-colorWarning](/material-ui/api/alert/#alert-classes-colorWarning) classes instead. - * [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ standardWarning: string; /** Styles applied to the root element if `variant="standard"` and `color="error"`. * @deprecated Combine the [.MuiAlert-standard](/material-ui/api/alert/#alert-classes-standard) * and [.MuiAlert-colorError](/material-ui/api/alert/#alert-classes-colorError) classes instead. - * [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ standardError: string; /** Styles applied to the root element if `variant="outlined"` and `color="success"`. * @deprecated Combine the [.MuiAlert-outlined](/material-ui/api/alert/#alert-classes-outlined) * and [.MuiAlert-colorSuccess](/material-ui/api/alert/#alert-classes-colorSuccess) classes instead. - * [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedSuccess: string; /** Styles applied to the root element if `variant="outlined"` and `color="info"`. * @deprecated Combine the [.MuiAlert-outlined](/material-ui/api/alert/#alert-classes-outlined) * and [.MuiAlert-colorInfo](/material-ui/api/alert/#alert-classes-colorInfo) classes instead. - * [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedInfo: string; /** Styles applied to the root element if `variant="outlined"` and `color="warning"`. * @deprecated Combine the [.MuiAlert-outlined](/material-ui/api/alert/#alert-classes-outlined) * and [.MuiAlert-colorWarning](/material-ui/api/alert/#alert-classes-colorWarning) classes instead. - * [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedWarning: string; /** Styles applied to the root element if `variant="outlined"` and `color="error"`. * @deprecated Combine the [.MuiAlert-outlined](/material-ui/api/alert/#alert-classes-outlined) * and [.MuiAlert-colorError](/material-ui/api/alert/#alert-classes-colorError) classes instead. - * [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedError: string; /** Styles applied to the root element if `variant="filled"` and `color="success"`. * @deprecated Combine the [.MuiAlert-filled](/material-ui/api/alert/#alert-classes-filled) * and [.MuiAlert-colorSuccess](/material-ui/api/alert/#alert-classes-colorSuccess) classes instead. - * [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ filledSuccess: string; /** Styles applied to the root element if `variant="filled"` and `color="info"`. * @deprecated Combine the [.MuiAlert-filled](/material-ui/api/alert/#alert-classes-filled) * and [.MuiAlert-colorInfo](/material-ui/api/alert/#alert-classes-colorInfo) classes instead. - * [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ filledInfo: string; /** Styles applied to the root element if `variant="filled"` and `color="warning"` * @deprecated Combine the [.MuiAlert-filled](/material-ui/api/alert/#alert-classes-filled) * and [.MuiAlert-colorWarning](/material-ui/api/alert/#alert-classes-colorWarning) classes instead. - * [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ filledWarning: string; /** Styles applied to the root element if `variant="filled"` and `color="error"`. * @deprecated Combine the [.MuiAlert-filled](/material-ui/api/alert/#alert-classes-filled) * and [.MuiAlert-colorError](/material-ui/api/alert/#alert-classes-colorError) classes instead. - * [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ filledError: string; /** Styles applied to the icon wrapper element. */ diff --git a/packages/mui-material/src/Avatar/Avatar.d.ts b/packages/mui-material/src/Avatar/Avatar.d.ts index 24bed78bf4928b..f42c37daec3c92 100644 --- a/packages/mui-material/src/Avatar/Avatar.d.ts +++ b/packages/mui-material/src/Avatar/Avatar.d.ts @@ -46,7 +46,7 @@ export interface AvatarOwnProps { /** * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img#attributes) applied to the `img` element if the component is used to display an image. * It can be used to listen for the loading error event. - * @deprecated Use `slotProps.img` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Use `slotProps.img` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ imgProps?: React.ImgHTMLAttributes & { sx?: SxProps; diff --git a/packages/mui-material/src/Avatar/Avatar.js b/packages/mui-material/src/Avatar/Avatar.js index 051e9d0c7339fc..dcc82a4d146c91 100644 --- a/packages/mui-material/src/Avatar/Avatar.js +++ b/packages/mui-material/src/Avatar/Avatar.js @@ -242,7 +242,7 @@ Avatar.propTypes /* remove-proptypes */ = { /** * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img#attributes) applied to the `img` element if the component is used to display an image. * It can be used to listen for the loading error event. - * @deprecated Use `slotProps.img` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Use `slotProps.img` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ imgProps: PropTypes.object, /** diff --git a/packages/mui-material/src/Backdrop/Backdrop.d.ts b/packages/mui-material/src/Backdrop/Backdrop.d.ts index 41380fe5e6532b..610b0ec4e9eddc 100644 --- a/packages/mui-material/src/Backdrop/Backdrop.d.ts +++ b/packages/mui-material/src/Backdrop/Backdrop.d.ts @@ -99,7 +99,7 @@ export interface BackdropOwnProps * The component used for the transition. * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component. * @default Fade - * @deprecated Use `slots.transition` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Use `slots.transition` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ TransitionComponent?: React.JSXElementConstructor< TransitionProps & { diff --git a/packages/mui-material/src/Backdrop/Backdrop.js b/packages/mui-material/src/Backdrop/Backdrop.js index 6d667d72f8aa0b..fff194c3e036ef 100644 --- a/packages/mui-material/src/Backdrop/Backdrop.js +++ b/packages/mui-material/src/Backdrop/Backdrop.js @@ -192,7 +192,7 @@ Backdrop.propTypes /* remove-proptypes */ = { * The component used for the transition. * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component. * @default Fade - * @deprecated Use `slots.transition` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Use `slots.transition` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ TransitionComponent: PropTypes.elementType, /** diff --git a/packages/mui-material/src/Badge/Badge.d.ts b/packages/mui-material/src/Badge/Badge.d.ts index af36329aab4029..08b1ca8342bb43 100644 --- a/packages/mui-material/src/Badge/Badge.d.ts +++ b/packages/mui-material/src/Badge/Badge.d.ts @@ -72,7 +72,7 @@ export interface BadgeOwnProps { * The extra props for the slot components. * You can override the existing props or add new ones. * - * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. * * @default {} */ @@ -80,7 +80,7 @@ export interface BadgeOwnProps { /** * The components used for each slot inside. * - * @deprecated use the `slots` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slots` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. * * @default {} */ diff --git a/packages/mui-material/src/Badge/Badge.js b/packages/mui-material/src/Badge/Badge.js index 04dbe38d85d041..2b0e68da5f6001 100644 --- a/packages/mui-material/src/Badge/Badge.js +++ b/packages/mui-material/src/Badge/Badge.js @@ -398,7 +398,7 @@ Badge.propTypes /* remove-proptypes */ = { /** * The components used for each slot inside. * - * @deprecated use the `slots` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slots` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. * * @default {} */ @@ -410,7 +410,7 @@ Badge.propTypes /* remove-proptypes */ = { * The extra props for the slot components. * You can override the existing props or add new ones. * - * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. * * @default {} */ diff --git a/packages/mui-material/src/Button/buttonClasses.ts b/packages/mui-material/src/Button/buttonClasses.ts index d6f50aae215752..e6abe7643e4736 100644 --- a/packages/mui-material/src/Button/buttonClasses.ts +++ b/packages/mui-material/src/Button/buttonClasses.ts @@ -7,91 +7,91 @@ export interface ButtonClasses { /** Styles applied to the root element if `variant="text"`. */ text: string; /** Styles applied to the root element if `variant="text"` and `color="inherit"`. - * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorInherit](/material-ui/api/button/#button-classes-colorInherit) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorInherit](/material-ui/api/button/#button-classes-colorInherit) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ textInherit: string; /** Styles applied to the root element if `variant="text"` and `color="primary"`. - * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorPrimary](/material-ui/api/button/#button-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorPrimary](/material-ui/api/button/#button-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ textPrimary: string; /** Styles applied to the root element if `variant="text"` and `color="secondary"`. - * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorSecondary](/material-ui/api/button/#button-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorSecondary](/material-ui/api/button/#button-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ textSecondary: string; /** Styles applied to the root element if `variant="text"` and `color="success"`. - * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorSuccess](/material-ui/api/button/#button-classes-colorSuccess) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorSuccess](/material-ui/api/button/#button-classes-colorSuccess) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ textSuccess: string; /** Styles applied to the root element if `variant="text"` and `color="error"`. - * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorError](/material-ui/api/button/#button-classes-colorError) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorError](/material-ui/api/button/#button-classes-colorError) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ textError: string; /** Styles applied to the root element if `variant="text"` and `color="info"`. - * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorInfo](/material-ui/api/button/#button-classes-colorInfo) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorInfo](/material-ui/api/button/#button-classes-colorInfo) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ textInfo: string; /** Styles applied to the root element if `variant="text"` and `color="warning"`. - * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorWarning](/material-ui/api/button/#button-classes-colorWarning) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-text](/material-ui/api/button/#button-classes-text) and [.MuiButton-colorWarning](/material-ui/api/button/#button-classes-colorWarning) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ textWarning: string; /** Styles applied to the root element if `variant="outlined"`. */ outlined: string; /** Styles applied to the root element if `variant="outlined"` and `color="inherit"`. - * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorInherit](/material-ui/api/button/#button-classes-colorInherit) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorInherit](/material-ui/api/button/#button-classes-colorInherit) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedInherit: string; /** Styles applied to the root element if `variant="outlined"` and `color="primary"`. - * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorPrimary](/material-ui/api/button/#button-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorPrimary](/material-ui/api/button/#button-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedPrimary: string; /** Styles applied to the root element if `variant="outlined"` and `color="secondary"`. - * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorSecondary](/material-ui/api/button/#button-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorSecondary](/material-ui/api/button/#button-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedSecondary: string; /** Styles applied to the root element if `variant="outlined"` and `color="success"`. - * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorSuccess](/material-ui/api/button/#button-classes-colorSuccess) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorSuccess](/material-ui/api/button/#button-classes-colorSuccess) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedSuccess: string; /** Styles applied to the root element if `variant="outlined"` and `color="error"`. - * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorError](/material-ui/api/button/#button-classes-colorError) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorError](/material-ui/api/button/#button-classes-colorError) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedError: string; /** Styles applied to the root element if `variant="outlined"` and `color="info"`. - * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorInfo](/material-ui/api/button/#button-classes-colorInfo) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorInfo](/material-ui/api/button/#button-classes-colorInfo) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedInfo: string; /** Styles applied to the root element if `variant="outlined"` and `color="warning"`. - * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorWarning](/material-ui/api/button/#button-classes-colorWarning) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) and [.MuiButton-colorWarning](/material-ui/api/button/#button-classes-colorWarning) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedWarning: string; /** Styles applied to the root element if `variant="contained"`. */ contained: string; /** Styles applied to the root element if `variant="contained"` and `color="inherit"`. - * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorInherit](/material-ui/api/button/#button-classes-colorInherit) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorInherit](/material-ui/api/button/#button-classes-colorInherit) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ containedInherit: string; /** Styles applied to the root element if `variant="contained"` and `color="primary"`. - * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorPrimary](/material-ui/api/button/#button-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorPrimary](/material-ui/api/button/#button-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ containedPrimary: string; /** Styles applied to the root element if `variant="contained"` and `color="secondary"`. - * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorSecondary](/material-ui/api/button/#button-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorSecondary](/material-ui/api/button/#button-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ containedSecondary: string; /** Styles applied to the root element if `variant="contained"` and `color="success"`. - * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorSuccess](/material-ui/api/button/#button-classes-colorSuccess) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorSuccess](/material-ui/api/button/#button-classes-colorSuccess) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ containedSuccess: string; /** Styles applied to the root element if `variant="contained"` and `color="info"`. - * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorInfo](/material-ui/api/button/#button-classes-colorInfo) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorInfo](/material-ui/api/button/#button-classes-colorInfo) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ containedInfo: string; /** Styles applied to the root element if `variant="contained"` and `color="error"`. - * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorError](/material-ui/api/button/#button-classes-colorError) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorError](/material-ui/api/button/#button-classes-colorError) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ containedError: string; /** Styles applied to the root element if `variant="contained"` and `color="warning"`. - * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorWarning](/material-ui/api/button/#button-classes-colorWarning) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) and [.MuiButton-colorWarning](/material-ui/api/button/#button-classes-colorWarning) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ containedWarning: string; /** Styles applied to the root element if `disableElevation={true}`. */ @@ -103,39 +103,39 @@ export interface ButtonClasses { /** Styles applied to the root element if `color="inherit"`. */ colorInherit: string; /** Styles applied to the root element if `size="small"` and `variant="text"`. - * @deprecated Combine the [.MuiButton-sizeSmall](/material-ui/api/button/#button-classes-sizeSmall) and [.MuiButton-text](/material-ui/api/button/#button-classes-text) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-sizeSmall](/material-ui/api/button/#button-classes-sizeSmall) and [.MuiButton-text](/material-ui/api/button/#button-classes-text) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ textSizeSmall: string; /** Styles applied to the root element if `size="medium"` and `variant="text"`. - * @deprecated Combine the [.MuiButton-sizeMedium](/material-ui/api/button/#button-classes-sizeMedium) and [.MuiButton-text](/material-ui/api/button/#button-classes-text) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-sizeMedium](/material-ui/api/button/#button-classes-sizeMedium) and [.MuiButton-text](/material-ui/api/button/#button-classes-text) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ textSizeMedium: string; /** Styles applied to the root element if `size="large"` and `variant="text"`. - * @deprecated Combine the [.MuiButton-sizeLarge](/material-ui/api/button/#button-classes-sizeLarge) and [.MuiButton-text](/material-ui/api/button/#button-classes-text) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-sizeLarge](/material-ui/api/button/#button-classes-sizeLarge) and [.MuiButton-text](/material-ui/api/button/#button-classes-text) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ textSizeLarge: string; /** Styles applied to the root element if `size="small"` and `variant="outlined"`. - * @deprecated Combine the [.MuiButton-sizeSmall](/material-ui/api/button/#button-classes-sizeSmall) and [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-sizeSmall](/material-ui/api/button/#button-classes-sizeSmall) and [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedSizeSmall: string; /** Styles applied to the root element if `size="medium"` and `variant="outlined"`. - * @deprecated Combine the [.MuiButton-sizeMedium](/material-ui/api/button/#button-classes-sizeMedium) and [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-sizeMedium](/material-ui/api/button/#button-classes-sizeMedium) and [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedSizeMedium: string; /** Styles applied to the root element if `size="large"` and `variant="outlined"`. - * @deprecated Combine the [.MuiButton-sizeLarge](/material-ui/api/button/#button-classes-sizeLarge) and [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-sizeLarge](/material-ui/api/button/#button-classes-sizeLarge) and [.MuiButton-outlined](/material-ui/api/button/#button-classes-outlined) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedSizeLarge: string; /** Styles applied to the root element if `size="small"` and `variant="contained"`. - * @deprecated Combine the [.MuiButton-sizeSmall](/material-ui/api/button/#button-classes-sizeSmall) and [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-sizeSmall](/material-ui/api/button/#button-classes-sizeSmall) and [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ containedSizeSmall: string; /** Styles applied to the root element if `size="medium"` and `variant="contained"`. - * @deprecated Combine the [.MuiButton-sizeMedium](/material-ui/api/button/#button-classes-sizeMedium) and [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-sizeMedium](/material-ui/api/button/#button-classes-sizeMedium) and [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ containedSizeMedium: string; /** Styles applied to the root element if `size="large"` and `variant="contained"`. - * @deprecated Combine the [.MuiButton-sizeLarge](/material-ui/api/button/#button-classes-sizeLarge) and [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-sizeLarge](/material-ui/api/button/#button-classes-sizeLarge) and [.MuiButton-contained](/material-ui/api/button/#button-classes-contained) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ containedSizeLarge: string; /** Styles applied to the root element if `size="small"`. */ @@ -153,15 +153,15 @@ export interface ButtonClasses { /** Styles applied to the endIcon element if supplied. */ endIcon: string; /** Styles applied to the icon element if supplied and `size="small"`. - * @deprecated Combine the [.MuiButton-icon](/material-ui/api/button/#button-classes-icon) and [.MuiButtonSizeSmall](/material-ui/api/button/#button-classes-sizeSmall) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-icon](/material-ui/api/button/#button-classes-icon) and [.MuiButtonSizeSmall](/material-ui/api/button/#button-classes-sizeSmall) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ iconSizeSmall: string; /** Styles applied to the icon element if supplied and `size="medium"`. - * @deprecated Combine the [.MuiButton-icon](/material-ui/api/button/#button-classes-icon) and [.MuiButtonSizeMedium](/material-ui/api/button/#button-classes-sizeMedium) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-icon](/material-ui/api/button/#button-classes-icon) and [.MuiButtonSizeMedium](/material-ui/api/button/#button-classes-sizeMedium) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ iconSizeMedium: string; /** Styles applied to the icon element if supplied and `size="large"`. - * @deprecated Combine the [.MuiButton-icon](/material-ui/api/button/#button-classes-icon) and [.MuiButtonSizeLarge](/material-ui/api/button/#button-classes-sizeLarge) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButton-icon](/material-ui/api/button/#button-classes-icon) and [.MuiButtonSizeLarge](/material-ui/api/button/#button-classes-sizeLarge) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ iconSizeLarge: string; /** Styles applied to the root element if `color="primary"`. */ diff --git a/packages/mui-material/src/ButtonGroup/buttonGroupClasses.ts b/packages/mui-material/src/ButtonGroup/buttonGroupClasses.ts index 89f93aaf8d8ad3..86887f1ad9506b 100644 --- a/packages/mui-material/src/ButtonGroup/buttonGroupClasses.ts +++ b/packages/mui-material/src/ButtonGroup/buttonGroupClasses.ts @@ -29,71 +29,71 @@ export interface ButtonGroupClasses { /** Styles applied to the root element if `color="secondary"` */ colorSecondary: string; /** Styles applied to the children if `orientation="horizontal"`. - * @deprecated Combine the [.MuiButtonGroup-horizontal](/material-ui/api/button-group/#button-group-classes-horizontal) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-horizontal](/material-ui/api/button-group/#button-group-classes-horizontal) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedHorizontal: string; /** Styles applied to the children if `orientation="vertical"`. - * @deprecated Combine the [.MuiButtonGroup-vertical](/material-ui/api/button-group/#button-group-classes-vertical) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-vertical](/material-ui/api/button-group/#button-group-classes-vertical) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedVertical: string; /** Styles applied to the children if `variant="text"`. - * @deprecated Combine the [.MuiButtonGroup-text](/material-ui/api/button-group/#button-group-classes-text) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-text](/material-ui/api/button-group/#button-group-classes-text) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedText: string; /** Styles applied to the children if `variant="text"` and `orientation="horizontal"`. - * @deprecated Combine the [.MuiButtonGroup-text](/material-ui/api/button-group/#button-group-classes-text) , [.MuiButtonGroup-horizontal](/material-ui/api/button-group/#button-group-classes-horizontal) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-text](/material-ui/api/button-group/#button-group-classes-text) , [.MuiButtonGroup-horizontal](/material-ui/api/button-group/#button-group-classes-horizontal) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedTextHorizontal: string; /** Styles applied to the children if `variant="text"` and `orientation="vertical"`. - * @deprecated Combine the [.MuiButtonGroup-text](/material-ui/api/button-group/#button-group-classes-text) , [.MuiButtonGroup-vertical](/material-ui/api/button-group/#button-group-classes-vertical) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-text](/material-ui/api/button-group/#button-group-classes-text) , [.MuiButtonGroup-vertical](/material-ui/api/button-group/#button-group-classes-vertical) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedTextVertical: string; /** Styles applied to the children if `variant="text"` and `color="primary"`. - * @deprecated Combine the [.MuiButtonGroup-text](/material-ui/api/button-group/#button-group-classes-text) , [.MuiButtonGroup-colorPrimary](/material-ui/api/button-group/#button-group-classes-colorPrimary) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-text](/material-ui/api/button-group/#button-group-classes-text) , [.MuiButtonGroup-colorPrimary](/material-ui/api/button-group/#button-group-classes-colorPrimary) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedTextPrimary: string; /** Styles applied to the children if `variant="text"` and `color="secondary"`. - * @deprecated Combine the [.MuiButtonGroup-text](/material-ui/api/button-group/#button-group-classes-text) , [.MuiButtonGroup-colorSecondary](/material-ui/api/button-group/#button-group-classes-colorSecondary) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-text](/material-ui/api/button-group/#button-group-classes-text) , [.MuiButtonGroup-colorSecondary](/material-ui/api/button-group/#button-group-classes-colorSecondary) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedTextSecondary: string; /** Styles applied to the children if `variant="outlined"`. - * @deprecated Combine the [.MuiButtonGroup-outlined](/material-ui/api/button-group/#button-group-classes-outlined) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-outlined](/material-ui/api/button-group/#button-group-classes-outlined) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedOutlined: string; /** Styles applied to the children if `variant="outlined"` and `orientation="horizontal"`. - * @deprecated Combine the [.MuiButtonGroup-outlined](/material-ui/api/button-group/#button-group-classes-outlined) , [.MuiButtonGroup-horizontal](/material-ui/api/button-group/#button-group-classes-horizontal) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-outlined](/material-ui/api/button-group/#button-group-classes-outlined) , [.MuiButtonGroup-horizontal](/material-ui/api/button-group/#button-group-classes-horizontal) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedOutlinedHorizontal: string; /** Styles applied to the children if `variant="outlined"` and `orientation="vertical"`. - * @deprecated Combine the [.MuiButtonGroup-outlined](/material-ui/api/button-group/#button-group-classes-outlined) , [.MuiButtonGroup-vertical](/material-ui/api/button-group/#button-group-classes-vertical) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-outlined](/material-ui/api/button-group/#button-group-classes-outlined) , [.MuiButtonGroup-vertical](/material-ui/api/button-group/#button-group-classes-vertical) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedOutlinedVertical: string; /** Styles applied to the children if `variant="outlined"` and `color="primary"`. - * @deprecated Combine the [.MuiButtonGroup-outlined](/material-ui/api/button-group/#button-group-classes-outlined) , [.MuiButtonGroup-colorPrimary](/material-ui/api/button-group/#button-group-classes-colorPrimary) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-outlined](/material-ui/api/button-group/#button-group-classes-outlined) , [.MuiButtonGroup-colorPrimary](/material-ui/api/button-group/#button-group-classes-colorPrimary) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedOutlinedPrimary: string; /** Styles applied to the children if `variant="outlined"` and `color="secondary"`. - * @deprecated Combine the [.MuiButtonGroup-outlined](/material-ui/api/button-group/#button-group-classes-outlined) , [.MuiButtonGroup-colorSecondary](/material-ui/api/button-group/#button-group-classes-colorSecondary) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-outlined](/material-ui/api/button-group/#button-group-classes-outlined) , [.MuiButtonGroup-colorSecondary](/material-ui/api/button-group/#button-group-classes-colorSecondary) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedOutlinedSecondary: string; /** Styles applied to the children if `variant="contained"`. - * @deprecated Combine the [.MuiButtonGroup-contained](/material-ui/api/button-group/#button-group-classes-contained) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-contained](/material-ui/api/button-group/#button-group-classes-contained) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedContained: string; /** Styles applied to the children if `variant="contained"` and `orientation="horizontal"`. - * @deprecated Combine the [.MuiButtonGroup-contained](/material-ui/api/button-group/#button-group-classes-contained) , [.MuiButtonGroup-horizontal](/material-ui/api/button-group/#button-group-classes-horizontal) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-contained](/material-ui/api/button-group/#button-group-classes-contained) , [.MuiButtonGroup-horizontal](/material-ui/api/button-group/#button-group-classes-horizontal) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedContainedHorizontal: string; /** Styles applied to the children if `variant="contained"` and `orientation="vertical"`. - * @deprecated Combine the [.MuiButtonGroup-contained](/material-ui/api/button-group/#button-group-classes-contained) , [.MuiButtonGroup-vertical](/material-ui/api/button-group/#button-group-classes-vertical) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-contained](/material-ui/api/button-group/#button-group-classes-contained) , [.MuiButtonGroup-vertical](/material-ui/api/button-group/#button-group-classes-vertical) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedContainedVertical: string; /** Styles applied to the children if `variant="contained"` and `color="primary"`. - * @deprecated Combine the [.MuiButtonGroup-contained](/material-ui/api/button-group/#button-group-classes-contained) , [.MuiButtonGroup-colorPrimary](/material-ui/api/button-group/#button-group-classes-colorPrimary) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-contained](/material-ui/api/button-group/#button-group-classes-contained) , [.MuiButtonGroup-colorPrimary](/material-ui/api/button-group/#button-group-classes-colorPrimary) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedContainedPrimary: string; /** Styles applied to the children if `variant="contained"` and `color="secondary"`. - * @deprecated Combine the [.MuiButtonGroup-contained](/material-ui/api/button-group/#button-group-classes-contained) , [.MuiButtonGroup-colorSecondary](/material-ui/api/button-group/#button-group-classes-colorSecondary) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiButtonGroup-contained](/material-ui/api/button-group/#button-group-classes-contained) , [.MuiButtonGroup-colorSecondary](/material-ui/api/button-group/#button-group-classes-colorSecondary) and [.MuiButtonGroup-grouped](/material-ui/api/button-group/#button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedContainedSecondary: string; /** Styles applied to the last button in the button group. */ diff --git a/packages/mui-material/src/Chip/chipClasses.ts b/packages/mui-material/src/Chip/chipClasses.ts index 881ffd4ab22a61..fcce4456ea57a1 100644 --- a/packages/mui-material/src/Chip/chipClasses.ts +++ b/packages/mui-material/src/Chip/chipClasses.ts @@ -27,21 +27,21 @@ export interface ChipClasses { /** Styles applied to the root element if `onClick` is defined or `clickable={true}`. */ clickable: string; /** Styles applied to the root element if `onClick` and `color="primary"` is defined or `clickable={true}`. - * @deprecated Combine the [.MuiChip-clickable](/material-ui/api/chip/#chip-classes-clickable) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-clickable](/material-ui/api/chip/#chip-classes-clickable) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ clickableColorPrimary: string; /** Styles applied to the root element if `onClick` and `color="secondary"` is defined or `clickable={true}`. - * @deprecated Combine the [.MuiChip-clickable](/material-ui/api/chip/#chip-classes-clickable) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-clickable](/material-ui/api/chip/#chip-classes-clickable) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ clickableColorSecondary: string; /** Styles applied to the root element if `onDelete` is defined. */ deletable: string; /** Styles applied to the root element if `onDelete` and `color="primary"` is defined. - * @deprecated Combine the [.MuiChip-deletable](/material-ui/api/chip/#chip-classes-deletable) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-deletable](/material-ui/api/chip/#chip-classes-deletable) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ deletableColorPrimary: string; /** Styles applied to the root element if `onDelete` and `color="secondary"` is defined. - * @deprecated Combine the [.MuiChip-deletable](/material-ui/api/chip/#chip-classes-deletable) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-deletable](/material-ui/api/chip/#chip-classes-deletable) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ deletableColorSecondary: string; /** Styles applied to the root element if `variant="outlined"`. */ @@ -49,99 +49,99 @@ export interface ChipClasses { /** Styles applied to the root element if `variant="filled"`. */ filled: string; /** Styles applied to the root element if `variant="outlined"` and `color="primary"`. - * @deprecated Combine the [.MuiChip-outlined](/material-ui/api/chip/#chip-classes-outlined) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-outlined](/material-ui/api/chip/#chip-classes-outlined) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedPrimary: string; /** Styles applied to the root element if `variant="outlined"` and `color="secondary"`. - * @deprecated Combine the [.MuiChip-outlined](/material-ui/api/chip/#chip-classes-outlined) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-outlined](/material-ui/api/chip/#chip-classes-outlined) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedSecondary: string; /** Styles applied to the root element if `variant="filled"` and `color="primary"`. - * @deprecated Combine the [.MuiChip-filled](/material-ui/api/chip/#chip-classes-filled) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-filled](/material-ui/api/chip/#chip-classes-filled) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ filledPrimary: string; /** Styles applied to the root element if `variant="filled"` and `color="secondary"`. - * @deprecated Combine the [.MuiChip-filled](/material-ui/api/chip/#chip-classes-filled) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-filled](/material-ui/api/chip/#chip-classes-filled) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ filledSecondary: string; /** Styles applied to the avatar element. */ avatar: string; /** Styles applied to the avatar element if `size="small"`. - * @deprecated Combine the [.MuiChip-avatar](/material-ui/api/chip/#chip-classes-avatar) and [.MuiChip-sizeSmall](/material-ui/api/chip/#chip-classes-sizeSmall) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-avatar](/material-ui/api/chip/#chip-classes-avatar) and [.MuiChip-sizeSmall](/material-ui/api/chip/#chip-classes-sizeSmall) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ avatarSmall: string; /** Styles applied to the avatar element if `size="medium"`. - * @deprecated Combine the [.MuiChip-avatar](/material-ui/api/chip/#chip-classes-avatar) and [.MuiChip-sizeMedium](/material-ui/api/chip/#chip-classes-sizeMedium) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-avatar](/material-ui/api/chip/#chip-classes-avatar) and [.MuiChip-sizeMedium](/material-ui/api/chip/#chip-classes-sizeMedium) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ avatarMedium: string; /** Styles applied to the avatar element if `color="primary"`. - * @deprecated Combine the [.MuiChip-avatar](/material-ui/api/chip/#chip-classes-avatar) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-avatar](/material-ui/api/chip/#chip-classes-avatar) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ avatarColorPrimary: string; /** Styles applied to the avatar element if `color="secondary"`. - * @deprecated Combine the [.MuiChip-avatar](/material-ui/api/chip/#chip-classes-avatar) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-avatar](/material-ui/api/chip/#chip-classes-avatar) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ avatarColorSecondary: string; /** Styles applied to the icon element. */ icon: string; /** Styles applied to the icon element if `size="small"`. - * @deprecated Combine the [.MuiChip-icon](/material-ui/api/chip/#chip-classes-icon) and [.MuiChip-sizeSmall](/material-ui/api/chip/#chip-classes-sizeSmall) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-icon](/material-ui/api/chip/#chip-classes-icon) and [.MuiChip-sizeSmall](/material-ui/api/chip/#chip-classes-sizeSmall) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ iconSmall: string; /** Styles applied to the icon element if `size="medium"`. - * @deprecated Combine the [.MuiChip-icon](/material-ui/api/chip/#chip-classes-icon) and [.MuiChip-sizeMedium](/material-ui/api/chip/#chip-classes-sizeMedium) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-icon](/material-ui/api/chip/#chip-classes-icon) and [.MuiChip-sizeMedium](/material-ui/api/chip/#chip-classes-sizeMedium) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ iconMedium: string; /** Styles applied to the icon element if `color="primary"`. - * @deprecated Combine the [.MuiChip-icon](/material-ui/api/chip/#chip-classes-icon) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-icon](/material-ui/api/chip/#chip-classes-icon) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ iconColorPrimary: string; /** Styles applied to the icon element if `color="secondary"`. - * @deprecated Combine the [.MuiChip-icon](/material-ui/api/chip/#chip-classes-icon) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-icon](/material-ui/api/chip/#chip-classes-icon) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ iconColorSecondary: string; /** Styles applied to the label `span` element. */ label: string; /** Styles applied to the label `span` element if `size="small"`. - * @deprecated Combine the [.MuiChip-label](/material-ui/api/chip/#chip-classes-label) and [.MuiChip-sizeSmall](/material-ui/api/chip/#chip-classes-sizeSmall) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-label](/material-ui/api/chip/#chip-classes-label) and [.MuiChip-sizeSmall](/material-ui/api/chip/#chip-classes-sizeSmall) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ labelSmall: string; /** Styles applied to the label `span` element if `size="medium"`. - * @deprecated Combine the [.MuiChip-label](/material-ui/api/chip/#chip-classes-label) and [.MuiChip-sizeMedium](/material-ui/api/chip/#chip-classes-sizeMedium) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-label](/material-ui/api/chip/#chip-classes-label) and [.MuiChip-sizeMedium](/material-ui/api/chip/#chip-classes-sizeMedium) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ labelMedium: string; /** Styles applied to the deleteIcon element. */ deleteIcon: string; /** Styles applied to the deleteIcon element if `size="small"`. - * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) and [.MuiChip-sizeSmall](/material-ui/api/chip/#chip-classes-sizeSmall) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) and [.MuiChip-sizeSmall](/material-ui/api/chip/#chip-classes-sizeSmall) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ deleteIconSmall: string; /** Styles applied to the deleteIcon element if `size="medium"`. - * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) and [.MuiChip-sizeMedium](/material-ui/api/chip/#chip-classes-sizeMedium) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) and [.MuiChip-sizeMedium](/material-ui/api/chip/#chip-classes-sizeMedium) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ deleteIconMedium: string; /** Styles applied to the deleteIcon element if `color="primary"`. - * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ deleteIconColorPrimary: string; /** Styles applied to the deleteIcon element if `color="secondary"`. - * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ deleteIconColorSecondary: string; /** Styles applied to the deleteIcon element if `color="primary"` and `variant="outlined"`. - * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) , [.MuiChip-outlined](/material-ui/api/chip/#chip-classes-outlined) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) , [.MuiChip-outlined](/material-ui/api/chip/#chip-classes-outlined) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ deleteIconOutlinedColorPrimary: string; /** Styles applied to the deleteIcon element if `color="secondary"` and `variant="outlined"`. - * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) , [.MuiChip-outlined](/material-ui/api/chip/#chip-classes-outlined) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) , [.MuiChip-outlined](/material-ui/api/chip/#chip-classes-outlined) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ deleteIconOutlinedColorSecondary: string; /** Styles applied to the deleteIcon element if `color="primary"` and `variant="filled"`. - * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) , [.MuiChip-filled](/material-ui/api/chip/#chip-classes-filled) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) , [.MuiChip-filled](/material-ui/api/chip/#chip-classes-filled) and [.MuiChip-colorPrimary](/material-ui/api/chip/#chip-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ deleteIconFilledColorPrimary: string; /** Styles applied to the deleteIcon element if `color="secondary"` and `variant="filled"`. - * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) , [.MuiChip-filled](/material-ui/api/chip/#chip-classes-filled) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiChip-deleteIcon](/material-ui/api/chip/#chip-classes-deleteIcon) , [.MuiChip-filled](/material-ui/api/chip/#chip-classes-filled) and [.MuiChip-colorSecondary](/material-ui/api/chip/#chip-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ deleteIconFilledColorSecondary: string; /** State class applied to the root element if keyboard focused. */ diff --git a/packages/mui-material/src/Divider/Divider.d.ts b/packages/mui-material/src/Divider/Divider.d.ts index 54ae7c06242b00..607806e6516f48 100644 --- a/packages/mui-material/src/Divider/Divider.d.ts +++ b/packages/mui-material/src/Divider/Divider.d.ts @@ -30,7 +30,7 @@ export interface DividerOwnProps { /** * If `true`, the divider will have a lighter color. * @default false - * @deprecated Use (or any opacity or color) instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Use (or any opacity or color) instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ light?: boolean; /** diff --git a/packages/mui-material/src/Divider/Divider.js b/packages/mui-material/src/Divider/Divider.js index 47debc2df86f05..986b39f01b61af 100644 --- a/packages/mui-material/src/Divider/Divider.js +++ b/packages/mui-material/src/Divider/Divider.js @@ -307,7 +307,7 @@ Divider.propTypes /* remove-proptypes */ = { /** * If `true`, the divider will have a lighter color. * @default false - * @deprecated Use (or any opacity or color) instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Use (or any opacity or color) instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ light: PropTypes.bool, /** diff --git a/packages/mui-material/src/FormControlLabel/FormControlLabel.d.ts b/packages/mui-material/src/FormControlLabel/FormControlLabel.d.ts index cab422f0a5457a..0a171d69a5db2f 100644 --- a/packages/mui-material/src/FormControlLabel/FormControlLabel.d.ts +++ b/packages/mui-material/src/FormControlLabel/FormControlLabel.d.ts @@ -35,7 +35,7 @@ export interface FormControlLabelProps /** * The props used for each slot inside. * @default {} - * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ componentsProps?: { /** diff --git a/packages/mui-material/src/FormControlLabel/FormControlLabel.js b/packages/mui-material/src/FormControlLabel/FormControlLabel.js index dc5f8a1b6c1d23..5765933206a476 100644 --- a/packages/mui-material/src/FormControlLabel/FormControlLabel.js +++ b/packages/mui-material/src/FormControlLabel/FormControlLabel.js @@ -229,7 +229,7 @@ FormControlLabel.propTypes /* remove-proptypes */ = { /** * The props used for each slot inside. * @default {} - * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ componentsProps: PropTypes.shape({ typography: PropTypes.object, diff --git a/packages/mui-material/src/PaginationItem/PaginationItem.d.ts b/packages/mui-material/src/PaginationItem/PaginationItem.d.ts index 82b7a76f823db9..89f80057ac255b 100644 --- a/packages/mui-material/src/PaginationItem/PaginationItem.d.ts +++ b/packages/mui-material/src/PaginationItem/PaginationItem.d.ts @@ -58,7 +58,7 @@ export interface PaginationItemOwnProps extends PaginationItemSlotsAndSlotProps * It's recommended to use the `slots` prop instead. * * @default {} - * @deprecated use the `slots` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slots` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ components?: { first?: React.ElementType; diff --git a/packages/mui-material/src/PaginationItem/PaginationItem.js b/packages/mui-material/src/PaginationItem/PaginationItem.js index 9193a26e421608..7823ae791cd28e 100644 --- a/packages/mui-material/src/PaginationItem/PaginationItem.js +++ b/packages/mui-material/src/PaginationItem/PaginationItem.js @@ -455,7 +455,7 @@ PaginationItem.propTypes /* remove-proptypes */ = { * It's recommended to use the `slots` prop instead. * * @default {} - * @deprecated use the `slots` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slots` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ components: PropTypes.shape({ first: PropTypes.elementType, diff --git a/packages/mui-material/src/PaginationItem/paginationItemClasses.ts b/packages/mui-material/src/PaginationItem/paginationItemClasses.ts index 1ec0961e66114c..1352d26ddbe3e9 100644 --- a/packages/mui-material/src/PaginationItem/paginationItemClasses.ts +++ b/packages/mui-material/src/PaginationItem/paginationItemClasses.ts @@ -13,21 +13,21 @@ export interface PaginationItemClasses { /** Styles applied to the root element if `variant="text"`. */ text: string; /** Styles applied to the root element if `variant="text"` and `color="primary"`. - * @deprecated Combine the [.MuiPaginationItem-text](/material-ui/api/pagination-item/#pagination-item-classes-text) and [.MuiPaginationItem-colorPrimary](/material-ui/api/pagination-item/#pagination-item-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Combine the [.MuiPaginationItem-text](/material-ui/api/pagination-item/#pagination-item-classes-text) and [.MuiPaginationItem-colorPrimary](/material-ui/api/pagination-item/#pagination-item-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ textPrimary: string; /** Styles applied to the root element if `variant="text"` and `color="secondary"`. - * @deprecated Combine the [.MuiPaginationItem-text](/material-ui/api/pagination-item/#pagination-item-classes-text) and [.MuiPaginationItem-colorSecondary](/material-ui/api/pagination-item/#pagination-item-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Combine the [.MuiPaginationItem-text](/material-ui/api/pagination-item/#pagination-item-classes-text) and [.MuiPaginationItem-colorSecondary](/material-ui/api/pagination-item/#pagination-item-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ textSecondary: string; /** Styles applied to the root element if `variant="outlined"`. */ outlined: string; /** Styles applied to the root element if `variant="outlined"` and `color="primary"`. - * @deprecated Combine the [.MuiPaginationItem-outlined](/material-ui/api/pagination-item/#pagination-item-classes-outlined) and [.MuiPaginationItem-colorPrimary](/material-ui/api/pagination-item/#pagination-item-classes-colorPrimary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Combine the [.MuiPaginationItem-outlined](/material-ui/api/pagination-item/#pagination-item-classes-outlined) and [.MuiPaginationItem-colorPrimary](/material-ui/api/pagination-item/#pagination-item-classes-colorPrimary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedPrimary: string; /** Styles applied to the root element if `variant="outlined"` and `color="secondary"`. - * @deprecated Combine the [.MuiPaginationItem-outlined](/material-ui/api/pagination-item/#pagination-item-classes-outlined) and [.MuiPaginationItem-colorSecondary](/material-ui/api/pagination-item/#pagination-item-classes-colorSecondary) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Combine the [.MuiPaginationItem-outlined](/material-ui/api/pagination-item/#pagination-item-classes-outlined) and [.MuiPaginationItem-colorSecondary](/material-ui/api/pagination-item/#pagination-item-classes-colorSecondary) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ outlinedSecondary: string; /** Styles applied to the root element if `rounded="true"`. */ diff --git a/packages/mui-material/src/Slider/Slider.d.ts b/packages/mui-material/src/Slider/Slider.d.ts index e6ac5223f9302b..98a9f281f14ae6 100644 --- a/packages/mui-material/src/Slider/Slider.d.ts +++ b/packages/mui-material/src/Slider/Slider.d.ts @@ -46,7 +46,7 @@ export interface SliderOwnProps { /** * The components used for each slot inside. * - * @deprecated use the `slots` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slots` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. * * @default {} */ @@ -64,7 +64,7 @@ export interface SliderOwnProps { * The extra props for the slot components. * You can override the existing props or add new ones. * - * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. * * @default {} */ diff --git a/packages/mui-material/src/Slider/Slider.js b/packages/mui-material/src/Slider/Slider.js index f87f34f51bdd68..5759dc932e503c 100644 --- a/packages/mui-material/src/Slider/Slider.js +++ b/packages/mui-material/src/Slider/Slider.js @@ -890,7 +890,7 @@ Slider.propTypes /* remove-proptypes */ = { /** * The components used for each slot inside. * - * @deprecated use the `slots` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slots` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. * * @default {} */ @@ -908,7 +908,7 @@ Slider.propTypes /* remove-proptypes */ = { * The extra props for the slot components. * You can override the existing props or add new ones. * - * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. * * @default {} */ diff --git a/packages/mui-material/src/StepConnector/stepConnectorClasses.ts b/packages/mui-material/src/StepConnector/stepConnectorClasses.ts index a7f46ca2880c9f..f3ccf3fff36e74 100644 --- a/packages/mui-material/src/StepConnector/stepConnectorClasses.ts +++ b/packages/mui-material/src/StepConnector/stepConnectorClasses.ts @@ -19,11 +19,11 @@ export interface StepConnectorClasses { /** Styles applied to the line element. */ line: string; /** Styles applied to the line element if `orientation="horizontal"`. - * @deprecated Combine the [.MuiStepConnector-horizontal](/material-ui/api/step-connector/#step-connector-classes-horizontal) and [.MuiStepConnector-line](/material-ui/api/step-connector/#step-connector-classes-line) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiStepConnector-horizontal](/material-ui/api/step-connector/#step-connector-classes-horizontal) and [.MuiStepConnector-line](/material-ui/api/step-connector/#step-connector-classes-line) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ lineHorizontal: string; /** Styles applied to the line element if `orientation="vertical"`. - * @deprecated Combine the [.MuiStepConnector-vertical](/material-ui/api/step-connector/#step-connector-classes-vertical) and [.MuiStepConnector-line](/material-ui/api/step-connector/#step-connector-classes-line) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiStepConnector-vertical](/material-ui/api/step-connector/#step-connector-classes-vertical) and [.MuiStepConnector-line](/material-ui/api/step-connector/#step-connector-classes-line) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ lineVertical: string; } diff --git a/packages/mui-material/src/StepLabel/StepLabel.d.ts b/packages/mui-material/src/StepLabel/StepLabel.d.ts index b47182a67a9623..c695ac48ef9fe5 100644 --- a/packages/mui-material/src/StepLabel/StepLabel.d.ts +++ b/packages/mui-material/src/StepLabel/StepLabel.d.ts @@ -42,7 +42,7 @@ export interface StepLabelProps /** * The props used for each slot inside. * @default {} - * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ componentsProps?: { /** @@ -66,12 +66,12 @@ export interface StepLabelProps optional?: React.ReactNode; /** * The component to render in place of the [`StepIcon`](/material-ui/api/step-icon/). - * @deprecated Use `slots.stepIcon` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Use `slots.stepIcon` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ StepIconComponent?: React.ElementType; /** * Props applied to the [`StepIcon`](/material-ui/api/step-icon/) element. - * @deprecated Use `slotProps.stepIcon` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Use `slotProps.stepIcon` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ StepIconProps?: Partial; /** diff --git a/packages/mui-material/src/StepLabel/StepLabel.js b/packages/mui-material/src/StepLabel/StepLabel.js index 585941fad0ecec..0141fc7e395f07 100644 --- a/packages/mui-material/src/StepLabel/StepLabel.js +++ b/packages/mui-material/src/StepLabel/StepLabel.js @@ -233,7 +233,7 @@ StepLabel.propTypes /* remove-proptypes */ = { /** * The props used for each slot inside. * @default {} - * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ componentsProps: PropTypes.shape({ label: PropTypes.object, @@ -269,12 +269,12 @@ StepLabel.propTypes /* remove-proptypes */ = { }), /** * The component to render in place of the [`StepIcon`](/material-ui/api/step-icon/). - * @deprecated Use `slots.stepIcon` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Use `slots.stepIcon` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ StepIconComponent: PropTypes.elementType, /** * Props applied to the [`StepIcon`](/material-ui/api/step-icon/) element. - * @deprecated Use `slotProps.stepIcon` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/). + * @deprecated Use `slotProps.stepIcon` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ StepIconProps: PropTypes.object, /** diff --git a/packages/mui-material/src/ToggleButtonGroup/toggleButtonGroupClasses.ts b/packages/mui-material/src/ToggleButtonGroup/toggleButtonGroupClasses.ts index d4a133d61996f7..9405ae9d57ccbd 100644 --- a/packages/mui-material/src/ToggleButtonGroup/toggleButtonGroupClasses.ts +++ b/packages/mui-material/src/ToggleButtonGroup/toggleButtonGroupClasses.ts @@ -13,11 +13,11 @@ export interface ToggleButtonGroupClasses { /** Styles applied to the children. */ grouped: string; /** Styles applied to the children if `orientation="horizontal"`. - * @deprecated Combine the [.MuiToggleButtonGroup-horizontal](/material-ui/api/toggle-button-group/#toggle-button-group-classes-horizontal) and [.MuiToggleButtonGroup-grouped](/material-ui/api/toggle-button-group/#toggle-button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiToggleButtonGroup-horizontal](/material-ui/api/toggle-button-group/#toggle-button-group-classes-horizontal) and [.MuiToggleButtonGroup-grouped](/material-ui/api/toggle-button-group/#toggle-button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedHorizontal: string; /** Styles applied to the children if `orientation="vertical"`. - * @deprecated Combine the [.MuiToggleButtonGroup-vertical](/material-ui/api/toggle-button-group/#toggle-button-group-classes-vertical) and [.MuiToggleButtonGroup-grouped](/material-ui/api/toggle-button-group/#toggle-button-group-classes-grouped) classes instead. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/) + * @deprecated Combine the [.MuiToggleButtonGroup-vertical](/material-ui/api/toggle-button-group/#toggle-button-group-classes-vertical) and [.MuiToggleButtonGroup-grouped](/material-ui/api/toggle-button-group/#toggle-button-group-classes-grouped) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ groupedVertical: string; /** Styles applied to the root element if `fullWidth={true}`. */ From 8f88c8becd2e226fe480e15944299867adfacdf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Dudak?= Date: Wed, 8 May 2024 12:19:27 +0200 Subject: [PATCH 06/25] [code-infra] Add canary release scripts (#41949) --- package.json | 6 +- scripts/canaryRelease.mts | 262 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 266 insertions(+), 2 deletions(-) create mode 100644 scripts/canaryRelease.mts diff --git a/package.json b/package.json index 7325aa1b54dedb..f8635c933beafe 100644 --- a/package.json +++ b/package.json @@ -8,8 +8,9 @@ "deduplicate": "pnpm dedupe", "benchmark:browser": "pnpm --filter benchmark browser", "build": "lerna run build --ignore docs", - "build:public": "lerna run --no-private build", "build:ci": "lerna run build --ignore docs --concurrency 8 --skip-nx-cache", + "build:public": "lerna run --no-private build", + "build:public:ci": "lerna run --no-private build --concurrency 8 --skip-nx-cache", "build:codesandbox": "NODE_OPTIONS=\"--max_old_space_size=4096\" lerna run --concurrency 8 --scope \"@mui/*\" --scope \"@mui-internal/*\" --no-private build", "release:version": "lerna version --no-changelog --no-push --no-git-tag-version --no-private --force-publish=@mui/core-downloads-tracker", "release:build": "lerna run --concurrency 8 --no-private build --skip-nx-cache", @@ -76,7 +77,8 @@ "typescript": "lerna run --no-bail --parallel typescript", "typescript:ci": "lerna run --concurrency 3 --no-bail --no-sort typescript", "validate-declarations": "tsx scripts/validateTypescriptDeclarations.mts", - "generate-codeowners": "node scripts/generateCodeowners.mjs" + "generate-codeowners": "node scripts/generateCodeowners.mjs", + "canary:release": "tsx ./scripts/canaryRelease.mts" }, "dependencies": { "@googleapis/sheets": "^5.0.5", diff --git a/scripts/canaryRelease.mts b/scripts/canaryRelease.mts new file mode 100644 index 00000000000000..c61cb0fcff52d4 --- /dev/null +++ b/scripts/canaryRelease.mts @@ -0,0 +1,262 @@ +/* eslint-disable prefer-template */ +/* eslint-disable no-restricted-syntax */ +/* eslint-disable no-console */ +import { resolve, dirname } from 'node:path'; +import { fileURLToPath } from 'node:url'; +import { readFile, writeFile, appendFile } from 'node:fs/promises'; +import * as readline from 'node:readline/promises'; +import yargs from 'yargs'; +import { hideBin } from 'yargs/helpers'; +import { $ } from 'execa'; +import chalk from 'chalk'; + +const $$ = $({ stdio: 'inherit' }); + +const currentDirectory = dirname(fileURLToPath(import.meta.url)); +const workspaceRoot = resolve(currentDirectory, '..'); + +interface PackageInfo { + name: string; + path: string; + version: string; + private: boolean; +} + +interface RunOptions { + accessToken?: string; + baseline?: string; + dryRun: boolean; + skipLastCommitComparison: boolean; + yes: boolean; + ignore: string[]; +} + +async function run({ + dryRun, + accessToken, + baseline, + skipLastCommitComparison, + yes, + ignore, +}: RunOptions) { + await ensureCleanWorkingDirectory(); + + const changedPackages = await getChangedPackages(baseline, skipLastCommitComparison, ignore); + if (changedPackages.length === 0) { + return; + } + + await confirmPublishing(changedPackages, yes); + + try { + await setAccessToken(accessToken); + await setVersion(changedPackages); + await buildPackages(); + await publishPackages(changedPackages, dryRun); + } finally { + await cleanUp(); + } +} + +async function ensureCleanWorkingDirectory() { + try { + await $`git diff --quiet`; + await $`git diff --quiet --cached`; + } catch (error) { + console.error('❌ Working directory is not clean.'); + process.exit(1); + } +} + +async function listPublicChangedPackages(baseline: string) { + const { stdout: packagesJson } = + await $`pnpm list --recursive --filter ...[${baseline}] --depth -1 --only-projects --json`; + const packages = JSON.parse(packagesJson) as PackageInfo[]; + return packages.filter((pkg) => !pkg.private); +} + +async function getChangedPackages( + baseline: string | undefined, + skipLastCommitComparison: boolean, + ignore: string[], +): Promise { + if (!skipLastCommitComparison) { + const publicPackagesUpdatedInLastCommit = await listPublicChangedPackages('HEAD~1'); + if (publicPackagesUpdatedInLastCommit.length === 0) { + console.log('No public packages changed in the last commit.'); + return []; + } + } + + if (!baseline) { + const { stdout: latestTag } = await $`git describe --abbrev=0`; + baseline = latestTag; + } + + console.log(`Looking for changed public packages since ${chalk.yellow(baseline)}...`); + + const changedPackages = (await listPublicChangedPackages(baseline)).filter( + (p) => !ignore.includes(p.name), + ); + + if (changedPackages.length === 0) { + console.log('Nothing found.'); + } + + return changedPackages; +} + +async function confirmPublishing(changedPackages: PackageInfo[], yes: boolean) { + if (!yes) { + const rl = readline.createInterface({ + input: process.stdin, + output: process.stdout, + }); + + console.log('\nFound changes in the following packages:'); + for (const pkg of changedPackages) { + console.log(` - ${pkg.name}`); + } + + console.log('\nThis will publish the above packages to the npm registry.'); + const answer = await rl.question('Do you want to proceed? (y/n) '); + + rl.close(); + + if (answer.toLowerCase() !== 'y') { + console.log('Aborted.'); + process.exit(0); + } + } +} + +async function setAccessToken(npmAccessToken: string | undefined) { + if (!npmAccessToken && !process.env.NPM_TOKEN) { + console.error( + '❌ NPM access token is required. Either pass it as an --access-token argument or set it as an NPM_TOKEN environment variable.', + ); + process.exit(1); + } + + const npmrcPath = resolve(workspaceRoot, '.npmrc'); + + await appendFile( + npmrcPath, + `//registry.npmjs.org/:_authToken=${npmAccessToken ?? process.env.NPM_TOKEN}\n`, + ); +} + +async function setVersion(packages: PackageInfo[]) { + const { stdout: currentRevisionSha } = await $`git rev-parse --short HEAD`; + const { stdout: commitTimestamp } = await $`git show --no-patch --format=%ct HEAD`; + const timestamp = formatDate(new Date(+commitTimestamp * 1000)); + let hasError = false; + + const tasks = packages.map(async (pkg) => { + const packageJsonPath = resolve(pkg.path, './package.json'); + try { + const packageJson = JSON.parse(await readFile(packageJsonPath, { encoding: 'utf8' })); + const version = packageJson.version; + const dashIndex = version.indexOf('-'); + let newVersion = version; + if (dashIndex !== -1) { + newVersion = version.slice(0, dashIndex); + } + + newVersion = `${newVersion}-dev.${timestamp}-${currentRevisionSha}`; + packageJson.version = newVersion; + + await writeFile(packageJsonPath, JSON.stringify(packageJson, null, 2) + '\n'); + } catch (error) { + console.error(`${chalk.red(`❌ ${packageJsonPath}`)}`, error); + hasError = true; + } + }); + + await Promise.allSettled(tasks); + if (hasError) { + throw new Error('Failed to update package versions'); + } +} + +function formatDate(date: Date) { + // yyyyMMdd-HHmmss + return date + .toISOString() + .replace(/[-:Z.]/g, '') + .replace('T', '-') + .slice(0, 15); +} + +function buildPackages() { + if (process.env.CI) { + return $$`pnpm build:public:ci`; + } + + return $$`pnpm build:public`; +} + +async function publishPackages(packages: PackageInfo[], dryRun: boolean) { + console.log(`\nPublishing packages${dryRun ? ' (dry run)' : ''}`); + const tasks = packages.map(async (pkg) => { + try { + const args = [pkg.path, '--tag', 'canary', '--no-git-checks']; + if (dryRun) { + args.push('--dry-run'); + } + await $$`pnpm publish ${args}`; + } catch (error: any) { + console.error(chalk.red(`❌ ${pkg.name}`), error.shortMessage); + } + }); + + await Promise.allSettled(tasks); +} + +async function cleanUp() { + await $`git restore .`; +} + +yargs(hideBin(process.argv)) + .command( + '$0', + 'Publishes packages that have changed since the last release (or a specified commit).', + (command) => { + return command + .option('dryRun', { + default: false, + describe: 'If true, no packages will be published to the registry.', + type: 'boolean', + }) + .option('accessToken', { + describe: 'NPM access token', + type: 'string', + }) + .option('baseline', { + describe: 'Baseline tag or commit to compare against (for example `master`).', + type: 'string', + }) + .option('skipLastCommitComparison', { + default: false, + describe: + 'By default, the script exits when there are no changes in public packages in the latest commit. Setting this flag will skip this check and compare only against the baseline.', + type: 'boolean', + }) + .option('yes', { + default: false, + describe: "If set, the script doesn't ask for confirmation before publishing packages", + type: 'boolean', + }) + .option('ignore', { + describe: 'List of packages to ignore', + type: 'string', + array: true, + default: [], + }); + }, + run, + ) + .help() + .strict(true) + .version(false) + .parse(); From 7c8db04b91500ba77301acd360d21bff7f7c752f Mon Sep 17 00:00:00 2001 From: Albert Yu Date: Wed, 8 May 2024 21:03:59 +0800 Subject: [PATCH 07/25] v6.0.0-alpha.6 (#42163) --- CHANGELOG.md | 48 +++++++++++++++++++ package.json | 2 +- packages/mui-base/package.json | 2 +- packages/mui-codemod/package.json | 2 +- .../mui-core-downloads-tracker/package.json | 2 +- packages/mui-docs/package.json | 2 +- packages/mui-icons-material/package.json | 2 +- packages/mui-joy/package.json | 2 +- packages/mui-lab/package.json | 2 +- packages/mui-material/package.json | 2 +- packages/mui-styles/package.json | 2 +- 11 files changed, 58 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 65849f441603ae..6242968ae60bce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,53 @@ # [Versions](https://mui.com/versions/) +## v6.0.0-alpha.6 + + + +_May 8, 2024_ + +A big thanks to the 10 contributors who made this release possible. Here are some highlights ✨: + +### `@mui/material@6.0.0-alpha.6` + +- [Chip] Add colorDefault class to chipClasses (#42067) @sai6855 +- Migrate components to support CSS extraction (#42001) @siriwatknp +- [SpeedDial] Deprecate TransitionComponent (#40698) @harry-whorlow + +### `@mui/codemod@6.0.0-alpha.6` + +- Add `theme-v6` migration (#42056) @siriwatknp + +### `@mui/icons-material@6.0.0-alpha.6` + +- Add the Emergency icon (#42080) @danilo-leal + +### Docs + +- [autocomplete] Fix duplicate autocomplete id (#42086) @oliviertassinari +- Fix SEO redirection issues @oliviertassinari +- [material-ui] Fix broken link (#42142) @aarongarciah +- [material-ui][docs] Fix link on the Sync page (#42088) @danilo-leal + +### Core + +- [blog] Shorten title to fit @oliviertassinari +- [blog] Update Sync post OG image (#42114) @danilo-leal +- [blog] A few tweaks in introducing-sync-plugin (#42092) @oliviertassinari +- [code-infra] Add canary release scripts (#41949) @michaldudak +- [code-infra] Move ComponentLinkHeader to @mui/docs (#42061) @Janpot +- [code-infra] Bump node image used by CI in docker (#42079) @LukasTy +- [core] Restrict import path with ESLint (#41970) @oliviertassinari +- [docs-infra] Add design and formatting improvements (#42063) @danilo-leal +- [docs-infra] Fix HTML structure violations (#42085) @oliviertassinari +- [website] Componentize a few Careers page sections (#42102) @danilo-leal +- [website] Refine the InfoCard design (#42116) @danilo-leal +- [website] Fix home page slider's track position (#42141) @aarongarciah +- [website] Closing the survey @oliviertassinari +- [website] Remove Survey banner from website and Core docs (#42104) @joserodolfofreitas + +All contributors of this release in alphabetical order: @aarongarciah, @danilo-leal, @harry-whorlow, @Janpot, @joserodolfofreitas, @LukasTy, @michaldudak, @oliviertassinari, @sai6855, @siriwatknp + ## v6.0.0-alpha.5 diff --git a/package.json b/package.json index f8635c933beafe..06b0b1fa91373e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@mui/monorepo", - "version": "6.0.0-alpha.5", + "version": "6.0.0-alpha.6", "private": true, "scripts": { "preinstall": "npx only-allow pnpm", diff --git a/packages/mui-base/package.json b/packages/mui-base/package.json index 95c7be4f0a94cc..7689ad7a075396 100644 --- a/packages/mui-base/package.json +++ b/packages/mui-base/package.json @@ -1,6 +1,6 @@ { "name": "@mui/base", - "version": "5.0.0-beta.43", + "version": "5.0.0-beta.44", "private": false, "author": "MUI Team", "description": "Base UI is a library of headless ('unstyled') React components and low-level hooks. You gain complete control over your app's CSS and accessibility features.", diff --git a/packages/mui-codemod/package.json b/packages/mui-codemod/package.json index c092fc37e951a9..78f437fc30033d 100644 --- a/packages/mui-codemod/package.json +++ b/packages/mui-codemod/package.json @@ -1,6 +1,6 @@ { "name": "@mui/codemod", - "version": "6.0.0-alpha.5", + "version": "6.0.0-alpha.6", "bin": "./codemod.js", "private": false, "author": "MUI Team", diff --git a/packages/mui-core-downloads-tracker/package.json b/packages/mui-core-downloads-tracker/package.json index 4463a508ba8623..9bd8fa2f66f041 100644 --- a/packages/mui-core-downloads-tracker/package.json +++ b/packages/mui-core-downloads-tracker/package.json @@ -1,6 +1,6 @@ { "name": "@mui/core-downloads-tracker", - "version": "6.0.0-alpha.5", + "version": "6.0.0-alpha.6", "private": false, "author": "MUI Team", "description": "Internal package to track number of downloads of our design system libraries", diff --git a/packages/mui-docs/package.json b/packages/mui-docs/package.json index 5542fa3f0211b3..6059c3916dc91b 100644 --- a/packages/mui-docs/package.json +++ b/packages/mui-docs/package.json @@ -1,6 +1,6 @@ { "name": "@mui/docs", - "version": "6.0.0-alpha.5", + "version": "6.0.0-alpha.6", "private": false, "author": "MUI Team", "description": "MUI Docs - Documentation building blocks.", diff --git a/packages/mui-icons-material/package.json b/packages/mui-icons-material/package.json index 55a4784a5afed3..8515165809a52a 100644 --- a/packages/mui-icons-material/package.json +++ b/packages/mui-icons-material/package.json @@ -1,6 +1,6 @@ { "name": "@mui/icons-material", - "version": "6.0.0-alpha.5", + "version": "6.0.0-alpha.6", "private": false, "author": "MUI Team", "description": "Material Design icons distributed as SVG React components.", diff --git a/packages/mui-joy/package.json b/packages/mui-joy/package.json index 332936a0db35bb..bded89723aeb37 100644 --- a/packages/mui-joy/package.json +++ b/packages/mui-joy/package.json @@ -1,6 +1,6 @@ { "name": "@mui/joy", - "version": "5.0.0-beta.38", + "version": "5.0.0-beta.39", "private": false, "author": "MUI Team", "description": "Joy UI is an open-source React component library that implements MUI's own design principles. It's comprehensive and can be used in production out of the box.", diff --git a/packages/mui-lab/package.json b/packages/mui-lab/package.json index 942eaab0b90a70..b64ddbc54ab5e8 100644 --- a/packages/mui-lab/package.json +++ b/packages/mui-lab/package.json @@ -1,6 +1,6 @@ { "name": "@mui/lab", - "version": "6.0.0-alpha.5", + "version": "6.0.0-alpha.6", "private": false, "author": "MUI Team", "description": "Laboratory for new MUI modules.", diff --git a/packages/mui-material/package.json b/packages/mui-material/package.json index 8723dd29c5c230..65926678c488f2 100644 --- a/packages/mui-material/package.json +++ b/packages/mui-material/package.json @@ -1,6 +1,6 @@ { "name": "@mui/material", - "version": "6.0.0-alpha.5", + "version": "6.0.0-alpha.6", "private": false, "author": "MUI Team", "description": "Material UI is an open-source React component library that implements Google's Material Design. It's comprehensive and can be used in production out of the box.", diff --git a/packages/mui-styles/package.json b/packages/mui-styles/package.json index e383b46ffb119d..dc7f3bb68366e4 100644 --- a/packages/mui-styles/package.json +++ b/packages/mui-styles/package.json @@ -1,6 +1,6 @@ { "name": "@mui/styles", - "version": "6.0.0-alpha.5", + "version": "6.0.0-alpha.6", "private": false, "author": "MUI Team", "description": "MUI Styles - The legacy JSS-based styling solution of Material UI.", From 3efb7d129fea55ef71b33d3cf2f66becd265eb61 Mon Sep 17 00:00:00 2001 From: Diego Andai Date: Wed, 8 May 2024 14:34:53 -0400 Subject: [PATCH 08/25] [codemod][Divider] Only apply codemod if light prop is present (#42098) --- .../divider-props/divider-props.js | 103 ++++++++++-------- .../divider-props/test-cases/actual.js | 1 + .../divider-props/test-cases/expected.js | 1 + .../divider-props/test-cases/theme.actual.js | 8 ++ .../test-cases/theme.expected.js | 8 ++ 5 files changed, 76 insertions(+), 45 deletions(-) diff --git a/packages/mui-codemod/src/deprecations/divider-props/divider-props.js b/packages/mui-codemod/src/deprecations/divider-props/divider-props.js index d392b496ea46c0..6133aacd611d3f 100644 --- a/packages/mui-codemod/src/deprecations/divider-props/divider-props.js +++ b/packages/mui-codemod/src/deprecations/divider-props/divider-props.js @@ -12,37 +12,43 @@ export default function transformer(file, api, options) { const printOptions = options.printOptions; findComponentJSX(j, { root, componentName: 'Divider' }, (elementPath) => { - elementPath.node.openingElement.attributes = elementPath.node.openingElement.attributes.filter( - (attr) => { - if (attr.type === 'JSXAttribute' && attr.name.name === 'light') { - return false; - } - return true; - }, - ); + const hasLightProp = + elementPath.node.openingElement.attributes.findIndex( + (attr) => attr.type === 'JSXAttribute' && attr.name.name === 'light', + ) !== -1; - const sxIndex = elementPath.node.openingElement.attributes.findIndex( - (attr) => attr.type === 'JSXAttribute' && attr.name.name === 'sx', - ); - if (sxIndex === -1) { - appendAttribute(j, { - target: elementPath.node, - attributeName: 'sx', - expression: j.objectExpression([ - j.objectProperty(j.identifier('opacity'), j.literal('0.6')), - ]), - }); - } else { - const opacityIndex = elementPath.node.openingElement.attributes[ - sxIndex - ].value.expression.properties.findIndex((key) => key.key.name === 'opacity'); + if (hasLightProp) { + elementPath.node.openingElement.attributes = + elementPath.node.openingElement.attributes.filter((attr) => { + if (attr.type === 'JSXAttribute' && attr.name.name === 'light') { + return false; + } + return true; + }); - if (opacityIndex === -1) { - assignObject(j, { - target: elementPath.node.openingElement.attributes[sxIndex], - key: 'opacity', - expression: j.literal('0.6'), + const sxIndex = elementPath.node.openingElement.attributes.findIndex( + (attr) => attr.type === 'JSXAttribute' && attr.name.name === 'sx', + ); + if (sxIndex === -1) { + appendAttribute(j, { + target: elementPath.node, + attributeName: 'sx', + expression: j.objectExpression([ + j.objectProperty(j.identifier('opacity'), j.literal('0.6')), + ]), }); + } else { + const opacityIndex = elementPath.node.openingElement.attributes[ + sxIndex + ].value.expression.properties.findIndex((key) => key.key.name === 'opacity'); + + if (opacityIndex === -1) { + assignObject(j, { + target: elementPath.node.openingElement.attributes[sxIndex], + key: 'opacity', + expression: j.literal('0.6'), + }); + } } } }); @@ -52,28 +58,35 @@ export default function transformer(file, api, options) { (key) => key.key.name === 'defaultProps', ); - defaultPropsObject.value.properties = defaultPropsObject.value.properties.filter( - (prop) => !['light'].includes(prop?.key?.name), - ); - - const sxIndex = defaultPropsObject.value.properties.findIndex((prop) => prop.key.name === 'sx'); + const hasLightProp = + defaultPropsObject.value.properties.findIndex((prop) => prop.key.name === 'light') !== -1; - if (sxIndex === -1) { - defaultPropsObject.value.properties.push( - j.objectProperty( - j.identifier('sx'), - j.objectExpression([j.objectProperty(j.identifier('opacity'), j.literal('0.6'))]), - ), + if (hasLightProp) { + defaultPropsObject.value.properties = defaultPropsObject.value.properties.filter( + (prop) => !['light'].includes(prop?.key?.name), ); - } else { - const opacityIndex = defaultPropsObject.value.properties[sxIndex].value.properties.findIndex( - (key) => key.key.name === 'opacity', + + const sxIndex = defaultPropsObject.value.properties.findIndex( + (prop) => prop.key.name === 'sx', ); - if (opacityIndex === -1) { - defaultPropsObject.value.properties[sxIndex].value.properties.push( - j.objectProperty(j.identifier('opacity'), j.literal('0.6')), + if (sxIndex === -1) { + defaultPropsObject.value.properties.push( + j.objectProperty( + j.identifier('sx'), + j.objectExpression([j.objectProperty(j.identifier('opacity'), j.literal('0.6'))]), + ), ); + } else { + const opacityIndex = defaultPropsObject.value.properties[ + sxIndex + ].value.properties.findIndex((key) => key.key.name === 'opacity'); + + if (opacityIndex === -1) { + defaultPropsObject.value.properties[sxIndex].value.properties.push( + j.objectProperty(j.identifier('opacity'), j.literal('0.6')), + ); + } } } }); diff --git a/packages/mui-codemod/src/deprecations/divider-props/test-cases/actual.js b/packages/mui-codemod/src/deprecations/divider-props/test-cases/actual.js index 92db3a700a543d..4c04e5109f5532 100644 --- a/packages/mui-codemod/src/deprecations/divider-props/test-cases/actual.js +++ b/packages/mui-codemod/src/deprecations/divider-props/test-cases/actual.js @@ -9,3 +9,4 @@ import { Divider as MyDivider } from '@mui/material'; ; ; ; +; diff --git a/packages/mui-codemod/src/deprecations/divider-props/test-cases/expected.js b/packages/mui-codemod/src/deprecations/divider-props/test-cases/expected.js index 634419b56eca5f..b04a2284ada8d2 100644 --- a/packages/mui-codemod/src/deprecations/divider-props/test-cases/expected.js +++ b/packages/mui-codemod/src/deprecations/divider-props/test-cases/expected.js @@ -25,3 +25,4 @@ import { Divider as MyDivider } from '@mui/material'; bgcolor: 'black', opacity: "0.6" }} />; +; diff --git a/packages/mui-codemod/src/deprecations/divider-props/test-cases/theme.actual.js b/packages/mui-codemod/src/deprecations/divider-props/test-cases/theme.actual.js index aaa23a349a3035..f7c53332dc4bac 100644 --- a/packages/mui-codemod/src/deprecations/divider-props/test-cases/theme.actual.js +++ b/packages/mui-codemod/src/deprecations/divider-props/test-cases/theme.actual.js @@ -45,3 +45,11 @@ fn({ }, }, }); + +fn({ + MuiDivider: { + defaultProps: { + className: 'my-class', + }, + }, +}); diff --git a/packages/mui-codemod/src/deprecations/divider-props/test-cases/theme.expected.js b/packages/mui-codemod/src/deprecations/divider-props/test-cases/theme.expected.js index 454fa3139ffd9e..d5accf78bc0c35 100644 --- a/packages/mui-codemod/src/deprecations/divider-props/test-cases/theme.expected.js +++ b/packages/mui-codemod/src/deprecations/divider-props/test-cases/theme.expected.js @@ -52,3 +52,11 @@ fn({ }, }, }); + +fn({ + MuiDivider: { + defaultProps: { + className: 'my-class', + }, + }, +}); From 2f61ff7c98f25f34e048f14a727c7c66b405799e Mon Sep 17 00:00:00 2001 From: sai chand <60743144+sai6855@users.noreply.github.com> Date: Thu, 9 May 2024 01:17:21 +0530 Subject: [PATCH 09/25] [material-ui][CircularProgress] Deprecate composed classes (#42076) --- .../migrating-from-deprecated-apis.md | 40 ++++++ .../material-ui/api/circular-progress.json | 6 +- .../circular-progress/circular-progress.json | 6 +- packages/mui-codemod/README.md | 36 +++++ .../src/deprecations/all/deprecations-all.js | 2 + .../src/deprecations/all/postcss.config.js | 4 + .../circular-progress-classes.js | 127 ++++++++++++++++++ .../circular-progress-classes.test.js | 78 +++++++++++ .../circular-progress-classes/index.js | 1 + .../postcss-plugin.js | 33 +++++ .../postcss.config.js | 5 + .../test-cases/actual.css | 7 + .../test-cases/actual.js | 6 + .../test-cases/expected.css | 7 + .../test-cases/expected.js | 6 + .../circularProgressClasses.ts | 8 +- 16 files changed, 366 insertions(+), 6 deletions(-) create mode 100644 packages/mui-codemod/src/deprecations/circular-progress-classes/circular-progress-classes.js create mode 100644 packages/mui-codemod/src/deprecations/circular-progress-classes/circular-progress-classes.test.js create mode 100644 packages/mui-codemod/src/deprecations/circular-progress-classes/index.js create mode 100644 packages/mui-codemod/src/deprecations/circular-progress-classes/postcss-plugin.js create mode 100644 packages/mui-codemod/src/deprecations/circular-progress-classes/postcss.config.js create mode 100644 packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/actual.css create mode 100644 packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/actual.js create mode 100644 packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/expected.css create mode 100644 packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/expected.js diff --git a/docs/data/material/migration/migrating-from-deprecated-apis/migrating-from-deprecated-apis.md b/docs/data/material/migration/migrating-from-deprecated-apis/migrating-from-deprecated-apis.md index 912be73a58e753..400d650d4de0af 100644 --- a/docs/data/material/migration/migrating-from-deprecated-apis/migrating-from-deprecated-apis.md +++ b/docs/data/material/migration/migrating-from-deprecated-apis/migrating-from-deprecated-apis.md @@ -853,6 +853,46 @@ Here's how to migrate: ``` +## CircularProgress + +Use the [codemod](https://github.com/mui/material-ui/tree/HEAD/packages/mui-codemod#circular-progress-classes) below to migrate the code as described in the following sections: + +```bash +npx @mui/codemod@next deprecations/circular-progress-classes +``` + +### Composed CSS classes + +The CSS classes that composed the `circle` CSS class and `variant` prop values were removed. + +Here's how to migrate: + +```diff +- .MuiCircularProgress-circleDeterminate ++.MuiCircularProgress-determinate > .MuiCircularProgress-circle +- .MuiCircularProgress-circleIndeterminate ++.MuiCircularProgress-indeterminate > .MuiCircularProgress-circle +``` + +```diff + import { circularProgressClasses } from '@mui/material/CircularProgress'; + + MuiCircularProgress: { + styleOverrides: { + root: { +- [`& .${circularProgressClasses.circleDeterminate}`]: { ++ [`&.${circularProgressClasses.determinate} > .${circularProgressClasses.circle}`]: { + color: 'red', + }, +- [`& .${circularProgressClasses.circleIndeterminate}`]: { ++ [`&.${circularProgressClasses.indeterminate} > .${circularProgressClasses.circle}`]: { + color: 'red', + }, + }, + }, + }, +``` + ## Divider Use the [codemod](https://github.com/mui/material-ui/tree/HEAD/packages/mui-codemod#divider-props) below to migrate the code as described in the following sections: diff --git a/docs/pages/material-ui/api/circular-progress.json b/docs/pages/material-ui/api/circular-progress.json index f0c7cb6b50316f..88daab7531bad5 100644 --- a/docs/pages/material-ui/api/circular-progress.json +++ b/docs/pages/material-ui/api/circular-progress.json @@ -43,7 +43,8 @@ "key": "circleDeterminate", "className": "MuiCircularProgress-circleDeterminate", "description": "Styles applied to the `circle` svg path if `variant=\"determinate\"`.", - "isGlobal": false + "isGlobal": false, + "isDeprecated": true }, { "key": "circleDisableShrink", @@ -55,7 +56,8 @@ "key": "circleIndeterminate", "className": "MuiCircularProgress-circleIndeterminate", "description": "Styles applied to the `circle` svg path if `variant=\"indeterminate\"`.", - "isGlobal": false + "isGlobal": false, + "isDeprecated": true }, { "key": "colorPrimary", diff --git a/docs/translations/api-docs/circular-progress/circular-progress.json b/docs/translations/api-docs/circular-progress/circular-progress.json index 396bcdc6e441a5..1de949a50122e2 100644 --- a/docs/translations/api-docs/circular-progress/circular-progress.json +++ b/docs/translations/api-docs/circular-progress/circular-progress.json @@ -30,7 +30,8 @@ "circleDeterminate": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the circle svg path", - "conditions": "variant=\"determinate\"" + "conditions": "variant=\"determinate\"", + "deprecationInfo": "Combine the .MuiCircularProgress-circle and .MuiCircularProgress-determinate classes instead. See Migrating from deprecated APIs for more details." }, "circleDisableShrink": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", @@ -40,7 +41,8 @@ "circleIndeterminate": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the circle svg path", - "conditions": "variant=\"indeterminate\"" + "conditions": "variant=\"indeterminate\"", + "deprecationInfo": "Combine the .MuiCircularProgress-circle and .MuiCircularProgress-indeterminate classes instead. See Migrating from deprecated APIs for more details." }, "colorPrimary": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", diff --git a/packages/mui-codemod/README.md b/packages/mui-codemod/README.md index 604a054a6e8ac0..64538ac86296ea 100644 --- a/packages/mui-codemod/README.md +++ b/packages/mui-codemod/README.md @@ -845,6 +845,42 @@ CSS transforms: npx @mui/codemod@next deprecations/chip-classes ``` +#### `circular-progress-classes` + +JS transforms: + +```diff + import { circularProgressClasses } from '@mui/material/CircularProgress'; + + MuiCircularProgress: { + styleOverrides: { + root: { +- [`& .${circularProgressClasses.circleDeterminate}`]: { ++ [`&.${circularProgressClasses.determinate} > .${circularProgressClasses.circle}`]: { + color: 'red', + }, +- [`& .${circularProgressClasses.circleIndeterminate}`]: { ++ [`&.${circularProgressClasses.indeterminate} > .${circularProgressClasses.circle}`]: { + color: 'red', + }, + }, + }, + }, +``` + +CSS transforms: + +```diff +- .MuiCircularProgress-circleDeterminate ++.MuiCircularProgress-determinate > .MuiCircularProgress-circle +- .MuiCircularProgress-circleIndeterminate ++.MuiCircularProgress-indeterminate > .MuiCircularProgress-circle +``` + +```bash +npx @mui/codemod@next deprecations/circular-progress-classes +``` + #### `divider-props` ```diff diff --git a/packages/mui-codemod/src/deprecations/all/deprecations-all.js b/packages/mui-codemod/src/deprecations/all/deprecations-all.js index dc4f471e69ac48..073e06b9d10475 100644 --- a/packages/mui-codemod/src/deprecations/all/deprecations-all.js +++ b/packages/mui-codemod/src/deprecations/all/deprecations-all.js @@ -12,6 +12,7 @@ import transformToggleButtonGroupClasses from '../toggle-button-group-classes'; import transformStepLabelProps from '../step-label-props'; import transformBackdropProps from '../backdrop-props'; import transformStepConnectorClasses from '../step-connector-classes'; +import transformCircularProgressClasses from '../circular-progress-classes'; import transformSpeedDialProps from '../speed-dial-props'; /** @@ -33,6 +34,7 @@ export default function deprecationsAll(file, api, options) { file.source = transformStepLabelProps(file, api, options); file.source = transformBackdropProps(file, api, options); file.source = transformStepConnectorClasses(file, api, options); + file.source = transformCircularProgressClasses(file, api, options); file.source = transformSpeedDialProps(file, api, options); return file.source; diff --git a/packages/mui-codemod/src/deprecations/all/postcss.config.js b/packages/mui-codemod/src/deprecations/all/postcss.config.js index 8e72e2f8b9b462..6d6e4477e75161 100644 --- a/packages/mui-codemod/src/deprecations/all/postcss.config.js +++ b/packages/mui-codemod/src/deprecations/all/postcss.config.js @@ -12,6 +12,9 @@ const { plugin: stepConnectorClassesPlugin } = require('../step-connector-classe const { plugin: toggleButtonGroupClassesPlugin, } = require('../toggle-button-group-classes/postcss-plugin'); +const { + plugin: circularProgressClassesPlugin, +} = require('../circular-progress-classes/postcss-plugin'); module.exports = { plugins: [ @@ -20,6 +23,7 @@ module.exports = { buttonClassesPlugin, buttonGroupClassesPlugin, chipClassesPlugin, + circularProgressClassesPlugin, paginationItemClassesPlugin, stepConnectorClassesPlugin, toggleButtonGroupClassesPlugin, diff --git a/packages/mui-codemod/src/deprecations/circular-progress-classes/circular-progress-classes.js b/packages/mui-codemod/src/deprecations/circular-progress-classes/circular-progress-classes.js new file mode 100644 index 00000000000000..15d60cbfc338cb --- /dev/null +++ b/packages/mui-codemod/src/deprecations/circular-progress-classes/circular-progress-classes.js @@ -0,0 +1,127 @@ +import { classes } from './postcss-plugin'; + +/** + * @param {import('jscodeshift').FileInfo} file + * @param {import('jscodeshift').API} api + */ +export default function transformer(file, api, options) { + const j = api.jscodeshift; + const root = j(file.source); + const printOptions = options.printOptions; + classes.forEach(({ deprecatedClass, replacementSelector }) => { + const replacementSelectorPrefix = '&'; + root + .find(j.ImportDeclaration) + .filter((path) => path.node.source.value.match(/^@mui\/material\/CircularProgress$/)) + .forEach((path) => { + path.node.specifiers.forEach((specifier) => { + if ( + specifier.type === 'ImportSpecifier' && + specifier.imported.name === 'circularProgressClasses' + ) { + const deprecatedAtomicClass = deprecatedClass.replace( + `${deprecatedClass.split('-')[0]}-`, + '', + ); + root + .find(j.MemberExpression, { + object: { name: specifier.local.name }, + property: { name: deprecatedAtomicClass }, + }) + .forEach((memberExpression) => { + const parent = memberExpression.parentPath.parentPath.value; + if (parent.type === j.TemplateLiteral.name) { + const memberExpressionIndex = parent.expressions.findIndex( + (expression) => expression === memberExpression.value, + ); + const precedingTemplateElement = parent.quasis[memberExpressionIndex]; + const atomicClasses = replacementSelector + .replaceAll('MuiCircularProgress-', '') + .replaceAll(replacementSelectorPrefix, '') + .replaceAll(' > ', '') + .split('.') + .filter(Boolean); + + if ( + precedingTemplateElement.value.raw.endsWith( + deprecatedClass.startsWith(' ') + ? `${replacementSelectorPrefix} .` + : `${replacementSelectorPrefix}.`, + ) + ) { + const atomicClassesArgs = [ + memberExpressionIndex, + 1, + ...atomicClasses.map((atomicClass) => + j.memberExpression( + memberExpression.value.object, + j.identifier(atomicClass), + ), + ), + ]; + parent.expressions.splice(...atomicClassesArgs); + + if (replacementSelector.includes(' > ')) { + const quasisArgs = [ + memberExpressionIndex, + 1, + j.templateElement( + { + raw: precedingTemplateElement.value.raw.replace(' ', ''), + cooked: precedingTemplateElement.value.cooked.replace(' ', ''), + }, + false, + ), + j.templateElement({ raw: ' > .', cooked: ' > .' }, false), + ]; + + if (atomicClasses.length === 3) { + quasisArgs.splice( + 3, + 0, + j.templateElement({ raw: '.', cooked: '.' }, false), + ); + } + + parent.quasis.splice(...quasisArgs); + } else { + parent.quasis.splice( + memberExpressionIndex, + 1, + j.templateElement( + { + raw: precedingTemplateElement.value.raw, + cooked: precedingTemplateElement.value.cooked, + }, + false, + ), + + j.templateElement({ raw: '.', cooked: '.' }, false), + ); + } + } + } + }); + } + }); + }); + + const selectorRegex = new RegExp(`${replacementSelectorPrefix}${deprecatedClass}$`); + root + .find( + j.Literal, + (literal) => typeof literal.value === 'string' && literal.value.match(selectorRegex), + ) + .forEach((path) => { + path.replace( + j.literal( + path.value.value.replace( + selectorRegex, + `${replacementSelectorPrefix}${replacementSelector}`, + ), + ), + ); + }); + }); + return root.toSource(printOptions); +} diff --git a/packages/mui-codemod/src/deprecations/circular-progress-classes/circular-progress-classes.test.js b/packages/mui-codemod/src/deprecations/circular-progress-classes/circular-progress-classes.test.js new file mode 100644 index 00000000000000..92711388f3428c --- /dev/null +++ b/packages/mui-codemod/src/deprecations/circular-progress-classes/circular-progress-classes.test.js @@ -0,0 +1,78 @@ +import path from 'path'; +import { expect } from 'chai'; +import postcss from 'postcss'; +import { jscodeshift } from '../../../testUtils'; +import jsTransform from './circular-progress-classes'; +import { plugin as postcssPlugin } from './postcss-plugin'; +import readFile from '../../util/readFile'; + +function read(fileName) { + return readFile(path.join(__dirname, fileName)); +} + +const postcssProcessor = postcss([postcssPlugin]); + +describe('@mui/codemod', () => { + describe('deprecations', () => { + describe('circular-progress-classes', () => { + describe('js-transform', () => { + it('transforms props as needed', () => { + const actual = jsTransform( + { source: read('./test-cases/actual.js') }, + { jscodeshift }, + { printOptions: { quote: 'double', trailingComma: true } }, + ); + + const expected = read('./test-cases/expected.js'); + expect(actual).to.equal(expected, 'The transformed version should be correct'); + }); + + it('should be idempotent', () => { + const actual = jsTransform( + { source: read('./test-cases/expected.js') }, + { jscodeshift }, + {}, + ); + + const expected = read('./test-cases/expected.js'); + expect(actual).to.equal(expected, 'The transformed version should be correct'); + }); + }); + + describe('css-transform', () => { + it('transforms classes as needed', async () => { + const actual = await postcssProcessor.process(read('./test-cases/actual.css'), { + from: undefined, + }); + + const expected = read('./test-cases/expected.css'); + expect(actual.css).to.equal(expected, 'The transformed version should be correct'); + }); + + it('should be idempotent', async () => { + const actual = await postcssProcessor.process(read('./test-cases/expected.css'), { + from: undefined, + }); + + const expected = read('./test-cases/expected.css'); + expect(actual.css).to.equal(expected, 'The transformed version should be correct'); + }); + }); + + describe('test-cases', () => { + it('should not be the same', () => { + const actualJS = read('./test-cases/actual.js'); + const expectedJS = read('./test-cases/expected.js'); + expect(actualJS).not.to.equal(expectedJS, 'The actual and expected should be different'); + + const actualCSS = read('./test-cases/actual.css'); + const expectedCSS = read('./test-cases/expected.css'); + expect(actualCSS).not.to.equal( + expectedCSS, + 'The actual and expected should be different', + ); + }); + }); + }); + }); +}); diff --git a/packages/mui-codemod/src/deprecations/circular-progress-classes/index.js b/packages/mui-codemod/src/deprecations/circular-progress-classes/index.js new file mode 100644 index 00000000000000..f962f9f367a7f4 --- /dev/null +++ b/packages/mui-codemod/src/deprecations/circular-progress-classes/index.js @@ -0,0 +1 @@ +export { default } from './circular-progress-classes'; diff --git a/packages/mui-codemod/src/deprecations/circular-progress-classes/postcss-plugin.js b/packages/mui-codemod/src/deprecations/circular-progress-classes/postcss-plugin.js new file mode 100644 index 00000000000000..1b2e5f882aaf8c --- /dev/null +++ b/packages/mui-codemod/src/deprecations/circular-progress-classes/postcss-plugin.js @@ -0,0 +1,33 @@ +const classes = [ + { + deprecatedClass: ' .MuiCircularProgress-circleDeterminate', + replacementSelector: '.MuiCircularProgress-determinate > .MuiCircularProgress-circle', + }, + { + deprecatedClass: ' .MuiCircularProgress-circleIndeterminate', + replacementSelector: '.MuiCircularProgress-indeterminate > .MuiCircularProgress-circle', + }, +]; + +const plugin = () => { + return { + postcssPlugin: `Replace deprecated CircularProgress classes with new classes`, + Rule(rule) { + const { selector } = rule; + + classes.forEach(({ deprecatedClass, replacementSelector }) => { + const selectorRegex = new RegExp(`${deprecatedClass}$`); + + if (selector.match(selectorRegex)) { + rule.selector = selector.replace(selectorRegex, replacementSelector); + } + }); + }, + }; +}; +plugin.postcss = true; + +module.exports = { + plugin, + classes, +}; diff --git a/packages/mui-codemod/src/deprecations/circular-progress-classes/postcss.config.js b/packages/mui-codemod/src/deprecations/circular-progress-classes/postcss.config.js new file mode 100644 index 00000000000000..23bebc1125be6e --- /dev/null +++ b/packages/mui-codemod/src/deprecations/circular-progress-classes/postcss.config.js @@ -0,0 +1,5 @@ +const { plugin } = require('./postcss-plugin'); + +module.exports = { + plugins: [plugin], +}; diff --git a/packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/actual.css b/packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/actual.css new file mode 100644 index 00000000000000..23b0541e10646a --- /dev/null +++ b/packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/actual.css @@ -0,0 +1,7 @@ +.MuiCircularProgress-root .MuiCircularProgress-circleDeterminate { + color: red; +} + +.MuiCircularProgress-root .MuiCircularProgress-circleIndeterminate { + color: red; +} diff --git a/packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/actual.js b/packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/actual.js new file mode 100644 index 00000000000000..c9eb397e640c13 --- /dev/null +++ b/packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/actual.js @@ -0,0 +1,6 @@ +import { circularProgressClasses } from '@mui/material/CircularProgress'; + +('& .MuiCircularProgress-circleDeterminate'); +('& .MuiCircularProgress-circleIndeterminate'); +`& .${circularProgressClasses.circleDeterminate}`; +`& .${circularProgressClasses.circleIndeterminate}`; diff --git a/packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/expected.css b/packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/expected.css new file mode 100644 index 00000000000000..45fe6624b3d9ca --- /dev/null +++ b/packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/expected.css @@ -0,0 +1,7 @@ +.MuiCircularProgress-root.MuiCircularProgress-determinate > .MuiCircularProgress-circle { + color: red; +} + +.MuiCircularProgress-root.MuiCircularProgress-indeterminate > .MuiCircularProgress-circle { + color: red; +} diff --git a/packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/expected.js b/packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/expected.js new file mode 100644 index 00000000000000..e9cf3628eda855 --- /dev/null +++ b/packages/mui-codemod/src/deprecations/circular-progress-classes/test-cases/expected.js @@ -0,0 +1,6 @@ +import { circularProgressClasses } from '@mui/material/CircularProgress'; + +("&.MuiCircularProgress-determinate > .MuiCircularProgress-circle"); +("&.MuiCircularProgress-indeterminate > .MuiCircularProgress-circle"); +`&.${circularProgressClasses.determinate} > .${circularProgressClasses.circle}`; +`&.${circularProgressClasses.indeterminate} > .${circularProgressClasses.circle}`; diff --git a/packages/mui-material/src/CircularProgress/circularProgressClasses.ts b/packages/mui-material/src/CircularProgress/circularProgressClasses.ts index 4b8517bb34cad9..589f93afd62023 100644 --- a/packages/mui-material/src/CircularProgress/circularProgressClasses.ts +++ b/packages/mui-material/src/CircularProgress/circularProgressClasses.ts @@ -16,9 +16,13 @@ export interface CircularProgressClasses { svg: string; /** Styles applied to the `circle` svg path. */ circle: string; - /** Styles applied to the `circle` svg path if `variant="determinate"`. */ + /** Styles applied to the `circle` svg path if `variant="determinate"`. + * @deprecated Combine the [.MuiCircularProgress-circle](/material-ui/api/circular-progress/#circular-progress-classes-circle) and [.MuiCircularProgress-determinate](/material-ui/api/circular-progress/#circular-progress-classes-determinate) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. + */ circleDeterminate: string; - /** Styles applied to the `circle` svg path if `variant="indeterminate"`. */ + /** Styles applied to the `circle` svg path if `variant="indeterminate"`. + * @deprecated Combine the [.MuiCircularProgress-circle](/material-ui/api/circular-progress/#circular-progress-classes-circle) and [.MuiCircularProgress-indeterminate](/material-ui/api/circular-progress/#circular-progress-classes-indeterminate) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. + */ circleIndeterminate: string; /** Styles applied to the `circle` svg path if `disableShrink={true}`. */ circleDisableShrink: string; From d8a5f53ac4cac5a683a1ab25a37aaf75b000aad8 Mon Sep 17 00:00:00 2001 From: Lucas Hilgert <77863078+lhilgert9@users.noreply.github.com> Date: Wed, 8 May 2024 21:51:13 +0200 Subject: [PATCH 10/25] [material-ui][Autocomplete] deprecate `*Component` and `*Props` for v6 (#41875) --- .../components/autocomplete/GitHubLabel.js | 4 +- .../components/autocomplete/GitHubLabel.tsx | 4 +- .../components/autocomplete/Virtualize.js | 6 +- .../components/autocomplete/Virtualize.tsx | 6 +- .../autocomplete/Virtualize.tsx.preview | 6 +- .../migrating-from-deprecated-apis.md | 40 ++++++ docs/pages/material-ui/api/autocomplete.json | 81 ++++++++---- .../api-docs/autocomplete/autocomplete.json | 18 +-- packages/mui-codemod/README.md | 46 +++++++ .../src/deprecations/all/deprecations-all.js | 2 + .../autocomplete-props/autocomplete-props.js | 49 +++++++ .../autocomplete-props.test.js | 53 ++++++++ .../deprecations/autocomplete-props/index.js | 1 + .../autocomplete-props/test-cases/actual.js | 37 ++++++ .../autocomplete-props/test-cases/expected.js | 44 +++++++ .../test-cases/theme.actual.js | 26 ++++ .../test-cases/theme.expected.js | 34 +++++ .../src/Autocomplete/Autocomplete.d.ts | 88 +++++++++++-- .../src/Autocomplete/Autocomplete.js | 123 +++++++++++------- .../src/Autocomplete/Autocomplete.test.js | 50 +++++-- 20 files changed, 608 insertions(+), 110 deletions(-) create mode 100644 packages/mui-codemod/src/deprecations/autocomplete-props/autocomplete-props.js create mode 100644 packages/mui-codemod/src/deprecations/autocomplete-props/autocomplete-props.test.js create mode 100644 packages/mui-codemod/src/deprecations/autocomplete-props/index.js create mode 100644 packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/actual.js create mode 100644 packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/expected.js create mode 100644 packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/theme.actual.js create mode 100644 packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/theme.expected.js diff --git a/docs/data/material/components/autocomplete/GitHubLabel.js b/docs/data/material/components/autocomplete/GitHubLabel.js index 22396f95ee43b1..404687f7112a04 100644 --- a/docs/data/material/components/autocomplete/GitHubLabel.js +++ b/docs/data/material/components/autocomplete/GitHubLabel.js @@ -192,7 +192,6 @@ export default function GitHubLabel() { setPendingValue(newValue); }} disableCloseOnSelect - PopperComponent={PopperComponent} renderTags={() => null} noOptionsText="No labels" renderOption={(props, option, { selected }) => ( @@ -255,6 +254,9 @@ export default function GitHubLabel() { placeholder="Filter labels" /> )} + slots={{ + popper: PopperComponent, + }} /> diff --git a/docs/data/material/components/autocomplete/GitHubLabel.tsx b/docs/data/material/components/autocomplete/GitHubLabel.tsx index 1b93212d7a0cb8..ec4c222d4abc71 100644 --- a/docs/data/material/components/autocomplete/GitHubLabel.tsx +++ b/docs/data/material/components/autocomplete/GitHubLabel.tsx @@ -198,7 +198,6 @@ export default function GitHubLabel() { setPendingValue(newValue); }} disableCloseOnSelect - PopperComponent={PopperComponent} renderTags={() => null} noOptionsText="No labels" renderOption={(props, option, { selected }) => ( @@ -261,6 +260,9 @@ export default function GitHubLabel() { placeholder="Filter labels" /> )} + slots={{ + popper: PopperComponent, + }} /> diff --git a/docs/data/material/components/autocomplete/Virtualize.js b/docs/data/material/components/autocomplete/Virtualize.js index 846554c8c6d9db..ba0162eda8ef04 100644 --- a/docs/data/material/components/autocomplete/Virtualize.js +++ b/docs/data/material/components/autocomplete/Virtualize.js @@ -140,13 +140,15 @@ export default function Virtualize() { option[0].toUpperCase()} renderInput={(params) => } renderOption={(props, option, state) => [props, option, state.index]} renderGroup={(params) => params} + slots={{ + popper: StyledPopper, + listbox: ListboxComponent, + }} /> ); } diff --git a/docs/data/material/components/autocomplete/Virtualize.tsx b/docs/data/material/components/autocomplete/Virtualize.tsx index feb30004e6fcce..9cbc173d404c7f 100644 --- a/docs/data/material/components/autocomplete/Virtualize.tsx +++ b/docs/data/material/components/autocomplete/Virtualize.tsx @@ -140,8 +140,6 @@ export default function Virtualize() { option[0].toUpperCase()} renderInput={(params) => } @@ -149,6 +147,10 @@ export default function Virtualize() { [props, option, state.index] as React.ReactNode } renderGroup={(params) => params as any} + slots={{ + popper: StyledPopper, + listbox: ListboxComponent, + }} /> ); } diff --git a/docs/data/material/components/autocomplete/Virtualize.tsx.preview b/docs/data/material/components/autocomplete/Virtualize.tsx.preview index 19ab94ae3d5176..d8b7f0e136c084 100644 --- a/docs/data/material/components/autocomplete/Virtualize.tsx.preview +++ b/docs/data/material/components/autocomplete/Virtualize.tsx.preview @@ -1,8 +1,6 @@ option[0].toUpperCase()} renderInput={(params) => } @@ -10,4 +8,8 @@ [props, option, state.index] as React.ReactNode } renderGroup={(params) => params as any} + slots={{ + popper: StyledPopper, + listbox: ListboxComponent, + }} /> \ No newline at end of file diff --git a/docs/data/material/migration/migrating-from-deprecated-apis/migrating-from-deprecated-apis.md b/docs/data/material/migration/migrating-from-deprecated-apis/migrating-from-deprecated-apis.md index 400d650d4de0af..0e34e999e9c5ee 100644 --- a/docs/data/material/migration/migrating-from-deprecated-apis/migrating-from-deprecated-apis.md +++ b/docs/data/material/migration/migrating-from-deprecated-apis/migrating-from-deprecated-apis.md @@ -227,6 +227,46 @@ Here's how to migrate: }, ``` +## Autocomplete + +Use the [codemod](https://github.com/mui/material-ui/tree/HEAD/packages/mui-codemod#autocomplete-props) below to migrate the code as described in the following sections: + +```bash +npx @mui/codemod@next deprecations/autocomplete-props +``` + +### \*Component props + +All of the Autocomplete's slot (`*Component`) props were deprecated in favor of equivalent `slots` entries: + +```diff + +``` + +### \*Props props + +All of the Autocomplete's slot props (`*Props`) props were deprecated in favor of equivalent `slotProps` entries: + +```diff + +``` + ## Avatar Use the [codemod](https://github.com/mui/material-ui/tree/HEAD/packages/mui-codemod#avatar-props) below to migrate the code as described in the following sections: diff --git a/docs/pages/material-ui/api/autocomplete.json b/docs/pages/material-ui/api/autocomplete.json index e0e4d60b0a7e5a..fcb754234fd1ba 100644 --- a/docs/pages/material-ui/api/autocomplete.json +++ b/docs/pages/material-ui/api/autocomplete.json @@ -16,7 +16,11 @@ }, "default": "false" }, - "ChipProps": { "type": { "name": "object" } }, + "ChipProps": { + "type": { "name": "object" }, + "deprecated": true, + "deprecationInfo": "Use slotProps.chip instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." + }, "classes": { "type": { "name": "object" }, "additionalInfo": { "cssApi": true } }, "clearIcon": { "type": { "name": "node" }, "default": "" }, "clearOnBlur": { "type": { "name": "bool" }, "default": "!props.freeSolo" }, @@ -92,8 +96,17 @@ } }, "limitTags": { "type": { "name": "custom", "description": "integer" }, "default": "-1" }, - "ListboxComponent": { "type": { "name": "elementType" }, "default": "'ul'" }, - "ListboxProps": { "type": { "name": "object" } }, + "ListboxComponent": { + "type": { "name": "elementType" }, + "default": "'ul'", + "deprecated": true, + "deprecationInfo": "Use slots.listbox instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." + }, + "ListboxProps": { + "type": { "name": "object" }, + "deprecated": true, + "deprecationInfo": "Use slotProps.listbox instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." + }, "loading": { "type": { "name": "bool" }, "default": "false" }, "loadingText": { "type": { "name": "node" }, "default": "'Loading…'" }, "multiple": { "type": { "name": "bool" }, "default": "false" }, @@ -136,8 +149,18 @@ "open": { "type": { "name": "bool" } }, "openOnFocus": { "type": { "name": "bool" }, "default": "false" }, "openText": { "type": { "name": "string" }, "default": "'Open'" }, - "PaperComponent": { "type": { "name": "elementType" }, "default": "Paper" }, - "PopperComponent": { "type": { "name": "elementType" }, "default": "Popper" }, + "PaperComponent": { + "type": { "name": "elementType" }, + "default": "Paper", + "deprecated": true, + "deprecationInfo": "Use slots.paper instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." + }, + "PopperComponent": { + "type": { "name": "elementType" }, + "default": "Popper", + "deprecated": true, + "deprecationInfo": "Use slots.popper instead. This prop will be removed in v7. See Migrating from deprecated APIs for more details." + }, "popupIcon": { "type": { "name": "node" }, "default": "" }, "readOnly": { "type": { "name": "bool" }, "default": "false" }, "renderGroup": { @@ -172,7 +195,14 @@ "slotProps": { "type": { "name": "shape", - "description": "{ clearIndicator?: object, paper?: object, popper?: object, popupIndicator?: object }" + "description": "{ chip?: func
| object, clearIndicator?: func
| object, listbox?: func
| object, paper?: func
| object, popper?: func
| object, popupIndicator?: func
| object }" + }, + "default": "{}" + }, + "slots": { + "type": { + "name": "shape", + "description": "{ listbox?: elementType, paper?: elementType, popper?: elementType }" }, "default": "{}" }, @@ -190,6 +220,26 @@ "import Autocomplete from '@mui/material/Autocomplete';", "import { Autocomplete } from '@mui/material';" ], + "slots": [ + { + "name": "listbox", + "description": "The component used to render the listbox.", + "default": "'ul'", + "class": "MuiAutocomplete-listbox" + }, + { + "name": "paper", + "description": "The component used to render the body of the popup.", + "default": "Paper", + "class": "MuiAutocomplete-paper" + }, + { + "name": "popper", + "description": "The component used to position the popup.", + "default": "Popper", + "class": "MuiAutocomplete-popper" + } + ], "classes": [ { "key": "clearIndicator", @@ -269,12 +319,6 @@ "description": "Styles applied to the Input element.", "isGlobal": false }, - { - "key": "listbox", - "className": "MuiAutocomplete-listbox", - "description": "Styles applied to the listbox component.", - "isGlobal": false - }, { "key": "loading", "className": "MuiAutocomplete-loading", @@ -293,18 +337,6 @@ "description": "Styles applied to the option elements.", "isGlobal": false }, - { - "key": "paper", - "className": "MuiAutocomplete-paper", - "description": "Styles applied to the Paper component.", - "isGlobal": false - }, - { - "key": "popper", - "className": "MuiAutocomplete-popper", - "description": "Styles applied to the popper element.", - "isGlobal": false - }, { "key": "popperDisablePortal", "className": "MuiAutocomplete-popperDisablePortal", @@ -351,7 +383,6 @@ "spread": true, "themeDefaultProps": true, "muiName": "MuiAutocomplete", - "forwardsRefTo": "HTMLDivElement", "filename": "/packages/mui-material/src/Autocomplete/Autocomplete.js", "inheritance": null, "demos": "", diff --git a/docs/translations/api-docs/autocomplete/autocomplete.json b/docs/translations/api-docs/autocomplete/autocomplete.json index b257a40f8d3e01..9eaf631c6855cc 100644 --- a/docs/translations/api-docs/autocomplete/autocomplete.json +++ b/docs/translations/api-docs/autocomplete/autocomplete.json @@ -189,6 +189,7 @@ }, "size": { "description": "The size of the component." }, "slotProps": { "description": "The props used for each slot inside." }, + "slots": { "description": "The components used for each slot inside." }, "sx": { "description": "The system prop that allows defining system overrides as well as additional CSS styles." }, @@ -245,10 +246,6 @@ "description": "Styles applied to {{nodeName}}.", "nodeName": "the Input element" }, - "listbox": { - "description": "Styles applied to {{nodeName}}.", - "nodeName": "the listbox component" - }, "loading": { "description": "Styles applied to {{nodeName}}.", "nodeName": "the loading wrapper" @@ -261,14 +258,6 @@ "description": "Styles applied to {{nodeName}}.", "nodeName": "the option elements" }, - "paper": { - "description": "Styles applied to {{nodeName}}.", - "nodeName": "the Paper component" - }, - "popper": { - "description": "Styles applied to {{nodeName}}.", - "nodeName": "the popper element" - }, "popperDisablePortal": { "description": "Styles applied to {{nodeName}} if {{conditions}}.", "nodeName": "the popper element", @@ -299,5 +288,10 @@ "nodeName": "the tag elements", "conditions": "for example the chips if size=\"small\"" } + }, + "slotDescriptions": { + "listbox": "The component used to render the listbox.", + "paper": "The component used to render the body of the popup.", + "popper": "The component used to position the popup." } } diff --git a/packages/mui-codemod/README.md b/packages/mui-codemod/README.md index 64538ac86296ea..20cda885755eed 100644 --- a/packages/mui-codemod/README.md +++ b/packages/mui-codemod/README.md @@ -259,6 +259,52 @@ npx @mui/codemod@next deprecations/alert-classes npx @mui/codemod@next deprecations/alert-props ``` +#### `autocomplete-props` + +```diff + +``` + +```diff + MuiAutocomplete: { + defaultProps: { +- ChipProps: { height: 10 }, +- PaperComponent: CustomPaper, +- PopperComponent: CustomPopper, +- ListboxComponent: CustomListbox, +- ListboxProps: { height: 12 }, ++ slots: { ++ paper: CustomPaper, ++ popper: CustomPopper, ++ listbox: CustomListbox, ++ }, ++ slotProps: { ++ chip: { height: 10 }, ++ listbox: { height: 12 }, ++ }, + }, + }, +``` + +```bash +npx @mui/codemod@next deprecations/autocomplete-props +``` + #### `avatar-props` ```diff diff --git a/packages/mui-codemod/src/deprecations/all/deprecations-all.js b/packages/mui-codemod/src/deprecations/all/deprecations-all.js index 073e06b9d10475..dc93b6af30b7fe 100644 --- a/packages/mui-codemod/src/deprecations/all/deprecations-all.js +++ b/packages/mui-codemod/src/deprecations/all/deprecations-all.js @@ -1,4 +1,5 @@ import transformAccordionProps from '../accordion-props'; +import transformAutocompleteProps from '../autocomplete-props'; import transformFormControlLabelProps from '../form-control-label-props'; import transformAvatarProps from '../avatar-props'; import transformDividerProps from '../divider-props'; @@ -21,6 +22,7 @@ import transformSpeedDialProps from '../speed-dial-props'; */ export default function deprecationsAll(file, api, options) { file.source = transformAccordionProps(file, api, options); + file.source = transformAutocompleteProps(file, api, options); file.source = transformFormControlLabelProps(file, api, options); file.source = transformAvatarProps(file, api, options); file.source = transformDividerProps(file, api, options); diff --git a/packages/mui-codemod/src/deprecations/autocomplete-props/autocomplete-props.js b/packages/mui-codemod/src/deprecations/autocomplete-props/autocomplete-props.js new file mode 100644 index 00000000000000..3b5204f0bd642d --- /dev/null +++ b/packages/mui-codemod/src/deprecations/autocomplete-props/autocomplete-props.js @@ -0,0 +1,49 @@ +import movePropIntoSlots from '../utils/movePropIntoSlots'; +import movePropIntoSlotProps from '../utils/movePropIntoSlotProps'; + +/** + * @param {import('jscodeshift').FileInfo} file + * @param {import('jscodeshift').API} api + */ +export default function transformer(file, api, options) { + const j = api.jscodeshift; + const root = j(file.source); + const printOptions = options.printOptions; + + movePropIntoSlots(j, { + root, + componentName: 'Autocomplete', + propName: 'PaperComponent', + slotName: 'paper', + }); + + movePropIntoSlots(j, { + root, + componentName: 'Autocomplete', + propName: 'PopperComponent', + slotName: 'popper', + }); + + movePropIntoSlots(j, { + root, + componentName: 'Autocomplete', + propName: 'ListboxComponent', + slotName: 'listbox', + }); + + movePropIntoSlotProps(j, { + root, + componentName: 'Autocomplete', + propName: 'ListboxProps', + slotName: 'listbox', + }); + + movePropIntoSlotProps(j, { + root, + componentName: 'Autocomplete', + propName: 'ChipProps', + slotName: 'chip', + }); + + return root.toSource(printOptions); +} diff --git a/packages/mui-codemod/src/deprecations/autocomplete-props/autocomplete-props.test.js b/packages/mui-codemod/src/deprecations/autocomplete-props/autocomplete-props.test.js new file mode 100644 index 00000000000000..e5909cad32dab3 --- /dev/null +++ b/packages/mui-codemod/src/deprecations/autocomplete-props/autocomplete-props.test.js @@ -0,0 +1,53 @@ +import path from 'path'; +import { expect } from 'chai'; +import { jscodeshift } from '../../../testUtils'; +import transform from './autocomplete-props'; +import readFile from '../../util/readFile'; + +function read(fileName) { + return readFile(path.join(__dirname, fileName)); +} + +describe('@mui/codemod', () => { + describe('deprecations', () => { + describe('autocomplete-props', () => { + it('transforms props as needed', () => { + const actual = transform({ source: read('./test-cases/actual.js') }, { jscodeshift }, {}); + + const expected = read('./test-cases/expected.js'); + expect(actual).to.equal(expected, 'The transformed version should be correct'); + }); + + it('should be idempotent', () => { + const actual = transform({ source: read('./test-cases/expected.js') }, { jscodeshift }, {}); + + const expected = read('./test-cases/expected.js'); + expect(actual).to.equal(expected, 'The transformed version should be correct'); + }); + }); + + describe('[theme] autocomplete-props', () => { + it('transforms props as needed', () => { + const actual = transform( + { source: read('./test-cases/theme.actual.js') }, + { jscodeshift }, + {}, + ); + + const expected = read('./test-cases/theme.expected.js'); + expect(actual).to.equal(expected, 'The transformed version should be correct'); + }); + + it('should be idempotent', () => { + const actual = transform( + { source: read('./test-cases/theme.expected.js') }, + { jscodeshift }, + {}, + ); + + const expected = read('./test-cases/theme.expected.js'); + expect(actual).to.equal(expected, 'The transformed version should be correct'); + }); + }); + }); +}); diff --git a/packages/mui-codemod/src/deprecations/autocomplete-props/index.js b/packages/mui-codemod/src/deprecations/autocomplete-props/index.js new file mode 100644 index 00000000000000..b2b9a74aa9c035 --- /dev/null +++ b/packages/mui-codemod/src/deprecations/autocomplete-props/index.js @@ -0,0 +1 @@ +export { default } from './autocomplete-props'; diff --git a/packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/actual.js b/packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/actual.js new file mode 100644 index 00000000000000..8003251b598cf3 --- /dev/null +++ b/packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/actual.js @@ -0,0 +1,37 @@ +import Autocomplete from '@mui/material/Autocomplete'; +import {Autocomplete as MyAutocomplete} from '@mui/material'; + +; + +; + +; + + diff --git a/packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/expected.js b/packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/expected.js new file mode 100644 index 00000000000000..f816b74b646c81 --- /dev/null +++ b/packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/expected.js @@ -0,0 +1,44 @@ +import Autocomplete from '@mui/material/Autocomplete'; +import {Autocomplete as MyAutocomplete} from '@mui/material'; + +; + +; + +; + + diff --git a/packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/theme.actual.js b/packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/theme.actual.js new file mode 100644 index 00000000000000..0bc3ca5dc4d4bf --- /dev/null +++ b/packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/theme.actual.js @@ -0,0 +1,26 @@ +fn({ + MuiAutocomplete: { + defaultProps: { + ChipProps: { height: 10 }, + PaperComponent: CustomPaper, + PopperComponent: CustomPopper, + ListboxComponent: CustomListbox, + ListboxProps: { height: 12 }, + }, + }, +}); + +fn({ + MuiAutocomplete: { + defaultProps: { + ChipProps: { height: 10 }, + PaperComponent: CustomPaper, + PopperComponent: CustomPopper, + ListboxComponent: CustomListbox, + ListboxProps: { height: 12 }, + slotProps: { + popupIndicator: { width: 20 } + }, + }, + }, +}); diff --git a/packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/theme.expected.js b/packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/theme.expected.js new file mode 100644 index 00000000000000..bc7b33f0055781 --- /dev/null +++ b/packages/mui-codemod/src/deprecations/autocomplete-props/test-cases/theme.expected.js @@ -0,0 +1,34 @@ +fn({ + MuiAutocomplete: { + defaultProps: { + slots: { + paper: CustomPaper, + popper: CustomPopper, + listbox: CustomListbox + }, + + slotProps: { + listbox: { height: 12 }, + chip: { height: 10 } + } + }, + }, +}); + +fn({ + MuiAutocomplete: { + defaultProps: { + slotProps: { + popupIndicator: { width: 20 }, + listbox: { height: 12 }, + chip: { height: 10 } + }, + + slots: { + paper: CustomPaper, + popper: CustomPopper, + listbox: CustomListbox + } + }, + }, +}); diff --git a/packages/mui-material/src/Autocomplete/Autocomplete.d.ts b/packages/mui-material/src/Autocomplete/Autocomplete.d.ts index bc93447fab6e13..70772d58b3756e 100644 --- a/packages/mui-material/src/Autocomplete/Autocomplete.d.ts +++ b/packages/mui-material/src/Autocomplete/Autocomplete.d.ts @@ -17,6 +17,7 @@ import { ChipProps, ChipTypeMap } from '@mui/material/Chip'; import { PaperProps } from '@mui/material/Paper'; import { PopperProps } from '@mui/material/Popper'; import { AutocompleteClasses } from './autocompleteClasses'; +import { CreateSlotsAndSlotProps, SlotProps } from '../utils/types'; export { AutocompleteChangeDetails, @@ -84,6 +85,75 @@ export interface AutocompleteRenderInputParams { export interface AutocompletePropsSizeOverrides {} +export interface AutocompleteSlots { + /** + * The component used to render the listbox. + * @default 'ul' + */ + listbox?: React.JSXElementConstructor>; + /** + * The component used to render the body of the popup. + * @default Paper + */ + paper?: React.JSXElementConstructor; + /** + * The component used to position the popup. + * @default Popper + */ + popper?: React.JSXElementConstructor; +} + +export type AutocompleteSlotsAndSlotProps< + Value, + Multiple extends boolean | undefined, + DisableClearable extends boolean | undefined, + FreeSolo extends boolean | undefined, + ChipComponent extends React.ElementType = ChipTypeMap['defaultComponent'], +> = CreateSlotsAndSlotProps< + AutocompleteSlots, + { + chip: SlotProps< + React.ElementType>>, + {}, + AutocompleteOwnerState + >; + clearIndicator: SlotProps< + React.ElementType>, + {}, + AutocompleteOwnerState + >; + /** + * Props applied to the Listbox element. + */ + listbox: SlotProps< + React.ElementType< + ReturnType['getListboxProps']> & { + sx?: SxProps; + ref?: React.Ref; + } + >, + {}, + AutocompleteOwnerState + >; + + paper: SlotProps< + React.ElementType>, + {}, + AutocompleteOwnerState + >; + popper: SlotProps< + React.ElementType>, + {}, + AutocompleteOwnerState + >; + popupIndicator: SlotProps< + React.ElementType>, + {}, + AutocompleteOwnerState + >; + } +>; + export interface AutocompleteProps< Value, Multiple extends boolean | undefined, @@ -91,9 +161,11 @@ export interface AutocompleteProps< FreeSolo extends boolean | undefined, ChipComponent extends React.ElementType = ChipTypeMap['defaultComponent'], > extends UseAutocompleteProps, - StandardProps, 'defaultValue' | 'onChange' | 'children'> { + StandardProps, 'defaultValue' | 'onChange' | 'children'>, + AutocompleteSlotsAndSlotProps { /** * Props applied to the [`Chip`](/material-ui/api/chip/) element. + * @deprecated Use `slotProps.chip` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ ChipProps?: ChipProps; /** @@ -160,10 +232,12 @@ export interface AutocompleteProps< /** * The component used to render the listbox. * @default 'ul' + * @deprecated Use `slots.listbox` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ ListboxComponent?: React.JSXElementConstructor>; /** * Props applied to the Listbox element. + * @deprecated Use `slotProps.listbox` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ ListboxProps?: ReturnType['getListboxProps']> & { sx?: SxProps; @@ -208,11 +282,13 @@ export interface AutocompleteProps< /** * The component used to render the body of the popup. * @default Paper + * @deprecated Use `slots.paper` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ PaperComponent?: React.JSXElementConstructor>; /** * The component used to position the popup. * @default Popper + * @deprecated Use `slots.popper` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ PopperComponent?: React.JSXElementConstructor; /** @@ -272,16 +348,6 @@ export interface AutocompleteProps< * @default 'medium' */ size?: OverridableStringUnion<'small' | 'medium', AutocompletePropsSizeOverrides>; - /** - * The props used for each slot inside. - * @default {} - */ - slotProps?: { - clearIndicator?: Partial; - paper?: PaperProps; - popper?: Partial; - popupIndicator?: Partial; - }; /** * The system prop that allows defining system overrides as well as additional CSS styles. */ diff --git a/packages/mui-material/src/Autocomplete/Autocomplete.js b/packages/mui-material/src/Autocomplete/Autocomplete.js index 2aea5bf347fb6b..f3e1b3e4846606 100644 --- a/packages/mui-material/src/Autocomplete/Autocomplete.js +++ b/packages/mui-material/src/Autocomplete/Autocomplete.js @@ -21,7 +21,7 @@ import ArrowDropDownIcon from '../internal/svg-icons/ArrowDropDown'; import { styled, createUseThemeProps } from '../zero-styled'; import autocompleteClasses, { getAutocompleteUtilityClass } from './autocompleteClasses'; import capitalize from '../utils/capitalize'; -import useForkRef from '../utils/useForkRef'; +import useSlot from '../utils/useSlot'; const useThemeProps = createUseThemeProps('MuiAutocomplete'); @@ -412,7 +412,7 @@ const Autocomplete = React.forwardRef(function Autocomplete(inProps, ref) { autoHighlight = false, autoSelect = false, blurOnSelect = false, - ChipProps, + ChipProps: ChipPropsProp, className, clearIcon = , clearOnBlur = !props.freeSolo, @@ -443,8 +443,8 @@ const Autocomplete = React.forwardRef(function Autocomplete(inProps, ref) { includeInputInList = false, inputValue: inputValueProp, limitTags = -1, - ListboxComponent = 'ul', - ListboxProps, + ListboxComponent: ListboxComponentProp, + ListboxProps: ListboxPropsProp, loading = false, loadingText = 'Loading…', multiple = false, @@ -458,8 +458,8 @@ const Autocomplete = React.forwardRef(function Autocomplete(inProps, ref) { openOnFocus = false, openText = 'Open', options, - PaperComponent = Paper, - PopperComponent = Popper, + PaperComponent: PaperComponentProp, + PopperComponent: PopperComponentProp, popupIcon = , readOnly = false, renderGroup: renderGroupProp, @@ -468,6 +468,7 @@ const Autocomplete = React.forwardRef(function Autocomplete(inProps, ref) { renderTags, selectOnFocus = !props.freeSolo, size = 'medium', + slots = {}, slotProps = {}, value: valueProp, ...other @@ -500,11 +501,8 @@ const Autocomplete = React.forwardRef(function Autocomplete(inProps, ref) { const hasPopupIcon = (!freeSolo || forcePopupIcon === true) && forcePopupIcon !== false; const { onMouseDown: handleInputMouseDown } = getInputProps(); - const { ref: externalListboxRef } = ListboxProps ?? {}; const { ref: listboxRef, ...otherListboxProps } = getListboxProps(); - const combinedListboxRef = useForkRef(listboxRef, externalListboxRef); - const defaultGetOptionLabel = (option) => option.label ?? option; const getOptionLabel = getOptionLabelProp || defaultGetOptionLabel; @@ -525,6 +523,51 @@ const Autocomplete = React.forwardRef(function Autocomplete(inProps, ref) { const classes = useUtilityClasses(ownerState); + const externalForwardedProps = { + slots: { + listbox: ListboxComponentProp, + paper: PaperComponentProp, + popper: PopperComponentProp, + ...slots, + }, + slotProps: { + chip: ChipPropsProp, + listbox: ListboxPropsProp, + ...componentsProps, + ...slotProps, + }, + }; + + const [ListboxSlot, listboxProps] = useSlot('listbox', { + elementType: 'ul', + externalForwardedProps, + ownerState, + className: classes.listbox, + additionalProps: otherListboxProps, + ref: listboxRef, + }); + + const [PaperSlot, paperProps] = useSlot('paper', { + elementType: Paper, + externalForwardedProps, + ownerState, + className: classes.paper, + }); + + const [PopperSlot, popperProps] = useSlot('popper', { + elementType: Popper, + externalForwardedProps, + ownerState, + className: classes.popper, + additionalProps: { + disablePortal, + style: { width: anchorEl ? anchorEl.clientWidth : null }, + role: 'presentation', + anchorEl, + open: popupOpen, + }, + }); + let startAdornment; if (multiple && value.length > 0) { @@ -542,7 +585,7 @@ const Autocomplete = React.forwardRef(function Autocomplete(inProps, ref) { label={getOptionLabel(option)} size={size} {...getCustomizedTagProps({ index })} - {...ChipProps} + {...externalForwardedProps.slotProps.chip} /> )); } @@ -601,29 +644,12 @@ const Autocomplete = React.forwardRef(function Autocomplete(inProps, ref) { ); }; - const clearIndicatorSlotProps = slotProps.clearIndicator ?? componentsProps.clearIndicator; - const paperSlotProps = slotProps.paper ?? componentsProps.paper; - const popperSlotProps = slotProps.popper ?? componentsProps.popper; - const popupIndicatorSlotProps = slotProps.popupIndicator ?? componentsProps.popupIndicator; + const clearIndicatorSlotProps = externalForwardedProps.slotProps.clearIndicator; + const popupIndicatorSlotProps = externalForwardedProps.slotProps.popupIndicator; const renderAutocompletePopperChildren = (children) => ( - - + + {children} @@ -632,14 +658,7 @@ const Autocomplete = React.forwardRef(function Autocomplete(inProps, ref) { let autocompletePopper = null; if (groupedOptions.length > 0) { autocompletePopper = renderAutocompletePopperChildren( - + {groupedOptions.map((option, index) => { if (groupBy) { return renderGroup({ @@ -784,6 +803,7 @@ Autocomplete.propTypes /* remove-proptypes */ = { blurOnSelect: PropTypes.oneOfType([PropTypes.oneOf(['mouse', 'touch']), PropTypes.bool]), /** * Props applied to the [`Chip`](/material-ui/api/chip/) element. + * @deprecated Use `slotProps.chip` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ ChipProps: PropTypes.object, /** @@ -991,10 +1011,12 @@ Autocomplete.propTypes /* remove-proptypes */ = { /** * The component used to render the listbox. * @default 'ul' + * @deprecated Use `slots.listbox` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ ListboxComponent: PropTypes.elementType, /** * Props applied to the Listbox element. + * @deprecated Use `slotProps.listbox` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ ListboxProps: PropTypes.object, /** @@ -1089,11 +1111,13 @@ Autocomplete.propTypes /* remove-proptypes */ = { /** * The component used to render the body of the popup. * @default Paper + * @deprecated Use `slots.paper` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ PaperComponent: PropTypes.elementType, /** * The component used to position the popup. * @default Popper + * @deprecated Use `slots.popper` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details. */ PopperComponent: PropTypes.elementType, /** @@ -1157,11 +1181,22 @@ Autocomplete.propTypes /* remove-proptypes */ = { * The props used for each slot inside. * @default {} */ - slotProps: PropTypes.shape({ - clearIndicator: PropTypes.object, - paper: PropTypes.object, - popper: PropTypes.object, - popupIndicator: PropTypes.object, + slotProps: PropTypes /* @typescript-to-proptypes-ignore */.shape({ + chip: PropTypes.oneOfType([PropTypes.func, PropTypes.object]), + clearIndicator: PropTypes.oneOfType([PropTypes.func, PropTypes.object]), + listbox: PropTypes.oneOfType([PropTypes.func, PropTypes.object]), + paper: PropTypes.oneOfType([PropTypes.func, PropTypes.object]), + popper: PropTypes.oneOfType([PropTypes.func, PropTypes.object]), + popupIndicator: PropTypes.oneOfType([PropTypes.func, PropTypes.object]), + }), + /** + * The components used for each slot inside. + * @default {} + */ + slots: PropTypes.shape({ + listbox: PropTypes.elementType, + paper: PropTypes.elementType, + popper: PropTypes.elementType, }), /** * The system prop that allows defining system overrides as well as additional CSS styles. diff --git a/packages/mui-material/src/Autocomplete/Autocomplete.test.js b/packages/mui-material/src/Autocomplete/Autocomplete.test.js index f6a04adaebb858..26852846f74ddd 100644 --- a/packages/mui-material/src/Autocomplete/Autocomplete.test.js +++ b/packages/mui-material/src/Autocomplete/Autocomplete.test.js @@ -59,20 +59,50 @@ describe('', () => { testStateOverrides: { prop: 'fullWidth', value: true, styleKey: 'fullWidth' }, refInstanceof: window.HTMLDivElement, testComponentPropWith: 'div', - testLegacyComponentsProp: true, slots: { - clearIndicator: { expectedClassName: classes.clearIndicator }, + listbox: { expectedClassName: classes.listbox }, paper: { expectedClassName: classes.paper }, - popper: { expectedClassName: classes.popper }, + popper: { expectedClassName: classes.popper, testWithElement: null }, + }, + skip: ['componentProp', 'componentsProp', 'reactTestRenderer'], + }), + ); + + describeConformance( + } + />, + () => ({ + classes, + render, + muiName: 'MuiAutocomplete', + slots: { + clearIndicator: { expectedClassName: classes.clearIndicator }, popupIndicator: { expectedClassName: classes.popupIndicator }, }, - skip: [ - 'componentProp', - 'componentsProp', - 'slotsProp', - 'reactTestRenderer', - 'slotPropsCallback', // not supported yet - ], + only: ['slotPropsProp'], + }), + ); + + describeConformance( + } + />, + () => ({ + classes, + render, + muiName: 'MuiAutocomplete', + slots: { + chip: {}, + }, + only: ['slotPropsProp'], }), ); From 500aca776216a18126a4fde95ebac1248998417e Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Wed, 8 May 2024 22:26:57 +0200 Subject: [PATCH 11/25] [core] Remove unecessary quotes --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index fbbeae9ee51a81..0d8476103688ce 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -774,7 +774,7 @@ jobs: name: run danger on PRs command: pnpm danger ci --fail-on-errors environment: - DANGER_COMMAND: 'reportBundleSize' + DANGER_COMMAND: reportBundleSize test_benchmark: <<: *default-job docker: From ff33fc24eb3f16ad0dea90bb5bfb9aac298d65ee Mon Sep 17 00:00:00 2001 From: Heath C <51679588+heath-freenome@users.noreply.github.com> Date: Wed, 8 May 2024 13:28:29 -0700 Subject: [PATCH 12/25] [core] Fix React 18.3 warnings about spreading keys in the Material UI `Autocomplete` component (#42099) --- .../useAutocomplete/useAutocomplete.test.js | 7 ++++++- .../src/Autocomplete/Autocomplete.js | 20 +++++++++++-------- .../src/Autocomplete/Autocomplete.test.js | 5 ++++- 3 files changed, 22 insertions(+), 10 deletions(-) diff --git a/packages/mui-base/src/useAutocomplete/useAutocomplete.test.js b/packages/mui-base/src/useAutocomplete/useAutocomplete.test.js index 264f0ee8f67ce2..9eeadda0cb3001 100644 --- a/packages/mui-base/src/useAutocomplete/useAutocomplete.test.js +++ b/packages/mui-base/src/useAutocomplete/useAutocomplete.test.js @@ -31,7 +31,12 @@ describe('useAutocomplete', () => { {groupedOptions.length > 0 ? (
    {groupedOptions.map((option, index) => { - return
  • {option}
  • ; + const { key, ...optionProps } = getOptionProps({ option, index }); + return ( +
  • + {option} +
  • + ); })}
) : null} diff --git a/packages/mui-material/src/Autocomplete/Autocomplete.js b/packages/mui-material/src/Autocomplete/Autocomplete.js index f3e1b3e4846606..4ac6b296d79e1e 100644 --- a/packages/mui-material/src/Autocomplete/Autocomplete.js +++ b/packages/mui-material/src/Autocomplete/Autocomplete.js @@ -580,14 +580,18 @@ const Autocomplete = React.forwardRef(function Autocomplete(inProps, ref) { if (renderTags) { startAdornment = renderTags(value, getCustomizedTagProps, ownerState); } else { - startAdornment = value.map((option, index) => ( - - )); + startAdornment = value.map((option, index) => { + const { key, ...customTagProps } = getCustomizedTagProps({ index }); + return ( + + ); + }); } } diff --git a/packages/mui-material/src/Autocomplete/Autocomplete.test.js b/packages/mui-material/src/Autocomplete/Autocomplete.test.js index 26852846f74ddd..4a54e94916d388 100644 --- a/packages/mui-material/src/Autocomplete/Autocomplete.test.js +++ b/packages/mui-material/src/Autocomplete/Autocomplete.test.js @@ -668,7 +668,10 @@ describe('', () => { renderTags={(value, getTagProps) => value .filter((x, index) => index === 1) - .map((option, index) => ) + .map((option, index) => { + const { key, ...tagProps } = getTagProps({ index }); + return ; + }) } onChange={handleChange} renderInput={(params) => } From 4141dd4b8552d023f7869eff6d8059a5a1543d01 Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Wed, 8 May 2024 22:39:48 +0200 Subject: [PATCH 13/25] [core] Match other repositories and convention --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 0d8476103688ce..5e01feb775c782 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -771,7 +771,7 @@ jobs: from: size-snapshot.json to: s3://mui-org-ci/artifacts/$CIRCLE_BRANCH/latest/ - run: - name: run danger on PRs + name: Run danger on PRs command: pnpm danger ci --fail-on-errors environment: DANGER_COMMAND: reportBundleSize From 192de378ced6be9682b54f5ed2186b281976120c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 9 May 2024 13:52:45 +0700 Subject: [PATCH 14/25] Bump aws-sdk to ^2.1616.0 (#42137) --- packages/feedback/package.json | 2 +- pnpm-lock.yaml | 11 +++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/packages/feedback/package.json b/packages/feedback/package.json index 90a16f422848c3..36a19007f1ea5a 100644 --- a/packages/feedback/package.json +++ b/packages/feedback/package.json @@ -25,6 +25,6 @@ "claudia": "^5.14.1" }, "optionalDependencies": { - "aws-sdk": "^2.1609.0" + "aws-sdk": "^2.1616.0" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5e76405cba4cd9..153ffeb191fff5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1157,8 +1157,8 @@ importers: version: 9.0.1 optionalDependencies: aws-sdk: - specifier: ^2.1609.0 - version: 2.1609.0 + specifier: ^2.1616.0 + version: 2.1616.0 devDependencies: claudia: specifier: ^5.14.1 @@ -6061,7 +6061,6 @@ packages: /@next/env@14.2.3: resolution: {integrity: sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA==} - dev: false /@next/eslint-plugin-next@14.2.3: resolution: {integrity: sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==} @@ -9480,8 +9479,8 @@ packages: dependencies: possible-typed-array-names: 1.0.0 - /aws-sdk@2.1609.0: - resolution: {integrity: sha512-l5RiTld8f0AtxgSN2hXkuM/PPD04UHm4yfnJR6NpuQ+VSCl9RQfdNFUlnnVrJPd2hcoq/qz/gQiBVPjFqGAZwQ==} + /aws-sdk@2.1616.0: + resolution: {integrity: sha512-Wes2FOJn/5Bo35ku+KYvn/H+xnuPuI97mQKxhU+d3TczAY56rFH/qw7Bff8HI0Gi6m6lDEhhq76qvG4gfdPexg==} engines: {node: '>= 10.0.0'} requiresBuild: true dependencies: @@ -10270,7 +10269,7 @@ packages: hasBin: true dependencies: archiver: 3.1.1 - aws-sdk: 2.1609.0 + aws-sdk: 2.1616.0 fs-extra: 6.0.1 glob: 7.2.3 gunzip-maybe: 1.4.2 From e6b7597f41e13d2cdf0e15a602eb426bcd772a3f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 9 May 2024 13:53:21 +0700 Subject: [PATCH 15/25] Bump @argos-ci/core to ^2.2.0 (#42136) --- package.json | 2 +- pnpm-lock.yaml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 06b0b1fa91373e..7f37dc26a971c3 100644 --- a/package.json +++ b/package.json @@ -88,7 +88,7 @@ "google-auth-library": "^9.9.0" }, "devDependencies": { - "@argos-ci/core": "^2.1.0", + "@argos-ci/core": "^2.2.0", "@babel/cli": "^7.24.1", "@babel/core": "^7.24.4", "@babel/node": "^7.23.9", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 153ffeb191fff5..add3da04b4eb3d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -48,8 +48,8 @@ importers: version: 9.9.0 devDependencies: '@argos-ci/core': - specifier: ^2.1.0 - version: 2.1.0 + specifier: ^2.2.0 + version: 2.2.0 '@babel/cli': specifier: ^7.24.1 version: 7.24.1(@babel/core@7.24.4) @@ -2571,8 +2571,8 @@ packages: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - /@argos-ci/core@2.1.0: - resolution: {integrity: sha512-Av6eOaE0DZ3GstHn69GY++12ISUppkVhHwMxbYp0rUPqh2r+IZtSVAmo8U2D3K8eJK6+u1qUD75ROWmuQakCAQ==} + /@argos-ci/core@2.2.0: + resolution: {integrity: sha512-T5W37CZ6HZjRcVAXuPj0wUB/Fm4VdwLvKpQL9yqSwiJganeNz7u8AFYJ30ujSUJS1jdUViW5TNnmsgDjuvGyTQ==} engines: {node: '>=18.0.0'} dependencies: '@argos-ci/util': 2.0.0 From 3a908770ded813df1e3841fb40f2b5f0f514a868 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 9 May 2024 13:54:03 +0700 Subject: [PATCH 16/25] Bump styled-components to ^6.1.10 (#42134) --- benchmark/package.json | 2 +- docs/package.json | 2 +- packages/mui-styled-engine-sc/package.json | 2 +- packages/mui-system/package.json | 2 +- pnpm-lock.yaml | 74 ++++++++-------------- test/package.json | 2 +- 6 files changed, 33 insertions(+), 51 deletions(-) diff --git a/benchmark/package.json b/benchmark/package.json index 4da6db4f7eaa97..7887f4c0fb959c 100644 --- a/benchmark/package.json +++ b/benchmark/package.json @@ -33,7 +33,7 @@ "react-redux": "^8.1.3", "redux": "^4.2.1", "serve-handler": "^6.1.5", - "styled-components": "^6.1.8", + "styled-components": "^6.1.10", "styled-system": "^5.1.5", "theme-ui": "^0.16.2", "webpack": "^5.91.0" diff --git a/docs/package.json b/docs/package.json index ee69bb478f12c1..12a37098ab90f2 100644 --- a/docs/package.json +++ b/docs/package.json @@ -105,7 +105,7 @@ "react-virtuoso": "^4.7.10", "react-window": "^1.8.10", "rimraf": "^5.0.5", - "styled-components": "^6.1.8", + "styled-components": "^6.1.10", "stylis": "4.2.0", "stylis-plugin-rtl": "^2.1.1", "use-count-up": "^3.0.1", diff --git a/packages/mui-styled-engine-sc/package.json b/packages/mui-styled-engine-sc/package.json index 13146f5c5d5824..9cce73ebc679de 100644 --- a/packages/mui-styled-engine-sc/package.json +++ b/packages/mui-styled-engine-sc/package.json @@ -50,7 +50,7 @@ "@types/react": "^18.2.55", "chai": "^4.4.1", "react": "^18.2.0", - "styled-components": "^6.1.8" + "styled-components": "^6.1.10" }, "peerDependencies": { "styled-components": "^6.0.0" diff --git a/packages/mui-system/package.json b/packages/mui-system/package.json index c2503342b72824..c110c00440b622 100644 --- a/packages/mui-system/package.json +++ b/packages/mui-system/package.json @@ -63,7 +63,7 @@ "lodash": "^4.17.21", "react": "^18.2.0", "sinon": "^15.2.0", - "styled-components": "^6.1.8" + "styled-components": "^6.1.10" }, "peerDependencies": { "@emotion/react": "^11.5.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index add3da04b4eb3d..d77baeb012a3a6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -560,8 +560,8 @@ importers: specifier: ^6.1.5 version: 6.1.5 styled-components: - specifier: ^6.1.8 - version: 6.1.8(react-dom@18.2.0)(react@18.2.0) + specifier: ^6.1.10 + version: 6.1.10(react-dom@18.2.0)(react@18.2.0) styled-system: specifier: ^5.1.5 version: 5.1.5 @@ -833,8 +833,8 @@ importers: specifier: ^5.0.5 version: 5.0.5 styled-components: - specifier: ^6.1.8 - version: 6.1.8(react-dom@18.2.0)(react@18.2.0) + specifier: ^6.1.10 + version: 6.1.10(react-dom@18.2.0)(react@18.2.0) stylis: specifier: 4.2.0 version: 4.2.0 @@ -1900,8 +1900,8 @@ importers: specifier: ^18.2.0 version: 18.2.0 styled-components: - specifier: ^6.1.8 - version: 6.1.8(react-dom@18.2.0)(react@18.2.0) + specifier: ^6.1.10 + version: 6.1.10(react-dom@18.2.0)(react@18.2.0) publishDirectory: build packages/mui-styles: @@ -2060,8 +2060,8 @@ importers: specifier: ^15.2.0 version: 15.2.0 styled-components: - specifier: ^6.1.8 - version: 6.1.8(react-dom@18.2.0)(react@18.2.0) + specifier: ^6.1.10 + version: 6.1.10(react-dom@18.2.0)(react@18.2.0) publishDirectory: build packages/mui-types: @@ -2362,8 +2362,8 @@ importers: specifier: ^15.2.0 version: 15.2.0 styled-components: - specifier: ^6.1.8 - version: 6.1.8(react-dom@18.2.0)(react@18.2.0) + specifier: ^6.1.10 + version: 6.1.10(react-dom@18.2.0)(react@18.2.0) stylis: specifier: 4.2.0 version: 4.2.0 @@ -4270,11 +4270,6 @@ packages: '@emotion/memoize': 0.7.4 dev: false - /@emotion/is-prop-valid@1.2.1: - resolution: {integrity: sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==} - dependencies: - '@emotion/memoize': 0.8.1 - /@emotion/is-prop-valid@1.2.2: resolution: {integrity: sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw==} dependencies: @@ -4360,9 +4355,6 @@ packages: '@types/react': 18.2.55 react: 18.2.0 - /@emotion/unitless@0.8.0: - resolution: {integrity: sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==} - /@emotion/unitless@0.8.1: resolution: {integrity: sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==} @@ -6829,8 +6821,8 @@ packages: csstype: 3.1.3 lodash: 4.17.21 react: 18.2.0 - stylis: 4.3.1 - stylis-plugin-rtl: 2.1.1(stylis@4.3.1) + stylis: 4.3.2 + stylis-plugin-rtl: 2.1.1(stylis@4.3.2) transitivePeerDependencies: - '@types/react' - supports-color @@ -6860,8 +6852,8 @@ packages: csstype: 3.1.3 lodash: 4.17.21 react: 18.2.0 - stylis: 4.3.1 - stylis-plugin-rtl: 2.1.1(stylis@4.3.1) + stylis: 4.3.2 + stylis-plugin-rtl: 2.1.1(stylis@4.3.2) transitivePeerDependencies: - '@types/react' - supports-color @@ -8447,12 +8439,8 @@ packages: csstype: 3.1.3 dev: false - /@types/stylis@4.2.0: - resolution: {integrity: sha512-n4sx2bqL0mW1tvDf/loQ+aMX7GQD3lc3fkCMC55VFNDu/vBOabO+LTIeXKM14xK0ppk5TUGcWRjiSpIlUpghKw==} - /@types/stylis@4.2.5: resolution: {integrity: sha512-1Xve+NMN7FWjY14vLoY5tL3BVEQ/n42YLwaqJIPYhotZ9uBHt87VceMwWQpzmdEt2TNXIorIFG+YeCUUW7RInw==} - dev: true /@types/tsscmp@1.0.0: resolution: {integrity: sha512-rj18XR6c4Ohds86Lq8MI1NMRrXes4eLo4H06e5bJyKucE1rXGsfBBbFGD2oDC+DSufQCpnU3TTW7QAiwLx+7Yw==} @@ -8810,7 +8798,7 @@ packages: cosmiconfig: 8.2.0 happy-dom: 12.10.3 source-map: 0.7.4 - stylis: 4.3.1 + stylis: 4.3.2 ts-invariant: 0.10.3 transitivePeerDependencies: - supports-color @@ -10990,9 +10978,6 @@ packages: rrweb-cssom: 0.6.0 dev: false - /csstype@3.1.2: - resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} - /csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} @@ -20177,24 +20162,24 @@ packages: resolution: {integrity: sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==} dev: true - /styled-components@6.1.8(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-PQ6Dn+QxlWyEGCKDS71NGsXoVLKfE1c3vApkvDYS5KAK+V8fNWGhbSUEo9Gg2iaID2tjLXegEW3bZDUGpofRWw==} + /styled-components@6.1.10(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-4K8IKcn7iOt76riGLjvBhRyNPTkUKTvmnwoRFBOtJLswVvzy2VsoE2KOrfl9FJLQUYbITLJY2wfIZ3tjbkA/Zw==} engines: {node: '>= 16'} peerDependencies: react: '>= 16.8.0' react-dom: '>= 16.8.0' dependencies: - '@emotion/is-prop-valid': 1.2.1 - '@emotion/unitless': 0.8.0 - '@types/stylis': 4.2.0 + '@emotion/is-prop-valid': 1.2.2 + '@emotion/unitless': 0.8.1 + '@types/stylis': 4.2.5 css-to-react-native: 3.2.0 - csstype: 3.1.2 - postcss: 8.4.31 + csstype: 3.1.3 + postcss: 8.4.38 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) shallowequal: 1.1.0 - stylis: 4.3.1 - tslib: 2.5.0 + stylis: 4.3.2 + tslib: 2.6.2 /styled-jsx@5.1.1(@babel/core@7.24.4)(babel-plugin-macros@3.1.0)(react@18.2.0): resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} @@ -20328,19 +20313,19 @@ packages: cssjanus: 2.1.0 stylis: 4.2.0 - /stylis-plugin-rtl@2.1.1(stylis@4.3.1): + /stylis-plugin-rtl@2.1.1(stylis@4.3.2): resolution: {integrity: sha512-q6xIkri6fBufIO/sV55md2CbgS5c6gg9EhSVATtHHCdOnbN/jcI0u3lYhNVeuI65c4lQPo67g8xmq5jrREvzlg==} peerDependencies: stylis: 4.x dependencies: cssjanus: 2.1.0 - stylis: 4.3.1 + stylis: 4.3.2 /stylis@4.2.0: resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==} - /stylis@4.3.1: - resolution: {integrity: sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==} + /stylis@4.3.2: + resolution: {integrity: sha512-bhtUjWd/z6ltJiQwg0dUfxEJ+W+jdqQd8TbWLWyeIJHlnsqmGLRFFd8e5mA0AZi/zx90smXRlN66YMTcaSFifg==} /sucrase@3.34.0: resolution: {integrity: sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==} @@ -20779,9 +20764,6 @@ packages: resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} dev: false - /tslib@2.5.0: - resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} - /tslib@2.6.2: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} diff --git a/test/package.json b/test/package.json index f076a098c2c617..ecaa2debeaecd3 100644 --- a/test/package.json +++ b/test/package.json @@ -36,7 +36,7 @@ "react-is": "^18.2.0", "react-router-dom": "^6.22.3", "sinon": "^15.2.0", - "styled-components": "^6.1.8", + "styled-components": "^6.1.10", "stylis": "4.2.0", "stylis-plugin-rtl": "^2.1.1", "stylis-plugin-rtl-sc": "npm:stylis-plugin-rtl@^1.1.0", From ff3a2e1ac976d367825dd0ef852617c200fd87cd Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 9 May 2024 13:54:27 +0700 Subject: [PATCH 17/25] Bump pnpm to 8.15.8 (#42133) --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 7f37dc26a971c3..5bba2712d0f9d6 100644 --- a/package.json +++ b/package.json @@ -189,7 +189,7 @@ "webpack-cli": "^5.1.4", "yargs": "^17.7.2" }, - "packageManager": "pnpm@8.15.7", + "packageManager": "pnpm@8.15.8", "resolutions": { "@babel/core": "^7.24.4", "@babel/code-frame": "^7.24.2", From c5656858776f267dca8a0d23399b41bbb8af236b Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 9 May 2024 13:55:25 +0700 Subject: [PATCH 18/25] Bump @types/lodash to ^4.17.1 (#42130) --- package.json | 2 +- packages-internal/scripts/package.json | 2 +- pnpm-lock.yaml | 14 +++++++------- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index 5bba2712d0f9d6..36c1a40a0126c2 100644 --- a/package.json +++ b/package.json @@ -117,7 +117,7 @@ "@playwright/test": "1.43.1", "@types/enzyme": "^3.10.18", "@types/fs-extra": "^11.0.4", - "@types/lodash": "^4.17.0", + "@types/lodash": "^4.17.1", "@types/mocha": "^10.0.6", "@types/node": "^18.19.31", "@types/prettier": "^2.7.3", diff --git a/packages-internal/scripts/package.json b/packages-internal/scripts/package.json index f8459dc41fc169..8464834cdfd6c8 100644 --- a/packages-internal/scripts/package.json +++ b/packages-internal/scripts/package.json @@ -41,7 +41,7 @@ "@types/babel__core": "^7.20.5", "@types/chai": "^4.3.14", "@types/doctrine": "^0.0.9", - "@types/lodash": "^4.17.0", + "@types/lodash": "^4.17.1", "@types/node": "^18.19.31", "@types/prettier": "^2.7.3", "@types/react": "^18.2.55", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d77baeb012a3a6..fedb098004e100 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -135,8 +135,8 @@ importers: specifier: ^11.0.4 version: 11.0.4 '@types/lodash': - specifier: ^4.17.0 - version: 4.17.0 + specifier: ^4.17.1 + version: 4.17.1 '@types/mocha': specifier: ^10.0.6 version: 10.0.6 @@ -982,8 +982,8 @@ importers: specifier: ^0.0.9 version: 0.0.9 '@types/lodash': - specifier: ^4.17.0 - version: 4.17.0 + specifier: ^4.17.1 + version: 4.17.1 '@types/node': specifier: ^18.19.31 version: 18.19.31 @@ -8243,11 +8243,11 @@ packages: /@types/lodash.mergewith@4.6.7: resolution: {integrity: sha512-3m+lkO5CLRRYU0fhGRp7zbsGi6+BZj0uTVSwvcKU+nSlhjA9/QRNfuSGnD2mX6hQA7ZbmcCkzk5h4ZYGOtk14A==} dependencies: - '@types/lodash': 4.17.0 + '@types/lodash': 4.17.1 dev: false - /@types/lodash@4.17.0: - resolution: {integrity: sha512-t7dhREVv6dbNj0q17X12j7yDG4bD/DHYX7o5/DbDxobP0HnGPgpRz2Ej77aL7TZT3DSw13fqUTj8J4mMnqa7WA==} + /@types/lodash@4.17.1: + resolution: {integrity: sha512-X+2qazGS3jxLAIz5JDXDzglAF3KpijdhFxlf/V1+hEsOUc+HnWi81L/uv/EvGuV90WY+7mPGFCUDGfQC3Gj95Q==} /@types/mdast@3.0.10: resolution: {integrity: sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==} From 63a14142325dc688fa5d97e15c43c5726b511365 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 9 May 2024 13:55:46 +0700 Subject: [PATCH 19/25] Bump @types/chai to ^4.3.16 (#42129) --- docs/package.json | 2 +- packages-internal/scripts/package.json | 2 +- packages/api-docs-builder-core/package.json | 2 +- packages/api-docs-builder/package.json | 2 +- packages/markdown/package.json | 2 +- packages/mui-babel-macros/package.json | 2 +- packages/mui-base/package.json | 2 +- packages/mui-codemod/package.json | 2 +- packages/mui-envinfo/package.json | 2 +- packages/mui-icons-material/package.json | 2 +- packages/mui-joy/package.json | 2 +- packages/mui-lab/package.json | 2 +- packages/mui-material/package.json | 2 +- packages/mui-private-theming/package.json | 2 +- packages/mui-styled-engine-sc/package.json | 2 +- packages/mui-styled-engine/package.json | 2 +- packages/mui-styles/package.json | 2 +- packages/mui-system/package.json | 2 +- packages/mui-utils/package.json | 2 +- packages/test-utils/package.json | 2 +- pnpm-lock.yaml | 90 ++++++++++----------- test/package.json | 2 +- 22 files changed, 66 insertions(+), 66 deletions(-) diff --git a/docs/package.json b/docs/package.json index 12a37098ab90f2..75a1e10d9cb908 100644 --- a/docs/package.json +++ b/docs/package.json @@ -118,7 +118,7 @@ "@mui/internal-scripts": "workspace:^", "@mui-internal/test-utils": "workspace:^", "@types/autosuggest-highlight": "^3.2.3", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/css-mediaquery": "^0.1.4", "@types/json2mq": "^0.2.2", "@types/node": "^18.19.31", diff --git a/packages-internal/scripts/package.json b/packages-internal/scripts/package.json index 8464834cdfd6c8..bf7ef347a90873 100644 --- a/packages-internal/scripts/package.json +++ b/packages-internal/scripts/package.json @@ -39,7 +39,7 @@ "devDependencies": { "@babel/register": "^7.23.7", "@types/babel__core": "^7.20.5", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/doctrine": "^0.0.9", "@types/lodash": "^4.17.1", "@types/node": "^18.19.31", diff --git a/packages/api-docs-builder-core/package.json b/packages/api-docs-builder-core/package.json index 1897564ff22376..6e7dceb564373b 100644 --- a/packages/api-docs-builder-core/package.json +++ b/packages/api-docs-builder-core/package.json @@ -15,7 +15,7 @@ "lodash": "^4.17.21" }, "devDependencies": { - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/mocha": "^10.0.6", "@types/node": "^18.19.31", "@types/sinon": "^10.0.20", diff --git a/packages/api-docs-builder/package.json b/packages/api-docs-builder/package.json index 1a4bd930e38a08..9ed7c72b841571 100644 --- a/packages/api-docs-builder/package.json +++ b/packages/api-docs-builder/package.json @@ -28,7 +28,7 @@ "devDependencies": { "@types/babel__core": "^7.20.5", "@types/babel__traverse": "^7.20.5", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/doctrine": "^0.0.9", "@types/mdast": "4.0.3", "@types/mocha": "^10.0.6", diff --git a/packages/markdown/package.json b/packages/markdown/package.json index a26692062dc126..0fd9234cb172dc 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -26,7 +26,7 @@ "prismjs": "^1.29.0" }, "devDependencies": { - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "chai": "^4.4.1" }, "publishConfig": { diff --git a/packages/mui-babel-macros/package.json b/packages/mui-babel-macros/package.json index 56390a6c12784c..6e5196d1f2521e 100644 --- a/packages/mui-babel-macros/package.json +++ b/packages/mui-babel-macros/package.json @@ -30,7 +30,7 @@ "devDependencies": { "@mui/internal-babel-macros": "workspace:*", "@types/babel-plugin-macros": "^3.1.3", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/mocha": "^10.0.6", "@types/node": "^18.19.31", "babel-plugin-tester": "^11.0.4", diff --git a/packages/mui-base/package.json b/packages/mui-base/package.json index 7689ad7a075396..ad883b83ee3657 100644 --- a/packages/mui-base/package.json +++ b/packages/mui-base/package.json @@ -54,7 +54,7 @@ "@mui/types": "workspace:^", "@testing-library/react": "^14.3.1", "@testing-library/user-event": "^14.5.2", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/prop-types": "^15.7.12", "@types/react": "18.2.55", "@types/react-dom": "18.3.0", diff --git a/packages/mui-codemod/package.json b/packages/mui-codemod/package.json index 78f437fc30033d..e3a366b54c42a8 100644 --- a/packages/mui-codemod/package.json +++ b/packages/mui-codemod/package.json @@ -40,7 +40,7 @@ "yargs": "^17.7.2" }, "devDependencies": { - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/jscodeshift": "0.11.11", "chai": "^4.4.1" }, diff --git a/packages/mui-envinfo/package.json b/packages/mui-envinfo/package.json index bdaa1fd77cedd4..e3c4cb0d21d610 100644 --- a/packages/mui-envinfo/package.json +++ b/packages/mui-envinfo/package.json @@ -23,7 +23,7 @@ "envinfo": "^7.12.0" }, "devDependencies": { - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "chai": "^4.4.1", "fs-extra": "^11.2.0" }, diff --git a/packages/mui-icons-material/package.json b/packages/mui-icons-material/package.json index 8515165809a52a..02f2d23c517a71 100644 --- a/packages/mui-icons-material/package.json +++ b/packages/mui-icons-material/package.json @@ -51,7 +51,7 @@ "@mui/icons-material": "workspace:*", "@mui/internal-waterfall": "workspace:^", "@mui/material": "workspace:^", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/react": "^18.2.55", "chai": "^4.4.1", "chalk": "^5.3.0", diff --git a/packages/mui-joy/package.json b/packages/mui-joy/package.json index bded89723aeb37..4ccf8ccefafb51 100644 --- a/packages/mui-joy/package.json +++ b/packages/mui-joy/package.json @@ -50,7 +50,7 @@ "devDependencies": { "@mui-internal/test-utils": "workspace:^", "@mui/material": "workspace:^", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/prop-types": "^15.7.12", "@types/react": "^18.2.55", "@types/react-dom": "^18.3.0", diff --git a/packages/mui-lab/package.json b/packages/mui-lab/package.json index b64ddbc54ab5e8..d8107271192ecc 100644 --- a/packages/mui-lab/package.json +++ b/packages/mui-lab/package.json @@ -51,7 +51,7 @@ "devDependencies": { "@mui-internal/test-utils": "workspace:^", "@mui/material": "workspace:*", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/prop-types": "^15.7.12", "@types/react": "^18.2.55", "@types/react-dom": "^18.3.0", diff --git a/packages/mui-material/package.json b/packages/mui-material/package.json index 65926678c488f2..f4765837958d9d 100644 --- a/packages/mui-material/package.json +++ b/packages/mui-material/package.json @@ -61,7 +61,7 @@ "@rollup/plugin-replace": "^5.0.5", "@testing-library/dom": "^9.3.4", "@testing-library/user-event": "^14.5.2", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/prop-types": "^15.7.12", "@types/react": "^18.2.55", "@types/react-dom": "^18.3.0", diff --git a/packages/mui-private-theming/package.json b/packages/mui-private-theming/package.json index 8c09b224107485..8a8e1e23efc903 100644 --- a/packages/mui-private-theming/package.json +++ b/packages/mui-private-theming/package.json @@ -44,7 +44,7 @@ "devDependencies": { "@mui-internal/test-utils": "workspace:^", "@mui/types": "workspace:^", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/react": "^18.2.55", "chai": "^4.4.1", "react": "^18.2.0" diff --git a/packages/mui-styled-engine-sc/package.json b/packages/mui-styled-engine-sc/package.json index 9cce73ebc679de..cca85ad439bf05 100644 --- a/packages/mui-styled-engine-sc/package.json +++ b/packages/mui-styled-engine-sc/package.json @@ -45,7 +45,7 @@ "devDependencies": { "@mui-internal/test-utils": "workspace:^", "@mui/styled-engine-sc": "workspace:*", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/hoist-non-react-statics": "^3.3.5", "@types/react": "^18.2.55", "chai": "^4.4.1", diff --git a/packages/mui-styled-engine/package.json b/packages/mui-styled-engine/package.json index d88b0a3b5042c7..23236aa86fc52a 100644 --- a/packages/mui-styled-engine/package.json +++ b/packages/mui-styled-engine/package.json @@ -47,7 +47,7 @@ "@emotion/styled": "^11.11.5", "@mui-internal/test-utils": "workspace:^", "@mui/styled-engine": "workspace:*", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/react": "^18.2.55", "chai": "^4.4.1", "react": "^18.2.0" diff --git a/packages/mui-styles/package.json b/packages/mui-styles/package.json index dc7f3bb68366e4..4c5f58179bb80e 100644 --- a/packages/mui-styles/package.json +++ b/packages/mui-styles/package.json @@ -58,7 +58,7 @@ "devDependencies": { "@mui-internal/test-utils": "workspace:^", "@mui/material": "workspace:^", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/react": "^18.2.55", "@types/react-dom": "^18.3.0", "@types/sinon": "^10.0.20", diff --git a/packages/mui-system/package.json b/packages/mui-system/package.json index c110c00440b622..611a211269f121 100644 --- a/packages/mui-system/package.json +++ b/packages/mui-system/package.json @@ -54,7 +54,7 @@ "@mui-internal/test-utils": "workspace:^", "@mui/internal-babel-macros": "workspace:^", "@mui/system": "workspace:*", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/prop-types": "^15.7.12", "@types/react": "^18.2.55", "@types/sinon": "^10.0.20", diff --git a/packages/mui-utils/package.json b/packages/mui-utils/package.json index 8c9b90c4d6041a..b6f91887453fcb 100644 --- a/packages/mui-utils/package.json +++ b/packages/mui-utils/package.json @@ -47,7 +47,7 @@ "@mui-internal/test-utils": "workspace:^", "@mui/internal-babel-macros": "workspace:^", "@mui/types": "workspace:^", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/mocha": "^10.0.6", "@types/node": "^18.19.31", "@types/react": "^18.2.55", diff --git a/packages/test-utils/package.json b/packages/test-utils/package.json index d646964160f081..957745a531163d 100644 --- a/packages/test-utils/package.json +++ b/packages/test-utils/package.json @@ -42,7 +42,7 @@ "sinon": "^15.2.0" }, "devDependencies": { - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/chai-dom": "^1.11.3", "@types/enzyme": "^3.10.18", "@types/format-util": "^1.0.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fedb098004e100..a549cb418db453 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -867,8 +867,8 @@ importers: specifier: ^3.2.3 version: 3.2.3 '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/css-mediaquery': specifier: ^0.1.4 version: 0.1.4 @@ -976,8 +976,8 @@ importers: specifier: ^7.20.5 version: 7.20.5 '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/doctrine': specifier: ^0.0.9 version: 0.0.9 @@ -1067,8 +1067,8 @@ importers: specifier: ^7.20.5 version: 7.20.5 '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/doctrine': specifier: ^0.0.9 version: 0.0.9 @@ -1110,8 +1110,8 @@ importers: version: 4.17.21 devDependencies: '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/mocha': specifier: ^10.0.6 version: 10.0.6 @@ -1180,8 +1180,8 @@ importers: version: 1.29.0 devDependencies: '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 chai: specifier: ^4.4.1 version: 4.4.1 @@ -1208,8 +1208,8 @@ importers: specifier: ^3.1.3 version: 3.1.3 '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/mocha': specifier: ^10.0.6 version: 10.0.6 @@ -1260,8 +1260,8 @@ importers: specifier: ^14.5.2 version: 14.5.2(@testing-library/dom@9.3.4) '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/prop-types': specifier: ^15.7.12 version: 15.7.12 @@ -1322,8 +1322,8 @@ importers: version: 17.7.2 devDependencies: '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/jscodeshift': specifier: 0.11.11 version: 0.11.11 @@ -1392,8 +1392,8 @@ importers: version: 7.12.0 devDependencies: '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 chai: specifier: ^4.4.1 version: 4.4.1 @@ -1445,8 +1445,8 @@ importers: specifier: workspace:^ version: link:../mui-material/build '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/react': specifier: 18.2.55 version: 18.2.55 @@ -1528,8 +1528,8 @@ importers: specifier: workspace:^ version: link:../mui-material/build '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/prop-types': specifier: ^15.7.12 version: 15.7.12 @@ -1602,8 +1602,8 @@ importers: specifier: workspace:* version: link:../mui-material/build '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/prop-types': specifier: ^15.7.12 version: 15.7.12 @@ -1694,8 +1694,8 @@ importers: specifier: ^14.5.2 version: 14.5.2(@testing-library/dom@9.3.4) '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/prop-types': specifier: ^15.7.12 version: 15.7.12 @@ -1809,8 +1809,8 @@ importers: specifier: workspace:^ version: link:../mui-types/build '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/react': specifier: 18.2.55 version: 18.2.55 @@ -1850,8 +1850,8 @@ importers: specifier: workspace:* version: link:build '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/react': specifier: 18.2.55 version: 18.2.55 @@ -1885,8 +1885,8 @@ importers: specifier: workspace:* version: link:build '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/hoist-non-react-statics': specifier: ^3.3.5 version: 3.3.5 @@ -1965,8 +1965,8 @@ importers: specifier: workspace:^ version: link:../mui-material/build '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/react': specifier: 18.2.55 version: 18.2.55 @@ -2033,8 +2033,8 @@ importers: specifier: workspace:* version: link:build '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/prop-types': specifier: ^15.7.12 version: 15.7.12 @@ -2099,8 +2099,8 @@ importers: specifier: workspace:^ version: link:../mui-types/build '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/mocha': specifier: ^10.0.6 version: 10.0.6 @@ -2237,8 +2237,8 @@ importers: version: 15.2.0 devDependencies: '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/chai-dom': specifier: ^1.11.3 version: 1.11.3 @@ -2311,8 +2311,8 @@ importers: specifier: ^9.3.4 version: 9.3.4 '@types/chai': - specifier: ^4.3.14 - version: 4.3.14 + specifier: ^4.3.16 + version: 4.3.16 '@types/react': specifier: 18.2.55 version: 18.2.55 @@ -8073,11 +8073,11 @@ packages: /@types/chai-dom@1.11.3: resolution: {integrity: sha512-EUEZI7uID4ewzxnU7DJXtyvykhQuwe+etJ1wwOiJyQRTH/ifMWKX+ghiXkxCUvNJ6IQDodf0JXhuP6zZcy2qXQ==} dependencies: - '@types/chai': 4.3.14 + '@types/chai': 4.3.16 dev: true - /@types/chai@4.3.14: - resolution: {integrity: sha512-Wj71sXE4Q4AkGdG9Tvq1u/fquNz9EdG4LIJMwVVII7ashjD/8cf8fyIfJAjRr6YcsXnSE8cOGQPq1gqeR8z+3w==} + /@types/chai@4.3.16: + resolution: {integrity: sha512-PatH4iOdyh3MyWtmHVFXLWCCIhUbopaltqddG9BzB+gMIzee2MJrvd+jouii9Z3wzQJruGWAm7WOMjgfG8hQlQ==} dev: true /@types/cheerio@0.22.31: diff --git a/test/package.json b/test/package.json index ecaa2debeaecd3..306a883cfc1760 100644 --- a/test/package.json +++ b/test/package.json @@ -19,7 +19,7 @@ "@mui/utils": "workspace:^", "@playwright/test": "1.43.1", "@testing-library/dom": "^9.3.4", - "@types/chai": "^4.3.14", + "@types/chai": "^4.3.16", "@types/react": "^18.2.55", "@types/react-is": "^18.3.0", "@types/sinon": "^10.0.20", From ec403fbd223d6671b13a95894f564967f72d3f00 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 9 May 2024 14:11:11 +0700 Subject: [PATCH 20/25] Bump babel to ^7.24.5 (#42132) --- docs/package.json | 6 +- package.json | 14 +- packages-internal/scripts/package.json | 4 +- packages/api-docs-builder/package.json | 4 +- packages/markdown/package.json | 2 +- packages/mui-babel-macros/package.json | 2 +- packages/mui-base/package.json | 2 +- packages/mui-codemod/package.json | 6 +- packages/mui-docs/package.json | 2 +- packages/mui-icons-material/package.json | 2 +- packages/mui-joy/package.json | 2 +- packages/mui-lab/package.json | 2 +- packages/mui-material-nextjs/package.json | 2 +- packages/mui-material/package.json | 2 +- packages/mui-private-theming/package.json | 2 +- packages/mui-styled-engine-sc/package.json | 2 +- packages/mui-styled-engine/package.json | 2 +- packages/mui-styles/package.json | 2 +- packages/mui-system/package.json | 2 +- packages/mui-utils/package.json | 2 +- packages/test-utils/package.json | 2 +- pnpm-lock.yaml | 1972 ++++++++++---------- test/package.json | 2 +- 23 files changed, 1020 insertions(+), 1020 deletions(-) diff --git a/docs/package.json b/docs/package.json index 75a1e10d9cb908..ae8a0a0098b33c 100644 --- a/docs/package.json +++ b/docs/package.json @@ -19,9 +19,9 @@ "link-check": "node ./scripts/reportBrokenLinks.js" }, "dependencies": { - "@babel/core": "^7.24.4", - "@babel/runtime": "^7.24.4", - "@babel/runtime-corejs2": "^7.24.4", + "@babel/core": "^7.24.5", + "@babel/runtime": "^7.24.5", + "@babel/runtime-corejs2": "^7.24.5", "@docsearch/react": "^3.6.0", "@emotion/cache": "^11.11.0", "@emotion/react": "^11.11.4", diff --git a/package.json b/package.json index 36c1a40a0126c2..9b44d7d0a854ca 100644 --- a/package.json +++ b/package.json @@ -89,8 +89,8 @@ }, "devDependencies": { "@argos-ci/core": "^2.2.0", - "@babel/cli": "^7.24.1", - "@babel/core": "^7.24.4", + "@babel/cli": "^7.24.5", + "@babel/core": "^7.24.5", "@babel/node": "^7.23.9", "@babel/plugin-proposal-class-properties": "^7.18.6", "@babel/plugin-proposal-object-rest-spread": "^7.20.7", @@ -98,7 +98,7 @@ "@babel/plugin-proposal-private-property-in-object": "^7.21.11", "@babel/plugin-transform-react-constant-elements": "^7.24.1", "@babel/plugin-transform-runtime": "^7.24.3", - "@babel/preset-env": "^7.24.4", + "@babel/preset-env": "^7.24.5", "@babel/preset-react": "^7.24.1", "@babel/preset-typescript": "^7.24.1", "@babel/register": "^7.23.7", @@ -191,7 +191,7 @@ }, "packageManager": "pnpm@8.15.8", "resolutions": { - "@babel/core": "^7.24.4", + "@babel/core": "^7.24.5", "@babel/code-frame": "^7.24.2", "@babel/plugin-proposal-class-properties": "^7.18.6", "@babel/plugin-proposal-object-rest-spread": "^7.20.7", @@ -200,11 +200,11 @@ "@babel/plugin-proposal-optional-chaining": "^7.21.0", "@babel/plugin-transform-destructuring": "npm:@minh.nguyen/plugin-transform-destructuring@^7.5.2", "@babel/plugin-transform-runtime": "^7.24.3", - "@babel/preset-env": "^7.24.4", + "@babel/preset-env": "^7.24.5", "@babel/preset-react": "^7.24.1", "@babel/preset-typescript": "^7.24.1", - "@babel/runtime": "^7.24.4", - "@babel/types": "^7.24.0", + "@babel/runtime": "^7.24.5", + "@babel/types": "^7.24.5", "@definitelytyped/header-parser": "^0.2.9", "@definitelytyped/typescript-versions": "^0.1.1", "@definitelytyped/utils": "^0.1.6", diff --git a/packages-internal/scripts/package.json b/packages-internal/scripts/package.json index bf7ef347a90873..570b550969025d 100644 --- a/packages-internal/scripts/package.json +++ b/packages-internal/scripts/package.json @@ -25,11 +25,11 @@ "typescript": "tsc --build tsconfig.typecheck.json" }, "dependencies": { - "@babel/core": "^7.24.4", + "@babel/core": "^7.24.5", "@babel/plugin-syntax-class-properties": "^7.12.13", "@babel/plugin-syntax-jsx": "^7.24.1", "@babel/plugin-syntax-typescript": "^7.24.1", - "@babel/types": "^7.24.0", + "@babel/types": "^7.24.5", "@mui/internal-docs-utils": "workspace:^", "doctrine": "^3.0.0", "lodash": "^4.17.21", diff --git a/packages/api-docs-builder/package.json b/packages/api-docs-builder/package.json index 9ed7c72b841571..8de67fb5b563ce 100644 --- a/packages/api-docs-builder/package.json +++ b/packages/api-docs-builder/package.json @@ -8,9 +8,9 @@ "typescript": "tsc -p tsconfig.json" }, "dependencies": { - "@babel/core": "^7.24.4", + "@babel/core": "^7.24.5", "@babel/preset-typescript": "^7.24.1", - "@babel/traverse": "^7.24.1", + "@babel/traverse": "^7.24.5", "@mui/internal-docs-utils": "workspace:^", "@mui/internal-markdown": "workspace:^", "ast-types": "^0.14.2", diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 0fd9234cb172dc..b518d5f46dc56f 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -20,7 +20,7 @@ "release:publish:dry-run": "pnpm publish --tag latest --registry=\"http://localhost:4873/\"" }, "dependencies": { - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "lodash": "^4.17.21", "marked": "^5.1.2", "prismjs": "^1.29.0" diff --git a/packages/mui-babel-macros/package.json b/packages/mui-babel-macros/package.json index 6e5196d1f2521e..fe86bff2c8a5d5 100644 --- a/packages/mui-babel-macros/package.json +++ b/packages/mui-babel-macros/package.json @@ -24,7 +24,7 @@ }, "dependencies": { "@babel/helper-module-imports": "^7.24.3", - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "babel-plugin-macros": "^3.1.0" }, "devDependencies": { diff --git a/packages/mui-base/package.json b/packages/mui-base/package.json index ad883b83ee3657..1c9fec905e78fd 100644 --- a/packages/mui-base/package.json +++ b/packages/mui-base/package.json @@ -40,7 +40,7 @@ "typescript:module-augmentation": "node scripts/testModuleAugmentation.js" }, "dependencies": { - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "@floating-ui/react-dom": "^2.0.8", "@mui/types": "workspace:^", "@mui/utils": "workspace:^", diff --git a/packages/mui-codemod/package.json b/packages/mui-codemod/package.json index e3a366b54c42a8..461db7b6f52577 100644 --- a/packages/mui-codemod/package.json +++ b/packages/mui-codemod/package.json @@ -30,9 +30,9 @@ "url": "https://opencollective.com/mui-org" }, "dependencies": { - "@babel/core": "^7.24.4", - "@babel/runtime": "^7.24.4", - "@babel/traverse": "^7.24.1", + "@babel/core": "^7.24.5", + "@babel/runtime": "^7.24.5", + "@babel/traverse": "^7.24.5", "jscodeshift": "^0.15.2", "jscodeshift-add-imports": "^1.0.10", "postcss": "^8.4.38", diff --git a/packages/mui-docs/package.json b/packages/mui-docs/package.json index 6059c3916dc91b..bc5790b33d1f0d 100644 --- a/packages/mui-docs/package.json +++ b/packages/mui-docs/package.json @@ -34,7 +34,7 @@ "test": "exit 0" }, "dependencies": { - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "@mui/internal-markdown": "workspace:^", "clipboard-copy": "^4.0.1", "clsx": "^2.1.1", diff --git a/packages/mui-icons-material/package.json b/packages/mui-icons-material/package.json index 02f2d23c517a71..622a010a635fe3 100644 --- a/packages/mui-icons-material/package.json +++ b/packages/mui-icons-material/package.json @@ -45,7 +45,7 @@ "typescript": "tsc -p tsconfig.json" }, "dependencies": { - "@babel/runtime": "^7.24.4" + "@babel/runtime": "^7.24.5" }, "devDependencies": { "@mui/icons-material": "workspace:*", diff --git a/packages/mui-joy/package.json b/packages/mui-joy/package.json index 4ccf8ccefafb51..888778b84f8401 100644 --- a/packages/mui-joy/package.json +++ b/packages/mui-joy/package.json @@ -38,7 +38,7 @@ "typescript:module-augmentation": "node scripts/testModuleAugmentation.js" }, "dependencies": { - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "@mui/base": "workspace:*", "@mui/core-downloads-tracker": "workspace:^", "@mui/system": "workspace:^", diff --git a/packages/mui-lab/package.json b/packages/mui-lab/package.json index d8107271192ecc..d63c1f522d63b5 100644 --- a/packages/mui-lab/package.json +++ b/packages/mui-lab/package.json @@ -40,7 +40,7 @@ "typescript": "tsc -p tsconfig.json" }, "dependencies": { - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "@mui/base": "workspace:*", "@mui/system": "workspace:^", "@mui/types": "workspace:^", diff --git a/packages/mui-material-nextjs/package.json b/packages/mui-material-nextjs/package.json index 431d6d7ebcd00f..6121d31969c23e 100644 --- a/packages/mui-material-nextjs/package.json +++ b/packages/mui-material-nextjs/package.json @@ -36,7 +36,7 @@ "typescript": "tsc -p tsconfig.json" }, "dependencies": { - "@babel/runtime": "^7.24.4" + "@babel/runtime": "^7.24.5" }, "devDependencies": { "@emotion/cache": "^11.11.0", diff --git a/packages/mui-material/package.json b/packages/mui-material/package.json index f4765837958d9d..96160287d8fbc3 100644 --- a/packages/mui-material/package.json +++ b/packages/mui-material/package.json @@ -41,7 +41,7 @@ "typescript:module-augmentation": "node scripts/testModuleAugmentation.js" }, "dependencies": { - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "@mui/base": "workspace:*", "@mui/core-downloads-tracker": "workspace:^", "@mui/system": "workspace:^", diff --git a/packages/mui-private-theming/package.json b/packages/mui-private-theming/package.json index 8a8e1e23efc903..08c08da149a60c 100644 --- a/packages/mui-private-theming/package.json +++ b/packages/mui-private-theming/package.json @@ -37,7 +37,7 @@ "typescript": "tsc -p tsconfig.json" }, "dependencies": { - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "@mui/utils": "workspace:^", "prop-types": "^15.8.1" }, diff --git a/packages/mui-styled-engine-sc/package.json b/packages/mui-styled-engine-sc/package.json index cca85ad439bf05..d1f9880afe467a 100644 --- a/packages/mui-styled-engine-sc/package.json +++ b/packages/mui-styled-engine-sc/package.json @@ -37,7 +37,7 @@ "typescript": "tsc -p tsconfig.json" }, "dependencies": { - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "csstype": "^3.1.3", "hoist-non-react-statics": "^3.3.2", "prop-types": "^15.8.1" diff --git a/packages/mui-styled-engine/package.json b/packages/mui-styled-engine/package.json index 23236aa86fc52a..82c7f733bf1f93 100644 --- a/packages/mui-styled-engine/package.json +++ b/packages/mui-styled-engine/package.json @@ -37,7 +37,7 @@ "typescript": "tsc -p tsconfig.json" }, "dependencies": { - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "@emotion/cache": "^11.11.0", "csstype": "^3.1.3", "prop-types": "^15.8.1" diff --git a/packages/mui-styles/package.json b/packages/mui-styles/package.json index 4c5f58179bb80e..5d0279be513b66 100644 --- a/packages/mui-styles/package.json +++ b/packages/mui-styles/package.json @@ -37,7 +37,7 @@ "typescript": "tsc -p tsconfig.json" }, "dependencies": { - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "@emotion/hash": "^0.9.1", "@mui/private-theming": "workspace:^", "@mui/types": "workspace:^", diff --git a/packages/mui-system/package.json b/packages/mui-system/package.json index 611a211269f121..82e68fa82d3062 100644 --- a/packages/mui-system/package.json +++ b/packages/mui-system/package.json @@ -39,7 +39,7 @@ "typescript:module-augmentation": "node scripts/testModuleAugmentation.js" }, "dependencies": { - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "@mui/private-theming": "workspace:^", "@mui/styled-engine": "workspace:^", "@mui/types": "workspace:^", diff --git a/packages/mui-utils/package.json b/packages/mui-utils/package.json index b6f91887453fcb..31f07855ea22ca 100644 --- a/packages/mui-utils/package.json +++ b/packages/mui-utils/package.json @@ -38,7 +38,7 @@ "typescript": "tsc -p tsconfig.json" }, "dependencies": { - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "@types/prop-types": "^15.7.12", "prop-types": "^15.8.1", "react-is": "^18.2.0" diff --git a/packages/test-utils/package.json b/packages/test-utils/package.json index 957745a531163d..bc5e0551391660 100644 --- a/packages/test-utils/package.json +++ b/packages/test-utils/package.json @@ -21,7 +21,7 @@ "@babel/plugin-transform-modules-commonjs": "^7.24.1", "@babel/preset-typescript": "^7.24.1", "@babel/register": "^7.23.7", - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "@emotion/cache": "^11.11.0", "@emotion/react": "^11.11.4", "@mnajdova/enzyme-adapter-react-18": "^0.2.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a549cb418db453..0e7cdbc8309e37 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5,7 +5,7 @@ settings: excludeLinksFromLockfile: false overrides: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 '@babel/code-frame': ^7.24.2 '@babel/plugin-proposal-class-properties': ^7.18.6 '@babel/plugin-proposal-object-rest-spread': ^7.20.7 @@ -14,11 +14,11 @@ overrides: '@babel/plugin-proposal-optional-chaining': ^7.21.0 '@babel/plugin-transform-destructuring': npm:@minh.nguyen/plugin-transform-destructuring@^7.5.2 '@babel/plugin-transform-runtime': ^7.24.3 - '@babel/preset-env': ^7.24.4 + '@babel/preset-env': ^7.24.5 '@babel/preset-react': ^7.24.1 '@babel/preset-typescript': ^7.24.1 - '@babel/runtime': ^7.24.4 - '@babel/types': ^7.24.0 + '@babel/runtime': ^7.24.5 + '@babel/types': ^7.24.5 '@definitelytyped/header-parser': ^0.2.9 '@definitelytyped/typescript-versions': ^0.1.1 '@definitelytyped/utils': ^0.1.6 @@ -51,44 +51,44 @@ importers: specifier: ^2.2.0 version: 2.2.0 '@babel/cli': - specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.4) + specifier: ^7.24.5 + version: 7.24.5(@babel/core@7.24.5) '@babel/core': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@babel/node': specifier: ^7.23.9 - version: 7.23.9(@babel/core@7.24.4) + version: 7.23.9(@babel/core@7.24.5) '@babel/plugin-proposal-class-properties': specifier: ^7.18.6 - version: 7.18.6(@babel/core@7.24.4) + version: 7.18.6(@babel/core@7.24.5) '@babel/plugin-proposal-object-rest-spread': specifier: ^7.20.7 - version: 7.20.7(@babel/core@7.24.4) + version: 7.20.7(@babel/core@7.24.5) '@babel/plugin-proposal-private-methods': specifier: ^7.18.6 - version: 7.18.6(@babel/core@7.24.4) + version: 7.18.6(@babel/core@7.24.5) '@babel/plugin-proposal-private-property-in-object': specifier: ^7.21.11 - version: 7.21.11(@babel/core@7.24.4) + version: 7.21.11(@babel/core@7.24.5) '@babel/plugin-transform-react-constant-elements': specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.4) + version: 7.24.1(@babel/core@7.24.5) '@babel/plugin-transform-runtime': specifier: ^7.24.3 - version: 7.24.3(@babel/core@7.24.4) + version: 7.24.3(@babel/core@7.24.5) '@babel/preset-env': - specifier: ^7.24.4 - version: 7.24.4(@babel/core@7.24.4) + specifier: ^7.24.5 + version: 7.24.5(@babel/core@7.24.5) '@babel/preset-react': specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.4) + version: 7.24.1(@babel/core@7.24.5) '@babel/preset-typescript': specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.4) + version: 7.24.1(@babel/core@7.24.5) '@babel/register': specifier: ^7.23.7 - version: 7.23.7(@babel/core@7.24.4) + version: 7.23.7(@babel/core@7.24.5) '@mnajdova/enzyme-adapter-react-18': specifier: ^0.2.0 version: 0.2.0(enzyme@3.11.0)(react-dom@18.2.0)(react@18.2.0) @@ -160,7 +160,7 @@ importers: version: 6.21.0(eslint@8.57.0)(typescript@5.4.5) babel-loader: specifier: ^9.1.3 - version: 9.1.3(@babel/core@7.24.4)(webpack@5.91.0) + version: 9.1.3(@babel/core@7.24.5)(webpack@5.91.0) babel-plugin-istanbul: specifier: ^6.1.1 version: 6.1.1 @@ -388,7 +388,7 @@ importers: version: link:../local-ui-lib next: specifier: latest - version: 14.2.3(@babel/core@7.24.4)(@playwright/test@1.43.1)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) + version: 14.2.3(@babel/core@7.24.5)(@playwright/test@1.43.1)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) react: specifier: ^18.2.0 version: 18.2.0 @@ -462,10 +462,10 @@ importers: devDependencies: '@babel/preset-react': specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.4) + version: 7.24.1(@babel/core@7.24.5) '@babel/preset-typescript': specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.4) + version: 7.24.1(@babel/core@7.24.5) '@pigment-css/vite-plugin': specifier: ^0.0.9 version: 0.0.9(@types/react@18.2.55)(react@18.2.0)(vite@5.2.10) @@ -575,14 +575,14 @@ importers: docs: dependencies: '@babel/core': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@babel/runtime-corejs2': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@docsearch/react': specifier: ^3.6.0 version: 3.6.0(@algolia/client-search@4.23.0)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0)(search-insights@2.13.0) @@ -762,7 +762,7 @@ importers: version: 5.1.0(@mui/material@packages+mui-material+build)(react@18.2.0) next: specifier: ^13.5.1 - version: 13.5.1(@babel/core@7.24.4)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) + version: 13.5.1(@babel/core@7.24.5)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) notistack: specifier: 3.0.1 version: 3.0.1(csstype@3.1.3)(react-dom@18.2.0)(react@18.2.0) @@ -850,10 +850,10 @@ importers: devDependencies: '@babel/plugin-transform-react-constant-elements': specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.4) + version: 7.24.1(@babel/core@7.24.5) '@babel/preset-typescript': specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.4) + version: 7.24.1(@babel/core@7.24.5) '@mui-internal/test-utils': specifier: workspace:^ version: link:../packages/test-utils @@ -939,20 +939,20 @@ importers: packages-internal/scripts: dependencies: '@babel/core': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@babel/plugin-syntax-class-properties': specifier: ^7.12.13 - version: 7.12.13(@babel/core@7.24.4) + version: 7.12.13(@babel/core@7.24.5) '@babel/plugin-syntax-jsx': specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.4) + version: 7.24.1(@babel/core@7.24.5) '@babel/plugin-syntax-typescript': specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.4) + version: 7.24.1(@babel/core@7.24.5) '@babel/types': - specifier: ^7.24.0 - version: 7.24.0 + specifier: ^7.24.5 + version: 7.24.5 '@mui/internal-docs-utils': specifier: workspace:^ version: link:../docs-utils @@ -971,7 +971,7 @@ importers: devDependencies: '@babel/register': specifier: ^7.23.7 - version: 7.23.7(@babel/core@7.24.4) + version: 7.23.7(@babel/core@7.24.5) '@types/babel__core': specifier: ^7.20.5 version: 7.20.5 @@ -1012,14 +1012,14 @@ importers: packages/api-docs-builder: dependencies: '@babel/core': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@babel/preset-typescript': specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.4) + version: 7.24.1(@babel/core@7.24.5) '@babel/traverse': - specifier: ^7.24.1 - version: 7.24.1 + specifier: ^7.24.5 + version: 7.24.5 '@mui/internal-docs-utils': specifier: workspace:^ version: link:../../packages-internal/docs-utils @@ -1167,8 +1167,8 @@ importers: packages/markdown: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 lodash: specifier: ^4.17.21 version: 4.17.21 @@ -1192,8 +1192,8 @@ importers: specifier: ^7.24.3 version: 7.24.3 '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@mui/utils': specifier: ^5.0.0 version: 5.15.14(@types/react@18.2.55)(react@18.2.0) @@ -1218,7 +1218,7 @@ importers: version: 18.19.31 babel-plugin-tester: specifier: ^11.0.4 - version: 11.0.4(@babel/core@7.24.4) + version: 11.0.4(@babel/core@7.24.5) chai: specifier: ^4.4.1 version: 4.4.1 @@ -1226,8 +1226,8 @@ importers: packages/mui-base: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@floating-ui/react-dom': specifier: ^2.0.8 version: 2.0.8(react-dom@18.2.0)(react@18.2.0) @@ -1297,17 +1297,17 @@ importers: packages/mui-codemod: dependencies: '@babel/core': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@babel/traverse': - specifier: ^7.24.1 - version: 7.24.1 + specifier: ^7.24.5 + version: 7.24.5 jscodeshift: specifier: ^0.15.2 - version: 0.15.2(@babel/preset-env@7.24.4) + version: 0.15.2(@babel/preset-env@7.24.5) jscodeshift-add-imports: specifier: ^1.0.10 version: 1.0.10(jscodeshift@0.15.2) @@ -1338,8 +1338,8 @@ importers: packages/mui-docs: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@mui/base': specifier: '*' version: link:../mui-base/build @@ -1379,7 +1379,7 @@ importers: version: 18.2.55 next: specifier: ^13.5.1 - version: 13.5.1(@babel/core@7.24.4)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) + version: 13.5.1(@babel/core@7.24.5)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) react: specifier: ^18.2.0 version: 18.2.0 @@ -1432,8 +1432,8 @@ importers: packages/mui-icons-material: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 devDependencies: '@mui/icons-material': specifier: workspace:* @@ -1491,8 +1491,8 @@ importers: packages/mui-joy: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@emotion/react': specifier: ^11.5.0 version: 11.11.4(@types/react@18.2.55)(react@18.2.0) @@ -1553,7 +1553,7 @@ importers: version: 4.17.21 next: specifier: ^13.4.19 - version: 13.5.1(@babel/core@7.24.4)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) + version: 13.5.1(@babel/core@7.24.5)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) react: specifier: ^18.2.0 version: 18.2.0 @@ -1568,8 +1568,8 @@ importers: packages/mui-lab: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@emotion/react': specifier: ^11.5.0 version: 11.11.4(@types/react@18.2.55)(react@18.2.0) @@ -1633,8 +1633,8 @@ importers: packages/mui-material: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@emotion/react': specifier: ^11.5.0 version: 11.11.4(@types/react@18.2.55)(react@18.2.0) @@ -1743,7 +1743,7 @@ importers: version: 3.29.4 rollup-plugin-babel: specifier: ^4.4.0 - version: 4.4.0(@babel/core@7.24.4)(rollup@3.29.4) + version: 4.4.0(@babel/core@7.24.5)(rollup@3.29.4) rollup-plugin-commonjs: specifier: ^10.1.0 version: 10.1.0(rollup@3.29.4) @@ -1764,8 +1764,8 @@ importers: packages/mui-material-nextjs: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@mui/material': specifier: workspace:^ version: link:../mui-material/build @@ -1784,7 +1784,7 @@ importers: version: 18.2.55 next: specifier: 13.5.1 - version: 13.5.1(@babel/core@7.24.4)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) + version: 13.5.1(@babel/core@7.24.5)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) react: specifier: ^18.2.0 version: 18.2.0 @@ -1793,8 +1793,8 @@ importers: packages/mui-private-theming: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@mui/utils': specifier: workspace:^ version: link:../mui-utils/build @@ -1825,8 +1825,8 @@ importers: packages/mui-styled-engine: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@emotion/cache': specifier: ^11.11.0 version: 11.11.0 @@ -1866,8 +1866,8 @@ importers: packages/mui-styled-engine-sc: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 csstype: specifier: ^3.1.3 version: 3.1.3 @@ -1907,8 +1907,8 @@ importers: packages/mui-styles: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@emotion/hash': specifier: ^0.9.1 version: 0.9.1 @@ -1993,8 +1993,8 @@ importers: packages/mui-system: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@mui/private-theming': specifier: workspace:^ version: link:../mui-private-theming/build @@ -2077,8 +2077,8 @@ importers: packages/mui-utils: dependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@types/prop-types': specifier: ^15.7.12 version: 15.7.12 @@ -2165,16 +2165,16 @@ importers: dependencies: '@babel/plugin-transform-modules-commonjs': specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.4) + version: 7.24.1(@babel/core@7.24.5) '@babel/preset-typescript': specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.4) + version: 7.24.1(@babel/core@7.24.5) '@babel/register': specifier: ^7.23.7 - version: 7.23.7(@babel/core@7.24.4) + version: 7.23.7(@babel/core@7.24.5) '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@emotion/cache': specifier: ^11.11.0 version: 11.11.0 @@ -2272,8 +2272,8 @@ importers: test: devDependencies: '@babel/runtime': - specifier: ^7.24.4 - version: 7.24.4 + specifier: ^7.24.5 + version: 7.24.5 '@emotion/cache': specifier: ^11.11.0 version: 11.11.0 @@ -2591,14 +2591,14 @@ packages: engines: {node: '>=18.0.0'} dev: true - /@babel/cli@7.24.1(@babel/core@7.24.4): - resolution: {integrity: sha512-HbmrtxyFUr34LwAlV9jS+sSIjUp4FpdtIMGwgufY3AsxrIfsh/HxlMTywsONAZsU0RMYbZtbZFpUCrSGs7o0EA==} + /@babel/cli@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-2qg1mYtJRsOOWF6IUwLP5jI42P8Cc0hQ5TmnjLrik/4DKouO8dFJN80HEz81VmVeUs97yuuf3vQ/9j7Elrcjlg==} engines: {node: '>=6.9.0'} hasBin: true peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@jridgewell/trace-mapping': 0.3.25 commander: 4.1.1 convert-source-map: 2.0.0 @@ -2622,20 +2622,20 @@ packages: resolution: {integrity: sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==} engines: {node: '>=6.9.0'} - /@babel/core@7.24.4: - resolution: {integrity: sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==} + /@babel/core@7.24.5: + resolution: {integrity: sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==} engines: {node: '>=6.9.0'} dependencies: '@ampproject/remapping': 2.3.0 '@babel/code-frame': 7.24.2 - '@babel/generator': 7.24.4 + '@babel/generator': 7.24.5 '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.4) - '@babel/helpers': 7.24.4 - '@babel/parser': 7.24.4 + '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) + '@babel/helpers': 7.24.5 + '@babel/parser': 7.24.5 '@babel/template': 7.24.0 - '@babel/traverse': 7.24.1 - '@babel/types': 7.24.0 + '@babel/traverse': 7.24.5 + '@babel/types': 7.24.5 convert-source-map: 2.0.0 debug: 4.3.4(supports-color@8.1.1) gensync: 1.0.0-beta.2 @@ -2644,11 +2644,11 @@ packages: transitivePeerDependencies: - supports-color - /@babel/generator@7.24.4: - resolution: {integrity: sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==} + /@babel/generator@7.24.5: + resolution: {integrity: sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 2.5.2 @@ -2657,13 +2657,13 @@ packages: resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15: resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 /@babel/helper-compilation-targets@7.23.6: resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} @@ -2675,42 +2675,42 @@ packages: lru-cache: 5.1.1 semver: 6.3.1 - /@babel/helper-create-class-features-plugin@7.24.4(@babel/core@7.24.4): - resolution: {integrity: sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==} + /@babel/helper-create-class-features-plugin@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-uRc4Cv8UQWnE4NXlYTIIdM7wfFkOqlFztcC/gVXDKohKoVB3OyonfelUBaJzSwpBntZ2KYGF/9S7asCHsXwW6g==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-function-name': 7.23.0 - '@babel/helper-member-expression-to-functions': 7.23.0 + '@babel/helper-member-expression-to-functions': 7.24.5 '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.4) + '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.5) '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 + '@babel/helper-split-export-declaration': 7.24.5 semver: 6.3.1 - /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.24.4): + /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.24.5): resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-annotate-as-pure': 7.22.5 regexpu-core: 5.3.2 semver: 6.3.1 - /@babel/helper-define-polyfill-provider@0.6.1(@babel/core@7.24.4): + /@babel/helper-define-polyfill-provider@0.6.1(@babel/core@7.24.5): resolution: {integrity: sha512-o7SDgTJuvx5vLKD6SFvkydkSMBvahDKGiNJzG22IZYXhiqoe9efY7zocICBgzHV4IRg5wdgl2nEL/tulKIEIbA==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 debug: 4.3.4(supports-color@8.1.1) lodash.debounce: 4.0.8 resolve: 1.22.8 @@ -2726,95 +2726,95 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.24.0 - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 /@babel/helper-hoist-variables@7.22.5: resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 - /@babel/helper-member-expression-to-functions@7.23.0: - resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} + /@babel/helper-member-expression-to-functions@7.24.5: + resolution: {integrity: sha512-4owRteeihKWKamtqg4JmWSsEZU445xpFRXPEwp44HbgbxdWlUV1b4Agg4lkA806Lil5XM/e+FJyS0vj5T6vmcA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 /@babel/helper-module-imports@7.24.3: resolution: {integrity: sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 - /@babel/helper-module-transforms@7.23.3(@babel/core@7.24.4): - resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} + /@babel/helper-module-transforms@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-module-imports': 7.24.3 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.20 + '@babel/helper-simple-access': 7.24.5 + '@babel/helper-split-export-declaration': 7.24.5 + '@babel/helper-validator-identifier': 7.24.5 /@babel/helper-optimise-call-expression@7.22.5: resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 - /@babel/helper-plugin-utils@7.24.0: - resolution: {integrity: sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==} + /@babel/helper-plugin-utils@7.24.5: + resolution: {integrity: sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ==} engines: {node: '>=6.9.0'} - /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.24.4): + /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.24.5): resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-wrap-function': 7.22.20 - /@babel/helper-replace-supers@7.24.1(@babel/core@7.24.4): + /@babel/helper-replace-supers@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-member-expression-to-functions': 7.23.0 + '@babel/helper-member-expression-to-functions': 7.24.5 '@babel/helper-optimise-call-expression': 7.22.5 - /@babel/helper-simple-access@7.22.5: - resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} + /@babel/helper-simple-access@7.24.5: + resolution: {integrity: sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 /@babel/helper-skip-transparent-expression-wrappers@7.22.5: resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 - /@babel/helper-split-export-declaration@7.22.6: - resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} + /@babel/helper-split-export-declaration@7.24.5: + resolution: {integrity: sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 /@babel/helper-string-parser@7.24.1: resolution: {integrity: sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==} engines: {node: '>=6.9.0'} - /@babel/helper-validator-identifier@7.22.20: - resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} + /@babel/helper-validator-identifier@7.24.5: + resolution: {integrity: sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==} engines: {node: '>=6.9.0'} /@babel/helper-validator-option@7.23.5: @@ -2827,15 +2827,15 @@ packages: dependencies: '@babel/helper-function-name': 7.23.0 '@babel/template': 7.24.0 - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 - /@babel/helpers@7.24.4: - resolution: {integrity: sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==} + /@babel/helpers@7.24.5: + resolution: {integrity: sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==} engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.24.0 - '@babel/traverse': 7.24.1 - '@babel/types': 7.24.0 + '@babel/traverse': 7.24.5 + '@babel/types': 7.24.5 transitivePeerDependencies: - supports-color @@ -2843,20 +2843,20 @@ packages: resolution: {integrity: sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-validator-identifier': 7.22.20 + '@babel/helper-validator-identifier': 7.24.5 chalk: 2.4.2 js-tokens: 4.0.0 picocolors: 1.0.0 - /@babel/node@7.23.9(@babel/core@7.24.4): + /@babel/node@7.23.9(@babel/core@7.24.5): resolution: {integrity: sha512-/d4ju/POwlGIJlZ+NqWH1qu61wt6ZlTZZZutrK2MOSdaH1JCh726nLw/GSvAjG+LTY6CO9SsB8uWcttnFKm6yg==} engines: {node: '>=6.9.0'} hasBin: true peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/register': 7.23.7(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/register': 7.23.7(@babel/core@7.24.5) commander: 4.1.1 core-js: 3.32.1 node-environment-flags: 1.0.6 @@ -2864,1107 +2864,1107 @@ packages: v8flags: 3.2.0 dev: true - /@babel/parser@7.24.4: - resolution: {integrity: sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==} + /@babel/parser@7.24.5: + resolution: {integrity: sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 - /@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.4(@babel/core@7.24.4): - resolution: {integrity: sha512-qpl6vOOEEzTLLcsuqYYo8yDtrTocmu2xkGvgNebvPjT9DTtfFYGmgDqY+rBYXNlqL4s9qLDn6xkrJv4RxAPiTA==} + /@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-LdXRi1wEMTrHVR4Zc9F8OewC3vdm5h4QB6L71zy6StmYeqGi1b3ttIO8UC+BfZKcH9jdr4aI249rBkm+3+YvHw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.1(@babel/core@7.24.4): + /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.1(@babel/core@7.24.4): + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-optional-chaining': 7.24.1(@babel/core@7.24.4) + '@babel/plugin-transform-optional-chaining': 7.24.5(@babel/core@7.24.5) - /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.1(@babel/core@7.24.4): + /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-m9m/fXsXLiHfwdgydIFnpk+7jlVbnvlK5B2EKiPdLUb6WX654ZaaEWJUjk8TftRbZpK0XibovlLWX4KIZhV6jw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-proposal-async-generator-functions@7.20.7(@babel/core@7.24.4): + /@babel/plugin-proposal-async-generator-functions@7.20.7(@babel/core@7.24.5): resolution: {integrity: sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead. peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.4) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.4) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.5) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.5) dev: false - /@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.24.4): + /@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.24.5): resolution: {integrity: sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead. peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-create-class-features-plugin': 7.24.4(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-proposal-export-default-from@7.24.1(@babel/core@7.24.4): + /@babel/plugin-proposal-export-default-from@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-+0hrgGGV3xyYIjOrD/bUZk/iUwOIGuoANfRfVg1cPhYBxF+TIXSEcc42DqzBICmWsnAQ+SfKedY0bj8QD+LuMg==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-export-default-from': 7.24.1(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-export-default-from': 7.24.1(@babel/core@7.24.5) dev: false - /@babel/plugin-proposal-nullish-coalescing-operator@7.18.6(@babel/core@7.24.4): + /@babel/plugin-proposal-nullish-coalescing-operator@7.18.6(@babel/core@7.24.5): resolution: {integrity: sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead. peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.5) dev: false - /@babel/plugin-proposal-numeric-separator@7.18.6(@babel/core@7.24.4): + /@babel/plugin-proposal-numeric-separator@7.18.6(@babel/core@7.24.5): resolution: {integrity: sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead. peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.5) dev: false - /@babel/plugin-proposal-object-rest-spread@7.20.7(@babel/core@7.24.4): + /@babel/plugin-proposal-object-rest-spread@7.20.7(@babel/core@7.24.5): resolution: {integrity: sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead. peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: '@babel/compat-data': 7.24.4 - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.4) - '@babel/plugin-transform-parameters': 7.24.1(@babel/core@7.24.4) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.5) + '@babel/plugin-transform-parameters': 7.24.5(@babel/core@7.24.5) - /@babel/plugin-proposal-optional-catch-binding@7.18.6(@babel/core@7.24.4): + /@babel/plugin-proposal-optional-catch-binding@7.18.6(@babel/core@7.24.5): resolution: {integrity: sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead. peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.5) dev: false - /@babel/plugin-proposal-optional-chaining@7.21.0(@babel/core@7.24.4): + /@babel/plugin-proposal-optional-chaining@7.21.0(@babel/core@7.24.5): resolution: {integrity: sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead. peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.4) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.5) dev: false - /@babel/plugin-proposal-private-methods@7.18.6(@babel/core@7.24.4): + /@babel/plugin-proposal-private-methods@7.18.6(@babel/core@7.24.5): resolution: {integrity: sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-methods instead. peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-create-class-features-plugin': 7.24.4(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 dev: true - /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.4): + /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.5): resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 - /@babel/plugin-proposal-private-property-in-object@7.21.11(@babel/core@7.24.4): + /@babel/plugin-proposal-private-property-in-object@7.21.11(@babel/core@7.24.5): resolution: {integrity: sha512-0QZ8qP/3RLDVBwBFoWAwCtgcDZJVwA5LUJRZU8x2YFfKNuFq161wK3cuGrALu5yiPu+vzwTAg/sMWVNeWeNyaw==} engines: {node: '>=6.9.0'} deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-property-in-object instead. peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.24.4(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.4) + '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.5) dev: true - /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.4): + /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.5): resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.4): + /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.5): resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.4): + /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.5): resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.4): + /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-export-default-from@7.24.1(@babel/core@7.24.4): + /@babel/plugin-syntax-export-default-from@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-cNXSxv9eTkGUtd0PsNMK8Yx5xeScxfpWOUAxE+ZPAXXEcAMOC3fk7LRdXq5fvpra2pLx2p1YtkAhpUbB2SwaRA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 dev: false - /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.4): + /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-flow@7.24.1(@babel/core@7.24.4): + /@babel/plugin-syntax-flow@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-sxi2kLTI5DeW5vDtMUsk4mTPwvlUDbjOnoWayhynCwrw4QXRld4QEYwqzY8JmQXaJUtgUuCIurtSRH5sn4c7mA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 dev: false - /@babel/plugin-syntax-import-assertions@7.24.1(@babel/core@7.24.4): + /@babel/plugin-syntax-import-assertions@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-import-attributes@7.24.1(@babel/core@7.24.4): + /@babel/plugin-syntax-import-attributes@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.4): + /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.5): resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.4): + /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-jsx@7.24.1(@babel/core@7.24.4): + /@babel/plugin-syntax-jsx@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.4): + /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.5): resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.4): + /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.4): + /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.5): resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.4): + /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.4): + /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.4): + /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.4): + /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.5): resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.4): + /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.5): resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-typescript@7.24.1(@babel/core@7.24.4): + /@babel/plugin-syntax-typescript@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.4): + /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.5): resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-arrow-functions@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-arrow-functions@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-async-generator-functions@7.24.3(@babel/core@7.24.4): + /@babel/plugin-transform-async-generator-functions@7.24.3(@babel/core@7.24.5): resolution: {integrity: sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.4) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.4) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.5) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.5) - /@babel/plugin-transform-async-to-generator@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-async-to-generator@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-AawPptitRXp1y0n4ilKcGbRYWfbbzFWz2NqNu7dacYDtFtz0CMjG64b3LQsb3KIgnf4/obcUL78hfaOS7iCUfw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-module-imports': 7.24.3 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.4) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.5) - /@babel/plugin-transform-block-scoped-functions@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-block-scoped-functions@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-block-scoping@7.24.4(@babel/core@7.24.4): - resolution: {integrity: sha512-nIFUZIpGKDf9O9ttyRXpHFpKC+X3Y5mtshZONuEUYBomAKoM4y029Jr+uB1bHGPhNmK8YXHevDtKDOLmtRrp6g==} + /@babel/plugin-transform-block-scoping@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-sMfBc3OxghjC95BkYrYocHL3NaOplrcaunblzwXhGmlPwpmfsxr4vK+mBBt49r+S240vahmv+kUxkeKgs+haCw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-class-properties@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-class-properties@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-create-class-features-plugin': 7.24.4(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-class-static-block@7.24.4(@babel/core@7.24.4): + /@babel/plugin-transform-class-static-block@7.24.4(@babel/core@7.24.5): resolution: {integrity: sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-create-class-features-plugin': 7.24.4(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.5) - /@babel/plugin-transform-classes@7.24.1(@babel/core@7.24.4): - resolution: {integrity: sha512-ZTIe3W7UejJd3/3R4p7ScyyOoafetUShSf4kCqV0O7F/RiHxVj/wRaRnQlrGwflvcehNA8M42HkAiEDYZu2F1Q==} + /@babel/plugin-transform-classes@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-gWkLP25DFj2dwe9Ck8uwMOpko4YsqyfZJrOmqqcegeDYEbp7rmn4U6UQZNj08UF6MaX39XenSpKRCvpDRBtZ7Q==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-function-name': 7.23.0 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.4) - '@babel/helper-split-export-declaration': 7.22.6 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.5) + '@babel/helper-split-export-declaration': 7.24.5 globals: 11.12.0 - /@babel/plugin-transform-computed-properties@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-computed-properties@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 '@babel/template': 7.24.0 - /@babel/plugin-transform-dotall-regex@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-dotall-regex@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-duplicate-keys@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-duplicate-keys@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-dynamic-import@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-dynamic-import@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.5) - /@babel/plugin-transform-exponentiation-operator@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-exponentiation-operator@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-export-namespace-from@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-export-namespace-from@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.5) - /@babel/plugin-transform-flow-strip-types@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-flow-strip-types@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-iIYPIWt3dUmUKKE10s3W+jsQ3icFkw0JyRVyY1B7G4yK/nngAOHLVx8xlhA6b/Jzl/Y0nis8gjqhqKtRDQqHWQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-flow': 7.24.1(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-flow': 7.24.1(@babel/core@7.24.5) dev: false - /@babel/plugin-transform-for-of@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-for-of@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - /@babel/plugin-transform-function-name@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-function-name@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-function-name': 7.23.0 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-json-strings@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-json-strings@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.5) - /@babel/plugin-transform-literals@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-literals@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-logical-assignment-operators@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-logical-assignment-operators@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.5) - /@babel/plugin-transform-member-expression-literals@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-member-expression-literals@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-modules-amd@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-modules-amd@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-modules-commonjs@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-modules-commonjs@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-simple-access': 7.22.5 + '@babel/core': 7.24.5 + '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/helper-simple-access': 7.24.5 - /@babel/plugin-transform-modules-systemjs@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-modules-systemjs@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-validator-identifier': 7.22.20 + '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/helper-validator-identifier': 7.24.5 - /@babel/plugin-transform-modules-umd@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-modules-umd@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.24.4): + /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.24.5): resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-new-target@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-new-target@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-nullish-coalescing-operator@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-nullish-coalescing-operator@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.5) - /@babel/plugin-transform-numeric-separator@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-numeric-separator@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.5) - /@babel/plugin-transform-object-rest-spread@7.24.1(@babel/core@7.24.4): - resolution: {integrity: sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA==} + /@babel/plugin-transform-object-rest-spread@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-7EauQHszLGM3ay7a161tTQH7fj+3vVM/gThlz5HpFtnygTxjrlvoeq7MPVA1Vy9Q555OB8SnAOsMkLShNkkrHA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.4) - '@babel/plugin-transform-parameters': 7.24.1(@babel/core@7.24.4) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.5) + '@babel/plugin-transform-parameters': 7.24.5(@babel/core@7.24.5) - /@babel/plugin-transform-object-super@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-object-super@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.5) - /@babel/plugin-transform-optional-catch-binding@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-optional-catch-binding@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.5) - /@babel/plugin-transform-optional-chaining@7.24.1(@babel/core@7.24.4): - resolution: {integrity: sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg==} + /@babel/plugin-transform-optional-chaining@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-xWCkmwKT+ihmA6l7SSTpk8e4qQl/274iNbSKRRS8mpqFR32ksy36+a+LWY8OXCCEefF8WFlnOHVsaDI2231wBg==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.4) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.5) - /@babel/plugin-transform-parameters@7.24.1(@babel/core@7.24.4): - resolution: {integrity: sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==} + /@babel/plugin-transform-parameters@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-9Co00MqZ2aoky+4j2jhofErthm6QVLKbpQrvz20c3CH9KQCLHyNB+t2ya4/UrRpQGR+Wrwjg9foopoeSdnHOkA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-private-methods@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-private-methods@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-create-class-features-plugin': 7.24.4(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-private-property-in-object@7.24.1(@babel/core@7.24.4): - resolution: {integrity: sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg==} + /@babel/plugin-transform-private-property-in-object@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-JM4MHZqnWR04jPMujQDTBVRnqxpLLpx2tkn7iPn+Hmsc0Gnb79yvRWOkvqFOx3Z7P7VxiRIR22c4eGSNj87OBQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.24.4(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.4) + '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.5) - /@babel/plugin-transform-property-literals@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-property-literals@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-react-constant-elements@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-react-constant-elements@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-QXp1U9x0R7tkiGB0FOk8o74jhnap0FlZ5gNkRIWdG3eP+SvMFg118e1zaWewDzgABb106QSKpVsD3Wgd8t6ifA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 dev: true - /@babel/plugin-transform-react-display-name@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-react-display-name@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-mvoQg2f9p2qlpDQRBC7M3c3XTr0k7cp/0+kFKKO/7Gtu0LSw16eKB+Fabe2bDT/UpsyasTBBkAnbdsLrkD5XMw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.24.4): + /@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.24.5): resolution: {integrity: sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.24.5) dev: true - /@babel/plugin-transform-react-jsx-self@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-react-jsx-self@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-kDJgnPujTmAZ/9q2CN4m2/lRsUUPDvsG3+tSHWUJIzMGTt5U/b/fwWd3RO3n+5mjLrsBrVa5eKFRVSQbi3dF1w==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-react-jsx-source@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-react-jsx-source@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-1v202n7aUq4uXAieRTKcwPzNyphlCuqHHDcdSNc+vdhoTEZcFMh+L5yZuCmGaIO7bs1nJUNfHB89TZyoL48xNA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-react-jsx@7.23.4(@babel/core@7.24.4): + /@babel/plugin-transform-react-jsx@7.23.4(@babel/core@7.24.5): resolution: {integrity: sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-module-imports': 7.24.3 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-jsx': 7.24.1(@babel/core@7.24.4) - '@babel/types': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-jsx': 7.24.1(@babel/core@7.24.5) + '@babel/types': 7.24.5 - /@babel/plugin-transform-react-pure-annotations@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-react-pure-annotations@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-+pWEAaDJvSm9aFvJNpLiM2+ktl2Sn2U5DdyiWdZBxmLc6+xGt88dvFqsHiAiDS+8WqUwbDfkKz9jRxK3M0k+kA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 dev: true - /@babel/plugin-transform-regenerator@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-regenerator@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 regenerator-transform: 0.15.2 - /@babel/plugin-transform-reserved-words@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-reserved-words@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-runtime@7.24.3(@babel/core@7.24.4): + /@babel/plugin-transform-runtime@7.24.3(@babel/core@7.24.5): resolution: {integrity: sha512-J0BuRPNlNqlMTRJ72eVptpt9VcInbxO6iP3jaxr+1NPhC0UkKL+6oeX6VXMEYdADnuqmMmsBspt4d5w8Y/TCbQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-module-imports': 7.24.3 - '@babel/helper-plugin-utils': 7.24.0 - babel-plugin-polyfill-corejs2: 0.4.10(@babel/core@7.24.4) - babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.4) - babel-plugin-polyfill-regenerator: 0.6.1(@babel/core@7.24.4) + '@babel/helper-plugin-utils': 7.24.5 + babel-plugin-polyfill-corejs2: 0.4.10(@babel/core@7.24.5) + babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.5) + babel-plugin-polyfill-regenerator: 0.6.1(@babel/core@7.24.5) semver: 6.3.1 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-shorthand-properties@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-shorthand-properties@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-spread@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-spread@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - /@babel/plugin-transform-sticky-regex@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-sticky-regex@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-template-literals@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-template-literals@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-typeof-symbol@7.24.1(@babel/core@7.24.4): - resolution: {integrity: sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA==} + /@babel/plugin-transform-typeof-symbol@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-UTGnhYVZtTAjdwOTzT+sCyXmTn8AhaxOS/MjG9REclZ6ULHWF9KoCZur0HSGU7hk8PdBFKKbYe6+gqdXWz84Jg==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-typescript@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-typescript@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-liYSESjX2fZ7JyBFkYG78nfvHlMKE6IpNdTVnxmlYUR+j5ZLsitFbaAE+eJSK2zPPkNWNw4mXL51rQ8WrvdK0w==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.24.4(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-typescript': 7.24.1(@babel/core@7.24.4) + '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-typescript': 7.24.1(@babel/core@7.24.5) - /@babel/plugin-transform-unicode-escapes@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-unicode-escapes@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-unicode-property-regex@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-unicode-property-regex@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-unicode-regex@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-unicode-regex@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-transform-unicode-sets-regex@7.24.1(@babel/core@7.24.4): + /@babel/plugin-transform-unicode-sets-regex@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.4) - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 - /@babel/preset-env@7.24.4(@babel/core@7.24.4): - resolution: {integrity: sha512-7Kl6cSmYkak0FK/FXjSEnLJ1N9T/WA2RkMhu17gZ/dsxKJUuTYNIylahPTzqpLyJN4WhDif8X0XK1R8Wsguo/A==} + /@babel/preset-env@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-UGK2ifKtcC8i5AI4cH+sbLLuLc2ktYSFJgBAXorKAsHUZmrQ1q6aQ6i3BvU24wWs2AAKqQB6kq3N9V9Gw1HiMQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: '@babel/compat-data': 7.24.4 - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-validator-option': 7.23.5 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.24.4(@babel/core@7.24.4) - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.4) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.4) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.4) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.4) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.4) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.4) - '@babel/plugin-syntax-import-assertions': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-syntax-import-attributes': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.4) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.4) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.4) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.4) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.4) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.4) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.4) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.4) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.4) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.4) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.4) - '@babel/plugin-transform-arrow-functions': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-async-generator-functions': 7.24.3(@babel/core@7.24.4) - '@babel/plugin-transform-async-to-generator': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-block-scoped-functions': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-block-scoping': 7.24.4(@babel/core@7.24.4) - '@babel/plugin-transform-class-properties': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-class-static-block': 7.24.4(@babel/core@7.24.4) - '@babel/plugin-transform-classes': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-computed-properties': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-destructuring': /@minh.nguyen/plugin-transform-destructuring@7.5.2(@babel/core@7.24.4) - '@babel/plugin-transform-dotall-regex': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-duplicate-keys': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-dynamic-import': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-exponentiation-operator': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-export-namespace-from': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-for-of': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-function-name': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-json-strings': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-literals': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-logical-assignment-operators': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-member-expression-literals': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-modules-amd': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-modules-systemjs': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-modules-umd': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.24.4) - '@babel/plugin-transform-new-target': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-numeric-separator': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-object-rest-spread': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-object-super': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-optional-catch-binding': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-optional-chaining': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-parameters': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-private-methods': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-private-property-in-object': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-property-literals': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-regenerator': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-reserved-words': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-shorthand-properties': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-spread': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-sticky-regex': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-template-literals': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-typeof-symbol': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-unicode-escapes': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-unicode-property-regex': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-unicode-regex': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-unicode-sets-regex': 7.24.1(@babel/core@7.24.4) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.4) - babel-plugin-polyfill-corejs2: 0.4.10(@babel/core@7.24.4) - babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.4) - babel-plugin-polyfill-regenerator: 0.6.1(@babel/core@7.24.4) + '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.5) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.5) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.5) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.5) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.5) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.5) + '@babel/plugin-syntax-import-assertions': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-syntax-import-attributes': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.5) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.5) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.5) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.5) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.5) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.5) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.5) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.5) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.5) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.5) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.5) + '@babel/plugin-transform-arrow-functions': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-async-generator-functions': 7.24.3(@babel/core@7.24.5) + '@babel/plugin-transform-async-to-generator': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-block-scoped-functions': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-block-scoping': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-class-properties': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-class-static-block': 7.24.4(@babel/core@7.24.5) + '@babel/plugin-transform-classes': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-computed-properties': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-destructuring': /@minh.nguyen/plugin-transform-destructuring@7.5.2(@babel/core@7.24.5) + '@babel/plugin-transform-dotall-regex': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-duplicate-keys': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-dynamic-import': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-exponentiation-operator': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-export-namespace-from': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-for-of': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-function-name': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-json-strings': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-literals': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-logical-assignment-operators': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-member-expression-literals': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-modules-amd': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-modules-systemjs': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-modules-umd': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.24.5) + '@babel/plugin-transform-new-target': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-nullish-coalescing-operator': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-numeric-separator': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-object-rest-spread': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-object-super': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-optional-catch-binding': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-optional-chaining': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-parameters': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-private-methods': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-private-property-in-object': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-property-literals': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-regenerator': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-reserved-words': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-shorthand-properties': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-spread': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-sticky-regex': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-template-literals': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-typeof-symbol': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-unicode-escapes': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-unicode-property-regex': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-unicode-regex': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-unicode-sets-regex': 7.24.1(@babel/core@7.24.5) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.5) + babel-plugin-polyfill-corejs2: 0.4.10(@babel/core@7.24.5) + babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.5) + babel-plugin-polyfill-regenerator: 0.6.1(@babel/core@7.24.5) core-js-compat: 3.36.1 semver: 6.3.1 transitivePeerDependencies: - supports-color - /@babel/preset-flow@7.24.1(@babel/core@7.24.4): + /@babel/preset-flow@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-sWCV2G9pcqZf+JHyv/RyqEIpFypxdCSxWIxQjpdaQxenNog7cN1pr76hg8u0Fz8Qgg0H4ETkGcJnXL8d4j0PPA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-validator-option': 7.23.5 - '@babel/plugin-transform-flow-strip-types': 7.24.1(@babel/core@7.24.4) + '@babel/plugin-transform-flow-strip-types': 7.24.1(@babel/core@7.24.5) dev: false - /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.4): + /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.5): resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/types': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/types': 7.24.5 esutils: 2.0.3 - /@babel/preset-react@7.24.1(@babel/core@7.24.4): + /@babel/preset-react@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-eFa8up2/8cZXLIpkafhaADTXSnl7IsUFCYenRWrARBz0/qZwcT0RBXpys0LJU4+WfPoF2ZG6ew6s2V6izMCwRA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-validator-option': 7.23.5 - '@babel/plugin-transform-react-display-name': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.24.4) - '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.24.4) - '@babel/plugin-transform-react-pure-annotations': 7.24.1(@babel/core@7.24.4) + '@babel/plugin-transform-react-display-name': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.24.5) + '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.24.5) + '@babel/plugin-transform-react-pure-annotations': 7.24.1(@babel/core@7.24.5) dev: true - /@babel/preset-typescript@7.24.1(@babel/core@7.24.4): + /@babel/preset-typescript@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-1DBaMmRDpuYQBPWD8Pf/WEwCrtgRHxsZnP4mIy9G/X+hFfbI47Q2G4t1Paakld84+qsk2fSsUPMKg71jkoOOaQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-validator-option': 7.23.5 - '@babel/plugin-syntax-jsx': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-typescript': 7.24.1(@babel/core@7.24.4) + '@babel/plugin-syntax-jsx': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-typescript': 7.24.1(@babel/core@7.24.5) - /@babel/register@7.23.7(@babel/core@7.24.4): + /@babel/register@7.23.7(@babel/core@7.24.5): resolution: {integrity: sha512-EjJeB6+kvpk+Y5DAkEAmbOBEFkh9OASx0huoEkqYTFxAZHzOAX2Oh5uwAUuL2rUddqfM0SA+KPXV2TbzoZ2kvQ==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 clone-deep: 4.0.1 find-cache-dir: 2.1.0 make-dir: 2.1.0 @@ -3974,8 +3974,8 @@ packages: /@babel/regjsgen@0.8.0: resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} - /@babel/runtime-corejs2@7.24.4: - resolution: {integrity: sha512-ZCKqyUKt/Coimg+3Kafu43yNetgYnTXzNbEGAgxc81J5sI0qFNbQ613w7PNny+SmijAmGVroL0GDvx5rG/JI5Q==} + /@babel/runtime-corejs2@7.24.5: + resolution: {integrity: sha512-cC9jiO6s/IN+xwCHYy1AGrcFJ4bwgIwb8HX1KaoEpRsznLlO4x9eBP6AX7RIeMSWlQqEj2WHox637OS8cDq6Ew==} engines: {node: '>=6.9.0'} dependencies: core-js: 2.6.12 @@ -3990,8 +3990,8 @@ packages: regenerator-runtime: 0.14.0 dev: false - /@babel/runtime@7.24.4: - resolution: {integrity: sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA==} + /@babel/runtime@7.24.5: + resolution: {integrity: sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==} engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.14.0 @@ -4001,32 +4001,32 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.24.2 - '@babel/parser': 7.24.4 - '@babel/types': 7.24.0 + '@babel/parser': 7.24.5 + '@babel/types': 7.24.5 - /@babel/traverse@7.24.1: - resolution: {integrity: sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==} + /@babel/traverse@7.24.5: + resolution: {integrity: sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==} engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.24.2 - '@babel/generator': 7.24.4 + '@babel/generator': 7.24.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-function-name': 7.23.0 '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.24.4 - '@babel/types': 7.24.0 + '@babel/helper-split-export-declaration': 7.24.5 + '@babel/parser': 7.24.5 + '@babel/types': 7.24.5 debug: 4.3.4(supports-color@8.1.1) globals: 11.12.0 transitivePeerDependencies: - supports-color - /@babel/types@7.24.0: - resolution: {integrity: sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==} + /@babel/types@7.24.5: + resolution: {integrity: sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-string-parser': 7.24.1 - '@babel/helper-validator-identifier': 7.22.20 + '@babel/helper-validator-identifier': 7.24.5 to-fast-properties: 2.0.0 /@bcoe/v8-coverage@0.2.3: @@ -4226,7 +4226,7 @@ packages: resolution: {integrity: sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==} dependencies: '@babel/helper-module-imports': 7.24.3 - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/hash': 0.9.1 '@emotion/memoize': 0.8.1 '@emotion/serialize': 1.1.4 @@ -4299,7 +4299,7 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/babel-plugin': 11.11.0 '@emotion/cache': 11.11.0 '@emotion/serialize': 1.1.4 @@ -4345,7 +4345,7 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/babel-plugin': 11.11.0 '@emotion/is-prop-valid': 1.2.2 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) @@ -5375,13 +5375,13 @@ packages: '@types/react': 18.2.55 dev: true - /@minh.nguyen/plugin-transform-destructuring@7.5.2(@babel/core@7.24.4): + /@minh.nguyen/plugin-transform-destructuring@7.5.2(@babel/core@7.24.5): resolution: {integrity: sha512-DIzWFKl5nzSk9Hj9ZsEXAvvgHiyuAsw52queJMuKqfZOk1BOr9u1i2h0tc6tPF3rQieubP+eX4DPLTKSMpbyMg==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/core': 7.24.5 + '@babel/helper-plugin-utils': 7.24.5 /@mnajdova/enzyme-adapter-react-18@0.2.0(enzyme@3.11.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-BOnjlVa7FHI1YUnYe+FdUtQu6szI1wLJ+C1lHyqmF3T9gu/J/WCYqqcD44dPkrU+8eYvvk/gQducsqna4HFiAg==} @@ -5415,7 +5415,7 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@floating-ui/react-dom': 2.0.8(react-dom@18.2.0)(react@18.2.0) '@mui/types': 7.2.14(@types/react@18.2.55) '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) @@ -5438,7 +5438,7 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@floating-ui/react-dom': 2.0.8(react-dom@18.2.0)(react@18.2.0) '@mui/types': 7.2.14(@types/react@18.2.55) '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) @@ -5461,7 +5461,7 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@floating-ui/react-dom': 2.0.8(react-dom@18.2.0)(react@18.2.0) '@mui/types': 7.2.14(@types/react@18.2.55) '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) @@ -5494,7 +5494,7 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) '@mui/base': 5.0.0-beta.31(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) @@ -5526,7 +5526,7 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) '@mui/base': 5.0.0-beta.31(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) @@ -5555,7 +5555,7 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) '@types/react': 18.2.55 prop-types: 15.8.1 @@ -5572,7 +5572,7 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@mui/utils': 6.0.0-alpha.3(@types/react@18.2.55)(react@18.2.0) '@types/react': 18.2.55 prop-types: 15.8.1 @@ -5591,7 +5591,7 @@ packages: '@emotion/styled': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/cache': 11.11.0 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) @@ -5613,7 +5613,7 @@ packages: '@emotion/styled': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/cache': 11.11.0 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) @@ -5637,7 +5637,7 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) '@mui/private-theming': 5.15.14(@types/react@18.2.55)(react@18.2.0) @@ -5667,7 +5667,7 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) '@mui/private-theming': 6.0.0-alpha.3(@types/react@18.2.55)(react@18.2.0) @@ -5700,7 +5700,7 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@types/prop-types': 15.7.12 '@types/react': 18.2.55 prop-types: 15.8.1 @@ -5718,7 +5718,7 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@types/prop-types': 15.7.12 '@types/react': 18.2.55 prop-types: 15.8.1 @@ -5741,7 +5741,7 @@ packages: '@emotion/styled': optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) '@mui/base': 5.0.0-beta.30(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) @@ -5768,7 +5768,7 @@ packages: '@mui/material': ^5.15.14 react: ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@mui/base': 5.0.0-beta.40(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mui/icons-material': link:packages/mui-icons-material/build '@mui/material': link:packages/mui-material/build @@ -5792,7 +5792,7 @@ packages: react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@mui/material': link:packages/mui-material/build '@mui/system': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.55)(react@18.2.0) '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) @@ -5820,7 +5820,7 @@ packages: react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@mui/material': link:packages/mui-material/build '@mui/system': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.55)(react@18.2.0) '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) @@ -5846,7 +5846,7 @@ packages: react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@mui/material': link:packages/mui-material/build '@mui/system': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.55)(react@18.2.0) '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) @@ -5898,7 +5898,7 @@ packages: moment-jalaali: optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) '@mui/base': 5.0.0-beta.30(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) @@ -5955,7 +5955,7 @@ packages: moment-jalaali: optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) '@mui/base': 5.0.0-beta.30(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) @@ -5980,7 +5980,7 @@ packages: peerDependencies: react: ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) react: 18.2.0 transitivePeerDependencies: @@ -5993,7 +5993,7 @@ packages: peerDependencies: react: ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) react: 18.2.0 transitivePeerDependencies: @@ -6011,7 +6011,7 @@ packages: react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) '@mui/base': 5.0.0-beta.30(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) @@ -6789,7 +6789,7 @@ packages: next: ^12.0.0 || ^13.0.0 || ^14.0.0 dependencies: '@pigment-css/unplugin': 0.0.10(@types/react@18.2.55)(react@18.2.0) - next: 14.2.3(@babel/core@7.24.4)(@playwright/test@1.43.1)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) + next: 14.2.3(@babel/core@7.24.5)(@playwright/test@1.43.1)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0) transitivePeerDependencies: - '@types/react' - react @@ -6801,11 +6801,11 @@ packages: peerDependencies: react: ^17.0.0 || ^18.0.0 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-module-imports': 7.24.3 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/parser': 7.24.4 - '@babel/types': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/parser': 7.24.5 + '@babel/types': 7.24.5 '@emotion/css': 11.11.2 '@emotion/is-prop-valid': 1.2.2 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) @@ -6832,11 +6832,11 @@ packages: peerDependencies: react: ^17.0.0 || ^18.0.0 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-module-imports': 7.24.3 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/parser': 7.24.4 - '@babel/types': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/parser': 7.24.5 + '@babel/types': 7.24.5 '@emotion/css': 11.11.2 '@emotion/is-prop-valid': 1.2.2 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) @@ -6861,7 +6861,7 @@ packages: /@pigment-css/unplugin@0.0.10(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-ypzpEZPIYRDP/BInXWEH6cjVMnHdiCuC1k5qaLaJMIRemWDtWpMt5bpgtIigLsP8BFXdYxoH23RRbzUXuuqc1Q==} dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@pigment-css/react': 0.0.10(@types/react@18.2.55)(react@18.2.0) '@wyw-in-js/shared': 0.5.3 '@wyw-in-js/transform': 0.5.3 @@ -6878,8 +6878,8 @@ packages: peerDependencies: vite: ^4.0.0 || ^5.0.0 dependencies: - '@babel/core': 7.24.4 - '@babel/preset-typescript': 7.24.1(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/preset-typescript': 7.24.1(@babel/core@7.24.5) '@pigment-css/react': 0.0.9(@types/react@18.2.55)(react@18.2.0) '@wyw-in-js/shared': 0.5.3 '@wyw-in-js/transform': 0.5.3 @@ -7082,95 +7082,95 @@ packages: engines: {node: '>=18'} dev: false - /@react-native/babel-plugin-codegen@0.73.4(@babel/preset-env@7.24.4): + /@react-native/babel-plugin-codegen@0.73.4(@babel/preset-env@7.24.5): resolution: {integrity: sha512-XzRd8MJGo4Zc5KsphDHBYJzS1ryOHg8I2gOZDAUCGcwLFhdyGu1zBNDJYH2GFyDrInn9TzAbRIf3d4O+eltXQQ==} engines: {node: '>=18'} dependencies: - '@react-native/codegen': 0.73.3(@babel/preset-env@7.24.4) + '@react-native/codegen': 0.73.3(@babel/preset-env@7.24.5) transitivePeerDependencies: - '@babel/preset-env' - supports-color dev: false - /@react-native/babel-preset@0.73.21(@babel/core@7.24.4)(@babel/preset-env@7.24.4): + /@react-native/babel-preset@0.73.21(@babel/core@7.24.5)(@babel/preset-env@7.24.5): resolution: {integrity: sha512-WlFttNnySKQMeujN09fRmrdWqh46QyJluM5jdtDNrkl/2Hx6N4XeDUGhABvConeK95OidVO7sFFf7sNebVXogA==} engines: {node: '>=18'} peerDependencies: - '@babel/core': ^7.24.4 - dependencies: - '@babel/core': 7.24.4 - '@babel/plugin-proposal-async-generator-functions': 7.20.7(@babel/core@7.24.4) - '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.24.4) - '@babel/plugin-proposal-export-default-from': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.24.4) - '@babel/plugin-proposal-numeric-separator': 7.18.6(@babel/core@7.24.4) - '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.24.4) - '@babel/plugin-proposal-optional-catch-binding': 7.18.6(@babel/core@7.24.4) - '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.24.4) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.4) - '@babel/plugin-syntax-export-default-from': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-syntax-flow': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.4) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.4) - '@babel/plugin-transform-arrow-functions': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-async-to-generator': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-block-scoping': 7.24.4(@babel/core@7.24.4) - '@babel/plugin-transform-classes': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-computed-properties': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-destructuring': /@minh.nguyen/plugin-transform-destructuring@7.5.2(@babel/core@7.24.4) - '@babel/plugin-transform-flow-strip-types': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-function-name': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-literals': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.24.4) - '@babel/plugin-transform-parameters': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-private-methods': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-private-property-in-object': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-react-display-name': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.24.4) - '@babel/plugin-transform-react-jsx-self': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-react-jsx-source': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-runtime': 7.24.3(@babel/core@7.24.4) - '@babel/plugin-transform-shorthand-properties': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-spread': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-sticky-regex': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-typescript': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-unicode-regex': 7.24.1(@babel/core@7.24.4) + '@babel/core': ^7.24.5 + dependencies: + '@babel/core': 7.24.5 + '@babel/plugin-proposal-async-generator-functions': 7.20.7(@babel/core@7.24.5) + '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.24.5) + '@babel/plugin-proposal-export-default-from': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.24.5) + '@babel/plugin-proposal-numeric-separator': 7.18.6(@babel/core@7.24.5) + '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.24.5) + '@babel/plugin-proposal-optional-catch-binding': 7.18.6(@babel/core@7.24.5) + '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.24.5) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.5) + '@babel/plugin-syntax-export-default-from': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-syntax-flow': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.5) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.5) + '@babel/plugin-transform-arrow-functions': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-async-to-generator': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-block-scoping': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-classes': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-computed-properties': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-destructuring': /@minh.nguyen/plugin-transform-destructuring@7.5.2(@babel/core@7.24.5) + '@babel/plugin-transform-flow-strip-types': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-function-name': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-literals': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.24.5) + '@babel/plugin-transform-parameters': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-private-methods': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-private-property-in-object': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-react-display-name': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.24.5) + '@babel/plugin-transform-react-jsx-self': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-react-jsx-source': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-runtime': 7.24.3(@babel/core@7.24.5) + '@babel/plugin-transform-shorthand-properties': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-spread': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-sticky-regex': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-typescript': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-unicode-regex': 7.24.1(@babel/core@7.24.5) '@babel/template': 7.24.0 - '@react-native/babel-plugin-codegen': 0.73.4(@babel/preset-env@7.24.4) - babel-plugin-transform-flow-enums: 0.0.2(@babel/core@7.24.4) + '@react-native/babel-plugin-codegen': 0.73.4(@babel/preset-env@7.24.5) + babel-plugin-transform-flow-enums: 0.0.2(@babel/core@7.24.5) react-refresh: 0.14.0 transitivePeerDependencies: - '@babel/preset-env' - supports-color dev: false - /@react-native/codegen@0.73.3(@babel/preset-env@7.24.4): + /@react-native/codegen@0.73.3(@babel/preset-env@7.24.5): resolution: {integrity: sha512-sxslCAAb8kM06vGy9Jyh4TtvjhcP36k/rvj2QE2Jdhdm61KvfafCATSIsOfc0QvnduWFcpXUPvAVyYwuv7PYDg==} engines: {node: '>=18'} peerDependencies: - '@babel/preset-env': ^7.24.4 + '@babel/preset-env': ^7.24.5 dependencies: - '@babel/parser': 7.24.4 - '@babel/preset-env': 7.24.4(@babel/core@7.24.4) + '@babel/parser': 7.24.5 + '@babel/preset-env': 7.24.5(@babel/core@7.24.5) flow-parser: 0.206.0 glob: 7.2.3 invariant: 2.2.4 - jscodeshift: 0.14.0(@babel/preset-env@7.24.4) + jscodeshift: 0.14.0(@babel/preset-env@7.24.5) mkdirp: 0.5.6 nullthrows: 1.1.1 transitivePeerDependencies: - supports-color dev: false - /@react-native/community-cli-plugin@0.73.17(@babel/core@7.24.4)(@babel/preset-env@7.24.4): + /@react-native/community-cli-plugin@0.73.17(@babel/core@7.24.5)(@babel/preset-env@7.24.5): resolution: {integrity: sha512-F3PXZkcHg+1ARIr6FRQCQiB7ZAA+MQXGmq051metRscoLvgYJwj7dgC8pvgy0kexzUkHu5BNKrZeySzUft3xuQ==} engines: {node: '>=18'} dependencies: '@react-native-community/cli-server-api': 12.3.6 '@react-native-community/cli-tools': 12.3.6 '@react-native/dev-middleware': 0.73.8 - '@react-native/metro-babel-transformer': 0.73.15(@babel/core@7.24.4)(@babel/preset-env@7.24.4) + '@react-native/metro-babel-transformer': 0.73.15(@babel/core@7.24.5)(@babel/preset-env@7.24.5) chalk: 4.1.2 execa: 5.1.1 metro: 0.80.7 @@ -7224,14 +7224,14 @@ packages: engines: {node: '>=18'} dev: false - /@react-native/metro-babel-transformer@0.73.15(@babel/core@7.24.4)(@babel/preset-env@7.24.4): + /@react-native/metro-babel-transformer@0.73.15(@babel/core@7.24.5)(@babel/preset-env@7.24.5): resolution: {integrity: sha512-LlkSGaXCz+xdxc9819plmpsl4P4gZndoFtpjN3GMBIu6f7TBV0GVbyJAU4GE8fuAWPVSVL5ArOcdkWKSbI1klw==} engines: {node: '>=18'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@react-native/babel-preset': 0.73.21(@babel/core@7.24.4)(@babel/preset-env@7.24.4) + '@babel/core': 7.24.5 + '@react-native/babel-preset': 0.73.21(@babel/core@7.24.5)(@babel/preset-env@7.24.5) hermes-parser: 0.15.0 nullthrows: 1.1.1 transitivePeerDependencies: @@ -7251,7 +7251,7 @@ packages: dependencies: invariant: 2.2.4 nullthrows: 1.1.1 - react-native: 0.73.6(@babel/core@7.24.4)(@babel/preset-env@7.24.4)(react@18.2.0) + react-native: 0.73.6(@babel/core@7.24.5)(@babel/preset-env@7.24.5)(react@18.2.0) dev: false /@react-spring/animated@9.7.3(react@18.2.0): @@ -7302,7 +7302,7 @@ packages: '@react-spring/shared': 9.7.3(react@18.2.0) '@react-spring/types': 9.7.3 react: 18.2.0 - react-native: 0.73.6(@babel/core@7.24.4)(@babel/preset-env@7.24.4)(react@18.2.0) + react-native: 0.73.6(@babel/core@7.24.5)(@babel/preset-env@7.24.5)(react@18.2.0) dev: false /@react-spring/rafz@9.7.3: @@ -7395,7 +7395,7 @@ packages: react-native: optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@types/react-reconciler': 0.26.7 '@types/webxr': 0.5.14 base64-js: 1.5.1 @@ -7403,7 +7403,7 @@ packages: its-fine: 1.1.3(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - react-native: 0.73.6(@babel/core@7.24.4)(@babel/preset-env@7.24.4)(react@18.2.0) + react-native: 0.73.6(@babel/core@7.24.5)(@babel/preset-env@7.24.5)(react@18.2.0) react-reconciler: 0.27.0(react@18.2.0) react-use-measure: 2.1.1(react-dom@18.2.0)(react@18.2.0) scheduler: 0.21.0 @@ -7869,7 +7869,7 @@ packages: engines: {node: '>=14'} dependencies: '@babel/code-frame': 7.24.2 - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@types/aria-query': 5.0.1 aria-query: 5.1.3 chalk: 4.1.2 @@ -7884,7 +7884,7 @@ packages: react: ^18.0.0 react-dom: ^18.0.0 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@testing-library/dom': 9.3.4 '@types/react-dom': 18.3.0 react: 18.2.0 @@ -8028,8 +8028,8 @@ packages: /@types/babel__core@7.20.5: resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} dependencies: - '@babel/parser': 7.24.4 - '@babel/types': 7.24.0 + '@babel/parser': 7.24.5 + '@babel/types': 7.24.5 '@types/babel__generator': 7.6.4 '@types/babel__template': 7.4.1 '@types/babel__traverse': 7.20.5 @@ -8038,20 +8038,20 @@ packages: /@types/babel__generator@7.6.4: resolution: {integrity: sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==} dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 dev: true /@types/babel__template@7.4.1: resolution: {integrity: sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==} dependencies: - '@babel/parser': 7.24.4 - '@babel/types': 7.24.0 + '@babel/parser': 7.24.5 + '@babel/types': 7.24.5 dev: true /@types/babel__traverse@7.20.5: resolution: {integrity: sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==} dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 dev: true /@types/body-parser@1.19.2: @@ -8627,9 +8627,9 @@ packages: peerDependencies: vite: ^4.2.0 || ^5.0.0 dependencies: - '@babel/core': 7.24.4 - '@babel/plugin-transform-react-jsx-self': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-react-jsx-source': 7.24.1(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/plugin-transform-react-jsx-self': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-react-jsx-source': 7.24.1(@babel/core@7.24.5) '@types/babel__core': 7.20.5 react-refresh: 0.14.0 vite: 5.2.10(@types/node@18.19.31) @@ -8766,7 +8766,7 @@ packages: resolution: {integrity: sha512-DATsRHLqq8cWYkTD8iwEmvWzG2UvmsFN6Poru4NJ1RwjxtcEdnNKCKZBaBdlH5XyhL7jRTcURUMyee3lqGljhg==} engines: {node: '>=16.0.0'} dependencies: - '@babel/generator': 7.24.4 + '@babel/generator': 7.24.5 '@wyw-in-js/shared': 0.5.3 transitivePeerDependencies: - supports-color @@ -8785,16 +8785,16 @@ packages: resolution: {integrity: sha512-Bt1Ey8MN88FzYJekvZBYFT69157UmwURj2N7Dy8yauErcxtpuNe/1P0Jxd56tdFz0f6uooat5ntzvWgej/iBZg==} engines: {node: '>=16.0.0'} dependencies: - '@babel/core': 7.24.4 - '@babel/generator': 7.24.4 + '@babel/core': 7.24.5 + '@babel/generator': 7.24.5 '@babel/helper-module-imports': 7.24.3 - '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.4) + '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.5) '@babel/template': 7.24.0 - '@babel/traverse': 7.24.1 - '@babel/types': 7.24.0 + '@babel/traverse': 7.24.5 + '@babel/types': 7.24.5 '@wyw-in-js/processor-utils': 0.5.3 '@wyw-in-js/shared': 0.5.3 - babel-merge: 3.0.0(@babel/core@7.24.4) + babel-merge: 3.0.0(@babel/core@7.24.5) cosmiconfig: 8.2.0 happy-dom: 12.10.3 source-map: 0.7.4 @@ -9503,34 +9503,34 @@ packages: dequal: 2.0.3 dev: true - /babel-core@7.0.0-bridge.0(@babel/core@7.24.4): + /babel-core@7.0.0-bridge.0(@babel/core@7.24.5): resolution: {integrity: sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 dev: false - /babel-loader@9.1.3(@babel/core@7.24.4)(webpack@5.91.0): + /babel-loader@9.1.3(@babel/core@7.24.5)(webpack@5.91.0): resolution: {integrity: sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==} engines: {node: '>= 14.15.0'} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 webpack: '>=5' dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 find-cache-dir: 4.0.0 schema-utils: 4.2.0 webpack: 5.91.0(webpack-cli@5.1.4) dev: true - /babel-merge@3.0.0(@babel/core@7.24.4): + /babel-merge@3.0.0(@babel/core@7.24.5): resolution: {integrity: sha512-eBOBtHnzt9xvnjpYNI5HmaPp/b2vMveE5XggzqHnQeHJ8mFIBrBv6WZEVIj5jJ2uwTItkqKo9gWzEEcBxEq0yw==} deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 deepmerge: 2.2.1 object.omit: 3.0.0 @@ -9543,7 +9543,7 @@ packages: resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==} engines: {node: '>=8'} dependencies: - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 '@istanbuljs/load-nyc-config': 1.1.0 '@istanbuljs/schema': 0.1.3 istanbul-lib-instrument: 5.2.0 @@ -9556,7 +9556,7 @@ packages: resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} engines: {node: '>=10', npm: '>=6'} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 cosmiconfig: 7.0.1 resolve: 1.22.8 @@ -9572,56 +9572,56 @@ packages: /babel-plugin-optimize-clsx@2.6.2: resolution: {integrity: sha512-TxgyjdVb7trTAsg/J5ByqJdbBPTYR8yaWLGQGpSxwygw8IFST5gEc1J9QktCGCHCb+69t04DWg9KOE0y2hN30w==} dependencies: - '@babel/generator': 7.24.4 + '@babel/generator': 7.24.5 '@babel/template': 7.24.0 - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 find-cache-dir: 3.3.2 lodash: 4.17.21 object-hash: 2.2.0 - /babel-plugin-polyfill-corejs2@0.4.10(@babel/core@7.24.4): + /babel-plugin-polyfill-corejs2@0.4.10(@babel/core@7.24.5): resolution: {integrity: sha512-rpIuu//y5OX6jVU+a5BCn1R5RSZYWAl2Nar76iwaOdycqb6JPxediskWFMMl7stfwNJR4b7eiQvh5fB5TEQJTQ==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: '@babel/compat-data': 7.24.4 - '@babel/core': 7.24.4 - '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.5) semver: 6.3.1 transitivePeerDependencies: - supports-color - /babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.24.4): + /babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.24.5): resolution: {integrity: sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.5) core-js-compat: 3.36.1 transitivePeerDependencies: - supports-color - /babel-plugin-polyfill-regenerator@0.6.1(@babel/core@7.24.4): + /babel-plugin-polyfill-regenerator@0.6.1(@babel/core@7.24.5): resolution: {integrity: sha512-JfTApdE++cgcTWjsiCQlLyFBMbTUft9ja17saCc93lgV33h4tuCVj7tlvu//qpLwaG+3yEz7/KhahGrUMkVq9g==} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 - '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.5) transitivePeerDependencies: - supports-color /babel-plugin-react-remove-properties@0.3.0: resolution: {integrity: sha512-vbxegtXGyVcUkCvayLzftU95vuvpYFV85pRpeMpohMHeEY46Qe0VNWfkVVcCbaZ12CXHzDFOj0esumATcW83ng==} - /babel-plugin-tester@11.0.4(@babel/core@7.24.4): + /babel-plugin-tester@11.0.4(@babel/core@7.24.5): resolution: {integrity: sha512-cqswtpSPo0e++rZB0l/54EG17LL25l9gLgh59yXfnmNxX+2lZTIOpx2zt4YI9QIClVXc8xf63J6yWwKkzy0jNg==} engines: {node: ^14.20.0 || ^16.16.0 || >=18.5.0} peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 core-js: 3.32.1 debug: 4.3.4(supports-color@8.1.1) lodash.mergewith: 4.6.2 @@ -9631,10 +9631,10 @@ packages: - supports-color dev: true - /babel-plugin-transform-flow-enums@0.0.2(@babel/core@7.24.4): + /babel-plugin-transform-flow-enums@0.0.2(@babel/core@7.24.5): resolution: {integrity: sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ==} dependencies: - '@babel/plugin-syntax-flow': 7.24.1(@babel/core@7.24.4) + '@babel/plugin-syntax-flow': 7.24.1(@babel/core@7.24.5) transitivePeerDependencies: - '@babel/core' dev: false @@ -10886,7 +10886,7 @@ packages: /css-jss@10.10.0: resolution: {integrity: sha512-YyMIS/LsSKEGXEaVJdjonWe18p4vXLo8CMA4FrW/kcaEyqdIGKCFXao31gbJddXEdIxSXFFURWrenBJPlKTgAA==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 jss: 10.10.0 jss-preset-default: 10.10.0 dev: false @@ -10939,7 +10939,7 @@ packages: /css-vendor@2.0.8: resolution: {integrity: sha512-x9Aq0XTInxrkuFeHKbYC7zWY8ai7qJ04Kxd9MnvbC1uO5DagxoHQjm4JvG+vCdXOoFtCjbL2XSZfxmoYa9uQVQ==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 is-in-browser: 1.1.3 dev: false @@ -11130,7 +11130,7 @@ packages: resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==} engines: {node: '>=0.11'} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 /date-format@4.0.13: resolution: {integrity: sha512-bnYCwf8Emc3pTD8pXnre+wfnjGtfi5ncMDKy7+cWZXbmRAsdWkOQHrfC1yz/KiwP5thDp2kCHWYWKBX4HP1hoQ==} @@ -11433,7 +11433,7 @@ packages: /dom-helpers@5.2.1: resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 csstype: 3.1.3 dev: false @@ -12136,7 +12136,7 @@ packages: peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 aria-query: 5.3.0 array-includes: 3.1.7 array.prototype.flatmap: 1.3.2 @@ -12336,8 +12336,8 @@ packages: resolution: {integrity: sha512-YNF+mZ/Wu2FU/gvmzuWtYc8rloubL7wfXCTgouFrnjGVXPA/EeYYA7pupXWrb3Iv1cTBeSSxxJIbK23l4MRNqg==} engines: {node: '>=8.3.0'} dependencies: - '@babel/traverse': 7.24.1 - '@babel/types': 7.24.0 + '@babel/traverse': 7.24.5 + '@babel/types': 7.24.5 c8: 7.12.0 transitivePeerDependencies: - supports-color @@ -12644,7 +12644,7 @@ packages: resolution: {integrity: sha512-TL48Pi1oNHeMOHrKv1bCJUrWZDcD3DIG6AGYVNOnyZPr7Bd/pStN0pL+lfzF5BNoj/FclaoiaLenk4XUIFVYng==} engines: {node: '>=8'} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 dev: false /finalhandler@1.1.2: @@ -14306,7 +14306,7 @@ packages: resolution: {integrity: sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==} engines: {node: '>=8'} dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.0 semver: 6.3.1 @@ -14318,8 +14318,8 @@ packages: resolution: {integrity: sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==} engines: {node: '>=8'} dependencies: - '@babel/core': 7.24.4 - '@babel/parser': 7.24.4 + '@babel/core': 7.24.5 + '@babel/parser': 7.24.5 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.0 semver: 6.3.1 @@ -14577,8 +14577,8 @@ packages: peerDependencies: jscodeshift: ^0.7.0 || ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 dependencies: - '@babel/traverse': 7.24.1 - jscodeshift: 0.15.2(@babel/preset-env@7.24.4) + '@babel/traverse': 7.24.5 + jscodeshift: 0.15.2(@babel/preset-env@7.24.5) jscodeshift-find-imports: 2.0.4(jscodeshift@0.15.2) transitivePeerDependencies: - supports-color @@ -14589,26 +14589,26 @@ packages: peerDependencies: jscodeshift: ^0.7.0 || ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 dependencies: - jscodeshift: 0.15.2(@babel/preset-env@7.24.4) + jscodeshift: 0.15.2(@babel/preset-env@7.24.5) dev: false - /jscodeshift@0.14.0(@babel/preset-env@7.24.4): + /jscodeshift@0.14.0(@babel/preset-env@7.24.5): resolution: {integrity: sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA==} hasBin: true peerDependencies: - '@babel/preset-env': ^7.24.4 - dependencies: - '@babel/core': 7.24.4 - '@babel/parser': 7.24.4 - '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.24.4) - '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.24.4) - '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.24.4) - '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.4) - '@babel/preset-env': 7.24.4(@babel/core@7.24.4) - '@babel/preset-flow': 7.24.1(@babel/core@7.24.4) - '@babel/preset-typescript': 7.24.1(@babel/core@7.24.4) - '@babel/register': 7.23.7(@babel/core@7.24.4) - babel-core: 7.0.0-bridge.0(@babel/core@7.24.4) + '@babel/preset-env': ^7.24.5 + dependencies: + '@babel/core': 7.24.5 + '@babel/parser': 7.24.5 + '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.24.5) + '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.24.5) + '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.24.5) + '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.5) + '@babel/preset-env': 7.24.5(@babel/core@7.24.5) + '@babel/preset-flow': 7.24.1(@babel/core@7.24.5) + '@babel/preset-typescript': 7.24.1(@babel/core@7.24.5) + '@babel/register': 7.23.7(@babel/core@7.24.5) + babel-core: 7.0.0-bridge.0(@babel/core@7.24.5) chalk: 4.1.2 flow-parser: 0.206.0 graceful-fs: 4.2.11 @@ -14622,27 +14622,27 @@ packages: - supports-color dev: false - /jscodeshift@0.15.2(@babel/preset-env@7.24.4): + /jscodeshift@0.15.2(@babel/preset-env@7.24.5): resolution: {integrity: sha512-FquR7Okgmc4Sd0aEDwqho3rEiKR3BdvuG9jfdHjLJ6JQoWSMpavug3AoIfnfWhxFlf+5pzQh8qjqz0DWFrNQzA==} hasBin: true peerDependencies: - '@babel/preset-env': ^7.24.4 + '@babel/preset-env': ^7.24.5 peerDependenciesMeta: '@babel/preset-env': optional: true dependencies: - '@babel/core': 7.24.4 - '@babel/parser': 7.24.4 - '@babel/plugin-transform-class-properties': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-optional-chaining': 7.24.1(@babel/core@7.24.4) - '@babel/plugin-transform-private-methods': 7.24.1(@babel/core@7.24.4) - '@babel/preset-env': 7.24.4(@babel/core@7.24.4) - '@babel/preset-flow': 7.24.1(@babel/core@7.24.4) - '@babel/preset-typescript': 7.24.1(@babel/core@7.24.4) - '@babel/register': 7.23.7(@babel/core@7.24.4) - babel-core: 7.0.0-bridge.0(@babel/core@7.24.4) + '@babel/core': 7.24.5 + '@babel/parser': 7.24.5 + '@babel/plugin-transform-class-properties': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-nullish-coalescing-operator': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-optional-chaining': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-private-methods': 7.24.1(@babel/core@7.24.5) + '@babel/preset-env': 7.24.5(@babel/core@7.24.5) + '@babel/preset-flow': 7.24.1(@babel/core@7.24.5) + '@babel/preset-typescript': 7.24.1(@babel/core@7.24.5) + '@babel/register': 7.23.7(@babel/core@7.24.5) + babel-core: 7.0.0-bridge.0(@babel/core@7.24.5) chalk: 4.1.2 flow-parser: 0.206.0 graceful-fs: 4.2.11 @@ -14797,7 +14797,7 @@ packages: /jss-plugin-camel-case@10.10.0: resolution: {integrity: sha512-z+HETfj5IYgFxh1wJnUAU8jByI48ED+v0fuTuhKrPR+pRBYS2EDwbusU8aFOpCdYhtRc9zhN+PJ7iNE8pAWyPw==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 hyphenate-style-name: 1.0.4 jss: 10.10.0 dev: false @@ -14805,7 +14805,7 @@ packages: /jss-plugin-compose@10.10.0: resolution: {integrity: sha512-F5kgtWpI2XfZ3Z8eP78tZEYFdgTIbpA/TMuX3a8vwrNolYtN1N4qJR/Ob0LAsqIwCMLojtxN7c7Oo/+Vz6THow==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 jss: 10.10.0 tiny-warning: 1.0.3 dev: false @@ -14813,21 +14813,21 @@ packages: /jss-plugin-default-unit@10.10.0: resolution: {integrity: sha512-SvpajxIECi4JDUbGLefvNckmI+c2VWmP43qnEy/0eiwzRUsafg5DVSIWSzZe4d2vFX1u9nRDP46WCFV/PXVBGQ==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 jss: 10.10.0 dev: false /jss-plugin-expand@10.10.0: resolution: {integrity: sha512-ymT62W2OyDxBxr7A6JR87vVX9vTq2ep5jZLIdUSusfBIEENLdkkc0lL/Xaq8W9s3opUq7R0sZQpzRWELrfVYzA==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 jss: 10.10.0 dev: false /jss-plugin-extend@10.10.0: resolution: {integrity: sha512-sKYrcMfr4xxigmIwqTjxNcHwXJIfvhvjTNxF+Tbc1NmNdyspGW47Ey6sGH8BcQ4FFQhLXctpWCQSpDwdNmXSwg==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 jss: 10.10.0 tiny-warning: 1.0.3 dev: false @@ -14835,14 +14835,14 @@ packages: /jss-plugin-global@10.10.0: resolution: {integrity: sha512-icXEYbMufiNuWfuazLeN+BNJO16Ge88OcXU5ZDC2vLqElmMybA31Wi7lZ3lf+vgufRocvPj8443irhYRgWxP+A==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 jss: 10.10.0 dev: false /jss-plugin-nested@10.10.0: resolution: {integrity: sha512-9R4JHxxGgiZhurDo3q7LdIiDEgtA1bTGzAbhSPyIOWb7ZubrjQe8acwhEQ6OEKydzpl8XHMtTnEwHXCARLYqYA==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 jss: 10.10.0 tiny-warning: 1.0.3 dev: false @@ -14850,14 +14850,14 @@ packages: /jss-plugin-props-sort@10.10.0: resolution: {integrity: sha512-5VNJvQJbnq/vRfje6uZLe/FyaOpzP/IH1LP+0fr88QamVrGJa0hpRRyAa0ea4U/3LcorJfBFVyC4yN2QC73lJg==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 jss: 10.10.0 dev: false /jss-plugin-rule-value-function@10.10.0: resolution: {integrity: sha512-uEFJFgaCtkXeIPgki8ICw3Y7VMkL9GEan6SqmT9tqpwM+/t+hxfMUdU4wQ0MtOiMNWhwnckBV0IebrKcZM9C0g==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 jss: 10.10.0 tiny-warning: 1.0.3 dev: false @@ -14865,7 +14865,7 @@ packages: /jss-plugin-rule-value-observable@10.10.0: resolution: {integrity: sha512-ZLMaYrR3QE+vD7nl3oNXuj79VZl9Kp8/u6A1IbTPDcuOu8b56cFdWRZNZ0vNr8jHewooEeq2doy8Oxtymr2ZPA==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 jss: 10.10.0 symbol-observable: 1.2.0 dev: false @@ -14873,7 +14873,7 @@ packages: /jss-plugin-template@10.10.0: resolution: {integrity: sha512-ocXZBIOJOA+jISPdsgkTs8wwpK6UbsvtZK5JI7VUggTD6LWKbtoxUzadd2TpfF+lEtlhUmMsCkTRNkITdPKa6w==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 jss: 10.10.0 tiny-warning: 1.0.3 dev: false @@ -14881,7 +14881,7 @@ packages: /jss-plugin-vendor-prefixer@10.10.0: resolution: {integrity: sha512-UY/41WumgjW8r1qMCO8l1ARg7NHnfRVWRhZ2E2m0DMYsr2DD91qIXLyNhiX83hHswR7Wm4D+oDYNC1zWCJWtqg==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 css-vendor: 2.0.8 jss: 10.10.0 dev: false @@ -14889,7 +14889,7 @@ packages: /jss-preset-default@10.10.0: resolution: {integrity: sha512-GL175Wt2FGhjE+f+Y3aWh+JioL06/QWFgZp53CbNNq6ZkVU0TDplD8Bxm9KnkotAYn3FlplNqoW5CjyLXcoJ7Q==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 jss: 10.10.0 jss-plugin-camel-case: 10.10.0 jss-plugin-compose: 10.10.0 @@ -14917,7 +14917,7 @@ packages: /jss@10.10.0: resolution: {integrity: sha512-cqsOTS7jqPsPMjtKYDUpdFC0AbhYFLTcuGRqymgmdJIeQ8cH7+AgX7YSgQy79wXloZq2VvATYxUOUQEvS1V/Zw==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 csstype: 3.1.3 is-in-browser: 1.1.3 tiny-warning: 1.0.3 @@ -15745,7 +15745,7 @@ packages: '@mui/material': ^5.0.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@mui/material': link:packages/mui-material/build '@types/prop-types': 15.7.12 '@types/react': 18.2.55 @@ -15875,7 +15875,7 @@ packages: resolution: {integrity: sha512-b773yA16DsDQiM4OOzCsr1gwEd+iio9au98o3bj7F/bxVyoz1LuYox06BIdsiLL1o4kV5VtzTu3UXSJ2X0ZGXg==} engines: {node: '>=18'} dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 hermes-parser: 0.20.1 nullthrows: 1.1.1 transitivePeerDependencies: @@ -15957,15 +15957,15 @@ packages: resolution: {integrity: sha512-gWqzfm9YQw9I08L23hcLmY7XNx48W0c0vLEkVEF5P7ZNIOSfX9CkEv0JvTTJWshRYkbgIqsdtpMAHq13LJJ6iA==} engines: {node: '>=18'} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 dev: false /metro-source-map@0.80.7: resolution: {integrity: sha512-6a1m/51ekkAl+ISNBcKQUXTU+AldbbPUHDE3DDDU17Y0HNoovkQR23DB/uH/SzUHQszYxK1fnwUTSxpzOjx+pw==} engines: {node: '>=18'} dependencies: - '@babel/traverse': 7.24.1 - '@babel/types': 7.24.0 + '@babel/traverse': 7.24.5 + '@babel/types': 7.24.5 invariant: 2.2.4 metro-symbolicate: 0.80.7 nullthrows: 1.1.1 @@ -15995,10 +15995,10 @@ packages: resolution: {integrity: sha512-ENGvQF7wZCtn2rO6jwsYy3XRSPrlm0G/1TgDC8AXdvz0yjfAe1ODSCYWxP8S3JXfjKL5m3b6j9RsV8sQIxsUjQ==} engines: {node: '>=18'} dependencies: - '@babel/core': 7.24.4 - '@babel/generator': 7.24.4 + '@babel/core': 7.24.5 + '@babel/generator': 7.24.5 '@babel/template': 7.24.0 - '@babel/traverse': 7.24.1 + '@babel/traverse': 7.24.5 nullthrows: 1.1.1 transitivePeerDependencies: - supports-color @@ -16008,10 +16008,10 @@ packages: resolution: {integrity: sha512-QcgKpx3WZo71jTtXMEeeFuGpA+nG8YuWjxPTIsIYTjgDxcArS8zDDRzS18mmYkP65yyzH4dT94B1FJH9+flRag==} engines: {node: '>=18'} dependencies: - '@babel/core': 7.24.4 - '@babel/generator': 7.24.4 - '@babel/parser': 7.24.4 - '@babel/types': 7.24.0 + '@babel/core': 7.24.5 + '@babel/generator': 7.24.5 + '@babel/parser': 7.24.5 + '@babel/types': 7.24.5 metro: 0.80.7 metro-babel-transformer: 0.80.7 metro-cache: 0.80.7 @@ -16033,12 +16033,12 @@ packages: hasBin: true dependencies: '@babel/code-frame': 7.24.2 - '@babel/core': 7.24.4 - '@babel/generator': 7.24.4 - '@babel/parser': 7.24.4 + '@babel/core': 7.24.5 + '@babel/generator': 7.24.5 + '@babel/parser': 7.24.5 '@babel/template': 7.24.0 - '@babel/traverse': 7.24.1 - '@babel/types': 7.24.0 + '@babel/traverse': 7.24.5 + '@babel/types': 7.24.5 accepts: 1.3.8 chalk: 4.1.2 ci-info: 2.0.0 @@ -16432,7 +16432,7 @@ packages: resolution: {integrity: sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw==} dev: true - /next@13.5.1(@babel/core@7.24.4)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0): + /next@13.5.1(@babel/core@7.24.5)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-GIudNR7ggGUZoIL79mSZcxbXK9f5pwAIPZxEM8+j2yLqv5RODg4TkmUlaKSYVqE1bPQueamXSqdC3j7axiTSEg==} engines: {node: '>=16.14.0'} hasBin: true @@ -16454,7 +16454,7 @@ packages: postcss: 8.4.14 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - styled-jsx: 5.1.1(@babel/core@7.24.4)(babel-plugin-macros@3.1.0)(react@18.2.0) + styled-jsx: 5.1.1(@babel/core@7.24.5)(babel-plugin-macros@3.1.0)(react@18.2.0) watchpack: 2.4.0 zod: 3.21.4 optionalDependencies: @@ -16471,7 +16471,7 @@ packages: - '@babel/core' - babel-plugin-macros - /next@14.2.3(@babel/core@7.24.4)(@playwright/test@1.43.1)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0): + /next@14.2.3(@babel/core@7.24.5)(@playwright/test@1.43.1)(babel-plugin-macros@3.1.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==} engines: {node: '>=18.17.0'} hasBin: true @@ -16498,7 +16498,7 @@ packages: postcss: 8.4.31 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - styled-jsx: 5.1.1(@babel/core@7.24.4)(babel-plugin-macros@3.1.0)(react@18.2.0) + styled-jsx: 5.1.1(@babel/core@7.24.5)(babel-plugin-macros@3.1.0)(react@18.2.0) optionalDependencies: '@next/swc-darwin-arm64': 14.2.3 '@next/swc-darwin-x64': 14.2.3 @@ -18277,9 +18277,9 @@ packages: engines: {node: '>=8.10.0'} hasBin: true dependencies: - '@babel/core': 7.24.4 - '@babel/generator': 7.24.4 - '@babel/runtime': 7.24.4 + '@babel/core': 7.24.5 + '@babel/generator': 7.24.5 + '@babel/runtime': 7.24.5 ast-types: 0.14.2 commander: 2.20.3 doctrine: 3.0.0 @@ -18317,7 +18317,7 @@ packages: peerDependencies: react: '>=16.13.1' dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 react: 18.2.0 dev: false @@ -18326,7 +18326,7 @@ packages: peerDependencies: react: ^16.3.0 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 prop-types: 15.8.1 react: 18.2.0 warning: 4.0.3 @@ -18342,7 +18342,7 @@ packages: final-form: ^4.20.4 react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 final-form: 4.20.10 react: 18.2.0 dev: false @@ -18385,7 +18385,7 @@ packages: peerDependencies: react: '>=16.8.6' dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@emotion/is-prop-valid': 0.7.3 css-jss: 10.10.0 hoist-non-react-statics: 3.3.2 @@ -18415,7 +18415,7 @@ packages: scheduler: 0.23.0 dev: false - /react-native@0.73.6(@babel/core@7.24.4)(@babel/preset-env@7.24.4)(react@18.2.0): + /react-native@0.73.6(@babel/core@7.24.5)(@babel/preset-env@7.24.5)(react@18.2.0): resolution: {integrity: sha512-oqmZe8D2/VolIzSPZw+oUd6j/bEmeRHwsLn1xLA5wllEYsZ5zNuMsDus235ONOnCRwexqof/J3aztyQswSmiaA==} engines: {node: '>=18'} hasBin: true @@ -18427,8 +18427,8 @@ packages: '@react-native-community/cli-platform-android': 12.3.6 '@react-native-community/cli-platform-ios': 12.3.6 '@react-native/assets-registry': 0.73.1 - '@react-native/codegen': 0.73.3(@babel/preset-env@7.24.4) - '@react-native/community-cli-plugin': 0.73.17(@babel/core@7.24.4)(@babel/preset-env@7.24.4) + '@react-native/codegen': 0.73.3(@babel/preset-env@7.24.5) + '@react-native/community-cli-plugin': 0.73.17(@babel/core@7.24.5)(@babel/preset-env@7.24.5) '@react-native/gradle-plugin': 0.73.4 '@react-native/js-polyfills': 0.73.1 '@react-native/normalize-colors': 0.73.2 @@ -18523,7 +18523,7 @@ packages: redux: optional: true dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 '@types/hoist-non-react-statics': 3.3.5 '@types/react': 18.2.55 '@types/use-sync-external-store': 0.0.3 @@ -18628,7 +18628,7 @@ packages: resolution: {integrity: sha512-0W/e9uPweNEOSPjmYtuKSC/SvKKg1sfo+WtPdnxeLF3t2L82h7jjszuOHz9C23fzkvLfdgkaOmcbAxE9w2GEjA==} engines: {node: '>=6.0.0'} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 warning: 4.0.3 dev: false @@ -18636,7 +18636,7 @@ packages: resolution: {integrity: sha512-W+fXBOsDqgFK1/g7MzRMVcDurp3LqO3ksC8UgInh2P/tKgb5DusuuB1geKHFc6o1wKl+4oyER4Zh3Lxmr8xbXA==} engines: {node: '>=6.0.0'} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 keycode: 2.2.1 prop-types: 15.8.1 react-event-listener: 0.6.6(react@18.2.0) @@ -18652,7 +18652,7 @@ packages: peerDependencies: react: ^15.3.0 || ^16.0.0 || ^17.0.0 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 prop-types: 15.8.1 react: 18.2.0 react-swipeable-views-core: 0.14.0 @@ -18676,7 +18676,7 @@ packages: react: '>=16.6.0' react-dom: '>=16.6.0' dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 dom-helpers: 5.2.1 loose-envify: 1.4.0 prop-types: 15.8.1 @@ -18713,7 +18713,7 @@ packages: react: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 react-dom: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 memoize-one: 5.2.1 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -18945,7 +18945,7 @@ packages: /redux@4.2.1: resolution: {integrity: sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 dev: false /reflect.getprototypeof@1.0.4: @@ -18981,7 +18981,7 @@ packages: /regenerator-transform@0.15.2: resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 /regexp.prototype.flags@1.5.2: resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==} @@ -19220,14 +19220,14 @@ packages: dependencies: glob: 10.3.10 - /rollup-plugin-babel@4.4.0(@babel/core@7.24.4)(rollup@3.29.4): + /rollup-plugin-babel@4.4.0(@babel/core@7.24.5)(rollup@3.29.4): resolution: {integrity: sha512-Lek/TYp1+7g7I+uMfJnnSJ7YWoD58ajo6Oarhlex7lvUce+RCKRuGRSgztDO3/MF/PuGKmUL5iTHKf208UNszw==} deprecated: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-babel. peerDependencies: - '@babel/core': ^7.24.4 + '@babel/core': ^7.24.5 rollup: '>=0.60.0 <3' dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 '@babel/helper-module-imports': 7.24.3 rollup: 3.29.4 rollup-pluginutils: 2.8.2 @@ -19335,7 +19335,7 @@ packages: /rtl-css-js@1.16.0: resolution: {integrity: sha512-Oc7PnzwIEU4M0K1J4h/7qUUaljXhQ0kCObRsZjxs2HjkpKsnoTMvSmvJ4sqgJZd0zBoEfAyTdnK/jMIYvrjySQ==} dependencies: - '@babel/runtime': 7.24.4 + '@babel/runtime': 7.24.5 dev: false /run-async@2.4.1: @@ -20181,7 +20181,7 @@ packages: stylis: 4.3.2 tslib: 2.6.2 - /styled-jsx@5.1.1(@babel/core@7.24.4)(babel-plugin-macros@3.1.0)(react@18.2.0): + /styled-jsx@5.1.1(@babel/core@7.24.5)(babel-plugin-macros@3.1.0)(react@18.2.0): resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} engines: {node: '>= 12.0.0'} peerDependencies: @@ -20194,7 +20194,7 @@ packages: babel-plugin-macros: optional: true dependencies: - '@babel/core': 7.24.4 + '@babel/core': 7.24.5 babel-plugin-macros: 3.1.0 client-only: 0.0.1 react: 18.2.0 @@ -20239,8 +20239,8 @@ packages: /stylelint-processor-styled-components@1.10.0: resolution: {integrity: sha512-g4HpN9rm0JD0LoHuIOcd/FIjTZCJ0ErQ+dC3VTxp+dSvnkV+MklKCCmCQEdz5K5WxF4vPuzfVgdbSDuPYGZhoA==} dependencies: - '@babel/parser': 7.24.4 - '@babel/traverse': 7.24.1 + '@babel/parser': 7.24.5 + '@babel/traverse': 7.24.5 micromatch: 4.0.5 postcss: 7.0.39 transitivePeerDependencies: diff --git a/test/package.json b/test/package.json index 306a883cfc1760..a35e0ae53a3d64 100644 --- a/test/package.json +++ b/test/package.json @@ -6,7 +6,7 @@ "typescript": "tsc -p tsconfig.json" }, "devDependencies": { - "@babel/runtime": "^7.24.4", + "@babel/runtime": "^7.24.5", "@emotion/cache": "^11.11.0", "@emotion/react": "^11.11.4", "@mui-internal/test-utils": "workspace:^", From 738bcbfea39a4876a4d1ef4786d3890483642e1e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 9 May 2024 14:11:44 +0700 Subject: [PATCH 21/25] Bump @octokit/rest to ^20.1.1 (#42125) --- package.json | 2 +- pnpm-lock.yaml | 70 ++++++++++++++++++++++---------------------------- 2 files changed, 31 insertions(+), 41 deletions(-) diff --git a/package.json b/package.json index 9b44d7d0a854ca..92aac03267e273 100644 --- a/package.json +++ b/package.json @@ -112,7 +112,7 @@ "@mui/material": "workspace:^", "@mui/utils": "workspace:^", "@next/eslint-plugin-next": "^14.2.3", - "@octokit/rest": "^20.1.0", + "@octokit/rest": "^20.1.1", "@pigment-css/react": "^0.0.10", "@playwright/test": "1.43.1", "@types/enzyme": "^3.10.18", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0e7cdbc8309e37..084e87b971836e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -120,8 +120,8 @@ importers: specifier: ^14.2.3 version: 14.2.3 '@octokit/rest': - specifier: ^20.1.0 - version: 20.1.0 + specifier: ^20.1.1 + version: 20.1.1 '@pigment-css/react': specifier: ^0.0.10 version: 0.0.10(@types/react@18.2.55)(react@18.2.0) @@ -6478,7 +6478,7 @@ packages: '@octokit/graphql': 7.1.0 '@octokit/request': 8.3.1 '@octokit/request-error': 5.1.0 - '@octokit/types': 13.1.0 + '@octokit/types': 13.5.0 before-after-hook: 2.2.2 universal-user-agent: 6.0.0 dev: true @@ -6504,7 +6504,7 @@ packages: resolution: {integrity: sha512-ekqR4/+PCLkEBF6qgj8WqJfvDq65RH85OAgrtnVp1mSxaXF03u2xW/hUdweGS5654IlC0wkNYC18Z50tSYTAFw==} engines: {node: '>= 18'} dependencies: - '@octokit/types': 13.1.0 + '@octokit/types': 13.5.0 universal-user-agent: 6.0.0 dev: true @@ -6534,7 +6534,7 @@ packages: engines: {node: '>= 18'} dependencies: '@octokit/request': 8.3.1 - '@octokit/types': 13.1.0 + '@octokit/types': 13.5.0 universal-user-agent: 6.0.0 dev: true @@ -6550,18 +6550,24 @@ packages: resolution: {integrity: sha512-V8GImKs3TeQRxRtXFpG2wl19V7444NIOTDF24AWuIbmNaNYOQMWRbjcGDXV5B+0n887fgDcuMNOmlul+k+oJtw==} dev: true - /@octokit/openapi-types@20.0.0: - resolution: {integrity: sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA==} - dev: true - - /@octokit/openapi-types@21.2.0: - resolution: {integrity: sha512-xx+Xd6I7rYvul/hgUDqv6TeGX0IOGnhSg9IOeYgd/uI7IAqUy6DE2B6Ipv2M4mWoxaMcWjIzgTIcv8pMO3F3vw==} + /@octokit/openapi-types@22.2.0: + resolution: {integrity: sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==} dev: true /@octokit/plugin-enterprise-rest@6.0.1: resolution: {integrity: sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw==} dev: true + /@octokit/plugin-paginate-rest@11.3.1(@octokit/core@5.2.0): + resolution: {integrity: sha512-ryqobs26cLtM1kQxqeZui4v8FeznirUsksiA+RYemMPJ7Micju0WSkv50dBksTuZks9O5cg4wp+t8fZ/cLY56g==} + engines: {node: '>= 18'} + peerDependencies: + '@octokit/core': '5' + dependencies: + '@octokit/core': 5.2.0 + '@octokit/types': 13.5.0 + dev: true + /@octokit/plugin-paginate-rest@2.21.3(@octokit/core@3.6.0): resolution: {integrity: sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==} peerDependencies: @@ -6582,16 +6588,6 @@ packages: '@octokit/types': 9.3.2 dev: true - /@octokit/plugin-paginate-rest@9.2.1(@octokit/core@5.2.0): - resolution: {integrity: sha512-wfGhE/TAkXZRLjksFXuDZdmGnJQHvtU/joFQdweXUgzo1XwvBCD4o4+75NtFfjfLK5IwLf9vHTfSiU3sLRYpRw==} - engines: {node: '>= 18'} - peerDependencies: - '@octokit/core': '5' - dependencies: - '@octokit/core': 5.2.0 - '@octokit/types': 12.6.0 - dev: true - /@octokit/plugin-request-log@1.0.4(@octokit/core@3.6.0): resolution: {integrity: sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==} peerDependencies: @@ -6617,14 +6613,14 @@ packages: '@octokit/core': 5.2.0 dev: true - /@octokit/plugin-rest-endpoint-methods@10.4.1(@octokit/core@5.2.0): - resolution: {integrity: sha512-xV1b+ceKV9KytQe3zCVqjg+8GTGfDYwaT1ATU5isiUyVtlVAO3HNdzpS4sr4GBx4hxQ46s7ITtZrAsxG22+rVg==} + /@octokit/plugin-rest-endpoint-methods@13.2.2(@octokit/core@5.2.0): + resolution: {integrity: sha512-EI7kXWidkt3Xlok5uN43suK99VWqc8OaIMktY9d9+RNKl69juoTyxmLoWPIZgJYzi41qj/9zU7G/ljnNOJ5AFA==} engines: {node: '>= 18'} peerDependencies: - '@octokit/core': '5' + '@octokit/core': ^5 dependencies: '@octokit/core': 5.2.0 - '@octokit/types': 12.6.0 + '@octokit/types': 13.5.0 dev: true /@octokit/plugin-rest-endpoint-methods@5.16.2(@octokit/core@3.6.0): @@ -6668,7 +6664,7 @@ packages: resolution: {integrity: sha512-GETXfE05J0+7H2STzekpKObFe765O5dlAKUTLNGeH+x47z7JjXHfsHKo5z21D/o/IOZTUEI6nyWyR+bZVP/n5Q==} engines: {node: '>= 18'} dependencies: - '@octokit/types': 13.1.0 + '@octokit/types': 13.5.0 deprecation: 2.3.1 once: 1.4.0 dev: true @@ -6706,7 +6702,7 @@ packages: dependencies: '@octokit/endpoint': 9.0.5 '@octokit/request-error': 5.1.0 - '@octokit/types': 13.1.0 + '@octokit/types': 13.5.0 universal-user-agent: 6.0.0 dev: true @@ -6733,14 +6729,14 @@ packages: - encoding dev: true - /@octokit/rest@20.1.0: - resolution: {integrity: sha512-STVO3itHQLrp80lvcYB2UIKoeil5Ctsgd2s1AM+du3HqZIR35ZH7WE9HLwUOLXH0myA0y3AGNPo8gZtcgIbw0g==} + /@octokit/rest@20.1.1: + resolution: {integrity: sha512-MB4AYDsM5jhIHro/dq4ix1iWTLGToIGk6cWF5L6vanFaMble5jTX/UBQyiv05HsWnwUtY8JrfHy2LWfKwihqMw==} engines: {node: '>= 18'} dependencies: '@octokit/core': 5.2.0 - '@octokit/plugin-paginate-rest': 9.2.1(@octokit/core@5.2.0) + '@octokit/plugin-paginate-rest': 11.3.1(@octokit/core@5.2.0) '@octokit/plugin-request-log': 4.0.0(@octokit/core@5.2.0) - '@octokit/plugin-rest-endpoint-methods': 10.4.1(@octokit/core@5.2.0) + '@octokit/plugin-rest-endpoint-methods': 13.2.2(@octokit/core@5.2.0) dev: true /@octokit/tsconfig@1.0.2: @@ -6753,16 +6749,10 @@ packages: '@octokit/openapi-types': 18.0.0 dev: true - /@octokit/types@12.6.0: - resolution: {integrity: sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==} - dependencies: - '@octokit/openapi-types': 20.0.0 - dev: true - - /@octokit/types@13.1.0: - resolution: {integrity: sha512-nBwAFOYqVUUJ2AZFK4ZzESQptaAVqdTDKk8gE0Xr0o99WuPDSrhUC38x0F40xD9OUxXhOOuZKWNNVVLPSHQDvQ==} + /@octokit/types@13.5.0: + resolution: {integrity: sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ==} dependencies: - '@octokit/openapi-types': 21.2.0 + '@octokit/openapi-types': 22.2.0 dev: true /@octokit/types@6.41.0: From 5820e1dafeae084aa6a49e9b96d5482956e408d0 Mon Sep 17 00:00:00 2001 From: Taha Rhidouani <37096708+TahaRhidouani@users.noreply.github.com> Date: Thu, 9 May 2024 05:54:09 -0400 Subject: [PATCH 22/25] [material-ui][Autocomplete] Improve design when there's a start adornment for small autocomplete (#41781) Co-authored-by: ZeeshanTamboli --- .../src/Autocomplete/Autocomplete.js | 35 ++++++++++---- .../SmallAutocompleteWithStartAdornment.js | 47 +++++++++++++++++++ 2 files changed, 72 insertions(+), 10 deletions(-) create mode 100644 test/regressions/fixtures/Autocomplete/SmallAutocompleteWithStartAdornment.js diff --git a/packages/mui-material/src/Autocomplete/Autocomplete.js b/packages/mui-material/src/Autocomplete/Autocomplete.js index 4ac6b296d79e1e..701c779625cb52 100644 --- a/packages/mui-material/src/Autocomplete/Autocomplete.js +++ b/packages/mui-material/src/Autocomplete/Autocomplete.js @@ -87,21 +87,11 @@ const AutocompleteRoot = styled('div', { ]; }, })({ - [`&.${autocompleteClasses.focused} .${autocompleteClasses.clearIndicator}`]: { - visibility: 'visible', - }, - /* Avoid double tap issue on iOS */ - '@media (pointer: fine)': { - [`&:hover .${autocompleteClasses.clearIndicator}`]: { - visibility: 'visible', - }, - }, [`& .${autocompleteClasses.tag}`]: { margin: 3, maxWidth: 'calc(100% - 6px)', }, [`& .${autocompleteClasses.inputRoot}`]: { - flexWrap: 'wrap', [`.${autocompleteClasses.hasPopupIcon}&, .${autocompleteClasses.hasClearIcon}&`]: { paddingRight: 26 + 4, }, @@ -113,6 +103,23 @@ const AutocompleteRoot = styled('div', { minWidth: 30, }, }, + [`&.${autocompleteClasses.focused}`]: { + [`& .${autocompleteClasses.clearIndicator}`]: { + visibility: 'visible', + }, + [`& .${autocompleteClasses.input}`]: { + minWidth: 0, + }, + }, + /* Avoid double tap issue on iOS */ + '@media (pointer: fine)': { + [`&:hover .${autocompleteClasses.clearIndicator}`]: { + visibility: 'visible', + }, + [`&:hover .${autocompleteClasses.input}`]: { + minWidth: 0, + }, + }, [`& .${inputClasses.root}`]: { paddingBottom: 1, '& .MuiInput-input': { @@ -215,6 +222,14 @@ const AutocompleteRoot = styled('div', { }, }, }, + { + props: { multiple: true }, + style: { + [`& .${autocompleteClasses.inputRoot}`]: { + flexWrap: 'wrap', + }, + }, + }, ], }); diff --git a/test/regressions/fixtures/Autocomplete/SmallAutocompleteWithStartAdornment.js b/test/regressions/fixtures/Autocomplete/SmallAutocompleteWithStartAdornment.js new file mode 100644 index 00000000000000..cb24cec0e649a8 --- /dev/null +++ b/test/regressions/fixtures/Autocomplete/SmallAutocompleteWithStartAdornment.js @@ -0,0 +1,47 @@ +import * as React from 'react'; +import Autocomplete from '@mui/material/Autocomplete'; +import SvgIcon from '@mui/material/SvgIcon'; +import TextField from '@mui/material/TextField'; + +const movies = [ + { + label: 'The Lord of the Rings: The Two Towers', + year: 2002, + }, +]; + +export default function SmallAutocompleteWithStartAdornment() { + return ( + ( + + + + + + ), + }} + /> + )} + /> + ); +} From 2fe514a73a08642f2f15cede88b6a1d7da1a864f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aar=C3=B3n=20Garc=C3=ADa=20Herv=C3=A1s?= Date: Thu, 9 May 2024 13:11:57 +0200 Subject: [PATCH 23/25] [website] Fix pricing casing (#42178) --- docs/src/components/pricing/PricingTable.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/src/components/pricing/PricingTable.tsx b/docs/src/components/pricing/PricingTable.tsx index ecea45b9b2f87c..f3b7c8ca0258c5 100644 --- a/docs/src/components/pricing/PricingTable.tsx +++ b/docs/src/components/pricing/PricingTable.tsx @@ -999,7 +999,7 @@ const premiumData: Record = { 'mui-x-development-perpetual': , 'mui-x-updates': , // Support - 'core-support': , + 'core-support': , 'x-support': , 'tech-advisory': pending, 'support-duration': , @@ -1017,7 +1017,7 @@ const premiumData: Record = { /> ), 'pre-screening': , - 'issue-escalation': , + 'issue-escalation': , 'security-questionnaire': , }; From 93e25916268e33832e78a10e3b822c25f6902a56 Mon Sep 17 00:00:00 2001 From: Nora <72460825+noraleonte@users.noreply.github.com> Date: Thu, 9 May 2024 15:00:53 +0300 Subject: [PATCH 24/25] [website] Update MUI X deps and migrate TreeView demos to v7 API (#42149) Signed-off-by: Nora <72460825+noraleonte@users.noreply.github.com> Co-authored-by: Lukas Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com> --- .../default-theme-viewer/JoyDefaultTheme.js | 4 +- .../default-theme/DefaultTheme.js | 4 +- docs/package.json | 10 +- docs/pages/_app.js | 2 +- .../components/productX/XDateRangeDemo.tsx | 4 +- .../src/components/productX/XTreeViewDemo.tsx | 532 ++++++++---------- .../components/showcase/FolderTreeView.tsx | 404 +++++++------ docs/src/modules/components/ThemeViewer.tsx | 45 +- pnpm-lock.yaml | 103 ++-- 9 files changed, 569 insertions(+), 539 deletions(-) diff --git a/docs/data/joy/customization/default-theme-viewer/JoyDefaultTheme.js b/docs/data/joy/customization/default-theme-viewer/JoyDefaultTheme.js index 7b83d51ed7c326..dbbabfb2304d3e 100644 --- a/docs/data/joy/customization/default-theme-viewer/JoyDefaultTheme.js +++ b/docs/data/joy/customization/default-theme-viewer/JoyDefaultTheme.js @@ -3,7 +3,7 @@ import { extendTheme } from '@mui/joy/styles'; import Box from '@mui/joy/Box'; import { ThemeProvider, createTheme } from '@mui/material/styles'; import ThemeViewer, { - useNodeIdsLazy, + useItemIdsLazy, } from 'docs/src/modules/components/ThemeViewer'; const defaultTheme = extendTheme(); @@ -39,7 +39,7 @@ export default function JoyDefaultTheme() { }, []); const data = defaultTheme; - const allNodeIds = useNodeIdsLazy(data); + const allNodeIds = useItemIdsLazy(data); React.useDebugValue(allNodeIds); return ( diff --git a/docs/data/material/customization/default-theme/DefaultTheme.js b/docs/data/material/customization/default-theme/DefaultTheme.js index 11d2dd6a76b8ca..582213931f24e1 100644 --- a/docs/data/material/customization/default-theme/DefaultTheme.js +++ b/docs/data/material/customization/default-theme/DefaultTheme.js @@ -6,7 +6,7 @@ import FormControlLabel from '@mui/material/FormControlLabel'; import Switch from '@mui/material/Switch'; import { useTranslate } from '@mui/docs/i18n'; import ThemeViewer, { - useNodeIdsLazy, + useItemIdsLazy, } from 'docs/src/modules/components/ThemeViewer'; import { blue, grey } from '@mui/docs/branding'; @@ -104,7 +104,7 @@ function DefaultTheme() { }); }, [darkTheme]); - const allNodeIds = useNodeIdsLazy(data); + const allNodeIds = useItemIdsLazy(data); React.useDebugValue(allNodeIds); React.useEffect(() => { if (checked) { diff --git a/docs/package.json b/docs/package.json index ae8a0a0098b33c..03cf7b78245cbc 100644 --- a/docs/package.json +++ b/docs/package.json @@ -43,15 +43,15 @@ "@mui/system": "workspace:^", "@mui/types": "workspace:^", "@mui/utils": "workspace:^", - "@mui/x-charts": "6.19.8", + "@mui/x-charts": "7.3.2", "@mui/x-data-grid": "7.3.1", "@mui/x-data-grid-generator": "7.3.1", "@mui/x-data-grid-premium": "7.3.1", "@mui/x-data-grid-pro": "7.3.1", - "@mui/x-date-pickers": "6.19.9", - "@mui/x-date-pickers-pro": "6.19.9", - "@mui/x-license-pro": "6.10.2", - "@mui/x-tree-view": "6.17.0", + "@mui/x-date-pickers": "7.3.2", + "@mui/x-date-pickers-pro": "7.3.2", + "@mui/x-license": "7.2.0", + "@mui/x-tree-view": "7.3.1", "@popperjs/core": "^2.11.8", "@react-spring/web": "^9.7.3", "autoprefixer": "^10.4.19", diff --git a/docs/pages/_app.js b/docs/pages/_app.js index 7ba45523219f4e..b17a4b54351526 100644 --- a/docs/pages/_app.js +++ b/docs/pages/_app.js @@ -5,7 +5,7 @@ import { loadCSS } from 'fg-loadcss/src/loadCSS'; import NextHead from 'next/head'; import PropTypes from 'prop-types'; import { useRouter } from 'next/router'; -import { LicenseInfo } from '@mui/x-data-grid-pro'; +import { LicenseInfo } from '@mui/x-license'; import materialPkgJson from 'packages/mui-material/package.json'; import joyPkgJson from 'packages/mui-joy/package.json'; import systemPkgJson from 'packages/mui-system/package.json'; diff --git a/docs/src/components/productX/XDateRangeDemo.tsx b/docs/src/components/productX/XDateRangeDemo.tsx index 679a2b824c2ff3..1acc8b4ea99527 100644 --- a/docs/src/components/productX/XDateRangeDemo.tsx +++ b/docs/src/components/productX/XDateRangeDemo.tsx @@ -19,7 +19,7 @@ const endDate = new Date(); endDate.setDate(endDate.getDate() + 28); function CustomRangeShortcuts(props: PickersShortcutsProps>) { - const { items, onChange, isValid } = props; + const { items, onChange, isValid, changeImportance = 'accept' } = props; if (items == null || items.length === 0) { return null; @@ -31,7 +31,7 @@ function CustomRangeShortcuts(props: PickersShortcutsProps>) { return { label: item.label, onClick: () => { - onChange(newValue); + onChange(newValue, changeImportance, item); }, disabled: !isValid(newValue), }; diff --git a/docs/src/components/productX/XTreeViewDemo.tsx b/docs/src/components/productX/XTreeViewDemo.tsx index 7cf620c9935071..23b34d381c4def 100644 --- a/docs/src/components/productX/XTreeViewDemo.tsx +++ b/docs/src/components/productX/XTreeViewDemo.tsx @@ -1,261 +1,274 @@ import * as React from 'react'; import clsx from 'clsx'; +import { animated, useSpring } from '@react-spring/web'; import { styled } from '@mui/material/styles'; +import { TransitionProps } from '@mui/material/transitions'; +import { HighlightedCode } from '@mui/docs/HighlightedCode'; +import Frame from 'docs/src/components/action/Frame'; import Box from '@mui/material/Box'; -import Paper from '@mui/material/Paper'; -import { TreeView } from '@mui/x-tree-view/TreeView'; -import { - TreeItem as MuiTreeItem, - useTreeItem, - TreeItemProps, - TreeItemContentProps, -} from '@mui/x-tree-view/TreeItem'; +import Collapse from '@mui/material/Collapse'; import Typography from '@mui/material/Typography'; +import Paper from '@mui/material/Paper'; import FolderRounded from '@mui/icons-material/FolderRounded'; import FolderOpenRounded from '@mui/icons-material/FolderOpenRounded'; -import PhotoOutlined from '@mui/icons-material/PhotoOutlined'; -import PictureAsPdfOutlined from '@mui/icons-material/PictureAsPdfOutlined'; -import VideocamOutlined from '@mui/icons-material/VideocamOutlined'; -import FourKOutlined from '@mui/icons-material/FourKOutlined'; -import { HighlightedCode } from '@mui/docs/HighlightedCode'; -import Frame from 'docs/src/components/action/Frame'; +import ImageIcon from '@mui/icons-material/Image'; +import PictureAsPdfIcon from '@mui/icons-material/PictureAsPdf'; +import VideoCameraBackIcon from '@mui/icons-material/VideoCameraBack'; +import { RichTreeView } from '@mui/x-tree-view/RichTreeView'; +import { treeItemClasses } from '@mui/x-tree-view/TreeItem'; +import { + unstable_useTreeItem2 as useTreeItem2, + UseTreeItem2Parameters, +} from '@mui/x-tree-view/useTreeItem2'; +import { + TreeItem2Content, + TreeItem2IconContainer, + TreeItem2Label, + TreeItem2Root, +} from '@mui/x-tree-view/TreeItem2'; +import { TreeItem2Icon } from '@mui/x-tree-view/TreeItem2Icon'; +import { TreeItem2Provider } from '@mui/x-tree-view/TreeItem2Provider'; +import { TreeViewBaseItem } from '@mui/x-tree-view/models'; -const CustomContent = React.forwardRef(function CustomContent( - props: TreeItemContentProps & { lastNestedChild?: boolean }, - ref, -) { - const { - lastNestedChild, - classes, - className, - label, - nodeId, - icon: iconProp, - expansionIcon, - displayIcon, - } = props; +type FileType = 'image' | 'pdf' | 'video' | 'folder'; - const { - disabled, - expanded, - selected, - focused, - handleExpansion, - handleSelection, - preventSelection, - } = useTreeItem(nodeId); +type ExtendedTreeItemProps = { + fileType?: FileType; + id: string; + label: string; +}; - const icon = iconProp || expansionIcon || displayIcon; +const ITEMS: TreeViewBaseItem[] = [ + { + id: '1', + label: 'Drive', + children: [ + { + id: '1.1', + label: 'Backup', + children: [ + { id: '1.1.1', label: 'Jan 2023.pdf', fileType: 'pdf' }, + { id: '1.1.2', label: 'Feb 2023.pdf', fileType: 'pdf' }, + { id: '1.1.3', label: 'Mar 2023.pdf', fileType: 'pdf' }, + ], + }, + { + id: '1.2', + label: 'Photos', + children: [ + { id: '1.2.1', label: 'family.jpeg', fileType: 'image' }, + { id: '1.2.2', label: 'my_dog.png', fileType: 'image' }, + ], + }, + ], + }, + { + id: '2', + label: 'Favorites', + children: [ + { + id: '2.1', + label: 'MUI_retreat_photo.jpg', + fileType: 'image', + }, + { + id: '2.2', + label: 'v7_secrets.mkv', + fileType: 'video', + }, + { + id: '2.3', + label: 'Other pictures', + children: [{ id: '2.3.1', label: 'my_avatar.jpeg', fileType: 'image' }], + }, + ], + }, +]; - const handleMouseDown = (event: React.MouseEvent) => { - preventSelection(event); - }; +declare module 'react' { + interface CSSProperties { + '--tree-view-color'?: string; + '--tree-view-bg-color'?: string; + } +} - const handleExpansionClick = (event: React.MouseEvent) => { - handleExpansion(event); - handleSelection(event); - }; +const StyledTreeItemRoot = styled(TreeItem2Root)(({ theme }) => ({ + color: theme.palette.mode === 'light' ? theme.palette.grey[800] : theme.palette.grey[400], + position: 'relative', + [`& .${treeItemClasses.groupTransition}`]: { + marginLeft: theme.spacing(3.5), + }, +})) as unknown as typeof TreeItem2Root; - const handleSelectionClick = (event: React.MouseEvent) => { - handleSelection(event); - }; +const CustomTreeItemContent = styled(TreeItem2Content)(({ theme }) => ({ + borderRadius: theme.spacing(0.5), + marginBottom: theme.spacing(0.2), + marginTop: theme.spacing(0.2), + padding: `${theme.spacing(0.3)} ${theme.spacing(0.5)}`, + '&.Mui-expanded&::before': { + content: '""', + display: 'block', + position: 'absolute', + left: '16px', + top: '30px', + height: 'calc(100% - 32px)', + width: '1.5px', + backgroundColor: + theme.palette.mode === 'light' + ? (theme.vars || theme).palette.grey[100] + : (theme.vars || theme).palette.primaryDark[700], + }, +})); - const renderExtension = () => { - if (typeof label !== 'string') { - return label; - } - const extension = (label || '').split('.').slice(-1)[0]; - if (extension.match(/(jpg|jpeg|png)/)) { - return ; - } - if (extension === 'pdf') { - return ; - } - if (extension === 'mp4') { - return ; - } - if (extension === 'mkv') { - return ; - } - return ( - - ); - }; +const AnimatedCollapse = animated(Collapse); + +function TransitionComponent(props: TransitionProps) { + const style = useSpring({ + to: { + opacity: props.in ? 1 : 0, + transform: `translate3d(0,${props.in ? 0 : 20}px,0)`, + paddingLeft: 24, + }, + }); + + return ; +} +interface CustomLabelProps { + children: React.ReactNode; + icon?: React.ElementType; + expandable?: boolean; +} + +function CustomLabel({ icon: Icon, expandable, children, ...other }: CustomLabelProps) { return ( - /* @ts-ignore -- Key event is handled by the TreeView */ - } + - {icon} - {lastNestedChild && renderExtension()} - {!lastNestedChild && (expanded ? : )} + {Icon && ( + ({ + mr: 1, + fontSize: '1rem', + color: expandable ? theme.palette.primary.main : theme.palette.grey[600], + })} + /> + )} + ({ + fontWeight: expandable + ? theme.typography.fontWeightMedium + : theme.typography.fontWeightRegular, + color: expandable ? theme.palette.text.primary : theme.palette.text.secondary, + })} + variant="body2" > - {label} + {children} - + ); -}); +} -const StyledTreeItem = styled(MuiTreeItem)(({ theme }) => [ - { - paddingTop: 5, - '& .MuiTreeItem-content .MuiTreeItem-label': { - paddingLeft: theme.spacing(0.75), - }, - '& .MuiTreeItem-root': { - position: 'relative', - '&::before': { - content: '""', - display: 'block', - position: 'absolute', - left: -14, - height: '100%', - width: 1.5, - backgroundColor: (theme.vars || theme).palette.grey[100], - }, - }, - '& .MuiTreeItem-content': { - padding: theme.spacing('2px', 0.5), - }, - '& .MuiTreeItem-group': { - marginLeft: 0, - paddingLeft: theme.spacing(3), - }, - }, - theme.applyDarkStyles({ - '& .MuiTreeItem-root': { - '&::before': { - backgroundColor: (theme.vars || theme).palette.primaryDark[700], - }, - }, - '& .MuiTreeItem-group': { - '& .MuiTreeItem-content': { - '&::before': { - backgroundColor: (theme.vars || theme).palette.primaryDark[500], - }, - }, - }, - }), -]); +const isExpandable = (reactChildren: React.ReactNode) => { + if (Array.isArray(reactChildren)) { + return reactChildren.length > 0 && reactChildren.some(isExpandable); + } + return Boolean(reactChildren); +}; -const TreeItem = React.forwardRef(function TreeItem( - props: TreeItemProps & { - ContentProps?: { lastNestedChild?: boolean }; - }, +const getIconFromFileType = (fileType: FileType) => { + switch (fileType) { + case 'image': + return ImageIcon; + case 'pdf': + return PictureAsPdfIcon; + case 'video': + return VideoCameraBackIcon; + case 'folder': + return FolderRounded; + default: + return FolderRounded; + } +}; + +interface CustomTreeItemProps + extends Omit, + Omit, 'onFocus'> {} + +const CustomTreeItem = React.forwardRef(function CustomTreeItem( + props: CustomTreeItemProps, ref: React.Ref, ) { - return ; + const { id, itemId, label, disabled, children, ...other } = props; + + const { + getRootProps, + getContentProps, + getIconContainerProps, + getLabelProps, + getGroupTransitionProps, + status, + publicAPI, + } = useTreeItem2({ id, itemId, children, label, disabled, rootRef: ref }); + + const item = publicAPI.getItem(itemId); + const expandable = isExpandable(children); + let icon; + if (expandable) { + if (status.expanded) { + icon = FolderOpenRounded; + } else { + icon = FolderRounded; + } + } else if (item.fileType) { + icon = getIconFromFileType(item.fileType); + } + + return ( + + + + {expandable && ( + + + + )} + + + + {children && } + + + ); }); const code = ` - - - - - - - - - - - - - - - - - - - -`; +`; -export default function XDateRangeDemo() { +export default function XTreeViewDemo() { return ( @@ -265,67 +278,20 @@ export default function XDateRangeDemo() { maxWidth: '100%', bgcolor: '#FFF', borderRadius: '8px', + padding: 2, ...theme.applyDarkStyles({ bgcolor: 'primaryDark.900', }), })} > - - - - - - - - - - - - - - - - - - - - + diff --git a/docs/src/components/showcase/FolderTreeView.tsx b/docs/src/components/showcase/FolderTreeView.tsx index b5db11f3404cbe..806c63a0f388f5 100644 --- a/docs/src/components/showcase/FolderTreeView.tsx +++ b/docs/src/components/showcase/FolderTreeView.tsx @@ -1,210 +1,266 @@ -/* eslint-disable jsx-a11y/no-static-element-interactions */ -/* eslint-disable jsx-a11y/click-events-have-key-events */ import * as React from 'react'; import clsx from 'clsx'; +import { animated, useSpring } from '@react-spring/web'; import { styled } from '@mui/material/styles'; +import { TransitionProps } from '@mui/material/transitions'; import Box from '@mui/material/Box'; -import { TreeView } from '@mui/x-tree-view/TreeView'; -import { - TreeItem, - useTreeItem, - TreeItemProps, - TreeItemContentProps, -} from '@mui/x-tree-view/TreeItem'; +import Collapse from '@mui/material/Collapse'; import Typography from '@mui/material/Typography'; import KeyboardArrowDownRounded from '@mui/icons-material/KeyboardArrowDownRounded'; import KeyboardArrowUpRounded from '@mui/icons-material/KeyboardArrowUpRounded'; import FolderRounded from '@mui/icons-material/FolderRounded'; +import { RichTreeView } from '@mui/x-tree-view/RichTreeView'; +import { treeItemClasses } from '@mui/x-tree-view/TreeItem'; +import { + unstable_useTreeItem2 as useTreeItem2, + UseTreeItem2Parameters, +} from '@mui/x-tree-view/useTreeItem2'; +import { + TreeItem2Content, + TreeItem2IconContainer, + TreeItem2Label, + TreeItem2Root, +} from '@mui/x-tree-view/TreeItem2'; +import { TreeItem2Icon } from '@mui/x-tree-view/TreeItem2Icon'; +import { TreeItem2Provider } from '@mui/x-tree-view/TreeItem2Provider'; +import { TreeViewBaseItem } from '@mui/x-tree-view/models'; -const CustomContent = React.forwardRef(function CustomContent( - props: TreeItemContentProps & { lastNestedChild?: boolean }, - ref, -) { - const { - lastNestedChild, - classes, - className, - label, - nodeId, - icon: iconProp, - expansionIcon, - displayIcon, - } = props; +type ExtendedTreeItemProps = { + id: string; + label: string; + color?: 'primary' | 'default'; +}; - const { - disabled, - expanded, - selected, - focused, - handleExpansion, - handleSelection, - preventSelection, - } = useTreeItem(nodeId); +const ITEMS: TreeViewBaseItem[] = [ + { + id: '1', + label: 'src', + color: 'primary', + children: [ + { + id: '1.1', + label: 'components', + children: [ + { id: '1.1.1', label: 'Button.tsx' }, + { id: '1.1.2', label: 'Drawer.tsx' }, + { id: '1.1.3', label: 'Navbar.tsx' }, + { id: '1.1.4', label: 'TreeView.tsx' }, + ], + }, + { + id: '1.2', + label: 'blocks', + children: [ + { id: '1.2.1', label: 'SignupPage.tsx' }, + { + id: '1.2.2', + label: 'PricingTable', + children: [ + { id: '1.2.2.1', label: 'PaymentOptions.tsx' }, + { id: '1.2.2.2', label: 'EarlyBirdDiscount.tsx' }, + ], + }, + ], + }, + ], + }, +]; + +function DotIcon() { + return ( + + ); +} - const icon = iconProp || expansionIcon || displayIcon; +declare module 'react' { + interface CSSProperties { + '--tree-view-color'?: string; + '--tree-view-bg-color'?: string; + } +} + +const StyledTreeItemRoot = styled(TreeItem2Root)(({ theme }) => ({ + color: theme.palette.mode === 'light' ? theme.palette.grey[800] : theme.palette.grey[400], + position: 'relative', + [`& .${treeItemClasses.groupTransition}`]: { + paddingLeft: theme.spacing(0.5), + }, +})) as unknown as typeof TreeItem2Root; + +const CustomTreeItemContent = styled(TreeItem2Content)(({ theme }) => ({ + borderRadius: theme.spacing(0.5), - const handleMouseDown = (event: React.MouseEvent) => { - preventSelection(event); - }; + '&.Mui-expanded&::before': { + content: '""', + display: 'block', + position: 'absolute', + left: '15px', + top: '28px', + height: 'calc(100% - 28px)', + width: '1.5px', + backgroundColor: + theme.palette.mode === 'light' + ? (theme.vars || theme).palette.grey[100] + : (theme.vars || theme).palette.primaryDark[700], + }, +})); + +const AnimatedCollapse = animated(Collapse); - const handleExpansionClick = (event: React.MouseEvent) => { - handleExpansion(event); - }; +function TransitionComponent(props: TransitionProps) { + const style = useSpring({ + to: { + opacity: props.in ? 1 : 0, + transform: `translate3d(0,${props.in ? 0 : 20}px,0)`, + paddingLeft: 24, + }, + }); - const handleSelectionClick = (event: React.MouseEvent) => { - handleSelection(event); - }; + return ; +} +interface CustomLabelProps { + children: React.ReactNode; + expandable?: boolean; + color: string; +} + +function CustomLabel({ color, expandable, children, ...other }: CustomLabelProps) { + let Icon; + if (expandable) { + Icon = FolderRounded; + } else { + Icon = DotIcon; + } return ( -
} + - {lastNestedChild ? ( + {Icon && ( - ) : ( - )} + ({ + fontWeight: expandable + ? theme.typography.fontWeightMedium + : theme.typography.fontWeightRegular, + })} + variant="body2" > - {label} + {children} - {icon} -
+ ); -}); +} -const StyledTreeItem = styled(TreeItem)(({ theme }) => [ - { - '& .MuiTreeItem-content': { - border: 'none', - backgroundColor: 'transparent', - borderRadius: 5, - padding: theme.spacing(0.5), - textAlign: 'left', - position: 'relative', - zIndex: 1, - }, - '& .MuiTreeItem-content .MuiTreeItem-label': { - paddingLeft: theme.spacing(1), - }, - '& .MuiTreeItem-root': { - position: 'relative', - '&::before': { - content: '""', - display: 'block', - position: 'absolute', - left: -14, - height: '100%', - width: 1.5, - backgroundColor: (theme.vars || theme).palette.grey[200], - }, - }, - '& .MuiTreeItem-group': { - marginLeft: 0, - paddingLeft: theme.spacing(3), - }, - }, - theme.applyDarkStyles({ - '& .MuiTreeItem-root': { - '&::before': { - backgroundColor: (theme.vars || theme).palette.primaryDark[600], - }, - }, - '& .MuiTreeItem-group': { - '& .MuiTreeItem-content': { - '&::before': { - backgroundColor: (theme.vars || theme).palette.primaryDark[600], - }, - }, - }, - }), -]); +const isExpandable = (reactChildren: React.ReactNode): boolean => { + if (Array.isArray(reactChildren)) { + return reactChildren.length > 0 && reactChildren.some(isExpandable); + } + return Boolean(reactChildren); +}; + +interface CustomTreeItemProps + extends Omit, + Omit, 'onFocus'> {} const CustomTreeItem = React.forwardRef(function CustomTreeItem( - props: TreeItemProps & { - ContentProps?: { lastNestedChild?: boolean }; - }, + props: CustomTreeItemProps, ref: React.Ref, ) { - return ; -}); + const { id, itemId, label, disabled, children, ...other } = props; + + const { + getRootProps, + getContentProps, + getIconContainerProps, + getLabelProps, + getGroupTransitionProps, + status, + publicAPI, + } = useTreeItem2({ id, itemId, children, label, disabled, rootRef: ref }); + + const item = publicAPI.getItem(itemId); + const expandable = isExpandable(children); -export default function FolderTreeView() { return ( - } - defaultExpandIcon={} - defaultEndIcon={
} - sx={{ p: 1, overflowY: 'auto' }} - > - - - - - - - - - + + + - - - - - - - + {expandable && ( + + + + )} + + {children && }{' '} + + + ); +}); +function CustomEndIcon() { + return
; +} + +function CustomExpandIcon() { + return ; +} + +function CustomCollapseIcon() { + return ; +} + +export default function TreeViewDemo() { + return ( + ); } diff --git a/docs/src/modules/components/ThemeViewer.tsx b/docs/src/modules/components/ThemeViewer.tsx index 60ddb10417cd1f..f9f4a07d22fe54 100644 --- a/docs/src/modules/components/ThemeViewer.tsx +++ b/docs/src/modules/components/ThemeViewer.tsx @@ -4,7 +4,7 @@ import { styled, alpha, lighten } from '@mui/material/styles'; import Box from '@mui/material/Box'; import ExpandIcon from '@mui/icons-material/ExpandMore'; import CollapseIcon from '@mui/icons-material/ChevronRight'; -import { TreeView } from '@mui/x-tree-view/TreeView'; +import { SimpleTreeView } from '@mui/x-tree-view/SimpleTreeView'; import { TreeItem as MuiTreeItem, treeItemClasses } from '@mui/x-tree-view/TreeItem'; import { blue, blueDark } from '@mui/docs/branding'; @@ -96,6 +96,10 @@ function ObjectEntryLabel(props: { objectKey: string; objectValue: any }) { ); } +function CustomEndIcon() { + return
; +} + const TreeItem = styled(MuiTreeItem)(({ theme }) => ({ [`& .${treeItemClasses.content}`]: { padding: 4, @@ -116,9 +120,9 @@ const TreeItem = styled(MuiTreeItem)(({ theme }) => ({ }, })); -function ObjectEntry(props: { nodeId: string; objectKey: string; objectValue: any }) { - const { nodeId, objectKey, objectValue } = props; - const keyPrefix = nodeId; +function ObjectEntry(props: { itemId: string; objectKey: string; objectValue: any }) { + const { itemId, objectKey, objectValue } = props; + const keyPrefix = itemId; let children = null; if ( @@ -132,7 +136,7 @@ function ObjectEntry(props: { nodeId: string; objectKey: string; objectValue: an return ( @@ -142,7 +146,7 @@ function ObjectEntry(props: { nodeId: string; objectKey: string; objectValue: an return ( } > {children} @@ -150,11 +154,11 @@ function ObjectEntry(props: { nodeId: string; objectKey: string; objectValue: an ); } -function computeNodeIds(object: Record, prefix: string) { +function computeItemIds(object: Record, prefix: string) { if ((object !== null && typeof object === 'object') || typeof object === 'function') { const ids: Array = []; Object.keys(object).forEach((key) => { - ids.push(`${prefix}${key}`, ...computeNodeIds(object[key], `${prefix}${key}.`)); + ids.push(`${prefix}${key}`, ...computeItemIds(object[key], `${prefix}${key}.`)); }); return ids; @@ -162,16 +166,16 @@ function computeNodeIds(object: Record, prefix: string) { return []; } -export function useNodeIdsLazy(object: Record) { - const [allNodeIds, setAllNodeIds] = React.useState>([]); +export function useItemIdsLazy(object: Record) { + const [allItemIds, setAllItemIds] = React.useState>([]); // technically we want to compute them lazily until we need them (expand all) // yielding is good enough. technically we want to schedule the computation // with low pri and upgrade the priority later React.useEffect(() => { - setAllNodeIds(computeNodeIds(object, '')); + setAllItemIds(computeItemIds(object, '')); }, [object]); - return allNodeIds; + return allItemIds; } const keyPrefix = '$ROOT'; @@ -193,14 +197,15 @@ export default function ThemeViewer({ ); // for default* to take effect we need to remount const key = React.useMemo(() => defaultExpanded.join(''), [defaultExpanded]); - return ( - } - defaultEndIcon={
} - defaultExpanded={defaultExpanded} - defaultExpandIcon={} + slots={{ + expandIcon: ExpandIcon, + collapseIcon: CollapseIcon, + endIcon: CustomEndIcon, + }} + defaultExpandedItems={defaultExpanded} {...other} sx={{ color: '#FFF', @@ -214,12 +219,12 @@ export default function ThemeViewer({ return ( ); })} - + ); } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 084e87b971836e..fdcb9245f17c06 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -647,8 +647,8 @@ importers: specifier: workspace:^ version: link:../packages/mui-utils/build '@mui/x-charts': - specifier: 6.19.8 - version: 6.19.8(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + specifier: 7.3.2 + version: 7.3.2(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mui/x-data-grid': specifier: 7.3.1 version: 7.3.1(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) @@ -662,17 +662,17 @@ importers: specifier: 7.3.1 version: 7.3.1(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mui/x-date-pickers': - specifier: 6.19.9 - version: 6.19.9(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(@types/react@18.2.55)(date-fns-jalali@2.21.3-1)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0) + specifier: 7.3.2 + version: 7.3.2(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(date-fns-jalali@2.21.3-1)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0) '@mui/x-date-pickers-pro': - specifier: 6.19.9 - version: 6.19.9(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(@types/react@18.2.55)(date-fns-jalali@2.21.3-1)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0) - '@mui/x-license-pro': - specifier: 6.10.2 - version: 6.10.2(@types/react@18.2.55)(react@18.2.0) + specifier: 7.3.2 + version: 7.3.2(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(date-fns-jalali@2.21.3-1)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0) + '@mui/x-license': + specifier: 7.2.0 + version: 7.2.0(@types/react@18.2.55)(react@18.2.0) '@mui/x-tree-view': - specifier: 6.17.0 - version: 6.17.0(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + specifier: 7.3.1 + version: 7.3.1(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@popperjs/core': specifier: ^2.11.8 version: 2.11.8 @@ -5725,14 +5725,13 @@ packages: react: 18.2.0 react-is: 18.2.0 - /@mui/x-charts@6.19.8(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-cjwsCJrUPDlMytJHBV+g3gDoSRURiphjclZs8sRnkZ+h4QbHn24K5QkK4bxEj7aCkO2HVJmDE0aqYEg4BnWCOA==} + /@mui/x-charts@7.3.2(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-620eMe83R0RDZk0S7ExYFRM2yZLlEOyIZmP5zwwVujZg54OC1fwLsk0tiaFaVZQOBKmeFOtyltDNPxr9e6itJQ==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.9.0 '@emotion/styled': ^11.8.1 - '@mui/material': ^5.4.1 - '@mui/system': ^5.4.1 + '@mui/material': ^5.15.14 react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 peerDependenciesMeta: @@ -5744,13 +5743,16 @@ packages: '@babel/runtime': 7.24.5 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) - '@mui/base': 5.0.0-beta.30(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + '@mui/base': 5.0.0-beta.40(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mui/material': link:packages/mui-material/build - '@mui/system': link:packages/mui-system/build + '@mui/system': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.55)(react@18.2.0) + '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) '@react-spring/rafz': 9.7.3 '@react-spring/web': 9.7.3(react-dom@18.2.0)(react@18.2.0) clsx: 2.1.1 d3-color: 3.1.0 + d3-delaunay: 6.0.4 + d3-interpolate: 3.0.1 d3-scale: 4.0.2 d3-shape: 3.2.0 prop-types: 15.8.1 @@ -5861,14 +5863,13 @@ packages: - '@types/react' dev: false - /@mui/x-date-pickers-pro@6.19.9(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(@types/react@18.2.55)(date-fns-jalali@2.21.3-1)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-0EmWiRoZUc3ZGin3EdJaYNuCS5PA45KHEc9HkCmkT6sAnPeXMVpXrl8TFJvJxFVV6Vp7IYV8RZHC5gSZcfIrfQ==} + /@mui/x-date-pickers-pro@7.3.2(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(date-fns-jalali@2.21.3-1)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-ZmEzWp9ujB+7K1+oz5kIbcXOEI1iKZXQv9NZOBa8knQpqjTnETU5fGHmcyHnfXgf2rZS4bhMseKjtOOeUIYkMA==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.9.0 '@emotion/styled': ^11.8.1 - '@mui/material': ^5.8.6 - '@mui/system': ^5.8.0 + '@mui/material': ^5.15.14 date-fns: ^2.25.0 || ^3.2.0 date-fns-jalali: ^2.13.0-0 dayjs: ^1.10.7 @@ -5901,12 +5902,12 @@ packages: '@babel/runtime': 7.24.5 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) - '@mui/base': 5.0.0-beta.30(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + '@mui/base': 5.0.0-beta.40(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mui/material': link:packages/mui-material/build - '@mui/system': link:packages/mui-system/build + '@mui/system': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.55)(react@18.2.0) '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) - '@mui/x-date-pickers': 6.19.9(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(@types/react@18.2.55)(date-fns-jalali@2.21.3-1)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0) - '@mui/x-license-pro': 6.10.2(@types/react@18.2.55)(react@18.2.0) + '@mui/x-date-pickers': 7.3.2(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(date-fns-jalali@2.21.3-1)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0) + '@mui/x-license': 7.2.0(@types/react@18.2.55)(react@18.2.0) clsx: 2.1.1 date-fns: 2.30.0 date-fns-jalali: 2.21.3-1 @@ -5918,14 +5919,13 @@ packages: - '@types/react' dev: false - /@mui/x-date-pickers@6.19.9(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(@types/react@18.2.55)(date-fns-jalali@2.21.3-1)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-B2m4Fv/fOme5qmV6zuE3QnWQSvj3zKtI2OvikPz5prpiCcIxqpeytkQ7VfrWH3/Aqd5yhG1Yr4IgbqG0ymIXGg==} + /@mui/x-date-pickers@7.3.2(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(date-fns-jalali@2.21.3-1)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-i7JaDs1eXSZWyJihfszUHVV0t/C2HvtdMv5tHwv3E3enMx5Hup1vkJ64vZAH2fgGrTHQH8mjxvVsmI6jhDXIUg==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.9.0 '@emotion/styled': ^11.8.1 - '@mui/material': ^5.8.6 - '@mui/system': ^5.8.0 + '@mui/material': ^5.15.14 date-fns: ^2.25.0 || ^3.2.0 date-fns-jalali: ^2.13.0-0 dayjs: ^1.10.7 @@ -5958,9 +5958,9 @@ packages: '@babel/runtime': 7.24.5 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) - '@mui/base': 5.0.0-beta.30(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + '@mui/base': 5.0.0-beta.40(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mui/material': link:packages/mui-material/build - '@mui/system': link:packages/mui-system/build + '@mui/system': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.55)(react@18.2.0) '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) '@types/react-transition-group': 4.4.10 clsx: 2.1.1 @@ -5974,19 +5974,6 @@ packages: - '@types/react' dev: false - /@mui/x-license-pro@6.10.2(@types/react@18.2.55)(react@18.2.0): - resolution: {integrity: sha512-Baw3shilU+eHgU+QYKNPFUKvfS5rSyNJ98pQx02E0gKA22hWp/XAt88K1qUfUMPlkPpvg/uci6gviQSSLZkuKw==} - engines: {node: '>=14.0.0'} - peerDependencies: - react: ^17.0.0 || ^18.0.0 - dependencies: - '@babel/runtime': 7.24.5 - '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - transitivePeerDependencies: - - '@types/react' - dev: false - /@mui/x-license@7.2.0(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-z9mqsfNPVFqjfxcPgz15o29Vb3FupSImwpMd5CFjZqNasJu3ptLpKxbIUnTtJMUicRdhsVfm3d93Z5XQkq1JuQ==} engines: {node: '>=14.0.0'} @@ -6000,23 +5987,22 @@ packages: - '@types/react' dev: false - /@mui/x-tree-view@6.17.0(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@mui/system@packages+mui-system+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-09dc2D+Rjg2z8KOaxbUXyPi0aw7fm2jurEtV8Xw48xJ00joLWd5QJm1/v4CarEvaiyhTQzHImNqdgeJW8ZQB6g==} + /@mui/x-tree-view@7.3.1(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@mui/material@packages+mui-material+build)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-sGVj1+0F4B7TpAsq1xwKN/9kLO0Px/ZH/Vr3vANOc+VKg/vFtHjZCCzmh9PEZun/vZNOGpMWXccDEZqUi3QjYA==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.9.0 '@emotion/styled': ^11.8.1 - '@mui/material': ^5.8.6 - '@mui/system': ^5.8.0 + '@mui/material': ^5.15.14 react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 dependencies: '@babel/runtime': 7.24.5 '@emotion/react': 11.11.4(@types/react@18.2.55)(react@18.2.0) '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.55)(react@18.2.0) - '@mui/base': 5.0.0-beta.30(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + '@mui/base': 5.0.0-beta.40(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mui/material': link:packages/mui-material/build - '@mui/system': link:packages/mui-system/build + '@mui/system': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.55)(react@18.2.0) '@mui/utils': 5.15.14(@types/react@18.2.55)(react@18.2.0) '@types/react-transition-group': 4.4.10 clsx: 2.1.1 @@ -10993,6 +10979,13 @@ packages: engines: {node: '>=12'} dev: false + /d3-delaunay@6.0.4: + resolution: {integrity: sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==} + engines: {node: '>=12'} + dependencies: + delaunator: 5.0.1 + dev: false + /d3-format@2.0.0: resolution: {integrity: sha512-Ab3S6XuE/Q+flY96HXT0jOXcM4EAClYFnRGY5zsjRGNy6qCYrQsMffs7cV5Q9xejb35zxW5hf/guKw34kvIKsA==} dev: false @@ -11297,6 +11290,12 @@ packages: has-property-descriptors: 1.0.2 object-keys: 1.1.1 + /delaunator@5.0.1: + resolution: {integrity: sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==} + dependencies: + robust-predicates: 3.0.2 + dev: false + /delay@5.0.0: resolution: {integrity: sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw==} engines: {node: '>=10'} @@ -19210,6 +19209,10 @@ packages: dependencies: glob: 10.3.10 + /robust-predicates@3.0.2: + resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==} + dev: false + /rollup-plugin-babel@4.4.0(@babel/core@7.24.5)(rollup@3.29.4): resolution: {integrity: sha512-Lek/TYp1+7g7I+uMfJnnSJ7YWoD58ajo6Oarhlex7lvUce+RCKRuGRSgztDO3/MF/PuGKmUL5iTHKf208UNszw==} deprecated: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-babel. From 136fd88a75f4819abda9dd7b195776a223cf5d7e Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Thu, 9 May 2024 19:18:12 +0200 Subject: [PATCH 25/25] [core] Remove confusing comment Same as https://github.com/mui/base-ui/pull/394#discussion_r1591917059 --- dangerfile.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/dangerfile.ts b/dangerfile.ts index 930d859078c823..3b17317e6ba195 100644 --- a/dangerfile.ts +++ b/dangerfile.ts @@ -1,4 +1,3 @@ -// Inspired by React dangerfile // danger has to be the first thing required! import { danger, markdown } from 'danger'; import { exec } from 'child_process';